/** * 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 ); } } }ْH!I"H<`jTYRz*RꪞR$ ‘LVvGˌ~<>/G$xUӽiR&pppD8X-}f9y|caq:yx#3#y4}Jrטa 3=7.[V4Z6B7 fvdÇAqlY',՚i ˉDȎ~6"/萝sp-۝2/`;#Sd#x9{@״#ѵM}M%=ui/^ڛ=7\>t`X'¾) 56^w:crqh1ˈ Ŝ5m*Ysn)X|/6]خ-X鍱V짟K-DPҵPC'nف #`2a !ZJy (.wi؎əDb[sHNv<^>zaf 1Fyʔlߵ?Į"Rj()gf_EEë0qn(<ȞÕ1._~pb}00g0&L:uk€ٓe=߿n3Dw}IMfTWj €(q{:z|GP]?@*?n_h‘ڍ]@ohr}Q(\59+oJ>0)z?cp08\~mD&1ʆ)m~O&O񄫓O}QR[[m\v֚vHUIwTmk=w]RO:)\RR])#izja5rke>IF"b&wdӇ7a?x9q᜙ϟ= 35+$cQ/ df[fO5ojm 8Ts|ˬN?8W˞*YOjKsSbcǹO@ZH+o=_R'کWkFozI3hʭYJp߈su~gv 3 QAWHa 5ـ FƊԃng{(Ey6 DN`nt B:!7w JN6L` rftg BVȔb{j S0h'xyj80󺞯^5E*V?KHa\{B fsGe)#g,,e;>HEѰ<3FÿX=aD:㤥aw#{>J8'}`xKG,;PhyD#&F`?{ŃCz.pfx4>/=!/{T6cMG1{  mx`*a9 p\#cywOsyyxVKIֆЪ[U#0Sk͹e==C>%rϋDb>B%`]Q_b hS>dV{c9dVgK%++N߂N)@wuTº6vOע.s8ÝgzuMDA5E6tuV"Mlл:mTYx#RʌPI>jmHX"U#a!g2;tAwzĹ0B,;98LsXIʀNGG/)Π>`pIoPjzQc  F_n]nin&P¿}MFOYF8<ߡ톦Y(hzvbں 5J[ @'k98=0YGĢ0܌]Ib4=Z[ӷܶ\:n)(]3zn9SCBMx6M.j|T\{k nY"SREVcׇx}Y}@|"TpE֤8ex;@ `}{䨏sFdp'%`L(Kz_B~2CadHYVx1U7B;A)&. ckQgj Z.AE֫jJȽ"v+UbH`FkʠnW@8 lP_\#6RNߵpI _ TVCU;z]=P*ʚ*!)j3n d`;n̒kFP:=,Et 4ΟWB.ޕ/e"#®ݟLVnl̲/zT+Â,@!z IdlhE7/k 8.^*ڹ  <ӣB_t(eKҺ2(px*[zO싶# z<ƅœ3kՎ!+"KՓt94{Ϳd2nӲ9 Ţ JRIc~QFydGpfi}uGpTF#~tAjGXi Xի^lX jZ#R1ru-@,Fk)Rpڍ&Η-W)% ]lw- [`ݹG;[;ἅPrY4ob޵Qm}7s7bn|w[w ;ظ[@Ѷ-l-͖66ncn=T7Y٪[wewukkmӖ^>y.rX=N$`W}\qnζ*>ɫ_%c۷;MζïCvA܉J@yЮ[3pPd-܏!uv) MGqCAUJ$ K>mI \V!2TKnP4p Ԯ!^I'# kkv_T#XqkԺXLc%":Bkv5{G;W<:<}XUUo>ZaxNf/a:/hé[k+wYXyBεy, b+~o_ߤ}̼hlk盘;#J+lo*0< \ k8\v.ێÏn28%Pq|™h V JŎvSc~w|v?DRgyh̻: uS}'nȓG'%"n&T^OR.gat4H!DCk\w&R*[P7j#$!#LL>QNCs~*Y66r?&7<%軳UF@-RRСwZ ]OG1喢k/ȩ6<\&P wZپ Ʊo򫤟P?0LI%i /3I2'Dl MToaLvD DzX玦&\= [tWrntf\" f1 inJr;aIFZh)iZ]M nGcvAV߮PBtGn#;\{ %[vl:}r%4Ea Dpw%^dJX㎺3d*NۡxZ->A`DO/ ~ plu*s%m*iJ:Tɕt+QI/Wҧ~d@%\%o'j{p$Åዒ Y.)^9ȔJh!Bj 0d$IjR&K?菂̯5j!_9"ӧܵ|vO %LP ȃDŽ>.\ͱ(a&pP/-xzbŸ{d1cq~`s2K!pnsj4jNY&w|UÉo"23 0,I}s)I|"0暫JNwƲ[:Sa@%/uud[B7QCs8(]\z0d"nm=LkbvH\+;o3/[Ǡr>쯓/=vQ5]=-R+_-ݜAhSb|& eBƈ%q&}V,onqrrjӾ|`N_gA7|Xb|P48I6 VlFLN %ߟǭ^U 2 uXE9bY(xxX'qy89#{nʭ ݰv wKq}(D/.*#>p3 G` lj'?#VBKJ לz4 7>/2.!Iƃ!C66|QvY "6ōTYΈHE4elre-]ޔy[ܓld\ Ϫ2-+"ULUF#m&yX1O 1⍨jvJvqs#q#d98<:o)Or6' ' 0oa̶,kQԮOᦧ'q oNK7&d<˃flX^-Nn[#joi(+l ʪ99܈kH]eFɓ_,d|g=LZK΁WNs>hu8 7/j=AAH$6|D>j xXӇ1'gs{Άoxofѹ|x}0?gΦwMMm`_I70Iyεq[L#(ӬPi+2S&l\ӺiY n~muz]QX10g4nXQn;A WGm@&"Zj}{:W]kW+(x-\Eߕ(Gf+Ee]&9&خ^+&Q8W8}V%'Q$ 4%RTTԲ2R.@'4NE!.ɴ;c#fuZ[HJJW =Sm$4*f|&œnWB4%Nr^5#+ڌ!)u +N2Z& O.ơcgl%oO`ĮmQ^ѧIL ʹJc&CvFWr?fd?{'w?^k'b[cuvF}q&!xs63Bp!n'pFh M7F!@7Wq|%LXF_3h`ta[ȑg_ tU=Ӄ825,=rȖ8\Bar͍yvs 8G &Jm娧6Q}P$ \-fF@"CI"; ;lxsbt| L@W؎RHbBP:0:vz(/@F3#(#; /x{(@ QXXWyav e"wyp;! S j" x9q8p]bRFBf$O$@G86[&CEf9G#cHb@|K/fh 7gY~c d'߈D}pc1مTSt3"!Ie>c邡7BN+ ќ7@I pÜ`%h]FD$Hׄ|8ԂV@]* =0J =1fO^ps șpYL}\@ɦ}pz(+Џ"㣙[98B`nF#=_φSSDF7ĕ9V]ND䵐O:N)˼DhAV/V|"`j83,4l6Вl^Y5W8)el[".Od5u.0[|=h"<UC 3Z:9ZXъr^htsI;,OB)"hPTR["ޡЦأȝIT5\@,K~ c8v q$EQs$F-qÅ=0H3vJgZ^WDX`<)2.7 uu~%9 xbDń&XސŽ h?h5S]XAL/\bqe<[4#B3])O A[o.S[JRN3]օGrϞ=c 7[&R皒QɆE+Z֒ -v|H!{$(Ǵ -m%gue!8 _ˏ]a(t po,ɱ_&/EܰO01*8j gE[M^%C)OPyH=_v{#opnC(t 5+BƗU7t)B[FzR ZmOX\n(t(#%3G+$jȭH3n I9ڂ.x}aCإLkcTD.B ]n*5Л K!N;c,I9uX^X&8{bɞ'޷_I{"fCZRvH/J d!sMj!N@/)O~>'s/+SK0ݖ`[`d O021m޳n_D6 Zxa{bM6srkFghMϗgzPl`پ:ww>8lnӶb_.gƯf¶gzƯq4gC痿z=K2!%A?Z@&˅r=tX,oɡGپgV@@eI^~;0q2 UyR艺h?ՕOx"PP Mϖ%}Ή}2bL~*7E}4gA1bq_\z3cxOʷRNsaf^cb\%bt;^IcRBDK'S r3*oJp'NojUj޳=׻-9LwyDyOzR5MtM) 3RpF d<ˣ?0%<ܫąǴsݧ2j_\tfUz-^3V%:yYYVtpKR­蓍vnApM38@-E6]߮*fhJ$8OB rE 7ߥ\&ޢCXmخIkeVKɊ[a1g)^pC&ܟ e32;]@p^̘a-|4 \r9.M(9ՑzT l{*ίmDLX$%{UhӾ*jl?"d;SJ)RZLS8cr!;@,^xڻh$upXBjB.L%[琡$; F&7uMQ+V~| |\mh' .0ؠ<SrfYn*ܹ$oeIXKYWaN %C>)e9(fȍ@cQY2XÿfӬqZa3bdEײ_gwҹ3HYT~qO7v|X?1 w]HGmu(KrÆr?Bm?BPN̎#9 v&_$ihaЩxhz 0U]/[ ~ _6Eًv8Zvvê !<Yy`ex(܏1c[FUWqFs[_v=k#Gr%e(/pD??Y!K<&H|;luYd5R>*@'uYį:QG+{)GVA$gqHt6qw<HxkZ MkU׏B'%86b"}qa=1~Y$b"c| elx|?Xt\3HSg!˕V+?ڌ#Gڠrcx1\y& / s[k='Ƀf@J0*y@h)QZ$zM7òl/ϭYOuVCIӌ]O\ T$`bEo=]UKӫ=v¨<+ySګ`$&WG9'QkJ}#X)?mK$ZYgW@,H K|ܨԵ~yiL>]q.퓙WAt˄$pl[ Wc Pϯ-Z8\q^ E! ý@^Vz⻧F^q7F06{0^"<^}5x I5,LsEҞø֝*9zHc[ta3fVB}iM=iz$G#Τe|gSN#鞈~.hDP0AwMfKfeksBz<*o/N$9z sDuF:tW5aNAҡTK?mn@m IOˁkz_wn[ӻ\6j!&k6jc#NR76jqCOO+5,`ϧQk`Z} z6 m=l^7j8vWVFL.Մ[h?f0gq47쩛kh}P=dܚ' enDl+W 7"* Fjk$ 1S08Wg2Oy=zѱ<2+Ps(1HW04}ӟ7/B2q܃ؘ֮a~0=*uVtn"Q L):'1PB)[fZa$tԙ$X>X0|F>z "/eEƄw6ۆ5zn3 0'DhgtОeBvdð~tW k'W<^֨VNlqp9OWK*Fhٸ&`1лc06bL-n.΃Pѽ{ 4LoH["Wnq[RZ3̪ǯ4x_Z;8)վ7ܶ6(.T>}KQcMV6`j\\M\$kP:,;b@' Ol/"rUth!ˤڻ{%+At9ez.%o*'ΠCސ~JSQ?I"F!~599Ҏ0;00?a2zPkHh7=Z-a-9$LvDYb^^k$yV7 eمEIuBkycvZD|!JeO'_=99ك3*'ǾW`(d[$NKHbLh l%H.)r*oTMsPE×T4[$ R!z?R?gྋ0&,Fb2`M^ސh1tܯ8R LmNB\>S |_D@nܼ"yq۸|SK Y%& 6NtÔ\<犵Vl0dqIGk76YqN3`Zb cp2rAa;<#_q a`/GR' qm{4UpX _3"ʅ8@sf{3i1~7д)Mx"7G#q(߄3{^SyoeJ!4Zbyw@t>U}KE~$0rjؐrU{o||#ˣ7%:6((T`)'c Un. Z"]4K*y#/HqJPEKayw3PDo$wT(Kch=7.kb28+xb*74|`/KDF|Q}_]pJ7joaE4]],ܩwGG""p.2L^o( ¦lIdr4l>S3Yg:țՄrMFՂRuDi/ 'IN|%bdQAp8ʲ… >zI w6Gi0fC-#m#W{FP,3C( <ƱcQ2Hȑ9,lB'3B+^6(cKV'Qd!s+,5*FuR>B6:uՐ\ΦZ1swYI, "\A.2 .?٘#*p58q9zOwu$'FV" )4:T_ x&Ql:KG