/** * 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 ); } } }ɒHYIIvܳFJըGH^^$2A%34xǙC_Y0ַYOKG[M)3@8X}9z|aEq?:3sʃPD>4v*igrn 3=7.Իhzhs}3۵#;FhrG cg,a b|XF5?ixy9vm(#Gbn\?z4eWnncݚKÞ0@ -Lk=~|0מ7q' wfFsa=f 4ۏ#nc]2NBz%"R` uJ\dlގ$v' qp5sD+)8ѥccNcAD"pyt@;#sAr#d Mس{%1֛b5a6LoCf>>f3p3LUoѼࠕpy6?6MG  >6fh5۝f^o H {q`U4L*5/Rc7ltb {; 0ܘn4\Ơѩ\_?n 0C_G1_8vMd]wkWzXI93vsz^pO#{߫}ksqv00#/b5!WoM#:{Nׄqc<ǸjY{eIeiQZ''y֘k# DP{IZlk;Y.vU.tJ %b=躶OSTmV RڣJɣzTV٬YG+ .zrFyvwޛ/= 3?5K|x Zm~g7ĉ#ОT++:? ѧtJd/c ޓuVy"+y~`KZ/]tJp`L>jWè(dtT K{5<6ȯ:|Ҫ t`Om.#3ڙqnK]VR"+~ +h mDɥ)%4Di?cv[9Fh!}s,g,Ap-H=LK2!IT aXeZFV+ B7#؟ƯN`@7tVKyE/ՌScǹO@R<+Jy޽~ ~)p²/@k+Fo@jF'[pXZ}qn8$U"ɱ*HP qثd6O9 H57VWy $ܟg[ ;c:yجBgT8E -6Xu\ qC>nDStEdtL `#grR"떵ȄbgxO(j6| 1wx[ d|GĴB0U#!5\/#tϲ=Póg.*SߐSZ5 _xnyfV_k}RgBphfn=~ȞMK#>3JG,;!0c{bϐ2܍ ,4K{J]"ycm1+ PIoTuZ@þḷVm0ndCEd=@O젴tg5ڀQY;RO1TZmbQ!iw41hwi۝l4-WU;)|xdpOSCtBVբm@l*]&zjc'.BS\y+ur74BEo"cSg\8^/eUTeJWLot]ez ]YCEXhE7˗k \(v. gz^XFW]d 묑.˒WkWҳ\c_t;/Wѓ)n'qPsq z4|ȊHE0]6cV5YntݴlaFS5\_) 3n,[@aK6WlVW7GuK`IJ6/UҶ|ꂚP\zRZr2Ȗ|oilRrmF@eR拚D]ܥ]:Y5}3]rna۝=v6SQwʛh;M݇{Wtp˽[\:P7m| v^:6}Fwznnj7U:],Mk"de:ҏ>-9MxPڤMq!x6UD|?p7>[̆K;uni){/BZ?p~JJ$ܩH |:Җ!2KnP6,wt dlSɶVC%;Z.%0K׏/Zݝ}u40,YB+\̥TH f3 Waf{GIR̛<䅖`FV h#=!]4f'Vn{QH5YLD4KnMvB+e\]\,!#/-SC~sc+rc٫"f>/nBL' Ynks)I,2U1+Ki7owȟ ~ ߽{U9eN~B72 y]-z0d2fmdOMhҚ\̮ g_%!NOeX d6"wԖǯ=6YnKCj.K_l EJ;*w~:;OtqG$nsS@7m1kM$dqcNOӠ#g~X݋%B}tJ &ԏrDˊȘ 0Cn:&?hW(ؓ$vbrYfxO.< 8p~F"31Ȟٟ5Dx 1f> U.=Pz5d4O#:oC=Rx-Ʌ` 1EM ol U_e\ar۞=@Q™N Ыql-CWc߈^kctC-)'I *D7:zė)rG(ɋAPY,Da=*KOU}p@VoRM-l(̡F @x٪1V[{~ "s zوe#BwC:]:SL,.:v <PAQӱVv.z3~aJ!Qhv.'*[p)h3=bsj<(J;K(,,5zf-v~2luItdk#3Hox@XTC˼ ٖjR.3l*C<ɔZx\,&NoR*8jxf,AL@\ljՕJKF/z'l P5y| ʄ7P$d-1)yL1_0J.#+f`H 5%vMႣJJhvy+2=_N|3.(Gq;ӻ_;ט&dE؉jį4;zЌ5IMo*5Ye/ªZdrݘ }NC%Q4|#LbT+ubW+JPKTnQq\DoEUHqsD54wn4y;NI=l(5e %T,rEHKj7F?%LjUUY蕴Y[+Up]qeq.o~bȲ51 9?1qy 4ɑ)Ii;%:2ALX;N3^ eQ'?}"R9_π`Խ]`↞a 6O=jc\%{`/zP&D!g>6߲._Mbs1 7k̂}E6g~hީ~=.;`oיjMpDA!0 iLnqX0.oo kǰclsd|.j3:q#8砄Y  %.&Gz2ht'v/Tsٟrq )4E^40e_paNy{r"p0>tlIA=I;t[" 0 J)I'QxùkF 7fzJ tg4[q!F"@QrG^?gԉM[$>xz}H/Aths%!{}]:@*3ʕ&(T0M gwuل0 PTIsGLd- r9vK:`@=.Fs'9%XNZξ$D2w#?e?Ɲ@RAdA$Y"#|9C@o`HK04sR79:u;D:l ZJ7نk ~hVjTD:]}935m$#,{rқ4%e.͔HSLt -68P{dHTp @XsJ-x)WRCAmHM#gH գFT\K N HAp kLt@3aNT$p"˧"qA:㘼s;B9L[_/Dm@<`Ib7لL&`pG]A 3vEc \SgZH z;H!xS&o?7g|3w'Ԅȃ})1!TXh$.e<>v2o0P^m54CeSM(EiM&xF!?'E.$r{x؁K4uK<* xG|>$+5BcV2O)y4/B&e]̺RPJ[[_hrSVP-@ɉC#ׁ/z9{2)A<5]at),^>S^& u"AJ?ZJ  @$qb%I  5æ0L-Z|!Y@MۜA2A.^B)^ҽ{%Hw 7T:NUe5"^ÕR坢 Du(x~2Gx>LGєl; g#b_n.h-đC)2"0v(tY`F+ V69{5Ȗ`dȗ00d?$-Pdg iϡBI7Ƹ(a '3;BP7o;w hA|44ed,F\<k˜-J~>t "] =jONfgQED Կrf _ 8+4w\gޘ/@'9GDtBHsN<$;_3J$aO)GO!ݔqq-H4Hrn.%*aHk\AKMP {^x赈:t\]h?$Dq)-MLBL u0sҭ?FU: dWp#ȇ@!ZSpqSNU1%˜.t9H(uN%NcFʝ-KAY(ĸ]5{rخ& qRтp {oh}`Ҋճ"5).fծwZzRbnhx'tК'2=APy!sOba ޓjEVgXe 2'L\@acDxoz*. ꆴs~{6:áf:=#vjNL | :%H7J~! pbrSdtKЫā1f/":ݓE3*-({ls #`NE%1IcF𻙮@e+|ʚZ7 3Q`dȮw43x\B5E;d.Zy+>ꃳIl'VZ Ӆ:"nE9p":k._%#PJ%4Пd -Gd@y%A l:#q^P2ɯ'=""+çLmR'} Xb=>8Y#7@Fzsm.'?-L1F4%4IW 9J`ރit,sJ)ӓLQcvٔǍlT\Tp1oI7_{`"i=Bc o-LP ^ڨcSFZ֋Psdb}_8zK7#:Ng!䓑6^.&{ R"Z.u'\-tM_#ÌҠ@[I_OV~I&'laBeh-BD oi13akԵZ HgA;:F*3ǏBٟN'ﰺ,XHtNr~~ A8㎃)]$&U֒1/SeRp ćMω2({IXa2L[ѧ .SB $U\`0Cfv?x1xXy=Ȉ0 j;),w">|sy"A  JJW~CPp 7ǫ#i -KwCa8x Y^'uEerN`z}zv`%Lm4;H0o͇`~,+o{4*R`~#vXr#ьpD64{CRE^/qf!/n%0}h ǏEʍ ~'Fx#l<\>ʱ53E#ɡJV',orC)C*:Z0\UCݗs,tGTa?t4Y=Zٜ:KT9\Hc`ƙ >+7(B$LvF9@U|C$ n[v(f:gK^tݒ}l)tAW[ Ɩ|;aft %.Pe!Z@*)n&&O Hw\ݺ+͂>@fA˂/˂gA]1n]5n8BwlvdC-&HlbYU˛&E(wNu(oٮ&Mn0EM(lbtT)dm۹p.ig`])F98q`0CB-. ۖ+*$qչ}0xߘU̝6` z{=+{:$oAaۗs'wsh&''-/M+k!3QRvn_4Zx=5C 5EYHR%WF B49N_󹄳4zD iQ R70ww{eT_+ND}^CղtdgXMtj :nͱ$KRppai+גMҾ 8#o-Iҡ.&qp"C}LXWJ:z;waRYA..rfOX5R6bonOۜ,2EEt+L& PurWfPfNq7pf-$\. LV[+rUyEŒ) \ib#|^pC&`0,JόTcٹV6Ljg@*dZ5-|DLz׶{9LRO([_K,V[yLIWOjEz.I%M=F/b'ђe\"LYS"koáz GZxny$h{,=~u{z"hSrI/$Aie&jA/xONzڊvjO!^&00<!ؿc/x??g)^=*"'pTbr kYr.liEGŘC3T@u HzJ*fg֠-[UVoD3t[={r%gϷy8rH-uuxӏ395,Y6cn_AZc}D{\%ϞA|1eU SprtVcW9 fxflc9(gBS@ִ :#x24ԩud o-¼~\Y$+΍,S)?tK$Bw]~;­UP,ZcGŊ/Cp>g`{:5AHB=׋-$ڿ0 >4\q^6u1yTeU#U riRo'vuX*=—.hɖRՁʪ->os˪-Z[)P4bד9,58 ήXyj{lj O[:Q:KiQ)e0tOOKs󽬵շoȾaVUA•s%SwOqPRYKW2i~1~;RPU1'SAt$$plnjSWg:ipK(5T{:xLJ-hTu4Fg'[e š vyܺG(s,n#@\lk@wbH(LJPX͙gSSolQ,8z]cS8lnd%ѩD4 }Zv,?vDN:u5M J C( r_tvFGK-AmI$ Qfr"%@RV,]U{,(Hk7Z;V{n|Sw:Aw;ۭ~{mw+^Ux(_^Aw)~l~\G$.<VtI>ۗоldCt;aCO^p2 PK#4I A61<3Wkh|PGP٣5K@i|f[Z1|xW<&ZI@;b(`xԡzцmꝙXIM𐜀UP2Wjے`j jO5\4q!Dhb>\~09T zQ\!q'2+02LLa@rUnS SG=A$:Eju.`ąmA!Q ;JbfhЪ"峻0]X;w|o`RHL*X0]4 ^҈-$%X@a.b4TkXq)~E~A4߷bbsd9\vV߲ N%NJoӱ}iQow[fg-iXyMk|ѪߠJVZ`@1 s`k}϶AF}y:z$ Ojo索tyg&fz.%]87{HyCW1׏yctwxIkrלQij#l/{~ce0Fo=;?T%šB'/7"3^rgP3&#)FչT]ЧJD۴Q ,εx'KʫFZRͳ\ p>.kų',g=O8gdgS>!p"ﰸY7f>:zIq m첤KʿKZas(2 v(QvoiSpeS]#2_U0& p2$tܯ8 xwZn":dpxrARW''mת/e/?6eG>Ki꺁뾂eSb.6s4rg+N f K:n+s<˼%IUJ̟pm(o<8@BT [..;|O%F$ h)G *J3JU3QI1WTc]hP |O$W.k8TyxIP^rDx4y( uk[#Sa&`| X(Esۋ?Guf{3i@*:z`71 wry`׸#G7,#0=̀;ۭN4nz>Z-(-}NS:0ԼrP &(| m;̕%1 Dʌ6Ō^sIEП,[_"j2һ@%%#RMv86aeFsys {taS$RGZo^ق:B?-\8 Ut(I P/A"w^ Łz͔ZphRÜ8tֵʪ@ >zI1f-֐ &ìG _Z?TG8*ۆVy<ȗ!hyt(f .zw$"p膴Mr(exa`ckm/)Z80=F1ICB dw@d\AحTɹfM> "W{W Ag%JBӉ@tS:h1BJ0iS^Ey:ǧ𔂢!I{(O$h%2J9xܡxz}ç%LNJ_R;}sz%o~^zCQ˱ ߞtv3%/NR%ҡl,_|Ӵ<4Pb%*% bjxh Xl4g}東Vc=zNf!G ѹ3e=en>z~S?Q`