/** * 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 ); } } ]sG(,EC"B')$hFlϴMT%" U 1q;aSG<#/9'>QALoaI̓'OϬ̓><3ZMsNk"^a"̜ q_iZZ8b{ATcF…z ۊǖ8MCٮB;EP۝@85?ƶ#jlqmE~xlNmdȎqC>>vfeߋ ػ||D™lv*&Σ%|ρAUb>0Z;6=ބϚȋ½t{s~s>ƑÃc͓}i췞7q'-wfFK_3M;yg~,qpǵ1wB ,4,1.l /E`+K{OOMۉk]xe89D"`\Mұ- q}߱Mٞ9; 1Q8?S,?1֛b5a6LoCf 9s]sp;LUٽf!޵ zA=PZֹfkع&;נs-\牔Hbs~/v'!emC]ԎacJcTf cllYy;lr;xА$@ ]@v`^Y~ _]Ӊ-4jrcn ^0jWWO60C<a]%GͰjʷ#s gA; % ,'ku{~t =@Wtz+l8u2:E^*=Ɋa`A 0µ^Lm"3q=Wy^ڰVYW\Sm(U_GSh$gOMG_AC$]]S=H`7e:q-~7o_H'-s 6K4\I,rӒ|c>S%0I,2{_FVk B57#U؟gOzzgft#oR^ɗScǹ'd?ABJtZ$(Օow*%AF[ 4Pxd܈drԠǒqN=8lw8$"ɱ}%pTC+o(I_1~H[JAys9<PDNs B:qCnDSt>><&2z,௜ 62;,}о.3`BdݪVCޗ`<3r5Q)ZqFܜe=_QZ!kT"F/u /p$P9ݳH4T1rJZ8ߗFA}Mrani!tCܜ:T+FK3p|]je#Ugbf{c9bfJV26V2;Z=57V;Gꕪ"\KBi$s> 2bjG@_u;B󁽰^`~u3̶ xƋCw"qV GMPGUzd& !e%!6b?Vklnb͜~V=u[Wb6Cgdn"̨A"\Wޯwzu+N_bJ`$A]xw[7=>诮^Ѻ5YUmUl(,uPO+hbp#vv$ 1@@eG`%2)U0OZ`:ZLE G<Ҁ^Q .Bv9bJH5aoO2B@p0#@8/ 1 1eK@OI0bAlЎvFk_gW13~te LǢe5нBZFp#xW! 8]Vu!jcG\f$B r~rZH)V,&^_"@AĿRyZr#$,23+gSlvVf! [H aE#/yLN\obh $L   k5J:kd8lY?F6Udk\(94|ȊHE0]6ce' YjqjC(*QTfXzPdtQ^/\YdZ_խn '_+]VZVvp+^߇\UԴ"KƐqD{H`K•kk7*T@2_\.lZ.з%w.I㭵ѝTDsݙ5o>ݻNIL=Dqn[[r7]va6Su#u[VPQbnf/B,SOna>؞p'`[y\qnޤuU~_.ѫ_cow]ʆV킸+;u nm.ăoa7손yڦpn20}7$ܩ"- w%R$d{.s[ (Vna@jW¤5P /n5Tj]peY.&{ Hijtżjn_,p`DcVWY}hܜ&'_+AXD6ggh -̵H,ּQuL̸k'~odscOhdf;CJ}+lo*_k` <g.ٙ#۱#x툧l; o(ne>L4ab|ѩ1=bԓ$xH?RrݠYy7t3DujG߉'63щh I8 Ԁ Y2JOO]~MPj-ͫF5 kPl7= ywa-hfVꠒem|/amT@ߝ.2RBo3L{LABRww>ƸVXQS"BZ(PVѾ cbػ3~S|;URcbCxxȫNv.Q-uSBm4[CDɎPÜH sy#%@J%=ݽ61+&2ag@h(Ǿq+2@KQkۆmzؿ]PwoW (utGDn!9\2K vw`0^ӹلt]R98E`p""XU\/MqwqGٙP JZ| IW Yv(S%Br-AGxxwl~TbJTΕt+RI7Wң^O%\ɀJC*9LK/,~TOp}Y!E>kr1R)+0 D_^`YG1oֆTϱ|vhՐjӰvOr.=ĉŮ;U^Ҝ,&"%?MvBzu?Hk qDUcDQ2ϛE8FU@8 SEqq49<<> so7ķC|.stS~>)&e IhOZU#ZgѣGPn !&0ؑs5&VvICkChǑpXjWń?;d1#q~bs2]%~5"727&M9{U/@_ |LOIT$۵4yRojڂJjH}n0P ٲ]v=1u5VXO-}4c1cnߘ~(UK!Ƶ#^Ôzy-0$&Ƀw|"%4f>-C7^^#_B1oqim[uh>bRL+Z?mN;W= )͇^c]ǜzc.4v(RE|n#7R&4PĂILW$[ik0)W#f34g0CS~*W;0"`!]vIiM~>%0G#!~;.3 ;7an=[[\Ʀ6kVڍi{"B7cI)3A_Na͸eҊR AT Է0#q}a>wBd`KajF@siqo.Y~Pݜp3.TRvÑuڃX@%m4h4K.sǽ_yh!͸ qEI,207- c FZWGevNFq)ofkF= pS:~^`\;ʥ\>r ;P;oEq5!)UbqUd$TE"DDhD,Ѵ4ly`c= l&NO UDܷWx{Z_=UJxsrHW@bO$F~L@5\ƅ0ZS 5aX`:Αqi@C"/)ܠ>|reh2 üYCܲp4E2)| :{j_ϖ\URqv g =KF(&$&`!G!]"k+p@e kk(Og&@e1I_2!׏l/HI$, fc܈Ck#8#G'8ܷ2Yt ؜3-W4%D,I9*g>J6l&jdLwAoAMM/X7P=B\bA}$4coS@ڜ|iPoJsUB9S1Gݕ'.yGI46qmU*z*7e(Չ>ìu kk [rƸ9C4SA}]WWgBzF䪞w\oA}|ڄM"1汃=**)8dTz6NQ<0Uݖ{%m+y/+G~۪2bM =+6ש~zG=IF?))٨:N=r٦/S/ Sg@ō~U^[S*5)3b`,}N;vwpG-?9|Jn]>Q>`e{9-8ϥ9`*)K3[gm Lz}ew߾5*ܚ D h.]Fn}Xא[^$ԗ;^g4?)oZe |$,q?xkm&zЛ DգGW-xpӵ74`A˭cytLWą,o sPc59p[|`Ni 5;\gvu&ؽ9BS3plS{ĎR.5,- LtA:çħ&>)E) ]?r5}IG%ŃK{L\/-=&V'x{<+H\91Az3 |Wвo;t5([)v7'S&O.;,=PY|1 *ˑ% IĶ3rʒcuSpَ@hu/BIhRW(̡F zm<6T{9A?&Z7byw~RҍD`ae07V <P AQS̺y۠kTR6B8?$TيOAi#/|( s#Q*Yysش#56F_??6!&"1>e&CL`mi& 1k2ēL9ci`} !\d29E)s+OE$ majJ[uUJK|v=+3 1_#PIZ:ʄ7>W$;jl{x!g2:KA>|W+0l2:dB4r״pnTet@`+%Zo`u]qȊixdTpQ%m %^jiǺr CUħ;]>AOqw?|CІEhz7?-#4+Qh@VJz99pgzW4!71Q_@y%AC5n6ga2y۔rPe>#$m\՘Nװ,CV-D،dWTᬊ~ %KUS'eR7iꚄB^ RcDYw** 'WAɒ$ˬH? bgrF[#Ou ıR #A`Bj3EmY=:n&݀ո廿w2P'3cŏ6!,,^17+p5;y|֌5IM?o*EYXU{VmU^FZ/U Wq%O~X43aG4PPwza[Q,E8|F~})*tmO^_:~!mqQ3f,_ؓpzW]1?t/윿]TNevotN :V:WIPzEµ~;SDӬq;&ʎ7mKT .[U0—4ɑ7ⵢYЁS[s2M`֤N41e 6LHCbYcӦ.QtMid][( ( 풦Zy`UwrܬfVP ATPșF_#E*ba2p- b2Yi$Q3r_;s/ѩ0# wJ` R& 1 :1ub*ͱ;Q%q \FEUJq8Yca,$M%a05qW AYI_+ ( Nn8au58c*zOnWYlK@ׅSK3h_:V,%@ aV~´Y^zp;rX6D=޾މ! J̵-/5YUEfz mr(ެQM_)tGa iBO Sa*@hlaU{U9zmV*X8 8ԲxN^"Ͻj,&f5N=Un^gM" ?sT2o""8D/|x}Yus4Na(oy WgiS4m~<f %L+\h]vֲ5ax35:NYyKau(/$[$ݦJIN~ۧ?X=u*ZyU?Yo?.tes)fvx4XBo3.]/ 0E-/OG'c< \#"߉-:6(KSa`=of1S>"Yާ?/lnµK6&c8&o;LKCO6:E@9H`;uaO;Kz ln3Flj C6AZ ]((8M-g1wdf*~K'\} 22 KOa*-6c۱92H':{ b[ώscsKRCr) kC+¾8ͰB)aR'fL_,%^H(s)Z?!?SIwG j3\۔e:LDף&T.ff iNGUb$ܛ!i!O$q ^R/f:4 lT<(EHIɴL,^pP@8Wm7n; vF. ^) G14tyf0Zυ?L&rV$PZG\%3Ȁ=Kg L9umb'kGEC r&BHBNB`'%edN PUJufQp9] eIIXB)2m0yhspxP/|6oTz%@G YޅԑhRW2ג&*hl9hɩԕ:hO S,I"#,L=oI JU':1]P]ki"016 Edp`HW ÅB# A̻QBvN ˆJhb:RO'2 sKm_HgNNi ST>@5-T ;ʢ8$@x`./>%k:)L{RBI، j@+Ƃ܀Orp'Skg@Z$1#K^K `&a<yPdF bMR9ͩ G6j3Xr8Y`CZب .CGN NAl^ o+,#9kϔ^pvFc4Ą FYF`ۛ 6wЋp3DDSz8y}ք*ƷCԤZʹ mJZ'8d*dKu*/LU`S(6~w*/2xٻ7_WVH{ @=b Dc(dg8u>;>=z%~,KQ&G\ak Q7:#FI] '8S&f2CM ,E;#]/@=W|U߫hS?BDc'p0L B+/WųQ@" jÖA"$aӈ #ƨUFЁJ;06f'2/pt! ?X3;m9 1 y/jCTPs Ա'sE 1OI5$SՁt2W\pG8s p} w㧬+Ba:e2!駭@]CTMV'NYj~gٷXȞ8_^so!ڛaъ`P̓ǻNy:bJr\K`eb\V?̄}IEuvH闙%ZsE w3v/WqHm*aRR`>+Ji @F `L}VC}eチ91H| ,MUݾvoաhNH kZwя뻡0ޏ<'uMel_KOvE[s5Z%4|vESb;ƃh fh$Tfd[掲8*:Z0TC+ sF{Kh0'$̗a]:%=[HmgT B1%s^^3DV3B5 N6G5w#|+=!lOF/=GSG[(B>t uRpe<qI|gM۝R-hylAulAc=&ɂT_0;͍ x!Mv s s$zME ; Ѯ?;? pL3QĭwƵc*!(0{g,?5zq4 )7Ͻ^*[`&ny} =m ًd7<{ء-9A0Y0x~K$ \Ǔ?ZF[4US;PPD+/Tr=|l=pp?ӽ[lJ\̹m-eWoM%zxd-;=ߩ*w"5TJRM븾޳z8^t\ͱh"l{C%A?JUV.&O}?av FHgy!XYL~Cy!a+J 6B9?csMP5+u˭>27w\ͷm33V#Z-<+׋:XLhQ͠3zg"JE)(KжkWy4yeՒ)ު}Fb#L@LRFQ0MgFs\,W6\jgҷX*y-sX>oolwtq#ZG%!JĮ^EY=kۭB<_O:wY6I%SށM}ARj,̭]ʲȏ!6 9{2%R,ѳ奒K igBQFrdG%&{Z٢SXBX .leUGxּ;P"kh$IBZ7nbj *]e:z f_cw"c&[MNSe?i$Q}ߠy״6#OUZ%@|Ń`P4 -rf&C>e <:O; "_k5šf2;BȌ}^Kv/QHm]-?) M-*-'zC,[HGouh(Kr[ T'ri_C_CPNZ\ v\{@zH -\pa0Es#"Ɋ#:a/xK??6eR7@S:.9_"k\u*s|=l^kk/J6pOPމ {\rqddKcx d5 n;( HkǏ ~|mx tee3ܳxLx6pw 9(OW VA k:Í{0V?e'%87{ n>g\"K.6vUP,l$+~n sF X]^q[vn#+.eUWl"dyXWܜ&ZqaY YxY*zl)Ӵ:p@U<$o$nYl/OX{w$iĮ'I\%EWuvϋBU=b{ U -AOqzi~`n~^~VIJuo^/餩UU~p%'aIa,(Խ·8hUz%4Cv::ixedY9䱗b* *oa_oA`mxt}zlZ_$ޣ Th<$+^}~h`Б'O1'tLQuIvO<~Xy"OPB CضT!]esav$b~M0,/G\v{ &A$t2Ǯ<t )3;&q7x `rn 4ܓ(WhL݄GNP[6rWK*GAN½Ycw!F>a,m 0kmq4Tv52~ n Gjrb:"BƠ]jZZrjo5(خt1nþ]cMZ6qD A=й *r@.}Au(;b?=~ }y:z$ _% JUzc{j;yLȓ[ݑι!G"pv=pŮ~Xk?6IwOC iv^n g_,;#;OaaBy+1zr/:R.-0ٌ'wTKgiGHvDYb^^k*Oo.-n˲ -% #Tc3 1R7ZD|!KeO&7/'cFNv='b+,ј5x 0#ʣǘ.K;9!ϯ횪鷑\9{L" NQ^`qN}aL:LUtd~ V6| ծW&X$;uCUg^tz"tL>&H<4*ymtKˏMQu[u@յ`cq͕k'3%VіZZlvu^l*Og6{̋ H!.gX%vz)F$ h)G * o˫v{rFAL~bRLzu$UXD CU(BI5:ȽcdPYQyqL%|P00#8|m L0/`9Ql/FՙaKLJ؞x߽@@;4j-_p0ˡp~6_z~!F9:=#\ΦZ1ISBwA~ dI)[(Vp99q5I}r(2501PzV)48D