@getauthui/core 0.1.8 → 0.1.10
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 +3 -3
- package/dist/{authui-user-button-BTKKRjIx.js → authui-user-button-CPPH9iUx.js} +677 -502
- package/dist/authui.cdn.js +310 -217
- package/dist/authui.cdn.mjs +951 -777
- package/dist/authui.js +2 -2
- package/dist/components/authui-config.d.ts +4 -0
- package/dist/components/authui-config.d.ts.map +1 -1
- package/dist/components/authui-modal.d.ts +5 -1
- package/dist/components/authui-modal.d.ts.map +1 -1
- package/dist/components/authui-show.d.ts +8 -0
- package/dist/components/authui-show.d.ts.map +1 -1
- package/dist/components/authui-sign-in.d.ts +9 -0
- package/dist/components/authui-sign-in.d.ts.map +1 -1
- package/dist/components/authui-user-button.d.ts +8 -0
- package/dist/components/authui-user-button.d.ts.map +1 -1
- package/dist/i18n.d.ts.map +1 -1
- package/dist/react/index.d.ts +16 -3
- package/dist/react/index.d.ts.map +1 -1
- package/dist/react.js +75 -45
- package/dist/styles/base.d.ts.map +1 -1
- package/dist/types.d.ts +27 -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"),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?`[
|
|
1
|
+
var AuthUI=(function(A){"use strict";var qe;const yt=globalThis,Rt=yt.ShadowRoot&&(yt.ShadyCSS===void 0||yt.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),Ne=(n,...e)=>{const i=n.length===1?n[0]:e.reduce((t,o,a)=>t+(r=>{if(r._$cssResult$===!0)return r.cssText;if(typeof r=="number")return r;throw Error("Value passed to 'css' function must be a 'css' function result: "+r+". 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=yt.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,mt=globalThis,Si=mt.trustedTypes,Un=Si?Si.emptyScript:"",Cn=mt.reactiveElementPolyfillSupport,ot=(n,e)=>n,bt={toAttribute(n,e){switch(e){case Boolean:n=n?Un: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:bt,reflect:!1,useDefault:!1,hasChanged:qt};Symbol.metadata??=Symbol("metadata"),mt.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(r){this[i]=r}};return{get:o,set(r){const s=o?.call(this);a?.call(this,r),this.requestUpdate(e,s,t)},configurable:!0,enumerable:!0}}static getPropertyOptions(e){return this.elementProperties.get(e)??$i}static _$Ei(){if(this.hasOwnProperty(ot("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(ot("finalized")))return;if(this.finalized=!0,this._$Ei(),this.hasOwnProperty(ot("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:bt).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),r=typeof a.converter=="function"?{fromAttribute:a.converter}:a.converter?.fromAttribute!==void 0?a.converter:bt;this._$Em=o;const s=r.fromAttribute(i,a.type);this[o]=s??this._$Ej?.get(o)??s,this._$Em=null}}requestUpdate(e,i,t,o=!1,a){if(e!==void 0){const r=this.constructor;if(o===!1&&(a=this[e]),t??=r.getPropertyOptions(e),!((t.hasChanged??qt)(a,i)||t.useDefault&&t.reflect&&a===this._$Ej?.get(e)&&!this.hasAttribute(r._$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},r){t&&!(this._$Ej??=new Map).has(e)&&(this._$Ej.set(e,r??i??this[e]),a!==!0||r!==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:r}=a,s=this[o];r!==!0||this._$AL.has(o)||s===void 0||this.C(o,void 0,a,s)}}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[ot("elementProperties")]=new Map,Te[ot("finalized")]=new Map,Cn?.({ReactiveElement:Te}),(mt.reactiveElementVersions??=[]).push("2.1.2");const _t=globalThis,ji=n=>n,wt=_t.trustedTypes,Pi=wt?wt.createPolicy("lit-html",{createHTML:n=>n}):void 0,Ui="$lit$",He=`lit$${Math.random().toFixed(9).slice(2)}$`,Ci="?"+He,xn=`<${Ci}>`,Ve=document,at=()=>Ve.createComment(""),st=n=>n===null||typeof n!="object"&&typeof n!="function",Lt=Array.isArray,Mn=n=>Lt(n)||typeof n?.[Symbol.iterator]=="function",Nt=`[
|
|
2
|
+
\f\r]`,rt=/<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g,xi=/-->/g,Mi=/>/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}),b=_i(1),G=_i(2),ze=Symbol.for("lit-noChange"),x=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>":"",r=rt;for(let s=0;s<i;s++){const d=n[s];let c,p,l=-1,m=0;for(;m<d.length&&(r.lastIndex=m,p=r.exec(d),p!==null);)m=r.lastIndex,r===rt?p[1]==="!--"?r=xi:p[1]!==void 0?r=Mi:p[2]!==void 0?(qi.test(p[2])&&(o=RegExp("</"+p[2],"g")),r=We):p[3]!==void 0&&(r=We):r===We?p[0]===">"?(r=o??rt,l=-1):p[1]===void 0?l=-2:(l=r.lastIndex-p[2].length,c=p[1],r=p[3]===void 0?We:p[3]==='"'?Ei:Ri):r===Ei||r===Ri?r=We:r===xi||r===Mi?r=rt:(r=We,o=void 0);const j=r===We&&n[s+1].startsWith("/>")?" ":"";a+=r===rt?d+xn:l>=0?(t.push(c),d.slice(0,l)+Ui+d.slice(l)+He+j):d+He+(l===-2?s: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,r=0;const s=e.length-1,d=this.parts,[c,p]=Rn(e,i);if(this.el=ct.createElement(c,t),Ge.currentNode=this.el.content,i===2||i===3){const l=this.el.content.firstChild;l.replaceWith(...l.childNodes)}for(;(o=Ge.nextNode())!==null&&d.length<s;){if(o.nodeType===1){if(o.hasAttributes())for(const l of o.getAttributeNames())if(l.endsWith(Ui)){const m=p[r++],j=o.getAttribute(l).split(He),q=/([.?@])?(.*)/.exec(m);d.push({type:1,index:a,name:q[2],strings:j,ctor:q[1]==="."?qn:q[1]==="?"?_n:q[1]==="@"?Ln:vt}),o.removeAttribute(l)}else l.startsWith(He)&&(d.push({type:6,index:a}),o.removeAttribute(l));if(qi.test(o.tagName)){const l=o.textContent.split(He),m=l.length-1;if(m>0){o.textContent=wt?wt.emptyScript:"";for(let j=0;j<m;j++)o.append(l[j],at()),Ge.nextNode(),d.push({type:2,index:++a});o.append(l[m],at())}}}else if(o.nodeType===8)if(o.data===Ci)d.push({type:2,index:a});else{let l=-1;for(;(l=o.data.indexOf(He,l+1))!==-1;)d.push({type:7,index:a}),l+=He.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 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(),r=0,s=0,d=t[0];for(;d!==void 0;){if(r===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[++s]}r!==d?.index&&(a=Ge.nextNode(),r++)}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=x,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===x||e==null||e===""?(this._$AH!==x&&this._$AR(),this._$AH=x):e!==this._$AH&&e!==ze&&this._(e):e._$litType$!==void 0?this.$(e):e.nodeType!==void 0?this.T(e):Mn(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!==x&&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 En(o,this),r=a.u(this.options);a.p(i),this.T(r),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){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 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 vt{get tagName(){return this.element.tagName}get _$AU(){return this._$AM._$AU}constructor(e,i,t,o,a){this.type=1,this._$AH=x,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=x}_$AI(e,i=this,t,o){const a=this.strings;let r=!1;if(a===void 0)e=Oe(this,e,i,0),r=!st(e)||e!==this._$AH&&e!==ze,r&&(this._$AH=e);else{const s=e;let d,c;for(e=a[0],d=0;d<a.length-1;d++)c=Oe(this,s[t+d],i,d),c===ze&&(c=this._$AH[d]),r||=!st(c)||c!==this._$AH[d],c===x?e=x:e!==x&&(e+=(c??"")+a[d+1]),this._$AH[d]=c}r&&!o&&this.j(e)}j(e){e===x?this.element.removeAttribute(this.name):this.element.setAttribute(this.name,e??"")}}class qn extends vt{constructor(){super(...arguments),this.type=3}j(e){this.element[this.name]=e===x?void 0:e}}class _n extends vt{constructor(){super(...arguments),this.type=4}j(e){this.element.toggleAttribute(this.name,!!e&&e!==x)}}class Ln extends vt{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)??x)===ze)return;const t=this._$AH,o=e===x&&t!==x||e.capture!==t.capture||e.once!==t.once||e.passive!==t.passive,a=e!==x&&(t===x||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?.(ct,dt),(_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 dt(e.insertBefore(at(),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:bt,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:r}=i;return{set(s){const d=e.get.call(this);e.set.call(this,s),this.requestUpdate(r,d,n,!0,s)},init(s){return s!==void 0&&this.C(r,void 0,n,s),s}}}if(t==="setter"){const{name:r}=i;return function(s){const d=this[r];e.call(this,s),this.requestUpdate(r,d,n,!0,s)}}throw Error("Unsupported decorator location: "+t)};function O(n){return(e,i)=>typeof i=="object"?Vn(n,e,i):((t,o,a)=>{const r=o.hasOwnProperty(a);return o.constructor.createProperty(a,t),r?Object.getOwnPropertyDescriptor(o,a):void 0})(n,e,i)}function X(n){return O({...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=r=>r.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:{}},Bt={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,r="[BigNumber Error] ",s=r+"Number primitive has more than 15 significant digits: ",d=1e14,c=14,p=9007199254740991,l=[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=M.prototype={constructor:M,toString:null,valueOf:null},J=new M(1),z=20,ne=4,ce=-7,de=21,Ce=-1e7,Ie=1e7,_e=!1,ft=1,Xe=0,gi={prefix:"",groupSize:3,secondaryGroupSize:0,groupSeparator:",",decimalSeparator:".",fractionGroupSize:0,fractionGroupSeparator:" ",suffix:""},Qe="0123456789abcdefghijklmnopqrstuvwxyz",yi=!0;function M(u,f){var g,S,w,I,P,y,v,$,k=this;if(!(k instanceof M))return new M(u,f);if(f==null){if(u&&u._isBigNumber===!0){k.s=u.s,!u.c||u.e>Ie?k.c=k.e=null:u.e<Ce?k.c=[k.e=0]:(k.e=u.e,k.c=u.c.slice());return}if((y=typeof u=="number")&&u*0==0){if(k.s=1/u<0?(u=-u,-1):1,u===~~u){for(I=0,P=u;P>=10;P/=10,I++);I>Ie?k.c=k.e=null:(k.e=I,k.c=[u]);return}$=String(u)}else{if(!t.test($=String(u)))return W(k,$,y);k.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 k=new M(u),$e(k,z+k.e+1,ne);if($=String(u),y=typeof u=="number"){if(u*0!=0)return W(k,$,y,f);if(k.s=1/u<0?($=$.slice(1),-1):1,M.DEBUG&&$.replace(/^0\.0*|\./,"").length>15)throw Error(s+u)}else k.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(!w&&($==$.toUpperCase()&&($=$.toLowerCase())||$==$.toLowerCase()&&($=$.toUpperCase()))){w=!0,P=-1,I=0;continue}return W(k,String(u),y,f)}y=!1,$=ie($,f,10,k.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&&M.DEBUG&&v>15&&(u>p||u!==a(u)))throw Error(s+k.s*u);if((I=I-P-1)>Ie)k.c=k.e=null;else if(I<Ce)k.c=[k.e=0];else{if(k.e=I,k.c=[],P=(I+1)%c,I<0&&(P+=c),P<v){for(P&&k.c.push(+$.slice(0,P)),v-=c;P<v;)k.c.push(+$.slice(P,P+=c));P=c-($=$.slice(P)).length}else P-=v;for(;P--;$+="0");k.c.push(+$)}}else k.c=[k.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(u){var f,g;if(u!=null)if(typeof u=="object"){if(u.hasOwnProperty(f="DECIMAL_PLACES")&&(g=u[f],L(g,0,j,f),z=g),u.hasOwnProperty(f="ROUNDING_MODE")&&(g=u[f],L(g,0,8,f),ne=g),u.hasOwnProperty(f="EXPONENTIAL_AT")&&(g=u[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))),u.hasOwnProperty(f="RANGE"))if(g=u[f],g&&g.pop)L(g[0],-j,-1,f),L(g[1],1,j,f),Ce=g[0],Ie=g[1];else if(L(g,-j,j,f),g)Ce=-(Ie=g<0?-g:g);else throw Error(r+f+" cannot be zero: "+g);if(u.hasOwnProperty(f="CRYPTO"))if(g=u[f],g===!!g)if(g)if(typeof crypto<"u"&&crypto&&(crypto.getRandomValues||crypto.randomBytes))_e=g;else throw _e=!g,Error(r+"crypto unavailable");else _e=g;else throw Error(r+f+" not true or false: "+g);if(u.hasOwnProperty(f="MODULO_MODE")&&(g=u[f],L(g,0,9,f),ft=g),u.hasOwnProperty(f="POW_PRECISION")&&(g=u[f],L(g,0,j,f),Xe=g),u.hasOwnProperty(f="FORMAT"))if(g=u[f],typeof g=="object")gi=g;else throw Error(r+f+" not an object: "+g);if(u.hasOwnProperty(f="ALPHABET"))if(g=u[f],typeof g=="string"&&!/^.?$|[+\-.\s]|(.).*\1/.test(g))yi=g.slice(0,10)=="0123456789",Qe=g;else throw Error(r+f+" invalid: "+g)}else throw Error(r+"Object expected: "+u);return{DECIMAL_PLACES:z,ROUNDING_MODE:ne,EXPONENTIAL_AT:[ce,de],RANGE:[Ce,Ie],CRYPTO:_e,MODULO_MODE:ft,POW_PRECISION:Xe,FORMAT:gi,ALPHABET:Qe}},M.isBigNumber=function(u){if(!u||u._isBigNumber!==!0)return!1;if(!M.DEBUG)return!0;var f,g,S=u.c,w=u.e,I=u.s;e:if({}.toString.call(S)=="[object Array]"){if((I===1||I===-1)&&w>=-j&&w<=j&&w===a(w)){if(S[0]===0){if(w===0&&S.length===1)return!0;break e}if(f=(w+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&&w===null&&(I===null||I===1||I===-1))return!0;throw Error(r+"Invalid BigNumber: "+u)},M.maximum=M.max=function(){return wn(arguments,-1)},M.minimum=M.min=function(){return wn(arguments,1)},M.random=(function(){var u=9007199254740992,f=Math.random()*u&2097151?function(){return a(Math.random()*u)}:function(){return(Math.random()*1073741824|0)*8388608+(Math.random()*8388608|0)};return function(g){var S,w,I,P,y,v=0,$=[],k=new M(J);if(g==null?g=z:L(g,0,j),P=o(g/c),_e)if(crypto.getRandomValues){for(S=crypto.getRandomValues(new Uint32Array(P*=2));v<P;)y=S[v]*131072+(S[v+1]>>>11),y>=9e15?(w=crypto.getRandomValues(new Uint32Array(2)),S[v]=w[0],S[v+1]=w[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 _e=!1,Error(r+"crypto unavailable");if(!_e)for(;v<P;)y=f(),y<9e15&&($[v++]=y%1e14);for(P=$[--v],g%=c,P&&g&&(y=l[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 k.e=I,k.c=$,k}})(),M.sum=function(){for(var u=1,f=arguments,g=new M(f[0]);u<f.length;)g=g.plus(f[u++]);return g},ie=(function(){var u="0123456789";function f(g,S,w,I){for(var P,y=[0],v,$=0,k=g.length;$<k;){for(v=y.length;v--;y[v]*=S);for(y[0]+=I.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,S,w,I,P){var y,v,$,k,C,B,V,oe,le=g.indexOf("."),he=z,te=ne;for(le>=0&&(k=Xe,Xe=0,g=g.replace(".",""),oe=new M(S),B=oe.pow(g.length-le),Xe=k,oe.c=f(se(K(B.c),B.e,"0"),10,w,u),oe.e=oe.c.length),V=f(g,S,w,P?(y=Qe,u):(y=u,Qe)),$=k=V.length;V[--k]==0;V.pop());if(!V[0])return y.charAt(0);if(le<0?--$:(B.c=V,B.e=$,B.s=I,B=N(B,oe,he,te,w),V=B.c,C=B.r,$=B.e),v=$+he+1,le=V[v],k=w/2,C=C||v<0||V[v+1]!=null,C=te<4?(le!=null||C)&&(te==0||te==(B.s<0?3:2)):le>k||le==k&&(te==4||C||te==6&&V[v-1]&1||te==(B.s<0?8:7)),v<1||!V[0])g=C?se(y.charAt(1),-he,y.charAt(0)):y.charAt(0);else{if(V.length=v,C)for(--w;++V[--v]>w;)V[v]=0,v||(++$,V=[1].concat(V));for(k=V.length;!V[--k];);for(le=0,g="";le<=k;g+=y.charAt(V[le++]));g=se(g,$,y.charAt(0))}return g}})(),N=(function(){function u(S,w,I){var P,y,v,$,k=0,C=S.length,B=w%m,V=w/m|0;for(S=S.slice();C--;)v=S[C]%m,$=S[C]/m|0,P=V*v+$*B,y=B*v+P%m*m+k,k=(y/I|0)+(P/m|0)+V*$,S[C]=y%I;return k&&(S=[k].concat(S)),S}function f(S,w,I,P){var y,v;if(I!=P)v=I>P?1:-1;else for(y=v=0;y<I;y++)if(S[y]!=w[y]){v=S[y]>w[y]?1:-1;break}return v}function g(S,w,I,P){for(var y=0;I--;)S[I]-=y,y=S[I]<w[I]?1:0,S[I]=y*P+S[I]-w[I];for(;!S[0]&&S.length>1;S.splice(0,1));}return function(S,w,I,P,y){var v,$,k,C,B,V,oe,le,he,te,re,be,Mt,wi,vi,xe,gt,je=S.s==w.s?1:-1,we=S.c,ue=w.c;if(!we||!we[0]||!ue||!ue[0])return new M(!S.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=[],$=S.e-w.e,je=I+$+1,y||(y=d,$=T(S.e/c)-T(w.e/c),je=je/c|0),k=0;ue[k]==(we[k]||0);k++);if(ue[k]>(we[k]||0)&&$--,je<0)he.push(1),C=!0;else{for(wi=we.length,xe=ue.length,k=0,je+=2,B=a(y/(ue[0]+1)),B>1&&(ue=u(ue,B,y),we=u(we,B,y),xe=ue.length,wi=we.length),Mt=xe,te=we.slice(0,xe),re=te.length;re<xe;te[re++]=0);gt=ue.slice(),gt=[0].concat(gt),vi=ue[0],ue[1]>=y/2&&vi++;do{if(B=0,v=f(ue,te,xe,re),v<0){if(be=te[0],xe!=re&&(be=be*y+(te[1]||0)),B=a(be/vi),B>1)for(B>=y&&(B=y-1),V=u(ue,B,y),oe=V.length,re=te.length;f(V,te,oe,re)==1;)B--,g(V,xe<oe?gt:ue,oe,y),oe=V.length,v=1;else B==0&&(v=B=1),V=ue.slice(),oe=V.length;if(oe<re&&(V=[0].concat(V)),g(te,V,re,y),re=te.length,v==-1)for(;f(ue,te,xe,re)<1;)B++,g(te,xe<re?gt:ue,re,y),re=te.length}else v===0&&(B++,te=[0]);he[k++]=B,te[0]?te[re++]=we[Mt]||0:(te=[we[Mt]],re=1)}while((Mt++<wi||te[0]!=null)&&je--);C=te[0]!=null,he[0]||he.splice(0,1)}if(y==d){for(k=1,je=he[0];je>=10;je/=10,k++);$e(le,I+(le.e=k+$*c-1)+1,P,C)}else le.e=$,le.r=+C;return le}})();function mi(u,f,g,S){var w,I,P,y,v;if(g==null?g=ne:L(g,0,8),!u.c)return u.toString();if(w=u.c[0],P=u.e,f==null)v=K(u.c),v=S==1||S==2&&(P<=ce||P>=de)?Z(v,P):se(v,P,"0");else if(u=$e(new M(u),f,g),I=u.e,v=K(u.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 u.s<0&&w?"-"+v:v}function wn(u,f){for(var g,S,w=1,I=new M(u[0]);w<u.length;w++)S=new M(u[w]),(!S.s||(g=Y(I,S))===f||g===0&&I.s===f)&&(I=S);return I}function bi(u,f,g){for(var S=1,w=f.length;!f[--w];f.pop());for(w=f[0];w>=10;w/=10,S++);return(g=S+g*c-1)>Ie?u.c=u.e=null:g<Ce?u.c=[u.e=0]:(u.e=g,u.c=f),u}W=(function(){var u=/^(-?)0([xbo])(?=\w[\w.]*$)/i,f=/^([^.]+)\.$/,g=/^\.([^.]+)$/,S=/^-?(Infinity|NaN)$/,w=/^\s*\+(?=[\w.])|^\s+|\s+$/g;return function(I,P,y,v){var $,k=y?P:P.replace(w,"");if(S.test(k))I.s=isNaN(k)?null:k<0?-1:1;else{if(!y&&(k=k.replace(u,function(C,B,V){return $=(V=V.toLowerCase())=="x"?16:V=="b"?2:8,!v||v==$?B:C}),v&&($=v,k=k.replace(f,"$1").replace(g,"0.$1")),P!=k))return new M(k,$);if(M.DEBUG)throw Error(r+"Not a"+(v?" base "+v:"")+" number: "+P);I.s=null}I.c=I.e=null}})();function $e(u,f,g,S){var w,I,P,y,v,$,k,C=u.c,B=l;if(C){e:{for(w=1,y=C[0];y>=10;y/=10,w++);if(I=f-w,I<0)I+=c,P=f,v=C[$=0],k=a(v/B[w-P-1]%10);else if($=o((I+1)/c),$>=C.length)if(S){for(;C.length<=$;C.push(0));v=k=0,w=1,I%=c,P=I-c+1}else break e;else{for(v=y=C[$],w=1;y>=10;y/=10,w++);I%=c,P=I-c+w,k=P<0?0:a(v/B[w-P-1]%10)}if(S=S||f<0||C[$+1]!=null||(P<0?v:v%B[w-P-1]),S=g<4?(k||S)&&(g==0||g==(u.s<0?3:2)):k>5||k==5&&(g==4||S||g==6&&(I>0?P>0?v/B[w-P]:0:C[$-1])%10&1||g==(u.s<0?8:7)),f<1||!C[0])return C.length=0,S?(f-=u.e+1,C[0]=B[(c-f%c)%c],u.e=-f||0):C[0]=u.e=0,u;if(I==0?(C.length=$,y=1,$--):(C.length=$+1,y=B[c-I],C[$]=P>0?a(v/B[w-P]%B[P])*y:0),S)for(;;)if($==0){for(I=1,P=C[0];P>=10;P/=10,I++);for(P=C[0]+=y,y=1;P>=10;P/=10,y++);I!=y&&(u.e++,C[0]==d&&(C[0]=1));break}else{if(C[$]+=y,C[$]!=d)break;C[$--]=0,y=1}for(I=C.length;C[--I]===0;C.pop());}u.e>Ie?u.c=u.e=null:u.e<Ce&&(u.c=[u.e=0])}return u}function Le(u){var f,g=u.e;return g===null?u.toString():(f=K(u.c),f=g<=ce||g>=de?Z(f,g):se(f,g,"0"),u.s<0?"-"+f:f)}return R.absoluteValue=R.abs=function(){var u=new M(this);return u.s<0&&(u.s=1),u},R.comparedTo=function(u,f){return Y(this,new M(u,f))},R.decimalPlaces=R.dp=function(u,f){var g,S,w,I=this;if(u!=null)return L(u,0,j),f==null?f=ne:L(f,0,8),$e(new M(I),u+I.e+1,f);if(!(g=I.c))return null;if(S=((w=g.length-1)-T(this.e/c))*c,w=g[w])for(;w%10==0;w/=10,S--);return S<0&&(S=0),S},R.dividedBy=R.div=function(u,f){return N(this,new M(u,f),z,ne)},R.dividedToIntegerBy=R.idiv=function(u,f){return N(this,new M(u,f),0,1)},R.exponentiatedBy=R.pow=function(u,f){var g,S,w,I,P,y,v,$,k,C=this;if(u=new M(u),u.c&&!u.isInteger())throw Error(r+"Exponent not an integer: "+Le(u));if(f!=null&&(f=new M(f)),y=u.e>14,!C.c||!C.c[0]||C.c[0]==1&&!C.e&&C.c.length==1||!u.c||!u.c[0])return k=new M(Math.pow(+Le(C),y?u.s*(2-H(u)):+Le(u))),f?k.mod(f):k;if(v=u.s<0,f){if(f.c?!f.c[0]:!f.s)return new M(NaN);S=!v&&C.isInteger()&&f.isInteger(),S&&(C=C.mod(f))}else{if(u.e>9&&(C.e>0||C.e<-1||(C.e==0?C.c[0]>1||y&&C.c[1]>=24e7:C.c[0]<8e13||y&&C.c[0]<=9999975e7)))return I=C.s<0&&H(u)?-0:0,C.e>-1&&(I=1/I),new M(v?1/I:I);Xe&&(I=o(Xe/c+2))}for(y?(g=new M(.5),v&&(u.s=1),$=H(u)):(w=Math.abs(+Le(u)),$=w%2),k=new M(J);;){if($){if(k=k.times(C),!k.c)break;I?k.c.length>I&&(k.c.length=I):S&&(k=k.mod(f))}if(w){if(w=a(w/2),w===0)break;$=w%2}else if(u=u.times(g),$e(u,u.e+1,1),u.e>14)$=H(u);else{if(w=+Le(u),w===0)break;$=w%2}C=C.times(C),I?C.c&&C.c.length>I&&(C.c.length=I):S&&(C=C.mod(f))}return S?k:(v&&(k=J.div(k)),f?k.mod(f):I?$e(k,Xe,ne,P):k)},R.integerValue=function(u){var f=new M(this);return u==null?u=ne:L(u,0,8),$e(f,f.e+1,u)},R.isEqualTo=R.eq=function(u,f){return Y(this,new M(u,f))===0},R.isFinite=function(){return!!this.c},R.isGreaterThan=R.gt=function(u,f){return Y(this,new M(u,f))>0},R.isGreaterThanOrEqualTo=R.gte=function(u,f){return(f=Y(this,new M(u,f)))===1||f===0},R.isInteger=function(){return!!this.c&&T(this.e/c)>this.c.length-2},R.isLessThan=R.lt=function(u,f){return Y(this,new M(u,f))<0},R.isLessThanOrEqualTo=R.lte=function(u,f){return(f=Y(this,new M(u,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(u,f){var g,S,w,I,P=this,y=P.s;if(u=new M(u,f),f=u.s,!y||!f)return new M(NaN);if(y!=f)return u.s=-f,P.plus(u);var v=P.e/c,$=u.e/c,k=P.c,C=u.c;if(!v||!$){if(!k||!C)return k?(u.s=-f,u):new M(C?P:NaN);if(!k[0]||!C[0])return C[0]?(u.s=-f,u):new M(k[0]?P:ne==3?-0:0)}if(v=T(v),$=T($),k=k.slice(),y=v-$){for((I=y<0)?(y=-y,w=k):($=v,w=C),w.reverse(),f=y;f--;w.push(0));w.reverse()}else for(S=(I=(y=k.length)<(f=C.length))?y:f,y=f=0;f<S;f++)if(k[f]!=C[f]){I=k[f]<C[f];break}if(I&&(w=k,k=C,C=w,u.s=-u.s),f=(S=C.length)-(g=k.length),f>0)for(;f--;k[g++]=0);for(f=d-1;S>y;){if(k[--S]<C[S]){for(g=S;g&&!k[--g];k[g]=f);--k[g],k[S]+=d}k[S]-=C[S]}for(;k[0]==0;k.splice(0,1),--$);return k[0]?bi(u,k,$):(u.s=ne==3?-1:1,u.c=[u.e=0],u)},R.modulo=R.mod=function(u,f){var g,S,w=this;return u=new M(u,f),!w.c||!u.s||u.c&&!u.c[0]?new M(NaN):!u.c||w.c&&!w.c[0]?new M(w):(ft==9?(S=u.s,u.s=1,g=N(w,u,0,3),u.s=S,g.s*=S):g=N(w,u,0,ft),u=w.minus(g.times(u)),!u.c[0]&&ft==1&&(u.s=w.s),u)},R.multipliedBy=R.times=function(u,f){var g,S,w,I,P,y,v,$,k,C,B,V,oe,le,he,te=this,re=te.c,be=(u=new M(u,f)).c;if(!re||!be||!re[0]||!be[0])return!te.s||!u.s||re&&!re[0]&&!be||be&&!be[0]&&!re?u.c=u.e=u.s=null:(u.s*=te.s,!re||!be?u.c=u.e=null:(u.c=[0],u.e=0)),u;for(S=T(te.e/c)+T(u.e/c),u.s*=te.s,v=re.length,C=be.length,v<C&&(oe=re,re=be,be=oe,w=v,v=C,C=w),w=v+C,oe=[];w--;oe.push(0));for(le=d,he=m,w=C;--w>=0;){for(g=0,B=be[w]%he,V=be[w]/he|0,P=v,I=w+P;I>w;)$=re[--P]%he,k=re[P]/he|0,y=V*$+k*B,$=B*$+y%he*he+oe[I]+g,g=($/le|0)+(y/he|0)+V*k,oe[I--]=$%le;oe[I]=g}return g?++S:oe.splice(0,1),bi(u,oe,S)},R.negated=function(){var u=new M(this);return u.s=-u.s||null,u},R.plus=function(u,f){var g,S=this,w=S.s;if(u=new M(u,f),f=u.s,!w||!f)return new M(NaN);if(w!=f)return u.s=-f,S.minus(u);var I=S.e/c,P=u.e/c,y=S.c,v=u.c;if(!I||!P){if(!y||!v)return new M(w/0);if(!y[0]||!v[0])return v[0]?u:new M(y[0]?S:w*0)}if(I=T(I),P=T(P),y=y.slice(),w=I-P){for(w>0?(P=I,g=v):(w=-w,g=y),g.reverse();w--;g.push(0));g.reverse()}for(w=y.length,f=v.length,w-f<0&&(g=v,v=y,y=g,f=w),w=0;f;)w=(y[--f]=y[f]+v[f]+w)/d|0,y[f]=d===y[f]?0:y[f]%d;return w&&(y=[w].concat(y),++P),bi(u,y,P)},R.precision=R.sd=function(u,f){var g,S,w,I=this;if(u!=null&&u!==!!u)return L(u,1,j),f==null?f=ne:L(f,0,8),$e(new M(I),u,f);if(!(g=I.c))return null;if(w=g.length-1,S=w*c+1,w=g[w]){for(;w%10==0;w/=10,S--);for(w=g[0];w>=10;w/=10,S++);}return u&&I.e+1>S&&(S=I.e+1),S},R.shiftedBy=function(u){return L(u,-p,p),this.times("1e"+u)},R.squareRoot=R.sqrt=function(){var u,f,g,S,w,I=this,P=I.c,y=I.s,v=I.e,$=z+4,k=new M("0.5");if(y!==1||!P||!P[0])return new M(!y||y<0&&(!P||P[0])?NaN:P?I:1/0);if(y=Math.sqrt(+Le(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 M(f)):g=new M(y+""),g.c[0]){for(v=g.e,y=v+$,y<3&&(y=0);;)if(w=g,g=k.times(w.plus(N(I,w,$,1))),K(w.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(w,w.e+z+2,0),w.times(w).eq(I))){g=w;break}$+=4,y+=4,S=1}else{(!+f||!+f.slice(1)&&f.charAt(0)=="5")&&($e(g,g.e+z+2,1),u=!g.times(g).eq(I));break}}return $e(g,g.e+z+1,ne,u)},R.toExponential=function(u,f){return u!=null&&(L(u,0,j),u++),mi(this,u,f,1)},R.toFixed=function(u,f){return u!=null&&(L(u,0,j),u=u+this.e+1),mi(this,u,f)},R.toFormat=function(u,f,g){var S,w=this;if(g==null)u!=null&&f&&typeof f=="object"?(g=f,f=null):u&&typeof u=="object"?(g=u,u=f=null):g=gi;else if(typeof g!="object")throw Error(r+"Argument not an object: "+g);if(S=w.toFixed(u,f),w.c){var I,P=S.split("."),y=+g.groupSize,v=+g.secondaryGroupSize,$=g.groupSeparator||"",k=P[0],C=P[1],B=w.s<0,V=B?k.slice(1):k,oe=V.length;if(v&&(I=y,y=v,v=I,oe-=I),y>0&&oe>0){for(I=oe%y||y,k=V.substr(0,I);I<oe;I+=y)k+=$+V.substr(I,y);v>0&&(k+=$+V.slice(I)),B&&(k="-"+k)}S=C?k+(g.decimalSeparator||"")+((v=+g.fractionGroupSize)?C.replace(new RegExp("\\d{"+v+"}\\B","g"),"$&"+(g.fractionGroupSeparator||"")):C):k}return(g.prefix||"")+S+(g.suffix||"")},R.toFraction=function(u){var f,g,S,w,I,P,y,v,$,k,C,B,V=this,oe=V.c;if(u!=null&&(y=new M(u),!y.isInteger()&&(y.c||y.s!==1)||y.lt(J)))throw Error(r+"Argument "+(y.isInteger()?"out of range: ":"not an integer: ")+Le(y));if(!oe)return new M(V);for(f=new M(J),$=g=new M(J),S=v=new M(J),B=K(oe),I=f.e=B.length-V.e-1,f.c[0]=l[(P=I%c)<0?c+P:P],u=!u||y.comparedTo(f)>0?I>0?f:$:y,P=Ie,Ie=1/0,y=new M(B),v.c[0]=0;k=N(y,f,0,1),w=g.plus(k.times(S)),w.comparedTo(u)!=1;)g=S,S=w,$=v.plus(k.times(w=$)),v=w,f=y.minus(k.times(w=f)),y=w;return w=N(u.minus(g),S,0,1),v=v.plus(w.times($)),g=g.plus(w.times(S)),v.s=$.s=V.s,I=I*2,C=N($,S,I,ne).minus(V).abs().comparedTo(N(v,g,I,ne).minus(V).abs())<1?[$,S]:[v,g],Ie=P,C},R.toNumber=function(){return+Le(this)},R.toPrecision=function(u,f){return u!=null&&L(u,1,j),mi(this,u,f,2)},R.toString=function(u){var f,g=this,S=g.s,w=g.e;return w===null?S?(f="Infinity",S<0&&(f="-"+f)):f="NaN":(u==null?f=w<=ce||w>=de?Z(K(g.c),w):se(K(g.c),w,"0"):u===10&&yi?(g=$e(new M(g),z+w+1,ne),f=se(K(g.c),g.e,"0")):(L(u,2,Qe.length,"Base"),f=ie(se(K(g.c),w,"0"),10,u,S,!0)),S<0&&g.c[0]&&(f="-"+f)),f},R.valueOf=R.toJSON=function(){return Le(this)},R._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,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(r+(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)})(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,r={"\b":"\\b"," ":"\\t","\n":"\\n","\f":"\\f","\r":"\\r",'"':'\\"',"\\":"\\\\"},s;function d(p){return t.lastIndex=0,t.test(p)?'"'+p.replace(t,function(l){var m=r[l];return typeof m=="string"?m:"\\u"+("0000"+l.charCodeAt(0).toString(16)).slice(-4)})+'"':'"'+p+'"'}function c(p,l){var m,j,q,T,K=o,Y,L=l[p],H=L!=null&&(L instanceof e||e.isBigNumber(L));switch(L&&typeof L=="object"&&typeof L.toJSON=="function"&&(L=L.toJSON(p)),typeof s=="function"&&(L=s.call(l,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
|
-
`+K+"]":"["+Y.join(",")+"]",o=K,q}if(
|
|
6
|
+
`+K+"]":"["+Y.join(",")+"]",o=K,q}if(s&&typeof s=="object")for(T=s.length,m=0;m<T;m+=1)typeof s[m]=="string"&&(j=s[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,
|
|
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`
|
|
9
|
+
`+K+"}":"{"+Y.join(",")+"}",o=K,q}}typeof i.stringify!="function"&&(i.stringify=function(p,l,m){var j;if(o="",a="",typeof m=="number")for(j=0;j<m;j+=1)a+=" ";else typeof m=="string"&&(a=m);if(s=l,l&&typeof l!="function"&&(typeof l!="object"||typeof l.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 r,s,d={'"':'"',"\\":"\\","/":"/",b:"\b",f:"\f",n:`
|
|
10
|
+
`,r:"\r",t:" "},c,p=function(H){throw{name:"SyntaxError",message:H,at:r,text:c}},l=function(H){return H&&H!==s&&p("Expected '"+H+"' instead of '"+s+"'"),s=c.charAt(r),r+=1,s},m=function(){var H,Z="";for(s==="-"&&(Z="-",l("-"));s>="0"&&s<="9";)Z+=s,l();if(s===".")for(Z+=".";l()&&s>="0"&&s<="9";)Z+=s;if(s==="e"||s==="E")for(Z+=s,l(),(s==="-"||s==="+")&&(Z+=s,l());s>="0"&&s<="9";)Z+=s,l();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(s==='"')for(var N=r;l();){if(s==='"')return r-1>N&&(se+=c.substring(N,r-1)),l(),se;if(s==="\\"){if(r-1>N&&(se+=c.substring(N,r-1)),l(),s==="u"){for(D=0,Z=0;Z<4&&(H=parseInt(l(),16),!!isFinite(H));Z+=1)D=D*16+H;se+=String.fromCharCode(D)}else if(typeof d[s]=="string")se+=d[s];else break;N=r}}p("Bad string")},q=function(){for(;s&&s<=" ";)l()},T=function(){switch(s){case"t":return l("t"),l("r"),l("u"),l("e"),!0;case"f":return l("f"),l("a"),l("l"),l("s"),l("e"),!1;case"n":return l("n"),l("u"),l("l"),l("l"),null}p("Unexpected '"+s+"'")},K,Y=function(){var H=[];if(s==="["){if(l("["),q(),s==="]")return l("]"),H;for(;s;){if(H.push(K()),q(),s==="]")return l("]"),H;l(","),q()}}p("Bad array")},L=function(){var H,Z=Object.create(null);if(s==="{"){if(l("{"),q(),s==="}")return l("}"),Z;for(;s;){if(H=j(),q(),l(":"),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(),s==="}")return l("}"),Z;l(","),q()}}p("Bad object")};return K=function(){switch(q(),s){case"{":return L();case"[":return Y();case'"':return j();case"-":return m();default:return s>="0"&&s<="9"?m():T()}},function(H,Z){var se;return c=H+"",r=0,s=" ",se=K(),q(),s&&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 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 Vt=Gn(Qn);function ve(n,e,i,t){function o(a){return a instanceof i?a:new i(function(r){r(a)})}return new(i||(i=Promise))(function(a,r){function s(p){try{c(t.next(p))}catch(l){r(l)}}function d(p){try{c(t.throw(p))}catch(l){r(l)}}function c(p){p.done?a(p.value):o(p.value).then(s,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 At,Wi;class De{static custom(e){return e}static unique(e=7){const i=Tn(At,At,"m",Wi).call(At);let t="";for(let o=0;o<e;o++){const a=Math.floor(Math.random()*16).toString(16);t+=a}return i+t}}At=De,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 kt=Vt({useNativeBigInt:!0});class U{constructor(e,i,t){this.method=e,this.attribute=i,t!==void 0&&(Array.isArray(t)?this.values=t:this.values=[t])}toString(){return kt.stringify({method:this.method,attribute:this.attribute,values:this.values})}}U.equal=(n,e)=>new U("equal",n,e).toString(),U.notEqual=(n,e)=>new U("notEqual",n,e).toString(),U.regex=(n,e)=>new U("regex",n,e).toString(),U.lessThan=(n,e)=>new U("lessThan",n,e).toString(),U.lessThanEqual=(n,e)=>new U("lessThanEqual",n,e).toString(),U.greaterThan=(n,e)=>new U("greaterThan",n,e).toString(),U.greaterThanEqual=(n,e)=>new U("greaterThanEqual",n,e).toString(),U.isNull=n=>new U("isNull",n).toString(),U.isNotNull=n=>new U("isNotNull",n).toString(),U.exists=n=>new U("exists",void 0,n).toString(),U.notExists=n=>new U("notExists",void 0,n).toString(),U.between=(n,e,i)=>new U("between",n,[e,i]).toString(),U.startsWith=(n,e)=>new U("startsWith",n,e).toString(),U.endsWith=(n,e)=>new U("endsWith",n,e).toString(),U.select=n=>new U("select",void 0,n).toString(),U.search=(n,e)=>new U("search",n,e).toString(),U.orderDesc=n=>new U("orderDesc",n).toString(),U.orderAsc=n=>new U("orderAsc",n).toString(),U.orderRandom=()=>new U("orderRandom").toString(),U.cursorAfter=n=>new U("cursorAfter",void 0,n).toString(),U.cursorBefore=n=>new U("cursorBefore",void 0,n).toString(),U.limit=n=>new U("limit",void 0,n).toString(),U.offset=n=>new U("offset",void 0,n).toString(),U.contains=(n,e)=>new U("contains",n,e).toString(),U.containsAny=(n,e)=>new U("containsAny",n,e).toString(),U.containsAll=(n,e)=>new U("containsAll",n,e).toString(),U.notContains=(n,e)=>new U("notContains",n,e).toString(),U.notSearch=(n,e)=>new U("notSearch",n,e).toString(),U.notBetween=(n,e,i)=>new U("notBetween",n,[e,i]).toString(),U.notStartsWith=(n,e)=>new U("notStartsWith",n,e).toString(),U.notEndsWith=(n,e)=>new U("notEndsWith",n,e).toString(),U.createdBefore=n=>U.lessThan("$createdAt",n),U.createdAfter=n=>U.greaterThan("$createdAt",n),U.createdBetween=(n,e)=>U.between("$createdAt",n,e),U.updatedBefore=n=>U.lessThan("$updatedAt",n),U.updatedAfter=n=>U.greaterThan("$updatedAt",n),U.updatedBetween=(n,e)=>U.between("$updatedAt",n,e),U.or=n=>new U("or",void 0,n.map(e=>kt.parse(e))).toString(),U.and=n=>new U("and",void 0,n.map(e=>kt.parse(e))).toString(),U.elemMatch=(n,e)=>new U("elemMatch",n,e.map(i=>kt.parse(i))).toString(),U.distanceEqual=(n,e,i,t=!0)=>new U("distanceEqual",n,[[e,i,t]]).toString(),U.distanceNotEqual=(n,e,i,t=!0)=>new U("distanceNotEqual",n,[[e,i,t]]).toString(),U.distanceGreaterThan=(n,e,i,t=!0)=>new U("distanceGreaterThan",n,[[e,i,t]]).toString(),U.distanceLessThan=(n,e,i,t=!0)=>new U("distanceLessThan",n,[[e,i,t]]).toString(),U.vectorDot=(n,e)=>new U("vectorDot",n,[e]).toString(),U.vectorCosine=(n,e)=>new U("vectorCosine",n,[e]).toString(),U.vectorEuclidean=(n,e)=>new U("vectorEuclidean",n,[e]).toString(),U.intersects=(n,e)=>new U("intersects",n,[e]).toString(),U.notIntersects=(n,e)=>new U("notIntersects",n,[e]).toString(),U.crosses=(n,e)=>new U("crosses",n,[e]).toString(),U.notCrosses=(n,e)=>new U("notCrosses",n,[e]).toString(),U.overlaps=(n,e)=>new U("overlaps",n,[e]).toString(),U.notOverlaps=(n,e)=>new U("notOverlaps",n,[e]).toString(),U.touches=(n,e)=>new U("touches",n,[e]).toString(),U.notTouches=(n,e)=>new U("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 me={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(me.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 s="project="+encodeURIComponent((i=this.config.project)!==null&&i!==void 0?i:"");this.config.jwt&&(s+="&jwt="+encodeURIComponent(this.config.jwt));const d=this.config.endpointRealtime+"/realtime?"+s;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,l,m;if(!this.realtime.reconnect||((l=(p=this.realtime)===null||p===void 0?void 0:p.lastMessage)===null||l===void 0?void 0:l.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(me.stringify({type:"subscribe",data:e}))},onMessage:e=>{var i,t;try{const o=me.parse(e.data);switch(this.realtime.lastMessage=o,o.type){case"connected":{const a=o.data;let r=this.config.session;if(!r){const s=me.parse((i=window.localStorage.getItem("cookieFallback"))!==null&&i!==void 0?i:"{}");r=s?.[`a_session_${this.config.project}`]}r&&!a?.user&&((t=this.realtime.socket)===null||t===void 0||t.send(me.stringify({type:"authentication",data:{session:r}}))),this.realtime.subscriptions.forEach((s,d)=>{var c;this.realtime.pendingSubscribes.set(d,{subscriptionId:d,channels:s.channels,queries:(c=s.queries)!==null&&c!==void 0?c:[]})}),this.realtime.sendPendingSubscribes();break}case"response":break;case"event":{const a=o.data;if(!a?.channels)break;const r=a.subscriptions;if(r&&r.length>0)for(const s of r){const d=this.realtime.subscriptions.get(s);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 r=(t??[]).map(c=>typeof c=="string"?c:c.toString());let s="";const d=this.realtime.subscriptions.size+1;for(let c=0;c<d;c++){const p=De.unique();if(!this.realtime.subscriptions.has(p)){s=p;break}}if(s==="")throw new h("Failed to generate unique subscription id");return this.realtime.subscriptions.set(s,{channels:a,queries:r,callback:i}),this.realtime.pendingSubscribes.set(s,{subscriptionId:s,channels:a,queries:r}),this.realtime.connect(),()=>{this.realtime.subscriptions.delete(s),this.realtime.pendingSubscribes.delete(s);const c=new Set;this.realtime.subscriptions.forEach(p=>{p.channels.forEach(l=>c.add(l))}),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 r=window.localStorage.getItem("cookieFallback");r&&(t["X-Fallback-Cookies"]=r)}const a={method:e,headers:t};if(t["X-Appwrite-Dev-Key"]===void 0&&(a.credentials="include"),e==="GET")for(const[r,s]of Object.entries(Ae.flatten(o)))i.searchParams.append(r,s);else switch(t["content-type"]){case"application/json":a.body=me.stringify(o);break;case"multipart/form-data":{const r=new FormData;for(const[s,d]of Object.entries(o))if(d instanceof File)r.append(s,d,d.name);else if(Array.isArray(d))for(const c of d)r.append(`${s}[]`,c);else r.append(s,d);a.body=r,delete t["content-type"];break}}return{uri:i.toString(),options:a}}chunkedUpload(e,i){return ve(this,arguments,void 0,function*(t,o,a={},r={},s){var d;const[c,p]=(d=Object.entries(r).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,r);const l=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({},r);T[c]=new File([q],p.name);const K=yield this.call(t,o,j,T),Y=K?.$id;if(s&&typeof s=="function"&&s({$id:Y,progress:Math.round(m/p.size*100),sizeUploaded:m,chunksTotal:l,chunksUploaded:1}),l===1)return K;const L=[];for(let J=1;J<l;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:l;return typeof ne=="number"&&typeof ce=="number"&&ne>=ce},R=J=>ve(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({},r);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),s&&typeof s=="function"&&s({$id:Y,progress:Math.round(se/p.size*100),sizeUploaded:se,chunksTotal:l,chunksUploaded:Z})),de});return yield new Promise((J,z)=>{let ne=0,ce=0,de=0;const Ce=()=>{if(!ie){if(de===L.length){J();return}for(;ce<H&&ne<L.length;){const Ie=L[ne++];ce++,R(Ie).then(()=>{ce--,de++,Ce()}).catch(_e=>{ie=!0,z(_e)})}}};Ce()}),N??D})}ping(){return ve(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 ve(this,arguments,void 0,function*(t,o,a={},r={},s="json"){var d,c,p;const{uri:l,options:m}=this.prepareRequest(t,o,a,r);let j=null;const q=yield fetch(l,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=me.parse(yield q.text()):s==="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")||s==="arrayBuffer"?Y=me.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:()=>me.stringify(j),writable:!0,enumerable:!1,configurable:!0}),j})}static flatten(e,i=""){let t={};for(const[o,a]of Object.entries(e)){const r=i?i+"["+o+"]":o;Array.isArray(a)?t=Object.assign(Object.assign({},t),Ae.flatten(a,r)):t[r]=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 r=i?i+"["+o+"]":o;Array.isArray(a)?t=Object.assign(Object.assign({},t),ge.flatten(a,r)):t[r]=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,r=t.password,s=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 r>"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 r<"u"&&(c.password=r),typeof s<"u"&&(c.name=s);const p=new URL(this.client.config.endpoint+d),l={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",p,l,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,r="/account/consents",s={};typeof o<"u"&&(s.queries=o),typeof a<"u"&&(s.total=a);const d=new URL(this.client.config.endpoint+r),c={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",d,c,s)}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={},r=new URL(this.client.config.endpoint+o),s={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",r,s,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={},r=new URL(this.client.config.endpoint+o),s={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("delete",r,s,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,r=t.total;if(typeof o>"u")throw new h('Missing required parameter: "consentId"');const s="/account/consents/{consentId}/tokens".replace("{consentId}",encodeURIComponent(String(o))),d={};typeof a<"u"&&(d.queries=a),typeof r<"u"&&(d.total=r);const c=new URL(this.client.config.endpoint+s),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 r="/account/consents/{consentId}/tokens/{tokenId}".replace("{consentId}",encodeURIComponent(String(o))).replace("{tokenId}",encodeURIComponent(String(a))),s={},d=new URL(this.client.config.endpoint+r),c={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",d,c,s)}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 r="/account/consents/{consentId}/tokens/{tokenId}".replace("{consentId}",encodeURIComponent(String(o))).replace("{tokenId}",encodeURIComponent(String(a))),s={},d=new URL(this.client.config.endpoint+r),c={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("delete",d,c,s)}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 r="/account/email",s={};typeof o<"u"&&(s.email=o),typeof a<"u"&&(s.password=a);const d=new URL(this.client.config.endpoint+r),c={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("patch",d,c,s)}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,r="/account/identities",s={};typeof o<"u"&&(s.queries=o),typeof a<"u"&&(s.total=a);const d=new URL(this.client.config.endpoint+r),c={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",d,c,s)}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={},r=new URL(this.client.config.endpoint+o),s={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json"};return this.client.call("delete",r,s,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 r=new URL(this.client.config.endpoint+o),s={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",r,s,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,r="/account/logs",s={};typeof o<"u"&&(s.queries=o),typeof a<"u"&&(s.total=a);const d=new URL(this.client.config.endpoint+r),c={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",d,c,s)}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 r=new URL(this.client.config.endpoint+o),s={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("patch",r,s,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={},r=new URL(this.client.config.endpoint+o),s={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",r,s,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={},r=new URL(this.client.config.endpoint+o),s={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",r,s,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 r="/account/mfa/authenticators/{type}".replace("{type}",encodeURIComponent(String(o))),s={};typeof a<"u"&&(s.otp=a);const d=new URL(this.client.config.endpoint+r),c={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("put",d,c,s)}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 r="/account/mfa/authenticators/{type}".replace("{type}",encodeURIComponent(String(o))),s={};typeof a<"u"&&(s.otp=a);const d=new URL(this.client.config.endpoint+r),c={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("put",d,c,s)}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={},r=new URL(this.client.config.endpoint+o),s={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json"};return this.client.call("delete",r,s,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={},r=new URL(this.client.config.endpoint+o),s={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json"};return this.client.call("delete",r,s,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 r=new URL(this.client.config.endpoint+o),s={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",r,s,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 r=new URL(this.client.config.endpoint+o),s={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",r,s,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 r="/account/mfa/challenges",s={};typeof o<"u"&&(s.challengeId=o),typeof a<"u"&&(s.otp=a);const d=new URL(this.client.config.endpoint+r),c={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("put",d,c,s)}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 r="/account/mfa/challenges",s={};typeof o<"u"&&(s.challengeId=o),typeof a<"u"&&(s.otp=a);const d=new URL(this.client.config.endpoint+r),c={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("put",d,c,s)}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 r=new URL(this.client.config.endpoint+o),s={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("patch",r,s,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 r="/account/password",s={};typeof o<"u"&&(s.password=o),typeof a<"u"&&(s.oldPassword=a);const d=new URL(this.client.config.endpoint+r),c={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("patch",d,c,s)}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 r="/account/phone",s={};typeof o<"u"&&(s.phone=o),typeof a<"u"&&(s.password=a);const d=new URL(this.client.config.endpoint+r),c={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("patch",d,c,s)}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 r=new URL(this.client.config.endpoint+o),s={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("patch",r,s,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 r="/account/recovery",s={};typeof o<"u"&&(s.email=o),typeof a<"u"&&(s.url=a);const d=new URL(this.client.config.endpoint+r),c={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",d,c,s)}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,r=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 r>"u")throw new h('Missing required parameter: "password"');const s="/account/recovery",d={};typeof o<"u"&&(d.userId=o),typeof a<"u"&&(d.secret=a),typeof r<"u"&&(d.password=r);const c=new URL(this.client.config.endpoint+s),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 r="/account/sessions/email",s={};typeof o<"u"&&(s.email=o),typeof a<"u"&&(s.password=a);const d=new URL(this.client.config.endpoint+r),c={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",d,c,s)}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 r="/account/sessions/magic-url",s={};typeof o<"u"&&(s.userId=o),typeof a<"u"&&(s.secret=a);const d=new URL(this.client.config.endpoint+r),c={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("put",d,c,s)}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,r=t.failure,s=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 r<"u"&&(c.failure=r),typeof s<"u"&&(c.scopes=s);const p=new URL(this.client.config.endpoint+d);c.project=this.client.config.project;for(const[l,m]of Object.entries(ge.flatten(c)))p.searchParams.append(l,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 r="/account/sessions/phone",s={};typeof o<"u"&&(s.userId=o),typeof a<"u"&&(s.secret=a);const d=new URL(this.client.config.endpoint+r),c={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("put",d,c,s)}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 r="/account/sessions/token",s={};typeof o<"u"&&(s.userId=o),typeof a<"u"&&(s.secret=a);const d=new URL(this.client.config.endpoint+r),c={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",d,c,s)}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={},r=new URL(this.client.config.endpoint+o),s={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",r,s,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={},r=new URL(this.client.config.endpoint+o),s={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("patch",r,s,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={},r=new URL(this.client.config.endpoint+o),s={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json"};return this.client.call("delete",r,s,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,r=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 s="/account/targets/push",d={};typeof o<"u"&&(d.targetId=o),typeof a<"u"&&(d.identifier=a),typeof r<"u"&&(d.providerId=r);const c=new URL(this.client.config.endpoint+s),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 r="/account/targets/{targetId}/push".replace("{targetId}",encodeURIComponent(String(o))),s={};typeof a<"u"&&(s.identifier=a);const d=new URL(this.client.config.endpoint+r),c={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("put",d,c,s)}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={},r=new URL(this.client.config.endpoint+o),s={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json"};return this.client.call("delete",r,s,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,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 s="/account/tokens/email",d={};typeof o<"u"&&(d.userId=o),typeof a<"u"&&(d.email=a),typeof r<"u"&&(d.phrase=r);const c=new URL(this.client.config.endpoint+s),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,r=t.url,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 d="/account/tokens/magic-url",c={};typeof o<"u"&&(c.userId=o),typeof a<"u"&&(c.email=a),typeof r<"u"&&(c.url=r),typeof s<"u"&&(c.phrase=s);const p=new URL(this.client.config.endpoint+d),l={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",p,l,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,r=t.failure,s=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 r<"u"&&(c.failure=r),typeof s<"u"&&(c.scopes=s);const p=new URL(this.client.config.endpoint+d);c.project=this.client.config.project;for(const[l,m]of Object.entries(ge.flatten(c)))p.searchParams.append(l,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 r="/account/tokens/phone",s={};typeof o<"u"&&(s.userId=o),typeof a<"u"&&(s.phone=a);const d=new URL(this.client.config.endpoint+r),c={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",d,c,s)}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 r=new URL(this.client.config.endpoint+o),s={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",r,s,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 r=new URL(this.client.config.endpoint+o),s={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",r,s,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 r="/account/verifications/email",s={};typeof o<"u"&&(s.userId=o),typeof a<"u"&&(s.secret=a);const d=new URL(this.client.config.endpoint+r),c={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("put",d,c,s)}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 r="/account/verifications/email",s={};typeof o<"u"&&(s.userId=o),typeof a<"u"&&(s.secret=a);const d=new URL(this.client.config.endpoint+r),c={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("put",d,c,s)}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 r="/account/verifications/phone",s={};typeof o<"u"&&(s.userId=o),typeof a<"u"&&(s.secret=a);const d=new URL(this.client.config.endpoint+r),c={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("put",d,c,s)}}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,r=t.height,s=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 r<"u"&&(c.height=r),typeof s<"u"&&(c.quality=s);const p=new URL(this.client.config.endpoint+d);c.project=this.client.config.project,c.impersonateuserid=this.client.config.impersonateuserid;for(const[l,m]of Object.entries(ge.flatten(c)))p.searchParams.append(l,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,r=t.height,s=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 r<"u"&&(c.height=r),typeof s<"u"&&(c.quality=s);const p=new URL(this.client.config.endpoint+d);c.project=this.client.config.project,c.impersonateuserid=this.client.config.impersonateuserid;for(const[l,m]of Object.entries(ge.flatten(c)))p.searchParams.append(l,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 r=new URL(this.client.config.endpoint+o);a.project=this.client.config.project,a.impersonateuserid=this.client.config.impersonateuserid;for(const[s,d]of Object.entries(ge.flatten(a)))r.searchParams.append(s,d);return r.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,r=t.height,s=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 r<"u"&&(c.height=r),typeof s<"u"&&(c.quality=s);const p=new URL(this.client.config.endpoint+d);c.project=this.client.config.project,c.impersonateuserid=this.client.config.impersonateuserid;for(const[l,m]of Object.entries(ge.flatten(c)))p.searchParams.append(l,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,r=t.height;if(typeof o>"u")throw new h('Missing required parameter: "url"');const s="/avatars/image",d={};typeof o<"u"&&(d.url=o),typeof a<"u"&&(d.width=a),typeof r<"u"&&(d.height=r);const c=new URL(this.client.config.endpoint+s);d.project=this.client.config.project,d.impersonateuserid=this.client.config.impersonateuserid;for(const[p,l]of Object.entries(ge.flatten(d)))c.searchParams.append(p,l);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,r=t.height,s=t.background,d="/avatars/initials",c={};typeof o<"u"&&(c.name=o),typeof a<"u"&&(c.width=a),typeof r<"u"&&(c.height=r),typeof s<"u"&&(c.background=s);const p=new URL(this.client.config.endpoint+d);c.project=this.client.config.project,c.impersonateuserid=this.client.config.impersonateuserid;for(const[l,m]of Object.entries(ge.flatten(c)))p.searchParams.append(l,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,r=t.quality,s=t.output,d=t.rating,c=t.userId,p=t.emailHash,l=t.name,m="/avatars/photo",j={};typeof o<"u"&&(j.width=o),typeof a<"u"&&(j.height=a),typeof r<"u"&&(j.quality=r),typeof s<"u"&&(j.output=s),typeof d<"u"&&(j.rating=d),typeof c<"u"&&(j.userId=c),typeof p<"u"&&(j.emailHash=p),typeof l<"u"&&(j.name=l);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,r=t.margin,s=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 r<"u"&&(c.margin=r),typeof s<"u"&&(c.download=s);const p=new URL(this.client.config.endpoint+d);c.project=this.client.config.project,c.impersonateuserid=this.client.config.impersonateuserid;for(const[l,m]of Object.entries(ge.flatten(c)))p.searchParams.append(l,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,r=t.viewportWidth,s=t.viewportHeight,d=t.scale,c=t.theme,p=t.userAgent,l=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 r<"u"&&(W.viewportWidth=r),typeof s<"u"&&(W.viewportHeight=s),typeof d<"u"&&(W.scale=d),typeof c<"u"&&(W.theme=c),typeof p<"u"&&(W.userAgent=p),typeof l<"u"&&(W.fullpage=l),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 r=new URL(this.client.config.endpoint+o),s={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",r,s,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 r=new URL(this.client.config.endpoint+o),s={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",r,s,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={},r=new URL(this.client.config.endpoint+o),s={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",r,s,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,r=t.rollback;if(typeof o>"u")throw new h('Missing required parameter: "transactionId"');const s="/databases/transactions/{transactionId}".replace("{transactionId}",encodeURIComponent(String(o))),d={};typeof a<"u"&&(d.commit=a),typeof r<"u"&&(d.rollback=r);const c=new URL(this.client.config.endpoint+s),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={},r=new URL(this.client.config.endpoint+o),s={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json"};return this.client.call("delete",r,s,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 r="/databases/transactions/{transactionId}/operations".replace("{transactionId}",encodeURIComponent(String(o))),s={};typeof a<"u"&&(s.operations=a);const d=new URL(this.client.config.endpoint+r),c={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",d,c,s)}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,r=t.queries,s=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))),l={};typeof r<"u"&&(l.queries=r),typeof s<"u"&&(l.transactionId=s),typeof d<"u"&&(l.total=d),typeof c<"u"&&(l.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,l)}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,r=t.documentId,s=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 r>"u")throw new h('Missing required parameter: "documentId"');if(typeof s>"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))),l={};typeof r<"u"&&(l.documentId=r),typeof s<"u"&&(l.data=s),typeof d<"u"&&(l.permissions=d),typeof c<"u"&&(l.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,l)}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,r=t.documentId,s=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 r>"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(r))),p={};typeof s<"u"&&(p.queries=s),typeof d<"u"&&(p.transactionId=d);const l=new URL(this.client.config.endpoint+c),m={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",l,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,r=t.documentId,s=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 r>"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(r))),l={};typeof s<"u"&&(l.data=s),typeof d<"u"&&(l.permissions=d),typeof c<"u"&&(l.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,l)}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,r=t.documentId,s=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 r>"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(r))),l={};typeof s<"u"&&(l.data=s),typeof d<"u"&&(l.permissions=d),typeof c<"u"&&(l.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,l)}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,r=t.documentId,s=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 r>"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(r))),c={};typeof s<"u"&&(c.transactionId=s);const p=new URL(this.client.config.endpoint+d),l={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json"};return this.client.call("delete",p,l,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,r=t.documentId,s=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 r>"u")throw new h('Missing required parameter: "documentId"');if(typeof s>"u")throw new h('Missing required parameter: "attribute"');const l="/databases/{databaseId}/collections/{collectionId}/documents/{documentId}/{attribute}/decrement".replace("{databaseId}",encodeURIComponent(String(o))).replace("{collectionId}",encodeURIComponent(String(a))).replace("{documentId}",encodeURIComponent(String(r))).replace("{attribute}",encodeURIComponent(String(s))),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+l),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,r=t.documentId,s=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 r>"u")throw new h('Missing required parameter: "documentId"');if(typeof s>"u")throw new h('Missing required parameter: "attribute"');const l="/databases/{databaseId}/collections/{collectionId}/documents/{documentId}/{attribute}/increment".replace("{databaseId}",encodeURIComponent(String(o))).replace("{collectionId}",encodeURIComponent(String(a))).replace("{documentId}",encodeURIComponent(String(r))).replace("{attribute}",encodeURIComponent(String(s))),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+l),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 r=new URL(this.client.config.endpoint+o),s={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",r,s,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 r=new URL(this.client.config.endpoint+o),s={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",r,s,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={},r=new URL(this.client.config.endpoint+o),s={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",r,s,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,r=t.rollback;if(typeof o>"u")throw new h('Missing required parameter: "transactionId"');const s="/documentsdb/transactions/{transactionId}".replace("{transactionId}",encodeURIComponent(String(o))),d={};typeof a<"u"&&(d.commit=a),typeof r<"u"&&(d.rollback=r);const c=new URL(this.client.config.endpoint+s),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={},r=new URL(this.client.config.endpoint+o),s={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json"};return this.client.call("delete",r,s,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 r="/documentsdb/transactions/{transactionId}/operations".replace("{transactionId}",encodeURIComponent(String(o))),s={};typeof a<"u"&&(s.operations=a);const d=new URL(this.client.config.endpoint+r),c={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",d,c,s)}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,r=t.queries,s=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))),l={};typeof r<"u"&&(l.queries=r),typeof s<"u"&&(l.transactionId=s),typeof d<"u"&&(l.total=d),typeof c<"u"&&(l.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,l)}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,r=t.documentId,s=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 r>"u")throw new h('Missing required parameter: "documentId"');if(typeof s>"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))),l={};typeof r<"u"&&(l.documentId=r),typeof s<"u"&&(l.data=s),typeof d<"u"&&(l.permissions=d),typeof c<"u"&&(l.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,l)}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,r=t.documents,s=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 r>"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 r<"u"&&(c.documents=r),typeof s<"u"&&(c.transactionId=s);const p=new URL(this.client.config.endpoint+d),l={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",p,l,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,r=t.documentId,s=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 r>"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(r))),p={};typeof s<"u"&&(p.queries=s),typeof d<"u"&&(p.transactionId=d);const l=new URL(this.client.config.endpoint+c),m={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",l,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,r=t.documentId,s=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 r>"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(r))),l={};typeof s<"u"&&(l.data=s),typeof d<"u"&&(l.permissions=d),typeof c<"u"&&(l.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,l)}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,r=t.documentId,s=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 r>"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(r))),l={};typeof s<"u"&&(l.data=s),typeof d<"u"&&(l.permissions=d),typeof c<"u"&&(l.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,l)}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,r=t.documentId,s=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 r>"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(r))),c={};typeof s<"u"&&(c.transactionId=s);const p=new URL(this.client.config.endpoint+d),l={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json"};return this.client.call("delete",p,l,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,r=t.documentId,s=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 r>"u")throw new h('Missing required parameter: "documentId"');if(typeof s>"u")throw new h('Missing required parameter: "attribute"');const l="/documentsdb/{databaseId}/collections/{collectionId}/documents/{documentId}/{attribute}/decrement".replace("{databaseId}",encodeURIComponent(String(o))).replace("{collectionId}",encodeURIComponent(String(a))).replace("{documentId}",encodeURIComponent(String(r))).replace("{attribute}",encodeURIComponent(String(s))),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+l),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,r=t.documentId,s=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 r>"u")throw new h('Missing required parameter: "documentId"');if(typeof s>"u")throw new h('Missing required parameter: "attribute"');const l="/documentsdb/{databaseId}/collections/{collectionId}/documents/{documentId}/{attribute}/increment".replace("{databaseId}",encodeURIComponent(String(o))).replace("{collectionId}",encodeURIComponent(String(a))).replace("{documentId}",encodeURIComponent(String(r))).replace("{attribute}",encodeURIComponent(String(s))),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+l),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,r=t.total;if(typeof o>"u")throw new h('Missing required parameter: "functionId"');const s="/functions/{functionId}/executions".replace("{functionId}",encodeURIComponent(String(o))),d={};typeof a<"u"&&(d.queries=a),typeof r<"u"&&(d.total=r);const c=new URL(this.client.config.endpoint+s),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,r=t.async,s=t.xpath,d=t.method,c=t.headers,p=t.scheduledAt;if(typeof o>"u")throw new h('Missing required parameter: "functionId"');const l="/functions/{functionId}/executions".replace("{functionId}",encodeURIComponent(String(o))),m={};typeof a<"u"&&(m.body=a),typeof r<"u"&&(m.async=r),typeof s<"u"&&(m.path=s),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+l),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 r="/functions/{functionId}/executions/{executionId}".replace("{functionId}",encodeURIComponent(String(o))).replace("{executionId}",encodeURIComponent(String(a))),s={},d=new URL(this.client.config.endpoint+r),c={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",d,c,s)}}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 r=new URL(this.client.config.endpoint+o),s={"X-Appwrite-Project":this.client.config.project,"x-sdk-graphql":"true","content-type":"application/json",accept:"application/json"};return this.client.call("post",r,s,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 r=new URL(this.client.config.endpoint+o),s={"X-Appwrite-Project":this.client.config.project,"x-sdk-graphql":"true","content-type":"application/json",accept:"application/json"};return this.client.call("post",r,s,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,r=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 r>"u")throw new h('Missing required parameter: "targetId"');const s="/messaging/topics/{topicId}/subscribers".replace("{topicId}",encodeURIComponent(String(o))),d={};typeof a<"u"&&(d.subscriberId=a),typeof r<"u"&&(d.targetId=r);const c=new URL(this.client.config.endpoint+s),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 r="/messaging/topics/{topicId}/subscribers/{subscriberId}".replace("{topicId}",encodeURIComponent(String(o))).replace("{subscriberId}",encodeURIComponent(String(a))),s={},d=new URL(this.client.config.endpoint+r),c={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json"};return this.client.call("delete",d,c,s)}}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,r="/organization/installations",s={};typeof o<"u"&&(s.queries=o),typeof a<"u"&&(s.total=a);const d=new URL(this.client.config.endpoint+r),c={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",d,c,s)}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 r="/organization/installations",s={};typeof o<"u"&&(s.appId=o),typeof a<"u"&&(s.authorizationDetails=a);const d=new URL(this.client.config.endpoint+r),c={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",d,c,s)}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={},r=new URL(this.client.config.endpoint+o),s={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",r,s,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 r="/organization/installations/{installationId}".replace("{installationId}",encodeURIComponent(String(o))),s={};typeof a<"u"&&(s.authorizationDetails=a);const d=new URL(this.client.config.endpoint+r),c={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("put",d,c,s)}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={},r=new URL(this.client.config.endpoint+o),s={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("delete",r,s,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,r=t.ttl,s="/presences",d={};typeof o<"u"&&(d.queries=o),typeof a<"u"&&(d.total=a),typeof r<"u"&&(d.ttl=r);const c=new URL(this.client.config.endpoint+s),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={},r=new URL(this.client.config.endpoint+o),s={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",r,s,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,r=t.permissions,s=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 r<"u"&&(p.permissions=r),typeof s<"u"&&(p.expiresAt=s),typeof d<"u"&&(p.metadata=d);const l=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",l,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,r=t.expiresAt,s=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))),l={};typeof a<"u"&&(l.status=a),typeof r<"u"&&(l.expiresAt=r),typeof s<"u"&&(l.metadata=s),typeof d<"u"&&(l.permissions=d),typeof c<"u"&&(l.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,l)}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={},r=new URL(this.client.config.endpoint+o),s={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json"};return this.client.call("delete",r,s,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,r=t.search,s=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 r<"u"&&(c.search=r),typeof s<"u"&&(c.total=s);const p=new URL(this.client.config.endpoint+d),l={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",p,l,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,r=t.fileId,s=t.file,d=t.permissions,c=t.folder;if(typeof a>"u")throw new h('Missing required parameter: "bucketId"');if(typeof r>"u")throw new h('Missing required parameter: "fileId"');if(typeof s>"u")throw new h('Missing required parameter: "file"');const p="/storage/buckets/{bucketId}/files".replace("{bucketId}",encodeURIComponent(String(a))),l={};typeof r<"u"&&(l.fileId=r),typeof s<"u"&&(l.file=s),typeof d<"u"&&(l.permissions=d),typeof c<"u"&&(l.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,l,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 r="/storage/buckets/{bucketId}/files/{fileId}".replace("{bucketId}",encodeURIComponent(String(o))).replace("{fileId}",encodeURIComponent(String(a))),s={},d=new URL(this.client.config.endpoint+r),c={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",d,c,s)}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,r=t.name,s=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 r<"u"&&(c.name=r),typeof s<"u"&&(c.permissions=s);const p=new URL(this.client.config.endpoint+d),l={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("put",p,l,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 r="/storage/buckets/{bucketId}/files/{fileId}".replace("{bucketId}",encodeURIComponent(String(o))).replace("{fileId}",encodeURIComponent(String(a))),s={},d=new URL(this.client.config.endpoint+r),c={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json"};return this.client.call("delete",d,c,s)}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,r=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 s="/storage/buckets/{bucketId}/files/{fileId}/download".replace("{bucketId}",encodeURIComponent(String(o))).replace("{fileId}",encodeURIComponent(String(a))),d={};typeof r<"u"&&(d.token=r);const c=new URL(this.client.config.endpoint+s);d.project=this.client.config.project,d.impersonateuserid=this.client.config.impersonateuserid;for(const[p,l]of Object.entries(ge.flatten(d)))c.searchParams.append(p,l);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,r=t.width,s=t.height,d=t.gravity,c=t.quality,p=t.borderWidth,l=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 r<"u"&&(H.width=r),typeof s<"u"&&(H.height=s),typeof d<"u"&&(H.gravity=d),typeof c<"u"&&(H.quality=c),typeof p<"u"&&(H.borderWidth=p),typeof l<"u"&&(H.borderColor=l),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,r=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 s="/storage/buckets/{bucketId}/files/{fileId}/view".replace("{bucketId}",encodeURIComponent(String(o))).replace("{fileId}",encodeURIComponent(String(a))),d={};typeof r<"u"&&(d.token=r);const c=new URL(this.client.config.endpoint+s);d.project=this.client.config.project,d.impersonateuserid=this.client.config.impersonateuserid;for(const[p,l]of Object.entries(ge.flatten(d)))c.searchParams.append(p,l);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 r=new URL(this.client.config.endpoint+o),s={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",r,s,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 r=new URL(this.client.config.endpoint+o),s={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",r,s,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={},r=new URL(this.client.config.endpoint+o),s={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",r,s,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,r=t.rollback;if(typeof o>"u")throw new h('Missing required parameter: "transactionId"');const s="/tablesdb/transactions/{transactionId}".replace("{transactionId}",encodeURIComponent(String(o))),d={};typeof a<"u"&&(d.commit=a),typeof r<"u"&&(d.rollback=r);const c=new URL(this.client.config.endpoint+s),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={},r=new URL(this.client.config.endpoint+o),s={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json"};return this.client.call("delete",r,s,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 r="/tablesdb/transactions/{transactionId}/operations".replace("{transactionId}",encodeURIComponent(String(o))),s={};typeof a<"u"&&(s.operations=a);const d=new URL(this.client.config.endpoint+r),c={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",d,c,s)}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,r=t.queries,s=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))),l={};typeof r<"u"&&(l.queries=r),typeof s<"u"&&(l.transactionId=s),typeof d<"u"&&(l.total=d),typeof c<"u"&&(l.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,l)}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,r=t.rowId,s=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 r>"u")throw new h('Missing required parameter: "rowId"');if(typeof s>"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))),l={};typeof r<"u"&&(l.rowId=r),typeof s<"u"&&(l.data=s),typeof d<"u"&&(l.permissions=d),typeof c<"u"&&(l.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,l)}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,r=t.rowId,s=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 r>"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(r))),p={};typeof s<"u"&&(p.queries=s),typeof d<"u"&&(p.transactionId=d);const l=new URL(this.client.config.endpoint+c),m={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",l,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,r=t.rowId,s=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 r>"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(r))),l={};typeof s<"u"&&(l.data=s),typeof d<"u"&&(l.permissions=d),typeof c<"u"&&(l.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,l)}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,r=t.rowId,s=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 r>"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(r))),l={};typeof s<"u"&&(l.data=s),typeof d<"u"&&(l.permissions=d),typeof c<"u"&&(l.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,l)}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,r=t.rowId,s=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 r>"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(r))),c={};typeof s<"u"&&(c.transactionId=s);const p=new URL(this.client.config.endpoint+d),l={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json"};return this.client.call("delete",p,l,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,r=t.rowId,s=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 r>"u")throw new h('Missing required parameter: "rowId"');if(typeof s>"u")throw new h('Missing required parameter: "column"');const l="/tablesdb/{databaseId}/tables/{tableId}/rows/{rowId}/{column}/decrement".replace("{databaseId}",encodeURIComponent(String(o))).replace("{tableId}",encodeURIComponent(String(a))).replace("{rowId}",encodeURIComponent(String(r))).replace("{column}",encodeURIComponent(String(s))),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+l),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,r=t.rowId,s=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 r>"u")throw new h('Missing required parameter: "rowId"');if(typeof s>"u")throw new h('Missing required parameter: "column"');const l="/tablesdb/{databaseId}/tables/{tableId}/rows/{rowId}/{column}/increment".replace("{databaseId}",encodeURIComponent(String(o))).replace("{tableId}",encodeURIComponent(String(a))).replace("{rowId}",encodeURIComponent(String(r))).replace("{column}",encodeURIComponent(String(s))),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+l),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,r=t.total,s="/teams",d={};typeof o<"u"&&(d.queries=o),typeof a<"u"&&(d.search=a),typeof r<"u"&&(d.total=r);const c=new URL(this.client.config.endpoint+s),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,r=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 s="/teams",d={};typeof o<"u"&&(d.teamId=o),typeof a<"u"&&(d.name=a),typeof r<"u"&&(d.roles=r);const c=new URL(this.client.config.endpoint+s),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={},r=new URL(this.client.config.endpoint+o),s={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",r,s,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 r="/teams/{teamId}".replace("{teamId}",encodeURIComponent(String(o))),s={};typeof a<"u"&&(s.name=a);const d=new URL(this.client.config.endpoint+r),c={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("put",d,c,s)}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={},r=new URL(this.client.config.endpoint+o),s={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json"};return this.client.call("delete",r,s,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,r=t.total;if(typeof o>"u")throw new h('Missing required parameter: "teamId"');const s="/teams/{teamId}/installations".replace("{teamId}",encodeURIComponent(String(o))),d={};typeof a<"u"&&(d.queries=a),typeof r<"u"&&(d.total=r);const c=new URL(this.client.config.endpoint+s),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,r=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 s="/teams/{teamId}/installations".replace("{teamId}",encodeURIComponent(String(o))),d={};typeof a<"u"&&(d.appId=a),typeof r<"u"&&(d.authorizationDetails=r);const c=new URL(this.client.config.endpoint+s),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 r="/teams/{teamId}/installations/{installationId}".replace("{teamId}",encodeURIComponent(String(o))).replace("{installationId}",encodeURIComponent(String(a))),s={},d=new URL(this.client.config.endpoint+r),c={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",d,c,s)}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,r=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 s="/teams/{teamId}/installations/{installationId}".replace("{teamId}",encodeURIComponent(String(o))).replace("{installationId}",encodeURIComponent(String(a))),d={};typeof r<"u"&&(d.authorizationDetails=r);const c=new URL(this.client.config.endpoint+s),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 r="/teams/{teamId}/installations/{installationId}".replace("{teamId}",encodeURIComponent(String(o))).replace("{installationId}",encodeURIComponent(String(a))),s={},d=new URL(this.client.config.endpoint+r),c={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("delete",d,c,s)}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,r=t.search,s=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 r<"u"&&(c.search=r),typeof s<"u"&&(c.total=s);const p=new URL(this.client.config.endpoint+d),l={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",p,l,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,r=t.email,s=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 l="/teams/{teamId}/memberships".replace("{teamId}",encodeURIComponent(String(o))),m={};typeof r<"u"&&(m.email=r),typeof s<"u"&&(m.userId=s),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+l),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 r="/teams/{teamId}/memberships/{membershipId}".replace("{teamId}",encodeURIComponent(String(o))).replace("{membershipId}",encodeURIComponent(String(a))),s={},d=new URL(this.client.config.endpoint+r),c={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",d,c,s)}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,r=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 r>"u")throw new h('Missing required parameter: "roles"');const s="/teams/{teamId}/memberships/{membershipId}".replace("{teamId}",encodeURIComponent(String(o))).replace("{membershipId}",encodeURIComponent(String(a))),d={};typeof r<"u"&&(d.roles=r);const c=new URL(this.client.config.endpoint+s),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 r="/teams/{teamId}/memberships/{membershipId}".replace("{teamId}",encodeURIComponent(String(o))).replace("{membershipId}",encodeURIComponent(String(a))),s={},d=new URL(this.client.config.endpoint+r),c={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json"};return this.client.call("delete",d,c,s)}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,r=t.userId,s=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 r>"u")throw new h('Missing required parameter: "userId"');if(typeof s>"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 r<"u"&&(c.userId=r),typeof s<"u"&&(c.secret=s);const p=new URL(this.client.config.endpoint+d),l={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("patch",p,l,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={},r=new URL(this.client.config.endpoint+o),s={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",r,s,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 r="/teams/{teamId}/prefs".replace("{teamId}",encodeURIComponent(String(o))),s={};typeof a<"u"&&(s.prefs=a);const d=new URL(this.client.config.endpoint+r),c={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("put",d,c,s)}}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 r=new URL(this.client.config.endpoint+o),s={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",r,s,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 r=new URL(this.client.config.endpoint+o),s={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",r,s,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={},r=new URL(this.client.config.endpoint+o),s={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",r,s,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,r=t.rollback;if(typeof o>"u")throw new h('Missing required parameter: "transactionId"');const s="/vectorsdb/transactions/{transactionId}".replace("{transactionId}",encodeURIComponent(String(o))),d={};typeof a<"u"&&(d.commit=a),typeof r<"u"&&(d.rollback=r);const c=new URL(this.client.config.endpoint+s),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={},r=new URL(this.client.config.endpoint+o),s={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json"};return this.client.call("delete",r,s,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 r="/vectorsdb/transactions/{transactionId}/operations".replace("{transactionId}",encodeURIComponent(String(o))),s={};typeof a<"u"&&(s.operations=a);const d=new URL(this.client.config.endpoint+r),c={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json",accept:"application/json"};return this.client.call("post",d,c,s)}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,r=t.queries,s=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))),l={};typeof r<"u"&&(l.queries=r),typeof s<"u"&&(l.transactionId=s),typeof d<"u"&&(l.total=d),typeof c<"u"&&(l.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,l)}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,r=t.documentId,s=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 r>"u")throw new h('Missing required parameter: "documentId"');if(typeof s>"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))),l={};typeof r<"u"&&(l.documentId=r),typeof s<"u"&&(l.data=s),typeof d<"u"&&(l.permissions=d),typeof c<"u"&&(l.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,l)}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,r=t.queries,s=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))),l={};typeof r<"u"&&(l.queries=r),typeof s<"u"&&(l.transactionId=s),typeof d<"u"&&(l.total=d),typeof c<"u"&&(l.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,l)}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,r=t.documentId,s=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 r>"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(r))),p={};typeof s<"u"&&(p.queries=s),typeof d<"u"&&(p.transactionId=d);const l=new URL(this.client.config.endpoint+c),m={"X-Appwrite-Project":this.client.config.project,accept:"application/json"};return this.client.call("get",l,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,r=t.documentId,s=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 r>"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(r))),l={};typeof s<"u"&&(l.data=s),typeof d<"u"&&(l.permissions=d),typeof c<"u"&&(l.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,l)}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,r=t.documentId,s=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 r>"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(r))),l={};typeof s<"u"&&(l.data=s),typeof d<"u"&&(l.permissions=d),typeof c<"u"&&(l.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,l)}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,r=t.documentId,s=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 r>"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(r))),c={};typeof s<"u"&&(c.transactionId=s);const p=new URL(this.client.config.endpoint+d),l={"X-Appwrite-Project":this.client.config.project,"content-type":"application/json"};return this.client.call("delete",p,l,c)}}var St;(function(n){n[n.NORMAL_CLOSURE=1e3]="NORMAL_CLOSURE",n[n.POLICY_VIOLATION=1008]="POLICY_VIOLATION",n[n.UNKNOWN_ERROR=-1]="UNKNOWN_ERROR"})(St||(St={}));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(me.stringify({type:"ping"}))},this.HEARTBEAT_INTERVAL)}stopHeartbeat(){this.heartbeatTimer&&(window?.clearInterval(this.heartbeatTimer),this.heartbeatTimer=void 0)}createSocket(){return ve(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 ve(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 r=`${(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((s,d)=>{if(this.activeSubscriptions.size===0&&!this.pendingPresence){s();return}try{const c=++this.connectionId,p=this.socket=new WebSocket(r);p.addEventListener("open",()=>{c===this.connectionId&&(this.reconnectAttempts=0,this.onOpenCallbacks.forEach(l=>l()),this.startHeartbeat(),s())}),p.addEventListener("message",l=>{if(c===this.connectionId)try{const m=me.parse(l.data);this.handleMessage(m)}catch(m){console.error("Failed to parse message:",m)}}),p.addEventListener("close",l=>ve(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||l.code===St.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",l=>{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 ve(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(St.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(me.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=De.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 ve(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(me.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 ve(this,arguments,void 0,function*(t,o,a=[]){const s=(Array.isArray(t)?t:[t]).map(q=>this.channelToString(q)),d=new Set(s),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 l=()=>ve(this,void 0,void 0,function*(){this.activeSubscriptions.has(p)&&(this.activeSubscriptions.delete(p),this.pendingSubscribes.delete(p),this.sendUnsubscribeMessage([p]))});return{unsubscribe:l,update:q=>ve(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:()=>ve(this,void 0,void 0,function*(){yield l(),this.activeSubscriptions.size===0&&(this.reconnect=!1,yield this.closeSocket())})}})}upsertPresence(e){return ve(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(me.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 r=me.parse((i=window.localStorage.getItem("cookieFallback"))!==null&&i!==void 0?i:"{}");a=r?.[`a_session_${this.client.config.project}`]}catch(r){console.error("Failed to parse cookie fallback:",r)}a&&!o.user&&((t=this.socket)===null||t===void 0||t.send(me.stringify({type:"authentication",data:{session:a}})));for(const r of this.activeSubscriptions.keys())this.enqueuePendingSubscribe(r);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(r=>r(o,a))}handleResponseEvent(e){const i=e.data;if(!i)return;const t=i.channels,o=i.events,a=i.payload,r=i.timestamp,s=i.subscriptions;if(!(!t||!o||!a||!s||s.length===0))for(const d of s){const c=this.activeSubscriptions.get(d);c&&c.callback({events:o,channels:t,timestamp:r,payload:a,subscriptions:s})}}}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 Me(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,Me(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",Me(e)])}static execution(e){return new ke(["executions",Me(e)])}static tablesdb(e){return new ke(["tablesdb",Me(e)])}static bucket(e){return new ke(["buckets",Me(e)])}static function(e){return new ke(["functions",Me(e)])}static team(e){return new ke(["teams",Me(e)])}static membership(e){return new ke(["memberships",Me(e)])}static presence(e){return new ke(["presences",Me(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:De,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:U,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",acceptLegal:"I agree to the",errorLegalRequired:"Accept the terms to continue."};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 et(n){return Io[n]??n.charAt(0).toUpperCase()+n.slice(1)}const $t=(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(),jt=["amber","brave","calm","delta","ember","fable","glide","harbor","ivory","juniper","kite","lumen"],Ji=()=>`${jt[Math.floor(Math.random()*jt.length)]}-${jt[Math.floor(Math.random()*jt.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: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:tt(),$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:tt(),$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 $t("general_unauthorized_scope","User (role: guests) missing scope (account)");if(this.mfaPending)throw $t("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 $t("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 $t("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 s of n)e=(e^s.charCodeAt(0))*16777619;const t=25;let o="";const a=(s,d)=>`<rect x="${s}" y="${d}" width="7" height="7"/><rect x="${s+1}" y="${d+1}" width="5" height="5" fill="#fff"/><rect x="${s+2}" y="${d+2}" width="3" height="3"/>`;for(let s=0;s<t;s++)for(let d=0;d<t;d++)!(d<8&&s<8||d>=t-8&&s<8||d<8&&s>=t-8)&&i()<.45&&(o+=`<rect x="${d}" y="${s}" width="1" height="1"/>`);const r=`<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(r)}`}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 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(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 Pt="authui:pending-oauth";function Oi(n){if(!(typeof sessionStorage>"u"))try{sessionStorage.setItem(Pt,n)}catch{}}function di(){if(!(typeof sessionStorage>"u"))try{const n=sessionStorage.getItem(Pt);sessionStorage.removeItem(Pt),n&&it(`oauth:${n}`)}catch{}}function li(){if(!(typeof sessionStorage>"u"))try{sessionStorage.removeItem(Pt)}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(De.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(De.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(De.unique(),e.trim(),this.config?.securityPhrase??!0)}catch(i){return this.fail(i)}}async sendPhoneOtp(e){try{return await this.acct().createPhoneToken(De.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(r){const s=Je(r),d=pt(r,this.getStrings(),"link");this.emit("error",s),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=Ne`
|
|
11
11
|
:host {
|
|
12
12
|
/* Light theme (matches :root in the console) */
|
|
13
13
|
--authui-background: oklch(1 0 0);
|
|
@@ -85,7 +85,7 @@ var AuthUI=(function(k){"use strict";var Ee;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
85
85
|
--authui-shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.5), 0 4px 6px -4px rgba(0, 0, 0, 0.5);
|
|
86
86
|
color-scheme: dark;
|
|
87
87
|
}
|
|
88
|
-
`,Po=
|
|
88
|
+
`,Po=Ne`
|
|
89
89
|
*,
|
|
90
90
|
*::before,
|
|
91
91
|
*::after {
|
|
@@ -777,6 +777,34 @@ var AuthUI=(function(k){"use strict";var Ee;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
777
777
|
.legal a:hover {
|
|
778
778
|
color: var(--authui-foreground);
|
|
779
779
|
}
|
|
780
|
+
.legal-accept {
|
|
781
|
+
display: flex;
|
|
782
|
+
align-items: flex-start;
|
|
783
|
+
gap: 10px;
|
|
784
|
+
font-size: 12px;
|
|
785
|
+
color: var(--authui-muted-foreground);
|
|
786
|
+
line-height: 1.5;
|
|
787
|
+
text-align: start;
|
|
788
|
+
cursor: pointer;
|
|
789
|
+
user-select: none;
|
|
790
|
+
}
|
|
791
|
+
.legal-accept input {
|
|
792
|
+
margin-top: 2px;
|
|
793
|
+
width: 16px;
|
|
794
|
+
height: 16px;
|
|
795
|
+
flex-shrink: 0;
|
|
796
|
+
accent-color: var(--authui-brand);
|
|
797
|
+
cursor: pointer;
|
|
798
|
+
}
|
|
799
|
+
.legal-accept a {
|
|
800
|
+
color: inherit;
|
|
801
|
+
text-decoration: underline;
|
|
802
|
+
text-decoration-style: dotted;
|
|
803
|
+
text-underline-offset: 3px;
|
|
804
|
+
}
|
|
805
|
+
.legal-accept a:hover {
|
|
806
|
+
color: var(--authui-foreground);
|
|
807
|
+
}
|
|
780
808
|
.links {
|
|
781
809
|
display: flex;
|
|
782
810
|
justify-content: center;
|
|
@@ -800,6 +828,32 @@ var AuthUI=(function(k){"use strict";var Ee;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
800
828
|
width: 18px;
|
|
801
829
|
height: 18px;
|
|
802
830
|
}
|
|
831
|
+
/* Compact icon-only OAuth row (oauthLayout: icon / horizontal). */
|
|
832
|
+
.providers.icon {
|
|
833
|
+
display: flex;
|
|
834
|
+
flex-wrap: wrap;
|
|
835
|
+
gap: 8px;
|
|
836
|
+
justify-content: center;
|
|
837
|
+
}
|
|
838
|
+
.providers.icon .btn {
|
|
839
|
+
width: 40px;
|
|
840
|
+
height: 40px;
|
|
841
|
+
padding: 0;
|
|
842
|
+
justify-content: center;
|
|
843
|
+
position: relative;
|
|
844
|
+
}
|
|
845
|
+
.providers.icon .btn svg {
|
|
846
|
+
width: 18px;
|
|
847
|
+
height: 18px;
|
|
848
|
+
}
|
|
849
|
+
.providers.icon .last-used-badge,
|
|
850
|
+
.providers.icon .oauth-last-used-pill {
|
|
851
|
+
display: none;
|
|
852
|
+
}
|
|
853
|
+
.providers.icon .oauth-last-used-dot {
|
|
854
|
+
top: 4px;
|
|
855
|
+
inset-inline-end: 4px;
|
|
856
|
+
}
|
|
803
857
|
/* OAuth accordion: last-used (or focused) expands; others stay icon-compact. */
|
|
804
858
|
.providers.accordion {
|
|
805
859
|
display: flex;
|
|
@@ -1033,11 +1087,11 @@ var AuthUI=(function(k){"use strict";var Ee;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
1033
1087
|
animation-duration: 0.01ms !important;
|
|
1034
1088
|
}
|
|
1035
1089
|
}
|
|
1036
|
-
`;var
|
|
1090
|
+
`;var Uo=Object.defineProperty,Co=(n,e,i,t)=>{for(var o=void 0,a=n.length-1,r;a>=0;a--)(r=n[a])&&(o=r(e,i,o)||o);return o&&Uo(e,i,o),o};const an=(qe=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 qe.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 qe.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}))}},qe.styles=[jo,Po],qe.KEY_EVENTS=["keydown","keyup","keypress"],qe);Co([X()],an.prototype,"auth");let Ue=an;var xo=Object.defineProperty,Mo=Object.getOwnPropertyDescriptor,pe=(n,e,i,t)=>{for(var o=t>1?void 0:t?Mo(e,i):e,a=n.length-1,r;a>=0;a--)(r=n[a])&&(o=(t?r(e,i,o):r(o))||o);return t&&o&&xo(e,i,o),o};A.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.requireAcceptance="",this.oauthLayout="",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,this.oauthLayout&&(e.oauthLayout=this.oauthLayout),{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,requireAcceptance:this.requireAcceptance!==""&&this.requireAcceptance!=="false"?!0:void 0},preview:this.preview===""||this.preview==="false"?void 0:!0}}},A.AuthUIConfigElement.styles=Ne`
|
|
1037
1091
|
:host {
|
|
1038
1092
|
display: none;
|
|
1039
1093
|
}
|
|
1040
|
-
`,pe([
|
|
1094
|
+
`,pe([O({type:String})],A.AuthUIConfigElement.prototype,"endpoint",2),pe([O({type:String})],A.AuthUIConfigElement.prototype,"project",2),pe([O({type:String,attribute:"redirect-url"})],A.AuthUIConfigElement.prototype,"redirectUrl",2),pe([O({type:String,attribute:"success-url"})],A.AuthUIConfigElement.prototype,"successUrl",2),pe([O({type:String})],A.AuthUIConfigElement.prototype,"methods",2),pe([O({type:String,attribute:"sign-up"})],A.AuthUIConfigElement.prototype,"signUp",2),pe([O({type:String,attribute:"require-name"})],A.AuthUIConfigElement.prototype,"requireName",2),pe([O({type:String})],A.AuthUIConfigElement.prototype,"mfa",2),pe([O({type:String,attribute:"security-phrase"})],A.AuthUIConfigElement.prototype,"securityPhrase",2),pe([O({type:String})],A.AuthUIConfigElement.prototype,"name",2),pe([O({type:String})],A.AuthUIConfigElement.prototype,"logo",2),pe([O({type:String})],A.AuthUIConfigElement.prototype,"theme",2),pe([O({type:String})],A.AuthUIConfigElement.prototype,"radius",2),pe([O({type:String})],A.AuthUIConfigElement.prototype,"primary",2),pe([O({type:String,attribute:"primary-foreground"})],A.AuthUIConfigElement.prototype,"primaryForeground",2),pe([O({type:String,attribute:"terms-url"})],A.AuthUIConfigElement.prototype,"termsUrl",2),pe([O({type:String,attribute:"privacy-url"})],A.AuthUIConfigElement.prototype,"privacyUrl",2),pe([O({type:String,attribute:"require-acceptance"})],A.AuthUIConfigElement.prototype,"requireAcceptance",2),pe([O({type:String,attribute:"oauth-layout"})],A.AuthUIConfigElement.prototype,"oauthLayout",2),pe([O({type:String})],A.AuthUIConfigElement.prototype,"preview",2),A.AuthUIConfigElement=pe([Ye("authui-config")],A.AuthUIConfigElement);var Ro=Object.defineProperty,Eo=Object.getOwnPropertyDescriptor,Ut=(n,e,i,t)=>{for(var o=t>1?void 0:t?Eo(e,i):e,a=n.length-1,r;a>=0;a--)(r=n[a])&&(o=(t?r(e,i,o):r(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)):[]}function No(n,e,i){const t=hi(e),o=hi(i);return!(n==="loading"&&!t.includes("loading")||t.length>0&&!t.includes(n)||o.includes(n))}A.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(){return No(this.status,this.when,this.unless)}updated(){(this.status!=="loading"||hi(this.when).includes("loading"))&&(this.setAttribute("ready",""),this.style.display="contents")}render(){return this.visible?b`<slot></slot>`:x}},Ut([O({type:String})],A.AuthUIShow.prototype,"when",2),Ut([O({type:String})],A.AuthUIShow.prototype,"unless",2),Ut([X()],A.AuthUIShow.prototype,"status",2),A.AuthUIShow=Ut([Ye("authui-show")],A.AuthUIShow);const Ho=Ne`
|
|
1041
1095
|
:host {
|
|
1042
1096
|
display: block;
|
|
1043
1097
|
width: 100%;
|
|
@@ -1091,7 +1145,7 @@ var AuthUI=(function(k){"use strict";var Ee;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
1091
1145
|
height: 14px;
|
|
1092
1146
|
margin: 0;
|
|
1093
1147
|
}
|
|
1094
|
-
`,ae=n=>
|
|
1148
|
+
`,ae=n=>b`<svg
|
|
1095
1149
|
xmlns="http://www.w3.org/2000/svg"
|
|
1096
1150
|
viewBox="0 0 24 24"
|
|
1097
1151
|
fill="none"
|
|
@@ -1102,10 +1156,10 @@ var AuthUI=(function(k){"use strict";var Ee;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
1102
1156
|
aria-hidden="true"
|
|
1103
1157
|
>
|
|
1104
1158
|
${n}
|
|
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`
|
|
1159
|
+
</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>`,Do={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 ht(n){return Do[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 Bo=Object.defineProperty,Xo=Object.getOwnPropertyDescriptor,ye=(n,e,i,t)=>{for(var o=t>1?void 0:t?Xo(e,i):e,a=n.length-1,r;a>=0;a--)(r=n[a])&&(o=(t?r(e,i,o):r(o))||o);return t&&o&&Bo(e,i,o),o};A.AuthUISignIn=class extends Ue{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.legalAccepted=!1,this.onSignIn=e=>{e.preventDefault(),this.requireValid(e)&&this.run(async()=>{await E.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.ensureLegalAccepted()&&this.run(async()=>{await E.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 E.signInAnonymously(),it("anonymous"),this.fire("authui-success",{method:"anonymous"})})},this.onOAuth=e=>{this.step==="sign-up"&&!this.ensureLegalAccepted()||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,it(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="",this.legalAccepted=!1,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`
|
|
1106
1160
|
<div class="panel ${this.embedded?"embedded":""}" part="panel">
|
|
1107
1161
|
${this.renderHeader()}
|
|
1108
|
-
${this.notice?
|
|
1162
|
+
${this.notice?b`<div class="alert alert-${this.notice.tone}" role="status">
|
|
1109
1163
|
${this.notice.tone==="success"?_.checkCircle:this.notice.tone==="error"?_.alert:_.info}
|
|
1110
1164
|
<div class="alert-body">${this.notice.message}</div>
|
|
1111
1165
|
<button
|
|
@@ -1115,37 +1169,37 @@ var AuthUI=(function(k){"use strict";var Ee;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
1115
1169
|
>
|
|
1116
1170
|
${_.x}
|
|
1117
1171
|
</button>
|
|
1118
|
-
</div>`:
|
|
1172
|
+
</div>`:x}
|
|
1119
1173
|
${e}
|
|
1120
1174
|
</div>
|
|
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
|
|
1175
|
+
`}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 b`
|
|
1122
1176
|
<div class="header">
|
|
1123
|
-
${e?
|
|
1177
|
+
${e?b`<img
|
|
1124
1178
|
class="logo"
|
|
1125
1179
|
src=${e}
|
|
1126
1180
|
alt=""
|
|
1127
1181
|
@error=${a=>{a.target.hidden=!0}}
|
|
1128
|
-
/>`:
|
|
1129
|
-
${E.isPreview?
|
|
1182
|
+
/>`:x}
|
|
1183
|
+
${E.isPreview?b`<span class="badge badge-info preview">${this.t("preview")}</span>`:x}
|
|
1130
1184
|
<h2 class="title" id="authui-title">${t}</h2>
|
|
1131
|
-
${o?
|
|
1185
|
+
${o?b`<p class="description">${o}</p>`:x}
|
|
1132
1186
|
</div>
|
|
1133
|
-
`}renderError(){return this.error?
|
|
1187
|
+
`}renderError(){return this.error?b`<div class="alert alert-error" role="alert">
|
|
1134
1188
|
${_.alert}
|
|
1135
1189
|
<div class="alert-body">${this.error}</div>
|
|
1136
|
-
</div>`:
|
|
1137
|
-
${this.busy?
|
|
1138
|
-
</button>`}passwordField(e){const i=this[e.field],t=e.meter?
|
|
1190
|
+
</div>`:x}submitButton(e,i="btn-primary"){return b`<button class="btn ${i} btn-block" type="submit" ?disabled=${this.busy}>
|
|
1191
|
+
${this.busy?b`<span class="spinner" aria-hidden="true"></span>`:x} ${e}
|
|
1192
|
+
</button>`}passwordField(e){const i=this[e.field],t=e.meter?Ct(i):null;return b`
|
|
1139
1193
|
<div class="field">
|
|
1140
1194
|
<div class="field-header">
|
|
1141
1195
|
<label class="label" for=${e.id}>${e.label}</label>
|
|
1142
|
-
${e.forgot?
|
|
1196
|
+
${e.forgot?b`<button
|
|
1143
1197
|
type="button"
|
|
1144
1198
|
class="btn btn-link small"
|
|
1145
1199
|
@click=${()=>this.go("forgot-password")}
|
|
1146
1200
|
>
|
|
1147
1201
|
${this.t("forgotPassword")}
|
|
1148
|
-
</button>`:
|
|
1202
|
+
</button>`:x}
|
|
1149
1203
|
</div>
|
|
1150
1204
|
<div class="input-wrap">
|
|
1151
1205
|
<input
|
|
@@ -1167,7 +1221,7 @@ var AuthUI=(function(k){"use strict";var Ee;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
1167
1221
|
${this.showPassword?_.eyeOff:_.eye}
|
|
1168
1222
|
</button>
|
|
1169
1223
|
</div>
|
|
1170
|
-
${t&&i?
|
|
1224
|
+
${t&&i?b`<div class="strength" aria-live="polite">
|
|
1171
1225
|
<div
|
|
1172
1226
|
class="strength-meter"
|
|
1173
1227
|
data-level=${String(t.level)}
|
|
@@ -1181,9 +1235,9 @@ var AuthUI=(function(k){"use strict";var Ee;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
1181
1235
|
<span></span><span></span><span></span><span></span>
|
|
1182
1236
|
</div>
|
|
1183
1237
|
<p class="strength-label">${this.t(t.labelKey)}</p>
|
|
1184
|
-
</div>`:e.hint?
|
|
1238
|
+
</div>`:e.hint?b`<p class="hint">${e.hint}</p>`:x}
|
|
1185
1239
|
</div>
|
|
1186
|
-
`}emailField(e="email"){return
|
|
1240
|
+
`}emailField(e="email"){return b`
|
|
1187
1241
|
<div class="field">
|
|
1188
1242
|
<label class="label" for="authui-email">${this.t("email")}</label>
|
|
1189
1243
|
<input
|
|
@@ -1197,7 +1251,7 @@ var AuthUI=(function(k){"use strict";var Ee;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
1197
1251
|
@input=${this.bind("email")}
|
|
1198
1252
|
/>
|
|
1199
1253
|
</div>
|
|
1200
|
-
`}codeField(){return
|
|
1254
|
+
`}codeField(){return b`
|
|
1201
1255
|
<div class="field">
|
|
1202
1256
|
<label class="label" for="authui-code">${this.t("code")}</label>
|
|
1203
1257
|
<input
|
|
@@ -1213,40 +1267,42 @@ var AuthUI=(function(k){"use strict";var Ee;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
1213
1267
|
@input=${this.bind("code")}
|
|
1214
1268
|
/>
|
|
1215
1269
|
</div>
|
|
1216
|
-
`}legal(){const e=this.config?.legal;return!e?.termsUrl&&!e?.privacyUrl?
|
|
1217
|
-
|
|
1218
|
-
|
|
1219
|
-
|
|
1220
|
-
|
|
1221
|
-
|
|
1270
|
+
`}needsLegalAcceptance(){const e=this.config?.legal;return e?.requireAcceptance?!!(e.termsUrl||e.privacyUrl):!1}ensureLegalAccepted(){return!this.needsLegalAcceptance()||this.legalAccepted?!0:(this.error=this.t("errorLegalRequired"),!1)}legalLinks(){const e=this.config?.legal;return!e?.termsUrl&&!e?.privacyUrl?x:b`${e.termsUrl?b`<a href=${e.termsUrl} target="_blank" rel="noopener">${this.t("terms")}</a>`:x}${e.termsUrl&&e.privacyUrl?b` ${this.t("and")} `:x}${e.privacyUrl?b`<a href=${e.privacyUrl} target="_blank" rel="noopener">${this.t("privacy")}</a>`:x}`}legal(){const e=this.config?.legal;return!e?.termsUrl&&!e?.privacyUrl||this.step==="sign-up"&&this.needsLegalAcceptance()?x:b`<p class="legal">${this.t("agreeTo")} ${this.legalLinks()}.</p>`}legalAcceptField(){return this.needsLegalAcceptance()?b`<label class="legal-accept">
|
|
1271
|
+
<input
|
|
1272
|
+
type="checkbox"
|
|
1273
|
+
.checked=${this.legalAccepted}
|
|
1274
|
+
@change=${e=>{this.legalAccepted=e.target.checked,this.legalAccepted&&this.error===this.t("errorLegalRequired")&&(this.error="")}}
|
|
1275
|
+
/>
|
|
1276
|
+
<span>${this.t("acceptLegal")} ${this.legalLinks()}.</span>
|
|
1277
|
+
</label>`:x}backLink(e="sign-in"){return b`<div class="links">
|
|
1222
1278
|
<button type="button" class="btn btn-link" @click=${()=>this.go(e)}>
|
|
1223
1279
|
${_.arrowLeft} ${this.t("back")}
|
|
1224
1280
|
</button>
|
|
1225
|
-
</div>`}renderStep(){if(this.auth.configError)return
|
|
1281
|
+
</div>`}renderStep(){if(this.auth.configError)return b`<div class="alert alert-error" role="alert">
|
|
1226
1282
|
${_.alert}
|
|
1227
1283
|
<div class="alert-body">${this.auth.configError}</div>
|
|
1228
|
-
</div>`;if(!this.auth.configured)return
|
|
1284
|
+
</div>`;if(!this.auth.configured)return b`<div class="alert alert-error" role="alert">
|
|
1229
1285
|
${_.alert}
|
|
1230
1286
|
<div class="alert-body">${this.t("errorNotConfigured")}</div>
|
|
1231
|
-
</div>`;if(this.auth.status==="loading")return
|
|
1287
|
+
</div>`;if(this.auth.status==="loading")return b`<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 b`
|
|
1232
1288
|
<div class="stack">
|
|
1233
1289
|
<div class="row">
|
|
1234
1290
|
<div class="inline">
|
|
1235
1291
|
<span class="avatar">${fi(i)}</span>
|
|
1236
1292
|
<div class="row-main">
|
|
1237
1293
|
<span class="row-title" title=${i}>${i}</span>
|
|
1238
|
-
${e.email&&e.name?
|
|
1294
|
+
${e.email&&e.name?b`<span class="row-sub" title=${e.email}>${e.email}</span>`:x}
|
|
1239
1295
|
</div>
|
|
1240
1296
|
</div>
|
|
1241
1297
|
</div>
|
|
1242
1298
|
${this.renderError()}
|
|
1243
1299
|
<div class="stack-sm">
|
|
1244
|
-
${this.config?.successUrl?
|
|
1300
|
+
${this.config?.successUrl?b`<a class="btn btn-primary btn-block" href=${this.config.successUrl}
|
|
1245
1301
|
>${this.t("continue")}</a
|
|
1246
|
-
>`:
|
|
1302
|
+
>`:x}
|
|
1247
1303
|
<button
|
|
1248
1304
|
class="btn btn-outline btn-block"
|
|
1249
|
-
@click=${()=>{this.embedded?this.fire("authui-open",{view:"account"}):
|
|
1305
|
+
@click=${()=>{this.embedded?this.fire("authui-open",{view:"account"}):nt("account")}}
|
|
1250
1306
|
>
|
|
1251
1307
|
${_.settings} ${this.t("manageAccount")}
|
|
1252
1308
|
</button>
|
|
@@ -1255,97 +1311,111 @@ var AuthUI=(function(k){"use strict";var Ee;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
1255
1311
|
</button>
|
|
1256
1312
|
</div>
|
|
1257
1313
|
</div>
|
|
1258
|
-
`}renderProviders(){const e=[...this.config?.methods?.oauth??[]];if(e.length===0)return
|
|
1259
|
-
<div class="providers">
|
|
1260
|
-
${
|
|
1314
|
+
`}renderProviders(){const e=[...this.config?.methods?.oauth??[]];if(e.length===0)return x;const i=Ze(),t=e.find(s=>i===`oauth:${s}`)??null,o=this.config?.methods?.oauthLayout,a=o==="horizontal"||o==="icon"?"icon":o==="stack"||o==="accordion"?o:e.length<=2?"stack":"accordion";if(a==="icon")return b`
|
|
1315
|
+
<div class="providers icon">
|
|
1316
|
+
${e.map(s=>{const d=i===`oauth:${s}`,c=this.t("continueWith",{provider:et(s)});return b`<button
|
|
1261
1317
|
type="button"
|
|
1262
|
-
class="btn btn-outline ${
|
|
1318
|
+
class="btn btn-outline ${d?"last-used":""}"
|
|
1263
1319
|
@click=${()=>this.onOAuth(s)}
|
|
1264
1320
|
?disabled=${this.busy}
|
|
1265
|
-
aria-label=${
|
|
1321
|
+
aria-label=${d?`${c}. ${this.t("lastUsed")}`:c}
|
|
1322
|
+
title=${c}
|
|
1323
|
+
>
|
|
1324
|
+
${ht(s)}
|
|
1325
|
+
${d?b`<span class="oauth-last-used-dot" aria-hidden="true"></span>`:x}
|
|
1326
|
+
</button>`})}
|
|
1327
|
+
</div>
|
|
1328
|
+
`;if(a==="stack"){const s=[...e].sort((d,c)=>{const p=i===`oauth:${d}`?0:1,l=i===`oauth:${c}`?0:1;return p-l});return b`
|
|
1329
|
+
<div class="providers">
|
|
1330
|
+
${s.map(d=>{const c=i===`oauth:${d}`,p=this.t("continueWith",{provider:et(d)});return b`<button
|
|
1331
|
+
type="button"
|
|
1332
|
+
class="btn btn-outline ${c?"last-used":""}"
|
|
1333
|
+
@click=${()=>this.onOAuth(d)}
|
|
1334
|
+
?disabled=${this.busy}
|
|
1335
|
+
aria-label=${c?`${p}. ${this.t("lastUsed")}`:p}
|
|
1266
1336
|
>
|
|
1267
|
-
${
|
|
1268
|
-
<span>${
|
|
1269
|
-
${
|
|
1337
|
+
${ht(d)}
|
|
1338
|
+
<span>${p}</span>
|
|
1339
|
+
${c?b`<span class="last-used-badge">${this.t("lastUsed")}</span>`:x}
|
|
1270
1340
|
</button>`})}
|
|
1271
1341
|
</div>
|
|
1272
|
-
`}const
|
|
1342
|
+
`}const r=this.expandedOAuth&&e.includes(this.expandedOAuth)?this.expandedOAuth:t??e[0];return b`
|
|
1273
1343
|
<div
|
|
1274
1344
|
class="providers accordion"
|
|
1275
1345
|
@mouseleave=${()=>{this.expandedOAuth=t??e[0]}}
|
|
1276
1346
|
>
|
|
1277
|
-
${e.map(
|
|
1278
|
-
class="provider-slot ${
|
|
1279
|
-
@mouseenter=${()=>{this.expandedOAuth=
|
|
1347
|
+
${e.map(s=>{const d=i===`oauth:${s}`,c=r===s,p=this.t("continueWith",{provider:et(s)});return b`<div
|
|
1348
|
+
class="provider-slot ${c?"is-expanded":""}"
|
|
1349
|
+
@mouseenter=${()=>{this.expandedOAuth=s}}
|
|
1280
1350
|
>
|
|
1281
1351
|
<button
|
|
1282
1352
|
type="button"
|
|
1283
1353
|
class="btn btn-outline"
|
|
1284
|
-
@click=${()=>this.onOAuth(
|
|
1285
|
-
@focus=${()=>{this.expandedOAuth=
|
|
1354
|
+
@click=${()=>this.onOAuth(s)}
|
|
1355
|
+
@focus=${()=>{this.expandedOAuth=s}}
|
|
1286
1356
|
?disabled=${this.busy}
|
|
1287
|
-
aria-label=${
|
|
1357
|
+
aria-label=${d?`${p}. ${this.t("lastUsed")}`:p}
|
|
1288
1358
|
>
|
|
1289
|
-
${
|
|
1359
|
+
${ht(s)}
|
|
1290
1360
|
<span class="provider-label"
|
|
1291
|
-
><span><span class="provider-label-text">${
|
|
1361
|
+
><span><span class="provider-label-text">${p}</span></span></span
|
|
1292
1362
|
>
|
|
1293
|
-
${
|
|
1363
|
+
${d?b`<span class="oauth-last-used" data-last-used=${s} aria-hidden="true">
|
|
1294
1364
|
<span class="oauth-last-used-dot"></span>
|
|
1295
1365
|
<span class="oauth-last-used-pill">${this.t("lastUsed")}</span>
|
|
1296
|
-
</span>`:
|
|
1366
|
+
</span>`:x}
|
|
1297
1367
|
</button>
|
|
1298
1368
|
</div>`})}
|
|
1299
1369
|
</div>
|
|
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
|
|
1370
|
+
`}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 b`
|
|
1301
1371
|
<div class="stack">
|
|
1302
1372
|
${this.renderProviders()}
|
|
1303
|
-
${t&&(i||o.length>0)?
|
|
1304
|
-
${i?
|
|
1373
|
+
${t&&(i||o.length>0)?b`<div class="separator-text">${this.t("or")}</div>`:x}
|
|
1374
|
+
${i?b`<form
|
|
1305
1375
|
class="form ${Ze()==="email-password"?"last-used-form":""}"
|
|
1306
1376
|
@submit=${this.onSignIn}
|
|
1307
1377
|
novalidate
|
|
1308
1378
|
>
|
|
1309
|
-
${Ze()==="email-password"?
|
|
1379
|
+
${Ze()==="email-password"?b`<p class="hint">
|
|
1310
1380
|
<span class="last-used-badge">${this.t("lastUsed")}</span>
|
|
1311
|
-
</p>`:
|
|
1381
|
+
</p>`:x}
|
|
1312
1382
|
${this.emailField()}
|
|
1313
1383
|
${this.passwordField({label:this.t("password"),autocomplete:"current-password",id:"authui-password",field:"password",forgot:!0})}
|
|
1314
1384
|
${this.renderError()} ${this.submitButton(this.t("signIn"))}
|
|
1315
1385
|
</form>`:this.renderError()}
|
|
1316
|
-
${o.length>0?
|
|
1317
|
-
${o.map(a=>{const
|
|
1386
|
+
${o.length>0?b`<div class="stack-sm">
|
|
1387
|
+
${o.map(a=>{const r=Ze()===a.step;return b`<button
|
|
1318
1388
|
type="button"
|
|
1319
|
-
class="btn btn-secondary btn-block ${
|
|
1389
|
+
class="btn btn-secondary btn-block ${r?"last-used":""}"
|
|
1320
1390
|
@click=${()=>this.go(a.step)}
|
|
1321
1391
|
>
|
|
1322
1392
|
${a.icon} ${a.label}
|
|
1323
|
-
${
|
|
1393
|
+
${r?b`<span class="last-used-badge">${this.t("lastUsed")}</span>`:x}
|
|
1324
1394
|
</button>`})}
|
|
1325
|
-
</div>`:
|
|
1326
|
-
${e.anonymous?
|
|
1395
|
+
</div>`:x}
|
|
1396
|
+
${e.anonymous?b`<button
|
|
1327
1397
|
type="button"
|
|
1328
1398
|
class="btn btn-ghost btn-block ${Ze()==="anonymous"?"last-used":""}"
|
|
1329
1399
|
@click=${this.onGuest}
|
|
1330
1400
|
?disabled=${this.busy}
|
|
1331
1401
|
>
|
|
1332
1402
|
${_.ghost} ${this.t("continueAsGuest")}
|
|
1333
|
-
${Ze()==="anonymous"?
|
|
1334
|
-
</button>`:
|
|
1335
|
-
${i&&this.config?.signUp!==!1?
|
|
1403
|
+
${Ze()==="anonymous"?b`<span class="last-used-badge">${this.t("lastUsed")}</span>`:x}
|
|
1404
|
+
</button>`:x}
|
|
1405
|
+
${i&&this.config?.signUp!==!1?b`<div class="links">
|
|
1336
1406
|
<span>${this.t("noAccount")}</span>
|
|
1337
1407
|
<button type="button" class="btn btn-link" @click=${()=>this.go("sign-up")}>
|
|
1338
1408
|
${this.t("signUp")}
|
|
1339
1409
|
</button>
|
|
1340
|
-
</div>`:
|
|
1410
|
+
</div>`:x}
|
|
1341
1411
|
${this.legal()}
|
|
1342
1412
|
</div>
|
|
1343
|
-
`}renderSignUp(){return
|
|
1413
|
+
`}renderSignUp(){return b`
|
|
1344
1414
|
<div class="stack">
|
|
1345
1415
|
${this.renderProviders()}
|
|
1346
|
-
${(this.config?.methods?.oauth?.length??0)>0?
|
|
1416
|
+
${(this.config?.methods?.oauth?.length??0)>0?b`<div class="separator-text">${this.t("or")}</div>`:x}
|
|
1347
1417
|
<form class="form" @submit=${this.onSignUp} novalidate>
|
|
1348
|
-
${this.config?.requireName!==!1?
|
|
1418
|
+
${this.config?.requireName!==!1?b`<div class="field">
|
|
1349
1419
|
<label class="label" for="authui-name">${this.t("name")}</label>
|
|
1350
1420
|
<input
|
|
1351
1421
|
class="input"
|
|
@@ -1356,10 +1426,11 @@ var AuthUI=(function(k){"use strict";var Ee;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
1356
1426
|
.value=${this.name}
|
|
1357
1427
|
@input=${this.bind("name")}
|
|
1358
1428
|
/>
|
|
1359
|
-
</div>`:
|
|
1429
|
+
</div>`:x}
|
|
1360
1430
|
${this.emailField()}
|
|
1361
1431
|
${this.passwordField({label:this.t("password"),autocomplete:"new-password",id:"authui-password",field:"password",hint:this.t("passwordHint"),meter:!0})}
|
|
1362
|
-
${this.
|
|
1432
|
+
${this.legalAcceptField()} ${this.renderError()}
|
|
1433
|
+
${this.submitButton(this.t("createAccount"))}
|
|
1363
1434
|
</form>
|
|
1364
1435
|
<div class="links">
|
|
1365
1436
|
<span>${this.t("haveAccount")}</span>
|
|
@@ -1369,14 +1440,14 @@ var AuthUI=(function(k){"use strict";var Ee;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
1369
1440
|
</div>
|
|
1370
1441
|
${this.legal()}
|
|
1371
1442
|
</div>
|
|
1372
|
-
`}renderForgot(){return
|
|
1443
|
+
`}renderForgot(){return b`
|
|
1373
1444
|
<div class="stack">
|
|
1374
1445
|
<form class="form" @submit=${this.onForgot} novalidate>
|
|
1375
1446
|
${this.emailField()} ${this.renderError()} ${this.submitButton(this.t("sendResetLink"))}
|
|
1376
1447
|
</form>
|
|
1377
1448
|
${this.backLink()}
|
|
1378
1449
|
</div>
|
|
1379
|
-
`}renderReset(){return this.recovery?
|
|
1450
|
+
`}renderReset(){return this.recovery?b`
|
|
1380
1451
|
<div class="stack">
|
|
1381
1452
|
<form class="form" @submit=${this.onReset} novalidate>
|
|
1382
1453
|
${this.passwordField({label:this.t("newPassword"),autocomplete:"new-password",id:"authui-password",field:"password",hint:this.t("passwordHint"),meter:!0})}
|
|
@@ -1393,7 +1464,7 @@ var AuthUI=(function(k){"use strict";var Ee;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
1393
1464
|
</button>
|
|
1394
1465
|
</div>
|
|
1395
1466
|
</div>
|
|
1396
|
-
`:
|
|
1467
|
+
`:b`<div class="stack">
|
|
1397
1468
|
<div class="alert alert-error" role="alert">
|
|
1398
1469
|
${_.alert}
|
|
1399
1470
|
<div class="alert-body">${this.t("errorInvalidToken")}</div>
|
|
@@ -1407,26 +1478,26 @@ var AuthUI=(function(k){"use strict";var Ee;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
1407
1478
|
${this.t("requestNewLink")}
|
|
1408
1479
|
</button>
|
|
1409
1480
|
</div>
|
|
1410
|
-
</div>`}phraseBox(e){return e?
|
|
1481
|
+
</div>`}phraseBox(e){return e?b`<div class="alert alert-info">
|
|
1411
1482
|
${_.shield}
|
|
1412
1483
|
<div class="alert-title">
|
|
1413
1484
|
${this.t("securityPhrase")}: <span class="code">${e}</span>
|
|
1414
1485
|
</div>
|
|
1415
1486
|
<div class="alert-body">${this.t("securityPhraseHint")}</div>
|
|
1416
|
-
</div>`:
|
|
1487
|
+
</div>`:x}renderMagicUrl(){return this.token?b`<div class="stack">
|
|
1417
1488
|
<div class="alert alert-success" role="status">
|
|
1418
1489
|
${_.mail}
|
|
1419
1490
|
<div class="alert-body">${this.t("magicLinkSent",{email:this.token.target})}</div>
|
|
1420
1491
|
</div>
|
|
1421
1492
|
${this.phraseBox(this.token.phrase)} ${this.backLink()}
|
|
1422
|
-
</div>`:
|
|
1493
|
+
</div>`:b`
|
|
1423
1494
|
<div class="stack">
|
|
1424
1495
|
<form class="form" @submit=${this.onMagicUrl} novalidate>
|
|
1425
1496
|
${this.emailField()} ${this.renderError()} ${this.submitButton(this.t("sendMagicLink"))}
|
|
1426
1497
|
</form>
|
|
1427
1498
|
${this.backLink()} ${this.legal()}
|
|
1428
1499
|
</div>
|
|
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
|
|
1500
|
+
`}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 b`
|
|
1430
1501
|
<div class="alert alert-info" role="status">
|
|
1431
1502
|
${e?_.smartphone:_.mail}
|
|
1432
1503
|
<div class="alert-body">${this.t("codeSent",{target:this.token.target})}</div>
|
|
@@ -1453,14 +1524,14 @@ var AuthUI=(function(k){"use strict";var Ee;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
1453
1524
|
${e?this.t("useDifferentPhone"):this.t("useDifferentEmail")}
|
|
1454
1525
|
</button>
|
|
1455
1526
|
</div>
|
|
1456
|
-
`}renderEmailOtp(){return this.token?
|
|
1527
|
+
`}renderEmailOtp(){return this.token?b`<div class="stack">${this.renderCodeEntry()}</div>`:b`
|
|
1457
1528
|
<div class="stack">
|
|
1458
1529
|
<form class="form" @submit=${this.onEmailOtp} novalidate>
|
|
1459
1530
|
${this.emailField()} ${this.renderError()} ${this.submitButton(this.t("sendCode"))}
|
|
1460
1531
|
</form>
|
|
1461
1532
|
${this.backLink()} ${this.legal()}
|
|
1462
1533
|
</div>
|
|
1463
|
-
`}renderPhone(){return this.token?
|
|
1534
|
+
`}renderPhone(){return this.token?b`<div class="stack">${this.renderCodeEntry()}</div>`:b`
|
|
1464
1535
|
<div class="stack">
|
|
1465
1536
|
<form class="form" @submit=${this.onPhoneOtp} novalidate>
|
|
1466
1537
|
<div class="field">
|
|
@@ -1480,10 +1551,10 @@ var AuthUI=(function(k){"use strict";var Ee;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
1480
1551
|
</form>
|
|
1481
1552
|
${this.backLink()} ${this.legal()}
|
|
1482
1553
|
</div>
|
|
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
|
|
1554
|
+
`}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 b`
|
|
1484
1555
|
<div class="stack">
|
|
1485
1556
|
<div class="stack-sm">
|
|
1486
|
-
${t.filter(o=>o.available).map(o=>
|
|
1557
|
+
${t.filter(o=>o.available).map(o=>b`<button
|
|
1487
1558
|
type="button"
|
|
1488
1559
|
class="choice"
|
|
1489
1560
|
@click=${()=>this.onChooseFactor(o.factor)}
|
|
@@ -1499,10 +1570,10 @@ var AuthUI=(function(k){"use strict";var Ee;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
1499
1570
|
</button>
|
|
1500
1571
|
</div>
|
|
1501
1572
|
</div>
|
|
1502
|
-
`}const i=this.challenge.factor==="recoverycode";return
|
|
1573
|
+
`}const i=this.challenge.factor==="recoverycode";return b`
|
|
1503
1574
|
<div class="stack">
|
|
1504
1575
|
<form class="form" @submit=${this.onVerifyFactor} novalidate>
|
|
1505
|
-
${i?
|
|
1576
|
+
${i?b`<div class="field">
|
|
1506
1577
|
<label class="label" for="authui-code">${this.t("recoveryCode")}</label>
|
|
1507
1578
|
<input
|
|
1508
1579
|
class="input mono"
|
|
@@ -1526,19 +1597,19 @@ var AuthUI=(function(k){"use strict";var Ee;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
1526
1597
|
</button>
|
|
1527
1598
|
</div>
|
|
1528
1599
|
</div>
|
|
1529
|
-
`}},
|
|
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
|
|
1600
|
+
`}},A.AuthUISignIn.styles=[...Ue.styles,Ho],ye([O({type:String})],A.AuthUISignIn.prototype,"view",2),ye([O({type:Boolean})],A.AuthUISignIn.prototype,"embedded",2),ye([X()],A.AuthUISignIn.prototype,"step",2),ye([X()],A.AuthUISignIn.prototype,"busy",2),ye([X()],A.AuthUISignIn.prototype,"error",2),ye([X()],A.AuthUISignIn.prototype,"notice",2),ye([X()],A.AuthUISignIn.prototype,"showPassword",2),ye([X()],A.AuthUISignIn.prototype,"expandedOAuth",2),ye([X()],A.AuthUISignIn.prototype,"token",2),ye([X()],A.AuthUISignIn.prototype,"resendCooldownUntil",2),ye([X()],A.AuthUISignIn.prototype,"challenge",2),ye([X()],A.AuthUISignIn.prototype,"recovery",2),ye([Dt("form input:not([type=hidden])")],A.AuthUISignIn.prototype,"firstInput",2),ye([X()],A.AuthUISignIn.prototype,"password",2),ye([X()],A.AuthUISignIn.prototype,"passwordConfirm",2),ye([X()],A.AuthUISignIn.prototype,"legalAccepted",2),A.AuthUISignIn=ye([Ye("authui-sign-in")],A.AuthUISignIn);var Vo=Object.defineProperty,Wo=Object.getOwnPropertyDescriptor,F=(n,e,i,t)=>{for(var o=t>1?void 0:t?Wo(e,i):e,a=n.length-1,r;a>=0;a--)(r=n[a])&&(o=(t?r(e,i,o):r(o))||o);return t&&o&&Vo(e,i,o),o};A.AuthUIAccount=class extends Ue{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(r=>r.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(`
|
|
1601
|
+
`)),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 b`<div class="alert alert-error" role="alert">
|
|
1531
1602
|
${_.alert}
|
|
1532
1603
|
<div class="alert-body">${this.t("errorNotConfigured")}</div>
|
|
1533
|
-
</div>`;if(this.auth.status==="loading")return
|
|
1604
|
+
</div>`;if(this.auth.status==="loading")return b`<div class="panel ${this.embedded?"embedded":""}" part="panel">
|
|
1534
1605
|
<div class="empty"><span class="spinner"></span></div>
|
|
1535
|
-
</div>`;if(!this.user)return
|
|
1606
|
+
</div>`;if(!this.user)return b`<div class="panel ${this.embedded?"embedded":""}">
|
|
1536
1607
|
<authui-sign-in embedded></authui-sign-in>
|
|
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
|
|
1608
|
+
</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 b`
|
|
1538
1609
|
<div class="panel ${this.embedded?"embedded":""}" part="panel">
|
|
1539
1610
|
${this.renderIdentity()}
|
|
1540
1611
|
<div class="tabs" role="tablist" @keydown=${this.onTabsKeydown}>
|
|
1541
|
-
${e.map(i=>
|
|
1612
|
+
${e.map(i=>b`<button
|
|
1542
1613
|
class="tab"
|
|
1543
1614
|
role="tab"
|
|
1544
1615
|
id=${`authui-tab-${i.id}`}
|
|
@@ -1550,7 +1621,7 @@ var AuthUI=(function(k){"use strict";var Ee;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
1550
1621
|
${i.label}
|
|
1551
1622
|
</button>`)}
|
|
1552
1623
|
</div>
|
|
1553
|
-
${this.notice?
|
|
1624
|
+
${this.notice?b`<div class="alert alert-${this.notice.tone}" role="status">
|
|
1554
1625
|
${this.notice.tone==="success"?_.checkCircle:_.info}
|
|
1555
1626
|
<div class="alert-body">${this.notice.message}</div>
|
|
1556
1627
|
<button
|
|
@@ -1560,8 +1631,8 @@ var AuthUI=(function(k){"use strict";var Ee;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
1560
1631
|
>
|
|
1561
1632
|
${_.x}
|
|
1562
1633
|
</button>
|
|
1563
|
-
</div>`:
|
|
1564
|
-
${this.stepUp?this.renderStepUp():
|
|
1634
|
+
</div>`:x}
|
|
1635
|
+
${this.stepUp?this.renderStepUp():b`<div
|
|
1565
1636
|
class="tabpanel"
|
|
1566
1637
|
role="tabpanel"
|
|
1567
1638
|
id=${`authui-panel-${this.active}`}
|
|
@@ -1570,34 +1641,34 @@ var AuthUI=(function(k){"use strict";var Ee;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
1570
1641
|
${this.renderTab()}
|
|
1571
1642
|
</div>`}
|
|
1572
1643
|
</div>
|
|
1573
|
-
`}renderIdentity(){const e=this.user,i=e.name||e.email||e.phone||this.t("guestAccount");return
|
|
1644
|
+
`}renderIdentity(){const e=this.user,i=e.name||e.email||e.phone||this.t("guestAccount");return b`
|
|
1574
1645
|
<div class="between">
|
|
1575
1646
|
<div class="identity">
|
|
1576
1647
|
<span class="avatar">${fi(i)}</span>
|
|
1577
1648
|
<div class="row-main">
|
|
1578
1649
|
<span class="row-title" title=${i}>
|
|
1579
1650
|
${i}
|
|
1580
|
-
${e.mfa?
|
|
1581
|
-
${E.isPreview?
|
|
1651
|
+
${e.mfa?b`<span class="badge badge-success">${_.shieldCheck} ${this.t("mfaBadge")}</span>`:x}
|
|
1652
|
+
${E.isPreview?b`<span class="badge badge-info">${this.t("preview")}</span>`:x}
|
|
1582
1653
|
</span>
|
|
1583
|
-
${e.email&&e.name?
|
|
1654
|
+
${e.email&&e.name?b`<span class="row-sub" title=${e.email}>${e.email}</span>`:x}
|
|
1584
1655
|
</div>
|
|
1585
1656
|
</div>
|
|
1586
1657
|
<button class="btn btn-outline btn-sm" @click=${()=>E.signOut()}>
|
|
1587
1658
|
${_.logOut} ${this.t("signOut")}
|
|
1588
1659
|
</button>
|
|
1589
1660
|
</div>
|
|
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?
|
|
1661
|
+
`}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?b`<div class="alert alert-error" role="alert">
|
|
1591
1662
|
${_.alert}
|
|
1592
1663
|
<div class="alert-body">${i}</div>
|
|
1593
|
-
</div>`:
|
|
1664
|
+
</div>`:x}spinner(e){return this.busy===e?b`<span class="spinner" aria-hidden="true"></span>`:x}card(e,i,t,o,a=!1){return b`<section class="card ${a?"card-danger":""}">
|
|
1594
1665
|
<div class="card-header">
|
|
1595
1666
|
<h3 class="card-title">${e}</h3>
|
|
1596
|
-
${i?
|
|
1667
|
+
${i?b`<p class="card-description">${i}</p>`:x}
|
|
1597
1668
|
</div>
|
|
1598
|
-
${t!==
|
|
1599
|
-
${o?
|
|
1600
|
-
</section>`}confirmFooter(e,i,t,o){return
|
|
1669
|
+
${t!==x?b`<div class="card-body">${t}</div>`:x}
|
|
1670
|
+
${o?b`<div class="card-footer">${o}</div>`:x}
|
|
1671
|
+
</section>`}confirmFooter(e,i,t,o){return b`
|
|
1601
1672
|
<button
|
|
1602
1673
|
type="button"
|
|
1603
1674
|
class="btn btn-outline btn-sm"
|
|
@@ -1613,14 +1684,14 @@ var AuthUI=(function(k){"use strict";var Ee;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
1613
1684
|
?disabled=${!!this.busy}
|
|
1614
1685
|
@click=${i}
|
|
1615
1686
|
>
|
|
1616
|
-
${o?this.spinner(o):
|
|
1687
|
+
${o?this.spinner(o):x} ${t}
|
|
1617
1688
|
</button>
|
|
1618
|
-
`}emptyState(e,i,t){return
|
|
1689
|
+
`}emptyState(e,i,t){return b`<div class="empty empty-well">
|
|
1619
1690
|
<div class="empty-icon" aria-hidden="true">${e}</div>
|
|
1620
1691
|
<p class="empty-title">${i}</p>
|
|
1621
1692
|
<p class="empty-desc">${t}</p>
|
|
1622
|
-
</div>`}verifiedBadge(e){return e?
|
|
1623
|
-
${this.card(this.t("guestAccount"),this.t("guestAccountDescription"),
|
|
1693
|
+
</div>`}verifiedBadge(e){return e?b`<span class="badge badge-success">${_.check} ${this.t("verified")}</span>`:b`<span class="badge badge-warning">${this.t("unverified")}</span>`}renderProfile(){const e=this.user;return this.isGuest?b`<div class="section">
|
|
1694
|
+
${this.card(this.t("guestAccount"),this.t("guestAccountDescription"),b`<form class="form" id="guest-form" @submit=${this.onConvertGuest} novalidate>
|
|
1624
1695
|
<div class="field">
|
|
1625
1696
|
<label class="label" for="guest-name">${this.t("name")}</label>
|
|
1626
1697
|
<input
|
|
@@ -1655,7 +1726,7 @@ var AuthUI=(function(k){"use strict";var Ee;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
1655
1726
|
@input=${this.bind("emailPassword")}
|
|
1656
1727
|
autocomplete="new-password"
|
|
1657
1728
|
/>
|
|
1658
|
-
${this.emailPassword?(()=>{const i=
|
|
1729
|
+
${this.emailPassword?(()=>{const i=Ct(this.emailPassword);return b`<div class="strength" aria-live="polite">
|
|
1659
1730
|
<div
|
|
1660
1731
|
class="strength-meter"
|
|
1661
1732
|
data-level=${String(i.level)}
|
|
@@ -1669,10 +1740,10 @@ var AuthUI=(function(k){"use strict";var Ee;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
1669
1740
|
<span></span><span></span><span></span><span></span>
|
|
1670
1741
|
</div>
|
|
1671
1742
|
<p class="strength-label">${this.t(i.labelKey)}</p>
|
|
1672
|
-
</div>`})():
|
|
1743
|
+
</div>`})():b`<p class="hint">${this.t("passwordHint")}</p>`}
|
|
1673
1744
|
</div>
|
|
1674
1745
|
${this.error("guest")}
|
|
1675
|
-
</form>`,
|
|
1746
|
+
</form>`,b`<button
|
|
1676
1747
|
class="btn btn-primary btn-sm"
|
|
1677
1748
|
type="submit"
|
|
1678
1749
|
form="guest-form"
|
|
@@ -1680,8 +1751,8 @@ var AuthUI=(function(k){"use strict";var Ee;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
1680
1751
|
>
|
|
1681
1752
|
${this.spinner("guest")} ${this.t("createAccount")}
|
|
1682
1753
|
</button>`)}
|
|
1683
|
-
</div>`:
|
|
1684
|
-
${this.card(this.t("name"),void 0,
|
|
1754
|
+
</div>`:b`<div class="section">
|
|
1755
|
+
${this.card(this.t("name"),void 0,b`<form class="form" id="name-form" @submit=${this.onUpdateName} novalidate>
|
|
1685
1756
|
<div class="field">
|
|
1686
1757
|
<label class="label" for="acc-name">${this.t("name")}</label>
|
|
1687
1758
|
<input
|
|
@@ -1694,7 +1765,7 @@ var AuthUI=(function(k){"use strict";var Ee;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
1694
1765
|
/>
|
|
1695
1766
|
</div>
|
|
1696
1767
|
${this.error("name")}
|
|
1697
|
-
</form>`,
|
|
1768
|
+
</form>`,b`<button
|
|
1698
1769
|
class="btn btn-primary btn-sm"
|
|
1699
1770
|
type="submit"
|
|
1700
1771
|
form="name-form"
|
|
@@ -1702,11 +1773,11 @@ var AuthUI=(function(k){"use strict";var Ee;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
1702
1773
|
>
|
|
1703
1774
|
${this.spinner("name")} ${this.t("update")}
|
|
1704
1775
|
</button>`)}
|
|
1705
|
-
${this.card(this.t("email"),void 0,
|
|
1776
|
+
${this.card(this.t("email"),void 0,b`<form class="form" id="email-form" @submit=${this.onUpdateEmail} novalidate>
|
|
1706
1777
|
<div class="field">
|
|
1707
1778
|
<label class="label" for="acc-email"
|
|
1708
1779
|
>${this.t("email")}
|
|
1709
|
-
${e.email?this.verifiedBadge(e.emailVerification):
|
|
1780
|
+
${e.email?this.verifiedBadge(e.emailVerification):x}</label
|
|
1710
1781
|
>
|
|
1711
1782
|
<input
|
|
1712
1783
|
class="input"
|
|
@@ -1718,7 +1789,7 @@ var AuthUI=(function(k){"use strict";var Ee;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
1718
1789
|
required
|
|
1719
1790
|
/>
|
|
1720
1791
|
</div>
|
|
1721
|
-
${this.emailInput!==e.email?
|
|
1792
|
+
${this.emailInput!==e.email?b`<div class="field">
|
|
1722
1793
|
<label class="label" for="acc-email-password"
|
|
1723
1794
|
>${e.passwordUpdate?this.t("currentPassword"):this.t("createPassword")}</label
|
|
1724
1795
|
>
|
|
@@ -1731,11 +1802,11 @@ var AuthUI=(function(k){"use strict";var Ee;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
1731
1802
|
autocomplete=${e.passwordUpdate?"current-password":"new-password"}
|
|
1732
1803
|
required
|
|
1733
1804
|
/>
|
|
1734
|
-
${e.passwordUpdate?
|
|
1735
|
-
</div>`:
|
|
1805
|
+
${e.passwordUpdate?x:b`<p class="hint">${this.t("createPasswordHint")}</p>`}
|
|
1806
|
+
</div>`:x}
|
|
1736
1807
|
${this.error("email")} ${this.error("verify")}
|
|
1737
|
-
</form>`,
|
|
1738
|
-
${e.email&&!e.emailVerification?
|
|
1808
|
+
</form>`,b`
|
|
1809
|
+
${e.email&&!e.emailVerification?b`<button
|
|
1739
1810
|
class="btn btn-outline btn-sm"
|
|
1740
1811
|
type="button"
|
|
1741
1812
|
@click=${this.onSendVerification}
|
|
@@ -1743,7 +1814,7 @@ var AuthUI=(function(k){"use strict";var Ee;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
1743
1814
|
>
|
|
1744
1815
|
${this.spinner("verify")}
|
|
1745
1816
|
${Date.now()<this.verifyEmailCooldownUntil?this.t("verificationResendIn",{seconds:Math.max(1,Math.ceil((this.verifyEmailCooldownUntil-Date.now())/1e3))}):this.t("verifyEmail")}
|
|
1746
|
-
</button>`:
|
|
1817
|
+
</button>`:x}
|
|
1747
1818
|
<button
|
|
1748
1819
|
class="btn btn-primary btn-sm"
|
|
1749
1820
|
type="submit"
|
|
@@ -1753,11 +1824,11 @@ var AuthUI=(function(k){"use strict";var Ee;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
1753
1824
|
${this.spinner("email")} ${this.t("update")}
|
|
1754
1825
|
</button>
|
|
1755
1826
|
`)}
|
|
1756
|
-
${this.card(this.t("phone"),void 0,
|
|
1827
|
+
${this.card(this.t("phone"),void 0,b`<form class="form" id="phone-form" @submit=${this.onUpdatePhone} novalidate>
|
|
1757
1828
|
<div class="field">
|
|
1758
1829
|
<label class="label" for="acc-phone"
|
|
1759
1830
|
>${this.t("phone")}
|
|
1760
|
-
${e.phone?this.verifiedBadge(e.phoneVerification):
|
|
1831
|
+
${e.phone?this.verifiedBadge(e.phoneVerification):x}</label
|
|
1761
1832
|
>
|
|
1762
1833
|
<input
|
|
1763
1834
|
class="input"
|
|
@@ -1769,7 +1840,7 @@ var AuthUI=(function(k){"use strict";var Ee;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
1769
1840
|
autocomplete="tel"
|
|
1770
1841
|
/>
|
|
1771
1842
|
</div>
|
|
1772
|
-
${this.phoneInput!==e.phone?
|
|
1843
|
+
${this.phoneInput!==e.phone?b`<div class="field">
|
|
1773
1844
|
<label class="label" for="acc-phone-password"
|
|
1774
1845
|
>${e.passwordUpdate?this.t("currentPassword"):this.t("createPassword")}</label
|
|
1775
1846
|
>
|
|
@@ -1782,9 +1853,9 @@ var AuthUI=(function(k){"use strict";var Ee;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
1782
1853
|
autocomplete=${e.passwordUpdate?"current-password":"new-password"}
|
|
1783
1854
|
required
|
|
1784
1855
|
/>
|
|
1785
|
-
${e.passwordUpdate?
|
|
1786
|
-
</div>`:
|
|
1787
|
-
${this.phoneCodeSent?
|
|
1856
|
+
${e.passwordUpdate?x:b`<p class="hint">${this.t("createPasswordHint")}</p>`}
|
|
1857
|
+
</div>`:x}
|
|
1858
|
+
${this.phoneCodeSent?b`<div class="field">
|
|
1788
1859
|
<label class="label" for="acc-phone-code">${this.t("code")}</label>
|
|
1789
1860
|
<input
|
|
1790
1861
|
class="input input-otp"
|
|
@@ -1798,25 +1869,25 @@ var AuthUI=(function(k){"use strict";var Ee;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
1798
1869
|
@input=${this.bind("phoneCode")}
|
|
1799
1870
|
@keydown=${i=>{i.key==="Enter"&&(i.preventDefault(),this.onConfirmPhoneVerification(i))}}
|
|
1800
1871
|
/>
|
|
1801
|
-
</div>`:
|
|
1872
|
+
</div>`:x}
|
|
1802
1873
|
${this.error("phone")} ${this.error("verify-phone")} ${this.error("verify-phone-code")}
|
|
1803
|
-
</form>`,
|
|
1804
|
-
${e.phone&&!e.phoneVerification&&!this.phoneCodeSent?
|
|
1874
|
+
</form>`,b`
|
|
1875
|
+
${e.phone&&!e.phoneVerification&&!this.phoneCodeSent?b`<button
|
|
1805
1876
|
class="btn btn-outline btn-sm"
|
|
1806
1877
|
type="button"
|
|
1807
1878
|
@click=${this.onSendPhoneVerification}
|
|
1808
1879
|
?disabled=${!!this.busy}
|
|
1809
1880
|
>
|
|
1810
1881
|
${this.spinner("verify-phone")} ${this.t("sendCode")}
|
|
1811
|
-
</button>`:
|
|
1812
|
-
${this.phoneCodeSent?
|
|
1882
|
+
</button>`:x}
|
|
1883
|
+
${this.phoneCodeSent?b`<button
|
|
1813
1884
|
class="btn btn-outline btn-sm"
|
|
1814
1885
|
type="button"
|
|
1815
1886
|
@click=${this.onConfirmPhoneVerification}
|
|
1816
1887
|
?disabled=${!!this.busy}
|
|
1817
1888
|
>
|
|
1818
1889
|
${this.spinner("verify-phone-code")} ${this.t("verifyCode")}
|
|
1819
|
-
</button>`:
|
|
1890
|
+
</button>`:x}
|
|
1820
1891
|
<button
|
|
1821
1892
|
class="btn btn-primary btn-sm"
|
|
1822
1893
|
type="submit"
|
|
@@ -1827,17 +1898,17 @@ var AuthUI=(function(k){"use strict";var Ee;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
1827
1898
|
</button>
|
|
1828
1899
|
`)}
|
|
1829
1900
|
${this.renderDanger()}
|
|
1830
|
-
</div>`}renderDanger(){return this.card(this.t("deleteAccount"),this.t("deleteAccountDescription"),this.confirmDelete?this.error("delete"):
|
|
1901
|
+
</div>`}renderDanger(){return this.card(this.t("deleteAccount"),this.t("deleteAccountDescription"),this.confirmDelete?this.error("delete"):b`${this.error("delete")}
|
|
1831
1902
|
<button class="btn btn-outline btn-sm warn" @click=${()=>this.confirmDelete=!0}>
|
|
1832
1903
|
${_.userX} ${this.t("deleteAccount")}
|
|
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
|
|
1834
|
-
${this.isGuest?
|
|
1904
|
+
</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 b`<div class="section">
|
|
1905
|
+
${this.isGuest?x:this.card(this.t("changePassword"),void 0,b`<form
|
|
1835
1906
|
class="form"
|
|
1836
1907
|
id="password-form"
|
|
1837
1908
|
@submit=${this.onChangePassword}
|
|
1838
1909
|
novalidate
|
|
1839
1910
|
>
|
|
1840
|
-
${e.passwordUpdate?
|
|
1911
|
+
${e.passwordUpdate?b`<div class="field">
|
|
1841
1912
|
<label class="label" for="acc-old-password"
|
|
1842
1913
|
>${this.t("currentPassword")}</label
|
|
1843
1914
|
>
|
|
@@ -1850,7 +1921,7 @@ var AuthUI=(function(k){"use strict";var Ee;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
1850
1921
|
autocomplete="current-password"
|
|
1851
1922
|
required
|
|
1852
1923
|
/>
|
|
1853
|
-
</div>`:
|
|
1924
|
+
</div>`:x}
|
|
1854
1925
|
<div class="field">
|
|
1855
1926
|
<label class="label" for="acc-new-password">${this.t("newPassword")}</label>
|
|
1856
1927
|
<input
|
|
@@ -1863,7 +1934,7 @@ var AuthUI=(function(k){"use strict";var Ee;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
1863
1934
|
@input=${this.bind("newPassword")}
|
|
1864
1935
|
autocomplete="new-password"
|
|
1865
1936
|
/>
|
|
1866
|
-
${this.newPassword?(()=>{const t=
|
|
1937
|
+
${this.newPassword?(()=>{const t=Ct(this.newPassword);return b`<div class="strength" aria-live="polite">
|
|
1867
1938
|
<div
|
|
1868
1939
|
class="strength-meter"
|
|
1869
1940
|
data-level=${String(t.level)}
|
|
@@ -1877,7 +1948,7 @@ var AuthUI=(function(k){"use strict";var Ee;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
1877
1948
|
<span></span><span></span><span></span><span></span>
|
|
1878
1949
|
</div>
|
|
1879
1950
|
<p class="strength-label">${this.t(t.labelKey)}</p>
|
|
1880
|
-
</div>`})():
|
|
1951
|
+
</div>`})():b`<p class="hint">${this.t("passwordHint")}</p>`}
|
|
1881
1952
|
</div>
|
|
1882
1953
|
<div class="field">
|
|
1883
1954
|
<label class="label" for="acc-new-password-confirm"
|
|
@@ -1895,7 +1966,7 @@ var AuthUI=(function(k){"use strict";var Ee;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
1895
1966
|
/>
|
|
1896
1967
|
</div>
|
|
1897
1968
|
${this.error("password")}
|
|
1898
|
-
</form>`,
|
|
1969
|
+
</form>`,b`<button
|
|
1899
1970
|
class="btn btn-primary btn-sm"
|
|
1900
1971
|
type="submit"
|
|
1901
1972
|
form="password-form"
|
|
@@ -1903,9 +1974,9 @@ var AuthUI=(function(k){"use strict";var Ee;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
1903
1974
|
>
|
|
1904
1975
|
${this.spinner("password")} ${this.t("update")}
|
|
1905
1976
|
</button>`)}
|
|
1906
|
-
${i?this.renderMfaCard():
|
|
1907
|
-
${i?this.renderRecoveryCard():
|
|
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"),
|
|
1977
|
+
${i?this.renderMfaCard():x}
|
|
1978
|
+
${i?this.renderRecoveryCard():x}
|
|
1979
|
+
</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"),b`<div class="kv">
|
|
1909
1980
|
<div class="toggle-row">
|
|
1910
1981
|
<div class="row-main">
|
|
1911
1982
|
<span class="row-title">${this.t("twoFactor")}</span>
|
|
@@ -1920,11 +1991,11 @@ var AuthUI=(function(k){"use strict";var Ee;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
1920
1991
|
aria-label=${this.t("twoFactor")}
|
|
1921
1992
|
></button>
|
|
1922
1993
|
</div>
|
|
1923
|
-
${e.mfa&&!(this.factors?.totp||e.emailVerification||e.phoneVerification)?
|
|
1994
|
+
${e.mfa&&!(this.factors?.totp||e.emailVerification||e.phoneVerification)?b`<div class="alert alert-warning" role="status">
|
|
1924
1995
|
${_.alert}
|
|
1925
1996
|
<div class="alert-body">
|
|
1926
1997
|
${this.t("mfaNoFactorWarning")}
|
|
1927
|
-
${this.factors?.totp?
|
|
1998
|
+
${this.factors?.totp?x:b`<div class="links">
|
|
1928
1999
|
<button
|
|
1929
2000
|
type="button"
|
|
1930
2001
|
class="btn btn-link"
|
|
@@ -1935,17 +2006,17 @@ var AuthUI=(function(k){"use strict";var Ee;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
1935
2006
|
</button>
|
|
1936
2007
|
</div>`}
|
|
1937
2008
|
</div>
|
|
1938
|
-
</div>`:
|
|
2009
|
+
</div>`:x}
|
|
1939
2010
|
${this.error("mfa")}
|
|
1940
2011
|
<div class="separator"></div>
|
|
1941
2012
|
<div class="toggle-row">
|
|
1942
2013
|
<div class="row-main">
|
|
1943
2014
|
<span class="row-title"
|
|
1944
2015
|
>${_.smartphone} ${this.t("authenticatorApp")}
|
|
1945
|
-
${i?this.verifiedBadge(!0):
|
|
2016
|
+
${i?this.verifiedBadge(!0):x}</span
|
|
1946
2017
|
>
|
|
1947
2018
|
</div>
|
|
1948
|
-
${i?this.confirmRemoveAuthenticator?
|
|
2019
|
+
${i?this.confirmRemoveAuthenticator?b`<div class="inline">
|
|
1949
2020
|
<button
|
|
1950
2021
|
class="btn btn-outline btn-sm warn"
|
|
1951
2022
|
@click=${this.onRemoveAuthenticator}
|
|
@@ -1959,13 +2030,13 @@ var AuthUI=(function(k){"use strict";var Ee;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
1959
2030
|
>
|
|
1960
2031
|
${this.t("cancel")}
|
|
1961
2032
|
</button>
|
|
1962
|
-
</div>`:
|
|
2033
|
+
</div>`:b`<button
|
|
1963
2034
|
class="btn btn-outline btn-sm"
|
|
1964
2035
|
@click=${this.onRemoveAuthenticator}
|
|
1965
2036
|
?disabled=${!!this.busy}
|
|
1966
2037
|
>
|
|
1967
2038
|
${this.spinner("remove-authenticator")} ${this.t("remove")}
|
|
1968
|
-
</button>`:this.authenticator?
|
|
2039
|
+
</button>`:this.authenticator?x:b`<button
|
|
1969
2040
|
class="btn btn-outline btn-sm"
|
|
1970
2041
|
@click=${this.onAddAuthenticator}
|
|
1971
2042
|
?disabled=${!!this.busy}
|
|
@@ -1974,7 +2045,7 @@ var AuthUI=(function(k){"use strict";var Ee;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
1974
2045
|
</button>`}
|
|
1975
2046
|
</div>
|
|
1976
2047
|
${this.error("authenticator")} ${this.error("remove-authenticator")}
|
|
1977
|
-
${this.authenticator?
|
|
2048
|
+
${this.authenticator?b`<form class="form" @submit=${this.onVerifyAuthenticator} novalidate>
|
|
1978
2049
|
<p class="hint">${this.t("authenticatorScan")}</p>
|
|
1979
2050
|
<img class="qr" src=${t} alt=${this.t("qrCodeAlt")} />
|
|
1980
2051
|
<p class="hint center">${this.t("authenticatorManual")}</p>
|
|
@@ -2018,14 +2089,14 @@ var AuthUI=(function(k){"use strict";var Ee;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
2018
2089
|
${this.t("cancel")}
|
|
2019
2090
|
</button>
|
|
2020
2091
|
</div>
|
|
2021
|
-
</form>`:
|
|
2022
|
-
</div>`)}renderRecoveryCard(){const e=this.factors?.recoveryCode??!1;return this.card(this.t("recoveryCodes"),this.t("recoveryCodesDescription")+" "+this.t("recoveryCodesOnceHint"),
|
|
2023
|
-
${this.recoveryCodes?
|
|
2092
|
+
</form>`:x}
|
|
2093
|
+
</div>`)}renderRecoveryCard(){const e=this.factors?.recoveryCode??!1;return this.card(this.t("recoveryCodes"),this.t("recoveryCodesDescription")+" "+this.t("recoveryCodesOnceHint"),b`<div class="kv">
|
|
2094
|
+
${this.recoveryCodes?b`<div class="alert alert-warning">
|
|
2024
2095
|
${_.alert}
|
|
2025
2096
|
<div class="alert-body">${this.t("recoveryCodesWarning")}</div>
|
|
2026
2097
|
</div>
|
|
2027
2098
|
<div class="codes">
|
|
2028
|
-
${this.recoveryCodes.map(i=>
|
|
2099
|
+
${this.recoveryCodes.map(i=>b`<span class="code">${i}</span>`)}
|
|
2029
2100
|
</div>
|
|
2030
2101
|
<div class="inline">
|
|
2031
2102
|
<button class="btn btn-outline btn-sm" @click=${this.onCopyCodes}>
|
|
@@ -2035,7 +2106,7 @@ var AuthUI=(function(k){"use strict";var Ee;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
2035
2106
|
<button class="btn btn-ghost btn-sm" @click=${()=>this.recoveryCodes=null}>
|
|
2036
2107
|
${this.t("done")}
|
|
2037
2108
|
</button>
|
|
2038
|
-
</div>`:
|
|
2109
|
+
</div>`:b`<div class="inline">
|
|
2039
2110
|
<button
|
|
2040
2111
|
class="btn btn-outline btn-sm"
|
|
2041
2112
|
@click=${this.onRecoveryCodes}
|
|
@@ -2044,7 +2115,7 @@ var AuthUI=(function(k){"use strict";var Ee;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
2044
2115
|
${this.spinner("recovery")} ${_.key}
|
|
2045
2116
|
${e?this.t("viewRecoveryCodes"):this.t("generateRecoveryCodes")}
|
|
2046
2117
|
</button>
|
|
2047
|
-
${e?this.confirmRegenerate?
|
|
2118
|
+
${e?this.confirmRegenerate?b`<div class="inline">
|
|
2048
2119
|
<button
|
|
2049
2120
|
class="btn btn-outline btn-sm warn"
|
|
2050
2121
|
@click=${this.onRegenerateRecoveryCodes}
|
|
@@ -2058,17 +2129,17 @@ var AuthUI=(function(k){"use strict";var Ee;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
2058
2129
|
>
|
|
2059
2130
|
${this.t("cancel")}
|
|
2060
2131
|
</button>
|
|
2061
|
-
</div>`:
|
|
2132
|
+
</div>`:b`<button
|
|
2062
2133
|
class="btn btn-ghost btn-sm"
|
|
2063
2134
|
@click=${this.onRegenerateRecoveryCodes}
|
|
2064
2135
|
?disabled=${!!this.busy}
|
|
2065
2136
|
>
|
|
2066
2137
|
${_.refresh} ${this.t("regenerateRecoveryCodes")}
|
|
2067
|
-
</button>`:
|
|
2138
|
+
</button>`:x}
|
|
2068
2139
|
</div>`}
|
|
2069
2140
|
${this.error("recovery")}
|
|
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"),
|
|
2071
|
-
${e.challenge?
|
|
2141
|
+
</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"),b`<div class="kv">
|
|
2142
|
+
${e.challenge?b`<form class="form" @submit=${this.onStepUpVerify} novalidate>
|
|
2072
2143
|
<div class="field">
|
|
2073
2144
|
<label class="label" for="acc-stepup"
|
|
2074
2145
|
>${e.challenge.factor==="recoverycode"?this.t("recoveryCode"):this.t("code")}</label
|
|
@@ -2088,8 +2159,8 @@ var AuthUI=(function(k){"use strict";var Ee;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
2088
2159
|
<button class="btn btn-primary btn-sm" type="submit" ?disabled=${!!this.busy}>
|
|
2089
2160
|
${this.spinner("stepup-code")} ${this.t("verifyCode")}
|
|
2090
2161
|
</button>
|
|
2091
|
-
</form>`:
|
|
2092
|
-
${t.filter(o=>o.available).map(o=>
|
|
2162
|
+
</form>`:b`<div class="stack-sm">
|
|
2163
|
+
${t.filter(o=>o.available).map(o=>b`<button
|
|
2093
2164
|
type="button"
|
|
2094
2165
|
class="choice"
|
|
2095
2166
|
@click=${()=>this.onStepUpFactor(o.factor)}
|
|
@@ -2099,18 +2170,18 @@ var AuthUI=(function(k){"use strict";var Ee;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
2099
2170
|
</button>`)}
|
|
2100
2171
|
</div>`}
|
|
2101
2172
|
${this.error("stepup")} ${this.error("stepup-code")}
|
|
2102
|
-
</div>`,
|
|
2173
|
+
</div>`,b`<button class="btn btn-ghost btn-sm" @click=${()=>this.stepUp=null}>
|
|
2103
2174
|
${this.t("cancel")}
|
|
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
|
|
2105
|
-
${this.card(this.t("sessions"),void 0,
|
|
2106
|
-
${e===null?
|
|
2175
|
+
</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 b`<div class="section">
|
|
2176
|
+
${this.card(this.t("sessions"),void 0,b`${this.error("sessions")}
|
|
2177
|
+
${e===null?b`<div class="empty"><span class="spinner"></span></div>`:e.length===0?this.emptyState(_.monitor,this.t("noSessions"),this.t("noSessionsDescription")):e.map(i=>b`<div class="row">
|
|
2107
2178
|
<div class="inline">
|
|
2108
2179
|
<span class="device">${this.deviceIcon(i)}</span>
|
|
2109
2180
|
<div class="row-main">
|
|
2110
2181
|
<span class="row-title">
|
|
2111
2182
|
${i.clientName||i.provider}
|
|
2112
|
-
${i.clientVersion?
|
|
2113
|
-
${i.current?
|
|
2183
|
+
${i.clientVersion?b`<span class="muted small">${i.clientVersion}</span>`:x}
|
|
2184
|
+
${i.current?b`<span class="badge badge-info">${this.t("currentSession")}</span>`:x}
|
|
2114
2185
|
</span>
|
|
2115
2186
|
<span class="row-sub"
|
|
2116
2187
|
>${[i.osName,i.countryName||i.countryCode,i.ip].filter(Boolean).join(" · ")}</span
|
|
@@ -2118,7 +2189,7 @@ var AuthUI=(function(k){"use strict";var Ee;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
2118
2189
|
</div>
|
|
2119
2190
|
</div>
|
|
2120
2191
|
<div class="row-actions">
|
|
2121
|
-
${this.busy===`session-${i.$id}`?
|
|
2192
|
+
${this.busy===`session-${i.$id}`?b`<span class="spinner"></span>`:x}
|
|
2122
2193
|
<button
|
|
2123
2194
|
class="btn btn-ghost btn-sm"
|
|
2124
2195
|
@click=${()=>this.onDeleteSession(i.$id)}
|
|
@@ -2129,7 +2200,7 @@ var AuthUI=(function(k){"use strict";var Ee;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
2129
2200
|
</button>
|
|
2130
2201
|
</div>
|
|
2131
2202
|
</div>`)}`)}
|
|
2132
|
-
${this.card(this.t("signOutAllSessions"),this.t("signOutAllSessionsDescription"),this.confirmSignOutAll?this.error("sessions-all"):
|
|
2203
|
+
${this.card(this.t("signOutAllSessions"),this.t("signOutAllSessionsDescription"),this.confirmSignOutAll?this.error("sessions-all"):b`${this.error("sessions-all")}
|
|
2133
2204
|
<button
|
|
2134
2205
|
class="btn btn-outline btn-sm warn"
|
|
2135
2206
|
@click=${this.onSignOutAll}
|
|
@@ -2137,18 +2208,18 @@ var AuthUI=(function(k){"use strict";var Ee;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
2137
2208
|
>
|
|
2138
2209
|
${this.spinner("sessions-all")} ${_.logOut} ${this.t("signOutAllSessions")}
|
|
2139
2210
|
</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
|
|
2141
|
-
${this.card(this.t("connections"),void 0,
|
|
2142
|
-
${e===null?
|
|
2211
|
+
</div>`}renderConnections(){const e=this.identities,i=this.config?.methods?.oauth??[];return b`<div class="section">
|
|
2212
|
+
${this.card(this.t("connections"),void 0,b`${this.error("identities")}
|
|
2213
|
+
${e===null?b`<div class="empty"><span class="spinner"></span></div>`:e.length===0?this.emptyState(_.link,this.t("noConnections"),this.t("noConnectionsDescription")):e.map(t=>b`<div class="row">
|
|
2143
2214
|
<div class="inline">
|
|
2144
|
-
<span class="device">${
|
|
2215
|
+
<span class="device">${ht(t.provider)}</span>
|
|
2145
2216
|
<div class="row-main">
|
|
2146
|
-
<span class="row-title">${
|
|
2217
|
+
<span class="row-title">${et(t.provider)}</span>
|
|
2147
2218
|
<span class="row-sub">${t.providerEmail||t.providerUid}</span>
|
|
2148
2219
|
</div>
|
|
2149
2220
|
</div>
|
|
2150
2221
|
<div class="row-actions">
|
|
2151
|
-
${this.confirmDisconnectId===t.$id?
|
|
2222
|
+
${this.confirmDisconnectId===t.$id?b`<div class="inline">
|
|
2152
2223
|
<button
|
|
2153
2224
|
type="button"
|
|
2154
2225
|
class="btn btn-outline btn-sm"
|
|
@@ -2164,28 +2235,28 @@ var AuthUI=(function(k){"use strict";var Ee;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
2164
2235
|
@click=${()=>this.onDeleteIdentity(t.$id)}
|
|
2165
2236
|
?disabled=${!!this.busy}
|
|
2166
2237
|
>
|
|
2167
|
-
${this.busy===`identity-${t.$id}`?
|
|
2238
|
+
${this.busy===`identity-${t.$id}`?b`<span class="spinner"></span>`:x}
|
|
2168
2239
|
${this.t("disconnect")}
|
|
2169
2240
|
</button>
|
|
2170
|
-
</div>`:
|
|
2241
|
+
</div>`:b`<button
|
|
2171
2242
|
class="btn btn-ghost btn-sm"
|
|
2172
2243
|
@click=${()=>this.onDeleteIdentity(t.$id)}
|
|
2173
2244
|
?disabled=${!!this.busy}
|
|
2174
2245
|
>
|
|
2175
|
-
${this.busy===`identity-${t.$id}`?
|
|
2246
|
+
${this.busy===`identity-${t.$id}`?b`<span class="spinner"></span>`:x}
|
|
2176
2247
|
${this.t("disconnect")}
|
|
2177
2248
|
</button>`}
|
|
2178
2249
|
</div>
|
|
2179
|
-
</div>`)}`,i.length>0?
|
|
2250
|
+
</div>`)}`,i.length>0?b`${i.filter(t=>!(e??[]).some(o=>o.provider===t)).map(t=>b`<button
|
|
2180
2251
|
class="btn btn-outline btn-sm"
|
|
2181
2252
|
@click=${()=>{this.run(`connect-${t}`,()=>E.signInWithOAuth(t))}}
|
|
2182
2253
|
?disabled=${!!this.busy}
|
|
2183
2254
|
>
|
|
2184
|
-
${this.spinner(`connect-${t}`)} ${
|
|
2185
|
-
${this.t("connectProvider",{provider:
|
|
2255
|
+
${this.spinner(`connect-${t}`)} ${ht(t)}
|
|
2256
|
+
${this.t("connectProvider",{provider:et(t)})}
|
|
2186
2257
|
</button>`)}`:void 0)}
|
|
2187
|
-
</div>`}renderActivity(){const e=this.logs;return
|
|
2188
|
-
${this.card(this.t("activity"),void 0,
|
|
2258
|
+
</div>`}renderActivity(){const e=this.logs;return b`<div class="section">
|
|
2259
|
+
${this.card(this.t("activity"),void 0,b`${e===null?b`<div class="empty"><span class="spinner"></span></div>`:e.length===0?this.emptyState(_.activity,this.t("noActivity"),this.t("noActivityDescription")):e.map(i=>b`<div class="row">
|
|
2189
2260
|
<div class="row-main">
|
|
2190
2261
|
<span class="row-title">${i.event}</span>
|
|
2191
2262
|
<span class="row-sub"
|
|
@@ -2194,7 +2265,7 @@ var AuthUI=(function(k){"use strict";var Ee;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
2194
2265
|
</div>
|
|
2195
2266
|
<span class="log-time">${new Date(i.time).toLocaleString()}</span>
|
|
2196
2267
|
</div>`)}`)}
|
|
2197
|
-
</div>`}},
|
|
2268
|
+
</div>`}},A.AuthUIAccount.styles=[...Ue.styles,Ne`
|
|
2198
2269
|
:host {
|
|
2199
2270
|
display: block;
|
|
2200
2271
|
width: 100%;
|
|
@@ -2288,7 +2359,7 @@ var AuthUI=(function(k){"use strict";var Ee;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
2288
2359
|
.warn {
|
|
2289
2360
|
color: var(--authui-destructive-foreground);
|
|
2290
2361
|
}
|
|
2291
|
-
`],
|
|
2362
|
+
`],F([O({type:Boolean})],A.AuthUIAccount.prototype,"embedded",2),F([O({type:String})],A.AuthUIAccount.prototype,"tab",2),F([X()],A.AuthUIAccount.prototype,"active",2),F([X()],A.AuthUIAccount.prototype,"busy",2),F([X()],A.AuthUIAccount.prototype,"notice",2),F([X()],A.AuthUIAccount.prototype,"errors",2),F([X()],A.AuthUIAccount.prototype,"nameInput",2),F([X()],A.AuthUIAccount.prototype,"emailInput",2),F([X()],A.AuthUIAccount.prototype,"emailPassword",2),F([X()],A.AuthUIAccount.prototype,"phoneInput",2),F([X()],A.AuthUIAccount.prototype,"phonePassword",2),F([X()],A.AuthUIAccount.prototype,"phoneCode",2),F([X()],A.AuthUIAccount.prototype,"phoneCodeSent",2),F([X()],A.AuthUIAccount.prototype,"guestName",2),F([X()],A.AuthUIAccount.prototype,"oldPassword",2),F([X()],A.AuthUIAccount.prototype,"newPassword",2),F([X()],A.AuthUIAccount.prototype,"newPasswordConfirm",2),F([X()],A.AuthUIAccount.prototype,"authenticator",2),F([X()],A.AuthUIAccount.prototype,"authenticatorCode",2),F([X()],A.AuthUIAccount.prototype,"factors",2),F([X()],A.AuthUIAccount.prototype,"recoveryCodes",2),F([X()],A.AuthUIAccount.prototype,"stepUp",2),F([X()],A.AuthUIAccount.prototype,"stepUpCode",2),F([X()],A.AuthUIAccount.prototype,"copied",2),F([X()],A.AuthUIAccount.prototype,"sessions",2),F([X()],A.AuthUIAccount.prototype,"identities",2),F([X()],A.AuthUIAccount.prototype,"logs",2),F([X()],A.AuthUIAccount.prototype,"logsSupported",2),F([X()],A.AuthUIAccount.prototype,"confirmDelete",2),F([X()],A.AuthUIAccount.prototype,"confirmRegenerate",2),F([X()],A.AuthUIAccount.prototype,"confirmRemoveAuthenticator",2),F([X()],A.AuthUIAccount.prototype,"confirmSignOutAll",2),F([X()],A.AuthUIAccount.prototype,"confirmDisconnectId",2),F([X()],A.AuthUIAccount.prototype,"verifyEmailCooldownUntil",2),A.AuthUIAccount=F([Ye("authui-account")],A.AuthUIAccount);var Go=Object.defineProperty,Ko=Object.getOwnPropertyDescriptor,Be=(n,e,i,t)=>{for(var o=t>1?void 0:t?Ko(e,i):e,a=n.length-1,r;a>=0;a--)(r=n[a])&&(o=(t?r(e,i,o):r(o))||o);return t&&o&&Go(e,i,o),o};A.AuthUIModal=class extends Ue{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 b`
|
|
2292
2363
|
<dialog
|
|
2293
2364
|
class=${i?"wide":""}
|
|
2294
2365
|
aria-label=${i?this.t("dialogAccount"):this.t("dialogSignIn")}
|
|
@@ -2309,15 +2380,15 @@ var AuthUI=(function(k){"use strict";var Ee;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
2309
2380
|
</button>
|
|
2310
2381
|
</div>
|
|
2311
2382
|
<div class="body" @scroll=${this.syncScrollCue}>
|
|
2312
|
-
${this.open?i?
|
|
2383
|
+
${this.open?i?b`<authui-account embedded></authui-account>`:b`<authui-sign-in
|
|
2313
2384
|
embedded
|
|
2314
2385
|
.view=${this.view==="account"?"sign-in":this.view}
|
|
2315
|
-
></authui-sign-in>`:
|
|
2386
|
+
></authui-sign-in>`:x}
|
|
2316
2387
|
</div>
|
|
2317
2388
|
<div class="scroll-fade ${this.scrollCue?"show":""}" aria-hidden="true"></div>
|
|
2318
2389
|
</div>
|
|
2319
2390
|
</dialog>
|
|
2320
|
-
`}},
|
|
2391
|
+
`}},A.AuthUIModal.styles=[...Ue.styles,Ne`
|
|
2321
2392
|
:host {
|
|
2322
2393
|
display: contents;
|
|
2323
2394
|
}
|
|
@@ -2403,24 +2474,24 @@ var AuthUI=(function(k){"use strict";var Ee;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
2403
2474
|
authui-account {
|
|
2404
2475
|
max-width: none;
|
|
2405
2476
|
}
|
|
2406
|
-
`],
|
|
2477
|
+
`],Be([O({type:Boolean,reflect:!0})],A.AuthUIModal.prototype,"open",2),Be([O({type:String})],A.AuthUIModal.prototype,"view",2),Be([O({attribute:"close-on-success",reflect:!0,converter:{fromAttribute(n){if(n===null)return!0;const e=n.trim().toLowerCase();return!(e==="false"||e==="0"||e==="off"||e==="no")},toAttribute(n){return n?null:"false"}}})],A.AuthUIModal.prototype,"closeOnSuccess",2),Be([X()],A.AuthUIModal.prototype,"handledPending",2),Be([X()],A.AuthUIModal.prototype,"scrollCue",2),Be([Dt("dialog")],A.AuthUIModal.prototype,"dialog",2),Be([Dt(".body")],A.AuthUIModal.prototype,"bodyEl",2),A.AuthUIModal=Be([Ye("authui-modal")],A.AuthUIModal);var Yo=Object.defineProperty,Jo=Object.getOwnPropertyDescriptor,xt=(n,e,i,t)=>{for(var o=t>1?void 0:t?Jo(e,i):e,a=n.length-1,r;a>=0;a--)(r=n[a])&&(o=(t?r(e,i,o):r(o))||o);return t&&o&&Yo(e,i,o),o};A.AuthUIButton=class extends Ue{constructor(){super(...arguments),this.view="sign-in",this.variant="primary",this.size="md"}render(){const e=this.size==="md"?"":`btn-${this.size}`;return b`<button
|
|
2407
2478
|
class="btn btn-${this.variant} ${e}"
|
|
2408
|
-
@click=${()=>
|
|
2479
|
+
@click=${()=>nt(this.view)}
|
|
2409
2480
|
part="button"
|
|
2410
2481
|
>
|
|
2411
2482
|
<slot
|
|
2412
2483
|
>${this.view==="sign-up"?this.t("signUp"):this.view==="account"?this.t("manageAccount"):this.t("signIn")}</slot
|
|
2413
2484
|
>
|
|
2414
|
-
</button>`}},
|
|
2485
|
+
</button>`}},A.AuthUIButton.styles=[...Ue.styles,Ne`
|
|
2415
2486
|
:host {
|
|
2416
2487
|
display: inline-block;
|
|
2417
2488
|
}
|
|
2418
2489
|
.btn {
|
|
2419
2490
|
width: 100%;
|
|
2420
2491
|
}
|
|
2421
|
-
`],
|
|
2492
|
+
`],xt([O({type:String})],A.AuthUIButton.prototype,"view",2),xt([O({type:String})],A.AuthUIButton.prototype,"variant",2),xt([O({type:String})],A.AuthUIButton.prototype,"size",2),A.AuthUIButton=xt([Ye("authui-button")],A.AuthUIButton);var Zo=Object.defineProperty,Qo=Object.getOwnPropertyDescriptor,Ee=(n,e,i,t)=>{for(var o=t>1?void 0:t?Qo(e,i):e,a=n.length-1,r;a>=0;a--)(r=n[a])&&(o=(t?r(e,i,o):r(o))||o);return t&&o&&Zo(e,i,o),o};A.AuthUIUserButton=class extends Ue{constructor(){super(...arguments),this.showTeams=!1,this.menuItems=[],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 r=i.offsetHeight+o,s=window.innerHeight-t.bottom,d=t.top,c=s<r&&d>s;c!==this.menuAbove&&(this.menuAbove=c);const p=Math.max(80,(c?d:s)-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 b`<span class="avatar"><span class="spinner"></span></span>`;if(e!=="signed-in"||!i)return b`<button class="btn btn-primary btn-sm" @click=${()=>nt("sign-in")}>
|
|
2422
2493
|
<slot>${this.t("signIn")}</slot>
|
|
2423
|
-
</button>`;const o=i.name||i.email||i.phone||this.t("guestAccount");return
|
|
2494
|
+
</button>`;const o=i.name||i.email||i.phone||this.t("guestAccount");return b`
|
|
2424
2495
|
<button
|
|
2425
2496
|
class="trigger"
|
|
2426
2497
|
aria-haspopup="menu"
|
|
@@ -2429,19 +2500,19 @@ var AuthUI=(function(k){"use strict";var Ee;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
2429
2500
|
aria-label=${o}
|
|
2430
2501
|
>
|
|
2431
2502
|
<span class="avatar"
|
|
2432
|
-
>${this.src?
|
|
2503
|
+
>${this.src?b`<img src=${this.src} alt="" />`:fi(o)}</span
|
|
2433
2504
|
>
|
|
2434
2505
|
</button>
|
|
2435
|
-
${this.menuOpen?
|
|
2506
|
+
${this.menuOpen?b`<div class="menu ${this.menuAbove?"above":""}" role="menu">
|
|
2436
2507
|
<div class="menu-header">
|
|
2437
2508
|
<span class="row-title" title=${o}>${o}</span>
|
|
2438
|
-
${i.email&&i.name?
|
|
2509
|
+
${i.email&&i.name?b`<span class="row-sub" title=${i.email}>${i.email}</span>`:x}
|
|
2439
2510
|
</div>
|
|
2440
|
-
${this.showTeams?
|
|
2511
|
+
${this.showTeams?b`<div class="menu-section">
|
|
2441
2512
|
<div class="menu-section-label">${this.t("teamsLabel")}</div>
|
|
2442
|
-
${this.teamsLoading?
|
|
2513
|
+
${this.teamsLoading?b`<div class="menu-item" aria-busy="true">
|
|
2443
2514
|
<span class="spinner"></span>
|
|
2444
|
-
</div>`:this.teams.length===0?
|
|
2515
|
+
</div>`:this.teams.length===0?b`<div class="menu-item" role="note">${this.t("noTeams")}</div>`:this.teams.map(a=>b`<button
|
|
2445
2516
|
class="menu-item ${a.$id===this.activeTeamId?"active":""}"
|
|
2446
2517
|
role="menuitemradio"
|
|
2447
2518
|
aria-checked=${a.$id===this.activeTeamId?"true":"false"}
|
|
@@ -2449,13 +2520,15 @@ var AuthUI=(function(k){"use strict";var Ee;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
2449
2520
|
>
|
|
2450
2521
|
${_.users}
|
|
2451
2522
|
<span title=${a.name}>${a.name}</span>
|
|
2452
|
-
${a.$id===this.activeTeamId?
|
|
2523
|
+
${a.$id===this.activeTeamId?b`<span class="check">${_.check}</span>`:x}
|
|
2453
2524
|
</button>`)}
|
|
2454
|
-
</div>`:
|
|
2525
|
+
</div>`:x}
|
|
2526
|
+
${this.renderCustomMenuItems()}
|
|
2527
|
+
<slot name="menu-items"></slot>
|
|
2455
2528
|
<button
|
|
2456
2529
|
class="menu-item"
|
|
2457
2530
|
role="menuitem"
|
|
2458
|
-
@click=${()=>{this.menuOpen=!1,
|
|
2531
|
+
@click=${()=>{this.menuOpen=!1,nt("account")}}
|
|
2459
2532
|
>
|
|
2460
2533
|
${_.settings} ${this.t("manageAccount")}
|
|
2461
2534
|
</button>
|
|
@@ -2466,8 +2539,24 @@ var AuthUI=(function(k){"use strict";var Ee;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
2466
2539
|
>
|
|
2467
2540
|
${_.logOut} ${this.t("signOut")}
|
|
2468
2541
|
</button>
|
|
2469
|
-
</div>`:
|
|
2470
|
-
`}
|
|
2542
|
+
</div>`:x}
|
|
2543
|
+
`}renderCustomMenuItems(){return this.menuItems?.length?this.menuItems.map(e=>{if(e.href){const t=e.target;return b`<a
|
|
2544
|
+
class="menu-item"
|
|
2545
|
+
role="menuitem"
|
|
2546
|
+
href=${e.href}
|
|
2547
|
+
target=${t||x}
|
|
2548
|
+
rel=${t==="_blank"?"noopener noreferrer":x}
|
|
2549
|
+
@click=${()=>{this.menuOpen=!1}}
|
|
2550
|
+
>
|
|
2551
|
+
${e.label}
|
|
2552
|
+
</a>`}const i=e.actionId;return b`<button
|
|
2553
|
+
class="menu-item"
|
|
2554
|
+
role="menuitem"
|
|
2555
|
+
type="button"
|
|
2556
|
+
@click=${()=>{this.menuOpen=!1,i&&this.dispatchEvent(new CustomEvent("authui-menu-action",{detail:{actionId:i},bubbles:!0,composed:!0}))}}
|
|
2557
|
+
>
|
|
2558
|
+
${e.label}
|
|
2559
|
+
</button>`}):x}},A.AuthUIUserButton.styles=[...Ue.styles,Ne`
|
|
2471
2560
|
:host {
|
|
2472
2561
|
display: inline-block;
|
|
2473
2562
|
position: relative;
|
|
@@ -2556,6 +2645,10 @@ var AuthUI=(function(k){"use strict";var Ee;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
2556
2645
|
height: 16px;
|
|
2557
2646
|
color: var(--authui-muted-foreground);
|
|
2558
2647
|
}
|
|
2648
|
+
a.menu-item {
|
|
2649
|
+
text-decoration: none;
|
|
2650
|
+
box-sizing: border-box;
|
|
2651
|
+
}
|
|
2559
2652
|
.menu-section {
|
|
2560
2653
|
border-top: 1px solid var(--authui-border);
|
|
2561
2654
|
margin-top: 4px;
|
|
@@ -2581,4 +2674,4 @@ var AuthUI=(function(k){"use strict";var Ee;const gt=globalThis,Rt=gt.ShadowRoot
|
|
|
2581
2674
|
height: 32px;
|
|
2582
2675
|
font-size: 13px;
|
|
2583
2676
|
}
|
|
2584
|
-
`],
|
|
2677
|
+
`],Ee([O({type:Boolean,attribute:"show-teams"})],A.AuthUIUserButton.prototype,"showTeams",2),Ee([O({attribute:!1})],A.AuthUIUserButton.prototype,"menuItems",2),Ee([O({type:String})],A.AuthUIUserButton.prototype,"src",2),Ee([X()],A.AuthUIUserButton.prototype,"menuOpen",2),Ee([X()],A.AuthUIUserButton.prototype,"menuAbove",2),Ee([X()],A.AuthUIUserButton.prototype,"teams",2),Ee([X()],A.AuthUIUserButton.prototype,"teamsLoading",2),Ee([X()],A.AuthUIUserButton.prototype,"activeTeamId",2),A.AuthUIUserButton=Ee([Ye("authui-user-button")],A.AuthUIUserButton);function cn(n){return E.configure(n),bn}function dn(n){nt(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 A.AuthStore=tn,A.AuthUI=bn,A.AuthUIElement=Ue,A.CRITICAL_FOUC_CSS=qo,A.ErrorTypes=ee,A.FOUC_CSS=pi,A.PreviewAccount=Qi,A.appwrite=wo,A.authStore=E,A.clearLastMethod=So,A.clearPendingOAuth=li,A.close=ln,A.closeModal=rn,A.defaultStrings=Yi,A.describeError=pt,A.getAccount=gn,A.getClient=fn,A.getLastMethod=Ze,A.getState=hn,A.getStoredActiveTeamId=ri,A.getUser=pn,A.init=cn,A.isConfigError=Ti,A.on=mn,A.open=dn,A.openModal=nt,A.previewSignIn=yn,A.providerLabel=et,A.rememberLastMethod=it,A.rememberPendingOAuth=di,A.scorePassword=Ct,A.setStoredActiveTeamId=zi,A.signOut=un,A.stashPendingOAuth=Oi,A.toAuthUIError=Je,Object.defineProperty(A,Symbol.toStringTag,{value:"Module"}),A})({});
|