@reevit/svelte 0.4.6 → 0.4.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.js +2 -2
- package/dist/index.mjs +1208 -1190
- package/dist/stores/reevit.d.ts.map +1 -1
- package/dist/styles.css +1 -1
- package/dist/svelte.css +1 -1
- package/package.json +2 -2
package/dist/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const vt=require("svelte"),x=require("@reevit/core"),vi="5";typeof window<"u"&&((window.__svelte??={}).v??=new Set).add(vi);let Nt=!1,pi=!1;function hi(){Nt=!0}hi();const mi=1,_i=2,cr=4,yi=8,bi=16,gi=1,wi=2,Pi=4,Ei=8,Si=16,ki=1,Ii=2,oe=Symbol(),Mi="http://www.w3.org/1999/xhtml",Sn=!1;var ur=Array.isArray,Ci=Array.prototype.indexOf,Fn=Array.from,fr=Object.defineProperty,qt=Object.getOwnPropertyDescriptor,dr=Object.getOwnPropertyDescriptors,Ri=Object.prototype,xi=Array.prototype,Dn=Object.getPrototypeOf;const kn=()=>{};function Ti(e){return e()}function In(e){for(var t=0;t<e.length;t++)e[t]()}function vr(){var e,t,n=new Promise((r,a)=>{e=r,t=a});return{promise:n,resolve:e,reject:t}}const ie=2,pr=4,$t=8,Ai=1<<24,Oe=16,Ne=32,mt=64,Un=128,Ee=512,ne=1024,fe=2048,Se=4096,_e=8192,xe=16384,jn=32768,Mt=65536,Xn=1<<17,hr=1<<18,en=1<<19,mr=1<<20,Re=1<<25,tt=32768,Mn=1<<21,Hn=1<<22,qe=1<<23,pt=Symbol("$state"),Oi=Symbol("legacy props"),Ni=Symbol(""),ft=new class extends Error{name="StaleReactionError";message="The reaction that called `getAbortSignal()` was re-run or destroyed"};function Li(){throw new Error("https://svelte.dev/e/async_derived_orphan")}function Fi(e){throw new Error("https://svelte.dev/e/effect_in_teardown")}function Di(){throw new Error("https://svelte.dev/e/effect_in_unowned_derived")}function Ui(e){throw new Error("https://svelte.dev/e/effect_orphan")}function ji(){throw new Error("https://svelte.dev/e/effect_update_depth_exceeded")}function Hi(e){throw new Error("https://svelte.dev/e/props_invalid_value")}function zi(){throw new Error("https://svelte.dev/e/state_descriptors_fixed")}function Ki(){throw new Error("https://svelte.dev/e/state_prototype_fixed")}function qi(){throw new Error("https://svelte.dev/e/state_unsafe_mutation")}function _r(e){return e===this.v}function Bi(e,t){return e!=e?t==t:e!==t||e!==null&&typeof e=="object"||typeof e=="function"}function yr(e){return!Bi(e,this.v)}let ee=null;function Vt(e){ee=e}function tn(e,t=!1,n){ee={p:ee,i:!1,c:null,e:null,s:e,x:null,l:Nt&&!t?{s:null,u:null,$:[]}:null}}function nn(e){var t=ee,n=t.e;if(n!==null){t.e=null;for(var r of n)Rr(r)}return t.i=!0,ee=t.p,{}}function Lt(){return!Nt||ee!==null&&ee.l===null}let Je=[];function br(){var e=Je;Je=[],In(e)}function zn(e){if(Je.length===0&&!It){var t=Je;queueMicrotask(()=>{t===Je&&br()})}Je.push(e)}function Vi(){for(;Je.length>0;)br()}function Yi(e){var t=H;if(t===null)return N.f|=qe,e;if((t.f&jn)===0){if((t.f&Un)===0)throw e;t.b.error(e)}else Yt(e,t)}function Yt(e,t){for(;t!==null;){if((t.f&Un)!==0)try{t.b.error(e);return}catch(n){e=n}t=t.parent}throw e}const zt=new Set;let L=null,Bt=null,ge=null,be=[],rn=null,Cn=!1,It=!1;class Ct{committed=!1;current=new Map;previous=new Map;#t=new Set;#n=new Set;#e=0;#r=0;#a=null;#i=new Set;#o=new Set;skipped_effects=new Set;is_fork=!1;is_deferred(){return this.is_fork||this.#r>0}process(t){be=[],Bt=null,this.apply();var n={parent:null,effect:null,effects:[],render_effects:[]};for(const r of t)this.#l(r,n);this.is_fork||this.#u(),this.is_deferred()?(this.#s(n.effects),this.#s(n.render_effects)):(Bt=this,L=null,$n(n.render_effects),$n(n.effects),Bt=null,this.#a?.resolve()),ge=null}#l(t,n){t.f^=ne;for(var r=t.first;r!==null;){var a=r.f,i=(a&(Ne|mt))!==0,l=i&&(a&ne)!==0,s=l||(a&_e)!==0||this.skipped_effects.has(r);if((r.f&Un)!==0&&r.b?.is_pending()&&(n={parent:n,effect:r,effects:[],render_effects:[]}),!s&&r.fn!==null){i?r.f^=ne:(a&pr)!==0?n.effects.push(r):_t(r)&&((r.f&Oe)!==0&&this.#i.add(r),ht(r));var c=r.first;if(c!==null){r=c;continue}}var u=r.parent;for(r=r.next;r===null&&u!==null;)u===n.effect&&(this.#s(n.effects),this.#s(n.render_effects),n=n.parent),r=u.next,u=u.parent}}#s(t){for(const n of t)(n.f&fe)!==0?this.#i.add(n):(n.f&Se)!==0&&this.#o.add(n),this.#c(n.deps),re(n,ne)}#c(t){if(t!==null)for(const n of t)(n.f&ie)===0||(n.f&tt)===0||(n.f^=tt,this.#c(n.deps))}capture(t,n){this.previous.has(t)||this.previous.set(t,n),(t.f&qe)===0&&(this.current.set(t,t.v),ge?.set(t,t.v))}activate(){L=this,this.apply()}deactivate(){L===this&&(L=null,ge=null)}flush(){if(this.activate(),be.length>0){if(gr(),L!==null&&L!==this)return}else this.#e===0&&this.process([]);this.deactivate()}discard(){for(const t of this.#n)t(this);this.#n.clear()}#u(){if(this.#r===0){for(const t of this.#t)t();this.#t.clear()}this.#e===0&&this.#f()}#f(){if(zt.size>1){this.previous.clear();var t=ge,n=!0,r={parent:null,effect:null,effects:[],render_effects:[]};for(const i of zt){if(i===this){n=!1;continue}const l=[];for(const[c,u]of this.current){if(i.current.has(c))if(n&&u!==i.current.get(c))i.current.set(c,u);else continue;l.push(c)}if(l.length===0)continue;const s=[...i.current.keys()].filter(c=>!this.current.has(c));if(s.length>0){var a=be;be=[];const c=new Set,u=new Map;for(const f of l)wr(f,s,c,u);if(be.length>0){L=i,i.apply();for(const f of be)i.#l(f,r);i.deactivate()}be=a}}L=null,ge=t}this.committed=!0,zt.delete(this)}increment(t){this.#e+=1,t&&(this.#r+=1)}decrement(t){this.#e-=1,t&&(this.#r-=1),this.revive()}revive(){for(const t of this.#i)this.#o.delete(t),re(t,fe),nt(t);for(const t of this.#o)re(t,Se),nt(t);this.flush()}oncommit(t){this.#t.add(t)}ondiscard(t){this.#n.add(t)}settled(){return(this.#a??=vr()).promise}static ensure(){if(L===null){const t=L=new Ct;zt.add(L),It||Ct.enqueue(()=>{L===t&&t.flush()})}return L}static enqueue(t){zn(t)}apply(){}}function Gi(e){var t=It;It=!0;try{for(var n;;){if(Vi(),be.length===0&&(L?.flush(),be.length===0))return rn=null,n;gr()}}finally{It=t}}function gr(){var e=Qe;Cn=!0;var t=null;try{var n=0;for(Zt(!0);be.length>0;){var r=Ct.ensure();if(n++>1e3){var a,i;Wi()}r.process(be),Be.clear()}}finally{Cn=!1,Zt(e),rn=null}}function Wi(){try{ji()}catch(e){Yt(e,rn)}}let Ce=null;function $n(e){var t=e.length;if(t!==0){for(var n=0;n<t;){var r=e[n++];if((r.f&(xe|_e))===0&&_t(r)&&(Ce=new Set,ht(r),r.deps===null&&r.first===null&&r.nodes===null&&(r.teardown===null&&r.ac===null?Or(r):r.fn=null),Ce?.size>0)){Be.clear();for(const a of Ce){if((a.f&(xe|_e))!==0)continue;const i=[a];let l=a.parent;for(;l!==null;)Ce.has(l)&&(Ce.delete(l),i.push(l)),l=l.parent;for(let s=i.length-1;s>=0;s--){const c=i[s];(c.f&(xe|_e))===0&&ht(c)}}Ce.clear()}}Ce=null}}function wr(e,t,n,r){if(!n.has(e)&&(n.add(e),e.reactions!==null))for(const a of e.reactions){const i=a.f;(i&ie)!==0?wr(a,t,n,r):(i&(Hn|Oe))!==0&&(i&fe)===0&&Pr(a,t,r)&&(re(a,fe),nt(a))}}function Pr(e,t,n){const r=n.get(e);if(r!==void 0)return r;if(e.deps!==null)for(const a of e.deps){if(t.includes(a))return!0;if((a.f&ie)!==0&&Pr(a,t,n))return n.set(a,!0),!0}return n.set(e,!1),!1}function nt(e){for(var t=rn=e;t.parent!==null;){t=t.parent;var n=t.f;if(Cn&&t===H&&(n&Oe)!==0&&(n&hr)===0)return;if((n&(mt|Ne))!==0){if((n&ne)===0)return;t.f^=ne}}be.push(t)}function Ji(e,t,n,r){const a=Lt()?an:Rt;if(n.length===0&&e.length===0){r(t.map(a));return}var i=L,l=H,s=Zi();function c(){Promise.all(n.map(u=>Qi(u))).then(u=>{s();try{r([...t.map(a),...u])}catch(f){(l.f&xe)===0&&Yt(f,l)}i?.deactivate(),Gt()}).catch(u=>{Yt(u,l)})}e.length>0?Promise.all(e).then(()=>{s();try{return c()}finally{i?.deactivate(),Gt()}}):c()}function Zi(){var e=H,t=N,n=ee,r=L;return function(i=!0){Ve(e),Me(t),Vt(n),i&&r?.activate()}}function Gt(){Ve(null),Me(null),Vt(null)}function an(e){var t=ie|fe,n=N!==null&&(N.f&ie)!==0?N:null;return H!==null&&(H.f|=en),{ctx:ee,deps:null,effects:null,equals:_r,f:t,fn:e,reactions:null,rv:0,v:oe,wv:0,parent:n??H,ac:null}}function Qi(e,t){let n=H;n===null&&Li();var r=n.b,a=void 0,i=xt(oe),l=!N,s=new Map;return la(()=>{var c=vr();a=c.promise;try{Promise.resolve(e()).then(c.resolve,c.reject).then(()=>{u===L&&u.committed&&u.deactivate(),Gt()})}catch(v){c.reject(v),Gt()}var u=L;if(l){var f=!r.is_pending();r.update_pending_count(1),u.increment(f),s.get(u)?.reject(ft),s.delete(u),s.set(u,c)}const d=(v,m=void 0)=>{if(u.activate(),m)m!==ft&&(i.f|=qe,Tt(i,m));else{(i.f&qe)!==0&&(i.f^=qe),Tt(i,v);for(const[_,h]of s){if(s.delete(_),_===u)break;h.reject(ft)}}l&&(r.update_pending_count(-1),u.decrement(f))};c.promise.then(d,v=>d(null,v||"unknown"))}),qn(()=>{for(const c of s.values())c.reject(ft)}),new Promise(c=>{function u(f){function d(){f===a?c(i):u(a)}f.then(d,d)}u(a)})}function Rt(e){const t=an(e);return t.equals=yr,t}function Er(e){var t=e.effects;if(t!==null){e.effects=null;for(var n=0;n<t.length;n+=1)Te(t[n])}}function Xi(e){for(var t=e.parent;t!==null;){if((t.f&ie)===0)return(t.f&xe)===0?t:null;t=t.parent}return null}function Kn(e){var t,n=H;Ve(Xi(e));try{e.f&=~tt,Er(e),t=jr(e)}finally{Ve(n)}return t}function Sr(e){var t=Kn(e);if(e.equals(t)||(L?.is_fork||(e.v=t),e.wv=Dr()),!rt)if(ge!==null)(Jt()||L?.is_fork)&&ge.set(e,t);else{var n=(e.f&Ee)===0?Se:ne;re(e,n)}}let Rn=new Set;const Be=new Map;let kr=!1;function xt(e,t){var n={f:0,v:e,reactions:null,equals:_r,rv:0,wv:0};return n}function He(e,t){const n=xt(e);return da(n),n}function X(e,t=!1,n=!0){const r=xt(e);return t||(r.equals=yr),Nt&&n&&ee!==null&&ee.l!==null&&(ee.l.s??=[]).push(r),r}function O(e,t,n=!1){N!==null&&(!Ie||(N.f&Xn)!==0)&&Lt()&&(N.f&(ie|Oe|Hn|Xn))!==0&&!Ae?.includes(e)&&qi();let r=n?dt(t):t;return Tt(e,r)}function Tt(e,t){if(!e.equals(t)){var n=e.v;rt?Be.set(e,t):Be.set(e,n),e.v=t;var r=Ct.ensure();r.capture(e,n),(e.f&ie)!==0&&((e.f&fe)!==0&&Kn(e),re(e,(e.f&Ee)!==0?ne:Se)),e.wv=Dr(),Ir(e,fe),Lt()&&H!==null&&(H.f&ne)!==0&&(H.f&(Ne|mt))===0&&(ye===null?va([e]):ye.push(e)),!r.is_fork&&Rn.size>0&&!kr&&$i()}return t}function $i(){kr=!1;var e=Qe;Zt(!0);const t=Array.from(Rn);try{for(const n of t)(n.f&ne)!==0&&re(n,Se),_t(n)&&ht(n)}finally{Zt(e)}Rn.clear()}function wn(e){O(e,e.v+1)}function Ir(e,t){var n=e.reactions;if(n!==null)for(var r=Lt(),a=n.length,i=0;i<a;i++){var l=n[i],s=l.f;if(!(!r&&l===H)){var c=(s&fe)===0;if(c&&re(l,t),(s&ie)!==0){var u=l;ge?.delete(u),(s&tt)===0&&(s&Ee&&(l.f|=tt),Ir(u,Se))}else c&&((s&Oe)!==0&&Ce!==null&&Ce.add(l),nt(l))}}}function dt(e){if(typeof e!="object"||e===null||pt in e)return e;const t=Dn(e);if(t!==Ri&&t!==xi)return e;var n=new Map,r=ur(e),a=He(0),i=Xe,l=s=>{if(Xe===i)return s();var c=N,u=Xe;Me(null),rr(i);var f=s();return Me(c),rr(u),f};return r&&n.set("length",He(e.length)),new Proxy(e,{defineProperty(s,c,u){(!("value"in u)||u.configurable===!1||u.enumerable===!1||u.writable===!1)&&zi();var f=n.get(c);return f===void 0?f=l(()=>{var d=He(u.value);return n.set(c,d),d}):O(f,u.value,!0),!0},deleteProperty(s,c){var u=n.get(c);if(u===void 0){if(c in s){const f=l(()=>He(oe));n.set(c,f),wn(a)}}else O(u,oe),wn(a);return!0},get(s,c,u){if(c===pt)return e;var f=n.get(c),d=c in s;if(f===void 0&&(!d||qt(s,c)?.writable)&&(f=l(()=>{var m=dt(d?s[c]:oe),_=He(m);return _}),n.set(c,f)),f!==void 0){var v=o(f);return v===oe?void 0:v}return Reflect.get(s,c,u)},getOwnPropertyDescriptor(s,c){var u=Reflect.getOwnPropertyDescriptor(s,c);if(u&&"value"in u){var f=n.get(c);f&&(u.value=o(f))}else if(u===void 0){var d=n.get(c),v=d?.v;if(d!==void 0&&v!==oe)return{enumerable:!0,configurable:!0,value:v,writable:!0}}return u},has(s,c){if(c===pt)return!0;var u=n.get(c),f=u!==void 0&&u.v!==oe||Reflect.has(s,c);if(u!==void 0||H!==null&&(!f||qt(s,c)?.writable)){u===void 0&&(u=l(()=>{var v=f?dt(s[c]):oe,m=He(v);return m}),n.set(c,u));var d=o(u);if(d===oe)return!1}return f},set(s,c,u,f){var d=n.get(c),v=c in s;if(r&&c==="length")for(var m=u;m<d.v;m+=1){var _=n.get(m+"");_!==void 0?O(_,oe):m in s&&(_=l(()=>He(oe)),n.set(m+"",_))}if(d===void 0)(!v||qt(s,c)?.writable)&&(d=l(()=>He(void 0)),O(d,dt(u)),n.set(c,d));else{v=d.v!==oe;var h=l(()=>dt(u));O(d,h)}var p=Reflect.getOwnPropertyDescriptor(s,c);if(p?.set&&p.set.call(f,u),!v){if(r&&typeof c=="string"){var y=n.get("length"),V=Number(c);Number.isInteger(V)&&V>=y.v&&O(y,V+1)}wn(a)}return!0},ownKeys(s){o(a);var c=Reflect.ownKeys(s).filter(d=>{var v=n.get(d);return v===void 0||v.v!==oe});for(var[u,f]of n)f.v!==oe&&!(u in s)&&c.push(u);return c},setPrototypeOf(){Ki()}})}var ea,ta,na;function Ze(e=""){return document.createTextNode(e)}function Wt(e){return ta.call(e)}function Ft(e){return na.call(e)}function g(e,t){return Wt(e)}function Ke(e,t=!1){{var n=Wt(e);return n instanceof Comment&&n.data===""?Ft(n):n}}function B(e,t=1,n=!1){let r=e;for(;t--;)r=Ft(r);return r}function ra(e){e.textContent=""}function Mr(){return!1}let er=!1;function ia(){er||(er=!0,document.addEventListener("reset",e=>{Promise.resolve().then(()=>{if(!e.defaultPrevented)for(const t of e.target.elements)t.__on_r?.()})},{capture:!0}))}function on(e){var t=N,n=H;Me(null),Ve(null);try{return e()}finally{Me(t),Ve(n)}}function aa(e,t,n,r=n){e.addEventListener(t,()=>on(n));const a=e.__on_r;a?e.__on_r=()=>{a(),r(!0)}:e.__on_r=()=>r(!0),ia()}function Cr(e){H===null&&(N===null&&Ui(),Di()),rt&&Fi()}function oa(e,t){var n=t.last;n===null?t.last=t.first=e:(n.next=e,e.prev=n,t.last=e)}function Ye(e,t,n){var r=H;r!==null&&(r.f&_e)!==0&&(e|=_e);var a={ctx:ee,deps:null,nodes:null,f:e|fe|Ee,first:null,fn:t,last:null,next:null,parent:r,b:r&&r.b,prev:null,teardown:null,wv:0,ac:null};if(n)try{ht(a),a.f|=jn}catch(s){throw Te(a),s}else t!==null&&nt(a);var i=a;if(n&&i.deps===null&&i.teardown===null&&i.nodes===null&&i.first===i.last&&(i.f&en)===0&&(i=i.first,(e&Oe)!==0&&(e&Mt)!==0&&i!==null&&(i.f|=Mt)),i!==null&&(i.parent=r,r!==null&&oa(i,r),N!==null&&(N.f&ie)!==0&&(e&mt)===0)){var l=N;(l.effects??=[]).push(i)}return a}function Jt(){return N!==null&&!Ie}function qn(e){const t=Ye($t,null,!1);return re(t,ne),t.teardown=e,t}function tr(e){Cr();var t=H.f,n=!N&&(t&Ne)!==0&&(t&jn)===0;if(n){var r=ee;(r.e??=[]).push(e)}else return Rr(e)}function Rr(e){return Ye(pr|mr,e,!1)}function sa(e){return Cr(),Ye($t|mr,e,!0)}function te(e,t){var n=ee,r={effect:null,ran:!1,deps:e};n.l.$.push(r),r.effect=Vn(()=>{e(),!r.ran&&(r.ran=!0,w(t))})}function Bn(){var e=ee;Vn(()=>{for(var t of e.l.$){t.deps();var n=t.effect;(n.f&ne)!==0&&re(n,Se),_t(n)&&ht(n),t.ran=!1}})}function la(e){return Ye(Hn|en,e,!0)}function Vn(e,t=0){return Ye($t|t,e,!0)}function $(e,t=[],n=[],r=[]){Ji(r,t,n,a=>{Ye($t,()=>e(...a.map(o)),!0)})}function xr(e,t=0){var n=Ye(Oe|t,e,!0);return n}function At(e){return Ye(Ne|en,e,!0)}function Tr(e){var t=e.teardown;if(t!==null){const n=rt,r=N;nr(!0),Me(null);try{t.call(null)}finally{nr(n),Me(r)}}}function Ar(e,t=!1){var n=e.first;for(e.first=e.last=null;n!==null;){const a=n.ac;a!==null&&on(()=>{a.abort(ft)});var r=n.next;(n.f&mt)!==0?n.parent=null:Te(n,t),n=r}}function ca(e){for(var t=e.first;t!==null;){var n=t.next;(t.f&Ne)===0&&Te(t),t=n}}function Te(e,t=!0){var n=!1;(t||(e.f&hr)!==0)&&e.nodes!==null&&e.nodes.end!==null&&(ua(e.nodes.start,e.nodes.end),n=!0),Ar(e,t&&!n),Qt(e,0),re(e,xe);var r=e.nodes&&e.nodes.t;if(r!==null)for(const i of r)i.stop();Tr(e);var a=e.parent;a!==null&&a.first!==null&&Or(e),e.next=e.prev=e.teardown=e.ctx=e.deps=e.fn=e.nodes=e.ac=null}function ua(e,t){for(;e!==null;){var n=e===t?null:Ft(e);e.remove(),e=n}}function Or(e){var t=e.parent,n=e.prev,r=e.next;n!==null&&(n.next=r),r!==null&&(r.prev=n),t!==null&&(t.first===e&&(t.first=r),t.last===e&&(t.last=n))}function Yn(e,t,n=!0){var r=[];Nr(e,r,!0);var a=()=>{n&&Te(e),t&&t()},i=r.length;if(i>0){var l=()=>--i||a();for(var s of r)s.out(l)}else a()}function Nr(e,t,n){if((e.f&_e)===0){e.f^=_e;var r=e.nodes&&e.nodes.t;if(r!==null)for(const s of r)(s.is_global||n)&&t.push(s);for(var a=e.first;a!==null;){var i=a.next,l=(a.f&Mt)!==0||(a.f&Ne)!==0&&(e.f&Oe)!==0;Nr(a,t,l?n:!1),a=i}}}function Gn(e){Lr(e,!0)}function Lr(e,t){if((e.f&_e)!==0){e.f^=_e,(e.f&ne)===0&&(re(e,fe),nt(e));for(var n=e.first;n!==null;){var r=n.next,a=(n.f&Mt)!==0||(n.f&Ne)!==0;Lr(n,a?t:!1),n=r}var i=e.nodes&&e.nodes.t;if(i!==null)for(const l of i)(l.is_global||t)&&l.in()}}function fa(e,t){if(e.nodes)for(var n=e.nodes.start,r=e.nodes.end;n!==null;){var a=n===r?null:Ft(n);t.append(n),n=a}}let Qe=!1;function Zt(e){Qe=e}let rt=!1;function nr(e){rt=e}let N=null,Ie=!1;function Me(e){N=e}let H=null;function Ve(e){H=e}let Ae=null;function da(e){N!==null&&(Ae===null?Ae=[e]:Ae.push(e))}let ce=null,he=0,ye=null;function va(e){ye=e}let Fr=1,Ot=0,Xe=Ot;function rr(e){Xe=e}function Dr(){return++Fr}function _t(e){var t=e.f;if((t&fe)!==0)return!0;if(t&ie&&(e.f&=~tt),(t&Se)!==0){var n=e.deps;if(n!==null)for(var r=n.length,a=0;a<r;a++){var i=n[a];if(_t(i)&&Sr(i),i.wv>e.wv)return!0}(t&Ee)!==0&&ge===null&&re(e,ne)}return!1}function Ur(e,t,n=!0){var r=e.reactions;if(r!==null&&!Ae?.includes(e))for(var a=0;a<r.length;a++){var i=r[a];(i.f&ie)!==0?Ur(i,t,!1):t===i&&(n?re(i,fe):(i.f&ne)!==0&&re(i,Se),nt(i))}}function jr(e){var t=ce,n=he,r=ye,a=N,i=Ae,l=ee,s=Ie,c=Xe,u=e.f;ce=null,he=0,ye=null,N=(u&(Ne|mt))===0?e:null,Ae=null,Vt(e.ctx),Ie=!1,Xe=++Ot,e.ac!==null&&(on(()=>{e.ac.abort(ft)}),e.ac=null);try{e.f|=Mn;var f=e.fn,d=f(),v=e.deps;if(ce!==null){var m;if(Qt(e,he),v!==null&&he>0)for(v.length=he+ce.length,m=0;m<ce.length;m++)v[he+m]=ce[m];else e.deps=v=ce;if(Jt()&&(e.f&Ee)!==0)for(m=he;m<v.length;m++)(v[m].reactions??=[]).push(e)}else v!==null&&he<v.length&&(Qt(e,he),v.length=he);if(Lt()&&ye!==null&&!Ie&&v!==null&&(e.f&(ie|Se|fe))===0)for(m=0;m<ye.length;m++)Ur(ye[m],e);return a!==null&&a!==e&&(Ot++,ye!==null&&(r===null?r=ye:r.push(...ye))),(e.f&qe)!==0&&(e.f^=qe),d}catch(_){return Yi(_)}finally{e.f^=Mn,ce=t,he=n,ye=r,N=a,Ae=i,Vt(l),Ie=s,Xe=c}}function pa(e,t){let n=t.reactions;if(n!==null){var r=Ci.call(n,e);if(r!==-1){var a=n.length-1;a===0?n=t.reactions=null:(n[r]=n[a],n.pop())}}n===null&&(t.f&ie)!==0&&(ce===null||!ce.includes(t))&&(re(t,Se),(t.f&Ee)!==0&&(t.f^=Ee,t.f&=~tt),Er(t),Qt(t,0))}function Qt(e,t){var n=e.deps;if(n!==null)for(var r=t;r<n.length;r++)pa(e,n[r])}function ht(e){var t=e.f;if((t&xe)===0){re(e,ne);var n=H,r=Qe;H=e,Qe=!0;try{(t&(Oe|Ai))!==0?ca(e):Ar(e),Tr(e);var a=jr(e);e.teardown=typeof a=="function"?a:null,e.wv=Fr;var i;Sn&&pi&&(e.f&fe)!==0&&e.deps}finally{Qe=r,H=n}}}async function ha(){await Promise.resolve(),Gi()}function o(e){var t=e.f,n=(t&ie)!==0;if(N!==null&&!Ie){var r=H!==null&&(H.f&xe)!==0;if(!r&&!Ae?.includes(e)){var a=N.deps;if((N.f&Mn)!==0)e.rv<Ot&&(e.rv=Ot,ce===null&&a!==null&&a[he]===e?he++:ce===null?ce=[e]:ce.includes(e)||ce.push(e));else{(N.deps??=[]).push(e);var i=e.reactions;i===null?e.reactions=[N]:i.includes(N)||i.push(N)}}}if(rt){if(Be.has(e))return Be.get(e);if(n){var l=e,s=l.v;return((l.f&ne)===0&&l.reactions!==null||zr(l))&&(s=Kn(l)),Be.set(l,s),s}}else n&&(!ge?.has(e)||L?.is_fork&&!Jt())&&(l=e,_t(l)&&Sr(l),Qe&&Jt()&&(l.f&Ee)===0&&Hr(l));if(ge?.has(e))return ge.get(e);if((e.f&qe)!==0)throw e.v;return e.v}function Hr(e){if(e.deps!==null){e.f^=Ee;for(const t of e.deps)(t.reactions??=[]).push(e),(t.f&ie)!==0&&(t.f&Ee)===0&&Hr(t)}}function zr(e){if(e.v===oe)return!0;if(e.deps===null)return!1;for(const t of e.deps)if(Be.has(t)||(t.f&ie)!==0&&zr(t))return!0;return!1}function w(e){var t=Ie;try{return Ie=!0,e()}finally{Ie=t}}const ma=-7169;function re(e,t){e.f=e.f&ma|t}function W(e){if(!(typeof e!="object"||!e||e instanceof EventTarget)){if(pt in e)xn(e);else if(!Array.isArray(e))for(let t in e){const n=e[t];typeof n=="object"&&n&&pt in n&&xn(n)}}}function xn(e,t=new Set){if(typeof e=="object"&&e!==null&&!(e instanceof EventTarget)&&!t.has(e)){t.add(e),e instanceof Date&&e.getTime();for(let r in e)try{xn(e[r],t)}catch{}const n=Dn(e);if(n!==Object.prototype&&n!==Array.prototype&&n!==Map.prototype&&n!==Set.prototype&&n!==Date.prototype){const r=dr(n);for(let a in r){const i=r[a].get;if(i)try{i.call(e)}catch{}}}}}function _a(e,t,n,r={}){function a(i){if(r.capture||ya.call(t,i),!i.cancelBubble)return on(()=>n?.call(this,i))}return e.startsWith("pointer")||e.startsWith("touch")||e==="wheel"?zn(()=>{t.addEventListener(e,a,r)}):t.addEventListener(e,a,r),a}function ue(e,t,n,r,a){var i={capture:r,passive:a},l=_a(e,t,n,i);(t===document.body||t===window||t===document||t instanceof HTMLMediaElement)&&qn(()=>{t.removeEventListener(e,l,i)})}let ir=null;function ya(e){var t=this,n=t.ownerDocument,r=e.type,a=e.composedPath?.()||[],i=a[0]||e.target;ir=e;var l=0,s=ir===e&&e.__root;if(s){var c=a.indexOf(s);if(c!==-1&&(t===document||t===window)){e.__root=t;return}var u=a.indexOf(t);if(u===-1)return;c<=u&&(l=c)}if(i=a[l]||e.target,i!==t){fr(e,"currentTarget",{configurable:!0,get(){return i||n}});var f=N,d=H;Me(null),Ve(null);try{for(var v,m=[];i!==null;){var _=i.assignedSlot||i.parentNode||i.host||null;try{var h=i["__"+r];h!=null&&(!i.disabled||e.target===i)&&h.call(i,e)}catch(p){v?m.push(p):v=p}if(e.cancelBubble||_===t||_===null)break;i=_}if(v){for(let p of m)queueMicrotask(()=>{throw p});throw v}}finally{e.__root=t,delete e.currentTarget,Me(f),Ve(d)}}}function ba(e){var t=document.createElement("template");return t.innerHTML=e.replaceAll("<!>","<!---->"),t.content}function Xt(e,t){var n=H;n.nodes===null&&(n.nodes={start:e,end:t,a:null,t:null})}function A(e,t){var n=(t&ki)!==0,r=(t&Ii)!==0,a,i=!e.startsWith("<!>");return()=>{a===void 0&&(a=ba(i?e:"<!>"+e),n||(a=Wt(a)));var l=r||ea?document.importNode(a,!0):a.cloneNode(!0);if(n){var s=Wt(l),c=l.lastChild;Xt(s,c)}else Xt(l,l);return l}}function ga(e=""){{var t=Ze(e+"");return Xt(t,t),t}}function ut(){var e=document.createDocumentFragment(),t=document.createComment(""),n=Ze();return e.append(t,n),Xt(t,n),e}function E(e,t){e!==null&&e.before(t)}function me(e,t){var n=t==null?"":typeof t=="object"?t+"":t;n!==(e.__t??=e.nodeValue)&&(e.__t=n,e.nodeValue=n+"")}class wa{anchor;#t=new Map;#n=new Map;#e=new Map;#r=new Set;#a=!0;constructor(t,n=!0){this.anchor=t,this.#a=n}#i=()=>{var t=L;if(this.#t.has(t)){var n=this.#t.get(t),r=this.#n.get(n);if(r)Gn(r),this.#r.delete(n);else{var a=this.#e.get(n);a&&(this.#n.set(n,a.effect),this.#e.delete(n),a.fragment.lastChild.remove(),this.anchor.before(a.fragment),r=a.effect)}for(const[i,l]of this.#t){if(this.#t.delete(i),i===t)break;const s=this.#e.get(l);s&&(Te(s.effect),this.#e.delete(l))}for(const[i,l]of this.#n){if(i===n||this.#r.has(i))continue;const s=()=>{if(Array.from(this.#t.values()).includes(i)){var u=document.createDocumentFragment();fa(l,u),u.append(Ze()),this.#e.set(i,{effect:l,fragment:u})}else Te(l);this.#r.delete(i),this.#n.delete(i)};this.#a||!r?(this.#r.add(i),Yn(l,s,!1)):s()}}};#o=t=>{this.#t.delete(t);const n=Array.from(this.#t.values());for(const[r,a]of this.#e)n.includes(r)||(Te(a.effect),this.#e.delete(r))};ensure(t,n){var r=L,a=Mr();if(n&&!this.#n.has(t)&&!this.#e.has(t))if(a){var i=document.createDocumentFragment(),l=Ze();i.append(l),this.#e.set(t,{effect:At(()=>n(l)),fragment:i})}else this.#n.set(t,At(()=>n(this.anchor)));if(this.#t.set(r,t),a){for(const[s,c]of this.#n)s===t?r.skipped_effects.delete(c):r.skipped_effects.add(c);for(const[s,c]of this.#e)s===t?r.skipped_effects.delete(c.effect):r.skipped_effects.add(c.effect);r.oncommit(this.#i),r.ondiscard(this.#o)}else this.#i()}}function Z(e,t,n=!1){var r=new wa(e),a=n?Mt:0;function i(l,s){r.ensure(l,s)}xr(()=>{var l=!1;t((s,c=!0)=>{l=!0,i(c,s)}),l||i(!1,null)},a)}function Pa(e,t,n){for(var r=[],a=t.length,i,l=t.length,s=0;s<a;s++){let d=t[s];Yn(d,()=>{if(i){if(i.pending.delete(d),i.done.add(d),i.pending.size===0){var v=e.outrogroups;Tn(Fn(i.done)),v.delete(i),v.size===0&&(e.outrogroups=null)}}else l-=1},!1)}if(l===0){var c=r.length===0&&n!==null;if(c){var u=n,f=u.parentNode;ra(f),f.append(u),e.items.clear()}Tn(t,!c)}else i={pending:new Set(t),done:new Set},(e.outrogroups??=new Set).add(i)}function Tn(e,t=!0){for(var n=0;n<e.length;n++)Te(e[n],t)}var ar;function Wn(e,t,n,r,a,i=null){var l=e,s=new Map,c=(t&cr)!==0;if(c){var u=e;l=u.appendChild(Ze())}var f=null,d=Rt(()=>{var y=n();return ur(y)?y:y==null?[]:Fn(y)}),v,m=!0;function _(){p.fallback=f,Ea(p,v,l,t,r),f!==null&&(v.length===0?(f.f&Re)===0?Gn(f):(f.f^=Re,kt(f,null,l)):Yn(f,()=>{f=null}))}var h=xr(()=>{v=o(d);for(var y=v.length,V=new Set,S=L,z=Mr(),K=0;K<y;K+=1){var Q=v[K],F=r(Q,K),Y=m?null:s.get(F);Y?(Y.v&&Tt(Y.v,Q),Y.i&&Tt(Y.i,K),z&&S.skipped_effects.delete(Y.e)):(Y=Sa(s,m?l:ar??=Ze(),Q,F,K,a,t,n),m||(Y.e.f|=Re),s.set(F,Y)),V.add(F)}if(y===0&&i&&!f&&(m?f=At(()=>i(l)):(f=At(()=>i(ar??=Ze())),f.f|=Re)),!m)if(z){for(const[I,P]of s)V.has(I)||S.skipped_effects.add(P.e);S.oncommit(_),S.ondiscard(()=>{})}else _();o(d)}),p={effect:h,items:s,outrogroups:null,fallback:f};m=!1}function Ea(e,t,n,r,a){var i=(r&yi)!==0,l=t.length,s=e.items,c=e.effect.first,u,f=null,d,v=[],m=[],_,h,p,y;if(i)for(y=0;y<l;y+=1)_=t[y],h=a(_,y),p=s.get(h).e,(p.f&Re)===0&&(p.nodes?.a?.measure(),(d??=new Set).add(p));for(y=0;y<l;y+=1){if(_=t[y],h=a(_,y),p=s.get(h).e,e.outrogroups!==null)for(const P of e.outrogroups)P.pending.delete(p),P.done.delete(p);if((p.f&Re)!==0)if(p.f^=Re,p===c)kt(p,null,n);else{var V=f?f.next:c;p===e.effect.last&&(e.effect.last=p.prev),p.prev&&(p.prev.next=p.next),p.next&&(p.next.prev=p.prev),ze(e,f,p),ze(e,p,V),kt(p,V,n),f=p,v=[],m=[],c=f.next;continue}if((p.f&_e)!==0&&(Gn(p),i&&(p.nodes?.a?.unfix(),(d??=new Set).delete(p))),p!==c){if(u!==void 0&&u.has(p)){if(v.length<m.length){var S=m[0],z;f=S.prev;var K=v[0],Q=v[v.length-1];for(z=0;z<v.length;z+=1)kt(v[z],S,n);for(z=0;z<m.length;z+=1)u.delete(m[z]);ze(e,K.prev,Q.next),ze(e,f,K),ze(e,Q,S),c=S,f=Q,y-=1,v=[],m=[]}else u.delete(p),kt(p,c,n),ze(e,p.prev,p.next),ze(e,p,f===null?e.effect.first:f.next),ze(e,f,p),f=p;continue}for(v=[],m=[];c!==null&&c!==p;)(u??=new Set).add(c),m.push(c),c=c.next;if(c===null)continue}(p.f&Re)===0&&v.push(p),f=p,c=p.next}if(e.outrogroups!==null){for(const P of e.outrogroups)P.pending.size===0&&(Tn(Fn(P.done)),e.outrogroups?.delete(P));e.outrogroups.size===0&&(e.outrogroups=null)}if(c!==null||u!==void 0){var F=[];if(u!==void 0)for(p of u)(p.f&_e)===0&&F.push(p);for(;c!==null;)(c.f&_e)===0&&c!==e.fallback&&F.push(c),c=c.next;var Y=F.length;if(Y>0){var I=(r&cr)!==0&&l===0?n:null;if(i){for(y=0;y<Y;y+=1)F[y].nodes?.a?.measure();for(y=0;y<Y;y+=1)F[y].nodes?.a?.fix()}Pa(e,F,I)}}i&&zn(()=>{if(d!==void 0)for(p of d)p.nodes?.a?.apply()})}function Sa(e,t,n,r,a,i,l,s){var c=(l&mi)!==0?(l&bi)===0?X(n,!1,!1):xt(n):null,u=(l&_i)!==0?xt(a):null;return{v:c,i:u,e:At(()=>(i(t,c??n,u??a,s),()=>{e.delete(r)}))}}function kt(e,t,n){if(e.nodes)for(var r=e.nodes.start,a=e.nodes.end,i=t&&(t.f&Re)===0?t.nodes.start:n;r!==null;){var l=Ft(r);if(i.before(r),r===a)return;r=l}}function ze(e,t,n){t===null?e.effect.first=n:t.next=n,n===null?e.effect.last=t:n.prev=t}function An(e,t,n,r,a){var i=t.$$slots?.[n],l=!1;i===!0&&(i=t[n==="default"?"children":n],l=!0),i===void 0?a!==null&&a(e):i(e,l?()=>r:r)}function Kr(e){var t,n,r="";if(typeof e=="string"||typeof e=="number")r+=e;else if(typeof e=="object")if(Array.isArray(e)){var a=e.length;for(t=0;t<a;t++)e[t]&&(n=Kr(e[t]))&&(r&&(r+=" "),r+=n)}else for(n in e)e[n]&&(r&&(r+=" "),r+=n);return r}function ka(){for(var e,t,n=0,r="",a=arguments.length;n<a;n++)(e=arguments[n])&&(t=Kr(e))&&(r&&(r+=" "),r+=t);return r}function $e(e){return typeof e=="object"?ka(e):e??""}function Ia(e,t,n){var r=e==null?"":""+e;return r===""?null:r}function Ma(e,t){return e==null?null:String(e)}function et(e,t,n,r,a,i){var l=e.__className;if(l!==n||l===void 0){var s=Ia(n);s==null?e.removeAttribute("class"):e.className=s,e.__className=n}return i}function Jn(e,t,n,r){var a=e.__style;if(a!==t){var i=Ma(t);i==null?e.removeAttribute("style"):e.style.cssText=i,e.__style=t}return r}const Ca=Symbol("is custom element"),Ra=Symbol("is html");function On(e,t,n,r){var a=xa(e);a[t]!==(a[t]=n)&&(t==="loading"&&(e[Ni]=n),n==null?e.removeAttribute(t):typeof n!="string"&&Ta(e).includes(t)?e[t]=n:e.setAttribute(t,n))}function xa(e){return e.__attributes??={[Ca]:e.nodeName.includes("-"),[Ra]:e.namespaceURI===Mi}}var or=new Map;function Ta(e){var t=e.getAttribute("is")||e.nodeName,n=or.get(t);if(n)return n;or.set(t,n=[]);for(var r,a=e,i=Element.prototype;i!==a;){r=dr(a);for(var l in r)r[l].set&&n.push(l);a=Dn(a)}return n}function Aa(e,t,n=t){var r=new WeakSet;aa(e,"input",async a=>{var i=a?e.defaultValue:e.value;if(i=Pn(e)?En(i):i,n(i),L!==null&&r.add(L),await ha(),i!==(i=t())){var l=e.selectionStart,s=e.selectionEnd,c=e.value.length;if(e.value=i??"",s!==null){var u=e.value.length;l===s&&s===c&&u>c?(e.selectionStart=u,e.selectionEnd=u):(e.selectionStart=l,e.selectionEnd=Math.min(s,u))}}}),w(t)==null&&e.value&&(n(Pn(e)?En(e.value):e.value),L!==null&&r.add(L)),Vn(()=>{var a=t();if(e===document.activeElement){var i=Bt??L;if(r.has(i))return}Pn(e)&&a===En(e.value)||e.type==="date"&&!a&&!e.value||a!==e.value&&(e.value=a??"")})}function Pn(e){var t=e.type;return t==="number"||t==="range"}function En(e){return e===""?null:+e}function Oa(e){return function(...t){var n=t[0];return n.preventDefault(),e?.apply(this,t)}}function sn(e=!1){const t=ee,n=t.l.u;if(!n)return;let r=()=>W(t.s);if(e){let a=0,i={};const l=an(()=>{let s=!1;const c=t.s;for(const u in c)c[u]!==i[u]&&(i[u]=c[u],s=!0);return s&&a++,a});r=()=>o(l)}n.b.length&&sa(()=>{sr(t,r),In(n.b)}),tr(()=>{const a=w(()=>n.m.map(Ti));return()=>{for(const i of a)typeof i=="function"&&i()}}),n.a.length&&tr(()=>{sr(t,r),In(n.a)})}function sr(e,t){if(e.l.s)for(const n of e.l.s)o(n);t()}function qr(e,t,n){if(e==null)return t(void 0),kn;const r=w(()=>e.subscribe(t,n));return r.unsubscribe?()=>r.unsubscribe():r}function Na(e){let t;return qr(e,n=>t=n)(),t}let Kt=!1,Nn=Symbol();function La(e,t,n){const r=n[t]??={store:null,source:X(void 0),unsubscribe:kn};if(r.store!==e&&!(Nn in n))if(r.unsubscribe(),r.store=e??null,e==null)r.source.v=void 0,r.unsubscribe=kn;else{var a=!0;r.unsubscribe=qr(e,i=>{a?r.source.v=i:O(r.source,i)}),a=!1}return e&&Nn in n?Na(e):o(r.source)}function Fa(){const e={};function t(){qn(()=>{for(var n in e)e[n].unsubscribe();fr(e,Nn,{enumerable:!1,value:!0})})}return[e,t]}function Da(e){var t=Kt;try{return Kt=!1,[e(),Kt]}finally{Kt=t}}function U(e,t,n,r){var a=!Nt||(n&wi)!==0,i=(n&Ei)!==0,l=(n&Si)!==0,s=r,c=!0,u=()=>(c&&(c=!1,s=l?w(r):r),s),f;if(i){var d=pt in e||Oi in e;f=qt(e,t)?.set??(d&&t in e?S=>e[t]=S:void 0)}var v,m=!1;i?[v,m]=Da(()=>e[t]):v=e[t],v===void 0&&r!==void 0&&(v=u(),f&&(a&&Hi(),f(v)));var _;if(a?_=()=>{var S=e[t];return S===void 0?u():(c=!0,S)}:_=()=>{var S=e[t];return S!==void 0&&(s=void 0),S===void 0?s:S},a&&(n&Pi)===0)return _;if(f){var h=e.$$legacy;return(function(S,z){return arguments.length>0?((!a||!z||h||m)&&f(z?_():S),S):_()})}var p=!1,y=((n&gi)!==0?an:Rt)(()=>(p=!1,_()));i&&o(y);var V=H;return(function(S,z){if(arguments.length>0){const K=z?o(y):a&&i?dt(S):S;return O(y,K),p=!0,s!==void 0&&(s=K),S}return rt&&p||(V.f&xe)!==0?y.v:o(y)})}const Ua="https://api.reevit.io";function ja(e,t){return{code:t?.code||"payment_link_error",message:t?.message||"Payment link request failed",recoverable:!0,details:{httpStatus:e.status,...t?.details||{}}}}function Ha(e){const t=e.toLowerCase();return t.includes("paystack")?"paystack":t.includes("hubtel")?"hubtel":t.includes("flutterwave")?"flutterwave":t.includes("stripe")?"stripe":t.includes("monnify")?"monnify":t.includes("mpesa")||t.includes("m-pesa")?"mpesa":"paystack"}function za(e){const t=e.toLowerCase().trim();return t==="card"?"card":t==="mobile_money"||t==="momo"||t==="mobilemoney"?"mobile_money":t==="bank"||t==="bank_transfer"||t==="transfer"?"bank_transfer":null}function Ka(e){if(!(!e||e.length===0))return e.map(t=>{const n=t.methods.map(r=>za(r)).filter(Boolean);return{provider:t.provider,name:t.name,methods:n,countries:t.countries}}).filter(t=>t.methods.length>0)}function qa(e,t){return{id:e.id,clientSecret:e.client_secret,pspPublicKey:e.psp_public_key,pspCredentials:e.psp_credentials,amount:e.amount,currency:e.currency,status:e.status,recommendedPsp:Ha(e.provider),availableMethods:t.paymentMethods||["card","mobile_money"],reference:e.reference||t.reference,connectionId:e.connection_id,provider:e.provider,feeAmount:e.fee_amount,feeCurrency:e.fee_currency,netAmount:e.net_amount,metadata:t.metadata,availableProviders:Ka(e.available_psps),branding:e.branding}}function Br(e){const{config:t,onSuccess:n,onError:r,onClose:a,onStateChange:i,apiBaseUrl:l}=e;let s=x.createInitialState();t.initialPaymentIntent&&(s={...s,status:"ready",paymentIntent:t.initialPaymentIntent,selectedMethod:t.initialPaymentIntent.availableMethods?.length===1?t.initialPaymentIntent.availableMethods[0]:null});const c=new Set,u=new x.ReevitAPIClient({publicKey:t.publicKey,baseUrl:l}),f=()=>{c.forEach(k=>k(s))},d=k=>{const R=s.status;s=x.reevitReducer(s,k),f(),s.status!==R&&i?.(s.status)},v=k=>(c.add(k),k(s),()=>c.delete(k)),m=async(k,R)=>{d({type:"INIT_START"});try{const T=t.reference||x.generateReference(),q=x.detectCountryFromCurrency(t.currency),b=t.paymentMethods&&t.paymentMethods.length===1?t.paymentMethods[0]:void 0,de=k??b;let we,se;if(t.paymentLinkCode){const ve=await fetch(`${l||Ua}/v1/pay/${t.paymentLinkCode}/pay`,{method:"POST",headers:{"Content-Type":"application/json","Idempotency-Key":`${Date.now()}-${Math.random().toString(36).substring(2,15)}`},body:JSON.stringify({amount:t.amount,email:t.email||"",name:t.customerName||"",phone:t.phone||"",method:de,country:q,provider:R?.preferredProvider||R?.allowedProviders?.[0],custom_fields:t.customFields})}),yt=await ve.json().catch(()=>({}));ve.ok?we=yt:se=ja(ve,yt)}else{const ve=await u.createPaymentIntent({...t,reference:T},de,q,{preferredProviders:R?.preferredProvider?[R.preferredProvider]:void 0,allowedProviders:R?.allowedProviders});we=ve.data,se=ve.error}if(se){d({type:"INIT_ERROR",payload:se}),r?.(se);return}if(!we){const ve={code:"INIT_FAILED",message:"No data received from API",recoverable:!0};d({type:"INIT_ERROR",payload:ve}),r?.(ve);return}const cn=qa(we,{...t,reference:T});d({type:"INIT_SUCCESS",payload:cn})}catch(T){const q={code:"INIT_FAILED",message:T instanceof Error?T.message:"Failed to initialize checkout",recoverable:!0,originalError:T};d({type:"INIT_ERROR",payload:q}),r?.(q)}},_=k=>{d({type:"SELECT_METHOD",payload:k})},h=async k=>{if(!(!s.paymentIntent||!s.selectedMethod)){d({type:"PROCESS_START"});try{let R;if(s.paymentIntent.clientSecret){const{data:q,error:b}=await u.confirmPaymentIntent(s.paymentIntent.id,s.paymentIntent.clientSecret);if(b){d({type:"PROCESS_ERROR",payload:b}),r?.(b);return}R=q}else{const{data:q,error:b}=await u.confirmPayment(s.paymentIntent.id);if(b){d({type:"PROCESS_ERROR",payload:b}),r?.(b);return}R=q}const T={paymentId:s.paymentIntent.id,reference:k.reference||s.paymentIntent.reference||s.paymentIntent.metadata?.reference||"",amount:s.paymentIntent.amount,currency:s.paymentIntent.currency,paymentMethod:s.selectedMethod,psp:s.paymentIntent.recommendedPsp,pspReference:k.pspReference||R?.provider_ref_id||"",status:"success",metadata:k};d({type:"PROCESS_SUCCESS",payload:T}),n?.(T)}catch(R){const T={code:"PAYMENT_FAILED",message:R instanceof Error?R.message:"Payment failed",recoverable:!0,originalError:R};d({type:"PROCESS_ERROR",payload:T}),r?.(T)}}};return{subscribe:v,initialize:m,selectMethod:_,processPayment:h,handlePspSuccess:async k=>{await h(k)},handlePspError:k=>{d({type:"PROCESS_ERROR",payload:k}),r?.(k)},reset:()=>{d({type:"RESET"})},close:async()=>{if(s.paymentIntent&&s.status!=="success")try{await u.cancelPaymentIntent(s.paymentIntent.id)}catch{}d({type:"CLOSE"}),a?.()},getStatus:()=>s.status,getPaymentIntent:()=>s.paymentIntent,getSelectedMethod:()=>s.selectedMethod,getError:()=>s.error,getResult:()=>s.result,isLoading:()=>s.status==="loading"||s.status==="processing",isReady:()=>s.status==="ready"||s.status==="method_selected",isComplete:()=>s.status==="success",canRetry:()=>s.error?.recoverable??!1}}var Ba=A('<div class="reevit-method-selector__label">Select payment method</div>'),Va=A('<span class="reevit-method-option__description"> </span>'),Ya=A('<span class="reevit-method-option__check"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linecap="round" stroke-linejoin="round"><polyline points="20 6 9 17 4 12"></polyline></svg></span>'),Ga=A('<span class="reevit-method-option__chevron"><svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><polyline points="9 18 15 12 9 6"></polyline></svg></span>'),Wa=A('<button type="button"><span class="reevit-method-option__icon-wrapper"><span class="reevit-method-option__icon"> </span></span> <div class="reevit-method-option__content"><span class="reevit-method-option__label"> </span> <!></div> <!></button>'),Ja=A("<div><!> <div></div></div>");function Zn(e,t){tn(t,!1);const n=X(),r=X();let a=U(t,"methods",8),i=U(t,"selected",8);U(t,"provider",8,void 0);let l=U(t,"layout",8,"list"),s=U(t,"showLabel",8,!0);const c=vt.createEventDispatcher();function u(_){c("select",_)}te(()=>W(l()),()=>{O(n,l()==="grid")}),te(()=>W(a()),()=>{O(r,[{id:"card",name:"Card",icon:"💳",description:"Pay with Visa, Mastercard, or other cards"},{id:"mobile_money",name:"Mobile Money",icon:"📱",description:"MTN, Vodafone Cash, AirtelTigo Money"},{id:"bank_transfer",name:"Bank Transfer",icon:"🏦",description:"Pay directly from your bank account"}].filter(_=>a().includes(_.id)))}),Bn(),sn();var f=Ja(),d=g(f);{var v=_=>{var h=Ba();E(_,h)};Z(d,_=>{s()&&_(v)})}var m=B(d,2);Wn(m,7,()=>o(r),_=>_.id,(_,h,p)=>{var y=Wa(),V=g(y),S=g(V),z=g(S),K=B(V,2),Q=g(K),F=g(Q),Y=B(Q,2);{var I=M=>{var k=Va(),R=g(k);$(()=>me(R,(o(h),w(()=>o(h).description)))),E(M,k)};Z(Y,M=>{o(n)||M(I)})}var P=B(K,2);{var D=M=>{var k=ut(),R=Ke(k);{var T=b=>{var de=Ya();E(b,de)},q=b=>{var de=Ga();E(b,de)};Z(R,b=>{W(i()),o(h),w(()=>i()===o(h).id)?b(T):b(q,!1)})}E(M,k)};Z(P,M=>{o(n)||M(D)})}$(M=>{et(y,1,M),Jn(y,`animation-delay: ${o(p)*.05}s`),me(z,(o(h),w(()=>o(h).icon))),me(F,(o(h),w(()=>o(h).name)))},[()=>$e((W(x.cn),o(n),W(i()),o(h),w(()=>x.cn("reevit-method-option",o(n)?"reevit-method-option--grid":"reevit-method-option--list",i()===o(h).id&&"reevit-method-option--selected"))))]),ue("click",y,()=>u(o(h).id)),E(_,y)}),$((_,h)=>{et(f,1,_),et(m,1,h)},[()=>$e((W(x.cn),o(n),w(()=>x.cn("reevit-method-selector",o(n)&&"reevit-method-selector--grid")))),()=>$e((W(x.cn),o(n),w(()=>x.cn("reevit-method-selector__options",o(n)?"reevit-method-selector__options--grid":"reevit-method-selector__options--list"))))]),E(e,f),nn()}var Za=A('<img alt="" class="reevit-psp-option__logo-img" loading="lazy"/>'),Qa=A('<span class="reevit-psp-option__logo-fallback"> </span>'),Xa=A('<div class="reevit-psp-accordion__content reevit-animate-fade-in"><div class="reevit-psp-methods"><!></div> <!></div>'),$a=A('<div class="reevit-psp-accordion"><button type="button"><span class="reevit-psp-option__logo" aria-hidden="true"><!></span> <div class="reevit-psp-option__content"><span class="reevit-psp-option__name"> </span> <span class="reevit-psp-option__methods"> </span></div></button> <!></div>'),eo=A('<div class="reevit-psp-selector"><div class="reevit-psp-selector__label">Select payment provider</div> <div class="reevit-psp-selector__options"></div></div>');function Vr(e,t){tn(t,!1);let n=U(t,"providers",24,()=>[]),r=U(t,"selectedProvider",8,null),a=U(t,"disabled",8,!1);U(t,"theme",8,void 0);let i=U(t,"selectedMethod",8,null);const l=vt.createEventDispatcher(),s={paystack:"https://reevit.io/images/providers/paystack.png",stripe:"https://reevit.io/images/providers/stripe.png",flutterwave:"https://reevit.io/images/providers/flutterwave.png",hubtel:"https://reevit.io/images/providers/hubtel.png",monnify:"https://reevit.io/images/providers/monnify.png",mpesa:"https://reevit.io/images/providers/mpesa.png"},c={card:"Card",mobile_money:"Mobile Money",bank_transfer:"Bank Transfer"},u=_=>_.length?_.map(h=>c[h]).join(", "):"Payment methods",f=(_,h)=>_.toLowerCase().includes("hubtel")?h.filter(p=>p==="card"||p==="mobile_money"):h;function d(_){l("select",_)}sn();var v=eo(),m=B(g(v),2);Wn(m,5,n,_=>_.provider,(_,h)=>{const p=Rt(()=>(W(r()),o(h),w(()=>r()===o(h).provider))),y=Rt(()=>(o(h),w(()=>f(o(h).provider,o(h).methods))));var V=$a(),S=g(V),z=g(S),K=g(z);{var Q=T=>{var q=Za();$(()=>On(q,"src",(o(h),w(()=>s[o(h).provider])))),E(T,q)},F=T=>{var q=Qa(),b=g(q);$(de=>me(b,de),[()=>(o(h),w(()=>o(h).name.slice(0,1).toUpperCase()))]),E(T,q)};Z(K,T=>{o(h),w(()=>s[o(h).provider])?T(Q):T(F,!1)})}var Y=B(z,2),I=g(Y),P=g(I),D=B(I,2),M=g(D),k=B(S,2);{var R=T=>{var q=Xa(),b=g(q),de=g(b);Zn(de,{get methods(){return o(y)},get selected(){return i()},get provider(){return o(h),w(()=>o(h).provider)},layout:"list",showLabel:!1,$$events:{select:se=>l("methodSelect",se.detail)}});var we=B(b,2);An(we,t,"method-content",{},null),E(T,q)};Z(k,T=>{o(p)&&T(R)})}$((T,q)=>{et(S,1,T),S.disabled=a(),On(S,"aria-expanded",o(p)),me(P,(o(h),w(()=>o(h).name))),me(M,q)},[()=>$e((W(x.cn),W(o(p)),W(a()),w(()=>x.cn("reevit-psp-option",o(p)&&"reevit-psp-option--selected",a()&&"reevit-psp-option--disabled")))),()=>(W(o(y)),w(()=>u(o(y))))]),ue("click",S,()=>d(o(h).provider)),E(_,V)}),E(e,v),nn()}var to=A('<button type="button"><div class="reevit-network-dot"></div> </button>'),no=A('<p class="reevit-error-message"> </p>'),ro=A('<button type="button" class="reevit-btn reevit-btn--secondary">Back</button>'),io=A('<span class="reevit-spinner"></span>'),ao=A("<span>Continue</span>"),oo=A('<form class="reevit-momo-form"><div class="reevit-form-group"><label class="reevit-label" for="reevit-phone">Phone Number</label> <input id="reevit-phone" type="tel" placeholder="e.g. 024 123 4567" autocomplete="tel"/></div> <div class="reevit-network-selector"><label class="reevit-label" for="reevit-network-grid">Select Network</label> <div id="reevit-network-grid" class="reevit-networks-grid"></div></div> <!> <div class="reevit-momo-form__actions"><!> <button type="submit" class="reevit-btn reevit-btn--primary"><!></button></div> <p class="reevit-secure-text">🔒 Secure mobile money payment via Reevit</p></form>');function Ln(e,t){tn(t,!1);let n=U(t,"initialPhone",8,""),r=U(t,"loading",8,!1),a=U(t,"hideCancel",8,!1);const i=vt.createEventDispatcher();let l=X(n()),s=X(null),c=X(null);function u(){if(!x.validatePhone(o(l))){O(c,"Please enter a valid phone number");return}if(!o(s)){O(c,"Please select your mobile network");return}i("submit",{phone:o(l),network:o(s)})}const f=[{id:"mtn",name:"MTN",color:"#FFCC00"},{id:"vodafone",name:"Vodafone",color:"#E60000"},{id:"airteltigo",name:"AirtelTigo",color:"#005596"}];te(()=>(o(l),o(c)),()=>{const I=x.detectNetwork(o(l));I&&O(s,I),o(c)&&O(c,null)}),Bn(),sn();var d=oo(),v=g(d),m=B(g(v),2),_=B(v,2),h=B(g(_),2);Wn(h,5,()=>f,I=>I.id,(I,P)=>{var D=to(),M=g(D),k=B(M);$(R=>{et(D,1,R),D.disabled=r(),Jn(M,`background-color: ${o(P),w(()=>o(P).color)??""}`),me(k,` ${o(P),w(()=>o(P).name)??""}`)},[()=>$e((W(x.cn),o(s),o(P),w(()=>x.cn("reevit-network-btn",o(s)===o(P).id&&"reevit-network-btn--selected"))))]),ue("click",D,()=>O(s,o(P).id)),E(I,D)});var p=B(_,2);{var y=I=>{var P=no(),D=g(P);$(()=>me(D,o(c))),E(I,P)};Z(p,I=>{o(c)&&I(y)})}var V=B(p,2),S=g(V);{var z=I=>{var P=ro();$(()=>P.disabled=r()),ue("click",P,()=>i("cancel")),E(I,P)};Z(S,I=>{a()||I(z)})}var K=B(S,2),Q=g(K);{var F=I=>{var P=io();E(I,P)},Y=I=>{var P=ao();E(I,P)};Z(Q,I=>{r()?I(F):I(Y,!1)})}$(I=>{et(m,1,I),m.disabled=r(),K.disabled=r()||!o(l)},[()=>$e((W(x.cn),o(c),W(x.validatePhone),o(l),w(()=>x.cn("reevit-input",o(c)&&!x.validatePhone(o(l))&&"reevit-input--error"))))]),Aa(m,()=>o(l),I=>O(l,I)),ue("submit",d,Oa(u)),E(e,d),nn()}class so{constructor(t){this.baseUrl="https://unified-pay.hubtel.com",this.messageHandler=null,this.stylesInjected=!1,t&&(this.baseUrl=t)}redirect({purchaseInfo:t,config:n}){const r=this.createCheckoutUrl(t,n),a=window.open(r);if(!a||a.closed||typeof a.closed>"u")throw new Error("Popup was blocked by the browser. Please allow popups for this site.")}initIframe({purchaseInfo:t,callBacks:n,config:r,iframeStyle:a}){var i,l,s;this.registerEvents(n);const c=document.getElementById("hubtel-checkout-iframe");if(!c)throw new Error('Container element with id "hubtel-checkout-iframe" not found in the DOM.');c.innerHTML="";const u=document.createElement("div");u.textContent="Loading...",c.appendChild(u);const f=document.createElement("iframe");f.setAttribute("id","hubtel-iframe-element"),f.src=this.createCheckoutUrl(t,r),f.style.display="none",f.style.width=(i=a?.width)!==null&&i!==void 0?i:"100%",f.style.height=(l=a?.height)!==null&&l!==void 0?l:"100%",f.style.minHeight=a?.minHeight||"400px",f.style.border=(s=a?.border)!==null&&s!==void 0?s:"none",f.onload=()=>{var d;c.removeChild(u),f.style.display="block",(d=n.onLoad)===null||d===void 0||d.call(n)},c.appendChild(f)}openModal({purchaseInfo:t,callBacks:n,config:r}){this.injectStyles(),this.createIframe(),this.handleBackButton(),this.registerEvents(n),this.renderWebpageInPopup(this.createCheckoutUrl(t,r),n.onClose,n.onLoad)}createCheckoutUrl(t,n){const r=Object.assign(Object.assign({},t),n),a=Object.keys(r).reduce((u,f)=>(r[f]!==null&&r[f]!==void 0&&(u[f]=r[f]),u),{}),i=Object.keys(a).map(u=>`${u}=${encodeURIComponent(a[u])}`).join("&"),l=this.encodeBase64(i),s=encodeURIComponent(l);return`${a?.branding==="disabled"?`${this.baseUrl}/pay/direct`:`${this.baseUrl}/pay`}?p=${s}`}encodeBase64(t){return btoa(unescape(encodeURIComponent(t)))}handleBackButton(){window.addEventListener("popstate",()=>{this.closePopUp()})}createIframe(){const t=document.createElement("div");t.setAttribute("id","backdrop"),t.classList.add("backdrop");const n=document.createElement("span");n.classList.add("checkout-loader"),t.appendChild(n),document.body.appendChild(t)}registerEvents(t){this.messageHandler&&window.removeEventListener("message",this.messageHandler,!1);const n=r=>{var a,i,l,s,c,u;if(r.origin!==this.baseUrl)return;const{data:f}=r;if(f.success===!0)(a=t.onPaymentSuccess)===null||a===void 0||a.call(t,f);else if(f.success===!1)(i=t.onPaymentFailure)===null||i===void 0||i.call(t,f);else if(f.initialized)(l=t.init)===null||l===void 0||l.call(t,f),(s=t.onInit)===null||s===void 0||s.call(t,f);else if(f.feesChanged)(c=t.onFeesChanged)===null||c===void 0||c.call(t,f.fees);else if(f.resize){const d=document.getElementById("hubtel-iframe-element");d&&(d.style.height=f.height+"px"),(u=t?.onResize)===null||u===void 0||u.call(t,f)}};this.messageHandler=n,window.addEventListener("message",n,!1)}destroy(){this.messageHandler&&(window.removeEventListener("message",this.messageHandler,!1),this.messageHandler=null)}renderWebpageInPopup(t,n,r){const a=document.createElement("div");a.classList.add("checkout-modal");const i=document.createElement("div");i.setAttribute("id","checkout-close-icon"),i.innerHTML="×",i.classList.add("close-icon"),i.addEventListener("click",()=>{this.closePopUp(),n?.()}),a.appendChild(i);const l=document.createElement("iframe");l.src=t,history.pushState({modalOpen:!0},""),l.classList.add("iframe"),a.appendChild(l),document.body.appendChild(a),a.style.opacity="0",l.addEventListener("load",()=>{a.style.opacity="1",r?.()})}closePopUp(){const t=document.querySelector(".backdrop"),n=document.querySelector(".checkout-modal");t&&document.body.removeChild(t),n&&document.body.removeChild(n),history.replaceState(null,""),window.removeEventListener("popstate",this.closePopUp)}injectStyles(){if(this.stylesInjected)return;const t=document.createElement("style");t.type="text/css",t.setAttribute("data-hubtel-checkout","true"),t.innerHTML=`
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const pt=require("svelte"),R=require("@reevit/core"),mi="5";typeof window<"u"&&((window.__svelte??={}).v??=new Set).add(mi);let Lt=!1,_i=!1;function yi(){Lt=!0}yi();const bi=1,gi=2,ur=4,wi=8,Pi=16,Ei=1,Si=2,ki=4,Ci=8,Ii=16,Mi=1,xi=2,ae=Symbol(),Ri="http://www.w3.org/1999/xhtml",Cn=!1;var fr=Array.isArray,Ti=Array.prototype.indexOf,Dn=Array.from,dr=Object.defineProperty,Kt=Object.getOwnPropertyDescriptor,vr=Object.getOwnPropertyDescriptors,Ai=Object.prototype,Oi=Array.prototype,Un=Object.getPrototypeOf;const In=()=>{};function Ni(e){return e()}function Mn(e){for(var t=0;t<e.length;t++)e[t]()}function pr(){var e,t,n=new Promise((r,o)=>{e=r,t=o});return{promise:n,resolve:e,reject:t}}const ie=2,hr=4,en=8,Li=1<<24,Oe=16,Ne=32,_t=64,jn=128,Se=512,ne=1024,pe=2048,ke=4096,ye=8192,Re=16384,Hn=32768,Mt=65536,$n=1<<17,mr=1<<18,tn=1<<19,_r=1<<20,xe=1<<25,nt=32768,xn=1<<21,zn=1<<22,Ke=1<<23,ht=Symbol("$state"),Fi=Symbol("legacy props"),Di=Symbol(""),dt=new class extends Error{name="StaleReactionError";message="The reaction that called `getAbortSignal()` was re-run or destroyed"};function Ui(){throw new Error("https://svelte.dev/e/async_derived_orphan")}function ji(e){throw new Error("https://svelte.dev/e/effect_in_teardown")}function Hi(){throw new Error("https://svelte.dev/e/effect_in_unowned_derived")}function zi(e){throw new Error("https://svelte.dev/e/effect_orphan")}function Bi(){throw new Error("https://svelte.dev/e/effect_update_depth_exceeded")}function Ki(e){throw new Error("https://svelte.dev/e/props_invalid_value")}function qi(){throw new Error("https://svelte.dev/e/state_descriptors_fixed")}function Vi(){throw new Error("https://svelte.dev/e/state_prototype_fixed")}function Yi(){throw new Error("https://svelte.dev/e/state_unsafe_mutation")}function yr(e){return e===this.v}function Gi(e,t){return e!=e?t==t:e!==t||e!==null&&typeof e=="object"||typeof e=="function"}function br(e){return!Gi(e,this.v)}let ee=null;function Vt(e){ee=e}function nn(e,t=!1,n){ee={p:ee,i:!1,c:null,e:null,s:e,x:null,l:Lt&&!t?{s:null,u:null,$:[]}:null}}function rn(e){var t=ee,n=t.e;if(n!==null){t.e=null;for(var r of n)Rr(r)}return t.i=!0,ee=t.p,{}}function Ft(){return!Lt||ee!==null&&ee.l===null}let Ze=[];function gr(){var e=Ze;Ze=[],Mn(e)}function Bn(e){if(Ze.length===0&&!It){var t=Ze;queueMicrotask(()=>{t===Ze&&gr()})}Ze.push(e)}function Wi(){for(;Ze.length>0;)gr()}function Ji(e){var t=z;if(t===null)return N.f|=Ke,e;if((t.f&Hn)===0){if((t.f&jn)===0)throw e;t.b.error(e)}else Yt(e,t)}function Yt(e,t){for(;t!==null;){if((t.f&jn)!==0)try{t.b.error(e);return}catch(n){e=n}t=t.parent}throw e}const zt=new Set;let L=null,qt=null,we=null,ge=[],on=null,Rn=!1,It=!1;class xt{committed=!1;current=new Map;previous=new Map;#t=new Set;#n=new Set;#e=0;#r=0;#o=null;#i=new Set;#a=new Set;skipped_effects=new Set;is_fork=!1;is_deferred(){return this.is_fork||this.#r>0}process(t){ge=[],qt=null,this.apply();var n={parent:null,effect:null,effects:[],render_effects:[]};for(const r of t)this.#l(r,n);this.is_fork||this.#u(),this.is_deferred()?(this.#s(n.effects),this.#s(n.render_effects)):(qt=this,L=null,er(n.render_effects),er(n.effects),qt=null,this.#o?.resolve()),we=null}#l(t,n){t.f^=ne;for(var r=t.first;r!==null;){var o=r.f,i=(o&(Ne|_t))!==0,l=i&&(o&ne)!==0,s=l||(o&ye)!==0||this.skipped_effects.has(r);if((r.f&jn)!==0&&r.b?.is_pending()&&(n={parent:n,effect:r,effects:[],render_effects:[]}),!s&&r.fn!==null){i?r.f^=ne:(o&hr)!==0?n.effects.push(r):yt(r)&&((r.f&Oe)!==0&&this.#i.add(r),mt(r));var c=r.first;if(c!==null){r=c;continue}}var u=r.parent;for(r=r.next;r===null&&u!==null;)u===n.effect&&(this.#s(n.effects),this.#s(n.render_effects),n=n.parent),r=u.next,u=u.parent}}#s(t){for(const n of t)(n.f&pe)!==0?this.#i.add(n):(n.f&ke)!==0&&this.#a.add(n),this.#c(n.deps),re(n,ne)}#c(t){if(t!==null)for(const n of t)(n.f&ie)===0||(n.f&nt)===0||(n.f^=nt,this.#c(n.deps))}capture(t,n){this.previous.has(t)||this.previous.set(t,n),(t.f&Ke)===0&&(this.current.set(t,t.v),we?.set(t,t.v))}activate(){L=this,this.apply()}deactivate(){L===this&&(L=null,we=null)}flush(){if(this.activate(),ge.length>0){if(wr(),L!==null&&L!==this)return}else this.#e===0&&this.process([]);this.deactivate()}discard(){for(const t of this.#n)t(this);this.#n.clear()}#u(){if(this.#r===0){for(const t of this.#t)t();this.#t.clear()}this.#e===0&&this.#f()}#f(){if(zt.size>1){this.previous.clear();var t=we,n=!0,r={parent:null,effect:null,effects:[],render_effects:[]};for(const i of zt){if(i===this){n=!1;continue}const l=[];for(const[c,u]of this.current){if(i.current.has(c))if(n&&u!==i.current.get(c))i.current.set(c,u);else continue;l.push(c)}if(l.length===0)continue;const s=[...i.current.keys()].filter(c=>!this.current.has(c));if(s.length>0){var o=ge;ge=[];const c=new Set,u=new Map;for(const f of l)Pr(f,s,c,u);if(ge.length>0){L=i,i.apply();for(const f of ge)i.#l(f,r);i.deactivate()}ge=o}}L=null,we=t}this.committed=!0,zt.delete(this)}increment(t){this.#e+=1,t&&(this.#r+=1)}decrement(t){this.#e-=1,t&&(this.#r-=1),this.revive()}revive(){for(const t of this.#i)this.#a.delete(t),re(t,pe),rt(t);for(const t of this.#a)re(t,ke),rt(t);this.flush()}oncommit(t){this.#t.add(t)}ondiscard(t){this.#n.add(t)}settled(){return(this.#o??=pr()).promise}static ensure(){if(L===null){const t=L=new xt;zt.add(L),It||xt.enqueue(()=>{L===t&&t.flush()})}return L}static enqueue(t){Bn(t)}apply(){}}function Zi(e){var t=It;It=!0;try{for(var n;;){if(Wi(),ge.length===0&&(L?.flush(),ge.length===0))return on=null,n;wr()}}finally{It=t}}function wr(){var e=Xe;Rn=!0;var t=null;try{var n=0;for(Zt(!0);ge.length>0;){var r=xt.ensure();if(n++>1e3){var o,i;Qi()}r.process(ge),qe.clear()}}finally{Rn=!1,Zt(e),on=null}}function Qi(){try{Bi()}catch(e){Yt(e,on)}}let Me=null;function er(e){var t=e.length;if(t!==0){for(var n=0;n<t;){var r=e[n++];if((r.f&(Re|ye))===0&&yt(r)&&(Me=new Set,mt(r),r.deps===null&&r.first===null&&r.nodes===null&&(r.teardown===null&&r.ac===null?Nr(r):r.fn=null),Me?.size>0)){qe.clear();for(const o of Me){if((o.f&(Re|ye))!==0)continue;const i=[o];let l=o.parent;for(;l!==null;)Me.has(l)&&(Me.delete(l),i.push(l)),l=l.parent;for(let s=i.length-1;s>=0;s--){const c=i[s];(c.f&(Re|ye))===0&&mt(c)}}Me.clear()}}Me=null}}function Pr(e,t,n,r){if(!n.has(e)&&(n.add(e),e.reactions!==null))for(const o of e.reactions){const i=o.f;(i&ie)!==0?Pr(o,t,n,r):(i&(zn|Oe))!==0&&(i&pe)===0&&Er(o,t,r)&&(re(o,pe),rt(o))}}function Er(e,t,n){const r=n.get(e);if(r!==void 0)return r;if(e.deps!==null)for(const o of e.deps){if(t.includes(o))return!0;if((o.f&ie)!==0&&Er(o,t,n))return n.set(o,!0),!0}return n.set(e,!1),!1}function rt(e){for(var t=on=e;t.parent!==null;){t=t.parent;var n=t.f;if(Rn&&t===z&&(n&Oe)!==0&&(n&mr)===0)return;if((n&(_t|Ne))!==0){if((n&ne)===0)return;t.f^=ne}}ge.push(t)}function Xi(e,t,n,r){const o=Ft()?an:Rt;if(n.length===0&&e.length===0){r(t.map(o));return}var i=L,l=z,s=$i();function c(){Promise.all(n.map(u=>eo(u))).then(u=>{s();try{r([...t.map(o),...u])}catch(f){(l.f&Re)===0&&Yt(f,l)}i?.deactivate(),Gt()}).catch(u=>{Yt(u,l)})}e.length>0?Promise.all(e).then(()=>{s();try{return c()}finally{i?.deactivate(),Gt()}}):c()}function $i(){var e=z,t=N,n=ee,r=L;return function(i=!0){Ve(e),Ie(t),Vt(n),i&&r?.activate()}}function Gt(){Ve(null),Ie(null),Vt(null)}function an(e){var t=ie|pe,n=N!==null&&(N.f&ie)!==0?N:null;return z!==null&&(z.f|=tn),{ctx:ee,deps:null,effects:null,equals:yr,f:t,fn:e,reactions:null,rv:0,v:ae,wv:0,parent:n??z,ac:null}}function eo(e,t){let n=z;n===null&&Ui();var r=n.b,o=void 0,i=Tt(ae),l=!N,s=new Map;return fo(()=>{var c=pr();o=c.promise;try{Promise.resolve(e()).then(c.resolve,c.reject).then(()=>{u===L&&u.committed&&u.deactivate(),Gt()})}catch(v){c.reject(v),Gt()}var u=L;if(l){var f=!r.is_pending();r.update_pending_count(1),u.increment(f),s.get(u)?.reject(dt),s.delete(u),s.set(u,c)}const d=(v,m=void 0)=>{if(u.activate(),m)m!==dt&&(i.f|=Ke,At(i,m));else{(i.f&Ke)!==0&&(i.f^=Ke),At(i,v);for(const[_,h]of s){if(s.delete(_),_===u)break;h.reject(dt)}}l&&(r.update_pending_count(-1),u.decrement(f))};c.promise.then(d,v=>d(null,v||"unknown"))}),qn(()=>{for(const c of s.values())c.reject(dt)}),new Promise(c=>{function u(f){function d(){f===o?c(i):u(o)}f.then(d,d)}u(o)})}function Rt(e){const t=an(e);return t.equals=br,t}function Sr(e){var t=e.effects;if(t!==null){e.effects=null;for(var n=0;n<t.length;n+=1)Te(t[n])}}function to(e){for(var t=e.parent;t!==null;){if((t.f&ie)===0)return(t.f&Re)===0?t:null;t=t.parent}return null}function Kn(e){var t,n=z;Ve(to(e));try{e.f&=~nt,Sr(e),t=Hr(e)}finally{Ve(n)}return t}function kr(e){var t=Kn(e);if(e.equals(t)||(L?.is_fork||(e.v=t),e.wv=Ur()),!it)if(we!==null)(Jt()||L?.is_fork)&&we.set(e,t);else{var n=(e.f&Se)===0?ke:ne;re(e,n)}}let Tn=new Set;const qe=new Map;let Cr=!1;function Tt(e,t){var n={f:0,v:e,reactions:null,equals:yr,rv:0,wv:0};return n}function He(e,t){const n=Tt(e);return mo(n),n}function $(e,t=!1,n=!0){const r=Tt(e);return t||(r.equals=br),Lt&&n&&ee!==null&&ee.l!==null&&(ee.l.s??=[]).push(r),r}function O(e,t,n=!1){N!==null&&(!Ce||(N.f&$n)!==0)&&Ft()&&(N.f&(ie|Oe|zn|$n))!==0&&!Ae?.includes(e)&&Yi();let r=n?vt(t):t;return At(e,r)}function At(e,t){if(!e.equals(t)){var n=e.v;it?qe.set(e,t):qe.set(e,n),e.v=t;var r=xt.ensure();r.capture(e,n),(e.f&ie)!==0&&((e.f&pe)!==0&&Kn(e),re(e,(e.f&Se)!==0?ne:ke)),e.wv=Ur(),Ir(e,pe),Ft()&&z!==null&&(z.f&ne)!==0&&(z.f&(Ne|_t))===0&&(be===null?_o([e]):be.push(e)),!r.is_fork&&Tn.size>0&&!Cr&&no()}return t}function no(){Cr=!1;var e=Xe;Zt(!0);const t=Array.from(Tn);try{for(const n of t)(n.f&ne)!==0&&re(n,ke),yt(n)&&mt(n)}finally{Zt(e)}Tn.clear()}function En(e){O(e,e.v+1)}function Ir(e,t){var n=e.reactions;if(n!==null)for(var r=Ft(),o=n.length,i=0;i<o;i++){var l=n[i],s=l.f;if(!(!r&&l===z)){var c=(s&pe)===0;if(c&&re(l,t),(s&ie)!==0){var u=l;we?.delete(u),(s&nt)===0&&(s&Se&&(l.f|=nt),Ir(u,ke))}else c&&((s&Oe)!==0&&Me!==null&&Me.add(l),rt(l))}}}function vt(e){if(typeof e!="object"||e===null||ht in e)return e;const t=Un(e);if(t!==Ai&&t!==Oi)return e;var n=new Map,r=fr(e),o=He(0),i=$e,l=s=>{if($e===i)return s();var c=N,u=$e;Ie(null),ir(i);var f=s();return Ie(c),ir(u),f};return r&&n.set("length",He(e.length)),new Proxy(e,{defineProperty(s,c,u){(!("value"in u)||u.configurable===!1||u.enumerable===!1||u.writable===!1)&&qi();var f=n.get(c);return f===void 0?f=l(()=>{var d=He(u.value);return n.set(c,d),d}):O(f,u.value,!0),!0},deleteProperty(s,c){var u=n.get(c);if(u===void 0){if(c in s){const f=l(()=>He(ae));n.set(c,f),En(o)}}else O(u,ae),En(o);return!0},get(s,c,u){if(c===ht)return e;var f=n.get(c),d=c in s;if(f===void 0&&(!d||Kt(s,c)?.writable)&&(f=l(()=>{var m=vt(d?s[c]:ae),_=He(m);return _}),n.set(c,f)),f!==void 0){var v=a(f);return v===ae?void 0:v}return Reflect.get(s,c,u)},getOwnPropertyDescriptor(s,c){var u=Reflect.getOwnPropertyDescriptor(s,c);if(u&&"value"in u){var f=n.get(c);f&&(u.value=a(f))}else if(u===void 0){var d=n.get(c),v=d?.v;if(d!==void 0&&v!==ae)return{enumerable:!0,configurable:!0,value:v,writable:!0}}return u},has(s,c){if(c===ht)return!0;var u=n.get(c),f=u!==void 0&&u.v!==ae||Reflect.has(s,c);if(u!==void 0||z!==null&&(!f||Kt(s,c)?.writable)){u===void 0&&(u=l(()=>{var v=f?vt(s[c]):ae,m=He(v);return m}),n.set(c,u));var d=a(u);if(d===ae)return!1}return f},set(s,c,u,f){var d=n.get(c),v=c in s;if(r&&c==="length")for(var m=u;m<d.v;m+=1){var _=n.get(m+"");_!==void 0?O(_,ae):m in s&&(_=l(()=>He(ae)),n.set(m+"",_))}if(d===void 0)(!v||Kt(s,c)?.writable)&&(d=l(()=>He(void 0)),O(d,vt(u)),n.set(c,d));else{v=d.v!==ae;var h=l(()=>vt(u));O(d,h)}var p=Reflect.getOwnPropertyDescriptor(s,c);if(p?.set&&p.set.call(f,u),!v){if(r&&typeof c=="string"){var y=n.get("length"),V=Number(c);Number.isInteger(V)&&V>=y.v&&O(y,V+1)}En(o)}return!0},ownKeys(s){a(o);var c=Reflect.ownKeys(s).filter(d=>{var v=n.get(d);return v===void 0||v.v!==ae});for(var[u,f]of n)f.v!==ae&&!(u in s)&&c.push(u);return c},setPrototypeOf(){Vi()}})}var ro,io,oo;function Qe(e=""){return document.createTextNode(e)}function Wt(e){return io.call(e)}function Dt(e){return oo.call(e)}function P(e,t){return Wt(e)}function Be(e,t=!1){{var n=Wt(e);return n instanceof Comment&&n.data===""?Dt(n):n}}function H(e,t=1,n=!1){let r=e;for(;t--;)r=Dt(r);return r}function ao(e){e.textContent=""}function Mr(){return!1}let tr=!1;function so(){tr||(tr=!0,document.addEventListener("reset",e=>{Promise.resolve().then(()=>{if(!e.defaultPrevented)for(const t of e.target.elements)t.__on_r?.()})},{capture:!0}))}function sn(e){var t=N,n=z;Ie(null),Ve(null);try{return e()}finally{Ie(t),Ve(n)}}function lo(e,t,n,r=n){e.addEventListener(t,()=>sn(n));const o=e.__on_r;o?e.__on_r=()=>{o(),r(!0)}:e.__on_r=()=>r(!0),so()}function xr(e){z===null&&(N===null&&zi(),Hi()),it&&ji()}function co(e,t){var n=t.last;n===null?t.last=t.first=e:(n.next=e,e.prev=n,t.last=e)}function Ye(e,t,n){var r=z;r!==null&&(r.f&ye)!==0&&(e|=ye);var o={ctx:ee,deps:null,nodes:null,f:e|pe|Se,first:null,fn:t,last:null,next:null,parent:r,b:r&&r.b,prev:null,teardown:null,wv:0,ac:null};if(n)try{mt(o),o.f|=Hn}catch(s){throw Te(o),s}else t!==null&&rt(o);var i=o;if(n&&i.deps===null&&i.teardown===null&&i.nodes===null&&i.first===i.last&&(i.f&tn)===0&&(i=i.first,(e&Oe)!==0&&(e&Mt)!==0&&i!==null&&(i.f|=Mt)),i!==null&&(i.parent=r,r!==null&&co(i,r),N!==null&&(N.f&ie)!==0&&(e&_t)===0)){var l=N;(l.effects??=[]).push(i)}return o}function Jt(){return N!==null&&!Ce}function qn(e){const t=Ye(en,null,!1);return re(t,ne),t.teardown=e,t}function nr(e){xr();var t=z.f,n=!N&&(t&Ne)!==0&&(t&Hn)===0;if(n){var r=ee;(r.e??=[]).push(e)}else return Rr(e)}function Rr(e){return Ye(hr|_r,e,!1)}function uo(e){return xr(),Ye(en|_r,e,!0)}function te(e,t){var n=ee,r={effect:null,ran:!1,deps:e};n.l.$.push(r),r.effect=Yn(()=>{e(),!r.ran&&(r.ran=!0,w(t))})}function Vn(){var e=ee;Yn(()=>{for(var t of e.l.$){t.deps();var n=t.effect;(n.f&ne)!==0&&re(n,ke),yt(n)&&mt(n),t.ran=!1}})}function fo(e){return Ye(zn|tn,e,!0)}function Yn(e,t=0){return Ye(en|t,e,!0)}function Q(e,t=[],n=[],r=[]){Xi(r,t,n,o=>{Ye(en,()=>e(...o.map(a)),!0)})}function Tr(e,t=0){var n=Ye(Oe|t,e,!0);return n}function Ot(e){return Ye(Ne|tn,e,!0)}function Ar(e){var t=e.teardown;if(t!==null){const n=it,r=N;rr(!0),Ie(null);try{t.call(null)}finally{rr(n),Ie(r)}}}function Or(e,t=!1){var n=e.first;for(e.first=e.last=null;n!==null;){const o=n.ac;o!==null&&sn(()=>{o.abort(dt)});var r=n.next;(n.f&_t)!==0?n.parent=null:Te(n,t),n=r}}function vo(e){for(var t=e.first;t!==null;){var n=t.next;(t.f&Ne)===0&&Te(t),t=n}}function Te(e,t=!0){var n=!1;(t||(e.f&mr)!==0)&&e.nodes!==null&&e.nodes.end!==null&&(po(e.nodes.start,e.nodes.end),n=!0),Or(e,t&&!n),Qt(e,0),re(e,Re);var r=e.nodes&&e.nodes.t;if(r!==null)for(const i of r)i.stop();Ar(e);var o=e.parent;o!==null&&o.first!==null&&Nr(e),e.next=e.prev=e.teardown=e.ctx=e.deps=e.fn=e.nodes=e.ac=null}function po(e,t){for(;e!==null;){var n=e===t?null:Dt(e);e.remove(),e=n}}function Nr(e){var t=e.parent,n=e.prev,r=e.next;n!==null&&(n.next=r),r!==null&&(r.prev=n),t!==null&&(t.first===e&&(t.first=r),t.last===e&&(t.last=n))}function Gn(e,t,n=!0){var r=[];Lr(e,r,!0);var o=()=>{n&&Te(e),t&&t()},i=r.length;if(i>0){var l=()=>--i||o();for(var s of r)s.out(l)}else o()}function Lr(e,t,n){if((e.f&ye)===0){e.f^=ye;var r=e.nodes&&e.nodes.t;if(r!==null)for(const s of r)(s.is_global||n)&&t.push(s);for(var o=e.first;o!==null;){var i=o.next,l=(o.f&Mt)!==0||(o.f&Ne)!==0&&(e.f&Oe)!==0;Lr(o,t,l?n:!1),o=i}}}function Wn(e){Fr(e,!0)}function Fr(e,t){if((e.f&ye)!==0){e.f^=ye,(e.f&ne)===0&&(re(e,pe),rt(e));for(var n=e.first;n!==null;){var r=n.next,o=(n.f&Mt)!==0||(n.f&Ne)!==0;Fr(n,o?t:!1),n=r}var i=e.nodes&&e.nodes.t;if(i!==null)for(const l of i)(l.is_global||t)&&l.in()}}function ho(e,t){if(e.nodes)for(var n=e.nodes.start,r=e.nodes.end;n!==null;){var o=n===r?null:Dt(n);t.append(n),n=o}}let Xe=!1;function Zt(e){Xe=e}let it=!1;function rr(e){it=e}let N=null,Ce=!1;function Ie(e){N=e}let z=null;function Ve(e){z=e}let Ae=null;function mo(e){N!==null&&(Ae===null?Ae=[e]:Ae.push(e))}let ue=null,_e=0,be=null;function _o(e){be=e}let Dr=1,Nt=0,$e=Nt;function ir(e){$e=e}function Ur(){return++Dr}function yt(e){var t=e.f;if((t&pe)!==0)return!0;if(t&ie&&(e.f&=~nt),(t&ke)!==0){var n=e.deps;if(n!==null)for(var r=n.length,o=0;o<r;o++){var i=n[o];if(yt(i)&&kr(i),i.wv>e.wv)return!0}(t&Se)!==0&&we===null&&re(e,ne)}return!1}function jr(e,t,n=!0){var r=e.reactions;if(r!==null&&!Ae?.includes(e))for(var o=0;o<r.length;o++){var i=r[o];(i.f&ie)!==0?jr(i,t,!1):t===i&&(n?re(i,pe):(i.f&ne)!==0&&re(i,ke),rt(i))}}function Hr(e){var t=ue,n=_e,r=be,o=N,i=Ae,l=ee,s=Ce,c=$e,u=e.f;ue=null,_e=0,be=null,N=(u&(Ne|_t))===0?e:null,Ae=null,Vt(e.ctx),Ce=!1,$e=++Nt,e.ac!==null&&(sn(()=>{e.ac.abort(dt)}),e.ac=null);try{e.f|=xn;var f=e.fn,d=f(),v=e.deps;if(ue!==null){var m;if(Qt(e,_e),v!==null&&_e>0)for(v.length=_e+ue.length,m=0;m<ue.length;m++)v[_e+m]=ue[m];else e.deps=v=ue;if(Jt()&&(e.f&Se)!==0)for(m=_e;m<v.length;m++)(v[m].reactions??=[]).push(e)}else v!==null&&_e<v.length&&(Qt(e,_e),v.length=_e);if(Ft()&&be!==null&&!Ce&&v!==null&&(e.f&(ie|ke|pe))===0)for(m=0;m<be.length;m++)jr(be[m],e);return o!==null&&o!==e&&(Nt++,be!==null&&(r===null?r=be:r.push(...be))),(e.f&Ke)!==0&&(e.f^=Ke),d}catch(_){return Ji(_)}finally{e.f^=xn,ue=t,_e=n,be=r,N=o,Ae=i,Vt(l),Ce=s,$e=c}}function yo(e,t){let n=t.reactions;if(n!==null){var r=Ti.call(n,e);if(r!==-1){var o=n.length-1;o===0?n=t.reactions=null:(n[r]=n[o],n.pop())}}n===null&&(t.f&ie)!==0&&(ue===null||!ue.includes(t))&&(re(t,ke),(t.f&Se)!==0&&(t.f^=Se,t.f&=~nt),Sr(t),Qt(t,0))}function Qt(e,t){var n=e.deps;if(n!==null)for(var r=t;r<n.length;r++)yo(e,n[r])}function mt(e){var t=e.f;if((t&Re)===0){re(e,ne);var n=z,r=Xe;z=e,Xe=!0;try{(t&(Oe|Li))!==0?vo(e):Or(e),Ar(e);var o=Hr(e);e.teardown=typeof o=="function"?o:null,e.wv=Dr;var i;Cn&&_i&&(e.f&pe)!==0&&e.deps}finally{Xe=r,z=n}}}async function bo(){await Promise.resolve(),Zi()}function a(e){var t=e.f,n=(t&ie)!==0;if(N!==null&&!Ce){var r=z!==null&&(z.f&Re)!==0;if(!r&&!Ae?.includes(e)){var o=N.deps;if((N.f&xn)!==0)e.rv<Nt&&(e.rv=Nt,ue===null&&o!==null&&o[_e]===e?_e++:ue===null?ue=[e]:ue.includes(e)||ue.push(e));else{(N.deps??=[]).push(e);var i=e.reactions;i===null?e.reactions=[N]:i.includes(N)||i.push(N)}}}if(it){if(qe.has(e))return qe.get(e);if(n){var l=e,s=l.v;return((l.f&ne)===0&&l.reactions!==null||Br(l))&&(s=Kn(l)),qe.set(l,s),s}}else n&&(!we?.has(e)||L?.is_fork&&!Jt())&&(l=e,yt(l)&&kr(l),Xe&&Jt()&&(l.f&Se)===0&&zr(l));if(we?.has(e))return we.get(e);if((e.f&Ke)!==0)throw e.v;return e.v}function zr(e){if(e.deps!==null){e.f^=Se;for(const t of e.deps)(t.reactions??=[]).push(e),(t.f&ie)!==0&&(t.f&Se)===0&&zr(t)}}function Br(e){if(e.v===ae)return!0;if(e.deps===null)return!1;for(const t of e.deps)if(qe.has(t)||(t.f&ie)!==0&&Br(t))return!0;return!1}function w(e){var t=Ce;try{return Ce=!0,e()}finally{Ce=t}}const go=-7169;function re(e,t){e.f=e.f&go|t}function W(e){if(!(typeof e!="object"||!e||e instanceof EventTarget)){if(ht in e)An(e);else if(!Array.isArray(e))for(let t in e){const n=e[t];typeof n=="object"&&n&&ht in n&&An(n)}}}function An(e,t=new Set){if(typeof e=="object"&&e!==null&&!(e instanceof EventTarget)&&!t.has(e)){t.add(e),e instanceof Date&&e.getTime();for(let r in e)try{An(e[r],t)}catch{}const n=Un(e);if(n!==Object.prototype&&n!==Array.prototype&&n!==Map.prototype&&n!==Set.prototype&&n!==Date.prototype){const r=vr(n);for(let o in r){const i=r[o].get;if(i)try{i.call(e)}catch{}}}}}function wo(e,t,n,r={}){function o(i){if(r.capture||Po.call(t,i),!i.cancelBubble)return sn(()=>n?.call(this,i))}return e.startsWith("pointer")||e.startsWith("touch")||e==="wheel"?Bn(()=>{t.addEventListener(e,o,r)}):t.addEventListener(e,o,r),o}function de(e,t,n,r,o){var i={capture:r,passive:o},l=wo(e,t,n,i);(t===document.body||t===window||t===document||t instanceof HTMLMediaElement)&&qn(()=>{t.removeEventListener(e,l,i)})}let or=null;function Po(e){var t=this,n=t.ownerDocument,r=e.type,o=e.composedPath?.()||[],i=o[0]||e.target;or=e;var l=0,s=or===e&&e.__root;if(s){var c=o.indexOf(s);if(c!==-1&&(t===document||t===window)){e.__root=t;return}var u=o.indexOf(t);if(u===-1)return;c<=u&&(l=c)}if(i=o[l]||e.target,i!==t){dr(e,"currentTarget",{configurable:!0,get(){return i||n}});var f=N,d=z;Ie(null),Ve(null);try{for(var v,m=[];i!==null;){var _=i.assignedSlot||i.parentNode||i.host||null;try{var h=i["__"+r];h!=null&&(!i.disabled||e.target===i)&&h.call(i,e)}catch(p){v?m.push(p):v=p}if(e.cancelBubble||_===t||_===null)break;i=_}if(v){for(let p of m)queueMicrotask(()=>{throw p});throw v}}finally{e.__root=t,delete e.currentTarget,Ie(f),Ve(d)}}}function Eo(e){var t=document.createElement("template");return t.innerHTML=e.replaceAll("<!>","<!---->"),t.content}function Xt(e,t){var n=z;n.nodes===null&&(n.nodes={start:e,end:t,a:null,t:null})}function T(e,t){var n=(t&Mi)!==0,r=(t&xi)!==0,o,i=!e.startsWith("<!>");return()=>{o===void 0&&(o=Eo(i?e:"<!>"+e),n||(o=Wt(o)));var l=r||ro?document.importNode(o,!0):o.cloneNode(!0);if(n){var s=Wt(l),c=l.lastChild;Xt(s,c)}else Xt(l,l);return l}}function So(e=""){{var t=Qe(e+"");return Xt(t,t),t}}function ft(){var e=document.createDocumentFragment(),t=document.createComment(""),n=Qe();return e.append(t,n),Xt(t,n),e}function E(e,t){e!==null&&e.before(t)}function ve(e,t){var n=t==null?"":typeof t=="object"?t+"":t;n!==(e.__t??=e.nodeValue)&&(e.__t=n,e.nodeValue=n+"")}class ko{anchor;#t=new Map;#n=new Map;#e=new Map;#r=new Set;#o=!0;constructor(t,n=!0){this.anchor=t,this.#o=n}#i=()=>{var t=L;if(this.#t.has(t)){var n=this.#t.get(t),r=this.#n.get(n);if(r)Wn(r),this.#r.delete(n);else{var o=this.#e.get(n);o&&(this.#n.set(n,o.effect),this.#e.delete(n),o.fragment.lastChild.remove(),this.anchor.before(o.fragment),r=o.effect)}for(const[i,l]of this.#t){if(this.#t.delete(i),i===t)break;const s=this.#e.get(l);s&&(Te(s.effect),this.#e.delete(l))}for(const[i,l]of this.#n){if(i===n||this.#r.has(i))continue;const s=()=>{if(Array.from(this.#t.values()).includes(i)){var u=document.createDocumentFragment();ho(l,u),u.append(Qe()),this.#e.set(i,{effect:l,fragment:u})}else Te(l);this.#r.delete(i),this.#n.delete(i)};this.#o||!r?(this.#r.add(i),Gn(l,s,!1)):s()}}};#a=t=>{this.#t.delete(t);const n=Array.from(this.#t.values());for(const[r,o]of this.#e)n.includes(r)||(Te(o.effect),this.#e.delete(r))};ensure(t,n){var r=L,o=Mr();if(n&&!this.#n.has(t)&&!this.#e.has(t))if(o){var i=document.createDocumentFragment(),l=Qe();i.append(l),this.#e.set(t,{effect:Ot(()=>n(l)),fragment:i})}else this.#n.set(t,Ot(()=>n(this.anchor)));if(this.#t.set(r,t),o){for(const[s,c]of this.#n)s===t?r.skipped_effects.delete(c):r.skipped_effects.add(c);for(const[s,c]of this.#e)s===t?r.skipped_effects.delete(c.effect):r.skipped_effects.add(c.effect);r.oncommit(this.#i),r.ondiscard(this.#a)}else this.#i()}}function Z(e,t,n=!1){var r=new ko(e),o=n?Mt:0;function i(l,s){r.ensure(l,s)}Tr(()=>{var l=!1;t((s,c=!0)=>{l=!0,i(c,s)}),l||i(!1,null)},o)}function Co(e,t,n){for(var r=[],o=t.length,i,l=t.length,s=0;s<o;s++){let d=t[s];Gn(d,()=>{if(i){if(i.pending.delete(d),i.done.add(d),i.pending.size===0){var v=e.outrogroups;On(Dn(i.done)),v.delete(i),v.size===0&&(e.outrogroups=null)}}else l-=1},!1)}if(l===0){var c=r.length===0&&n!==null;if(c){var u=n,f=u.parentNode;ao(f),f.append(u),e.items.clear()}On(t,!c)}else i={pending:new Set(t),done:new Set},(e.outrogroups??=new Set).add(i)}function On(e,t=!0){for(var n=0;n<e.length;n++)Te(e[n],t)}var ar;function Jn(e,t,n,r,o,i=null){var l=e,s=new Map,c=(t&ur)!==0;if(c){var u=e;l=u.appendChild(Qe())}var f=null,d=Rt(()=>{var y=n();return fr(y)?y:y==null?[]:Dn(y)}),v,m=!0;function _(){p.fallback=f,Io(p,v,l,t,r),f!==null&&(v.length===0?(f.f&xe)===0?Wn(f):(f.f^=xe,Ct(f,null,l)):Gn(f,()=>{f=null}))}var h=Tr(()=>{v=a(d);for(var y=v.length,V=new Set,S=L,B=Mr(),K=0;K<y;K+=1){var X=v[K],F=r(X,K),Y=m?null:s.get(F);Y?(Y.v&&At(Y.v,X),Y.i&&At(Y.i,K),B&&S.skipped_effects.delete(Y.e)):(Y=Mo(s,m?l:ar??=Qe(),X,F,K,o,t,n),m||(Y.e.f|=xe),s.set(F,Y)),V.add(F)}if(y===0&&i&&!f&&(m?f=Ot(()=>i(l)):(f=Ot(()=>i(ar??=Qe())),f.f|=xe)),!m)if(B){for(const[C,b]of s)V.has(C)||S.skipped_effects.add(b.e);S.oncommit(_),S.ondiscard(()=>{})}else _();a(d)}),p={effect:h,items:s,outrogroups:null,fallback:f};m=!1}function Io(e,t,n,r,o){var i=(r&wi)!==0,l=t.length,s=e.items,c=e.effect.first,u,f=null,d,v=[],m=[],_,h,p,y;if(i)for(y=0;y<l;y+=1)_=t[y],h=o(_,y),p=s.get(h).e,(p.f&xe)===0&&(p.nodes?.a?.measure(),(d??=new Set).add(p));for(y=0;y<l;y+=1){if(_=t[y],h=o(_,y),p=s.get(h).e,e.outrogroups!==null)for(const b of e.outrogroups)b.pending.delete(p),b.done.delete(p);if((p.f&xe)!==0)if(p.f^=xe,p===c)Ct(p,null,n);else{var V=f?f.next:c;p===e.effect.last&&(e.effect.last=p.prev),p.prev&&(p.prev.next=p.next),p.next&&(p.next.prev=p.prev),ze(e,f,p),ze(e,p,V),Ct(p,V,n),f=p,v=[],m=[],c=f.next;continue}if((p.f&ye)!==0&&(Wn(p),i&&(p.nodes?.a?.unfix(),(d??=new Set).delete(p))),p!==c){if(u!==void 0&&u.has(p)){if(v.length<m.length){var S=m[0],B;f=S.prev;var K=v[0],X=v[v.length-1];for(B=0;B<v.length;B+=1)Ct(v[B],S,n);for(B=0;B<m.length;B+=1)u.delete(m[B]);ze(e,K.prev,X.next),ze(e,f,K),ze(e,X,S),c=S,f=X,y-=1,v=[],m=[]}else u.delete(p),Ct(p,c,n),ze(e,p.prev,p.next),ze(e,p,f===null?e.effect.first:f.next),ze(e,f,p),f=p;continue}for(v=[],m=[];c!==null&&c!==p;)(u??=new Set).add(c),m.push(c),c=c.next;if(c===null)continue}(p.f&xe)===0&&v.push(p),f=p,c=p.next}if(e.outrogroups!==null){for(const b of e.outrogroups)b.pending.size===0&&(On(Dn(b.done)),e.outrogroups?.delete(b));e.outrogroups.size===0&&(e.outrogroups=null)}if(c!==null||u!==void 0){var F=[];if(u!==void 0)for(p of u)(p.f&ye)===0&&F.push(p);for(;c!==null;)(c.f&ye)===0&&c!==e.fallback&&F.push(c),c=c.next;var Y=F.length;if(Y>0){var C=(r&ur)!==0&&l===0?n:null;if(i){for(y=0;y<Y;y+=1)F[y].nodes?.a?.measure();for(y=0;y<Y;y+=1)F[y].nodes?.a?.fix()}Co(e,F,C)}}i&&Bn(()=>{if(d!==void 0)for(p of d)p.nodes?.a?.apply()})}function Mo(e,t,n,r,o,i,l,s){var c=(l&bi)!==0?(l&Pi)===0?$(n,!1,!1):Tt(n):null,u=(l&gi)!==0?Tt(o):null;return{v:c,i:u,e:Ot(()=>(i(t,c??n,u??o,s),()=>{e.delete(r)}))}}function Ct(e,t,n){if(e.nodes)for(var r=e.nodes.start,o=e.nodes.end,i=t&&(t.f&xe)===0?t.nodes.start:n;r!==null;){var l=Dt(r);if(i.before(r),r===o)return;r=l}}function ze(e,t,n){t===null?e.effect.first=n:t.next=n,n===null?e.effect.last=t:n.prev=t}function Nn(e,t,n,r,o){var i=t.$$slots?.[n],l=!1;i===!0&&(i=t[n==="default"?"children":n],l=!0),i===void 0?o!==null&&o(e):i(e,l?()=>r:r)}function Kr(e){var t,n,r="";if(typeof e=="string"||typeof e=="number")r+=e;else if(typeof e=="object")if(Array.isArray(e)){var o=e.length;for(t=0;t<o;t++)e[t]&&(n=Kr(e[t]))&&(r&&(r+=" "),r+=n)}else for(n in e)e[n]&&(r&&(r+=" "),r+=n);return r}function xo(){for(var e,t,n=0,r="",o=arguments.length;n<o;n++)(e=arguments[n])&&(t=Kr(e))&&(r&&(r+=" "),r+=t);return r}function et(e){return typeof e=="object"?xo(e):e??""}function Ro(e,t,n){var r=e==null?"":""+e;return r===""?null:r}function To(e,t){return e==null?null:String(e)}function tt(e,t,n,r,o,i){var l=e.__className;if(l!==n||l===void 0){var s=Ro(n);s==null?e.removeAttribute("class"):e.className=s,e.__className=n}return i}function Zn(e,t,n,r){var o=e.__style;if(o!==t){var i=To(t);i==null?e.removeAttribute("style"):e.style.cssText=i,e.__style=t}return r}const Ao=Symbol("is custom element"),Oo=Symbol("is html");function $t(e,t,n,r){var o=No(e);o[t]!==(o[t]=n)&&(t==="loading"&&(e[Di]=n),n==null?e.removeAttribute(t):typeof n!="string"&&Lo(e).includes(t)?e[t]=n:e.setAttribute(t,n))}function No(e){return e.__attributes??={[Ao]:e.nodeName.includes("-"),[Oo]:e.namespaceURI===Ri}}var sr=new Map;function Lo(e){var t=e.getAttribute("is")||e.nodeName,n=sr.get(t);if(n)return n;sr.set(t,n=[]);for(var r,o=e,i=Element.prototype;i!==o;){r=vr(o);for(var l in r)r[l].set&&n.push(l);o=Un(o)}return n}function Fo(e,t,n=t){var r=new WeakSet;lo(e,"input",async o=>{var i=o?e.defaultValue:e.value;if(i=Sn(e)?kn(i):i,n(i),L!==null&&r.add(L),await bo(),i!==(i=t())){var l=e.selectionStart,s=e.selectionEnd,c=e.value.length;if(e.value=i??"",s!==null){var u=e.value.length;l===s&&s===c&&u>c?(e.selectionStart=u,e.selectionEnd=u):(e.selectionStart=l,e.selectionEnd=Math.min(s,u))}}}),w(t)==null&&e.value&&(n(Sn(e)?kn(e.value):e.value),L!==null&&r.add(L)),Yn(()=>{var o=t();if(e===document.activeElement){var i=qt??L;if(r.has(i))return}Sn(e)&&o===kn(e.value)||e.type==="date"&&!o&&!e.value||o!==e.value&&(e.value=o??"")})}function Sn(e){var t=e.type;return t==="number"||t==="range"}function kn(e){return e===""?null:+e}function Do(e){return function(...t){var n=t[0];return n.preventDefault(),e?.apply(this,t)}}function ln(e=!1){const t=ee,n=t.l.u;if(!n)return;let r=()=>W(t.s);if(e){let o=0,i={};const l=an(()=>{let s=!1;const c=t.s;for(const u in c)c[u]!==i[u]&&(i[u]=c[u],s=!0);return s&&o++,o});r=()=>a(l)}n.b.length&&uo(()=>{lr(t,r),Mn(n.b)}),nr(()=>{const o=w(()=>n.m.map(Ni));return()=>{for(const i of o)typeof i=="function"&&i()}}),n.a.length&&nr(()=>{lr(t,r),Mn(n.a)})}function lr(e,t){if(e.l.s)for(const n of e.l.s)a(n);t()}function qr(e,t,n){if(e==null)return t(void 0),In;const r=w(()=>e.subscribe(t,n));return r.unsubscribe?()=>r.unsubscribe():r}function Uo(e){let t;return qr(e,n=>t=n)(),t}let Bt=!1,Ln=Symbol();function jo(e,t,n){const r=n[t]??={store:null,source:$(void 0),unsubscribe:In};if(r.store!==e&&!(Ln in n))if(r.unsubscribe(),r.store=e??null,e==null)r.source.v=void 0,r.unsubscribe=In;else{var o=!0;r.unsubscribe=qr(e,i=>{o?r.source.v=i:O(r.source,i)}),o=!1}return e&&Ln in n?Uo(e):a(r.source)}function Ho(){const e={};function t(){qn(()=>{for(var n in e)e[n].unsubscribe();dr(e,Ln,{enumerable:!1,value:!0})})}return[e,t]}function zo(e){var t=Bt;try{return Bt=!1,[e(),Bt]}finally{Bt=t}}function U(e,t,n,r){var o=!Lt||(n&Si)!==0,i=(n&Ci)!==0,l=(n&Ii)!==0,s=r,c=!0,u=()=>(c&&(c=!1,s=l?w(r):r),s),f;if(i){var d=ht in e||Fi in e;f=Kt(e,t)?.set??(d&&t in e?S=>e[t]=S:void 0)}var v,m=!1;i?[v,m]=zo(()=>e[t]):v=e[t],v===void 0&&r!==void 0&&(v=u(),f&&(o&&Ki(),f(v)));var _;if(o?_=()=>{var S=e[t];return S===void 0?u():(c=!0,S)}:_=()=>{var S=e[t];return S!==void 0&&(s=void 0),S===void 0?s:S},o&&(n&ki)===0)return _;if(f){var h=e.$$legacy;return(function(S,B){return arguments.length>0?((!o||!B||h||m)&&f(B?_():S),S):_()})}var p=!1,y=((n&Ei)!==0?an:Rt)(()=>(p=!1,_()));i&&a(y);var V=z;return(function(S,B){if(arguments.length>0){const K=B?a(y):o&&i?vt(S):S;return O(y,K),p=!0,s!==void 0&&(s=K),S}return it&&p||(V.f&Re)!==0?y.v:a(y)})}const Bo="https://api.reevit.io";function Ko(e,t){return{code:t?.code||"payment_link_error",message:t?.message||"Payment link request failed",recoverable:!0,details:{httpStatus:e.status,...t?.details||{}}}}function qo(e){const t=e.toLowerCase();return t.includes("paystack")?"paystack":t.includes("hubtel")?"hubtel":t.includes("flutterwave")?"flutterwave":t.includes("stripe")?"stripe":t.includes("monnify")?"monnify":t.includes("mpesa")||t.includes("m-pesa")?"mpesa":"paystack"}function Vo(e){const t=e.toLowerCase().trim();return t==="card"?"card":t==="mobile_money"||t==="momo"||t==="mobilemoney"?"mobile_money":t==="bank"||t==="bank_transfer"||t==="transfer"?"bank_transfer":null}function Yo(e){if(!(!e||e.length===0))return e.map(t=>{const n=t.methods.map(r=>Vo(r)).filter(Boolean);return{provider:t.provider,name:t.name,methods:n,countries:t.countries}}).filter(t=>t.methods.length>0)}function Go(e){if(!e)return{};const t=e,n={...t},r=l=>typeof l=="string"?l:void 0,o=l=>typeof l=="boolean"?l:void 0,i=(l,s)=>{s!==void 0&&(n[l]=s)};return i("logoUrl",r(t.logoUrl??t.logo_url)),i("companyName",r(t.companyName??t.company_name)),i("primaryColor",r(t.primaryColor??t.primary_color)),i("primaryForegroundColor",r(t.primaryForegroundColor??t.primary_foreground_color)),i("backgroundColor",r(t.backgroundColor??t.background_color)),i("surfaceColor",r(t.surfaceColor??t.surface_color)),i("textColor",r(t.textColor??t.text_color)),i("mutedTextColor",r(t.mutedTextColor??t.muted_text_color)),i("borderRadius",r(t.borderRadius??t.border_radius)),i("fontFamily",r(t.fontFamily??t.font_family)),i("darkMode",o(t.darkMode??t.dark_mode)),i("pspSelectorBgColor",r(t.pspSelectorBgColor??t.psp_selector_bg_color)),i("pspSelectorTextColor",r(t.pspSelectorTextColor??t.psp_selector_text_color)),i("pspSelectorBorderColor",r(t.pspSelectorBorderColor??t.psp_selector_border_color)),i("pspSelectorUseBorder",o(t.pspSelectorUseBorder??t.psp_selector_use_border)),n}function Wo(e,t){return{id:e.id,clientSecret:e.client_secret,pspPublicKey:e.psp_public_key,pspCredentials:e.psp_credentials,amount:e.amount,currency:e.currency,status:e.status,recommendedPsp:qo(e.provider),availableMethods:t.paymentMethods||["card","mobile_money"],reference:e.reference||t.reference,connectionId:e.connection_id,provider:e.provider,feeAmount:e.fee_amount,feeCurrency:e.fee_currency,netAmount:e.net_amount,metadata:t.metadata,availableProviders:Yo(e.available_psps),branding:Go(e.branding)}}function Vr(e){const{config:t,onSuccess:n,onError:r,onClose:o,onStateChange:i,apiBaseUrl:l}=e;let s=R.createInitialState();t.initialPaymentIntent&&(s={...s,status:"ready",paymentIntent:t.initialPaymentIntent,selectedMethod:t.initialPaymentIntent.availableMethods?.length===1?t.initialPaymentIntent.availableMethods[0]:null});const c=new Set,u=new R.ReevitAPIClient({publicKey:t.publicKey,baseUrl:l}),f=()=>{c.forEach(k=>k(s))},d=k=>{const x=s.status;s=R.reevitReducer(s,k),f(),s.status!==x&&i?.(s.status)},v=k=>(c.add(k),k(s),()=>c.delete(k)),m=async(k,x)=>{d({type:"INIT_START"});try{const A=t.reference||R.generateReference(),q=R.detectCountryFromCurrency(t.currency),g=t.paymentMethods&&t.paymentMethods.length===1?t.paymentMethods[0]:void 0,he=k??g;let Pe,se;if(t.paymentLinkCode){const me=await fetch(`${l||Bo}/v1/pay/${t.paymentLinkCode}/pay`,{method:"POST",headers:{"Content-Type":"application/json","Idempotency-Key":`${Date.now()}-${Math.random().toString(36).substring(2,15)}`},body:JSON.stringify({amount:t.amount,email:t.email||"",name:t.customerName||"",phone:t.phone||"",method:he,country:q,provider:x?.preferredProvider||x?.allowedProviders?.[0],custom_fields:t.customFields})}),bt=await me.json().catch(()=>({}));me.ok?Pe=bt:se=Ko(me,bt)}else{const me=await u.createPaymentIntent({...t,reference:A},he,q,{preferredProviders:x?.preferredProvider?[x.preferredProvider]:void 0,allowedProviders:x?.allowedProviders});Pe=me.data,se=me.error}if(se){d({type:"INIT_ERROR",payload:se}),r?.(se);return}if(!Pe){const me={code:"INIT_FAILED",message:"No data received from API",recoverable:!0};d({type:"INIT_ERROR",payload:me}),r?.(me);return}const un=Wo(Pe,{...t,reference:A});d({type:"INIT_SUCCESS",payload:un})}catch(A){const q={code:"INIT_FAILED",message:A instanceof Error?A.message:"Failed to initialize checkout",recoverable:!0,originalError:A};d({type:"INIT_ERROR",payload:q}),r?.(q)}},_=k=>{d({type:"SELECT_METHOD",payload:k})},h=async k=>{if(!(!s.paymentIntent||!s.selectedMethod)){d({type:"PROCESS_START"});try{let x;if(s.paymentIntent.clientSecret){const{data:q,error:g}=await u.confirmPaymentIntent(s.paymentIntent.id,s.paymentIntent.clientSecret);if(g){d({type:"PROCESS_ERROR",payload:g}),r?.(g);return}x=q}else{const{data:q,error:g}=await u.confirmPayment(s.paymentIntent.id);if(g){d({type:"PROCESS_ERROR",payload:g}),r?.(g);return}x=q}const A={paymentId:s.paymentIntent.id,reference:k.reference||s.paymentIntent.reference||s.paymentIntent.metadata?.reference||"",amount:s.paymentIntent.amount,currency:s.paymentIntent.currency,paymentMethod:s.selectedMethod,psp:s.paymentIntent.recommendedPsp,pspReference:k.pspReference||x?.provider_ref_id||"",status:"success",metadata:k};d({type:"PROCESS_SUCCESS",payload:A}),n?.(A)}catch(x){const A={code:"PAYMENT_FAILED",message:x instanceof Error?x.message:"Payment failed",recoverable:!0,originalError:x};d({type:"PROCESS_ERROR",payload:A}),r?.(A)}}};return{subscribe:v,initialize:m,selectMethod:_,processPayment:h,handlePspSuccess:async k=>{await h(k)},handlePspError:k=>{d({type:"PROCESS_ERROR",payload:k}),r?.(k)},reset:()=>{d({type:"RESET"})},close:async()=>{if(s.paymentIntent&&s.status!=="success")try{await u.cancelPaymentIntent(s.paymentIntent.id)}catch{}d({type:"CLOSE"}),o?.()},getStatus:()=>s.status,getPaymentIntent:()=>s.paymentIntent,getSelectedMethod:()=>s.selectedMethod,getError:()=>s.error,getResult:()=>s.result,isLoading:()=>s.status==="loading"||s.status==="processing",isReady:()=>s.status==="ready"||s.status==="method_selected",isComplete:()=>s.status==="success",canRetry:()=>s.error?.recoverable??!1}}var Jo=T('<div class="reevit-method-selector__label">Select payment method</div>'),Zo=T('<span class="reevit-method-option__description"> </span>'),Qo=T('<span class="reevit-method-option__check"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linecap="round" stroke-linejoin="round"><polyline points="20 6 9 17 4 12"></polyline></svg></span>'),Xo=T('<span class="reevit-method-option__chevron"><svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><polyline points="9 18 15 12 9 6"></polyline></svg></span>'),$o=T('<button type="button"><span class="reevit-method-option__icon-wrapper"><span class="reevit-method-option__icon"> </span></span> <div class="reevit-method-option__content"><span class="reevit-method-option__label"> </span> <!></div> <!></button>'),ea=T("<div><!> <div></div></div>");function Qn(e,t){nn(t,!1);const n=$(),r=$();let o=U(t,"methods",8),i=U(t,"selected",8);U(t,"provider",8,void 0);let l=U(t,"layout",8,"list"),s=U(t,"showLabel",8,!0);const c=pt.createEventDispatcher();function u(_){c("select",_)}te(()=>W(l()),()=>{O(n,l()==="grid")}),te(()=>W(o()),()=>{O(r,[{id:"card",name:"Card",icon:"💳",description:"Pay with Visa, Mastercard, or other cards"},{id:"mobile_money",name:"Mobile Money",icon:"📱",description:"MTN, Vodafone Cash, AirtelTigo Money"},{id:"bank_transfer",name:"Bank Transfer",icon:"🏦",description:"Pay directly from your bank account"}].filter(_=>o().includes(_.id)))}),Vn(),ln();var f=ea(),d=P(f);{var v=_=>{var h=Jo();E(_,h)};Z(d,_=>{s()&&_(v)})}var m=H(d,2);Jn(m,7,()=>a(r),_=>_.id,(_,h,p)=>{var y=$o(),V=P(y),S=P(V),B=P(S),K=H(V,2),X=P(K),F=P(X),Y=H(X,2);{var C=I=>{var k=Zo(),x=P(k);Q(()=>ve(x,(a(h),w(()=>a(h).description)))),E(I,k)};Z(Y,I=>{a(n)||I(C)})}var b=H(K,2);{var D=I=>{var k=ft(),x=Be(k);{var A=g=>{var he=Qo();E(g,he)},q=g=>{var he=Xo();E(g,he)};Z(x,g=>{W(i()),a(h),w(()=>i()===a(h).id)?g(A):g(q,!1)})}E(I,k)};Z(b,I=>{a(n)||I(D)})}Q(I=>{tt(y,1,I),Zn(y,`animation-delay: ${a(p)*.05}s`),ve(B,(a(h),w(()=>a(h).icon))),ve(F,(a(h),w(()=>a(h).name)))},[()=>et((W(R.cn),a(n),W(i()),a(h),w(()=>R.cn("reevit-method-option",a(n)?"reevit-method-option--grid":"reevit-method-option--list",i()===a(h).id&&"reevit-method-option--selected"))))]),de("click",y,()=>u(a(h).id)),E(_,y)}),Q((_,h)=>{tt(f,1,_),tt(m,1,h)},[()=>et((W(R.cn),a(n),w(()=>R.cn("reevit-method-selector",a(n)&&"reevit-method-selector--grid")))),()=>et((W(R.cn),a(n),w(()=>R.cn("reevit-method-selector__options",a(n)?"reevit-method-selector__options--grid":"reevit-method-selector__options--list"))))]),E(e,f),rn()}var ta=T('<img alt="" class="reevit-psp-option__logo-img" loading="lazy"/>'),na=T('<span class="reevit-psp-option__logo-fallback"> </span>'),ra=T('<div class="reevit-psp-accordion__content reevit-animate-fade-in"><div class="reevit-psp-methods"><!></div> <!></div>'),ia=T('<div class="reevit-psp-accordion"><button type="button"><span class="reevit-psp-option__logo" aria-hidden="true"><!></span> <div class="reevit-psp-option__content"><span class="reevit-psp-option__name"> </span> <span class="reevit-psp-option__methods"> </span></div></button> <!></div>'),oa=T('<div class="reevit-psp-selector"><div class="reevit-psp-selector__label">Select payment provider</div> <div class="reevit-psp-selector__options"></div></div>');function Yr(e,t){nn(t,!1);let n=U(t,"providers",24,()=>[]),r=U(t,"selectedProvider",8,null),o=U(t,"disabled",8,!1);U(t,"theme",8,void 0);let i=U(t,"selectedMethod",8,null);const l=pt.createEventDispatcher(),s={paystack:"https://reevit.io/images/providers/paystack.png",stripe:"https://reevit.io/images/providers/stripe.png",flutterwave:"https://reevit.io/images/providers/flutterwave.png",hubtel:"https://reevit.io/images/providers/hubtel.png",monnify:"https://reevit.io/images/providers/monnify.png",mpesa:"https://reevit.io/images/providers/mpesa.png"},c={card:"Card",mobile_money:"Mobile Money",bank_transfer:"Bank Transfer"},u=_=>_.length?_.map(h=>c[h]).join(", "):"Payment methods",f=(_,h)=>_.toLowerCase().includes("hubtel")?h.filter(p=>p==="card"||p==="mobile_money"):h;function d(_){l("select",_)}ln();var v=oa(),m=H(P(v),2);Jn(m,5,n,_=>_.provider,(_,h)=>{const p=Rt(()=>(W(r()),a(h),w(()=>r()===a(h).provider))),y=Rt(()=>(a(h),w(()=>f(a(h).provider,a(h).methods))));var V=ia(),S=P(V),B=P(S),K=P(B);{var X=A=>{var q=ta();Q(()=>$t(q,"src",(a(h),w(()=>s[a(h).provider])))),E(A,q)},F=A=>{var q=na(),g=P(q);Q(he=>ve(g,he),[()=>(a(h),w(()=>a(h).name.slice(0,1).toUpperCase()))]),E(A,q)};Z(K,A=>{a(h),w(()=>s[a(h).provider])?A(X):A(F,!1)})}var Y=H(B,2),C=P(Y),b=P(C),D=H(C,2),I=P(D),k=H(S,2);{var x=A=>{var q=ra(),g=P(q),he=P(g);Qn(he,{get methods(){return a(y)},get selected(){return i()},get provider(){return a(h),w(()=>a(h).provider)},layout:"list",showLabel:!1,$$events:{select:se=>l("methodSelect",se.detail)}});var Pe=H(g,2);Nn(Pe,t,"method-content",{},null),E(A,q)};Z(k,A=>{a(p)&&A(x)})}Q((A,q)=>{tt(S,1,A),S.disabled=o(),$t(S,"aria-expanded",a(p)),ve(b,(a(h),w(()=>a(h).name))),ve(I,q)},[()=>et((W(R.cn),W(a(p)),W(o()),w(()=>R.cn("reevit-psp-option",a(p)&&"reevit-psp-option--selected",o()&&"reevit-psp-option--disabled")))),()=>(W(a(y)),w(()=>u(a(y))))]),de("click",S,()=>d(a(h).provider)),E(_,V)}),E(e,v),rn()}var aa=T('<button type="button"><div class="reevit-network-dot"></div> </button>'),sa=T('<p class="reevit-error-message"> </p>'),la=T('<button type="button" class="reevit-btn reevit-btn--secondary">Back</button>'),ca=T('<span class="reevit-spinner"></span>'),ua=T("<span>Continue</span>"),fa=T('<form class="reevit-momo-form"><div class="reevit-form-group"><label class="reevit-label" for="reevit-phone">Phone Number</label> <input id="reevit-phone" type="tel" placeholder="e.g. 024 123 4567" autocomplete="tel"/></div> <div class="reevit-network-selector"><label class="reevit-label" for="reevit-network-grid">Select Network</label> <div id="reevit-network-grid" class="reevit-networks-grid"></div></div> <!> <div class="reevit-momo-form__actions"><!> <button type="submit" class="reevit-btn reevit-btn--primary"><!></button></div> <p class="reevit-secure-text">🔒 Secure mobile money payment via Reevit</p></form>');function Fn(e,t){nn(t,!1);let n=U(t,"initialPhone",8,""),r=U(t,"loading",8,!1),o=U(t,"hideCancel",8,!1);const i=pt.createEventDispatcher();let l=$(n()),s=$(null),c=$(null);function u(){if(!R.validatePhone(a(l))){O(c,"Please enter a valid phone number");return}if(!a(s)){O(c,"Please select your mobile network");return}i("submit",{phone:a(l),network:a(s)})}const f=[{id:"mtn",name:"MTN",color:"#FFCC00"},{id:"vodafone",name:"Vodafone",color:"#E60000"},{id:"airteltigo",name:"AirtelTigo",color:"#005596"}];te(()=>(a(l),a(c)),()=>{const C=R.detectNetwork(a(l));C&&O(s,C),a(c)&&O(c,null)}),Vn(),ln();var d=fa(),v=P(d),m=H(P(v),2),_=H(v,2),h=H(P(_),2);Jn(h,5,()=>f,C=>C.id,(C,b)=>{var D=aa(),I=P(D),k=H(I);Q(x=>{tt(D,1,x),D.disabled=r(),Zn(I,`background-color: ${a(b),w(()=>a(b).color)??""}`),ve(k,` ${a(b),w(()=>a(b).name)??""}`)},[()=>et((W(R.cn),a(s),a(b),w(()=>R.cn("reevit-network-btn",a(s)===a(b).id&&"reevit-network-btn--selected"))))]),de("click",D,()=>O(s,a(b).id)),E(C,D)});var p=H(_,2);{var y=C=>{var b=sa(),D=P(b);Q(()=>ve(D,a(c))),E(C,b)};Z(p,C=>{a(c)&&C(y)})}var V=H(p,2),S=P(V);{var B=C=>{var b=la();Q(()=>b.disabled=r()),de("click",b,()=>i("cancel")),E(C,b)};Z(S,C=>{o()||C(B)})}var K=H(S,2),X=P(K);{var F=C=>{var b=ca();E(C,b)},Y=C=>{var b=ua();E(C,b)};Z(X,C=>{r()?C(F):C(Y,!1)})}Q(C=>{tt(m,1,C),m.disabled=r(),K.disabled=r()||!a(l)},[()=>et((W(R.cn),a(c),W(R.validatePhone),a(l),w(()=>R.cn("reevit-input",a(c)&&!R.validatePhone(a(l))&&"reevit-input--error"))))]),Fo(m,()=>a(l),C=>O(l,C)),de("submit",d,Do(u)),E(e,d),rn()}class da{constructor(t){this.baseUrl="https://unified-pay.hubtel.com",this.messageHandler=null,this.stylesInjected=!1,t&&(this.baseUrl=t)}redirect({purchaseInfo:t,config:n}){const r=this.createCheckoutUrl(t,n),o=window.open(r);if(!o||o.closed||typeof o.closed>"u")throw new Error("Popup was blocked by the browser. Please allow popups for this site.")}initIframe({purchaseInfo:t,callBacks:n,config:r,iframeStyle:o}){var i,l,s;this.registerEvents(n);const c=document.getElementById("hubtel-checkout-iframe");if(!c)throw new Error('Container element with id "hubtel-checkout-iframe" not found in the DOM.');c.innerHTML="";const u=document.createElement("div");u.textContent="Loading...",c.appendChild(u);const f=document.createElement("iframe");f.setAttribute("id","hubtel-iframe-element"),f.src=this.createCheckoutUrl(t,r),f.style.display="none",f.style.width=(i=o?.width)!==null&&i!==void 0?i:"100%",f.style.height=(l=o?.height)!==null&&l!==void 0?l:"100%",f.style.minHeight=o?.minHeight||"400px",f.style.border=(s=o?.border)!==null&&s!==void 0?s:"none",f.onload=()=>{var d;c.removeChild(u),f.style.display="block",(d=n.onLoad)===null||d===void 0||d.call(n)},c.appendChild(f)}openModal({purchaseInfo:t,callBacks:n,config:r}){this.injectStyles(),this.createIframe(),this.handleBackButton(),this.registerEvents(n),this.renderWebpageInPopup(this.createCheckoutUrl(t,r),n.onClose,n.onLoad)}createCheckoutUrl(t,n){const r=Object.assign(Object.assign({},t),n),o=Object.keys(r).reduce((u,f)=>(r[f]!==null&&r[f]!==void 0&&(u[f]=r[f]),u),{}),i=Object.keys(o).map(u=>`${u}=${encodeURIComponent(o[u])}`).join("&"),l=this.encodeBase64(i),s=encodeURIComponent(l);return`${o?.branding==="disabled"?`${this.baseUrl}/pay/direct`:`${this.baseUrl}/pay`}?p=${s}`}encodeBase64(t){return btoa(unescape(encodeURIComponent(t)))}handleBackButton(){window.addEventListener("popstate",()=>{this.closePopUp()})}createIframe(){const t=document.createElement("div");t.setAttribute("id","backdrop"),t.classList.add("backdrop");const n=document.createElement("span");n.classList.add("checkout-loader"),t.appendChild(n),document.body.appendChild(t)}registerEvents(t){this.messageHandler&&window.removeEventListener("message",this.messageHandler,!1);const n=r=>{var o,i,l,s,c,u;if(r.origin!==this.baseUrl)return;const{data:f}=r;if(f.success===!0)(o=t.onPaymentSuccess)===null||o===void 0||o.call(t,f);else if(f.success===!1)(i=t.onPaymentFailure)===null||i===void 0||i.call(t,f);else if(f.initialized)(l=t.init)===null||l===void 0||l.call(t,f),(s=t.onInit)===null||s===void 0||s.call(t,f);else if(f.feesChanged)(c=t.onFeesChanged)===null||c===void 0||c.call(t,f.fees);else if(f.resize){const d=document.getElementById("hubtel-iframe-element");d&&(d.style.height=f.height+"px"),(u=t?.onResize)===null||u===void 0||u.call(t,f)}};this.messageHandler=n,window.addEventListener("message",n,!1)}destroy(){this.messageHandler&&(window.removeEventListener("message",this.messageHandler,!1),this.messageHandler=null)}renderWebpageInPopup(t,n,r){const o=document.createElement("div");o.classList.add("checkout-modal");const i=document.createElement("div");i.setAttribute("id","checkout-close-icon"),i.innerHTML="×",i.classList.add("close-icon"),i.addEventListener("click",()=>{this.closePopUp(),n?.()}),o.appendChild(i);const l=document.createElement("iframe");l.src=t,history.pushState({modalOpen:!0},""),l.classList.add("iframe"),o.appendChild(l),document.body.appendChild(o),o.style.opacity="0",l.addEventListener("load",()=>{o.style.opacity="1",r?.()})}closePopUp(){const t=document.querySelector(".backdrop"),n=document.querySelector(".checkout-modal");t&&document.body.removeChild(t),n&&document.body.removeChild(n),history.replaceState(null,""),window.removeEventListener("popstate",this.closePopUp)}injectStyles(){if(this.stylesInjected)return;const t=document.createElement("style");t.type="text/css",t.setAttribute("data-hubtel-checkout","true"),t.innerHTML=`
|
|
2
2
|
.backdrop {
|
|
3
3
|
position: fixed;
|
|
4
4
|
left: 0;
|
|
@@ -98,4 +98,4 @@
|
|
|
98
98
|
|
|
99
99
|
}
|
|
100
100
|
}
|
|
101
|
-
`,document.head.appendChild(t),this.stylesInjected=!0}}const lr=new Map;function ln(e,t){const n=lr.get(t);if(n)return n;const r=new Promise((a,i)=>{if(document.getElementById(t)){a();return}const l=document.createElement("script");l.id=t,l.src=e,l.async=!0,l.onload=()=>a(),l.onerror=()=>i(new Error(`Failed to load ${t} script`)),document.head.appendChild(l)});return lr.set(t,r),r}function Yr(){return ln("https://js.paystack.co/v1/inline.js","paystack-script")}function lo(){return Promise.resolve()}function Gr(){return ln("https://checkout.flutterwave.com/v3.js","flutterwave-script")}function Wr(){return ln("https://js.stripe.com/v3/","stripe-script")}function Jr(){return ln("https://sdk.monnify.com/plugin/monnify.js","monnify-script")}async function Zr(e){if(await Yr(),!window.PaystackPop)throw new Error("Paystack script not loaded");window.PaystackPop.setup({key:e.key,email:e.email,amount:e.amount,currency:e.currency,ref:e.ref,metadata:e.metadata,callback:e.onSuccess,onClose:e.onClose}).openIframe()}async function Qr(e){const t=new so,n=e.preferredMethod==="mobile_money"?"momo":e.preferredMethod==="card"?"card":void 0,r={amount:e.amount,purchaseDescription:e.purchaseDescription,customerPhoneNumber:e.customerPhone||"",clientReference:`hubtel_${Date.now()}`,...n?{paymentMethod:n}:{}},a=e.hubtelSessionToken||e.basicAuth||"",i={branding:"enabled",callbackUrl:e.callbackUrl||(typeof window<"u"?window.location.href:""),merchantAccount:typeof e.clientId=="string"?parseInt(e.clientId,10):e.clientId,basicAuth:a,...n?{paymentMethod:n}:{}};t.openModal({purchaseInfo:r,config:i,callBacks:{onPaymentSuccess:l=>{e.onSuccess(l),t.closePopUp()},onPaymentFailure:()=>{e.onClose()},onClose:()=>{e.onClose()}}})}async function Xr(e){if(await Gr(),!window.FlutterwaveCheckout)throw new Error("Flutterwave script not loaded");window.FlutterwaveCheckout({public_key:e.public_key,tx_ref:e.tx_ref,amount:e.amount,currency:e.currency,customer:e.customer,payment_options:e.payment_options,customizations:e.customizations,callback:e.callback,onclose:e.onclose})}async function $r(e){if(await Wr(),!window.Stripe)throw new Error("Stripe.js not loaded");return window.Stripe(e)}async function co(e){const n=await(await $r(e.publishableKey)).confirmPayment({elements:e.elements,clientSecret:e.clientSecret,redirect:"if_required"});n.error?e.onError({message:n.error.message||"Payment failed"}):n.paymentIntent&&e.onSuccess({paymentIntentId:n.paymentIntent.id,status:n.paymentIntent.status})}async function ei(e){if(await Jr(),!window.MonnifySDK)throw new Error("Monnify SDK not loaded");window.MonnifySDK.initialize({amount:e.amount,currency:e.currency,reference:e.reference,customerName:e.customerName,customerEmail:e.customerEmail,customerMobileNumber:e.customerPhone,apiKey:e.apiKey,contractCode:e.contractCode,paymentDescription:e.paymentDescription||"Payment",isTestMode:e.isTestMode??!1,metadata:e.metadata,onComplete:t=>{t.status==="SUCCESS"?e.onSuccess({transactionReference:t.transactionReference,paymentReference:t.paymentReference,...t}):e.onError?.({message:t.message||"Payment failed"})},onClose:e.onClose})}async function ti(e,t){e.onInitiated();try{const n=await fetch(t,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({phone_number:e.phoneNumber,amount:e.amount,reference:e.reference,description:e.description})});if(!n.ok){const i=(await n.json().catch(()=>({}))).message||"Failed to initiate M-Pesa payment";return e.onError({message:i}),{status:"failed",message:i}}const r=await n.json();return{status:"initiated",message:"Please check your phone and enter your M-Pesa PIN to complete the payment.",transactionId:r.checkout_request_id||r.transaction_id}}catch(n){const r=n instanceof Error?n.message:"Network error";return e.onError({message:r}),{status:"failed",message:r}}}var uo=A('<span class="reevit-spinner"></span>'),fo=A('<button type="button" class="reevit-pay-button"><!></button>'),vo=A('<div class="reevit-loading-state"><div class="reevit-spinner reevit-spinner--large"></div> <p>Initializing payment...</p></div>'),po=A('<div class="reevit-error-state"><div class="reevit-error-icon">⚠️</div> <h3>Payment Failed</h3> <p> </p> <button class="reevit-retry-btn">Retry</button></div>'),ho=A('<div class="reevit-success-state"><div class="reevit-success-icon">✅</div> <h3>Payment Successful</h3> <p>Thank you for your payment.</p> <button class="reevit-done-btn">Done</button></div>'),mo=A(`<div class="reevit-inline-action"><p class="reevit-inline-action__hint">You'll be redirected to complete your card payment securely.</p> <button class="reevit-btn reevit-btn--primary">Pay with Card</button></div>`),_o=A('<p class="reevit-inline-action__hint"> </p> <button class="reevit-btn reevit-btn--primary"> </button>',1),yo=A('<div class="reevit-inline-action"><!></div>'),bo=A('<div slot="method-content" class="reevit-animate-fade-in"><!></div>'),go=A('<span class="reevit-spinner"></span>'),wo=A("<span> </span>"),Po=A('<div class="reevit-card-info reevit-animate-fade-in"><p class="reevit-info-text"> </p> <button class="reevit-submit-btn"><!></button></div>'),Eo=A('<div class="reevit-method-step__actions reevit-animate-slide-up"><!></div>'),So=A("<!> <!>",1),ko=A('<div class="reevit-method-step reevit-animate-slide-up"><!></div>'),Io=A('<div class="reevit-modal-overlay" role="button" tabindex="0"><div><button class="reevit-modal-close" aria-label="Close">×</button> <div class="reevit-modal-header"><img alt="Checkout" class="reevit-modal__logo"/></div> <div class="reevit-modal-body"><!></div> <div class="reevit-modal-footer"><div class="reevit-trust-badges"><span>PCI DSS Compliant</span> <span>•</span> <span>SSL Secure</span></div></div></div></div>'),Mo=A('<div class="reevit-sdk-container"><!> <!></div>');function Co(e,t){tn(t,!1);const n=()=>La(b,"$store",r),[r,a]=Fa(),i=X(),l=X(),s=X(),c=X(),u=X(),f=vt.createEventDispatcher();let d=U(t,"publicKey",8,void 0),v=U(t,"amount",8),m=U(t,"currency",8),_=U(t,"email",8,void 0),h=U(t,"phone",8,void 0),p=U(t,"customerName",8,void 0),y=U(t,"reference",8,void 0),V=U(t,"metadata",8,void 0),S=U(t,"customFields",8,void 0),z=U(t,"paymentLinkCode",8,void 0),K=U(t,"paymentMethods",24,()=>["card","mobile_money"]),Q=U(t,"theme",24,()=>({})),F=U(t,"isOpen",12,!1),Y=U(t,"apiBaseUrl",8,void 0),I=U(t,"initialPaymentIntent",8,void 0),P=X({}),D=X(null),M=X("paystack"),k=X(["card","mobile_money"]),R=X([]),T=X(o(k));const q={hubtel:"Hubtel",paystack:"Paystack",flutterwave:"Flutterwave",monnify:"Monnify",mpesa:"M-Pesa",stripe:"Stripe"},b=Br({config:{publicKey:d(),amount:v(),currency:m(),email:_(),phone:h(),customerName:p(),reference:y(),metadata:V(),customFields:S(),paymentLinkCode:z(),paymentMethods:K(),initialPaymentIntent:I()},apiBaseUrl:Y(),onSuccess:C=>f("success",C),onError:C=>f("error",C),onClose:()=>{F(!1),f("close")}});function de(){F(!0),O(D,null)}function we(){F(!1),O(D,null),b.close()}async function se(C){if(!o(i).paymentIntent)return;const J=o(M);try{switch(J){case"paystack":{await Zr({key:o(i).paymentIntent.pspPublicKey??d()??"",email:_()??"",amount:v(),currency:m(),ref:o(i).paymentIntent.id,onSuccess:G=>b.handlePspSuccess(G),onClose:()=>{}});break}case"hubtel":{const G=o(i).paymentIntent.pspCredentials?.merchantAccount,le=x.createReevitClient({publicKey:d(),baseUrl:Y()}),{data:j,error:ae}=await le.createHubtelSession(o(i).paymentIntent.id,o(i).paymentIntent.clientSecret);if(ae||!j?.basicAuth){f("error",{code:ae?.code||"hubtel_session_error",message:ae?.message||"Failed to create Hubtel session"});return}const pe=o(i).selectedMethod==="card"||o(i).selectedMethod==="mobile_money"?o(i).selectedMethod:void 0;await Qr({clientId:j.merchantAccount||(typeof G=="string"?G:d()??""),purchaseDescription:`Payment for ${v()} ${m()}`,amount:v(),customerPhone:C?.phone??h()??"",customerEmail:_()??"",basicAuth:j.basicAuth,preferredMethod:pe,onSuccess:bt=>b.handlePspSuccess(bt),onClose:()=>{}});break}case"flutterwave":{await Xr({public_key:o(i).paymentIntent.pspPublicKey??d()??"",tx_ref:o(i).paymentIntent.id,amount:v(),currency:m(),customer:{email:_()??"",phone_number:C?.phone??h()??""},callback:G=>b.handlePspSuccess(G),onclose:()=>{}});break}case"monnify":{const G=V()?.contract_code,le=o(i).paymentIntent.pspPublicKey??d()??"",j=typeof G=="string"?G:d()??"";if(!le||!j){b.handlePspError({code:"MONNIFY_CONFIG_MISSING",message:"Monnify configuration is missing. Please check your API key and contract code."});return}await ei({apiKey:le,contractCode:j,amount:v(),currency:m(),reference:o(i).paymentIntent.reference??o(i).paymentIntent.id,customerName:V()?.customer_name??_()??"",customerEmail:_()??"",customerPhone:C?.phone??h()??"",metadata:V(),onSuccess:ae=>b.handlePspSuccess(ae),onClose:()=>{}});break}case"mpesa":{const le=`${Y()??"https://api.reevit.io"}/v1/payments/${o(i).paymentIntent.id}/mpesa`;await ti({phoneNumber:C?.phone??h()??"",amount:v(),reference:o(i).paymentIntent.reference??o(i).paymentIntent.id,description:`Payment ${o(i).paymentIntent.reference??""}`,onInitiated:()=>{},onSuccess:j=>b.handlePspSuccess(j),onError:j=>b.handlePspError({code:"MPESA_ERROR",message:j.message})},le);break}case"stripe":{b.handlePspError({code:"STRIPE_NOT_IMPLEMENTED",message:"Stripe integration requires custom Elements setup. Please use the React SDK or implement custom Stripe Elements."});break}default:b.handlePspError({code:"UNSUPPORTED_PSP",message:`Payment provider "${J}" is not supported in this checkout.`})}}catch(G){b.handlePspError({code:"BRIDGE_ERROR",message:G instanceof Error?G.message:"Failed to open payment gateway"})}}function cn(C){if(C===o(D)){O(D,null),b.reset();return}const J=o(R).find(j=>j.provider===C),G=J?.methods?.length?J.methods:o(k),le=o(i).selectedMethod&&G.includes(o(i).selectedMethod)?o(i).selectedMethod:G[0];O(D,C),b.reset(),b.initialize(le,{preferredProvider:C,allowedProviders:[C]})}vt.onMount(()=>{F()&&b.initialize()}),vt.onDestroy(()=>{typeof document<"u"&&(document.body.style.overflow="")}),te(()=>n(),()=>{O(i,n())}),te(()=>(o(i),W(Q())),()=>{O(P,{...o(i).paymentIntent?.branding||{},...Q()||{}})}),te(()=>o(P),()=>{O(l,x.createThemeVariables(o(P)))}),te(()=>W(K()),()=>{O(k,K()?.length?K():["card","mobile_money"])}),te(()=>(o(i),o(k)),()=>{O(R,(()=>{const C=o(i).paymentIntent;if(!C)return[];const J=new Set(o(k)),G=(C.availableProviders||[]).map(j=>{const ae=j.provider.toLowerCase().includes("hubtel")?j.methods.filter(pe=>pe==="card"||pe==="mobile_money"):j.methods;return{...j,methods:ae.filter(pe=>J.has(pe))}}).filter(j=>j.methods.length>0);if(G.length>0)return G;const le=C.recommendedPsp.toLowerCase().includes("hubtel")?o(k).filter(j=>j==="card"||j==="mobile_money"):o(k);return[{provider:C.recommendedPsp,name:q[C.recommendedPsp]||C.recommendedPsp,methods:le}]})())}),te(()=>(o(R),o(D)),()=>{o(R).length>0&&(o(D)&&o(R).some(C=>C.provider===o(D))||(o(R).length===1?O(D,o(R)[0].provider):O(D,null)))}),te(()=>(o(D),o(i)),()=>{O(M,o(D)||o(i).paymentIntent?.recommendedPsp||"paystack")}),te(()=>(o(R),o(M),o(k)),()=>{O(T,(()=>{const C=o(R).find(J=>J.provider===o(M));return C?.methods.length?C.methods:o(k)})())}),te(()=>(o(i),o(T)),()=>{o(i).selectedMethod&&o(T).length>0&&!o(T).includes(o(i).selectedMethod)&&b.selectMethod(o(T)[0])}),te(()=>{},()=>{O(s,b.isLoading())}),te(()=>{},()=>{O(c,b.getStatus()==="processing")}),te(()=>{},()=>{O(u,b.getStatus()==="method_selected")}),te(()=>(W(F()),o(i),o(D),W(h())),()=>{if(F()&&o(i).paymentIntent&&o(i).selectedMethod){const J=(o(D)||o(i).paymentIntent.recommendedPsp||"paystack").toLowerCase().includes("mpesa");(o(i).selectedMethod==="card"||o(i).selectedMethod==="mobile_money"&&(!J||h()))&&se(null)}}),te(()=>(W(F()),o(i)),()=>{F()?(document.body.style.overflow="hidden",!o(i).paymentIntent&&o(i).status==="idle"&&b.initialize()):typeof document<"u"&&(document.body.style.overflow="")}),Bn(),sn();var ve=Mo(),yt=g(ve);An(yt,t,"default",{handleOpen:de,get isLoading(){return o(s)}},C=>{var J=fo(),G=g(J);{var le=ae=>{var pe=uo();E(ae,pe)},j=ae=>{var pe=ut(),bt=Ke(pe);An(bt,t,"button-text",{},un=>{var fn=ga("Pay Now");E(un,fn)}),E(ae,pe)};Z(G,ae=>{o(s)?ae(le):ae(j,!1)})}$(()=>J.disabled=o(s)),ue("click",J,de),E(C,J)});var ni=B(yt,2);{var ri=C=>{var J=Io(),G=g(J),le=g(G),j=B(le,2),ae=g(j),pe=B(j,2),bt=g(pe);{var un=ke=>{var Dt=vo();E(ke,Dt)},fn=ke=>{var Dt=ut(),ii=Ke(Dt);{var ai=it=>{var gt=po(),Ut=B(g(gt),4),dn=g(Ut),vn=B(Ut,2);$(()=>me(dn,(o(i),w(()=>o(i).error.message)))),ue("click",vn,()=>b.initialize()),E(it,gt)},oi=it=>{var gt=ut(),Ut=Ke(gt);{var dn=at=>{var wt=ho(),pn=B(g(wt),6);ue("click",pn,we),E(at,wt)},vn=at=>{var wt=ut(),pn=Ke(wt);{var si=hn=>{var Qn=ko(),li=g(Qn);{var ci=ot=>{Vr(ot,{get providers(){return o(R)},get selectedProvider(){return o(D)},get disabled(){return o(s)},get theme(){return o(P)},get selectedMethod(){return o(i),w(()=>o(i).selectedMethod)},$$events:{select:Le=>cn(Le.detail),methodSelect:Le=>b.selectMethod(Le.detail)},$$slots:{"method-content":(Le,mn)=>{var jt=bo(),_n=g(jt);{var Ge=Fe=>{var We=mo(),st=B(g(We),2);$(()=>st.disabled=o(c)),ue("click",st,()=>se(null)),E(Fe,We)},Ht=Fe=>{var We=ut(),st=Ke(We);{var De=Ue=>{var Pt=yo(),yn=g(Pt);{var Et=je=>{Ln(je,{get initialPhone(){return h()},get loading(){return o(c)},hideCancel:!0,$$events:{submit:lt=>se(lt.detail)}})},bn=je=>{var lt=_o(),Pe=Ke(lt),ct=g(Pe),St=B(Pe,2),gn=g(St);$((fi,di)=>{me(ct,fi),St.disabled=o(c),me(gn,di)},[()=>(o(M),w(()=>o(M).includes("hubtel")?"Opens the Hubtel checkout with Mobile Money selected.":`Continue to pay securely with Mobile Money via ${q[o(M)]||o(M)}.`)),()=>(o(M),w(()=>o(M).includes("hubtel")?"Continue with Hubtel":"Pay with Mobile Money"))]),ue("click",St,()=>se(null)),E(je,lt)};Z(yn,je=>{o(M),W(h()),w(()=>o(M).includes("mpesa")&&!h())?je(Et):je(bn,!1)})}E(Ue,Pt)};Z(st,Ue=>{o(i),w(()=>o(i).selectedMethod==="mobile_money")&&Ue(De)},!0)}E(Fe,We)};Z(_n,Fe=>{o(i),w(()=>o(i).selectedMethod==="card")?Fe(Ge):Fe(Ht,!1)})}E(Le,jt)}}})},ui=ot=>{var Le=So(),mn=Ke(Le);Zn(mn,{get methods(){return o(T)},get selected(){return o(i),w(()=>o(i).selectedMethod)},get amount(){return v()},get currency(){return m()},get provider(){return o(M)},layout:"grid",showLabel:!1,$$events:{select:Ge=>b.selectMethod(Ge.detail)}});var jt=B(mn,2);{var _n=Ge=>{var Ht=Eo(),Fe=g(Ht);{var We=De=>{Ln(De,{get initialPhone(){return h()},get loading(){return o(c)},$$events:{submit:Ue=>se(Ue.detail),cancel:()=>b.selectMethod(null)}})},st=De=>{var Ue=Po(),Pt=g(Ue),yn=g(Pt),Et=B(Pt,2),bn=g(Et);{var je=Pe=>{var ct=go();E(Pe,ct)},lt=Pe=>{var ct=wo(),St=g(ct);$(gn=>me(St,gn),[()=>(o(i),o(M),w(()=>o(i).selectedMethod==="card"?"Pay with Card":o(M).includes("hubtel")?"Continue with Hubtel":"Pay with Mobile Money"))]),E(Pe,ct)};Z(bn,Pe=>{o(c)?Pe(je):Pe(lt,!1)})}$(Pe=>{me(yn,Pe),Et.disabled=o(c)},[()=>(o(i),o(M),w(()=>o(i).selectedMethod==="card"?"You will be redirected to complete your card payment securely.":o(M).includes("hubtel")?"Opens the Hubtel checkout with Mobile Money selected.":`Continue to pay securely via ${q[o(M)]||o(M)}.`))]),ue("click",Et,()=>se(null)),E(De,Ue)};Z(Fe,De=>{o(i),o(M),W(h()),w(()=>o(i).selectedMethod==="mobile_money"&&o(M).includes("mpesa")&&!h())?De(We):De(st,!1)})}E(Ge,Ht)};Z(jt,Ge=>{o(u)&&Ge(_n)})}E(ot,Le)};Z(li,ot=>{o(R),w(()=>o(R).length>1)?ot(ci):ot(ui,!1)})}E(hn,Qn)};Z(pn,hn=>{o(i),o(u),w(()=>o(i).status==="ready"||o(u))&&hn(si)},!0)}E(at,wt)};Z(Ut,at=>{o(i),w(()=>o(i).status==="success")?at(dn):at(vn,!1)},!0)}E(it,gt)};Z(ii,it=>{o(i),w(()=>o(i).status==="failed"&&o(i).error)?it(ai):it(oi,!1)},!0)}E(ke,Dt)};Z(bt,ke=>{o(i),w(()=>o(i).status==="loading")?ke(un):ke(fn,!1)})}$(ke=>{et(G,1,ke),On(ae,"src",(o(P),w(()=>o(P).logoUrl||"https://i.imgur.com/bzUR5Lm.png")))},[()=>$e((W(x.cn),o(P),w(()=>x.cn("reevit-modal-content",o(P).darkMode&&"reevit-modal--dark"))))]),ue("click",le,we),ue("click",J,we),ue("keydown",J,ke=>ke.key==="Escape"&&we()),E(C,J)};Z(ni,C=>{F()&&C(ri)})}$(C=>Jn(ve,C),[()=>(o(l),w(()=>Object.entries(o(l)).map(([C,J])=>`${C}:${J}`).join(";")))]),E(e,ve),nn(),a()}Object.defineProperty(exports,"ReevitAPIClient",{enumerable:!0,get:()=>x.ReevitAPIClient});Object.defineProperty(exports,"cn",{enumerable:!0,get:()=>x.cn});Object.defineProperty(exports,"createInitialState",{enumerable:!0,get:()=>x.createInitialState});Object.defineProperty(exports,"createReevitClient",{enumerable:!0,get:()=>x.createReevitClient});Object.defineProperty(exports,"detectCountryFromCurrency",{enumerable:!0,get:()=>x.detectCountryFromCurrency});Object.defineProperty(exports,"detectNetwork",{enumerable:!0,get:()=>x.detectNetwork});Object.defineProperty(exports,"formatAmount",{enumerable:!0,get:()=>x.formatAmount});Object.defineProperty(exports,"formatPhone",{enumerable:!0,get:()=>x.formatPhone});Object.defineProperty(exports,"reevitReducer",{enumerable:!0,get:()=>x.reevitReducer});Object.defineProperty(exports,"validatePhone",{enumerable:!0,get:()=>x.validatePhone});exports.MobileMoneyForm=Ln;exports.PaymentMethodSelector=Zn;exports.ProviderSelector=Vr;exports.ReevitCheckout=Co;exports.confirmStripePayment=co;exports.createReevitStore=Br;exports.createStripeInstance=$r;exports.initiateMPesaSTKPush=ti;exports.loadFlutterwaveScript=Gr;exports.loadHubtelScript=lo;exports.loadMonnifyScript=Jr;exports.loadPaystackScript=Yr;exports.loadStripeScript=Wr;exports.openFlutterwaveModal=Xr;exports.openHubtelPopup=Qr;exports.openMonnifyModal=ei;exports.openPaystackPopup=Zr;
|
|
101
|
+
`,document.head.appendChild(t),this.stylesInjected=!0}}const cr=new Map;function cn(e,t){const n=cr.get(t);if(n)return n;const r=new Promise((o,i)=>{if(document.getElementById(t)){o();return}const l=document.createElement("script");l.id=t,l.src=e,l.async=!0,l.onload=()=>o(),l.onerror=()=>i(new Error(`Failed to load ${t} script`)),document.head.appendChild(l)});return cr.set(t,r),r}function Gr(){return cn("https://js.paystack.co/v1/inline.js","paystack-script")}function va(){return Promise.resolve()}function Wr(){return cn("https://checkout.flutterwave.com/v3.js","flutterwave-script")}function Jr(){return cn("https://js.stripe.com/v3/","stripe-script")}function Zr(){return cn("https://sdk.monnify.com/plugin/monnify.js","monnify-script")}async function Qr(e){if(await Gr(),!window.PaystackPop)throw new Error("Paystack script not loaded");window.PaystackPop.setup({key:e.key,email:e.email,amount:e.amount,currency:e.currency,ref:e.ref,metadata:e.metadata,callback:e.onSuccess,onClose:e.onClose}).openIframe()}async function Xr(e){const t=new da,n=e.preferredMethod==="mobile_money"?"momo":e.preferredMethod==="card"?"card":void 0,r={amount:e.amount,purchaseDescription:e.purchaseDescription,customerPhoneNumber:e.customerPhone||"",clientReference:`hubtel_${Date.now()}`,...n?{paymentMethod:n}:{}},o=e.hubtelSessionToken||e.basicAuth||"",i={branding:"enabled",callbackUrl:e.callbackUrl||(typeof window<"u"?window.location.href:""),merchantAccount:typeof e.clientId=="string"?parseInt(e.clientId,10):e.clientId,basicAuth:o,...n?{paymentMethod:n}:{}};t.openModal({purchaseInfo:r,config:i,callBacks:{onPaymentSuccess:l=>{e.onSuccess(l),t.closePopUp()},onPaymentFailure:()=>{e.onClose()},onClose:()=>{e.onClose()}}})}async function $r(e){if(await Wr(),!window.FlutterwaveCheckout)throw new Error("Flutterwave script not loaded");window.FlutterwaveCheckout({public_key:e.public_key,tx_ref:e.tx_ref,amount:e.amount,currency:e.currency,customer:e.customer,payment_options:e.payment_options,customizations:e.customizations,callback:e.callback,onclose:e.onclose})}async function ei(e){if(await Jr(),!window.Stripe)throw new Error("Stripe.js not loaded");return window.Stripe(e)}async function pa(e){const n=await(await ei(e.publishableKey)).confirmPayment({elements:e.elements,clientSecret:e.clientSecret,redirect:"if_required"});n.error?e.onError({message:n.error.message||"Payment failed"}):n.paymentIntent&&e.onSuccess({paymentIntentId:n.paymentIntent.id,status:n.paymentIntent.status})}async function ti(e){if(await Zr(),!window.MonnifySDK)throw new Error("Monnify SDK not loaded");window.MonnifySDK.initialize({amount:e.amount,currency:e.currency,reference:e.reference,customerName:e.customerName,customerEmail:e.customerEmail,customerMobileNumber:e.customerPhone,apiKey:e.apiKey,contractCode:e.contractCode,paymentDescription:e.paymentDescription||"Payment",isTestMode:e.isTestMode??!1,metadata:e.metadata,onComplete:t=>{t.status==="SUCCESS"?e.onSuccess({transactionReference:t.transactionReference,paymentReference:t.paymentReference,...t}):e.onError?.({message:t.message||"Payment failed"})},onClose:e.onClose})}async function ni(e,t){e.onInitiated();try{const n=await fetch(t,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({phone_number:e.phoneNumber,amount:e.amount,reference:e.reference,description:e.description})});if(!n.ok){const i=(await n.json().catch(()=>({}))).message||"Failed to initiate M-Pesa payment";return e.onError({message:i}),{status:"failed",message:i}}const r=await n.json();return{status:"initiated",message:"Please check your phone and enter your M-Pesa PIN to complete the payment.",transactionId:r.checkout_request_id||r.transaction_id}}catch(n){const r=n instanceof Error?n.message:"Network error";return e.onError({message:r}),{status:"failed",message:r}}}var ha=T('<span class="reevit-spinner"></span>'),ma=T('<button type="button" class="reevit-pay-button"><!></button>'),_a=T('<span class="reevit-modal__brand-name"> </span>'),ya=T('<div class="reevit-loading-state"><div class="reevit-spinner reevit-spinner--large"></div> <p>Initializing payment...</p></div>'),ba=T('<div class="reevit-error-state"><div class="reevit-error-icon">⚠️</div> <h3>Payment Failed</h3> <p> </p> <button class="reevit-retry-btn">Retry</button></div>'),ga=T('<div class="reevit-success-state"><div class="reevit-success-icon">✅</div> <h3>Payment Successful</h3> <p>Thank you for your payment.</p> <button class="reevit-done-btn">Done</button></div>'),wa=T(`<div class="reevit-inline-action"><p class="reevit-inline-action__hint">You'll be redirected to complete your card payment securely.</p> <button class="reevit-btn reevit-btn--primary">Pay with Card</button></div>`),Pa=T('<p class="reevit-inline-action__hint"> </p> <button class="reevit-btn reevit-btn--primary"> </button>',1),Ea=T('<div class="reevit-inline-action"><!></div>'),Sa=T('<div slot="method-content" class="reevit-animate-fade-in"><!></div>'),ka=T('<span class="reevit-spinner"></span>'),Ca=T("<span> </span>"),Ia=T('<div class="reevit-card-info reevit-animate-fade-in"><p class="reevit-info-text"> </p> <button class="reevit-submit-btn"><!></button></div>'),Ma=T('<div class="reevit-method-step__actions reevit-animate-slide-up"><!></div>'),xa=T("<!> <!>",1),Ra=T('<div class="reevit-method-step reevit-animate-slide-up"><!></div>'),Ta=T('<div class="reevit-modal-overlay" role="button" tabindex="0"><div><button class="reevit-modal-close" aria-label="Close">×</button> <div class="reevit-modal-header"><div class="reevit-modal__branding"><img class="reevit-modal__logo"/> <!></div></div> <div class="reevit-modal-body"><!></div> <div class="reevit-modal-footer"><div class="reevit-trust-badges"><span>PCI DSS Compliant</span> <span>•</span> <span>SSL Secure</span></div></div></div></div>'),Aa=T('<div class="reevit-sdk-container"><!> <!></div>');function Oa(e,t){nn(t,!1);const n=()=>jo(g,"$store",r),[r,o]=Ho(),i=$(),l=$(),s=$(),c=$(),u=$(),f=pt.createEventDispatcher();let d=U(t,"publicKey",8,void 0),v=U(t,"amount",8),m=U(t,"currency",8),_=U(t,"email",8,void 0),h=U(t,"phone",8,void 0),p=U(t,"customerName",8,void 0),y=U(t,"reference",8,void 0),V=U(t,"metadata",8,void 0),S=U(t,"customFields",8,void 0),B=U(t,"paymentLinkCode",8,void 0),K=U(t,"paymentMethods",24,()=>["card","mobile_money"]),X=U(t,"theme",24,()=>({})),F=U(t,"isOpen",12,!1),Y=U(t,"apiBaseUrl",8,void 0),C=U(t,"initialPaymentIntent",8,void 0),b=$({}),D=$(null),I=$("paystack"),k=$(["card","mobile_money"]),x=$([]),A=$(a(k));const q={hubtel:"Hubtel",paystack:"Paystack",flutterwave:"Flutterwave",monnify:"Monnify",mpesa:"M-Pesa",stripe:"Stripe"},g=Vr({config:{publicKey:d(),amount:v(),currency:m(),email:_(),phone:h(),customerName:p(),reference:y(),metadata:V(),customFields:S(),paymentLinkCode:B(),paymentMethods:K(),initialPaymentIntent:C()},apiBaseUrl:Y(),onSuccess:M=>f("success",M),onError:M=>f("error",M),onClose:()=>{F(!1),f("close")}});function he(){F(!0),O(D,null)}function Pe(){F(!1),O(D,null),g.close()}async function se(M){if(!a(i).paymentIntent)return;const J=a(I);try{switch(J){case"paystack":{await Qr({key:a(i).paymentIntent.pspPublicKey??d()??"",email:_()??"",amount:v(),currency:m(),ref:a(i).paymentIntent.id,onSuccess:G=>g.handlePspSuccess(G),onClose:()=>{}});break}case"hubtel":{const G=a(i).paymentIntent.pspCredentials?.merchantAccount,le=R.createReevitClient({publicKey:d(),baseUrl:Y()}),{data:j,error:oe}=await le.createHubtelSession(a(i).paymentIntent.id,a(i).paymentIntent.clientSecret);if(oe||!j?.basicAuth){f("error",{code:oe?.code||"hubtel_session_error",message:oe?.message||"Failed to create Hubtel session"});return}const ce=a(i).selectedMethod==="card"||a(i).selectedMethod==="mobile_money"?a(i).selectedMethod:void 0;await Xr({clientId:j.merchantAccount||(typeof G=="string"?G:d()??""),purchaseDescription:`Payment for ${v()} ${m()}`,amount:v(),customerPhone:M?.phone??h()??"",customerEmail:_()??"",basicAuth:j.basicAuth,preferredMethod:ce,onSuccess:gt=>g.handlePspSuccess(gt),onClose:()=>{}});break}case"flutterwave":{await $r({public_key:a(i).paymentIntent.pspPublicKey??d()??"",tx_ref:a(i).paymentIntent.id,amount:v(),currency:m(),customer:{email:_()??"",phone_number:M?.phone??h()??""},callback:G=>g.handlePspSuccess(G),onclose:()=>{}});break}case"monnify":{const G=V()?.contract_code,le=a(i).paymentIntent.pspPublicKey??d()??"",j=typeof G=="string"?G:d()??"";if(!le||!j){g.handlePspError({code:"MONNIFY_CONFIG_MISSING",message:"Monnify configuration is missing. Please check your API key and contract code."});return}await ti({apiKey:le,contractCode:j,amount:v(),currency:m(),reference:a(i).paymentIntent.reference??a(i).paymentIntent.id,customerName:V()?.customer_name??_()??"",customerEmail:_()??"",customerPhone:M?.phone??h()??"",metadata:V(),onSuccess:oe=>g.handlePspSuccess(oe),onClose:()=>{}});break}case"mpesa":{const le=`${Y()??"https://api.reevit.io"}/v1/payments/${a(i).paymentIntent.id}/mpesa`;await ni({phoneNumber:M?.phone??h()??"",amount:v(),reference:a(i).paymentIntent.reference??a(i).paymentIntent.id,description:`Payment ${a(i).paymentIntent.reference??""}`,onInitiated:()=>{},onSuccess:j=>g.handlePspSuccess(j),onError:j=>g.handlePspError({code:"MPESA_ERROR",message:j.message})},le);break}case"stripe":{g.handlePspError({code:"STRIPE_NOT_IMPLEMENTED",message:"Stripe integration requires custom Elements setup. Please use the React SDK or implement custom Stripe Elements."});break}default:g.handlePspError({code:"UNSUPPORTED_PSP",message:`Payment provider "${J}" is not supported in this checkout.`})}}catch(G){g.handlePspError({code:"BRIDGE_ERROR",message:G instanceof Error?G.message:"Failed to open payment gateway"})}}function un(M){if(M===a(D)){O(D,null),g.reset();return}const J=a(x).find(j=>j.provider===M),G=J?.methods?.length?J.methods:a(k),le=a(i).selectedMethod&&G.includes(a(i).selectedMethod)?a(i).selectedMethod:G[0];O(D,M),g.reset(),g.initialize(le,{preferredProvider:M,allowedProviders:[M]})}pt.onMount(()=>{F()&&g.initialize()}),pt.onDestroy(()=>{typeof document<"u"&&(document.body.style.overflow="")}),te(()=>n(),()=>{O(i,n())}),te(()=>(a(i),W(X())),()=>{O(b,{...a(i).paymentIntent?.branding||{},...X()||{}})}),te(()=>a(b),()=>{O(l,R.createThemeVariables(a(b)))}),te(()=>W(K()),()=>{O(k,K()?.length?K():["card","mobile_money"])}),te(()=>(a(i),a(k)),()=>{O(x,(()=>{const M=a(i).paymentIntent;if(!M)return[];const J=new Set(a(k)),G=(M.availableProviders||[]).map(j=>{const oe=j.provider.toLowerCase().includes("hubtel")?j.methods.filter(ce=>ce==="card"||ce==="mobile_money"):j.methods;return{...j,methods:oe.filter(ce=>J.has(ce))}}).filter(j=>j.methods.length>0);if(G.length>0)return G;const le=M.recommendedPsp.toLowerCase().includes("hubtel")?a(k).filter(j=>j==="card"||j==="mobile_money"):a(k);return[{provider:M.recommendedPsp,name:q[M.recommendedPsp]||M.recommendedPsp,methods:le}]})())}),te(()=>(a(x),a(D)),()=>{a(x).length>0&&(a(D)&&a(x).some(M=>M.provider===a(D))||(a(x).length===1?O(D,a(x)[0].provider):O(D,null)))}),te(()=>(a(D),a(i)),()=>{O(I,a(D)||a(i).paymentIntent?.recommendedPsp||"paystack")}),te(()=>(a(x),a(I),a(k)),()=>{O(A,(()=>{const M=a(x).find(J=>J.provider===a(I));return M?.methods.length?M.methods:a(k)})())}),te(()=>(a(i),a(A)),()=>{a(i).selectedMethod&&a(A).length>0&&!a(A).includes(a(i).selectedMethod)&&g.selectMethod(a(A)[0])}),te(()=>{},()=>{O(s,g.isLoading())}),te(()=>{},()=>{O(c,g.getStatus()==="processing")}),te(()=>{},()=>{O(u,g.getStatus()==="method_selected")}),te(()=>(W(F()),a(i),a(D),W(h())),()=>{if(F()&&a(i).paymentIntent&&a(i).selectedMethod){const J=(a(D)||a(i).paymentIntent.recommendedPsp||"paystack").toLowerCase().includes("mpesa");(a(i).selectedMethod==="card"||a(i).selectedMethod==="mobile_money"&&(!J||h()))&&se(null)}}),te(()=>(W(F()),a(i)),()=>{F()?(document.body.style.overflow="hidden",!a(i).paymentIntent&&a(i).status==="idle"&&g.initialize()):typeof document<"u"&&(document.body.style.overflow="")}),Vn(),ln();var me=Aa(),bt=P(me);Nn(bt,t,"default",{handleOpen:he,get isLoading(){return a(s)}},M=>{var J=ma(),G=P(J);{var le=oe=>{var ce=ha();E(oe,ce)},j=oe=>{var ce=ft(),gt=Be(ce);Nn(gt,t,"button-text",{},fn=>{var dn=So("Pay Now");E(fn,dn)}),E(oe,ce)};Z(G,oe=>{a(s)?oe(le):oe(j,!1)})}Q(()=>J.disabled=a(s)),de("click",J,he),E(M,J)});var ri=H(bt,2);{var ii=M=>{var J=Ta(),G=P(J),le=P(G),j=H(le,2),oe=P(j),ce=P(oe),gt=H(ce,2);{var fn=fe=>{var Ge=_a(),vn=P(Ge);Q(()=>ve(vn,(a(b),w(()=>a(b).companyName)))),E(fe,Ge)};Z(gt,fe=>{a(b),w(()=>a(b).companyName)&&fe(fn)})}var dn=H(j,2),oi=P(dn);{var ai=fe=>{var Ge=ya();E(fe,Ge)},si=fe=>{var Ge=ft(),vn=Be(Ge);{var li=ot=>{var wt=ba(),Ut=H(P(wt),4),pn=P(Ut),hn=H(Ut,2);Q(()=>ve(pn,(a(i),w(()=>a(i).error.message)))),de("click",hn,()=>g.initialize()),E(ot,wt)},ci=ot=>{var wt=ft(),Ut=Be(wt);{var pn=at=>{var Pt=ga(),mn=H(P(Pt),6);de("click",mn,Pe),E(at,Pt)},hn=at=>{var Pt=ft(),mn=Be(Pt);{var ui=_n=>{var Xn=Ra(),fi=P(Xn);{var di=st=>{Yr(st,{get providers(){return a(x)},get selectedProvider(){return a(D)},get disabled(){return a(s)},get theme(){return a(b)},get selectedMethod(){return a(i),w(()=>a(i).selectedMethod)},$$events:{select:Le=>un(Le.detail),methodSelect:Le=>g.selectMethod(Le.detail)},$$slots:{"method-content":(Le,yn)=>{var jt=Sa(),bn=P(jt);{var We=Fe=>{var Je=wa(),lt=H(P(Je),2);Q(()=>lt.disabled=a(c)),de("click",lt,()=>se(null)),E(Fe,Je)},Ht=Fe=>{var Je=ft(),lt=Be(Je);{var De=Ue=>{var Et=Ea(),gn=P(Et);{var St=je=>{Fn(je,{get initialPhone(){return h()},get loading(){return a(c)},hideCancel:!0,$$events:{submit:ct=>se(ct.detail)}})},wn=je=>{var ct=Pa(),Ee=Be(ct),ut=P(Ee),kt=H(Ee,2),Pn=P(kt);Q((pi,hi)=>{ve(ut,pi),kt.disabled=a(c),ve(Pn,hi)},[()=>(a(I),w(()=>a(I).includes("hubtel")?"Opens the Hubtel checkout with Mobile Money selected.":`Continue to pay securely with Mobile Money via ${q[a(I)]||a(I)}.`)),()=>(a(I),w(()=>a(I).includes("hubtel")?"Continue with Hubtel":"Pay with Mobile Money"))]),de("click",kt,()=>se(null)),E(je,ct)};Z(gn,je=>{a(I),W(h()),w(()=>a(I).includes("mpesa")&&!h())?je(St):je(wn,!1)})}E(Ue,Et)};Z(lt,Ue=>{a(i),w(()=>a(i).selectedMethod==="mobile_money")&&Ue(De)},!0)}E(Fe,Je)};Z(bn,Fe=>{a(i),w(()=>a(i).selectedMethod==="card")?Fe(We):Fe(Ht,!1)})}E(Le,jt)}}})},vi=st=>{var Le=xa(),yn=Be(Le);Qn(yn,{get methods(){return a(A)},get selected(){return a(i),w(()=>a(i).selectedMethod)},get amount(){return v()},get currency(){return m()},get provider(){return a(I)},layout:"grid",showLabel:!1,$$events:{select:We=>g.selectMethod(We.detail)}});var jt=H(yn,2);{var bn=We=>{var Ht=Ma(),Fe=P(Ht);{var Je=De=>{Fn(De,{get initialPhone(){return h()},get loading(){return a(c)},$$events:{submit:Ue=>se(Ue.detail),cancel:()=>g.selectMethod(null)}})},lt=De=>{var Ue=Ia(),Et=P(Ue),gn=P(Et),St=H(Et,2),wn=P(St);{var je=Ee=>{var ut=ka();E(Ee,ut)},ct=Ee=>{var ut=Ca(),kt=P(ut);Q(Pn=>ve(kt,Pn),[()=>(a(i),a(I),w(()=>a(i).selectedMethod==="card"?"Pay with Card":a(I).includes("hubtel")?"Continue with Hubtel":"Pay with Mobile Money"))]),E(Ee,ut)};Z(wn,Ee=>{a(c)?Ee(je):Ee(ct,!1)})}Q(Ee=>{ve(gn,Ee),St.disabled=a(c)},[()=>(a(i),a(I),w(()=>a(i).selectedMethod==="card"?"You will be redirected to complete your card payment securely.":a(I).includes("hubtel")?"Opens the Hubtel checkout with Mobile Money selected.":`Continue to pay securely via ${q[a(I)]||a(I)}.`))]),de("click",St,()=>se(null)),E(De,Ue)};Z(Fe,De=>{a(i),a(I),W(h()),w(()=>a(i).selectedMethod==="mobile_money"&&a(I).includes("mpesa")&&!h())?De(Je):De(lt,!1)})}E(We,Ht)};Z(jt,We=>{a(u)&&We(bn)})}E(st,Le)};Z(fi,st=>{a(x),w(()=>a(x).length>1)?st(di):st(vi,!1)})}E(_n,Xn)};Z(mn,_n=>{a(i),a(u),w(()=>a(i).status==="ready"||a(u))&&_n(ui)},!0)}E(at,Pt)};Z(Ut,at=>{a(i),w(()=>a(i).status==="success")?at(pn):at(hn,!1)},!0)}E(ot,wt)};Z(vn,ot=>{a(i),w(()=>a(i).status==="failed"&&a(i).error)?ot(li):ot(ci,!1)},!0)}E(fe,Ge)};Z(oi,fe=>{a(i),w(()=>a(i).status==="loading")?fe(ai):fe(si,!1)})}Q(fe=>{tt(G,1,fe),$t(ce,"src",(a(b),w(()=>a(b).logoUrl||"https://i.imgur.com/bzUR5Lm.png"))),$t(ce,"alt",(a(b),w(()=>a(b).companyName||"Reevit")))},[()=>et((W(R.cn),a(b),w(()=>R.cn("reevit-modal-content",a(b).darkMode&&"reevit-modal--dark"))))]),de("click",le,Pe),de("click",J,Pe),de("keydown",J,fe=>fe.key==="Escape"&&Pe()),E(M,J)};Z(ri,M=>{F()&&M(ii)})}Q(M=>Zn(me,M),[()=>(a(l),w(()=>Object.entries(a(l)).map(([M,J])=>`${M}:${J}`).join(";")))]),E(e,me),rn(),o()}Object.defineProperty(exports,"ReevitAPIClient",{enumerable:!0,get:()=>R.ReevitAPIClient});Object.defineProperty(exports,"cn",{enumerable:!0,get:()=>R.cn});Object.defineProperty(exports,"createInitialState",{enumerable:!0,get:()=>R.createInitialState});Object.defineProperty(exports,"createReevitClient",{enumerable:!0,get:()=>R.createReevitClient});Object.defineProperty(exports,"detectCountryFromCurrency",{enumerable:!0,get:()=>R.detectCountryFromCurrency});Object.defineProperty(exports,"detectNetwork",{enumerable:!0,get:()=>R.detectNetwork});Object.defineProperty(exports,"formatAmount",{enumerable:!0,get:()=>R.formatAmount});Object.defineProperty(exports,"formatPhone",{enumerable:!0,get:()=>R.formatPhone});Object.defineProperty(exports,"reevitReducer",{enumerable:!0,get:()=>R.reevitReducer});Object.defineProperty(exports,"validatePhone",{enumerable:!0,get:()=>R.validatePhone});exports.MobileMoneyForm=Fn;exports.PaymentMethodSelector=Qn;exports.ProviderSelector=Yr;exports.ReevitCheckout=Oa;exports.confirmStripePayment=pa;exports.createReevitStore=Vr;exports.createStripeInstance=ei;exports.initiateMPesaSTKPush=ni;exports.loadFlutterwaveScript=Wr;exports.loadHubtelScript=va;exports.loadMonnifyScript=Zr;exports.loadPaystackScript=Gr;exports.loadStripeScript=Jr;exports.openFlutterwaveModal=$r;exports.openHubtelPopup=Xr;exports.openMonnifyModal=ti;exports.openPaystackPopup=Qr;
|