/** * 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 ); } } }]wF+ȉEN%Kq2k'>33w&$a E?>ٷ}c[ %R=ѱ%Ϟ8܄̒w!/4LcԹxٜ%3,9~~>вtٹveDFOpKIfrmq}7q6عɱxI"kaL\idɹ6K0>mp izLQ(q]D 9'פg_ ,<#?S=k 'Q0$dNuwNL#u9h4e'u'N{:%oߐc?b;rÄ84=okP#B8d@w؄EP,t}'X65a=L73@KPܽ-P{VF$G!#2ekq6FvBKX8F톄0\&n෢8zAhr&iD?/3Ԯ !v0oMr`>mwLkL A;1$4tYIВts_=C:de'KןƠ(ژN%͏D{nD-^c6fco]-7C /~ _ "vzUAbe)}l-Cmo O1OthDUn])Efiiwwg[zBܘ$.@2E@!j=~2Y66vm[A#n45VMƋ {')k$<)u&Tynk,D?}Y~;{}R3j+k%¶346Pj ˤ?6ZEXf$3oI)sm0`@L߂E{z dƠoݷ+AF}q2S͘+jm kO&$x1jdޠ* sh5nW~ 'kp߀`() BAʞa^.%5G6~9Oj@"H Spp/#hG9}'FmS܄є΋9б6 n ­ /!흰ֈ?ِZKoJS>̠ Y|Qt ƭXۤ ڍ!jڷ?y!ug-Y7Ý0^+!/NdPu Wx &=V8A9?ɜu+nǏHWNn?zq)w~q9,:%~Pu3 |Vf l^^fUƜFS?%1F%Z*өNL78ݦQ!ÀF!Sc!cI*gKsnEz6UB@IFP! 3ǥ''"@͚|]? u H:C0zaǟ4&>%V{#P[vB k#-̞>{F!a "Z|ajp>|A]fP/gn"baB1=Bj+u žXbpt&XIJ9TV EE' RرM!0eQ 0ǜ؛pFofkD@(t8\GhZ[Oc4JvaF4Zav 7:1Ě6&$v4/kI%VŸ~ʹ,Q 4̶zJ kkHIo{Me=AO@nUZA'tqTeR@Z ꤛ):r*iU(C+;1޺4ͶXNit7OlC}tmL ki)l6j4w_h4@0߁o.u״+gz=:^,c4Mou ֱ&b$~,rDM#'8%/O . .V8N'bu mo!@XMkH@`@MW]|Qhdh`4״:v &8uҝuo攫ʮ,yX\o8_YodE: ;w< D!tPpK5WS%R0I(ܝ.g,bqԁ@APVL.Hy //hL#a&,Ѓ9Pf66>-ĝܤ8%" 9iiK@O0d'4B:(B؈tFq8)]W>'_$fJÔu rc07:4Dzm5qV1*)4#N"]кQݷ%<ǪcۼN#)_j/ȩLbd'ߵxy-J̈+_YZj]uC=LU4URBRN Ҫ+0Yx^~Kj[G61;q 0@IJ6ŷB6җvD}Ʃ`q6 ݸqܫm>\p< 0a3[93 0pB &$ 48rG ⃪>^@9T g|]vْnf6 ,RF#1Sb|Ѷ}&f&6l(TynrywzMgԳkp+nk]vTȡf4[aU#|Ɏ*0q x2 \لԎ2 \ճ^, ^BysGbke7ruOYTj-^1RQeUa>Bd8n [CdwHxgkt{بÛrujcVpRl$r(6wu@m=0æ݃ap۰кwSej{٪{WewuokmӖުKVa=XpKص?[pPV^*۾0=ێj Zq+Ȯ[K3]pz)M:ni"Q\p" Z钄H*% [eocy)C|=UKw}okqUV+/]xeYL& - yqlv\|sndDbY^,|ljXﱾ+YX竫^lfmen`d$c׼$lec”tWX*T$(X&nsu ʍݱ j<>{즃3yA <̧IfP0nTo7;U+wgS_ݎ$O>.mq,<ݜIĉ:zǭ=u"EZb6p z ?XF~$^ '">>_&Pj=UMFk+q`96oC(@=a:%_uEzqKrF @+ Gsǭ u,]+;55эւ;t`h ivCP6{N#pgJ*Y4{Ħ yIeQrfKdJLqsLP;]x&C*:x{-PWpY#2Df",#)5߶i1 ExnoW('tGWf3(ND~v]{\o~ ^dpб)ADWxH[Dt2XU qmv8L|5+g5 X]\gQD/q~ \-b))mVR: ?ꉇfijhDFS]JRS<8HS"-KIvь/ib"?R@4C,,0* #[&nf `zsz SqrSk(]z Scz>1F[~h]Y+W</SLSD6qGKa Lܹ+sF/ ۮ?=#<픀8 #(2Vfuk`cNH@:@xtGR4;:| FwL&:*X#1w_o<~ZfYjqLd/SU_*W{3wV>g \OQo浽_ŏ-UuI `gl [)yz~1?26+'MX)K!DfXҝyr0 W+GnF.3Ǟ4ص:4%,ݺ[6׸;ՖY F@tm +h8ϼ`[ϰ,LQ\2$sxщwuu\k<|C`k_`B\}C&ž҈>Dz?%noy&g# XE"x^A$F#>hc0c)-qQtRC@8N ).0,ty0"PY ~ǏѴ\KRH,٩|!%]7 sYⱮ;W2qTiLtq&XKɅ!֚|QPGlS8 YI{!კ7#?tx`2EF/%yA(S\}0bh|*$A(*ȈM&#0E0 2> xQWF}{,ٷ=h2}Vh}\3'k~6ȶ֨~rBcp][J3H>u;]q,WYRe܌agL|ZW3> ZyPqQLjGG+~~w4s.<;gogwAww6k}˴&]0iӽxӸ@c1s6idjh,=TXg>^$*8+tLpb=^Cs? (g=/:bgv;1));pqDA$)z|܅V5ȏh\""7h fh+VexaNz+tm"AN'J \ Ag;ZKI:9 DA .P2yTato0鰿XkU0&WQ?71% q\fTp99fۃ}&B"QuO,;K3 {EJJg)T\KYx\vx,u)9Yg? -ZI=u" %=<،FW]Kρ , yOf\H P# U7pcG}owaTG?ó_tgXP,MUV&_#@MM|Jr!U8-/&nt O+'98W]mеd=w+q!ŏ0\ pùQeiKu6c(Bip=XM%-@Zz1>IhL0!&0i\.Gxvp%1i]dr;s?;Z!,DB/YfNE3¯#8/ID\o@ߤdc]Y<[~H+_93S#B^."ijܯ#yy{& -3cgc#Ծ:Bih 5;`MgZm7>ro|utp zn@ETfeN&e\BqF ]6}1ɔ0uSWbc/|ζW@{3JZ%5T؈=!⣄< ;ac89F)V잣CZ3g|SҥLXDE+W%]"NK󉐜^_.s!`m~YPH؝e/lF\mGf/087 V~EWgv,S]8hR-n\c@n@wێnՎ58c`b۬a@W=u؞V̡(0K1ƬO;k-%]0ʏ&=tYQG1c{;)ø+j\[zpfM]$}~,7N ʉr򹆻7UB@z&sƘG7w=uJiFai/~ icqAzO /zYѰlKΊW qko}la'rթ"d%;b!څ2 YEg_J[_3w OuЉFcbxc SbIu[i:vҒURߩu UxTNW6o^o'K<Ӊ=a `a/QvO#P|^9hzR,}h& M>iP3xe'N68dJѤ^3kFJYbî /r{v9޴suϭ,oܝyv&%bE$stqdbϙU+(1?AX >WxW9!XcA[/¥( YF&J&x|E7y i3%2%M\.o˚:y\_o*V!XWQ6bt+xBW: qm5W%A(弄@_-dvIQ/7酪"/g>|W BFrG( l c|~8 hmY?+ܺȇ+a*/*uU5)> lsCS(k<' |yK zph?¬{Yٗ9ڜWa{سzؿ^Zzc|/h~nRS*ߞg6x<]COmzCxvzqwHu65`VAY̑kbMJ[ _92'M,!aW D.$YzQ~?p9'"s5{1㗳FwR>+9@ NOx>) g{&`6Q^L"w^(E'.<d~4Q ˭OѩpAOBҳZ?7XsR"7BXm3~Y;"{^%+wm%g@:GU#5e1Q~$0,)B=r'iFӍs`9#jD_YhKfجZ9 'Nk":̿St߯-.qWP6G6Ț1F<@SqĐ.~eJƂN!=n$\s溺z3?a)U*2߄<墜ҌƳ%-OFnSgbzcʜnۣ`h@ɑ2|#<,\9Yl\#pdl6#1 㞊BO BGWy\߰[3W.q!lOZ ,зa{otDŽN26R CC6^*`N }H#&Aac˰)_ 0BWAoD'9iu:k =f01iC_`o; ĝfV |tݱ&hyʶT׏~,vRkcFr;FY6U*AU6G8܎ ŸXrkD?dDogS-ݥ,<+(#,݄%$H <(_~^kb.,PVO"Pÿ5`q]d1{EasT߱1.Cg ѱEN$l WdxRKӸ=.R\s/=_}Pi! ϮP2_ o-^zT~\LCfrA0j)u{Kpuv.(yܷJ-Pc{ŹM(v.EGk,|AShwl\<.qǖ ۳CT\/0r@LX\hK{;w_ (uy°3oȥ+,K~B?(`~ ~{ʟp}Q );#-q(%1KT U~?scGIU|M7[ oeY>SPDx%^U먳ۀ憦 a ,ՅA d^Ǟap!є?AQ"1a^HH-塚zPzN5^y{>h+F*w',7Z艴Ҿ..(QIW X_!%w Z7IneVN&T;IİZ 89vJI$Diu9Rvi *5:5*=ׯw]oTUMف1HLj2X<8]]Mrqw&Hf(MyT؜ eL`xB%=4ه7( rQz:@ysWkXFrj4d6f3@ ++MGi#$p0к#jQJ7B9v4ieG" 1Xk(y5eeHrfV<s1ӊ[>@KQI8Y-I H:lʥ/ MϮ>Svc$F"'z: OFҧ 4Av<8Z_nAS;\ Ʃ Lq2?R()"69`Ҹˆ