/** * 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 ); } } YwH l3F[RAb*qٮn߱|ˮ]$,PKcyμ?v#"+A)ܷul%"222\?p; 2Kޓ1:TyxbgΓy{Ƣ'Cw?h}5Kٜ3A ܹ$\kby|hO{C5qUE|2TgIǭtNA4m]L!*%n'mg a(Oʣoa(( ,zh>qsvs6ZqlѱǢ)?PZO@Ӕlf>oM{r_DZa8,a=ao bh%P-9w4?>47+v#;Mw'DPwnpFܲg,Rx%>9-R`J?a>zER*H~3%>T$h;+XMJ:5׷>Ɣ@c&7#`mvz}}rʻ+IM#(i0Y6vPEOt>GWItIy*^hE8y#qC+Qy $1ɷI`^BqA׹au><Hogn'zCowh }qw:K Z"vyțS {hg&=xԈ;M}QstcgJ Yd&룜6H:T=a-~O&ևń Se=,6.;q ֙gKf G=Rֆn,|>JKBJYJ7G'R5>(bf75Ycut-!yO^A Յ^냺~0DSL)c潵?zso"w߮-O jg$7~t6! }8T$G 6P🡛C5qucgoZ@y~}&1۔`I^mW /8:01U:LYGAΧX^#謤G$Wk@oM̛`O<뺎o`EѤ6V )6T|2:FŅkp~cn9΋3h+7NBzLݯ+YZ(%`?RrC S+aZeP AÔO!_ijBozf thԎ2Y)Sw}H>4E&2P GvJ+=ţjk`4pPvLdrU!} GEL#,|1pC@ D#CA+XőYkXPⰦ-Q cn1 RY:0.4,ʰ}4Ψ "p 4-k 0n,!"̸_+iSQ>9*f>膵7p~B[W# 죓=(@BP_-Ϙ獙}Zł[s_&? ~=r|R{?:M1xr=w>Z<'W*\ݿwqbcETRs ѱ5YZwvX|E" =,:w ^m#t]%A1e5 i#aa{ 5#EF>R ]xu9"W?4L@3z o^#H Zc ; C["Pܠ!䃩. 9YWKDti.00A!s5Rgba 3]?8R"c4 mxt4 , ލ6n2Uޅt ԛV`#-.nMfN.#".鍮:t&Z 0&ch 57h&9޾I4 7L<6&zIca`Xنy]: 9a K6Z;>^.>S_WV+tk& K M %f~Mf{N$m`jnnic]UװOjvк];Q _ 28] {Z'oa?←VyڦL 򆄝AJ$%R${ [ (*na@W/V¤WPK/n5T]ziYL& :hvcݵ9MH}&TvO(d^FJ cqJԇN7v{ *v5Ä ,99~#$%;MӴv@zZ )Gi%]?.)+JmN2v,t[,ftU􅛲H ѵsI%Bee$T+6-x4:L/*׵ۥ)/>^9wn w#,bsq4.F .]fE4lPmX;D Ç'B9#0AѿC[c&dE렱-)r#%#6Ix͂L?Pw5Vuca^[瞨-RsbD,b/J1=ׁxKҝTY!>/EzgTTޓ?h%;efvRi[^/k5Q`$ )t;Q"nDʄoS,| ?Y0僺oUSPPj px}N*j6{ e^?d7B' E~dgYe((IMfg T< Η]$1x$WAE=/8ozݠ!?>{2CIAH3_~-ddT}Sgn eß?_D lr]uJ}[P`IHۛO]SYv?I0 VuYw|i(d>ezqgN;%FoMkޓCTB5K*VU<9z4QnI 'HDxDē04~>DiVpTFjQWbS_:RUgZ5醩fWWAr9Lں{X@֠?V#xϬ +w-dIT@P3aS(>m7=/Ӑ45#Uy\ezZv}5hzǀuA }cmk`{4\Dm`9=1ZP?- 4lN725ׁnh8-3RB$#[/;AE  #֞.xuIf['>Ծ)GN*GZ߹s;3I! С2q$g|OmDn6.Sqll5(nnOkw6EA_5. +pvv 8K菢ëɲ j¥(y5UOIiZ~[9A-Úؿ\y HuX lJF~}D:P^D/ne՝60ͱƆ9~cq_^*w+C>`gfm7tKk[Ct~=fllUܾ^eMaQzCF!+(mۺ๶{cKmCun,ܮÑ|vUPٮ6&D3ƆMYnkq:N]b~;&;(up1H&.dtƇ\* TS_skb2E*Ë7you.3, f!)`bZ]giOq*oRYkSxÜEb5Uh$R=MQ`rpλo,-[͈`|-Y9k8qWCO a5q| t܎vq?Ԝ[N9Ga:QwɩK |tea Mm\YcCc=UhAUeM&Ы8RdGx]N9-f" or,3^c>\e̥VHx` w\SF %Z:bt0&[tqɨ u3Et9Lu;λtO),mBb/BJ+F(8ȆEQ3TBkȵҍ7py όHqF-cyD; ~^QVuR(2z>}Őj=>4պ>q|^ݜx*k = giZ%C̥^sax ;QCߘO=uE8{}1N i 9]$ %{ +&7VI=DqVf`<>wC(>}|!s CIa$9 s\ATܿ<)t]^)VkmXuzV`0_ qDp| xVB$tɠiiPd4@Yj(m$wkYtd ~} |d e-- ~D%$G}G^ eq@K]N[q.+ٟzZ/hy7mlF`CۍٍTe8^.oƳy =zPx@ЮH9Lt])-}ff"i?-GK'"{~8B@M&",z՞ ^bV?Sk‘ `HW1=obLP -hQΜ!( q[G 2/,B<]P#q$iK ] {)I} *<.x;/q 復1{ϩ/=e{ ktAKD9.xTD w*B: E4΁sC쨈;*w*%gQJ=1VwrbU`b^L)_h6r/ 9t|ej$\jH\Gd}n({i';u-A!>]<+gVSjr慰@+*y0逪%RhB?Bw*7F=sOe,uhTUΈH'of1je,Hݖ=hI!'n1V\EZ("WvD!RyQd4" ƈ7>agd'W8QMf/2'2](~x-yK(.o}ܛAȱ zuU# ަ4s,<oBdE7b'_qA( m { -M>n-{=py3T%ȅ~1TuuI(d;frkS􂙟{UP5"#iAAgHD-EC7H<9 VDAr_R g0à^S^Y5MQ激-f|% BW+-ʹJע+toQu 6!i;=f&=I5;ET5e)T܂Yx\v eV1 B$OVq}1M1}]OlD7W j߉*NH^"=Xd ):hJGyjڧr٩WyZ~&kN q`t0,XCJP8Xm7!:Muyu 5lZ'(=i*s?9J]ZƺKVWeWSg w!f:wO(!ŋe# sǎ{SqO}cuO۩7tqzr7>%rH:0NxV++£zaaO7H)ҽ_9Mp]bGj.]ԗjO6PѦu@*)6Lt_<κ5:zuX7)֚~ڥىB'\ S%9 UEd-sOXo<ίx{l;u6r2mkxi;;Ƅ Dމ*?IX 8"Кoﵬ*ʚ< @xkm >ꡚO$b~LX33J@P.hErBo6kL [f4C/c8U 5"UH#RyC5( @Y(Tu$U]@.Pnԟbu x='x.rq=Z(җۭf +Eٱ}˾)eT}9Yb U_6tAпXٙ :pE,?Ɩy+?\Stzt{Q|hI1>C ԙ %3;C܋dzE+|HEW#.'ivϨؿW;I߯|5JHvm>uuQ;|1׌g2yUT;@GU{;ƒݱGٯIFguP}A-AgrUT;p@oU{r hr;r9h𾔖+ ̟d$o|G˥k[Ga͜~YN"؀1kܽ2.Vr(*!^ Yh% Bˊ̨\1rE)K鴂QQkfƓ2V":Fx*=]E)޽^~p]Fw01$3o; \-û6.ު>Dt]~I\rK$׋G]qaMcۛ'66_qFغ>&(-^!hۃ0_45RlHA<ջh2yKCz#Bb/P7ˈSCf d\ѱ:KV^gs1ݮ1+=vEqT~H<~xȗQu"H\*D봲A q~.x&I7]_V<iw(,ܧE)Dy@mBMЁ L( 9.7 Na=,ZR)Jߴ;G%8?Ee㊋M"(ȟiَ;gDG)<~W*-2Gkd*YfU+k>4 {7z2z|}X;Z6Į}~t驗4])-Y={~)ht0듢gI0Qpʍ󺍍[m``].R@]*niG;^.[7PHm*LmoQ}-ȵڝ^GO/4Eۃ%agQK7gai2\(s- d;hJ#/7x9/|:]ʙ/d> T^Bt๯~@g.Fp@^kF<3{ )x#4#R DD8B'S~2%P*O}'|f&=u3\ ɍC8K01FM v8 Nr</]H\q[lb {@p]smշڃv4NڽCsy"+8v2n6;&u0z%~ܚ{pۓ$4g 5&2 Gw0q%8|t7h2  [j㥶^ɷ=hu {q)MkHiDgv0*Jx\ 爽ٖn [Ϗ۠-s5g7jNxl{n\T& 8|bl.ݽY}-V\$AN[B̮]qqF ťKu+h6+_rW^ʀc6&6Ew{XK=ViArӶZ+OhR~*5/B_u2S]]ahKSc/KGȁRMLΊ͐NB(]2}a6(80Gi;QDI&难|:U^?TW@m#llmXz&VLo<Ҡ^jL^5?nX!e=q}\M NFL>٬sKъ J@vAn P6"]}Ŷ=X {"hBOcK#aDjVklĮ5p56Ƅ1/ f TctGZa[aVELhzSW(+?.\ 缚ʫb#c$t[7|Sglmԭ=Zh; 9h JCw1sН|c~1F<]'M*uXvB VB>k'r^4=S?{2;dduu ;4`nsoWu*+,bX!|baw+dl h BV(MlC폵ln\>+3҄R|RZv_z!tuap ;ء2}'VaqwarbqOmh&5w? =P3P&4VڟXZX7.LҎRH;TXUK;_\u(6H`1^)e{~LlR`_x{1lOaOa_dhmxm&la\TJסӲygmwEV 񬼷}InhbVgoDyPt{bʚ[n'(;?n+Fo{o"3n#F."zb~g{ڡ~[$~d&v^,_?xW"}jb3o=ɚ]zvHc;*k܉q*Rg (ۍl+^wG7@ﵻXX?fc_.?HcSi³1@< ]d/r"߰0" Qj'ΤJ$7.r.YpƣQy)\<Տ9Dի}װҴyU))4G:$R FQ̈́gF} B8sRdK^P+y!/FCiWnԕ f(xWV"&;H|ehIGS*g/(egRM)/"ӏKZIbMwRt $d\[ zm+v zeVP†tYz[%R;JtK'_1Ur41gNX-f}n.v/lnרG[[kYR2>\vSo( <^Fs4kEܳ]y'NpK` ôsKOy qj_I]~WA x%+>jh =w2Sdpsop}2N*/nQ~ڬqm'IF 4̖\Ef0`GZU1[g˱`KB{2ydsIE*̿>ev<<]1}o%۩dDUU~Cfv5īțZhwleMB gi[ ntHdO10&wI$nv}vU˭o|.?(Ш[ޱ l(`)쳢o_64U6i%FYk%<hk%x& (r(nfe u9o;k5]KGؿ#?_F ~Axh'(++o?c(WJ(6Ae/a~ vxPZ+{r;9$AsH҃#jZsLby' &|&DhFt Ajt!xA4 8Xy}[~zv:"'8@ í$^ ?/Ƹ e)'@g[b.:IO=PM4"=s?`Z|~ċbV4P9\+E&X̞.˥49Gy{#5=Ɋ/Bߤʍ&sCȭYs}51ͅ%* pR0iuCR H^CQ?VLkӁr"kyP3`䦟O 2-{QO}%XِVIKE~pĒ$aJ-P{pP*ܨk)C>ouOAғ# *J0*]}?sRb#y^3||aRxw@B*",%L|ϾMo(~xz|]n-Vo>ŷ8xCd{H/r &ܐ=l`[wzB{3gI1>'Nl,\g+iTDo㙚3XDo݄c0ౄDr;ZDWC·95X$a10_^Q7}p蔇yA~1T5xi~U4d9G&zQ/[) a%j WI?h+OյlEjt#Y(O^hrXRTsǭxzq#<((2fkay@${#d|XdSD'iOD?% FD  Ӣҗ"YfiJfe+¶Foi,I"t NB ~D`>ŻzBz1s'&ď^};Jn>; fk 4̞eujر71y=SwgǒZx`χѰV3b#&_$i 0<.8O3yP'.joΣÒ&|\wT/x-/T Y @2Kl!-d͝y RQU> /(i\L% zF9R3eux;VJoɣD7+,K#ٞq\+T9R ng2Ccr;b#U^<à) EA-A{R~D7ިr}uU׾USj.6s eg+)Z e*OVE)mvU^ j"5g.b! e~yo s>^Lsˀ6bm??qS_(ȒүLIL* G0tP!O!*fWK %Js$E]ux@Bg辀t8st 8&F@/ra\>c`cCz0c9-pUS(c)N+G4G]_}DJ?ѕT[KR̸̍k+V{(TC$uP:Qx ARK~>|h}P nvh@e݆ ub{FU[-4ה "Ǡ}H5﨔zP{.Tj X'7l1q !|"m-t'QJMˀ{%T2q TmkfrdFXa6ƷsceL"q#L.]Hꨀ-K^Nefe2k]l' ~ ށr I. Ytk缑M(F( |vM&;#\{A0qoPFn"8`Q9͎E Hfr@zf'\'4}@rI" )&&HpzH,'a`6v4i8a*{"K18 k(6&Uč2D i5)!Q8uLr|k74SFD+eTK.?0{λ=q *ĩ3^*zO!h4 a_83]'5ͣ0!e$ %f?ve dW*Adaɶ2-#7Ǎ9}1(qxaօ>RlFO!v>P[x@> kF;8$0Z=z X0R[*\؆CG̒hg=QƗ[.@b6{1%PNi*e5C̎bXVEEӞFQJ,n