@getauthui/core 0.1.6 → 0.1.8
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/README.md +9 -3
- package/dist/{authui-user-button-CLVW46Q6.js → authui-user-button-BTKKRjIx.js} +599 -373
- package/dist/authui.cdn.js +417 -250
- package/dist/authui.cdn.mjs +1060 -834
- package/dist/authui.js +2 -2
- package/dist/components/authui-account.d.ts +3 -0
- package/dist/components/authui-account.d.ts.map +1 -1
- package/dist/components/authui-sign-in.d.ts +2 -0
- package/dist/components/authui-sign-in.d.ts.map +1 -1
- package/dist/i18n.d.ts.map +1 -1
- package/dist/react.js +1 -1
- package/dist/styles/base.d.ts.map +1 -1
- package/dist/types.d.ts +3 -0
- package/dist/types.d.ts.map +1 -1
- package/package.json +1 -1
package/dist/authui.cdn.js
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
var AuthUI=(function(
|
|
2
|
-
\f\r]`,
|
|
3
|
-
\f\r"'\`<>=]|("|')|))|$)`,"g"),Ei=/'/g,xi=/"/g,qi=/^(?:script|style|textarea|title)$/i,_i=n=>(e,...i)=>({_$litType$:n,strings:e,values:i}),b=_i(1),G=_i(2),ze=Symbol.for("lit-noChange"),R=Symbol.for("lit-nothing"),Li=new WeakMap,Ge=Ve.createTreeWalker(Ve,129);function Ni(n,e){if(!_t(n)||!n.hasOwnProperty("raw"))throw Error("invalid template strings array");return Pi!==void 0?Pi.createHTML(e):e}const En=(n,e)=>{const i=n.length-1,t=[];let o,a=e===2?"<svg>":e===3?"<math>":"",s=rt;for(let r=0;r<i;r++){const d=n[r];let c,p,u=-1,m=0;for(;m<d.length&&(s.lastIndex=m,p=s.exec(d),p!==null);)m=s.lastIndex,s===rt?p[1]==="!--"?s=Mi:p[1]!==void 0?s=Ri:p[2]!==void 0?(qi.test(p[2])&&(o=RegExp("</"+p[2],"g")),s=We):p[3]!==void 0&&(s=We):s===We?p[0]===">"?(s=o??rt,u=-1):p[1]===void 0?u=-2:(u=s.lastIndex-p[2].length,c=p[1],s=p[3]===void 0?We:p[3]==='"'?xi:Ei):s===xi||s===Ei?s=We:s===Mi||s===Ri?s=rt:(s=We,o=void 0);const j=s===We&&n[r+1].startsWith("/>")?" ":"";a+=s===rt?d+Mn:u>=0?(t.push(c),d.slice(0,u)+Ci+d.slice(u)+Ne+j):d+Ne+(u===-2?r:j)}return[Ni(n,a+(n[i]||"<?>")+(e===2?"</svg>":e===3?"</math>":"")),t]};class ct{constructor({strings:e,_$litType$:i},t){let o;this.parts=[];let a=0,s=0;const r=e.length-1,d=this.parts,[c,p]=En(e,i);if(this.el=ct.createElement(c,t),Ge.currentNode=this.el.content,i===2||i===3){const u=this.el.content.firstChild;u.replaceWith(...u.childNodes)}for(;(o=Ge.nextNode())!==null&&d.length<r;){if(o.nodeType===1){if(o.hasAttributes())for(const u of o.getAttributeNames())if(u.endsWith(Ci)){const m=p[s++],j=o.getAttribute(u).split(Ne),q=/([.?@])?(.*)/.exec(m);d.push({type:1,index:a,name:q[2],strings:j,ctor:q[1]==="."?qn:q[1]==="?"?_n:q[1]==="@"?Ln:bt}),o.removeAttribute(u)}else u.startsWith(Ne)&&(d.push({type:6,index:a}),o.removeAttribute(u));if(qi.test(o.tagName)){const u=o.textContent.split(Ne),m=u.length-1;if(m>0){o.textContent=wt?wt.emptyScript:"";for(let j=0;j<m;j++)o.append(u[j],at()),Ge.nextNode(),d.push({type:2,index:++a});o.append(u[m],at())}}}else if(o.nodeType===8)if(o.data===Ui)d.push({type:2,index:a});else{let u=-1;for(;(u=o.data.indexOf(Ne,u+1))!==-1;)d.push({type:7,index:a}),u+=Ne.length-1}a++}}static createElement(e,i){const t=Ve.createElement("template");return t.innerHTML=e,t}}function Oe(n,e,i=n,t){if(e===ze)return e;let o=t!==void 0?i._$Co?.[t]:i._$Cl;const a=st(e)?void 0:e._$litDirective$;return o?.constructor!==a&&(o?._$AO?.(!1),a===void 0?o=void 0:(o=new a(n),o._$AT(n,i,t)),t!==void 0?(i._$Co??=[])[t]=o:i._$Cl=o),o!==void 0&&(e=Oe(n,o._$AS(n,e.values),o,t)),e}class xn{constructor(e,i){this._$AV=[],this._$AN=void 0,this._$AD=e,this._$AM=i}get parentNode(){return this._$AM.parentNode}get _$AU(){return this._$AM._$AU}u(e){const{el:{content:i},parts:t}=this._$AD,o=(e?.creationScope??Ve).importNode(i,!0);Ge.currentNode=o;let a=Ge.nextNode(),s=0,r=0,d=t[0];for(;d!==void 0;){if(s===d.index){let c;d.type===2?c=new dt(a,a.nextSibling,this,e):d.type===1?c=new d.ctor(a,d.name,d.strings,this,e):d.type===6&&(c=new Nn(a,this,e)),this._$AV.push(c),d=t[++r]}s!==d?.index&&(a=Ge.nextNode(),s++)}return Ge.currentNode=Ve,o}p(e){let i=0;for(const t of this._$AV)t!==void 0&&(t.strings!==void 0?(t._$AI(e,t,i),i+=t.strings.length-2):t._$AI(e[i])),i++}}class dt{get _$AU(){return this._$AM?._$AU??this._$Cv}constructor(e,i,t,o){this.type=2,this._$AH=R,this._$AN=void 0,this._$AA=e,this._$AB=i,this._$AM=t,this.options=o,this._$Cv=o?.isConnected??!0}get parentNode(){let e=this._$AA.parentNode;const i=this._$AM;return i!==void 0&&e?.nodeType===11&&(e=i.parentNode),e}get startNode(){return this._$AA}get endNode(){return this._$AB}_$AI(e,i=this){e=Oe(this,e,i),st(e)?e===R||e==null||e===""?(this._$AH!==R&&this._$AR(),this._$AH=R):e!==this._$AH&&e!==ze&&this._(e):e._$litType$!==void 0?this.$(e):e.nodeType!==void 0?this.T(e):Rn(e)?this.k(e):this._(e)}O(e){return this._$AA.parentNode.insertBefore(e,this._$AB)}T(e){this._$AH!==e&&(this._$AR(),this._$AH=this.O(e))}_(e){this._$AH!==R&&st(this._$AH)?this._$AA.nextSibling.data=e:this.T(Ve.createTextNode(e)),this._$AH=e}$(e){const{values:i,_$litType$:t}=e,o=typeof t=="number"?this._$AC(e):(t.el===void 0&&(t.el=ct.createElement(Ni(t.h,t.h[0]),this.options)),t);if(this._$AH?._$AD===o)this._$AH.p(i);else{const a=new xn(o,this),s=a.u(this.options);a.p(i),this.T(s),this._$AH=a}}_$AC(e){let i=Li.get(e.strings);return i===void 0&&Li.set(e.strings,i=new ct(e)),i}k(e){_t(this._$AH)||(this._$AH=[],this._$AR());const i=this._$AH;let t,o=0;for(const a of e)o===i.length?i.push(t=new dt(this.O(at()),this.O(at()),this,this.options)):t=i[o],t._$AI(a),o++;o<i.length&&(this._$AR(t&&t._$AB.nextSibling,o),i.length=o)}_$AR(e=this._$AA.nextSibling,i){for(this._$AP?.(!1,!0,i);e!==this._$AB;){const t=ji(e).nextSibling;ji(e).remove(),e=t}}setConnected(e){this._$AM===void 0&&(this._$Cv=e,this._$AP?.(e))}}class bt{get tagName(){return this.element.tagName}get _$AU(){return this._$AM._$AU}constructor(e,i,t,o,a){this.type=1,this._$AH=R,this._$AN=void 0,this.element=e,this.name=i,this._$AM=o,this.options=a,t.length>2||t[0]!==""||t[1]!==""?(this._$AH=Array(t.length-1).fill(new String),this.strings=t):this._$AH=R}_$AI(e,i=this,t,o){const a=this.strings;let s=!1;if(a===void 0)e=Oe(this,e,i,0),s=!st(e)||e!==this._$AH&&e!==ze,s&&(this._$AH=e);else{const r=e;let d,c;for(e=a[0],d=0;d<a.length-1;d++)c=Oe(this,r[t+d],i,d),c===ze&&(c=this._$AH[d]),s||=!st(c)||c!==this._$AH[d],c===R?e=R:e!==R&&(e+=(c??"")+a[d+1]),this._$AH[d]=c}s&&!o&&this.j(e)}j(e){e===R?this.element.removeAttribute(this.name):this.element.setAttribute(this.name,e??"")}}class qn extends bt{constructor(){super(...arguments),this.type=3}j(e){this.element[this.name]=e===R?void 0:e}}class _n extends bt{constructor(){super(...arguments),this.type=4}j(e){this.element.toggleAttribute(this.name,!!e&&e!==R)}}class Ln extends bt{constructor(e,i,t,o,a){super(e,i,t,o,a),this.type=5}_$AI(e,i=this){if((e=Oe(this,e,i,0)??R)===ze)return;const t=this._$AH,o=e===R&&t!==R||e.capture!==t.capture||e.once!==t.once||e.passive!==t.passive,a=e!==R&&(t===R||o);o&&this.element.removeEventListener(this.name,this,t),a&&this.element.addEventListener(this.name,this,e),this._$AH=e}handleEvent(e){typeof this._$AH=="function"?this._$AH.call(this.options?.host??this.element,e):this._$AH.handleEvent(e)}}class Nn{constructor(e,i,t){this.element=e,this.type=6,this._$AN=void 0,this._$AM=i,this.options=t}get _$AU(){return this._$AM._$AU}_$AI(e){Oe(this,e)}}const Hn=qt.litHtmlPolyfillSupport;Hn?.(ct,dt),(qt.litHtmlVersions??=[]).push("3.3.3");const Dn=(n,e,i)=>{const t=i?.renderBefore??e;let o=t._$litPart$;if(o===void 0){const a=i?.renderBefore??null;t._$litPart$=o=new dt(e.insertBefore(at(),a),a,void 0,i??{})}return o._$AI(n),o};const Nt=globalThis;class Ke extends Te{constructor(){super(...arguments),this.renderOptions={host:this},this._$Do=void 0}createRenderRoot(){const e=super.createRenderRoot();return this.renderOptions.renderBefore??=e.firstChild,e}update(e){const i=this.render();this.hasUpdated||(this.renderOptions.isConnected=this.isConnected),super.update(e),this._$Do=Dn(i,this.renderRoot,this.renderOptions)}connectedCallback(){super.connectedCallback(),this._$Do?.setConnected(!0)}disconnectedCallback(){super.disconnectedCallback(),this._$Do?.setConnected(!1)}render(){return ze}}Ke._$litElement$=!0,Ke.finalized=!0,Nt.litElementHydrateSupport?.({LitElement:Ke});const Bn=Nt.litElementPolyfillSupport;Bn?.({LitElement:Ke}),(Nt.litElementVersions??=[]).push("4.2.2");const Ye=n=>(e,i)=>{i!==void 0?i.addInitializer(()=>{customElements.define(n,e)}):customElements.define(n,e)};const Xn={attribute:!0,type:String,converter:mt,reflect:!1,hasChanged:xt},Vn=(n=Xn,e,i)=>{const{kind:t,metadata:o}=i;let a=globalThis.litPropertyMetadata.get(o);if(a===void 0&&globalThis.litPropertyMetadata.set(o,a=new Map),t==="setter"&&((n=Object.create(n)).wrapped=!0),a.set(i.name,n),t==="accessor"){const{name:s}=i;return{set(r){const d=e.get.call(this);e.set.call(this,r),this.requestUpdate(s,d,n,!0,r)},init(r){return r!==void 0&&this.C(s,void 0,n,r),r}}}if(t==="setter"){const{name:s}=i;return function(r){const d=this[s];e.call(this,r),this.requestUpdate(s,d,n,!0,r)}}throw Error("Unsupported decorator location: "+t)};function F(n){return(e,i)=>typeof i=="object"?Vn(n,e,i):((t,o,a)=>{const s=o.hasOwnProperty(a);return o.constructor.createProperty(a,t),s?Object.getOwnPropertyDescriptor(o,a):void 0})(n,e,i)}function W(n){return F({...n,state:!0,attribute:!1})}const Wn=(n,e,i)=>(i.configurable=!0,i.enumerable=!0,Reflect.decorate&&typeof e!="object"&&Object.defineProperty(n,e,i),i);function Ht(n,e){return(i,t,o)=>{const a=s=>s.renderRoot?.querySelector(n)??null;return Wn(i,t,{get(){return a(this)}})}}function Gn(n){return n&&n.__esModule&&Object.prototype.hasOwnProperty.call(n,"default")?n.default:n}var lt={exports:{}},Dt={exports:{}},It={exports:{}},Kn=It.exports,Hi;function Di(){return Hi||(Hi=1,(function(n){(function(e){var i,t=/^-?(?:\d+(?:\.\d*)?|\.\d+)(?:e[+-]?\d+)?$/i,o=Math.ceil,a=Math.floor,s="[BigNumber Error] ",r=s+"Number primitive has more than 15 significant digits: ",d=1e14,c=14,p=9007199254740991,u=[1,10,100,1e3,1e4,1e5,1e6,1e7,1e8,1e9,1e10,1e11,1e12,1e13],m=1e7,j=1e9;function q(D){var N,ie,V,E=M.prototype={constructor:M,toString:null,valueOf:null},J=new M(1),z=20,ne=4,ce=-7,de=21,Ue=-1e7,ve=1e7,qe=!1,ht=1,Xe=0,gi={prefix:"",groupSize:3,secondaryGroupSize:0,groupSeparator:",",decimalSeparator:".",fractionGroupSize:0,fractionGroupSeparator:" ",suffix:""},Qe="0123456789abcdefghijklmnopqrstuvwxyz",yi=!0;function M(l,f){var g,k,w,v,P,y,I,$,A=this;if(!(A instanceof M))return new M(l,f);if(f==null){if(l&&l._isBigNumber===!0){A.s=l.s,!l.c||l.e>ve?A.c=A.e=null:l.e<Ue?A.c=[A.e=0]:(A.e=l.e,A.c=l.c.slice());return}if((y=typeof l=="number")&&l*0==0){if(A.s=1/l<0?(l=-l,-1):1,l===~~l){for(v=0,P=l;P>=10;P/=10,v++);v>ve?A.c=A.e=null:(A.e=v,A.c=[l]);return}$=String(l)}else{if(!t.test($=String(l)))return V(A,$,y);A.s=$.charCodeAt(0)==45?($=$.slice(1),-1):1}(v=$.indexOf("."))>-1&&($=$.replace(".","")),(P=$.search(/e/i))>0?(v<0&&(v=P),v+=+$.slice(P+1),$=$.substring(0,P)):v<0&&(v=$.length)}else{if(L(f,2,Qe.length,"Base"),f==10&&yi)return A=new M(l),$e(A,z+A.e+1,ne);if($=String(l),y=typeof l=="number"){if(l*0!=0)return V(A,$,y,f);if(A.s=1/l<0?($=$.slice(1),-1):1,M.DEBUG&&$.replace(/^0\.0*|\./,"").length>15)throw Error(r+l)}else A.s=$.charCodeAt(0)===45?($=$.slice(1),-1):1;for(g=Qe.slice(0,f),v=P=0,I=$.length;P<I;P++)if(g.indexOf(k=$.charAt(P))<0){if(k=="."){if(P>v){v=I;continue}}else if(!w&&($==$.toUpperCase()&&($=$.toLowerCase())||$==$.toLowerCase()&&($=$.toUpperCase()))){w=!0,P=-1,v=0;continue}return V(A,String(l),y,f)}y=!1,$=ie($,f,10,A.s),(v=$.indexOf("."))>-1?$=$.replace(".",""):v=$.length}for(P=0;$.charCodeAt(P)===48;P++);for(I=$.length;$.charCodeAt(--I)===48;);if($=$.slice(P,++I)){if(I-=P,y&&M.DEBUG&&I>15&&(l>p||l!==a(l)))throw Error(r+A.s*l);if((v=v-P-1)>ve)A.c=A.e=null;else if(v<Ue)A.c=[A.e=0];else{if(A.e=v,A.c=[],P=(v+1)%c,v<0&&(P+=c),P<I){for(P&&A.c.push(+$.slice(0,P)),I-=c;P<I;)A.c.push(+$.slice(P,P+=c));P=c-($=$.slice(P)).length}else P-=I;for(;P--;$+="0");A.c.push(+$)}}else A.c=[A.e=0]}M.clone=q,M.ROUND_UP=0,M.ROUND_DOWN=1,M.ROUND_CEIL=2,M.ROUND_FLOOR=3,M.ROUND_HALF_UP=4,M.ROUND_HALF_DOWN=5,M.ROUND_HALF_EVEN=6,M.ROUND_HALF_CEIL=7,M.ROUND_HALF_FLOOR=8,M.EUCLID=9,M.config=M.set=function(l){var f,g;if(l!=null)if(typeof l=="object"){if(l.hasOwnProperty(f="DECIMAL_PLACES")&&(g=l[f],L(g,0,j,f),z=g),l.hasOwnProperty(f="ROUNDING_MODE")&&(g=l[f],L(g,0,8,f),ne=g),l.hasOwnProperty(f="EXPONENTIAL_AT")&&(g=l[f],g&&g.pop?(L(g[0],-j,0,f),L(g[1],0,j,f),ce=g[0],de=g[1]):(L(g,-j,j,f),ce=-(de=g<0?-g:g))),l.hasOwnProperty(f="RANGE"))if(g=l[f],g&&g.pop)L(g[0],-j,-1,f),L(g[1],1,j,f),Ue=g[0],ve=g[1];else if(L(g,-j,j,f),g)Ue=-(ve=g<0?-g:g);else throw Error(s+f+" cannot be zero: "+g);if(l.hasOwnProperty(f="CRYPTO"))if(g=l[f],g===!!g)if(g)if(typeof crypto<"u"&&crypto&&(crypto.getRandomValues||crypto.randomBytes))qe=g;else throw qe=!g,Error(s+"crypto unavailable");else qe=g;else throw Error(s+f+" not true or false: "+g);if(l.hasOwnProperty(f="MODULO_MODE")&&(g=l[f],L(g,0,9,f),ht=g),l.hasOwnProperty(f="POW_PRECISION")&&(g=l[f],L(g,0,j,f),Xe=g),l.hasOwnProperty(f="FORMAT"))if(g=l[f],typeof g=="object")gi=g;else throw Error(s+f+" not an object: "+g);if(l.hasOwnProperty(f="ALPHABET"))if(g=l[f],typeof g=="string"&&!/^.?$|[+\-.\s]|(.).*\1/.test(g))yi=g.slice(0,10)=="0123456789",Qe=g;else throw Error(s+f+" invalid: "+g)}else throw Error(s+"Object expected: "+l);return{DECIMAL_PLACES:z,ROUNDING_MODE:ne,EXPONENTIAL_AT:[ce,de],RANGE:[Ue,ve],CRYPTO:qe,MODULO_MODE:ht,POW_PRECISION:Xe,FORMAT:gi,ALPHABET:Qe}},M.isBigNumber=function(l){if(!l||l._isBigNumber!==!0)return!1;if(!M.DEBUG)return!0;var f,g,k=l.c,w=l.e,v=l.s;e:if({}.toString.call(k)=="[object Array]"){if((v===1||v===-1)&&w>=-j&&w<=j&&w===a(w)){if(k[0]===0){if(w===0&&k.length===1)return!0;break e}if(f=(w+1)%c,f<1&&(f+=c),String(k[0]).length==f){for(f=0;f<k.length;f++)if(g=k[f],g<0||g>=d||g!==a(g))break e;if(g!==0)return!0}}}else if(k===null&&w===null&&(v===null||v===1||v===-1))return!0;throw Error(s+"Invalid BigNumber: "+l)},M.maximum=M.max=function(){return bn(arguments,-1)},M.minimum=M.min=function(){return bn(arguments,1)},M.random=(function(){var l=9007199254740992,f=Math.random()*l&2097151?function(){return a(Math.random()*l)}:function(){return(Math.random()*1073741824|0)*8388608+(Math.random()*8388608|0)};return function(g){var k,w,v,P,y,I=0,$=[],A=new M(J);if(g==null?g=z:L(g,0,j),P=o(g/c),qe)if(crypto.getRandomValues){for(k=crypto.getRandomValues(new Uint32Array(P*=2));I<P;)y=k[I]*131072+(k[I+1]>>>11),y>=9e15?(w=crypto.getRandomValues(new Uint32Array(2)),k[I]=w[0],k[I+1]=w[1]):($.push(y%1e14),I+=2);I=P/2}else if(crypto.randomBytes){for(k=crypto.randomBytes(P*=7);I<P;)y=(k[I]&31)*281474976710656+k[I+1]*1099511627776+k[I+2]*4294967296+k[I+3]*16777216+(k[I+4]<<16)+(k[I+5]<<8)+k[I+6],y>=9e15?crypto.randomBytes(7).copy(k,I):($.push(y%1e14),I+=7);I=P/7}else throw qe=!1,Error(s+"crypto unavailable");if(!qe)for(;I<P;)y=f(),y<9e15&&($[I++]=y%1e14);for(P=$[--I],g%=c,P&&g&&(y=u[c-g],$[I]=a(P/y)*y);$[I]===0;$.pop(),I--);if(I<0)$=[v=0];else{for(v=-1;$[0]===0;$.splice(0,1),v-=c);for(I=1,y=$[0];y>=10;y/=10,I++);I<c&&(v-=c-I)}return A.e=v,A.c=$,A}})(),M.sum=function(){for(var l=1,f=arguments,g=new M(f[0]);l<f.length;)g=g.plus(f[l++]);return g},ie=(function(){var l="0123456789";function f(g,k,w,v){for(var P,y=[0],I,$=0,A=g.length;$<A;){for(I=y.length;I--;y[I]*=k);for(y[0]+=v.indexOf(g.charAt($++)),P=0;P<y.length;P++)y[P]>w-1&&(y[P+1]==null&&(y[P+1]=0),y[P+1]+=y[P]/w|0,y[P]%=w)}return y.reverse()}return function(g,k,w,v,P){var y,I,$,A,U,B,X,oe,le=g.indexOf("."),he=z,te=ne;for(le>=0&&(A=Xe,Xe=0,g=g.replace(".",""),oe=new M(k),B=oe.pow(g.length-le),Xe=A,oe.c=f(se(K(B.c),B.e,"0"),10,w,l),oe.e=oe.c.length),X=f(g,k,w,P?(y=Qe,l):(y=l,Qe)),$=A=X.length;X[--A]==0;X.pop());if(!X[0])return y.charAt(0);if(le<0?--$:(B.c=X,B.e=$,B.s=v,B=N(B,oe,he,te,w),X=B.c,U=B.r,$=B.e),I=$+he+1,le=X[I],A=w/2,U=U||I<0||X[I+1]!=null,U=te<4?(le!=null||U)&&(te==0||te==(B.s<0?3:2)):le>A||le==A&&(te==4||U||te==6&&X[I-1]&1||te==(B.s<0?8:7)),I<1||!X[0])g=U?se(y.charAt(1),-he,y.charAt(0)):y.charAt(0);else{if(X.length=I,U)for(--w;++X[--I]>w;)X[I]=0,I||(++$,X=[1].concat(X));for(A=X.length;!X[--A];);for(le=0,g="";le<=A;g+=y.charAt(X[le++]));g=se(g,$,y.charAt(0))}return g}})(),N=(function(){function l(k,w,v){var P,y,I,$,A=0,U=k.length,B=w%m,X=w/m|0;for(k=k.slice();U--;)I=k[U]%m,$=k[U]/m|0,P=X*I+$*B,y=B*I+P%m*m+A,A=(y/v|0)+(P/m|0)+X*$,k[U]=y%v;return A&&(k=[A].concat(k)),k}function f(k,w,v,P){var y,I;if(v!=P)I=v>P?1:-1;else for(y=I=0;y<v;y++)if(k[y]!=w[y]){I=k[y]>w[y]?1:-1;break}return I}function g(k,w,v,P){for(var y=0;v--;)k[v]-=y,y=k[v]<w[v]?1:0,k[v]=y*P+k[v]-w[v];for(;!k[0]&&k.length>1;k.splice(0,1));}return function(k,w,v,P,y){var I,$,A,U,B,X,oe,le,he,te,re,me,Mt,bi,Ii,Me,ft,je=k.s==w.s?1:-1,we=k.c,ue=w.c;if(!we||!we[0]||!ue||!ue[0])return new M(!k.s||!w.s||(we?ue&&we[0]==ue[0]:!ue)?NaN:we&&we[0]==0||!ue?je*0:je/0);for(le=new M(je),he=le.c=[],$=k.e-w.e,je=v+$+1,y||(y=d,$=T(k.e/c)-T(w.e/c),je=je/c|0),A=0;ue[A]==(we[A]||0);A++);if(ue[A]>(we[A]||0)&&$--,je<0)he.push(1),U=!0;else{for(bi=we.length,Me=ue.length,A=0,je+=2,B=a(y/(ue[0]+1)),B>1&&(ue=l(ue,B,y),we=l(we,B,y),Me=ue.length,bi=we.length),Mt=Me,te=we.slice(0,Me),re=te.length;re<Me;te[re++]=0);ft=ue.slice(),ft=[0].concat(ft),Ii=ue[0],ue[1]>=y/2&&Ii++;do{if(B=0,I=f(ue,te,Me,re),I<0){if(me=te[0],Me!=re&&(me=me*y+(te[1]||0)),B=a(me/Ii),B>1)for(B>=y&&(B=y-1),X=l(ue,B,y),oe=X.length,re=te.length;f(X,te,oe,re)==1;)B--,g(X,Me<oe?ft:ue,oe,y),oe=X.length,I=1;else B==0&&(I=B=1),X=ue.slice(),oe=X.length;if(oe<re&&(X=[0].concat(X)),g(te,X,re,y),re=te.length,I==-1)for(;f(ue,te,Me,re)<1;)B++,g(te,Me<re?ft:ue,re,y),re=te.length}else I===0&&(B++,te=[0]);he[A++]=B,te[0]?te[re++]=we[Mt]||0:(te=[we[Mt]],re=1)}while((Mt++<bi||te[0]!=null)&&je--);U=te[0]!=null,he[0]||he.splice(0,1)}if(y==d){for(A=1,je=he[0];je>=10;je/=10,A++);$e(le,v+(le.e=A+$*c-1)+1,P,U)}else le.e=$,le.r=+U;return le}})();function mi(l,f,g,k){var w,v,P,y,I;if(g==null?g=ne:L(g,0,8),!l.c)return l.toString();if(w=l.c[0],P=l.e,f==null)I=K(l.c),I=k==1||k==2&&(P<=ce||P>=de)?Z(I,P):se(I,P,"0");else if(l=$e(new M(l),f,g),v=l.e,I=K(l.c),y=I.length,k==1||k==2&&(f<=v||v<=ce)){for(;y<f;I+="0",y++);I=Z(I,v)}else if(f-=P+(k===2&&v>P),I=se(I,v,"0"),v+1>y){if(--f>0)for(I+=".";f--;I+="0");}else if(f+=v-y,f>0)for(v+1==y&&(I+=".");f--;I+="0");return l.s<0&&w?"-"+I:I}function bn(l,f){for(var g,k,w=1,v=new M(l[0]);w<l.length;w++)k=new M(l[w]),(!k.s||(g=Y(v,k))===f||g===0&&v.s===f)&&(v=k);return v}function wi(l,f,g){for(var k=1,w=f.length;!f[--w];f.pop());for(w=f[0];w>=10;w/=10,k++);return(g=k+g*c-1)>ve?l.c=l.e=null:g<Ue?l.c=[l.e=0]:(l.e=g,l.c=f),l}V=(function(){var l=/^(-?)0([xbo])(?=\w[\w.]*$)/i,f=/^([^.]+)\.$/,g=/^\.([^.]+)$/,k=/^-?(Infinity|NaN)$/,w=/^\s*\+(?=[\w.])|^\s+|\s+$/g;return function(v,P,y,I){var $,A=y?P:P.replace(w,"");if(k.test(A))v.s=isNaN(A)?null:A<0?-1:1;else{if(!y&&(A=A.replace(l,function(U,B,X){return $=(X=X.toLowerCase())=="x"?16:X=="b"?2:8,!I||I==$?B:U}),I&&($=I,A=A.replace(f,"$1").replace(g,"0.$1")),P!=A))return new M(A,$);if(M.DEBUG)throw Error(s+"Not a"+(I?" base "+I:"")+" number: "+P);v.s=null}v.c=v.e=null}})();function $e(l,f,g,k){var w,v,P,y,I,$,A,U=l.c,B=u;if(U){e:{for(w=1,y=U[0];y>=10;y/=10,w++);if(v=f-w,v<0)v+=c,P=f,I=U[$=0],A=a(I/B[w-P-1]%10);else if($=o((v+1)/c),$>=U.length)if(k){for(;U.length<=$;U.push(0));I=A=0,w=1,v%=c,P=v-c+1}else break e;else{for(I=y=U[$],w=1;y>=10;y/=10,w++);v%=c,P=v-c+w,A=P<0?0:a(I/B[w-P-1]%10)}if(k=k||f<0||U[$+1]!=null||(P<0?I:I%B[w-P-1]),k=g<4?(A||k)&&(g==0||g==(l.s<0?3:2)):A>5||A==5&&(g==4||k||g==6&&(v>0?P>0?I/B[w-P]:0:U[$-1])%10&1||g==(l.s<0?8:7)),f<1||!U[0])return U.length=0,k?(f-=l.e+1,U[0]=B[(c-f%c)%c],l.e=-f||0):U[0]=l.e=0,l;if(v==0?(U.length=$,y=1,$--):(U.length=$+1,y=B[c-v],U[$]=P>0?a(I/B[w-P]%B[P])*y:0),k)for(;;)if($==0){for(v=1,P=U[0];P>=10;P/=10,v++);for(P=U[0]+=y,y=1;P>=10;P/=10,y++);v!=y&&(l.e++,U[0]==d&&(U[0]=1));break}else{if(U[$]+=y,U[$]!=d)break;U[$--]=0,y=1}for(v=U.length;U[--v]===0;U.pop());}l.e>ve?l.c=l.e=null:l.e<Ue&&(l.c=[l.e=0])}return l}function _e(l){var f,g=l.e;return g===null?l.toString():(f=K(l.c),f=g<=ce||g>=de?Z(f,g):se(f,g,"0"),l.s<0?"-"+f:f)}return E.absoluteValue=E.abs=function(){var l=new M(this);return l.s<0&&(l.s=1),l},E.comparedTo=function(l,f){return Y(this,new M(l,f))},E.decimalPlaces=E.dp=function(l,f){var g,k,w,v=this;if(l!=null)return L(l,0,j),f==null?f=ne:L(f,0,8),$e(new M(v),l+v.e+1,f);if(!(g=v.c))return null;if(k=((w=g.length-1)-T(this.e/c))*c,w=g[w])for(;w%10==0;w/=10,k--);return k<0&&(k=0),k},E.dividedBy=E.div=function(l,f){return N(this,new M(l,f),z,ne)},E.dividedToIntegerBy=E.idiv=function(l,f){return N(this,new M(l,f),0,1)},E.exponentiatedBy=E.pow=function(l,f){var g,k,w,v,P,y,I,$,A,U=this;if(l=new M(l),l.c&&!l.isInteger())throw Error(s+"Exponent not an integer: "+_e(l));if(f!=null&&(f=new M(f)),y=l.e>14,!U.c||!U.c[0]||U.c[0]==1&&!U.e&&U.c.length==1||!l.c||!l.c[0])return A=new M(Math.pow(+_e(U),y?l.s*(2-H(l)):+_e(l))),f?A.mod(f):A;if(I=l.s<0,f){if(f.c?!f.c[0]:!f.s)return new M(NaN);k=!I&&U.isInteger()&&f.isInteger(),k&&(U=U.mod(f))}else{if(l.e>9&&(U.e>0||U.e<-1||(U.e==0?U.c[0]>1||y&&U.c[1]>=24e7:U.c[0]<8e13||y&&U.c[0]<=9999975e7)))return v=U.s<0&&H(l)?-0:0,U.e>-1&&(v=1/v),new M(I?1/v:v);Xe&&(v=o(Xe/c+2))}for(y?(g=new M(.5),I&&(l.s=1),$=H(l)):(w=Math.abs(+_e(l)),$=w%2),A=new M(J);;){if($){if(A=A.times(U),!A.c)break;v?A.c.length>v&&(A.c.length=v):k&&(A=A.mod(f))}if(w){if(w=a(w/2),w===0)break;$=w%2}else if(l=l.times(g),$e(l,l.e+1,1),l.e>14)$=H(l);else{if(w=+_e(l),w===0)break;$=w%2}U=U.times(U),v?U.c&&U.c.length>v&&(U.c.length=v):k&&(U=U.mod(f))}return k?A:(I&&(A=J.div(A)),f?A.mod(f):v?$e(A,Xe,ne,P):A)},E.integerValue=function(l){var f=new M(this);return l==null?l=ne:L(l,0,8),$e(f,f.e+1,l)},E.isEqualTo=E.eq=function(l,f){return Y(this,new M(l,f))===0},E.isFinite=function(){return!!this.c},E.isGreaterThan=E.gt=function(l,f){return Y(this,new M(l,f))>0},E.isGreaterThanOrEqualTo=E.gte=function(l,f){return(f=Y(this,new M(l,f)))===1||f===0},E.isInteger=function(){return!!this.c&&T(this.e/c)>this.c.length-2},E.isLessThan=E.lt=function(l,f){return Y(this,new M(l,f))<0},E.isLessThanOrEqualTo=E.lte=function(l,f){return(f=Y(this,new M(l,f)))===-1||f===0},E.isNaN=function(){return!this.s},E.isNegative=function(){return this.s<0},E.isPositive=function(){return this.s>0},E.isZero=function(){return!!this.c&&this.c[0]==0},E.minus=function(l,f){var g,k,w,v,P=this,y=P.s;if(l=new M(l,f),f=l.s,!y||!f)return new M(NaN);if(y!=f)return l.s=-f,P.plus(l);var I=P.e/c,$=l.e/c,A=P.c,U=l.c;if(!I||!$){if(!A||!U)return A?(l.s=-f,l):new M(U?P:NaN);if(!A[0]||!U[0])return U[0]?(l.s=-f,l):new M(A[0]?P:ne==3?-0:0)}if(I=T(I),$=T($),A=A.slice(),y=I-$){for((v=y<0)?(y=-y,w=A):($=I,w=U),w.reverse(),f=y;f--;w.push(0));w.reverse()}else for(k=(v=(y=A.length)<(f=U.length))?y:f,y=f=0;f<k;f++)if(A[f]!=U[f]){v=A[f]<U[f];break}if(v&&(w=A,A=U,U=w,l.s=-l.s),f=(k=U.length)-(g=A.length),f>0)for(;f--;A[g++]=0);for(f=d-1;k>y;){if(A[--k]<U[k]){for(g=k;g&&!A[--g];A[g]=f);--A[g],A[k]+=d}A[k]-=U[k]}for(;A[0]==0;A.splice(0,1),--$);return A[0]?wi(l,A,$):(l.s=ne==3?-1:1,l.c=[l.e=0],l)},E.modulo=E.mod=function(l,f){var g,k,w=this;return l=new M(l,f),!w.c||!l.s||l.c&&!l.c[0]?new M(NaN):!l.c||w.c&&!w.c[0]?new M(w):(ht==9?(k=l.s,l.s=1,g=N(w,l,0,3),l.s=k,g.s*=k):g=N(w,l,0,ht),l=w.minus(g.times(l)),!l.c[0]&&ht==1&&(l.s=w.s),l)},E.multipliedBy=E.times=function(l,f){var g,k,w,v,P,y,I,$,A,U,B,X,oe,le,he,te=this,re=te.c,me=(l=new M(l,f)).c;if(!re||!me||!re[0]||!me[0])return!te.s||!l.s||re&&!re[0]&&!me||me&&!me[0]&&!re?l.c=l.e=l.s=null:(l.s*=te.s,!re||!me?l.c=l.e=null:(l.c=[0],l.e=0)),l;for(k=T(te.e/c)+T(l.e/c),l.s*=te.s,I=re.length,U=me.length,I<U&&(oe=re,re=me,me=oe,w=I,I=U,U=w),w=I+U,oe=[];w--;oe.push(0));for(le=d,he=m,w=U;--w>=0;){for(g=0,B=me[w]%he,X=me[w]/he|0,P=I,v=w+P;v>w;)$=re[--P]%he,A=re[P]/he|0,y=X*$+A*B,$=B*$+y%he*he+oe[v]+g,g=($/le|0)+(y/he|0)+X*A,oe[v--]=$%le;oe[v]=g}return g?++k:oe.splice(0,1),wi(l,oe,k)},E.negated=function(){var l=new M(this);return l.s=-l.s||null,l},E.plus=function(l,f){var g,k=this,w=k.s;if(l=new M(l,f),f=l.s,!w||!f)return new M(NaN);if(w!=f)return l.s=-f,k.minus(l);var v=k.e/c,P=l.e/c,y=k.c,I=l.c;if(!v||!P){if(!y||!I)return new M(w/0);if(!y[0]||!I[0])return I[0]?l:new M(y[0]?k:w*0)}if(v=T(v),P=T(P),y=y.slice(),w=v-P){for(w>0?(P=v,g=I):(w=-w,g=y),g.reverse();w--;g.push(0));g.reverse()}for(w=y.length,f=I.length,w-f<0&&(g=I,I=y,y=g,f=w),w=0;f;)w=(y[--f]=y[f]+I[f]+w)/d|0,y[f]=d===y[f]?0:y[f]%d;return w&&(y=[w].concat(y),++P),wi(l,y,P)},E.precision=E.sd=function(l,f){var g,k,w,v=this;if(l!=null&&l!==!!l)return L(l,1,j),f==null?f=ne:L(f,0,8),$e(new M(v),l,f);if(!(g=v.c))return null;if(w=g.length-1,k=w*c+1,w=g[w]){for(;w%10==0;w/=10,k--);for(w=g[0];w>=10;w/=10,k++);}return l&&v.e+1>k&&(k=v.e+1),k},E.shiftedBy=function(l){return L(l,-p,p),this.times("1e"+l)},E.squareRoot=E.sqrt=function(){var l,f,g,k,w,v=this,P=v.c,y=v.s,I=v.e,$=z+4,A=new M("0.5");if(y!==1||!P||!P[0])return new M(!y||y<0&&(!P||P[0])?NaN:P?v:1/0);if(y=Math.sqrt(+_e(v)),y==0||y==1/0?(f=K(P),(f.length+I)%2==0&&(f+="0"),y=Math.sqrt(+f),I=T((I+1)/2)-(I<0||I%2),y==1/0?f="5e"+I:(f=y.toExponential(),f=f.slice(0,f.indexOf("e")+1)+I),g=new M(f)):g=new M(y+""),g.c[0]){for(I=g.e,y=I+$,y<3&&(y=0);;)if(w=g,g=A.times(w.plus(N(v,w,$,1))),K(w.c).slice(0,y)===(f=K(g.c)).slice(0,y))if(g.e<I&&--y,f=f.slice(y-3,y+1),f=="9999"||!k&&f=="4999"){if(!k&&($e(w,w.e+z+2,0),w.times(w).eq(v))){g=w;break}$+=4,y+=4,k=1}else{(!+f||!+f.slice(1)&&f.charAt(0)=="5")&&($e(g,g.e+z+2,1),l=!g.times(g).eq(v));break}}return $e(g,g.e+z+1,ne,l)},E.toExponential=function(l,f){return l!=null&&(L(l,0,j),l++),mi(this,l,f,1)},E.toFixed=function(l,f){return l!=null&&(L(l,0,j),l=l+this.e+1),mi(this,l,f)},E.toFormat=function(l,f,g){var k,w=this;if(g==null)l!=null&&f&&typeof f=="object"?(g=f,f=null):l&&typeof l=="object"?(g=l,l=f=null):g=gi;else if(typeof g!="object")throw Error(s+"Argument not an object: "+g);if(k=w.toFixed(l,f),w.c){var v,P=k.split("."),y=+g.groupSize,I=+g.secondaryGroupSize,$=g.groupSeparator||"",A=P[0],U=P[1],B=w.s<0,X=B?A.slice(1):A,oe=X.length;if(I&&(v=y,y=I,I=v,oe-=v),y>0&&oe>0){for(v=oe%y||y,A=X.substr(0,v);v<oe;v+=y)A+=$+X.substr(v,y);I>0&&(A+=$+X.slice(v)),B&&(A="-"+A)}k=U?A+(g.decimalSeparator||"")+((I=+g.fractionGroupSize)?U.replace(new RegExp("\\d{"+I+"}\\B","g"),"$&"+(g.fractionGroupSeparator||"")):U):A}return(g.prefix||"")+k+(g.suffix||"")},E.toFraction=function(l){var f,g,k,w,v,P,y,I,$,A,U,B,X=this,oe=X.c;if(l!=null&&(y=new M(l),!y.isInteger()&&(y.c||y.s!==1)||y.lt(J)))throw Error(s+"Argument "+(y.isInteger()?"out of range: ":"not an integer: ")+_e(y));if(!oe)return new M(X);for(f=new M(J),$=g=new M(J),k=I=new M(J),B=K(oe),v=f.e=B.length-X.e-1,f.c[0]=u[(P=v%c)<0?c+P:P],l=!l||y.comparedTo(f)>0?v>0?f:$:y,P=ve,ve=1/0,y=new M(B),I.c[0]=0;A=N(y,f,0,1),w=g.plus(A.times(k)),w.comparedTo(l)!=1;)g=k,k=w,$=I.plus(A.times(w=$)),I=w,f=y.minus(A.times(w=f)),y=w;return w=N(l.minus(g),k,0,1),I=I.plus(w.times($)),g=g.plus(w.times(k)),I.s=$.s=X.s,v=v*2,U=N($,k,v,ne).minus(X).abs().comparedTo(N(I,g,v,ne).minus(X).abs())<1?[$,k]:[I,g],ve=P,U},E.toNumber=function(){return+_e(this)},E.toPrecision=function(l,f){return l!=null&&L(l,1,j),mi(this,l,f,2)},E.toString=function(l){var f,g=this,k=g.s,w=g.e;return w===null?k?(f="Infinity",k<0&&(f="-"+f)):f="NaN":(l==null?f=w<=ce||w>=de?Z(K(g.c),w):se(K(g.c),w,"0"):l===10&&yi?(g=$e(new M(g),z+w+1,ne),f=se(K(g.c),g.e,"0")):(L(l,2,Qe.length,"Base"),f=ie(se(K(g.c),w,"0"),10,l,k,!0)),k<0&&g.c[0]&&(f="-"+f)),f},E.valueOf=E.toJSON=function(){return _e(this)},E._isBigNumber=!0,D!=null&&M.set(D),M}function T(D){var N=D|0;return D>0||D===N?N:N-1}function K(D){for(var N,ie,V=1,E=D.length,J=D[0]+"";V<E;){for(N=D[V++]+"",ie=c-N.length;ie--;N="0"+N);J+=N}for(E=J.length;J.charCodeAt(--E)===48;);return J.slice(0,E+1||1)}function Y(D,N){var ie,V,E=D.c,J=N.c,z=D.s,ne=N.s,ce=D.e,de=N.e;if(!z||!ne)return null;if(ie=E&&!E[0],V=J&&!J[0],ie||V)return ie?V?0:-ne:z;if(z!=ne)return z;if(ie=z<0,V=ce==de,!E||!J)return V?0:!E^ie?1:-1;if(!V)return ce>de^ie?1:-1;for(ne=(ce=E.length)<(de=J.length)?ce:de,z=0;z<ne;z++)if(E[z]!=J[z])return E[z]>J[z]^ie?1:-1;return ce==de?0:ce>de^ie?1:-1}function L(D,N,ie,V){if(D<N||D>ie||D!==a(D))throw Error(s+(V||"Argument")+(typeof D=="number"?D<N||D>ie?" out of range: ":" not an integer: ":" not a primitive number: ")+String(D))}function H(D){var N=D.c.length-1;return T(D.e/c)==N&&D.c[N]%2!=0}function Z(D,N){return(D.length>1?D.charAt(0)+"."+D.slice(1):D)+(N<0?"e":"e+")+N}function se(D,N,ie){var V,E;if(N<0){for(E=ie+".";++N;E+=ie);D=E+D}else if(V=D.length,++N>V){for(E=ie,N-=V;--N;E+=ie);D+=E}else N<V&&(D=D.slice(0,N)+"."+D.slice(N));return D}i=q(),i.default=i.BigNumber=i,n.exports?n.exports=i:(e||(e=typeof self<"u"&&self?self:window),e.BigNumber=i)})(Kn)})(It)),It.exports}var Bi;function Yn(){return Bi||(Bi=1,(function(n){var e=Di(),i=n.exports;(function(){var t=/[\\\"\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,o,a,s={"\b":"\\b"," ":"\\t","\n":"\\n","\f":"\\f","\r":"\\r",'"':'\\"',"\\":"\\\\"},r;function d(p){return t.lastIndex=0,t.test(p)?'"'+p.replace(t,function(u){var m=s[u];return typeof m=="string"?m:"\\u"+("0000"+u.charCodeAt(0).toString(16)).slice(-4)})+'"':'"'+p+'"'}function c(p,u){var m,j,q,T,K=o,Y,L=u[p],H=L!=null&&(L instanceof e||e.isBigNumber(L));switch(L&&typeof L=="object"&&typeof L.toJSON=="function"&&(L=L.toJSON(p)),typeof r=="function"&&(L=r.call(u,p,L)),typeof L){case"string":return H?L:d(L);case"number":return isFinite(L)?String(L):"null";case"boolean":case"null":case"bigint":return String(L);case"object":if(!L)return"null";if(o+=a,Y=[],Object.prototype.toString.apply(L)==="[object Array]"){for(T=L.length,m=0;m<T;m+=1)Y[m]=c(m,L)||"null";return q=Y.length===0?"[]":o?`[
|
|
1
|
+
var AuthUI=(function(k){"use strict";var Ee;const gt=globalThis,Rt=gt.ShadowRoot&&(gt.ShadyCSS===void 0||gt.ShadyCSS.nativeShadow)&&"adoptedStyleSheets"in Document.prototype&&"replace"in CSSStyleSheet.prototype,Et=Symbol(),Ii=new WeakMap;let Ai=class{constructor(e,i,t){if(this._$cssResult$=!0,t!==Et)throw Error("CSSResult is not constructable. Use `unsafeCSS` or `css` instead.");this.cssText=e,this.t=i}get styleSheet(){let e=this.o;const i=this.t;if(Rt&&e===void 0){const t=i!==void 0&&i.length===1;t&&(e=Ii.get(i)),e===void 0&&((this.o=e=new CSSStyleSheet).replaceSync(this.cssText),t&&Ii.set(i,e))}return e}toString(){return this.cssText}};const vn=n=>new Ai(typeof n=="string"?n:n+"",void 0,Et),Le=(n,...e)=>{const i=n.length===1?n[0]:e.reduce((t,o,a)=>t+(s=>{if(s._$cssResult$===!0)return s.cssText;if(typeof s=="number")return s;throw Error("Value passed to 'css' function must be a 'css' function result: "+s+". Use 'unsafeCSS' to pass non-literal values, but take care to ensure page security.")})(o)+n[a+1],n[0]);return new Ai(i,n,Et)},In=(n,e)=>{if(Rt)n.adoptedStyleSheets=e.map(i=>i instanceof CSSStyleSheet?i:i.styleSheet);else for(const i of e){const t=document.createElement("style"),o=gt.litNonce;o!==void 0&&t.setAttribute("nonce",o),t.textContent=i.cssText,n.appendChild(t)}},ki=Rt?n=>n:n=>n instanceof CSSStyleSheet?(e=>{let i="";for(const t of e.cssRules)i+=t.cssText;return vn(i)})(n):n;const{is:An,defineProperty:kn,getOwnPropertyDescriptor:Sn,getOwnPropertyNames:$n,getOwnPropertySymbols:jn,getPrototypeOf:Pn}=Object,yt=globalThis,Si=yt.trustedTypes,Cn=Si?Si.emptyScript:"",Un=yt.reactiveElementPolyfillSupport,nt=(n,e)=>n,mt={toAttribute(n,e){switch(e){case Boolean:n=n?Cn:null;break;case Object:case Array:n=n==null?n:JSON.stringify(n)}return n},fromAttribute(n,e){let i=n;switch(e){case Boolean:i=n!==null;break;case Number:i=n===null?null:Number(n);break;case Object:case Array:try{i=JSON.parse(n)}catch{i=null}}return i}},qt=(n,e)=>!An(n,e),$i={attribute:!0,type:String,converter:mt,reflect:!1,useDefault:!1,hasChanged:qt};Symbol.metadata??=Symbol("metadata"),yt.litPropertyMetadata??=new WeakMap;let Te=class extends HTMLElement{static addInitializer(e){this._$Ei(),(this.l??=[]).push(e)}static get observedAttributes(){return this.finalize(),this._$Eh&&[...this._$Eh.keys()]}static createProperty(e,i=$i){if(i.state&&(i.attribute=!1),this._$Ei(),this.prototype.hasOwnProperty(e)&&((i=Object.create(i)).wrapped=!0),this.elementProperties.set(e,i),!i.noAccessor){const t=Symbol(),o=this.getPropertyDescriptor(e,t,i);o!==void 0&&kn(this.prototype,e,o)}}static getPropertyDescriptor(e,i,t){const{get:o,set:a}=Sn(this.prototype,e)??{get(){return this[i]},set(s){this[i]=s}};return{get:o,set(s){const r=o?.call(this);a?.call(this,s),this.requestUpdate(e,r,t)},configurable:!0,enumerable:!0}}static getPropertyOptions(e){return this.elementProperties.get(e)??$i}static _$Ei(){if(this.hasOwnProperty(nt("elementProperties")))return;const e=Pn(this);e.finalize(),e.l!==void 0&&(this.l=[...e.l]),this.elementProperties=new Map(e.elementProperties)}static finalize(){if(this.hasOwnProperty(nt("finalized")))return;if(this.finalized=!0,this._$Ei(),this.hasOwnProperty(nt("properties"))){const i=this.properties,t=[...$n(i),...jn(i)];for(const o of t)this.createProperty(o,i[o])}const e=this[Symbol.metadata];if(e!==null){const i=litPropertyMetadata.get(e);if(i!==void 0)for(const[t,o]of i)this.elementProperties.set(t,o)}this._$Eh=new Map;for(const[i,t]of this.elementProperties){const o=this._$Eu(i,t);o!==void 0&&this._$Eh.set(o,i)}this.elementStyles=this.finalizeStyles(this.styles)}static finalizeStyles(e){const i=[];if(Array.isArray(e)){const t=new Set(e.flat(1/0).reverse());for(const o of t)i.unshift(ki(o))}else e!==void 0&&i.push(ki(e));return i}static _$Eu(e,i){const t=i.attribute;return t===!1?void 0:typeof t=="string"?t:typeof e=="string"?e.toLowerCase():void 0}constructor(){super(),this._$Ep=void 0,this.isUpdatePending=!1,this.hasUpdated=!1,this._$Em=null,this._$Ev()}_$Ev(){this._$ES=new Promise(e=>this.enableUpdating=e),this._$AL=new Map,this._$E_(),this.requestUpdate(),this.constructor.l?.forEach(e=>e(this))}addController(e){(this._$EO??=new Set).add(e),this.renderRoot!==void 0&&this.isConnected&&e.hostConnected?.()}removeController(e){this._$EO?.delete(e)}_$E_(){const e=new Map,i=this.constructor.elementProperties;for(const t of i.keys())this.hasOwnProperty(t)&&(e.set(t,this[t]),delete this[t]);e.size>0&&(this._$Ep=e)}createRenderRoot(){const e=this.shadowRoot??this.attachShadow(this.constructor.shadowRootOptions);return In(e,this.constructor.elementStyles),e}connectedCallback(){this.renderRoot??=this.createRenderRoot(),this.enableUpdating(!0),this._$EO?.forEach(e=>e.hostConnected?.())}enableUpdating(e){}disconnectedCallback(){this._$EO?.forEach(e=>e.hostDisconnected?.())}attributeChangedCallback(e,i,t){this._$AK(e,t)}_$ET(e,i){const t=this.constructor.elementProperties.get(e),o=this.constructor._$Eu(e,t);if(o!==void 0&&t.reflect===!0){const a=(t.converter?.toAttribute!==void 0?t.converter:mt).toAttribute(i,t.type);this._$Em=e,a==null?this.removeAttribute(o):this.setAttribute(o,a),this._$Em=null}}_$AK(e,i){const t=this.constructor,o=t._$Eh.get(e);if(o!==void 0&&this._$Em!==o){const a=t.getPropertyOptions(o),s=typeof a.converter=="function"?{fromAttribute:a.converter}:a.converter?.fromAttribute!==void 0?a.converter:mt;this._$Em=o;const r=s.fromAttribute(i,a.type);this[o]=r??this._$Ej?.get(o)??r,this._$Em=null}}requestUpdate(e,i,t,o=!1,a){if(e!==void 0){const s=this.constructor;if(o===!1&&(a=this[e]),t??=s.getPropertyOptions(e),!((t.hasChanged??qt)(a,i)||t.useDefault&&t.reflect&&a===this._$Ej?.get(e)&&!this.hasAttribute(s._$Eu(e,t))))return;this.C(e,i,t)}this.isUpdatePending===!1&&(this._$ES=this._$EP())}C(e,i,{useDefault:t,reflect:o,wrapped:a},s){t&&!(this._$Ej??=new Map).has(e)&&(this._$Ej.set(e,s??i??this[e]),a!==!0||s!==void 0)||(this._$AL.has(e)||(this.hasUpdated||t||(i=void 0),this._$AL.set(e,i)),o===!0&&this._$Em!==e&&(this._$Eq??=new Set).add(e))}async _$EP(){this.isUpdatePending=!0;try{await this._$ES}catch(i){Promise.reject(i)}const e=this.scheduleUpdate();return e!=null&&await e,!this.isUpdatePending}scheduleUpdate(){return this.performUpdate()}performUpdate(){if(!this.isUpdatePending)return;if(!this.hasUpdated){if(this.renderRoot??=this.createRenderRoot(),this._$Ep){for(const[o,a]of this._$Ep)this[o]=a;this._$Ep=void 0}const t=this.constructor.elementProperties;if(t.size>0)for(const[o,a]of t){const{wrapped:s}=a,r=this[o];s!==!0||this._$AL.has(o)||r===void 0||this.C(o,void 0,a,r)}}let e=!1;const i=this._$AL;try{e=this.shouldUpdate(i),e?(this.willUpdate(i),this._$EO?.forEach(t=>t.hostUpdate?.()),this.update(i)):this._$EM()}catch(t){throw e=!1,this._$EM(),t}e&&this._$AE(i)}willUpdate(e){}_$AE(e){this._$EO?.forEach(i=>i.hostUpdated?.()),this.hasUpdated||(this.hasUpdated=!0,this.firstUpdated(e)),this.updated(e)}_$EM(){this._$AL=new Map,this.isUpdatePending=!1}get updateComplete(){return this.getUpdateComplete()}getUpdateComplete(){return this._$ES}shouldUpdate(e){return!0}update(e){this._$Eq&&=this._$Eq.forEach(i=>this._$ET(i,this[i])),this._$EM()}updated(e){}firstUpdated(e){}};Te.elementStyles=[],Te.shadowRootOptions={mode:"open"},Te[nt("elementProperties")]=new Map,Te[nt("finalized")]=new Map,Un?.({ReactiveElement:Te}),(yt.reactiveElementVersions??=[]).push("2.1.2");const _t=globalThis,ji=n=>n,bt=_t.trustedTypes,Pi=bt?bt.createPolicy("lit-html",{createHTML:n=>n}):void 0,Ci="$lit$",Ne=`lit$${Math.random().toFixed(9).slice(2)}$`,Ui="?"+Ne,Mn=`<${Ui}>`,Ve=document,ot=()=>Ve.createComment(""),at=n=>n===null||typeof n!="object"&&typeof n!="function",Lt=Array.isArray,xn=n=>Lt(n)||typeof n?.[Symbol.iterator]=="function",Nt=`[
|
|
2
|
+
\f\r]`,st=/<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g,Mi=/-->/g,xi=/>/g,We=RegExp(`>|${Nt}(?:([^\\s"'>=/]+)(${Nt}*=${Nt}*(?:[^
|
|
3
|
+
\f\r"'\`<>=]|("|')|))|$)`,"g"),Ri=/'/g,Ei=/"/g,qi=/^(?:script|style|textarea|title)$/i,_i=n=>(e,...i)=>({_$litType$:n,strings:e,values:i}),w=_i(1),G=_i(2),ze=Symbol.for("lit-noChange"),M=Symbol.for("lit-nothing"),Li=new WeakMap,Ge=Ve.createTreeWalker(Ve,129);function Ni(n,e){if(!Lt(n)||!n.hasOwnProperty("raw"))throw Error("invalid template strings array");return Pi!==void 0?Pi.createHTML(e):e}const Rn=(n,e)=>{const i=n.length-1,t=[];let o,a=e===2?"<svg>":e===3?"<math>":"",s=st;for(let r=0;r<i;r++){const d=n[r];let c,p,u=-1,m=0;for(;m<d.length&&(s.lastIndex=m,p=s.exec(d),p!==null);)m=s.lastIndex,s===st?p[1]==="!--"?s=Mi:p[1]!==void 0?s=xi:p[2]!==void 0?(qi.test(p[2])&&(o=RegExp("</"+p[2],"g")),s=We):p[3]!==void 0&&(s=We):s===We?p[0]===">"?(s=o??st,u=-1):p[1]===void 0?u=-2:(u=s.lastIndex-p[2].length,c=p[1],s=p[3]===void 0?We:p[3]==='"'?Ei:Ri):s===Ei||s===Ri?s=We:s===Mi||s===xi?s=st:(s=We,o=void 0);const j=s===We&&n[r+1].startsWith("/>")?" ":"";a+=s===st?d+Mn:u>=0?(t.push(c),d.slice(0,u)+Ci+d.slice(u)+Ne+j):d+Ne+(u===-2?r:j)}return[Ni(n,a+(n[i]||"<?>")+(e===2?"</svg>":e===3?"</math>":"")),t]};class rt{constructor({strings:e,_$litType$:i},t){let o;this.parts=[];let a=0,s=0;const r=e.length-1,d=this.parts,[c,p]=Rn(e,i);if(this.el=rt.createElement(c,t),Ge.currentNode=this.el.content,i===2||i===3){const u=this.el.content.firstChild;u.replaceWith(...u.childNodes)}for(;(o=Ge.nextNode())!==null&&d.length<r;){if(o.nodeType===1){if(o.hasAttributes())for(const u of o.getAttributeNames())if(u.endsWith(Ci)){const m=p[s++],j=o.getAttribute(u).split(Ne),q=/([.?@])?(.*)/.exec(m);d.push({type:1,index:a,name:q[2],strings:j,ctor:q[1]==="."?qn:q[1]==="?"?_n:q[1]==="@"?Ln:wt}),o.removeAttribute(u)}else u.startsWith(Ne)&&(d.push({type:6,index:a}),o.removeAttribute(u));if(qi.test(o.tagName)){const u=o.textContent.split(Ne),m=u.length-1;if(m>0){o.textContent=bt?bt.emptyScript:"";for(let j=0;j<m;j++)o.append(u[j],ot()),Ge.nextNode(),d.push({type:2,index:++a});o.append(u[m],ot())}}}else if(o.nodeType===8)if(o.data===Ui)d.push({type:2,index:a});else{let u=-1;for(;(u=o.data.indexOf(Ne,u+1))!==-1;)d.push({type:7,index:a}),u+=Ne.length-1}a++}}static createElement(e,i){const t=Ve.createElement("template");return t.innerHTML=e,t}}function Oe(n,e,i=n,t){if(e===ze)return e;let o=t!==void 0?i._$Co?.[t]:i._$Cl;const a=at(e)?void 0:e._$litDirective$;return o?.constructor!==a&&(o?._$AO?.(!1),a===void 0?o=void 0:(o=new a(n),o._$AT(n,i,t)),t!==void 0?(i._$Co??=[])[t]=o:i._$Cl=o),o!==void 0&&(e=Oe(n,o._$AS(n,e.values),o,t)),e}class En{constructor(e,i){this._$AV=[],this._$AN=void 0,this._$AD=e,this._$AM=i}get parentNode(){return this._$AM.parentNode}get _$AU(){return this._$AM._$AU}u(e){const{el:{content:i},parts:t}=this._$AD,o=(e?.creationScope??Ve).importNode(i,!0);Ge.currentNode=o;let a=Ge.nextNode(),s=0,r=0,d=t[0];for(;d!==void 0;){if(s===d.index){let c;d.type===2?c=new ct(a,a.nextSibling,this,e):d.type===1?c=new d.ctor(a,d.name,d.strings,this,e):d.type===6&&(c=new Nn(a,this,e)),this._$AV.push(c),d=t[++r]}s!==d?.index&&(a=Ge.nextNode(),s++)}return Ge.currentNode=Ve,o}p(e){let i=0;for(const t of this._$AV)t!==void 0&&(t.strings!==void 0?(t._$AI(e,t,i),i+=t.strings.length-2):t._$AI(e[i])),i++}}class ct{get _$AU(){return this._$AM?._$AU??this._$Cv}constructor(e,i,t,o){this.type=2,this._$AH=M,this._$AN=void 0,this._$AA=e,this._$AB=i,this._$AM=t,this.options=o,this._$Cv=o?.isConnected??!0}get parentNode(){let e=this._$AA.parentNode;const i=this._$AM;return i!==void 0&&e?.nodeType===11&&(e=i.parentNode),e}get startNode(){return this._$AA}get endNode(){return this._$AB}_$AI(e,i=this){e=Oe(this,e,i),at(e)?e===M||e==null||e===""?(this._$AH!==M&&this._$AR(),this._$AH=M):e!==this._$AH&&e!==ze&&this._(e):e._$litType$!==void 0?this.$(e):e.nodeType!==void 0?this.T(e):xn(e)?this.k(e):this._(e)}O(e){return this._$AA.parentNode.insertBefore(e,this._$AB)}T(e){this._$AH!==e&&(this._$AR(),this._$AH=this.O(e))}_(e){this._$AH!==M&&at(this._$AH)?this._$AA.nextSibling.data=e:this.T(Ve.createTextNode(e)),this._$AH=e}$(e){const{values:i,_$litType$:t}=e,o=typeof t=="number"?this._$AC(e):(t.el===void 0&&(t.el=rt.createElement(Ni(t.h,t.h[0]),this.options)),t);if(this._$AH?._$AD===o)this._$AH.p(i);else{const a=new En(o,this),s=a.u(this.options);a.p(i),this.T(s),this._$AH=a}}_$AC(e){let i=Li.get(e.strings);return i===void 0&&Li.set(e.strings,i=new rt(e)),i}k(e){Lt(this._$AH)||(this._$AH=[],this._$AR());const i=this._$AH;let t,o=0;for(const a of e)o===i.length?i.push(t=new ct(this.O(ot()),this.O(ot()),this,this.options)):t=i[o],t._$AI(a),o++;o<i.length&&(this._$AR(t&&t._$AB.nextSibling,o),i.length=o)}_$AR(e=this._$AA.nextSibling,i){for(this._$AP?.(!1,!0,i);e!==this._$AB;){const t=ji(e).nextSibling;ji(e).remove(),e=t}}setConnected(e){this._$AM===void 0&&(this._$Cv=e,this._$AP?.(e))}}class wt{get tagName(){return this.element.tagName}get _$AU(){return this._$AM._$AU}constructor(e,i,t,o,a){this.type=1,this._$AH=M,this._$AN=void 0,this.element=e,this.name=i,this._$AM=o,this.options=a,t.length>2||t[0]!==""||t[1]!==""?(this._$AH=Array(t.length-1).fill(new String),this.strings=t):this._$AH=M}_$AI(e,i=this,t,o){const a=this.strings;let s=!1;if(a===void 0)e=Oe(this,e,i,0),s=!at(e)||e!==this._$AH&&e!==ze,s&&(this._$AH=e);else{const r=e;let d,c;for(e=a[0],d=0;d<a.length-1;d++)c=Oe(this,r[t+d],i,d),c===ze&&(c=this._$AH[d]),s||=!at(c)||c!==this._$AH[d],c===M?e=M:e!==M&&(e+=(c??"")+a[d+1]),this._$AH[d]=c}s&&!o&&this.j(e)}j(e){e===M?this.element.removeAttribute(this.name):this.element.setAttribute(this.name,e??"")}}class qn extends wt{constructor(){super(...arguments),this.type=3}j(e){this.element[this.name]=e===M?void 0:e}}class _n extends wt{constructor(){super(...arguments),this.type=4}j(e){this.element.toggleAttribute(this.name,!!e&&e!==M)}}class Ln extends wt{constructor(e,i,t,o,a){super(e,i,t,o,a),this.type=5}_$AI(e,i=this){if((e=Oe(this,e,i,0)??M)===ze)return;const t=this._$AH,o=e===M&&t!==M||e.capture!==t.capture||e.once!==t.once||e.passive!==t.passive,a=e!==M&&(t===M||o);o&&this.element.removeEventListener(this.name,this,t),a&&this.element.addEventListener(this.name,this,e),this._$AH=e}handleEvent(e){typeof this._$AH=="function"?this._$AH.call(this.options?.host??this.element,e):this._$AH.handleEvent(e)}}class Nn{constructor(e,i,t){this.element=e,this.type=6,this._$AN=void 0,this._$AM=i,this.options=t}get _$AU(){return this._$AM._$AU}_$AI(e){Oe(this,e)}}const Hn=_t.litHtmlPolyfillSupport;Hn?.(rt,ct),(_t.litHtmlVersions??=[]).push("3.3.3");const Dn=(n,e,i)=>{const t=i?.renderBefore??e;let o=t._$litPart$;if(o===void 0){const a=i?.renderBefore??null;t._$litPart$=o=new ct(e.insertBefore(ot(),a),a,void 0,i??{})}return o._$AI(n),o};const Ht=globalThis;class Ke extends Te{constructor(){super(...arguments),this.renderOptions={host:this},this._$Do=void 0}createRenderRoot(){const e=super.createRenderRoot();return this.renderOptions.renderBefore??=e.firstChild,e}update(e){const i=this.render();this.hasUpdated||(this.renderOptions.isConnected=this.isConnected),super.update(e),this._$Do=Dn(i,this.renderRoot,this.renderOptions)}connectedCallback(){super.connectedCallback(),this._$Do?.setConnected(!0)}disconnectedCallback(){super.disconnectedCallback(),this._$Do?.setConnected(!1)}render(){return ze}}Ke._$litElement$=!0,Ke.finalized=!0,Ht.litElementHydrateSupport?.({LitElement:Ke});const Bn=Ht.litElementPolyfillSupport;Bn?.({LitElement:Ke}),(Ht.litElementVersions??=[]).push("4.2.2");const Ye=n=>(e,i)=>{i!==void 0?i.addInitializer(()=>{customElements.define(n,e)}):customElements.define(n,e)};const Xn={attribute:!0,type:String,converter:mt,reflect:!1,hasChanged:qt},Vn=(n=Xn,e,i)=>{const{kind:t,metadata:o}=i;let a=globalThis.litPropertyMetadata.get(o);if(a===void 0&&globalThis.litPropertyMetadata.set(o,a=new Map),t==="setter"&&((n=Object.create(n)).wrapped=!0),a.set(i.name,n),t==="accessor"){const{name:s}=i;return{set(r){const d=e.get.call(this);e.set.call(this,r),this.requestUpdate(s,d,n,!0,r)},init(r){return r!==void 0&&this.C(s,void 0,n,r),r}}}if(t==="setter"){const{name:s}=i;return function(r){const d=this[s];e.call(this,r),this.requestUpdate(s,d,n,!0,r)}}throw Error("Unsupported decorator location: "+t)};function F(n){return(e,i)=>typeof i=="object"?Vn(n,e,i):((t,o,a)=>{const s=o.hasOwnProperty(a);return o.constructor.createProperty(a,t),s?Object.getOwnPropertyDescriptor(o,a):void 0})(n,e,i)}function V(n){return F({...n,state:!0,attribute:!1})}const Wn=(n,e,i)=>(i.configurable=!0,i.enumerable=!0,Reflect.decorate&&typeof e!="object"&&Object.defineProperty(n,e,i),i);function Dt(n,e){return(i,t,o)=>{const a=s=>s.renderRoot?.querySelector(n)??null;return Wn(i,t,{get(){return a(this)}})}}function Gn(n){return n&&n.__esModule&&Object.prototype.hasOwnProperty.call(n,"default")?n.default:n}var dt={exports:{}},Bt={exports:{}},vt={exports:{}},Kn=vt.exports,Hi;function Di(){return Hi||(Hi=1,(function(n){(function(e){var i,t=/^-?(?:\d+(?:\.\d*)?|\.\d+)(?:e[+-]?\d+)?$/i,o=Math.ceil,a=Math.floor,s="[BigNumber Error] ",r=s+"Number primitive has more than 15 significant digits: ",d=1e14,c=14,p=9007199254740991,u=[1,10,100,1e3,1e4,1e5,1e6,1e7,1e8,1e9,1e10,1e11,1e12,1e13],m=1e7,j=1e9;function q(D){var N,ie,W,R=x.prototype={constructor:x,toString:null,valueOf:null},J=new x(1),z=20,ne=4,ce=-7,de=21,Ue=-1e7,Ie=1e7,qe=!1,ht=1,Xe=0,gi={prefix:"",groupSize:3,secondaryGroupSize:0,groupSeparator:",",decimalSeparator:".",fractionGroupSize:0,fractionGroupSeparator:" ",suffix:""},Qe="0123456789abcdefghijklmnopqrstuvwxyz",yi=!0;function x(l,f){var g,S,b,I,P,y,v,$,A=this;if(!(A instanceof x))return new x(l,f);if(f==null){if(l&&l._isBigNumber===!0){A.s=l.s,!l.c||l.e>Ie?A.c=A.e=null:l.e<Ue?A.c=[A.e=0]:(A.e=l.e,A.c=l.c.slice());return}if((y=typeof l=="number")&&l*0==0){if(A.s=1/l<0?(l=-l,-1):1,l===~~l){for(I=0,P=l;P>=10;P/=10,I++);I>Ie?A.c=A.e=null:(A.e=I,A.c=[l]);return}$=String(l)}else{if(!t.test($=String(l)))return W(A,$,y);A.s=$.charCodeAt(0)==45?($=$.slice(1),-1):1}(I=$.indexOf("."))>-1&&($=$.replace(".","")),(P=$.search(/e/i))>0?(I<0&&(I=P),I+=+$.slice(P+1),$=$.substring(0,P)):I<0&&(I=$.length)}else{if(L(f,2,Qe.length,"Base"),f==10&&yi)return A=new x(l),$e(A,z+A.e+1,ne);if($=String(l),y=typeof l=="number"){if(l*0!=0)return W(A,$,y,f);if(A.s=1/l<0?($=$.slice(1),-1):1,x.DEBUG&&$.replace(/^0\.0*|\./,"").length>15)throw Error(r+l)}else A.s=$.charCodeAt(0)===45?($=$.slice(1),-1):1;for(g=Qe.slice(0,f),I=P=0,v=$.length;P<v;P++)if(g.indexOf(S=$.charAt(P))<0){if(S=="."){if(P>I){I=v;continue}}else if(!b&&($==$.toUpperCase()&&($=$.toLowerCase())||$==$.toLowerCase()&&($=$.toUpperCase()))){b=!0,P=-1,I=0;continue}return W(A,String(l),y,f)}y=!1,$=ie($,f,10,A.s),(I=$.indexOf("."))>-1?$=$.replace(".",""):I=$.length}for(P=0;$.charCodeAt(P)===48;P++);for(v=$.length;$.charCodeAt(--v)===48;);if($=$.slice(P,++v)){if(v-=P,y&&x.DEBUG&&v>15&&(l>p||l!==a(l)))throw Error(r+A.s*l);if((I=I-P-1)>Ie)A.c=A.e=null;else if(I<Ue)A.c=[A.e=0];else{if(A.e=I,A.c=[],P=(I+1)%c,I<0&&(P+=c),P<v){for(P&&A.c.push(+$.slice(0,P)),v-=c;P<v;)A.c.push(+$.slice(P,P+=c));P=c-($=$.slice(P)).length}else P-=v;for(;P--;$+="0");A.c.push(+$)}}else A.c=[A.e=0]}x.clone=q,x.ROUND_UP=0,x.ROUND_DOWN=1,x.ROUND_CEIL=2,x.ROUND_FLOOR=3,x.ROUND_HALF_UP=4,x.ROUND_HALF_DOWN=5,x.ROUND_HALF_EVEN=6,x.ROUND_HALF_CEIL=7,x.ROUND_HALF_FLOOR=8,x.EUCLID=9,x.config=x.set=function(l){var f,g;if(l!=null)if(typeof l=="object"){if(l.hasOwnProperty(f="DECIMAL_PLACES")&&(g=l[f],L(g,0,j,f),z=g),l.hasOwnProperty(f="ROUNDING_MODE")&&(g=l[f],L(g,0,8,f),ne=g),l.hasOwnProperty(f="EXPONENTIAL_AT")&&(g=l[f],g&&g.pop?(L(g[0],-j,0,f),L(g[1],0,j,f),ce=g[0],de=g[1]):(L(g,-j,j,f),ce=-(de=g<0?-g:g))),l.hasOwnProperty(f="RANGE"))if(g=l[f],g&&g.pop)L(g[0],-j,-1,f),L(g[1],1,j,f),Ue=g[0],Ie=g[1];else if(L(g,-j,j,f),g)Ue=-(Ie=g<0?-g:g);else throw Error(s+f+" cannot be zero: "+g);if(l.hasOwnProperty(f="CRYPTO"))if(g=l[f],g===!!g)if(g)if(typeof crypto<"u"&&crypto&&(crypto.getRandomValues||crypto.randomBytes))qe=g;else throw qe=!g,Error(s+"crypto unavailable");else qe=g;else throw Error(s+f+" not true or false: "+g);if(l.hasOwnProperty(f="MODULO_MODE")&&(g=l[f],L(g,0,9,f),ht=g),l.hasOwnProperty(f="POW_PRECISION")&&(g=l[f],L(g,0,j,f),Xe=g),l.hasOwnProperty(f="FORMAT"))if(g=l[f],typeof g=="object")gi=g;else throw Error(s+f+" not an object: "+g);if(l.hasOwnProperty(f="ALPHABET"))if(g=l[f],typeof g=="string"&&!/^.?$|[+\-.\s]|(.).*\1/.test(g))yi=g.slice(0,10)=="0123456789",Qe=g;else throw Error(s+f+" invalid: "+g)}else throw Error(s+"Object expected: "+l);return{DECIMAL_PLACES:z,ROUNDING_MODE:ne,EXPONENTIAL_AT:[ce,de],RANGE:[Ue,Ie],CRYPTO:qe,MODULO_MODE:ht,POW_PRECISION:Xe,FORMAT:gi,ALPHABET:Qe}},x.isBigNumber=function(l){if(!l||l._isBigNumber!==!0)return!1;if(!x.DEBUG)return!0;var f,g,S=l.c,b=l.e,I=l.s;e:if({}.toString.call(S)=="[object Array]"){if((I===1||I===-1)&&b>=-j&&b<=j&&b===a(b)){if(S[0]===0){if(b===0&&S.length===1)return!0;break e}if(f=(b+1)%c,f<1&&(f+=c),String(S[0]).length==f){for(f=0;f<S.length;f++)if(g=S[f],g<0||g>=d||g!==a(g))break e;if(g!==0)return!0}}}else if(S===null&&b===null&&(I===null||I===1||I===-1))return!0;throw Error(s+"Invalid BigNumber: "+l)},x.maximum=x.max=function(){return wn(arguments,-1)},x.minimum=x.min=function(){return wn(arguments,1)},x.random=(function(){var l=9007199254740992,f=Math.random()*l&2097151?function(){return a(Math.random()*l)}:function(){return(Math.random()*1073741824|0)*8388608+(Math.random()*8388608|0)};return function(g){var S,b,I,P,y,v=0,$=[],A=new x(J);if(g==null?g=z:L(g,0,j),P=o(g/c),qe)if(crypto.getRandomValues){for(S=crypto.getRandomValues(new Uint32Array(P*=2));v<P;)y=S[v]*131072+(S[v+1]>>>11),y>=9e15?(b=crypto.getRandomValues(new Uint32Array(2)),S[v]=b[0],S[v+1]=b[1]):($.push(y%1e14),v+=2);v=P/2}else if(crypto.randomBytes){for(S=crypto.randomBytes(P*=7);v<P;)y=(S[v]&31)*281474976710656+S[v+1]*1099511627776+S[v+2]*4294967296+S[v+3]*16777216+(S[v+4]<<16)+(S[v+5]<<8)+S[v+6],y>=9e15?crypto.randomBytes(7).copy(S,v):($.push(y%1e14),v+=7);v=P/7}else throw qe=!1,Error(s+"crypto unavailable");if(!qe)for(;v<P;)y=f(),y<9e15&&($[v++]=y%1e14);for(P=$[--v],g%=c,P&&g&&(y=u[c-g],$[v]=a(P/y)*y);$[v]===0;$.pop(),v--);if(v<0)$=[I=0];else{for(I=-1;$[0]===0;$.splice(0,1),I-=c);for(v=1,y=$[0];y>=10;y/=10,v++);v<c&&(I-=c-v)}return A.e=I,A.c=$,A}})(),x.sum=function(){for(var l=1,f=arguments,g=new x(f[0]);l<f.length;)g=g.plus(f[l++]);return g},ie=(function(){var l="0123456789";function f(g,S,b,I){for(var P,y=[0],v,$=0,A=g.length;$<A;){for(v=y.length;v--;y[v]*=S);for(y[0]+=I.indexOf(g.charAt($++)),P=0;P<y.length;P++)y[P]>b-1&&(y[P+1]==null&&(y[P+1]=0),y[P+1]+=y[P]/b|0,y[P]%=b)}return y.reverse()}return function(g,S,b,I,P){var y,v,$,A,U,B,X,oe,le=g.indexOf("."),he=z,te=ne;for(le>=0&&(A=Xe,Xe=0,g=g.replace(".",""),oe=new x(S),B=oe.pow(g.length-le),Xe=A,oe.c=f(se(K(B.c),B.e,"0"),10,b,l),oe.e=oe.c.length),X=f(g,S,b,P?(y=Qe,l):(y=l,Qe)),$=A=X.length;X[--A]==0;X.pop());if(!X[0])return y.charAt(0);if(le<0?--$:(B.c=X,B.e=$,B.s=I,B=N(B,oe,he,te,b),X=B.c,U=B.r,$=B.e),v=$+he+1,le=X[v],A=b/2,U=U||v<0||X[v+1]!=null,U=te<4?(le!=null||U)&&(te==0||te==(B.s<0?3:2)):le>A||le==A&&(te==4||U||te==6&&X[v-1]&1||te==(B.s<0?8:7)),v<1||!X[0])g=U?se(y.charAt(1),-he,y.charAt(0)):y.charAt(0);else{if(X.length=v,U)for(--b;++X[--v]>b;)X[v]=0,v||(++$,X=[1].concat(X));for(A=X.length;!X[--A];);for(le=0,g="";le<=A;g+=y.charAt(X[le++]));g=se(g,$,y.charAt(0))}return g}})(),N=(function(){function l(S,b,I){var P,y,v,$,A=0,U=S.length,B=b%m,X=b/m|0;for(S=S.slice();U--;)v=S[U]%m,$=S[U]/m|0,P=X*v+$*B,y=B*v+P%m*m+A,A=(y/I|0)+(P/m|0)+X*$,S[U]=y%I;return A&&(S=[A].concat(S)),S}function f(S,b,I,P){var y,v;if(I!=P)v=I>P?1:-1;else for(y=v=0;y<I;y++)if(S[y]!=b[y]){v=S[y]>b[y]?1:-1;break}return v}function g(S,b,I,P){for(var y=0;I--;)S[I]-=y,y=S[I]<b[I]?1:0,S[I]=y*P+S[I]-b[I];for(;!S[0]&&S.length>1;S.splice(0,1));}return function(S,b,I,P,y){var v,$,A,U,B,X,oe,le,he,te,re,me,xt,wi,vi,Me,ft,je=S.s==b.s?1:-1,be=S.c,ue=b.c;if(!be||!be[0]||!ue||!ue[0])return new x(!S.s||!b.s||(be?ue&&be[0]==ue[0]:!ue)?NaN:be&&be[0]==0||!ue?je*0:je/0);for(le=new x(je),he=le.c=[],$=S.e-b.e,je=I+$+1,y||(y=d,$=T(S.e/c)-T(b.e/c),je=je/c|0),A=0;ue[A]==(be[A]||0);A++);if(ue[A]>(be[A]||0)&&$--,je<0)he.push(1),U=!0;else{for(wi=be.length,Me=ue.length,A=0,je+=2,B=a(y/(ue[0]+1)),B>1&&(ue=l(ue,B,y),be=l(be,B,y),Me=ue.length,wi=be.length),xt=Me,te=be.slice(0,Me),re=te.length;re<Me;te[re++]=0);ft=ue.slice(),ft=[0].concat(ft),vi=ue[0],ue[1]>=y/2&&vi++;do{if(B=0,v=f(ue,te,Me,re),v<0){if(me=te[0],Me!=re&&(me=me*y+(te[1]||0)),B=a(me/vi),B>1)for(B>=y&&(B=y-1),X=l(ue,B,y),oe=X.length,re=te.length;f(X,te,oe,re)==1;)B--,g(X,Me<oe?ft:ue,oe,y),oe=X.length,v=1;else B==0&&(v=B=1),X=ue.slice(),oe=X.length;if(oe<re&&(X=[0].concat(X)),g(te,X,re,y),re=te.length,v==-1)for(;f(ue,te,Me,re)<1;)B++,g(te,Me<re?ft:ue,re,y),re=te.length}else v===0&&(B++,te=[0]);he[A++]=B,te[0]?te[re++]=be[xt]||0:(te=[be[xt]],re=1)}while((xt++<wi||te[0]!=null)&&je--);U=te[0]!=null,he[0]||he.splice(0,1)}if(y==d){for(A=1,je=he[0];je>=10;je/=10,A++);$e(le,I+(le.e=A+$*c-1)+1,P,U)}else le.e=$,le.r=+U;return le}})();function mi(l,f,g,S){var b,I,P,y,v;if(g==null?g=ne:L(g,0,8),!l.c)return l.toString();if(b=l.c[0],P=l.e,f==null)v=K(l.c),v=S==1||S==2&&(P<=ce||P>=de)?Z(v,P):se(v,P,"0");else if(l=$e(new x(l),f,g),I=l.e,v=K(l.c),y=v.length,S==1||S==2&&(f<=I||I<=ce)){for(;y<f;v+="0",y++);v=Z(v,I)}else if(f-=P+(S===2&&I>P),v=se(v,I,"0"),I+1>y){if(--f>0)for(v+=".";f--;v+="0");}else if(f+=I-y,f>0)for(I+1==y&&(v+=".");f--;v+="0");return l.s<0&&b?"-"+v:v}function wn(l,f){for(var g,S,b=1,I=new x(l[0]);b<l.length;b++)S=new x(l[b]),(!S.s||(g=Y(I,S))===f||g===0&&I.s===f)&&(I=S);return I}function bi(l,f,g){for(var S=1,b=f.length;!f[--b];f.pop());for(b=f[0];b>=10;b/=10,S++);return(g=S+g*c-1)>Ie?l.c=l.e=null:g<Ue?l.c=[l.e=0]:(l.e=g,l.c=f),l}W=(function(){var l=/^(-?)0([xbo])(?=\w[\w.]*$)/i,f=/^([^.]+)\.$/,g=/^\.([^.]+)$/,S=/^-?(Infinity|NaN)$/,b=/^\s*\+(?=[\w.])|^\s+|\s+$/g;return function(I,P,y,v){var $,A=y?P:P.replace(b,"");if(S.test(A))I.s=isNaN(A)?null:A<0?-1:1;else{if(!y&&(A=A.replace(l,function(U,B,X){return $=(X=X.toLowerCase())=="x"?16:X=="b"?2:8,!v||v==$?B:U}),v&&($=v,A=A.replace(f,"$1").replace(g,"0.$1")),P!=A))return new x(A,$);if(x.DEBUG)throw Error(s+"Not a"+(v?" base "+v:"")+" number: "+P);I.s=null}I.c=I.e=null}})();function $e(l,f,g,S){var b,I,P,y,v,$,A,U=l.c,B=u;if(U){e:{for(b=1,y=U[0];y>=10;y/=10,b++);if(I=f-b,I<0)I+=c,P=f,v=U[$=0],A=a(v/B[b-P-1]%10);else if($=o((I+1)/c),$>=U.length)if(S){for(;U.length<=$;U.push(0));v=A=0,b=1,I%=c,P=I-c+1}else break e;else{for(v=y=U[$],b=1;y>=10;y/=10,b++);I%=c,P=I-c+b,A=P<0?0:a(v/B[b-P-1]%10)}if(S=S||f<0||U[$+1]!=null||(P<0?v:v%B[b-P-1]),S=g<4?(A||S)&&(g==0||g==(l.s<0?3:2)):A>5||A==5&&(g==4||S||g==6&&(I>0?P>0?v/B[b-P]:0:U[$-1])%10&1||g==(l.s<0?8:7)),f<1||!U[0])return U.length=0,S?(f-=l.e+1,U[0]=B[(c-f%c)%c],l.e=-f||0):U[0]=l.e=0,l;if(I==0?(U.length=$,y=1,$--):(U.length=$+1,y=B[c-I],U[$]=P>0?a(v/B[b-P]%B[P])*y:0),S)for(;;)if($==0){for(I=1,P=U[0];P>=10;P/=10,I++);for(P=U[0]+=y,y=1;P>=10;P/=10,y++);I!=y&&(l.e++,U[0]==d&&(U[0]=1));break}else{if(U[$]+=y,U[$]!=d)break;U[$--]=0,y=1}for(I=U.length;U[--I]===0;U.pop());}l.e>Ie?l.c=l.e=null:l.e<Ue&&(l.c=[l.e=0])}return l}function _e(l){var f,g=l.e;return g===null?l.toString():(f=K(l.c),f=g<=ce||g>=de?Z(f,g):se(f,g,"0"),l.s<0?"-"+f:f)}return R.absoluteValue=R.abs=function(){var l=new x(this);return l.s<0&&(l.s=1),l},R.comparedTo=function(l,f){return Y(this,new x(l,f))},R.decimalPlaces=R.dp=function(l,f){var g,S,b,I=this;if(l!=null)return L(l,0,j),f==null?f=ne:L(f,0,8),$e(new x(I),l+I.e+1,f);if(!(g=I.c))return null;if(S=((b=g.length-1)-T(this.e/c))*c,b=g[b])for(;b%10==0;b/=10,S--);return S<0&&(S=0),S},R.dividedBy=R.div=function(l,f){return N(this,new x(l,f),z,ne)},R.dividedToIntegerBy=R.idiv=function(l,f){return N(this,new x(l,f),0,1)},R.exponentiatedBy=R.pow=function(l,f){var g,S,b,I,P,y,v,$,A,U=this;if(l=new x(l),l.c&&!l.isInteger())throw Error(s+"Exponent not an integer: "+_e(l));if(f!=null&&(f=new x(f)),y=l.e>14,!U.c||!U.c[0]||U.c[0]==1&&!U.e&&U.c.length==1||!l.c||!l.c[0])return A=new x(Math.pow(+_e(U),y?l.s*(2-H(l)):+_e(l))),f?A.mod(f):A;if(v=l.s<0,f){if(f.c?!f.c[0]:!f.s)return new x(NaN);S=!v&&U.isInteger()&&f.isInteger(),S&&(U=U.mod(f))}else{if(l.e>9&&(U.e>0||U.e<-1||(U.e==0?U.c[0]>1||y&&U.c[1]>=24e7:U.c[0]<8e13||y&&U.c[0]<=9999975e7)))return I=U.s<0&&H(l)?-0:0,U.e>-1&&(I=1/I),new x(v?1/I:I);Xe&&(I=o(Xe/c+2))}for(y?(g=new x(.5),v&&(l.s=1),$=H(l)):(b=Math.abs(+_e(l)),$=b%2),A=new x(J);;){if($){if(A=A.times(U),!A.c)break;I?A.c.length>I&&(A.c.length=I):S&&(A=A.mod(f))}if(b){if(b=a(b/2),b===0)break;$=b%2}else if(l=l.times(g),$e(l,l.e+1,1),l.e>14)$=H(l);else{if(b=+_e(l),b===0)break;$=b%2}U=U.times(U),I?U.c&&U.c.length>I&&(U.c.length=I):S&&(U=U.mod(f))}return S?A:(v&&(A=J.div(A)),f?A.mod(f):I?$e(A,Xe,ne,P):A)},R.integerValue=function(l){var f=new x(this);return l==null?l=ne:L(l,0,8),$e(f,f.e+1,l)},R.isEqualTo=R.eq=function(l,f){return Y(this,new x(l,f))===0},R.isFinite=function(){return!!this.c},R.isGreaterThan=R.gt=function(l,f){return Y(this,new x(l,f))>0},R.isGreaterThanOrEqualTo=R.gte=function(l,f){return(f=Y(this,new x(l,f)))===1||f===0},R.isInteger=function(){return!!this.c&&T(this.e/c)>this.c.length-2},R.isLessThan=R.lt=function(l,f){return Y(this,new x(l,f))<0},R.isLessThanOrEqualTo=R.lte=function(l,f){return(f=Y(this,new x(l,f)))===-1||f===0},R.isNaN=function(){return!this.s},R.isNegative=function(){return this.s<0},R.isPositive=function(){return this.s>0},R.isZero=function(){return!!this.c&&this.c[0]==0},R.minus=function(l,f){var g,S,b,I,P=this,y=P.s;if(l=new x(l,f),f=l.s,!y||!f)return new x(NaN);if(y!=f)return l.s=-f,P.plus(l);var v=P.e/c,$=l.e/c,A=P.c,U=l.c;if(!v||!$){if(!A||!U)return A?(l.s=-f,l):new x(U?P:NaN);if(!A[0]||!U[0])return U[0]?(l.s=-f,l):new x(A[0]?P:ne==3?-0:0)}if(v=T(v),$=T($),A=A.slice(),y=v-$){for((I=y<0)?(y=-y,b=A):($=v,b=U),b.reverse(),f=y;f--;b.push(0));b.reverse()}else for(S=(I=(y=A.length)<(f=U.length))?y:f,y=f=0;f<S;f++)if(A[f]!=U[f]){I=A[f]<U[f];break}if(I&&(b=A,A=U,U=b,l.s=-l.s),f=(S=U.length)-(g=A.length),f>0)for(;f--;A[g++]=0);for(f=d-1;S>y;){if(A[--S]<U[S]){for(g=S;g&&!A[--g];A[g]=f);--A[g],A[S]+=d}A[S]-=U[S]}for(;A[0]==0;A.splice(0,1),--$);return A[0]?bi(l,A,$):(l.s=ne==3?-1:1,l.c=[l.e=0],l)},R.modulo=R.mod=function(l,f){var g,S,b=this;return l=new x(l,f),!b.c||!l.s||l.c&&!l.c[0]?new x(NaN):!l.c||b.c&&!b.c[0]?new x(b):(ht==9?(S=l.s,l.s=1,g=N(b,l,0,3),l.s=S,g.s*=S):g=N(b,l,0,ht),l=b.minus(g.times(l)),!l.c[0]&&ht==1&&(l.s=b.s),l)},R.multipliedBy=R.times=function(l,f){var g,S,b,I,P,y,v,$,A,U,B,X,oe,le,he,te=this,re=te.c,me=(l=new x(l,f)).c;if(!re||!me||!re[0]||!me[0])return!te.s||!l.s||re&&!re[0]&&!me||me&&!me[0]&&!re?l.c=l.e=l.s=null:(l.s*=te.s,!re||!me?l.c=l.e=null:(l.c=[0],l.e=0)),l;for(S=T(te.e/c)+T(l.e/c),l.s*=te.s,v=re.length,U=me.length,v<U&&(oe=re,re=me,me=oe,b=v,v=U,U=b),b=v+U,oe=[];b--;oe.push(0));for(le=d,he=m,b=U;--b>=0;){for(g=0,B=me[b]%he,X=me[b]/he|0,P=v,I=b+P;I>b;)$=re[--P]%he,A=re[P]/he|0,y=X*$+A*B,$=B*$+y%he*he+oe[I]+g,g=($/le|0)+(y/he|0)+X*A,oe[I--]=$%le;oe[I]=g}return g?++S:oe.splice(0,1),bi(l,oe,S)},R.negated=function(){var l=new x(this);return l.s=-l.s||null,l},R.plus=function(l,f){var g,S=this,b=S.s;if(l=new x(l,f),f=l.s,!b||!f)return new x(NaN);if(b!=f)return l.s=-f,S.minus(l);var I=S.e/c,P=l.e/c,y=S.c,v=l.c;if(!I||!P){if(!y||!v)return new x(b/0);if(!y[0]||!v[0])return v[0]?l:new x(y[0]?S:b*0)}if(I=T(I),P=T(P),y=y.slice(),b=I-P){for(b>0?(P=I,g=v):(b=-b,g=y),g.reverse();b--;g.push(0));g.reverse()}for(b=y.length,f=v.length,b-f<0&&(g=v,v=y,y=g,f=b),b=0;f;)b=(y[--f]=y[f]+v[f]+b)/d|0,y[f]=d===y[f]?0:y[f]%d;return b&&(y=[b].concat(y),++P),bi(l,y,P)},R.precision=R.sd=function(l,f){var g,S,b,I=this;if(l!=null&&l!==!!l)return L(l,1,j),f==null?f=ne:L(f,0,8),$e(new x(I),l,f);if(!(g=I.c))return null;if(b=g.length-1,S=b*c+1,b=g[b]){for(;b%10==0;b/=10,S--);for(b=g[0];b>=10;b/=10,S++);}return l&&I.e+1>S&&(S=I.e+1),S},R.shiftedBy=function(l){return L(l,-p,p),this.times("1e"+l)},R.squareRoot=R.sqrt=function(){var l,f,g,S,b,I=this,P=I.c,y=I.s,v=I.e,$=z+4,A=new x("0.5");if(y!==1||!P||!P[0])return new x(!y||y<0&&(!P||P[0])?NaN:P?I:1/0);if(y=Math.sqrt(+_e(I)),y==0||y==1/0?(f=K(P),(f.length+v)%2==0&&(f+="0"),y=Math.sqrt(+f),v=T((v+1)/2)-(v<0||v%2),y==1/0?f="5e"+v:(f=y.toExponential(),f=f.slice(0,f.indexOf("e")+1)+v),g=new x(f)):g=new x(y+""),g.c[0]){for(v=g.e,y=v+$,y<3&&(y=0);;)if(b=g,g=A.times(b.plus(N(I,b,$,1))),K(b.c).slice(0,y)===(f=K(g.c)).slice(0,y))if(g.e<v&&--y,f=f.slice(y-3,y+1),f=="9999"||!S&&f=="4999"){if(!S&&($e(b,b.e+z+2,0),b.times(b).eq(I))){g=b;break}$+=4,y+=4,S=1}else{(!+f||!+f.slice(1)&&f.charAt(0)=="5")&&($e(g,g.e+z+2,1),l=!g.times(g).eq(I));break}}return $e(g,g.e+z+1,ne,l)},R.toExponential=function(l,f){return l!=null&&(L(l,0,j),l++),mi(this,l,f,1)},R.toFixed=function(l,f){return l!=null&&(L(l,0,j),l=l+this.e+1),mi(this,l,f)},R.toFormat=function(l,f,g){var S,b=this;if(g==null)l!=null&&f&&typeof f=="object"?(g=f,f=null):l&&typeof l=="object"?(g=l,l=f=null):g=gi;else if(typeof g!="object")throw Error(s+"Argument not an object: "+g);if(S=b.toFixed(l,f),b.c){var I,P=S.split("."),y=+g.groupSize,v=+g.secondaryGroupSize,$=g.groupSeparator||"",A=P[0],U=P[1],B=b.s<0,X=B?A.slice(1):A,oe=X.length;if(v&&(I=y,y=v,v=I,oe-=I),y>0&&oe>0){for(I=oe%y||y,A=X.substr(0,I);I<oe;I+=y)A+=$+X.substr(I,y);v>0&&(A+=$+X.slice(I)),B&&(A="-"+A)}S=U?A+(g.decimalSeparator||"")+((v=+g.fractionGroupSize)?U.replace(new RegExp("\\d{"+v+"}\\B","g"),"$&"+(g.fractionGroupSeparator||"")):U):A}return(g.prefix||"")+S+(g.suffix||"")},R.toFraction=function(l){var f,g,S,b,I,P,y,v,$,A,U,B,X=this,oe=X.c;if(l!=null&&(y=new x(l),!y.isInteger()&&(y.c||y.s!==1)||y.lt(J)))throw Error(s+"Argument "+(y.isInteger()?"out of range: ":"not an integer: ")+_e(y));if(!oe)return new x(X);for(f=new x(J),$=g=new x(J),S=v=new x(J),B=K(oe),I=f.e=B.length-X.e-1,f.c[0]=u[(P=I%c)<0?c+P:P],l=!l||y.comparedTo(f)>0?I>0?f:$:y,P=Ie,Ie=1/0,y=new x(B),v.c[0]=0;A=N(y,f,0,1),b=g.plus(A.times(S)),b.comparedTo(l)!=1;)g=S,S=b,$=v.plus(A.times(b=$)),v=b,f=y.minus(A.times(b=f)),y=b;return b=N(l.minus(g),S,0,1),v=v.plus(b.times($)),g=g.plus(b.times(S)),v.s=$.s=X.s,I=I*2,U=N($,S,I,ne).minus(X).abs().comparedTo(N(v,g,I,ne).minus(X).abs())<1?[$,S]:[v,g],Ie=P,U},R.toNumber=function(){return+_e(this)},R.toPrecision=function(l,f){return l!=null&&L(l,1,j),mi(this,l,f,2)},R.toString=function(l){var f,g=this,S=g.s,b=g.e;return b===null?S?(f="Infinity",S<0&&(f="-"+f)):f="NaN":(l==null?f=b<=ce||b>=de?Z(K(g.c),b):se(K(g.c),b,"0"):l===10&&yi?(g=$e(new x(g),z+b+1,ne),f=se(K(g.c),g.e,"0")):(L(l,2,Qe.length,"Base"),f=ie(se(K(g.c),b,"0"),10,l,S,!0)),S<0&&g.c[0]&&(f="-"+f)),f},R.valueOf=R.toJSON=function(){return _e(this)},R._isBigNumber=!0,D!=null&&x.set(D),x}function T(D){var N=D|0;return D>0||D===N?N:N-1}function K(D){for(var N,ie,W=1,R=D.length,J=D[0]+"";W<R;){for(N=D[W++]+"",ie=c-N.length;ie--;N="0"+N);J+=N}for(R=J.length;J.charCodeAt(--R)===48;);return J.slice(0,R+1||1)}function Y(D,N){var ie,W,R=D.c,J=N.c,z=D.s,ne=N.s,ce=D.e,de=N.e;if(!z||!ne)return null;if(ie=R&&!R[0],W=J&&!J[0],ie||W)return ie?W?0:-ne:z;if(z!=ne)return z;if(ie=z<0,W=ce==de,!R||!J)return W?0:!R^ie?1:-1;if(!W)return ce>de^ie?1:-1;for(ne=(ce=R.length)<(de=J.length)?ce:de,z=0;z<ne;z++)if(R[z]!=J[z])return R[z]>J[z]^ie?1:-1;return ce==de?0:ce>de^ie?1:-1}function L(D,N,ie,W){if(D<N||D>ie||D!==a(D))throw Error(s+(W||"Argument")+(typeof D=="number"?D<N||D>ie?" out of range: ":" not an integer: ":" not a primitive number: ")+String(D))}function H(D){var N=D.c.length-1;return T(D.e/c)==N&&D.c[N]%2!=0}function Z(D,N){return(D.length>1?D.charAt(0)+"."+D.slice(1):D)+(N<0?"e":"e+")+N}function se(D,N,ie){var W,R;if(N<0){for(R=ie+".";++N;R+=ie);D=R+D}else if(W=D.length,++N>W){for(R=ie,N-=W;--N;R+=ie);D+=R}else N<W&&(D=D.slice(0,N)+"."+D.slice(N));return D}i=q(),i.default=i.BigNumber=i,n.exports?n.exports=i:(e||(e=typeof self<"u"&&self?self:window),e.BigNumber=i)})(Kn)})(vt)),vt.exports}var Bi;function Yn(){return Bi||(Bi=1,(function(n){var e=Di(),i=n.exports;(function(){var t=/[\\\"\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,o,a,s={"\b":"\\b"," ":"\\t","\n":"\\n","\f":"\\f","\r":"\\r",'"':'\\"',"\\":"\\\\"},r;function d(p){return t.lastIndex=0,t.test(p)?'"'+p.replace(t,function(u){var m=s[u];return typeof m=="string"?m:"\\u"+("0000"+u.charCodeAt(0).toString(16)).slice(-4)})+'"':'"'+p+'"'}function c(p,u){var m,j,q,T,K=o,Y,L=u[p],H=L!=null&&(L instanceof e||e.isBigNumber(L));switch(L&&typeof L=="object"&&typeof L.toJSON=="function"&&(L=L.toJSON(p)),typeof r=="function"&&(L=r.call(u,p,L)),typeof L){case"string":return H?L:d(L);case"number":return isFinite(L)?String(L):"null";case"boolean":case"null":case"bigint":return String(L);case"object":if(!L)return"null";if(o+=a,Y=[],Object.prototype.toString.apply(L)==="[object Array]"){for(T=L.length,m=0;m<T;m+=1)Y[m]=c(m,L)||"null";return q=Y.length===0?"[]":o?`[
|
|
4
4
|
`+o+Y.join(`,
|
|
5
5
|
`+o)+`
|
|
6
6
|
`+K+"]":"["+Y.join(",")+"]",o=K,q}if(r&&typeof r=="object")for(T=r.length,m=0;m<T;m+=1)typeof r[m]=="string"&&(j=r[m],q=c(j,L),q&&Y.push(d(j)+(o?": ":":")+q));else Object.keys(L).forEach(function(Z){var se=c(Z,L);se&&Y.push(d(Z)+(o?": ":":")+se)});return q=Y.length===0?"{}":o?`{
|
|
7
7
|
`+o+Y.join(`,
|
|
8
8
|
`+o)+`
|
|
9
|
-
`+K+"}":"{"+Y.join(",")+"}",o=K,q}}typeof i.stringify!="function"&&(i.stringify=function(p,u,m){var j;if(o="",a="",typeof m=="number")for(j=0;j<m;j+=1)a+=" ";else typeof m=="string"&&(a=m);if(r=u,u&&typeof u!="function"&&(typeof u!="object"||typeof u.length!="number"))throw new Error("JSON.stringify");return c("",{"":p})})})()})(
|
|
10
|
-
`,r:"\r",t:" "},c,p=function(H){throw{name:"SyntaxError",message:H,at:s,text:c}},u=function(H){return H&&H!==r&&p("Expected '"+H+"' instead of '"+r+"'"),r=c.charAt(s),s+=1,r},m=function(){var H,Z="";for(r==="-"&&(Z="-",u("-"));r>="0"&&r<="9";)Z+=r,u();if(r===".")for(Z+=".";u()&&r>="0"&&r<="9";)Z+=r;if(r==="e"||r==="E")for(Z+=r,u(),(r==="-"||r==="+")&&(Z+=r,u());r>="0"&&r<="9";)Z+=r,u();if(H=+Z,!isFinite(H))p("Bad number");else return n==null&&(n=Di()),Z.length>15?a.storeAsString?Z:a.useNativeBigInt?BigInt(Z):new n(Z):a.alwaysParseAsBig?a.useNativeBigInt?BigInt(H):new n(H):H},j=function(){var H,Z,se="",D;if(r==='"')for(var N=s;u();){if(r==='"')return s-1>N&&(se+=c.substring(N,s-1)),u(),se;if(r==="\\"){if(s-1>N&&(se+=c.substring(N,s-1)),u(),r==="u"){for(D=0,Z=0;Z<4&&(H=parseInt(u(),16),!!isFinite(H));Z+=1)D=D*16+H;se+=String.fromCharCode(D)}else if(typeof d[r]=="string")se+=d[r];else break;N=s}}p("Bad string")},q=function(){for(;r&&r<=" ";)u()},T=function(){switch(r){case"t":return u("t"),u("r"),u("u"),u("e"),!0;case"f":return u("f"),u("a"),u("l"),u("s"),u("e"),!1;case"n":return u("n"),u("u"),u("l"),u("l"),null}p("Unexpected '"+r+"'")},K,Y=function(){var H=[];if(r==="["){if(u("["),q(),r==="]")return u("]"),H;for(;r;){if(H.push(K()),q(),r==="]")return u("]"),H;u(","),q()}}p("Bad array")},L=function(){var H,Z=Object.create(null);if(r==="{"){if(u("{"),q(),r==="}")return u("}"),Z;for(;r;){if(H=j(),q(),u(":"),a.strict===!0&&Object.hasOwnProperty.call(Z,H)&&p('Duplicate key "'+H+'"'),e.test(H)===!0?a.protoAction==="error"?p("Object contains forbidden prototype property"):a.protoAction==="ignore"?K():Z[H]=K():i.test(H)===!0?a.constructorAction==="error"?p("Object contains forbidden constructor property"):a.constructorAction==="ignore"?K():Z[H]=K():Z[H]=K(),q(),r==="}")return u("}"),Z;u(","),q()}}p("Bad object")};return K=function(){switch(q(),r){case"{":return L();case"[":return Y();case'"':return j();case"-":return m();default:return r>="0"&&r<="9"?m():T()}},function(H,Z){var se;return c=H+"",s=0,r=" ",se=K(),q(),r&&p("Syntax error"),typeof Z=="function"?(function D(N,ie){var V,E=N[ie];return E&&typeof E=="object"&&Object.keys(E).forEach(function(J){V=D(E,J),V!==void 0?E[J]=V:delete E[J]}),Z.call(N,ie,E)})({"":se},""):se}};return Bt=t,Bt}var Vi;function Zn(){if(Vi)return lt.exports;Vi=1;var n=Yn().stringify,e=Jn();return lt.exports=function(i){return{parse:e(i),stringify:n}},lt.exports.parse=e(),lt.exports.stringify=n,lt.exports}var Qn=Zn();const Xt=Gn(Qn);function be(n,e,i,t){function o(a){return a instanceof i?a:new i(function(s){s(a)})}return new(i||(i=Promise))(function(a,s){function r(p){try{c(t.next(p))}catch(u){s(u)}}function d(p){try{c(t.throw(p))}catch(u){s(u)}}function c(p){p.done?a(p.value):o(p.value).then(r,d)}c((t=t.apply(n,e||[])).next())})}function Tn(n,e,i,t){if(typeof e=="function"?n!==e||!t:!e.has(n))throw new TypeError("Cannot read private member from an object whose class did not declare it");return i==="m"?t:i==="a"?t.call(n):t?t.value:e.get(n)}typeof SuppressedError=="function"&&SuppressedError;var vt,Wi;class He{static custom(e){return e}static unique(e=7){const i=Tn(vt,vt,"m",Wi).call(vt);let t="";for(let o=0;o<e;o++){const a=Math.floor(Math.random()*16).toString(16);t+=a}return i+t}}vt=He,Wi=function(){const e=new Date,i=Math.floor(e.getTime()/1e3),t=e.getMilliseconds();return i.toString(16)+t.toString(16).padStart(5,"0")};const At=Xt({useNativeBigInt:!0});class C{constructor(e,i,t){this.method=e,this.attribute=i,t!==void 0&&(Array.isArray(t)?this.values=t:this.values=[t])}toString(){return At.stringify({method:this.method,attribute:this.attribute,values:this.values})}}C.equal=(n,e)=>new C("equal",n,e).toString(),C.notEqual=(n,e)=>new C("notEqual",n,e).toString(),C.regex=(n,e)=>new C("regex",n,e).toString(),C.lessThan=(n,e)=>new C("lessThan",n,e).toString(),C.lessThanEqual=(n,e)=>new C("lessThanEqual",n,e).toString(),C.greaterThan=(n,e)=>new C("greaterThan",n,e).toString(),C.greaterThanEqual=(n,e)=>new C("greaterThanEqual",n,e).toString(),C.isNull=n=>new C("isNull",n).toString(),C.isNotNull=n=>new C("isNotNull",n).toString(),C.exists=n=>new C("exists",void 0,n).toString(),C.notExists=n=>new C("notExists",void 0,n).toString(),C.between=(n,e,i)=>new C("between",n,[e,i]).toString(),C.startsWith=(n,e)=>new C("startsWith",n,e).toString(),C.endsWith=(n,e)=>new C("endsWith",n,e).toString(),C.select=n=>new C("select",void 0,n).toString(),C.search=(n,e)=>new C("search",n,e).toString(),C.orderDesc=n=>new C("orderDesc",n).toString(),C.orderAsc=n=>new C("orderAsc",n).toString(),C.orderRandom=()=>new C("orderRandom").toString(),C.cursorAfter=n=>new C("cursorAfter",void 0,n).toString(),C.cursorBefore=n=>new C("cursorBefore",void 0,n).toString(),C.limit=n=>new C("limit",void 0,n).toString(),C.offset=n=>new C("offset",void 0,n).toString(),C.contains=(n,e)=>new C("contains",n,e).toString(),C.containsAny=(n,e)=>new C("containsAny",n,e).toString(),C.containsAll=(n,e)=>new C("containsAll",n,e).toString(),C.notContains=(n,e)=>new C("notContains",n,e).toString(),C.notSearch=(n,e)=>new C("notSearch",n,e).toString(),C.notBetween=(n,e,i)=>new C("notBetween",n,[e,i]).toString(),C.notStartsWith=(n,e)=>new C("notStartsWith",n,e).toString(),C.notEndsWith=(n,e)=>new C("notEndsWith",n,e).toString(),C.createdBefore=n=>C.lessThan("$createdAt",n),C.createdAfter=n=>C.greaterThan("$createdAt",n),C.createdBetween=(n,e)=>C.between("$createdAt",n,e),C.updatedBefore=n=>C.lessThan("$updatedAt",n),C.updatedAfter=n=>C.greaterThan("$updatedAt",n),C.updatedBetween=(n,e)=>C.between("$updatedAt",n,e),C.or=n=>new C("or",void 0,n.map(e=>At.parse(e))).toString(),C.and=n=>new C("and",void 0,n.map(e=>At.parse(e))).toString(),C.elemMatch=(n,e)=>new C("elemMatch",n,e.map(i=>At.parse(i))).toString(),C.distanceEqual=(n,e,i,t=!0)=>new C("distanceEqual",n,[[e,i,t]]).toString(),C.distanceNotEqual=(n,e,i,t=!0)=>new C("distanceNotEqual",n,[[e,i,t]]).toString(),C.distanceGreaterThan=(n,e,i,t=!0)=>new C("distanceGreaterThan",n,[[e,i,t]]).toString(),C.distanceLessThan=(n,e,i,t=!0)=>new C("distanceLessThan",n,[[e,i,t]]).toString(),C.vectorDot=(n,e)=>new C("vectorDot",n,[e]).toString(),C.vectorCosine=(n,e)=>new C("vectorCosine",n,[e]).toString(),C.vectorEuclidean=(n,e)=>new C("vectorEuclidean",n,[e]).toString(),C.intersects=(n,e)=>new C("intersects",n,[e]).toString(),C.notIntersects=(n,e)=>new C("notIntersects",n,[e]).toString(),C.crosses=(n,e)=>new C("crosses",n,[e]).toString(),C.notCrosses=(n,e)=>new C("notCrosses",n,[e]).toString(),C.overlaps=(n,e)=>new C("overlaps",n,[e]).toString(),C.notOverlaps=(n,e)=>new C("notOverlaps",n,[e]).toString(),C.touches=(n,e)=>new C("touches",n,[e]).toString(),C.notTouches=(n,e)=>new C("notTouches",n,[e]).toString();const zn=Xt({storeAsString:!1}),On=Xt({useNativeBigInt:!0}),Fn=BigInt(Number.MAX_SAFE_INTEGER),eo=BigInt(Number.MIN_SAFE_INTEGER),to=BigInt("9223372036854775807"),io=BigInt("-9223372036854775808");function no(n){return n!==null&&typeof n=="object"&&n._isBigNumber===!0&&typeof n.isInteger=="function"&&typeof n.toFixed=="function"&&typeof n.toNumber=="function"}function oo(n,e){if(no(e)){if(e.isInteger()){const i=e.toFixed(),t=BigInt(i);return t>=eo&&t<=Fn?Number(i):t>=io&&t<=to?t:e.toNumber()}return e.toNumber()}return e}const ye={parse:n=>zn.parse(n,oo),stringify:On.stringify};class h extends Error{constructor(e,i=0,t="",o=""){super(e),this.name="AppwriteException",this.message=e,this.code=i,this.type=t,this.response=o}}class Ae{constructor(){this.config={endpoint:"https://cloud.appwrite.io/v1",endpointRealtime:"",project:"",jwt:"",bearer:"",locale:"",session:"",devkey:"",cookie:"",impersonateuserid:"",impersonateuseremail:"",impersonateuserphone:""},this.headers={"x-sdk-name":"Web","x-sdk-platform":"client","x-sdk-language":"web","x-sdk-version":"27.0.0","X-Appwrite-Response-Format":"2.0.0"},this.realtime={socket:void 0,timeout:void 0,heartbeat:void 0,url:"",channels:new Set,subscriptions:new Map,pendingSubscribes:new Map,reconnect:!0,reconnectAttempts:0,lastMessage:void 0,connect:()=>{clearTimeout(this.realtime.timeout),this.realtime.timeout=window?.setTimeout(()=>{this.realtime.createSocket()},50)},getTimeout:()=>{switch(!0){case this.realtime.reconnectAttempts<5:return 1e3;case this.realtime.reconnectAttempts<15:return 5e3;case this.realtime.reconnectAttempts<100:return 1e4;default:return 6e4}},createHeartbeat:()=>{this.realtime.heartbeat&&clearTimeout(this.realtime.heartbeat),this.realtime.heartbeat=window?.setInterval(()=>{var e;(e=this.realtime.socket)===null||e===void 0||e.send(ye.stringify({type:"ping"}))},2e4)},createSocket:()=>{var e,i,t,o,a;if(this.realtime.subscriptions.size<1){this.realtime.reconnect=!1,(e=this.realtime.socket)===null||e===void 0||e.close();return}let r="project="+encodeURIComponent((i=this.config.project)!==null&&i!==void 0?i:"");this.config.jwt&&(r+="&jwt="+encodeURIComponent(this.config.jwt));const d=this.config.endpointRealtime+"/realtime?"+r;d!==this.realtime.url||!this.realtime.socket||((t=this.realtime.socket)===null||t===void 0?void 0:t.readyState)>WebSocket.OPEN?(this.realtime.socket&&((o=this.realtime.socket)===null||o===void 0?void 0:o.readyState)<WebSocket.CLOSING&&(this.realtime.reconnect=!1,this.realtime.socket.close()),this.realtime.url=d,this.realtime.socket=new WebSocket(d),this.realtime.socket.addEventListener("message",this.realtime.onMessage),this.realtime.socket.addEventListener("open",c=>{this.realtime.reconnectAttempts=0,this.realtime.createHeartbeat()}),this.realtime.socket.addEventListener("close",c=>{var p,u,m;if(!this.realtime.reconnect||((u=(p=this.realtime)===null||p===void 0?void 0:p.lastMessage)===null||u===void 0?void 0:u.type)==="error"&&((m=this.realtime)===null||m===void 0?void 0:m.lastMessage.data).code===1008){this.realtime.reconnect=!0;return}const j=this.realtime.getTimeout();console.error(`Realtime got disconnected. Reconnect will be attempted in ${j/1e3} seconds.`,c.reason),setTimeout(()=>{this.realtime.reconnectAttempts++,this.realtime.createSocket()},j)})):((a=this.realtime.socket)===null||a===void 0?void 0:a.readyState)===WebSocket.OPEN&&this.realtime.sendPendingSubscribes()},sendPendingSubscribes:()=>{if(!this.realtime.socket||this.realtime.socket.readyState!==WebSocket.OPEN||this.realtime.pendingSubscribes.size<1)return;const e=Array.from(this.realtime.pendingSubscribes.values());this.realtime.pendingSubscribes.clear(),this.realtime.socket.send(ye.stringify({type:"subscribe",data:e}))},onMessage:e=>{var i,t;try{const o=ye.parse(e.data);switch(this.realtime.lastMessage=o,o.type){case"connected":{const a=o.data;let s=this.config.session;if(!s){const r=ye.parse((i=window.localStorage.getItem("cookieFallback"))!==null&&i!==void 0?i:"{}");s=r?.[`a_session_${this.config.project}`]}s&&!a?.user&&((t=this.realtime.socket)===null||t===void 0||t.send(ye.stringify({type:"authentication",data:{session:s}}))),this.realtime.subscriptions.forEach((r,d)=>{var c;this.realtime.pendingSubscribes.set(d,{subscriptionId:d,channels:r.channels,queries:(c=r.queries)!==null&&c!==void 0?c:[]})}),this.realtime.sendPendingSubscribes();break}case"response":break;case"event":{const a=o.data;if(!a?.channels)break;const s=a.subscriptions;if(s&&s.length>0)for(const r of s){const d=this.realtime.subscriptions.get(r);d&&setTimeout(()=>d.callback(a))}else{if(!a.channels.some(d=>this.realtime.channels.has(d)))break;this.realtime.subscriptions.forEach(d=>{a.channels.some(c=>d.channels.includes(c))&&setTimeout(()=>d.callback(a))})}break}case"pong":break;case"error":throw o.data;default:break}}catch(o){console.error(o)}}}}getHeaders(){return Object.assign({},this.headers)}setEndpoint(e){if(!e||typeof e!="string")throw new h("Endpoint must be a valid string");if(!e.startsWith("http://")&&!e.startsWith("https://"))throw new h("Invalid endpoint URL: "+e);return this.config.endpoint=e,this.config.endpointRealtime=e.replace("https://","wss://").replace("http://","ws://"),this}setEndpointRealtime(e){if(!e||typeof e!="string")throw new h("Endpoint must be a valid string");if(!e.startsWith("ws://")&&!e.startsWith("wss://"))throw new h("Invalid realtime endpoint URL: "+e);return this.config.endpointRealtime=e,this}setProject(e){return this.config.project=e,this}setJWT(e){return this.headers["X-Appwrite-JWT"]=e,this.config.jwt=e,this}setBearer(e){return this.headers.Authorization=`Bearer ${e}`,this.config.bearer=e,this}setLocale(e){return this.headers["X-Appwrite-Locale"]=e,this.config.locale=e,this}setSession(e){return this.headers["X-Appwrite-Session"]=e,this.config.session=e,this}setDevKey(e){return this.headers["X-Appwrite-Dev-Key"]=e,this.config.devkey=e,this}setCookie(e){return this.headers.Cookie=e,this.config.cookie=e,this}setImpersonateUserId(e){return this.headers["X-Appwrite-Impersonate-User-Id"]=e,this.config.impersonateuserid=e,this}setImpersonateUserEmail(e){return this.headers["X-Appwrite-Impersonate-User-Email"]=e,this.config.impersonateuseremail=e,this}setImpersonateUserPhone(e){return this.headers["X-Appwrite-Impersonate-User-Phone"]=e,this.config.impersonateuserphone=e,this}subscribe(e,i,t=[]){const a=(Array.isArray(e)?e:[e]).map(c=>typeof c=="string"?c:c&&typeof c.toString=="function"?c.toString():String(c));a.forEach(c=>this.realtime.channels.add(c));const s=(t??[]).map(c=>typeof c=="string"?c:c.toString());let r="";const d=this.realtime.subscriptions.size+1;for(let c=0;c<d;c++){const p=He.unique();if(!this.realtime.subscriptions.has(p)){r=p;break}}if(r==="")throw new h("Failed to generate unique subscription id");return this.realtime.subscriptions.set(r,{channels:a,queries:s,callback:i}),this.realtime.pendingSubscribes.set(r,{subscriptionId:r,channels:a,queries:s}),this.realtime.connect(),()=>{this.realtime.subscriptions.delete(r),this.realtime.pendingSubscribes.delete(r);const c=new Set;this.realtime.subscriptions.forEach(p=>{p.channels.forEach(u=>c.add(u))}),this.realtime.channels.forEach(p=>{c.has(p)||this.realtime.channels.delete(p)}),this.realtime.connect()}}prepareRequest(e,i,t={},o={}){if(e=e.toUpperCase(),t=Object.assign({},this.headers,t),typeof window<"u"&&window.localStorage){const s=window.localStorage.getItem("cookieFallback");s&&(t["X-Fallback-Cookies"]=s)}const a={method:e,headers:t};if(t["X-Appwrite-Dev-Key"]===void 0&&(a.credentials="include"),e==="GET")for(const[s,r]of Object.entries(Ae.flatten(o)))i.searchParams.append(s,r);else switch(t["content-type"]){case"application/json":a.body=ye.stringify(o);break;case"multipart/form-data":{const s=new FormData;for(const[r,d]of Object.entries(o))if(d instanceof File)s.append(r,d,d.name);else if(Array.isArray(d))for(const c of d)s.append(`${r}[]`,c);else s.append(r,d);a.body=s,delete t["content-type"];break}}return{uri:i.toString(),options:a}}chunkedUpload(e,i){return be(this,arguments,void 0,function*(t,o,a={},s={},r){var d;const[c,p]=(d=Object.entries(s).find(([J,z])=>z instanceof File))!==null&&d!==void 0?d:[];if(!p||!c)throw new Error("File not found in payload");if(p.size<=Ae.CHUNK_SIZE)return yield this.call(t,o,a,s);const u=Math.ceil(p.size/Ae.CHUNK_SIZE),m=Math.min(Ae.CHUNK_SIZE,p.size),j=Object.assign(Object.assign({},a),{"content-range":`bytes 0-${m-1}/${p.size}`}),q=p.slice(0,m),T=Object.assign({},s);T[c]=new File([q],p.name);const K=yield this.call(t,o,j,T),Y=K?.$id;if(r&&typeof r=="function"&&r({$id:Y,progress:Math.round(m/p.size*100),sizeUploaded:m,chunksTotal:u,chunksUploaded:1}),u===1)return K;const L=[];for(let J=1;J<u;J++){const z=J*Ae.CHUNK_SIZE,ne=Math.min(z+Ae.CHUNK_SIZE,p.size);L.push({start:z,end:ne})}const H=8;let Z=1,se=m,D=K,N=null,ie=!1;const V=J=>{var z;const ne=J?.chunksUploaded,ce=(z=J?.chunksTotal)!==null&&z!==void 0?z:u;return typeof ne=="number"&&typeof ce=="number"&&ne>=ce},E=J=>be(this,void 0,void 0,function*(){const z=Object.assign({},a);Y&&(z["x-appwrite-id"]=Y),z["content-range"]=`bytes ${J.start}-${J.end-1}/${p.size}`;const ne=p.slice(J.start,J.end),ce=Object.assign({},s);ce[c]=new File([ne],p.name);const de=yield this.call(t,o,z,ce);return ie||(Z++,se+=J.end-J.start,D=de,V(de)&&(N=de),r&&typeof r=="function"&&r({$id:Y,progress:Math.round(se/p.size*100),sizeUploaded:se,chunksTotal:u,chunksUploaded:Z})),de});return yield new Promise((J,z)=>{let ne=0,ce=0,de=0;const Ue=()=>{if(!ie){if(de===L.length){J();return}for(;ce<H&&ne<L.length;){const ve=L[ne++];ce++,E(ve).then(()=>{ce--,de++,Ue()}).catch(qe=>{ie=!0,z(qe)})}}};Ue()}),N??D})}ping(){return be(this,void 0,void 0,function*(){return this.call("GET",new URL(this.config.endpoint+"/ping"),{"X-Appwrite-Project":this.config.project,accept:"application/json"})})}call(e,i){return be(this,arguments,void 0,function*(t,o,a={},s={},r="json"){var d,c,p;const{uri:u,options:m}=this.prepareRequest(t,o,a,s);let j=null;const q=yield fetch(u,m);if(q.type==="opaque")throw new h(`Invalid Origin. Register your new client (${window.location.host}) as a new Web platform on your project console dashboard`,403,"forbidden","");const T=q.headers.get("x-appwrite-warning");if(T&&T.split(";").forEach(Y=>console.warn("Warning: "+Y)),!((d=q.headers.get("content-type"))===null||d===void 0)&&d.includes("application/json")?j=ye.parse(yield q.text()):r==="arrayBuffer"?j=yield q.arrayBuffer():j={message:yield q.text()},400<=q.status){let Y;throw!((c=q.headers.get("content-type"))===null||c===void 0)&&c.includes("application/json")||r==="arrayBuffer"?Y=ye.stringify(j):Y=j?.message,new h((p=j?.message)!==null&&p!==void 0?p:Y,q.status,j?.type,Y)}const K=q.headers.get("X-Fallback-Cookies");return typeof window<"u"&&window.localStorage&&K&&(window.console.warn("Appwrite is using localStorage for session management. Increase your security by adding a custom domain as your API endpoint."),window.localStorage.setItem("cookieFallback",K)),j&&typeof j=="object"&&Object.defineProperty(j,"toString",{value:()=>ye.stringify(j),writable:!0,enumerable:!1,configurable:!0}),j})}static flatten(e,i=""){let t={};for(const[o,a]of Object.entries(e)){const s=i?i+"["+o+"]":o;Array.isArray(a)?t=Object.assign(Object.assign({},t),Ae.flatten(a,s)):t[s]=a}return t}}Ae.CHUNK_SIZE=5242880;class ge{constructor(e){this.client=e}static flatten(e,i=""){let t={};for(const[o,a]of Object.entries(e)){const s=i?i+"["+o+"]":o;Array.isArray(a)?t=Object.assign(Object.assign({},t),ge.flatten(a,s)):t[s]=a}return t}}ge.CHUNK_SIZE=5242880;class Vt{constructor(e){this.client=e}get(){const e="/account",i={},t=new URL(this.client.config.endpoint+e),o={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",t,o,i)}create(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={userId:e,email:i[0],password:i[1],name:i[2]};const o=t.userId,a=t.email,s=t.password,r=t.name;if(typeof o>"u")throw new h('Missing required parameter: "userId"');if(typeof a>"u")throw new h('Missing required parameter: "email"');if(typeof s>"u")throw new h('Missing required parameter: "password"');const d="/account",c={};typeof o<"u"&&(c.userId=o),typeof a<"u"&&(c.email=a),typeof s<"u"&&(c.password=s),typeof r<"u"&&(c.name=r);const p=new URL(this.client.config.endpoint+d),u={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",p,u,c)}listConsents(e,...i){let t;typeof e>"u"&&i.length===0||e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={queries:e,total:i[0]};const o=t.queries,a=t.total,s="/account/consents",r={};typeof o<"u"&&(r.queries=o),typeof a<"u"&&(r.total=a);const d=new URL(this.client.config.endpoint+s),c={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",d,c,r)}getConsent(e){let i;e&&typeof e=="object"&&!Array.isArray(e)?i=e||{}:i={consentId:e};const t=i.consentId;if(typeof t>"u")throw new h('Missing required parameter: "consentId"');const o="/account/consents/{consentId}".replace("{consentId}",encodeURIComponent(String(t))),a={},s=new URL(this.client.config.endpoint+o),r={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",s,r,a)}deleteConsent(e){let i;e&&typeof e=="object"&&!Array.isArray(e)?i=e||{}:i={consentId:e};const t=i.consentId;if(typeof t>"u")throw new h('Missing required parameter: "consentId"');const o="/account/consents/{consentId}".replace("{consentId}",encodeURIComponent(String(t))),a={},s=new URL(this.client.config.endpoint+o),r={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("delete",s,r,a)}listConsentTokens(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={consentId:e,queries:i[0],total:i[1]};const o=t.consentId,a=t.queries,s=t.total;if(typeof o>"u")throw new h('Missing required parameter: "consentId"');const r="/account/consents/{consentId}/tokens".replace("{consentId}",encodeURIComponent(String(o))),d={};typeof a<"u"&&(d.queries=a),typeof s<"u"&&(d.total=s);const c=new URL(this.client.config.endpoint+r),p={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",c,p,d)}getConsentToken(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={consentId:e,tokenId:i[0]};const o=t.consentId,a=t.tokenId;if(typeof o>"u")throw new h('Missing required parameter: "consentId"');if(typeof a>"u")throw new h('Missing required parameter: "tokenId"');const s="/account/consents/{consentId}/tokens/{tokenId}".replace("{consentId}",encodeURIComponent(String(o))).replace("{tokenId}",encodeURIComponent(String(a))),r={},d=new URL(this.client.config.endpoint+s),c={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",d,c,r)}deleteConsentToken(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={consentId:e,tokenId:i[0]};const o=t.consentId,a=t.tokenId;if(typeof o>"u")throw new h('Missing required parameter: "consentId"');if(typeof a>"u")throw new h('Missing required parameter: "tokenId"');const s="/account/consents/{consentId}/tokens/{tokenId}".replace("{consentId}",encodeURIComponent(String(o))).replace("{tokenId}",encodeURIComponent(String(a))),r={},d=new URL(this.client.config.endpoint+s),c={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("delete",d,c,r)}updateEmail(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={email:e,password:i[0]};const o=t.email,a=t.password;if(typeof o>"u")throw new h('Missing required parameter: "email"');if(typeof a>"u")throw new h('Missing required parameter: "password"');const s="/account/email",r={};typeof o<"u"&&(r.email=o),typeof a<"u"&&(r.password=a);const d=new URL(this.client.config.endpoint+s),c={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("patch",d,c,r)}listIdentities(e,...i){let t;typeof e>"u"&&i.length===0||e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={queries:e,total:i[0]};const o=t.queries,a=t.total,s="/account/identities",r={};typeof o<"u"&&(r.queries=o),typeof a<"u"&&(r.total=a);const d=new URL(this.client.config.endpoint+s),c={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",d,c,r)}deleteIdentity(e){let i;e&&typeof e=="object"&&!Array.isArray(e)?i=e||{}:i={identityId:e};const t=i.identityId;if(typeof t>"u")throw new h('Missing required parameter: "identityId"');const o="/account/identities/{identityId}".replace("{identityId}",encodeURIComponent(String(t))),a={},s=new URL(this.client.config.endpoint+o),r={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json"};return this.client.call("delete",s,r,a)}createJWT(e){let i;typeof e>"u"||e&&typeof e=="object"&&!Array.isArray(e)?i=e||{}:i={duration:e};const t=i.duration,o="/account/jwts",a={};typeof t<"u"&&(a.duration=t);const s=new URL(this.client.config.endpoint+o),r={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",s,r,a)}listLogs(e,...i){let t;typeof e>"u"&&i.length===0||e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={queries:e,total:i[0]};const o=t.queries,a=t.total,s="/account/logs",r={};typeof o<"u"&&(r.queries=o),typeof a<"u"&&(r.total=a);const d=new URL(this.client.config.endpoint+s),c={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",d,c,r)}updateMFA(e){let i;e&&typeof e=="object"&&!Array.isArray(e)?i=e||{}:i={mfa:e};const t=i.mfa;if(typeof t>"u")throw new h('Missing required parameter: "mfa"');const o="/account/mfa",a={};typeof t<"u"&&(a.mfa=t);const s=new URL(this.client.config.endpoint+o),r={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("patch",s,r,a)}createMfaAuthenticator(e){let i;e&&typeof e=="object"&&!Array.isArray(e)&&"type"in e?i=e||{}:i={type:e};const t=i.type;if(typeof t>"u")throw new h('Missing required parameter: "type"');const o="/account/mfa/authenticators/{type}".replace("{type}",encodeURIComponent(String(t))),a={},s=new URL(this.client.config.endpoint+o),r={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",s,r,a)}createMFAAuthenticator(e){let i;e&&typeof e=="object"&&!Array.isArray(e)&&"type"in e?i=e||{}:i={type:e};const t=i.type;if(typeof t>"u")throw new h('Missing required parameter: "type"');const o="/account/mfa/authenticators/{type}".replace("{type}",encodeURIComponent(String(t))),a={},s=new URL(this.client.config.endpoint+o),r={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",s,r,a)}updateMfaAuthenticator(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)&&("type"in e||"otp"in e)?t=e||{}:t={type:e,otp:i[0]};const o=t.type,a=t.otp;if(typeof o>"u")throw new h('Missing required parameter: "type"');if(typeof a>"u")throw new h('Missing required parameter: "otp"');const s="/account/mfa/authenticators/{type}".replace("{type}",encodeURIComponent(String(o))),r={};typeof a<"u"&&(r.otp=a);const d=new URL(this.client.config.endpoint+s),c={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("put",d,c,r)}updateMFAAuthenticator(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)&&("type"in e||"otp"in e)?t=e||{}:t={type:e,otp:i[0]};const o=t.type,a=t.otp;if(typeof o>"u")throw new h('Missing required parameter: "type"');if(typeof a>"u")throw new h('Missing required parameter: "otp"');const s="/account/mfa/authenticators/{type}".replace("{type}",encodeURIComponent(String(o))),r={};typeof a<"u"&&(r.otp=a);const d=new URL(this.client.config.endpoint+s),c={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("put",d,c,r)}deleteMfaAuthenticator(e){let i;e&&typeof e=="object"&&!Array.isArray(e)&&"type"in e?i=e||{}:i={type:e};const t=i.type;if(typeof t>"u")throw new h('Missing required parameter: "type"');const o="/account/mfa/authenticators/{type}".replace("{type}",encodeURIComponent(String(t))),a={},s=new URL(this.client.config.endpoint+o),r={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json"};return this.client.call("delete",s,r,a)}deleteMFAAuthenticator(e){let i;e&&typeof e=="object"&&!Array.isArray(e)&&"type"in e?i=e||{}:i={type:e};const t=i.type;if(typeof t>"u")throw new h('Missing required parameter: "type"');const o="/account/mfa/authenticators/{type}".replace("{type}",encodeURIComponent(String(t))),a={},s=new URL(this.client.config.endpoint+o),r={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json"};return this.client.call("delete",s,r,a)}createMfaChallenge(e){let i;e&&typeof e=="object"&&!Array.isArray(e)&&"factor"in e?i=e||{}:i={factor:e};const t=i.factor;if(typeof t>"u")throw new h('Missing required parameter: "factor"');const o="/account/mfa/challenges",a={};typeof t<"u"&&(a.factor=t);const s=new URL(this.client.config.endpoint+o),r={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",s,r,a)}createMFAChallenge(e){let i;e&&typeof e=="object"&&!Array.isArray(e)&&"factor"in e?i=e||{}:i={factor:e};const t=i.factor;if(typeof t>"u")throw new h('Missing required parameter: "factor"');const o="/account/mfa/challenges",a={};typeof t<"u"&&(a.factor=t);const s=new URL(this.client.config.endpoint+o),r={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",s,r,a)}updateMfaChallenge(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={challengeId:e,otp:i[0]};const o=t.challengeId,a=t.otp;if(typeof o>"u")throw new h('Missing required parameter: "challengeId"');if(typeof a>"u")throw new h('Missing required parameter: "otp"');const s="/account/mfa/challenges",r={};typeof o<"u"&&(r.challengeId=o),typeof a<"u"&&(r.otp=a);const d=new URL(this.client.config.endpoint+s),c={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("put",d,c,r)}updateMFAChallenge(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={challengeId:e,otp:i[0]};const o=t.challengeId,a=t.otp;if(typeof o>"u")throw new h('Missing required parameter: "challengeId"');if(typeof a>"u")throw new h('Missing required parameter: "otp"');const s="/account/mfa/challenges",r={};typeof o<"u"&&(r.challengeId=o),typeof a<"u"&&(r.otp=a);const d=new URL(this.client.config.endpoint+s),c={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("put",d,c,r)}listMfaFactors(){const e="/account/mfa/factors",i={},t=new URL(this.client.config.endpoint+e),o={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",t,o,i)}listMFAFactors(){const e="/account/mfa/factors",i={},t=new URL(this.client.config.endpoint+e),o={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",t,o,i)}getMfaRecoveryCodes(){const e="/account/mfa/recovery-codes",i={},t=new URL(this.client.config.endpoint+e),o={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",t,o,i)}getMFARecoveryCodes(){const e="/account/mfa/recovery-codes",i={},t=new URL(this.client.config.endpoint+e),o={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",t,o,i)}createMfaRecoveryCodes(){const e="/account/mfa/recovery-codes",i={},t=new URL(this.client.config.endpoint+e),o={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",t,o,i)}createMFARecoveryCodes(){const e="/account/mfa/recovery-codes",i={},t=new URL(this.client.config.endpoint+e),o={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",t,o,i)}updateMfaRecoveryCodes(){const e="/account/mfa/recovery-codes",i={},t=new URL(this.client.config.endpoint+e),o={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("patch",t,o,i)}updateMFARecoveryCodes(){const e="/account/mfa/recovery-codes",i={},t=new URL(this.client.config.endpoint+e),o={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("patch",t,o,i)}updateName(e){let i;e&&typeof e=="object"&&!Array.isArray(e)?i=e||{}:i={name:e};const t=i.name;if(typeof t>"u")throw new h('Missing required parameter: "name"');const o="/account/name",a={};typeof t<"u"&&(a.name=t);const s=new URL(this.client.config.endpoint+o),r={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("patch",s,r,a)}updatePassword(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={password:e,oldPassword:i[0]};const o=t.password,a=t.oldPassword;if(typeof o>"u")throw new h('Missing required parameter: "password"');const s="/account/password",r={};typeof o<"u"&&(r.password=o),typeof a<"u"&&(r.oldPassword=a);const d=new URL(this.client.config.endpoint+s),c={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("patch",d,c,r)}updatePhone(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={phone:e,password:i[0]};const o=t.phone,a=t.password;if(typeof o>"u")throw new h('Missing required parameter: "phone"');if(typeof a>"u")throw new h('Missing required parameter: "password"');const s="/account/phone",r={};typeof o<"u"&&(r.phone=o),typeof a<"u"&&(r.password=a);const d=new URL(this.client.config.endpoint+s),c={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("patch",d,c,r)}getPrefs(){const e="/account/prefs",i={},t=new URL(this.client.config.endpoint+e),o={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",t,o,i)}updatePrefs(e){let i;e&&typeof e=="object"&&!Array.isArray(e)&&"prefs"in e?i=e||{}:i={prefs:e};const t=i.prefs;if(typeof t>"u")throw new h('Missing required parameter: "prefs"');const o="/account/prefs",a={};typeof t<"u"&&(a.prefs=t);const s=new URL(this.client.config.endpoint+o),r={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("patch",s,r,a)}createRecovery(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={email:e,url:i[0]};const o=t.email,a=t.url;if(typeof o>"u")throw new h('Missing required parameter: "email"');if(typeof a>"u")throw new h('Missing required parameter: "url"');const s="/account/recovery",r={};typeof o<"u"&&(r.email=o),typeof a<"u"&&(r.url=a);const d=new URL(this.client.config.endpoint+s),c={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",d,c,r)}updateRecovery(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={userId:e,secret:i[0],password:i[1]};const o=t.userId,a=t.secret,s=t.password;if(typeof o>"u")throw new h('Missing required parameter: "userId"');if(typeof a>"u")throw new h('Missing required parameter: "secret"');if(typeof s>"u")throw new h('Missing required parameter: "password"');const r="/account/recovery",d={};typeof o<"u"&&(d.userId=o),typeof a<"u"&&(d.secret=a),typeof s<"u"&&(d.password=s);const c=new URL(this.client.config.endpoint+r),p={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("put",c,p,d)}listSessions(){const e="/account/sessions",i={},t=new URL(this.client.config.endpoint+e),o={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",t,o,i)}deleteSessions(){const e="/account/sessions",i={},t=new URL(this.client.config.endpoint+e),o={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json"};return this.client.call("delete",t,o,i)}createAnonymousSession(){const e="/account/sessions/anonymous",i={},t=new URL(this.client.config.endpoint+e),o={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",t,o,i)}createEmailPasswordSession(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={email:e,password:i[0]};const o=t.email,a=t.password;if(typeof o>"u")throw new h('Missing required parameter: "email"');if(typeof a>"u")throw new h('Missing required parameter: "password"');const s="/account/sessions/email",r={};typeof o<"u"&&(r.email=o),typeof a<"u"&&(r.password=a);const d=new URL(this.client.config.endpoint+s),c={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",d,c,r)}updateMagicURLSession(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={userId:e,secret:i[0]};const o=t.userId,a=t.secret;if(typeof o>"u")throw new h('Missing required parameter: "userId"');if(typeof a>"u")throw new h('Missing required parameter: "secret"');const s="/account/sessions/magic-url",r={};typeof o<"u"&&(r.userId=o),typeof a<"u"&&(r.secret=a);const d=new URL(this.client.config.endpoint+s),c={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("put",d,c,r)}createOAuth2Session(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)&&("provider"in e||"success"in e||"failure"in e||"scopes"in e)?t=e||{}:t={provider:e,success:i[0],failure:i[1],scopes:i[2]};const o=t.provider,a=t.success,s=t.failure,r=t.scopes;if(typeof o>"u")throw new h('Missing required parameter: "provider"');const d="/account/sessions/oauth2/{provider}".replace("{provider}",encodeURIComponent(String(o))),c={};typeof a<"u"&&(c.success=a),typeof s<"u"&&(c.failure=s),typeof r<"u"&&(c.scopes=r);const p=new URL(this.client.config.endpoint+d);c.project=this.client.config.project;for(const[u,m]of Object.entries(ge.flatten(c)))p.searchParams.append(u,m);if(typeof window<"u"&&window?.location){window.location.href=p.toString();return}else return p.toString()}updatePhoneSession(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={userId:e,secret:i[0]};const o=t.userId,a=t.secret;if(typeof o>"u")throw new h('Missing required parameter: "userId"');if(typeof a>"u")throw new h('Missing required parameter: "secret"');const s="/account/sessions/phone",r={};typeof o<"u"&&(r.userId=o),typeof a<"u"&&(r.secret=a);const d=new URL(this.client.config.endpoint+s),c={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("put",d,c,r)}createSession(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={userId:e,secret:i[0]};const o=t.userId,a=t.secret;if(typeof o>"u")throw new h('Missing required parameter: "userId"');if(typeof a>"u")throw new h('Missing required parameter: "secret"');const s="/account/sessions/token",r={};typeof o<"u"&&(r.userId=o),typeof a<"u"&&(r.secret=a);const d=new URL(this.client.config.endpoint+s),c={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",d,c,r)}getSession(e){let i;e&&typeof e=="object"&&!Array.isArray(e)?i=e||{}:i={sessionId:e};const t=i.sessionId;if(typeof t>"u")throw new h('Missing required parameter: "sessionId"');const o="/account/sessions/{sessionId}".replace("{sessionId}",encodeURIComponent(String(t))),a={},s=new URL(this.client.config.endpoint+o),r={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",s,r,a)}updateSession(e){let i;e&&typeof e=="object"&&!Array.isArray(e)?i=e||{}:i={sessionId:e};const t=i.sessionId;if(typeof t>"u")throw new h('Missing required parameter: "sessionId"');const o="/account/sessions/{sessionId}".replace("{sessionId}",encodeURIComponent(String(t))),a={},s=new URL(this.client.config.endpoint+o),r={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("patch",s,r,a)}deleteSession(e){let i;e&&typeof e=="object"&&!Array.isArray(e)?i=e||{}:i={sessionId:e};const t=i.sessionId;if(typeof t>"u")throw new h('Missing required parameter: "sessionId"');const o="/account/sessions/{sessionId}".replace("{sessionId}",encodeURIComponent(String(t))),a={},s=new URL(this.client.config.endpoint+o),r={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json"};return this.client.call("delete",s,r,a)}updateStatus(){const e="/account/status",i={},t=new URL(this.client.config.endpoint+e),o={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("patch",t,o,i)}createPushTarget(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={targetId:e,identifier:i[0],providerId:i[1]};const o=t.targetId,a=t.identifier,s=t.providerId;if(typeof o>"u")throw new h('Missing required parameter: "targetId"');if(typeof a>"u")throw new h('Missing required parameter: "identifier"');const r="/account/targets/push",d={};typeof o<"u"&&(d.targetId=o),typeof a<"u"&&(d.identifier=a),typeof s<"u"&&(d.providerId=s);const c=new URL(this.client.config.endpoint+r),p={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",c,p,d)}updatePushTarget(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={targetId:e,identifier:i[0]};const o=t.targetId,a=t.identifier;if(typeof o>"u")throw new h('Missing required parameter: "targetId"');if(typeof a>"u")throw new h('Missing required parameter: "identifier"');const s="/account/targets/{targetId}/push".replace("{targetId}",encodeURIComponent(String(o))),r={};typeof a<"u"&&(r.identifier=a);const d=new URL(this.client.config.endpoint+s),c={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("put",d,c,r)}deletePushTarget(e){let i;e&&typeof e=="object"&&!Array.isArray(e)?i=e||{}:i={targetId:e};const t=i.targetId;if(typeof t>"u")throw new h('Missing required parameter: "targetId"');const o="/account/targets/{targetId}/push".replace("{targetId}",encodeURIComponent(String(t))),a={},s=new URL(this.client.config.endpoint+o),r={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json"};return this.client.call("delete",s,r,a)}createEmailToken(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={userId:e,email:i[0],phrase:i[1]};const o=t.userId,a=t.email,s=t.phrase;if(typeof o>"u")throw new h('Missing required parameter: "userId"');if(typeof a>"u")throw new h('Missing required parameter: "email"');const r="/account/tokens/email",d={};typeof o<"u"&&(d.userId=o),typeof a<"u"&&(d.email=a),typeof s<"u"&&(d.phrase=s);const c=new URL(this.client.config.endpoint+r),p={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",c,p,d)}createMagicURLToken(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={userId:e,email:i[0],url:i[1],phrase:i[2]};const o=t.userId,a=t.email,s=t.url,r=t.phrase;if(typeof o>"u")throw new h('Missing required parameter: "userId"');if(typeof a>"u")throw new h('Missing required parameter: "email"');const d="/account/tokens/magic-url",c={};typeof o<"u"&&(c.userId=o),typeof a<"u"&&(c.email=a),typeof s<"u"&&(c.url=s),typeof r<"u"&&(c.phrase=r);const p=new URL(this.client.config.endpoint+d),u={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",p,u,c)}createOAuth2Token(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)&&("provider"in e||"success"in e||"failure"in e||"scopes"in e)?t=e||{}:t={provider:e,success:i[0],failure:i[1],scopes:i[2]};const o=t.provider,a=t.success,s=t.failure,r=t.scopes;if(typeof o>"u")throw new h('Missing required parameter: "provider"');const d="/account/tokens/oauth2/{provider}".replace("{provider}",encodeURIComponent(String(o))),c={};typeof a<"u"&&(c.success=a),typeof s<"u"&&(c.failure=s),typeof r<"u"&&(c.scopes=r);const p=new URL(this.client.config.endpoint+d);c.project=this.client.config.project;for(const[u,m]of Object.entries(ge.flatten(c)))p.searchParams.append(u,m);if(typeof window<"u"&&window?.location){window.location.href=p.toString();return}else return p.toString()}createPhoneToken(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={userId:e,phone:i[0]};const o=t.userId,a=t.phone;if(typeof o>"u")throw new h('Missing required parameter: "userId"');if(typeof a>"u")throw new h('Missing required parameter: "phone"');const s="/account/tokens/phone",r={};typeof o<"u"&&(r.userId=o),typeof a<"u"&&(r.phone=a);const d=new URL(this.client.config.endpoint+s),c={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",d,c,r)}createEmailVerification(e){let i;e&&typeof e=="object"&&!Array.isArray(e)?i=e||{}:i={url:e};const t=i.url;if(typeof t>"u")throw new h('Missing required parameter: "url"');const o="/account/verifications/email",a={};typeof t<"u"&&(a.url=t);const s=new URL(this.client.config.endpoint+o),r={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",s,r,a)}createVerification(e){let i;e&&typeof e=="object"&&!Array.isArray(e)?i=e||{}:i={url:e};const t=i.url;if(typeof t>"u")throw new h('Missing required parameter: "url"');const o="/account/verifications/email",a={};typeof t<"u"&&(a.url=t);const s=new URL(this.client.config.endpoint+o),r={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",s,r,a)}updateEmailVerification(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={userId:e,secret:i[0]};const o=t.userId,a=t.secret;if(typeof o>"u")throw new h('Missing required parameter: "userId"');if(typeof a>"u")throw new h('Missing required parameter: "secret"');const s="/account/verifications/email",r={};typeof o<"u"&&(r.userId=o),typeof a<"u"&&(r.secret=a);const d=new URL(this.client.config.endpoint+s),c={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("put",d,c,r)}updateVerification(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={userId:e,secret:i[0]};const o=t.userId,a=t.secret;if(typeof o>"u")throw new h('Missing required parameter: "userId"');if(typeof a>"u")throw new h('Missing required parameter: "secret"');const s="/account/verifications/email",r={};typeof o<"u"&&(r.userId=o),typeof a<"u"&&(r.secret=a);const d=new URL(this.client.config.endpoint+s),c={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("put",d,c,r)}createPhoneVerification(){const e="/account/verifications/phone",i={},t=new URL(this.client.config.endpoint+e),o={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",t,o,i)}updatePhoneVerification(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={userId:e,secret:i[0]};const o=t.userId,a=t.secret;if(typeof o>"u")throw new h('Missing required parameter: "userId"');if(typeof a>"u")throw new h('Missing required parameter: "secret"');const s="/account/verifications/phone",r={};typeof o<"u"&&(r.userId=o),typeof a<"u"&&(r.secret=a);const d=new URL(this.client.config.endpoint+s),c={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("put",d,c,r)}}class Gi{constructor(e){this.client=e}getBrowser(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)&&("code"in e||"width"in e||"height"in e||"quality"in e)?t=e||{}:t={code:e,width:i[0],height:i[1],quality:i[2]};const o=t.code,a=t.width,s=t.height,r=t.quality;if(typeof o>"u")throw new h('Missing required parameter: "code"');const d="/avatars/browsers/{code}".replace("{code}",encodeURIComponent(String(o))),c={};typeof a<"u"&&(c.width=a),typeof s<"u"&&(c.height=s),typeof r<"u"&&(c.quality=r);const p=new URL(this.client.config.endpoint+d);c.project=this.client.config.project,c.impersonateuserid=this.client.config.impersonateuserid;for(const[u,m]of Object.entries(ge.flatten(c)))p.searchParams.append(u,m);return p.toString()}getCreditCard(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)&&("code"in e||"width"in e||"height"in e||"quality"in e)?t=e||{}:t={code:e,width:i[0],height:i[1],quality:i[2]};const o=t.code,a=t.width,s=t.height,r=t.quality;if(typeof o>"u")throw new h('Missing required parameter: "code"');const d="/avatars/credit-cards/{code}".replace("{code}",encodeURIComponent(String(o))),c={};typeof a<"u"&&(c.width=a),typeof s<"u"&&(c.height=s),typeof r<"u"&&(c.quality=r);const p=new URL(this.client.config.endpoint+d);c.project=this.client.config.project,c.impersonateuserid=this.client.config.impersonateuserid;for(const[u,m]of Object.entries(ge.flatten(c)))p.searchParams.append(u,m);return p.toString()}getFavicon(e){let i;e&&typeof e=="object"&&!Array.isArray(e)?i=e||{}:i={url:e};const t=i.url;if(typeof t>"u")throw new h('Missing required parameter: "url"');const o="/avatars/favicon",a={};typeof t<"u"&&(a.url=t);const s=new URL(this.client.config.endpoint+o);a.project=this.client.config.project,a.impersonateuserid=this.client.config.impersonateuserid;for(const[r,d]of Object.entries(ge.flatten(a)))s.searchParams.append(r,d);return s.toString()}getFlag(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)&&("code"in e||"width"in e||"height"in e||"quality"in e)?t=e||{}:t={code:e,width:i[0],height:i[1],quality:i[2]};const o=t.code,a=t.width,s=t.height,r=t.quality;if(typeof o>"u")throw new h('Missing required parameter: "code"');const d="/avatars/flags/{code}".replace("{code}",encodeURIComponent(String(o))),c={};typeof a<"u"&&(c.width=a),typeof s<"u"&&(c.height=s),typeof r<"u"&&(c.quality=r);const p=new URL(this.client.config.endpoint+d);c.project=this.client.config.project,c.impersonateuserid=this.client.config.impersonateuserid;for(const[u,m]of Object.entries(ge.flatten(c)))p.searchParams.append(u,m);return p.toString()}getImage(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={url:e,width:i[0],height:i[1]};const o=t.url,a=t.width,s=t.height;if(typeof o>"u")throw new h('Missing required parameter: "url"');const r="/avatars/image",d={};typeof o<"u"&&(d.url=o),typeof a<"u"&&(d.width=a),typeof s<"u"&&(d.height=s);const c=new URL(this.client.config.endpoint+r);d.project=this.client.config.project,d.impersonateuserid=this.client.config.impersonateuserid;for(const[p,u]of Object.entries(ge.flatten(d)))c.searchParams.append(p,u);return c.toString()}getInitials(e,...i){let t;typeof e>"u"&&i.length===0||e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={name:e,width:i[0],height:i[1],background:i[2]};const o=t.name,a=t.width,s=t.height,r=t.background,d="/avatars/initials",c={};typeof o<"u"&&(c.name=o),typeof a<"u"&&(c.width=a),typeof s<"u"&&(c.height=s),typeof r<"u"&&(c.background=r);const p=new URL(this.client.config.endpoint+d);c.project=this.client.config.project,c.impersonateuserid=this.client.config.impersonateuserid;for(const[u,m]of Object.entries(ge.flatten(c)))p.searchParams.append(u,m);return p.toString()}getPhoto(e,...i){let t;typeof e>"u"&&i.length===0||e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={width:e,height:i[0],quality:i[1],output:i[2],rating:i[3],userId:i[4],emailHash:i[5],name:i[6]};const o=t.width,a=t.height,s=t.quality,r=t.output,d=t.rating,c=t.userId,p=t.emailHash,u=t.name,m="/avatars/photo",j={};typeof o<"u"&&(j.width=o),typeof a<"u"&&(j.height=a),typeof s<"u"&&(j.quality=s),typeof r<"u"&&(j.output=r),typeof d<"u"&&(j.rating=d),typeof c<"u"&&(j.userId=c),typeof p<"u"&&(j.emailHash=p),typeof u<"u"&&(j.name=u);const q=new URL(this.client.config.endpoint+m);j.project=this.client.config.project,j.impersonateuserid=this.client.config.impersonateuserid;for(const[T,K]of Object.entries(ge.flatten(j)))q.searchParams.append(T,K);return q.toString()}getQR(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={text:e,size:i[0],margin:i[1],download:i[2]};const o=t.text,a=t.size,s=t.margin,r=t.download;if(typeof o>"u")throw new h('Missing required parameter: "text"');const d="/avatars/qr",c={};typeof o<"u"&&(c.text=o),typeof a<"u"&&(c.size=a),typeof s<"u"&&(c.margin=s),typeof r<"u"&&(c.download=r);const p=new URL(this.client.config.endpoint+d);c.project=this.client.config.project,c.impersonateuserid=this.client.config.impersonateuserid;for(const[u,m]of Object.entries(ge.flatten(c)))p.searchParams.append(u,m);return p.toString()}getScreenshot(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={url:e,headers:i[0],viewportWidth:i[1],viewportHeight:i[2],scale:i[3],theme:i[4],userAgent:i[5],fullpage:i[6],locale:i[7],timezone:i[8],latitude:i[9],longitude:i[10],accuracy:i[11],touch:i[12],permissions:i[13],sleep:i[14],width:i[15],height:i[16],quality:i[17],output:i[18]};const o=t.url,a=t.headers,s=t.viewportWidth,r=t.viewportHeight,d=t.scale,c=t.theme,p=t.userAgent,u=t.fullpage,m=t.locale,j=t.timezone,q=t.latitude,T=t.longitude,K=t.accuracy,Y=t.touch,L=t.permissions,H=t.sleep,Z=t.width,se=t.height,D=t.quality,N=t.output;if(typeof o>"u")throw new h('Missing required parameter: "url"');const ie="/avatars/screenshots",V={};typeof o<"u"&&(V.url=o),typeof a<"u"&&(V.headers=a),typeof s<"u"&&(V.viewportWidth=s),typeof r<"u"&&(V.viewportHeight=r),typeof d<"u"&&(V.scale=d),typeof c<"u"&&(V.theme=c),typeof p<"u"&&(V.userAgent=p),typeof u<"u"&&(V.fullpage=u),typeof m<"u"&&(V.locale=m),typeof j<"u"&&(V.timezone=j),typeof q<"u"&&(V.latitude=q),typeof T<"u"&&(V.longitude=T),typeof K<"u"&&(V.accuracy=K),typeof Y<"u"&&(V.touch=Y),typeof L<"u"&&(V.permissions=L),typeof H<"u"&&(V.sleep=H),typeof Z<"u"&&(V.width=Z),typeof se<"u"&&(V.height=se),typeof D<"u"&&(V.quality=D),typeof N<"u"&&(V.output=N);const E=new URL(this.client.config.endpoint+ie);V.project=this.client.config.project,V.impersonateuserid=this.client.config.impersonateuserid;for(const[J,z]of Object.entries(ge.flatten(V)))E.searchParams.append(J,z);return E.toString()}}class ao{constructor(e){this.client=e}listTransactions(e){let i;typeof e>"u"||e&&typeof e=="object"&&!Array.isArray(e)?i=e||{}:i={queries:e};const t=i.queries,o="/databases/transactions",a={};typeof t<"u"&&(a.queries=t);const s=new URL(this.client.config.endpoint+o),r={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",s,r,a)}createTransaction(e){let i;typeof e>"u"||e&&typeof e=="object"&&!Array.isArray(e)?i=e||{}:i={ttl:e};const t=i.ttl,o="/databases/transactions",a={};typeof t<"u"&&(a.ttl=t);const s=new URL(this.client.config.endpoint+o),r={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",s,r,a)}getTransaction(e){let i;e&&typeof e=="object"&&!Array.isArray(e)?i=e||{}:i={transactionId:e};const t=i.transactionId;if(typeof t>"u")throw new h('Missing required parameter: "transactionId"');const o="/databases/transactions/{transactionId}".replace("{transactionId}",encodeURIComponent(String(t))),a={},s=new URL(this.client.config.endpoint+o),r={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",s,r,a)}updateTransaction(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={transactionId:e,commit:i[0],rollback:i[1]};const o=t.transactionId,a=t.commit,s=t.rollback;if(typeof o>"u")throw new h('Missing required parameter: "transactionId"');const r="/databases/transactions/{transactionId}".replace("{transactionId}",encodeURIComponent(String(o))),d={};typeof a<"u"&&(d.commit=a),typeof s<"u"&&(d.rollback=s);const c=new URL(this.client.config.endpoint+r),p={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("patch",c,p,d)}deleteTransaction(e){let i;e&&typeof e=="object"&&!Array.isArray(e)?i=e||{}:i={transactionId:e};const t=i.transactionId;if(typeof t>"u")throw new h('Missing required parameter: "transactionId"');const o="/databases/transactions/{transactionId}".replace("{transactionId}",encodeURIComponent(String(t))),a={},s=new URL(this.client.config.endpoint+o),r={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json"};return this.client.call("delete",s,r,a)}createOperations(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={transactionId:e,operations:i[0]};const o=t.transactionId,a=t.operations;if(typeof o>"u")throw new h('Missing required parameter: "transactionId"');const s="/databases/transactions/{transactionId}/operations".replace("{transactionId}",encodeURIComponent(String(o))),r={};typeof a<"u"&&(r.operations=a);const d=new URL(this.client.config.endpoint+s),c={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",d,c,r)}listDocuments(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={databaseId:e,collectionId:i[0],queries:i[1],transactionId:i[2],total:i[3],ttl:i[4]};const o=t.databaseId,a=t.collectionId,s=t.queries,r=t.transactionId,d=t.total,c=t.ttl;if(typeof o>"u")throw new h('Missing required parameter: "databaseId"');if(typeof a>"u")throw new h('Missing required parameter: "collectionId"');const p="/databases/{databaseId}/collections/{collectionId}/documents".replace("{databaseId}",encodeURIComponent(String(o))).replace("{collectionId}",encodeURIComponent(String(a))),u={};typeof s<"u"&&(u.queries=s),typeof r<"u"&&(u.transactionId=r),typeof d<"u"&&(u.total=d),typeof c<"u"&&(u.ttl=c);const m=new URL(this.client.config.endpoint+p),j={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",m,j,u)}createDocument(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={databaseId:e,collectionId:i[0],documentId:i[1],data:i[2],permissions:i[3],transactionId:i[4]};const o=t.databaseId,a=t.collectionId,s=t.documentId,r=t.data,d=t.permissions,c=t.transactionId;if(typeof o>"u")throw new h('Missing required parameter: "databaseId"');if(typeof a>"u")throw new h('Missing required parameter: "collectionId"');if(typeof s>"u")throw new h('Missing required parameter: "documentId"');if(typeof r>"u")throw new h('Missing required parameter: "data"');const p="/databases/{databaseId}/collections/{collectionId}/documents".replace("{databaseId}",encodeURIComponent(String(o))).replace("{collectionId}",encodeURIComponent(String(a))),u={};typeof s<"u"&&(u.documentId=s),typeof r<"u"&&(u.data=r),typeof d<"u"&&(u.permissions=d),typeof c<"u"&&(u.transactionId=c);const m=new URL(this.client.config.endpoint+p),j={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",m,j,u)}getDocument(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={databaseId:e,collectionId:i[0],documentId:i[1],queries:i[2],transactionId:i[3]};const o=t.databaseId,a=t.collectionId,s=t.documentId,r=t.queries,d=t.transactionId;if(typeof o>"u")throw new h('Missing required parameter: "databaseId"');if(typeof a>"u")throw new h('Missing required parameter: "collectionId"');if(typeof s>"u")throw new h('Missing required parameter: "documentId"');const c="/databases/{databaseId}/collections/{collectionId}/documents/{documentId}".replace("{databaseId}",encodeURIComponent(String(o))).replace("{collectionId}",encodeURIComponent(String(a))).replace("{documentId}",encodeURIComponent(String(s))),p={};typeof r<"u"&&(p.queries=r),typeof d<"u"&&(p.transactionId=d);const u=new URL(this.client.config.endpoint+c),m={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",u,m,p)}upsertDocument(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={databaseId:e,collectionId:i[0],documentId:i[1],data:i[2],permissions:i[3],transactionId:i[4]};const o=t.databaseId,a=t.collectionId,s=t.documentId,r=t.data,d=t.permissions,c=t.transactionId;if(typeof o>"u")throw new h('Missing required parameter: "databaseId"');if(typeof a>"u")throw new h('Missing required parameter: "collectionId"');if(typeof s>"u")throw new h('Missing required parameter: "documentId"');const p="/databases/{databaseId}/collections/{collectionId}/documents/{documentId}".replace("{databaseId}",encodeURIComponent(String(o))).replace("{collectionId}",encodeURIComponent(String(a))).replace("{documentId}",encodeURIComponent(String(s))),u={};typeof r<"u"&&(u.data=r),typeof d<"u"&&(u.permissions=d),typeof c<"u"&&(u.transactionId=c);const m=new URL(this.client.config.endpoint+p),j={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("put",m,j,u)}updateDocument(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={databaseId:e,collectionId:i[0],documentId:i[1],data:i[2],permissions:i[3],transactionId:i[4]};const o=t.databaseId,a=t.collectionId,s=t.documentId,r=t.data,d=t.permissions,c=t.transactionId;if(typeof o>"u")throw new h('Missing required parameter: "databaseId"');if(typeof a>"u")throw new h('Missing required parameter: "collectionId"');if(typeof s>"u")throw new h('Missing required parameter: "documentId"');const p="/databases/{databaseId}/collections/{collectionId}/documents/{documentId}".replace("{databaseId}",encodeURIComponent(String(o))).replace("{collectionId}",encodeURIComponent(String(a))).replace("{documentId}",encodeURIComponent(String(s))),u={};typeof r<"u"&&(u.data=r),typeof d<"u"&&(u.permissions=d),typeof c<"u"&&(u.transactionId=c);const m=new URL(this.client.config.endpoint+p),j={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("patch",m,j,u)}deleteDocument(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={databaseId:e,collectionId:i[0],documentId:i[1],transactionId:i[2]};const o=t.databaseId,a=t.collectionId,s=t.documentId,r=t.transactionId;if(typeof o>"u")throw new h('Missing required parameter: "databaseId"');if(typeof a>"u")throw new h('Missing required parameter: "collectionId"');if(typeof s>"u")throw new h('Missing required parameter: "documentId"');const d="/databases/{databaseId}/collections/{collectionId}/documents/{documentId}".replace("{databaseId}",encodeURIComponent(String(o))).replace("{collectionId}",encodeURIComponent(String(a))).replace("{documentId}",encodeURIComponent(String(s))),c={};typeof r<"u"&&(c.transactionId=r);const p=new URL(this.client.config.endpoint+d),u={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json"};return this.client.call("delete",p,u,c)}decrementDocumentAttribute(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={databaseId:e,collectionId:i[0],documentId:i[1],attribute:i[2],value:i[3],min:i[4],transactionId:i[5]};const o=t.databaseId,a=t.collectionId,s=t.documentId,r=t.attribute,d=t.value,c=t.min,p=t.transactionId;if(typeof o>"u")throw new h('Missing required parameter: "databaseId"');if(typeof a>"u")throw new h('Missing required parameter: "collectionId"');if(typeof s>"u")throw new h('Missing required parameter: "documentId"');if(typeof r>"u")throw new h('Missing required parameter: "attribute"');const u="/databases/{databaseId}/collections/{collectionId}/documents/{documentId}/{attribute}/decrement".replace("{databaseId}",encodeURIComponent(String(o))).replace("{collectionId}",encodeURIComponent(String(a))).replace("{documentId}",encodeURIComponent(String(s))).replace("{attribute}",encodeURIComponent(String(r))),m={};typeof d<"u"&&(m.value=d),typeof c<"u"&&(m.min=c),typeof p<"u"&&(m.transactionId=p);const j=new URL(this.client.config.endpoint+u),q={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("patch",j,q,m)}incrementDocumentAttribute(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={databaseId:e,collectionId:i[0],documentId:i[1],attribute:i[2],value:i[3],max:i[4],transactionId:i[5]};const o=t.databaseId,a=t.collectionId,s=t.documentId,r=t.attribute,d=t.value,c=t.max,p=t.transactionId;if(typeof o>"u")throw new h('Missing required parameter: "databaseId"');if(typeof a>"u")throw new h('Missing required parameter: "collectionId"');if(typeof s>"u")throw new h('Missing required parameter: "documentId"');if(typeof r>"u")throw new h('Missing required parameter: "attribute"');const u="/databases/{databaseId}/collections/{collectionId}/documents/{documentId}/{attribute}/increment".replace("{databaseId}",encodeURIComponent(String(o))).replace("{collectionId}",encodeURIComponent(String(a))).replace("{documentId}",encodeURIComponent(String(s))).replace("{attribute}",encodeURIComponent(String(r))),m={};typeof d<"u"&&(m.value=d),typeof c<"u"&&(m.max=c),typeof p<"u"&&(m.transactionId=p);const j=new URL(this.client.config.endpoint+u),q={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("patch",j,q,m)}}class so{constructor(e){this.client=e}listTransactions(e){let i;typeof e>"u"||e&&typeof e=="object"&&!Array.isArray(e)?i=e||{}:i={queries:e};const t=i.queries,o="/documentsdb/transactions",a={};typeof t<"u"&&(a.queries=t);const s=new URL(this.client.config.endpoint+o),r={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",s,r,a)}createTransaction(e){let i;typeof e>"u"||e&&typeof e=="object"&&!Array.isArray(e)?i=e||{}:i={ttl:e};const t=i.ttl,o="/documentsdb/transactions",a={};typeof t<"u"&&(a.ttl=t);const s=new URL(this.client.config.endpoint+o),r={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",s,r,a)}getTransaction(e){let i;e&&typeof e=="object"&&!Array.isArray(e)?i=e||{}:i={transactionId:e};const t=i.transactionId;if(typeof t>"u")throw new h('Missing required parameter: "transactionId"');const o="/documentsdb/transactions/{transactionId}".replace("{transactionId}",encodeURIComponent(String(t))),a={},s=new URL(this.client.config.endpoint+o),r={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",s,r,a)}updateTransaction(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={transactionId:e,commit:i[0],rollback:i[1]};const o=t.transactionId,a=t.commit,s=t.rollback;if(typeof o>"u")throw new h('Missing required parameter: "transactionId"');const r="/documentsdb/transactions/{transactionId}".replace("{transactionId}",encodeURIComponent(String(o))),d={};typeof a<"u"&&(d.commit=a),typeof s<"u"&&(d.rollback=s);const c=new URL(this.client.config.endpoint+r),p={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("patch",c,p,d)}deleteTransaction(e){let i;e&&typeof e=="object"&&!Array.isArray(e)?i=e||{}:i={transactionId:e};const t=i.transactionId;if(typeof t>"u")throw new h('Missing required parameter: "transactionId"');const o="/documentsdb/transactions/{transactionId}".replace("{transactionId}",encodeURIComponent(String(t))),a={},s=new URL(this.client.config.endpoint+o),r={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json"};return this.client.call("delete",s,r,a)}createOperations(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={transactionId:e,operations:i[0]};const o=t.transactionId,a=t.operations;if(typeof o>"u")throw new h('Missing required parameter: "transactionId"');const s="/documentsdb/transactions/{transactionId}/operations".replace("{transactionId}",encodeURIComponent(String(o))),r={};typeof a<"u"&&(r.operations=a);const d=new URL(this.client.config.endpoint+s),c={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",d,c,r)}listDocuments(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={databaseId:e,collectionId:i[0],queries:i[1],transactionId:i[2],total:i[3],ttl:i[4]};const o=t.databaseId,a=t.collectionId,s=t.queries,r=t.transactionId,d=t.total,c=t.ttl;if(typeof o>"u")throw new h('Missing required parameter: "databaseId"');if(typeof a>"u")throw new h('Missing required parameter: "collectionId"');const p="/documentsdb/{databaseId}/collections/{collectionId}/documents".replace("{databaseId}",encodeURIComponent(String(o))).replace("{collectionId}",encodeURIComponent(String(a))),u={};typeof s<"u"&&(u.queries=s),typeof r<"u"&&(u.transactionId=r),typeof d<"u"&&(u.total=d),typeof c<"u"&&(u.ttl=c);const m=new URL(this.client.config.endpoint+p),j={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",m,j,u)}createDocument(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={databaseId:e,collectionId:i[0],documentId:i[1],data:i[2],permissions:i[3],transactionId:i[4]};const o=t.databaseId,a=t.collectionId,s=t.documentId,r=t.data,d=t.permissions,c=t.transactionId;if(typeof o>"u")throw new h('Missing required parameter: "databaseId"');if(typeof a>"u")throw new h('Missing required parameter: "collectionId"');if(typeof s>"u")throw new h('Missing required parameter: "documentId"');if(typeof r>"u")throw new h('Missing required parameter: "data"');const p="/documentsdb/{databaseId}/collections/{collectionId}/documents".replace("{databaseId}",encodeURIComponent(String(o))).replace("{collectionId}",encodeURIComponent(String(a))),u={};typeof s<"u"&&(u.documentId=s),typeof r<"u"&&(u.data=r),typeof d<"u"&&(u.permissions=d),typeof c<"u"&&(u.transactionId=c);const m=new URL(this.client.config.endpoint+p),j={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",m,j,u)}createDocuments(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={databaseId:e,collectionId:i[0],documents:i[1],transactionId:i[2]};const o=t.databaseId,a=t.collectionId,s=t.documents,r=t.transactionId;if(typeof o>"u")throw new h('Missing required parameter: "databaseId"');if(typeof a>"u")throw new h('Missing required parameter: "collectionId"');if(typeof s>"u")throw new h('Missing required parameter: "documents"');const d="/documentsdb/{databaseId}/collections/{collectionId}/documents".replace("{databaseId}",encodeURIComponent(String(o))).replace("{collectionId}",encodeURIComponent(String(a))),c={};typeof s<"u"&&(c.documents=s),typeof r<"u"&&(c.transactionId=r);const p=new URL(this.client.config.endpoint+d),u={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",p,u,c)}getDocument(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={databaseId:e,collectionId:i[0],documentId:i[1],queries:i[2],transactionId:i[3]};const o=t.databaseId,a=t.collectionId,s=t.documentId,r=t.queries,d=t.transactionId;if(typeof o>"u")throw new h('Missing required parameter: "databaseId"');if(typeof a>"u")throw new h('Missing required parameter: "collectionId"');if(typeof s>"u")throw new h('Missing required parameter: "documentId"');const c="/documentsdb/{databaseId}/collections/{collectionId}/documents/{documentId}".replace("{databaseId}",encodeURIComponent(String(o))).replace("{collectionId}",encodeURIComponent(String(a))).replace("{documentId}",encodeURIComponent(String(s))),p={};typeof r<"u"&&(p.queries=r),typeof d<"u"&&(p.transactionId=d);const u=new URL(this.client.config.endpoint+c),m={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",u,m,p)}upsertDocument(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={databaseId:e,collectionId:i[0],documentId:i[1],data:i[2],permissions:i[3],transactionId:i[4]};const o=t.databaseId,a=t.collectionId,s=t.documentId,r=t.data,d=t.permissions,c=t.transactionId;if(typeof o>"u")throw new h('Missing required parameter: "databaseId"');if(typeof a>"u")throw new h('Missing required parameter: "collectionId"');if(typeof s>"u")throw new h('Missing required parameter: "documentId"');const p="/documentsdb/{databaseId}/collections/{collectionId}/documents/{documentId}".replace("{databaseId}",encodeURIComponent(String(o))).replace("{collectionId}",encodeURIComponent(String(a))).replace("{documentId}",encodeURIComponent(String(s))),u={};typeof r<"u"&&(u.data=r),typeof d<"u"&&(u.permissions=d),typeof c<"u"&&(u.transactionId=c);const m=new URL(this.client.config.endpoint+p),j={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("put",m,j,u)}updateDocument(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={databaseId:e,collectionId:i[0],documentId:i[1],data:i[2],permissions:i[3],transactionId:i[4]};const o=t.databaseId,a=t.collectionId,s=t.documentId,r=t.data,d=t.permissions,c=t.transactionId;if(typeof o>"u")throw new h('Missing required parameter: "databaseId"');if(typeof a>"u")throw new h('Missing required parameter: "collectionId"');if(typeof s>"u")throw new h('Missing required parameter: "documentId"');const p="/documentsdb/{databaseId}/collections/{collectionId}/documents/{documentId}".replace("{databaseId}",encodeURIComponent(String(o))).replace("{collectionId}",encodeURIComponent(String(a))).replace("{documentId}",encodeURIComponent(String(s))),u={};typeof r<"u"&&(u.data=r),typeof d<"u"&&(u.permissions=d),typeof c<"u"&&(u.transactionId=c);const m=new URL(this.client.config.endpoint+p),j={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("patch",m,j,u)}deleteDocument(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={databaseId:e,collectionId:i[0],documentId:i[1],transactionId:i[2]};const o=t.databaseId,a=t.collectionId,s=t.documentId,r=t.transactionId;if(typeof o>"u")throw new h('Missing required parameter: "databaseId"');if(typeof a>"u")throw new h('Missing required parameter: "collectionId"');if(typeof s>"u")throw new h('Missing required parameter: "documentId"');const d="/documentsdb/{databaseId}/collections/{collectionId}/documents/{documentId}".replace("{databaseId}",encodeURIComponent(String(o))).replace("{collectionId}",encodeURIComponent(String(a))).replace("{documentId}",encodeURIComponent(String(s))),c={};typeof r<"u"&&(c.transactionId=r);const p=new URL(this.client.config.endpoint+d),u={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json"};return this.client.call("delete",p,u,c)}decrementDocumentAttribute(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={databaseId:e,collectionId:i[0],documentId:i[1],attribute:i[2],value:i[3],min:i[4],transactionId:i[5]};const o=t.databaseId,a=t.collectionId,s=t.documentId,r=t.attribute,d=t.value,c=t.min,p=t.transactionId;if(typeof o>"u")throw new h('Missing required parameter: "databaseId"');if(typeof a>"u")throw new h('Missing required parameter: "collectionId"');if(typeof s>"u")throw new h('Missing required parameter: "documentId"');if(typeof r>"u")throw new h('Missing required parameter: "attribute"');const u="/documentsdb/{databaseId}/collections/{collectionId}/documents/{documentId}/{attribute}/decrement".replace("{databaseId}",encodeURIComponent(String(o))).replace("{collectionId}",encodeURIComponent(String(a))).replace("{documentId}",encodeURIComponent(String(s))).replace("{attribute}",encodeURIComponent(String(r))),m={};typeof d<"u"&&(m.value=d),typeof c<"u"&&(m.min=c),typeof p<"u"&&(m.transactionId=p);const j=new URL(this.client.config.endpoint+u),q={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("patch",j,q,m)}incrementDocumentAttribute(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={databaseId:e,collectionId:i[0],documentId:i[1],attribute:i[2],value:i[3],max:i[4],transactionId:i[5]};const o=t.databaseId,a=t.collectionId,s=t.documentId,r=t.attribute,d=t.value,c=t.max,p=t.transactionId;if(typeof o>"u")throw new h('Missing required parameter: "databaseId"');if(typeof a>"u")throw new h('Missing required parameter: "collectionId"');if(typeof s>"u")throw new h('Missing required parameter: "documentId"');if(typeof r>"u")throw new h('Missing required parameter: "attribute"');const u="/documentsdb/{databaseId}/collections/{collectionId}/documents/{documentId}/{attribute}/increment".replace("{databaseId}",encodeURIComponent(String(o))).replace("{collectionId}",encodeURIComponent(String(a))).replace("{documentId}",encodeURIComponent(String(s))).replace("{attribute}",encodeURIComponent(String(r))),m={};typeof d<"u"&&(m.value=d),typeof c<"u"&&(m.max=c),typeof p<"u"&&(m.transactionId=p);const j=new URL(this.client.config.endpoint+u),q={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("patch",j,q,m)}}class ro{constructor(e){this.client=e}listExecutions(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={functionId:e,queries:i[0],total:i[1]};const o=t.functionId,a=t.queries,s=t.total;if(typeof o>"u")throw new h('Missing required parameter: "functionId"');const r="/functions/{functionId}/executions".replace("{functionId}",encodeURIComponent(String(o))),d={};typeof a<"u"&&(d.queries=a),typeof s<"u"&&(d.total=s);const c=new URL(this.client.config.endpoint+r),p={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",c,p,d)}createExecution(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={functionId:e,body:i[0],async:i[1],xpath:i[2],method:i[3],headers:i[4],scheduledAt:i[5]};const o=t.functionId,a=t.body,s=t.async,r=t.xpath,d=t.method,c=t.headers,p=t.scheduledAt;if(typeof o>"u")throw new h('Missing required parameter: "functionId"');const u="/functions/{functionId}/executions".replace("{functionId}",encodeURIComponent(String(o))),m={};typeof a<"u"&&(m.body=a),typeof s<"u"&&(m.async=s),typeof r<"u"&&(m.path=r),typeof d<"u"&&(m.method=d),typeof c<"u"&&(m.headers=c),typeof p<"u"&&(m.scheduledAt=p);const j=new URL(this.client.config.endpoint+u),q={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",j,q,m)}getExecution(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={functionId:e,executionId:i[0]};const o=t.functionId,a=t.executionId;if(typeof o>"u")throw new h('Missing required parameter: "functionId"');if(typeof a>"u")throw new h('Missing required parameter: "executionId"');const s="/functions/{functionId}/executions/{executionId}".replace("{functionId}",encodeURIComponent(String(o))).replace("{executionId}",encodeURIComponent(String(a))),r={},d=new URL(this.client.config.endpoint+s),c={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",d,c,r)}}class co{constructor(e){this.client=e}query(e){let i;e&&typeof e=="object"&&!Array.isArray(e)&&"query"in e?i=e||{}:i={query:e};const t=i.query;if(typeof t>"u")throw new h('Missing required parameter: "query"');const o="/graphql",a={};typeof t<"u"&&(a.query=t);const s=new URL(this.client.config.endpoint+o),r={"X-Appwrite-Project":this.client.config.project,"x-sdk-graphql":"true","content-type":"application/json",accept:"application/json"};return this.client.call("post",s,r,a)}mutation(e){let i;e&&typeof e=="object"&&!Array.isArray(e)&&"query"in e?i=e||{}:i={query:e};const t=i.query;if(typeof t>"u")throw new h('Missing required parameter: "query"');const o="/graphql/mutation",a={};typeof t<"u"&&(a.query=t);const s=new URL(this.client.config.endpoint+o),r={"X-Appwrite-Project":this.client.config.project,"x-sdk-graphql":"true","content-type":"application/json",accept:"application/json"};return this.client.call("post",s,r,a)}}class lo{constructor(e){this.client=e}get(){const e="/locale",i={},t=new URL(this.client.config.endpoint+e),o={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",t,o,i)}listCodes(){const e="/locale/codes",i={},t=new URL(this.client.config.endpoint+e),o={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",t,o,i)}listContinents(){const e="/locale/continents",i={},t=new URL(this.client.config.endpoint+e),o={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",t,o,i)}listCountries(){const e="/locale/countries",i={},t=new URL(this.client.config.endpoint+e),o={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",t,o,i)}listCountriesEU(){const e="/locale/countries/eu",i={},t=new URL(this.client.config.endpoint+e),o={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",t,o,i)}listCountriesPhones(){const e="/locale/countries/phones",i={},t=new URL(this.client.config.endpoint+e),o={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",t,o,i)}listCurrencies(){const e="/locale/currencies",i={},t=new URL(this.client.config.endpoint+e),o={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",t,o,i)}listLanguages(){const e="/locale/languages",i={},t=new URL(this.client.config.endpoint+e),o={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",t,o,i)}}class uo{constructor(e){this.client=e}createSubscriber(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={topicId:e,subscriberId:i[0],targetId:i[1]};const o=t.topicId,a=t.subscriberId,s=t.targetId;if(typeof o>"u")throw new h('Missing required parameter: "topicId"');if(typeof a>"u")throw new h('Missing required parameter: "subscriberId"');if(typeof s>"u")throw new h('Missing required parameter: "targetId"');const r="/messaging/topics/{topicId}/subscribers".replace("{topicId}",encodeURIComponent(String(o))),d={};typeof a<"u"&&(d.subscriberId=a),typeof s<"u"&&(d.targetId=s);const c=new URL(this.client.config.endpoint+r),p={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",c,p,d)}deleteSubscriber(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={topicId:e,subscriberId:i[0]};const o=t.topicId,a=t.subscriberId;if(typeof o>"u")throw new h('Missing required parameter: "topicId"');if(typeof a>"u")throw new h('Missing required parameter: "subscriberId"');const s="/messaging/topics/{topicId}/subscribers/{subscriberId}".replace("{topicId}",encodeURIComponent(String(o))).replace("{subscriberId}",encodeURIComponent(String(a))),r={},d=new URL(this.client.config.endpoint+s),c={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json"};return this.client.call("delete",d,c,r)}}class po{constructor(e){this.client=e}listInstallations(e,...i){let t;typeof e>"u"&&i.length===0||e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={queries:e,total:i[0]};const o=t.queries,a=t.total,s="/organization/installations",r={};typeof o<"u"&&(r.queries=o),typeof a<"u"&&(r.total=a);const d=new URL(this.client.config.endpoint+s),c={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",d,c,r)}createInstallation(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={appId:e,authorizationDetails:i[0]};const o=t.appId,a=t.authorizationDetails;if(typeof o>"u")throw new h('Missing required parameter: "appId"');const s="/organization/installations",r={};typeof o<"u"&&(r.appId=o),typeof a<"u"&&(r.authorizationDetails=a);const d=new URL(this.client.config.endpoint+s),c={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",d,c,r)}getInstallation(e){let i;e&&typeof e=="object"&&!Array.isArray(e)?i=e||{}:i={installationId:e};const t=i.installationId;if(typeof t>"u")throw new h('Missing required parameter: "installationId"');const o="/organization/installations/{installationId}".replace("{installationId}",encodeURIComponent(String(t))),a={},s=new URL(this.client.config.endpoint+o),r={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",s,r,a)}updateInstallation(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={installationId:e,authorizationDetails:i[0]};const o=t.installationId,a=t.authorizationDetails;if(typeof o>"u")throw new h('Missing required parameter: "installationId"');const s="/organization/installations/{installationId}".replace("{installationId}",encodeURIComponent(String(o))),r={};typeof a<"u"&&(r.authorizationDetails=a);const d=new URL(this.client.config.endpoint+s),c={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("put",d,c,r)}deleteInstallation(e){let i;e&&typeof e=="object"&&!Array.isArray(e)?i=e||{}:i={installationId:e};const t=i.installationId;if(typeof t>"u")throw new h('Missing required parameter: "installationId"');const o="/organization/installations/{installationId}".replace("{installationId}",encodeURIComponent(String(t))),a={},s=new URL(this.client.config.endpoint+o),r={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("delete",s,r,a)}}class ho{constructor(e){this.client=e}list(e,...i){let t;typeof e>"u"&&i.length===0||e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={queries:e,total:i[0],ttl:i[1]};const o=t.queries,a=t.total,s=t.ttl,r="/presences",d={};typeof o<"u"&&(d.queries=o),typeof a<"u"&&(d.total=a),typeof s<"u"&&(d.ttl=s);const c=new URL(this.client.config.endpoint+r),p={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",c,p,d)}get(e){let i;e&&typeof e=="object"&&!Array.isArray(e)?i=e||{}:i={presenceId:e};const t=i.presenceId;if(typeof t>"u")throw new h('Missing required parameter: "presenceId"');const o="/presences/{presenceId}".replace("{presenceId}",encodeURIComponent(String(t))),a={},s=new URL(this.client.config.endpoint+o),r={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",s,r,a)}upsert(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={presenceId:e,status:i[0],permissions:i[1],expiresAt:i[2],metadata:i[3]};const o=t.presenceId,a=t.status,s=t.permissions,r=t.expiresAt,d=t.metadata;if(typeof o>"u")throw new h('Missing required parameter: "presenceId"');if(typeof a>"u")throw new h('Missing required parameter: "status"');const c="/presences/{presenceId}".replace("{presenceId}",encodeURIComponent(String(o))),p={};typeof a<"u"&&(p.status=a),typeof s<"u"&&(p.permissions=s),typeof r<"u"&&(p.expiresAt=r),typeof d<"u"&&(p.metadata=d);const u=new URL(this.client.config.endpoint+c),m={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("put",u,m,p)}update(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={presenceId:e,status:i[0],expiresAt:i[1],metadata:i[2],permissions:i[3],purge:i[4]};const o=t.presenceId,a=t.status,s=t.expiresAt,r=t.metadata,d=t.permissions,c=t.purge;if(typeof o>"u")throw new h('Missing required parameter: "presenceId"');const p="/presences/{presenceId}".replace("{presenceId}",encodeURIComponent(String(o))),u={};typeof a<"u"&&(u.status=a),typeof s<"u"&&(u.expiresAt=s),typeof r<"u"&&(u.metadata=r),typeof d<"u"&&(u.permissions=d),typeof c<"u"&&(u.purge=c);const m=new URL(this.client.config.endpoint+p),j={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("patch",m,j,u)}delete(e){let i;e&&typeof e=="object"&&!Array.isArray(e)?i=e||{}:i={presenceId:e};const t=i.presenceId;if(typeof t>"u")throw new h('Missing required parameter: "presenceId"');const o="/presences/{presenceId}".replace("{presenceId}",encodeURIComponent(String(t))),a={},s=new URL(this.client.config.endpoint+o),r={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json"};return this.client.call("delete",s,r,a)}}class fo{constructor(e){this.client=e}listFiles(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={bucketId:e,queries:i[0],search:i[1],total:i[2]};const o=t.bucketId,a=t.queries,s=t.search,r=t.total;if(typeof o>"u")throw new h('Missing required parameter: "bucketId"');const d="/storage/buckets/{bucketId}/files".replace("{bucketId}",encodeURIComponent(String(o))),c={};typeof a<"u"&&(c.queries=a),typeof s<"u"&&(c.search=s),typeof r<"u"&&(c.total=r);const p=new URL(this.client.config.endpoint+d),u={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",p,u,c)}createFile(e,...i){let t,o;e&&typeof e=="object"&&!Array.isArray(e)?(t=e||{},o=e?.onProgress):(t={bucketId:e,fileId:i[0],file:i[1],permissions:i[2],folder:i[3]},o=i[4]);const a=t.bucketId,s=t.fileId,r=t.file,d=t.permissions,c=t.folder;if(typeof a>"u")throw new h('Missing required parameter: "bucketId"');if(typeof s>"u")throw new h('Missing required parameter: "fileId"');if(typeof r>"u")throw new h('Missing required parameter: "file"');const p="/storage/buckets/{bucketId}/files".replace("{bucketId}",encodeURIComponent(String(a))),u={};typeof s<"u"&&(u.fileId=s),typeof r<"u"&&(u.file=r),typeof d<"u"&&(u.permissions=d),typeof c<"u"&&(u.folder=c);const m=new URL(this.client.config.endpoint+p),j={"X-Appwrite-Project":this.client.config.project,"content-type":"multipart/form-data",accept:"application/json"};return this.client.chunkedUpload("post",m,j,u,o)}getFile(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={bucketId:e,fileId:i[0]};const o=t.bucketId,a=t.fileId;if(typeof o>"u")throw new h('Missing required parameter: "bucketId"');if(typeof a>"u")throw new h('Missing required parameter: "fileId"');const s="/storage/buckets/{bucketId}/files/{fileId}".replace("{bucketId}",encodeURIComponent(String(o))).replace("{fileId}",encodeURIComponent(String(a))),r={},d=new URL(this.client.config.endpoint+s),c={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",d,c,r)}updateFile(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={bucketId:e,fileId:i[0],name:i[1],permissions:i[2]};const o=t.bucketId,a=t.fileId,s=t.name,r=t.permissions;if(typeof o>"u")throw new h('Missing required parameter: "bucketId"');if(typeof a>"u")throw new h('Missing required parameter: "fileId"');const d="/storage/buckets/{bucketId}/files/{fileId}".replace("{bucketId}",encodeURIComponent(String(o))).replace("{fileId}",encodeURIComponent(String(a))),c={};typeof s<"u"&&(c.name=s),typeof r<"u"&&(c.permissions=r);const p=new URL(this.client.config.endpoint+d),u={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("put",p,u,c)}deleteFile(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={bucketId:e,fileId:i[0]};const o=t.bucketId,a=t.fileId;if(typeof o>"u")throw new h('Missing required parameter: "bucketId"');if(typeof a>"u")throw new h('Missing required parameter: "fileId"');const s="/storage/buckets/{bucketId}/files/{fileId}".replace("{bucketId}",encodeURIComponent(String(o))).replace("{fileId}",encodeURIComponent(String(a))),r={},d=new URL(this.client.config.endpoint+s),c={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json"};return this.client.call("delete",d,c,r)}getFileDownload(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={bucketId:e,fileId:i[0],token:i[1]};const o=t.bucketId,a=t.fileId,s=t.token;if(typeof o>"u")throw new h('Missing required parameter: "bucketId"');if(typeof a>"u")throw new h('Missing required parameter: "fileId"');const r="/storage/buckets/{bucketId}/files/{fileId}/download".replace("{bucketId}",encodeURIComponent(String(o))).replace("{fileId}",encodeURIComponent(String(a))),d={};typeof s<"u"&&(d.token=s);const c=new URL(this.client.config.endpoint+r);d.project=this.client.config.project,d.impersonateuserid=this.client.config.impersonateuserid;for(const[p,u]of Object.entries(ge.flatten(d)))c.searchParams.append(p,u);return c.toString()}getFilePreview(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={bucketId:e,fileId:i[0],width:i[1],height:i[2],gravity:i[3],quality:i[4],borderWidth:i[5],borderColor:i[6],borderRadius:i[7],opacity:i[8],rotation:i[9],background:i[10],output:i[11],token:i[12]};const o=t.bucketId,a=t.fileId,s=t.width,r=t.height,d=t.gravity,c=t.quality,p=t.borderWidth,u=t.borderColor,m=t.borderRadius,j=t.opacity,q=t.rotation,T=t.background,K=t.output,Y=t.token;if(typeof o>"u")throw new h('Missing required parameter: "bucketId"');if(typeof a>"u")throw new h('Missing required parameter: "fileId"');const L="/storage/buckets/{bucketId}/files/{fileId}/preview".replace("{bucketId}",encodeURIComponent(String(o))).replace("{fileId}",encodeURIComponent(String(a))),H={};typeof s<"u"&&(H.width=s),typeof r<"u"&&(H.height=r),typeof d<"u"&&(H.gravity=d),typeof c<"u"&&(H.quality=c),typeof p<"u"&&(H.borderWidth=p),typeof u<"u"&&(H.borderColor=u),typeof m<"u"&&(H.borderRadius=m),typeof j<"u"&&(H.opacity=j),typeof q<"u"&&(H.rotation=q),typeof T<"u"&&(H.background=T),typeof K<"u"&&(H.output=K),typeof Y<"u"&&(H.token=Y);const Z=new URL(this.client.config.endpoint+L);H.project=this.client.config.project,H.impersonateuserid=this.client.config.impersonateuserid;for(const[se,D]of Object.entries(ge.flatten(H)))Z.searchParams.append(se,D);return Z.toString()}getFileView(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={bucketId:e,fileId:i[0],token:i[1]};const o=t.bucketId,a=t.fileId,s=t.token;if(typeof o>"u")throw new h('Missing required parameter: "bucketId"');if(typeof a>"u")throw new h('Missing required parameter: "fileId"');const r="/storage/buckets/{bucketId}/files/{fileId}/view".replace("{bucketId}",encodeURIComponent(String(o))).replace("{fileId}",encodeURIComponent(String(a))),d={};typeof s<"u"&&(d.token=s);const c=new URL(this.client.config.endpoint+r);d.project=this.client.config.project,d.impersonateuserid=this.client.config.impersonateuserid;for(const[p,u]of Object.entries(ge.flatten(d)))c.searchParams.append(p,u);return c.toString()}}class go{constructor(e){this.client=e}listTransactions(e){let i;typeof e>"u"||e&&typeof e=="object"&&!Array.isArray(e)?i=e||{}:i={queries:e};const t=i.queries,o="/tablesdb/transactions",a={};typeof t<"u"&&(a.queries=t);const s=new URL(this.client.config.endpoint+o),r={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",s,r,a)}createTransaction(e){let i;typeof e>"u"||e&&typeof e=="object"&&!Array.isArray(e)?i=e||{}:i={ttl:e};const t=i.ttl,o="/tablesdb/transactions",a={};typeof t<"u"&&(a.ttl=t);const s=new URL(this.client.config.endpoint+o),r={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",s,r,a)}getTransaction(e){let i;e&&typeof e=="object"&&!Array.isArray(e)?i=e||{}:i={transactionId:e};const t=i.transactionId;if(typeof t>"u")throw new h('Missing required parameter: "transactionId"');const o="/tablesdb/transactions/{transactionId}".replace("{transactionId}",encodeURIComponent(String(t))),a={},s=new URL(this.client.config.endpoint+o),r={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",s,r,a)}updateTransaction(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={transactionId:e,commit:i[0],rollback:i[1]};const o=t.transactionId,a=t.commit,s=t.rollback;if(typeof o>"u")throw new h('Missing required parameter: "transactionId"');const r="/tablesdb/transactions/{transactionId}".replace("{transactionId}",encodeURIComponent(String(o))),d={};typeof a<"u"&&(d.commit=a),typeof s<"u"&&(d.rollback=s);const c=new URL(this.client.config.endpoint+r),p={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("patch",c,p,d)}deleteTransaction(e){let i;e&&typeof e=="object"&&!Array.isArray(e)?i=e||{}:i={transactionId:e};const t=i.transactionId;if(typeof t>"u")throw new h('Missing required parameter: "transactionId"');const o="/tablesdb/transactions/{transactionId}".replace("{transactionId}",encodeURIComponent(String(t))),a={},s=new URL(this.client.config.endpoint+o),r={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json"};return this.client.call("delete",s,r,a)}createOperations(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={transactionId:e,operations:i[0]};const o=t.transactionId,a=t.operations;if(typeof o>"u")throw new h('Missing required parameter: "transactionId"');const s="/tablesdb/transactions/{transactionId}/operations".replace("{transactionId}",encodeURIComponent(String(o))),r={};typeof a<"u"&&(r.operations=a);const d=new URL(this.client.config.endpoint+s),c={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",d,c,r)}listRows(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={databaseId:e,tableId:i[0],queries:i[1],transactionId:i[2],total:i[3],ttl:i[4]};const o=t.databaseId,a=t.tableId,s=t.queries,r=t.transactionId,d=t.total,c=t.ttl;if(typeof o>"u")throw new h('Missing required parameter: "databaseId"');if(typeof a>"u")throw new h('Missing required parameter: "tableId"');const p="/tablesdb/{databaseId}/tables/{tableId}/rows".replace("{databaseId}",encodeURIComponent(String(o))).replace("{tableId}",encodeURIComponent(String(a))),u={};typeof s<"u"&&(u.queries=s),typeof r<"u"&&(u.transactionId=r),typeof d<"u"&&(u.total=d),typeof c<"u"&&(u.ttl=c);const m=new URL(this.client.config.endpoint+p),j={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",m,j,u)}createRow(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={databaseId:e,tableId:i[0],rowId:i[1],data:i[2],permissions:i[3],transactionId:i[4]};const o=t.databaseId,a=t.tableId,s=t.rowId,r=t.data,d=t.permissions,c=t.transactionId;if(typeof o>"u")throw new h('Missing required parameter: "databaseId"');if(typeof a>"u")throw new h('Missing required parameter: "tableId"');if(typeof s>"u")throw new h('Missing required parameter: "rowId"');if(typeof r>"u")throw new h('Missing required parameter: "data"');const p="/tablesdb/{databaseId}/tables/{tableId}/rows".replace("{databaseId}",encodeURIComponent(String(o))).replace("{tableId}",encodeURIComponent(String(a))),u={};typeof s<"u"&&(u.rowId=s),typeof r<"u"&&(u.data=r),typeof d<"u"&&(u.permissions=d),typeof c<"u"&&(u.transactionId=c);const m=new URL(this.client.config.endpoint+p),j={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",m,j,u)}getRow(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={databaseId:e,tableId:i[0],rowId:i[1],queries:i[2],transactionId:i[3]};const o=t.databaseId,a=t.tableId,s=t.rowId,r=t.queries,d=t.transactionId;if(typeof o>"u")throw new h('Missing required parameter: "databaseId"');if(typeof a>"u")throw new h('Missing required parameter: "tableId"');if(typeof s>"u")throw new h('Missing required parameter: "rowId"');const c="/tablesdb/{databaseId}/tables/{tableId}/rows/{rowId}".replace("{databaseId}",encodeURIComponent(String(o))).replace("{tableId}",encodeURIComponent(String(a))).replace("{rowId}",encodeURIComponent(String(s))),p={};typeof r<"u"&&(p.queries=r),typeof d<"u"&&(p.transactionId=d);const u=new URL(this.client.config.endpoint+c),m={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",u,m,p)}upsertRow(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={databaseId:e,tableId:i[0],rowId:i[1],data:i[2],permissions:i[3],transactionId:i[4]};const o=t.databaseId,a=t.tableId,s=t.rowId,r=t.data,d=t.permissions,c=t.transactionId;if(typeof o>"u")throw new h('Missing required parameter: "databaseId"');if(typeof a>"u")throw new h('Missing required parameter: "tableId"');if(typeof s>"u")throw new h('Missing required parameter: "rowId"');const p="/tablesdb/{databaseId}/tables/{tableId}/rows/{rowId}".replace("{databaseId}",encodeURIComponent(String(o))).replace("{tableId}",encodeURIComponent(String(a))).replace("{rowId}",encodeURIComponent(String(s))),u={};typeof r<"u"&&(u.data=r),typeof d<"u"&&(u.permissions=d),typeof c<"u"&&(u.transactionId=c);const m=new URL(this.client.config.endpoint+p),j={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("put",m,j,u)}updateRow(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={databaseId:e,tableId:i[0],rowId:i[1],data:i[2],permissions:i[3],transactionId:i[4]};const o=t.databaseId,a=t.tableId,s=t.rowId,r=t.data,d=t.permissions,c=t.transactionId;if(typeof o>"u")throw new h('Missing required parameter: "databaseId"');if(typeof a>"u")throw new h('Missing required parameter: "tableId"');if(typeof s>"u")throw new h('Missing required parameter: "rowId"');const p="/tablesdb/{databaseId}/tables/{tableId}/rows/{rowId}".replace("{databaseId}",encodeURIComponent(String(o))).replace("{tableId}",encodeURIComponent(String(a))).replace("{rowId}",encodeURIComponent(String(s))),u={};typeof r<"u"&&(u.data=r),typeof d<"u"&&(u.permissions=d),typeof c<"u"&&(u.transactionId=c);const m=new URL(this.client.config.endpoint+p),j={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("patch",m,j,u)}deleteRow(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={databaseId:e,tableId:i[0],rowId:i[1],transactionId:i[2]};const o=t.databaseId,a=t.tableId,s=t.rowId,r=t.transactionId;if(typeof o>"u")throw new h('Missing required parameter: "databaseId"');if(typeof a>"u")throw new h('Missing required parameter: "tableId"');if(typeof s>"u")throw new h('Missing required parameter: "rowId"');const d="/tablesdb/{databaseId}/tables/{tableId}/rows/{rowId}".replace("{databaseId}",encodeURIComponent(String(o))).replace("{tableId}",encodeURIComponent(String(a))).replace("{rowId}",encodeURIComponent(String(s))),c={};typeof r<"u"&&(c.transactionId=r);const p=new URL(this.client.config.endpoint+d),u={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json"};return this.client.call("delete",p,u,c)}decrementRowColumn(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={databaseId:e,tableId:i[0],rowId:i[1],column:i[2],value:i[3],min:i[4],transactionId:i[5]};const o=t.databaseId,a=t.tableId,s=t.rowId,r=t.column,d=t.value,c=t.min,p=t.transactionId;if(typeof o>"u")throw new h('Missing required parameter: "databaseId"');if(typeof a>"u")throw new h('Missing required parameter: "tableId"');if(typeof s>"u")throw new h('Missing required parameter: "rowId"');if(typeof r>"u")throw new h('Missing required parameter: "column"');const u="/tablesdb/{databaseId}/tables/{tableId}/rows/{rowId}/{column}/decrement".replace("{databaseId}",encodeURIComponent(String(o))).replace("{tableId}",encodeURIComponent(String(a))).replace("{rowId}",encodeURIComponent(String(s))).replace("{column}",encodeURIComponent(String(r))),m={};typeof d<"u"&&(m.value=d),typeof c<"u"&&(m.min=c),typeof p<"u"&&(m.transactionId=p);const j=new URL(this.client.config.endpoint+u),q={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("patch",j,q,m)}incrementRowColumn(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={databaseId:e,tableId:i[0],rowId:i[1],column:i[2],value:i[3],max:i[4],transactionId:i[5]};const o=t.databaseId,a=t.tableId,s=t.rowId,r=t.column,d=t.value,c=t.max,p=t.transactionId;if(typeof o>"u")throw new h('Missing required parameter: "databaseId"');if(typeof a>"u")throw new h('Missing required parameter: "tableId"');if(typeof s>"u")throw new h('Missing required parameter: "rowId"');if(typeof r>"u")throw new h('Missing required parameter: "column"');const u="/tablesdb/{databaseId}/tables/{tableId}/rows/{rowId}/{column}/increment".replace("{databaseId}",encodeURIComponent(String(o))).replace("{tableId}",encodeURIComponent(String(a))).replace("{rowId}",encodeURIComponent(String(s))).replace("{column}",encodeURIComponent(String(r))),m={};typeof d<"u"&&(m.value=d),typeof c<"u"&&(m.max=c),typeof p<"u"&&(m.transactionId=p);const j=new URL(this.client.config.endpoint+u),q={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("patch",j,q,m)}}class Ki{constructor(e){this.client=e}list(e,...i){let t;typeof e>"u"&&i.length===0||e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={queries:e,search:i[0],total:i[1]};const o=t.queries,a=t.search,s=t.total,r="/teams",d={};typeof o<"u"&&(d.queries=o),typeof a<"u"&&(d.search=a),typeof s<"u"&&(d.total=s);const c=new URL(this.client.config.endpoint+r),p={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",c,p,d)}create(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={teamId:e,name:i[0],roles:i[1]};const o=t.teamId,a=t.name,s=t.roles;if(typeof o>"u")throw new h('Missing required parameter: "teamId"');if(typeof a>"u")throw new h('Missing required parameter: "name"');const r="/teams",d={};typeof o<"u"&&(d.teamId=o),typeof a<"u"&&(d.name=a),typeof s<"u"&&(d.roles=s);const c=new URL(this.client.config.endpoint+r),p={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",c,p,d)}get(e){let i;e&&typeof e=="object"&&!Array.isArray(e)?i=e||{}:i={teamId:e};const t=i.teamId;if(typeof t>"u")throw new h('Missing required parameter: "teamId"');const o="/teams/{teamId}".replace("{teamId}",encodeURIComponent(String(t))),a={},s=new URL(this.client.config.endpoint+o),r={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",s,r,a)}updateName(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={teamId:e,name:i[0]};const o=t.teamId,a=t.name;if(typeof o>"u")throw new h('Missing required parameter: "teamId"');if(typeof a>"u")throw new h('Missing required parameter: "name"');const s="/teams/{teamId}".replace("{teamId}",encodeURIComponent(String(o))),r={};typeof a<"u"&&(r.name=a);const d=new URL(this.client.config.endpoint+s),c={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("put",d,c,r)}delete(e){let i;e&&typeof e=="object"&&!Array.isArray(e)?i=e||{}:i={teamId:e};const t=i.teamId;if(typeof t>"u")throw new h('Missing required parameter: "teamId"');const o="/teams/{teamId}".replace("{teamId}",encodeURIComponent(String(t))),a={},s=new URL(this.client.config.endpoint+o),r={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json"};return this.client.call("delete",s,r,a)}listInstallations(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={teamId:e,queries:i[0],total:i[1]};const o=t.teamId,a=t.queries,s=t.total;if(typeof o>"u")throw new h('Missing required parameter: "teamId"');const r="/teams/{teamId}/installations".replace("{teamId}",encodeURIComponent(String(o))),d={};typeof a<"u"&&(d.queries=a),typeof s<"u"&&(d.total=s);const c=new URL(this.client.config.endpoint+r),p={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",c,p,d)}createInstallation(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={teamId:e,appId:i[0],authorizationDetails:i[1]};const o=t.teamId,a=t.appId,s=t.authorizationDetails;if(typeof o>"u")throw new h('Missing required parameter: "teamId"');if(typeof a>"u")throw new h('Missing required parameter: "appId"');const r="/teams/{teamId}/installations".replace("{teamId}",encodeURIComponent(String(o))),d={};typeof a<"u"&&(d.appId=a),typeof s<"u"&&(d.authorizationDetails=s);const c=new URL(this.client.config.endpoint+r),p={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",c,p,d)}getInstallation(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={teamId:e,installationId:i[0]};const o=t.teamId,a=t.installationId;if(typeof o>"u")throw new h('Missing required parameter: "teamId"');if(typeof a>"u")throw new h('Missing required parameter: "installationId"');const s="/teams/{teamId}/installations/{installationId}".replace("{teamId}",encodeURIComponent(String(o))).replace("{installationId}",encodeURIComponent(String(a))),r={},d=new URL(this.client.config.endpoint+s),c={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",d,c,r)}updateInstallation(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={teamId:e,installationId:i[0],authorizationDetails:i[1]};const o=t.teamId,a=t.installationId,s=t.authorizationDetails;if(typeof o>"u")throw new h('Missing required parameter: "teamId"');if(typeof a>"u")throw new h('Missing required parameter: "installationId"');const r="/teams/{teamId}/installations/{installationId}".replace("{teamId}",encodeURIComponent(String(o))).replace("{installationId}",encodeURIComponent(String(a))),d={};typeof s<"u"&&(d.authorizationDetails=s);const c=new URL(this.client.config.endpoint+r),p={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("put",c,p,d)}deleteInstallation(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={teamId:e,installationId:i[0]};const o=t.teamId,a=t.installationId;if(typeof o>"u")throw new h('Missing required parameter: "teamId"');if(typeof a>"u")throw new h('Missing required parameter: "installationId"');const s="/teams/{teamId}/installations/{installationId}".replace("{teamId}",encodeURIComponent(String(o))).replace("{installationId}",encodeURIComponent(String(a))),r={},d=new URL(this.client.config.endpoint+s),c={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("delete",d,c,r)}listMemberships(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={teamId:e,queries:i[0],search:i[1],total:i[2]};const o=t.teamId,a=t.queries,s=t.search,r=t.total;if(typeof o>"u")throw new h('Missing required parameter: "teamId"');const d="/teams/{teamId}/memberships".replace("{teamId}",encodeURIComponent(String(o))),c={};typeof a<"u"&&(c.queries=a),typeof s<"u"&&(c.search=s),typeof r<"u"&&(c.total=r);const p=new URL(this.client.config.endpoint+d),u={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",p,u,c)}createMembership(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={teamId:e,roles:i[0],email:i[1],userId:i[2],phone:i[3],url:i[4],name:i[5]};const o=t.teamId,a=t.roles,s=t.email,r=t.userId,d=t.phone,c=t.url,p=t.name;if(typeof o>"u")throw new h('Missing required parameter: "teamId"');if(typeof a>"u")throw new h('Missing required parameter: "roles"');const u="/teams/{teamId}/memberships".replace("{teamId}",encodeURIComponent(String(o))),m={};typeof s<"u"&&(m.email=s),typeof r<"u"&&(m.userId=r),typeof d<"u"&&(m.phone=d),typeof a<"u"&&(m.roles=a),typeof c<"u"&&(m.url=c),typeof p<"u"&&(m.name=p);const j=new URL(this.client.config.endpoint+u),q={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",j,q,m)}getMembership(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={teamId:e,membershipId:i[0]};const o=t.teamId,a=t.membershipId;if(typeof o>"u")throw new h('Missing required parameter: "teamId"');if(typeof a>"u")throw new h('Missing required parameter: "membershipId"');const s="/teams/{teamId}/memberships/{membershipId}".replace("{teamId}",encodeURIComponent(String(o))).replace("{membershipId}",encodeURIComponent(String(a))),r={},d=new URL(this.client.config.endpoint+s),c={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",d,c,r)}updateMembership(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={teamId:e,membershipId:i[0],roles:i[1]};const o=t.teamId,a=t.membershipId,s=t.roles;if(typeof o>"u")throw new h('Missing required parameter: "teamId"');if(typeof a>"u")throw new h('Missing required parameter: "membershipId"');if(typeof s>"u")throw new h('Missing required parameter: "roles"');const r="/teams/{teamId}/memberships/{membershipId}".replace("{teamId}",encodeURIComponent(String(o))).replace("{membershipId}",encodeURIComponent(String(a))),d={};typeof s<"u"&&(d.roles=s);const c=new URL(this.client.config.endpoint+r),p={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("patch",c,p,d)}deleteMembership(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={teamId:e,membershipId:i[0]};const o=t.teamId,a=t.membershipId;if(typeof o>"u")throw new h('Missing required parameter: "teamId"');if(typeof a>"u")throw new h('Missing required parameter: "membershipId"');const s="/teams/{teamId}/memberships/{membershipId}".replace("{teamId}",encodeURIComponent(String(o))).replace("{membershipId}",encodeURIComponent(String(a))),r={},d=new URL(this.client.config.endpoint+s),c={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json"};return this.client.call("delete",d,c,r)}updateMembershipStatus(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={teamId:e,membershipId:i[0],userId:i[1],secret:i[2]};const o=t.teamId,a=t.membershipId,s=t.userId,r=t.secret;if(typeof o>"u")throw new h('Missing required parameter: "teamId"');if(typeof a>"u")throw new h('Missing required parameter: "membershipId"');if(typeof s>"u")throw new h('Missing required parameter: "userId"');if(typeof r>"u")throw new h('Missing required parameter: "secret"');const d="/teams/{teamId}/memberships/{membershipId}/status".replace("{teamId}",encodeURIComponent(String(o))).replace("{membershipId}",encodeURIComponent(String(a))),c={};typeof s<"u"&&(c.userId=s),typeof r<"u"&&(c.secret=r);const p=new URL(this.client.config.endpoint+d),u={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("patch",p,u,c)}getPrefs(e){let i;e&&typeof e=="object"&&!Array.isArray(e)?i=e||{}:i={teamId:e};const t=i.teamId;if(typeof t>"u")throw new h('Missing required parameter: "teamId"');const o="/teams/{teamId}/prefs".replace("{teamId}",encodeURIComponent(String(t))),a={},s=new URL(this.client.config.endpoint+o),r={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",s,r,a)}updatePrefs(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={teamId:e,prefs:i[0]};const o=t.teamId,a=t.prefs;if(typeof o>"u")throw new h('Missing required parameter: "teamId"');if(typeof a>"u")throw new h('Missing required parameter: "prefs"');const s="/teams/{teamId}/prefs".replace("{teamId}",encodeURIComponent(String(o))),r={};typeof a<"u"&&(r.prefs=a);const d=new URL(this.client.config.endpoint+s),c={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("put",d,c,r)}}class yo{constructor(e){this.client=e}listTransactions(e){let i;typeof e>"u"||e&&typeof e=="object"&&!Array.isArray(e)?i=e||{}:i={queries:e};const t=i.queries,o="/vectorsdb/transactions",a={};typeof t<"u"&&(a.queries=t);const s=new URL(this.client.config.endpoint+o),r={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",s,r,a)}createTransaction(e){let i;typeof e>"u"||e&&typeof e=="object"&&!Array.isArray(e)?i=e||{}:i={ttl:e};const t=i.ttl,o="/vectorsdb/transactions",a={};typeof t<"u"&&(a.ttl=t);const s=new URL(this.client.config.endpoint+o),r={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",s,r,a)}getTransaction(e){let i;e&&typeof e=="object"&&!Array.isArray(e)?i=e||{}:i={transactionId:e};const t=i.transactionId;if(typeof t>"u")throw new h('Missing required parameter: "transactionId"');const o="/vectorsdb/transactions/{transactionId}".replace("{transactionId}",encodeURIComponent(String(t))),a={},s=new URL(this.client.config.endpoint+o),r={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",s,r,a)}updateTransaction(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={transactionId:e,commit:i[0],rollback:i[1]};const o=t.transactionId,a=t.commit,s=t.rollback;if(typeof o>"u")throw new h('Missing required parameter: "transactionId"');const r="/vectorsdb/transactions/{transactionId}".replace("{transactionId}",encodeURIComponent(String(o))),d={};typeof a<"u"&&(d.commit=a),typeof s<"u"&&(d.rollback=s);const c=new URL(this.client.config.endpoint+r),p={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("patch",c,p,d)}deleteTransaction(e){let i;e&&typeof e=="object"&&!Array.isArray(e)?i=e||{}:i={transactionId:e};const t=i.transactionId;if(typeof t>"u")throw new h('Missing required parameter: "transactionId"');const o="/vectorsdb/transactions/{transactionId}".replace("{transactionId}",encodeURIComponent(String(t))),a={},s=new URL(this.client.config.endpoint+o),r={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json"};return this.client.call("delete",s,r,a)}createOperations(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={transactionId:e,operations:i[0]};const o=t.transactionId,a=t.operations;if(typeof o>"u")throw new h('Missing required parameter: "transactionId"');const s="/vectorsdb/transactions/{transactionId}/operations".replace("{transactionId}",encodeURIComponent(String(o))),r={};typeof a<"u"&&(r.operations=a);const d=new URL(this.client.config.endpoint+s),c={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",d,c,r)}listDocuments(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={databaseId:e,collectionId:i[0],queries:i[1],transactionId:i[2],total:i[3],ttl:i[4]};const o=t.databaseId,a=t.collectionId,s=t.queries,r=t.transactionId,d=t.total,c=t.ttl;if(typeof o>"u")throw new h('Missing required parameter: "databaseId"');if(typeof a>"u")throw new h('Missing required parameter: "collectionId"');const p="/vectorsdb/{databaseId}/collections/{collectionId}/documents".replace("{databaseId}",encodeURIComponent(String(o))).replace("{collectionId}",encodeURIComponent(String(a))),u={};typeof s<"u"&&(u.queries=s),typeof r<"u"&&(u.transactionId=r),typeof d<"u"&&(u.total=d),typeof c<"u"&&(u.ttl=c);const m=new URL(this.client.config.endpoint+p),j={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",m,j,u)}createDocument(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={databaseId:e,collectionId:i[0],documentId:i[1],data:i[2],permissions:i[3],transactionId:i[4]};const o=t.databaseId,a=t.collectionId,s=t.documentId,r=t.data,d=t.permissions,c=t.transactionId;if(typeof o>"u")throw new h('Missing required parameter: "databaseId"');if(typeof a>"u")throw new h('Missing required parameter: "collectionId"');if(typeof s>"u")throw new h('Missing required parameter: "documentId"');if(typeof r>"u")throw new h('Missing required parameter: "data"');const p="/vectorsdb/{databaseId}/collections/{collectionId}/documents".replace("{databaseId}",encodeURIComponent(String(o))).replace("{collectionId}",encodeURIComponent(String(a))),u={};typeof s<"u"&&(u.documentId=s),typeof r<"u"&&(u.data=r),typeof d<"u"&&(u.permissions=d),typeof c<"u"&&(u.transactionId=c);const m=new URL(this.client.config.endpoint+p),j={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",m,j,u)}createQuery(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={databaseId:e,collectionId:i[0],queries:i[1],transactionId:i[2],total:i[3],ttl:i[4]};const o=t.databaseId,a=t.collectionId,s=t.queries,r=t.transactionId,d=t.total,c=t.ttl;if(typeof o>"u")throw new h('Missing required parameter: "databaseId"');if(typeof a>"u")throw new h('Missing required parameter: "collectionId"');const p="/vectorsdb/{databaseId}/collections/{collectionId}/documents/query".replace("{databaseId}",encodeURIComponent(String(o))).replace("{collectionId}",encodeURIComponent(String(a))),u={};typeof s<"u"&&(u.queries=s),typeof r<"u"&&(u.transactionId=r),typeof d<"u"&&(u.total=d),typeof c<"u"&&(u.ttl=c);const m=new URL(this.client.config.endpoint+p),j={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",m,j,u)}getDocument(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={databaseId:e,collectionId:i[0],documentId:i[1],queries:i[2],transactionId:i[3]};const o=t.databaseId,a=t.collectionId,s=t.documentId,r=t.queries,d=t.transactionId;if(typeof o>"u")throw new h('Missing required parameter: "databaseId"');if(typeof a>"u")throw new h('Missing required parameter: "collectionId"');if(typeof s>"u")throw new h('Missing required parameter: "documentId"');const c="/vectorsdb/{databaseId}/collections/{collectionId}/documents/{documentId}".replace("{databaseId}",encodeURIComponent(String(o))).replace("{collectionId}",encodeURIComponent(String(a))).replace("{documentId}",encodeURIComponent(String(s))),p={};typeof r<"u"&&(p.queries=r),typeof d<"u"&&(p.transactionId=d);const u=new URL(this.client.config.endpoint+c),m={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",u,m,p)}upsertDocument(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={databaseId:e,collectionId:i[0],documentId:i[1],data:i[2],permissions:i[3],transactionId:i[4]};const o=t.databaseId,a=t.collectionId,s=t.documentId,r=t.data,d=t.permissions,c=t.transactionId;if(typeof o>"u")throw new h('Missing required parameter: "databaseId"');if(typeof a>"u")throw new h('Missing required parameter: "collectionId"');if(typeof s>"u")throw new h('Missing required parameter: "documentId"');const p="/vectorsdb/{databaseId}/collections/{collectionId}/documents/{documentId}".replace("{databaseId}",encodeURIComponent(String(o))).replace("{collectionId}",encodeURIComponent(String(a))).replace("{documentId}",encodeURIComponent(String(s))),u={};typeof r<"u"&&(u.data=r),typeof d<"u"&&(u.permissions=d),typeof c<"u"&&(u.transactionId=c);const m=new URL(this.client.config.endpoint+p),j={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("put",m,j,u)}updateDocument(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={databaseId:e,collectionId:i[0],documentId:i[1],data:i[2],permissions:i[3],transactionId:i[4]};const o=t.databaseId,a=t.collectionId,s=t.documentId,r=t.data,d=t.permissions,c=t.transactionId;if(typeof o>"u")throw new h('Missing required parameter: "databaseId"');if(typeof a>"u")throw new h('Missing required parameter: "collectionId"');if(typeof s>"u")throw new h('Missing required parameter: "documentId"');const p="/vectorsdb/{databaseId}/collections/{collectionId}/documents/{documentId}".replace("{databaseId}",encodeURIComponent(String(o))).replace("{collectionId}",encodeURIComponent(String(a))).replace("{documentId}",encodeURIComponent(String(s))),u={};typeof r<"u"&&(u.data=r),typeof d<"u"&&(u.permissions=d),typeof c<"u"&&(u.transactionId=c);const m=new URL(this.client.config.endpoint+p),j={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("patch",m,j,u)}deleteDocument(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={databaseId:e,collectionId:i[0],documentId:i[1],transactionId:i[2]};const o=t.databaseId,a=t.collectionId,s=t.documentId,r=t.transactionId;if(typeof o>"u")throw new h('Missing required parameter: "databaseId"');if(typeof a>"u")throw new h('Missing required parameter: "collectionId"');if(typeof s>"u")throw new h('Missing required parameter: "documentId"');const d="/vectorsdb/{databaseId}/collections/{collectionId}/documents/{documentId}".replace("{databaseId}",encodeURIComponent(String(o))).replace("{collectionId}",encodeURIComponent(String(a))).replace("{documentId}",encodeURIComponent(String(s))),c={};typeof r<"u"&&(c.transactionId=r);const p=new URL(this.client.config.endpoint+d),u={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json"};return this.client.call("delete",p,u,c)}}var kt;(function(n){n[n.NORMAL_CLOSURE=1e3]="NORMAL_CLOSURE",n[n.POLICY_VIOLATION=1008]="POLICY_VIOLATION",n[n.UNKNOWN_ERROR=-1]="UNKNOWN_ERROR"})(kt||(kt={}));class mo{constructor(e){this.TYPE_ERROR="error",this.TYPE_EVENT="event",this.TYPE_PONG="pong",this.TYPE_CONNECTED="connected",this.DEBOUNCE_MS=1,this.HEARTBEAT_INTERVAL=2e4,this.activeSubscriptions=new Map,this.pendingSubscribes=new Map,this.appConnected=!1,this.subCallDepth=0,this.reconnectAttempts=0,this.connectionId=0,this.reconnect=!0,this.onErrorCallbacks=[],this.onCloseCallbacks=[],this.onOpenCallbacks=[],this.client=e}onError(e){this.onErrorCallbacks.push(e)}onClose(e){this.onCloseCallbacks.push(e)}onOpen(e){this.onOpenCallbacks.push(e)}startHeartbeat(){this.stopHeartbeat(),this.heartbeatTimer=window?.setInterval(()=>{this.socket&&this.socket.readyState===WebSocket.OPEN&&this.socket.send(ye.stringify({type:"ping"}))},this.HEARTBEAT_INTERVAL)}stopHeartbeat(){this.heartbeatTimer&&(window?.clearInterval(this.heartbeatTimer),this.heartbeatTimer=void 0)}createSocket(){return be(this,void 0,void 0,function*(){if(!(this.socket&&this.socket.readyState<WebSocket.CLOSING))return this.socketCreationPromise?this.socketCreationPromise:(this.socketCreationPromise=this.createSocketLocked().finally(()=>{this.socketCreationPromise=void 0}),this.socketCreationPromise)})}createSocketLocked(){return be(this,void 0,void 0,function*(){if(this.activeSubscriptions.size===0&&!this.pendingPresence){this.reconnect=!1,yield this.closeSocket();return}const e=this.client.config.project;if(!e)throw new h("Missing project ID");let i=`project=${e}`;const t=this.client.config.jwt;t&&(i+=`&jwt=${encodeURIComponent(t)}`);const s=`${(this.client.config.endpointRealtime!==""?this.client.config.endpointRealtime:this.client.config.endpoint||"").replace("https://","wss://").replace("http://","ws://")}/realtime?${i}`;return this.socket&&(this.reconnect=!1,this.socket.readyState<WebSocket.CLOSING&&(yield this.closeSocket()),this.reconnect=!0),new Promise((r,d)=>{if(this.activeSubscriptions.size===0&&!this.pendingPresence){r();return}try{const c=++this.connectionId,p=this.socket=new WebSocket(s);p.addEventListener("open",()=>{c===this.connectionId&&(this.reconnectAttempts=0,this.onOpenCallbacks.forEach(u=>u()),this.startHeartbeat(),r())}),p.addEventListener("message",u=>{if(c===this.connectionId)try{const m=ye.parse(u.data);this.handleMessage(m)}catch(m){console.error("Failed to parse message:",m)}}),p.addEventListener("close",u=>be(this,void 0,void 0,function*(){if(c!==this.connectionId||p!==this.socket)return;if(this.appConnected=!1,this.stopHeartbeat(),this.onCloseCallbacks.forEach(j=>j()),!this.reconnect||u.code===kt.POLICY_VIOLATION){this.reconnect=!0;return}const m=this.getTimeout();console.log(`Realtime disconnected. Re-connecting in ${m/1e3} seconds.`),yield this.sleep(m),this.reconnectAttempts++;try{yield this.createSocket()}catch(j){console.error("Failed to reconnect:",j)}})),p.addEventListener("error",u=>{if(c!==this.connectionId||p!==this.socket)return;this.stopHeartbeat();const m=new Error("WebSocket error");console.error("WebSocket error:",m.message),this.onErrorCallbacks.forEach(j=>j(m)),d(m)})}catch(c){d(c)}})})}closeSocket(){return be(this,void 0,void 0,function*(){if(this.stopHeartbeat(),this.socket)return new Promise(e=>{if(!this.socket){e();return}this.socket.readyState===WebSocket.OPEN||this.socket.readyState===WebSocket.CONNECTING?(this.socket.addEventListener("close",()=>{e()},{once:!0}),this.socket.close(kt.NORMAL_CLOSURE)):e()})})}getTimeout(){return this.reconnectAttempts<5?1e3:this.reconnectAttempts<15?5e3:this.reconnectAttempts<100?1e4:6e4}sleep(e){return new Promise(i=>setTimeout(i,e))}sendUnsubscribeMessage(e){const i=e.filter(t=>typeof t=="string"&&t.length>0);i.length!==0&&(!this.socket||this.socket.readyState!==WebSocket.OPEN||this.socket.send(ye.stringify({type:"unsubscribe",data:i.map(t=>({subscriptionId:t}))})))}generateUniqueSubscriptionId(){const e=this.activeSubscriptions.size+1;for(let i=0;i<e;i++){const t=He.unique();if(!this.activeSubscriptions.has(t))return t}throw new h("Failed to generate unique subscription id")}enqueuePendingSubscribe(e){var i;const t=this.activeSubscriptions.get(e);t&&this.pendingSubscribes.set(e,{subscriptionId:e,channels:Array.from(t.channels),queries:(i=t.queries)!==null&&i!==void 0?i:[]})}disconnect(){return be(this,void 0,void 0,function*(){this.activeSubscriptions.clear(),this.pendingSubscribes.clear(),this.pendingPresence=void 0,this.appConnected=!1,this.reconnect=!1,this.socketCreationPromise=void 0,yield this.closeSocket()})}sendPendingSubscribes(){if(!this.socket||this.socket.readyState!==WebSocket.OPEN||!this.appConnected||this.pendingSubscribes.size<1)return;const e=Array.from(this.pendingSubscribes.values());this.pendingSubscribes.clear(),this.socket.send(ye.stringify({type:"subscribe",data:e}))}channelToString(e){return typeof e=="string"?e:e&&typeof e.toString=="function"?e.toString():String(e)}subscribe(e,i){return be(this,arguments,void 0,function*(t,o,a=[]){const r=(Array.isArray(t)?t:[t]).map(q=>this.channelToString(q)),d=new Set(r),c=[];for(const q of a??[])if(Array.isArray(q))for(const T of q)c.push(typeof T=="string"?T:T.toString());else c.push(typeof q=="string"?q:q.toString());const p=this.generateUniqueSubscriptionId();this.activeSubscriptions.set(p,{channels:d,queries:c,callback:o}),this.enqueuePendingSubscribe(p),this.subCallDepth++;try{yield this.sleep(this.DEBOUNCE_MS),this.subCallDepth===1&&(!this.socket||this.socket.readyState>WebSocket.OPEN?yield this.createSocket():this.socket.readyState===WebSocket.OPEN&&this.sendPendingSubscribes())}finally{this.subCallDepth--}const u=()=>be(this,void 0,void 0,function*(){this.activeSubscriptions.has(p)&&(this.activeSubscriptions.delete(p),this.pendingSubscribes.delete(p),this.sendUnsubscribeMessage([p]))});return{unsubscribe:u,update:q=>be(this,void 0,void 0,function*(){const T=this.activeSubscriptions.get(p);if(T){if(q.channels!==void 0){const K=q.channels.map(Y=>this.channelToString(Y));T.channels=new Set(K)}if(q.queries!==void 0){const K=[];for(const Y of q.queries)if(Array.isArray(Y))for(const L of Y)K.push(typeof L=="string"?L:L.toString());else K.push(typeof Y=="string"?Y:Y.toString());T.queries=K}this.enqueuePendingSubscribe(p),this.subCallDepth++;try{yield this.sleep(this.DEBOUNCE_MS),this.subCallDepth===1&&(!this.socket||this.socket.readyState>WebSocket.OPEN?yield this.createSocket():this.socket.readyState===WebSocket.OPEN&&this.sendPendingSubscribes())}finally{this.subCallDepth--}}}),close:()=>be(this,void 0,void 0,function*(){yield u(),this.activeSubscriptions.size===0&&(this.reconnect=!1,yield this.closeSocket())})}})}upsertPresence(e){return be(this,void 0,void 0,function*(){const i={status:e.status,presenceId:e.presenceId};e.permissions!==void 0&&(i.permissions=e.permissions),e.metadata!==void 0&&(i.metadata=e.metadata),this.pendingPresence=i,(!this.socket||this.socket.readyState>=WebSocket.CLOSING)&&this.createSocket().catch(t=>{console.error("Failed to open realtime socket for presence:",t)}),this.flushPendingPresence()})}flushPendingPresence(){this.pendingPresence&&(!this.socket||this.socket.readyState!==WebSocket.OPEN||this.appConnected&&this.socket.send(ye.stringify({type:"presence",data:this.pendingPresence})))}handleMessage(e){if(e.type)switch(e.type){case this.TYPE_CONNECTED:this.handleResponseConnected(e);break;case this.TYPE_ERROR:this.handleResponseError(e);break;case this.TYPE_EVENT:this.handleResponseEvent(e);break;case this.TYPE_PONG:break}}handleResponseConnected(e){var i,t;if(!e.data)return;const o=e.data;let a=this.client.config.session;if(!a)try{const s=ye.parse((i=window.localStorage.getItem("cookieFallback"))!==null&&i!==void 0?i:"{}");a=s?.[`a_session_${this.client.config.project}`]}catch(s){console.error("Failed to parse cookie fallback:",s)}a&&!o.user&&((t=this.socket)===null||t===void 0||t.send(ye.stringify({type:"authentication",data:{session:a}})));for(const s of this.activeSubscriptions.keys())this.enqueuePendingSubscribe(s);this.appConnected=!0,this.sendPendingSubscribes(),this.flushPendingPresence()}handleResponseError(e){var i,t;const o=new h(((i=e.data)===null||i===void 0?void 0:i.message)||"Unknown error"),a=(t=e.data)===null||t===void 0?void 0:t.code;this.onErrorCallbacks.forEach(s=>s(o,a))}handleResponseEvent(e){const i=e.data;if(!i)return;const t=i.channels,o=i.events,a=i.payload,s=i.timestamp,r=i.subscriptions;if(!(!t||!o||!a||!r||r.length===0))for(const d of r){const c=this.activeSubscriptions.get(d);c&&c.callback({events:o,channels:t,timestamp:s,payload:a,subscriptions:r})}}}class Fe{}Fe.read=n=>`read("${n}")`,Fe.write=n=>`write("${n}")`,Fe.create=n=>`create("${n}")`,Fe.update=n=>`update("${n}")`,Fe.delete=n=>`delete("${n}")`;class wo{static any(){return"any"}static user(e,i=""){return i===""?`user:${e}`:`user:${e}/${i}`}static users(e=""){return e===""?"users":`users/${e}`}static guests(){return"guests"}static team(e,i=""){return i===""?`team:${e}`:`team:${e}/${i}`}static member(e){return`member:${e}`}static label(e){return`label:${e}`}}function Re(n){if(n==null)throw new Error("Channel ID is required");const e=String(n).trim();if(e==="")throw new Error("Channel ID is required");return e}class ke{constructor(e){this.segments=e}next(e,i){const t=i===void 0?[...this.segments,e]:[...this.segments,e,Re(i)];return new ke(t)}resolve(e){return new ke([...this.segments,e])}toString(){return this.segments.join(".")}collection(e){return this.next("collections",e)}document(e){return this.next("documents",e)}table(e){return this.next("tables",e)}row(e){return this.next("rows",e)}file(e){return this.next("files",e)}create(){return this.resolve("create")}upsert(){return this.resolve("upsert")}update(){return this.resolve("update")}delete(){return this.resolve("delete")}static database(e){return new ke(["databases",Re(e)])}static execution(e){return new ke(["executions",Re(e)])}static tablesdb(e){return new ke(["tablesdb",Re(e)])}static bucket(e){return new ke(["buckets",Re(e)])}static function(e){return new ke(["functions",Re(e)])}static team(e){return new ke(["teams",Re(e)])}static membership(e){return new ke(["memberships",Re(e)])}static presence(e){return new ke(["presences",Re(e)])}static account(){return"account"}static documents(){return"documents"}static rows(){return"rows"}static files(){return"files"}static executions(){return"executions"}static teams(){return"teams"}static memberships(){return"memberships"}static presences(){return"presences"}}var Wt;(function(n){n.Equal="equal",n.NotEqual="notEqual",n.GreaterThan="greaterThan",n.GreaterThanEqual="greaterThanEqual",n.LessThan="lessThan",n.LessThanEqual="lessThanEqual",n.Contains="contains",n.IsNull="isNull",n.IsNotNull="isNotNull"})(Wt||(Wt={}));class Q{constructor(e,i){this.method=e,i!==void 0&&(Array.isArray(i)?this.values=i:this.values=[i])}toString(){return JSON.stringify({method:this.method,values:this.values})}}Q.increment=(n=1,e)=>{if(isNaN(n)||!isFinite(n))throw new Error("Value cannot be NaN or Infinity");if(e!==void 0&&(isNaN(e)||!isFinite(e)))throw new Error("Max cannot be NaN or Infinity");const i=[n];return e!==void 0&&i.push(e),new Q("increment",i).toString()},Q.decrement=(n=1,e)=>{if(isNaN(n)||!isFinite(n))throw new Error("Value cannot be NaN or Infinity");if(e!==void 0&&(isNaN(e)||!isFinite(e)))throw new Error("Min cannot be NaN or Infinity");const i=[n];return e!==void 0&&i.push(e),new Q("decrement",i).toString()},Q.multiply=(n,e)=>{if(isNaN(n)||!isFinite(n))throw new Error("Factor cannot be NaN or Infinity");if(e!==void 0&&(isNaN(e)||!isFinite(e)))throw new Error("Max cannot be NaN or Infinity");const i=[n];return e!==void 0&&i.push(e),new Q("multiply",i).toString()},Q.divide=(n,e)=>{if(isNaN(n)||!isFinite(n))throw new Error("Divisor cannot be NaN or Infinity");if(e!==void 0&&(isNaN(e)||!isFinite(e)))throw new Error("Min cannot be NaN or Infinity");if(n===0)throw new Error("Divisor cannot be zero");const i=[n];return e!==void 0&&i.push(e),new Q("divide",i).toString()},Q.modulo=n=>{if(isNaN(n)||!isFinite(n))throw new Error("Divisor cannot be NaN or Infinity");if(n===0)throw new Error("Divisor cannot be zero");return new Q("modulo",[n]).toString()},Q.power=(n,e)=>{if(isNaN(n)||!isFinite(n))throw new Error("Exponent cannot be NaN or Infinity");if(e!==void 0&&(isNaN(e)||!isFinite(e)))throw new Error("Max cannot be NaN or Infinity");const i=[n];return e!==void 0&&i.push(e),new Q("power",i).toString()},Q.arrayAppend=n=>new Q("arrayAppend",n).toString(),Q.arrayPrepend=n=>new Q("arrayPrepend",n).toString(),Q.arrayInsert=(n,e)=>new Q("arrayInsert",[n,e]).toString(),Q.arrayRemove=n=>new Q("arrayRemove",[n]).toString(),Q.arrayUnique=()=>new Q("arrayUnique",[]).toString(),Q.arrayIntersect=n=>new Q("arrayIntersect",n).toString(),Q.arrayDiff=n=>new Q("arrayDiff",n).toString(),Q.arrayFilter=(n,e)=>{const i=[n,e===void 0?null:e];return new Q("arrayFilter",i).toString()},Q.stringConcat=n=>new Q("stringConcat",[n]).toString(),Q.stringReplace=(n,e)=>new Q("stringReplace",[n,e]).toString(),Q.toggle=()=>new Q("toggle",[]).toString(),Q.dateAddDays=n=>new Q("dateAddDays",[n]).toString(),Q.dateSubDays=n=>new Q("dateSubDays",[n]).toString(),Q.dateSetNow=()=>new Q("dateSetNow",[]).toString();var Gt;(function(n){n.Totp="totp"})(Gt||(Gt={}));var Kt;(function(n){n.Email="email",n.Phone="phone",n.Totp="totp",n.Recoverycode="recoverycode",n.Custom="custom"})(Kt||(Kt={}));var Yt;(function(n){n.Amazon="amazon",n.Apple="apple",n.Appwrite="appwrite",n.Auth0="auth0",n.Authentik="authentik",n.Autodesk="autodesk",n.Bitbucket="bitbucket",n.Bitly="bitly",n.Box="box",n.Cloudflare="cloudflare",n.Dailymotion="dailymotion",n.Discord="discord",n.Disqus="disqus",n.Dropbox="dropbox",n.Etsy="etsy",n.Facebook="facebook",n.Figma="figma",n.Fusionauth="fusionauth",n.Github="github",n.Gitlab="gitlab",n.Google="google",n.Huggingface="huggingface",n.Keycloak="keycloak",n.Kick="kick",n.Linkedin="linkedin",n.Microsoft="microsoft",n.Notion="notion",n.Oidc="oidc",n.Okta="okta",n.Paypal="paypal",n.PaypalSandbox="paypalSandbox",n.Podio="podio",n.Resend="resend",n.Salesforce="salesforce",n.Slack="slack",n.Spotify="spotify",n.Stripe="stripe",n.Tradeshift="tradeshift",n.TradeshiftBox="tradeshiftBox",n.Twitch="twitch",n.Wordpress="wordpress",n.X="x",n.Yahoo="yahoo",n.Yammer="yammer",n.Yandex="yandex",n.Zoho="zoho",n.Zoom="zoom"})(Yt||(Yt={}));var Jt;(function(n){n.AvantBrowser="aa",n.AndroidWebViewBeta="an",n.GoogleChrome="ch",n.GoogleChromeIOS="ci",n.GoogleChromeMobile="cm",n.Chromium="cr",n.MozillaFirefox="ff",n.Safari="sf",n.MobileSafari="mf",n.MicrosoftEdge="ps",n.MicrosoftEdgeIOS="oi",n.OperaMini="om",n.Opera="op",n.OperaNext="on"})(Jt||(Jt={}));var Zt;(function(n){n.AmericanExpress="amex",n.Argencard="argencard",n.Cabal="cabal",n.Cencosud="cencosud",n.DinersClub="diners",n.Discover="discover",n.Elo="elo",n.Hipercard="hipercard",n.JCB="jcb",n.Mastercard="mastercard",n.Naranja="naranja",n.TarjetaShopping="targeta-shopping",n.UnionPay="unionpay",n.Visa="visa",n.MIR="mir",n.Maestro="maestro",n.Rupay="rupay"})(Zt||(Zt={}));var Qt;(function(n){n.Afghanistan="af",n.Angola="ao",n.Albania="al",n.Andorra="ad",n.UnitedArabEmirates="ae",n.Argentina="ar",n.Armenia="am",n.AntiguaAndBarbuda="ag",n.Australia="au",n.Austria="at",n.Azerbaijan="az",n.Burundi="bi",n.Belgium="be",n.Benin="bj",n.BurkinaFaso="bf",n.Bangladesh="bd",n.Bulgaria="bg",n.Bahrain="bh",n.Bahamas="bs",n.BosniaAndHerzegovina="ba",n.Belarus="by",n.Belize="bz",n.Bolivia="bo",n.Brazil="br",n.Barbados="bb",n.BruneiDarussalam="bn",n.Bhutan="bt",n.Botswana="bw",n.CentralAfricanRepublic="cf",n.Canada="ca",n.Switzerland="ch",n.Chile="cl",n.China="cn",n.CoteDIvoire="ci",n.Cameroon="cm",n.DemocraticRepublicOfTheCongo="cd",n.RepublicOfTheCongo="cg",n.Colombia="co",n.Comoros="km",n.CapeVerde="cv",n.CostaRica="cr",n.Cuba="cu",n.Cyprus="cy",n.CzechRepublic="cz",n.Germany="de",n.Djibouti="dj",n.Dominica="dm",n.Denmark="dk",n.DominicanRepublic="do",n.Algeria="dz",n.Ecuador="ec",n.Egypt="eg",n.Eritrea="er",n.Spain="es",n.Estonia="ee",n.Ethiopia="et",n.Finland="fi",n.Fiji="fj",n.France="fr",n.MicronesiaFederatedStatesOf="fm",n.Gabon="ga",n.UnitedKingdom="gb",n.Georgia="ge",n.Ghana="gh",n.Guinea="gn",n.Gambia="gm",n.GuineaBissau="gw",n.EquatorialGuinea="gq",n.Greece="gr",n.Grenada="gd",n.Guatemala="gt",n.Guyana="gy",n.Honduras="hn",n.Croatia="hr",n.Haiti="ht",n.Hungary="hu",n.Indonesia="id",n.India="in",n.Ireland="ie",n.IranIslamicRepublicOf="ir",n.Iraq="iq",n.Iceland="is",n.Israel="il",n.Italy="it",n.Jamaica="jm",n.Jordan="jo",n.Japan="jp",n.Kazakhstan="kz",n.Kenya="ke",n.Kyrgyzstan="kg",n.Cambodia="kh",n.Kiribati="ki",n.SaintKittsAndNevis="kn",n.SouthKorea="kr",n.Kuwait="kw",n.LaoPeopleSDemocraticRepublic="la",n.Lebanon="lb",n.Liberia="lr",n.Libya="ly",n.SaintLucia="lc",n.Liechtenstein="li",n.SriLanka="lk",n.Lesotho="ls",n.Lithuania="lt",n.Luxembourg="lu",n.Latvia="lv",n.Morocco="ma",n.Monaco="mc",n.Moldova="md",n.Madagascar="mg",n.Maldives="mv",n.Mexico="mx",n.MarshallIslands="mh",n.NorthMacedonia="mk",n.Mali="ml",n.Malta="mt",n.Myanmar="mm",n.Montenegro="me",n.Mongolia="mn",n.Mozambique="mz",n.Mauritania="mr",n.Mauritius="mu",n.Malawi="mw",n.Malaysia="my",n.Namibia="na",n.Niger="ne",n.Nigeria="ng",n.Nicaragua="ni",n.Netherlands="nl",n.Norway="no",n.Nepal="np",n.Nauru="nr",n.NewZealand="nz",n.Oman="om",n.Pakistan="pk",n.Panama="pa",n.Peru="pe",n.Philippines="ph",n.Palau="pw",n.PapuaNewGuinea="pg",n.Poland="pl",n.FrenchPolynesia="pf",n.NorthKorea="kp",n.Portugal="pt",n.Paraguay="py",n.Qatar="qa",n.Romania="ro",n.Russia="ru",n.Rwanda="rw",n.SaudiArabia="sa",n.Sudan="sd",n.Senegal="sn",n.Singapore="sg",n.SolomonIslands="sb",n.SierraLeone="sl",n.ElSalvador="sv",n.SanMarino="sm",n.Somalia="so",n.Serbia="rs",n.SouthSudan="ss",n.SaoTomeAndPrincipe="st",n.Suriname="sr",n.Slovakia="sk",n.Slovenia="si",n.Sweden="se",n.Eswatini="sz",n.Seychelles="sc",n.Syria="sy",n.Chad="td",n.Togo="tg",n.Thailand="th",n.Tajikistan="tj",n.Turkmenistan="tm",n.TimorLeste="tl",n.Tonga="to",n.TrinidadAndTobago="tt",n.Tunisia="tn",n.Turkey="tr",n.Tuvalu="tv",n.Tanzania="tz",n.Uganda="ug",n.Ukraine="ua",n.Uruguay="uy",n.UnitedStates="us",n.Uzbekistan="uz",n.VaticanCity="va",n.SaintVincentAndTheGrenadines="vc",n.Venezuela="ve",n.Vietnam="vn",n.Vanuatu="vu",n.Samoa="ws",n.Yemen="ye",n.SouthAfrica="za",n.Zambia="zm",n.Zimbabwe="zw"})(Qt||(Qt={}));var Tt;(function(n){n.Light="light",n.Dark="dark"})(Tt||(Tt={}));var zt;(function(n){n.AfricaAbidjan="africa/abidjan",n.AfricaAccra="africa/accra",n.AfricaAddisAbaba="africa/addis_ababa",n.AfricaAlgiers="africa/algiers",n.AfricaAsmara="africa/asmara",n.AfricaBamako="africa/bamako",n.AfricaBangui="africa/bangui",n.AfricaBanjul="africa/banjul",n.AfricaBissau="africa/bissau",n.AfricaBlantyre="africa/blantyre",n.AfricaBrazzaville="africa/brazzaville",n.AfricaBujumbura="africa/bujumbura",n.AfricaCairo="africa/cairo",n.AfricaCasablanca="africa/casablanca",n.AfricaCeuta="africa/ceuta",n.AfricaConakry="africa/conakry",n.AfricaDakar="africa/dakar",n.AfricaDarEsSalaam="africa/dar_es_salaam",n.AfricaDjibouti="africa/djibouti",n.AfricaDouala="africa/douala",n.AfricaElAaiun="africa/el_aaiun",n.AfricaFreetown="africa/freetown",n.AfricaGaborone="africa/gaborone",n.AfricaHarare="africa/harare",n.AfricaJohannesburg="africa/johannesburg",n.AfricaJuba="africa/juba",n.AfricaKampala="africa/kampala",n.AfricaKhartoum="africa/khartoum",n.AfricaKigali="africa/kigali",n.AfricaKinshasa="africa/kinshasa",n.AfricaLagos="africa/lagos",n.AfricaLibreville="africa/libreville",n.AfricaLome="africa/lome",n.AfricaLuanda="africa/luanda",n.AfricaLubumbashi="africa/lubumbashi",n.AfricaLusaka="africa/lusaka",n.AfricaMalabo="africa/malabo",n.AfricaMaputo="africa/maputo",n.AfricaMaseru="africa/maseru",n.AfricaMbabane="africa/mbabane",n.AfricaMogadishu="africa/mogadishu",n.AfricaMonrovia="africa/monrovia",n.AfricaNairobi="africa/nairobi",n.AfricaNdjamena="africa/ndjamena",n.AfricaNiamey="africa/niamey",n.AfricaNouakchott="africa/nouakchott",n.AfricaOuagadougou="africa/ouagadougou",n.AfricaPortonovo="africa/porto-novo",n.AfricaSaoTome="africa/sao_tome",n.AfricaTripoli="africa/tripoli",n.AfricaTunis="africa/tunis",n.AfricaWindhoek="africa/windhoek",n.AmericaAdak="america/adak",n.AmericaAnchorage="america/anchorage",n.AmericaAnguilla="america/anguilla",n.AmericaAntigua="america/antigua",n.AmericaAraguaina="america/araguaina",n.AmericaArgentinaBuenosAires="america/argentina/buenos_aires",n.AmericaArgentinaCatamarca="america/argentina/catamarca",n.AmericaArgentinaCordoba="america/argentina/cordoba",n.AmericaArgentinaJujuy="america/argentina/jujuy",n.AmericaArgentinaLaRioja="america/argentina/la_rioja",n.AmericaArgentinaMendoza="america/argentina/mendoza",n.AmericaArgentinaRioGallegos="america/argentina/rio_gallegos",n.AmericaArgentinaSalta="america/argentina/salta",n.AmericaArgentinaSanJuan="america/argentina/san_juan",n.AmericaArgentinaSanLuis="america/argentina/san_luis",n.AmericaArgentinaTucuman="america/argentina/tucuman",n.AmericaArgentinaUshuaia="america/argentina/ushuaia",n.AmericaAruba="america/aruba",n.AmericaAsuncion="america/asuncion",n.AmericaAtikokan="america/atikokan",n.AmericaBahia="america/bahia",n.AmericaBahiaBanderas="america/bahia_banderas",n.AmericaBarbados="america/barbados",n.AmericaBelem="america/belem",n.AmericaBelize="america/belize",n.AmericaBlancsablon="america/blanc-sablon",n.AmericaBoaVista="america/boa_vista",n.AmericaBogota="america/bogota",n.AmericaBoise="america/boise",n.AmericaCambridgeBay="america/cambridge_bay",n.AmericaCampoGrande="america/campo_grande",n.AmericaCancun="america/cancun",n.AmericaCaracas="america/caracas",n.AmericaCayenne="america/cayenne",n.AmericaCayman="america/cayman",n.AmericaChicago="america/chicago",n.AmericaChihuahua="america/chihuahua",n.AmericaCiudadJuarez="america/ciudad_juarez",n.AmericaCostaRica="america/costa_rica",n.AmericaCoyhaique="america/coyhaique",n.AmericaCreston="america/creston",n.AmericaCuiaba="america/cuiaba",n.AmericaCuracao="america/curacao",n.AmericaDanmarkshavn="america/danmarkshavn",n.AmericaDawson="america/dawson",n.AmericaDawsonCreek="america/dawson_creek",n.AmericaDenver="america/denver",n.AmericaDetroit="america/detroit",n.AmericaDominica="america/dominica",n.AmericaEdmonton="america/edmonton",n.AmericaEirunepe="america/eirunepe",n.AmericaElSalvador="america/el_salvador",n.AmericaFortNelson="america/fort_nelson",n.AmericaFortaleza="america/fortaleza",n.AmericaGlaceBay="america/glace_bay",n.AmericaGooseBay="america/goose_bay",n.AmericaGrandTurk="america/grand_turk",n.AmericaGrenada="america/grenada",n.AmericaGuadeloupe="america/guadeloupe",n.AmericaGuatemala="america/guatemala",n.AmericaGuayaquil="america/guayaquil",n.AmericaGuyana="america/guyana",n.AmericaHalifax="america/halifax",n.AmericaHavana="america/havana",n.AmericaHermosillo="america/hermosillo",n.AmericaIndianaIndianapolis="america/indiana/indianapolis",n.AmericaIndianaKnox="america/indiana/knox",n.AmericaIndianaMarengo="america/indiana/marengo",n.AmericaIndianaPetersburg="america/indiana/petersburg",n.AmericaIndianaTellCity="america/indiana/tell_city",n.AmericaIndianaVevay="america/indiana/vevay",n.AmericaIndianaVincennes="america/indiana/vincennes",n.AmericaIndianaWinamac="america/indiana/winamac",n.AmericaInuvik="america/inuvik",n.AmericaIqaluit="america/iqaluit",n.AmericaJamaica="america/jamaica",n.AmericaJuneau="america/juneau",n.AmericaKentuckyLouisville="america/kentucky/louisville",n.AmericaKentuckyMonticello="america/kentucky/monticello",n.AmericaKralendijk="america/kralendijk",n.AmericaLaPaz="america/la_paz",n.AmericaLima="america/lima",n.AmericaLosAngeles="america/los_angeles",n.AmericaLowerPrinces="america/lower_princes",n.AmericaMaceio="america/maceio",n.AmericaManagua="america/managua",n.AmericaManaus="america/manaus",n.AmericaMarigot="america/marigot",n.AmericaMartinique="america/martinique",n.AmericaMatamoros="america/matamoros",n.AmericaMazatlan="america/mazatlan",n.AmericaMenominee="america/menominee",n.AmericaMerida="america/merida",n.AmericaMetlakatla="america/metlakatla",n.AmericaMexicoCity="america/mexico_city",n.AmericaMiquelon="america/miquelon",n.AmericaMoncton="america/moncton",n.AmericaMonterrey="america/monterrey",n.AmericaMontevideo="america/montevideo",n.AmericaMontserrat="america/montserrat",n.AmericaNassau="america/nassau",n.AmericaNewYork="america/new_york",n.AmericaNome="america/nome",n.AmericaNoronha="america/noronha",n.AmericaNorthDakotaBeulah="america/north_dakota/beulah",n.AmericaNorthDakotaCenter="america/north_dakota/center",n.AmericaNorthDakotaNewSalem="america/north_dakota/new_salem",n.AmericaNuuk="america/nuuk",n.AmericaOjinaga="america/ojinaga",n.AmericaPanama="america/panama",n.AmericaParamaribo="america/paramaribo",n.AmericaPhoenix="america/phoenix",n.AmericaPortauprince="america/port-au-prince",n.AmericaPortOfSpain="america/port_of_spain",n.AmericaPortoVelho="america/porto_velho",n.AmericaPuertoRico="america/puerto_rico",n.AmericaPuntaArenas="america/punta_arenas",n.AmericaRankinInlet="america/rankin_inlet",n.AmericaRecife="america/recife",n.AmericaRegina="america/regina",n.AmericaResolute="america/resolute",n.AmericaRioBranco="america/rio_branco",n.AmericaSantarem="america/santarem",n.AmericaSantiago="america/santiago",n.AmericaSantoDomingo="america/santo_domingo",n.AmericaSaoPaulo="america/sao_paulo",n.AmericaScoresbysund="america/scoresbysund",n.AmericaSitka="america/sitka",n.AmericaStBarthelemy="america/st_barthelemy",n.AmericaStJohns="america/st_johns",n.AmericaStKitts="america/st_kitts",n.AmericaStLucia="america/st_lucia",n.AmericaStThomas="america/st_thomas",n.AmericaStVincent="america/st_vincent",n.AmericaSwiftCurrent="america/swift_current",n.AmericaTegucigalpa="america/tegucigalpa",n.AmericaThule="america/thule",n.AmericaTijuana="america/tijuana",n.AmericaToronto="america/toronto",n.AmericaTortola="america/tortola",n.AmericaVancouver="america/vancouver",n.AmericaWhitehorse="america/whitehorse",n.AmericaWinnipeg="america/winnipeg",n.AmericaYakutat="america/yakutat",n.AntarcticaCasey="antarctica/casey",n.AntarcticaDavis="antarctica/davis",n.AntarcticaDumontdurville="antarctica/dumontdurville",n.AntarcticaMacquarie="antarctica/macquarie",n.AntarcticaMawson="antarctica/mawson",n.AntarcticaMcmurdo="antarctica/mcmurdo",n.AntarcticaPalmer="antarctica/palmer",n.AntarcticaRothera="antarctica/rothera",n.AntarcticaSyowa="antarctica/syowa",n.AntarcticaTroll="antarctica/troll",n.AntarcticaVostok="antarctica/vostok",n.ArcticLongyearbyen="arctic/longyearbyen",n.AsiaAden="asia/aden",n.AsiaAlmaty="asia/almaty",n.AsiaAmman="asia/amman",n.AsiaAnadyr="asia/anadyr",n.AsiaAqtau="asia/aqtau",n.AsiaAqtobe="asia/aqtobe",n.AsiaAshgabat="asia/ashgabat",n.AsiaAtyrau="asia/atyrau",n.AsiaBaghdad="asia/baghdad",n.AsiaBahrain="asia/bahrain",n.AsiaBaku="asia/baku",n.AsiaBangkok="asia/bangkok",n.AsiaBarnaul="asia/barnaul",n.AsiaBeirut="asia/beirut",n.AsiaBishkek="asia/bishkek",n.AsiaBrunei="asia/brunei",n.AsiaChita="asia/chita",n.AsiaColombo="asia/colombo",n.AsiaDamascus="asia/damascus",n.AsiaDhaka="asia/dhaka",n.AsiaDili="asia/dili",n.AsiaDubai="asia/dubai",n.AsiaDushanbe="asia/dushanbe",n.AsiaFamagusta="asia/famagusta",n.AsiaGaza="asia/gaza",n.AsiaHebron="asia/hebron",n.AsiaHoChiMinh="asia/ho_chi_minh",n.AsiaHongKong="asia/hong_kong",n.AsiaHovd="asia/hovd",n.AsiaIrkutsk="asia/irkutsk",n.AsiaJakarta="asia/jakarta",n.AsiaJayapura="asia/jayapura",n.AsiaJerusalem="asia/jerusalem",n.AsiaKabul="asia/kabul",n.AsiaKamchatka="asia/kamchatka",n.AsiaKarachi="asia/karachi",n.AsiaKathmandu="asia/kathmandu",n.AsiaKhandyga="asia/khandyga",n.AsiaKolkata="asia/kolkata",n.AsiaKrasnoyarsk="asia/krasnoyarsk",n.AsiaKualaLumpur="asia/kuala_lumpur",n.AsiaKuching="asia/kuching",n.AsiaKuwait="asia/kuwait",n.AsiaMacau="asia/macau",n.AsiaMagadan="asia/magadan",n.AsiaMakassar="asia/makassar",n.AsiaManila="asia/manila",n.AsiaMuscat="asia/muscat",n.AsiaNicosia="asia/nicosia",n.AsiaNovokuznetsk="asia/novokuznetsk",n.AsiaNovosibirsk="asia/novosibirsk",n.AsiaOmsk="asia/omsk",n.AsiaOral="asia/oral",n.AsiaPhnomPenh="asia/phnom_penh",n.AsiaPontianak="asia/pontianak",n.AsiaPyongyang="asia/pyongyang",n.AsiaQatar="asia/qatar",n.AsiaQostanay="asia/qostanay",n.AsiaQyzylorda="asia/qyzylorda",n.AsiaRiyadh="asia/riyadh",n.AsiaSakhalin="asia/sakhalin",n.AsiaSamarkand="asia/samarkand",n.AsiaSeoul="asia/seoul",n.AsiaShanghai="asia/shanghai",n.AsiaSingapore="asia/singapore",n.AsiaSrednekolymsk="asia/srednekolymsk",n.AsiaTaipei="asia/taipei",n.AsiaTashkent="asia/tashkent",n.AsiaTbilisi="asia/tbilisi",n.AsiaTehran="asia/tehran",n.AsiaThimphu="asia/thimphu",n.AsiaTokyo="asia/tokyo",n.AsiaTomsk="asia/tomsk",n.AsiaUlaanbaatar="asia/ulaanbaatar",n.AsiaUrumqi="asia/urumqi",n.AsiaUstnera="asia/ust-nera",n.AsiaVientiane="asia/vientiane",n.AsiaVladivostok="asia/vladivostok",n.AsiaYakutsk="asia/yakutsk",n.AsiaYangon="asia/yangon",n.AsiaYekaterinburg="asia/yekaterinburg",n.AsiaYerevan="asia/yerevan",n.AtlanticAzores="atlantic/azores",n.AtlanticBermuda="atlantic/bermuda",n.AtlanticCanary="atlantic/canary",n.AtlanticCapeVerde="atlantic/cape_verde",n.AtlanticFaroe="atlantic/faroe",n.AtlanticMadeira="atlantic/madeira",n.AtlanticReykjavik="atlantic/reykjavik",n.AtlanticSouthGeorgia="atlantic/south_georgia",n.AtlanticStHelena="atlantic/st_helena",n.AtlanticStanley="atlantic/stanley",n.AustraliaAdelaide="australia/adelaide",n.AustraliaBrisbane="australia/brisbane",n.AustraliaBrokenHill="australia/broken_hill",n.AustraliaDarwin="australia/darwin",n.AustraliaEucla="australia/eucla",n.AustraliaHobart="australia/hobart",n.AustraliaLindeman="australia/lindeman",n.AustraliaLordHowe="australia/lord_howe",n.AustraliaMelbourne="australia/melbourne",n.AustraliaPerth="australia/perth",n.AustraliaSydney="australia/sydney",n.EuropeAmsterdam="europe/amsterdam",n.EuropeAndorra="europe/andorra",n.EuropeAstrakhan="europe/astrakhan",n.EuropeAthens="europe/athens",n.EuropeBelgrade="europe/belgrade",n.EuropeBerlin="europe/berlin",n.EuropeBratislava="europe/bratislava",n.EuropeBrussels="europe/brussels",n.EuropeBucharest="europe/bucharest",n.EuropeBudapest="europe/budapest",n.EuropeBusingen="europe/busingen",n.EuropeChisinau="europe/chisinau",n.EuropeCopenhagen="europe/copenhagen",n.EuropeDublin="europe/dublin",n.EuropeGibraltar="europe/gibraltar",n.EuropeGuernsey="europe/guernsey",n.EuropeHelsinki="europe/helsinki",n.EuropeIsleOfMan="europe/isle_of_man",n.EuropeIstanbul="europe/istanbul",n.EuropeJersey="europe/jersey",n.EuropeKaliningrad="europe/kaliningrad",n.EuropeKirov="europe/kirov",n.EuropeKyiv="europe/kyiv",n.EuropeLisbon="europe/lisbon",n.EuropeLjubljana="europe/ljubljana",n.EuropeLondon="europe/london",n.EuropeLuxembourg="europe/luxembourg",n.EuropeMadrid="europe/madrid",n.EuropeMalta="europe/malta",n.EuropeMariehamn="europe/mariehamn",n.EuropeMinsk="europe/minsk",n.EuropeMonaco="europe/monaco",n.EuropeMoscow="europe/moscow",n.EuropeOslo="europe/oslo",n.EuropeParis="europe/paris",n.EuropePodgorica="europe/podgorica",n.EuropePrague="europe/prague",n.EuropeRiga="europe/riga",n.EuropeRome="europe/rome",n.EuropeSamara="europe/samara",n.EuropeSanMarino="europe/san_marino",n.EuropeSarajevo="europe/sarajevo",n.EuropeSaratov="europe/saratov",n.EuropeSimferopol="europe/simferopol",n.EuropeSkopje="europe/skopje",n.EuropeSofia="europe/sofia",n.EuropeStockholm="europe/stockholm",n.EuropeTallinn="europe/tallinn",n.EuropeTirane="europe/tirane",n.EuropeUlyanovsk="europe/ulyanovsk",n.EuropeVaduz="europe/vaduz",n.EuropeVatican="europe/vatican",n.EuropeVienna="europe/vienna",n.EuropeVilnius="europe/vilnius",n.EuropeVolgograd="europe/volgograd",n.EuropeWarsaw="europe/warsaw",n.EuropeZagreb="europe/zagreb",n.EuropeZurich="europe/zurich",n.IndianAntananarivo="indian/antananarivo",n.IndianChagos="indian/chagos",n.IndianChristmas="indian/christmas",n.IndianCocos="indian/cocos",n.IndianComoro="indian/comoro",n.IndianKerguelen="indian/kerguelen",n.IndianMahe="indian/mahe",n.IndianMaldives="indian/maldives",n.IndianMauritius="indian/mauritius",n.IndianMayotte="indian/mayotte",n.IndianReunion="indian/reunion",n.PacificApia="pacific/apia",n.PacificAuckland="pacific/auckland",n.PacificBougainville="pacific/bougainville",n.PacificChatham="pacific/chatham",n.PacificChuuk="pacific/chuuk",n.PacificEaster="pacific/easter",n.PacificEfate="pacific/efate",n.PacificFakaofo="pacific/fakaofo",n.PacificFiji="pacific/fiji",n.PacificFunafuti="pacific/funafuti",n.PacificGalapagos="pacific/galapagos",n.PacificGambier="pacific/gambier",n.PacificGuadalcanal="pacific/guadalcanal",n.PacificGuam="pacific/guam",n.PacificHonolulu="pacific/honolulu",n.PacificKanton="pacific/kanton",n.PacificKiritimati="pacific/kiritimati",n.PacificKosrae="pacific/kosrae",n.PacificKwajalein="pacific/kwajalein",n.PacificMajuro="pacific/majuro",n.PacificMarquesas="pacific/marquesas",n.PacificMidway="pacific/midway",n.PacificNauru="pacific/nauru",n.PacificNiue="pacific/niue",n.PacificNorfolk="pacific/norfolk",n.PacificNoumea="pacific/noumea",n.PacificPagoPago="pacific/pago_pago",n.PacificPalau="pacific/palau",n.PacificPitcairn="pacific/pitcairn",n.PacificPohnpei="pacific/pohnpei",n.PacificPortMoresby="pacific/port_moresby",n.PacificRarotonga="pacific/rarotonga",n.PacificSaipan="pacific/saipan",n.PacificTahiti="pacific/tahiti",n.PacificTarawa="pacific/tarawa",n.PacificTongatapu="pacific/tongatapu",n.PacificWake="pacific/wake",n.PacificWallis="pacific/wallis",n.Utc="utc"})(zt||(zt={}));var Ot;(function(n){n.Geolocation="geolocation",n.Camera="camera",n.Microphone="microphone",n.Notifications="notifications",n.Midi="midi",n.Push="push",n.Clipboardread="clipboard-read",n.Clipboardwrite="clipboard-write",n.Paymenthandler="payment-handler",n.Usb="usb",n.Bluetooth="bluetooth",n.Accelerometer="accelerometer",n.Gyroscope="gyroscope",n.Magnetometer="magnetometer",n.Ambientlightsensor="ambient-light-sensor",n.Backgroundsync="background-sync",n.Persistentstorage="persistent-storage",n.Screenwakelock="screen-wake-lock",n.Webshare="web-share",n.Xrspatialtracking="xr-spatial-tracking"})(Ot||(Ot={}));var Ft;(function(n){n.Jpg="jpg",n.Jpeg="jpeg",n.Png="png",n.Webp="webp",n.Heic="heic",n.Avif="avif",n.Gif="gif"})(Ft||(Ft={}));var ei;(function(n){n.GET="GET",n.POST="POST",n.PUT="PUT",n.PATCH="PATCH",n.DELETE="DELETE",n.OPTIONS="OPTIONS",n.HEAD="HEAD"})(ei||(ei={}));var ti;(function(n){n.Auto="auto",n.Center="center",n.Topleft="top-left",n.Top="top",n.Topright="top-right",n.Left="left",n.Right="right",n.Bottomleft="bottom-left",n.Bottom="bottom",n.Bottomright="bottom-right"})(ti||(ti={}));var ii;(function(n){n.Functions="functions",n.Sites="sites"})(ii||(ii={}));var ni;(function(n){n.Http="http",n.Schedule="schedule",n.Event="event"})(ni||(ni={}));var oi;(function(n){n.Waiting="waiting",n.Processing="processing",n.Completed="completed",n.Failed="failed",n.Scheduled="scheduled"})(oi||(oi={}));const bo=Object.freeze(Object.defineProperty({__proto__:null,Account:Vt,AppwriteException:h,get AuthenticationFactor(){return Kt},get AuthenticatorType(){return Gt},Avatars:Gi,get Browser(){return Jt},get BrowserPermission(){return Ot},get BrowserTheme(){return Tt},Channel:ke,Client:Ae,get Condition(){return Wt},get CreditCard(){return Zt},Databases:ao,DocumentsDB:so,get ExecutionMethod(){return ei},get ExecutionResourceType(){return ii},get ExecutionStatus(){return oi},get ExecutionTrigger(){return ni},get Flag(){return Qt},Functions:ro,Graphql:co,ID:He,get ImageFormat(){return Ft},get ImageGravity(){return ti},Locale:lo,Messaging:uo,get OAuthProvider(){return Yt},Operator:Q,Organization:po,Permission:Fe,Presences:ho,Query:C,Realtime:mo,Role:wo,Storage:fo,TablesDB:go,Teams:Ki,get Timezone(){return zt},VectorsDB:yo},Symbol.toStringTag,{value:"Module"})),Yi={signIn:"Sign in",dialogSignIn:"Sign in",signUp:"Sign up",signOut:"Sign out",continueAsGuest:"Continue as guest",email:"Email",password:"Password",showPassword:"Show password",hidePassword:"Hide password",newPassword:"New password",confirmPassword:"Confirm password",name:"Name",phone:"Phone number",code:"Code",forgotPassword:"Forgot password?",noAccount:"Don't have an account?",haveAccount:"Already have an account?",or:"or",continueWith:"Continue with {provider}",continueWithEmail:"Continue with email",sendEmailCode:"Email me a code",continueWithPhone:"Continue with phone",sendMagicLink:"Send magic link",sendCode:"Send code",resendCode:"Resend code",useDifferentEmail:"Use a different email",useDifferentPhone:"Use a different phone number",verifyCode:"Verify code",magicLinkSent:"We sent a sign-in link to {email}. Open it on this device to continue.",codeSent:"We sent a code to {target}. Enter it below to continue.",securityPhrase:"Security phrase",securityPhraseHint:"The message we sent includes this phrase. Do not continue if it differs.",back:"Back",cancel:"Cancel",save:"Save",update:"Update",remove:"Remove",close:"Close",resetPassword:"Reset password",resetLinkSent:"If an account exists for {email}, a reset link is on its way.",passwordUpdated:"Your password was updated. You can sign in now.",passwordChanged:"Your password was updated.",sendResetLink:"Send reset link",requestNewLink:"Request a new link",agreeTo:"By continuing you agree to our",terms:"Terms of Service",privacy:"Privacy Policy",and:"and",welcomeBack:"Welcome back",createAccount:"Create your account",signInTitle:"Sign in to {name}",signUpTitle:"Sign up for {name}",mfaTitle:"Two-factor authentication",mfaDescription:"Confirm it is you with a second factor.",mfaUseAuthenticator:"Use authenticator app",mfaUseEmail:"Send code to email",mfaUsePhone:"Send code by SMS",mfaUseRecoveryCode:"Use a recovery code",recoveryCode:"Recovery code",account:"Account",profile:"Profile",security:"Security",sessions:"Sessions",connections:"Connections",activity:"Activity",dangerZone:"Danger zone",verified:"Verified",unverified:"Unverified",verifyEmail:"Verify email",verificationResendIn:"Sent. You can resend in {seconds} s",verificationSent:"Verification email sent. Check your inbox.",emailVerified:"Your email is verified.",changePassword:"Change password",currentPassword:"Current password",twoFactor:"Two-factor authentication",mfaBadge:"MFA",twoFactorDescription:"Require a second factor when signing in to this account.",mfaNoFactorWarning:"Turn on an authenticator, or verify your email or phone, before enabling two-factor authentication. Without a factor, this setting does not protect the account.",enable:"Enable",disable:"Disable",authenticatorApp:"Authenticator app",authenticatorAdd:"Add authenticator",authenticatorScan:"Scan this QR code with your authenticator app, then enter the 6-digit code.",qrCodeAlt:"QR code",authenticatorManual:"Or enter this key manually",authenticatorCopyKey:"Copy key",authenticatorVerify:"Verify and enable",recoveryCodes:"Recovery codes",viewRecoveryCodes:"View recovery codes",recoveryCodesDescription:"Use a recovery code to sign in if you lose access to your other factors.",recoveryCodesOnceHint:"Recovery codes can be viewed only once after they are generated. Viewing them again requires a recent second factor.",generateRecoveryCodes:"Generate recovery codes",regenerateRecoveryCodes:"Regenerate",recoveryCodesWarning:"Store these codes somewhere safe. Each code works once.",currentSession:"This device",signOutSession:"Sign out",signOutAllSessions:"Sign out everywhere",signOutAllSessionsDescription:"End every session, including this one.",noConnections:"No connected accounts.",disconnect:"Disconnect",connectProvider:"Connect {provider}",noActivity:"No recent activity.",noSessions:"No active sessions.",deleteAccount:"Delete account",deleteAccountDescription:"Deleting disables your account and signs you out everywhere. An administrator can restore it.",deleteAccountConfirm:"Delete my account",loading:"Loading",copied:"Copied",copyFailed:"Could not copy. Select the text and copy it manually.",copy:"Copy",done:"Done",nameUpdated:"Name updated.",emailUpdated:"Email updated. Verify the new address.",phoneUpdated:"Phone number updated.",phoneVerified:"Phone verified.",authenticatorAdded:"Authenticator added.",accountConverted:"Account created.",enabled:"Enabled",disabled:"Disabled",createPassword:"Create a password",createPasswordHint:"This becomes your sign-in password.",errorCurrentPassword:"Current password is incorrect.",errorGeneric:"Something went wrong. Please try again.",errorInvalidCredentials:"Invalid email or password.",errorInvalidEmail:"Enter a valid email address.",errorInvalidPassword:"Password must be between 8 and 256 characters.",errorInvalidPhone:"Enter a phone number in E.164 format, starting with +.",errorInvalidName:"Enter a name.",errorUserExists:"An account with this email already exists.",errorUserBlocked:"This account is blocked. Contact support.",errorRateLimit:"Too many attempts. Wait a moment and try again.",errorInvalidToken:"This link is invalid or has expired. Request a new one.",errorInvalidCode:"That code is not valid. Check it and try again.",errorPasswordMismatch:"Passwords do not match.",errorPasswordRecentlyUsed:"You used this password recently. Choose a different one.",errorPasswordPersonalData:"Password must not contain your name, email or phone.",errorPasswordWeak:"Password is too common or too short. Use at least 8 characters.",errorPasswordPwned:"This password appeared in a data breach. Choose a different one.",errorChallengeRequired:"Confirm a second factor to continue.",errorSessionExists:"You are already signed in.",errorOAuth:"Sign in with the provider failed. Please try again.",errorNetwork:"Could not reach the server. Check your connection.",errorMethodDisabled:"This sign-in method is disabled for this project.",errorNotConfigured:"Auth UI is not configured. Call AuthUI.init() or add <authui-config>.",errorConfigIncomplete:"Auth UI is missing endpoint or project. Set them on <authui-config> or pass them to AuthUI.init().",errorConfig:"Auth UI cannot reach this Appwrite project. Check that endpoint ends with /v1, the project ID is correct, and this hostname is registered as a Web platform.",errorConfigEndpoint:"Check that endpoint ends with /v1. Appwrite API URLs look like https://cloud.appwrite.io/v1.",passwordHint:"At least 8 characters.",passwordStrengthLabel:"Password strength",passwordStrengthTooWeak:"Too weak",passwordStrengthWeak:"Weak",passwordStrengthFair:"Fair",passwordStrengthStrong:"Strong",passwordStrengthVeryStrong:"Very strong",lastUsed:"Last used",teamsLabel:"Teams",noTeams:"You are not on any teams yet.",activeTeam:"Active",signedInAs:"Signed in as",manageAccount:"Manage account",dialogAccount:"Account",continue:"Continue",provider:"Provider",lastActive:"Last active",guestAccount:"Guest account",guestAccountDescription:"Add an email and password to keep your data.",preview:"Preview"};function Io(n,e={}){return n.replace(/\{(\w+)\}/g,(i,t)=>t in e?String(e[t]):`{${t}}`)}const vo={amazon:"Amazon",apple:"Apple",appwrite:"Appwrite",auth0:"Auth0",authentik:"Authentik",autodesk:"Autodesk",bitbucket:"Bitbucket",bitly:"Bitly",box:"Box",cloudflare:"Cloudflare",dailymotion:"Dailymotion",discord:"Discord",disqus:"Disqus",dropbox:"Dropbox",etsy:"Etsy",facebook:"Facebook",figma:"Figma",fusionauth:"FusionAuth",github:"GitHub",gitlab:"GitLab",google:"Google",huggingface:"Hugging Face",kakao:"Kakao",keycloak:"Keycloak",kick:"Kick",linkedin:"LinkedIn",microsoft:"Microsoft",notion:"Notion",oidc:"OpenID Connect",okta:"Okta",paypal:"PayPal",paypalSandbox:"PayPal Sandbox",podio:"Podio",resend:"Resend",salesforce:"Salesforce",slack:"Slack",spotify:"Spotify",stripe:"Stripe",tiktok:"TikTok",tradeshift:"Tradeshift",tradeshiftBox:"Tradeshift Box",twitch:"Twitch",wordpress:"WordPress",x:"X",yahoo:"Yahoo",yammer:"Yammer",yandex:"Yandex",zoho:"Zoho",zoom:"Zoom"};function et(n){return vo[n]??n.charAt(0).toUpperCase()+n.slice(1)}const St=(n,e,i=401)=>Object.assign(new Error(e),{type:n,code:i}),Pe=()=>new Date().toISOString(),Ee=n=>new Date(Date.now()-n*6e4).toISOString(),$t=["amber","brave","calm","delta","ember","fable","glide","harbor","ivory","juniper","kite","lumen"],Ji=()=>`${$t[Math.floor(Math.random()*$t.length)]}-${$t[Math.floor(Math.random()*$t.length)]}`,tt=()=>Math.random().toString(36).slice(2,12),Zi=()=>Array.from({length:2},()=>Math.random().toString(36).slice(2,7)).join("-"),Ao={name:"Ada Lovelace",email:"ada@example.com",phone:"+15550100"};class Qi{constructor(e=Ao){this.seed=e,this.user=null,this.mfaPending=!1,this.mfaEnabled=!1,this.totpEnrolled=!1,this.recoveryCodes=[],this.lastChallenge=0,this.sessions=[],this.identities=[],this.logs=[],this.tokens=new Map,this.pendingAuthenticator=null}makeUser(e={}){const i=e.anonymous??!1;return this.user={$id:"preview-user",$createdAt:Ee(43200),$updatedAt:Pe(),name:i?"":e.name??this.seed.name,registration:Ee(43200),status:!0,labels:[],passwordUpdate:i?"":Ee(10080),email:i?"":e.email??this.seed.email,phone:i?"":e.phone??this.seed.phone,emailVerification:!i,phoneVerification:!1,mfa:this.mfaEnabled,prefs:{},targets:[],accessedAt:Pe()},this.seedActivity(i?"anonymous":"email"),this.user}seedActivity(e){if(this.sessions.length>0)return;const i={$createdAt:Pe(),$updatedAt:Pe(),userId:"preview-user",expire:new Date(Date.now()+365*864e5).toISOString(),providerUid:"",providerAccessToken:"",providerAccessTokenExpiry:"",providerRefreshToken:"",clientType:"browser",clientCode:"CH",clientEngine:"Blink",clientEngineVersion:"128",deviceName:"desktop",deviceBrand:"",deviceModel:"",factors:["password"],secret:"",mfaUpdatedAt:""};this.sessions=[{...i,$id:"current",provider:e,ip:"203.0.113.24",osCode:"MAC",osName:"macOS",osVersion:"15",clientName:"Chrome",clientVersion:"128",countryCode:"de",countryName:"Germany",current:!0},{...i,$id:tt(),$createdAt:Ee(300),provider:e,ip:"198.51.100.7",osCode:"IOS",osName:"iOS",osVersion:"18",clientName:"Safari",clientVersion:"18",clientType:"browser",deviceName:"smartphone",countryCode:"de",countryName:"Germany",current:!1},{...i,$id:tt(),$createdAt:Ee(4320),provider:"oauth2",ip:"192.0.2.90",osCode:"WIN",osName:"Windows",osVersion:"11",clientName:"Firefox",clientVersion:"130",countryCode:"us",countryName:"United States",current:!1}],this.identities=[{$id:"identity-github",$createdAt:Ee(28800),$updatedAt:Ee(28800),userId:"preview-user",provider:"github",providerUid:"8675309",providerEmail:this.seed.email,providerAccessToken:"",providerAccessTokenExpiry:"",providerRefreshToken:""}],this.logs=[{event:"session.create",time:Pe(),clientName:"Chrome",osName:"macOS",countryName:"Germany",ip:"203.0.113.24"},{event:"user.update.name",time:Ee(2880),clientName:"Safari",osName:"iOS",countryName:"Germany",ip:"198.51.100.7"},{event:"session.create",time:Ee(4320),clientName:"Firefox",osName:"Windows",countryName:"United States",ip:"192.0.2.90"}]}requireUser(){if(!this.user)throw St("general_unauthorized_scope","User (role: guests) missing scope (account)");if(this.mfaPending)throw St("user_more_factors_required","More factors are required to complete the sign in process.");return this.user}requireRecentChallenge(){if(Date.now()-this.lastChallenge>18e5)throw St("user_challenge_required","A recently successful challenge is required to complete this action.")}afterPrimarySignIn(){const e=this.totpEnrolled||this.user?.emailVerification;this.mfaPending=!!(this.user?.mfa&&e)}async delay(e,i=150){return await new Promise(t=>setTimeout(t,i)),typeof e=="function"?e():e}signInDirectly(){this.user||this.makeUser(),this.mfaPending=!1}async get(){return this.delay(()=>this.requireUser(),120)}async create(e,i,t,o){return this.delay(()=>this.makeUser({email:i,name:o||i.split("@")[0]}))}async createEmailPasswordSession(e){return this.delay(()=>((!this.user||this.user.email!==e)&&this.makeUser({email:e,name:this.user?.name||this.seed.name}),this.afterPrimarySignIn(),this.sessions[0]))}async createAnonymousSession(){return this.delay(()=>(this.makeUser({anonymous:!0}),this.mfaPending=!1,this.sessions[0]))}async createOAuth2Token(e){return this.delay(()=>{this.makeUser({email:`ada@${e}.example`,name:this.seed.name}),this.afterPrimarySignIn()},800)}async createMagicURLToken(e,i){return this.tokens.set(e,{email:i}),this.delay({$id:tt(),$createdAt:Pe(),userId:e,secret:"",expire:"",phrase:Ji()})}async createEmailToken(e,i){return this.tokens.set(e,{email:i}),this.delay({$id:tt(),$createdAt:Pe(),userId:e,secret:"",expire:"",phrase:Ji()})}async createPhoneToken(e,i){return this.tokens.set(e,{phone:i}),this.delay({$id:tt(),$createdAt:Pe(),userId:e,secret:"",expire:"",phrase:""})}async createSession(e){return this.delay(()=>{const i=this.tokens.get(e)??{};return this.makeUser({email:i.email??this.seed.email,phone:i.phone??this.seed.phone}),i.phone&&(this.user.phoneVerification=!0),this.afterPrimarySignIn(),this.sessions[0]})}async createRecovery(){return this.delay({})}async updateRecovery(){return this.delay({})}async createEmailVerification(){return this.delay({})}async updateEmailVerification(){return this.delay(()=>(this.user&&(this.user.emailVerification=!0),{}))}async createPhoneVerification(){return this.delay({})}async updatePhoneVerification(){return this.delay(()=>(this.user&&(this.user.phoneVerification=!0),{}))}async getPrefs(){return this.delay(()=>({...this.requireUser().prefs}))}async updatePrefs(e){return this.delay(()=>{const i=this.requireUser();return i.prefs={...e},i})}async updateName(e){return this.delay(()=>(this.requireUser().name=e,this.user))}async updateEmail(e){return this.delay(()=>{const i=this.requireUser();return i.email=e,i.emailVerification=!1,i.passwordUpdate=Pe(),i})}async updatePhone(e){return this.delay(()=>{const i=this.requireUser();return i.phone=e,i.phoneVerification=!1,i})}async updatePassword(){return this.delay(()=>{const e=this.requireUser();return e.passwordUpdate=Pe(),e})}async updateStatus(){return this.delay(()=>(this.requireUser(),this.reset(),this.mfaEnabled=!1,this.totpEnrolled=!1,this.recoveryCodes=[],{}))}async listSessions(){return this.delay(()=>(this.requireUser(),{total:this.sessions.length,sessions:this.sessions}))}async deleteSession(e="current"){return this.delay(()=>{const i=this.sessions.find(t=>t.$id===e);return e==="current"||i?.current?this.reset():this.sessions=this.sessions.filter(t=>t.$id!==e),{}})}async deleteSessions(){return this.delay(()=>(this.reset(),{}))}async listIdentities(){return this.delay(()=>(this.requireUser(),{total:this.identities.length,identities:this.identities}))}async deleteIdentity(e){return this.delay(()=>(this.identities=this.identities.filter(i=>i.$id!==e),{}))}async listLogs(){return this.delay(()=>(this.requireUser(),{total:this.logs.length,logs:this.logs}))}async listMFAFactors(){return this.delay({totp:this.totpEnrolled,email:!!this.user?.emailVerification,phone:!!this.user?.phoneVerification,recoveryCode:this.recoveryCodes.length>0,custom:!1})}async createMFAChallenge(){return this.delay({$id:tt(),$createdAt:Pe(),userId:"preview-user",expire:""})}async updateMFAChallenge(){return this.delay(()=>(this.mfaPending=!1,this.lastChallenge=Date.now(),this.sessions[0]))}async updateMFA(e){return this.delay(()=>{const i=this.requireUser();return this.mfaEnabled=e,i.mfa=e,i})}async createMFAAuthenticator(){return this.delay(()=>{const e="JBSWY3DPEHPK3PXP";return this.pendingAuthenticator={secret:e,uri:`otpauth://totp/Preview:${encodeURIComponent(this.user?.email??"user")}?secret=${e}&issuer=Preview`},this.pendingAuthenticator})}async updateMFAAuthenticator(){return this.delay(()=>(this.totpEnrolled=!0,this.pendingAuthenticator=null,this.lastChallenge=Date.now(),this.requireUser()))}async deleteMFAAuthenticator(){return this.delay(()=>(this.requireRecentChallenge(),this.totpEnrolled=!1,{}))}async createMFARecoveryCodes(){return this.delay(()=>{if(this.recoveryCodes.length>0)throw St("user_recovery_codes_already_exists","Recovery codes already generated.",409);return this.recoveryCodes=Array.from({length:6},Zi),{recoveryCodes:this.recoveryCodes}})}async getMFARecoveryCodes(){return this.delay(()=>(this.requireRecentChallenge(),{recoveryCodes:this.recoveryCodes}))}async updateMFARecoveryCodes(){return this.delay(()=>(this.requireRecentChallenge(),this.recoveryCodes=Array.from({length:6},Zi),{recoveryCodes:this.recoveryCodes}))}reset(){this.user=null,this.mfaPending=!1,this.sessions=[],this.identities=[],this.logs=[],this.tokens.clear()}}function ko(n){let e=2166136261;const i=()=>(e^=e<<13,e^=e>>>17,e^=e<<5,(e>>>0)/4294967296);for(const r of n)e=(e^r.charCodeAt(0))*16777619;const t=25;let o="";const a=(r,d)=>`<rect x="${r}" y="${d}" width="7" height="7"/><rect x="${r+1}" y="${d+1}" width="5" height="5" fill="#fff"/><rect x="${r+2}" y="${d+2}" width="3" height="3"/>`;for(let r=0;r<t;r++)for(let d=0;d<t;d++)!(d<8&&r<8||d>=t-8&&r<8||d<8&&r>=t-8)&&i()<.45&&(o+=`<rect x="${d}" y="${r}" width="1" height="1"/>`);const s=`<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 ${t} ${t}" shape-rendering="crispEdges"><rect width="${t}" height="${t}" fill="#fff"/><g fill="#000">${a(0,0)}${a(t-7,0)}${a(0,t-7)}${o}</g></svg>`;return`data:image/svg+xml;utf8,${encodeURIComponent(s)}`}const ee={moreFactorsRequired:"user_more_factors_required",invalidCredentials:"user_invalid_credentials",userAlreadyExists:"user_already_exists",emailAlreadyExists:"user_email_already_exists",phoneAlreadyExists:"user_phone_already_exists",userBlocked:"user_blocked",rateLimit:"general_rate_limit_exceeded",invalidToken:"user_invalid_token",invalidCode:"user_invalid_code",passwordMismatch:"user_password_mismatch",passwordRecentlyUsed:"password_recently_used",passwordPersonalData:"password_personal_data",passwordWeak:"user_password_weak",passwordPwned:"password_pwned",challengeRequired:"user_challenge_required",recoveryCodesExist:"user_recovery_codes_already_exists",recoveryCodesNotFound:"user_recovery_codes_not_found",authenticatorNotFound:"user_authenticator_not_found",routeNotFound:"general_route_not_found",projectNotFound:"project_not_found",unknownOrigin:"general_unknown_origin",emailAlreadyVerified:"user_email_already_verified",sessionNotFound:"user_session_not_found",wafChallenged:"waf_request_challenged",sessionAlreadyExists:"user_session_already_exists",oauthUnauthorized:"user_oauth2_unauthorized",oauthBadRequest:"user_oauth2_bad_request",unauthorized:"general_unauthorized_scope",userUnauthorized:"user_unauthorized",authMethodUnsupported:"user_auth_method_unsupported",countMaxExceeded:"user_count_exceeded",targetAlreadyExists:"user_target_already_exists",argumentInvalid:"general_argument_invalid"};function Je(n){if(n&&typeof n=="object"){const e=n;let i=typeof e.message=="string"?e.message:"Unknown error";return/^\s*<(!doctype|html)/i.test(i)&&(i=""),{message:i,type:typeof e.type=="string"?e.type:"",code:typeof e.code=="number"?e.code:0}}return{message:String(n),type:"",code:0}}function ut(n,e){return Je(n).type===e}function pt(n,e,i="link"){const t=Je(n);switch(t.type){case ee.invalidCredentials:return i==="password"?e.errorCurrentPassword:e.errorInvalidCredentials;case ee.userAlreadyExists:case ee.emailAlreadyExists:case ee.phoneAlreadyExists:return e.errorUserExists;case ee.userBlocked:return e.errorUserBlocked;case ee.rateLimit:return e.errorRateLimit;case ee.invalidToken:return i==="code"?e.errorInvalidCode:e.errorInvalidToken;case ee.invalidCode:return e.errorInvalidCode;case ee.passwordMismatch:return e.errorPasswordMismatch;case ee.passwordRecentlyUsed:return e.errorPasswordRecentlyUsed;case ee.passwordPersonalData:return e.errorPasswordPersonalData;case ee.passwordWeak:return e.errorPasswordWeak;case ee.passwordPwned:return e.errorPasswordPwned;case ee.challengeRequired:return e.errorChallengeRequired;case ee.sessionAlreadyExists:return e.errorSessionExists;case ee.oauthUnauthorized:case ee.oauthBadRequest:return e.errorOAuth;case ee.authMethodUnsupported:return e.errorMethodDisabled}if(t.type===ee.argumentInvalid||/Invalid `\w+` param/i.test(t.message)){const o=t.message.match(/Invalid `([^`]+)` param/i)?.[1]?.toLowerCase();return o==="email"?e.errorInvalidEmail:o==="password"?e.errorInvalidPassword:o==="phone"?e.errorInvalidPhone:o==="name"?e.errorInvalidName:e.errorGeneric}return t.type===ee.projectNotFound||t.type===ee.unknownOrigin?e.errorConfig:t.type===ee.routeNotFound?e.errorConfigEndpoint:t.code===0&&/fetch|network/i.test(t.message)?e.errorNetwork:/Invalid `\w+` param/i.test(t.message)?e.errorGeneric:t.message?t.message||e.errorGeneric:t.code===404||t.type===ee.routeNotFound?e.errorConfigEndpoint:e.errorGeneric}function Ti(n){const e=Je(n);return!!(e.type===ee.projectNotFound||e.type===ee.unknownOrigin||e.type===ee.routeNotFound||!e.message&&e.code===404||e.code===0&&/fetch|network|load failed|failed to fetch/i.test(e.message))}const ai=n=>`authui:active-team:${n}`;function si(n){if(typeof localStorage>"u"||!n)return null;try{return localStorage.getItem(ai(n))}catch{return null}}function zi(n,e){if(!(typeof localStorage>"u"||!n))try{e?localStorage.setItem(ai(n),e):localStorage.removeItem(ai(n))}catch{}}const ri="authui:last-method";function it(n){if(!(typeof localStorage>"u")){if(!n||n==="mfa"||n==="sign-up")if(n==="sign-up")n="email-password";else return;try{localStorage.setItem(ri,n)}catch{}}}function Ze(){if(typeof localStorage>"u")return null;try{return localStorage.getItem(ri)}catch{return null}}function So(){if(!(typeof localStorage>"u"))try{localStorage.removeItem(ri)}catch{}}const jt="authui:pending-oauth";function Oi(n){if(!(typeof sessionStorage>"u"))try{sessionStorage.setItem(jt,n)}catch{}}function ci(){if(!(typeof sessionStorage>"u"))try{const n=sessionStorage.getItem(jt);sessionStorage.removeItem(jt),n&&it(`oauth:${n}`)}catch{}}function di(){if(!(typeof sessionStorage>"u"))try{sessionStorage.removeItem(jt)}catch{}}function Se(n,e,i){for(const t of e){const o=n[t];if(typeof o=="function")return o.apply(n,i)}return Promise.reject(new Error(`Appwrite SDK is missing ${e[0]}(). Update the appwrite package.`))}const li="authui",Fi=["userId","secret","expire","project","error",li],en=()=>({status:"loading",user:null,mfaFactors:null,pending:null,configured:!1,configError:null});class tn{constructor(){this.client=null,this.account=null,this.config=null,this.state=en(),this.listeners=new Map,this.refreshPromise=null,this.preview=null,this.teams=null,this.activeTeamId=null}configure(e){const i=e.endpoint.trim().replace(/\/+$/,"");i&&!i.endsWith("/v1")&&console.warn(`[authui] endpoint should end with /v1 (got "${e.endpoint}"). Without it Appwrite returns HTML 404 pages.`),this.config=e,this.client=new Ae().setEndpoint(e.endpoint).setProject(e.project),this.preview=e.preview?new Qi:null,this.account=this.preview?this.preview:new Vt(this.client),this.teams=null,this.activeTeamId=si(e.project),this.setState({configured:!0,status:"loading",configError:null}),this.preview?this.refresh():typeof window<"u"&&this.handleRedirect().then(()=>this.refresh())}notifyConfigIncomplete(){if(this.config)return;const e=this.getStrings().errorConfigIncomplete;console.warn(`[authui] ${e}`),this.setState({status:"signed-out",user:null,mfaFactors:null,configured:!1,configError:e,pending:{type:"notice",tone:"error",message:e}})}get isConfigured(){return this.config!==null}get isPreview(){return this.preview!==null}async previewSignIn(){this.preview&&(this.preview.signInDirectly(),await this.refresh())}getConfig(){return this.config}getClient(){return this.client}getAccount(){return this.account}async listTeams(){if(this.preview||!this.client||this.state.status!=="signed-in")return[];this.teams??=new Ki(this.client);try{return(await this.teams.list()).teams??[]}catch(e){this.fail(e)}}getActiveTeamId(){if(this.activeTeamId)return this.activeTeamId;const e=this.config?.project;return e?(this.activeTeamId=si(e),this.activeTeamId):null}setActiveTeam(e){const i=this.config?.project;i&&zi(i,e?.$id??null),this.activeTeamId=e?.$id??null,this.emit("active-team",{teamId:this.activeTeamId,team:e})}getStrings(){return{...Yi,...this.config?.strings??{}}}getState(){return{...this.state}}get user(){return this.state.user}on(e,i){let t=this.listeners.get(e);return t||(t=new Set,this.listeners.set(e,t)),t.add(i),()=>t.delete(i)}emit(e,i){this.listeners.get(e)?.forEach(t=>{try{t(i)}catch(o){console.error("[authui] listener failed",o)}}),typeof window<"u"&&window.dispatchEvent(new CustomEvent(`authui:${e}`,{detail:i}))}setState(e){this.state={...this.state,...e},this.emit("change",this.getState())}fail(e){const i=Je(e);throw this.emit("error",i),e}acct(){if(!this.account)throw new Error(this.getStrings().errorNotConfigured);return this.account}refresh(){return this.refreshPromise?this.refreshPromise:(this.refreshPromise=(async()=>{if(!this.account){this.setState({status:"signed-out",user:null,mfaFactors:null});return}const e=this.state.status==="signed-in";try{const i=await this.account.get();this.setState({status:"signed-in",user:i,mfaFactors:null,configError:null}),e||this.emit("signed-in",i)}catch(i){if(ut(i,ee.moreFactorsRequired)){let t=null;try{t=await Se(this.account,["listMFAFactors","listMfaFactors"],[])}catch{}this.setState({status:"mfa-required",user:null,mfaFactors:t})}else if(ut(i,ee.userBlocked))await this.purgeLocalSession(),this.setState({status:"signed-out",user:null,mfaFactors:null,pending:{type:"notice",tone:"error",message:this.getStrings().errorUserBlocked}}),e&&this.emit("signed-out",void 0);else if(!e&&Ti(i)){const o=pt(i,this.getStrings())||this.getStrings().errorConfig;console.warn(`[authui] ${o} (endpoint=${this.config?.endpoint??"?"}, project=${this.config?.project??"?"})`);const a=Je(i);this.emit("error",{message:o,type:a.type,code:a.code}),this.setState({status:"signed-out",user:null,mfaFactors:null,configError:o,pending:{type:"notice",tone:"error",message:o}})}else this.setState({status:"signed-out",user:null,mfaFactors:null,configError:null}),e&&this.emit("signed-out",void 0)}})().finally(()=>{this.refreshPromise=null}),this.refreshPromise)}async afterSignIn(){if(await this.refresh(),this.state.status!=="signed-in"&&this.state.status!=="mfa-required"){const i=this.state.pending;if(i?.type==="notice"&&i.tone==="error")throw Object.assign(new Error(i.message),{type:ee.userBlocked,code:401})}const e=this.config?.successUrl;e&&this.state.status==="signed-in"&&typeof window<"u"&&window.location.assign(e)}async purgeLocalSession(){try{await this.account?.deleteSession("current")}catch{}try{this.client?.setSession("")}catch{}if(typeof localStorage<"u")try{localStorage.removeItem("cookieFallback")}catch{}this.config&&!this.preview&&(this.client=new Ae().setEndpoint(this.config.endpoint).setProject(this.config.project),this.account=new Vt(this.client))}async signInWithEmailPassword(e,i){try{await this.acct().createEmailPasswordSession(e.trim(),i)}catch(t){this.fail(t)}await this.afterSignIn()}async signUp(e,i,t){try{await this.acct().create(He.unique(),e.trim(),i,t?.trim()||void 0),await this.acct().createEmailPasswordSession(e.trim(),i)}catch(o){this.fail(o)}await this.afterSignIn()}async signInAnonymously(){try{await this.acct().createAnonymousSession()}catch(e){this.fail(e)}await this.afterSignIn()}async signInWithOAuth(e){const i=this.config?.oauthScopes?.[e];let t;try{t=this.acct().createOAuth2Token(e,this.redirectUrl("oauth"),this.redirectUrl("oauth-failed"),i)}catch(o){this.fail(o)}if(t&&typeof t.then=="function"){try{await t}catch(o){this.fail(o)}await this.afterSignIn()}}async sendMagicUrl(e){try{return await this.acct().createMagicURLToken(He.unique(),e.trim(),this.redirectUrl("magic-url"),this.config?.securityPhrase??!0)}catch(i){return this.fail(i)}}async sendEmailOtp(e){try{return await this.acct().createEmailToken(He.unique(),e.trim(),this.config?.securityPhrase??!0)}catch(i){return this.fail(i)}}async sendPhoneOtp(e){try{return await this.acct().createPhoneToken(He.unique(),e.replace(/[\s()-]/g,""))}catch(i){return this.fail(i)}}async signInWithToken(e,i){try{await this.acct().createSession(e,i.trim())}catch(t){this.fail(t)}await this.afterSignIn()}async createMfaChallenge(e){try{return await Se(this.acct(),["createMFAChallenge","createMfaChallenge"],[e])}catch(i){return this.fail(i)}}async completeMfaChallenge(e,i,t={}){try{await Se(this.acct(),["updateMFAChallenge","updateMfaChallenge"],[e,i.trim()])}catch(o){this.fail(o)}(t.signIn??!0)&&await this.afterSignIn()}async listMfaFactors(){try{return await Se(this.acct(),["listMFAFactors","listMfaFactors"],[])}catch(e){return this.fail(e)}}async setMfaEnabled(e){try{await this.acct().updateMFA(e)}catch(i){this.fail(i)}await this.refresh()}async addAuthenticator(){try{return await Se(this.acct(),["createMFAAuthenticator","createMfaAuthenticator"],["totp"])}catch(e){return this.fail(e)}}async verifyAuthenticator(e){try{await Se(this.acct(),["updateMFAAuthenticator","updateMfaAuthenticator"],["totp",e.trim()])}catch(i){this.fail(i)}await this.refresh()}async removeAuthenticator(){try{await Se(this.acct(),["deleteMFAAuthenticator","deleteMfaAuthenticator"],["totp"])}catch(e){this.fail(e)}await this.refresh()}async createRecoveryCodes(){try{return(await Se(this.acct(),["createMFARecoveryCodes","createMfaRecoveryCodes"],[])).recoveryCodes}catch(e){return this.fail(e)}}async regenerateRecoveryCodes(){try{return(await Se(this.acct(),["updateMFARecoveryCodes","updateMfaRecoveryCodes"],[])).recoveryCodes}catch(e){return this.fail(e)}}async getRecoveryCodes(){try{return(await Se(this.acct(),["getMFARecoveryCodes","getMfaRecoveryCodes"],[])).recoveryCodes}catch(e){return this.fail(e)}}async sendPasswordRecovery(e){try{await this.acct().createRecovery(e.trim(),this.redirectUrl("recovery"))}catch(i){this.fail(i)}}async completePasswordRecovery(e,i,t){try{await this.acct().updateRecovery(e,i,t)}catch(o){this.fail(o)}this.setState({pending:null})}async signOut(e="current"){try{await this.acct().deleteSession(e)}catch(i){this.fail(i)}if(e==="current"){this.setState({status:"signed-out",user:null,mfaFactors:null}),this.emit("signed-out",void 0);return}try{await this.acct().get()}catch{this.setState({status:"signed-out",user:null,mfaFactors:null}),this.emit("signed-out",void 0)}}async signOutEverywhere(){try{await this.acct().deleteSessions()}catch(e){this.fail(e)}this.setState({status:"signed-out",user:null,mfaFactors:null}),this.emit("signed-out",void 0)}async listSessions(){try{return(await this.acct().listSessions()).sessions}catch(e){return this.fail(e)}}async listIdentities(){try{return(await this.acct().listIdentities()).identities}catch(e){return this.fail(e)}}async deleteIdentity(e){try{await this.acct().deleteIdentity(e)}catch(i){this.fail(i)}}async listLogs(){try{return(await this.acct().listLogs()).logs}catch(e){return this.fail(e)}}async updateName(e){try{await this.acct().updateName(e.trim())}catch(i){this.fail(i)}await this.refresh()}async updateEmail(e,i){try{await this.acct().updateEmail(e.trim(),i)}catch(t){this.fail(t)}await this.refresh()}async updatePhone(e,i){try{await this.acct().updatePhone(e.replace(/[\s()-]/g,""),i)}catch(t){this.fail(t)}await this.refresh()}async updatePassword(e,i){try{await this.acct().updatePassword(e,i||void 0)}catch(t){this.fail(t)}await this.refresh()}async convertGuest(e,i,t){try{await this.acct().updateEmail(e.trim(),i),t?.trim()&&await this.acct().updateName(t.trim())}catch(o){this.fail(o)}await this.refresh()}async sendEmailVerification(){try{await Se(this.acct(),["createEmailVerification","createVerification"],[this.redirectUrl("verify-email")])}catch(e){this.fail(e)}}async sendPhoneVerification(){try{await this.acct().createPhoneVerification()}catch(e){this.fail(e)}}async confirmPhoneVerification(e){const i=this.state.user?.$id;if(i){try{await this.acct().updatePhoneVerification(i,e.trim())}catch(t){this.fail(t)}await this.refresh()}}async deleteAccount(){try{await this.acct().updateStatus()}catch(e){this.fail(e)}this.setState({status:"signed-out",user:null,mfaFactors:null}),this.emit("signed-out",void 0)}redirectUrl(e){const i=this.config?.redirectUrl??(typeof window<"u"?window.location.origin+window.location.pathname:""),t=new URL(i,typeof window<"u"?window.location.href:void 0);for(const o of Fi)t.searchParams.delete(o);return t.searchParams.set(li,e),t.toString()}setPending(e){this.setState({pending:e})}async handleRedirect(){if(typeof window>"u")return!1;const e=new URLSearchParams(window.location.search),i=e.get(li);if(!i)return!1;const t=e.get("userId")??"",o=e.get("secret")??"";this.cleanUrl();const a=()=>{this.setState({pending:{type:"notice",message:this.getStrings().errorInvalidToken,tone:"error"}})};try{switch(i){case"oauth":case"magic-url":t&&o?(await this.acct().createSession(t,o),i==="oauth"&&ci()):(i==="oauth"&&di(),a());break;case"oauth-failed":di(),this.setState({pending:{type:"notice",tone:"error",message:this.getStrings().errorOAuth}});break;case"recovery":t&&o?this.setState({pending:{type:"reset-password",userId:t,secret:o}}):a();break;case"verify-email":t&&o?(await Se(this.acct(),["updateEmailVerification","updateVerification"],[t,o]),this.setState({pending:{type:"notice",message:this.getStrings().emailVerified,tone:"success"}})):a();break}}catch(s){const r=Je(s),d=pt(s,this.getStrings(),"link");this.emit("error",r),this.setState({pending:{type:"notice",message:d,tone:"error"}})}return!0}cleanUrl(){const e=new URL(window.location.href);for(const i of Fi)e.searchParams.delete(i);window.history.replaceState(window.history.state,"",e.toString())}reset(){this.client=null,this.account=null,this.teams=null,this.activeTeamId=null,this.preview=null,this.config=null,this.state=en(),this.listeners.clear()}}const x=new tn;class $o{constructor(){this.listeners=new Set,this.observer=null,this.media=null,this.notify=()=>{const e=this.isDark("auto");this.listeners.forEach(i=>i(e))}}isDark(e="auto"){if(e==="dark")return!0;if(e==="light"||typeof document>"u")return!1;const i=document.documentElement.classList;return i.contains("dark")?!0:i.contains("light")?!1:document.documentElement.dataset.theme==="dark"?!0:document.documentElement.dataset.theme==="light"?!1:typeof window<"u"&&!!window.matchMedia?.("(prefers-color-scheme: dark)").matches}subscribe(e){return this.listeners.add(e),this.start(),()=>{this.listeners.delete(e),this.listeners.size===0&&this.stop()}}start(){this.observer||typeof document>"u"||(this.observer=new MutationObserver(this.notify),this.observer.observe(document.documentElement,{attributes:!0,attributeFilter:["class","data-theme"]}),typeof window<"u"&&window.matchMedia&&(this.media=window.matchMedia("(prefers-color-scheme: dark)"),this.media.addEventListener?.("change",this.notify)))}stop(){this.observer?.disconnect(),this.observer=null,this.media?.removeEventListener?.("change",this.notify),this.media=null}}const nn=new $o,on={none:"0px",sm:"0.25rem",md:"0.625rem",lg:"0.875rem",xl:"1.125rem",full:"1.5rem"},jo=Le`
|
|
9
|
+
`+K+"}":"{"+Y.join(",")+"}",o=K,q}}typeof i.stringify!="function"&&(i.stringify=function(p,u,m){var j;if(o="",a="",typeof m=="number")for(j=0;j<m;j+=1)a+=" ";else typeof m=="string"&&(a=m);if(r=u,u&&typeof u!="function"&&(typeof u!="object"||typeof u.length!="number"))throw new Error("JSON.stringify");return c("",{"":p})})})()})(Bt)),Bt.exports}var Xt,Xi;function Jn(){if(Xi)return Xt;Xi=1;var n=null;const e=/(?:_|\\u005[Ff])(?:_|\\u005[Ff])(?:p|\\u0070)(?:r|\\u0072)(?:o|\\u006[Ff])(?:t|\\u0074)(?:o|\\u006[Ff])(?:_|\\u005[Ff])(?:_|\\u005[Ff])/,i=/(?:c|\\u0063)(?:o|\\u006[Ff])(?:n|\\u006[Ee])(?:s|\\u0073)(?:t|\\u0074)(?:r|\\u0072)(?:u|\\u0075)(?:c|\\u0063)(?:t|\\u0074)(?:o|\\u006[Ff])(?:r|\\u0072)/;var t=function(o){var a={strict:!1,storeAsString:!1,alwaysParseAsBig:!1,useNativeBigInt:!1,protoAction:"error",constructorAction:"error"};if(o!=null){if(o.strict===!0&&(a.strict=!0),o.storeAsString===!0&&(a.storeAsString=!0),a.alwaysParseAsBig=o.alwaysParseAsBig===!0?o.alwaysParseAsBig:!1,a.useNativeBigInt=o.useNativeBigInt===!0?o.useNativeBigInt:!1,typeof o.constructorAction<"u")if(o.constructorAction==="error"||o.constructorAction==="ignore"||o.constructorAction==="preserve")a.constructorAction=o.constructorAction;else throw new Error(`Incorrect value for constructorAction option, must be "error", "ignore" or undefined but passed ${o.constructorAction}`);if(typeof o.protoAction<"u")if(o.protoAction==="error"||o.protoAction==="ignore"||o.protoAction==="preserve")a.protoAction=o.protoAction;else throw new Error(`Incorrect value for protoAction option, must be "error", "ignore" or undefined but passed ${o.protoAction}`)}var s,r,d={'"':'"',"\\":"\\","/":"/",b:"\b",f:"\f",n:`
|
|
10
|
+
`,r:"\r",t:" "},c,p=function(H){throw{name:"SyntaxError",message:H,at:s,text:c}},u=function(H){return H&&H!==r&&p("Expected '"+H+"' instead of '"+r+"'"),r=c.charAt(s),s+=1,r},m=function(){var H,Z="";for(r==="-"&&(Z="-",u("-"));r>="0"&&r<="9";)Z+=r,u();if(r===".")for(Z+=".";u()&&r>="0"&&r<="9";)Z+=r;if(r==="e"||r==="E")for(Z+=r,u(),(r==="-"||r==="+")&&(Z+=r,u());r>="0"&&r<="9";)Z+=r,u();if(H=+Z,!isFinite(H))p("Bad number");else return n==null&&(n=Di()),Z.length>15?a.storeAsString?Z:a.useNativeBigInt?BigInt(Z):new n(Z):a.alwaysParseAsBig?a.useNativeBigInt?BigInt(H):new n(H):H},j=function(){var H,Z,se="",D;if(r==='"')for(var N=s;u();){if(r==='"')return s-1>N&&(se+=c.substring(N,s-1)),u(),se;if(r==="\\"){if(s-1>N&&(se+=c.substring(N,s-1)),u(),r==="u"){for(D=0,Z=0;Z<4&&(H=parseInt(u(),16),!!isFinite(H));Z+=1)D=D*16+H;se+=String.fromCharCode(D)}else if(typeof d[r]=="string")se+=d[r];else break;N=s}}p("Bad string")},q=function(){for(;r&&r<=" ";)u()},T=function(){switch(r){case"t":return u("t"),u("r"),u("u"),u("e"),!0;case"f":return u("f"),u("a"),u("l"),u("s"),u("e"),!1;case"n":return u("n"),u("u"),u("l"),u("l"),null}p("Unexpected '"+r+"'")},K,Y=function(){var H=[];if(r==="["){if(u("["),q(),r==="]")return u("]"),H;for(;r;){if(H.push(K()),q(),r==="]")return u("]"),H;u(","),q()}}p("Bad array")},L=function(){var H,Z=Object.create(null);if(r==="{"){if(u("{"),q(),r==="}")return u("}"),Z;for(;r;){if(H=j(),q(),u(":"),a.strict===!0&&Object.hasOwnProperty.call(Z,H)&&p('Duplicate key "'+H+'"'),e.test(H)===!0?a.protoAction==="error"?p("Object contains forbidden prototype property"):a.protoAction==="ignore"?K():Z[H]=K():i.test(H)===!0?a.constructorAction==="error"?p("Object contains forbidden constructor property"):a.constructorAction==="ignore"?K():Z[H]=K():Z[H]=K(),q(),r==="}")return u("}"),Z;u(","),q()}}p("Bad object")};return K=function(){switch(q(),r){case"{":return L();case"[":return Y();case'"':return j();case"-":return m();default:return r>="0"&&r<="9"?m():T()}},function(H,Z){var se;return c=H+"",s=0,r=" ",se=K(),q(),r&&p("Syntax error"),typeof Z=="function"?(function D(N,ie){var W,R=N[ie];return R&&typeof R=="object"&&Object.keys(R).forEach(function(J){W=D(R,J),W!==void 0?R[J]=W:delete R[J]}),Z.call(N,ie,R)})({"":se},""):se}};return Xt=t,Xt}var Vi;function Zn(){if(Vi)return dt.exports;Vi=1;var n=Yn().stringify,e=Jn();return dt.exports=function(i){return{parse:e(i),stringify:n}},dt.exports.parse=e(),dt.exports.stringify=n,dt.exports}var Qn=Zn();const Vt=Gn(Qn);function we(n,e,i,t){function o(a){return a instanceof i?a:new i(function(s){s(a)})}return new(i||(i=Promise))(function(a,s){function r(p){try{c(t.next(p))}catch(u){s(u)}}function d(p){try{c(t.throw(p))}catch(u){s(u)}}function c(p){p.done?a(p.value):o(p.value).then(r,d)}c((t=t.apply(n,e||[])).next())})}function Tn(n,e,i,t){if(typeof e=="function"?n!==e||!t:!e.has(n))throw new TypeError("Cannot read private member from an object whose class did not declare it");return i==="m"?t:i==="a"?t.call(n):t?t.value:e.get(n)}typeof SuppressedError=="function"&&SuppressedError;var It,Wi;class He{static custom(e){return e}static unique(e=7){const i=Tn(It,It,"m",Wi).call(It);let t="";for(let o=0;o<e;o++){const a=Math.floor(Math.random()*16).toString(16);t+=a}return i+t}}It=He,Wi=function(){const e=new Date,i=Math.floor(e.getTime()/1e3),t=e.getMilliseconds();return i.toString(16)+t.toString(16).padStart(5,"0")};const At=Vt({useNativeBigInt:!0});class C{constructor(e,i,t){this.method=e,this.attribute=i,t!==void 0&&(Array.isArray(t)?this.values=t:this.values=[t])}toString(){return At.stringify({method:this.method,attribute:this.attribute,values:this.values})}}C.equal=(n,e)=>new C("equal",n,e).toString(),C.notEqual=(n,e)=>new C("notEqual",n,e).toString(),C.regex=(n,e)=>new C("regex",n,e).toString(),C.lessThan=(n,e)=>new C("lessThan",n,e).toString(),C.lessThanEqual=(n,e)=>new C("lessThanEqual",n,e).toString(),C.greaterThan=(n,e)=>new C("greaterThan",n,e).toString(),C.greaterThanEqual=(n,e)=>new C("greaterThanEqual",n,e).toString(),C.isNull=n=>new C("isNull",n).toString(),C.isNotNull=n=>new C("isNotNull",n).toString(),C.exists=n=>new C("exists",void 0,n).toString(),C.notExists=n=>new C("notExists",void 0,n).toString(),C.between=(n,e,i)=>new C("between",n,[e,i]).toString(),C.startsWith=(n,e)=>new C("startsWith",n,e).toString(),C.endsWith=(n,e)=>new C("endsWith",n,e).toString(),C.select=n=>new C("select",void 0,n).toString(),C.search=(n,e)=>new C("search",n,e).toString(),C.orderDesc=n=>new C("orderDesc",n).toString(),C.orderAsc=n=>new C("orderAsc",n).toString(),C.orderRandom=()=>new C("orderRandom").toString(),C.cursorAfter=n=>new C("cursorAfter",void 0,n).toString(),C.cursorBefore=n=>new C("cursorBefore",void 0,n).toString(),C.limit=n=>new C("limit",void 0,n).toString(),C.offset=n=>new C("offset",void 0,n).toString(),C.contains=(n,e)=>new C("contains",n,e).toString(),C.containsAny=(n,e)=>new C("containsAny",n,e).toString(),C.containsAll=(n,e)=>new C("containsAll",n,e).toString(),C.notContains=(n,e)=>new C("notContains",n,e).toString(),C.notSearch=(n,e)=>new C("notSearch",n,e).toString(),C.notBetween=(n,e,i)=>new C("notBetween",n,[e,i]).toString(),C.notStartsWith=(n,e)=>new C("notStartsWith",n,e).toString(),C.notEndsWith=(n,e)=>new C("notEndsWith",n,e).toString(),C.createdBefore=n=>C.lessThan("$createdAt",n),C.createdAfter=n=>C.greaterThan("$createdAt",n),C.createdBetween=(n,e)=>C.between("$createdAt",n,e),C.updatedBefore=n=>C.lessThan("$updatedAt",n),C.updatedAfter=n=>C.greaterThan("$updatedAt",n),C.updatedBetween=(n,e)=>C.between("$updatedAt",n,e),C.or=n=>new C("or",void 0,n.map(e=>At.parse(e))).toString(),C.and=n=>new C("and",void 0,n.map(e=>At.parse(e))).toString(),C.elemMatch=(n,e)=>new C("elemMatch",n,e.map(i=>At.parse(i))).toString(),C.distanceEqual=(n,e,i,t=!0)=>new C("distanceEqual",n,[[e,i,t]]).toString(),C.distanceNotEqual=(n,e,i,t=!0)=>new C("distanceNotEqual",n,[[e,i,t]]).toString(),C.distanceGreaterThan=(n,e,i,t=!0)=>new C("distanceGreaterThan",n,[[e,i,t]]).toString(),C.distanceLessThan=(n,e,i,t=!0)=>new C("distanceLessThan",n,[[e,i,t]]).toString(),C.vectorDot=(n,e)=>new C("vectorDot",n,[e]).toString(),C.vectorCosine=(n,e)=>new C("vectorCosine",n,[e]).toString(),C.vectorEuclidean=(n,e)=>new C("vectorEuclidean",n,[e]).toString(),C.intersects=(n,e)=>new C("intersects",n,[e]).toString(),C.notIntersects=(n,e)=>new C("notIntersects",n,[e]).toString(),C.crosses=(n,e)=>new C("crosses",n,[e]).toString(),C.notCrosses=(n,e)=>new C("notCrosses",n,[e]).toString(),C.overlaps=(n,e)=>new C("overlaps",n,[e]).toString(),C.notOverlaps=(n,e)=>new C("notOverlaps",n,[e]).toString(),C.touches=(n,e)=>new C("touches",n,[e]).toString(),C.notTouches=(n,e)=>new C("notTouches",n,[e]).toString();const zn=Vt({storeAsString:!1}),On=Vt({useNativeBigInt:!0}),Fn=BigInt(Number.MAX_SAFE_INTEGER),eo=BigInt(Number.MIN_SAFE_INTEGER),to=BigInt("9223372036854775807"),io=BigInt("-9223372036854775808");function no(n){return n!==null&&typeof n=="object"&&n._isBigNumber===!0&&typeof n.isInteger=="function"&&typeof n.toFixed=="function"&&typeof n.toNumber=="function"}function oo(n,e){if(no(e)){if(e.isInteger()){const i=e.toFixed(),t=BigInt(i);return t>=eo&&t<=Fn?Number(i):t>=io&&t<=to?t:e.toNumber()}return e.toNumber()}return e}const ye={parse:n=>zn.parse(n,oo),stringify:On.stringify};class h extends Error{constructor(e,i=0,t="",o=""){super(e),this.name="AppwriteException",this.message=e,this.code=i,this.type=t,this.response=o}}class Ae{constructor(){this.config={endpoint:"https://cloud.appwrite.io/v1",endpointRealtime:"",project:"",jwt:"",bearer:"",locale:"",session:"",devkey:"",cookie:"",impersonateuserid:"",impersonateuseremail:"",impersonateuserphone:""},this.headers={"x-sdk-name":"Web","x-sdk-platform":"client","x-sdk-language":"web","x-sdk-version":"27.0.0","X-Appwrite-Response-Format":"2.0.0"},this.realtime={socket:void 0,timeout:void 0,heartbeat:void 0,url:"",channels:new Set,subscriptions:new Map,pendingSubscribes:new Map,reconnect:!0,reconnectAttempts:0,lastMessage:void 0,connect:()=>{clearTimeout(this.realtime.timeout),this.realtime.timeout=window?.setTimeout(()=>{this.realtime.createSocket()},50)},getTimeout:()=>{switch(!0){case this.realtime.reconnectAttempts<5:return 1e3;case this.realtime.reconnectAttempts<15:return 5e3;case this.realtime.reconnectAttempts<100:return 1e4;default:return 6e4}},createHeartbeat:()=>{this.realtime.heartbeat&&clearTimeout(this.realtime.heartbeat),this.realtime.heartbeat=window?.setInterval(()=>{var e;(e=this.realtime.socket)===null||e===void 0||e.send(ye.stringify({type:"ping"}))},2e4)},createSocket:()=>{var e,i,t,o,a;if(this.realtime.subscriptions.size<1){this.realtime.reconnect=!1,(e=this.realtime.socket)===null||e===void 0||e.close();return}let r="project="+encodeURIComponent((i=this.config.project)!==null&&i!==void 0?i:"");this.config.jwt&&(r+="&jwt="+encodeURIComponent(this.config.jwt));const d=this.config.endpointRealtime+"/realtime?"+r;d!==this.realtime.url||!this.realtime.socket||((t=this.realtime.socket)===null||t===void 0?void 0:t.readyState)>WebSocket.OPEN?(this.realtime.socket&&((o=this.realtime.socket)===null||o===void 0?void 0:o.readyState)<WebSocket.CLOSING&&(this.realtime.reconnect=!1,this.realtime.socket.close()),this.realtime.url=d,this.realtime.socket=new WebSocket(d),this.realtime.socket.addEventListener("message",this.realtime.onMessage),this.realtime.socket.addEventListener("open",c=>{this.realtime.reconnectAttempts=0,this.realtime.createHeartbeat()}),this.realtime.socket.addEventListener("close",c=>{var p,u,m;if(!this.realtime.reconnect||((u=(p=this.realtime)===null||p===void 0?void 0:p.lastMessage)===null||u===void 0?void 0:u.type)==="error"&&((m=this.realtime)===null||m===void 0?void 0:m.lastMessage.data).code===1008){this.realtime.reconnect=!0;return}const j=this.realtime.getTimeout();console.error(`Realtime got disconnected. Reconnect will be attempted in ${j/1e3} seconds.`,c.reason),setTimeout(()=>{this.realtime.reconnectAttempts++,this.realtime.createSocket()},j)})):((a=this.realtime.socket)===null||a===void 0?void 0:a.readyState)===WebSocket.OPEN&&this.realtime.sendPendingSubscribes()},sendPendingSubscribes:()=>{if(!this.realtime.socket||this.realtime.socket.readyState!==WebSocket.OPEN||this.realtime.pendingSubscribes.size<1)return;const e=Array.from(this.realtime.pendingSubscribes.values());this.realtime.pendingSubscribes.clear(),this.realtime.socket.send(ye.stringify({type:"subscribe",data:e}))},onMessage:e=>{var i,t;try{const o=ye.parse(e.data);switch(this.realtime.lastMessage=o,o.type){case"connected":{const a=o.data;let s=this.config.session;if(!s){const r=ye.parse((i=window.localStorage.getItem("cookieFallback"))!==null&&i!==void 0?i:"{}");s=r?.[`a_session_${this.config.project}`]}s&&!a?.user&&((t=this.realtime.socket)===null||t===void 0||t.send(ye.stringify({type:"authentication",data:{session:s}}))),this.realtime.subscriptions.forEach((r,d)=>{var c;this.realtime.pendingSubscribes.set(d,{subscriptionId:d,channels:r.channels,queries:(c=r.queries)!==null&&c!==void 0?c:[]})}),this.realtime.sendPendingSubscribes();break}case"response":break;case"event":{const a=o.data;if(!a?.channels)break;const s=a.subscriptions;if(s&&s.length>0)for(const r of s){const d=this.realtime.subscriptions.get(r);d&&setTimeout(()=>d.callback(a))}else{if(!a.channels.some(d=>this.realtime.channels.has(d)))break;this.realtime.subscriptions.forEach(d=>{a.channels.some(c=>d.channels.includes(c))&&setTimeout(()=>d.callback(a))})}break}case"pong":break;case"error":throw o.data;default:break}}catch(o){console.error(o)}}}}getHeaders(){return Object.assign({},this.headers)}setEndpoint(e){if(!e||typeof e!="string")throw new h("Endpoint must be a valid string");if(!e.startsWith("http://")&&!e.startsWith("https://"))throw new h("Invalid endpoint URL: "+e);return this.config.endpoint=e,this.config.endpointRealtime=e.replace("https://","wss://").replace("http://","ws://"),this}setEndpointRealtime(e){if(!e||typeof e!="string")throw new h("Endpoint must be a valid string");if(!e.startsWith("ws://")&&!e.startsWith("wss://"))throw new h("Invalid realtime endpoint URL: "+e);return this.config.endpointRealtime=e,this}setProject(e){return this.config.project=e,this}setJWT(e){return this.headers["X-Appwrite-JWT"]=e,this.config.jwt=e,this}setBearer(e){return this.headers.Authorization=`Bearer ${e}`,this.config.bearer=e,this}setLocale(e){return this.headers["X-Appwrite-Locale"]=e,this.config.locale=e,this}setSession(e){return this.headers["X-Appwrite-Session"]=e,this.config.session=e,this}setDevKey(e){return this.headers["X-Appwrite-Dev-Key"]=e,this.config.devkey=e,this}setCookie(e){return this.headers.Cookie=e,this.config.cookie=e,this}setImpersonateUserId(e){return this.headers["X-Appwrite-Impersonate-User-Id"]=e,this.config.impersonateuserid=e,this}setImpersonateUserEmail(e){return this.headers["X-Appwrite-Impersonate-User-Email"]=e,this.config.impersonateuseremail=e,this}setImpersonateUserPhone(e){return this.headers["X-Appwrite-Impersonate-User-Phone"]=e,this.config.impersonateuserphone=e,this}subscribe(e,i,t=[]){const a=(Array.isArray(e)?e:[e]).map(c=>typeof c=="string"?c:c&&typeof c.toString=="function"?c.toString():String(c));a.forEach(c=>this.realtime.channels.add(c));const s=(t??[]).map(c=>typeof c=="string"?c:c.toString());let r="";const d=this.realtime.subscriptions.size+1;for(let c=0;c<d;c++){const p=He.unique();if(!this.realtime.subscriptions.has(p)){r=p;break}}if(r==="")throw new h("Failed to generate unique subscription id");return this.realtime.subscriptions.set(r,{channels:a,queries:s,callback:i}),this.realtime.pendingSubscribes.set(r,{subscriptionId:r,channels:a,queries:s}),this.realtime.connect(),()=>{this.realtime.subscriptions.delete(r),this.realtime.pendingSubscribes.delete(r);const c=new Set;this.realtime.subscriptions.forEach(p=>{p.channels.forEach(u=>c.add(u))}),this.realtime.channels.forEach(p=>{c.has(p)||this.realtime.channels.delete(p)}),this.realtime.connect()}}prepareRequest(e,i,t={},o={}){if(e=e.toUpperCase(),t=Object.assign({},this.headers,t),typeof window<"u"&&window.localStorage){const s=window.localStorage.getItem("cookieFallback");s&&(t["X-Fallback-Cookies"]=s)}const a={method:e,headers:t};if(t["X-Appwrite-Dev-Key"]===void 0&&(a.credentials="include"),e==="GET")for(const[s,r]of Object.entries(Ae.flatten(o)))i.searchParams.append(s,r);else switch(t["content-type"]){case"application/json":a.body=ye.stringify(o);break;case"multipart/form-data":{const s=new FormData;for(const[r,d]of Object.entries(o))if(d instanceof File)s.append(r,d,d.name);else if(Array.isArray(d))for(const c of d)s.append(`${r}[]`,c);else s.append(r,d);a.body=s,delete t["content-type"];break}}return{uri:i.toString(),options:a}}chunkedUpload(e,i){return we(this,arguments,void 0,function*(t,o,a={},s={},r){var d;const[c,p]=(d=Object.entries(s).find(([J,z])=>z instanceof File))!==null&&d!==void 0?d:[];if(!p||!c)throw new Error("File not found in payload");if(p.size<=Ae.CHUNK_SIZE)return yield this.call(t,o,a,s);const u=Math.ceil(p.size/Ae.CHUNK_SIZE),m=Math.min(Ae.CHUNK_SIZE,p.size),j=Object.assign(Object.assign({},a),{"content-range":`bytes 0-${m-1}/${p.size}`}),q=p.slice(0,m),T=Object.assign({},s);T[c]=new File([q],p.name);const K=yield this.call(t,o,j,T),Y=K?.$id;if(r&&typeof r=="function"&&r({$id:Y,progress:Math.round(m/p.size*100),sizeUploaded:m,chunksTotal:u,chunksUploaded:1}),u===1)return K;const L=[];for(let J=1;J<u;J++){const z=J*Ae.CHUNK_SIZE,ne=Math.min(z+Ae.CHUNK_SIZE,p.size);L.push({start:z,end:ne})}const H=8;let Z=1,se=m,D=K,N=null,ie=!1;const W=J=>{var z;const ne=J?.chunksUploaded,ce=(z=J?.chunksTotal)!==null&&z!==void 0?z:u;return typeof ne=="number"&&typeof ce=="number"&&ne>=ce},R=J=>we(this,void 0,void 0,function*(){const z=Object.assign({},a);Y&&(z["x-appwrite-id"]=Y),z["content-range"]=`bytes ${J.start}-${J.end-1}/${p.size}`;const ne=p.slice(J.start,J.end),ce=Object.assign({},s);ce[c]=new File([ne],p.name);const de=yield this.call(t,o,z,ce);return ie||(Z++,se+=J.end-J.start,D=de,W(de)&&(N=de),r&&typeof r=="function"&&r({$id:Y,progress:Math.round(se/p.size*100),sizeUploaded:se,chunksTotal:u,chunksUploaded:Z})),de});return yield new Promise((J,z)=>{let ne=0,ce=0,de=0;const Ue=()=>{if(!ie){if(de===L.length){J();return}for(;ce<H&&ne<L.length;){const Ie=L[ne++];ce++,R(Ie).then(()=>{ce--,de++,Ue()}).catch(qe=>{ie=!0,z(qe)})}}};Ue()}),N??D})}ping(){return we(this,void 0,void 0,function*(){return this.call("GET",new URL(this.config.endpoint+"/ping"),{"X-Appwrite-Project":this.config.project,accept:"application/json"})})}call(e,i){return we(this,arguments,void 0,function*(t,o,a={},s={},r="json"){var d,c,p;const{uri:u,options:m}=this.prepareRequest(t,o,a,s);let j=null;const q=yield fetch(u,m);if(q.type==="opaque")throw new h(`Invalid Origin. Register your new client (${window.location.host}) as a new Web platform on your project console dashboard`,403,"forbidden","");const T=q.headers.get("x-appwrite-warning");if(T&&T.split(";").forEach(Y=>console.warn("Warning: "+Y)),!((d=q.headers.get("content-type"))===null||d===void 0)&&d.includes("application/json")?j=ye.parse(yield q.text()):r==="arrayBuffer"?j=yield q.arrayBuffer():j={message:yield q.text()},400<=q.status){let Y;throw!((c=q.headers.get("content-type"))===null||c===void 0)&&c.includes("application/json")||r==="arrayBuffer"?Y=ye.stringify(j):Y=j?.message,new h((p=j?.message)!==null&&p!==void 0?p:Y,q.status,j?.type,Y)}const K=q.headers.get("X-Fallback-Cookies");return typeof window<"u"&&window.localStorage&&K&&(window.console.warn("Appwrite is using localStorage for session management. Increase your security by adding a custom domain as your API endpoint."),window.localStorage.setItem("cookieFallback",K)),j&&typeof j=="object"&&Object.defineProperty(j,"toString",{value:()=>ye.stringify(j),writable:!0,enumerable:!1,configurable:!0}),j})}static flatten(e,i=""){let t={};for(const[o,a]of Object.entries(e)){const s=i?i+"["+o+"]":o;Array.isArray(a)?t=Object.assign(Object.assign({},t),Ae.flatten(a,s)):t[s]=a}return t}}Ae.CHUNK_SIZE=5242880;class ge{constructor(e){this.client=e}static flatten(e,i=""){let t={};for(const[o,a]of Object.entries(e)){const s=i?i+"["+o+"]":o;Array.isArray(a)?t=Object.assign(Object.assign({},t),ge.flatten(a,s)):t[s]=a}return t}}ge.CHUNK_SIZE=5242880;class Wt{constructor(e){this.client=e}get(){const e="/account",i={},t=new URL(this.client.config.endpoint+e),o={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",t,o,i)}create(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={userId:e,email:i[0],password:i[1],name:i[2]};const o=t.userId,a=t.email,s=t.password,r=t.name;if(typeof o>"u")throw new h('Missing required parameter: "userId"');if(typeof a>"u")throw new h('Missing required parameter: "email"');if(typeof s>"u")throw new h('Missing required parameter: "password"');const d="/account",c={};typeof o<"u"&&(c.userId=o),typeof a<"u"&&(c.email=a),typeof s<"u"&&(c.password=s),typeof r<"u"&&(c.name=r);const p=new URL(this.client.config.endpoint+d),u={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",p,u,c)}listConsents(e,...i){let t;typeof e>"u"&&i.length===0||e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={queries:e,total:i[0]};const o=t.queries,a=t.total,s="/account/consents",r={};typeof o<"u"&&(r.queries=o),typeof a<"u"&&(r.total=a);const d=new URL(this.client.config.endpoint+s),c={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",d,c,r)}getConsent(e){let i;e&&typeof e=="object"&&!Array.isArray(e)?i=e||{}:i={consentId:e};const t=i.consentId;if(typeof t>"u")throw new h('Missing required parameter: "consentId"');const o="/account/consents/{consentId}".replace("{consentId}",encodeURIComponent(String(t))),a={},s=new URL(this.client.config.endpoint+o),r={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",s,r,a)}deleteConsent(e){let i;e&&typeof e=="object"&&!Array.isArray(e)?i=e||{}:i={consentId:e};const t=i.consentId;if(typeof t>"u")throw new h('Missing required parameter: "consentId"');const o="/account/consents/{consentId}".replace("{consentId}",encodeURIComponent(String(t))),a={},s=new URL(this.client.config.endpoint+o),r={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("delete",s,r,a)}listConsentTokens(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={consentId:e,queries:i[0],total:i[1]};const o=t.consentId,a=t.queries,s=t.total;if(typeof o>"u")throw new h('Missing required parameter: "consentId"');const r="/account/consents/{consentId}/tokens".replace("{consentId}",encodeURIComponent(String(o))),d={};typeof a<"u"&&(d.queries=a),typeof s<"u"&&(d.total=s);const c=new URL(this.client.config.endpoint+r),p={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",c,p,d)}getConsentToken(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={consentId:e,tokenId:i[0]};const o=t.consentId,a=t.tokenId;if(typeof o>"u")throw new h('Missing required parameter: "consentId"');if(typeof a>"u")throw new h('Missing required parameter: "tokenId"');const s="/account/consents/{consentId}/tokens/{tokenId}".replace("{consentId}",encodeURIComponent(String(o))).replace("{tokenId}",encodeURIComponent(String(a))),r={},d=new URL(this.client.config.endpoint+s),c={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",d,c,r)}deleteConsentToken(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={consentId:e,tokenId:i[0]};const o=t.consentId,a=t.tokenId;if(typeof o>"u")throw new h('Missing required parameter: "consentId"');if(typeof a>"u")throw new h('Missing required parameter: "tokenId"');const s="/account/consents/{consentId}/tokens/{tokenId}".replace("{consentId}",encodeURIComponent(String(o))).replace("{tokenId}",encodeURIComponent(String(a))),r={},d=new URL(this.client.config.endpoint+s),c={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("delete",d,c,r)}updateEmail(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={email:e,password:i[0]};const o=t.email,a=t.password;if(typeof o>"u")throw new h('Missing required parameter: "email"');if(typeof a>"u")throw new h('Missing required parameter: "password"');const s="/account/email",r={};typeof o<"u"&&(r.email=o),typeof a<"u"&&(r.password=a);const d=new URL(this.client.config.endpoint+s),c={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("patch",d,c,r)}listIdentities(e,...i){let t;typeof e>"u"&&i.length===0||e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={queries:e,total:i[0]};const o=t.queries,a=t.total,s="/account/identities",r={};typeof o<"u"&&(r.queries=o),typeof a<"u"&&(r.total=a);const d=new URL(this.client.config.endpoint+s),c={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",d,c,r)}deleteIdentity(e){let i;e&&typeof e=="object"&&!Array.isArray(e)?i=e||{}:i={identityId:e};const t=i.identityId;if(typeof t>"u")throw new h('Missing required parameter: "identityId"');const o="/account/identities/{identityId}".replace("{identityId}",encodeURIComponent(String(t))),a={},s=new URL(this.client.config.endpoint+o),r={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json"};return this.client.call("delete",s,r,a)}createJWT(e){let i;typeof e>"u"||e&&typeof e=="object"&&!Array.isArray(e)?i=e||{}:i={duration:e};const t=i.duration,o="/account/jwts",a={};typeof t<"u"&&(a.duration=t);const s=new URL(this.client.config.endpoint+o),r={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",s,r,a)}listLogs(e,...i){let t;typeof e>"u"&&i.length===0||e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={queries:e,total:i[0]};const o=t.queries,a=t.total,s="/account/logs",r={};typeof o<"u"&&(r.queries=o),typeof a<"u"&&(r.total=a);const d=new URL(this.client.config.endpoint+s),c={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",d,c,r)}updateMFA(e){let i;e&&typeof e=="object"&&!Array.isArray(e)?i=e||{}:i={mfa:e};const t=i.mfa;if(typeof t>"u")throw new h('Missing required parameter: "mfa"');const o="/account/mfa",a={};typeof t<"u"&&(a.mfa=t);const s=new URL(this.client.config.endpoint+o),r={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("patch",s,r,a)}createMfaAuthenticator(e){let i;e&&typeof e=="object"&&!Array.isArray(e)&&"type"in e?i=e||{}:i={type:e};const t=i.type;if(typeof t>"u")throw new h('Missing required parameter: "type"');const o="/account/mfa/authenticators/{type}".replace("{type}",encodeURIComponent(String(t))),a={},s=new URL(this.client.config.endpoint+o),r={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",s,r,a)}createMFAAuthenticator(e){let i;e&&typeof e=="object"&&!Array.isArray(e)&&"type"in e?i=e||{}:i={type:e};const t=i.type;if(typeof t>"u")throw new h('Missing required parameter: "type"');const o="/account/mfa/authenticators/{type}".replace("{type}",encodeURIComponent(String(t))),a={},s=new URL(this.client.config.endpoint+o),r={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",s,r,a)}updateMfaAuthenticator(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)&&("type"in e||"otp"in e)?t=e||{}:t={type:e,otp:i[0]};const o=t.type,a=t.otp;if(typeof o>"u")throw new h('Missing required parameter: "type"');if(typeof a>"u")throw new h('Missing required parameter: "otp"');const s="/account/mfa/authenticators/{type}".replace("{type}",encodeURIComponent(String(o))),r={};typeof a<"u"&&(r.otp=a);const d=new URL(this.client.config.endpoint+s),c={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("put",d,c,r)}updateMFAAuthenticator(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)&&("type"in e||"otp"in e)?t=e||{}:t={type:e,otp:i[0]};const o=t.type,a=t.otp;if(typeof o>"u")throw new h('Missing required parameter: "type"');if(typeof a>"u")throw new h('Missing required parameter: "otp"');const s="/account/mfa/authenticators/{type}".replace("{type}",encodeURIComponent(String(o))),r={};typeof a<"u"&&(r.otp=a);const d=new URL(this.client.config.endpoint+s),c={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("put",d,c,r)}deleteMfaAuthenticator(e){let i;e&&typeof e=="object"&&!Array.isArray(e)&&"type"in e?i=e||{}:i={type:e};const t=i.type;if(typeof t>"u")throw new h('Missing required parameter: "type"');const o="/account/mfa/authenticators/{type}".replace("{type}",encodeURIComponent(String(t))),a={},s=new URL(this.client.config.endpoint+o),r={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json"};return this.client.call("delete",s,r,a)}deleteMFAAuthenticator(e){let i;e&&typeof e=="object"&&!Array.isArray(e)&&"type"in e?i=e||{}:i={type:e};const t=i.type;if(typeof t>"u")throw new h('Missing required parameter: "type"');const o="/account/mfa/authenticators/{type}".replace("{type}",encodeURIComponent(String(t))),a={},s=new URL(this.client.config.endpoint+o),r={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json"};return this.client.call("delete",s,r,a)}createMfaChallenge(e){let i;e&&typeof e=="object"&&!Array.isArray(e)&&"factor"in e?i=e||{}:i={factor:e};const t=i.factor;if(typeof t>"u")throw new h('Missing required parameter: "factor"');const o="/account/mfa/challenges",a={};typeof t<"u"&&(a.factor=t);const s=new URL(this.client.config.endpoint+o),r={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",s,r,a)}createMFAChallenge(e){let i;e&&typeof e=="object"&&!Array.isArray(e)&&"factor"in e?i=e||{}:i={factor:e};const t=i.factor;if(typeof t>"u")throw new h('Missing required parameter: "factor"');const o="/account/mfa/challenges",a={};typeof t<"u"&&(a.factor=t);const s=new URL(this.client.config.endpoint+o),r={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",s,r,a)}updateMfaChallenge(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={challengeId:e,otp:i[0]};const o=t.challengeId,a=t.otp;if(typeof o>"u")throw new h('Missing required parameter: "challengeId"');if(typeof a>"u")throw new h('Missing required parameter: "otp"');const s="/account/mfa/challenges",r={};typeof o<"u"&&(r.challengeId=o),typeof a<"u"&&(r.otp=a);const d=new URL(this.client.config.endpoint+s),c={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("put",d,c,r)}updateMFAChallenge(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={challengeId:e,otp:i[0]};const o=t.challengeId,a=t.otp;if(typeof o>"u")throw new h('Missing required parameter: "challengeId"');if(typeof a>"u")throw new h('Missing required parameter: "otp"');const s="/account/mfa/challenges",r={};typeof o<"u"&&(r.challengeId=o),typeof a<"u"&&(r.otp=a);const d=new URL(this.client.config.endpoint+s),c={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("put",d,c,r)}listMfaFactors(){const e="/account/mfa/factors",i={},t=new URL(this.client.config.endpoint+e),o={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",t,o,i)}listMFAFactors(){const e="/account/mfa/factors",i={},t=new URL(this.client.config.endpoint+e),o={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",t,o,i)}getMfaRecoveryCodes(){const e="/account/mfa/recovery-codes",i={},t=new URL(this.client.config.endpoint+e),o={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",t,o,i)}getMFARecoveryCodes(){const e="/account/mfa/recovery-codes",i={},t=new URL(this.client.config.endpoint+e),o={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",t,o,i)}createMfaRecoveryCodes(){const e="/account/mfa/recovery-codes",i={},t=new URL(this.client.config.endpoint+e),o={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",t,o,i)}createMFARecoveryCodes(){const e="/account/mfa/recovery-codes",i={},t=new URL(this.client.config.endpoint+e),o={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",t,o,i)}updateMfaRecoveryCodes(){const e="/account/mfa/recovery-codes",i={},t=new URL(this.client.config.endpoint+e),o={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("patch",t,o,i)}updateMFARecoveryCodes(){const e="/account/mfa/recovery-codes",i={},t=new URL(this.client.config.endpoint+e),o={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("patch",t,o,i)}updateName(e){let i;e&&typeof e=="object"&&!Array.isArray(e)?i=e||{}:i={name:e};const t=i.name;if(typeof t>"u")throw new h('Missing required parameter: "name"');const o="/account/name",a={};typeof t<"u"&&(a.name=t);const s=new URL(this.client.config.endpoint+o),r={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("patch",s,r,a)}updatePassword(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={password:e,oldPassword:i[0]};const o=t.password,a=t.oldPassword;if(typeof o>"u")throw new h('Missing required parameter: "password"');const s="/account/password",r={};typeof o<"u"&&(r.password=o),typeof a<"u"&&(r.oldPassword=a);const d=new URL(this.client.config.endpoint+s),c={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("patch",d,c,r)}updatePhone(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={phone:e,password:i[0]};const o=t.phone,a=t.password;if(typeof o>"u")throw new h('Missing required parameter: "phone"');if(typeof a>"u")throw new h('Missing required parameter: "password"');const s="/account/phone",r={};typeof o<"u"&&(r.phone=o),typeof a<"u"&&(r.password=a);const d=new URL(this.client.config.endpoint+s),c={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("patch",d,c,r)}getPrefs(){const e="/account/prefs",i={},t=new URL(this.client.config.endpoint+e),o={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",t,o,i)}updatePrefs(e){let i;e&&typeof e=="object"&&!Array.isArray(e)&&"prefs"in e?i=e||{}:i={prefs:e};const t=i.prefs;if(typeof t>"u")throw new h('Missing required parameter: "prefs"');const o="/account/prefs",a={};typeof t<"u"&&(a.prefs=t);const s=new URL(this.client.config.endpoint+o),r={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("patch",s,r,a)}createRecovery(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={email:e,url:i[0]};const o=t.email,a=t.url;if(typeof o>"u")throw new h('Missing required parameter: "email"');if(typeof a>"u")throw new h('Missing required parameter: "url"');const s="/account/recovery",r={};typeof o<"u"&&(r.email=o),typeof a<"u"&&(r.url=a);const d=new URL(this.client.config.endpoint+s),c={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",d,c,r)}updateRecovery(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={userId:e,secret:i[0],password:i[1]};const o=t.userId,a=t.secret,s=t.password;if(typeof o>"u")throw new h('Missing required parameter: "userId"');if(typeof a>"u")throw new h('Missing required parameter: "secret"');if(typeof s>"u")throw new h('Missing required parameter: "password"');const r="/account/recovery",d={};typeof o<"u"&&(d.userId=o),typeof a<"u"&&(d.secret=a),typeof s<"u"&&(d.password=s);const c=new URL(this.client.config.endpoint+r),p={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("put",c,p,d)}listSessions(){const e="/account/sessions",i={},t=new URL(this.client.config.endpoint+e),o={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",t,o,i)}deleteSessions(){const e="/account/sessions",i={},t=new URL(this.client.config.endpoint+e),o={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json"};return this.client.call("delete",t,o,i)}createAnonymousSession(){const e="/account/sessions/anonymous",i={},t=new URL(this.client.config.endpoint+e),o={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",t,o,i)}createEmailPasswordSession(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={email:e,password:i[0]};const o=t.email,a=t.password;if(typeof o>"u")throw new h('Missing required parameter: "email"');if(typeof a>"u")throw new h('Missing required parameter: "password"');const s="/account/sessions/email",r={};typeof o<"u"&&(r.email=o),typeof a<"u"&&(r.password=a);const d=new URL(this.client.config.endpoint+s),c={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",d,c,r)}updateMagicURLSession(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={userId:e,secret:i[0]};const o=t.userId,a=t.secret;if(typeof o>"u")throw new h('Missing required parameter: "userId"');if(typeof a>"u")throw new h('Missing required parameter: "secret"');const s="/account/sessions/magic-url",r={};typeof o<"u"&&(r.userId=o),typeof a<"u"&&(r.secret=a);const d=new URL(this.client.config.endpoint+s),c={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("put",d,c,r)}createOAuth2Session(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)&&("provider"in e||"success"in e||"failure"in e||"scopes"in e)?t=e||{}:t={provider:e,success:i[0],failure:i[1],scopes:i[2]};const o=t.provider,a=t.success,s=t.failure,r=t.scopes;if(typeof o>"u")throw new h('Missing required parameter: "provider"');const d="/account/sessions/oauth2/{provider}".replace("{provider}",encodeURIComponent(String(o))),c={};typeof a<"u"&&(c.success=a),typeof s<"u"&&(c.failure=s),typeof r<"u"&&(c.scopes=r);const p=new URL(this.client.config.endpoint+d);c.project=this.client.config.project;for(const[u,m]of Object.entries(ge.flatten(c)))p.searchParams.append(u,m);if(typeof window<"u"&&window?.location){window.location.href=p.toString();return}else return p.toString()}updatePhoneSession(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={userId:e,secret:i[0]};const o=t.userId,a=t.secret;if(typeof o>"u")throw new h('Missing required parameter: "userId"');if(typeof a>"u")throw new h('Missing required parameter: "secret"');const s="/account/sessions/phone",r={};typeof o<"u"&&(r.userId=o),typeof a<"u"&&(r.secret=a);const d=new URL(this.client.config.endpoint+s),c={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("put",d,c,r)}createSession(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={userId:e,secret:i[0]};const o=t.userId,a=t.secret;if(typeof o>"u")throw new h('Missing required parameter: "userId"');if(typeof a>"u")throw new h('Missing required parameter: "secret"');const s="/account/sessions/token",r={};typeof o<"u"&&(r.userId=o),typeof a<"u"&&(r.secret=a);const d=new URL(this.client.config.endpoint+s),c={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",d,c,r)}getSession(e){let i;e&&typeof e=="object"&&!Array.isArray(e)?i=e||{}:i={sessionId:e};const t=i.sessionId;if(typeof t>"u")throw new h('Missing required parameter: "sessionId"');const o="/account/sessions/{sessionId}".replace("{sessionId}",encodeURIComponent(String(t))),a={},s=new URL(this.client.config.endpoint+o),r={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",s,r,a)}updateSession(e){let i;e&&typeof e=="object"&&!Array.isArray(e)?i=e||{}:i={sessionId:e};const t=i.sessionId;if(typeof t>"u")throw new h('Missing required parameter: "sessionId"');const o="/account/sessions/{sessionId}".replace("{sessionId}",encodeURIComponent(String(t))),a={},s=new URL(this.client.config.endpoint+o),r={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("patch",s,r,a)}deleteSession(e){let i;e&&typeof e=="object"&&!Array.isArray(e)?i=e||{}:i={sessionId:e};const t=i.sessionId;if(typeof t>"u")throw new h('Missing required parameter: "sessionId"');const o="/account/sessions/{sessionId}".replace("{sessionId}",encodeURIComponent(String(t))),a={},s=new URL(this.client.config.endpoint+o),r={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json"};return this.client.call("delete",s,r,a)}updateStatus(){const e="/account/status",i={},t=new URL(this.client.config.endpoint+e),o={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("patch",t,o,i)}createPushTarget(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={targetId:e,identifier:i[0],providerId:i[1]};const o=t.targetId,a=t.identifier,s=t.providerId;if(typeof o>"u")throw new h('Missing required parameter: "targetId"');if(typeof a>"u")throw new h('Missing required parameter: "identifier"');const r="/account/targets/push",d={};typeof o<"u"&&(d.targetId=o),typeof a<"u"&&(d.identifier=a),typeof s<"u"&&(d.providerId=s);const c=new URL(this.client.config.endpoint+r),p={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",c,p,d)}updatePushTarget(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={targetId:e,identifier:i[0]};const o=t.targetId,a=t.identifier;if(typeof o>"u")throw new h('Missing required parameter: "targetId"');if(typeof a>"u")throw new h('Missing required parameter: "identifier"');const s="/account/targets/{targetId}/push".replace("{targetId}",encodeURIComponent(String(o))),r={};typeof a<"u"&&(r.identifier=a);const d=new URL(this.client.config.endpoint+s),c={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("put",d,c,r)}deletePushTarget(e){let i;e&&typeof e=="object"&&!Array.isArray(e)?i=e||{}:i={targetId:e};const t=i.targetId;if(typeof t>"u")throw new h('Missing required parameter: "targetId"');const o="/account/targets/{targetId}/push".replace("{targetId}",encodeURIComponent(String(t))),a={},s=new URL(this.client.config.endpoint+o),r={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json"};return this.client.call("delete",s,r,a)}createEmailToken(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={userId:e,email:i[0],phrase:i[1]};const o=t.userId,a=t.email,s=t.phrase;if(typeof o>"u")throw new h('Missing required parameter: "userId"');if(typeof a>"u")throw new h('Missing required parameter: "email"');const r="/account/tokens/email",d={};typeof o<"u"&&(d.userId=o),typeof a<"u"&&(d.email=a),typeof s<"u"&&(d.phrase=s);const c=new URL(this.client.config.endpoint+r),p={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",c,p,d)}createMagicURLToken(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={userId:e,email:i[0],url:i[1],phrase:i[2]};const o=t.userId,a=t.email,s=t.url,r=t.phrase;if(typeof o>"u")throw new h('Missing required parameter: "userId"');if(typeof a>"u")throw new h('Missing required parameter: "email"');const d="/account/tokens/magic-url",c={};typeof o<"u"&&(c.userId=o),typeof a<"u"&&(c.email=a),typeof s<"u"&&(c.url=s),typeof r<"u"&&(c.phrase=r);const p=new URL(this.client.config.endpoint+d),u={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",p,u,c)}createOAuth2Token(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)&&("provider"in e||"success"in e||"failure"in e||"scopes"in e)?t=e||{}:t={provider:e,success:i[0],failure:i[1],scopes:i[2]};const o=t.provider,a=t.success,s=t.failure,r=t.scopes;if(typeof o>"u")throw new h('Missing required parameter: "provider"');const d="/account/tokens/oauth2/{provider}".replace("{provider}",encodeURIComponent(String(o))),c={};typeof a<"u"&&(c.success=a),typeof s<"u"&&(c.failure=s),typeof r<"u"&&(c.scopes=r);const p=new URL(this.client.config.endpoint+d);c.project=this.client.config.project;for(const[u,m]of Object.entries(ge.flatten(c)))p.searchParams.append(u,m);if(typeof window<"u"&&window?.location){window.location.href=p.toString();return}else return p.toString()}createPhoneToken(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={userId:e,phone:i[0]};const o=t.userId,a=t.phone;if(typeof o>"u")throw new h('Missing required parameter: "userId"');if(typeof a>"u")throw new h('Missing required parameter: "phone"');const s="/account/tokens/phone",r={};typeof o<"u"&&(r.userId=o),typeof a<"u"&&(r.phone=a);const d=new URL(this.client.config.endpoint+s),c={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",d,c,r)}createEmailVerification(e){let i;e&&typeof e=="object"&&!Array.isArray(e)?i=e||{}:i={url:e};const t=i.url;if(typeof t>"u")throw new h('Missing required parameter: "url"');const o="/account/verifications/email",a={};typeof t<"u"&&(a.url=t);const s=new URL(this.client.config.endpoint+o),r={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",s,r,a)}createVerification(e){let i;e&&typeof e=="object"&&!Array.isArray(e)?i=e||{}:i={url:e};const t=i.url;if(typeof t>"u")throw new h('Missing required parameter: "url"');const o="/account/verifications/email",a={};typeof t<"u"&&(a.url=t);const s=new URL(this.client.config.endpoint+o),r={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",s,r,a)}updateEmailVerification(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={userId:e,secret:i[0]};const o=t.userId,a=t.secret;if(typeof o>"u")throw new h('Missing required parameter: "userId"');if(typeof a>"u")throw new h('Missing required parameter: "secret"');const s="/account/verifications/email",r={};typeof o<"u"&&(r.userId=o),typeof a<"u"&&(r.secret=a);const d=new URL(this.client.config.endpoint+s),c={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("put",d,c,r)}updateVerification(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={userId:e,secret:i[0]};const o=t.userId,a=t.secret;if(typeof o>"u")throw new h('Missing required parameter: "userId"');if(typeof a>"u")throw new h('Missing required parameter: "secret"');const s="/account/verifications/email",r={};typeof o<"u"&&(r.userId=o),typeof a<"u"&&(r.secret=a);const d=new URL(this.client.config.endpoint+s),c={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("put",d,c,r)}createPhoneVerification(){const e="/account/verifications/phone",i={},t=new URL(this.client.config.endpoint+e),o={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",t,o,i)}updatePhoneVerification(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={userId:e,secret:i[0]};const o=t.userId,a=t.secret;if(typeof o>"u")throw new h('Missing required parameter: "userId"');if(typeof a>"u")throw new h('Missing required parameter: "secret"');const s="/account/verifications/phone",r={};typeof o<"u"&&(r.userId=o),typeof a<"u"&&(r.secret=a);const d=new URL(this.client.config.endpoint+s),c={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("put",d,c,r)}}class Gi{constructor(e){this.client=e}getBrowser(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)&&("code"in e||"width"in e||"height"in e||"quality"in e)?t=e||{}:t={code:e,width:i[0],height:i[1],quality:i[2]};const o=t.code,a=t.width,s=t.height,r=t.quality;if(typeof o>"u")throw new h('Missing required parameter: "code"');const d="/avatars/browsers/{code}".replace("{code}",encodeURIComponent(String(o))),c={};typeof a<"u"&&(c.width=a),typeof s<"u"&&(c.height=s),typeof r<"u"&&(c.quality=r);const p=new URL(this.client.config.endpoint+d);c.project=this.client.config.project,c.impersonateuserid=this.client.config.impersonateuserid;for(const[u,m]of Object.entries(ge.flatten(c)))p.searchParams.append(u,m);return p.toString()}getCreditCard(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)&&("code"in e||"width"in e||"height"in e||"quality"in e)?t=e||{}:t={code:e,width:i[0],height:i[1],quality:i[2]};const o=t.code,a=t.width,s=t.height,r=t.quality;if(typeof o>"u")throw new h('Missing required parameter: "code"');const d="/avatars/credit-cards/{code}".replace("{code}",encodeURIComponent(String(o))),c={};typeof a<"u"&&(c.width=a),typeof s<"u"&&(c.height=s),typeof r<"u"&&(c.quality=r);const p=new URL(this.client.config.endpoint+d);c.project=this.client.config.project,c.impersonateuserid=this.client.config.impersonateuserid;for(const[u,m]of Object.entries(ge.flatten(c)))p.searchParams.append(u,m);return p.toString()}getFavicon(e){let i;e&&typeof e=="object"&&!Array.isArray(e)?i=e||{}:i={url:e};const t=i.url;if(typeof t>"u")throw new h('Missing required parameter: "url"');const o="/avatars/favicon",a={};typeof t<"u"&&(a.url=t);const s=new URL(this.client.config.endpoint+o);a.project=this.client.config.project,a.impersonateuserid=this.client.config.impersonateuserid;for(const[r,d]of Object.entries(ge.flatten(a)))s.searchParams.append(r,d);return s.toString()}getFlag(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)&&("code"in e||"width"in e||"height"in e||"quality"in e)?t=e||{}:t={code:e,width:i[0],height:i[1],quality:i[2]};const o=t.code,a=t.width,s=t.height,r=t.quality;if(typeof o>"u")throw new h('Missing required parameter: "code"');const d="/avatars/flags/{code}".replace("{code}",encodeURIComponent(String(o))),c={};typeof a<"u"&&(c.width=a),typeof s<"u"&&(c.height=s),typeof r<"u"&&(c.quality=r);const p=new URL(this.client.config.endpoint+d);c.project=this.client.config.project,c.impersonateuserid=this.client.config.impersonateuserid;for(const[u,m]of Object.entries(ge.flatten(c)))p.searchParams.append(u,m);return p.toString()}getImage(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={url:e,width:i[0],height:i[1]};const o=t.url,a=t.width,s=t.height;if(typeof o>"u")throw new h('Missing required parameter: "url"');const r="/avatars/image",d={};typeof o<"u"&&(d.url=o),typeof a<"u"&&(d.width=a),typeof s<"u"&&(d.height=s);const c=new URL(this.client.config.endpoint+r);d.project=this.client.config.project,d.impersonateuserid=this.client.config.impersonateuserid;for(const[p,u]of Object.entries(ge.flatten(d)))c.searchParams.append(p,u);return c.toString()}getInitials(e,...i){let t;typeof e>"u"&&i.length===0||e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={name:e,width:i[0],height:i[1],background:i[2]};const o=t.name,a=t.width,s=t.height,r=t.background,d="/avatars/initials",c={};typeof o<"u"&&(c.name=o),typeof a<"u"&&(c.width=a),typeof s<"u"&&(c.height=s),typeof r<"u"&&(c.background=r);const p=new URL(this.client.config.endpoint+d);c.project=this.client.config.project,c.impersonateuserid=this.client.config.impersonateuserid;for(const[u,m]of Object.entries(ge.flatten(c)))p.searchParams.append(u,m);return p.toString()}getPhoto(e,...i){let t;typeof e>"u"&&i.length===0||e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={width:e,height:i[0],quality:i[1],output:i[2],rating:i[3],userId:i[4],emailHash:i[5],name:i[6]};const o=t.width,a=t.height,s=t.quality,r=t.output,d=t.rating,c=t.userId,p=t.emailHash,u=t.name,m="/avatars/photo",j={};typeof o<"u"&&(j.width=o),typeof a<"u"&&(j.height=a),typeof s<"u"&&(j.quality=s),typeof r<"u"&&(j.output=r),typeof d<"u"&&(j.rating=d),typeof c<"u"&&(j.userId=c),typeof p<"u"&&(j.emailHash=p),typeof u<"u"&&(j.name=u);const q=new URL(this.client.config.endpoint+m);j.project=this.client.config.project,j.impersonateuserid=this.client.config.impersonateuserid;for(const[T,K]of Object.entries(ge.flatten(j)))q.searchParams.append(T,K);return q.toString()}getQR(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={text:e,size:i[0],margin:i[1],download:i[2]};const o=t.text,a=t.size,s=t.margin,r=t.download;if(typeof o>"u")throw new h('Missing required parameter: "text"');const d="/avatars/qr",c={};typeof o<"u"&&(c.text=o),typeof a<"u"&&(c.size=a),typeof s<"u"&&(c.margin=s),typeof r<"u"&&(c.download=r);const p=new URL(this.client.config.endpoint+d);c.project=this.client.config.project,c.impersonateuserid=this.client.config.impersonateuserid;for(const[u,m]of Object.entries(ge.flatten(c)))p.searchParams.append(u,m);return p.toString()}getScreenshot(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={url:e,headers:i[0],viewportWidth:i[1],viewportHeight:i[2],scale:i[3],theme:i[4],userAgent:i[5],fullpage:i[6],locale:i[7],timezone:i[8],latitude:i[9],longitude:i[10],accuracy:i[11],touch:i[12],permissions:i[13],sleep:i[14],width:i[15],height:i[16],quality:i[17],output:i[18]};const o=t.url,a=t.headers,s=t.viewportWidth,r=t.viewportHeight,d=t.scale,c=t.theme,p=t.userAgent,u=t.fullpage,m=t.locale,j=t.timezone,q=t.latitude,T=t.longitude,K=t.accuracy,Y=t.touch,L=t.permissions,H=t.sleep,Z=t.width,se=t.height,D=t.quality,N=t.output;if(typeof o>"u")throw new h('Missing required parameter: "url"');const ie="/avatars/screenshots",W={};typeof o<"u"&&(W.url=o),typeof a<"u"&&(W.headers=a),typeof s<"u"&&(W.viewportWidth=s),typeof r<"u"&&(W.viewportHeight=r),typeof d<"u"&&(W.scale=d),typeof c<"u"&&(W.theme=c),typeof p<"u"&&(W.userAgent=p),typeof u<"u"&&(W.fullpage=u),typeof m<"u"&&(W.locale=m),typeof j<"u"&&(W.timezone=j),typeof q<"u"&&(W.latitude=q),typeof T<"u"&&(W.longitude=T),typeof K<"u"&&(W.accuracy=K),typeof Y<"u"&&(W.touch=Y),typeof L<"u"&&(W.permissions=L),typeof H<"u"&&(W.sleep=H),typeof Z<"u"&&(W.width=Z),typeof se<"u"&&(W.height=se),typeof D<"u"&&(W.quality=D),typeof N<"u"&&(W.output=N);const R=new URL(this.client.config.endpoint+ie);W.project=this.client.config.project,W.impersonateuserid=this.client.config.impersonateuserid;for(const[J,z]of Object.entries(ge.flatten(W)))R.searchParams.append(J,z);return R.toString()}}class ao{constructor(e){this.client=e}listTransactions(e){let i;typeof e>"u"||e&&typeof e=="object"&&!Array.isArray(e)?i=e||{}:i={queries:e};const t=i.queries,o="/databases/transactions",a={};typeof t<"u"&&(a.queries=t);const s=new URL(this.client.config.endpoint+o),r={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",s,r,a)}createTransaction(e){let i;typeof e>"u"||e&&typeof e=="object"&&!Array.isArray(e)?i=e||{}:i={ttl:e};const t=i.ttl,o="/databases/transactions",a={};typeof t<"u"&&(a.ttl=t);const s=new URL(this.client.config.endpoint+o),r={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",s,r,a)}getTransaction(e){let i;e&&typeof e=="object"&&!Array.isArray(e)?i=e||{}:i={transactionId:e};const t=i.transactionId;if(typeof t>"u")throw new h('Missing required parameter: "transactionId"');const o="/databases/transactions/{transactionId}".replace("{transactionId}",encodeURIComponent(String(t))),a={},s=new URL(this.client.config.endpoint+o),r={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",s,r,a)}updateTransaction(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={transactionId:e,commit:i[0],rollback:i[1]};const o=t.transactionId,a=t.commit,s=t.rollback;if(typeof o>"u")throw new h('Missing required parameter: "transactionId"');const r="/databases/transactions/{transactionId}".replace("{transactionId}",encodeURIComponent(String(o))),d={};typeof a<"u"&&(d.commit=a),typeof s<"u"&&(d.rollback=s);const c=new URL(this.client.config.endpoint+r),p={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("patch",c,p,d)}deleteTransaction(e){let i;e&&typeof e=="object"&&!Array.isArray(e)?i=e||{}:i={transactionId:e};const t=i.transactionId;if(typeof t>"u")throw new h('Missing required parameter: "transactionId"');const o="/databases/transactions/{transactionId}".replace("{transactionId}",encodeURIComponent(String(t))),a={},s=new URL(this.client.config.endpoint+o),r={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json"};return this.client.call("delete",s,r,a)}createOperations(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={transactionId:e,operations:i[0]};const o=t.transactionId,a=t.operations;if(typeof o>"u")throw new h('Missing required parameter: "transactionId"');const s="/databases/transactions/{transactionId}/operations".replace("{transactionId}",encodeURIComponent(String(o))),r={};typeof a<"u"&&(r.operations=a);const d=new URL(this.client.config.endpoint+s),c={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",d,c,r)}listDocuments(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={databaseId:e,collectionId:i[0],queries:i[1],transactionId:i[2],total:i[3],ttl:i[4]};const o=t.databaseId,a=t.collectionId,s=t.queries,r=t.transactionId,d=t.total,c=t.ttl;if(typeof o>"u")throw new h('Missing required parameter: "databaseId"');if(typeof a>"u")throw new h('Missing required parameter: "collectionId"');const p="/databases/{databaseId}/collections/{collectionId}/documents".replace("{databaseId}",encodeURIComponent(String(o))).replace("{collectionId}",encodeURIComponent(String(a))),u={};typeof s<"u"&&(u.queries=s),typeof r<"u"&&(u.transactionId=r),typeof d<"u"&&(u.total=d),typeof c<"u"&&(u.ttl=c);const m=new URL(this.client.config.endpoint+p),j={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",m,j,u)}createDocument(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={databaseId:e,collectionId:i[0],documentId:i[1],data:i[2],permissions:i[3],transactionId:i[4]};const o=t.databaseId,a=t.collectionId,s=t.documentId,r=t.data,d=t.permissions,c=t.transactionId;if(typeof o>"u")throw new h('Missing required parameter: "databaseId"');if(typeof a>"u")throw new h('Missing required parameter: "collectionId"');if(typeof s>"u")throw new h('Missing required parameter: "documentId"');if(typeof r>"u")throw new h('Missing required parameter: "data"');const p="/databases/{databaseId}/collections/{collectionId}/documents".replace("{databaseId}",encodeURIComponent(String(o))).replace("{collectionId}",encodeURIComponent(String(a))),u={};typeof s<"u"&&(u.documentId=s),typeof r<"u"&&(u.data=r),typeof d<"u"&&(u.permissions=d),typeof c<"u"&&(u.transactionId=c);const m=new URL(this.client.config.endpoint+p),j={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",m,j,u)}getDocument(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={databaseId:e,collectionId:i[0],documentId:i[1],queries:i[2],transactionId:i[3]};const o=t.databaseId,a=t.collectionId,s=t.documentId,r=t.queries,d=t.transactionId;if(typeof o>"u")throw new h('Missing required parameter: "databaseId"');if(typeof a>"u")throw new h('Missing required parameter: "collectionId"');if(typeof s>"u")throw new h('Missing required parameter: "documentId"');const c="/databases/{databaseId}/collections/{collectionId}/documents/{documentId}".replace("{databaseId}",encodeURIComponent(String(o))).replace("{collectionId}",encodeURIComponent(String(a))).replace("{documentId}",encodeURIComponent(String(s))),p={};typeof r<"u"&&(p.queries=r),typeof d<"u"&&(p.transactionId=d);const u=new URL(this.client.config.endpoint+c),m={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",u,m,p)}upsertDocument(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={databaseId:e,collectionId:i[0],documentId:i[1],data:i[2],permissions:i[3],transactionId:i[4]};const o=t.databaseId,a=t.collectionId,s=t.documentId,r=t.data,d=t.permissions,c=t.transactionId;if(typeof o>"u")throw new h('Missing required parameter: "databaseId"');if(typeof a>"u")throw new h('Missing required parameter: "collectionId"');if(typeof s>"u")throw new h('Missing required parameter: "documentId"');const p="/databases/{databaseId}/collections/{collectionId}/documents/{documentId}".replace("{databaseId}",encodeURIComponent(String(o))).replace("{collectionId}",encodeURIComponent(String(a))).replace("{documentId}",encodeURIComponent(String(s))),u={};typeof r<"u"&&(u.data=r),typeof d<"u"&&(u.permissions=d),typeof c<"u"&&(u.transactionId=c);const m=new URL(this.client.config.endpoint+p),j={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("put",m,j,u)}updateDocument(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={databaseId:e,collectionId:i[0],documentId:i[1],data:i[2],permissions:i[3],transactionId:i[4]};const o=t.databaseId,a=t.collectionId,s=t.documentId,r=t.data,d=t.permissions,c=t.transactionId;if(typeof o>"u")throw new h('Missing required parameter: "databaseId"');if(typeof a>"u")throw new h('Missing required parameter: "collectionId"');if(typeof s>"u")throw new h('Missing required parameter: "documentId"');const p="/databases/{databaseId}/collections/{collectionId}/documents/{documentId}".replace("{databaseId}",encodeURIComponent(String(o))).replace("{collectionId}",encodeURIComponent(String(a))).replace("{documentId}",encodeURIComponent(String(s))),u={};typeof r<"u"&&(u.data=r),typeof d<"u"&&(u.permissions=d),typeof c<"u"&&(u.transactionId=c);const m=new URL(this.client.config.endpoint+p),j={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("patch",m,j,u)}deleteDocument(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={databaseId:e,collectionId:i[0],documentId:i[1],transactionId:i[2]};const o=t.databaseId,a=t.collectionId,s=t.documentId,r=t.transactionId;if(typeof o>"u")throw new h('Missing required parameter: "databaseId"');if(typeof a>"u")throw new h('Missing required parameter: "collectionId"');if(typeof s>"u")throw new h('Missing required parameter: "documentId"');const d="/databases/{databaseId}/collections/{collectionId}/documents/{documentId}".replace("{databaseId}",encodeURIComponent(String(o))).replace("{collectionId}",encodeURIComponent(String(a))).replace("{documentId}",encodeURIComponent(String(s))),c={};typeof r<"u"&&(c.transactionId=r);const p=new URL(this.client.config.endpoint+d),u={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json"};return this.client.call("delete",p,u,c)}decrementDocumentAttribute(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={databaseId:e,collectionId:i[0],documentId:i[1],attribute:i[2],value:i[3],min:i[4],transactionId:i[5]};const o=t.databaseId,a=t.collectionId,s=t.documentId,r=t.attribute,d=t.value,c=t.min,p=t.transactionId;if(typeof o>"u")throw new h('Missing required parameter: "databaseId"');if(typeof a>"u")throw new h('Missing required parameter: "collectionId"');if(typeof s>"u")throw new h('Missing required parameter: "documentId"');if(typeof r>"u")throw new h('Missing required parameter: "attribute"');const u="/databases/{databaseId}/collections/{collectionId}/documents/{documentId}/{attribute}/decrement".replace("{databaseId}",encodeURIComponent(String(o))).replace("{collectionId}",encodeURIComponent(String(a))).replace("{documentId}",encodeURIComponent(String(s))).replace("{attribute}",encodeURIComponent(String(r))),m={};typeof d<"u"&&(m.value=d),typeof c<"u"&&(m.min=c),typeof p<"u"&&(m.transactionId=p);const j=new URL(this.client.config.endpoint+u),q={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("patch",j,q,m)}incrementDocumentAttribute(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={databaseId:e,collectionId:i[0],documentId:i[1],attribute:i[2],value:i[3],max:i[4],transactionId:i[5]};const o=t.databaseId,a=t.collectionId,s=t.documentId,r=t.attribute,d=t.value,c=t.max,p=t.transactionId;if(typeof o>"u")throw new h('Missing required parameter: "databaseId"');if(typeof a>"u")throw new h('Missing required parameter: "collectionId"');if(typeof s>"u")throw new h('Missing required parameter: "documentId"');if(typeof r>"u")throw new h('Missing required parameter: "attribute"');const u="/databases/{databaseId}/collections/{collectionId}/documents/{documentId}/{attribute}/increment".replace("{databaseId}",encodeURIComponent(String(o))).replace("{collectionId}",encodeURIComponent(String(a))).replace("{documentId}",encodeURIComponent(String(s))).replace("{attribute}",encodeURIComponent(String(r))),m={};typeof d<"u"&&(m.value=d),typeof c<"u"&&(m.max=c),typeof p<"u"&&(m.transactionId=p);const j=new URL(this.client.config.endpoint+u),q={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("patch",j,q,m)}}class so{constructor(e){this.client=e}listTransactions(e){let i;typeof e>"u"||e&&typeof e=="object"&&!Array.isArray(e)?i=e||{}:i={queries:e};const t=i.queries,o="/documentsdb/transactions",a={};typeof t<"u"&&(a.queries=t);const s=new URL(this.client.config.endpoint+o),r={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",s,r,a)}createTransaction(e){let i;typeof e>"u"||e&&typeof e=="object"&&!Array.isArray(e)?i=e||{}:i={ttl:e};const t=i.ttl,o="/documentsdb/transactions",a={};typeof t<"u"&&(a.ttl=t);const s=new URL(this.client.config.endpoint+o),r={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",s,r,a)}getTransaction(e){let i;e&&typeof e=="object"&&!Array.isArray(e)?i=e||{}:i={transactionId:e};const t=i.transactionId;if(typeof t>"u")throw new h('Missing required parameter: "transactionId"');const o="/documentsdb/transactions/{transactionId}".replace("{transactionId}",encodeURIComponent(String(t))),a={},s=new URL(this.client.config.endpoint+o),r={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",s,r,a)}updateTransaction(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={transactionId:e,commit:i[0],rollback:i[1]};const o=t.transactionId,a=t.commit,s=t.rollback;if(typeof o>"u")throw new h('Missing required parameter: "transactionId"');const r="/documentsdb/transactions/{transactionId}".replace("{transactionId}",encodeURIComponent(String(o))),d={};typeof a<"u"&&(d.commit=a),typeof s<"u"&&(d.rollback=s);const c=new URL(this.client.config.endpoint+r),p={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("patch",c,p,d)}deleteTransaction(e){let i;e&&typeof e=="object"&&!Array.isArray(e)?i=e||{}:i={transactionId:e};const t=i.transactionId;if(typeof t>"u")throw new h('Missing required parameter: "transactionId"');const o="/documentsdb/transactions/{transactionId}".replace("{transactionId}",encodeURIComponent(String(t))),a={},s=new URL(this.client.config.endpoint+o),r={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json"};return this.client.call("delete",s,r,a)}createOperations(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={transactionId:e,operations:i[0]};const o=t.transactionId,a=t.operations;if(typeof o>"u")throw new h('Missing required parameter: "transactionId"');const s="/documentsdb/transactions/{transactionId}/operations".replace("{transactionId}",encodeURIComponent(String(o))),r={};typeof a<"u"&&(r.operations=a);const d=new URL(this.client.config.endpoint+s),c={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",d,c,r)}listDocuments(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={databaseId:e,collectionId:i[0],queries:i[1],transactionId:i[2],total:i[3],ttl:i[4]};const o=t.databaseId,a=t.collectionId,s=t.queries,r=t.transactionId,d=t.total,c=t.ttl;if(typeof o>"u")throw new h('Missing required parameter: "databaseId"');if(typeof a>"u")throw new h('Missing required parameter: "collectionId"');const p="/documentsdb/{databaseId}/collections/{collectionId}/documents".replace("{databaseId}",encodeURIComponent(String(o))).replace("{collectionId}",encodeURIComponent(String(a))),u={};typeof s<"u"&&(u.queries=s),typeof r<"u"&&(u.transactionId=r),typeof d<"u"&&(u.total=d),typeof c<"u"&&(u.ttl=c);const m=new URL(this.client.config.endpoint+p),j={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",m,j,u)}createDocument(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={databaseId:e,collectionId:i[0],documentId:i[1],data:i[2],permissions:i[3],transactionId:i[4]};const o=t.databaseId,a=t.collectionId,s=t.documentId,r=t.data,d=t.permissions,c=t.transactionId;if(typeof o>"u")throw new h('Missing required parameter: "databaseId"');if(typeof a>"u")throw new h('Missing required parameter: "collectionId"');if(typeof s>"u")throw new h('Missing required parameter: "documentId"');if(typeof r>"u")throw new h('Missing required parameter: "data"');const p="/documentsdb/{databaseId}/collections/{collectionId}/documents".replace("{databaseId}",encodeURIComponent(String(o))).replace("{collectionId}",encodeURIComponent(String(a))),u={};typeof s<"u"&&(u.documentId=s),typeof r<"u"&&(u.data=r),typeof d<"u"&&(u.permissions=d),typeof c<"u"&&(u.transactionId=c);const m=new URL(this.client.config.endpoint+p),j={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",m,j,u)}createDocuments(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={databaseId:e,collectionId:i[0],documents:i[1],transactionId:i[2]};const o=t.databaseId,a=t.collectionId,s=t.documents,r=t.transactionId;if(typeof o>"u")throw new h('Missing required parameter: "databaseId"');if(typeof a>"u")throw new h('Missing required parameter: "collectionId"');if(typeof s>"u")throw new h('Missing required parameter: "documents"');const d="/documentsdb/{databaseId}/collections/{collectionId}/documents".replace("{databaseId}",encodeURIComponent(String(o))).replace("{collectionId}",encodeURIComponent(String(a))),c={};typeof s<"u"&&(c.documents=s),typeof r<"u"&&(c.transactionId=r);const p=new URL(this.client.config.endpoint+d),u={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",p,u,c)}getDocument(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={databaseId:e,collectionId:i[0],documentId:i[1],queries:i[2],transactionId:i[3]};const o=t.databaseId,a=t.collectionId,s=t.documentId,r=t.queries,d=t.transactionId;if(typeof o>"u")throw new h('Missing required parameter: "databaseId"');if(typeof a>"u")throw new h('Missing required parameter: "collectionId"');if(typeof s>"u")throw new h('Missing required parameter: "documentId"');const c="/documentsdb/{databaseId}/collections/{collectionId}/documents/{documentId}".replace("{databaseId}",encodeURIComponent(String(o))).replace("{collectionId}",encodeURIComponent(String(a))).replace("{documentId}",encodeURIComponent(String(s))),p={};typeof r<"u"&&(p.queries=r),typeof d<"u"&&(p.transactionId=d);const u=new URL(this.client.config.endpoint+c),m={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",u,m,p)}upsertDocument(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={databaseId:e,collectionId:i[0],documentId:i[1],data:i[2],permissions:i[3],transactionId:i[4]};const o=t.databaseId,a=t.collectionId,s=t.documentId,r=t.data,d=t.permissions,c=t.transactionId;if(typeof o>"u")throw new h('Missing required parameter: "databaseId"');if(typeof a>"u")throw new h('Missing required parameter: "collectionId"');if(typeof s>"u")throw new h('Missing required parameter: "documentId"');const p="/documentsdb/{databaseId}/collections/{collectionId}/documents/{documentId}".replace("{databaseId}",encodeURIComponent(String(o))).replace("{collectionId}",encodeURIComponent(String(a))).replace("{documentId}",encodeURIComponent(String(s))),u={};typeof r<"u"&&(u.data=r),typeof d<"u"&&(u.permissions=d),typeof c<"u"&&(u.transactionId=c);const m=new URL(this.client.config.endpoint+p),j={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("put",m,j,u)}updateDocument(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={databaseId:e,collectionId:i[0],documentId:i[1],data:i[2],permissions:i[3],transactionId:i[4]};const o=t.databaseId,a=t.collectionId,s=t.documentId,r=t.data,d=t.permissions,c=t.transactionId;if(typeof o>"u")throw new h('Missing required parameter: "databaseId"');if(typeof a>"u")throw new h('Missing required parameter: "collectionId"');if(typeof s>"u")throw new h('Missing required parameter: "documentId"');const p="/documentsdb/{databaseId}/collections/{collectionId}/documents/{documentId}".replace("{databaseId}",encodeURIComponent(String(o))).replace("{collectionId}",encodeURIComponent(String(a))).replace("{documentId}",encodeURIComponent(String(s))),u={};typeof r<"u"&&(u.data=r),typeof d<"u"&&(u.permissions=d),typeof c<"u"&&(u.transactionId=c);const m=new URL(this.client.config.endpoint+p),j={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("patch",m,j,u)}deleteDocument(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={databaseId:e,collectionId:i[0],documentId:i[1],transactionId:i[2]};const o=t.databaseId,a=t.collectionId,s=t.documentId,r=t.transactionId;if(typeof o>"u")throw new h('Missing required parameter: "databaseId"');if(typeof a>"u")throw new h('Missing required parameter: "collectionId"');if(typeof s>"u")throw new h('Missing required parameter: "documentId"');const d="/documentsdb/{databaseId}/collections/{collectionId}/documents/{documentId}".replace("{databaseId}",encodeURIComponent(String(o))).replace("{collectionId}",encodeURIComponent(String(a))).replace("{documentId}",encodeURIComponent(String(s))),c={};typeof r<"u"&&(c.transactionId=r);const p=new URL(this.client.config.endpoint+d),u={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json"};return this.client.call("delete",p,u,c)}decrementDocumentAttribute(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={databaseId:e,collectionId:i[0],documentId:i[1],attribute:i[2],value:i[3],min:i[4],transactionId:i[5]};const o=t.databaseId,a=t.collectionId,s=t.documentId,r=t.attribute,d=t.value,c=t.min,p=t.transactionId;if(typeof o>"u")throw new h('Missing required parameter: "databaseId"');if(typeof a>"u")throw new h('Missing required parameter: "collectionId"');if(typeof s>"u")throw new h('Missing required parameter: "documentId"');if(typeof r>"u")throw new h('Missing required parameter: "attribute"');const u="/documentsdb/{databaseId}/collections/{collectionId}/documents/{documentId}/{attribute}/decrement".replace("{databaseId}",encodeURIComponent(String(o))).replace("{collectionId}",encodeURIComponent(String(a))).replace("{documentId}",encodeURIComponent(String(s))).replace("{attribute}",encodeURIComponent(String(r))),m={};typeof d<"u"&&(m.value=d),typeof c<"u"&&(m.min=c),typeof p<"u"&&(m.transactionId=p);const j=new URL(this.client.config.endpoint+u),q={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("patch",j,q,m)}incrementDocumentAttribute(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={databaseId:e,collectionId:i[0],documentId:i[1],attribute:i[2],value:i[3],max:i[4],transactionId:i[5]};const o=t.databaseId,a=t.collectionId,s=t.documentId,r=t.attribute,d=t.value,c=t.max,p=t.transactionId;if(typeof o>"u")throw new h('Missing required parameter: "databaseId"');if(typeof a>"u")throw new h('Missing required parameter: "collectionId"');if(typeof s>"u")throw new h('Missing required parameter: "documentId"');if(typeof r>"u")throw new h('Missing required parameter: "attribute"');const u="/documentsdb/{databaseId}/collections/{collectionId}/documents/{documentId}/{attribute}/increment".replace("{databaseId}",encodeURIComponent(String(o))).replace("{collectionId}",encodeURIComponent(String(a))).replace("{documentId}",encodeURIComponent(String(s))).replace("{attribute}",encodeURIComponent(String(r))),m={};typeof d<"u"&&(m.value=d),typeof c<"u"&&(m.max=c),typeof p<"u"&&(m.transactionId=p);const j=new URL(this.client.config.endpoint+u),q={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("patch",j,q,m)}}class ro{constructor(e){this.client=e}listExecutions(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={functionId:e,queries:i[0],total:i[1]};const o=t.functionId,a=t.queries,s=t.total;if(typeof o>"u")throw new h('Missing required parameter: "functionId"');const r="/functions/{functionId}/executions".replace("{functionId}",encodeURIComponent(String(o))),d={};typeof a<"u"&&(d.queries=a),typeof s<"u"&&(d.total=s);const c=new URL(this.client.config.endpoint+r),p={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",c,p,d)}createExecution(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={functionId:e,body:i[0],async:i[1],xpath:i[2],method:i[3],headers:i[4],scheduledAt:i[5]};const o=t.functionId,a=t.body,s=t.async,r=t.xpath,d=t.method,c=t.headers,p=t.scheduledAt;if(typeof o>"u")throw new h('Missing required parameter: "functionId"');const u="/functions/{functionId}/executions".replace("{functionId}",encodeURIComponent(String(o))),m={};typeof a<"u"&&(m.body=a),typeof s<"u"&&(m.async=s),typeof r<"u"&&(m.path=r),typeof d<"u"&&(m.method=d),typeof c<"u"&&(m.headers=c),typeof p<"u"&&(m.scheduledAt=p);const j=new URL(this.client.config.endpoint+u),q={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",j,q,m)}getExecution(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={functionId:e,executionId:i[0]};const o=t.functionId,a=t.executionId;if(typeof o>"u")throw new h('Missing required parameter: "functionId"');if(typeof a>"u")throw new h('Missing required parameter: "executionId"');const s="/functions/{functionId}/executions/{executionId}".replace("{functionId}",encodeURIComponent(String(o))).replace("{executionId}",encodeURIComponent(String(a))),r={},d=new URL(this.client.config.endpoint+s),c={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",d,c,r)}}class co{constructor(e){this.client=e}query(e){let i;e&&typeof e=="object"&&!Array.isArray(e)&&"query"in e?i=e||{}:i={query:e};const t=i.query;if(typeof t>"u")throw new h('Missing required parameter: "query"');const o="/graphql",a={};typeof t<"u"&&(a.query=t);const s=new URL(this.client.config.endpoint+o),r={"X-Appwrite-Project":this.client.config.project,"x-sdk-graphql":"true","content-type":"application/json",accept:"application/json"};return this.client.call("post",s,r,a)}mutation(e){let i;e&&typeof e=="object"&&!Array.isArray(e)&&"query"in e?i=e||{}:i={query:e};const t=i.query;if(typeof t>"u")throw new h('Missing required parameter: "query"');const o="/graphql/mutation",a={};typeof t<"u"&&(a.query=t);const s=new URL(this.client.config.endpoint+o),r={"X-Appwrite-Project":this.client.config.project,"x-sdk-graphql":"true","content-type":"application/json",accept:"application/json"};return this.client.call("post",s,r,a)}}class lo{constructor(e){this.client=e}get(){const e="/locale",i={},t=new URL(this.client.config.endpoint+e),o={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",t,o,i)}listCodes(){const e="/locale/codes",i={},t=new URL(this.client.config.endpoint+e),o={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",t,o,i)}listContinents(){const e="/locale/continents",i={},t=new URL(this.client.config.endpoint+e),o={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",t,o,i)}listCountries(){const e="/locale/countries",i={},t=new URL(this.client.config.endpoint+e),o={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",t,o,i)}listCountriesEU(){const e="/locale/countries/eu",i={},t=new URL(this.client.config.endpoint+e),o={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",t,o,i)}listCountriesPhones(){const e="/locale/countries/phones",i={},t=new URL(this.client.config.endpoint+e),o={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",t,o,i)}listCurrencies(){const e="/locale/currencies",i={},t=new URL(this.client.config.endpoint+e),o={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",t,o,i)}listLanguages(){const e="/locale/languages",i={},t=new URL(this.client.config.endpoint+e),o={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",t,o,i)}}class uo{constructor(e){this.client=e}createSubscriber(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={topicId:e,subscriberId:i[0],targetId:i[1]};const o=t.topicId,a=t.subscriberId,s=t.targetId;if(typeof o>"u")throw new h('Missing required parameter: "topicId"');if(typeof a>"u")throw new h('Missing required parameter: "subscriberId"');if(typeof s>"u")throw new h('Missing required parameter: "targetId"');const r="/messaging/topics/{topicId}/subscribers".replace("{topicId}",encodeURIComponent(String(o))),d={};typeof a<"u"&&(d.subscriberId=a),typeof s<"u"&&(d.targetId=s);const c=new URL(this.client.config.endpoint+r),p={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",c,p,d)}deleteSubscriber(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={topicId:e,subscriberId:i[0]};const o=t.topicId,a=t.subscriberId;if(typeof o>"u")throw new h('Missing required parameter: "topicId"');if(typeof a>"u")throw new h('Missing required parameter: "subscriberId"');const s="/messaging/topics/{topicId}/subscribers/{subscriberId}".replace("{topicId}",encodeURIComponent(String(o))).replace("{subscriberId}",encodeURIComponent(String(a))),r={},d=new URL(this.client.config.endpoint+s),c={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json"};return this.client.call("delete",d,c,r)}}class po{constructor(e){this.client=e}listInstallations(e,...i){let t;typeof e>"u"&&i.length===0||e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={queries:e,total:i[0]};const o=t.queries,a=t.total,s="/organization/installations",r={};typeof o<"u"&&(r.queries=o),typeof a<"u"&&(r.total=a);const d=new URL(this.client.config.endpoint+s),c={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",d,c,r)}createInstallation(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={appId:e,authorizationDetails:i[0]};const o=t.appId,a=t.authorizationDetails;if(typeof o>"u")throw new h('Missing required parameter: "appId"');const s="/organization/installations",r={};typeof o<"u"&&(r.appId=o),typeof a<"u"&&(r.authorizationDetails=a);const d=new URL(this.client.config.endpoint+s),c={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",d,c,r)}getInstallation(e){let i;e&&typeof e=="object"&&!Array.isArray(e)?i=e||{}:i={installationId:e};const t=i.installationId;if(typeof t>"u")throw new h('Missing required parameter: "installationId"');const o="/organization/installations/{installationId}".replace("{installationId}",encodeURIComponent(String(t))),a={},s=new URL(this.client.config.endpoint+o),r={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",s,r,a)}updateInstallation(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={installationId:e,authorizationDetails:i[0]};const o=t.installationId,a=t.authorizationDetails;if(typeof o>"u")throw new h('Missing required parameter: "installationId"');const s="/organization/installations/{installationId}".replace("{installationId}",encodeURIComponent(String(o))),r={};typeof a<"u"&&(r.authorizationDetails=a);const d=new URL(this.client.config.endpoint+s),c={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("put",d,c,r)}deleteInstallation(e){let i;e&&typeof e=="object"&&!Array.isArray(e)?i=e||{}:i={installationId:e};const t=i.installationId;if(typeof t>"u")throw new h('Missing required parameter: "installationId"');const o="/organization/installations/{installationId}".replace("{installationId}",encodeURIComponent(String(t))),a={},s=new URL(this.client.config.endpoint+o),r={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("delete",s,r,a)}}class ho{constructor(e){this.client=e}list(e,...i){let t;typeof e>"u"&&i.length===0||e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={queries:e,total:i[0],ttl:i[1]};const o=t.queries,a=t.total,s=t.ttl,r="/presences",d={};typeof o<"u"&&(d.queries=o),typeof a<"u"&&(d.total=a),typeof s<"u"&&(d.ttl=s);const c=new URL(this.client.config.endpoint+r),p={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",c,p,d)}get(e){let i;e&&typeof e=="object"&&!Array.isArray(e)?i=e||{}:i={presenceId:e};const t=i.presenceId;if(typeof t>"u")throw new h('Missing required parameter: "presenceId"');const o="/presences/{presenceId}".replace("{presenceId}",encodeURIComponent(String(t))),a={},s=new URL(this.client.config.endpoint+o),r={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",s,r,a)}upsert(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={presenceId:e,status:i[0],permissions:i[1],expiresAt:i[2],metadata:i[3]};const o=t.presenceId,a=t.status,s=t.permissions,r=t.expiresAt,d=t.metadata;if(typeof o>"u")throw new h('Missing required parameter: "presenceId"');if(typeof a>"u")throw new h('Missing required parameter: "status"');const c="/presences/{presenceId}".replace("{presenceId}",encodeURIComponent(String(o))),p={};typeof a<"u"&&(p.status=a),typeof s<"u"&&(p.permissions=s),typeof r<"u"&&(p.expiresAt=r),typeof d<"u"&&(p.metadata=d);const u=new URL(this.client.config.endpoint+c),m={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("put",u,m,p)}update(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={presenceId:e,status:i[0],expiresAt:i[1],metadata:i[2],permissions:i[3],purge:i[4]};const o=t.presenceId,a=t.status,s=t.expiresAt,r=t.metadata,d=t.permissions,c=t.purge;if(typeof o>"u")throw new h('Missing required parameter: "presenceId"');const p="/presences/{presenceId}".replace("{presenceId}",encodeURIComponent(String(o))),u={};typeof a<"u"&&(u.status=a),typeof s<"u"&&(u.expiresAt=s),typeof r<"u"&&(u.metadata=r),typeof d<"u"&&(u.permissions=d),typeof c<"u"&&(u.purge=c);const m=new URL(this.client.config.endpoint+p),j={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("patch",m,j,u)}delete(e){let i;e&&typeof e=="object"&&!Array.isArray(e)?i=e||{}:i={presenceId:e};const t=i.presenceId;if(typeof t>"u")throw new h('Missing required parameter: "presenceId"');const o="/presences/{presenceId}".replace("{presenceId}",encodeURIComponent(String(t))),a={},s=new URL(this.client.config.endpoint+o),r={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json"};return this.client.call("delete",s,r,a)}}class fo{constructor(e){this.client=e}listFiles(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={bucketId:e,queries:i[0],search:i[1],total:i[2]};const o=t.bucketId,a=t.queries,s=t.search,r=t.total;if(typeof o>"u")throw new h('Missing required parameter: "bucketId"');const d="/storage/buckets/{bucketId}/files".replace("{bucketId}",encodeURIComponent(String(o))),c={};typeof a<"u"&&(c.queries=a),typeof s<"u"&&(c.search=s),typeof r<"u"&&(c.total=r);const p=new URL(this.client.config.endpoint+d),u={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",p,u,c)}createFile(e,...i){let t,o;e&&typeof e=="object"&&!Array.isArray(e)?(t=e||{},o=e?.onProgress):(t={bucketId:e,fileId:i[0],file:i[1],permissions:i[2],folder:i[3]},o=i[4]);const a=t.bucketId,s=t.fileId,r=t.file,d=t.permissions,c=t.folder;if(typeof a>"u")throw new h('Missing required parameter: "bucketId"');if(typeof s>"u")throw new h('Missing required parameter: "fileId"');if(typeof r>"u")throw new h('Missing required parameter: "file"');const p="/storage/buckets/{bucketId}/files".replace("{bucketId}",encodeURIComponent(String(a))),u={};typeof s<"u"&&(u.fileId=s),typeof r<"u"&&(u.file=r),typeof d<"u"&&(u.permissions=d),typeof c<"u"&&(u.folder=c);const m=new URL(this.client.config.endpoint+p),j={"X-Appwrite-Project":this.client.config.project,"content-type":"multipart/form-data",accept:"application/json"};return this.client.chunkedUpload("post",m,j,u,o)}getFile(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={bucketId:e,fileId:i[0]};const o=t.bucketId,a=t.fileId;if(typeof o>"u")throw new h('Missing required parameter: "bucketId"');if(typeof a>"u")throw new h('Missing required parameter: "fileId"');const s="/storage/buckets/{bucketId}/files/{fileId}".replace("{bucketId}",encodeURIComponent(String(o))).replace("{fileId}",encodeURIComponent(String(a))),r={},d=new URL(this.client.config.endpoint+s),c={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",d,c,r)}updateFile(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={bucketId:e,fileId:i[0],name:i[1],permissions:i[2]};const o=t.bucketId,a=t.fileId,s=t.name,r=t.permissions;if(typeof o>"u")throw new h('Missing required parameter: "bucketId"');if(typeof a>"u")throw new h('Missing required parameter: "fileId"');const d="/storage/buckets/{bucketId}/files/{fileId}".replace("{bucketId}",encodeURIComponent(String(o))).replace("{fileId}",encodeURIComponent(String(a))),c={};typeof s<"u"&&(c.name=s),typeof r<"u"&&(c.permissions=r);const p=new URL(this.client.config.endpoint+d),u={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("put",p,u,c)}deleteFile(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={bucketId:e,fileId:i[0]};const o=t.bucketId,a=t.fileId;if(typeof o>"u")throw new h('Missing required parameter: "bucketId"');if(typeof a>"u")throw new h('Missing required parameter: "fileId"');const s="/storage/buckets/{bucketId}/files/{fileId}".replace("{bucketId}",encodeURIComponent(String(o))).replace("{fileId}",encodeURIComponent(String(a))),r={},d=new URL(this.client.config.endpoint+s),c={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json"};return this.client.call("delete",d,c,r)}getFileDownload(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={bucketId:e,fileId:i[0],token:i[1]};const o=t.bucketId,a=t.fileId,s=t.token;if(typeof o>"u")throw new h('Missing required parameter: "bucketId"');if(typeof a>"u")throw new h('Missing required parameter: "fileId"');const r="/storage/buckets/{bucketId}/files/{fileId}/download".replace("{bucketId}",encodeURIComponent(String(o))).replace("{fileId}",encodeURIComponent(String(a))),d={};typeof s<"u"&&(d.token=s);const c=new URL(this.client.config.endpoint+r);d.project=this.client.config.project,d.impersonateuserid=this.client.config.impersonateuserid;for(const[p,u]of Object.entries(ge.flatten(d)))c.searchParams.append(p,u);return c.toString()}getFilePreview(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={bucketId:e,fileId:i[0],width:i[1],height:i[2],gravity:i[3],quality:i[4],borderWidth:i[5],borderColor:i[6],borderRadius:i[7],opacity:i[8],rotation:i[9],background:i[10],output:i[11],token:i[12]};const o=t.bucketId,a=t.fileId,s=t.width,r=t.height,d=t.gravity,c=t.quality,p=t.borderWidth,u=t.borderColor,m=t.borderRadius,j=t.opacity,q=t.rotation,T=t.background,K=t.output,Y=t.token;if(typeof o>"u")throw new h('Missing required parameter: "bucketId"');if(typeof a>"u")throw new h('Missing required parameter: "fileId"');const L="/storage/buckets/{bucketId}/files/{fileId}/preview".replace("{bucketId}",encodeURIComponent(String(o))).replace("{fileId}",encodeURIComponent(String(a))),H={};typeof s<"u"&&(H.width=s),typeof r<"u"&&(H.height=r),typeof d<"u"&&(H.gravity=d),typeof c<"u"&&(H.quality=c),typeof p<"u"&&(H.borderWidth=p),typeof u<"u"&&(H.borderColor=u),typeof m<"u"&&(H.borderRadius=m),typeof j<"u"&&(H.opacity=j),typeof q<"u"&&(H.rotation=q),typeof T<"u"&&(H.background=T),typeof K<"u"&&(H.output=K),typeof Y<"u"&&(H.token=Y);const Z=new URL(this.client.config.endpoint+L);H.project=this.client.config.project,H.impersonateuserid=this.client.config.impersonateuserid;for(const[se,D]of Object.entries(ge.flatten(H)))Z.searchParams.append(se,D);return Z.toString()}getFileView(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={bucketId:e,fileId:i[0],token:i[1]};const o=t.bucketId,a=t.fileId,s=t.token;if(typeof o>"u")throw new h('Missing required parameter: "bucketId"');if(typeof a>"u")throw new h('Missing required parameter: "fileId"');const r="/storage/buckets/{bucketId}/files/{fileId}/view".replace("{bucketId}",encodeURIComponent(String(o))).replace("{fileId}",encodeURIComponent(String(a))),d={};typeof s<"u"&&(d.token=s);const c=new URL(this.client.config.endpoint+r);d.project=this.client.config.project,d.impersonateuserid=this.client.config.impersonateuserid;for(const[p,u]of Object.entries(ge.flatten(d)))c.searchParams.append(p,u);return c.toString()}}class go{constructor(e){this.client=e}listTransactions(e){let i;typeof e>"u"||e&&typeof e=="object"&&!Array.isArray(e)?i=e||{}:i={queries:e};const t=i.queries,o="/tablesdb/transactions",a={};typeof t<"u"&&(a.queries=t);const s=new URL(this.client.config.endpoint+o),r={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",s,r,a)}createTransaction(e){let i;typeof e>"u"||e&&typeof e=="object"&&!Array.isArray(e)?i=e||{}:i={ttl:e};const t=i.ttl,o="/tablesdb/transactions",a={};typeof t<"u"&&(a.ttl=t);const s=new URL(this.client.config.endpoint+o),r={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",s,r,a)}getTransaction(e){let i;e&&typeof e=="object"&&!Array.isArray(e)?i=e||{}:i={transactionId:e};const t=i.transactionId;if(typeof t>"u")throw new h('Missing required parameter: "transactionId"');const o="/tablesdb/transactions/{transactionId}".replace("{transactionId}",encodeURIComponent(String(t))),a={},s=new URL(this.client.config.endpoint+o),r={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",s,r,a)}updateTransaction(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={transactionId:e,commit:i[0],rollback:i[1]};const o=t.transactionId,a=t.commit,s=t.rollback;if(typeof o>"u")throw new h('Missing required parameter: "transactionId"');const r="/tablesdb/transactions/{transactionId}".replace("{transactionId}",encodeURIComponent(String(o))),d={};typeof a<"u"&&(d.commit=a),typeof s<"u"&&(d.rollback=s);const c=new URL(this.client.config.endpoint+r),p={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("patch",c,p,d)}deleteTransaction(e){let i;e&&typeof e=="object"&&!Array.isArray(e)?i=e||{}:i={transactionId:e};const t=i.transactionId;if(typeof t>"u")throw new h('Missing required parameter: "transactionId"');const o="/tablesdb/transactions/{transactionId}".replace("{transactionId}",encodeURIComponent(String(t))),a={},s=new URL(this.client.config.endpoint+o),r={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json"};return this.client.call("delete",s,r,a)}createOperations(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={transactionId:e,operations:i[0]};const o=t.transactionId,a=t.operations;if(typeof o>"u")throw new h('Missing required parameter: "transactionId"');const s="/tablesdb/transactions/{transactionId}/operations".replace("{transactionId}",encodeURIComponent(String(o))),r={};typeof a<"u"&&(r.operations=a);const d=new URL(this.client.config.endpoint+s),c={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",d,c,r)}listRows(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={databaseId:e,tableId:i[0],queries:i[1],transactionId:i[2],total:i[3],ttl:i[4]};const o=t.databaseId,a=t.tableId,s=t.queries,r=t.transactionId,d=t.total,c=t.ttl;if(typeof o>"u")throw new h('Missing required parameter: "databaseId"');if(typeof a>"u")throw new h('Missing required parameter: "tableId"');const p="/tablesdb/{databaseId}/tables/{tableId}/rows".replace("{databaseId}",encodeURIComponent(String(o))).replace("{tableId}",encodeURIComponent(String(a))),u={};typeof s<"u"&&(u.queries=s),typeof r<"u"&&(u.transactionId=r),typeof d<"u"&&(u.total=d),typeof c<"u"&&(u.ttl=c);const m=new URL(this.client.config.endpoint+p),j={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",m,j,u)}createRow(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={databaseId:e,tableId:i[0],rowId:i[1],data:i[2],permissions:i[3],transactionId:i[4]};const o=t.databaseId,a=t.tableId,s=t.rowId,r=t.data,d=t.permissions,c=t.transactionId;if(typeof o>"u")throw new h('Missing required parameter: "databaseId"');if(typeof a>"u")throw new h('Missing required parameter: "tableId"');if(typeof s>"u")throw new h('Missing required parameter: "rowId"');if(typeof r>"u")throw new h('Missing required parameter: "data"');const p="/tablesdb/{databaseId}/tables/{tableId}/rows".replace("{databaseId}",encodeURIComponent(String(o))).replace("{tableId}",encodeURIComponent(String(a))),u={};typeof s<"u"&&(u.rowId=s),typeof r<"u"&&(u.data=r),typeof d<"u"&&(u.permissions=d),typeof c<"u"&&(u.transactionId=c);const m=new URL(this.client.config.endpoint+p),j={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",m,j,u)}getRow(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={databaseId:e,tableId:i[0],rowId:i[1],queries:i[2],transactionId:i[3]};const o=t.databaseId,a=t.tableId,s=t.rowId,r=t.queries,d=t.transactionId;if(typeof o>"u")throw new h('Missing required parameter: "databaseId"');if(typeof a>"u")throw new h('Missing required parameter: "tableId"');if(typeof s>"u")throw new h('Missing required parameter: "rowId"');const c="/tablesdb/{databaseId}/tables/{tableId}/rows/{rowId}".replace("{databaseId}",encodeURIComponent(String(o))).replace("{tableId}",encodeURIComponent(String(a))).replace("{rowId}",encodeURIComponent(String(s))),p={};typeof r<"u"&&(p.queries=r),typeof d<"u"&&(p.transactionId=d);const u=new URL(this.client.config.endpoint+c),m={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",u,m,p)}upsertRow(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={databaseId:e,tableId:i[0],rowId:i[1],data:i[2],permissions:i[3],transactionId:i[4]};const o=t.databaseId,a=t.tableId,s=t.rowId,r=t.data,d=t.permissions,c=t.transactionId;if(typeof o>"u")throw new h('Missing required parameter: "databaseId"');if(typeof a>"u")throw new h('Missing required parameter: "tableId"');if(typeof s>"u")throw new h('Missing required parameter: "rowId"');const p="/tablesdb/{databaseId}/tables/{tableId}/rows/{rowId}".replace("{databaseId}",encodeURIComponent(String(o))).replace("{tableId}",encodeURIComponent(String(a))).replace("{rowId}",encodeURIComponent(String(s))),u={};typeof r<"u"&&(u.data=r),typeof d<"u"&&(u.permissions=d),typeof c<"u"&&(u.transactionId=c);const m=new URL(this.client.config.endpoint+p),j={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("put",m,j,u)}updateRow(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={databaseId:e,tableId:i[0],rowId:i[1],data:i[2],permissions:i[3],transactionId:i[4]};const o=t.databaseId,a=t.tableId,s=t.rowId,r=t.data,d=t.permissions,c=t.transactionId;if(typeof o>"u")throw new h('Missing required parameter: "databaseId"');if(typeof a>"u")throw new h('Missing required parameter: "tableId"');if(typeof s>"u")throw new h('Missing required parameter: "rowId"');const p="/tablesdb/{databaseId}/tables/{tableId}/rows/{rowId}".replace("{databaseId}",encodeURIComponent(String(o))).replace("{tableId}",encodeURIComponent(String(a))).replace("{rowId}",encodeURIComponent(String(s))),u={};typeof r<"u"&&(u.data=r),typeof d<"u"&&(u.permissions=d),typeof c<"u"&&(u.transactionId=c);const m=new URL(this.client.config.endpoint+p),j={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("patch",m,j,u)}deleteRow(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={databaseId:e,tableId:i[0],rowId:i[1],transactionId:i[2]};const o=t.databaseId,a=t.tableId,s=t.rowId,r=t.transactionId;if(typeof o>"u")throw new h('Missing required parameter: "databaseId"');if(typeof a>"u")throw new h('Missing required parameter: "tableId"');if(typeof s>"u")throw new h('Missing required parameter: "rowId"');const d="/tablesdb/{databaseId}/tables/{tableId}/rows/{rowId}".replace("{databaseId}",encodeURIComponent(String(o))).replace("{tableId}",encodeURIComponent(String(a))).replace("{rowId}",encodeURIComponent(String(s))),c={};typeof r<"u"&&(c.transactionId=r);const p=new URL(this.client.config.endpoint+d),u={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json"};return this.client.call("delete",p,u,c)}decrementRowColumn(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={databaseId:e,tableId:i[0],rowId:i[1],column:i[2],value:i[3],min:i[4],transactionId:i[5]};const o=t.databaseId,a=t.tableId,s=t.rowId,r=t.column,d=t.value,c=t.min,p=t.transactionId;if(typeof o>"u")throw new h('Missing required parameter: "databaseId"');if(typeof a>"u")throw new h('Missing required parameter: "tableId"');if(typeof s>"u")throw new h('Missing required parameter: "rowId"');if(typeof r>"u")throw new h('Missing required parameter: "column"');const u="/tablesdb/{databaseId}/tables/{tableId}/rows/{rowId}/{column}/decrement".replace("{databaseId}",encodeURIComponent(String(o))).replace("{tableId}",encodeURIComponent(String(a))).replace("{rowId}",encodeURIComponent(String(s))).replace("{column}",encodeURIComponent(String(r))),m={};typeof d<"u"&&(m.value=d),typeof c<"u"&&(m.min=c),typeof p<"u"&&(m.transactionId=p);const j=new URL(this.client.config.endpoint+u),q={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("patch",j,q,m)}incrementRowColumn(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={databaseId:e,tableId:i[0],rowId:i[1],column:i[2],value:i[3],max:i[4],transactionId:i[5]};const o=t.databaseId,a=t.tableId,s=t.rowId,r=t.column,d=t.value,c=t.max,p=t.transactionId;if(typeof o>"u")throw new h('Missing required parameter: "databaseId"');if(typeof a>"u")throw new h('Missing required parameter: "tableId"');if(typeof s>"u")throw new h('Missing required parameter: "rowId"');if(typeof r>"u")throw new h('Missing required parameter: "column"');const u="/tablesdb/{databaseId}/tables/{tableId}/rows/{rowId}/{column}/increment".replace("{databaseId}",encodeURIComponent(String(o))).replace("{tableId}",encodeURIComponent(String(a))).replace("{rowId}",encodeURIComponent(String(s))).replace("{column}",encodeURIComponent(String(r))),m={};typeof d<"u"&&(m.value=d),typeof c<"u"&&(m.max=c),typeof p<"u"&&(m.transactionId=p);const j=new URL(this.client.config.endpoint+u),q={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("patch",j,q,m)}}class Ki{constructor(e){this.client=e}list(e,...i){let t;typeof e>"u"&&i.length===0||e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={queries:e,search:i[0],total:i[1]};const o=t.queries,a=t.search,s=t.total,r="/teams",d={};typeof o<"u"&&(d.queries=o),typeof a<"u"&&(d.search=a),typeof s<"u"&&(d.total=s);const c=new URL(this.client.config.endpoint+r),p={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",c,p,d)}create(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={teamId:e,name:i[0],roles:i[1]};const o=t.teamId,a=t.name,s=t.roles;if(typeof o>"u")throw new h('Missing required parameter: "teamId"');if(typeof a>"u")throw new h('Missing required parameter: "name"');const r="/teams",d={};typeof o<"u"&&(d.teamId=o),typeof a<"u"&&(d.name=a),typeof s<"u"&&(d.roles=s);const c=new URL(this.client.config.endpoint+r),p={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",c,p,d)}get(e){let i;e&&typeof e=="object"&&!Array.isArray(e)?i=e||{}:i={teamId:e};const t=i.teamId;if(typeof t>"u")throw new h('Missing required parameter: "teamId"');const o="/teams/{teamId}".replace("{teamId}",encodeURIComponent(String(t))),a={},s=new URL(this.client.config.endpoint+o),r={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",s,r,a)}updateName(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={teamId:e,name:i[0]};const o=t.teamId,a=t.name;if(typeof o>"u")throw new h('Missing required parameter: "teamId"');if(typeof a>"u")throw new h('Missing required parameter: "name"');const s="/teams/{teamId}".replace("{teamId}",encodeURIComponent(String(o))),r={};typeof a<"u"&&(r.name=a);const d=new URL(this.client.config.endpoint+s),c={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("put",d,c,r)}delete(e){let i;e&&typeof e=="object"&&!Array.isArray(e)?i=e||{}:i={teamId:e};const t=i.teamId;if(typeof t>"u")throw new h('Missing required parameter: "teamId"');const o="/teams/{teamId}".replace("{teamId}",encodeURIComponent(String(t))),a={},s=new URL(this.client.config.endpoint+o),r={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json"};return this.client.call("delete",s,r,a)}listInstallations(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={teamId:e,queries:i[0],total:i[1]};const o=t.teamId,a=t.queries,s=t.total;if(typeof o>"u")throw new h('Missing required parameter: "teamId"');const r="/teams/{teamId}/installations".replace("{teamId}",encodeURIComponent(String(o))),d={};typeof a<"u"&&(d.queries=a),typeof s<"u"&&(d.total=s);const c=new URL(this.client.config.endpoint+r),p={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",c,p,d)}createInstallation(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={teamId:e,appId:i[0],authorizationDetails:i[1]};const o=t.teamId,a=t.appId,s=t.authorizationDetails;if(typeof o>"u")throw new h('Missing required parameter: "teamId"');if(typeof a>"u")throw new h('Missing required parameter: "appId"');const r="/teams/{teamId}/installations".replace("{teamId}",encodeURIComponent(String(o))),d={};typeof a<"u"&&(d.appId=a),typeof s<"u"&&(d.authorizationDetails=s);const c=new URL(this.client.config.endpoint+r),p={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",c,p,d)}getInstallation(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={teamId:e,installationId:i[0]};const o=t.teamId,a=t.installationId;if(typeof o>"u")throw new h('Missing required parameter: "teamId"');if(typeof a>"u")throw new h('Missing required parameter: "installationId"');const s="/teams/{teamId}/installations/{installationId}".replace("{teamId}",encodeURIComponent(String(o))).replace("{installationId}",encodeURIComponent(String(a))),r={},d=new URL(this.client.config.endpoint+s),c={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",d,c,r)}updateInstallation(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={teamId:e,installationId:i[0],authorizationDetails:i[1]};const o=t.teamId,a=t.installationId,s=t.authorizationDetails;if(typeof o>"u")throw new h('Missing required parameter: "teamId"');if(typeof a>"u")throw new h('Missing required parameter: "installationId"');const r="/teams/{teamId}/installations/{installationId}".replace("{teamId}",encodeURIComponent(String(o))).replace("{installationId}",encodeURIComponent(String(a))),d={};typeof s<"u"&&(d.authorizationDetails=s);const c=new URL(this.client.config.endpoint+r),p={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("put",c,p,d)}deleteInstallation(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={teamId:e,installationId:i[0]};const o=t.teamId,a=t.installationId;if(typeof o>"u")throw new h('Missing required parameter: "teamId"');if(typeof a>"u")throw new h('Missing required parameter: "installationId"');const s="/teams/{teamId}/installations/{installationId}".replace("{teamId}",encodeURIComponent(String(o))).replace("{installationId}",encodeURIComponent(String(a))),r={},d=new URL(this.client.config.endpoint+s),c={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("delete",d,c,r)}listMemberships(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={teamId:e,queries:i[0],search:i[1],total:i[2]};const o=t.teamId,a=t.queries,s=t.search,r=t.total;if(typeof o>"u")throw new h('Missing required parameter: "teamId"');const d="/teams/{teamId}/memberships".replace("{teamId}",encodeURIComponent(String(o))),c={};typeof a<"u"&&(c.queries=a),typeof s<"u"&&(c.search=s),typeof r<"u"&&(c.total=r);const p=new URL(this.client.config.endpoint+d),u={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",p,u,c)}createMembership(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={teamId:e,roles:i[0],email:i[1],userId:i[2],phone:i[3],url:i[4],name:i[5]};const o=t.teamId,a=t.roles,s=t.email,r=t.userId,d=t.phone,c=t.url,p=t.name;if(typeof o>"u")throw new h('Missing required parameter: "teamId"');if(typeof a>"u")throw new h('Missing required parameter: "roles"');const u="/teams/{teamId}/memberships".replace("{teamId}",encodeURIComponent(String(o))),m={};typeof s<"u"&&(m.email=s),typeof r<"u"&&(m.userId=r),typeof d<"u"&&(m.phone=d),typeof a<"u"&&(m.roles=a),typeof c<"u"&&(m.url=c),typeof p<"u"&&(m.name=p);const j=new URL(this.client.config.endpoint+u),q={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",j,q,m)}getMembership(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={teamId:e,membershipId:i[0]};const o=t.teamId,a=t.membershipId;if(typeof o>"u")throw new h('Missing required parameter: "teamId"');if(typeof a>"u")throw new h('Missing required parameter: "membershipId"');const s="/teams/{teamId}/memberships/{membershipId}".replace("{teamId}",encodeURIComponent(String(o))).replace("{membershipId}",encodeURIComponent(String(a))),r={},d=new URL(this.client.config.endpoint+s),c={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",d,c,r)}updateMembership(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={teamId:e,membershipId:i[0],roles:i[1]};const o=t.teamId,a=t.membershipId,s=t.roles;if(typeof o>"u")throw new h('Missing required parameter: "teamId"');if(typeof a>"u")throw new h('Missing required parameter: "membershipId"');if(typeof s>"u")throw new h('Missing required parameter: "roles"');const r="/teams/{teamId}/memberships/{membershipId}".replace("{teamId}",encodeURIComponent(String(o))).replace("{membershipId}",encodeURIComponent(String(a))),d={};typeof s<"u"&&(d.roles=s);const c=new URL(this.client.config.endpoint+r),p={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("patch",c,p,d)}deleteMembership(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={teamId:e,membershipId:i[0]};const o=t.teamId,a=t.membershipId;if(typeof o>"u")throw new h('Missing required parameter: "teamId"');if(typeof a>"u")throw new h('Missing required parameter: "membershipId"');const s="/teams/{teamId}/memberships/{membershipId}".replace("{teamId}",encodeURIComponent(String(o))).replace("{membershipId}",encodeURIComponent(String(a))),r={},d=new URL(this.client.config.endpoint+s),c={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json"};return this.client.call("delete",d,c,r)}updateMembershipStatus(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={teamId:e,membershipId:i[0],userId:i[1],secret:i[2]};const o=t.teamId,a=t.membershipId,s=t.userId,r=t.secret;if(typeof o>"u")throw new h('Missing required parameter: "teamId"');if(typeof a>"u")throw new h('Missing required parameter: "membershipId"');if(typeof s>"u")throw new h('Missing required parameter: "userId"');if(typeof r>"u")throw new h('Missing required parameter: "secret"');const d="/teams/{teamId}/memberships/{membershipId}/status".replace("{teamId}",encodeURIComponent(String(o))).replace("{membershipId}",encodeURIComponent(String(a))),c={};typeof s<"u"&&(c.userId=s),typeof r<"u"&&(c.secret=r);const p=new URL(this.client.config.endpoint+d),u={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("patch",p,u,c)}getPrefs(e){let i;e&&typeof e=="object"&&!Array.isArray(e)?i=e||{}:i={teamId:e};const t=i.teamId;if(typeof t>"u")throw new h('Missing required parameter: "teamId"');const o="/teams/{teamId}/prefs".replace("{teamId}",encodeURIComponent(String(t))),a={},s=new URL(this.client.config.endpoint+o),r={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",s,r,a)}updatePrefs(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={teamId:e,prefs:i[0]};const o=t.teamId,a=t.prefs;if(typeof o>"u")throw new h('Missing required parameter: "teamId"');if(typeof a>"u")throw new h('Missing required parameter: "prefs"');const s="/teams/{teamId}/prefs".replace("{teamId}",encodeURIComponent(String(o))),r={};typeof a<"u"&&(r.prefs=a);const d=new URL(this.client.config.endpoint+s),c={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("put",d,c,r)}}class yo{constructor(e){this.client=e}listTransactions(e){let i;typeof e>"u"||e&&typeof e=="object"&&!Array.isArray(e)?i=e||{}:i={queries:e};const t=i.queries,o="/vectorsdb/transactions",a={};typeof t<"u"&&(a.queries=t);const s=new URL(this.client.config.endpoint+o),r={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",s,r,a)}createTransaction(e){let i;typeof e>"u"||e&&typeof e=="object"&&!Array.isArray(e)?i=e||{}:i={ttl:e};const t=i.ttl,o="/vectorsdb/transactions",a={};typeof t<"u"&&(a.ttl=t);const s=new URL(this.client.config.endpoint+o),r={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",s,r,a)}getTransaction(e){let i;e&&typeof e=="object"&&!Array.isArray(e)?i=e||{}:i={transactionId:e};const t=i.transactionId;if(typeof t>"u")throw new h('Missing required parameter: "transactionId"');const o="/vectorsdb/transactions/{transactionId}".replace("{transactionId}",encodeURIComponent(String(t))),a={},s=new URL(this.client.config.endpoint+o),r={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",s,r,a)}updateTransaction(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={transactionId:e,commit:i[0],rollback:i[1]};const o=t.transactionId,a=t.commit,s=t.rollback;if(typeof o>"u")throw new h('Missing required parameter: "transactionId"');const r="/vectorsdb/transactions/{transactionId}".replace("{transactionId}",encodeURIComponent(String(o))),d={};typeof a<"u"&&(d.commit=a),typeof s<"u"&&(d.rollback=s);const c=new URL(this.client.config.endpoint+r),p={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("patch",c,p,d)}deleteTransaction(e){let i;e&&typeof e=="object"&&!Array.isArray(e)?i=e||{}:i={transactionId:e};const t=i.transactionId;if(typeof t>"u")throw new h('Missing required parameter: "transactionId"');const o="/vectorsdb/transactions/{transactionId}".replace("{transactionId}",encodeURIComponent(String(t))),a={},s=new URL(this.client.config.endpoint+o),r={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json"};return this.client.call("delete",s,r,a)}createOperations(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={transactionId:e,operations:i[0]};const o=t.transactionId,a=t.operations;if(typeof o>"u")throw new h('Missing required parameter: "transactionId"');const s="/vectorsdb/transactions/{transactionId}/operations".replace("{transactionId}",encodeURIComponent(String(o))),r={};typeof a<"u"&&(r.operations=a);const d=new URL(this.client.config.endpoint+s),c={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",d,c,r)}listDocuments(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={databaseId:e,collectionId:i[0],queries:i[1],transactionId:i[2],total:i[3],ttl:i[4]};const o=t.databaseId,a=t.collectionId,s=t.queries,r=t.transactionId,d=t.total,c=t.ttl;if(typeof o>"u")throw new h('Missing required parameter: "databaseId"');if(typeof a>"u")throw new h('Missing required parameter: "collectionId"');const p="/vectorsdb/{databaseId}/collections/{collectionId}/documents".replace("{databaseId}",encodeURIComponent(String(o))).replace("{collectionId}",encodeURIComponent(String(a))),u={};typeof s<"u"&&(u.queries=s),typeof r<"u"&&(u.transactionId=r),typeof d<"u"&&(u.total=d),typeof c<"u"&&(u.ttl=c);const m=new URL(this.client.config.endpoint+p),j={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",m,j,u)}createDocument(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={databaseId:e,collectionId:i[0],documentId:i[1],data:i[2],permissions:i[3],transactionId:i[4]};const o=t.databaseId,a=t.collectionId,s=t.documentId,r=t.data,d=t.permissions,c=t.transactionId;if(typeof o>"u")throw new h('Missing required parameter: "databaseId"');if(typeof a>"u")throw new h('Missing required parameter: "collectionId"');if(typeof s>"u")throw new h('Missing required parameter: "documentId"');if(typeof r>"u")throw new h('Missing required parameter: "data"');const p="/vectorsdb/{databaseId}/collections/{collectionId}/documents".replace("{databaseId}",encodeURIComponent(String(o))).replace("{collectionId}",encodeURIComponent(String(a))),u={};typeof s<"u"&&(u.documentId=s),typeof r<"u"&&(u.data=r),typeof d<"u"&&(u.permissions=d),typeof c<"u"&&(u.transactionId=c);const m=new URL(this.client.config.endpoint+p),j={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",m,j,u)}createQuery(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={databaseId:e,collectionId:i[0],queries:i[1],transactionId:i[2],total:i[3],ttl:i[4]};const o=t.databaseId,a=t.collectionId,s=t.queries,r=t.transactionId,d=t.total,c=t.ttl;if(typeof o>"u")throw new h('Missing required parameter: "databaseId"');if(typeof a>"u")throw new h('Missing required parameter: "collectionId"');const p="/vectorsdb/{databaseId}/collections/{collectionId}/documents/query".replace("{databaseId}",encodeURIComponent(String(o))).replace("{collectionId}",encodeURIComponent(String(a))),u={};typeof s<"u"&&(u.queries=s),typeof r<"u"&&(u.transactionId=r),typeof d<"u"&&(u.total=d),typeof c<"u"&&(u.ttl=c);const m=new URL(this.client.config.endpoint+p),j={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",m,j,u)}getDocument(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={databaseId:e,collectionId:i[0],documentId:i[1],queries:i[2],transactionId:i[3]};const o=t.databaseId,a=t.collectionId,s=t.documentId,r=t.queries,d=t.transactionId;if(typeof o>"u")throw new h('Missing required parameter: "databaseId"');if(typeof a>"u")throw new h('Missing required parameter: "collectionId"');if(typeof s>"u")throw new h('Missing required parameter: "documentId"');const c="/vectorsdb/{databaseId}/collections/{collectionId}/documents/{documentId}".replace("{databaseId}",encodeURIComponent(String(o))).replace("{collectionId}",encodeURIComponent(String(a))).replace("{documentId}",encodeURIComponent(String(s))),p={};typeof r<"u"&&(p.queries=r),typeof d<"u"&&(p.transactionId=d);const u=new URL(this.client.config.endpoint+c),m={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",u,m,p)}upsertDocument(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={databaseId:e,collectionId:i[0],documentId:i[1],data:i[2],permissions:i[3],transactionId:i[4]};const o=t.databaseId,a=t.collectionId,s=t.documentId,r=t.data,d=t.permissions,c=t.transactionId;if(typeof o>"u")throw new h('Missing required parameter: "databaseId"');if(typeof a>"u")throw new h('Missing required parameter: "collectionId"');if(typeof s>"u")throw new h('Missing required parameter: "documentId"');const p="/vectorsdb/{databaseId}/collections/{collectionId}/documents/{documentId}".replace("{databaseId}",encodeURIComponent(String(o))).replace("{collectionId}",encodeURIComponent(String(a))).replace("{documentId}",encodeURIComponent(String(s))),u={};typeof r<"u"&&(u.data=r),typeof d<"u"&&(u.permissions=d),typeof c<"u"&&(u.transactionId=c);const m=new URL(this.client.config.endpoint+p),j={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("put",m,j,u)}updateDocument(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={databaseId:e,collectionId:i[0],documentId:i[1],data:i[2],permissions:i[3],transactionId:i[4]};const o=t.databaseId,a=t.collectionId,s=t.documentId,r=t.data,d=t.permissions,c=t.transactionId;if(typeof o>"u")throw new h('Missing required parameter: "databaseId"');if(typeof a>"u")throw new h('Missing required parameter: "collectionId"');if(typeof s>"u")throw new h('Missing required parameter: "documentId"');const p="/vectorsdb/{databaseId}/collections/{collectionId}/documents/{documentId}".replace("{databaseId}",encodeURIComponent(String(o))).replace("{collectionId}",encodeURIComponent(String(a))).replace("{documentId}",encodeURIComponent(String(s))),u={};typeof r<"u"&&(u.data=r),typeof d<"u"&&(u.permissions=d),typeof c<"u"&&(u.transactionId=c);const m=new URL(this.client.config.endpoint+p),j={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("patch",m,j,u)}deleteDocument(e,...i){let t;e&&typeof e=="object"&&!Array.isArray(e)?t=e||{}:t={databaseId:e,collectionId:i[0],documentId:i[1],transactionId:i[2]};const o=t.databaseId,a=t.collectionId,s=t.documentId,r=t.transactionId;if(typeof o>"u")throw new h('Missing required parameter: "databaseId"');if(typeof a>"u")throw new h('Missing required parameter: "collectionId"');if(typeof s>"u")throw new h('Missing required parameter: "documentId"');const d="/vectorsdb/{databaseId}/collections/{collectionId}/documents/{documentId}".replace("{databaseId}",encodeURIComponent(String(o))).replace("{collectionId}",encodeURIComponent(String(a))).replace("{documentId}",encodeURIComponent(String(s))),c={};typeof r<"u"&&(c.transactionId=r);const p=new URL(this.client.config.endpoint+d),u={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json"};return this.client.call("delete",p,u,c)}}var kt;(function(n){n[n.NORMAL_CLOSURE=1e3]="NORMAL_CLOSURE",n[n.POLICY_VIOLATION=1008]="POLICY_VIOLATION",n[n.UNKNOWN_ERROR=-1]="UNKNOWN_ERROR"})(kt||(kt={}));class mo{constructor(e){this.TYPE_ERROR="error",this.TYPE_EVENT="event",this.TYPE_PONG="pong",this.TYPE_CONNECTED="connected",this.DEBOUNCE_MS=1,this.HEARTBEAT_INTERVAL=2e4,this.activeSubscriptions=new Map,this.pendingSubscribes=new Map,this.appConnected=!1,this.subCallDepth=0,this.reconnectAttempts=0,this.connectionId=0,this.reconnect=!0,this.onErrorCallbacks=[],this.onCloseCallbacks=[],this.onOpenCallbacks=[],this.client=e}onError(e){this.onErrorCallbacks.push(e)}onClose(e){this.onCloseCallbacks.push(e)}onOpen(e){this.onOpenCallbacks.push(e)}startHeartbeat(){this.stopHeartbeat(),this.heartbeatTimer=window?.setInterval(()=>{this.socket&&this.socket.readyState===WebSocket.OPEN&&this.socket.send(ye.stringify({type:"ping"}))},this.HEARTBEAT_INTERVAL)}stopHeartbeat(){this.heartbeatTimer&&(window?.clearInterval(this.heartbeatTimer),this.heartbeatTimer=void 0)}createSocket(){return we(this,void 0,void 0,function*(){if(!(this.socket&&this.socket.readyState<WebSocket.CLOSING))return this.socketCreationPromise?this.socketCreationPromise:(this.socketCreationPromise=this.createSocketLocked().finally(()=>{this.socketCreationPromise=void 0}),this.socketCreationPromise)})}createSocketLocked(){return we(this,void 0,void 0,function*(){if(this.activeSubscriptions.size===0&&!this.pendingPresence){this.reconnect=!1,yield this.closeSocket();return}const e=this.client.config.project;if(!e)throw new h("Missing project ID");let i=`project=${e}`;const t=this.client.config.jwt;t&&(i+=`&jwt=${encodeURIComponent(t)}`);const s=`${(this.client.config.endpointRealtime!==""?this.client.config.endpointRealtime:this.client.config.endpoint||"").replace("https://","wss://").replace("http://","ws://")}/realtime?${i}`;return this.socket&&(this.reconnect=!1,this.socket.readyState<WebSocket.CLOSING&&(yield this.closeSocket()),this.reconnect=!0),new Promise((r,d)=>{if(this.activeSubscriptions.size===0&&!this.pendingPresence){r();return}try{const c=++this.connectionId,p=this.socket=new WebSocket(s);p.addEventListener("open",()=>{c===this.connectionId&&(this.reconnectAttempts=0,this.onOpenCallbacks.forEach(u=>u()),this.startHeartbeat(),r())}),p.addEventListener("message",u=>{if(c===this.connectionId)try{const m=ye.parse(u.data);this.handleMessage(m)}catch(m){console.error("Failed to parse message:",m)}}),p.addEventListener("close",u=>we(this,void 0,void 0,function*(){if(c!==this.connectionId||p!==this.socket)return;if(this.appConnected=!1,this.stopHeartbeat(),this.onCloseCallbacks.forEach(j=>j()),!this.reconnect||u.code===kt.POLICY_VIOLATION){this.reconnect=!0;return}const m=this.getTimeout();console.log(`Realtime disconnected. Re-connecting in ${m/1e3} seconds.`),yield this.sleep(m),this.reconnectAttempts++;try{yield this.createSocket()}catch(j){console.error("Failed to reconnect:",j)}})),p.addEventListener("error",u=>{if(c!==this.connectionId||p!==this.socket)return;this.stopHeartbeat();const m=new Error("WebSocket error");console.error("WebSocket error:",m.message),this.onErrorCallbacks.forEach(j=>j(m)),d(m)})}catch(c){d(c)}})})}closeSocket(){return we(this,void 0,void 0,function*(){if(this.stopHeartbeat(),this.socket)return new Promise(e=>{if(!this.socket){e();return}this.socket.readyState===WebSocket.OPEN||this.socket.readyState===WebSocket.CONNECTING?(this.socket.addEventListener("close",()=>{e()},{once:!0}),this.socket.close(kt.NORMAL_CLOSURE)):e()})})}getTimeout(){return this.reconnectAttempts<5?1e3:this.reconnectAttempts<15?5e3:this.reconnectAttempts<100?1e4:6e4}sleep(e){return new Promise(i=>setTimeout(i,e))}sendUnsubscribeMessage(e){const i=e.filter(t=>typeof t=="string"&&t.length>0);i.length!==0&&(!this.socket||this.socket.readyState!==WebSocket.OPEN||this.socket.send(ye.stringify({type:"unsubscribe",data:i.map(t=>({subscriptionId:t}))})))}generateUniqueSubscriptionId(){const e=this.activeSubscriptions.size+1;for(let i=0;i<e;i++){const t=He.unique();if(!this.activeSubscriptions.has(t))return t}throw new h("Failed to generate unique subscription id")}enqueuePendingSubscribe(e){var i;const t=this.activeSubscriptions.get(e);t&&this.pendingSubscribes.set(e,{subscriptionId:e,channels:Array.from(t.channels),queries:(i=t.queries)!==null&&i!==void 0?i:[]})}disconnect(){return we(this,void 0,void 0,function*(){this.activeSubscriptions.clear(),this.pendingSubscribes.clear(),this.pendingPresence=void 0,this.appConnected=!1,this.reconnect=!1,this.socketCreationPromise=void 0,yield this.closeSocket()})}sendPendingSubscribes(){if(!this.socket||this.socket.readyState!==WebSocket.OPEN||!this.appConnected||this.pendingSubscribes.size<1)return;const e=Array.from(this.pendingSubscribes.values());this.pendingSubscribes.clear(),this.socket.send(ye.stringify({type:"subscribe",data:e}))}channelToString(e){return typeof e=="string"?e:e&&typeof e.toString=="function"?e.toString():String(e)}subscribe(e,i){return we(this,arguments,void 0,function*(t,o,a=[]){const r=(Array.isArray(t)?t:[t]).map(q=>this.channelToString(q)),d=new Set(r),c=[];for(const q of a??[])if(Array.isArray(q))for(const T of q)c.push(typeof T=="string"?T:T.toString());else c.push(typeof q=="string"?q:q.toString());const p=this.generateUniqueSubscriptionId();this.activeSubscriptions.set(p,{channels:d,queries:c,callback:o}),this.enqueuePendingSubscribe(p),this.subCallDepth++;try{yield this.sleep(this.DEBOUNCE_MS),this.subCallDepth===1&&(!this.socket||this.socket.readyState>WebSocket.OPEN?yield this.createSocket():this.socket.readyState===WebSocket.OPEN&&this.sendPendingSubscribes())}finally{this.subCallDepth--}const u=()=>we(this,void 0,void 0,function*(){this.activeSubscriptions.has(p)&&(this.activeSubscriptions.delete(p),this.pendingSubscribes.delete(p),this.sendUnsubscribeMessage([p]))});return{unsubscribe:u,update:q=>we(this,void 0,void 0,function*(){const T=this.activeSubscriptions.get(p);if(T){if(q.channels!==void 0){const K=q.channels.map(Y=>this.channelToString(Y));T.channels=new Set(K)}if(q.queries!==void 0){const K=[];for(const Y of q.queries)if(Array.isArray(Y))for(const L of Y)K.push(typeof L=="string"?L:L.toString());else K.push(typeof Y=="string"?Y:Y.toString());T.queries=K}this.enqueuePendingSubscribe(p),this.subCallDepth++;try{yield this.sleep(this.DEBOUNCE_MS),this.subCallDepth===1&&(!this.socket||this.socket.readyState>WebSocket.OPEN?yield this.createSocket():this.socket.readyState===WebSocket.OPEN&&this.sendPendingSubscribes())}finally{this.subCallDepth--}}}),close:()=>we(this,void 0,void 0,function*(){yield u(),this.activeSubscriptions.size===0&&(this.reconnect=!1,yield this.closeSocket())})}})}upsertPresence(e){return we(this,void 0,void 0,function*(){const i={status:e.status,presenceId:e.presenceId};e.permissions!==void 0&&(i.permissions=e.permissions),e.metadata!==void 0&&(i.metadata=e.metadata),this.pendingPresence=i,(!this.socket||this.socket.readyState>=WebSocket.CLOSING)&&this.createSocket().catch(t=>{console.error("Failed to open realtime socket for presence:",t)}),this.flushPendingPresence()})}flushPendingPresence(){this.pendingPresence&&(!this.socket||this.socket.readyState!==WebSocket.OPEN||this.appConnected&&this.socket.send(ye.stringify({type:"presence",data:this.pendingPresence})))}handleMessage(e){if(e.type)switch(e.type){case this.TYPE_CONNECTED:this.handleResponseConnected(e);break;case this.TYPE_ERROR:this.handleResponseError(e);break;case this.TYPE_EVENT:this.handleResponseEvent(e);break;case this.TYPE_PONG:break}}handleResponseConnected(e){var i,t;if(!e.data)return;const o=e.data;let a=this.client.config.session;if(!a)try{const s=ye.parse((i=window.localStorage.getItem("cookieFallback"))!==null&&i!==void 0?i:"{}");a=s?.[`a_session_${this.client.config.project}`]}catch(s){console.error("Failed to parse cookie fallback:",s)}a&&!o.user&&((t=this.socket)===null||t===void 0||t.send(ye.stringify({type:"authentication",data:{session:a}})));for(const s of this.activeSubscriptions.keys())this.enqueuePendingSubscribe(s);this.appConnected=!0,this.sendPendingSubscribes(),this.flushPendingPresence()}handleResponseError(e){var i,t;const o=new h(((i=e.data)===null||i===void 0?void 0:i.message)||"Unknown error"),a=(t=e.data)===null||t===void 0?void 0:t.code;this.onErrorCallbacks.forEach(s=>s(o,a))}handleResponseEvent(e){const i=e.data;if(!i)return;const t=i.channels,o=i.events,a=i.payload,s=i.timestamp,r=i.subscriptions;if(!(!t||!o||!a||!r||r.length===0))for(const d of r){const c=this.activeSubscriptions.get(d);c&&c.callback({events:o,channels:t,timestamp:s,payload:a,subscriptions:r})}}}class Fe{}Fe.read=n=>`read("${n}")`,Fe.write=n=>`write("${n}")`,Fe.create=n=>`create("${n}")`,Fe.update=n=>`update("${n}")`,Fe.delete=n=>`delete("${n}")`;class bo{static any(){return"any"}static user(e,i=""){return i===""?`user:${e}`:`user:${e}/${i}`}static users(e=""){return e===""?"users":`users/${e}`}static guests(){return"guests"}static team(e,i=""){return i===""?`team:${e}`:`team:${e}/${i}`}static member(e){return`member:${e}`}static label(e){return`label:${e}`}}function xe(n){if(n==null)throw new Error("Channel ID is required");const e=String(n).trim();if(e==="")throw new Error("Channel ID is required");return e}class ke{constructor(e){this.segments=e}next(e,i){const t=i===void 0?[...this.segments,e]:[...this.segments,e,xe(i)];return new ke(t)}resolve(e){return new ke([...this.segments,e])}toString(){return this.segments.join(".")}collection(e){return this.next("collections",e)}document(e){return this.next("documents",e)}table(e){return this.next("tables",e)}row(e){return this.next("rows",e)}file(e){return this.next("files",e)}create(){return this.resolve("create")}upsert(){return this.resolve("upsert")}update(){return this.resolve("update")}delete(){return this.resolve("delete")}static database(e){return new ke(["databases",xe(e)])}static execution(e){return new ke(["executions",xe(e)])}static tablesdb(e){return new ke(["tablesdb",xe(e)])}static bucket(e){return new ke(["buckets",xe(e)])}static function(e){return new ke(["functions",xe(e)])}static team(e){return new ke(["teams",xe(e)])}static membership(e){return new ke(["memberships",xe(e)])}static presence(e){return new ke(["presences",xe(e)])}static account(){return"account"}static documents(){return"documents"}static rows(){return"rows"}static files(){return"files"}static executions(){return"executions"}static teams(){return"teams"}static memberships(){return"memberships"}static presences(){return"presences"}}var Gt;(function(n){n.Equal="equal",n.NotEqual="notEqual",n.GreaterThan="greaterThan",n.GreaterThanEqual="greaterThanEqual",n.LessThan="lessThan",n.LessThanEqual="lessThanEqual",n.Contains="contains",n.IsNull="isNull",n.IsNotNull="isNotNull"})(Gt||(Gt={}));class Q{constructor(e,i){this.method=e,i!==void 0&&(Array.isArray(i)?this.values=i:this.values=[i])}toString(){return JSON.stringify({method:this.method,values:this.values})}}Q.increment=(n=1,e)=>{if(isNaN(n)||!isFinite(n))throw new Error("Value cannot be NaN or Infinity");if(e!==void 0&&(isNaN(e)||!isFinite(e)))throw new Error("Max cannot be NaN or Infinity");const i=[n];return e!==void 0&&i.push(e),new Q("increment",i).toString()},Q.decrement=(n=1,e)=>{if(isNaN(n)||!isFinite(n))throw new Error("Value cannot be NaN or Infinity");if(e!==void 0&&(isNaN(e)||!isFinite(e)))throw new Error("Min cannot be NaN or Infinity");const i=[n];return e!==void 0&&i.push(e),new Q("decrement",i).toString()},Q.multiply=(n,e)=>{if(isNaN(n)||!isFinite(n))throw new Error("Factor cannot be NaN or Infinity");if(e!==void 0&&(isNaN(e)||!isFinite(e)))throw new Error("Max cannot be NaN or Infinity");const i=[n];return e!==void 0&&i.push(e),new Q("multiply",i).toString()},Q.divide=(n,e)=>{if(isNaN(n)||!isFinite(n))throw new Error("Divisor cannot be NaN or Infinity");if(e!==void 0&&(isNaN(e)||!isFinite(e)))throw new Error("Min cannot be NaN or Infinity");if(n===0)throw new Error("Divisor cannot be zero");const i=[n];return e!==void 0&&i.push(e),new Q("divide",i).toString()},Q.modulo=n=>{if(isNaN(n)||!isFinite(n))throw new Error("Divisor cannot be NaN or Infinity");if(n===0)throw new Error("Divisor cannot be zero");return new Q("modulo",[n]).toString()},Q.power=(n,e)=>{if(isNaN(n)||!isFinite(n))throw new Error("Exponent cannot be NaN or Infinity");if(e!==void 0&&(isNaN(e)||!isFinite(e)))throw new Error("Max cannot be NaN or Infinity");const i=[n];return e!==void 0&&i.push(e),new Q("power",i).toString()},Q.arrayAppend=n=>new Q("arrayAppend",n).toString(),Q.arrayPrepend=n=>new Q("arrayPrepend",n).toString(),Q.arrayInsert=(n,e)=>new Q("arrayInsert",[n,e]).toString(),Q.arrayRemove=n=>new Q("arrayRemove",[n]).toString(),Q.arrayUnique=()=>new Q("arrayUnique",[]).toString(),Q.arrayIntersect=n=>new Q("arrayIntersect",n).toString(),Q.arrayDiff=n=>new Q("arrayDiff",n).toString(),Q.arrayFilter=(n,e)=>{const i=[n,e===void 0?null:e];return new Q("arrayFilter",i).toString()},Q.stringConcat=n=>new Q("stringConcat",[n]).toString(),Q.stringReplace=(n,e)=>new Q("stringReplace",[n,e]).toString(),Q.toggle=()=>new Q("toggle",[]).toString(),Q.dateAddDays=n=>new Q("dateAddDays",[n]).toString(),Q.dateSubDays=n=>new Q("dateSubDays",[n]).toString(),Q.dateSetNow=()=>new Q("dateSetNow",[]).toString();var Kt;(function(n){n.Totp="totp"})(Kt||(Kt={}));var Yt;(function(n){n.Email="email",n.Phone="phone",n.Totp="totp",n.Recoverycode="recoverycode",n.Custom="custom"})(Yt||(Yt={}));var Jt;(function(n){n.Amazon="amazon",n.Apple="apple",n.Appwrite="appwrite",n.Auth0="auth0",n.Authentik="authentik",n.Autodesk="autodesk",n.Bitbucket="bitbucket",n.Bitly="bitly",n.Box="box",n.Cloudflare="cloudflare",n.Dailymotion="dailymotion",n.Discord="discord",n.Disqus="disqus",n.Dropbox="dropbox",n.Etsy="etsy",n.Facebook="facebook",n.Figma="figma",n.Fusionauth="fusionauth",n.Github="github",n.Gitlab="gitlab",n.Google="google",n.Huggingface="huggingface",n.Keycloak="keycloak",n.Kick="kick",n.Linkedin="linkedin",n.Microsoft="microsoft",n.Notion="notion",n.Oidc="oidc",n.Okta="okta",n.Paypal="paypal",n.PaypalSandbox="paypalSandbox",n.Podio="podio",n.Resend="resend",n.Salesforce="salesforce",n.Slack="slack",n.Spotify="spotify",n.Stripe="stripe",n.Tradeshift="tradeshift",n.TradeshiftBox="tradeshiftBox",n.Twitch="twitch",n.Wordpress="wordpress",n.X="x",n.Yahoo="yahoo",n.Yammer="yammer",n.Yandex="yandex",n.Zoho="zoho",n.Zoom="zoom"})(Jt||(Jt={}));var Zt;(function(n){n.AvantBrowser="aa",n.AndroidWebViewBeta="an",n.GoogleChrome="ch",n.GoogleChromeIOS="ci",n.GoogleChromeMobile="cm",n.Chromium="cr",n.MozillaFirefox="ff",n.Safari="sf",n.MobileSafari="mf",n.MicrosoftEdge="ps",n.MicrosoftEdgeIOS="oi",n.OperaMini="om",n.Opera="op",n.OperaNext="on"})(Zt||(Zt={}));var Qt;(function(n){n.AmericanExpress="amex",n.Argencard="argencard",n.Cabal="cabal",n.Cencosud="cencosud",n.DinersClub="diners",n.Discover="discover",n.Elo="elo",n.Hipercard="hipercard",n.JCB="jcb",n.Mastercard="mastercard",n.Naranja="naranja",n.TarjetaShopping="targeta-shopping",n.UnionPay="unionpay",n.Visa="visa",n.MIR="mir",n.Maestro="maestro",n.Rupay="rupay"})(Qt||(Qt={}));var Tt;(function(n){n.Afghanistan="af",n.Angola="ao",n.Albania="al",n.Andorra="ad",n.UnitedArabEmirates="ae",n.Argentina="ar",n.Armenia="am",n.AntiguaAndBarbuda="ag",n.Australia="au",n.Austria="at",n.Azerbaijan="az",n.Burundi="bi",n.Belgium="be",n.Benin="bj",n.BurkinaFaso="bf",n.Bangladesh="bd",n.Bulgaria="bg",n.Bahrain="bh",n.Bahamas="bs",n.BosniaAndHerzegovina="ba",n.Belarus="by",n.Belize="bz",n.Bolivia="bo",n.Brazil="br",n.Barbados="bb",n.BruneiDarussalam="bn",n.Bhutan="bt",n.Botswana="bw",n.CentralAfricanRepublic="cf",n.Canada="ca",n.Switzerland="ch",n.Chile="cl",n.China="cn",n.CoteDIvoire="ci",n.Cameroon="cm",n.DemocraticRepublicOfTheCongo="cd",n.RepublicOfTheCongo="cg",n.Colombia="co",n.Comoros="km",n.CapeVerde="cv",n.CostaRica="cr",n.Cuba="cu",n.Cyprus="cy",n.CzechRepublic="cz",n.Germany="de",n.Djibouti="dj",n.Dominica="dm",n.Denmark="dk",n.DominicanRepublic="do",n.Algeria="dz",n.Ecuador="ec",n.Egypt="eg",n.Eritrea="er",n.Spain="es",n.Estonia="ee",n.Ethiopia="et",n.Finland="fi",n.Fiji="fj",n.France="fr",n.MicronesiaFederatedStatesOf="fm",n.Gabon="ga",n.UnitedKingdom="gb",n.Georgia="ge",n.Ghana="gh",n.Guinea="gn",n.Gambia="gm",n.GuineaBissau="gw",n.EquatorialGuinea="gq",n.Greece="gr",n.Grenada="gd",n.Guatemala="gt",n.Guyana="gy",n.Honduras="hn",n.Croatia="hr",n.Haiti="ht",n.Hungary="hu",n.Indonesia="id",n.India="in",n.Ireland="ie",n.IranIslamicRepublicOf="ir",n.Iraq="iq",n.Iceland="is",n.Israel="il",n.Italy="it",n.Jamaica="jm",n.Jordan="jo",n.Japan="jp",n.Kazakhstan="kz",n.Kenya="ke",n.Kyrgyzstan="kg",n.Cambodia="kh",n.Kiribati="ki",n.SaintKittsAndNevis="kn",n.SouthKorea="kr",n.Kuwait="kw",n.LaoPeopleSDemocraticRepublic="la",n.Lebanon="lb",n.Liberia="lr",n.Libya="ly",n.SaintLucia="lc",n.Liechtenstein="li",n.SriLanka="lk",n.Lesotho="ls",n.Lithuania="lt",n.Luxembourg="lu",n.Latvia="lv",n.Morocco="ma",n.Monaco="mc",n.Moldova="md",n.Madagascar="mg",n.Maldives="mv",n.Mexico="mx",n.MarshallIslands="mh",n.NorthMacedonia="mk",n.Mali="ml",n.Malta="mt",n.Myanmar="mm",n.Montenegro="me",n.Mongolia="mn",n.Mozambique="mz",n.Mauritania="mr",n.Mauritius="mu",n.Malawi="mw",n.Malaysia="my",n.Namibia="na",n.Niger="ne",n.Nigeria="ng",n.Nicaragua="ni",n.Netherlands="nl",n.Norway="no",n.Nepal="np",n.Nauru="nr",n.NewZealand="nz",n.Oman="om",n.Pakistan="pk",n.Panama="pa",n.Peru="pe",n.Philippines="ph",n.Palau="pw",n.PapuaNewGuinea="pg",n.Poland="pl",n.FrenchPolynesia="pf",n.NorthKorea="kp",n.Portugal="pt",n.Paraguay="py",n.Qatar="qa",n.Romania="ro",n.Russia="ru",n.Rwanda="rw",n.SaudiArabia="sa",n.Sudan="sd",n.Senegal="sn",n.Singapore="sg",n.SolomonIslands="sb",n.SierraLeone="sl",n.ElSalvador="sv",n.SanMarino="sm",n.Somalia="so",n.Serbia="rs",n.SouthSudan="ss",n.SaoTomeAndPrincipe="st",n.Suriname="sr",n.Slovakia="sk",n.Slovenia="si",n.Sweden="se",n.Eswatini="sz",n.Seychelles="sc",n.Syria="sy",n.Chad="td",n.Togo="tg",n.Thailand="th",n.Tajikistan="tj",n.Turkmenistan="tm",n.TimorLeste="tl",n.Tonga="to",n.TrinidadAndTobago="tt",n.Tunisia="tn",n.Turkey="tr",n.Tuvalu="tv",n.Tanzania="tz",n.Uganda="ug",n.Ukraine="ua",n.Uruguay="uy",n.UnitedStates="us",n.Uzbekistan="uz",n.VaticanCity="va",n.SaintVincentAndTheGrenadines="vc",n.Venezuela="ve",n.Vietnam="vn",n.Vanuatu="vu",n.Samoa="ws",n.Yemen="ye",n.SouthAfrica="za",n.Zambia="zm",n.Zimbabwe="zw"})(Tt||(Tt={}));var zt;(function(n){n.Light="light",n.Dark="dark"})(zt||(zt={}));var Ot;(function(n){n.AfricaAbidjan="africa/abidjan",n.AfricaAccra="africa/accra",n.AfricaAddisAbaba="africa/addis_ababa",n.AfricaAlgiers="africa/algiers",n.AfricaAsmara="africa/asmara",n.AfricaBamako="africa/bamako",n.AfricaBangui="africa/bangui",n.AfricaBanjul="africa/banjul",n.AfricaBissau="africa/bissau",n.AfricaBlantyre="africa/blantyre",n.AfricaBrazzaville="africa/brazzaville",n.AfricaBujumbura="africa/bujumbura",n.AfricaCairo="africa/cairo",n.AfricaCasablanca="africa/casablanca",n.AfricaCeuta="africa/ceuta",n.AfricaConakry="africa/conakry",n.AfricaDakar="africa/dakar",n.AfricaDarEsSalaam="africa/dar_es_salaam",n.AfricaDjibouti="africa/djibouti",n.AfricaDouala="africa/douala",n.AfricaElAaiun="africa/el_aaiun",n.AfricaFreetown="africa/freetown",n.AfricaGaborone="africa/gaborone",n.AfricaHarare="africa/harare",n.AfricaJohannesburg="africa/johannesburg",n.AfricaJuba="africa/juba",n.AfricaKampala="africa/kampala",n.AfricaKhartoum="africa/khartoum",n.AfricaKigali="africa/kigali",n.AfricaKinshasa="africa/kinshasa",n.AfricaLagos="africa/lagos",n.AfricaLibreville="africa/libreville",n.AfricaLome="africa/lome",n.AfricaLuanda="africa/luanda",n.AfricaLubumbashi="africa/lubumbashi",n.AfricaLusaka="africa/lusaka",n.AfricaMalabo="africa/malabo",n.AfricaMaputo="africa/maputo",n.AfricaMaseru="africa/maseru",n.AfricaMbabane="africa/mbabane",n.AfricaMogadishu="africa/mogadishu",n.AfricaMonrovia="africa/monrovia",n.AfricaNairobi="africa/nairobi",n.AfricaNdjamena="africa/ndjamena",n.AfricaNiamey="africa/niamey",n.AfricaNouakchott="africa/nouakchott",n.AfricaOuagadougou="africa/ouagadougou",n.AfricaPortonovo="africa/porto-novo",n.AfricaSaoTome="africa/sao_tome",n.AfricaTripoli="africa/tripoli",n.AfricaTunis="africa/tunis",n.AfricaWindhoek="africa/windhoek",n.AmericaAdak="america/adak",n.AmericaAnchorage="america/anchorage",n.AmericaAnguilla="america/anguilla",n.AmericaAntigua="america/antigua",n.AmericaAraguaina="america/araguaina",n.AmericaArgentinaBuenosAires="america/argentina/buenos_aires",n.AmericaArgentinaCatamarca="america/argentina/catamarca",n.AmericaArgentinaCordoba="america/argentina/cordoba",n.AmericaArgentinaJujuy="america/argentina/jujuy",n.AmericaArgentinaLaRioja="america/argentina/la_rioja",n.AmericaArgentinaMendoza="america/argentina/mendoza",n.AmericaArgentinaRioGallegos="america/argentina/rio_gallegos",n.AmericaArgentinaSalta="america/argentina/salta",n.AmericaArgentinaSanJuan="america/argentina/san_juan",n.AmericaArgentinaSanLuis="america/argentina/san_luis",n.AmericaArgentinaTucuman="america/argentina/tucuman",n.AmericaArgentinaUshuaia="america/argentina/ushuaia",n.AmericaAruba="america/aruba",n.AmericaAsuncion="america/asuncion",n.AmericaAtikokan="america/atikokan",n.AmericaBahia="america/bahia",n.AmericaBahiaBanderas="america/bahia_banderas",n.AmericaBarbados="america/barbados",n.AmericaBelem="america/belem",n.AmericaBelize="america/belize",n.AmericaBlancsablon="america/blanc-sablon",n.AmericaBoaVista="america/boa_vista",n.AmericaBogota="america/bogota",n.AmericaBoise="america/boise",n.AmericaCambridgeBay="america/cambridge_bay",n.AmericaCampoGrande="america/campo_grande",n.AmericaCancun="america/cancun",n.AmericaCaracas="america/caracas",n.AmericaCayenne="america/cayenne",n.AmericaCayman="america/cayman",n.AmericaChicago="america/chicago",n.AmericaChihuahua="america/chihuahua",n.AmericaCiudadJuarez="america/ciudad_juarez",n.AmericaCostaRica="america/costa_rica",n.AmericaCoyhaique="america/coyhaique",n.AmericaCreston="america/creston",n.AmericaCuiaba="america/cuiaba",n.AmericaCuracao="america/curacao",n.AmericaDanmarkshavn="america/danmarkshavn",n.AmericaDawson="america/dawson",n.AmericaDawsonCreek="america/dawson_creek",n.AmericaDenver="america/denver",n.AmericaDetroit="america/detroit",n.AmericaDominica="america/dominica",n.AmericaEdmonton="america/edmonton",n.AmericaEirunepe="america/eirunepe",n.AmericaElSalvador="america/el_salvador",n.AmericaFortNelson="america/fort_nelson",n.AmericaFortaleza="america/fortaleza",n.AmericaGlaceBay="america/glace_bay",n.AmericaGooseBay="america/goose_bay",n.AmericaGrandTurk="america/grand_turk",n.AmericaGrenada="america/grenada",n.AmericaGuadeloupe="america/guadeloupe",n.AmericaGuatemala="america/guatemala",n.AmericaGuayaquil="america/guayaquil",n.AmericaGuyana="america/guyana",n.AmericaHalifax="america/halifax",n.AmericaHavana="america/havana",n.AmericaHermosillo="america/hermosillo",n.AmericaIndianaIndianapolis="america/indiana/indianapolis",n.AmericaIndianaKnox="america/indiana/knox",n.AmericaIndianaMarengo="america/indiana/marengo",n.AmericaIndianaPetersburg="america/indiana/petersburg",n.AmericaIndianaTellCity="america/indiana/tell_city",n.AmericaIndianaVevay="america/indiana/vevay",n.AmericaIndianaVincennes="america/indiana/vincennes",n.AmericaIndianaWinamac="america/indiana/winamac",n.AmericaInuvik="america/inuvik",n.AmericaIqaluit="america/iqaluit",n.AmericaJamaica="america/jamaica",n.AmericaJuneau="america/juneau",n.AmericaKentuckyLouisville="america/kentucky/louisville",n.AmericaKentuckyMonticello="america/kentucky/monticello",n.AmericaKralendijk="america/kralendijk",n.AmericaLaPaz="america/la_paz",n.AmericaLima="america/lima",n.AmericaLosAngeles="america/los_angeles",n.AmericaLowerPrinces="america/lower_princes",n.AmericaMaceio="america/maceio",n.AmericaManagua="america/managua",n.AmericaManaus="america/manaus",n.AmericaMarigot="america/marigot",n.AmericaMartinique="america/martinique",n.AmericaMatamoros="america/matamoros",n.AmericaMazatlan="america/mazatlan",n.AmericaMenominee="america/menominee",n.AmericaMerida="america/merida",n.AmericaMetlakatla="america/metlakatla",n.AmericaMexicoCity="america/mexico_city",n.AmericaMiquelon="america/miquelon",n.AmericaMoncton="america/moncton",n.AmericaMonterrey="america/monterrey",n.AmericaMontevideo="america/montevideo",n.AmericaMontserrat="america/montserrat",n.AmericaNassau="america/nassau",n.AmericaNewYork="america/new_york",n.AmericaNome="america/nome",n.AmericaNoronha="america/noronha",n.AmericaNorthDakotaBeulah="america/north_dakota/beulah",n.AmericaNorthDakotaCenter="america/north_dakota/center",n.AmericaNorthDakotaNewSalem="america/north_dakota/new_salem",n.AmericaNuuk="america/nuuk",n.AmericaOjinaga="america/ojinaga",n.AmericaPanama="america/panama",n.AmericaParamaribo="america/paramaribo",n.AmericaPhoenix="america/phoenix",n.AmericaPortauprince="america/port-au-prince",n.AmericaPortOfSpain="america/port_of_spain",n.AmericaPortoVelho="america/porto_velho",n.AmericaPuertoRico="america/puerto_rico",n.AmericaPuntaArenas="america/punta_arenas",n.AmericaRankinInlet="america/rankin_inlet",n.AmericaRecife="america/recife",n.AmericaRegina="america/regina",n.AmericaResolute="america/resolute",n.AmericaRioBranco="america/rio_branco",n.AmericaSantarem="america/santarem",n.AmericaSantiago="america/santiago",n.AmericaSantoDomingo="america/santo_domingo",n.AmericaSaoPaulo="america/sao_paulo",n.AmericaScoresbysund="america/scoresbysund",n.AmericaSitka="america/sitka",n.AmericaStBarthelemy="america/st_barthelemy",n.AmericaStJohns="america/st_johns",n.AmericaStKitts="america/st_kitts",n.AmericaStLucia="america/st_lucia",n.AmericaStThomas="america/st_thomas",n.AmericaStVincent="america/st_vincent",n.AmericaSwiftCurrent="america/swift_current",n.AmericaTegucigalpa="america/tegucigalpa",n.AmericaThule="america/thule",n.AmericaTijuana="america/tijuana",n.AmericaToronto="america/toronto",n.AmericaTortola="america/tortola",n.AmericaVancouver="america/vancouver",n.AmericaWhitehorse="america/whitehorse",n.AmericaWinnipeg="america/winnipeg",n.AmericaYakutat="america/yakutat",n.AntarcticaCasey="antarctica/casey",n.AntarcticaDavis="antarctica/davis",n.AntarcticaDumontdurville="antarctica/dumontdurville",n.AntarcticaMacquarie="antarctica/macquarie",n.AntarcticaMawson="antarctica/mawson",n.AntarcticaMcmurdo="antarctica/mcmurdo",n.AntarcticaPalmer="antarctica/palmer",n.AntarcticaRothera="antarctica/rothera",n.AntarcticaSyowa="antarctica/syowa",n.AntarcticaTroll="antarctica/troll",n.AntarcticaVostok="antarctica/vostok",n.ArcticLongyearbyen="arctic/longyearbyen",n.AsiaAden="asia/aden",n.AsiaAlmaty="asia/almaty",n.AsiaAmman="asia/amman",n.AsiaAnadyr="asia/anadyr",n.AsiaAqtau="asia/aqtau",n.AsiaAqtobe="asia/aqtobe",n.AsiaAshgabat="asia/ashgabat",n.AsiaAtyrau="asia/atyrau",n.AsiaBaghdad="asia/baghdad",n.AsiaBahrain="asia/bahrain",n.AsiaBaku="asia/baku",n.AsiaBangkok="asia/bangkok",n.AsiaBarnaul="asia/barnaul",n.AsiaBeirut="asia/beirut",n.AsiaBishkek="asia/bishkek",n.AsiaBrunei="asia/brunei",n.AsiaChita="asia/chita",n.AsiaColombo="asia/colombo",n.AsiaDamascus="asia/damascus",n.AsiaDhaka="asia/dhaka",n.AsiaDili="asia/dili",n.AsiaDubai="asia/dubai",n.AsiaDushanbe="asia/dushanbe",n.AsiaFamagusta="asia/famagusta",n.AsiaGaza="asia/gaza",n.AsiaHebron="asia/hebron",n.AsiaHoChiMinh="asia/ho_chi_minh",n.AsiaHongKong="asia/hong_kong",n.AsiaHovd="asia/hovd",n.AsiaIrkutsk="asia/irkutsk",n.AsiaJakarta="asia/jakarta",n.AsiaJayapura="asia/jayapura",n.AsiaJerusalem="asia/jerusalem",n.AsiaKabul="asia/kabul",n.AsiaKamchatka="asia/kamchatka",n.AsiaKarachi="asia/karachi",n.AsiaKathmandu="asia/kathmandu",n.AsiaKhandyga="asia/khandyga",n.AsiaKolkata="asia/kolkata",n.AsiaKrasnoyarsk="asia/krasnoyarsk",n.AsiaKualaLumpur="asia/kuala_lumpur",n.AsiaKuching="asia/kuching",n.AsiaKuwait="asia/kuwait",n.AsiaMacau="asia/macau",n.AsiaMagadan="asia/magadan",n.AsiaMakassar="asia/makassar",n.AsiaManila="asia/manila",n.AsiaMuscat="asia/muscat",n.AsiaNicosia="asia/nicosia",n.AsiaNovokuznetsk="asia/novokuznetsk",n.AsiaNovosibirsk="asia/novosibirsk",n.AsiaOmsk="asia/omsk",n.AsiaOral="asia/oral",n.AsiaPhnomPenh="asia/phnom_penh",n.AsiaPontianak="asia/pontianak",n.AsiaPyongyang="asia/pyongyang",n.AsiaQatar="asia/qatar",n.AsiaQostanay="asia/qostanay",n.AsiaQyzylorda="asia/qyzylorda",n.AsiaRiyadh="asia/riyadh",n.AsiaSakhalin="asia/sakhalin",n.AsiaSamarkand="asia/samarkand",n.AsiaSeoul="asia/seoul",n.AsiaShanghai="asia/shanghai",n.AsiaSingapore="asia/singapore",n.AsiaSrednekolymsk="asia/srednekolymsk",n.AsiaTaipei="asia/taipei",n.AsiaTashkent="asia/tashkent",n.AsiaTbilisi="asia/tbilisi",n.AsiaTehran="asia/tehran",n.AsiaThimphu="asia/thimphu",n.AsiaTokyo="asia/tokyo",n.AsiaTomsk="asia/tomsk",n.AsiaUlaanbaatar="asia/ulaanbaatar",n.AsiaUrumqi="asia/urumqi",n.AsiaUstnera="asia/ust-nera",n.AsiaVientiane="asia/vientiane",n.AsiaVladivostok="asia/vladivostok",n.AsiaYakutsk="asia/yakutsk",n.AsiaYangon="asia/yangon",n.AsiaYekaterinburg="asia/yekaterinburg",n.AsiaYerevan="asia/yerevan",n.AtlanticAzores="atlantic/azores",n.AtlanticBermuda="atlantic/bermuda",n.AtlanticCanary="atlantic/canary",n.AtlanticCapeVerde="atlantic/cape_verde",n.AtlanticFaroe="atlantic/faroe",n.AtlanticMadeira="atlantic/madeira",n.AtlanticReykjavik="atlantic/reykjavik",n.AtlanticSouthGeorgia="atlantic/south_georgia",n.AtlanticStHelena="atlantic/st_helena",n.AtlanticStanley="atlantic/stanley",n.AustraliaAdelaide="australia/adelaide",n.AustraliaBrisbane="australia/brisbane",n.AustraliaBrokenHill="australia/broken_hill",n.AustraliaDarwin="australia/darwin",n.AustraliaEucla="australia/eucla",n.AustraliaHobart="australia/hobart",n.AustraliaLindeman="australia/lindeman",n.AustraliaLordHowe="australia/lord_howe",n.AustraliaMelbourne="australia/melbourne",n.AustraliaPerth="australia/perth",n.AustraliaSydney="australia/sydney",n.EuropeAmsterdam="europe/amsterdam",n.EuropeAndorra="europe/andorra",n.EuropeAstrakhan="europe/astrakhan",n.EuropeAthens="europe/athens",n.EuropeBelgrade="europe/belgrade",n.EuropeBerlin="europe/berlin",n.EuropeBratislava="europe/bratislava",n.EuropeBrussels="europe/brussels",n.EuropeBucharest="europe/bucharest",n.EuropeBudapest="europe/budapest",n.EuropeBusingen="europe/busingen",n.EuropeChisinau="europe/chisinau",n.EuropeCopenhagen="europe/copenhagen",n.EuropeDublin="europe/dublin",n.EuropeGibraltar="europe/gibraltar",n.EuropeGuernsey="europe/guernsey",n.EuropeHelsinki="europe/helsinki",n.EuropeIsleOfMan="europe/isle_of_man",n.EuropeIstanbul="europe/istanbul",n.EuropeJersey="europe/jersey",n.EuropeKaliningrad="europe/kaliningrad",n.EuropeKirov="europe/kirov",n.EuropeKyiv="europe/kyiv",n.EuropeLisbon="europe/lisbon",n.EuropeLjubljana="europe/ljubljana",n.EuropeLondon="europe/london",n.EuropeLuxembourg="europe/luxembourg",n.EuropeMadrid="europe/madrid",n.EuropeMalta="europe/malta",n.EuropeMariehamn="europe/mariehamn",n.EuropeMinsk="europe/minsk",n.EuropeMonaco="europe/monaco",n.EuropeMoscow="europe/moscow",n.EuropeOslo="europe/oslo",n.EuropeParis="europe/paris",n.EuropePodgorica="europe/podgorica",n.EuropePrague="europe/prague",n.EuropeRiga="europe/riga",n.EuropeRome="europe/rome",n.EuropeSamara="europe/samara",n.EuropeSanMarino="europe/san_marino",n.EuropeSarajevo="europe/sarajevo",n.EuropeSaratov="europe/saratov",n.EuropeSimferopol="europe/simferopol",n.EuropeSkopje="europe/skopje",n.EuropeSofia="europe/sofia",n.EuropeStockholm="europe/stockholm",n.EuropeTallinn="europe/tallinn",n.EuropeTirane="europe/tirane",n.EuropeUlyanovsk="europe/ulyanovsk",n.EuropeVaduz="europe/vaduz",n.EuropeVatican="europe/vatican",n.EuropeVienna="europe/vienna",n.EuropeVilnius="europe/vilnius",n.EuropeVolgograd="europe/volgograd",n.EuropeWarsaw="europe/warsaw",n.EuropeZagreb="europe/zagreb",n.EuropeZurich="europe/zurich",n.IndianAntananarivo="indian/antananarivo",n.IndianChagos="indian/chagos",n.IndianChristmas="indian/christmas",n.IndianCocos="indian/cocos",n.IndianComoro="indian/comoro",n.IndianKerguelen="indian/kerguelen",n.IndianMahe="indian/mahe",n.IndianMaldives="indian/maldives",n.IndianMauritius="indian/mauritius",n.IndianMayotte="indian/mayotte",n.IndianReunion="indian/reunion",n.PacificApia="pacific/apia",n.PacificAuckland="pacific/auckland",n.PacificBougainville="pacific/bougainville",n.PacificChatham="pacific/chatham",n.PacificChuuk="pacific/chuuk",n.PacificEaster="pacific/easter",n.PacificEfate="pacific/efate",n.PacificFakaofo="pacific/fakaofo",n.PacificFiji="pacific/fiji",n.PacificFunafuti="pacific/funafuti",n.PacificGalapagos="pacific/galapagos",n.PacificGambier="pacific/gambier",n.PacificGuadalcanal="pacific/guadalcanal",n.PacificGuam="pacific/guam",n.PacificHonolulu="pacific/honolulu",n.PacificKanton="pacific/kanton",n.PacificKiritimati="pacific/kiritimati",n.PacificKosrae="pacific/kosrae",n.PacificKwajalein="pacific/kwajalein",n.PacificMajuro="pacific/majuro",n.PacificMarquesas="pacific/marquesas",n.PacificMidway="pacific/midway",n.PacificNauru="pacific/nauru",n.PacificNiue="pacific/niue",n.PacificNorfolk="pacific/norfolk",n.PacificNoumea="pacific/noumea",n.PacificPagoPago="pacific/pago_pago",n.PacificPalau="pacific/palau",n.PacificPitcairn="pacific/pitcairn",n.PacificPohnpei="pacific/pohnpei",n.PacificPortMoresby="pacific/port_moresby",n.PacificRarotonga="pacific/rarotonga",n.PacificSaipan="pacific/saipan",n.PacificTahiti="pacific/tahiti",n.PacificTarawa="pacific/tarawa",n.PacificTongatapu="pacific/tongatapu",n.PacificWake="pacific/wake",n.PacificWallis="pacific/wallis",n.Utc="utc"})(Ot||(Ot={}));var Ft;(function(n){n.Geolocation="geolocation",n.Camera="camera",n.Microphone="microphone",n.Notifications="notifications",n.Midi="midi",n.Push="push",n.Clipboardread="clipboard-read",n.Clipboardwrite="clipboard-write",n.Paymenthandler="payment-handler",n.Usb="usb",n.Bluetooth="bluetooth",n.Accelerometer="accelerometer",n.Gyroscope="gyroscope",n.Magnetometer="magnetometer",n.Ambientlightsensor="ambient-light-sensor",n.Backgroundsync="background-sync",n.Persistentstorage="persistent-storage",n.Screenwakelock="screen-wake-lock",n.Webshare="web-share",n.Xrspatialtracking="xr-spatial-tracking"})(Ft||(Ft={}));var ei;(function(n){n.Jpg="jpg",n.Jpeg="jpeg",n.Png="png",n.Webp="webp",n.Heic="heic",n.Avif="avif",n.Gif="gif"})(ei||(ei={}));var ti;(function(n){n.GET="GET",n.POST="POST",n.PUT="PUT",n.PATCH="PATCH",n.DELETE="DELETE",n.OPTIONS="OPTIONS",n.HEAD="HEAD"})(ti||(ti={}));var ii;(function(n){n.Auto="auto",n.Center="center",n.Topleft="top-left",n.Top="top",n.Topright="top-right",n.Left="left",n.Right="right",n.Bottomleft="bottom-left",n.Bottom="bottom",n.Bottomright="bottom-right"})(ii||(ii={}));var ni;(function(n){n.Functions="functions",n.Sites="sites"})(ni||(ni={}));var oi;(function(n){n.Http="http",n.Schedule="schedule",n.Event="event"})(oi||(oi={}));var ai;(function(n){n.Waiting="waiting",n.Processing="processing",n.Completed="completed",n.Failed="failed",n.Scheduled="scheduled"})(ai||(ai={}));const wo=Object.freeze(Object.defineProperty({__proto__:null,Account:Wt,AppwriteException:h,get AuthenticationFactor(){return Yt},get AuthenticatorType(){return Kt},Avatars:Gi,get Browser(){return Zt},get BrowserPermission(){return Ft},get BrowserTheme(){return zt},Channel:ke,Client:Ae,get Condition(){return Gt},get CreditCard(){return Qt},Databases:ao,DocumentsDB:so,get ExecutionMethod(){return ti},get ExecutionResourceType(){return ni},get ExecutionStatus(){return ai},get ExecutionTrigger(){return oi},get Flag(){return Tt},Functions:ro,Graphql:co,ID:He,get ImageFormat(){return ei},get ImageGravity(){return ii},Locale:lo,Messaging:uo,get OAuthProvider(){return Jt},Operator:Q,Organization:po,Permission:Fe,Presences:ho,Query:C,Realtime:mo,Role:bo,Storage:fo,TablesDB:go,Teams:Ki,get Timezone(){return Ot},VectorsDB:yo},Symbol.toStringTag,{value:"Module"})),Yi={signIn:"Sign in",dialogSignIn:"Sign in",signUp:"Sign up",signOut:"Sign out",continueAsGuest:"Continue as guest",email:"Email",password:"Password",showPassword:"Show password",hidePassword:"Hide password",newPassword:"New password",confirmPassword:"Confirm password",name:"Name",phone:"Phone number",code:"Code",forgotPassword:"Forgot password?",noAccount:"Don't have an account?",haveAccount:"Already have an account?",or:"or",continueWith:"Continue with {provider}",continueWithEmail:"Continue with email",sendEmailCode:"Email me a code",continueWithPhone:"Continue with phone",sendMagicLink:"Send magic link",sendCode:"Send code",resendCode:"Resend code",useDifferentEmail:"Use a different email",useDifferentPhone:"Use a different phone number",verifyCode:"Verify code",magicLinkSent:"We sent a sign-in link to {email}. Open it on this device to continue.",codeSent:"We sent a code to {target}. Enter it below to continue.",securityPhrase:"Security phrase",securityPhraseHint:"The message we sent includes this phrase. Do not continue if it differs.",back:"Back",cancel:"Cancel",save:"Save",update:"Update",remove:"Remove",close:"Close",resetPassword:"Reset password",resetLinkSent:"If an account exists for {email}, a reset link is on its way.",passwordUpdated:"Your password was updated. You can sign in now.",passwordChanged:"Your password was updated.",sendResetLink:"Send reset link",requestNewLink:"Request a new link",agreeTo:"By continuing you agree to our",terms:"Terms of Service",privacy:"Privacy Policy",and:"and",welcomeBack:"Welcome back",createAccount:"Create your account",signInTitle:"Sign in to {name}",signUpTitle:"Sign up for {name}",mfaTitle:"Two-factor authentication",mfaDescription:"Confirm it is you with a second factor.",mfaUseAuthenticator:"Use authenticator app",mfaUseEmail:"Send code to email",mfaUsePhone:"Send code by SMS",mfaUseRecoveryCode:"Use a recovery code",recoveryCode:"Recovery code",account:"Account",profile:"Profile",security:"Security",sessions:"Sessions",connections:"Connections",activity:"Activity",dangerZone:"Danger zone",verified:"Verified",unverified:"Unverified",verifyEmail:"Verify email",verificationResendIn:"Sent. You can resend in {seconds} s",verificationSent:"Verification email sent. Check your inbox.",emailVerified:"Your email is verified.",changePassword:"Change password",currentPassword:"Current password",twoFactor:"Two-factor authentication",mfaBadge:"MFA",twoFactorDescription:"Require a second factor when signing in to this account.",mfaNoFactorWarning:"Turn on an authenticator, or verify your email or phone, before enabling two-factor authentication. Without a factor, this setting does not protect the account.",enable:"Enable",disable:"Disable",authenticatorApp:"Authenticator app",authenticatorAdd:"Add authenticator",authenticatorScan:"Scan this QR code with your authenticator app, then enter the 6-digit code.",qrCodeAlt:"QR code",authenticatorManual:"Or enter this key manually",authenticatorCopyKey:"Copy key",authenticatorVerify:"Verify and enable",recoveryCodes:"Recovery codes",viewRecoveryCodes:"View recovery codes",recoveryCodesDescription:"Use a recovery code to sign in if you lose access to your other factors.",recoveryCodesOnceHint:"Recovery codes can be viewed only once after they are generated. Viewing them again requires a recent second factor.",generateRecoveryCodes:"Generate recovery codes",regenerateRecoveryCodes:"Regenerate",recoveryCodesWarning:"Store these codes somewhere safe. Each code works once.",currentSession:"This device",signOutSession:"Sign out",signOutAllSessions:"Sign out everywhere",signOutAllSessionsDescription:"End every session, including this one.",noConnections:"No connected accounts.",noConnectionsDescription:"Link an OAuth provider to sign in faster next time.",disconnect:"Disconnect",connectProvider:"Connect {provider}",noActivity:"No recent activity.",noActivityDescription:"Security events for this account will appear here.",noSessions:"No active sessions.",noSessionsDescription:"Active sessions will show up here once you sign in on a device.",deleteAccount:"Delete account",deleteAccountDescription:"Deleting disables your account and signs you out everywhere. An administrator can restore it.",deleteAccountConfirm:"Delete my account",loading:"Loading",copied:"Copied",copyFailed:"Could not copy. Select the text and copy it manually.",copy:"Copy",done:"Done",nameUpdated:"Name updated.",emailUpdated:"Email updated. Verify the new address.",phoneUpdated:"Phone number updated.",phoneVerified:"Phone verified.",authenticatorAdded:"Authenticator added.",accountConverted:"Account created.",enabled:"Enabled",disabled:"Disabled",createPassword:"Create a password",createPasswordHint:"This becomes your sign-in password.",errorCurrentPassword:"Current password is incorrect.",errorGeneric:"Something went wrong. Please try again.",errorInvalidCredentials:"Invalid email or password.",errorInvalidEmail:"Enter a valid email address.",errorInvalidPassword:"Password must be between 8 and 256 characters.",errorInvalidPhone:"Enter a phone number in E.164 format, starting with +.",errorInvalidName:"Enter a name.",errorUserExists:"An account with this email already exists.",errorUserBlocked:"This account is blocked. Contact support.",errorRateLimit:"Too many attempts. Wait a moment and try again.",errorInvalidToken:"This link is invalid or has expired. Request a new one.",errorInvalidCode:"That code is not valid. Check it and try again.",errorPasswordMismatch:"Passwords do not match.",errorPasswordRecentlyUsed:"You used this password recently. Choose a different one.",errorPasswordPersonalData:"Password must not contain your name, email or phone.",errorPasswordWeak:"Password is too common or too short. Use at least 8 characters.",errorPasswordPwned:"This password appeared in a data breach. Choose a different one.",errorChallengeRequired:"Confirm a second factor to continue.",errorSessionExists:"You are already signed in.",errorOAuth:"Sign in with the provider failed. Please try again.",errorNetwork:"Could not reach the server. Check your connection.",errorMethodDisabled:"This sign-in method is disabled for this project.",errorNotConfigured:"Auth UI is not configured. Call AuthUI.init() or add <authui-config>.",errorConfigIncomplete:"Auth UI is missing endpoint or project. Set them on <authui-config> or pass them to AuthUI.init().",errorConfig:"Auth UI cannot reach this Appwrite project. Check that endpoint ends with /v1, the project ID is correct, and this hostname is registered as a Web platform.",errorConfigEndpoint:"Check that endpoint ends with /v1. Appwrite API URLs look like https://cloud.appwrite.io/v1.",passwordHint:"At least 8 characters.",passwordStrengthLabel:"Password strength",passwordStrengthTooWeak:"Too weak",passwordStrengthWeak:"Weak",passwordStrengthFair:"Fair",passwordStrengthStrong:"Strong",passwordStrengthVeryStrong:"Very strong",lastUsed:"Last used",teamsLabel:"Teams",noTeams:"You are not on any teams yet.",activeTeam:"Active",signedInAs:"Signed in as",manageAccount:"Manage account",dialogAccount:"Account",continue:"Continue",provider:"Provider",lastActive:"Last active",guestAccount:"Guest account",guestAccountDescription:"Add an email and password to keep your data.",preview:"Preview"};function vo(n,e={}){return n.replace(/\{(\w+)\}/g,(i,t)=>t in e?String(e[t]):`{${t}}`)}const Io={amazon:"Amazon",apple:"Apple",appwrite:"Appwrite",auth0:"Auth0",authentik:"Authentik",autodesk:"Autodesk",bitbucket:"Bitbucket",bitly:"Bitly",box:"Box",cloudflare:"Cloudflare",dailymotion:"Dailymotion",discord:"Discord",disqus:"Disqus",dropbox:"Dropbox",etsy:"Etsy",facebook:"Facebook",figma:"Figma",fusionauth:"FusionAuth",github:"GitHub",gitlab:"GitLab",google:"Google",huggingface:"Hugging Face",kakao:"Kakao",keycloak:"Keycloak",kick:"Kick",linkedin:"LinkedIn",microsoft:"Microsoft",notion:"Notion",oidc:"OpenID Connect",okta:"Okta",paypal:"PayPal",paypalSandbox:"PayPal Sandbox",podio:"Podio",resend:"Resend",salesforce:"Salesforce",slack:"Slack",spotify:"Spotify",stripe:"Stripe",tiktok:"TikTok",tradeshift:"Tradeshift",tradeshiftBox:"Tradeshift Box",twitch:"Twitch",wordpress:"WordPress",x:"X",yahoo:"Yahoo",yammer:"Yammer",yandex:"Yandex",zoho:"Zoho",zoom:"Zoom"};function lt(n){return Io[n]??n.charAt(0).toUpperCase()+n.slice(1)}const St=(n,e,i=401)=>Object.assign(new Error(e),{type:n,code:i}),Pe=()=>new Date().toISOString(),Re=n=>new Date(Date.now()-n*6e4).toISOString(),$t=["amber","brave","calm","delta","ember","fable","glide","harbor","ivory","juniper","kite","lumen"],Ji=()=>`${$t[Math.floor(Math.random()*$t.length)]}-${$t[Math.floor(Math.random()*$t.length)]}`,et=()=>Math.random().toString(36).slice(2,12),Zi=()=>Array.from({length:2},()=>Math.random().toString(36).slice(2,7)).join("-"),Ao={name:"Ada Lovelace",email:"ada@example.com",phone:"+15550100"};class Qi{constructor(e=Ao){this.seed=e,this.user=null,this.mfaPending=!1,this.mfaEnabled=!1,this.totpEnrolled=!1,this.recoveryCodes=[],this.lastChallenge=0,this.sessions=[],this.identities=[],this.logs=[],this.tokens=new Map,this.pendingAuthenticator=null}makeUser(e={}){const i=e.anonymous??!1;return this.user={$id:"preview-user",$createdAt:Re(43200),$updatedAt:Pe(),name:i?"":e.name??this.seed.name,registration:Re(43200),status:!0,labels:[],passwordUpdate:i?"":Re(10080),email:i?"":e.email??this.seed.email,phone:i?"":e.phone??this.seed.phone,emailVerification:!i,phoneVerification:!1,mfa:this.mfaEnabled,prefs:{},targets:[],accessedAt:Pe()},this.seedActivity(i?"anonymous":"email"),this.user}seedActivity(e){if(this.sessions.length>0)return;const i={$createdAt:Pe(),$updatedAt:Pe(),userId:"preview-user",expire:new Date(Date.now()+365*864e5).toISOString(),providerUid:"",providerAccessToken:"",providerAccessTokenExpiry:"",providerRefreshToken:"",clientType:"browser",clientCode:"CH",clientEngine:"Blink",clientEngineVersion:"128",deviceName:"desktop",deviceBrand:"",deviceModel:"",factors:["password"],secret:"",mfaUpdatedAt:""};this.sessions=[{...i,$id:"current",provider:e,ip:"203.0.113.24",osCode:"MAC",osName:"macOS",osVersion:"15",clientName:"Chrome",clientVersion:"128",countryCode:"de",countryName:"Germany",current:!0},{...i,$id:et(),$createdAt:Re(300),provider:e,ip:"198.51.100.7",osCode:"IOS",osName:"iOS",osVersion:"18",clientName:"Safari",clientVersion:"18",clientType:"browser",deviceName:"smartphone",countryCode:"de",countryName:"Germany",current:!1},{...i,$id:et(),$createdAt:Re(4320),provider:"oauth2",ip:"192.0.2.90",osCode:"WIN",osName:"Windows",osVersion:"11",clientName:"Firefox",clientVersion:"130",countryCode:"us",countryName:"United States",current:!1}],this.identities=[{$id:"identity-github",$createdAt:Re(28800),$updatedAt:Re(28800),userId:"preview-user",provider:"github",providerUid:"8675309",providerEmail:this.seed.email,providerAccessToken:"",providerAccessTokenExpiry:"",providerRefreshToken:""}],this.logs=[{event:"session.create",time:Pe(),clientName:"Chrome",osName:"macOS",countryName:"Germany",ip:"203.0.113.24"},{event:"user.update.name",time:Re(2880),clientName:"Safari",osName:"iOS",countryName:"Germany",ip:"198.51.100.7"},{event:"session.create",time:Re(4320),clientName:"Firefox",osName:"Windows",countryName:"United States",ip:"192.0.2.90"}]}requireUser(){if(!this.user)throw St("general_unauthorized_scope","User (role: guests) missing scope (account)");if(this.mfaPending)throw St("user_more_factors_required","More factors are required to complete the sign in process.");return this.user}requireRecentChallenge(){if(Date.now()-this.lastChallenge>18e5)throw St("user_challenge_required","A recently successful challenge is required to complete this action.")}afterPrimarySignIn(){const e=this.totpEnrolled||this.user?.emailVerification;this.mfaPending=!!(this.user?.mfa&&e)}async delay(e,i=150){return await new Promise(t=>setTimeout(t,i)),typeof e=="function"?e():e}signInDirectly(){this.user||this.makeUser(),this.mfaPending=!1}async get(){return this.delay(()=>this.requireUser(),120)}async create(e,i,t,o){return this.delay(()=>this.makeUser({email:i,name:o||i.split("@")[0]}))}async createEmailPasswordSession(e){return this.delay(()=>((!this.user||this.user.email!==e)&&this.makeUser({email:e,name:this.user?.name||this.seed.name}),this.afterPrimarySignIn(),this.sessions[0]))}async createAnonymousSession(){return this.delay(()=>(this.makeUser({anonymous:!0}),this.mfaPending=!1,this.sessions[0]))}async createOAuth2Token(e){return this.delay(()=>{this.makeUser({email:`ada@${e}.example`,name:this.seed.name}),this.afterPrimarySignIn()},800)}async createMagicURLToken(e,i){return this.tokens.set(e,{email:i}),this.delay({$id:et(),$createdAt:Pe(),userId:e,secret:"",expire:"",phrase:Ji()})}async createEmailToken(e,i){return this.tokens.set(e,{email:i}),this.delay({$id:et(),$createdAt:Pe(),userId:e,secret:"",expire:"",phrase:Ji()})}async createPhoneToken(e,i){return this.tokens.set(e,{phone:i}),this.delay({$id:et(),$createdAt:Pe(),userId:e,secret:"",expire:"",phrase:""})}async createSession(e){return this.delay(()=>{const i=this.tokens.get(e)??{};return this.makeUser({email:i.email??this.seed.email,phone:i.phone??this.seed.phone}),i.phone&&(this.user.phoneVerification=!0),this.afterPrimarySignIn(),this.sessions[0]})}async createRecovery(){return this.delay({})}async updateRecovery(){return this.delay({})}async createEmailVerification(){return this.delay({})}async updateEmailVerification(){return this.delay(()=>(this.user&&(this.user.emailVerification=!0),{}))}async createPhoneVerification(){return this.delay({})}async updatePhoneVerification(){return this.delay(()=>(this.user&&(this.user.phoneVerification=!0),{}))}async getPrefs(){return this.delay(()=>({...this.requireUser().prefs}))}async updatePrefs(e){return this.delay(()=>{const i=this.requireUser();return i.prefs={...e},i})}async updateName(e){return this.delay(()=>(this.requireUser().name=e,this.user))}async updateEmail(e){return this.delay(()=>{const i=this.requireUser();return i.email=e,i.emailVerification=!1,i.passwordUpdate=Pe(),i})}async updatePhone(e){return this.delay(()=>{const i=this.requireUser();return i.phone=e,i.phoneVerification=!1,i})}async updatePassword(){return this.delay(()=>{const e=this.requireUser();return e.passwordUpdate=Pe(),e})}async updateStatus(){return this.delay(()=>(this.requireUser(),this.reset(),this.mfaEnabled=!1,this.totpEnrolled=!1,this.recoveryCodes=[],{}))}async listSessions(){return this.delay(()=>(this.requireUser(),{total:this.sessions.length,sessions:this.sessions}))}async deleteSession(e="current"){return this.delay(()=>{const i=this.sessions.find(t=>t.$id===e);return e==="current"||i?.current?this.reset():this.sessions=this.sessions.filter(t=>t.$id!==e),{}})}async deleteSessions(){return this.delay(()=>(this.reset(),{}))}async listIdentities(){return this.delay(()=>(this.requireUser(),{total:this.identities.length,identities:this.identities}))}async deleteIdentity(e){return this.delay(()=>(this.identities=this.identities.filter(i=>i.$id!==e),{}))}async listLogs(){return this.delay(()=>(this.requireUser(),{total:this.logs.length,logs:this.logs}))}async listMFAFactors(){return this.delay({totp:this.totpEnrolled,email:!!this.user?.emailVerification,phone:!!this.user?.phoneVerification,recoveryCode:this.recoveryCodes.length>0,custom:!1})}async createMFAChallenge(){return this.delay({$id:et(),$createdAt:Pe(),userId:"preview-user",expire:""})}async updateMFAChallenge(){return this.delay(()=>(this.mfaPending=!1,this.lastChallenge=Date.now(),this.sessions[0]))}async updateMFA(e){return this.delay(()=>{const i=this.requireUser();return this.mfaEnabled=e,i.mfa=e,i})}async createMFAAuthenticator(){return this.delay(()=>{const e="JBSWY3DPEHPK3PXP";return this.pendingAuthenticator={secret:e,uri:`otpauth://totp/Preview:${encodeURIComponent(this.user?.email??"user")}?secret=${e}&issuer=Preview`},this.pendingAuthenticator})}async updateMFAAuthenticator(){return this.delay(()=>(this.totpEnrolled=!0,this.pendingAuthenticator=null,this.lastChallenge=Date.now(),this.requireUser()))}async deleteMFAAuthenticator(){return this.delay(()=>(this.requireRecentChallenge(),this.totpEnrolled=!1,{}))}async createMFARecoveryCodes(){return this.delay(()=>{if(this.recoveryCodes.length>0)throw St("user_recovery_codes_already_exists","Recovery codes already generated.",409);return this.recoveryCodes=Array.from({length:6},Zi),{recoveryCodes:this.recoveryCodes}})}async getMFARecoveryCodes(){return this.delay(()=>(this.requireRecentChallenge(),{recoveryCodes:this.recoveryCodes}))}async updateMFARecoveryCodes(){return this.delay(()=>(this.requireRecentChallenge(),this.recoveryCodes=Array.from({length:6},Zi),{recoveryCodes:this.recoveryCodes}))}reset(){this.user=null,this.mfaPending=!1,this.sessions=[],this.identities=[],this.logs=[],this.tokens.clear()}}function ko(n){let e=2166136261;const i=()=>(e^=e<<13,e^=e>>>17,e^=e<<5,(e>>>0)/4294967296);for(const r of n)e=(e^r.charCodeAt(0))*16777619;const t=25;let o="";const a=(r,d)=>`<rect x="${r}" y="${d}" width="7" height="7"/><rect x="${r+1}" y="${d+1}" width="5" height="5" fill="#fff"/><rect x="${r+2}" y="${d+2}" width="3" height="3"/>`;for(let r=0;r<t;r++)for(let d=0;d<t;d++)!(d<8&&r<8||d>=t-8&&r<8||d<8&&r>=t-8)&&i()<.45&&(o+=`<rect x="${d}" y="${r}" width="1" height="1"/>`);const s=`<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 ${t} ${t}" shape-rendering="crispEdges"><rect width="${t}" height="${t}" fill="#fff"/><g fill="#000">${a(0,0)}${a(t-7,0)}${a(0,t-7)}${o}</g></svg>`;return`data:image/svg+xml;utf8,${encodeURIComponent(s)}`}const ee={moreFactorsRequired:"user_more_factors_required",invalidCredentials:"user_invalid_credentials",userAlreadyExists:"user_already_exists",emailAlreadyExists:"user_email_already_exists",phoneAlreadyExists:"user_phone_already_exists",userBlocked:"user_blocked",rateLimit:"general_rate_limit_exceeded",invalidToken:"user_invalid_token",invalidCode:"user_invalid_code",passwordMismatch:"user_password_mismatch",passwordRecentlyUsed:"password_recently_used",passwordPersonalData:"password_personal_data",passwordWeak:"user_password_weak",passwordPwned:"password_pwned",challengeRequired:"user_challenge_required",recoveryCodesExist:"user_recovery_codes_already_exists",recoveryCodesNotFound:"user_recovery_codes_not_found",authenticatorNotFound:"user_authenticator_not_found",routeNotFound:"general_route_not_found",projectNotFound:"project_not_found",unknownOrigin:"general_unknown_origin",emailAlreadyVerified:"user_email_already_verified",sessionNotFound:"user_session_not_found",wafChallenged:"waf_request_challenged",sessionAlreadyExists:"user_session_already_exists",oauthUnauthorized:"user_oauth2_unauthorized",oauthBadRequest:"user_oauth2_bad_request",unauthorized:"general_unauthorized_scope",userUnauthorized:"user_unauthorized",authMethodUnsupported:"user_auth_method_unsupported",countMaxExceeded:"user_count_exceeded",targetAlreadyExists:"user_target_already_exists",argumentInvalid:"general_argument_invalid"};function Je(n){if(n&&typeof n=="object"){const e=n;let i=typeof e.message=="string"?e.message:"Unknown error";return/^\s*<(!doctype|html)/i.test(i)&&(i=""),{message:i,type:typeof e.type=="string"?e.type:"",code:typeof e.code=="number"?e.code:0}}return{message:String(n),type:"",code:0}}function ut(n,e){return Je(n).type===e}function pt(n,e,i="link"){const t=Je(n);switch(t.type){case ee.invalidCredentials:return i==="password"?e.errorCurrentPassword:e.errorInvalidCredentials;case ee.userAlreadyExists:case ee.emailAlreadyExists:case ee.phoneAlreadyExists:return e.errorUserExists;case ee.userBlocked:return e.errorUserBlocked;case ee.rateLimit:return e.errorRateLimit;case ee.invalidToken:return i==="code"?e.errorInvalidCode:e.errorInvalidToken;case ee.invalidCode:return e.errorInvalidCode;case ee.passwordMismatch:return e.errorPasswordMismatch;case ee.passwordRecentlyUsed:return e.errorPasswordRecentlyUsed;case ee.passwordPersonalData:return e.errorPasswordPersonalData;case ee.passwordWeak:return e.errorPasswordWeak;case ee.passwordPwned:return e.errorPasswordPwned;case ee.challengeRequired:return e.errorChallengeRequired;case ee.sessionAlreadyExists:return e.errorSessionExists;case ee.oauthUnauthorized:case ee.oauthBadRequest:return e.errorOAuth;case ee.authMethodUnsupported:return e.errorMethodDisabled}if(t.type===ee.argumentInvalid||/Invalid `\w+` param/i.test(t.message)){const o=t.message.match(/Invalid `([^`]+)` param/i)?.[1]?.toLowerCase();return o==="email"?e.errorInvalidEmail:o==="password"?e.errorInvalidPassword:o==="phone"?e.errorInvalidPhone:o==="name"?e.errorInvalidName:e.errorGeneric}return t.type===ee.projectNotFound||t.type===ee.unknownOrigin?e.errorConfig:t.type===ee.routeNotFound?e.errorConfigEndpoint:t.code===0&&/fetch|network/i.test(t.message)?e.errorNetwork:/Invalid `\w+` param/i.test(t.message)?e.errorGeneric:t.message?t.message||e.errorGeneric:t.code===404||t.type===ee.routeNotFound?e.errorConfigEndpoint:e.errorGeneric}function Ti(n){const e=Je(n);return!!(e.type===ee.projectNotFound||e.type===ee.unknownOrigin||e.type===ee.routeNotFound||!e.message&&e.code===404||e.code===0&&/fetch|network|load failed|failed to fetch/i.test(e.message))}const si=n=>`authui:active-team:${n}`;function ri(n){if(typeof localStorage>"u"||!n)return null;try{return localStorage.getItem(si(n))}catch{return null}}function zi(n,e){if(!(typeof localStorage>"u"||!n))try{e?localStorage.setItem(si(n),e):localStorage.removeItem(si(n))}catch{}}const ci="authui:last-method";function tt(n){if(!(typeof localStorage>"u")){if(!n||n==="mfa"||n==="sign-up")if(n==="sign-up")n="email-password";else return;try{localStorage.setItem(ci,n)}catch{}}}function Ze(){if(typeof localStorage>"u")return null;try{return localStorage.getItem(ci)}catch{return null}}function So(){if(!(typeof localStorage>"u"))try{localStorage.removeItem(ci)}catch{}}const jt="authui:pending-oauth";function Oi(n){if(!(typeof sessionStorage>"u"))try{sessionStorage.setItem(jt,n)}catch{}}function di(){if(!(typeof sessionStorage>"u"))try{const n=sessionStorage.getItem(jt);sessionStorage.removeItem(jt),n&&tt(`oauth:${n}`)}catch{}}function li(){if(!(typeof sessionStorage>"u"))try{sessionStorage.removeItem(jt)}catch{}}function Se(n,e,i){for(const t of e){const o=n[t];if(typeof o=="function")return o.apply(n,i)}return Promise.reject(new Error(`Appwrite SDK is missing ${e[0]}(). Update the appwrite package.`))}const ui="authui",Fi=["userId","secret","expire","project","error",ui],en=()=>({status:"loading",user:null,mfaFactors:null,pending:null,configured:!1,configError:null});class tn{constructor(){this.client=null,this.account=null,this.config=null,this.state=en(),this.listeners=new Map,this.refreshPromise=null,this.preview=null,this.teams=null,this.activeTeamId=null}configure(e){const i=e.endpoint.trim().replace(/\/+$/,"");i&&!i.endsWith("/v1")&&console.warn(`[authui] endpoint should end with /v1 (got "${e.endpoint}"). Without it Appwrite returns HTML 404 pages.`),this.config=e,this.client=new Ae().setEndpoint(e.endpoint).setProject(e.project),this.preview=e.preview?new Qi:null,this.account=this.preview?this.preview:new Wt(this.client),this.teams=null,this.activeTeamId=ri(e.project),this.setState({configured:!0,status:"loading",configError:null}),this.preview?this.refresh():typeof window<"u"&&this.handleRedirect().then(()=>this.refresh())}notifyConfigIncomplete(){if(this.config)return;const e=this.getStrings().errorConfigIncomplete;console.warn(`[authui] ${e}`),this.setState({status:"signed-out",user:null,mfaFactors:null,configured:!1,configError:e,pending:{type:"notice",tone:"error",message:e}})}get isConfigured(){return this.config!==null}get isPreview(){return this.preview!==null}async previewSignIn(){this.preview&&(this.preview.signInDirectly(),await this.refresh())}getConfig(){return this.config}getClient(){return this.client}getAccount(){return this.account}async listTeams(){if(this.preview||!this.client||this.state.status!=="signed-in")return[];this.teams??=new Ki(this.client);try{return(await this.teams.list()).teams??[]}catch(e){this.fail(e)}}getActiveTeamId(){if(this.activeTeamId)return this.activeTeamId;const e=this.config?.project;return e?(this.activeTeamId=ri(e),this.activeTeamId):null}setActiveTeam(e){const i=this.config?.project;i&&zi(i,e?.$id??null),this.activeTeamId=e?.$id??null,this.emit("active-team",{teamId:this.activeTeamId,team:e})}getStrings(){return{...Yi,...this.config?.strings??{}}}getState(){return{...this.state}}get user(){return this.state.user}on(e,i){let t=this.listeners.get(e);return t||(t=new Set,this.listeners.set(e,t)),t.add(i),()=>t.delete(i)}emit(e,i){this.listeners.get(e)?.forEach(t=>{try{t(i)}catch(o){console.error("[authui] listener failed",o)}}),typeof window<"u"&&window.dispatchEvent(new CustomEvent(`authui:${e}`,{detail:i}))}setState(e){this.state={...this.state,...e},this.emit("change",this.getState())}fail(e){const i=Je(e);throw this.emit("error",i),e}acct(){if(!this.account)throw new Error(this.getStrings().errorNotConfigured);return this.account}refresh(){return this.refreshPromise?this.refreshPromise:(this.refreshPromise=(async()=>{if(!this.account){this.setState({status:"signed-out",user:null,mfaFactors:null});return}const e=this.state.status==="signed-in";try{const i=await this.account.get();this.setState({status:"signed-in",user:i,mfaFactors:null,configError:null}),e||this.emit("signed-in",i)}catch(i){if(ut(i,ee.moreFactorsRequired)){let t=null;try{t=await Se(this.account,["listMFAFactors","listMfaFactors"],[])}catch{}this.setState({status:"mfa-required",user:null,mfaFactors:t})}else if(ut(i,ee.userBlocked))await this.purgeLocalSession(),this.setState({status:"signed-out",user:null,mfaFactors:null,pending:{type:"notice",tone:"error",message:this.getStrings().errorUserBlocked}}),e&&this.emit("signed-out",void 0);else if(!e&&Ti(i)){const o=pt(i,this.getStrings())||this.getStrings().errorConfig;console.warn(`[authui] ${o} (endpoint=${this.config?.endpoint??"?"}, project=${this.config?.project??"?"})`);const a=Je(i);this.emit("error",{message:o,type:a.type,code:a.code}),this.setState({status:"signed-out",user:null,mfaFactors:null,configError:o,pending:{type:"notice",tone:"error",message:o}})}else this.setState({status:"signed-out",user:null,mfaFactors:null,configError:null}),e&&this.emit("signed-out",void 0)}})().finally(()=>{this.refreshPromise=null}),this.refreshPromise)}async afterSignIn(){if(await this.refresh(),this.state.status!=="signed-in"&&this.state.status!=="mfa-required"){const i=this.state.pending;if(i?.type==="notice"&&i.tone==="error")throw Object.assign(new Error(i.message),{type:ee.userBlocked,code:401})}const e=this.config?.successUrl;e&&this.state.status==="signed-in"&&typeof window<"u"&&window.location.assign(e)}async purgeLocalSession(){try{await this.account?.deleteSession("current")}catch{}try{this.client?.setSession("")}catch{}if(typeof localStorage<"u")try{localStorage.removeItem("cookieFallback")}catch{}this.config&&!this.preview&&(this.client=new Ae().setEndpoint(this.config.endpoint).setProject(this.config.project),this.account=new Wt(this.client))}async signInWithEmailPassword(e,i){try{await this.acct().createEmailPasswordSession(e.trim(),i)}catch(t){this.fail(t)}await this.afterSignIn()}async signUp(e,i,t){try{await this.acct().create(He.unique(),e.trim(),i,t?.trim()||void 0),await this.acct().createEmailPasswordSession(e.trim(),i)}catch(o){this.fail(o)}await this.afterSignIn()}async signInAnonymously(){try{await this.acct().createAnonymousSession()}catch(e){this.fail(e)}await this.afterSignIn()}async signInWithOAuth(e){const i=this.config?.oauthScopes?.[e];let t;try{t=this.acct().createOAuth2Token(e,this.redirectUrl("oauth"),this.redirectUrl("oauth-failed"),i)}catch(o){this.fail(o)}if(t&&typeof t.then=="function"){try{await t}catch(o){this.fail(o)}await this.afterSignIn()}}async sendMagicUrl(e){try{return await this.acct().createMagicURLToken(He.unique(),e.trim(),this.redirectUrl("magic-url"),this.config?.securityPhrase??!0)}catch(i){return this.fail(i)}}async sendEmailOtp(e){try{return await this.acct().createEmailToken(He.unique(),e.trim(),this.config?.securityPhrase??!0)}catch(i){return this.fail(i)}}async sendPhoneOtp(e){try{return await this.acct().createPhoneToken(He.unique(),e.replace(/[\s()-]/g,""))}catch(i){return this.fail(i)}}async signInWithToken(e,i){try{await this.acct().createSession(e,i.trim())}catch(t){this.fail(t)}await this.afterSignIn()}async createMfaChallenge(e){try{return await Se(this.acct(),["createMFAChallenge","createMfaChallenge"],[e])}catch(i){return this.fail(i)}}async completeMfaChallenge(e,i,t={}){try{await Se(this.acct(),["updateMFAChallenge","updateMfaChallenge"],[e,i.trim()])}catch(o){this.fail(o)}(t.signIn??!0)&&await this.afterSignIn()}async listMfaFactors(){try{return await Se(this.acct(),["listMFAFactors","listMfaFactors"],[])}catch(e){return this.fail(e)}}async setMfaEnabled(e){try{await this.acct().updateMFA(e)}catch(i){this.fail(i)}await this.refresh()}async addAuthenticator(){try{return await Se(this.acct(),["createMFAAuthenticator","createMfaAuthenticator"],["totp"])}catch(e){return this.fail(e)}}async verifyAuthenticator(e){try{await Se(this.acct(),["updateMFAAuthenticator","updateMfaAuthenticator"],["totp",e.trim()])}catch(i){this.fail(i)}await this.refresh()}async removeAuthenticator(){try{await Se(this.acct(),["deleteMFAAuthenticator","deleteMfaAuthenticator"],["totp"])}catch(e){this.fail(e)}await this.refresh()}async createRecoveryCodes(){try{return(await Se(this.acct(),["createMFARecoveryCodes","createMfaRecoveryCodes"],[])).recoveryCodes}catch(e){return this.fail(e)}}async regenerateRecoveryCodes(){try{return(await Se(this.acct(),["updateMFARecoveryCodes","updateMfaRecoveryCodes"],[])).recoveryCodes}catch(e){return this.fail(e)}}async getRecoveryCodes(){try{return(await Se(this.acct(),["getMFARecoveryCodes","getMfaRecoveryCodes"],[])).recoveryCodes}catch(e){return this.fail(e)}}async sendPasswordRecovery(e){try{await this.acct().createRecovery(e.trim(),this.redirectUrl("recovery"))}catch(i){this.fail(i)}}async completePasswordRecovery(e,i,t){try{await this.acct().updateRecovery(e,i,t)}catch(o){this.fail(o)}this.setState({pending:null})}async signOut(e="current"){try{await this.acct().deleteSession(e)}catch(i){this.fail(i)}if(e==="current"){this.setState({status:"signed-out",user:null,mfaFactors:null}),this.emit("signed-out",void 0);return}try{await this.acct().get()}catch{this.setState({status:"signed-out",user:null,mfaFactors:null}),this.emit("signed-out",void 0)}}async signOutEverywhere(){try{await this.acct().deleteSessions()}catch(e){this.fail(e)}this.setState({status:"signed-out",user:null,mfaFactors:null}),this.emit("signed-out",void 0)}async listSessions(){try{return(await this.acct().listSessions()).sessions}catch(e){return this.fail(e)}}async listIdentities(){try{return(await this.acct().listIdentities()).identities}catch(e){return this.fail(e)}}async deleteIdentity(e){try{await this.acct().deleteIdentity(e)}catch(i){this.fail(i)}}async listLogs(){try{return(await this.acct().listLogs()).logs}catch(e){return this.fail(e)}}async updateName(e){try{await this.acct().updateName(e.trim())}catch(i){this.fail(i)}await this.refresh()}async updateEmail(e,i){try{await this.acct().updateEmail(e.trim(),i)}catch(t){this.fail(t)}await this.refresh()}async updatePhone(e,i){try{await this.acct().updatePhone(e.replace(/[\s()-]/g,""),i)}catch(t){this.fail(t)}await this.refresh()}async updatePassword(e,i){try{await this.acct().updatePassword(e,i||void 0)}catch(t){this.fail(t)}await this.refresh()}async convertGuest(e,i,t){try{await this.acct().updateEmail(e.trim(),i),t?.trim()&&await this.acct().updateName(t.trim())}catch(o){this.fail(o)}await this.refresh()}async sendEmailVerification(){try{await Se(this.acct(),["createEmailVerification","createVerification"],[this.redirectUrl("verify-email")])}catch(e){this.fail(e)}}async sendPhoneVerification(){try{await this.acct().createPhoneVerification()}catch(e){this.fail(e)}}async confirmPhoneVerification(e){const i=this.state.user?.$id;if(i){try{await this.acct().updatePhoneVerification(i,e.trim())}catch(t){this.fail(t)}await this.refresh()}}async deleteAccount(){try{await this.acct().updateStatus()}catch(e){this.fail(e)}this.setState({status:"signed-out",user:null,mfaFactors:null}),this.emit("signed-out",void 0)}redirectUrl(e){const i=this.config?.redirectUrl??(typeof window<"u"?window.location.origin+window.location.pathname:""),t=new URL(i,typeof window<"u"?window.location.href:void 0);for(const o of Fi)t.searchParams.delete(o);return t.searchParams.set(ui,e),t.toString()}setPending(e){this.setState({pending:e})}async handleRedirect(){if(typeof window>"u")return!1;const e=new URLSearchParams(window.location.search),i=e.get(ui);if(!i)return!1;const t=e.get("userId")??"",o=e.get("secret")??"";this.cleanUrl();const a=()=>{this.setState({pending:{type:"notice",message:this.getStrings().errorInvalidToken,tone:"error"}})};try{switch(i){case"oauth":case"magic-url":t&&o?(await this.acct().createSession(t,o),i==="oauth"&&di()):(i==="oauth"&&li(),a());break;case"oauth-failed":li(),this.setState({pending:{type:"notice",tone:"error",message:this.getStrings().errorOAuth}});break;case"recovery":t&&o?this.setState({pending:{type:"reset-password",userId:t,secret:o}}):a();break;case"verify-email":t&&o?(await Se(this.acct(),["updateEmailVerification","updateVerification"],[t,o]),this.setState({pending:{type:"notice",message:this.getStrings().emailVerified,tone:"success"}})):a();break}}catch(s){const r=Je(s),d=pt(s,this.getStrings(),"link");this.emit("error",r),this.setState({pending:{type:"notice",message:d,tone:"error"}})}return!0}cleanUrl(){const e=new URL(window.location.href);for(const i of Fi)e.searchParams.delete(i);window.history.replaceState(window.history.state,"",e.toString())}reset(){this.client=null,this.account=null,this.teams=null,this.activeTeamId=null,this.preview=null,this.config=null,this.state=en(),this.listeners.clear()}}const E=new tn;class $o{constructor(){this.listeners=new Set,this.observer=null,this.media=null,this.notify=()=>{const e=this.isDark("auto");this.listeners.forEach(i=>i(e))}}isDark(e="auto"){if(e==="dark")return!0;if(e==="light"||typeof document>"u")return!1;const i=document.documentElement.classList;return i.contains("dark")?!0:i.contains("light")?!1:document.documentElement.dataset.theme==="dark"?!0:document.documentElement.dataset.theme==="light"?!1:typeof window<"u"&&!!window.matchMedia?.("(prefers-color-scheme: dark)").matches}subscribe(e){return this.listeners.add(e),this.start(),()=>{this.listeners.delete(e),this.listeners.size===0&&this.stop()}}start(){this.observer||typeof document>"u"||(this.observer=new MutationObserver(this.notify),this.observer.observe(document.documentElement,{attributes:!0,attributeFilter:["class","data-theme"]}),typeof window<"u"&&window.matchMedia&&(this.media=window.matchMedia("(prefers-color-scheme: dark)"),this.media.addEventListener?.("change",this.notify)))}stop(){this.observer?.disconnect(),this.observer=null,this.media?.removeEventListener?.("change",this.notify),this.media=null}}const nn=new $o,on={none:"0px",sm:"0.25rem",md:"0.625rem",lg:"0.875rem",xl:"1.125rem",full:"1.5rem"},jo=Le`
|
|
11
11
|
:host {
|
|
12
12
|
/* Light theme (matches :root in the console) */
|
|
13
13
|
--authui-background: oklch(1 0 0);
|
|
@@ -36,7 +36,7 @@ var AuthUI=(function(S){"use strict";var xe;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
36
36
|
--authui-success-bg: rgba(16, 185, 129, 0.1);
|
|
37
37
|
--authui-warning-foreground: #b45309;
|
|
38
38
|
--authui-warning-bg: rgba(245, 158, 11, 0.1);
|
|
39
|
-
--authui-error-foreground: #
|
|
39
|
+
--authui-error-foreground: #b91c1c;
|
|
40
40
|
--authui-error-bg: rgba(239, 68, 68, 0.1);
|
|
41
41
|
--authui-info-foreground: #475569;
|
|
42
42
|
--authui-info-bg: rgba(100, 116, 139, 0.1);
|
|
@@ -279,11 +279,13 @@ var AuthUI=(function(S){"use strict";var xe;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
279
279
|
flex-direction: column;
|
|
280
280
|
gap: 6px;
|
|
281
281
|
}
|
|
282
|
-
.
|
|
282
|
+
.field-header {
|
|
283
283
|
display: flex;
|
|
284
284
|
align-items: center;
|
|
285
285
|
justify-content: space-between;
|
|
286
286
|
gap: 8px;
|
|
287
|
+
}
|
|
288
|
+
.label {
|
|
287
289
|
font-size: 14px;
|
|
288
290
|
line-height: 1;
|
|
289
291
|
font-weight: 500;
|
|
@@ -447,7 +449,7 @@ var AuthUI=(function(S){"use strict";var xe;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
447
449
|
background: var(--authui-error-bg);
|
|
448
450
|
}
|
|
449
451
|
.alert-error .alert-body {
|
|
450
|
-
color:
|
|
452
|
+
color: var(--authui-error-foreground);
|
|
451
453
|
}
|
|
452
454
|
.alert-success {
|
|
453
455
|
color: var(--authui-success-foreground);
|
|
@@ -798,12 +800,154 @@ var AuthUI=(function(S){"use strict";var xe;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
798
800
|
width: 18px;
|
|
799
801
|
height: 18px;
|
|
800
802
|
}
|
|
803
|
+
/* OAuth accordion: last-used (or focused) expands; others stay icon-compact. */
|
|
804
|
+
.providers.accordion {
|
|
805
|
+
display: flex;
|
|
806
|
+
width: 100%;
|
|
807
|
+
gap: 8px;
|
|
808
|
+
}
|
|
809
|
+
.providers.accordion > .provider-slot {
|
|
810
|
+
position: relative;
|
|
811
|
+
flex: 0 1 2.25rem;
|
|
812
|
+
min-width: 2.25rem;
|
|
813
|
+
overflow: visible;
|
|
814
|
+
transition: flex-grow 480ms cubic-bezier(0.22, 1, 0.36, 1);
|
|
815
|
+
}
|
|
816
|
+
.providers.accordion > .provider-slot.is-expanded {
|
|
817
|
+
flex-grow: 1;
|
|
818
|
+
}
|
|
819
|
+
.providers.accordion .btn {
|
|
820
|
+
position: relative;
|
|
821
|
+
width: 100%;
|
|
822
|
+
min-width: 0;
|
|
823
|
+
justify-content: center;
|
|
824
|
+
gap: 0;
|
|
825
|
+
padding-inline: 0;
|
|
826
|
+
overflow: hidden;
|
|
827
|
+
}
|
|
828
|
+
.providers.accordion .btn svg {
|
|
829
|
+
width: 16px;
|
|
830
|
+
height: 16px;
|
|
831
|
+
flex-shrink: 0;
|
|
832
|
+
}
|
|
833
|
+
.provider-label {
|
|
834
|
+
display: grid;
|
|
835
|
+
min-width: 0;
|
|
836
|
+
grid-template-columns: 0fr;
|
|
837
|
+
transition: grid-template-columns 480ms cubic-bezier(0.22, 1, 0.36, 1) 160ms;
|
|
838
|
+
}
|
|
839
|
+
.provider-label > span {
|
|
840
|
+
min-width: 0;
|
|
841
|
+
overflow: hidden;
|
|
842
|
+
}
|
|
843
|
+
.provider-label-text {
|
|
844
|
+
display: block;
|
|
845
|
+
white-space: nowrap;
|
|
846
|
+
padding-inline-start: 6px;
|
|
847
|
+
opacity: 0;
|
|
848
|
+
transition: opacity 160ms ease;
|
|
849
|
+
}
|
|
850
|
+
.providers.accordion > .provider-slot.is-expanded .provider-label {
|
|
851
|
+
grid-template-columns: 1fr;
|
|
852
|
+
transition: grid-template-columns 480ms cubic-bezier(0.22, 1, 0.36, 1);
|
|
853
|
+
}
|
|
854
|
+
.providers.accordion > .provider-slot.is-expanded .provider-label-text {
|
|
855
|
+
opacity: 1;
|
|
856
|
+
transition: opacity 240ms ease 320ms;
|
|
857
|
+
}
|
|
858
|
+
.oauth-last-used {
|
|
859
|
+
position: absolute;
|
|
860
|
+
inset: 0;
|
|
861
|
+
z-index: 10;
|
|
862
|
+
pointer-events: none;
|
|
863
|
+
}
|
|
864
|
+
.oauth-last-used-dot,
|
|
865
|
+
.oauth-last-used-pill {
|
|
866
|
+
position: absolute;
|
|
867
|
+
transition: opacity 180ms ease;
|
|
868
|
+
}
|
|
869
|
+
.oauth-last-used-dot {
|
|
870
|
+
top: -3px;
|
|
871
|
+
inset-inline-end: -3px;
|
|
872
|
+
width: 8px;
|
|
873
|
+
height: 8px;
|
|
874
|
+
border-radius: 999px;
|
|
875
|
+
background: var(--authui-brand);
|
|
876
|
+
box-shadow: 0 0 0 2px var(--authui-card);
|
|
877
|
+
opacity: 1;
|
|
878
|
+
}
|
|
879
|
+
.oauth-last-used-pill {
|
|
880
|
+
top: -8px;
|
|
881
|
+
inset-inline-start: 6px;
|
|
882
|
+
padding: 2px 6px;
|
|
883
|
+
border-radius: 4px;
|
|
884
|
+
border: 1px solid var(--authui-border);
|
|
885
|
+
background: var(--authui-foreground);
|
|
886
|
+
color: var(--authui-background);
|
|
887
|
+
font-size: 10px;
|
|
888
|
+
font-weight: 500;
|
|
889
|
+
line-height: 1.2;
|
|
890
|
+
white-space: nowrap;
|
|
891
|
+
opacity: 0;
|
|
892
|
+
}
|
|
893
|
+
.providers.accordion > .provider-slot.is-expanded .oauth-last-used-dot {
|
|
894
|
+
opacity: 0;
|
|
895
|
+
}
|
|
896
|
+
.providers.accordion > .provider-slot.is-expanded .oauth-last-used-pill {
|
|
897
|
+
opacity: 1;
|
|
898
|
+
}
|
|
899
|
+
@media (prefers-reduced-motion: reduce) {
|
|
900
|
+
.providers.accordion > .provider-slot,
|
|
901
|
+
.provider-label,
|
|
902
|
+
.provider-label-text,
|
|
903
|
+
.oauth-last-used-dot,
|
|
904
|
+
.oauth-last-used-pill {
|
|
905
|
+
transition: none;
|
|
906
|
+
}
|
|
907
|
+
}
|
|
801
908
|
.empty {
|
|
802
909
|
padding: 24px 0;
|
|
803
910
|
text-align: center;
|
|
804
911
|
font-size: 13px;
|
|
805
912
|
color: var(--authui-muted-foreground);
|
|
806
913
|
}
|
|
914
|
+
.empty-well {
|
|
915
|
+
display: flex;
|
|
916
|
+
flex-direction: column;
|
|
917
|
+
align-items: center;
|
|
918
|
+
text-align: center;
|
|
919
|
+
padding: 28px 16px;
|
|
920
|
+
border: 1px dashed var(--authui-border);
|
|
921
|
+
border-radius: var(--authui-radius-xl);
|
|
922
|
+
background: color-mix(in oklab, var(--authui-card) 50%, transparent);
|
|
923
|
+
}
|
|
924
|
+
.empty-icon {
|
|
925
|
+
width: 48px;
|
|
926
|
+
height: 48px;
|
|
927
|
+
border-radius: 999px;
|
|
928
|
+
background: var(--authui-muted);
|
|
929
|
+
color: var(--authui-muted-foreground);
|
|
930
|
+
display: inline-flex;
|
|
931
|
+
align-items: center;
|
|
932
|
+
justify-content: center;
|
|
933
|
+
margin-bottom: 16px;
|
|
934
|
+
}
|
|
935
|
+
.empty-icon svg {
|
|
936
|
+
width: 20px;
|
|
937
|
+
height: 20px;
|
|
938
|
+
}
|
|
939
|
+
.empty-title {
|
|
940
|
+
margin: 0 0 4px;
|
|
941
|
+
font-size: 14px;
|
|
942
|
+
font-weight: 500;
|
|
943
|
+
color: var(--authui-foreground);
|
|
944
|
+
}
|
|
945
|
+
.empty-desc {
|
|
946
|
+
margin: 0;
|
|
947
|
+
font-size: 13px;
|
|
948
|
+
color: var(--authui-muted-foreground);
|
|
949
|
+
max-width: 280px;
|
|
950
|
+
}
|
|
807
951
|
.choice {
|
|
808
952
|
display: flex;
|
|
809
953
|
align-items: center;
|
|
@@ -889,11 +1033,11 @@ var AuthUI=(function(S){"use strict";var xe;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
889
1033
|
animation-duration: 0.01ms !important;
|
|
890
1034
|
}
|
|
891
1035
|
}
|
|
892
|
-
`;var Co=Object.defineProperty,Uo=(n,e,i,t)=>{for(var o=void 0,a=n.length-1,s;a>=0;a--)(s=n[a])&&(o=s(e,i,o)||o);return o&&Co(e,i,o),o};const an=(
|
|
1036
|
+
`;var Co=Object.defineProperty,Uo=(n,e,i,t)=>{for(var o=void 0,a=n.length-1,s;a>=0;a--)(s=n[a])&&(o=s(e,i,o)||o);return o&&Co(e,i,o),o};const an=(Ee=class extends Ke{constructor(){super(...arguments),this.auth=E.getState(),this.unsubscribeStore=null,this.unsubscribeTheme=null,this.stopKeys=e=>e.stopPropagation()}connectedCallback(){super.connectedCallback();for(const e of Ee.KEY_EVENTS)this.addEventListener(e,this.stopKeys);this.auth=E.getState(),this.unsubscribeStore=E.on("change",e=>{this.auth=e,this.applyBranding()}),this.unsubscribeTheme=nn.subscribe(()=>this.applyBranding()),this.applyBranding()}disconnectedCallback(){super.disconnectedCallback();for(const e of Ee.KEY_EVENTS)this.removeEventListener(e,this.stopKeys);this.unsubscribeStore?.(),this.unsubscribeTheme?.(),this.unsubscribeStore=null,this.unsubscribeTheme=null}get strings(){return E.getStrings()}t(e,i){return vo(this.strings[e],i)}get config(){return E.getConfig()}get productName(){return this.config?.branding?.name??""}applyBranding(){const e=this.config?.branding,i=nn.isDark(e?.theme??"auto");this.setAttribute("data-theme",i?"dark":"light"),e?.primary&&(this.style.setProperty("--authui-primary",e.primary),this.style.setProperty("--authui-primary-foreground",e.primaryForeground??"#ffffff")),e?.radius&&on[e.radius]&&this.style.setProperty("--authui-radius",on[e.radius])}fire(e,i){this.dispatchEvent(new CustomEvent(e,{detail:i,bubbles:!0,composed:!0}))}},Ee.styles=[jo,Po],Ee.KEY_EVENTS=["keydown","keyup","keypress"],Ee);Uo([V()],an.prototype,"auth");let Ce=an;var Mo=Object.defineProperty,xo=Object.getOwnPropertyDescriptor,pe=(n,e,i,t)=>{for(var o=t>1?void 0:t?xo(e,i):e,a=n.length-1,s;a>=0;a--)(s=n[a])&&(o=(t?s(e,i,o):s(o))||o);return t&&o&&Mo(e,i,o),o};k.AuthUIConfigElement=class extends Ke{constructor(){super(...arguments),this.endpoint="",this.project="",this.redirectUrl="",this.successUrl="",this.methods="email-password",this.signUp="true",this.requireName="true",this.mfa="true",this.securityPhrase="true",this.name="",this.logo="",this.theme="auto",this.radius="",this.primary="",this.primaryForeground="",this.termsUrl="",this.privacyUrl="",this.preview=""}connectedCallback(){super.connectedCallback(),this.configure()}updated(){this.configure()}configure(){if(!this.endpoint||!this.project){queueMicrotask(()=>{(!this.endpoint||!this.project)&&E.notifyConfigIncomplete()});return}const e=this.toConfig(),i=E.getConfig();i&&JSON.stringify(i)===JSON.stringify(e)||E.configure(e)}toConfig(){const e={oauth:[]},i=this.methods.split(/[\s,]+/).filter(Boolean);for(const t of i)t.startsWith("oauth:")?e.oauth.push(t.slice(6)):t==="email-password"?e.emailPassword=!0:t==="magic-url"?e.magicUrl=!0:t==="email-otp"?e.emailOtp=!0:t==="phone"?e.phone=!0:(t==="anonymous"||t==="guest")&&(e.anonymous=!0);return e.emailPassword=i.length>0?i.includes("email-password"):!0,{endpoint:this.endpoint,project:this.project,redirectUrl:this.redirectUrl||void 0,successUrl:this.successUrl||void 0,methods:e,signUp:this.signUp!=="false",requireName:this.requireName!=="false",mfa:this.mfa!=="false",securityPhrase:this.securityPhrase!=="false",branding:{name:this.name||void 0,logo:this.logo||void 0,theme:this.theme||"auto",radius:this.radius||void 0,primary:this.primary||void 0,primaryForeground:this.primaryForeground||void 0},legal:{termsUrl:this.termsUrl||void 0,privacyUrl:this.privacyUrl||void 0},preview:this.preview===""||this.preview==="false"?void 0:!0}}},k.AuthUIConfigElement.styles=Le`
|
|
893
1037
|
:host {
|
|
894
1038
|
display: none;
|
|
895
1039
|
}
|
|
896
|
-
`,pe([F({type:String})],
|
|
1040
|
+
`,pe([F({type:String})],k.AuthUIConfigElement.prototype,"endpoint",2),pe([F({type:String})],k.AuthUIConfigElement.prototype,"project",2),pe([F({type:String,attribute:"redirect-url"})],k.AuthUIConfigElement.prototype,"redirectUrl",2),pe([F({type:String,attribute:"success-url"})],k.AuthUIConfigElement.prototype,"successUrl",2),pe([F({type:String})],k.AuthUIConfigElement.prototype,"methods",2),pe([F({type:String,attribute:"sign-up"})],k.AuthUIConfigElement.prototype,"signUp",2),pe([F({type:String,attribute:"require-name"})],k.AuthUIConfigElement.prototype,"requireName",2),pe([F({type:String})],k.AuthUIConfigElement.prototype,"mfa",2),pe([F({type:String,attribute:"security-phrase"})],k.AuthUIConfigElement.prototype,"securityPhrase",2),pe([F({type:String})],k.AuthUIConfigElement.prototype,"name",2),pe([F({type:String})],k.AuthUIConfigElement.prototype,"logo",2),pe([F({type:String})],k.AuthUIConfigElement.prototype,"theme",2),pe([F({type:String})],k.AuthUIConfigElement.prototype,"radius",2),pe([F({type:String})],k.AuthUIConfigElement.prototype,"primary",2),pe([F({type:String,attribute:"primary-foreground"})],k.AuthUIConfigElement.prototype,"primaryForeground",2),pe([F({type:String,attribute:"terms-url"})],k.AuthUIConfigElement.prototype,"termsUrl",2),pe([F({type:String,attribute:"privacy-url"})],k.AuthUIConfigElement.prototype,"privacyUrl",2),pe([F({type:String})],k.AuthUIConfigElement.prototype,"preview",2),k.AuthUIConfigElement=pe([Ye("authui-config")],k.AuthUIConfigElement);var Ro=Object.defineProperty,Eo=Object.getOwnPropertyDescriptor,Pt=(n,e,i,t)=>{for(var o=t>1?void 0:t?Eo(e,i):e,a=n.length-1,s;a>=0;a--)(s=n[a])&&(o=(t?s(e,i,o):s(o))||o);return t&&o&&Ro(e,i,o),o};const pi="authui-show:not([ready]){display:none}",qo="authui-show:not([ready]){display:none}authui-button:not(:defined),authui-user-button:not(:defined){visibility:hidden}";let sn=!1;function _o(){if(!(typeof document>"u"||sn)){sn=!0;try{if(typeof CSSStyleSheet<"u"&&"adoptedStyleSheets"in Document.prototype){const n=new CSSStyleSheet;n.replaceSync(pi),document.adoptedStyleSheets=[...document.adoptedStyleSheets,n];return}}catch{}if(!document.getElementById("authui-fouc")){const n=document.createElement("style");n.id="authui-fouc",n.textContent=pi,document.head.appendChild(n)}}}_o();const Lo=["loading","signed-out","signed-in","mfa-required"];function hi(n){return n?n.split(/[\s,]+/).map(e=>e.trim()).filter(e=>Lo.includes(e)):[]}k.AuthUIShow=class extends Ke{constructor(){super(...arguments),this.when="",this.unless="",this.status=E.getState().status,this.unsubscribe=null}connectedCallback(){super.connectedCallback(),this.status=E.getState().status,this.unsubscribe=E.on("change",e=>this.status=e.status)}disconnectedCallback(){super.disconnectedCallback(),this.unsubscribe?.(),this.unsubscribe=null}get visible(){const e=hi(this.when),i=hi(this.unless);return!(this.status==="loading"&&!e.includes("loading")||e.length>0&&!e.includes(this.status)||i.includes(this.status))}updated(){(this.status!=="loading"||hi(this.when).includes("loading"))&&(this.setAttribute("ready",""),this.style.display="contents")}render(){return this.visible?w`<slot></slot>`:M}},Pt([F({type:String})],k.AuthUIShow.prototype,"when",2),Pt([F({type:String})],k.AuthUIShow.prototype,"unless",2),Pt([V()],k.AuthUIShow.prototype,"status",2),k.AuthUIShow=Pt([Ye("authui-show")],k.AuthUIShow);const No=Le`
|
|
897
1041
|
:host {
|
|
898
1042
|
display: block;
|
|
899
1043
|
width: 100%;
|
|
@@ -947,7 +1091,7 @@ var AuthUI=(function(S){"use strict";var xe;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
947
1091
|
height: 14px;
|
|
948
1092
|
margin: 0;
|
|
949
1093
|
}
|
|
950
|
-
`,ae=n=>
|
|
1094
|
+
`,ae=n=>w`<svg
|
|
951
1095
|
xmlns="http://www.w3.org/2000/svg"
|
|
952
1096
|
viewBox="0 0 24 24"
|
|
953
1097
|
fill="none"
|
|
@@ -958,10 +1102,10 @@ var AuthUI=(function(S){"use strict";var xe;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
958
1102
|
aria-hidden="true"
|
|
959
1103
|
>
|
|
960
1104
|
${n}
|
|
961
|
-
</svg>`,_={mail:ae(G`<rect width="20" height="16" x="2" y="4" rx="2"/><path d="m22 7-8.97 5.7a1.94 1.94 0 0 1-2.06 0L2 7"/>`),phone:ae(G`<path d="M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z"/>`),user:ae(G`<path d="M19 21v-2a4 4 0 0 0-4-4H9a4 4 0 0 0-4 4v2"/><circle cx="12" cy="7" r="4"/>`),userX:ae(G`<path d="M2 21a8 8 0 0 1 11.873-7"/><circle cx="10" cy="8" r="5"/><path d="m17 17 5 5"/><path d="m22 17-5 5"/>`),lock:ae(G`<rect width="18" height="11" x="3" y="11" rx="2" ry="2"/><path d="M7 11V7a5 5 0 0 1 10 0v4"/>`),key:ae(G`<path d="m15.5 7.5 2.3 2.3a1 1 0 0 0 1.4 0l2.1-2.1a1 1 0 0 0 0-1.4L19 4"/><path d="m21 2-9.6 9.6"/><circle cx="7.5" cy="15.5" r="5.5"/>`),shield:ae(G`<path d="M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z"/>`),shieldCheck:ae(G`<path d="M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z"/><path d="m9 12 2 2 4-4"/>`),smartphone:ae(G`<rect width="14" height="20" x="5" y="2" rx="2" ry="2"/><path d="M12 18h.01"/>`),monitor:ae(G`<rect width="20" height="14" x="2" y="3" rx="2"/><line x1="8" x2="16" y1="21" y2="21"/><line x1="12" x2="12" y1="17" y2="21"/>`),globe:ae(G`<circle cx="12" cy="12" r="10"/><path d="M12 2a14.5 14.5 0 0 0 0 20 14.5 14.5 0 0 0 0-20"/><path d="M2 12h20"/>`),logOut:ae(G`<path d="M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4"/><polyline points="16 17 21 12 16 7"/><line x1="21" x2="9" y1="12" y2="12"/>`),settings:ae(G`<path d="M12.22 2h-.44a2 2 0 0 0-2 2v.18a2 2 0 0 1-1 1.73l-.43.25a2 2 0 0 1-2 0l-.15-.08a2 2 0 0 0-2.73.73l-.22.38a2 2 0 0 0 .73 2.73l.15.1a2 2 0 0 1 1 1.72v.51a2 2 0 0 1-1 1.74l-.15.09a2 2 0 0 0-.73 2.73l.22.38a2 2 0 0 0 2.73.73l.15-.08a2 2 0 0 1 2 0l.43.25a2 2 0 0 1 1 1.73V20a2 2 0 0 0 2 2h.44a2 2 0 0 0 2-2v-.18a2 2 0 0 1 1-1.73l.43-.25a2 2 0 0 1 2 0l.15.08a2 2 0 0 0 2.73-.73l.22-.39a2 2 0 0 0-.73-2.73l-.15-.08a2 2 0 0 1-1-1.74v-.5a2 2 0 0 1 1-1.74l.15-.09a2 2 0 0 0 .73-2.73l-.22-.38a2 2 0 0 0-2.73-.73l-.15.08a2 2 0 0 1-2 0l-.43-.25a2 2 0 0 1-1-1.73V4a2 2 0 0 0-2-2z"/><circle cx="12" cy="12" r="3"/>`),x:ae(G`<path d="M18 6 6 18"/><path d="m6 6 12 12"/>`),check:ae(G`<path d="M20 6 9 17l-5-5"/>`),users:ae(G`<path d="M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2"/><circle cx="9" cy="7" r="4"/><path d="M22 21v-2a4 4 0 0 0-3-3.87"/><path d="M16 3.13a4 4 0 0 1 0 7.75"/>`),copy:ae(G`<rect width="14" height="14" x="8" y="8" rx="2" ry="2"/><path d="M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2"/>`),eye:ae(G`<path d="M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0"/><circle cx="12" cy="12" r="3"/>`),eyeOff:ae(G`<path d="M10.733 5.076a10.744 10.744 0 0 1 11.205 6.575 1 1 0 0 1 0 .696 10.747 10.747 0 0 1-1.444 2.49"/><path d="M14.084 14.158a3 3 0 0 1-4.242-4.242"/><path d="M17.479 17.499a10.75 10.75 0 0 1-15.417-5.151 1 1 0 0 1 0-.696 10.75 10.75 0 0 1 4.446-5.143"/><path d="m2 2 20 20"/>`),arrowLeft:ae(G`<path d="m12 19-7-7 7-7"/><path d="M19 12H5"/>`),alert:ae(G`<circle cx="12" cy="12" r="10"/><line x1="12" x2="12" y1="8" y2="12"/><line x1="12" x2="12.01" y1="16" y2="16"/>`),info:ae(G`<circle cx="12" cy="12" r="10"/><path d="M12 16v-4"/><path d="M12 8h.01"/>`),checkCircle:ae(G`<circle cx="12" cy="12" r="10"/><path d="m9 12 2 2 4-4"/>`),link:ae(G`<path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"/><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"/>`),activity:ae(G`<path d="M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.25.25 0 0 1-.48 0L9.24 2.18a.25.25 0 0 0-.48 0l-2.35 8.36A2 2 0 0 1 4.49 12H2"/>`),trash:ae(G`<path d="M3 6h18"/><path d="M19 6v14c0 1-1 2-2 2H7c-1 0-2-1-2-2V6"/><path d="M8 6V4c0-1 1-2 2-2h4c1 0 2 1 2 2v2"/>`),sparkles:ae(G`<path d="M9.937 15.5A2 2 0 0 0 8.5 14.063l-6.135-1.582a.5.5 0 0 1 0-.962L8.5 9.936A2 2 0 0 0 9.937 8.5l1.582-6.135a.5.5 0 0 1 .963 0L14.063 8.5A2 2 0 0 0 15.5 9.937l6.135 1.581a.5.5 0 0 1 0 .964L15.5 14.063a2 2 0 0 0-1.437 1.437l-1.582 6.135a.5.5 0 0 1-.963 0z"/>`),refresh:ae(G`<path d="M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8"/><path d="M21 3v5h-5"/><path d="M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16"/><path d="M8 16H3v5"/>`),chevronDown:ae(G`<path d="m6 9 6 6 6-6"/>`),ghost:ae(G`<path d="M9 10h.01"/><path d="M15 10h.01"/><path d="M12 2a8 8 0 0 0-8 8v12l3-3 2.5 2.5L12 19l2.5 2.5L17 19l3 3V10a8 8 0 0 0-8-8z"/>`),qr:ae(G`<rect width="5" height="5" x="3" y="3" rx="1"/><rect width="5" height="5" x="16" y="3" rx="1"/><rect width="5" height="5" x="3" y="16" rx="1"/><path d="M21 16h-3a2 2 0 0 0-2 2v3"/><path d="M21 21v.01"/><path d="M12 7v3a2 2 0 0 1-2 2H7"/><path d="M3 12h.01"/><path d="M12 3h.01"/><path d="M12 16v.01"/><path d="M16 12h1"/><path d="M21 12v.01"/><path d="M12 21v-1"/>`)},fe=(n,e="0 0 24 24")=>b`<svg xmlns="http://www.w3.org/2000/svg" viewBox=${e} aria-hidden="true">${n}</svg>`,Ho={google:fe(G`<path fill="#4285F4" d="M23.49 12.27c0-.79-.07-1.54-.19-2.27H12v4.51h6.47a5.57 5.57 0 0 1-2.4 3.58v3h3.86c2.26-2.09 3.56-5.17 3.56-8.82z"/><path fill="#34A853" d="M12 24c3.24 0 5.95-1.08 7.93-2.91l-3.86-3c-1.08.72-2.45 1.16-4.07 1.16-3.13 0-5.78-2.11-6.73-4.96H1.29v3.09A11.99 11.99 0 0 0 12 24z"/><path fill="#FBBC05" d="M5.27 14.29A7.2 7.2 0 0 1 4.89 12c0-.8.14-1.57.38-2.29V6.62H1.29A11.97 11.97 0 0 0 0 12c0 1.94.46 3.77 1.29 5.38l3.98-3.09z"/><path fill="#EA4335" d="M12 4.75c1.77 0 3.35.61 4.6 1.8l3.42-3.42C17.95 1.19 15.24 0 12 0 7.31 0 3.26 2.69 1.29 6.62l3.98 3.09C6.22 6.86 8.87 4.75 12 4.75z"/>`),github:fe(G`<path fill="currentColor" d="M12 0C5.37 0 0 5.37 0 12c0 5.31 3.435 9.795 8.205 11.385.6.105.825-.255.825-.57 0-.285-.015-1.23-.015-2.235-3.015.555-3.795-.735-4.035-1.41-.135-.345-.72-1.41-1.23-1.695-.42-.225-1.02-.78-.015-.795.945-.015 1.62.87 1.845 1.23 1.08 1.815 2.805 1.305 3.495.99.105-.78.42-1.305.765-1.605-2.67-.3-5.46-1.335-5.46-5.925 0-1.305.465-2.385 1.23-3.225-.12-.3-.54-1.53.12-3.18 0 0 1.005-.315 3.3 1.23.96-.27 1.98-.405 3-.405s2.04.135 3 .405c2.295-1.56 3.3-1.23 3.3-1.23.66 1.65.24 2.88.12 3.18.765.84 1.23 1.905 1.23 3.225 0 4.605-2.805 5.625-5.475 5.925.435.375.81 1.095.81 2.22 0 1.605-.015 2.895-.015 3.3 0 .315.225.69.825.57A12.02 12.02 0 0 0 24 12c0-6.63-5.37-12-12-12z"/>`),apple:fe(G`<path fill="currentColor" d="M17.05 20.28c-.98.95-2.05.8-3.08.35-1.09-.46-2.09-.48-3.24 0-1.44.62-2.2.44-3.06-.35C2.79 15.25 3.51 7.59 9.05 7.31c1.35.07 2.29.74 3.08.8 1.18-.24 2.31-.93 3.57-.84 1.51.12 2.65.72 3.4 1.8-3.12 1.87-2.38 5.98.48 7.13-.57 1.5-1.31 2.99-2.54 4.09zM12.03 7.25c-.15-2.23 1.66-4.07 3.74-4.25.29 2.58-2.34 4.5-3.74 4.25z"/>`),facebook:fe(G`<path fill="#1877F2" d="M24 12.073c0-6.627-5.373-12-12-12s-12 5.373-12 12c0 5.99 4.388 10.954 10.125 11.854v-8.385H7.078v-3.47h3.047V9.43c0-3.007 1.792-4.669 4.533-4.669 1.312 0 2.686.235 2.686.235v2.953H15.83c-1.491 0-1.956.925-1.956 1.874v2.25h3.328l-.532 3.47h-2.796v8.385C19.612 23.027 24 18.062 24 12.073z"/>`),x:fe(G`<path fill="currentColor" d="M18.244 2.25h3.308l-7.227 8.26 8.502 11.24H16.17l-5.214-6.817L4.99 21.75H1.68l7.73-8.835L1.254 2.25H8.08l4.713 6.231zm-1.161 17.52h1.833L7.084 4.126H5.117z"/>`),microsoft:fe(G`<path fill="#F25022" d="M1 1h10v10H1z"/><path fill="#7FBA00" d="M13 1h10v10H13z"/><path fill="#00A4EF" d="M1 13h10v10H1z"/><path fill="#FFB900" d="M13 13h10v10H13z"/>`),discord:fe(G`<path fill="#5865F2" d="M20.317 4.37a19.791 19.791 0 0 0-4.885-1.515.074.074 0 0 0-.079.037c-.21.375-.444.864-.608 1.25a18.27 18.27 0 0 0-5.487 0 12.64 12.64 0 0 0-.617-1.25.077.077 0 0 0-.079-.037A19.736 19.736 0 0 0 3.677 4.37a.07.07 0 0 0-.032.027C.533 9.046-.32 13.58.099 18.057a.082.082 0 0 0 .031.057 19.9 19.9 0 0 0 5.993 3.03.078.078 0 0 0 .084-.028c.462-.63.874-1.295 1.226-1.994a.076.076 0 0 0-.041-.106 13.107 13.107 0 0 1-1.872-.892.077.077 0 0 1-.008-.128 10.2 10.2 0 0 0 .372-.292.074.074 0 0 1 .077-.01c3.928 1.793 8.18 1.793 12.062 0a.074.074 0 0 1 .078.01c.12.098.246.198.373.292a.077.077 0 0 1-.006.127 12.299 12.299 0 0 1-1.873.892.077.077 0 0 0-.041.107c.36.698.772 1.362 1.225 1.993a.076.076 0 0 0 .084.028 19.839 19.839 0 0 0 6.002-3.03.077.077 0 0 0 .032-.054c.5-5.177-.838-9.674-3.549-13.66a.061.061 0 0 0-.031-.03zM8.02 15.33c-1.183 0-2.157-1.085-2.157-2.419 0-1.333.956-2.419 2.157-2.419 1.21 0 2.176 1.096 2.157 2.42 0 1.333-.956 2.418-2.157 2.418zm7.975 0c-1.183 0-2.157-1.085-2.157-2.419 0-1.333.955-2.419 2.157-2.419 1.21 0 2.176 1.096 2.157 2.42 0 1.333-.946 2.418-2.157 2.418z"/>`),gitlab:fe(G`<path fill="#FC6D26" d="m23.6 9.593-.033-.086L20.3.98a.851.851 0 0 0-.336-.405.876.876 0 0 0-1.001.054.874.874 0 0 0-.29.44l-2.205 6.748H7.535L5.33 1.069a.857.857 0 0 0-.29-.441.876.876 0 0 0-1.001-.054.86.86 0 0 0-.336.405L.436 9.502l-.032.086a6.066 6.066 0 0 0 2.012 7.01l.011.009.03.021 4.976 3.727 2.462 1.863 1.5 1.132a1.009 1.009 0 0 0 1.22 0l1.5-1.132 2.461-1.863 5.006-3.75.013-.01a6.068 6.068 0 0 0 2.006-7.002z"/>`),linkedin:fe(G`<path fill="#0A66C2" d="M20.447 20.452h-3.554v-5.569c0-1.328-.027-3.037-1.852-3.037-1.853 0-2.136 1.445-2.136 2.939v5.667H9.351V9h3.414v1.561h.046c.477-.9 1.637-1.85 3.37-1.85 3.601 0 4.267 2.37 4.267 5.455v6.286zM5.337 7.433a2.062 2.062 0 0 1-2.063-2.065 2.064 2.064 0 1 1 2.063 2.065zm1.782 13.019H3.555V9h3.564v11.452zM22.225 0H1.771C.792 0 0 .774 0 1.729v20.542C0 23.227.792 24 1.771 24h20.451C23.2 24 24 23.227 24 22.271V1.729C24 .774 23.2 0 22.222 0h.003z"/>`),slack:fe(G`<path fill="#E01E5A" d="M5.042 15.165a2.528 2.528 0 0 1-2.52 2.523A2.528 2.528 0 0 1 0 15.165a2.527 2.527 0 0 1 2.522-2.52h2.52v2.52zm1.271 0a2.527 2.527 0 0 1 2.521-2.52 2.527 2.527 0 0 1 2.521 2.52v6.313A2.528 2.528 0 0 1 8.834 24a2.528 2.528 0 0 1-2.521-2.522v-6.313z"/><path fill="#36C5F0" d="M8.834 5.042a2.528 2.528 0 0 1-2.521-2.52A2.528 2.528 0 0 1 8.834 0a2.528 2.528 0 0 1 2.521 2.522v2.52H8.834zm0 1.271a2.528 2.528 0 0 1 2.521 2.521 2.528 2.528 0 0 1-2.521 2.521H2.522A2.528 2.528 0 0 1 0 8.834a2.528 2.528 0 0 1 2.522-2.521h6.312z"/><path fill="#2EB67D" d="M18.956 8.834a2.528 2.528 0 0 1 2.522-2.521A2.528 2.528 0 0 1 24 8.834a2.528 2.528 0 0 1-2.522 2.521h-2.522V8.834zm-1.27 0a2.528 2.528 0 0 1-2.523 2.521 2.527 2.527 0 0 1-2.52-2.521V2.522A2.527 2.527 0 0 1 15.163 0a2.528 2.528 0 0 1 2.523 2.522v6.312z"/><path fill="#ECB22E" d="M15.163 18.956a2.528 2.528 0 0 1 2.523 2.522A2.528 2.528 0 0 1 15.163 24a2.527 2.527 0 0 1-2.52-2.522v-2.522h2.52zm0-1.27a2.527 2.527 0 0 1-2.52-2.523 2.526 2.526 0 0 1 2.52-2.52h6.315A2.527 2.527 0 0 1 24 15.163a2.528 2.528 0 0 1-2.522 2.523h-6.315z"/>`),twitch:fe(G`<path fill="#9146FF" d="M11.571 4.714h1.715v5.143H11.57zm4.715 0H18v5.143h-1.714zM6 0 1.714 4.286v15.428h5.143V24l4.286-4.286h3.428L22.286 12V0zm14.571 11.143-3.428 3.428h-3.429l-3 3v-3H6.857V1.714h13.714Z"/>`),spotify:fe(G`<path fill="#1DB954" d="M12 0C5.4 0 0 5.4 0 12s5.4 12 12 12 12-5.4 12-12S18.66 0 12 0zm5.521 17.34c-.24.359-.66.48-1.021.24-2.82-1.74-6.36-2.101-10.561-1.141-.418.122-.779-.179-.899-.539-.12-.421.18-.78.54-.9 4.56-1.021 8.52-.6 11.64 1.32.42.18.479.659.301 1.02zm1.44-3.3c-.301.42-.841.6-1.262.3-3.239-1.98-8.159-2.58-11.939-1.38-.479.12-1.02-.12-1.14-.6-.12-.48.12-1.021.6-1.141C9.6 9.9 15 10.561 18.72 12.84c.361.181.54.78.241 1.2zm.12-3.36C15.24 8.4 8.82 8.16 5.16 9.301c-.6.179-1.2-.181-1.38-.721-.18-.601.18-1.2.72-1.381 4.26-1.26 11.28-1.02 15.721 1.621.539.3.719 1.02.419 1.56-.299.421-1.02.599-1.559.3z"/>`),notion:fe(G`<path fill="currentColor" d="M4.459 4.208c.746.606 1.026.56 2.428.466l13.215-.793c.28 0 .047-.28-.046-.326L17.86 1.968c-.42-.326-.981-.7-2.055-.607L3.01 2.295c-.466.046-.56.28-.374.466zm.793 3.08v13.904c0 .747.373 1.027 1.214.98l14.523-.84c.841-.046.935-.56.935-1.167V6.354c0-.606-.233-.933-.748-.887l-15.177.887c-.56.047-.747.327-.747.933zm14.337.745c.093.42 0 .84-.42.888l-.7.14v10.264c-.608.327-1.168.514-1.635.514-.748 0-.935-.234-1.495-.933l-4.577-7.186v6.952L12.21 19s0 .84-1.168.84l-3.222.186c-.093-.186 0-.653.327-.746l.84-.233V9.854L7.822 9.76c-.094-.42.14-1.026.793-1.073l3.456-.233 4.764 7.279v-6.44l-1.215-.139c-.093-.514.28-.887.747-.933zM1.936 1.035l13.31-.98c1.634-.14 2.055-.047 3.082.7l4.249 2.986c.7.513.934.653.934 1.213v16.378c0 1.026-.373 1.634-1.68 1.726l-15.458.934c-.98.047-1.448-.093-1.962-.747l-3.129-4.06c-.56-.747-.793-1.306-.793-1.96V2.667c0-.839.374-1.54 1.447-1.632z"/>`),dropbox:fe(G`<path fill="#0061FF" d="M6 1.807 0 5.629l6 3.822 6.001-3.822L6 1.807zm12 0-6 3.822 6 3.822 6-3.822-6-3.822zM0 13.274l6 3.822 6.001-3.822L6 9.452l-6 3.822zm18-3.822-6 3.822 6 3.822 6-3.822-6-3.822zM6 18.371l6.001 3.822 6-3.822-6-3.822L6 18.371z"/>`),figma:fe(G`<path fill="#F24E1E" d="M8 24a4 4 0 0 0 4-4v-4H8a4 4 0 0 0 0 8z"/><path fill="#A259FF" d="M4 12a4 4 0 0 1 4-4h4v8H8a4 4 0 0 1-4-4z"/><path fill="#FF7262" d="M4 4a4 4 0 0 1 4-4h4v8H8a4 4 0 0 1-4-4z"/><path fill="#1ABCFE" d="M12 0h4a4 4 0 0 1 0 8h-4V0z"/><path fill="#0ACF83" d="M20 12a4 4 0 1 1-8 0 4 4 0 0 1 8 0z"/>`),bitbucket:fe(G`<path fill="#2684FF" d="M.778 1.213a.768.768 0 0 0-.768.892l3.263 19.81c.084.5.515.868 1.022.873H19.95a.772.772 0 0 0 .77-.646l3.27-20.03a.768.768 0 0 0-.768-.891zM14.52 15.53H9.522L8.17 8.466h7.561z"/>`),amazon:fe(G`<path fill="currentColor" d="M.045 18.02c.072-.116.187-.124.348-.022 3.636 2.11 7.594 3.166 11.87 3.166 2.852 0 5.668-.533 8.447-1.595l.315-.14c.138-.06.234-.1.293-.13.226-.088.39-.046.525.13.12.174.09.336-.12.48-.256.19-.6.41-1.006.654-1.244.743-2.64 1.316-4.185 1.726a17.617 17.617 0 0 1-10.951-.577 17.88 17.88 0 0 1-5.43-3.35c-.1-.074-.151-.15-.151-.22 0-.047.021-.09.051-.13zm6.565-6.218c0-1.005.247-1.863.743-2.577.495-.71 1.17-1.25 2.04-1.615.796-.335 1.756-.575 2.912-.72.39-.046 1.033-.103 1.92-.174v-.37c0-.93-.105-1.558-.3-1.875-.302-.43-.78-.65-1.44-.65h-.182c-.48.046-.896.196-1.246.46-.35.27-.575.63-.675 1.096-.06.3-.206.465-.435.51l-2.52-.315c-.248-.06-.372-.18-.372-.39 0-.046.007-.09.022-.15.247-1.29.855-2.25 1.82-2.88.976-.616 2.1-.975 3.39-1.05h.54c1.65 0 2.957.434 3.888 1.29.135.15.27.3.405.48.12.165.224.314.283.45.075.134.15.33.195.57.06.254.105.42.135.51.03.104.062.3.076.615.01.313.02.493.02.553v5.28c0 .376.06.72.165 1.036.105.313.21.54.315.674l.51.674c.09.136.136.256.136.36 0 .12-.06.226-.18.314-1.2 1.05-1.86 1.62-1.963 1.71-.165.135-.373.15-.61.045a6.62 6.62 0 0 1-.526-.496l-.31-.347a9.858 9.858 0 0 1-.317-.42l-.3-.435c-.81.886-1.603 1.44-2.4 1.665-.494.15-1.093.227-1.83.227-1.11 0-2.04-.343-2.76-1.034-.72-.69-1.08-1.665-1.08-2.94l-.05-.076zm3.753-.438c0 .566.14 1.02.425 1.364.285.34.675.512 1.155.512.045 0 .106-.007.195-.02.09-.016.134-.023.166-.023.614-.16 1.08-.553 1.424-1.178.165-.28.285-.58.36-.91.09-.32.12-.59.135-.8.015-.195.015-.54.015-1.005v-.54c-.84 0-1.484.06-1.92.18-1.275.36-1.92 1.17-1.92 2.43l-.035-.01zm9.162 7.027c.03-.06.075-.11.132-.17.362-.243.714-.41 1.05-.5a8.094 8.094 0 0 1 1.612-.24c.14-.012.28 0 .41.03.65.06 1.05.168 1.172.33.063.09.099.228.099.39v.15c0 .51-.149 1.11-.424 1.8-.278.69-.664 1.248-1.156 1.68-.073.06-.14.09-.197.09-.03 0-.06 0-.09-.012-.09-.044-.107-.12-.064-.24.54-1.26.806-2.143.806-2.64 0-.15-.03-.27-.087-.344-.145-.166-.55-.257-1.224-.257-.243 0-.533.016-.87.045-.363.045-.7.09-1 .135-.09 0-.148-.014-.18-.044-.03-.03-.036-.06-.02-.106 0-.014.007-.03.02-.06z"/>`),paypal:fe(G`<path fill="#003087" d="M7.076 21.337H2.47a.641.641 0 0 1-.633-.74L4.944.901C5.026.382 5.474 0 5.998 0h7.46c2.57 0 4.578.543 5.69 1.81 1.01 1.15 1.304 2.42 1.012 4.287-.023.143-.047.288-.077.437-.983 5.05-4.349 6.797-8.647 6.797h-2.19c-.524 0-.968.382-1.05.9l-1.12 7.106zm14.146-14.42a3.35 3.35 0 0 0-.607-.541c-.013.076-.026.175-.041.254-.93 4.778-4.005 7.201-9.138 7.201h-2.19a.563.563 0 0 0-.556.479l-1.187 7.527h-.506l-.24 1.516a.56.56 0 0 0 .554.647h3.882c.46 0 .85-.334.922-.788.06-.26.76-4.852.816-5.09a.932.932 0 0 1 .923-.788h.58c3.76 0 6.705-1.528 7.565-5.946.36-1.847.174-3.388-.777-4.471z"/>`)};function hi(n){return Ho[n]??_.globe}function fi(n){const e=(n.trim()[0]??"?").toUpperCase();return/[A-Z0-9]/i.test(e)?e:_.user}function nt(n){typeof document>"u"||(document.querySelector("authui-modal")||document.body.appendChild(document.createElement("authui-modal")),queueMicrotask(()=>{window.dispatchEvent(new CustomEvent("authui:open",{detail:{view:n}}))}))}function rn(){typeof window>"u"||window.dispatchEvent(new CustomEvent("authui:close"))}function Ct(n){const e={length:n.length>=8,long:n.length>=12,lower:/[a-z]/.test(n),upper:/[A-Z]/.test(n),number:/\d/.test(n),symbol:/[^A-Za-z0-9]/.test(n)};if(!n)return{level:0,percent:0,labelKey:"passwordStrengthTooWeak",checks:e};let i=0;e.length&&(i+=1),e.long&&(i+=1),e.lower&&e.upper&&(i+=1),e.number&&(i+=1),e.symbol&&(i+=1),n.length<8?i=Math.min(i,1):n.length<10&&(i=Math.min(i,3));let t,o;return!e.length||i<=1?(t=1,o="passwordStrengthTooWeak"):i===2?(t=2,o="passwordStrengthWeak"):i===3?(t=3,o="passwordStrengthFair"):i>=5&&e.long&&e.lower&&e.upper&&e.number&&e.symbol?(t=4,o="passwordStrengthVeryStrong"):(t=4,o="passwordStrengthStrong"),{level:t,percent:t*25,labelKey:o,checks:e}}var Do=Object.defineProperty,Bo=Object.getOwnPropertyDescriptor,Ie=(n,e,i,t)=>{for(var o=t>1?void 0:t?Bo(e,i):e,a=n.length-1,s;a>=0;a--)(s=n[a])&&(o=(t?s(e,i,o):s(o))||o);return t&&o&&Do(e,i,o),o};S.AuthUISignIn=class extends Ce{constructor(){super(...arguments),this.view="sign-in",this.embedded=!1,this.step="sign-in",this.busy=!1,this.error="",this.notice=null,this.showPassword=!1,this.token=null,this.focusOnStep=!1,this.resendCooldownUntil=0,this.challenge=null,this.recovery=null,this.email="",this.password="",this.passwordConfirm="",this.name="",this.phone="",this.code="",this.onSignIn=e=>{e.preventDefault(),this.requireValid(e)&&this.run(async()=>{await x.signInWithEmailPassword(this.email,this.password),this.password="",it("email-password"),this.fire("authui-success",{method:"email-password"})})},this.onSignUp=e=>{e.preventDefault(),this.requireValid(e)&&this.run(async()=>{await x.signUp(this.email,this.password,this.name),this.password="",it("email-password"),this.fire("authui-success",{method:"sign-up"})})},this.onGuest=()=>{this.run(async()=>{await x.signInAnonymously(),it("anonymous"),this.fire("authui-success",{method:"anonymous"})})},this.onOAuth=e=>{this.run(async()=>{if(Oi(e),await x.signInWithOAuth(e),x.isPreview){ci(),this.fire("authui-success",{method:"oauth"});return}await new Promise(i=>setTimeout(i,4e3))})},this.onForgot=e=>{e.preventDefault(),this.requireValid(e)&&this.run(async()=>{await x.sendPasswordRecovery(this.email),this.notice={tone:"success",message:this.t("resetLinkSent",{email:this.email})}})},this.onReset=e=>{if(e.preventDefault(),!this.requireValid(e))return;if(this.password!==this.passwordConfirm){this.error=this.t("errorPasswordMismatch");return}const i=this.recovery;i&&this.run(async()=>{await x.completePasswordRecovery(i.userId,i.secret,this.password),this.password="",this.passwordConfirm="",this.recovery=null,this.auth.pending?.type==="reset-password"&&x.setPending(null),this.go("sign-in"),this.notice={tone:"success",message:this.t("passwordUpdated")}})},this.onMagicUrl=e=>{e.preventDefault(),this.requireValid(e)&&this.run(async()=>{const i=await x.sendMagicUrl(this.email);this.token={userId:i.userId,kind:"magic-url",target:this.email,phrase:i.phrase}})},this.onEmailOtp=e=>{e.preventDefault(),this.requireValid(e)&&this.run(async()=>{const i=await x.sendEmailOtp(this.email);this.token={userId:i.userId,kind:"email-otp",target:this.email,phrase:i.phrase},this.code=""})},this.onPhoneOtp=e=>{e.preventDefault(),this.requireValid(e)&&this.run(async()=>{const i=await x.sendPhoneOtp(this.phone);this.token={userId:i.userId,kind:"phone",target:this.phone},this.code=""})},this.onVerifyCode=e=>{if(e.preventDefault(),!this.requireValid(e))return;const i=this.token;i&&this.run(async()=>{await x.signInWithToken(i.userId,this.code),this.code="",this.token=null,it(i.kind),this.fire("authui-success",{method:i.kind})},"code")},this.onChooseFactor=e=>{this.run(async()=>{const i=await x.createMfaChallenge(e);this.challenge={id:i.$id,factor:e},this.code=""})},this.onVerifyFactor=e=>{if(e.preventDefault(),!this.requireValid(e))return;const i=this.challenge;i&&this.run(async()=>{await x.completeMfaChallenge(i.id,this.code),this.code="",this.challenge=null,this.go("sign-in"),this.fire("authui-success",{method:"mfa"})},"code")},this.onCancelMfa=()=>{this.run(async()=>{try{await x.signOut()}catch(e){if(!ut(e,ee.sessionNotFound))throw e}this.go("sign-in")})},this.onSignOut=()=>{this.run(()=>x.signOut())}}connectedCallback(){super.connectedCallback(),this.step=this.view,this.syncFromStore()}willUpdate(e){e.has("view")&&e.get("view")!==void 0&&this.go(this.view),e.has("auth")&&this.syncFromStore()}updated(e){e.has("step")&&(this.focusOnStep||this.embedded)&&(this.focusOnStep=!1,requestAnimationFrame(()=>this.firstInput?.focus()))}syncFromStore(){const{status:e,pending:i}=this.auth;e==="mfa-required"&&this.step!=="mfa"&&this.go("mfa");const t=this.step==="reset-password"||i?.type==="reset-password"||this.recovery!==null;(e==="signed-in"||e==="signed-out")&&!t&&(this.step==="mfa"||this.step==="phone"||this.step==="email-otp"||this.step==="magic-url"||this.step==="forgot-password"||this.token!==null||this.challenge!==null||e==="signed-out")&&(this.token=null,this.challenge=null,this.code="",this.password="",this.notice=null,this.go(this.view==="sign-up"?"sign-up":"sign-in")),i?.type==="reset-password"&&this.step!=="reset-password"&&(this.recovery={userId:i.userId,secret:i.secret},this.go("reset-password")),i?.type==="oauth-failed"&&(this.notice={tone:"error",message:this.t("errorOAuth")}),i?.type==="notice"&&!this.notice&&(this.notice={tone:i.tone==="error"?"error":i.tone,message:i.message})}dismissNotice(){this.notice=null,this.auth.pending?.type==="notice"&&x.setPending(null)}go(e){e==="sign-up"&&this.config?.signUp===!1&&(e="sign-in"),this.focusOnStep=!0,this.step=e,this.error="",this.notice=null,this.busy=!1,this.showPassword=!1,this.password="",this.passwordConfirm="",e!=="mfa"&&(this.challenge=null),e!=="email-otp"&&e!=="phone"&&e!=="magic-url"&&(this.token=null),this.fire("authui-view",{view:e})}async run(e,i="link"){if(!this.busy){this.busy=!0,this.error="";try{await e()}catch(t){this.error=pt(t,this.strings,i)}finally{this.busy=!1}}}requireValid(e){const i=e.target;return!(i&&typeof i.reportValidity=="function"&&!i.reportValidity())}bind(e){return i=>{this[e]=i.target.value}}render(){const e=this.renderStep();return b`
|
|
1105
|
+
</svg>`,_={mail:ae(G`<rect width="20" height="16" x="2" y="4" rx="2"/><path d="m22 7-8.97 5.7a1.94 1.94 0 0 1-2.06 0L2 7"/>`),phone:ae(G`<path d="M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z"/>`),user:ae(G`<path d="M19 21v-2a4 4 0 0 0-4-4H9a4 4 0 0 0-4 4v2"/><circle cx="12" cy="7" r="4"/>`),userX:ae(G`<path d="M2 21a8 8 0 0 1 11.873-7"/><circle cx="10" cy="8" r="5"/><path d="m17 17 5 5"/><path d="m22 17-5 5"/>`),lock:ae(G`<rect width="18" height="11" x="3" y="11" rx="2" ry="2"/><path d="M7 11V7a5 5 0 0 1 10 0v4"/>`),key:ae(G`<path d="m15.5 7.5 2.3 2.3a1 1 0 0 0 1.4 0l2.1-2.1a1 1 0 0 0 0-1.4L19 4"/><path d="m21 2-9.6 9.6"/><circle cx="7.5" cy="15.5" r="5.5"/>`),shield:ae(G`<path d="M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z"/>`),shieldCheck:ae(G`<path d="M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z"/><path d="m9 12 2 2 4-4"/>`),smartphone:ae(G`<rect width="14" height="20" x="5" y="2" rx="2" ry="2"/><path d="M12 18h.01"/>`),monitor:ae(G`<rect width="20" height="14" x="2" y="3" rx="2"/><line x1="8" x2="16" y1="21" y2="21"/><line x1="12" x2="12" y1="17" y2="21"/>`),globe:ae(G`<circle cx="12" cy="12" r="10"/><path d="M12 2a14.5 14.5 0 0 0 0 20 14.5 14.5 0 0 0 0-20"/><path d="M2 12h20"/>`),logOut:ae(G`<path d="M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4"/><polyline points="16 17 21 12 16 7"/><line x1="21" x2="9" y1="12" y2="12"/>`),settings:ae(G`<path d="M12.22 2h-.44a2 2 0 0 0-2 2v.18a2 2 0 0 1-1 1.73l-.43.25a2 2 0 0 1-2 0l-.15-.08a2 2 0 0 0-2.73.73l-.22.38a2 2 0 0 0 .73 2.73l.15.1a2 2 0 0 1 1 1.72v.51a2 2 0 0 1-1 1.74l-.15.09a2 2 0 0 0-.73 2.73l.22.38a2 2 0 0 0 2.73.73l.15-.08a2 2 0 0 1 2 0l.43.25a2 2 0 0 1 1 1.73V20a2 2 0 0 0 2 2h.44a2 2 0 0 0 2-2v-.18a2 2 0 0 1 1-1.73l.43-.25a2 2 0 0 1 2 0l.15.08a2 2 0 0 0 2.73-.73l.22-.39a2 2 0 0 0-.73-2.73l-.15-.08a2 2 0 0 1-1-1.74v-.5a2 2 0 0 1 1-1.74l.15-.09a2 2 0 0 0 .73-2.73l-.22-.38a2 2 0 0 0-2.73-.73l-.15.08a2 2 0 0 1-2 0l-.43-.25a2 2 0 0 1-1-1.73V4a2 2 0 0 0-2-2z"/><circle cx="12" cy="12" r="3"/>`),x:ae(G`<path d="M18 6 6 18"/><path d="m6 6 12 12"/>`),check:ae(G`<path d="M20 6 9 17l-5-5"/>`),users:ae(G`<path d="M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2"/><circle cx="9" cy="7" r="4"/><path d="M22 21v-2a4 4 0 0 0-3-3.87"/><path d="M16 3.13a4 4 0 0 1 0 7.75"/>`),copy:ae(G`<rect width="14" height="14" x="8" y="8" rx="2" ry="2"/><path d="M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2"/>`),eye:ae(G`<path d="M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0"/><circle cx="12" cy="12" r="3"/>`),eyeOff:ae(G`<path d="M10.733 5.076a10.744 10.744 0 0 1 11.205 6.575 1 1 0 0 1 0 .696 10.747 10.747 0 0 1-1.444 2.49"/><path d="M14.084 14.158a3 3 0 0 1-4.242-4.242"/><path d="M17.479 17.499a10.75 10.75 0 0 1-15.417-5.151 1 1 0 0 1 0-.696 10.75 10.75 0 0 1 4.446-5.143"/><path d="m2 2 20 20"/>`),arrowLeft:ae(G`<path d="m12 19-7-7 7-7"/><path d="M19 12H5"/>`),alert:ae(G`<circle cx="12" cy="12" r="10"/><line x1="12" x2="12" y1="8" y2="12"/><line x1="12" x2="12.01" y1="16" y2="16"/>`),info:ae(G`<circle cx="12" cy="12" r="10"/><path d="M12 16v-4"/><path d="M12 8h.01"/>`),checkCircle:ae(G`<circle cx="12" cy="12" r="10"/><path d="m9 12 2 2 4-4"/>`),link:ae(G`<path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"/><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"/>`),activity:ae(G`<path d="M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.25.25 0 0 1-.48 0L9.24 2.18a.25.25 0 0 0-.48 0l-2.35 8.36A2 2 0 0 1 4.49 12H2"/>`),trash:ae(G`<path d="M3 6h18"/><path d="M19 6v14c0 1-1 2-2 2H7c-1 0-2-1-2-2V6"/><path d="M8 6V4c0-1 1-2 2-2h4c1 0 2 1 2 2v2"/>`),sparkles:ae(G`<path d="M9.937 15.5A2 2 0 0 0 8.5 14.063l-6.135-1.582a.5.5 0 0 1 0-.962L8.5 9.936A2 2 0 0 0 9.937 8.5l1.582-6.135a.5.5 0 0 1 .963 0L14.063 8.5A2 2 0 0 0 15.5 9.937l6.135 1.581a.5.5 0 0 1 0 .964L15.5 14.063a2 2 0 0 0-1.437 1.437l-1.582 6.135a.5.5 0 0 1-.963 0z"/>`),refresh:ae(G`<path d="M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8"/><path d="M21 3v5h-5"/><path d="M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16"/><path d="M8 16H3v5"/>`),chevronDown:ae(G`<path d="m6 9 6 6 6-6"/>`),ghost:ae(G`<path d="M9 10h.01"/><path d="M15 10h.01"/><path d="M12 2a8 8 0 0 0-8 8v12l3-3 2.5 2.5L12 19l2.5 2.5L17 19l3 3V10a8 8 0 0 0-8-8z"/>`),qr:ae(G`<rect width="5" height="5" x="3" y="3" rx="1"/><rect width="5" height="5" x="16" y="3" rx="1"/><rect width="5" height="5" x="3" y="16" rx="1"/><path d="M21 16h-3a2 2 0 0 0-2 2v3"/><path d="M21 21v.01"/><path d="M12 7v3a2 2 0 0 1-2 2H7"/><path d="M3 12h.01"/><path d="M12 3h.01"/><path d="M12 16v.01"/><path d="M16 12h1"/><path d="M21 12v.01"/><path d="M12 21v-1"/>`)},fe=(n,e="0 0 24 24")=>w`<svg xmlns="http://www.w3.org/2000/svg" viewBox=${e} aria-hidden="true">${n}</svg>`,Ho={google:fe(G`<path fill="#4285F4" d="M23.49 12.27c0-.79-.07-1.54-.19-2.27H12v4.51h6.47a5.57 5.57 0 0 1-2.4 3.58v3h3.86c2.26-2.09 3.56-5.17 3.56-8.82z"/><path fill="#34A853" d="M12 24c3.24 0 5.95-1.08 7.93-2.91l-3.86-3c-1.08.72-2.45 1.16-4.07 1.16-3.13 0-5.78-2.11-6.73-4.96H1.29v3.09A11.99 11.99 0 0 0 12 24z"/><path fill="#FBBC05" d="M5.27 14.29A7.2 7.2 0 0 1 4.89 12c0-.8.14-1.57.38-2.29V6.62H1.29A11.97 11.97 0 0 0 0 12c0 1.94.46 3.77 1.29 5.38l3.98-3.09z"/><path fill="#EA4335" d="M12 4.75c1.77 0 3.35.61 4.6 1.8l3.42-3.42C17.95 1.19 15.24 0 12 0 7.31 0 3.26 2.69 1.29 6.62l3.98 3.09C6.22 6.86 8.87 4.75 12 4.75z"/>`),github:fe(G`<path fill="currentColor" d="M12 0C5.37 0 0 5.37 0 12c0 5.31 3.435 9.795 8.205 11.385.6.105.825-.255.825-.57 0-.285-.015-1.23-.015-2.235-3.015.555-3.795-.735-4.035-1.41-.135-.345-.72-1.41-1.23-1.695-.42-.225-1.02-.78-.015-.795.945-.015 1.62.87 1.845 1.23 1.08 1.815 2.805 1.305 3.495.99.105-.78.42-1.305.765-1.605-2.67-.3-5.46-1.335-5.46-5.925 0-1.305.465-2.385 1.23-3.225-.12-.3-.54-1.53.12-3.18 0 0 1.005-.315 3.3 1.23.96-.27 1.98-.405 3-.405s2.04.135 3 .405c2.295-1.56 3.3-1.23 3.3-1.23.66 1.65.24 2.88.12 3.18.765.84 1.23 1.905 1.23 3.225 0 4.605-2.805 5.625-5.475 5.925.435.375.81 1.095.81 2.22 0 1.605-.015 2.895-.015 3.3 0 .315.225.69.825.57A12.02 12.02 0 0 0 24 12c0-6.63-5.37-12-12-12z"/>`),apple:fe(G`<path fill="currentColor" d="M17.05 20.28c-.98.95-2.05.8-3.08.35-1.09-.46-2.09-.48-3.24 0-1.44.62-2.2.44-3.06-.35C2.79 15.25 3.51 7.59 9.05 7.31c1.35.07 2.29.74 3.08.8 1.18-.24 2.31-.93 3.57-.84 1.51.12 2.65.72 3.4 1.8-3.12 1.87-2.38 5.98.48 7.13-.57 1.5-1.31 2.99-2.54 4.09zM12.03 7.25c-.15-2.23 1.66-4.07 3.74-4.25.29 2.58-2.34 4.5-3.74 4.25z"/>`),facebook:fe(G`<path fill="#1877F2" d="M24 12.073c0-6.627-5.373-12-12-12s-12 5.373-12 12c0 5.99 4.388 10.954 10.125 11.854v-8.385H7.078v-3.47h3.047V9.43c0-3.007 1.792-4.669 4.533-4.669 1.312 0 2.686.235 2.686.235v2.953H15.83c-1.491 0-1.956.925-1.956 1.874v2.25h3.328l-.532 3.47h-2.796v8.385C19.612 23.027 24 18.062 24 12.073z"/>`),x:fe(G`<path fill="currentColor" d="M18.244 2.25h3.308l-7.227 8.26 8.502 11.24H16.17l-5.214-6.817L4.99 21.75H1.68l7.73-8.835L1.254 2.25H8.08l4.713 6.231zm-1.161 17.52h1.833L7.084 4.126H5.117z"/>`),microsoft:fe(G`<path fill="#F25022" d="M1 1h10v10H1z"/><path fill="#7FBA00" d="M13 1h10v10H13z"/><path fill="#00A4EF" d="M1 13h10v10H1z"/><path fill="#FFB900" d="M13 13h10v10H13z"/>`),discord:fe(G`<path fill="#5865F2" d="M20.317 4.37a19.791 19.791 0 0 0-4.885-1.515.074.074 0 0 0-.079.037c-.21.375-.444.864-.608 1.25a18.27 18.27 0 0 0-5.487 0 12.64 12.64 0 0 0-.617-1.25.077.077 0 0 0-.079-.037A19.736 19.736 0 0 0 3.677 4.37a.07.07 0 0 0-.032.027C.533 9.046-.32 13.58.099 18.057a.082.082 0 0 0 .031.057 19.9 19.9 0 0 0 5.993 3.03.078.078 0 0 0 .084-.028c.462-.63.874-1.295 1.226-1.994a.076.076 0 0 0-.041-.106 13.107 13.107 0 0 1-1.872-.892.077.077 0 0 1-.008-.128 10.2 10.2 0 0 0 .372-.292.074.074 0 0 1 .077-.01c3.928 1.793 8.18 1.793 12.062 0a.074.074 0 0 1 .078.01c.12.098.246.198.373.292a.077.077 0 0 1-.006.127 12.299 12.299 0 0 1-1.873.892.077.077 0 0 0-.041.107c.36.698.772 1.362 1.225 1.993a.076.076 0 0 0 .084.028 19.839 19.839 0 0 0 6.002-3.03.077.077 0 0 0 .032-.054c.5-5.177-.838-9.674-3.549-13.66a.061.061 0 0 0-.031-.03zM8.02 15.33c-1.183 0-2.157-1.085-2.157-2.419 0-1.333.956-2.419 2.157-2.419 1.21 0 2.176 1.096 2.157 2.42 0 1.333-.956 2.418-2.157 2.418zm7.975 0c-1.183 0-2.157-1.085-2.157-2.419 0-1.333.955-2.419 2.157-2.419 1.21 0 2.176 1.096 2.157 2.42 0 1.333-.946 2.418-2.157 2.418z"/>`),gitlab:fe(G`<path fill="#FC6D26" d="m23.6 9.593-.033-.086L20.3.98a.851.851 0 0 0-.336-.405.876.876 0 0 0-1.001.054.874.874 0 0 0-.29.44l-2.205 6.748H7.535L5.33 1.069a.857.857 0 0 0-.29-.441.876.876 0 0 0-1.001-.054.86.86 0 0 0-.336.405L.436 9.502l-.032.086a6.066 6.066 0 0 0 2.012 7.01l.011.009.03.021 4.976 3.727 2.462 1.863 1.5 1.132a1.009 1.009 0 0 0 1.22 0l1.5-1.132 2.461-1.863 5.006-3.75.013-.01a6.068 6.068 0 0 0 2.006-7.002z"/>`),linkedin:fe(G`<path fill="#0A66C2" d="M20.447 20.452h-3.554v-5.569c0-1.328-.027-3.037-1.852-3.037-1.853 0-2.136 1.445-2.136 2.939v5.667H9.351V9h3.414v1.561h.046c.477-.9 1.637-1.85 3.37-1.85 3.601 0 4.267 2.37 4.267 5.455v6.286zM5.337 7.433a2.062 2.062 0 0 1-2.063-2.065 2.064 2.064 0 1 1 2.063 2.065zm1.782 13.019H3.555V9h3.564v11.452zM22.225 0H1.771C.792 0 0 .774 0 1.729v20.542C0 23.227.792 24 1.771 24h20.451C23.2 24 24 23.227 24 22.271V1.729C24 .774 23.2 0 22.222 0h.003z"/>`),slack:fe(G`<path fill="#E01E5A" d="M5.042 15.165a2.528 2.528 0 0 1-2.52 2.523A2.528 2.528 0 0 1 0 15.165a2.527 2.527 0 0 1 2.522-2.52h2.52v2.52zm1.271 0a2.527 2.527 0 0 1 2.521-2.52 2.527 2.527 0 0 1 2.521 2.52v6.313A2.528 2.528 0 0 1 8.834 24a2.528 2.528 0 0 1-2.521-2.522v-6.313z"/><path fill="#36C5F0" d="M8.834 5.042a2.528 2.528 0 0 1-2.521-2.52A2.528 2.528 0 0 1 8.834 0a2.528 2.528 0 0 1 2.521 2.522v2.52H8.834zm0 1.271a2.528 2.528 0 0 1 2.521 2.521 2.528 2.528 0 0 1-2.521 2.521H2.522A2.528 2.528 0 0 1 0 8.834a2.528 2.528 0 0 1 2.522-2.521h6.312z"/><path fill="#2EB67D" d="M18.956 8.834a2.528 2.528 0 0 1 2.522-2.521A2.528 2.528 0 0 1 24 8.834a2.528 2.528 0 0 1-2.522 2.521h-2.522V8.834zm-1.27 0a2.528 2.528 0 0 1-2.523 2.521 2.527 2.527 0 0 1-2.52-2.521V2.522A2.527 2.527 0 0 1 15.163 0a2.528 2.528 0 0 1 2.523 2.522v6.312z"/><path fill="#ECB22E" d="M15.163 18.956a2.528 2.528 0 0 1 2.523 2.522A2.528 2.528 0 0 1 15.163 24a2.527 2.527 0 0 1-2.52-2.522v-2.522h2.52zm0-1.27a2.527 2.527 0 0 1-2.52-2.523 2.526 2.526 0 0 1 2.52-2.52h6.315A2.527 2.527 0 0 1 24 15.163a2.528 2.528 0 0 1-2.522 2.523h-6.315z"/>`),twitch:fe(G`<path fill="#9146FF" d="M11.571 4.714h1.715v5.143H11.57zm4.715 0H18v5.143h-1.714zM6 0 1.714 4.286v15.428h5.143V24l4.286-4.286h3.428L22.286 12V0zm14.571 11.143-3.428 3.428h-3.429l-3 3v-3H6.857V1.714h13.714Z"/>`),spotify:fe(G`<path fill="#1DB954" d="M12 0C5.4 0 0 5.4 0 12s5.4 12 12 12 12-5.4 12-12S18.66 0 12 0zm5.521 17.34c-.24.359-.66.48-1.021.24-2.82-1.74-6.36-2.101-10.561-1.141-.418.122-.779-.179-.899-.539-.12-.421.18-.78.54-.9 4.56-1.021 8.52-.6 11.64 1.32.42.18.479.659.301 1.02zm1.44-3.3c-.301.42-.841.6-1.262.3-3.239-1.98-8.159-2.58-11.939-1.38-.479.12-1.02-.12-1.14-.6-.12-.48.12-1.021.6-1.141C9.6 9.9 15 10.561 18.72 12.84c.361.181.54.78.241 1.2zm.12-3.36C15.24 8.4 8.82 8.16 5.16 9.301c-.6.179-1.2-.181-1.38-.721-.18-.601.18-1.2.72-1.381 4.26-1.26 11.28-1.02 15.721 1.621.539.3.719 1.02.419 1.56-.299.421-1.02.599-1.559.3z"/>`),notion:fe(G`<path fill="currentColor" d="M4.459 4.208c.746.606 1.026.56 2.428.466l13.215-.793c.28 0 .047-.28-.046-.326L17.86 1.968c-.42-.326-.981-.7-2.055-.607L3.01 2.295c-.466.046-.56.28-.374.466zm.793 3.08v13.904c0 .747.373 1.027 1.214.98l14.523-.84c.841-.046.935-.56.935-1.167V6.354c0-.606-.233-.933-.748-.887l-15.177.887c-.56.047-.747.327-.747.933zm14.337.745c.093.42 0 .84-.42.888l-.7.14v10.264c-.608.327-1.168.514-1.635.514-.748 0-.935-.234-1.495-.933l-4.577-7.186v6.952L12.21 19s0 .84-1.168.84l-3.222.186c-.093-.186 0-.653.327-.746l.84-.233V9.854L7.822 9.76c-.094-.42.14-1.026.793-1.073l3.456-.233 4.764 7.279v-6.44l-1.215-.139c-.093-.514.28-.887.747-.933zM1.936 1.035l13.31-.98c1.634-.14 2.055-.047 3.082.7l4.249 2.986c.7.513.934.653.934 1.213v16.378c0 1.026-.373 1.634-1.68 1.726l-15.458.934c-.98.047-1.448-.093-1.962-.747l-3.129-4.06c-.56-.747-.793-1.306-.793-1.96V2.667c0-.839.374-1.54 1.447-1.632z"/>`),dropbox:fe(G`<path fill="#0061FF" d="M6 1.807 0 5.629l6 3.822 6.001-3.822L6 1.807zm12 0-6 3.822 6 3.822 6-3.822-6-3.822zM0 13.274l6 3.822 6.001-3.822L6 9.452l-6 3.822zm18-3.822-6 3.822 6 3.822 6-3.822-6-3.822zM6 18.371l6.001 3.822 6-3.822-6-3.822L6 18.371z"/>`),figma:fe(G`<path fill="#F24E1E" d="M8 24a4 4 0 0 0 4-4v-4H8a4 4 0 0 0 0 8z"/><path fill="#A259FF" d="M4 12a4 4 0 0 1 4-4h4v8H8a4 4 0 0 1-4-4z"/><path fill="#FF7262" d="M4 4a4 4 0 0 1 4-4h4v8H8a4 4 0 0 1-4-4z"/><path fill="#1ABCFE" d="M12 0h4a4 4 0 0 1 0 8h-4V0z"/><path fill="#0ACF83" d="M20 12a4 4 0 1 1-8 0 4 4 0 0 1 8 0z"/>`),bitbucket:fe(G`<path fill="#2684FF" d="M.778 1.213a.768.768 0 0 0-.768.892l3.263 19.81c.084.5.515.868 1.022.873H19.95a.772.772 0 0 0 .77-.646l3.27-20.03a.768.768 0 0 0-.768-.891zM14.52 15.53H9.522L8.17 8.466h7.561z"/>`),amazon:fe(G`<path fill="currentColor" d="M.045 18.02c.072-.116.187-.124.348-.022 3.636 2.11 7.594 3.166 11.87 3.166 2.852 0 5.668-.533 8.447-1.595l.315-.14c.138-.06.234-.1.293-.13.226-.088.39-.046.525.13.12.174.09.336-.12.48-.256.19-.6.41-1.006.654-1.244.743-2.64 1.316-4.185 1.726a17.617 17.617 0 0 1-10.951-.577 17.88 17.88 0 0 1-5.43-3.35c-.1-.074-.151-.15-.151-.22 0-.047.021-.09.051-.13zm6.565-6.218c0-1.005.247-1.863.743-2.577.495-.71 1.17-1.25 2.04-1.615.796-.335 1.756-.575 2.912-.72.39-.046 1.033-.103 1.92-.174v-.37c0-.93-.105-1.558-.3-1.875-.302-.43-.78-.65-1.44-.65h-.182c-.48.046-.896.196-1.246.46-.35.27-.575.63-.675 1.096-.06.3-.206.465-.435.51l-2.52-.315c-.248-.06-.372-.18-.372-.39 0-.046.007-.09.022-.15.247-1.29.855-2.25 1.82-2.88.976-.616 2.1-.975 3.39-1.05h.54c1.65 0 2.957.434 3.888 1.29.135.15.27.3.405.48.12.165.224.314.283.45.075.134.15.33.195.57.06.254.105.42.135.51.03.104.062.3.076.615.01.313.02.493.02.553v5.28c0 .376.06.72.165 1.036.105.313.21.54.315.674l.51.674c.09.136.136.256.136.36 0 .12-.06.226-.18.314-1.2 1.05-1.86 1.62-1.963 1.71-.165.135-.373.15-.61.045a6.62 6.62 0 0 1-.526-.496l-.31-.347a9.858 9.858 0 0 1-.317-.42l-.3-.435c-.81.886-1.603 1.44-2.4 1.665-.494.15-1.093.227-1.83.227-1.11 0-2.04-.343-2.76-1.034-.72-.69-1.08-1.665-1.08-2.94l-.05-.076zm3.753-.438c0 .566.14 1.02.425 1.364.285.34.675.512 1.155.512.045 0 .106-.007.195-.02.09-.016.134-.023.166-.023.614-.16 1.08-.553 1.424-1.178.165-.28.285-.58.36-.91.09-.32.12-.59.135-.8.015-.195.015-.54.015-1.005v-.54c-.84 0-1.484.06-1.92.18-1.275.36-1.92 1.17-1.92 2.43l-.035-.01zm9.162 7.027c.03-.06.075-.11.132-.17.362-.243.714-.41 1.05-.5a8.094 8.094 0 0 1 1.612-.24c.14-.012.28 0 .41.03.65.06 1.05.168 1.172.33.063.09.099.228.099.39v.15c0 .51-.149 1.11-.424 1.8-.278.69-.664 1.248-1.156 1.68-.073.06-.14.09-.197.09-.03 0-.06 0-.09-.012-.09-.044-.107-.12-.064-.24.54-1.26.806-2.143.806-2.64 0-.15-.03-.27-.087-.344-.145-.166-.55-.257-1.224-.257-.243 0-.533.016-.87.045-.363.045-.7.09-1 .135-.09 0-.148-.014-.18-.044-.03-.03-.036-.06-.02-.106 0-.014.007-.03.02-.06z"/>`),paypal:fe(G`<path fill="#003087" d="M7.076 21.337H2.47a.641.641 0 0 1-.633-.74L4.944.901C5.026.382 5.474 0 5.998 0h7.46c2.57 0 4.578.543 5.69 1.81 1.01 1.15 1.304 2.42 1.012 4.287-.023.143-.047.288-.077.437-.983 5.05-4.349 6.797-8.647 6.797h-2.19c-.524 0-.968.382-1.05.9l-1.12 7.106zm14.146-14.42a3.35 3.35 0 0 0-.607-.541c-.013.076-.026.175-.041.254-.93 4.778-4.005 7.201-9.138 7.201h-2.19a.563.563 0 0 0-.556.479l-1.187 7.527h-.506l-.24 1.516a.56.56 0 0 0 .554.647h3.882c.46 0 .85-.334.922-.788.06-.26.76-4.852.816-5.09a.932.932 0 0 1 .923-.788h.58c3.76 0 6.705-1.528 7.565-5.946.36-1.847.174-3.388-.777-4.471z"/>`)};function Ct(n){return Ho[n]??_.globe}function fi(n){const e=(n.trim()[0]??"?").toUpperCase();return/[A-Z0-9]/i.test(e)?e:_.user}function it(n){typeof document>"u"||(document.querySelector("authui-modal")||document.body.appendChild(document.createElement("authui-modal")),queueMicrotask(()=>{window.dispatchEvent(new CustomEvent("authui:open",{detail:{view:n}}))}))}function rn(){typeof window>"u"||window.dispatchEvent(new CustomEvent("authui:close"))}function Ut(n){const e={length:n.length>=8,long:n.length>=12,lower:/[a-z]/.test(n),upper:/[A-Z]/.test(n),number:/\d/.test(n),symbol:/[^A-Za-z0-9]/.test(n)};if(!n)return{level:0,percent:0,labelKey:"passwordStrengthTooWeak",checks:e};let i=0;e.length&&(i+=1),e.long&&(i+=1),e.lower&&e.upper&&(i+=1),e.number&&(i+=1),e.symbol&&(i+=1),n.length<8?i=Math.min(i,1):n.length<10&&(i=Math.min(i,3));let t,o;return!e.length||i<=1?(t=1,o="passwordStrengthTooWeak"):i===2?(t=2,o="passwordStrengthWeak"):i===3?(t=3,o="passwordStrengthFair"):i>=5&&e.long&&e.lower&&e.upper&&e.number&&e.symbol?(t=4,o="passwordStrengthVeryStrong"):(t=4,o="passwordStrengthStrong"),{level:t,percent:t*25,labelKey:o,checks:e}}var Do=Object.defineProperty,Bo=Object.getOwnPropertyDescriptor,ve=(n,e,i,t)=>{for(var o=t>1?void 0:t?Bo(e,i):e,a=n.length-1,s;a>=0;a--)(s=n[a])&&(o=(t?s(e,i,o):s(o))||o);return t&&o&&Do(e,i,o),o};k.AuthUISignIn=class extends Ce{constructor(){super(...arguments),this.view="sign-in",this.embedded=!1,this.step="sign-in",this.busy=!1,this.error="",this.notice=null,this.showPassword=!1,this.expandedOAuth=null,this.token=null,this.focusOnStep=!1,this.resendCooldownUntil=0,this.challenge=null,this.recovery=null,this.email="",this.password="",this.passwordConfirm="",this.name="",this.phone="",this.code="",this.onSignIn=e=>{e.preventDefault(),this.requireValid(e)&&this.run(async()=>{await E.signInWithEmailPassword(this.email,this.password),this.password="",tt("email-password"),this.fire("authui-success",{method:"email-password"})})},this.onSignUp=e=>{e.preventDefault(),this.requireValid(e)&&this.run(async()=>{await E.signUp(this.email,this.password,this.name),this.password="",tt("email-password"),this.fire("authui-success",{method:"sign-up"})})},this.onGuest=()=>{this.run(async()=>{await E.signInAnonymously(),tt("anonymous"),this.fire("authui-success",{method:"anonymous"})})},this.onOAuth=e=>{this.run(async()=>{if(Oi(e),await E.signInWithOAuth(e),E.isPreview){di(),this.fire("authui-success",{method:"oauth"});return}await new Promise(i=>setTimeout(i,4e3))})},this.onForgot=e=>{e.preventDefault(),this.requireValid(e)&&this.run(async()=>{await E.sendPasswordRecovery(this.email),this.notice={tone:"success",message:this.t("resetLinkSent",{email:this.email})}})},this.onReset=e=>{if(e.preventDefault(),!this.requireValid(e))return;if(this.password!==this.passwordConfirm){this.error=this.t("errorPasswordMismatch");return}const i=this.recovery;i&&this.run(async()=>{await E.completePasswordRecovery(i.userId,i.secret,this.password),this.password="",this.passwordConfirm="",this.recovery=null,this.auth.pending?.type==="reset-password"&&E.setPending(null),this.go("sign-in"),this.notice={tone:"success",message:this.t("passwordUpdated")}})},this.onMagicUrl=e=>{e.preventDefault(),this.requireValid(e)&&this.run(async()=>{const i=await E.sendMagicUrl(this.email);this.token={userId:i.userId,kind:"magic-url",target:this.email,phrase:i.phrase}})},this.onEmailOtp=e=>{e.preventDefault(),this.requireValid(e)&&this.run(async()=>{const i=await E.sendEmailOtp(this.email);this.token={userId:i.userId,kind:"email-otp",target:this.email,phrase:i.phrase},this.code=""})},this.onPhoneOtp=e=>{e.preventDefault(),this.requireValid(e)&&this.run(async()=>{const i=await E.sendPhoneOtp(this.phone);this.token={userId:i.userId,kind:"phone",target:this.phone},this.code=""})},this.onVerifyCode=e=>{if(e.preventDefault(),!this.requireValid(e))return;const i=this.token;i&&this.run(async()=>{await E.signInWithToken(i.userId,this.code),this.code="",this.token=null,tt(i.kind),this.fire("authui-success",{method:i.kind})},"code")},this.onChooseFactor=e=>{this.run(async()=>{const i=await E.createMfaChallenge(e);this.challenge={id:i.$id,factor:e},this.code=""})},this.onVerifyFactor=e=>{if(e.preventDefault(),!this.requireValid(e))return;const i=this.challenge;i&&this.run(async()=>{await E.completeMfaChallenge(i.id,this.code),this.code="",this.challenge=null,this.go("sign-in"),this.fire("authui-success",{method:"mfa"})},"code")},this.onCancelMfa=()=>{this.run(async()=>{try{await E.signOut()}catch(e){if(!ut(e,ee.sessionNotFound))throw e}this.go("sign-in")})},this.onSignOut=()=>{this.run(()=>E.signOut())}}connectedCallback(){super.connectedCallback(),this.step=this.view,this.syncFromStore()}willUpdate(e){e.has("view")&&e.get("view")!==void 0&&this.go(this.view),e.has("auth")&&this.syncFromStore()}updated(e){e.has("step")&&(this.focusOnStep||this.embedded)&&(this.focusOnStep=!1,requestAnimationFrame(()=>this.firstInput?.focus()))}syncFromStore(){const{status:e,pending:i}=this.auth;e==="mfa-required"&&this.step!=="mfa"&&this.go("mfa");const t=this.step==="reset-password"||i?.type==="reset-password"||this.recovery!==null;(e==="signed-in"||e==="signed-out")&&!t&&(this.step==="mfa"||this.step==="phone"||this.step==="email-otp"||this.step==="magic-url"||this.step==="forgot-password"||this.token!==null||this.challenge!==null||e==="signed-out")&&(this.token=null,this.challenge=null,this.code="",this.password="",this.notice=null,this.go(this.view==="sign-up"?"sign-up":"sign-in")),i?.type==="reset-password"&&this.step!=="reset-password"&&(this.recovery={userId:i.userId,secret:i.secret},this.go("reset-password")),i?.type==="oauth-failed"&&(this.notice={tone:"error",message:this.t("errorOAuth")}),i?.type==="notice"&&!this.notice&&(this.notice={tone:i.tone==="error"?"error":i.tone,message:i.message})}dismissNotice(){this.notice=null,this.auth.pending?.type==="notice"&&E.setPending(null)}go(e){e==="sign-up"&&this.config?.signUp===!1&&(e="sign-in"),this.focusOnStep=!0,this.step=e,this.error="",this.notice=null,this.busy=!1,this.showPassword=!1,this.password="",this.passwordConfirm="",e!=="mfa"&&(this.challenge=null),e!=="email-otp"&&e!=="phone"&&e!=="magic-url"&&(this.token=null),this.fire("authui-view",{view:e})}async run(e,i="link"){if(!this.busy){this.busy=!0,this.error="";try{await e()}catch(t){this.error=pt(t,this.strings,i)}finally{this.busy=!1}}}requireValid(e){const i=e.target;return!(i&&typeof i.reportValidity=="function"&&!i.reportValidity())}bind(e){return i=>{this[e]=i.target.value}}render(){const e=this.renderStep();return w`
|
|
962
1106
|
<div class="panel ${this.embedded?"embedded":""}" part="panel">
|
|
963
1107
|
${this.renderHeader()}
|
|
964
|
-
${this.notice?
|
|
1108
|
+
${this.notice?w`<div class="alert alert-${this.notice.tone}" role="status">
|
|
965
1109
|
${this.notice.tone==="success"?_.checkCircle:this.notice.tone==="error"?_.alert:_.info}
|
|
966
1110
|
<div class="alert-body">${this.notice.message}</div>
|
|
967
1111
|
<button
|
|
@@ -971,38 +1115,38 @@ var AuthUI=(function(S){"use strict";var xe;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
971
1115
|
>
|
|
972
1116
|
${_.x}
|
|
973
1117
|
</button>
|
|
974
|
-
</div>`:
|
|
1118
|
+
</div>`:M}
|
|
975
1119
|
${e}
|
|
976
1120
|
</div>
|
|
977
|
-
`}renderHeader(){const e=this.config?.branding?.logo,i=this.productName;let t="",o="";if(this.auth.status==="signed-in")t=this.t("signedInAs");else switch(this.step){case"sign-in":t=i?this.t("signInTitle",{name:i}):this.t("welcomeBack");break;case"sign-up":t=i?this.t("signUpTitle",{name:i}):this.t("createAccount");break;case"forgot-password":case"reset-password":t=this.t("resetPassword");break;case"magic-url":case"email-otp":t=this.t("continueWithEmail");break;case"phone":t=this.t("continueWithPhone");break;case"mfa":t=this.t("mfaTitle"),o=this.t("mfaDescription");break}return
|
|
1121
|
+
`}renderHeader(){const e=this.config?.branding?.logo,i=this.productName;let t="",o="";if(this.auth.status==="signed-in")t=this.t("signedInAs");else switch(this.step){case"sign-in":t=i?this.t("signInTitle",{name:i}):this.t("welcomeBack");break;case"sign-up":t=i?this.t("signUpTitle",{name:i}):this.t("createAccount");break;case"forgot-password":case"reset-password":t=this.t("resetPassword");break;case"magic-url":case"email-otp":t=this.t("continueWithEmail");break;case"phone":t=this.t("continueWithPhone");break;case"mfa":t=this.t("mfaTitle"),o=this.t("mfaDescription");break}return w`
|
|
978
1122
|
<div class="header">
|
|
979
|
-
${e?
|
|
1123
|
+
${e?w`<img
|
|
980
1124
|
class="logo"
|
|
981
1125
|
src=${e}
|
|
982
1126
|
alt=""
|
|
983
1127
|
@error=${a=>{a.target.hidden=!0}}
|
|
984
|
-
/>`:
|
|
985
|
-
${
|
|
1128
|
+
/>`:M}
|
|
1129
|
+
${E.isPreview?w`<span class="badge badge-info preview">${this.t("preview")}</span>`:M}
|
|
986
1130
|
<h2 class="title" id="authui-title">${t}</h2>
|
|
987
|
-
${o?
|
|
1131
|
+
${o?w`<p class="description">${o}</p>`:M}
|
|
988
1132
|
</div>
|
|
989
|
-
`}renderError(){return this.error?
|
|
1133
|
+
`}renderError(){return this.error?w`<div class="alert alert-error" role="alert">
|
|
990
1134
|
${_.alert}
|
|
991
1135
|
<div class="alert-body">${this.error}</div>
|
|
992
|
-
</div>`:
|
|
993
|
-
${this.busy?
|
|
994
|
-
</button>`}passwordField(e){const i=this[e.field],t=e.meter?
|
|
1136
|
+
</div>`:M}submitButton(e,i="btn-primary"){return w`<button class="btn ${i} btn-block" type="submit" ?disabled=${this.busy}>
|
|
1137
|
+
${this.busy?w`<span class="spinner" aria-hidden="true"></span>`:M} ${e}
|
|
1138
|
+
</button>`}passwordField(e){const i=this[e.field],t=e.meter?Ut(i):null;return w`
|
|
995
1139
|
<div class="field">
|
|
996
|
-
<
|
|
997
|
-
|
|
998
|
-
${e.forgot?
|
|
1140
|
+
<div class="field-header">
|
|
1141
|
+
<label class="label" for=${e.id}>${e.label}</label>
|
|
1142
|
+
${e.forgot?w`<button
|
|
999
1143
|
type="button"
|
|
1000
1144
|
class="btn btn-link small"
|
|
1001
1145
|
@click=${()=>this.go("forgot-password")}
|
|
1002
1146
|
>
|
|
1003
1147
|
${this.t("forgotPassword")}
|
|
1004
|
-
</button>`:
|
|
1005
|
-
</
|
|
1148
|
+
</button>`:M}
|
|
1149
|
+
</div>
|
|
1006
1150
|
<div class="input-wrap">
|
|
1007
1151
|
<input
|
|
1008
1152
|
class="input"
|
|
@@ -1019,12 +1163,11 @@ var AuthUI=(function(S){"use strict";var xe;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
1019
1163
|
class="btn btn-ghost btn-icon"
|
|
1020
1164
|
@click=${()=>this.showPassword=!this.showPassword}
|
|
1021
1165
|
aria-label=${this.showPassword?this.t("hidePassword"):this.t("showPassword")}
|
|
1022
|
-
tabindex="-1"
|
|
1023
1166
|
>
|
|
1024
1167
|
${this.showPassword?_.eyeOff:_.eye}
|
|
1025
1168
|
</button>
|
|
1026
1169
|
</div>
|
|
1027
|
-
${t&&i?
|
|
1170
|
+
${t&&i?w`<div class="strength" aria-live="polite">
|
|
1028
1171
|
<div
|
|
1029
1172
|
class="strength-meter"
|
|
1030
1173
|
data-level=${String(t.level)}
|
|
@@ -1038,9 +1181,9 @@ var AuthUI=(function(S){"use strict";var xe;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
1038
1181
|
<span></span><span></span><span></span><span></span>
|
|
1039
1182
|
</div>
|
|
1040
1183
|
<p class="strength-label">${this.t(t.labelKey)}</p>
|
|
1041
|
-
</div>`:e.hint?
|
|
1184
|
+
</div>`:e.hint?w`<p class="hint">${e.hint}</p>`:M}
|
|
1042
1185
|
</div>
|
|
1043
|
-
`}emailField(e="email"){return
|
|
1186
|
+
`}emailField(e="email"){return w`
|
|
1044
1187
|
<div class="field">
|
|
1045
1188
|
<label class="label" for="authui-email">${this.t("email")}</label>
|
|
1046
1189
|
<input
|
|
@@ -1054,7 +1197,7 @@ var AuthUI=(function(S){"use strict";var xe;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
1054
1197
|
@input=${this.bind("email")}
|
|
1055
1198
|
/>
|
|
1056
1199
|
</div>
|
|
1057
|
-
`}codeField(){return
|
|
1200
|
+
`}codeField(){return w`
|
|
1058
1201
|
<div class="field">
|
|
1059
1202
|
<label class="label" for="authui-code">${this.t("code")}</label>
|
|
1060
1203
|
<input
|
|
@@ -1070,40 +1213,40 @@ var AuthUI=(function(S){"use strict";var xe;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
1070
1213
|
@input=${this.bind("code")}
|
|
1071
1214
|
/>
|
|
1072
1215
|
</div>
|
|
1073
|
-
`}legal(){const e=this.config?.legal;return!e?.termsUrl&&!e?.privacyUrl?
|
|
1216
|
+
`}legal(){const e=this.config?.legal;return!e?.termsUrl&&!e?.privacyUrl?M:w`<p class="legal">
|
|
1074
1217
|
${this.t("agreeTo")}
|
|
1075
|
-
${e.termsUrl?
|
|
1076
|
-
${e.termsUrl&&e.privacyUrl?
|
|
1077
|
-
${e.privacyUrl?
|
|
1078
|
-
</p>`}backLink(e="sign-in"){return
|
|
1218
|
+
${e.termsUrl?w`<a href=${e.termsUrl} target="_blank" rel="noopener">${this.t("terms")}</a>`:M}
|
|
1219
|
+
${e.termsUrl&&e.privacyUrl?w` ${this.t("and")} `:M}
|
|
1220
|
+
${e.privacyUrl?w`<a href=${e.privacyUrl} target="_blank" rel="noopener">${this.t("privacy")}</a>`:M}.
|
|
1221
|
+
</p>`}backLink(e="sign-in"){return w`<div class="links">
|
|
1079
1222
|
<button type="button" class="btn btn-link" @click=${()=>this.go(e)}>
|
|
1080
1223
|
${_.arrowLeft} ${this.t("back")}
|
|
1081
1224
|
</button>
|
|
1082
|
-
</div>`}renderStep(){if(this.auth.configError)return
|
|
1225
|
+
</div>`}renderStep(){if(this.auth.configError)return w`<div class="alert alert-error" role="alert">
|
|
1083
1226
|
${_.alert}
|
|
1084
1227
|
<div class="alert-body">${this.auth.configError}</div>
|
|
1085
|
-
</div>`;if(!this.auth.configured)return
|
|
1228
|
+
</div>`;if(!this.auth.configured)return w`<div class="alert alert-error" role="alert">
|
|
1086
1229
|
${_.alert}
|
|
1087
1230
|
<div class="alert-body">${this.t("errorNotConfigured")}</div>
|
|
1088
|
-
</div>`;if(this.auth.status==="loading")return
|
|
1231
|
+
</div>`;if(this.auth.status==="loading")return w`<div class="empty"><span class="spinner"></span></div>`;if(this.auth.status==="signed-in"&&this.step!=="mfa")return this.renderSignedIn();switch(this.step){case"sign-up":return this.config?.signUp===!1?this.renderSignIn():this.renderSignUp();case"forgot-password":return this.renderForgot();case"reset-password":return this.renderReset();case"magic-url":return this.renderMagicUrl();case"email-otp":return this.renderEmailOtp();case"phone":return this.renderPhone();case"mfa":return this.renderMfa();default:return this.renderSignIn()}}renderSignedIn(){const e=this.auth.user,i=e.name||e.email||e.phone||this.t("guestAccount");return w`
|
|
1089
1232
|
<div class="stack">
|
|
1090
1233
|
<div class="row">
|
|
1091
1234
|
<div class="inline">
|
|
1092
1235
|
<span class="avatar">${fi(i)}</span>
|
|
1093
1236
|
<div class="row-main">
|
|
1094
1237
|
<span class="row-title" title=${i}>${i}</span>
|
|
1095
|
-
${e.email&&e.name?
|
|
1238
|
+
${e.email&&e.name?w`<span class="row-sub" title=${e.email}>${e.email}</span>`:M}
|
|
1096
1239
|
</div>
|
|
1097
1240
|
</div>
|
|
1098
1241
|
</div>
|
|
1099
1242
|
${this.renderError()}
|
|
1100
1243
|
<div class="stack-sm">
|
|
1101
|
-
${this.config?.successUrl?
|
|
1244
|
+
${this.config?.successUrl?w`<a class="btn btn-primary btn-block" href=${this.config.successUrl}
|
|
1102
1245
|
>${this.t("continue")}</a
|
|
1103
|
-
>`:
|
|
1246
|
+
>`:M}
|
|
1104
1247
|
<button
|
|
1105
1248
|
class="btn btn-outline btn-block"
|
|
1106
|
-
@click=${()=>{this.embedded?this.fire("authui-open",{view:"account"}):
|
|
1249
|
+
@click=${()=>{this.embedded?this.fire("authui-open",{view:"account"}):it("account")}}
|
|
1107
1250
|
>
|
|
1108
1251
|
${_.settings} ${this.t("manageAccount")}
|
|
1109
1252
|
</button>
|
|
@@ -1112,71 +1255,97 @@ var AuthUI=(function(S){"use strict";var xe;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
1112
1255
|
</button>
|
|
1113
1256
|
</div>
|
|
1114
1257
|
</div>
|
|
1115
|
-
`}renderProviders(){const e=[...this.config?.methods?.oauth??[]];if(e.length===0)return
|
|
1116
|
-
|
|
1117
|
-
|
|
1118
|
-
|
|
1119
|
-
|
|
1120
|
-
|
|
1121
|
-
|
|
1122
|
-
|
|
1258
|
+
`}renderProviders(){const e=[...this.config?.methods?.oauth??[]];if(e.length===0)return M;const i=Ze(),t=e.find(a=>i===`oauth:${a}`)??null;if(e.length<=2){const a=[...e].sort((s,r)=>{const d=i===`oauth:${s}`?0:1,c=i===`oauth:${r}`?0:1;return d-c});return w`
|
|
1259
|
+
<div class="providers">
|
|
1260
|
+
${a.map(s=>{const r=i===`oauth:${s}`,d=this.t("continueWith",{provider:lt(s)});return w`<button
|
|
1261
|
+
type="button"
|
|
1262
|
+
class="btn btn-outline ${r?"last-used":""}"
|
|
1263
|
+
@click=${()=>this.onOAuth(s)}
|
|
1264
|
+
?disabled=${this.busy}
|
|
1265
|
+
aria-label=${r?`${d}. ${this.t("lastUsed")}`:d}
|
|
1266
|
+
>
|
|
1267
|
+
${Ct(s)}
|
|
1268
|
+
<span>${d}</span>
|
|
1269
|
+
${r?w`<span class="last-used-badge">${this.t("lastUsed")}</span>`:M}
|
|
1270
|
+
</button>`})}
|
|
1271
|
+
</div>
|
|
1272
|
+
`}const o=this.expandedOAuth&&e.includes(this.expandedOAuth)?this.expandedOAuth:t??e[0];return w`
|
|
1273
|
+
<div
|
|
1274
|
+
class="providers accordion"
|
|
1275
|
+
@mouseleave=${()=>{this.expandedOAuth=t??e[0]}}
|
|
1276
|
+
>
|
|
1277
|
+
${e.map(a=>{const s=i===`oauth:${a}`,r=o===a,d=this.t("continueWith",{provider:lt(a)});return w`<div
|
|
1278
|
+
class="provider-slot ${r?"is-expanded":""}"
|
|
1279
|
+
@mouseenter=${()=>{this.expandedOAuth=a}}
|
|
1123
1280
|
>
|
|
1124
|
-
|
|
1125
|
-
|
|
1126
|
-
|
|
1281
|
+
<button
|
|
1282
|
+
type="button"
|
|
1283
|
+
class="btn btn-outline"
|
|
1284
|
+
@click=${()=>this.onOAuth(a)}
|
|
1285
|
+
@focus=${()=>{this.expandedOAuth=a}}
|
|
1286
|
+
?disabled=${this.busy}
|
|
1287
|
+
aria-label=${s?`${d}. ${this.t("lastUsed")}`:d}
|
|
1127
1288
|
>
|
|
1128
|
-
|
|
1129
|
-
|
|
1289
|
+
${Ct(a)}
|
|
1290
|
+
<span class="provider-label"
|
|
1291
|
+
><span><span class="provider-label-text">${d}</span></span></span
|
|
1292
|
+
>
|
|
1293
|
+
${s?w`<span class="oauth-last-used" data-last-used=${a} aria-hidden="true">
|
|
1294
|
+
<span class="oauth-last-used-dot"></span>
|
|
1295
|
+
<span class="oauth-last-used-pill">${this.t("lastUsed")}</span>
|
|
1296
|
+
</span>`:M}
|
|
1297
|
+
</button>
|
|
1298
|
+
</div>`})}
|
|
1130
1299
|
</div>
|
|
1131
|
-
`}renderSignIn(){const e=this.config?.methods??{},i=e.emailPassword!==!1,t=(e.oauth?.length??0)>0,o=[e.magicUrl?{step:"magic-url",icon:_.link,label:this.t("sendMagicLink")}:null,e.emailOtp?{step:"email-otp",icon:_.mail,label:this.t("continueWithEmail")}:null,e.phone?{step:"phone",icon:_.smartphone,label:this.t("continueWithPhone")}:null].filter(Boolean);return
|
|
1300
|
+
`}renderSignIn(){const e=this.config?.methods??{},i=e.emailPassword!==!1,t=(e.oauth?.length??0)>0,o=[e.magicUrl?{step:"magic-url",icon:_.link,label:this.t("sendMagicLink")}:null,e.emailOtp?{step:"email-otp",icon:_.mail,label:this.t("continueWithEmail")}:null,e.phone?{step:"phone",icon:_.smartphone,label:this.t("continueWithPhone")}:null].filter(Boolean);return w`
|
|
1132
1301
|
<div class="stack">
|
|
1133
1302
|
${this.renderProviders()}
|
|
1134
|
-
${t&&(i||o.length>0)?
|
|
1135
|
-
${i?
|
|
1303
|
+
${t&&(i||o.length>0)?w`<div class="separator-text">${this.t("or")}</div>`:M}
|
|
1304
|
+
${i?w`<form
|
|
1136
1305
|
class="form ${Ze()==="email-password"?"last-used-form":""}"
|
|
1137
1306
|
@submit=${this.onSignIn}
|
|
1138
1307
|
novalidate
|
|
1139
1308
|
>
|
|
1140
|
-
${Ze()==="email-password"?
|
|
1309
|
+
${Ze()==="email-password"?w`<p class="hint">
|
|
1141
1310
|
<span class="last-used-badge">${this.t("lastUsed")}</span>
|
|
1142
|
-
</p>`:
|
|
1311
|
+
</p>`:M}
|
|
1143
1312
|
${this.emailField()}
|
|
1144
1313
|
${this.passwordField({label:this.t("password"),autocomplete:"current-password",id:"authui-password",field:"password",forgot:!0})}
|
|
1145
1314
|
${this.renderError()} ${this.submitButton(this.t("signIn"))}
|
|
1146
1315
|
</form>`:this.renderError()}
|
|
1147
|
-
${o.length>0?
|
|
1148
|
-
${o.map(a=>{const s=Ze()===a.step;return
|
|
1316
|
+
${o.length>0?w`<div class="stack-sm">
|
|
1317
|
+
${o.map(a=>{const s=Ze()===a.step;return w`<button
|
|
1149
1318
|
type="button"
|
|
1150
1319
|
class="btn btn-secondary btn-block ${s?"last-used":""}"
|
|
1151
1320
|
@click=${()=>this.go(a.step)}
|
|
1152
1321
|
>
|
|
1153
1322
|
${a.icon} ${a.label}
|
|
1154
|
-
${s?
|
|
1323
|
+
${s?w`<span class="last-used-badge">${this.t("lastUsed")}</span>`:M}
|
|
1155
1324
|
</button>`})}
|
|
1156
|
-
</div>`:
|
|
1157
|
-
${e.anonymous?
|
|
1325
|
+
</div>`:M}
|
|
1326
|
+
${e.anonymous?w`<button
|
|
1158
1327
|
type="button"
|
|
1159
1328
|
class="btn btn-ghost btn-block ${Ze()==="anonymous"?"last-used":""}"
|
|
1160
1329
|
@click=${this.onGuest}
|
|
1161
1330
|
?disabled=${this.busy}
|
|
1162
1331
|
>
|
|
1163
1332
|
${_.ghost} ${this.t("continueAsGuest")}
|
|
1164
|
-
${Ze()==="anonymous"?
|
|
1165
|
-
</button>`:
|
|
1166
|
-
${i&&this.config?.signUp!==!1?
|
|
1333
|
+
${Ze()==="anonymous"?w`<span class="last-used-badge">${this.t("lastUsed")}</span>`:M}
|
|
1334
|
+
</button>`:M}
|
|
1335
|
+
${i&&this.config?.signUp!==!1?w`<div class="links">
|
|
1167
1336
|
<span>${this.t("noAccount")}</span>
|
|
1168
1337
|
<button type="button" class="btn btn-link" @click=${()=>this.go("sign-up")}>
|
|
1169
1338
|
${this.t("signUp")}
|
|
1170
1339
|
</button>
|
|
1171
|
-
</div>`:
|
|
1340
|
+
</div>`:M}
|
|
1172
1341
|
${this.legal()}
|
|
1173
1342
|
</div>
|
|
1174
|
-
`}renderSignUp(){return
|
|
1343
|
+
`}renderSignUp(){return w`
|
|
1175
1344
|
<div class="stack">
|
|
1176
1345
|
${this.renderProviders()}
|
|
1177
|
-
${(this.config?.methods?.oauth?.length??0)>0?
|
|
1346
|
+
${(this.config?.methods?.oauth?.length??0)>0?w`<div class="separator-text">${this.t("or")}</div>`:M}
|
|
1178
1347
|
<form class="form" @submit=${this.onSignUp} novalidate>
|
|
1179
|
-
${this.config?.requireName!==!1?
|
|
1348
|
+
${this.config?.requireName!==!1?w`<div class="field">
|
|
1180
1349
|
<label class="label" for="authui-name">${this.t("name")}</label>
|
|
1181
1350
|
<input
|
|
1182
1351
|
class="input"
|
|
@@ -1187,7 +1356,7 @@ var AuthUI=(function(S){"use strict";var xe;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
1187
1356
|
.value=${this.name}
|
|
1188
1357
|
@input=${this.bind("name")}
|
|
1189
1358
|
/>
|
|
1190
|
-
</div>`:
|
|
1359
|
+
</div>`:M}
|
|
1191
1360
|
${this.emailField()}
|
|
1192
1361
|
${this.passwordField({label:this.t("password"),autocomplete:"new-password",id:"authui-password",field:"password",hint:this.t("passwordHint"),meter:!0})}
|
|
1193
1362
|
${this.renderError()} ${this.submitButton(this.t("createAccount"))}
|
|
@@ -1200,14 +1369,14 @@ var AuthUI=(function(S){"use strict";var xe;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
1200
1369
|
</div>
|
|
1201
1370
|
${this.legal()}
|
|
1202
1371
|
</div>
|
|
1203
|
-
`}renderForgot(){return
|
|
1372
|
+
`}renderForgot(){return w`
|
|
1204
1373
|
<div class="stack">
|
|
1205
1374
|
<form class="form" @submit=${this.onForgot} novalidate>
|
|
1206
1375
|
${this.emailField()} ${this.renderError()} ${this.submitButton(this.t("sendResetLink"))}
|
|
1207
1376
|
</form>
|
|
1208
1377
|
${this.backLink()}
|
|
1209
1378
|
</div>
|
|
1210
|
-
`}renderReset(){return this.recovery?
|
|
1379
|
+
`}renderReset(){return this.recovery?w`
|
|
1211
1380
|
<div class="stack">
|
|
1212
1381
|
<form class="form" @submit=${this.onReset} novalidate>
|
|
1213
1382
|
${this.passwordField({label:this.t("newPassword"),autocomplete:"new-password",id:"authui-password",field:"password",hint:this.t("passwordHint"),meter:!0})}
|
|
@@ -1224,7 +1393,7 @@ var AuthUI=(function(S){"use strict";var xe;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
1224
1393
|
</button>
|
|
1225
1394
|
</div>
|
|
1226
1395
|
</div>
|
|
1227
|
-
`:
|
|
1396
|
+
`:w`<div class="stack">
|
|
1228
1397
|
<div class="alert alert-error" role="alert">
|
|
1229
1398
|
${_.alert}
|
|
1230
1399
|
<div class="alert-body">${this.t("errorInvalidToken")}</div>
|
|
@@ -1238,26 +1407,26 @@ var AuthUI=(function(S){"use strict";var xe;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
1238
1407
|
${this.t("requestNewLink")}
|
|
1239
1408
|
</button>
|
|
1240
1409
|
</div>
|
|
1241
|
-
</div>`}phraseBox(e){return e?
|
|
1410
|
+
</div>`}phraseBox(e){return e?w`<div class="alert alert-info">
|
|
1242
1411
|
${_.shield}
|
|
1243
1412
|
<div class="alert-title">
|
|
1244
1413
|
${this.t("securityPhrase")}: <span class="code">${e}</span>
|
|
1245
1414
|
</div>
|
|
1246
1415
|
<div class="alert-body">${this.t("securityPhraseHint")}</div>
|
|
1247
|
-
</div>`:
|
|
1416
|
+
</div>`:M}renderMagicUrl(){return this.token?w`<div class="stack">
|
|
1248
1417
|
<div class="alert alert-success" role="status">
|
|
1249
1418
|
${_.mail}
|
|
1250
1419
|
<div class="alert-body">${this.t("magicLinkSent",{email:this.token.target})}</div>
|
|
1251
1420
|
</div>
|
|
1252
1421
|
${this.phraseBox(this.token.phrase)} ${this.backLink()}
|
|
1253
|
-
</div>`:
|
|
1422
|
+
</div>`:w`
|
|
1254
1423
|
<div class="stack">
|
|
1255
1424
|
<form class="form" @submit=${this.onMagicUrl} novalidate>
|
|
1256
1425
|
${this.emailField()} ${this.renderError()} ${this.submitButton(this.t("sendMagicLink"))}
|
|
1257
1426
|
</form>
|
|
1258
1427
|
${this.backLink()} ${this.legal()}
|
|
1259
1428
|
</div>
|
|
1260
|
-
`}async onResendCode(){const e=this.token;!e||Date.now()<this.resendCooldownUntil||(this.error="",await this.run(async()=>{if(e.kind==="phone"){const i=await
|
|
1429
|
+
`}async onResendCode(){const e=this.token;!e||Date.now()<this.resendCooldownUntil||(this.error="",await this.run(async()=>{if(e.kind==="phone"){const i=await E.sendPhoneOtp(e.target);this.token={userId:i.userId,kind:"phone",target:e.target}}else{const i=await E.sendEmailOtp(e.target);this.token={userId:i.userId,kind:"email-otp",target:e.target,phrase:i.phrase}}this.resendCooldownUntil=Date.now()+3e4,window.setTimeout(()=>this.requestUpdate(),3e4)}))}renderCodeEntry(){const e=this.token?.kind==="phone",i=Date.now()<this.resendCooldownUntil;return w`
|
|
1261
1430
|
<div class="alert alert-info" role="status">
|
|
1262
1431
|
${e?_.smartphone:_.mail}
|
|
1263
1432
|
<div class="alert-body">${this.t("codeSent",{target:this.token.target})}</div>
|
|
@@ -1284,14 +1453,14 @@ var AuthUI=(function(S){"use strict";var xe;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
1284
1453
|
${e?this.t("useDifferentPhone"):this.t("useDifferentEmail")}
|
|
1285
1454
|
</button>
|
|
1286
1455
|
</div>
|
|
1287
|
-
`}renderEmailOtp(){return this.token?
|
|
1456
|
+
`}renderEmailOtp(){return this.token?w`<div class="stack">${this.renderCodeEntry()}</div>`:w`
|
|
1288
1457
|
<div class="stack">
|
|
1289
1458
|
<form class="form" @submit=${this.onEmailOtp} novalidate>
|
|
1290
1459
|
${this.emailField()} ${this.renderError()} ${this.submitButton(this.t("sendCode"))}
|
|
1291
1460
|
</form>
|
|
1292
1461
|
${this.backLink()} ${this.legal()}
|
|
1293
1462
|
</div>
|
|
1294
|
-
`}renderPhone(){return this.token?
|
|
1463
|
+
`}renderPhone(){return this.token?w`<div class="stack">${this.renderCodeEntry()}</div>`:w`
|
|
1295
1464
|
<div class="stack">
|
|
1296
1465
|
<form class="form" @submit=${this.onPhoneOtp} novalidate>
|
|
1297
1466
|
<div class="field">
|
|
@@ -1311,10 +1480,10 @@ var AuthUI=(function(S){"use strict";var xe;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
1311
1480
|
</form>
|
|
1312
1481
|
${this.backLink()} ${this.legal()}
|
|
1313
1482
|
</div>
|
|
1314
|
-
`}renderMfa(){const e=this.auth.mfaFactors;if(!this.challenge){const t=[{factor:"totp",icon:_.smartphone,label:this.t("mfaUseAuthenticator"),available:e?.totp??!0},{factor:"email",icon:_.mail,label:this.t("mfaUseEmail"),available:e?.email??!0},{factor:"phone",icon:_.phone,label:this.t("mfaUsePhone"),available:e?.phone??!0},{factor:"recoverycode",icon:_.key,label:this.t("mfaUseRecoveryCode"),available:e?.recoveryCode??!0}];return
|
|
1483
|
+
`}renderMfa(){const e=this.auth.mfaFactors;if(!this.challenge){const t=[{factor:"totp",icon:_.smartphone,label:this.t("mfaUseAuthenticator"),available:e?.totp??!0},{factor:"email",icon:_.mail,label:this.t("mfaUseEmail"),available:e?.email??!0},{factor:"phone",icon:_.phone,label:this.t("mfaUsePhone"),available:e?.phone??!0},{factor:"recoverycode",icon:_.key,label:this.t("mfaUseRecoveryCode"),available:e?.recoveryCode??!0}];return w`
|
|
1315
1484
|
<div class="stack">
|
|
1316
1485
|
<div class="stack-sm">
|
|
1317
|
-
${t.filter(o=>o.available).map(o=>
|
|
1486
|
+
${t.filter(o=>o.available).map(o=>w`<button
|
|
1318
1487
|
type="button"
|
|
1319
1488
|
class="choice"
|
|
1320
1489
|
@click=${()=>this.onChooseFactor(o.factor)}
|
|
@@ -1330,10 +1499,10 @@ var AuthUI=(function(S){"use strict";var xe;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
1330
1499
|
</button>
|
|
1331
1500
|
</div>
|
|
1332
1501
|
</div>
|
|
1333
|
-
`}const i=this.challenge.factor==="recoverycode";return
|
|
1502
|
+
`}const i=this.challenge.factor==="recoverycode";return w`
|
|
1334
1503
|
<div class="stack">
|
|
1335
1504
|
<form class="form" @submit=${this.onVerifyFactor} novalidate>
|
|
1336
|
-
${i?
|
|
1505
|
+
${i?w`<div class="field">
|
|
1337
1506
|
<label class="label" for="authui-code">${this.t("recoveryCode")}</label>
|
|
1338
1507
|
<input
|
|
1339
1508
|
class="input mono"
|
|
@@ -1357,19 +1526,19 @@ var AuthUI=(function(S){"use strict";var xe;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
1357
1526
|
</button>
|
|
1358
1527
|
</div>
|
|
1359
1528
|
</div>
|
|
1360
|
-
`}},
|
|
1361
|
-
`)),this.copied=!0,setTimeout(()=>this.copied=!1,1500)}catch{this.setNotice("error",this.t("copyFailed"))}},this.onCopySecret=async()=>{const e=this.authenticator?.secret;if(e)try{await navigator.clipboard.writeText(e),this.copied=!0,setTimeout(()=>this.copied=!1,1500)}catch{this.setNotice("error",this.t("copyFailed"))}},this.onStepUpFactor=e=>{this.run("stepup",async()=>{const i=await
|
|
1529
|
+
`}},k.AuthUISignIn.styles=[...Ce.styles,No],ve([F({type:String})],k.AuthUISignIn.prototype,"view",2),ve([F({type:Boolean})],k.AuthUISignIn.prototype,"embedded",2),ve([V()],k.AuthUISignIn.prototype,"step",2),ve([V()],k.AuthUISignIn.prototype,"busy",2),ve([V()],k.AuthUISignIn.prototype,"error",2),ve([V()],k.AuthUISignIn.prototype,"notice",2),ve([V()],k.AuthUISignIn.prototype,"showPassword",2),ve([V()],k.AuthUISignIn.prototype,"expandedOAuth",2),ve([V()],k.AuthUISignIn.prototype,"token",2),ve([V()],k.AuthUISignIn.prototype,"resendCooldownUntil",2),ve([V()],k.AuthUISignIn.prototype,"challenge",2),ve([V()],k.AuthUISignIn.prototype,"recovery",2),ve([Dt("form input:not([type=hidden])")],k.AuthUISignIn.prototype,"firstInput",2),k.AuthUISignIn=ve([Ye("authui-sign-in")],k.AuthUISignIn);var Xo=Object.defineProperty,Vo=Object.getOwnPropertyDescriptor,O=(n,e,i,t)=>{for(var o=t>1?void 0:t?Vo(e,i):e,a=n.length-1,s;a>=0;a--)(s=n[a])&&(o=(t?s(e,i,o):s(o))||o);return t&&o&&Xo(e,i,o),o};k.AuthUIAccount=class extends Ce{constructor(){super(...arguments),this.embedded=!1,this.tab="profile",this.active="profile",this.busy="",this.notice=null,this.errors={},this.nameInput="",this.emailInput="",this.emailPassword="",this.phoneInput="",this.phonePassword="",this.phoneCode="",this.phoneCodeSent=!1,this.guestName="",this.oldPassword="",this.newPassword="",this.newPasswordConfirm="",this.authenticator=null,this.authenticatorCode="",this.factors=null,this.recoveryCodes=null,this.stepUp=null,this.stepUpCode="",this.copied=!1,this.sessions=null,this.identities=null,this.logs=null,this.logsSupported=null,this.logsProbeStarted=!1,this.confirmDelete=!1,this.confirmRegenerate=!1,this.confirmRemoveAuthenticator=!1,this.confirmSignOutAll=!1,this.confirmDisconnectId=null,this.verifyEmailCooldownUntil=0,this.verifyEmailCooldownTimer=null,this.onTabsKeydown=e=>{const i=[...this.renderRoot?.querySelectorAll('[role="tab"]')??[]];if(!i.length)return;const t=i.findIndex(s=>s.getAttribute("aria-selected")==="true");let o=t;if(e.key==="ArrowRight"||e.key==="ArrowDown")o=(t+1)%i.length;else if(e.key==="ArrowLeft"||e.key==="ArrowUp")o=(t-1+i.length)%i.length;else if(e.key==="Home")o=0;else if(e.key==="End")o=i.length-1;else return;e.preventDefault();const a=i[o].id.replace("authui-tab-","");this.select(a),requestAnimationFrame(()=>i[o]?.focus())},this.noticeTimer=null,this.factorsLoading=!1,this.onUpdateName=e=>{e.preventDefault(),this.requireValid(e)&&this.run("name",()=>E.updateName(this.nameInput),this.t("nameUpdated"))},this.onUpdateEmail=e=>{e.preventDefault(),this.requireValid(e)&&this.run("email",async()=>{await E.updateEmail(this.emailInput,this.emailPassword),this.emailPassword=""},this.t("emailUpdated"))},this.onUpdatePhone=e=>{e.preventDefault(),this.requireValid(e)&&this.run("phone",async()=>{await E.updatePhone(this.phoneInput,this.phonePassword),this.phonePassword=""},this.t("phoneUpdated"))},this.onConvertGuest=e=>{e.preventDefault(),this.requireValid(e)&&this.run("guest",async()=>{await E.convertGuest(this.emailInput,this.emailPassword,this.guestName),this.emailPassword=""},this.t("accountConverted"))},this.onSendVerification=()=>{Date.now()<this.verifyEmailCooldownUntil||this.run("verify",async()=>{await E.sendEmailVerification(),this.startVerifyEmailCooldown()},this.t("verificationSent"))},this.onSendPhoneVerification=()=>{this.run("verify-phone",async()=>{await E.sendPhoneVerification(),this.phoneCodeSent=!0})},this.onConfirmPhoneVerification=e=>{e.preventDefault(),this.requireValid(e)&&this.run("verify-phone-code",async()=>{await E.confirmPhoneVerification(this.phoneCode),this.phoneCode="",this.phoneCodeSent=!1},this.t("phoneVerified"))},this.onChangePassword=e=>{if(e.preventDefault(),!!this.requireValid(e)){if(this.newPassword!==this.newPasswordConfirm){this.errors={...this.errors,password:this.t("errorPasswordMismatch")};return}this.run("password",async()=>{await E.updatePassword(this.newPassword,this.oldPassword),this.oldPassword=this.newPassword=this.newPasswordConfirm=""},this.t("passwordChanged"))}},this.onToggleMfa=()=>{const e=!this.user?.mfa;this.run("mfa",async()=>{await E.setMfaEnabled(e),await this.loadFactors()})},this.onAddAuthenticator=()=>{this.run("authenticator",async()=>{this.authenticator=await E.addAuthenticator(),this.authenticatorCode=""})},this.onVerifyAuthenticator=e=>{e.preventDefault(),this.requireValid(e)&&this.run("authenticator-code",async()=>{await E.verifyAuthenticator(this.authenticatorCode),this.authenticator=null,this.authenticatorCode="",await this.loadFactors()},this.t("authenticatorAdded"))},this.onRemoveAuthenticator=()=>{if(!this.confirmRemoveAuthenticator){this.confirmRemoveAuthenticator=!0;return}this.confirmRemoveAuthenticator=!1,this.run("remove-authenticator",async()=>{await E.removeAuthenticator(),await this.loadFactors()})},this.onRecoveryCodes=()=>{this.run("recovery",async()=>{try{this.recoveryCodes=await E.createRecoveryCodes()}catch(e){if(!ut(e,ee.recoveryCodesExist))throw e;this.recoveryCodes=await E.getRecoveryCodes()}await this.loadFactors()})},this.onRegenerateRecoveryCodes=()=>{if(!this.confirmRegenerate){this.confirmRegenerate=!0;return}this.confirmRegenerate=!1,this.run("recovery",async()=>{this.recoveryCodes=await E.regenerateRecoveryCodes()})},this.onCopyCodes=async()=>{if(this.recoveryCodes)try{await navigator.clipboard.writeText(this.recoveryCodes.join(`
|
|
1530
|
+
`)),this.copied=!0,setTimeout(()=>this.copied=!1,1500)}catch{this.setNotice("error",this.t("copyFailed"))}},this.onCopySecret=async()=>{const e=this.authenticator?.secret;if(e)try{await navigator.clipboard.writeText(e),this.copied=!0,setTimeout(()=>this.copied=!1,1500)}catch{this.setNotice("error",this.t("copyFailed"))}},this.onStepUpFactor=e=>{this.run("stepup",async()=>{const i=await E.createMfaChallenge(e);this.stepUp={...this.stepUp,challenge:{id:i.$id,factor:e}},this.stepUpCode=""})},this.onStepUpVerify=e=>{if(e.preventDefault(),!this.requireValid(e))return;const i=this.stepUp;i?.challenge&&(async()=>{let t=!1;await this.run("stepup-code",async()=>{await E.completeMfaChallenge(i.challenge.id,this.stepUpCode,{signIn:!1}),this.stepUp=null,this.stepUpCode="",t=!0}),t&&await i.retry()})()},this.onDeleteSession=e=>{this.run(`session-${e}`,async()=>{if((this.sessions??[]).some(t=>t.$id===e&&t.current)){await E.signOut(),this.sessions=[];return}await E.signOut(e),this.sessions=(this.sessions??[]).filter(t=>t.$id!==e)})},this.onSignOutAll=()=>{if(!this.confirmSignOutAll){this.confirmSignOutAll=!0;return}this.confirmSignOutAll=!1,this.run("sessions-all",()=>E.signOutEverywhere())},this.onDeleteIdentity=e=>{if(this.confirmDisconnectId!==e){this.confirmDisconnectId=e;return}this.confirmDisconnectId=null,this.run(`identity-${e}`,async()=>{await E.deleteIdentity(e),this.identities=(this.identities??[]).filter(i=>i.$id!==e)})},this.onDeleteAccount=()=>{this.run("delete",()=>E.deleteAccount())}}connectedCallback(){super.connectedCallback(),this.active=this.tab,this.hydrate()}disconnectedCallback(){super.disconnectedCallback(),this.clearVerifyEmailCooldownTimer(),this.noticeTimer&&(clearTimeout(this.noticeTimer),this.noticeTimer=null)}willUpdate(e){e.has("tab")&&e.get("tab")!==void 0&&(this.active=this.tab),e.has("auth")&&this.hydrate(),this.ensureLoaded()}ensureLoaded(){!this.user||this.busy||(this.logsProbeStarted||this.probeLogsSupport(),this.active==="sessions"&&this.sessions===null?this.loadSessions():this.active==="connections"&&this.identities===null?this.loadIdentities():this.active==="activity"&&this.logsSupported===!0&&this.logs===null?this.loadLogs():this.active==="activity"&&this.logsSupported===!1?this.active="profile":this.active==="security"&&this.factors===null&&this.loadFactors())}hydrate(){const e=this.auth.user;e&&(this.nameInput||(this.nameInput=e.name??""),this.emailInput||(this.emailInput=e.email??""),this.phoneInput||(this.phoneInput=e.phone??""))}get user(){return this.auth.user}get isGuest(){const e=this.user;return!!e&&!e.email&&!e.phone}select(e){this.active=e,this.notice=null,this.errors={}}updated(e){e.has("active")&&requestAnimationFrame(()=>{const t=this.renderRoot.querySelector('.tab[aria-selected="true"]');t&&typeof t.scrollIntoView=="function"&&t.scrollIntoView({inline:"nearest",block:"nearest",behavior:"smooth"})}),(e.has("confirmDelete")&&this.confirmDelete||e.has("confirmSignOutAll")&&this.confirmSignOutAll||e.has("confirmDisconnectId")&&this.confirmDisconnectId!==null)&&requestAnimationFrame(()=>{this.renderRoot.querySelector(".card-footer [autofocus], .row-actions [autofocus], .inline [autofocus], .card-footer .btn-outline, .row-actions .btn-outline, .inline .btn-outline")?.focus({preventScroll:!0})})}setNotice(e,i){this.notice={tone:e,message:i},this.noticeTimer&&clearTimeout(this.noticeTimer),this.noticeTimer=setTimeout(()=>{this.notice=null,this.noticeTimer=null},8e3)}requireValid(e){const i=e.target;return!(i&&typeof i.reportValidity=="function"&&!i.reportValidity())}async run(e,i,t){if(!this.busy){this.busy=e,this.errors={...this.errors,[e]:""},this.notice=null;try{await i(),t&&this.setNotice("success",t)}catch(o){ut(o,ee.challengeRequired)?this.stepUp={retry:()=>this.run(e,i,t)}:this.errors={...this.errors,[e]:pt(o,this.strings,e.includes("code")?"code":e==="password"?"password":"link")}}finally{this.busy=""}}}async loadSessions(){await this.run("sessions",async()=>{this.sessions=await E.listSessions()})}async loadIdentities(){await this.run("identities",async()=>{this.identities=await E.listIdentities()})}async probeLogsSupport(){if(!this.logsProbeStarted){this.logsProbeStarted=!0;try{this.logs=await E.listLogs(),this.logsSupported=!0}catch{this.logsSupported=!1,this.logs=[],this.active==="activity"&&(this.active="profile")}}}async loadLogs(){if(this.logsSupported===!1){this.active==="activity"&&(this.active="profile");return}this.busy="logs";try{this.logs=await E.listLogs()}catch{this.logsSupported=!1,this.logs=[],this.active==="activity"&&(this.active="profile")}finally{this.busy=""}}async loadFactors(){if(!this.factorsLoading){this.factorsLoading=!0;try{this.factors=await E.listMfaFactors()}catch{this.factors={totp:!1,phone:!1,email:!1,recoveryCode:!1,custom:!1}}finally{this.factorsLoading=!1}}}startVerifyEmailCooldown(){this.verifyEmailCooldownUntil=Date.now()+45e3,this.clearVerifyEmailCooldownTimer(),this.verifyEmailCooldownTimer=setInterval(()=>{this.requestUpdate(),Date.now()>=this.verifyEmailCooldownUntil&&this.clearVerifyEmailCooldownTimer()},1e3)}clearVerifyEmailCooldownTimer(){this.verifyEmailCooldownTimer&&(clearInterval(this.verifyEmailCooldownTimer),this.verifyEmailCooldownTimer=null)}bind(e){return i=>{this[e]=i.target.value}}render(){if(!this.auth.configured)return w`<div class="alert alert-error" role="alert">
|
|
1362
1531
|
${_.alert}
|
|
1363
1532
|
<div class="alert-body">${this.t("errorNotConfigured")}</div>
|
|
1364
|
-
</div>`;if(this.auth.status==="loading")return
|
|
1533
|
+
</div>`;if(this.auth.status==="loading")return w`<div class="panel ${this.embedded?"embedded":""}" part="panel">
|
|
1365
1534
|
<div class="empty"><span class="spinner"></span></div>
|
|
1366
|
-
</div>`;if(!this.user)return
|
|
1535
|
+
</div>`;if(!this.user)return w`<div class="panel ${this.embedded?"embedded":""}">
|
|
1367
1536
|
<authui-sign-in embedded></authui-sign-in>
|
|
1368
|
-
</div>`;const e=[{id:"profile",label:this.t("profile")},{id:"security",label:this.t("security")},{id:"sessions",label:this.t("sessions")},{id:"connections",label:this.t("connections")},...this.logsSupported?[{id:"activity",label:this.t("activity")}]:[]];return
|
|
1537
|
+
</div>`;const e=[{id:"profile",label:this.t("profile")},{id:"security",label:this.t("security")},{id:"sessions",label:this.t("sessions")},{id:"connections",label:this.t("connections")},...this.logsSupported?[{id:"activity",label:this.t("activity")}]:[]];return w`
|
|
1369
1538
|
<div class="panel ${this.embedded?"embedded":""}" part="panel">
|
|
1370
1539
|
${this.renderIdentity()}
|
|
1371
1540
|
<div class="tabs" role="tablist" @keydown=${this.onTabsKeydown}>
|
|
1372
|
-
${e.map(i=>
|
|
1541
|
+
${e.map(i=>w`<button
|
|
1373
1542
|
class="tab"
|
|
1374
1543
|
role="tab"
|
|
1375
1544
|
id=${`authui-tab-${i.id}`}
|
|
@@ -1381,7 +1550,7 @@ var AuthUI=(function(S){"use strict";var xe;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
1381
1550
|
${i.label}
|
|
1382
1551
|
</button>`)}
|
|
1383
1552
|
</div>
|
|
1384
|
-
${this.notice?
|
|
1553
|
+
${this.notice?w`<div class="alert alert-${this.notice.tone}" role="status">
|
|
1385
1554
|
${this.notice.tone==="success"?_.checkCircle:_.info}
|
|
1386
1555
|
<div class="alert-body">${this.notice.message}</div>
|
|
1387
1556
|
<button
|
|
@@ -1391,8 +1560,8 @@ var AuthUI=(function(S){"use strict";var xe;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
1391
1560
|
>
|
|
1392
1561
|
${_.x}
|
|
1393
1562
|
</button>
|
|
1394
|
-
</div>`:
|
|
1395
|
-
${this.stepUp?this.renderStepUp():
|
|
1563
|
+
</div>`:M}
|
|
1564
|
+
${this.stepUp?this.renderStepUp():w`<div
|
|
1396
1565
|
class="tabpanel"
|
|
1397
1566
|
role="tabpanel"
|
|
1398
1567
|
id=${`authui-panel-${this.active}`}
|
|
@@ -1401,35 +1570,57 @@ var AuthUI=(function(S){"use strict";var xe;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
1401
1570
|
${this.renderTab()}
|
|
1402
1571
|
</div>`}
|
|
1403
1572
|
</div>
|
|
1404
|
-
`}renderIdentity(){const e=this.user,i=e.name||e.email||e.phone||this.t("guestAccount");return
|
|
1573
|
+
`}renderIdentity(){const e=this.user,i=e.name||e.email||e.phone||this.t("guestAccount");return w`
|
|
1405
1574
|
<div class="between">
|
|
1406
1575
|
<div class="identity">
|
|
1407
1576
|
<span class="avatar">${fi(i)}</span>
|
|
1408
1577
|
<div class="row-main">
|
|
1409
1578
|
<span class="row-title" title=${i}>
|
|
1410
1579
|
${i}
|
|
1411
|
-
${e.mfa?
|
|
1412
|
-
${
|
|
1580
|
+
${e.mfa?w`<span class="badge badge-success">${_.shieldCheck} ${this.t("mfaBadge")}</span>`:M}
|
|
1581
|
+
${E.isPreview?w`<span class="badge badge-info">${this.t("preview")}</span>`:M}
|
|
1413
1582
|
</span>
|
|
1414
|
-
${e.email&&e.name?
|
|
1583
|
+
${e.email&&e.name?w`<span class="row-sub" title=${e.email}>${e.email}</span>`:M}
|
|
1415
1584
|
</div>
|
|
1416
1585
|
</div>
|
|
1417
|
-
<button class="btn btn-outline btn-sm" @click=${()=>
|
|
1586
|
+
<button class="btn btn-outline btn-sm" @click=${()=>E.signOut()}>
|
|
1418
1587
|
${_.logOut} ${this.t("signOut")}
|
|
1419
1588
|
</button>
|
|
1420
1589
|
</div>
|
|
1421
|
-
`}renderTab(){switch(this.active){case"security":return this.renderSecurity();case"sessions":return this.renderSessions();case"connections":return this.renderConnections();case"activity":return this.renderActivity();default:return this.renderProfile()}}error(e){const i=this.errors[e];return i?
|
|
1590
|
+
`}renderTab(){switch(this.active){case"security":return this.renderSecurity();case"sessions":return this.renderSessions();case"connections":return this.renderConnections();case"activity":return this.renderActivity();default:return this.renderProfile()}}error(e){const i=this.errors[e];return i?w`<div class="alert alert-error" role="alert">
|
|
1422
1591
|
${_.alert}
|
|
1423
1592
|
<div class="alert-body">${i}</div>
|
|
1424
|
-
</div>`:
|
|
1593
|
+
</div>`:M}spinner(e){return this.busy===e?w`<span class="spinner" aria-hidden="true"></span>`:M}card(e,i,t,o,a=!1){return w`<section class="card ${a?"card-danger":""}">
|
|
1425
1594
|
<div class="card-header">
|
|
1426
1595
|
<h3 class="card-title">${e}</h3>
|
|
1427
|
-
${i?
|
|
1596
|
+
${i?w`<p class="card-description">${i}</p>`:M}
|
|
1428
1597
|
</div>
|
|
1429
|
-
|
|
1430
|
-
${o?
|
|
1431
|
-
</section>`}
|
|
1432
|
-
|
|
1598
|
+
${t!==M?w`<div class="card-body">${t}</div>`:M}
|
|
1599
|
+
${o?w`<div class="card-footer">${o}</div>`:M}
|
|
1600
|
+
</section>`}confirmFooter(e,i,t,o){return w`
|
|
1601
|
+
<button
|
|
1602
|
+
type="button"
|
|
1603
|
+
class="btn btn-outline btn-sm"
|
|
1604
|
+
autofocus
|
|
1605
|
+
?disabled=${!!this.busy}
|
|
1606
|
+
@click=${e}
|
|
1607
|
+
>
|
|
1608
|
+
${this.t("cancel")}
|
|
1609
|
+
</button>
|
|
1610
|
+
<button
|
|
1611
|
+
type="button"
|
|
1612
|
+
class="btn btn-destructive btn-sm"
|
|
1613
|
+
?disabled=${!!this.busy}
|
|
1614
|
+
@click=${i}
|
|
1615
|
+
>
|
|
1616
|
+
${o?this.spinner(o):M} ${t}
|
|
1617
|
+
</button>
|
|
1618
|
+
`}emptyState(e,i,t){return w`<div class="empty empty-well">
|
|
1619
|
+
<div class="empty-icon" aria-hidden="true">${e}</div>
|
|
1620
|
+
<p class="empty-title">${i}</p>
|
|
1621
|
+
<p class="empty-desc">${t}</p>
|
|
1622
|
+
</div>`}verifiedBadge(e){return e?w`<span class="badge badge-success">${_.check} ${this.t("verified")}</span>`:w`<span class="badge badge-warning">${this.t("unverified")}</span>`}renderProfile(){const e=this.user;return this.isGuest?w`<div class="section">
|
|
1623
|
+
${this.card(this.t("guestAccount"),this.t("guestAccountDescription"),w`<form class="form" id="guest-form" @submit=${this.onConvertGuest} novalidate>
|
|
1433
1624
|
<div class="field">
|
|
1434
1625
|
<label class="label" for="guest-name">${this.t("name")}</label>
|
|
1435
1626
|
<input
|
|
@@ -1464,7 +1655,7 @@ var AuthUI=(function(S){"use strict";var xe;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
1464
1655
|
@input=${this.bind("emailPassword")}
|
|
1465
1656
|
autocomplete="new-password"
|
|
1466
1657
|
/>
|
|
1467
|
-
${this.emailPassword?(()=>{const i=
|
|
1658
|
+
${this.emailPassword?(()=>{const i=Ut(this.emailPassword);return w`<div class="strength" aria-live="polite">
|
|
1468
1659
|
<div
|
|
1469
1660
|
class="strength-meter"
|
|
1470
1661
|
data-level=${String(i.level)}
|
|
@@ -1478,10 +1669,10 @@ var AuthUI=(function(S){"use strict";var xe;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
1478
1669
|
<span></span><span></span><span></span><span></span>
|
|
1479
1670
|
</div>
|
|
1480
1671
|
<p class="strength-label">${this.t(i.labelKey)}</p>
|
|
1481
|
-
</div>`})():
|
|
1672
|
+
</div>`})():w`<p class="hint">${this.t("passwordHint")}</p>`}
|
|
1482
1673
|
</div>
|
|
1483
1674
|
${this.error("guest")}
|
|
1484
|
-
</form>`,
|
|
1675
|
+
</form>`,w`<button
|
|
1485
1676
|
class="btn btn-primary btn-sm"
|
|
1486
1677
|
type="submit"
|
|
1487
1678
|
form="guest-form"
|
|
@@ -1489,8 +1680,8 @@ var AuthUI=(function(S){"use strict";var xe;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
1489
1680
|
>
|
|
1490
1681
|
${this.spinner("guest")} ${this.t("createAccount")}
|
|
1491
1682
|
</button>`)}
|
|
1492
|
-
</div>`:
|
|
1493
|
-
${this.card(this.t("name"),void 0,
|
|
1683
|
+
</div>`:w`<div class="section">
|
|
1684
|
+
${this.card(this.t("name"),void 0,w`<form class="form" id="name-form" @submit=${this.onUpdateName} novalidate>
|
|
1494
1685
|
<div class="field">
|
|
1495
1686
|
<label class="label" for="acc-name">${this.t("name")}</label>
|
|
1496
1687
|
<input
|
|
@@ -1503,7 +1694,7 @@ var AuthUI=(function(S){"use strict";var xe;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
1503
1694
|
/>
|
|
1504
1695
|
</div>
|
|
1505
1696
|
${this.error("name")}
|
|
1506
|
-
</form>`,
|
|
1697
|
+
</form>`,w`<button
|
|
1507
1698
|
class="btn btn-primary btn-sm"
|
|
1508
1699
|
type="submit"
|
|
1509
1700
|
form="name-form"
|
|
@@ -1511,11 +1702,11 @@ var AuthUI=(function(S){"use strict";var xe;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
1511
1702
|
>
|
|
1512
1703
|
${this.spinner("name")} ${this.t("update")}
|
|
1513
1704
|
</button>`)}
|
|
1514
|
-
${this.card(this.t("email"),void 0,
|
|
1705
|
+
${this.card(this.t("email"),void 0,w`<form class="form" id="email-form" @submit=${this.onUpdateEmail} novalidate>
|
|
1515
1706
|
<div class="field">
|
|
1516
1707
|
<label class="label" for="acc-email"
|
|
1517
1708
|
>${this.t("email")}
|
|
1518
|
-
${e.email?this.verifiedBadge(e.emailVerification):
|
|
1709
|
+
${e.email?this.verifiedBadge(e.emailVerification):M}</label
|
|
1519
1710
|
>
|
|
1520
1711
|
<input
|
|
1521
1712
|
class="input"
|
|
@@ -1527,7 +1718,7 @@ var AuthUI=(function(S){"use strict";var xe;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
1527
1718
|
required
|
|
1528
1719
|
/>
|
|
1529
1720
|
</div>
|
|
1530
|
-
${this.emailInput!==e.email?
|
|
1721
|
+
${this.emailInput!==e.email?w`<div class="field">
|
|
1531
1722
|
<label class="label" for="acc-email-password"
|
|
1532
1723
|
>${e.passwordUpdate?this.t("currentPassword"):this.t("createPassword")}</label
|
|
1533
1724
|
>
|
|
@@ -1540,11 +1731,11 @@ var AuthUI=(function(S){"use strict";var xe;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
1540
1731
|
autocomplete=${e.passwordUpdate?"current-password":"new-password"}
|
|
1541
1732
|
required
|
|
1542
1733
|
/>
|
|
1543
|
-
${e.passwordUpdate?
|
|
1544
|
-
</div>`:
|
|
1734
|
+
${e.passwordUpdate?M:w`<p class="hint">${this.t("createPasswordHint")}</p>`}
|
|
1735
|
+
</div>`:M}
|
|
1545
1736
|
${this.error("email")} ${this.error("verify")}
|
|
1546
|
-
</form>`,
|
|
1547
|
-
${e.email&&!e.emailVerification?
|
|
1737
|
+
</form>`,w`
|
|
1738
|
+
${e.email&&!e.emailVerification?w`<button
|
|
1548
1739
|
class="btn btn-outline btn-sm"
|
|
1549
1740
|
type="button"
|
|
1550
1741
|
@click=${this.onSendVerification}
|
|
@@ -1552,7 +1743,7 @@ var AuthUI=(function(S){"use strict";var xe;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
1552
1743
|
>
|
|
1553
1744
|
${this.spinner("verify")}
|
|
1554
1745
|
${Date.now()<this.verifyEmailCooldownUntil?this.t("verificationResendIn",{seconds:Math.max(1,Math.ceil((this.verifyEmailCooldownUntil-Date.now())/1e3))}):this.t("verifyEmail")}
|
|
1555
|
-
</button>`:
|
|
1746
|
+
</button>`:M}
|
|
1556
1747
|
<button
|
|
1557
1748
|
class="btn btn-primary btn-sm"
|
|
1558
1749
|
type="submit"
|
|
@@ -1562,11 +1753,11 @@ var AuthUI=(function(S){"use strict";var xe;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
1562
1753
|
${this.spinner("email")} ${this.t("update")}
|
|
1563
1754
|
</button>
|
|
1564
1755
|
`)}
|
|
1565
|
-
${this.card(this.t("phone"),void 0,
|
|
1756
|
+
${this.card(this.t("phone"),void 0,w`<form class="form" id="phone-form" @submit=${this.onUpdatePhone} novalidate>
|
|
1566
1757
|
<div class="field">
|
|
1567
1758
|
<label class="label" for="acc-phone"
|
|
1568
1759
|
>${this.t("phone")}
|
|
1569
|
-
${e.phone?this.verifiedBadge(e.phoneVerification):
|
|
1760
|
+
${e.phone?this.verifiedBadge(e.phoneVerification):M}</label
|
|
1570
1761
|
>
|
|
1571
1762
|
<input
|
|
1572
1763
|
class="input"
|
|
@@ -1578,7 +1769,7 @@ var AuthUI=(function(S){"use strict";var xe;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
1578
1769
|
autocomplete="tel"
|
|
1579
1770
|
/>
|
|
1580
1771
|
</div>
|
|
1581
|
-
${this.phoneInput!==e.phone?
|
|
1772
|
+
${this.phoneInput!==e.phone?w`<div class="field">
|
|
1582
1773
|
<label class="label" for="acc-phone-password"
|
|
1583
1774
|
>${e.passwordUpdate?this.t("currentPassword"):this.t("createPassword")}</label
|
|
1584
1775
|
>
|
|
@@ -1591,9 +1782,9 @@ var AuthUI=(function(S){"use strict";var xe;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
1591
1782
|
autocomplete=${e.passwordUpdate?"current-password":"new-password"}
|
|
1592
1783
|
required
|
|
1593
1784
|
/>
|
|
1594
|
-
${e.passwordUpdate?
|
|
1595
|
-
</div>`:
|
|
1596
|
-
${this.phoneCodeSent?
|
|
1785
|
+
${e.passwordUpdate?M:w`<p class="hint">${this.t("createPasswordHint")}</p>`}
|
|
1786
|
+
</div>`:M}
|
|
1787
|
+
${this.phoneCodeSent?w`<div class="field">
|
|
1597
1788
|
<label class="label" for="acc-phone-code">${this.t("code")}</label>
|
|
1598
1789
|
<input
|
|
1599
1790
|
class="input input-otp"
|
|
@@ -1607,25 +1798,25 @@ var AuthUI=(function(S){"use strict";var xe;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
1607
1798
|
@input=${this.bind("phoneCode")}
|
|
1608
1799
|
@keydown=${i=>{i.key==="Enter"&&(i.preventDefault(),this.onConfirmPhoneVerification(i))}}
|
|
1609
1800
|
/>
|
|
1610
|
-
</div>`:
|
|
1801
|
+
</div>`:M}
|
|
1611
1802
|
${this.error("phone")} ${this.error("verify-phone")} ${this.error("verify-phone-code")}
|
|
1612
|
-
</form>`,
|
|
1613
|
-
${e.phone&&!e.phoneVerification&&!this.phoneCodeSent?
|
|
1803
|
+
</form>`,w`
|
|
1804
|
+
${e.phone&&!e.phoneVerification&&!this.phoneCodeSent?w`<button
|
|
1614
1805
|
class="btn btn-outline btn-sm"
|
|
1615
1806
|
type="button"
|
|
1616
1807
|
@click=${this.onSendPhoneVerification}
|
|
1617
1808
|
?disabled=${!!this.busy}
|
|
1618
1809
|
>
|
|
1619
1810
|
${this.spinner("verify-phone")} ${this.t("sendCode")}
|
|
1620
|
-
</button>`:
|
|
1621
|
-
${this.phoneCodeSent?
|
|
1811
|
+
</button>`:M}
|
|
1812
|
+
${this.phoneCodeSent?w`<button
|
|
1622
1813
|
class="btn btn-outline btn-sm"
|
|
1623
1814
|
type="button"
|
|
1624
1815
|
@click=${this.onConfirmPhoneVerification}
|
|
1625
1816
|
?disabled=${!!this.busy}
|
|
1626
1817
|
>
|
|
1627
1818
|
${this.spinner("verify-phone-code")} ${this.t("verifyCode")}
|
|
1628
|
-
</button>`:
|
|
1819
|
+
</button>`:M}
|
|
1629
1820
|
<button
|
|
1630
1821
|
class="btn btn-primary btn-sm"
|
|
1631
1822
|
type="submit"
|
|
@@ -1636,31 +1827,17 @@ var AuthUI=(function(S){"use strict";var xe;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
1636
1827
|
</button>
|
|
1637
1828
|
`)}
|
|
1638
1829
|
${this.renderDanger()}
|
|
1639
|
-
</div>`}renderDanger(){return this.card(this.t("deleteAccount"),this.t("deleteAccountDescription"),
|
|
1640
|
-
|
|
1641
|
-
<button
|
|
1642
|
-
class="btn btn-outline btn-sm warn"
|
|
1643
|
-
@click=${this.onDeleteAccount}
|
|
1644
|
-
?disabled=${!!this.busy}
|
|
1645
|
-
>
|
|
1646
|
-
${this.spinner("delete")} ${this.t("deleteAccountConfirm")}
|
|
1647
|
-
</button>
|
|
1648
|
-
<button class="btn btn-ghost btn-sm" @click=${()=>this.confirmDelete=!1}>
|
|
1649
|
-
${this.t("cancel")}
|
|
1650
|
-
</button>
|
|
1651
|
-
</div>`:b`<button
|
|
1652
|
-
class="btn btn-outline btn-sm warn"
|
|
1653
|
-
@click=${()=>this.confirmDelete=!0}
|
|
1654
|
-
>
|
|
1830
|
+
</div>`}renderDanger(){return this.card(this.t("deleteAccount"),this.t("deleteAccountDescription"),this.confirmDelete?this.error("delete"):w`${this.error("delete")}
|
|
1831
|
+
<button class="btn btn-outline btn-sm warn" @click=${()=>this.confirmDelete=!0}>
|
|
1655
1832
|
${_.userX} ${this.t("deleteAccount")}
|
|
1656
|
-
</button
|
|
1657
|
-
${this.isGuest?
|
|
1833
|
+
</button>`,this.confirmDelete?this.confirmFooter(()=>{this.confirmDelete=!1},()=>{this.onDeleteAccount()},this.t("deleteAccountConfirm"),"delete"):void 0,!0)}renderSecurity(){const e=this.user,i=this.config?.mfa!==!1;return w`<div class="section">
|
|
1834
|
+
${this.isGuest?M:this.card(this.t("changePassword"),void 0,w`<form
|
|
1658
1835
|
class="form"
|
|
1659
1836
|
id="password-form"
|
|
1660
1837
|
@submit=${this.onChangePassword}
|
|
1661
1838
|
novalidate
|
|
1662
1839
|
>
|
|
1663
|
-
${e.passwordUpdate?
|
|
1840
|
+
${e.passwordUpdate?w`<div class="field">
|
|
1664
1841
|
<label class="label" for="acc-old-password"
|
|
1665
1842
|
>${this.t("currentPassword")}</label
|
|
1666
1843
|
>
|
|
@@ -1673,7 +1850,7 @@ var AuthUI=(function(S){"use strict";var xe;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
1673
1850
|
autocomplete="current-password"
|
|
1674
1851
|
required
|
|
1675
1852
|
/>
|
|
1676
|
-
</div>`:
|
|
1853
|
+
</div>`:M}
|
|
1677
1854
|
<div class="field">
|
|
1678
1855
|
<label class="label" for="acc-new-password">${this.t("newPassword")}</label>
|
|
1679
1856
|
<input
|
|
@@ -1686,7 +1863,7 @@ var AuthUI=(function(S){"use strict";var xe;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
1686
1863
|
@input=${this.bind("newPassword")}
|
|
1687
1864
|
autocomplete="new-password"
|
|
1688
1865
|
/>
|
|
1689
|
-
${this.newPassword?(()=>{const t=
|
|
1866
|
+
${this.newPassword?(()=>{const t=Ut(this.newPassword);return w`<div class="strength" aria-live="polite">
|
|
1690
1867
|
<div
|
|
1691
1868
|
class="strength-meter"
|
|
1692
1869
|
data-level=${String(t.level)}
|
|
@@ -1700,7 +1877,7 @@ var AuthUI=(function(S){"use strict";var xe;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
1700
1877
|
<span></span><span></span><span></span><span></span>
|
|
1701
1878
|
</div>
|
|
1702
1879
|
<p class="strength-label">${this.t(t.labelKey)}</p>
|
|
1703
|
-
</div>`})():
|
|
1880
|
+
</div>`})():w`<p class="hint">${this.t("passwordHint")}</p>`}
|
|
1704
1881
|
</div>
|
|
1705
1882
|
<div class="field">
|
|
1706
1883
|
<label class="label" for="acc-new-password-confirm"
|
|
@@ -1718,7 +1895,7 @@ var AuthUI=(function(S){"use strict";var xe;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
1718
1895
|
/>
|
|
1719
1896
|
</div>
|
|
1720
1897
|
${this.error("password")}
|
|
1721
|
-
</form>`,
|
|
1898
|
+
</form>`,w`<button
|
|
1722
1899
|
class="btn btn-primary btn-sm"
|
|
1723
1900
|
type="submit"
|
|
1724
1901
|
form="password-form"
|
|
@@ -1726,9 +1903,9 @@ var AuthUI=(function(S){"use strict";var xe;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
1726
1903
|
>
|
|
1727
1904
|
${this.spinner("password")} ${this.t("update")}
|
|
1728
1905
|
</button>`)}
|
|
1729
|
-
${i?this.renderMfaCard():
|
|
1730
|
-
${i?this.renderRecoveryCard():
|
|
1731
|
-
</div>`}renderMfaCard(){const e=this.user,i=this.factors?.totp??!1,t=this.authenticator?
|
|
1906
|
+
${i?this.renderMfaCard():M}
|
|
1907
|
+
${i?this.renderRecoveryCard():M}
|
|
1908
|
+
</div>`}renderMfaCard(){const e=this.user,i=this.factors?.totp??!1,t=this.authenticator?E.isPreview?ko(this.authenticator.uri):new Gi(E.getClient()).getQR(this.authenticator.uri,400,1).toString():"";return this.card(this.t("twoFactor"),this.t("twoFactorDescription"),w`<div class="kv">
|
|
1732
1909
|
<div class="toggle-row">
|
|
1733
1910
|
<div class="row-main">
|
|
1734
1911
|
<span class="row-title">${this.t("twoFactor")}</span>
|
|
@@ -1743,11 +1920,11 @@ var AuthUI=(function(S){"use strict";var xe;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
1743
1920
|
aria-label=${this.t("twoFactor")}
|
|
1744
1921
|
></button>
|
|
1745
1922
|
</div>
|
|
1746
|
-
${e.mfa&&!(this.factors?.totp||e.emailVerification||e.phoneVerification)?
|
|
1923
|
+
${e.mfa&&!(this.factors?.totp||e.emailVerification||e.phoneVerification)?w`<div class="alert alert-warning" role="status">
|
|
1747
1924
|
${_.alert}
|
|
1748
1925
|
<div class="alert-body">
|
|
1749
1926
|
${this.t("mfaNoFactorWarning")}
|
|
1750
|
-
${this.factors?.totp?
|
|
1927
|
+
${this.factors?.totp?M:w`<div class="links">
|
|
1751
1928
|
<button
|
|
1752
1929
|
type="button"
|
|
1753
1930
|
class="btn btn-link"
|
|
@@ -1758,17 +1935,17 @@ var AuthUI=(function(S){"use strict";var xe;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
1758
1935
|
</button>
|
|
1759
1936
|
</div>`}
|
|
1760
1937
|
</div>
|
|
1761
|
-
</div>`:
|
|
1938
|
+
</div>`:M}
|
|
1762
1939
|
${this.error("mfa")}
|
|
1763
1940
|
<div class="separator"></div>
|
|
1764
1941
|
<div class="toggle-row">
|
|
1765
1942
|
<div class="row-main">
|
|
1766
1943
|
<span class="row-title"
|
|
1767
1944
|
>${_.smartphone} ${this.t("authenticatorApp")}
|
|
1768
|
-
${i?this.verifiedBadge(!0):
|
|
1945
|
+
${i?this.verifiedBadge(!0):M}</span
|
|
1769
1946
|
>
|
|
1770
1947
|
</div>
|
|
1771
|
-
${i?this.confirmRemoveAuthenticator?
|
|
1948
|
+
${i?this.confirmRemoveAuthenticator?w`<div class="inline">
|
|
1772
1949
|
<button
|
|
1773
1950
|
class="btn btn-outline btn-sm warn"
|
|
1774
1951
|
@click=${this.onRemoveAuthenticator}
|
|
@@ -1782,13 +1959,13 @@ var AuthUI=(function(S){"use strict";var xe;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
1782
1959
|
>
|
|
1783
1960
|
${this.t("cancel")}
|
|
1784
1961
|
</button>
|
|
1785
|
-
</div>`:
|
|
1962
|
+
</div>`:w`<button
|
|
1786
1963
|
class="btn btn-outline btn-sm"
|
|
1787
1964
|
@click=${this.onRemoveAuthenticator}
|
|
1788
1965
|
?disabled=${!!this.busy}
|
|
1789
1966
|
>
|
|
1790
1967
|
${this.spinner("remove-authenticator")} ${this.t("remove")}
|
|
1791
|
-
</button>`:this.authenticator?
|
|
1968
|
+
</button>`:this.authenticator?M:w`<button
|
|
1792
1969
|
class="btn btn-outline btn-sm"
|
|
1793
1970
|
@click=${this.onAddAuthenticator}
|
|
1794
1971
|
?disabled=${!!this.busy}
|
|
@@ -1797,7 +1974,7 @@ var AuthUI=(function(S){"use strict";var xe;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
1797
1974
|
</button>`}
|
|
1798
1975
|
</div>
|
|
1799
1976
|
${this.error("authenticator")} ${this.error("remove-authenticator")}
|
|
1800
|
-
${this.authenticator?
|
|
1977
|
+
${this.authenticator?w`<form class="form" @submit=${this.onVerifyAuthenticator} novalidate>
|
|
1801
1978
|
<p class="hint">${this.t("authenticatorScan")}</p>
|
|
1802
1979
|
<img class="qr" src=${t} alt=${this.t("qrCodeAlt")} />
|
|
1803
1980
|
<p class="hint center">${this.t("authenticatorManual")}</p>
|
|
@@ -1841,14 +2018,14 @@ var AuthUI=(function(S){"use strict";var xe;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
1841
2018
|
${this.t("cancel")}
|
|
1842
2019
|
</button>
|
|
1843
2020
|
</div>
|
|
1844
|
-
</form>`:
|
|
1845
|
-
</div>`)}renderRecoveryCard(){const e=this.factors?.recoveryCode??!1;return this.card(this.t("recoveryCodes"),this.t("recoveryCodesDescription")+" "+this.t("recoveryCodesOnceHint"),
|
|
1846
|
-
${this.recoveryCodes?
|
|
2021
|
+
</form>`:M}
|
|
2022
|
+
</div>`)}renderRecoveryCard(){const e=this.factors?.recoveryCode??!1;return this.card(this.t("recoveryCodes"),this.t("recoveryCodesDescription")+" "+this.t("recoveryCodesOnceHint"),w`<div class="kv">
|
|
2023
|
+
${this.recoveryCodes?w`<div class="alert alert-warning">
|
|
1847
2024
|
${_.alert}
|
|
1848
2025
|
<div class="alert-body">${this.t("recoveryCodesWarning")}</div>
|
|
1849
2026
|
</div>
|
|
1850
2027
|
<div class="codes">
|
|
1851
|
-
${this.recoveryCodes.map(i=>
|
|
2028
|
+
${this.recoveryCodes.map(i=>w`<span class="code">${i}</span>`)}
|
|
1852
2029
|
</div>
|
|
1853
2030
|
<div class="inline">
|
|
1854
2031
|
<button class="btn btn-outline btn-sm" @click=${this.onCopyCodes}>
|
|
@@ -1858,7 +2035,7 @@ var AuthUI=(function(S){"use strict";var xe;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
1858
2035
|
<button class="btn btn-ghost btn-sm" @click=${()=>this.recoveryCodes=null}>
|
|
1859
2036
|
${this.t("done")}
|
|
1860
2037
|
</button>
|
|
1861
|
-
</div>`:
|
|
2038
|
+
</div>`:w`<div class="inline">
|
|
1862
2039
|
<button
|
|
1863
2040
|
class="btn btn-outline btn-sm"
|
|
1864
2041
|
@click=${this.onRecoveryCodes}
|
|
@@ -1867,7 +2044,7 @@ var AuthUI=(function(S){"use strict";var xe;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
1867
2044
|
${this.spinner("recovery")} ${_.key}
|
|
1868
2045
|
${e?this.t("viewRecoveryCodes"):this.t("generateRecoveryCodes")}
|
|
1869
2046
|
</button>
|
|
1870
|
-
${e?this.confirmRegenerate?
|
|
2047
|
+
${e?this.confirmRegenerate?w`<div class="inline">
|
|
1871
2048
|
<button
|
|
1872
2049
|
class="btn btn-outline btn-sm warn"
|
|
1873
2050
|
@click=${this.onRegenerateRecoveryCodes}
|
|
@@ -1881,17 +2058,17 @@ var AuthUI=(function(S){"use strict";var xe;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
1881
2058
|
>
|
|
1882
2059
|
${this.t("cancel")}
|
|
1883
2060
|
</button>
|
|
1884
|
-
</div>`:
|
|
2061
|
+
</div>`:w`<button
|
|
1885
2062
|
class="btn btn-ghost btn-sm"
|
|
1886
2063
|
@click=${this.onRegenerateRecoveryCodes}
|
|
1887
2064
|
?disabled=${!!this.busy}
|
|
1888
2065
|
>
|
|
1889
2066
|
${_.refresh} ${this.t("regenerateRecoveryCodes")}
|
|
1890
|
-
</button>`:
|
|
2067
|
+
</button>`:M}
|
|
1891
2068
|
</div>`}
|
|
1892
2069
|
${this.error("recovery")}
|
|
1893
|
-
</div>`)}renderStepUp(){const e=this.stepUp,i=this.factors,t=[{factor:"totp",icon:_.smartphone,label:this.t("mfaUseAuthenticator"),available:i?.totp??!0},{factor:"email",icon:_.mail,label:this.t("mfaUseEmail"),available:i?.email??!0},{factor:"phone",icon:_.phone,label:this.t("mfaUsePhone"),available:i?.phone??!0},{factor:"recoverycode",icon:_.key,label:this.t("mfaUseRecoveryCode"),available:i?.recoveryCode??!0}];return this.card(this.t("mfaTitle"),this.t("errorChallengeRequired"),
|
|
1894
|
-
${e.challenge?
|
|
2070
|
+
</div>`)}renderStepUp(){const e=this.stepUp,i=this.factors,t=[{factor:"totp",icon:_.smartphone,label:this.t("mfaUseAuthenticator"),available:i?.totp??!0},{factor:"email",icon:_.mail,label:this.t("mfaUseEmail"),available:i?.email??!0},{factor:"phone",icon:_.phone,label:this.t("mfaUsePhone"),available:i?.phone??!0},{factor:"recoverycode",icon:_.key,label:this.t("mfaUseRecoveryCode"),available:i?.recoveryCode??!0}];return this.card(this.t("mfaTitle"),this.t("errorChallengeRequired"),w`<div class="kv">
|
|
2071
|
+
${e.challenge?w`<form class="form" @submit=${this.onStepUpVerify} novalidate>
|
|
1895
2072
|
<div class="field">
|
|
1896
2073
|
<label class="label" for="acc-stepup"
|
|
1897
2074
|
>${e.challenge.factor==="recoverycode"?this.t("recoveryCode"):this.t("code")}</label
|
|
@@ -1911,8 +2088,8 @@ var AuthUI=(function(S){"use strict";var xe;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
1911
2088
|
<button class="btn btn-primary btn-sm" type="submit" ?disabled=${!!this.busy}>
|
|
1912
2089
|
${this.spinner("stepup-code")} ${this.t("verifyCode")}
|
|
1913
2090
|
</button>
|
|
1914
|
-
</form>`:
|
|
1915
|
-
${t.filter(o=>o.available).map(o=>
|
|
2091
|
+
</form>`:w`<div class="stack-sm">
|
|
2092
|
+
${t.filter(o=>o.available).map(o=>w`<button
|
|
1916
2093
|
type="button"
|
|
1917
2094
|
class="choice"
|
|
1918
2095
|
@click=${()=>this.onStepUpFactor(o.factor)}
|
|
@@ -1922,18 +2099,18 @@ var AuthUI=(function(S){"use strict";var xe;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
1922
2099
|
</button>`)}
|
|
1923
2100
|
</div>`}
|
|
1924
2101
|
${this.error("stepup")} ${this.error("stepup-code")}
|
|
1925
|
-
</div>`,
|
|
2102
|
+
</div>`,w`<button class="btn btn-ghost btn-sm" @click=${()=>this.stepUp=null}>
|
|
1926
2103
|
${this.t("cancel")}
|
|
1927
|
-
</button>`)}deviceIcon(e){const i=(e.deviceName||"").toLowerCase(),t=(e.osName||e.osCode||"").toLowerCase();return/phone|tablet|mobile/.test(i)||/ios|android|ipados/.test(t)?_.smartphone:/desktop|browser/.test(i)||/mac|windows|linux|chrome os/.test(t)?_.monitor:_.globe}renderSessions(){const e=this.sessions;return
|
|
1928
|
-
${this.card(this.t("sessions"),void 0,
|
|
1929
|
-
${e===null?
|
|
2104
|
+
</button>`)}deviceIcon(e){const i=(e.deviceName||"").toLowerCase(),t=(e.osName||e.osCode||"").toLowerCase();return/phone|tablet|mobile/.test(i)||/ios|android|ipados/.test(t)?_.smartphone:/desktop|browser/.test(i)||/mac|windows|linux|chrome os/.test(t)?_.monitor:_.globe}renderSessions(){const e=this.sessions;return w`<div class="section">
|
|
2105
|
+
${this.card(this.t("sessions"),void 0,w`${this.error("sessions")}
|
|
2106
|
+
${e===null?w`<div class="empty"><span class="spinner"></span></div>`:e.length===0?this.emptyState(_.monitor,this.t("noSessions"),this.t("noSessionsDescription")):e.map(i=>w`<div class="row">
|
|
1930
2107
|
<div class="inline">
|
|
1931
2108
|
<span class="device">${this.deviceIcon(i)}</span>
|
|
1932
2109
|
<div class="row-main">
|
|
1933
2110
|
<span class="row-title">
|
|
1934
2111
|
${i.clientName||i.provider}
|
|
1935
|
-
${i.clientVersion?
|
|
1936
|
-
${i.current?
|
|
2112
|
+
${i.clientVersion?w`<span class="muted small">${i.clientVersion}</span>`:M}
|
|
2113
|
+
${i.current?w`<span class="badge badge-info">${this.t("currentSession")}</span>`:M}
|
|
1937
2114
|
</span>
|
|
1938
2115
|
<span class="row-sub"
|
|
1939
2116
|
>${[i.osName,i.countryName||i.countryCode,i.ip].filter(Boolean).join(" · ")}</span
|
|
@@ -1941,7 +2118,7 @@ var AuthUI=(function(S){"use strict";var xe;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
1941
2118
|
</div>
|
|
1942
2119
|
</div>
|
|
1943
2120
|
<div class="row-actions">
|
|
1944
|
-
${this.busy===`session-${i.$id}`?
|
|
2121
|
+
${this.busy===`session-${i.$id}`?w`<span class="spinner"></span>`:M}
|
|
1945
2122
|
<button
|
|
1946
2123
|
class="btn btn-ghost btn-sm"
|
|
1947
2124
|
@click=${()=>this.onDeleteSession(i.$id)}
|
|
@@ -1952,73 +2129,63 @@ var AuthUI=(function(S){"use strict";var xe;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
1952
2129
|
</button>
|
|
1953
2130
|
</div>
|
|
1954
2131
|
</div>`)}`)}
|
|
1955
|
-
${this.card(this.t("signOutAllSessions"),this.t("signOutAllSessionsDescription"),
|
|
1956
|
-
|
|
1957
|
-
<button
|
|
1958
|
-
class="btn btn-outline btn-sm warn"
|
|
1959
|
-
@click=${this.onSignOutAll}
|
|
1960
|
-
?disabled=${!!this.busy}
|
|
1961
|
-
>
|
|
1962
|
-
${this.spinner("sessions-all")} ${_.logOut} ${this.t("signOutAllSessions")}
|
|
1963
|
-
</button>
|
|
1964
|
-
<button
|
|
1965
|
-
class="btn btn-ghost btn-sm"
|
|
1966
|
-
@click=${()=>this.confirmSignOutAll=!1}
|
|
1967
|
-
>
|
|
1968
|
-
${this.t("cancel")}
|
|
1969
|
-
</button>
|
|
1970
|
-
</div>`:b`<button
|
|
2132
|
+
${this.card(this.t("signOutAllSessions"),this.t("signOutAllSessionsDescription"),this.confirmSignOutAll?this.error("sessions-all"):w`${this.error("sessions-all")}
|
|
2133
|
+
<button
|
|
1971
2134
|
class="btn btn-outline btn-sm warn"
|
|
1972
2135
|
@click=${this.onSignOutAll}
|
|
1973
2136
|
?disabled=${!!this.busy}
|
|
1974
2137
|
>
|
|
1975
2138
|
${this.spinner("sessions-all")} ${_.logOut} ${this.t("signOutAllSessions")}
|
|
1976
|
-
</button
|
|
1977
|
-
</div>`}renderConnections(){const e=this.identities,i=this.config?.methods?.oauth??[];return
|
|
1978
|
-
${this.card(this.t("connections"),void 0,
|
|
1979
|
-
${e===null?
|
|
2139
|
+
</button>`,this.confirmSignOutAll?this.confirmFooter(()=>{this.confirmSignOutAll=!1},()=>{this.onSignOutAll()},this.t("signOutAllSessions"),"sessions-all"):void 0,!0)}
|
|
2140
|
+
</div>`}renderConnections(){const e=this.identities,i=this.config?.methods?.oauth??[];return w`<div class="section">
|
|
2141
|
+
${this.card(this.t("connections"),void 0,w`${this.error("identities")}
|
|
2142
|
+
${e===null?w`<div class="empty"><span class="spinner"></span></div>`:e.length===0?this.emptyState(_.link,this.t("noConnections"),this.t("noConnectionsDescription")):e.map(t=>w`<div class="row">
|
|
1980
2143
|
<div class="inline">
|
|
1981
|
-
<span class="device">${
|
|
2144
|
+
<span class="device">${Ct(t.provider)}</span>
|
|
1982
2145
|
<div class="row-main">
|
|
1983
|
-
<span class="row-title">${
|
|
2146
|
+
<span class="row-title">${lt(t.provider)}</span>
|
|
1984
2147
|
<span class="row-sub">${t.providerEmail||t.providerUid}</span>
|
|
1985
2148
|
</div>
|
|
1986
2149
|
</div>
|
|
1987
2150
|
<div class="row-actions">
|
|
1988
|
-
${this.confirmDisconnectId===t.$id?
|
|
2151
|
+
${this.confirmDisconnectId===t.$id?w`<div class="inline">
|
|
1989
2152
|
<button
|
|
1990
|
-
|
|
1991
|
-
|
|
2153
|
+
type="button"
|
|
2154
|
+
class="btn btn-outline btn-sm"
|
|
2155
|
+
autofocus
|
|
1992
2156
|
?disabled=${!!this.busy}
|
|
2157
|
+
@click=${()=>this.confirmDisconnectId=null}
|
|
1993
2158
|
>
|
|
1994
|
-
${this.
|
|
1995
|
-
${this.t("disconnect")}
|
|
2159
|
+
${this.t("cancel")}
|
|
1996
2160
|
</button>
|
|
1997
2161
|
<button
|
|
1998
|
-
|
|
1999
|
-
|
|
2162
|
+
type="button"
|
|
2163
|
+
class="btn btn-destructive btn-sm"
|
|
2164
|
+
@click=${()=>this.onDeleteIdentity(t.$id)}
|
|
2165
|
+
?disabled=${!!this.busy}
|
|
2000
2166
|
>
|
|
2001
|
-
${this.t
|
|
2167
|
+
${this.busy===`identity-${t.$id}`?w`<span class="spinner"></span>`:M}
|
|
2168
|
+
${this.t("disconnect")}
|
|
2002
2169
|
</button>
|
|
2003
|
-
</div>`:
|
|
2170
|
+
</div>`:w`<button
|
|
2004
2171
|
class="btn btn-ghost btn-sm"
|
|
2005
2172
|
@click=${()=>this.onDeleteIdentity(t.$id)}
|
|
2006
2173
|
?disabled=${!!this.busy}
|
|
2007
2174
|
>
|
|
2008
|
-
${this.busy===`identity-${t.$id}`?
|
|
2175
|
+
${this.busy===`identity-${t.$id}`?w`<span class="spinner"></span>`:M}
|
|
2009
2176
|
${this.t("disconnect")}
|
|
2010
2177
|
</button>`}
|
|
2011
2178
|
</div>
|
|
2012
|
-
</div>`)}`,i.length>0?
|
|
2179
|
+
</div>`)}`,i.length>0?w`${i.filter(t=>!(e??[]).some(o=>o.provider===t)).map(t=>w`<button
|
|
2013
2180
|
class="btn btn-outline btn-sm"
|
|
2014
|
-
@click=${()=>{this.run(`connect-${t}`,()=>
|
|
2181
|
+
@click=${()=>{this.run(`connect-${t}`,()=>E.signInWithOAuth(t))}}
|
|
2015
2182
|
?disabled=${!!this.busy}
|
|
2016
2183
|
>
|
|
2017
|
-
${this.spinner(`connect-${t}`)} ${
|
|
2018
|
-
${this.t("connectProvider",{provider:
|
|
2184
|
+
${this.spinner(`connect-${t}`)} ${Ct(t)}
|
|
2185
|
+
${this.t("connectProvider",{provider:lt(t)})}
|
|
2019
2186
|
</button>`)}`:void 0)}
|
|
2020
|
-
</div>`}renderActivity(){const e=this.logs;return
|
|
2021
|
-
${this.card(this.t("activity"),void 0,
|
|
2187
|
+
</div>`}renderActivity(){const e=this.logs;return w`<div class="section">
|
|
2188
|
+
${this.card(this.t("activity"),void 0,w`${e===null?w`<div class="empty"><span class="spinner"></span></div>`:e.length===0?this.emptyState(_.activity,this.t("noActivity"),this.t("noActivityDescription")):e.map(i=>w`<div class="row">
|
|
2022
2189
|
<div class="row-main">
|
|
2023
2190
|
<span class="row-title">${i.event}</span>
|
|
2024
2191
|
<span class="row-sub"
|
|
@@ -2027,7 +2194,7 @@ var AuthUI=(function(S){"use strict";var xe;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
2027
2194
|
</div>
|
|
2028
2195
|
<span class="log-time">${new Date(i.time).toLocaleString()}</span>
|
|
2029
2196
|
</div>`)}`)}
|
|
2030
|
-
</div>`}},
|
|
2197
|
+
</div>`}},k.AuthUIAccount.styles=[...Ce.styles,Le`
|
|
2031
2198
|
:host {
|
|
2032
2199
|
display: block;
|
|
2033
2200
|
width: 100%;
|
|
@@ -2121,7 +2288,7 @@ var AuthUI=(function(S){"use strict";var xe;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
2121
2288
|
.warn {
|
|
2122
2289
|
color: var(--authui-destructive-foreground);
|
|
2123
2290
|
}
|
|
2124
|
-
`],O([F({type:Boolean})],
|
|
2291
|
+
`],O([F({type:Boolean})],k.AuthUIAccount.prototype,"embedded",2),O([F({type:String})],k.AuthUIAccount.prototype,"tab",2),O([V()],k.AuthUIAccount.prototype,"active",2),O([V()],k.AuthUIAccount.prototype,"busy",2),O([V()],k.AuthUIAccount.prototype,"notice",2),O([V()],k.AuthUIAccount.prototype,"errors",2),O([V()],k.AuthUIAccount.prototype,"nameInput",2),O([V()],k.AuthUIAccount.prototype,"emailInput",2),O([V()],k.AuthUIAccount.prototype,"emailPassword",2),O([V()],k.AuthUIAccount.prototype,"phoneInput",2),O([V()],k.AuthUIAccount.prototype,"phonePassword",2),O([V()],k.AuthUIAccount.prototype,"phoneCode",2),O([V()],k.AuthUIAccount.prototype,"phoneCodeSent",2),O([V()],k.AuthUIAccount.prototype,"guestName",2),O([V()],k.AuthUIAccount.prototype,"oldPassword",2),O([V()],k.AuthUIAccount.prototype,"newPassword",2),O([V()],k.AuthUIAccount.prototype,"newPasswordConfirm",2),O([V()],k.AuthUIAccount.prototype,"authenticator",2),O([V()],k.AuthUIAccount.prototype,"authenticatorCode",2),O([V()],k.AuthUIAccount.prototype,"factors",2),O([V()],k.AuthUIAccount.prototype,"recoveryCodes",2),O([V()],k.AuthUIAccount.prototype,"stepUp",2),O([V()],k.AuthUIAccount.prototype,"stepUpCode",2),O([V()],k.AuthUIAccount.prototype,"copied",2),O([V()],k.AuthUIAccount.prototype,"sessions",2),O([V()],k.AuthUIAccount.prototype,"identities",2),O([V()],k.AuthUIAccount.prototype,"logs",2),O([V()],k.AuthUIAccount.prototype,"logsSupported",2),O([V()],k.AuthUIAccount.prototype,"confirmDelete",2),O([V()],k.AuthUIAccount.prototype,"confirmRegenerate",2),O([V()],k.AuthUIAccount.prototype,"confirmRemoveAuthenticator",2),O([V()],k.AuthUIAccount.prototype,"confirmSignOutAll",2),O([V()],k.AuthUIAccount.prototype,"confirmDisconnectId",2),O([V()],k.AuthUIAccount.prototype,"verifyEmailCooldownUntil",2),k.AuthUIAccount=O([Ye("authui-account")],k.AuthUIAccount);var Wo=Object.defineProperty,Go=Object.getOwnPropertyDescriptor,De=(n,e,i,t)=>{for(var o=t>1?void 0:t?Go(e,i):e,a=n.length-1,s;a>=0;a--)(s=n[a])&&(o=(t?s(e,i,o):s(o))||o);return t&&o&&Wo(e,i,o),o};k.AuthUIModal=class extends Ce{constructor(){super(...arguments),this.open=!1,this.view="sign-in",this.closeOnSuccess=!0,this.handledPending=null,this.scrollCue=!1,this.bodyResizeObserver=null,this.onOpenEvent=e=>{const i=e.detail??{};this.show(i.view)},this.onCloseEvent=()=>this.hide(),this.syncScrollCue=()=>{const e=this.bodyEl;if(!e){this.scrollCue=!1;return}const i=e.scrollHeight>e.clientHeight+1,t=e.scrollTop+e.clientHeight>=e.scrollHeight-4,o=i&&!t;o!==this.scrollCue&&(this.scrollCue=o)},this.onSuccess=()=>{this.fire("authui-signed-in",this.auth.user),this.closeOnSuccess&&!this.config?.successUrl&&this.hide()},this.onInnerOpen=e=>{const i=e.detail?.view;i&&(this.view=i)},this.onBackdrop=e=>{e.target===this.dialog&&this.hide()}}connectedCallback(){super.connectedCallback(),window.addEventListener("authui:open",this.onOpenEvent),window.addEventListener("authui:close",this.onCloseEvent)}disconnectedCallback(){super.disconnectedCallback(),window.removeEventListener("authui:open",this.onOpenEvent),window.removeEventListener("authui:close",this.onCloseEvent),this.bodyResizeObserver?.disconnect(),this.bodyResizeObserver=null}show(e){e==="account"&&this.auth.status!=="signed-in"?this.view="sign-in":e?this.view=e:this.auth.status==="signed-in"?this.view="account":this.view="sign-in",this.open=!0}hide(){this.open=!1}observeBody(){this.bodyResizeObserver?.disconnect(),this.bodyResizeObserver=null;const e=this.bodyEl;if(!e||typeof ResizeObserver>"u"){this.syncScrollCue();return}this.bodyResizeObserver=new ResizeObserver(()=>this.syncScrollCue()),this.bodyResizeObserver.observe(e),e.firstElementChild&&this.bodyResizeObserver.observe(e.firstElementChild),this.syncScrollCue()}updated(e){if(e.has("open")&&this.dialog&&(this.open&&!this.dialog.open&&(this.dialog.showModal(),requestAnimationFrame(()=>{this.focusPrimary(),this.observeBody()})),!this.open&&this.dialog.open&&this.dialog.close(),this.open||(this.scrollCue=!1,this.bodyResizeObserver?.disconnect(),this.bodyResizeObserver=null)),e.has("auth")){const i=this.auth.pending;i&&i!==this.handledPending&&i.type!=="notice"&&(this.handledPending=i,this.view="sign-in",this.open=!0),i?.type==="notice"&&i!==this.handledPending&&(this.handledPending=i,this.open=!0),this.open&&this.view==="account"&&this.auth.status!=="signed-in"&&(this.view="sign-in"),this.open&&this.auth.status==="signed-out"&&this.view==="account"&&(this.view="sign-in")}this.open&&(e.has("view")||e.has("auth")||e.has("open"))&&requestAnimationFrame(()=>this.observeBody())}focusPrimary(){const e=this.dialog;if(!e)return;const t=e.querySelector("authui-sign-in, authui-account")?.shadowRoot;(t?.querySelector(".alert[role=alert], .alert[role=status]")??t?.querySelector("input:not([type=hidden]), button.choice, [role=tab]"))?.focus?.()}render(){const e=this.auth.status==="signed-in",i=this.view==="account"&&e;return w`
|
|
2125
2292
|
<dialog
|
|
2126
2293
|
class=${i?"wide":""}
|
|
2127
2294
|
aria-label=${i?this.t("dialogAccount"):this.t("dialogSignIn")}
|
|
@@ -2142,15 +2309,15 @@ var AuthUI=(function(S){"use strict";var xe;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
2142
2309
|
</button>
|
|
2143
2310
|
</div>
|
|
2144
2311
|
<div class="body" @scroll=${this.syncScrollCue}>
|
|
2145
|
-
${this.open?i?
|
|
2312
|
+
${this.open?i?w`<authui-account embedded></authui-account>`:w`<authui-sign-in
|
|
2146
2313
|
embedded
|
|
2147
2314
|
.view=${this.view==="account"?"sign-in":this.view}
|
|
2148
|
-
></authui-sign-in>`:
|
|
2315
|
+
></authui-sign-in>`:M}
|
|
2149
2316
|
</div>
|
|
2150
2317
|
<div class="scroll-fade ${this.scrollCue?"show":""}" aria-hidden="true"></div>
|
|
2151
2318
|
</div>
|
|
2152
2319
|
</dialog>
|
|
2153
|
-
`}},
|
|
2320
|
+
`}},k.AuthUIModal.styles=[...Ce.styles,Le`
|
|
2154
2321
|
:host {
|
|
2155
2322
|
display: contents;
|
|
2156
2323
|
}
|
|
@@ -2236,24 +2403,24 @@ var AuthUI=(function(S){"use strict";var xe;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
2236
2403
|
authui-account {
|
|
2237
2404
|
max-width: none;
|
|
2238
2405
|
}
|
|
2239
|
-
`],De([F({type:Boolean,reflect:!0})],
|
|
2406
|
+
`],De([F({type:Boolean,reflect:!0})],k.AuthUIModal.prototype,"open",2),De([F({type:String})],k.AuthUIModal.prototype,"view",2),De([F({type:Boolean,attribute:"close-on-success"})],k.AuthUIModal.prototype,"closeOnSuccess",2),De([V()],k.AuthUIModal.prototype,"handledPending",2),De([V()],k.AuthUIModal.prototype,"scrollCue",2),De([Dt("dialog")],k.AuthUIModal.prototype,"dialog",2),De([Dt(".body")],k.AuthUIModal.prototype,"bodyEl",2),k.AuthUIModal=De([Ye("authui-modal")],k.AuthUIModal);var Ko=Object.defineProperty,Yo=Object.getOwnPropertyDescriptor,Mt=(n,e,i,t)=>{for(var o=t>1?void 0:t?Yo(e,i):e,a=n.length-1,s;a>=0;a--)(s=n[a])&&(o=(t?s(e,i,o):s(o))||o);return t&&o&&Ko(e,i,o),o};k.AuthUIButton=class extends Ce{constructor(){super(...arguments),this.view="sign-in",this.variant="primary",this.size="md"}render(){const e=this.size==="md"?"":`btn-${this.size}`;return w`<button
|
|
2240
2407
|
class="btn btn-${this.variant} ${e}"
|
|
2241
|
-
@click=${()=>
|
|
2408
|
+
@click=${()=>it(this.view)}
|
|
2242
2409
|
part="button"
|
|
2243
2410
|
>
|
|
2244
2411
|
<slot
|
|
2245
2412
|
>${this.view==="sign-up"?this.t("signUp"):this.view==="account"?this.t("manageAccount"):this.t("signIn")}</slot
|
|
2246
2413
|
>
|
|
2247
|
-
</button>`}},
|
|
2414
|
+
</button>`}},k.AuthUIButton.styles=[...Ce.styles,Le`
|
|
2248
2415
|
:host {
|
|
2249
2416
|
display: inline-block;
|
|
2250
2417
|
}
|
|
2251
2418
|
.btn {
|
|
2252
2419
|
width: 100%;
|
|
2253
2420
|
}
|
|
2254
|
-
`],
|
|
2421
|
+
`],Mt([F({type:String})],k.AuthUIButton.prototype,"view",2),Mt([F({type:String})],k.AuthUIButton.prototype,"variant",2),Mt([F({type:String})],k.AuthUIButton.prototype,"size",2),k.AuthUIButton=Mt([Ye("authui-button")],k.AuthUIButton);var Jo=Object.defineProperty,Zo=Object.getOwnPropertyDescriptor,Be=(n,e,i,t)=>{for(var o=t>1?void 0:t?Zo(e,i):e,a=n.length-1,s;a>=0;a--)(s=n[a])&&(o=(t?s(e,i,o):s(o))||o);return t&&o&&Jo(e,i,o),o};k.AuthUIUserButton=class extends Ce{constructor(){super(...arguments),this.showTeams=!1,this.src="",this.menuOpen=!1,this.menuAbove=!1,this.teams=[],this.teamsLoading=!1,this.activeTeamId=null,this.onReposition=()=>{this.menuOpen&&this.placeMenu()},this.onDocumentClick=e=>{e.composedPath().includes(this)||(this.menuOpen=!1)},this.onKeydown=e=>{if(!this.menuOpen){(e.key==="ArrowDown"||e.key==="Enter"||e.key===" ")&&e.target===this.renderRoot?.querySelector(".trigger")&&e.key==="ArrowDown"&&(e.preventDefault(),this.menuOpen=!0,requestAnimationFrame(()=>this.focusMenuItem(0)));return}const i=[...this.renderRoot?.querySelectorAll('[role="menuitem"]')??[]],t=i.findIndex(o=>o===this.shadowRoot?.activeElement);if(e.key==="Escape"){e.preventDefault(),this.menuOpen=!1,this.renderRoot?.querySelector(".trigger")?.focus();return}e.key==="ArrowDown"?(e.preventDefault(),this.focusMenuItem(t<0?0:(t+1)%i.length)):e.key==="ArrowUp"?(e.preventDefault(),this.focusMenuItem(t<0?i.length-1:(t-1+i.length)%i.length)):e.key==="Home"?(e.preventDefault(),this.focusMenuItem(0)):e.key==="End"&&(e.preventDefault(),this.focusMenuItem(i.length-1))},this.toggleMenu=()=>{this.menuOpen=!this.menuOpen,this.menuOpen&&this.showTeams&&this.loadTeams()},this.selectTeam=e=>{E.setActiveTeam({$id:e.$id,name:e.name}),this.activeTeamId=e.$id,this.dispatchEvent(new CustomEvent("authui-active-team",{detail:{teamId:e.$id,team:e},bubbles:!0,composed:!0}))}}connectedCallback(){super.connectedCallback(),document.addEventListener("click",this.onDocumentClick,!0),document.addEventListener("keydown",this.onKeydown),this.addEventListener("keydown",this.onKeydown),window.addEventListener("resize",this.onReposition),window.addEventListener("scroll",this.onReposition,!0)}disconnectedCallback(){super.disconnectedCallback(),document.removeEventListener("click",this.onDocumentClick,!0),document.removeEventListener("keydown",this.onKeydown),this.removeEventListener("keydown",this.onKeydown),window.removeEventListener("resize",this.onReposition),window.removeEventListener("scroll",this.onReposition,!0)}placeMenu(){const e=this.renderRoot?.querySelector(".trigger"),i=this.renderRoot?.querySelector(".menu");if(!e||!i)return;const t=e.getBoundingClientRect(),o=6,a=8;i.style.maxHeight="";const s=i.offsetHeight+o,r=window.innerHeight-t.bottom,d=t.top,c=r<s&&d>r;c!==this.menuAbove&&(this.menuAbove=c);const p=Math.max(80,(c?d:r)-o-a);i.style.maxHeight=`${p}px`}focusMenuItem(e){[...this.renderRoot?.querySelectorAll('[role="menuitem"]')??[]][e]?.focus()}updated(e){e.has("menuOpen")&&(this.menuOpen?(this.showTeams&&this.loadTeams(),requestAnimationFrame(()=>{this.placeMenu(),this.focusMenuItem(0)})):this.menuAbove=!1),this.menuOpen&&(e.has("teams")||e.has("teamsLoading"))&&requestAnimationFrame(()=>this.placeMenu())}async loadTeams(){this.teamsLoading=!0,this.activeTeamId=E.getActiveTeamId();try{this.teams=await E.listTeams(),this.activeTeamId&&!this.teams.some(e=>e.$id===this.activeTeamId)&&(this.activeTeamId=null,E.setActiveTeam(null))}catch{this.teams=[]}finally{this.teamsLoading=!1}}render(){const{status:e,user:i,configured:t}=this.auth;if(e==="loading"&&t)return w`<span class="avatar"><span class="spinner"></span></span>`;if(e!=="signed-in"||!i)return w`<button class="btn btn-primary btn-sm" @click=${()=>it("sign-in")}>
|
|
2255
2422
|
<slot>${this.t("signIn")}</slot>
|
|
2256
|
-
</button>`;const o=i.name||i.email||i.phone||this.t("guestAccount");return
|
|
2423
|
+
</button>`;const o=i.name||i.email||i.phone||this.t("guestAccount");return w`
|
|
2257
2424
|
<button
|
|
2258
2425
|
class="trigger"
|
|
2259
2426
|
aria-haspopup="menu"
|
|
@@ -2262,19 +2429,19 @@ var AuthUI=(function(S){"use strict";var xe;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
2262
2429
|
aria-label=${o}
|
|
2263
2430
|
>
|
|
2264
2431
|
<span class="avatar"
|
|
2265
|
-
>${this.src?
|
|
2432
|
+
>${this.src?w`<img src=${this.src} alt="" />`:fi(o)}</span
|
|
2266
2433
|
>
|
|
2267
2434
|
</button>
|
|
2268
|
-
${this.menuOpen?
|
|
2435
|
+
${this.menuOpen?w`<div class="menu ${this.menuAbove?"above":""}" role="menu">
|
|
2269
2436
|
<div class="menu-header">
|
|
2270
2437
|
<span class="row-title" title=${o}>${o}</span>
|
|
2271
|
-
${i.email&&i.name?
|
|
2438
|
+
${i.email&&i.name?w`<span class="row-sub" title=${i.email}>${i.email}</span>`:M}
|
|
2272
2439
|
</div>
|
|
2273
|
-
${this.showTeams?
|
|
2440
|
+
${this.showTeams?w`<div class="menu-section">
|
|
2274
2441
|
<div class="menu-section-label">${this.t("teamsLabel")}</div>
|
|
2275
|
-
${this.teamsLoading?
|
|
2442
|
+
${this.teamsLoading?w`<div class="menu-item" aria-busy="true">
|
|
2276
2443
|
<span class="spinner"></span>
|
|
2277
|
-
</div>`:this.teams.length===0?
|
|
2444
|
+
</div>`:this.teams.length===0?w`<div class="menu-item" role="note">${this.t("noTeams")}</div>`:this.teams.map(a=>w`<button
|
|
2278
2445
|
class="menu-item ${a.$id===this.activeTeamId?"active":""}"
|
|
2279
2446
|
role="menuitemradio"
|
|
2280
2447
|
aria-checked=${a.$id===this.activeTeamId?"true":"false"}
|
|
@@ -2282,25 +2449,25 @@ var AuthUI=(function(S){"use strict";var xe;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
2282
2449
|
>
|
|
2283
2450
|
${_.users}
|
|
2284
2451
|
<span title=${a.name}>${a.name}</span>
|
|
2285
|
-
${a.$id===this.activeTeamId?
|
|
2452
|
+
${a.$id===this.activeTeamId?w`<span class="check">${_.check}</span>`:M}
|
|
2286
2453
|
</button>`)}
|
|
2287
|
-
</div>`:
|
|
2454
|
+
</div>`:M}
|
|
2288
2455
|
<button
|
|
2289
2456
|
class="menu-item"
|
|
2290
2457
|
role="menuitem"
|
|
2291
|
-
@click=${()=>{this.menuOpen=!1,
|
|
2458
|
+
@click=${()=>{this.menuOpen=!1,it("account")}}
|
|
2292
2459
|
>
|
|
2293
2460
|
${_.settings} ${this.t("manageAccount")}
|
|
2294
2461
|
</button>
|
|
2295
2462
|
<button
|
|
2296
2463
|
class="menu-item"
|
|
2297
2464
|
role="menuitem"
|
|
2298
|
-
@click=${()=>{this.menuOpen=!1,
|
|
2465
|
+
@click=${()=>{this.menuOpen=!1,E.signOut()}}
|
|
2299
2466
|
>
|
|
2300
2467
|
${_.logOut} ${this.t("signOut")}
|
|
2301
2468
|
</button>
|
|
2302
|
-
</div>`:
|
|
2303
|
-
`}},
|
|
2469
|
+
</div>`:M}
|
|
2470
|
+
`}},k.AuthUIUserButton.styles=[...Ce.styles,Le`
|
|
2304
2471
|
:host {
|
|
2305
2472
|
display: inline-block;
|
|
2306
2473
|
position: relative;
|
|
@@ -2414,4 +2581,4 @@ var AuthUI=(function(S){"use strict";var xe;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
2414
2581
|
height: 32px;
|
|
2415
2582
|
font-size: 13px;
|
|
2416
2583
|
}
|
|
2417
|
-
`],Be([F({type:Boolean,attribute:"show-teams"})],
|
|
2584
|
+
`],Be([F({type:Boolean,attribute:"show-teams"})],k.AuthUIUserButton.prototype,"showTeams",2),Be([F({type:String})],k.AuthUIUserButton.prototype,"src",2),Be([V()],k.AuthUIUserButton.prototype,"menuOpen",2),Be([V()],k.AuthUIUserButton.prototype,"menuAbove",2),Be([V()],k.AuthUIUserButton.prototype,"teams",2),Be([V()],k.AuthUIUserButton.prototype,"teamsLoading",2),Be([V()],k.AuthUIUserButton.prototype,"activeTeamId",2),k.AuthUIUserButton=Be([Ye("authui-user-button")],k.AuthUIUserButton);function cn(n){return E.configure(n),bn}function dn(n){it(n)}function ln(){rn()}function un(){return E.signOut()}function pn(){return E.user}function hn(){return E.getState()}function fn(){return E.getClient()}function gn(){return E.getAccount()}function yn(){return E.previewSignIn()}function mn(n,e){return E.on(n,e)}const bn={init:cn,open:dn,close:ln,signOut:un,getUser:pn,getState:hn,getClient:fn,getAccount:gn,on:mn,previewSignIn:yn,store:E};return k.AuthStore=tn,k.AuthUI=bn,k.AuthUIElement=Ce,k.CRITICAL_FOUC_CSS=qo,k.ErrorTypes=ee,k.FOUC_CSS=pi,k.PreviewAccount=Qi,k.appwrite=wo,k.authStore=E,k.clearLastMethod=So,k.clearPendingOAuth=li,k.close=ln,k.closeModal=rn,k.defaultStrings=Yi,k.describeError=pt,k.getAccount=gn,k.getClient=fn,k.getLastMethod=Ze,k.getState=hn,k.getStoredActiveTeamId=ri,k.getUser=pn,k.init=cn,k.isConfigError=Ti,k.on=mn,k.open=dn,k.openModal=it,k.previewSignIn=yn,k.providerLabel=lt,k.rememberLastMethod=tt,k.rememberPendingOAuth=di,k.scorePassword=Ut,k.setStoredActiveTeamId=zi,k.signOut=un,k.stashPendingOAuth=Oi,k.toAuthUIError=Je,Object.defineProperty(k,Symbol.toStringTag,{value:"Module"}),k})({});
|