/** * 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 ); } } }[6+h[IVgxN|bgfsA$$M4IZqϾ*$AԞdO$P*<}bV 2Gq74^-p0|{a~CF&aFˀ[ǎ7ܪcџCWQ}C#ѮF׼jM71^AA  EhQup>b9E}h,,wa#K`4h> U1NS7ջǍ0u݆)Fqc$֞鹩8 zvY ~[::]ٔ3-jJKs-Bw B56jj#I?6jIXdU#kI8(¡@;'C4D^{,\2U 5'PՔzYG4ufC2(.EcTQyOV52 ?G jjv c'( )X/vW']+p߀M@G?J ng!.0n2+FA"H S\qq4V\Bk3/gD9u`Gg?9 Lo9 M[k# Y◚W8޲1Ϡ hQt5ʴS'ʉb_?.+3lepǕ)C *0M,2gRQGP0HH1YZ=5? TzhPeVM*D'.\˜} y8hI^aӫ3%zߏwX j&n55$\Qc-3W*$/XZ[H0@zw @( D# -0Pqd6>w8RRJXb0 yr*ސ "@5BA'wz<^nP:Ol R%z6膥gg5>@'Į[V"H(jo!>>';&֕~v )O9Jx1ɏ~hpx~I֍Y͝ǁby!yesNo^׻kR1F\g `^_ǁ6 }P\\`І\ 'G\3JDc׷4$\1 |c)V oF ",BseNm ϡ?5m)sJ|~|i@ 4Ak!ܚ}Z{۠ZZsͭ@M5P ̭@&3w3:Z4[8P S|5hE& X+‰f4{VA91 ) Ku{6];׎ 7/IMZ.H7Ǜr:M*!`kdL*ָ8DzGd$F{6&6276" \-v@b ٶNǤҩn45_bbhk=[U/I%іŸ~0MQPOO5SՌzI@6tmb0&Ю0]3tx+d& 6$ӗH 9z]HfW>@Z5E}i.I8ט: -†Q3Ll~U1e `ÀZI0jIҰ0H4 պ;b)q2L5HܛSc YUjv) ՆU)鵎wUl ̪R0fFzui+}nLLC"90ѱ0)SMc SF5aFs븍F jS-y-r~lB oblIZf9؄c/ZS"EZDCMJY$ࢀXk[oB:d [ۘ_ooY7tYo];% ,4!FauG6د^R4 rYٍE}ך J˨R< cA;@( GB <7jֹ`%R0 (0H 3طWU |"Tpy)Jy. /'BB&L3 {M1 ],0|\D3Y%(< 9iI @/0D$DZ(\Vߊm0q(,ހxl*/$fJur"P+4Dzm9qdޖ1_J)zFu+o xNUӉKoYCo,?7oQ.SɌO!xI n}3f>oF<ܻz?hҲiI{`E('1^(Qc.#)EZh#-ڈϭ)|Qs51D٭5.9jG[E: [&Pj=U#的 ;M="kEAdGT[sQ@_5d*ڨ"qW>^ edθcOƸښ~Z0,i)& sF< a:3~3||:UR:qzC:]@x "',S1[ S`i{CdXɊH3B79RDK'8s*mq㣒>L5P8c Vw(ˋ-&R֌n4ۆ&]NБ]AV88,O1{w iliZ5x^<]GcLO ;\cZXNȱ3e2H+mtUp$p"~j!sטOÐ_6B9vb:<,ŔR,)XJKJia))RRJ>K)?ᙡճ/fB, FK-\ǯRST8QfCXE~@߻Ls6 >-hnPH7PR|,bd$hd'Y`4̬@A B/g_~ pFx /c>d3gl";Ӊy)jLNb֦`R*>nǯ\K0>m򧼗Ev*FeeIVkD>X5ŨpG2nsz~Aǝv^UTز[uQ$i{ <v҅i'O8=|WXƢU5  ᜸YY"Ry+WM4!+05daPNٖ'*W*8^LdwhR;ÉPfN%xq>ƹHL&:3P/kWC"(oP7兵 e ӆ$O W4RZiãճNo(VQAiu֤Ϫ0Z*p%o~\֓3?ٴHw[~7W0!F̯{(0FO >b>jxX񳋃!3gi4Nj6篿]?ݛ/¿/>S>VՁ]0'mBPIxx11nYQaL iF[M_l%XnAf ڃB:(fPԙO~ j[p5x1r!z 0bFĈo7H2Ěv,Gl##CʧߣjTAQdԑjVlvȃoe7ͮђM g$f~`KOw)!vfF"Ǧb–e!{%E$&=T"w5s:pί&n~.c1f5E#vYř_$O#%P"l?4(D9ɪyy& hKKS(p1fm kifZڅRDY8Ijɔ& CfhYȩz)yas'6f@ ~:Rg\~mwJ*Q!w^f:sZn{^wbplw,lz}9y|)=܋I¨x0N1߃SϏ8͜ $NѻfvXdd#?\JAU90oi(2 x6ЅkSph/NqljČMƞY ʀ!Ż TF*MgJpxkqSO#? lu]n70l_'ƍؔ)G (叐)]4̝rXA5˒N2lboǀk6P l ۱lMKqctюJB-cʘ|;vIieFL0!&PbL,b{}U b[ EwA' $#D|w1"!GŒSo)quib:La7)طdE,8ŰRY܁J~i匴$;-ߜ*銡%XgkUZg#ig& A;fAw ^#_S׳|~ ajM 0ǠP)6Y= hYK:N¨5徘 dLqڀ-00tt|\gSgkk YJa{,hG0m&gv:nyhv|^F"#ȦXE:cjW9FX=l>B*O L#dEؑjFPdD)2$ap6;HaOx)e&y1 I⽕/Ʃ|O|[4Z\ +zba_2J]h,_Dq}PeΌ|Be`|Fu\ E:{)S#7%8e]0plDOf"۟DLHڦs-_NaA&+!Rbٶb 7"1 zFb#P LeBC8Y v /b;|[Ine~Zv^K;"7)8]a?Q2Of̓%dFF駬nu[' Zh *a÷7}w-&ODO2;mvwPoP߀;'VI;!Eϸ#*͉e6ۇT%fvIk}m)=nC+v“ tk2`.IϽF}#8>ȯVqܥ ff El)m9?/L؜_-hh(%%O1>RgzeG,VbtwI~c!&lxcoKB_^?ͥdwI^ٚR^Ԝ[^6ہ?p}:h$N{(~:6O|ټ7>Lv0&Dl9]|<ݸ,֚v#9L{n)'t" >8p G,>αXfޚdW.9Rlv1@ykD%*0іZW,;2OGU#CF\kRګTm]'߲. U/qt O@U/FW5e/  k(FV_>vD>jޡj3|Pt@G(u9[vb"|2 yw;C3qlSKȧ6=[ٔBJewg A~{׬pٰqG3ibױo;x7XηmoW|\hzm 4FZzyPdDv}c򰑝 gdK1";n쌦ٱ{h2Z.%*uA %K˄L{CSYoE.`Z|6 cgu0+PGso;f33E`ɍWr[7qȚ9k ͝E THoS`Lk*[9u`2VeocoITnap%' `X̸eАс~KLj8V^ТsnP?O|*C%XoVϱƋq?at& 7vq !圞W6 *}9V8tZQ`T ;0|,;9vq[v+g0BΑGrMx9N'V~Zx?;8R*Ƹ<7Hn3vE0[ V\nTiH{u폯Ő}E).WǕȚ6R{şנ OM77:hJ@A| $zQ %՘]==f:_A:a Yz" mb ToI&,GYL,h1U~v/ a^6\-ẻk B0k>}q24`.r]gBY:0zgn4 +:&5~x{v%`0!)x=+N$A.FZAyr+ۀ0`0deޤBjNO<:Wÿ `WzΕ#qSx1yaȳT߱1Cee E'l Wd:#$c;O)'rü /~h=@=4ȧs<{C|,$tzp?US$!3 xyJՎv+e#ٚQ \ xV8 lun2v19+>Q*F/c<`j%nܩ2}~gA>ȱ;%b?I2.G\>OX8x!OzPM I %zbkf=2(e&])NQ2g6ZT>DaL~0IfzeU9% CUH#M\K_SC'OGb5(HKc>eƐg}A}>aq P9>ķtRTla@ cYYWDj8g!~~ϔpeQ)[Ϳ-1ȹU"L/L1;<nD gTh\VZ,iy7 A ,x/3aɿ1Mަ#5w 6x ,qlx \?xe{ &J=7F춍VG(oGX{kf[10<