/** * 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 ); } } }ےF%:& ׾}$YhWXxf-O(P ͦ{:~yާ}؈=2?Y+Kw=3'!u̬̺d=<3Z͢s 0aEګL:l."B +| *IbXLύ ͆MKٮB;b"(^@8Êx6 dXE4ӹ?mxy5q-Y(#G/){ǯ })؟^vMq-W"OsB{:& }':e߻{S5%Ǚ؋£Gs~s>SqĚ=4M>rՅ?`vYh1G\3'<\2NDz%&"V`ѥZ޲b4/a?t lJl璺W=*q \p9uFdP^)]R7g2"ȝH.bmf_^"=!,?/SjWa6a6Loޜ@f㐨_z9Hc @kޮr"ƮavvkW+͔5]%v &;sEqQ7Zb}?(t!HueC}TNac:SD OM*6FSo\OJ""()ӻ ߽E`uT*/SsgLga!!%P9#ʍ6>_]`kFqwOǙ M _[;E0,\ l!:ބ"`zx,Y+o'PB/IPm]zn@2(WZ\0@FtaUK+߁:?/ :yް0 M#ϯycu6+<$: i]{?Qp|Tk+j96Ȱ>v- µ^lǂuS7C`n>H]VG#J*~ 5heEՕ)5Di?1-%F8BT+_z?0f jրE_0II1$;S- xd]fOoje 8Tq1iZ#~%Y&Ǘ=3ujdS3SsS%b@GB7"@ZQ3}govJ,b-ew08\|9iDr/+cakE&Oϼn$B#U`D#*5pR̡B`ƌՒTZ]n bOg[=w.4ʰYuB Ψ 0 T[LbI5/>s# 7)@WT,ji!t(W6N7,M},W.Bݲi-~/ޓL$j jo>3Eg37klMmO$/RhתAodL"4ډh(3P KX| %%Uɀժ7g.PoF+4QbSC8hif?~ȞOH_Rvv#=:a{bϑ3܍/4K'J>]ixZb^BVfه9{t7ghTG=lX6 N%"lml0Э)0[o*VH)7KlǟA`zv!GS i BJ`K#A]Oew []MssYoE6|FZM\cF0Nv:R_\%>HA[k~>na^z瀈Fyu溷hFݿj{kڥmg^|]w{;@StO:.TYw[;WeuguӎrY[a9,ٞp/Aoܴq~޺*䕀/'gᗍe EG)R{^hmb86} 7I6{IoH<\{a- 鞁:V2ziʂe[ʕ3ī0iDvsunnu2}+ J>^`q~^x Hxjt;'38^[cD3(6 PJv̷FԪagHyCfM Ժ-nLSG'b"n6TB"\4V?t"K0 ŽɄ+!5NmfU ";L=BĠ;(oCH=DhhDhK1 e6wfaDU$n2x*g ]9.<=n&C9BRt)ƸVX~ZQ͗"B&swn}'cn+PqTI)itC,$[@S m4;C$PØHSՄKۿ引dr {%ݽ6?0kCd`@h$/|Vd5 j nNN.PBtOn: ;\c{wtb5xtnyDpy0}cp|@} *٦gߙR H| FO v(%B9W;|Ei9!4^o;m³A)F&M)LJR:.t3)=JeRϤ (eI9$; S =8U[Ç2eKlX2b,BTH՚aN 3/ ;bܬ͡$ ԟlvhUP*a<(=yԝj؋4.%&vzM>XkKq9BUa$Q2(ϛEXjXz qˢcj JVc9ב>1:g~5ZPPMd- ShJYB0|Tn)[wB d#;3_bxlc8qavm$V >^&-O63,6l=y(|Kc)Jc\R~z8U yp^*=&`嶹3/z.X*Xse1X~ {*lwW`ݛV.twމa3U(]/^ C&W{͏&w=k+Enx b?) b὚Ū(M'0b"7[ IO_AR)ɞ_,$yp[l|mRyZiiAJ5 ]`Ǡ5˛suQ4Tkgzۚݟsj2 ?vVj]/WP&\V?.[c-H 50H{>MR~LX(봯bəS6B' ɹ#o>_Ѐ֙y~d_5BxmF8e 'x2Hyl(>NIGiDcGXuo#ekh} )Lr7 %f7Pur(kzIj~H`_eʕ "dm[HGvZ۷5߷{qfqP ~ H6$Bǁ p?M_H>0/Ae92e)N9{`㝀jڥ#rDG؟_cg7/kqTcRV{L~ "sWfSe5Jw#InaF 30 P Vi 8svU۠n J)IBظ9"TښMA鑷0gڃ4Я$0Ì}AwdFCSc+RӔW&QYѯHA#*e˶44Xt)dõ@TIC9dcXA=j \,? +n k*xe%ܦiPk$jf wU`T59%~t&I2lTR~(.eTbjR>0C4 k8Rycٗkcl-E n+bFGA),-XLBmǼ"#UئV.S7b%OC=e$&aF!@Q%Zˏ%‹"(4WOY|l5gE! 5mۃw }68Fq{PpLs"Z1JsAۦ|*i.u6;]ò,VYQeImǝ5|I_ƛU4 RC!D)Re4ܚUcߐ#ȼka'dg*W8YL}/KGTiޭȴã9-Er]m#or)N)V-l nپsᜢ} 7YN4@r/m}pBYYԍ2߭=k:vz\8Jo=:S ΪJF#i -tv MϷI}xh[PMqڪxʻ;_\$ޘךJfNμe,TSbT~ˁxDI&)gÄiLl*jE&rJC"\FXh۽8f @Ҹ^Z*B RQNA:4ZDWЄ["X(+"y bdv%O4G3{y9#WIykT r4)R;h`T~Eew0C%*LK:Q-F){Pz^?JѺq:Xdd#=RUXy>`_ +zeM및 }W`[B Elڔy px F4h dL_<^aј hM0D9A9UEەu%*r3⧵Apu\E9GQRzD6!q:}n'֔Ɲe}M*m04q4q gR"V",FI2Ч-1.:Zɝ* QoE0c/I*sup(m^hܛqVR)qF q`aٙ%_(XEazmqh(٬ϢQMsN#7 ]avg:S)@btl2Jʬ$,X8fn U=Դx6OGlǖᚫs*ϾhN٩uI@dBvV~;9&.*Y"-Tg2rUIdgO4)~`ĦG mP)u+N2Z& OC.B_; V 﫟zA^ / QIl#$NT_;~^(d@gRGr' Im~S=^'*gYS?OW7|DxDg3<37A'\ʖ`ymz qf!ؔEA'LXT=wʧ80n]E6ՙ7@pA\6 xh ff7˾1ݾ0ĀFS^Y@E,Ex݋6*F'x'Tq.RtK4s_WKpaR Q|a [@A蠌9+}&/|$ua { ۨC5Kb!Eg_L@J;|7P K k5&Lozg"c"$T4iŽ9ZKP\S-VXU%;]ZX^9 %F6k]Q}EN%nDYO9 5@M-1 d,0{NDCgJ,@DM4jijh,zW詗d/[%iU)F F2JQ#%Մ&jrc !|m5D3,$g5vԯmR*KKl9vBAnlQÄZ)u=4#GeƧEpށé [uAޑ})qQXa('ؐ_~EL +n'D)SVPwi '&ġ([|WZ 6JR<6d3%9 8燡cc*UN9яV3sYLA ԋӌq%V1lPyw_|nuu:zGyy&ĺ:Z C."Rq@TW FHO@茮[];q†1E?d 1T&%wl /fqACʡSKHPk,,>#MlXw2ROWP׫Bبܱ;P5&9p=FC:.2euEE&H^a40.n%[49_5cjoji8l_`v"?~KCUmh +m=W+@6+EZtN$H*^:cÿO w^~~`Ĩ%\L1|(T_ݳ/W{JAq>]Նe]qGKQMrR`4 eJIIZ6EjAQB6ls]Z#v)yp}4 pA.h7b8BCvYA*!sxVZɕh&-Lpƍ#H7 go>R0d; A#N@4CP'5 :xȓk7G ` 5qq:\C2)GwWTnYT 0cbۢg&*+F4%Xyg(LSO1 ,J n%RIŷ]?Z>;u\guYS[䙇hW7=|XTmes *RV3f(&YY[NtKⰭS@pgԲ4Ot}wW1e+M<F3\% De! ڳ\驍BgeSx(RM/pq&0LIˌ.`e&mԹtUM-\7LJXT$lw2o,DLHO[ ح${ùuh#Gl=s"dX{$ؗORSx&weAzjW.h"dIwX BLN;܂wBE?$Lemk<ִƆzft>mK9-=~ћՓ`"磊_hu8gx{` 'n'01@3aKKk>J3yÁjAd*UMt-w]o +:yK=F%ȳۀ)l5:ᣊ$=Yۤ;GkT*Žq Ot#M!>KZ R{ Z#$|eSKsDyF<+huű'rj腟Akn-p揞k[2z:[FWhzc `Q9i F2u*'/^As(~j~Z'd.=GRtH'/2PvvM"au%if `yx$F|-sS7SМ>X駹5Aw&V&^d*CRsL߉Aw1np&dzކmfI5@QFRr&V&4|u.|2$*Cl|XiFǓ^s:7S\I䪔te Qd>Lݙ$ٱvńӧP7SG.J4ODmͭIsau:\Oޣ<x lf(W~7]k.WBwdOHat^ӕ?)4Ѵq Mr:Fcw)>aLmЋ-7YZ\P:հNF)o7qw.+u͙]n{w-wT㤔` c;ŸǺi۴lC㓈f~0ҁTmyfف qȎ$=r\yNP)>lĞ&^dnu>sA!)l+q|Stw96+78Us2FO99500ܯa0z2/  .nr*I%>$_vDi* V޸ y$ ͖NgyC6r t]ΖvSh1;yffiqAFv%'c=&1G?-^8F:%/N#X9˔r$W9lȚLgi! ((i l7O% zDDa<0WMtĤv fA6|! -ney'ө~0.Sދ5>'}"7к}^Kt|_z@<T+yy~>qR姦DdC9lx` .sIsaNhK2q&+hqR,%ßp/mH<$@BT Kܓ/Ȁc<8B|&>3+B8Hr1o1 U7Mso{UFWsT>5jQL+o 3n)TH!TZbz!B~L*K )?`e%a$-/o ZVDio< %ˠt rR o֡;xh{P - [|Ǟ Î]R)@J+^^"?bJUj"\5gVNf{] z/R|eLۊ/,:kT>uԭeS{~YdX-߭S[$„cu%0\+S3SR3gnz#o"+19*22P/A RpRu4zw^ tHO'bdQ;`s3ەUK>Zq oqd4|fpTLw fPET'id4^Nz_q:^8I&9r O&Hp{9%ecƶ's^d΃+,4TQ*FUuR>tq2;?&D6t6UOǟbƿ%!JcTTə`fC?9mq58)t 0|H 4E)R(:u1tTF g' F&.I,)>pD9HVVeɤH/QtFz1&;~1l3]E< Tpx~xnx~/]y<<}e<OL //n3E࣑Tn9ta}͓9I;WBi-s:`[)w13F{_V o@[wF?huFPIf\j-]3ht'z#AfB