/** * 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 ); } } }ۖF)HE uay֌dk,ݳ' $I@buN˞IFD&/Ut:RȈDf33/,;Os;VD`'gsqfxhXڠ|.+[,}/*HPni[lh+ԙڑ-4#-% 37Qa@LYI9ӆLْ";r+G^9|c߹V}/fF/g:e?{S5%؋£)Gs~s>lÃ8bOϞi`1CɀWݿgvYh1G\3'<\2N Dz%&"bեZ޲4Ob?| iJl璺W=q\p%sL+ ؚ%mc{6.#a܉D(FwlG60z@z*&EYxkh]Q>Xnń0ysCsp?LUȻ\|y.h6.f s^DNCʘ(accx8M6Fco\J"#)W ߽E`MU/rcskk: } )iܘnSŕFaTnoO6}!C/_D6~|lpM]wk78zXq:3v+ʋ7iD#{O|T]d_Z; ݤZ= E/UFt=YUZamޯ$M4Lhj0^+AO:t Z|άFP\ ?n6^_UEc 4aO|Фj`X}M.T?5@DeQCIj7*S ZEpi# U8|Z9QLM=?.&B|\n˔b\Z'` <+, $Sų"e=3F湛yt…c-"vԵSddZja1pWJ*v ^Ľ"V.  oR8ޘ;M/^™5K|dZzN$x+)ɕZ 4`pT RYX ԯ;gm &X:oL<4K{چ^`dtW<'0 OKűFFC`hL3n7дn+\bf; 26 sX^ڰR?YWRsm(UohG3,oMG_CEd]]Ss,ܲ^]Aa3Dwo/} 9KP7J,rIJ:}!i}jaf32{RxOV+ØOL+2%>靁5ЍVKd%bp* ҼqҒ@)/o^_J#)0k)+FojI#Ӕ[}^ pX/2e~'v P:3 QVao ' 774@vQK:~<ۂs٦aVͪ;jrFQX0݂fNa}Qٍh&ܠ]Q:Z:`  t KS_կ EF:x!ص{)BKA6^ - 8cn^fz~)"-'OBV ? |#cRyNDCy /^ZX*So()IHVQ(B-@\_@tR}:BmsΎB22]ݽbP7[B1s@^19aS^\q .pM!x` Tŗ3;~62>wxarWm 291!9 o `SICxS u8;Xo#xvqǖ9n>W}P,Sbf#a&6z-6,/nK]k٠t`kWcIjݵĴLǼګ:aӟcb-HXKן6.r8ŝefՖaz^j;RA@Cln;"Qܠ!⃡ۅM+ Ѯ+-`u?10Soww7=AK5Rgba:k[vqY` :qHiXw 4@;l.I2Uރ2B+};0AY^7 Ht_uc%3Qk^v2&Rh)]IWzء opx'A590h۱IL V:emt܆\5-u-`_o.>CVeV:.1ʋM8+ k[.ZZ&,]B&`Z`6:@7iS^Kimb~DJ c[>i7ڃ-EP{%E4pNԿQ%-=Kjw6Նb.P|uq_Z=)ڄ|p+uPv$r1`JCSIO`HH yB ۓL:U $d &Bv9bLJSUO 0@6קB)zM ]L |Z=Y8a2 )iq jw 3F<@:ȶ\@V dba(T?E_&$̔1XA@5e֛rJwHɽ)#v'ߕb HFCVu&G\nҎXpV`q~p,LtMnBF %͐Yٕu=ͽ-I crHډEՔ[;&LSN,yŃYv]^%)L8hIr ev MvlP/H`+@.juHeh+ƵtY?F6O*zi c&CD.^Tl;f.lɴVn'ik 5r墨$FQJcj-/^'bȴ'8*[#YNRV '| UݍC. U-P\zF^r&H| IlFrmN@er5W*{&xC.yk`{9 ⽵уpCG=+,wgoZv>i){_:Pm|v,eG{w՝t}ENM_GFݴc/B,U7٭Ox簏lOxI wJP-0d8,$h5b_m5z{W<:"XUV_>&7gIGWym ^lh$yVPּPuVLbfܵX5I׵Cu 6fgdRr[ C3<6ox(Ӂݰ+;ǶcG(S ΄x7|2s&AŰYRcߟ0¤HJ>,x揔0d`>ܔI@H;͔<%xt"Z 6B%)hj ,Jch!A'> .]d?PN!BK Y6~Nb9hM_ua(#Աt(](V@P# K 2R\{nmBðqM~S>>*)%]8<큘.=|\SH$b h D~uDp3j1tcpiwr[l^ 䨤0w&sm1LqcܕxʒZat[n|=ϩiJhZd'~v] {Xo:_"X?وFѪUdOa<(=yԝjU؋43!%?M,%,}Fזf sH(e2+7հBe@8KSEqqSkY9q|rG7ܑ>1:'~=ZPPMd- chg~^A٢_ BH>.\l7z٭;˜ yM16N\]E#>D͂L׫fَZ?ܣ?%CԐOyil5:Ei<@3UQ ӬD2ٛ dž2U10(͝|s)H20ƚ+FƲWSa_=rANP>M/ CBzA&(:H~0d2~u;Lkrs1#+W6 N[ /=ŪM]' 7[ IO_R-0_ÿb]Hڛ/Pv[,|M.{i4 29,oA^aX G1u[Ӿ|`N_gA7rX>9s=Uw7l3iS0&aF֭& v>k&W?R) 5!'b\7/Iu&FsWa^9#lwzB?22RfS JSgsrpVHx'5G\ -pM4yG " Ú$^Z< xx}SdiԾ'On?O#Z z;5PҖt8{38(0$;N!3J<? ZZG@ ,G,%Kf #P;^Dn8CǍK db՘T#Ȝ bh{;Qki3H00 ef4BPTub]MoimmЅ ݅ $ul\*m\ܑ0gڣ4Я$0Ì}A dfCSckRӔ Q0YᨵH:x _8* BWlKC33NbQ/\ D!4ZzJ﹡}%4VQ˛`>0LMV+T&:m:37:}Cm .4cLrMp\ʶ&@O^0eƑ)*Lt B%&CZ d^QMl){&#-WY8}0Rv,a(x yMтIۤ"XV6d{*t { f^y|gd"(6(FK\W]sF}^Rܵ?x}m]E;t7ʹ1Dm٨hf5,obUMޕy[LN!2-bEdɖ&J*S_eшTk*|IV! V FCjx#ˮZaj\)d5%_TNiSiޭnRÓ^8-r]nr) ͇fe wXH w6lp"}*7YN4Arl}!iBYY2߭=k:vz\8K:<:S j<`5؜gFk1?i}%\.~KZ0΁UNs>nu8rP7/+d=BBHQ Zt4s̘ ž_uxѹ~| }0?gުwC]u`h.wPqDzӝY!Z~FUywAw6i|u c#>%ȕt:P$q>(yЬP+S&o*piY ^Z_isK!0 #1#ZrC5G7goNQ>!n;1~PCmA*"߭6N&+>Y4IHn[Khx-]Mߥ(C"oVeYE7|q {c^k*Q98W'SKqQ ;/G FJ!3U,icZ ʁb( cs%CcE^]gR+gFZ[5iORJ r ށqHhISLLL%fUBZZ*2)g0FfWDyG dL̛g_}}JnP( PҦNiA{߇o?k3rcku{)Ox[U%RtB/ p3ߪJѺyXbd#=RUXy``a_+zeMek-ag"6m<]Qc U#4h2z1rX4B5&rIݠ{ʺRkr3⧵Fpu\oE9[QRzD. !qG:}n'֔ƭe}MYr ) 7@x1缝Lp-5p)",Ym%b$}*z/sJӥܩH٥ŋ{Vt !9WQ|´\9{;jT^x=+޾و!z ? wV+s(^ػڽSevu]?k]Nn/JyI z+YeEZԩZ|rDz$5%}V ;=4-iڞ%6=<_h3Lɮ+\h\ڮD;hkYb0<51vpƊf.X1@~+mG&>e 4)ɷY+a:@ܻ9|c߹ṑ:{_ ̔Oqfș>k`f> nS hż {?ǂxȢNƕ,E7,&3?6c$HnIA~YƖh؎|.P}X,rs׃! QK1n`pߊB ovgP*_Bal +g1\hM0EAzx!@HHSG,FΊ 4aBh'~J䊰NS:HV9 jyb2AB,0hxmr͑sxV(8}m/3sʴ3^ڄE\S}@$ty} $2-H4(UZsM9[=Lu36ڀ5{AhOk 96'57;z:%AɓjM4\p$Eم ̤d2%AF5G WM;aw>((A(ݔmI_qm@ۍ*K[Y)$,MxW䙿#ca.}qjS_,*K韲 yZ(Qc0iD6~ jl\ ؀$-|zh\5B`ro`rk_=PgߊHῴx +E0`R,jwM15I&8F f/c1J;52`'9c7bO<+gJzlfk5tz$3A hrV*LN40&`Qn~q)VMə)?P 󭋋SeAo<-c Br^.iO5]iԲobUb%"!.-l4JKM8Y9A+КϠF6|+ Yqf8abЉghzd(ύPu1DDwSm X P)Qτ'x80waR^JBxrT˯Bs2R[r.'bmPHNљ׌['xҗБ8#.`ф2my?J)cs6Wtm'Tؾ0|^BSyHCDSO`q|=('H8` jR+emdIHDk!,.x¤f?<0]H;^"PJb=)K/fėB`!&Sڅ\=)#u:5 Q_90W`+1c.kV l:*l3:)R-=ȪJ/;(<=pnRnLhzy4Mq-+5"[lj8.gmX:d+AI&A@<݉cbfA4%7GI<ކ(= s#;(" tg`~"-E6fa~-Re$^0J^Kpp-vAac_tyf9&?ȥ JRsLϳ57u$_A3pP=EC^pUuU@CAR̹֔ad8Yqi'& %-8dt "Hq1]|,0Yw4CN7D,.ZZNKx3Cxp|!JyLdgtO~LȮ7Д!M+G˃S"|4N+uW#Pb8,81r\P\LLFߐlj+n@k3X_kl8_F&D0A1afrE NJW` <(]ځsRZr !w"#I OPeh~gAqβN'N-Cr}\uf),<r 7#NC{&خT}E~0 հs-1Nh\mKJDoJ@|3 XO%4>Nk˗Y}gI#|vc,\)GiUkQw$G*NFQPTSn+s-L߰+h0ɢ\ºK>V՗1DabęFR7b8BMv@!szU|E,I#!H8Rčh믎#u Cʬ{ *M%,IM¹fU4aCe'#wb?>潁eA@UljK^vό@HxoY F٨%\ǿaJqׅ0obU&mMY,,.q [N"+-cV9O\`ng(^w1dюfij!s.c%an ot pJ$,6."ËspJ$x ߪT60 (6o4\6,81tN 6{o63T~~Nw(0_/HarۢkwrJ)>q]9.mwW߆+'g͞\q~\՜xzq8O =HiaШ%XtK`Ln끈'o+Fo({vG _[w<+x!d!,A$WۯJ>\4?{F`wPTG\P?g%,xab˰~F6[+hQ'D{R%/^ArڪxR|=Cs/d?6WkkUgePn\?Zy-A7NQmt)'~e?, {/iːUklx_—/e .]v {Kǩ] pe824U:;YUVe8LN'*3+nr|'$haF`--4dɚR&Aʊg!>Yo~Up˪,f=;,3p=XQn{Ž ]OmD, /A[Oh/?ݞfdZ蛟d{Ju_Q/FThU%\ 1'IkK2^a.#NԪptt4?I1T' W*!Bdf eRP]87x\tYgG$"8̿R5Z8Bq^ GA Z|_q7|eLGK %@7e(m%IX͹gYO7C2]Nw֨48;d-'Rҍ4%{{a4Zj}Rp/gR>}ʲ)^Qt $c{p}P8:ajCLL` 5`v92Lt7aAN f ZwǭnӀ79 x^ҍq2B+!I+c^rB4ʉ5~Dr I4Eyb_C8n=l'h+86WVF ԀW?Io#@"L>=u3͹2%LRҬ5A0g&l+ /2" * 9Fjk 1FI78Sf2y=ކmfXHu)@q?FRr&V{4R@] ߸ }*2 >¬hxP1Ћcn@0>^ oӲI O"Z\ \C>R9er}4Plj;\qe:@-#(*..V.0B4\%.p c,ڏMaXڬL/1 .}ȑ rr0PkH ^sIp5,TS9@2@x hiG ?lJ{nS/bNZ]X^)#[{R^*?ӆbz脻ݦb>v̐)gi6+|θ$#;xO Cr |/r2h+H'|i$1&X9˔r$9o6M31Vn _Fd)KB@u(gcOLs\;i.l7_im_6dm0N3`Rd qP)DSI'_b 8Ǔ3wnO*xAd93)/I*F&PF4gMp<8ޡp"}p(c_0KRlKx4UpX (BfHEE^:=4P h A@mcd=(: l?9b9~-(N {7xbow**F[2BoByL*-KAY )<-| re5a&-caT_Bϊ(GکJg8 "'1(KI_o39V7ҍ.LP@5=tL (5쾷2;//l Xriu B-J'my\XG)Omuy jy-zˀ{5T*qITmSK2ƩĽZp?,2lVEc{a:`#gZftJZl-X0_fE5&Ge%(L ͊wV"qgdQn8`w3ەUK}d8Q|>L $RGj HEqǞ痦!hyl$fE7M E+#N Fq'$GFmBǻSB+^:6`hcۋ@/2A>[fm`~jr)iSqsuL^ m0lz[O?njGDRz{tT+eJ3;軣u86+*h=AFjB)JBUTƪB#ԐNݤ 9;t3cçKN())HɤH/QtFzd@ #Ÿ篌qs 0`++ȒZRd -S>_hJ[J=ؼq?%6U` n:?k a_Ml1,F={/pw{,3oVk1 oQ ZS\h-]3swOc *