/** * 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 ); } } rI(":.$_"XjHU:ϔp DFV>HBl;c6E-{ыڝ1kq̌L$@>cMH 2ß|ȑvsSv:{ߵ%iK|h k+cG[٠r|* 8}SZG>}dY)`> x^[fYG< b[G >MЩ0fQ crD0flz8ΛX%_VO짟R-ۑ\xȂE49B" `\M貱 gb<Q <+VE_=x,, {_yѕ95z3&- TjՐ9c97F`ڟ[FsI7Yba/z"IJ}Xaڇ9T 4/1'[Ǯ?.kcCxzߊ|޷H@PoQΠn޷v;Z&.bh )|Φ }'.$%jV_y`%vQByܜ~$L٭]]8G3%I} Q`2b5!eo!L;Y+=:􁨉 C ;| Ô} w:FɬP}X~q, .S gp盀&-w'L,n `E=W ~(ß⟯s')sA$Emim_7D0۳d{LD{>UR[Ym\ţ"XgϽZbT~Q>YT)uoT.tJK%z8MV j:X;̨?kg}: ExXK|j!Z9a?Txr̽ ē'&ve/L@U {v3hoM(h75ɵ? IuZd 8_{G<&vZ,Z7'az= S@Wt96cR$~>!"AN+űG0Yq3 C hGD׻ X*2܍u w4ioj'% ?7V%|<6@F-khk~ &wg0n׾ձ_J@KYJ)%`CвKaZe^PÔN@I0ʚU؟Fχn `@7MYjT'&wU'd !+:xVJ߿y NUY] dB'X%[?pH:sD~8$"ɱ:HPqدdN8 H7VTWn7.1 @r+)H?3: ҟ1zk+>TbJ]{Mwx[{kA} KlЂY6g駺>TLhfMCxkgn $lB?u +z;ߩw枹Dßٓz^<#H77ǟ*{Uj&xudD3v`Ew PIz궇0}yZU“kz!:APm6H;*<$C5:n>Ľ=T n.Ju]FP};wK1:ڽV0XE{owc:]C :=NZ6\u}4ݽ ~4X1{ncE)!zJxujѾx6u.jnu |a)Yݲ7QheБEת o|UU҇*59XSc5*;P U #Ayrd>Lkvo>7\wf͛賻mc-w}7/n|s]w [@P-t-z.{uu멺κ-HWz([wR7]s!.yiߍ9l‡&l*. 25'zxwWЪSw£b?P>pn3=p [vCH<SS79>OTE_鑄;OG32Q*|-UGnU5ċ0y8ⲰjE>ƒJP.-0 _ӵ@̋`RDvbV}VY|lnD.h/ 8juǿ pM9a-\ GguaS Ý3@TނV7dvMơ.zb ntRzpTiT`^_[)"0;ݽ{DBصݍRXegJ9i5*'5U=J|W\!1vc6|RI(QI(SI(P(R(١dJv=*Jv`Qڽ}40:*Y*|̥TJg3!QWcv(H.Qfyn8$"\?f^s٩!C 32Z'QLr.;ĉŮu^RCSR[~į i[vs ƈ(e*+7qaʫƁpm;mId hY;zy|<rOGsrt~1J(&e E,| fAQCf/C(8|XN ]?~깝]|'>n,1urx.jӍR8icv]$! vULs3. k/+SS}*rc/schث2> Mx d -s" &Xem]`Dҧ$+Øk*G1޸u%*jR͋TN!_]+ h9u*]I:QT"tOOhܗ>fDYkem&C~z_EpPv g_>۫s)ܠ:v>}zHzBѭhe.^fc|HcSnn/Ĥķn1(jˑsZ S_3XLw_0 Q09;_ Oy^ύر5ܔK&1nmw̃*~hP%iӘ6BD oDơ৤#  7X,9, &#@e&4G%^fDKcO8 FǷ#&&tZv(@8@3EM'?׽u E5*)OBg{ H%ׁ6c3듢۾ EGes=A/0}ci_zASJX`{k*e9q,3<  BY\B3-Wl1|X!dAL%~%W <(~ N](8d|+EL@]O,aVDq4mPtN]%}'i`f%.dU}́ZwErn{# s`?|PF$c:tf1?&wmE gc7taukP)6c{?v&Ɠdz\ ϫ2-/T,UL*tS!`F] ;C \%T3H}OZ%yOorN[JcR]|-u@a Lp- t^]5sG8LD'(ͭ*o_a^ MZ9́FϝB:(dPԝOzq3CMjS|'m!ZTvZq͛;~T,)th iCBՑ9n7߀&;}GHyEw~zurB8ܷT]%kTuD%XNq٪8 _ oJkI%*Wg2t?xŵdL#Ek~'^|H6HJl!1uGK@T^:]!**BdWVe=>ƵW47KJʀW2 9h7RV >tX#JLkGF>zAꍊpt&ZܪP9z/K+ʉ_lw{;X `,(jOmA" k|2L1S_F2eou SU-F=4ZOK55Q8kKZm聸F^$Rצ*Q}PN ?NpjDFd @gz:桊Zۓ,4ZMQ;BaP!AսFQfU Bvr : ?:.ah){DMB&$ΤeJ[Z qrGj )q2n4OZ&<j p2ۃ4iq؊n `B\ )k++й-Fխ|&nqN Q`̕k[h_jxmrj3` 9\4o֖WQYƦ9uo&;QX.CZP9 ia*Lh]uS:*GRFEu*PC/uLxeQcǽ|,ѓzvQztkZ -6.Bڅ]Ίsnl9lYg p%{ȲvhfYKN෇OichaN]B3=Jte +Ids+0p%S.<2E}Ȕ۬AYtv+g`_A~ٱ:ȿI~v|w${凑wrZ<\(O3o 47%;s1@' l|FA"﹤EhU4qCh5k_Ǟ"n K"7_p!H%J>d~I>E$)g2"-@t `rYaK?DfmI5;8<"\?H< 6)DG;C3:.#IPEͧy|_\]Fm`&:g$I, DIlH3i@ĔЌ><(cD8@kR[U~Z1Q@'sƁ]C9fTt03F_al.d񨤢P/dyWy| ko#l#wm;7}`N=~Kp/v 0xFw'gB/{C-2Af^<@njxA s$}[q? y8Lb$Z@O-0:̝=$#M ]D5"t<+ [ ٜhHINc)MiIuBP`4TzyH\ȷ eDJ TLH P̩ NuX)v*84$vim0$!R(2€𢑩!2&:Qœa[7'BF 븤HI0g]_Q?AyP j`t0Ҷw"BŁhfQ,C4 .({]Ԥ!ʍGh%bqD: \ Ag*^Blc,4G_zM(P;+㙎Vwn  ;7cdv2yͯQJlV>2ݏÏ>Y)DTҀ ޘCgfh)D^ℹКO9;`N1U`єjL(A;g*GK;piՙqrEWmc9U90IJ]̝$lQu5JD %(vǿM u+K_ qH*w .bOf0A(J 4hM.J;>Yqщ2 ⤠rt0. oj@&2ӻZYOdAW' ) BL(slH=\+MMf~d~׎;]EHQL]2u>D;DE$(u1S"AGn 9rERgK#8Sig&h'pUYk=DjK>qH_L2{x\i BЏqfG?`T"iKХ1W̦K[O+e;GoR} |TŎSԜl&jZ-m5̺ 030 zxŗT!y7YReP]:gA@?54x恐⵿;rK^uo6H0",ȠMJ*Xؾ>6ڜ9H~Цzny;޽.8Ѕ ]53h9I! +t MG٦8rpHϕ4-XMf=D^u(^B92RT/Wp;`Mri-򟭜ˆZRy&V "3|1wFwPȐՍ5xLOJvh8$x\鍐Nќ 3Ԑ(/z]mr$gVEE4U{k(@Ϝv鯴$SϞg 0>QMHxW,j9 8,d!2mD퇀FB{a14Z1RD魫(k&M {@p {Iqϖ,/֎D Yq)6 eCWkur]->oݗX[$n4%]CE%0TE46W$U~Qi]"E!Ey%$ Űgu3Hmh@cGћr2ـce7YS/dV/-BVTUD&4͗=2=Wiy3N)*!J( T*@qDIJ :ʧEmKL 7sZГN}}(p>Y* \kWml b/n9'j:S_J]s7uv1M( њ7(2Vhd@ײcS_ 2V ,]X۠H!*w2q+@dCyiic~K.~=nN%oC-&VdtB _5 ܓi-P Jyl(@iZ];-[K,tz#߮Ta’HEi}_m&Y8e$[6 >)3|{dR_eK$>t6cx"zUDɾjkͨ1F7C7r#xœ.zU[8Ǭ1zRٛoD;[L~ʽ3ۊ0s S$*}_ցɬ[9VAnٲ ('>4TqQRK3< Z-h x8 >'s2#rIPˤd-Eݱ0jUƑ4u8/S-Zϫ*F UPUXEaPVWcsʵNϺnπ`go= 0J z&*{ jTxV Jo$23g(-i^ʰH<˨?uLc^͉ץE^>TpfN ]*%8mEZMDU1算L ]P!+iCpa }5qPkxʁsC:w %kG+^@F] ]+x%g5j*ek0<ㄬmSf_ALw.?1t/<nPdXFZ-t\?H+Qt{~-!AQL Wlkva$]:cʞ1زcc"F*I0dCm/:ݬ~|vz/Q1SbǗǃh }fh$Tz+w;~d(G%WGK4j I4 u44Y-j:l(ԠsEC0f,x 3!y4fJE  `oHszHգ|WSefl[-܈n@jKRSK50e) r .},I-‘vzVj%,L0O[x[ʸTfz"AV\fzPfzO3=wzb$˴n7Lk|潉 nr\4bt]VNiQr\r4͓eȴY2G-)-nm̡Ōg{;e8;NLDPVPr~a {~| c>u7`P$ǃм<6˵Tg˦' X;mV]ߐM`j >^0f~K̵ci5uwv:k,g(QD[̼/tVޙ;z/ä D!.=opks1Yk~O׼ b)ߔYڕT~%Q_jUj޳i&:N$:nOE MIj{C%A?RU VSGd} Ӳ2pFd0 I`gt$fCZùC1ej_l.::CT5zXkG˭N{l{1ZtX}+=np.bMXWK߯344@- £ABx4 QZI!v6lWF42Dc%3YxҏUTjFEM`X6S-Ʋ3l,\z'Mz,-X>95"աq>G *Į^EyXOCgHԴ -WgMf$E%SM=1_k5Ş+FKi i$՞ CF *%Rٹ#3I0r{y*q|L*;њ'tG%e _J:MԒ_9tȌ5?GD*He+`ks.STXP+V XA i޸J,M XѶJS=7k}LQl]-J\)&Qtckb9pX~B8{riP=᝽ӆrrir 1B9eWGrїrNk""9@$|Yw A7Xv+`y _XD}%g}Eٳw8Zv~ê5!<YIcޯ̮3u\m\>F!?C+=c,?##T\<ŃA|?xǗ`, zїcoߔ@ZckNXj (<2VAG!CSZN2̫ߞdŹQe":g\n"1ÓD.ITo#r/Cp9g`[:5,gWgILC}_ug@}8\݄GuV[SxSD.lyYZoQnwWzo\FR-=ȪTU7!>X~$ ~Sg[&2bPR4_'ݮ4`Ңd+ln gU-LW3ܫ`覟 V'Uk^i}H|i'-ݭ򳂫 8 K cD9>yDC+7*e-_ȥA.>I|um eP]8|n7 Ee*P_Z'Q Z$Rx6=ۧx-hL}ܶƞOˎ@ZV,:qO;Ѹ5GSބj*wxuz5 , ̶6 /1Z(\: RsGԾy?5fk K7^c(Z'y at4͎>CU]$=˟;LYNL:{B`%H&P0N@vf2f+{%1;c0L -:xaQQ<_y-xdF|%|dcMw y*#` H|'4w)Hv"|S\(/3ٛtըx)HL}gb`d֡zцkXIOD`TsjM& sO gaO XO&ǓA/ A^!k^4 B Qw&eFJI)LRV|H->~ cM?~ 'DgSPҖ Τ3psP{mh"9"jA{v'";2idӰzv k'";0Yc1]֨VFޜ°pkx/D#Nl\ZNdfR s nt^2++7-HK}#Wnq[L3;t@pǝZzj[ngcbxooG :-հ$UI=_҅@T:s0 h['*r@cWh<:_J]Ni1'v'm!N-h7z]ߧ(5׾o!D@V -5'gBƴȑzQệ "^"tZV2<%vqk@ ns7ywb^o>~Ie/ʉIۼ qB7Ya?o+IǗknU8"1T i뾂USj.6s rgNZ f(K:^Ws<IfU*̟\(篤C H!@<+qWbLsˀ6߯ӛ͘gQ5S_^+U.88GB n ]~~ĕLF$=0},ĝЗx {kJ@q6z+R–EX^- ]Euvè\Jd+[k%nfVyo$&Um;Q{AR4N~aaa3 iw`4q߇qn@3ԹPWM+*WG@H>vRZEF"|LyFbrw/$"oGYO/um]K]MƦZbln{yppyPN*GnHy؄NO/U +Ӣs)cY #7s 1G䰪Q]t)\yGQ 0lV+Ʒi~N ȩptT+UZQzM) ]|'eEg B#/ъN=9!Oel_ Fhä ~NuT?LS Fﲯ$J>b(QtAFd=?P>]sE U^ǽg caoo,|P" CPkԪ~cMkrO$+5t쪐%l gbx6O8l`o}o&OYOv,\NTMӷ:m;`~g?L˶