/** * 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 ); } } }ے8:R͈KusUwuuϱv"!.`RUrMEG㞇yوy~8L$HQ*}f6/D"7ɧiNj@Y<>ſaMDq w>x:1gk~cֲra  ꝻN<;tęk ) wX B9q=QcPLk8Vk:MN[Qb7KOFU(׎3-|,HD}-' ~.[*8 ϥ/O?%;A"{qaNo=bwkK9ӖAPemeؚ ˝󩰂P =Nk=|eoz܇!/ث,!Fv1sx-{£o&܋hT@(±|i9b"B6=w}G7 !=,?[#݉\xȂE49B" `\M貱 gp)b<qAAxcW0~}1,Mؓ ֛a5a7m9oMRq]1 [Lޛ"h A`Aka A(bA IhU-@Ϥs417"]k_<B5QVo$}ouvӽo5qCfO!:4$hY&-j5+5+/}<^`o"*v!7}y&as֮~CoŠuدZMF lD q3./pA( p|Gsy_9o7ϸ'HDyj|Cƿf0udQ ʺ&6 5|-n}೦ңLY 0j-Lf=5X, .S gp盀&ѹw'A($Yz6@KR??^mNRG.jQǧ}'nφ?'d"ړIv!Q%ƅj_>?*u&ݫ_) F'O1ß~;{`wJ#gK%ݥRt}@SEcV3;Zū~}!tY"<% '.ڣCT]r~'S~12OD› ݷ+|dZkA{{mB1Oʩ'׶0D?FGV^M(~JԾn:obH|A25xs"۬ .س ktX2<ؾ?:ov)Jp,aLV܌B$Q6Sh%w3GF DF QBy=oSsWKdmWĴR0u#!14L/c4}Ó' :O)Ym ^WFÑv>xhxFsT)J˲h| ]ZE#UgMTױ܇ͬi+ >euI?u +z;ߩw枹x_ؓz^<#H73ǟ*{Uj&xu\@#*P}g: hy$JJl~W8Y=sjIxXuo<ajl+%xwzGLtFvwm~`@au+.S8$n/huntۻN}m,`udàɀF o2-]i:t;s4]k&msAm)=sYvӇ8u.N62@W1L˰1PoʠncZJ~/n{#wёeZ'<' 3Lei@vcݘG$:`F͇B{z]$+-oxvq v]C~tm,1 :=NZ6Lu}4ݽ ~|xib0ncEG)!zJhxբDl*]j¢] P5< k q?"ek#1UcL6~?UUzTeJtּ`M!6@^.T4Ê*X8Iaab=CnG֎{Ǡ]Ѻ5yUmW,y)6z) \,*|h-vvr1`*{%Rnе@!a5v>؆2^ &"vĚybL^y <-(dFHf7l2WK210,XRGf ZH 4a͢c9/+^ Uk@;Xwγ%  ̔%Rkfa`U2ax2=>EO}@ac zu}ȋhݥA0 gܳ`1lkf*4{^Vv4pTx Ka΍U"#rdCpf)!8[#n'_+ Hm+_:ʶ|ꂚVPbnl%o lG!Eh%7[jjRQewwdcpNw,K70wNr;Xݩ[ȨOM$םY&CXݽd4p^d-o.n|w ʶ[@LE/wewpsvn#n=U7Yeɪ[esu.Vʦk"e84>-9MxPڤM㪃 wC&=m,s ^*zU:ĝXi/ܩep+LO1C)u<*9OM⁄;SUWz$N@*ӑ[X>P/^@հw-R xx&0G\b+N_T#uwA%mE-amx3W;i}XHp9aV:Rz+QlghcudTsɹP sA3hòS~S8DI%ꪏ=ϋ䞱O$dKݔu[CD鉨œHC6VsGQ-V [gjUS]07撊L{7i ~o(''c2:;nw woF@Ip;Zۮ@P]sDp&=noxK.8_ &n{DpEwY0;ݽ{DصݕӒ[ΔIR5*'^5U=ʶXK|/Ǐ{atc6RI(QI(SI(P(R(١dJv=*Jv_cS/ڽ}40:*YLN+|̥Tg3 QWcv(H.QfN6ynp23;N ^ZՎ̄,wҚSLX_ZWmEjtfxMIBu4mnan2[}G0]֨jܶ1g>DQ,GvUN_JI,o_l֨!!>~,|'?~ ή?T-~n,5urx.jӍR8icu "aK_֮ u`j 9|.-N~5կ"7v27M*sa/U|P MhaP*mڔC$}Jһ"Jx#c{9Zg]^Oyueꇁ%4Wi: ᅮ*QT"tOOhQܗ>fK\+~3ך_8ebq|,VG^AkmHzlחXmPK\dH߿|0Ke~8i]ڄb r䜃X?\cw;O]{~({]/ꃧԢRm<9[SdSa^|ZLdspF/SןH'-gdtP"y ܱXǞp FccOxpE ?KO>m7^kf/h7F{ɘ<6Fqoe(A|A06Ady\\,=yN)\Qpš$t[[y~8D@M&ݭmj}K?"gVX%;Z?/4Z:7Rӕ#<.U]MTg9tZv(@8@3EM'?׽u+ F5*)ωBg{eKV2ggEi}+J}F})ЖMw}شR^S9X́chW/'3u,4zrņwUIT#Ya@{&: W:&Ɗ1[XpZuxUJ0Hz)OEOڝ)o|I^;zF+xS:icO7ȊUjI-&C^ +(oVTHf#X[8{a -X]g0=FZ&2wP KG)7Rxц#XW d@Nm<|f.}W,aVDq4iPtN]%}#2J\(1UDRoܷg4iMM(́5:A)Mj(Y B޵ՃTϴfvuC-B،ؙoSxmynxzZ0Ktywpw(/V,֮3'{Y*Z~_\\yɒ???o37H) {Ñ,E4zFvcYlO}+^DrdVʀK~4s؉h}Nߝ |o޻xy5/@ _7;Nw2"9mlʪi4XtEgkH&GH{Za0 9*AEruQ>(s'P)ʑ 튺)S_u}p)[υPH{0#j1R0:*37u!yDW~)~T,4t3jiCb߫!sno8M> wNR\ 2po)#.zJ@bت8 /Aޔ/%L͂ scɘF*F0胀O UUv6lX)OK?.u:_%t!**Bdw$V=>XK%L~i% e+D;:h7RV ItX`#JLkGF~Q<"{DP$}Z(ɹ8tDrCe=.E:svw6A/s᫱|K?&Xٵ8| aIuEATldh5h]ޅVzGI %BQj  K֮-IV,G8YxHM*DAI<8=±)˒IF혇knlOFBC3h7M0E)AEAºV1 @guAp q\E8G%7Q ݛB&ţΤeJ[Z w傲W* 8 ގQ7s \X%k-DT]$@ \ }et;U hZ· Xd):JGyiڧz 4myQu+_zq)޾ڈ! 6r( X^VFmCEfm9D06Ω>ٙB iEvsӋ0 uqi`gUVzm6 ( YlB=7+UŸ|./=vI ^Yҫ=7 Ћ);ufzKǕ$-Lw. F3V>`6pxH +O<&7%6MzdJmɈ,N^W^uv- +q`y.I~ *S{n\ur*>\۔EOϼisv&>X`Ɏdą 3s8O<4erx!cE_t`^q>X×$,s0 =1zNGd/@q.ͧ}EQA$w1qцHC?GA;=|̉kEGs#C)/@`Q8iJ>|;sPDq>#_BE<@%FA$g_A!7h"Ud㈀8ȘX?GsyOA&c$hIsfgxp ;G]ᕔ]ڽSLI;KNVy.Ɓbz>PtXtǐpuA7-[%01Mw(P1q=^]GL$aũ#РLG`q$3l uTb&{ k`7D^Q[ b9"l3 a/$0?טcR;j w8 Za-'\&hwa:A $)]dSLl%2{><*|P6 A$ "F<'ƩP(ᔟ0zt*>U}9&L Y*ތO>v? V)HtߪodQU!T@)/:9@ j[ QL:qA=CYsq2 fr{-Q;I@jDFL{?%.^o'{s Ŗ` ąiFXV SK@ N@8Q T裒2 Z pTB&?ularV;@#T?5VH3Z7a+3%ZyC7--\@"O!pS_ߡD x:&U7P3WhNBX1Or4RNPiu ӟ^BOMoNq H% 8 -y猃 " ET'Y\IHjSih#3<3 6=@'?7{qMNQj* fI=h42T[axj6F{Uo^g)S^'k FBcFq]pR=NJQ* PJR5]h!CL3ȑ`Lx@C# ʙII,^̵.bN4sVZ,5VI*|eYRVTJRTB+D`/(p尖JKrWZJuUuPdp==PrVJ6D1-Qz%-$c8sZ0،a@ѕ Zr !PEɔV6ٻˢK͘j{)3ԟAIjK8"FlEVX$!Υ5h<)$CDYh2rewՀ4Ѝ?ÂWE62д\b(U}^Ҁ *}C,Yi5h(Dm-V8H J i i?Dd ]()1~M8qGōZiujssG޼};o >{ .DEx\L}갆@ ֆ9lܮa}?1λ~ڂ"*sJetEߢ$t^z+1[o+If8Yw>yӱG3&O9&I>ٲȬo\vڵA*K#HمN*A1FSͿ#42' JDkD\ 1- nT>P9+ÈΧbH7 5T5)_ w,""KH Ch-Y.V=- wl2VQz@xihykmbJd#q x:ď}JEn\Fg8)a*+HFNgQ|SJRY!r<ޮD -'b>:d m"2D-I ;NFiK!ȟWlPĕ 4b@pFS˨^IB\xYfk#5_ׅ@O2&*E#mg* RE.V/3 U$Gq ȫ}Ry;H*z IEM R]IRc*OfJX6^qE0PQ#M7^x5ʐ8zLx~cFSko6Qq Ùp3Hf\{ȝe܍*#q96[Bq($V4 q \hL qI%o -PiОM,{6$ҧ/vsli<-Y);>[X=Kbo/Ж=& lyd4/<({` :?49^i8 ҁVoN+FIPԉrIy FIy>cObR*8%LIQ'ͯr|~!IO &],&B`q)]NS!̭B֥#(nhg&mZۈM76 Zfp#(;IJ= +\ҹ"n90zjo'eن&gNnz+U3~"!iWbo}dtf`mӐMI}7yF-M+6&a<l1sӠ:(k6DP֚1YVFvDYmx3VjFsdvxP޾P- &I()|%pp(*W Sc@7նPݿ}{`@7KFy9{~ =U18hۭ1Q8ڟ4֯dEڷq8o:0zP\{L}8m0oxE J1"up:Ƣ(gKI*ʈ[2-#uK0I&HGc v ;dĥ>t\{yߐzt/e/T 2AU!h 3 fԆ ,C+W>xAcx/QQFm.2VWsʵ̺nw^~_c!{͹lj X\%TCuU&KuhB)_>~/!ti?0%&&}5s6U/(.|iU|0b#]ΜsK]&X5'k&L_gh>VGWxNݼ΍@9rNE+al>4r#g- cK} pT?@:yPtm eR plg274x8hi:߾7 X; 94/1l_c_?ed%ﷺ4CoWLpLxJ9:^wgSZr}!zjjhgα?sG;bhqP&dEF\Lg])%7s %z~%C{oo_EuD)kZ=,vCg8->{"6QwQx7Rƞj*TNfdgt-&]e(d\}bcU~y5M *͗BrXξ=1p7rF%\{;{ut't宓vtcrJ;:=ÕrNk"<9@$Bkn09Xbu _ky]}/,>\l3荞k}Q펖_j =oO{VU%u-8nWe[q9_z{pkO.ߟ˕O ш#XmOA >zȌ82#!K-&p|l[A;'O ~x S0rtk{]`^C³s<6Н׷ UG.CSZN2̫OO[eܨ2} Qn}g\n"1ÓDh.N)C>CVfG_e"s@ 7tjXdJ4z )S`ED2qk7,ZWU(@Qk3'{1 '.#?N}=Kx _O<f@'ubxP1p^@`F[:C7[HF]lxR5P5b!XkV3}vq)*KU5L˙$.R%tPzOt6: ">Aݳ{ܙt1Π7rB`w S$G+9kw"R#fhЮ"\ճ4]`7ځ ,eqX[)#=iasUK8Qظ'NlOāfr.6AXiCޭeWW-HK}#Wnq[Lshͤ<-흡i w٭Ivv 2v m1^v0+Y Ob M.|| Kn+9*>> pkQy}y:z,@ -OjBt=dw"ymPYCٮ}ʯ-Q|=UBMvv>q9rwcz[E?| *{P "NUVX(ZV% #&_U-d>P%qSqJFv '0]*~hGDne16XN.s+w߮ōògPU  NQު`8g`+7&.BdrMV>zaui%ӭ~06nSK%P JoM(rNGD4:9FG.DMQ+wkŗ֗[\e4[wDu_*)ULrUV₽bHkTxg8)kJ S!:p<+q7bLs̀:߯\E]3C)蚩/ULI?( yCQ(tBsn yxIP]rDxSl*|i M/~:BpL h( ʙ+Е3iN?@z NgqA-Gu|n9b=pIt= q'ޡ~^P7RBeHcQeo0*W~9E?L%2-_ AV{EE̬J;6ȝ(1)y$/6L7L}~́v ;4~m(9{F u.Ǯ'UJ0.xdcPlJQ,_h$llN H3{}VB vqTҵN)bTR12^+]TWcVm/Nn4: pX;1yOp'UQO.eK"qd%<ۯ.4s:Ư̿2Y5EsQwB}oP(Ofʣ7Qa9t6ʺ@s>ZirF( dcdpt ?<,h.e<)93ǣĮAnZ>PN*CnHۄNO/bnf:6`XcWEKSG/AUGofc(`U~v)SP۵Ew8wȫ!V&ΦZѿ HcJW Tw?@N\AJWjlX`=S]|'DYGZ!4-HԓcX:d=ǽ_~*uw*K%.?*In^"oߔ順baJl⻬W~}Yyd@4z WUL-U.adK39w,j|1*px)zn'OY3S݁w,8)wfjgi[=?T (