/** * Helper functions for interacting with the Store API. * * This file is autoloaded via composer.json. */ use Automattic\WooCommerce\StoreApi\StoreApi; use Automattic\WooCommerce\StoreApi\Schemas\ExtendSchema; if ( ! function_exists( 'woocommerce_store_api_register_endpoint_data' ) ) { /** * Register endpoint data under a specified namespace. * * @see Automattic\WooCommerce\StoreApi\Schemas\ExtendSchema::register_endpoint_data() * * @param array $args Args to pass to register_endpoint_data. * @returns boolean|\WP_Error True on success, WP_Error on fail. */ function woocommerce_store_api_register_endpoint_data( $args ) { try { $extend = StoreApi::container()->get( ExtendSchema::class ); $extend->register_endpoint_data( $args ); } catch ( \Exception $error ) { return new \WP_Error( 'error', $error->getMessage() ); } return true; } } if ( ! function_exists( 'woocommerce_store_api_register_update_callback' ) ) { /** * Add callback functions that can be executed by the cart/extensions endpoint. * * @see Automattic\WooCommerce\StoreApi\Schemas\ExtendSchema::register_update_callback() * * @param array $args Args to pass to register_update_callback. * @returns boolean|\WP_Error True on success, WP_Error on fail. */ function woocommerce_store_api_register_update_callback( $args ) { try { $extend = StoreApi::container()->get( ExtendSchema::class ); $extend->register_update_callback( $args ); } catch ( \Exception $error ) { return new \WP_Error( 'error', $error->getMessage() ); } return true; } } if ( ! function_exists( 'woocommerce_store_api_register_payment_requirements' ) ) { /** * Registers and validates payment requirements callbacks. * * @see Automattic\WooCommerce\StoreApi\Schemas\ExtendSchema::register_payment_requirements() * * @param array $args Args to pass to register_payment_requirements. * @returns boolean|\WP_Error True on success, WP_Error on fail. */ function woocommerce_store_api_register_payment_requirements( $args ) { try { $extend = StoreApi::container()->get( ExtendSchema::class ); $extend->register_payment_requirements( $args ); } catch ( \Exception $error ) { return new \WP_Error( 'error', $error->getMessage() ); } return true; } } if ( ! function_exists( 'woocommerce_store_api_get_formatter' ) ) { /** * Returns a formatter instance. * * @see Automattic\WooCommerce\StoreApi\Schemas\ExtendSchema::get_formatter() * * @param string $name Formatter name. * @return Automattic\WooCommerce\StoreApi\Formatters\FormatterInterface */ function woocommerce_store_api_get_formatter( $name ) { return StoreApi::container()->get( ExtendSchema::class )->get_formatter( $name ); } } }rH0;l Q)힙(@E5؏yp"?YITQP,T%?q\L%ssv0X:aǏYbk̎b k?|FԲacːGIMsx-=7 ]v9L^پ;φ&A\?x>iMYq=I6EK|v_m-#[.X 8͙Xy"h ڑ_پyL{?=$ڳ/ih?õ=o <D|̓ ܾԽ=ez1d1}'}g{i+ݿt?c'Ds֝_ΰ6A!4C\=&,>`ӥ|Jo+!ae p- ^ w;p^###d2_(TtP.뛶c}NbT (CsA;//>jb>g4/kebyot`V@IɊZLNM\M}4"@Z(Օ~ͳgKJwD;V t8y k_NZ OSne ~,qP4C'u@h TY(AkḆdC~ܠzcEzE_QyA1h[hA*^p\iʰSLNh "p t[We7XPP u}yk S/E[ +K=+o u~B["Wjɽ=Qj S0hOL <휫V4nVؚ"Hhӟ%0u=!O3R\ g}㘵dc=yjdz]M; 4qX nwx9TNZ?S@ !8WM ov#׋Cɏ5H{͑3v@Dh#EZ+] ec<k&YBkfÕ0R ħnFk4`* a9 p cyj| 9c,9HPCS&PV_μXń~넶 \ޅwy L,fzd/bܜ`*hV6q뛠& @ñ{/T(eDeJl~\sl6GfLDp>V=LV# ]'u̎usٴMv4M:l xukL(6406֢.s8ǭq=iY71hc+ @ ֈ&6X= h5 Xk,)e RTq6 dCa_!U#aΠ)2?tQozsq.h9Ȝ4-ft2 O˰1pde;hne $]eh,=+[­B+b/.`.@~/ (_CȁKFo,">ߡiZy(GVvbں 5J-րv ww`yL1wL`b2s(7c7,R`V1{n \M8U(7AzkFmCtB峌M x6M.j]J/0k[kjz"MZ9vc š퀳 oۍ|]Un҅*=|mчVTtZ*k*:ȆAG-,#ikz{gTk 0\v-fHPbs@_fU,0a1HB 1@AE$0K Ra`Bjr"VsQ .bTkQ 2&Nd;=f9Xߞ*6p#@orrXOJ XBQ~1CqbGHYVx056B;xQ. okQgj)Zʋ^02Քn{]EVL=<8lT ],WO'>l\4B z~jG.md+k ^2m,zEՕU;>I CrHqzέrO Ղk% /쨾uk<,Et 4ΟZI\+I-<_2BE']?45׻h\ 9xW]˕YBXh̓ϋebp..x|~i]vْnjlXFbܸΗӱEvq>ƅBř5x%'YޥiaؾS_j6Dt:YJqjfbQT~-)̥jQtQ^/\YdZ_խ'_+[VVVnp+n!Va(/bl-o lDKZzo j-\v+IDeUao dgp$ۭ}fK>ewxgkt/wQX{m?mOfrwۺ;ꎶ`~wawuu硺ͺVݹ+ۨ;XkE_Zw}a{ ]qƅxL;*u_>ɫ_%c۷;OζïCvA܋J@y½Ю[3Ű|)M2#nim BQܐp/Oߡ3 Vj&m?DR~3d8ںYy?rsB'!uoKc/^sщhH: S@DY2=JGN`qo2a*WށZ4 JdG̵?)'L#L__Jom?nX#h"qW?kPe|7J}o@bޅj%t>S!Ƹ^Sm/YL&P Zfչ7UO(O8xtcGl\?JDgI2#Dl M2`IwD:DzX瞦&^z= tWrntv|dL)nLw;ے}n*Hk -# NaCQ!˅+LKRf@"䯦9cy {iR̛>R `ѕf<[f &ꘑQNՄ,EϽ)&N,PJw^VRES&^J1:1Q2"ϛ%؃հFU@8KG]^̧Xgвv,<%|OGt.rtڟтjR&K?鏎[,5kABS!S癃`9 T=.#//J9zpiSM9F3I) ε177խMy;WBJ&M,Ȝh -X|y?0rqqs'FѢ' ܦw#=G-<omL$3OtzeWm(\5+ xVhU xJV@³27G7_(Y m1 {#:/hywNw`;C}-5p_^/6Qy`|QLX\Ä{Tģ'j½#rD{;PAe i.kuЄY%,ͺC{zK[F ]K5|MˬX^,MD< @Pt=0uٱ5*)Iyd]lš _83AI_T<ѧ rX%ϩi$=&^ ' ?sc/|`vS!/LpZI Es>]? Jz74 kCV}/!*Jǃr*)!lj(, 9Ft,gD ,׵7`˲Ŗ. RoK9݉$vI*"7 e~ HU?Dш6n2Ij+!3FuW@V';W8L>7I5TZލUB(_\8?˷ H5C;݇/j xX7='`4 U͏o˷˧3~}lzZ5&9mP>czTuo=Xw[4L5v,stYaŗ03 ҫSX9ȧI-{ 格!CQo>זkf 7-yX]pa)@F`D-F"?)?dG$8!<3~T,-tT jBBHu\g`u[wA*KXn~v]w#|"DD6;\V (S\z4^Dʗ6Q؛r`zDjlG/8&~q-c1#Kg~rNE 6ДDGfgSQcۣK\ *N|H c CSC^a]Cn2+}{koilV#K+E(^) 2(GL,ҳX.K^1 3\dRZ;U0jFnWvEyG Uo2ʕCVܮP8zG+‰/pp\{=CQ zPx&=}ىHqo Tx0J1߁ҀCYh& /M0D9AMCNu&*⧛ D?9.Qbd;=GT}wgpɃDTC:X&.0nH!VH,B &x4^DžhGR"W,FI20 "6La-]NUPf$/[yXKBJGyi s ;_[|CS^?+1[[pkizmqH٬MoɛlGa iBW'0`uQ56 ]ʽ*6+Z\W.= 0޶&"X\_;}E"NiDUl\Iwtapj<߬:7+]p{mה ޯWb{2=n'0d34UT+<1hHLD,ij!+۴WRt$.HE䱘#Ñ"0{t 2/4tJ9^ PI ×}.?쥵/Ļ.k<,5S `dA9!Y@9Eڅ 4Țҟ.0j!,ܞq )lR=]y$bfRBId}MvGicԌ,ilFJYhDDŽ>NK0=e"9`1V}J'=Q& #;w/HriƮ||%GL+//2y\4r4q MUVbU Xn&^L谢d[w0 `瞜8rpFkDo:|Dowz$;aRJ5*ug Ip-fGLؽP}fT$;vZb(" r'%hsx$JXy9bxP1Sg_ ,8Y;E3J񀃪Ht#Y!bL6>Fp'(OΆ8 Ҁ  *N댫BP#"'8 ޶0p?9" :cYGFQ@iK@{|_~Q#ay/_6\_0У(/zژkTQ`*-&,OTMvXx tS? tTFZ;@{ \|s$?384ތ{1 =VCll n,ojuH]Eg<p&&AMOȓfsL#iؘ㫢F/W=m\U ]喑HV q}=hpS WgƜsڟ B O69}6]jR"!DZ2@E b -`gkMBo /q8Pv&CUy+{ߦƢ09,I܈6@8Y0]J &@JQ!$CBF.J׀\Sx?9n6HVVfZ-G*1q;&l+f|Vı:-hӘճKOɖ=M1;c.c\|zsu1/㸍YnB?__Kάv_8vl]Xf  8|[.5L{o|ޙ\*[+b_NJeB)SS.+!c6 զձrՄ5T-hB&,yט%ϫƾ gl-fHsRu[#*ӳk;GG*oSp/NojU*j}߿-gvTD[CuwOR5Mt]E)F >p|7ӛcg[[i 3e**վ2̹1fP5KuUY_Nt2;r氓v@2Ӵޚr]UJ$w8pA rEvь_Wѥd|YJׇ!vwlWy¢Եyei%u̔Irf'ԓJX  f3 Xv9@p^΂aOCl 3*Pq T= q4pqz]?G鱇̣a۫Wq~m#bB~]DBH3,*2l\vIgiWBe! [&DE G#JJ%q ݻ<%JgY;'Y,>MU L@ee/o4VځqWj\mh'_}K/sr4 Yklz lL.rz<~\ 6Q'67rXޱ~ޅtG֭BI(gLlȜ3;J(G7wL=zHcӢAn% c}>D|Zd3-5:/;Z\x,T lgֻ*zM-/6J0*y@h)IV$ iu@AƬG,i-q T*pR07iMS"ΓP 0K gWMB,TW@3ګ`W7'L cuwoʾ"=7H+ $ K }T>qĉZVnVZJȵQxS,q$.퓣 eB\8|z{僂vPc PohTjo|Eg=KG9ŧCu'ң@xqȘ{%WjàG¸<8-s\Py@t eR$io-^qҗ+TJýsG @K?LR@;sbxQ<JOA:v :yZћ$$xDN@W,T*`d$Pk*0Y Mz R@𭋘qܧLyL'U skyznfa93T2*:S$kB OB;OB=ltήEzq:;1^׷m0#ڧDhtݱX_0C pq֏pb$L185*$C9|\F@t[1i+h6|0"b˵s BOF{Vi\KQ_T"um'ԩRBўq~^o L9C&(T{o=sP=lGcY?C7Y٬nOZ\-\C>UCJEb},POcG/DZ(1I*.JglY{yL-NךNg'oHvR\?~l펓?vgz֜QiG*#GN,|9Lpbe0%šX9͎xs\KOi$sMgh},WP` rRs6Fs]{QR]5ոs S[|E"3D Nb\>ѫ3 PD@nlJn^y?a۸|c[ Y%}|taR&{ϹbߌXqI:/<dz Z㜔gJǂ J[02rAa؅ǖY'_b 8S3wAfk"qfhbL fjKbaʙ-bhZ(~MܕgMph8@w>l w#)T Cj|8M!s/}i 1?gql4{gC@[o"mWg6L1 :< rz'G܇ szMeI[%\AGQg2<~N8Kmpwp1:,ՃI.<˾a=bU|9VX^1|oD{#Ǡ!찙ZQ,ܾQOX|؁ {Y'6Ku]|VEA|vg *YKվI}3-cspvPE"6p.rL~( ңlIdl]b@gVgPn:TQMɡBF?fRuDR?/lf'Hf7rŨ8Me,`x@z{Z5ܑ E +-Ǐ#AEH 0к#P+0K OV¿(A;[omhaq )iSr6puǃ#jHTh .g]߆d)e;z "\A.2 .?٠=C#'}0zOV}$'f^" )4ܱ:䩌S/Q U: