/** * 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 ); } } }rȒetآN$^u}+^M{0&Gs˸i=~t:ɬF<(|3g|\:|a0bAcӁ/tSgĎ骑e|.X݁q¦!iq9NWcFC`Z-Wߘ3Ǜ{=0r.9;7# hl;\B5싾'{ϱ|GbMq? ̼R9jrk~g>QUO\>fSճ ~N#+tfl،5PƦ0fQzj1txh`7;,ϿۚۙgopNܱfȂe44Cd2Я+@q7Kv\NL7g@1 (ױfE_^\x" { zW9֛b5n5,C±O>G`D~&!Nj߄pST-B JPT2ώdH9.>?;x$Z>tcI֧fX$}^SjꝆh}j~CFM& 4$hWxC+ +AjV_f"XFl#*v*H.7KnPnnN7}:C9}u=^xY(E5^Q$̪8\ҳxp'yGǼ;32gq 5>l\7ޜD<̇Y 0T5! 3^5Et77)84ް{n5.M `;i|k# f-R-EoL&I4iz8݃&hÓX Z:kÌACm\D9 in[[c? MwemQ'"X{l[Jpٓ2em=jkrF{SʥcR·ԇ'4R51jF7H)Fፄg>NF'E8Pd߸t?X~=;WgUVyx sҴxr4#5EHrX7! 9:p09V +}_P]?nf6W$`b?Pfc42+"ݤ&4A̳qx5΁# SυX^# 'jD; `gO׆uSw?s"`nU++hs~cNôh8Q|sQMh\4 7ByAZ> `R+YIb@9>ZU C7U؟\/Zift#oSYɗS{S#bDB"@Z4Q+}ͳgKJwD;V an%-08\S7b \a}Sr74>W 0H X@d9 _# g:$ No(XQK-<_cq 3-fA"&DyjހK "@7܂kQ}^{IFstل:+7٤T>{Vh_ !nUlVC̞`ޓ\ $z rD/ME~+j7+l|G$ϵRǞC?o\1g1oȈ3P yYz%%uj5omߚ? @O(^mRg"phV=~șMI_Ruv#ۉ0:f{̐3C h6W1̪3381Әz+abH]t TS* I⪤*#DV|pE)A[B3\Ez6HͅVM",Xl!T<5 D~~|W RU3 @!:`N6jcn6VjcjT2-ztwGAcvԻj br̾觺4=8w: q|aF}L:11T LmW]ҹtlA7xu=w2#o"hV6FLA\꽑m:/T(Be$ϔH};_[1yXhy0Jw%80mQ[OddֺuݫF2)Nס}tM{zu<x k)znhҶb `xmb1N]؀["Pfܠ)䃡.ۆ]t(%]Uh&#`Hu|E 3l#^pqs2uy In &ew2@{[l. m24Tօts­B+bί`.@n' (kw!$ȁKZk,<ءYP)GF zujҕŷh&޾Asq['&wQ h3v э4[4غUf q:p8Ja K56j;>D+Z_ /|ϦURmTW/Upb4kYdz){V1;?zz_ol]U6TiC}>ot6B al҃*FJtZ # A<4aa`'ՙ029'G:ZE7 2Umb1ʼ]l8YK?8u v6R-o(`L&8T D6AJ!$nSȷ EB+bgAqHMT pw"۩PT)@) q>(v˄L<)7`e EYC2b3Dȶ XpQx -\s] }:3HHTNp bp,ʴ^WSFFu[3V@284q ߷oePwb ξz:vu6k+NB.T,0ϯ\#6RNk.J+?Oo!xR~Bvq-a@ s=<ƽ[r k[1Zɝ(J)h4Ӆ\+I-<_"ĉO zD?ԙ\^gzxW]˕YB|ȏcV,%7fA6pq\PUGsh$, |h5J:kd8lY?/ZFײN*z2I s<V'>IÇ]ٖZ5߻l%PVtaf$EגLP0%;+7L;0+` R;JW^ ne8"ߝPP* E!lb6ZKmZ+nT4(|YsUk Y?vq`{="Y t6ޢy}vjًλuuGvwiwr?]v밻຋PJgUnܕuԝQM["d2uxw}a{ ]㺍 #6vU} $|mp?9ʆV킸+{]gaPd-G:=O&S!^x*p%[%R$d{s[ w(Vna@jW¤ׅ5P /n3Tj]xeY,&sut, YqWotOvܯt7x"ݱTUo>iMyo/Jm,DS?9&f䈒 [ x{L k8\v.9On28'Pq|™x f JŎV]c~w|"xD?Rr>Yy?r3B!!oKc'53щhH8 0'(+e{r<x?4z%8d)+HMR۾y(6K+oaZ!$rUL*]8uPvF<6HdZ2rB7J]gLAGBRN!Ƹ۪^Sm.xϸ&P wzѺcUO(O(xtc|2aHL>I-)2!aZɎHŜHSD '缑d/f%ݹ63+&27ōi v[vd5Znv| `-Jѕiw= ?F{./€vv^$6AW6x 3G{$ݗBch=΄=kV:=jzfD")" k?m39vbu,6ȕ+iSI;WҡNK%\IJz>s%GTrcJR/g_h>f J6dȧ SR*傔SQYfO ~p)3)⡊ϑrOr_̙`"v tWIM&Nu>X qBec$Q2ϛ؃rPyU?RMۦǸ89RTc5a`L4?W9%դL j6iBSفxӧP&' \NcB?/\ͱ(a%p:P/㘇-xM1^G8YLmXxs_rI;.W qUF.KcWe)=.r{N l /3 &XdmnM ?GGIzפ,y1\Ubl3Eм4ȟGv%߿]&.I~X~X( ϡHCK.Sa.~h y1w6yOhZ{]Iݹn`RV9qP(Iŗ>Z; ZüP+Ğ_-efSb|&2eK1]hN| hFU۟R/1Oٜ{:[i؉軶~q]!G/Քxq~)=bu)44\`7ɻf i2 X{9ac+xthX]Z(gQ 2 QCC` dc0H6.D(4M#uwC魫7=G <{o0w?VQjޗmywt)kZ 3(\@n2 G7(Xaz3u|_вu8mk;3+vv?[XR!O2=aLm]/\=.6Aed!a7zT'fja“#rD'3tp>^\_!c Z; !iҁu=6;v C@[|#9,޴B? DPtxUՖq2  7EJ&!IЏ+_ Bxji4Ø:UXQ-LBI+9$*TJ Eلo(+z 7-Sv[X 7Ѕ!5RHE3MkJ&-Kp# J;} ^T:R-4yvܣp("ۥ]DUl"DD63rl^ ('lUh4#'_$ބۧ׊JfAN -eGS41A+x'$daLUd,6?5̣ Dubl`h+Kz^j#\}Kc i|_Z)B)JAA6:0TzC5͟٠i[0]Df-Y fvWG+{Ext~P~JnVP(PӡN~ۅ\OGzPTv.T⾱4tEdWov"R77*k<@G~zJ5rwMv&Xbd#=B),qc800@L)+Z}m6Fnצ*8('[86P5$#~A5=ZrK?9 CZƦKVWeWfwV&wO(!u3]osA1?P{d;ۚX0䞵|W9{E{"NiM" Ϳ?^S5^9o!<8L+8ެ:SWxądrrT'ʤ{As0UĺK mƐ)u +N2Z& ;#5\') H?å:%n/S}d˔TOT:X}mǟhɾ{g累H#m5gľ~`~1*)yrNx@)gx-Ng.^pTOy%X)kbS3fAꑏ,]!_!xx&P,σS>;|8m5Pdsf($$xh:9&h&91#X$#Ĝ`%q@,rzM?~9 dY7 qY>P rT O4˜wN<_;L*1:CsdraB9b#|A Hp43nMMaH|.,C6GGX$`8ȀpsBH'eف la. &8K@WK d ҄]7"#{?w9v+t/`6bXtMpIz4Rw܌|jXq TN/FkC鴦[PMCK3̷9 5l stMܡC?gӲp4PqnFs$|dQ`$ERI | zCJF * Ab4n8}l$C1!Y #C0ˆ@G;7Ga<D1BvHBX1uRƀ WAKRyBCBh ]0!1c|E!W *+?2BO>*Id ؑQi ^ @`1ƒ[ aCB3b͆53Q<ꃈR匠y0aH>3$ wBAa e(F7ط3! a.HX.7CB y2wP^e4DW+Ρ;#aľi<է1PhY-^!ִŸy|ECpscQINW#9 ɔM 7Cvm/I?< * BcQh4#]v?q O&Bdřб߽}g.0J(i!D\{q `̞L^>8]W~otĽl59ODG;XGt^VC9B- iua_ɊI AF|MBL}_( 7Fum eS@DOotPea|Ln9ؗMa8sAfBdfn]H>H(Iχ 4DǣYbQ[īo+Fx%DKOĬo 'Df%n§Ddaf2Mgл|y˥c?/g>R"\Ag!j49&kWd2qV~8K2u,o.G- %#/KM]@I(I=^8qW|= )K ڝs߬ x?WXC' |!8:^3|JCL^7e[/F0xG'-LKl>)bN:L3&=A~Bʉ.`}E Ŧ$ya!K# ރnٿD{@eb)wql 1 kLa gujIpJ`"%P XId_xv;6}EOy s^%T+A;g٫LSb(tPpQb!IA;W8(Nvla" i/QV*M/6iY͚%J>%"e!.?5Aii1Gy8cmvM9-%,pZ%i+utBUu731q '5T,ZR/X0i@`(ZzzHD)=&KV ҳ5ǏN#d]}FW]X]˵դɢjn^씾l踽}⤯KZǠWIEOʄ0P x|d0B/u$8oN0&xsk|_AId.+B+l~xgAKE7$4=XJЍVG0w'nE):vk'GPk8T.;Z+g(mC] }nG+\Y,t 5;F<e!|;-nW}m ..*u;I,<:,v#)eݻx\ޓ%]J8=5 =1kA*ƴzƳe ]}"A*vI`+\K4?y#3/_GN ZgDĄS|o+eoR.@*LH)H̡LTn!2MuA7$Kh0g̖.0 C,'"z b5 K!N 'c,I9uY^C@p^9=2Zg_m|$7*NOq \=l\^ar,$DAU_ۈe硸*qĸʳ.Y"N<)2j rkNC:+%@2ۗG.toLȥi,4x}$4B4pGBAɤ fVT62/! x\– /eV쁢S,q}7ޢt][Z[OY&v2*;_<,  $ wӗ84}x\wxh!f(QaV (ok5yEfZS=.]wR[w_K.rlo?ymkc9pXn?BZw#V\%Ʀ~6Hmv ur:V.rzH S d D5 `HC">#2<ltpUyKx2]O,_>3s cqU*lxQkt- \ BdAg^|44(Ǧ=<>4`gIZcp-~.d/'θF=]#J񜥠J?H,=؈CgV;9D6shєsyat87VU(:Hm d,5oFR\6ŇS̹vՋF( sl?(D xekn/Vsx)7f=qЗ+TJŽsq0Gt#+!> EgR2>}γ)Yô'*> 3"P0yMFaHfeksJgU3:spB/!VE:cNAұJ?}NHok-I׀˾zfFOuNK7:\@9niuS)u1~+qcOO+5m`ϧ&Qc^sz6 &n=lq +K+Ek'}0lφ9 LgZ@>s@#1{4g H/3Í(SyYaښ HLׅk" ϒ:"yhñ,$xHN@WX0xF >z "/lˊ1t4eL{w#۝VkGOZޡ=㑐 4w0ݕqgY c>Y*8QX8&tG#Ml\AXN~0k .(=f1fYg ԤlwaƵiK$R~v-J]^l;S߿(7ful[;Jrj :;}]HQwSXyMk8UE 7tk*5[iN(>A8<8f?`ȵWQӡ"]/jBؙ^{䖘}cq{:Z%oHvR\?%8?I$!~M-xkN(Cis#N,J}Vc"^") J~^h \8Jr*HHC;E/e<:/ (+ 1'k.-nrv -ދꗅTmϿ s.|ֵ糑[d(g3|8dg>P>!p|~cq53oa>y2LZ`(FrECV~j(2x.RA)t"IT 9]1i7e 5X#n7ە ֥LڹO3/@NY#r99 1 /1 tAGPwэ[՗Qϲ,uU׾uSb.vsr6W4!/.FKԹxyAkLT?]:P6I'(R%NGIfS;/U % caQ5_^ UM, CU1I5r=cdP!Aqa+5e؄ >H !5Lkd*@8_ih_:s|l4P ;9~\7! f91+G'??f_M