@neuctra/authix 1.0.3 → 1.0.6

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.
@@ -1,9 +1,9 @@
1
- (function(X,j){typeof exports=="object"&&typeof module<"u"?j(exports,require("react")):typeof define=="function"&&define.amd?define(["exports","react"],j):(X=typeof globalThis<"u"?globalThis:X||self,j(X.NeuctraAuthix={},X.React))})(this,(function(X,j){"use strict";function tt(e,t){return function(){return e.apply(t,arguments)}}const{toString:Xt}=Object.prototype,{getPrototypeOf:Le}=Object,{iterator:ke,toStringTag:rt}=Symbol,Ee=(e=>t=>{const r=Xt.call(t);return e[r]||(e[r]=r.slice(8,-1).toLowerCase())})(Object.create(null)),Q=e=>(e=e.toLowerCase(),t=>Ee(t)===e),Te=e=>t=>typeof t===e,{isArray:le}=Array,ce=Te("undefined");function xe(e){return e!==null&&!ce(e)&&e.constructor!==null&&!ce(e.constructor)&&G(e.constructor.isBuffer)&&e.constructor.isBuffer(e)}const nt=Q("ArrayBuffer");function Gt(e){let t;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?t=ArrayBuffer.isView(e):t=e&&e.buffer&&nt(e.buffer),t}const Zt=Te("string"),G=Te("function"),st=Te("number"),he=e=>e!==null&&typeof e=="object",Qt=e=>e===!0||e===!1,Re=e=>{if(Ee(e)!=="object")return!1;const t=Le(e);return(t===null||t===Object.prototype||Object.getPrototypeOf(t)===null)&&!(rt in e)&&!(ke in e)},er=e=>{if(!he(e)||xe(e))return!1;try{return Object.keys(e).length===0&&Object.getPrototypeOf(e)===Object.prototype}catch{return!1}},tr=Q("Date"),rr=Q("File"),nr=Q("Blob"),sr=Q("FileList"),or=e=>he(e)&&G(e.pipe),ar=e=>{let t;return e&&(typeof FormData=="function"&&e instanceof FormData||G(e.append)&&((t=Ee(e))==="formdata"||t==="object"&&G(e.toString)&&e.toString()==="[object FormData]"))},ir=Q("URLSearchParams"),[lr,cr,dr,ur]=["ReadableStream","Request","Response","Headers"].map(Q),pr=e=>e.trim?e.trim():e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function me(e,t,{allOwnKeys:r=!1}={}){if(e===null||typeof e>"u")return;let n,o;if(typeof e!="object"&&(e=[e]),le(e))for(n=0,o=e.length;n<o;n++)t.call(null,e[n],n,e);else{if(xe(e))return;const i=r?Object.getOwnPropertyNames(e):Object.keys(e),a=i.length;let l;for(n=0;n<a;n++)l=i[n],t.call(null,e[l],l,e)}}function ot(e,t){if(xe(e))return null;t=t.toLowerCase();const r=Object.keys(e);let n=r.length,o;for(;n-- >0;)if(o=r[n],t===o.toLowerCase())return o;return null}const ne=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global,at=e=>!ce(e)&&e!==ne;function Me(){const{caseless:e,skipUndefined:t}=at(this)&&this||{},r={},n=(o,i)=>{const a=e&&ot(r,i)||i;Re(r[a])&&Re(o)?r[a]=Me(r[a],o):Re(o)?r[a]=Me({},o):le(o)?r[a]=o.slice():(!t||!ce(o))&&(r[a]=o)};for(let o=0,i=arguments.length;o<i;o++)arguments[o]&&me(arguments[o],n);return r}const fr=(e,t,r,{allOwnKeys:n}={})=>(me(t,(o,i)=>{r&&G(o)?e[i]=tt(o,r):e[i]=o},{allOwnKeys:n}),e),xr=e=>(e.charCodeAt(0)===65279&&(e=e.slice(1)),e),hr=(e,t,r,n)=>{e.prototype=Object.create(t.prototype,n),e.prototype.constructor=e,Object.defineProperty(e,"super",{value:t.prototype}),r&&Object.assign(e.prototype,r)},mr=(e,t,r,n)=>{let o,i,a;const l={};if(t=t||{},e==null)return t;do{for(o=Object.getOwnPropertyNames(e),i=o.length;i-- >0;)a=o[i],(!n||n(a,e,t))&&!l[a]&&(t[a]=e[a],l[a]=!0);e=r!==!1&&Le(e)}while(e&&(!r||r(e,t))&&e!==Object.prototype);return t},gr=(e,t,r)=>{e=String(e),(r===void 0||r>e.length)&&(r=e.length),r-=t.length;const n=e.indexOf(t,r);return n!==-1&&n===r},yr=e=>{if(!e)return null;if(le(e))return e;let t=e.length;if(!st(t))return null;const r=new Array(t);for(;t-- >0;)r[t]=e[t];return r},br=(e=>t=>e&&t instanceof e)(typeof Uint8Array<"u"&&Le(Uint8Array)),wr=(e,t)=>{const n=(e&&e[ke]).call(e);let o;for(;(o=n.next())&&!o.done;){const i=o.value;t.call(e,i[0],i[1])}},Sr=(e,t)=>{let r;const n=[];for(;(r=e.exec(t))!==null;)n.push(r);return n},vr=Q("HTMLFormElement"),jr=e=>e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(r,n,o){return n.toUpperCase()+o}),it=(({hasOwnProperty:e})=>(t,r)=>e.call(t,r))(Object.prototype),kr=Q("RegExp"),lt=(e,t)=>{const r=Object.getOwnPropertyDescriptors(e),n={};me(r,(o,i)=>{let a;(a=t(o,i,e))!==!1&&(n[i]=a||o)}),Object.defineProperties(e,n)},Er=e=>{lt(e,(t,r)=>{if(G(e)&&["arguments","caller","callee"].indexOf(r)!==-1)return!1;const n=e[r];if(G(n)){if(t.enumerable=!1,"writable"in t){t.writable=!1;return}t.set||(t.set=()=>{throw Error("Can not rewrite read-only method '"+r+"'")})}})},Tr=(e,t)=>{const r={},n=o=>{o.forEach(i=>{r[i]=!0})};return le(e)?n(e):n(String(e).split(t)),r},Rr=()=>{},Cr=(e,t)=>e!=null&&Number.isFinite(e=+e)?e:t;function Pr(e){return!!(e&&G(e.append)&&e[rt]==="FormData"&&e[ke])}const Ir=e=>{const t=new Array(10),r=(n,o)=>{if(he(n)){if(t.indexOf(n)>=0)return;if(xe(n))return n;if(!("toJSON"in n)){t[o]=n;const i=le(n)?[]:{};return me(n,(a,l)=>{const h=r(a,o+1);!ce(h)&&(i[l]=h)}),t[o]=void 0,i}}return n};return r(e,0)},Or=Q("AsyncFunction"),_r=e=>e&&(he(e)||G(e))&&G(e.then)&&G(e.catch),ct=((e,t)=>e?setImmediate:t?((r,n)=>(ne.addEventListener("message",({source:o,data:i})=>{o===ne&&i===r&&n.length&&n.shift()()},!1),o=>{n.push(o),ne.postMessage(r,"*")}))(`axios@${Math.random()}`,[]):r=>setTimeout(r))(typeof setImmediate=="function",G(ne.postMessage)),Ar=typeof queueMicrotask<"u"?queueMicrotask.bind(ne):typeof process<"u"&&process.nextTick||ct,d={isArray:le,isArrayBuffer:nt,isBuffer:xe,isFormData:ar,isArrayBufferView:Gt,isString:Zt,isNumber:st,isBoolean:Qt,isObject:he,isPlainObject:Re,isEmptyObject:er,isReadableStream:lr,isRequest:cr,isResponse:dr,isHeaders:ur,isUndefined:ce,isDate:tr,isFile:rr,isBlob:nr,isRegExp:kr,isFunction:G,isStream:or,isURLSearchParams:ir,isTypedArray:br,isFileList:sr,forEach:me,merge:Me,extend:fr,trim:pr,stripBOM:xr,inherits:hr,toFlatObject:mr,kindOf:Ee,kindOfTest:Q,endsWith:gr,toArray:yr,forEachEntry:wr,matchAll:Sr,isHTMLForm:vr,hasOwnProperty:it,hasOwnProp:it,reduceDescriptors:lt,freezeMethods:Er,toObjectSet:Tr,toCamelCase:jr,noop:Rr,toFiniteNumber:Cr,findKey:ot,global:ne,isContextDefined:at,isSpecCompliantForm:Pr,toJSONObject:Ir,isAsyncFn:Or,isThenable:_r,setImmediate:ct,asap:Ar,isIterable:e=>e!=null&&G(e[ke])};function z(e,t,r,n,o){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack,this.message=e,this.name="AxiosError",t&&(this.code=t),r&&(this.config=r),n&&(this.request=n),o&&(this.response=o,this.status=o.status?o.status:null)}d.inherits(z,Error,{toJSON:function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:d.toJSONObject(this.config),code:this.code,status:this.status}}});const dt=z.prototype,ut={};["ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","ECONNABORTED","ETIMEDOUT","ERR_NETWORK","ERR_FR_TOO_MANY_REDIRECTS","ERR_DEPRECATED","ERR_BAD_RESPONSE","ERR_BAD_REQUEST","ERR_CANCELED","ERR_NOT_SUPPORT","ERR_INVALID_URL"].forEach(e=>{ut[e]={value:e}}),Object.defineProperties(z,ut),Object.defineProperty(dt,"isAxiosError",{value:!0}),z.from=(e,t,r,n,o,i)=>{const a=Object.create(dt);d.toFlatObject(e,a,function(u){return u!==Error.prototype},p=>p!=="isAxiosError");const l=e&&e.message?e.message:"Error",h=t==null&&e?e.code:t;return z.call(a,l,h,r,n,o),e&&a.cause==null&&Object.defineProperty(a,"cause",{value:e,configurable:!0}),a.name=e&&e.name||"Error",i&&Object.assign(a,i),a};const Nr=null;function Be(e){return d.isPlainObject(e)||d.isArray(e)}function pt(e){return d.endsWith(e,"[]")?e.slice(0,-2):e}function ft(e,t,r){return e?e.concat(t).map(function(o,i){return o=pt(o),!r&&i?"["+o+"]":o}).join(r?".":""):t}function zr(e){return d.isArray(e)&&!e.some(Be)}const Ur=d.toFlatObject(d,{},null,function(t){return/^is[A-Z]/.test(t)});function Ce(e,t,r){if(!d.isObject(e))throw new TypeError("target must be an object");t=t||new FormData,r=d.toFlatObject(r,{metaTokens:!0,dots:!1,indexes:!1},!1,function(g,y){return!d.isUndefined(y[g])});const n=r.metaTokens,o=r.visitor||u,i=r.dots,a=r.indexes,h=(r.Blob||typeof Blob<"u"&&Blob)&&d.isSpecCompliantForm(t);if(!d.isFunction(o))throw new TypeError("visitor must be a function");function p(c){if(c===null)return"";if(d.isDate(c))return c.toISOString();if(d.isBoolean(c))return c.toString();if(!h&&d.isBlob(c))throw new z("Blob is not supported. Use a Buffer instead.");return d.isArrayBuffer(c)||d.isTypedArray(c)?h&&typeof Blob=="function"?new Blob([c]):Buffer.from(c):c}function u(c,g,y){let I=c;if(c&&!y&&typeof c=="object"){if(d.endsWith(g,"{}"))g=n?g:g.slice(0,-2),c=JSON.stringify(c);else if(d.isArray(c)&&zr(c)||(d.isFileList(c)||d.endsWith(g,"[]"))&&(I=d.toArray(c)))return g=pt(g),I.forEach(function(S,F){!(d.isUndefined(S)||S===null)&&t.append(a===!0?ft([g],F,i):a===null?g:g+"[]",p(S))}),!1}return Be(c)?!0:(t.append(ft(y,g,i),p(c)),!1)}const b=[],C=Object.assign(Ur,{defaultVisitor:u,convertValue:p,isVisitable:Be});function k(c,g){if(!d.isUndefined(c)){if(b.indexOf(c)!==-1)throw Error("Circular reference detected in "+g.join("."));b.push(c),d.forEach(c,function(I,W){(!(d.isUndefined(I)||I===null)&&o.call(t,I,d.isString(W)?W.trim():W,g,C))===!0&&k(I,g?g.concat(W):[W])}),b.pop()}}if(!d.isObject(e))throw new TypeError("data must be an object");return k(e),t}function xt(e){const t={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(e).replace(/[!'()~]|%20|%00/g,function(n){return t[n]})}function $e(e,t){this._pairs=[],e&&Ce(e,this,t)}const ht=$e.prototype;ht.append=function(t,r){this._pairs.push([t,r])},ht.toString=function(t){const r=t?function(n){return t.call(this,n,xt)}:xt;return this._pairs.map(function(o){return r(o[0])+"="+r(o[1])},"").join("&")};function Fr(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+")}function mt(e,t,r){if(!t)return e;const n=r&&r.encode||Fr;d.isFunction(r)&&(r={serialize:r});const o=r&&r.serialize;let i;if(o?i=o(t,r):i=d.isURLSearchParams(t)?t.toString():new $e(t,r).toString(n),i){const a=e.indexOf("#");a!==-1&&(e=e.slice(0,a)),e+=(e.indexOf("?")===-1?"?":"&")+i}return e}class gt{constructor(){this.handlers=[]}use(t,r,n){return this.handlers.push({fulfilled:t,rejected:r,synchronous:n?n.synchronous:!1,runWhen:n?n.runWhen:null}),this.handlers.length-1}eject(t){this.handlers[t]&&(this.handlers[t]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(t){d.forEach(this.handlers,function(n){n!==null&&t(n)})}}const yt={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1},Dr={isBrowser:!0,classes:{URLSearchParams:typeof URLSearchParams<"u"?URLSearchParams:$e,FormData:typeof FormData<"u"?FormData:null,Blob:typeof Blob<"u"?Blob:null},protocols:["http","https","file","blob","url","data"]},We=typeof window<"u"&&typeof document<"u",He=typeof navigator=="object"&&navigator||void 0,Lr=We&&(!He||["ReactNative","NativeScript","NS"].indexOf(He.product)<0),Mr=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function",Br=We&&window.location.href||"http://localhost",K={...Object.freeze(Object.defineProperty({__proto__:null,hasBrowserEnv:We,hasStandardBrowserEnv:Lr,hasStandardBrowserWebWorkerEnv:Mr,navigator:He,origin:Br},Symbol.toStringTag,{value:"Module"})),...Dr};function $r(e,t){return Ce(e,new K.classes.URLSearchParams,{visitor:function(r,n,o,i){return K.isNode&&d.isBuffer(r)?(this.append(n,r.toString("base64")),!1):i.defaultVisitor.apply(this,arguments)},...t})}function Wr(e){return d.matchAll(/\w+|\[(\w*)]/g,e).map(t=>t[0]==="[]"?"":t[1]||t[0])}function Hr(e){const t={},r=Object.keys(e);let n;const o=r.length;let i;for(n=0;n<o;n++)i=r[n],t[i]=e[i];return t}function bt(e){function t(r,n,o,i){let a=r[i++];if(a==="__proto__")return!0;const l=Number.isFinite(+a),h=i>=r.length;return a=!a&&d.isArray(o)?o.length:a,h?(d.hasOwnProp(o,a)?o[a]=[o[a],n]:o[a]=n,!l):((!o[a]||!d.isObject(o[a]))&&(o[a]=[]),t(r,n,o[a],i)&&d.isArray(o[a])&&(o[a]=Hr(o[a])),!l)}if(d.isFormData(e)&&d.isFunction(e.entries)){const r={};return d.forEachEntry(e,(n,o)=>{t(Wr(n),o,r,0)}),r}return null}function qr(e,t,r){if(d.isString(e))try{return(t||JSON.parse)(e),d.trim(e)}catch(n){if(n.name!=="SyntaxError")throw n}return(r||JSON.stringify)(e)}const ge={transitional:yt,adapter:["xhr","http","fetch"],transformRequest:[function(t,r){const n=r.getContentType()||"",o=n.indexOf("application/json")>-1,i=d.isObject(t);if(i&&d.isHTMLForm(t)&&(t=new FormData(t)),d.isFormData(t))return o?JSON.stringify(bt(t)):t;if(d.isArrayBuffer(t)||d.isBuffer(t)||d.isStream(t)||d.isFile(t)||d.isBlob(t)||d.isReadableStream(t))return t;if(d.isArrayBufferView(t))return t.buffer;if(d.isURLSearchParams(t))return r.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),t.toString();let l;if(i){if(n.indexOf("application/x-www-form-urlencoded")>-1)return $r(t,this.formSerializer).toString();if((l=d.isFileList(t))||n.indexOf("multipart/form-data")>-1){const h=this.env&&this.env.FormData;return Ce(l?{"files[]":t}:t,h&&new h,this.formSerializer)}}return i||o?(r.setContentType("application/json",!1),qr(t)):t}],transformResponse:[function(t){const r=this.transitional||ge.transitional,n=r&&r.forcedJSONParsing,o=this.responseType==="json";if(d.isResponse(t)||d.isReadableStream(t))return t;if(t&&d.isString(t)&&(n&&!this.responseType||o)){const a=!(r&&r.silentJSONParsing)&&o;try{return JSON.parse(t,this.parseReviver)}catch(l){if(a)throw l.name==="SyntaxError"?z.from(l,z.ERR_BAD_RESPONSE,this,null,this.response):l}}return t}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:K.classes.FormData,Blob:K.classes.Blob},validateStatus:function(t){return t>=200&&t<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};d.forEach(["delete","get","head","post","put","patch"],e=>{ge.headers[e]={}});const Yr=d.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),Vr=e=>{const t={};let r,n,o;return e&&e.split(`
2
- `).forEach(function(a){o=a.indexOf(":"),r=a.substring(0,o).trim().toLowerCase(),n=a.substring(o+1).trim(),!(!r||t[r]&&Yr[r])&&(r==="set-cookie"?t[r]?t[r].push(n):t[r]=[n]:t[r]=t[r]?t[r]+", "+n:n)}),t},wt=Symbol("internals");function ye(e){return e&&String(e).trim().toLowerCase()}function Pe(e){return e===!1||e==null?e:d.isArray(e)?e.map(Pe):String(e)}function Jr(e){const t=Object.create(null),r=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;let n;for(;n=r.exec(e);)t[n[1]]=n[2];return t}const Kr=e=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(e.trim());function qe(e,t,r,n,o){if(d.isFunction(n))return n.call(this,t,r);if(o&&(t=r),!!d.isString(t)){if(d.isString(n))return t.indexOf(n)!==-1;if(d.isRegExp(n))return n.test(t)}}function Xr(e){return e.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(t,r,n)=>r.toUpperCase()+n)}function Gr(e,t){const r=d.toCamelCase(" "+t);["get","set","has"].forEach(n=>{Object.defineProperty(e,n+r,{value:function(o,i,a){return this[n].call(this,t,o,i,a)},configurable:!0})})}let Z=class{constructor(t){t&&this.set(t)}set(t,r,n){const o=this;function i(l,h,p){const u=ye(h);if(!u)throw new Error("header name must be a non-empty string");const b=d.findKey(o,u);(!b||o[b]===void 0||p===!0||p===void 0&&o[b]!==!1)&&(o[b||h]=Pe(l))}const a=(l,h)=>d.forEach(l,(p,u)=>i(p,u,h));if(d.isPlainObject(t)||t instanceof this.constructor)a(t,r);else if(d.isString(t)&&(t=t.trim())&&!Kr(t))a(Vr(t),r);else if(d.isObject(t)&&d.isIterable(t)){let l={},h,p;for(const u of t){if(!d.isArray(u))throw TypeError("Object iterator must return a key-value pair");l[p=u[0]]=(h=l[p])?d.isArray(h)?[...h,u[1]]:[h,u[1]]:u[1]}a(l,r)}else t!=null&&i(r,t,n);return this}get(t,r){if(t=ye(t),t){const n=d.findKey(this,t);if(n){const o=this[n];if(!r)return o;if(r===!0)return Jr(o);if(d.isFunction(r))return r.call(this,o,n);if(d.isRegExp(r))return r.exec(o);throw new TypeError("parser must be boolean|regexp|function")}}}has(t,r){if(t=ye(t),t){const n=d.findKey(this,t);return!!(n&&this[n]!==void 0&&(!r||qe(this,this[n],n,r)))}return!1}delete(t,r){const n=this;let o=!1;function i(a){if(a=ye(a),a){const l=d.findKey(n,a);l&&(!r||qe(n,n[l],l,r))&&(delete n[l],o=!0)}}return d.isArray(t)?t.forEach(i):i(t),o}clear(t){const r=Object.keys(this);let n=r.length,o=!1;for(;n--;){const i=r[n];(!t||qe(this,this[i],i,t,!0))&&(delete this[i],o=!0)}return o}normalize(t){const r=this,n={};return d.forEach(this,(o,i)=>{const a=d.findKey(n,i);if(a){r[a]=Pe(o),delete r[i];return}const l=t?Xr(i):String(i).trim();l!==i&&delete r[i],r[l]=Pe(o),n[l]=!0}),this}concat(...t){return this.constructor.concat(this,...t)}toJSON(t){const r=Object.create(null);return d.forEach(this,(n,o)=>{n!=null&&n!==!1&&(r[o]=t&&d.isArray(n)?n.join(", "):n)}),r}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map(([t,r])=>t+": "+r).join(`
3
- `)}getSetCookie(){return this.get("set-cookie")||[]}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(t){return t instanceof this?t:new this(t)}static concat(t,...r){const n=new this(t);return r.forEach(o=>n.set(o)),n}static accessor(t){const n=(this[wt]=this[wt]={accessors:{}}).accessors,o=this.prototype;function i(a){const l=ye(a);n[l]||(Gr(o,a),n[l]=!0)}return d.isArray(t)?t.forEach(i):i(t),this}};Z.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]),d.reduceDescriptors(Z.prototype,({value:e},t)=>{let r=t[0].toUpperCase()+t.slice(1);return{get:()=>e,set(n){this[r]=n}}}),d.freezeMethods(Z);function Ye(e,t){const r=this||ge,n=t||r,o=Z.from(n.headers);let i=n.data;return d.forEach(e,function(l){i=l.call(r,i,o.normalize(),t?t.status:void 0)}),o.normalize(),i}function St(e){return!!(e&&e.__CANCEL__)}function de(e,t,r){z.call(this,e??"canceled",z.ERR_CANCELED,t,r),this.name="CanceledError"}d.inherits(de,z,{__CANCEL__:!0});function vt(e,t,r){const n=r.config.validateStatus;!r.status||!n||n(r.status)?e(r):t(new z("Request failed with status code "+r.status,[z.ERR_BAD_REQUEST,z.ERR_BAD_RESPONSE][Math.floor(r.status/100)-4],r.config,r.request,r))}function Zr(e){const t=/^([-+\w]{1,25})(:?\/\/|:)/.exec(e);return t&&t[1]||""}function Qr(e,t){e=e||10;const r=new Array(e),n=new Array(e);let o=0,i=0,a;return t=t!==void 0?t:1e3,function(h){const p=Date.now(),u=n[i];a||(a=p),r[o]=h,n[o]=p;let b=i,C=0;for(;b!==o;)C+=r[b++],b=b%e;if(o=(o+1)%e,o===i&&(i=(i+1)%e),p-a<t)return;const k=u&&p-u;return k?Math.round(C*1e3/k):void 0}}function en(e,t){let r=0,n=1e3/t,o,i;const a=(p,u=Date.now())=>{r=u,o=null,i&&(clearTimeout(i),i=null),e(...p)};return[(...p)=>{const u=Date.now(),b=u-r;b>=n?a(p,u):(o=p,i||(i=setTimeout(()=>{i=null,a(o)},n-b)))},()=>o&&a(o)]}const Ie=(e,t,r=3)=>{let n=0;const o=Qr(50,250);return en(i=>{const a=i.loaded,l=i.lengthComputable?i.total:void 0,h=a-n,p=o(h),u=a<=l;n=a;const b={loaded:a,total:l,progress:l?a/l:void 0,bytes:h,rate:p||void 0,estimated:p&&l&&u?(l-a)/p:void 0,event:i,lengthComputable:l!=null,[t?"download":"upload"]:!0};e(b)},r)},jt=(e,t)=>{const r=e!=null;return[n=>t[0]({lengthComputable:r,total:e,loaded:n}),t[1]]},kt=e=>(...t)=>d.asap(()=>e(...t)),tn=K.hasStandardBrowserEnv?((e,t)=>r=>(r=new URL(r,K.origin),e.protocol===r.protocol&&e.host===r.host&&(t||e.port===r.port)))(new URL(K.origin),K.navigator&&/(msie|trident)/i.test(K.navigator.userAgent)):()=>!0,rn=K.hasStandardBrowserEnv?{write(e,t,r,n,o,i){const a=[e+"="+encodeURIComponent(t)];d.isNumber(r)&&a.push("expires="+new Date(r).toGMTString()),d.isString(n)&&a.push("path="+n),d.isString(o)&&a.push("domain="+o),i===!0&&a.push("secure"),document.cookie=a.join("; ")},read(e){const t=document.cookie.match(new RegExp("(^|;\\s*)("+e+")=([^;]*)"));return t?decodeURIComponent(t[3]):null},remove(e){this.write(e,"",Date.now()-864e5)}}:{write(){},read(){return null},remove(){}};function nn(e){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(e)}function sn(e,t){return t?e.replace(/\/?\/$/,"")+"/"+t.replace(/^\/+/,""):e}function Et(e,t,r){let n=!nn(t);return e&&(n||r==!1)?sn(e,t):t}const Tt=e=>e instanceof Z?{...e}:e;function se(e,t){t=t||{};const r={};function n(p,u,b,C){return d.isPlainObject(p)&&d.isPlainObject(u)?d.merge.call({caseless:C},p,u):d.isPlainObject(u)?d.merge({},u):d.isArray(u)?u.slice():u}function o(p,u,b,C){if(d.isUndefined(u)){if(!d.isUndefined(p))return n(void 0,p,b,C)}else return n(p,u,b,C)}function i(p,u){if(!d.isUndefined(u))return n(void 0,u)}function a(p,u){if(d.isUndefined(u)){if(!d.isUndefined(p))return n(void 0,p)}else return n(void 0,u)}function l(p,u,b){if(b in t)return n(p,u);if(b in e)return n(void 0,p)}const h={url:i,method:i,data:i,baseURL:a,transformRequest:a,transformResponse:a,paramsSerializer:a,timeout:a,timeoutMessage:a,withCredentials:a,withXSRFToken:a,adapter:a,responseType:a,xsrfCookieName:a,xsrfHeaderName:a,onUploadProgress:a,onDownloadProgress:a,decompress:a,maxContentLength:a,maxBodyLength:a,beforeRedirect:a,transport:a,httpAgent:a,httpsAgent:a,cancelToken:a,socketPath:a,responseEncoding:a,validateStatus:l,headers:(p,u,b)=>o(Tt(p),Tt(u),b,!0)};return d.forEach(Object.keys({...e,...t}),function(u){const b=h[u]||o,C=b(e[u],t[u],u);d.isUndefined(C)&&b!==l||(r[u]=C)}),r}const Rt=e=>{const t=se({},e);let{data:r,withXSRFToken:n,xsrfHeaderName:o,xsrfCookieName:i,headers:a,auth:l}=t;if(t.headers=a=Z.from(a),t.url=mt(Et(t.baseURL,t.url,t.allowAbsoluteUrls),e.params,e.paramsSerializer),l&&a.set("Authorization","Basic "+btoa((l.username||"")+":"+(l.password?unescape(encodeURIComponent(l.password)):""))),d.isFormData(r)){if(K.hasStandardBrowserEnv||K.hasStandardBrowserWebWorkerEnv)a.setContentType(void 0);else if(d.isFunction(r.getHeaders)){const h=r.getHeaders(),p=["content-type","content-length"];Object.entries(h).forEach(([u,b])=>{p.includes(u.toLowerCase())&&a.set(u,b)})}}if(K.hasStandardBrowserEnv&&(n&&d.isFunction(n)&&(n=n(t)),n||n!==!1&&tn(t.url))){const h=o&&i&&rn.read(i);h&&a.set(o,h)}return t},on=typeof XMLHttpRequest<"u"&&function(e){return new Promise(function(r,n){const o=Rt(e);let i=o.data;const a=Z.from(o.headers).normalize();let{responseType:l,onUploadProgress:h,onDownloadProgress:p}=o,u,b,C,k,c;function g(){k&&k(),c&&c(),o.cancelToken&&o.cancelToken.unsubscribe(u),o.signal&&o.signal.removeEventListener("abort",u)}let y=new XMLHttpRequest;y.open(o.method.toUpperCase(),o.url,!0),y.timeout=o.timeout;function I(){if(!y)return;const S=Z.from("getAllResponseHeaders"in y&&y.getAllResponseHeaders()),D={data:!l||l==="text"||l==="json"?y.responseText:y.response,status:y.status,statusText:y.statusText,headers:S,config:e,request:y};vt(function(_){r(_),g()},function(_){n(_),g()},D),y=null}"onloadend"in y?y.onloadend=I:y.onreadystatechange=function(){!y||y.readyState!==4||y.status===0&&!(y.responseURL&&y.responseURL.indexOf("file:")===0)||setTimeout(I)},y.onabort=function(){y&&(n(new z("Request aborted",z.ECONNABORTED,e,y)),y=null)},y.onerror=function(F){const D=F&&F.message?F.message:"Network Error",m=new z(D,z.ERR_NETWORK,e,y);m.event=F||null,n(m),y=null},y.ontimeout=function(){let F=o.timeout?"timeout of "+o.timeout+"ms exceeded":"timeout exceeded";const D=o.transitional||yt;o.timeoutErrorMessage&&(F=o.timeoutErrorMessage),n(new z(F,D.clarifyTimeoutError?z.ETIMEDOUT:z.ECONNABORTED,e,y)),y=null},i===void 0&&a.setContentType(null),"setRequestHeader"in y&&d.forEach(a.toJSON(),function(F,D){y.setRequestHeader(D,F)}),d.isUndefined(o.withCredentials)||(y.withCredentials=!!o.withCredentials),l&&l!=="json"&&(y.responseType=o.responseType),p&&([C,c]=Ie(p,!0),y.addEventListener("progress",C)),h&&y.upload&&([b,k]=Ie(h),y.upload.addEventListener("progress",b),y.upload.addEventListener("loadend",k)),(o.cancelToken||o.signal)&&(u=S=>{y&&(n(!S||S.type?new de(null,e,y):S),y.abort(),y=null)},o.cancelToken&&o.cancelToken.subscribe(u),o.signal&&(o.signal.aborted?u():o.signal.addEventListener("abort",u)));const W=Zr(o.url);if(W&&K.protocols.indexOf(W)===-1){n(new z("Unsupported protocol "+W+":",z.ERR_BAD_REQUEST,e));return}y.send(i||null)})},an=(e,t)=>{const{length:r}=e=e?e.filter(Boolean):[];if(t||r){let n=new AbortController,o;const i=function(p){if(!o){o=!0,l();const u=p instanceof Error?p:this.reason;n.abort(u instanceof z?u:new de(u instanceof Error?u.message:u))}};let a=t&&setTimeout(()=>{a=null,i(new z(`timeout ${t} of ms exceeded`,z.ETIMEDOUT))},t);const l=()=>{e&&(a&&clearTimeout(a),a=null,e.forEach(p=>{p.unsubscribe?p.unsubscribe(i):p.removeEventListener("abort",i)}),e=null)};e.forEach(p=>p.addEventListener("abort",i));const{signal:h}=n;return h.unsubscribe=()=>d.asap(l),h}},ln=function*(e,t){let r=e.byteLength;if(r<t){yield e;return}let n=0,o;for(;n<r;)o=n+t,yield e.slice(n,o),n=o},cn=async function*(e,t){for await(const r of dn(e))yield*ln(r,t)},dn=async function*(e){if(e[Symbol.asyncIterator]){yield*e;return}const t=e.getReader();try{for(;;){const{done:r,value:n}=await t.read();if(r)break;yield n}}finally{await t.cancel()}},Ct=(e,t,r,n)=>{const o=cn(e,t);let i=0,a,l=h=>{a||(a=!0,n&&n(h))};return new ReadableStream({async pull(h){try{const{done:p,value:u}=await o.next();if(p){l(),h.close();return}let b=u.byteLength;if(r){let C=i+=b;r(C)}h.enqueue(new Uint8Array(u))}catch(p){throw l(p),p}},cancel(h){return l(h),o.return()}},{highWaterMark:2})},Pt=64*1024,{isFunction:Oe}=d,un=(({Request:e,Response:t})=>({Request:e,Response:t}))(d.global),{ReadableStream:It,TextEncoder:Ot}=d.global,_t=(e,...t)=>{try{return!!e(...t)}catch{return!1}},pn=e=>{e=d.merge.call({skipUndefined:!0},un,e);const{fetch:t,Request:r,Response:n}=e,o=t?Oe(t):typeof fetch=="function",i=Oe(r),a=Oe(n);if(!o)return!1;const l=o&&Oe(It),h=o&&(typeof Ot=="function"?(c=>g=>c.encode(g))(new Ot):async c=>new Uint8Array(await new r(c).arrayBuffer())),p=i&&l&&_t(()=>{let c=!1;const g=new r(K.origin,{body:new It,method:"POST",get duplex(){return c=!0,"half"}}).headers.has("Content-Type");return c&&!g}),u=a&&l&&_t(()=>d.isReadableStream(new n("").body)),b={stream:u&&(c=>c.body)};o&&["text","arrayBuffer","blob","formData","stream"].forEach(c=>{!b[c]&&(b[c]=(g,y)=>{let I=g&&g[c];if(I)return I.call(g);throw new z(`Response type '${c}' is not supported`,z.ERR_NOT_SUPPORT,y)})});const C=async c=>{if(c==null)return 0;if(d.isBlob(c))return c.size;if(d.isSpecCompliantForm(c))return(await new r(K.origin,{method:"POST",body:c}).arrayBuffer()).byteLength;if(d.isArrayBufferView(c)||d.isArrayBuffer(c))return c.byteLength;if(d.isURLSearchParams(c)&&(c=c+""),d.isString(c))return(await h(c)).byteLength},k=async(c,g)=>{const y=d.toFiniteNumber(c.getContentLength());return y??C(g)};return async c=>{let{url:g,method:y,data:I,signal:W,cancelToken:S,timeout:F,onDownloadProgress:D,onUploadProgress:m,responseType:_,headers:w,withCredentials:M="same-origin",fetchOptions:V}=Rt(c),U=t||fetch;_=_?(_+"").toLowerCase():"text";let A=an([W,S&&S.toAbortSignal()],F),O=null;const E=A&&A.unsubscribe&&(()=>{A.unsubscribe()});let N;try{if(m&&p&&y!=="get"&&y!=="head"&&(N=await k(w,I))!==0){let R=new r(g,{method:"POST",body:I,duplex:"half"}),L;if(d.isFormData(I)&&(L=R.headers.get("content-type"))&&w.setContentType(L),R.body){const[x,v]=jt(N,Ie(kt(m)));I=Ct(R.body,Pt,x,v)}}d.isString(M)||(M=M?"include":"omit");const T=i&&"credentials"in r.prototype,P={...V,signal:A,method:y.toUpperCase(),headers:w.normalize().toJSON(),body:I,duplex:"half",credentials:T?M:void 0};O=i&&new r(g,P);let B=await(i?U(O,V):U(g,P));const q=u&&(_==="stream"||_==="response");if(u&&(D||q&&E)){const R={};["status","statusText","headers"].forEach(H=>{R[H]=B[H]});const L=d.toFiniteNumber(B.headers.get("content-length")),[x,v]=D&&jt(L,Ie(kt(D),!0))||[];B=new n(Ct(B.body,Pt,x,()=>{v&&v(),E&&E()}),R)}_=_||"text";let f=await b[d.findKey(b,_)||"text"](B,c);return!q&&E&&E(),await new Promise((R,L)=>{vt(R,L,{data:f,headers:Z.from(B.headers),status:B.status,statusText:B.statusText,config:c,request:O})})}catch(T){throw E&&E(),T&&T.name==="TypeError"&&/Load failed|fetch/i.test(T.message)?Object.assign(new z("Network Error",z.ERR_NETWORK,c,O),{cause:T.cause||T}):z.from(T,T&&T.code,c,O)}}},fn=new Map,At=e=>{let t=e?e.env:{};const{fetch:r,Request:n,Response:o}=t,i=[n,o,r];let a=i.length,l=a,h,p,u=fn;for(;l--;)h=i[l],p=u.get(h),p===void 0&&u.set(h,p=l?new Map:pn(t)),u=p;return p};At();const Ve={http:Nr,xhr:on,fetch:{get:At}};d.forEach(Ve,(e,t)=>{if(e){try{Object.defineProperty(e,"name",{value:t})}catch{}Object.defineProperty(e,"adapterName",{value:t})}});const Nt=e=>`- ${e}`,xn=e=>d.isFunction(e)||e===null||e===!1,zt={getAdapter:(e,t)=>{e=d.isArray(e)?e:[e];const{length:r}=e;let n,o;const i={};for(let a=0;a<r;a++){n=e[a];let l;if(o=n,!xn(n)&&(o=Ve[(l=String(n)).toLowerCase()],o===void 0))throw new z(`Unknown adapter '${l}'`);if(o&&(d.isFunction(o)||(o=o.get(t))))break;i[l||"#"+a]=o}if(!o){const a=Object.entries(i).map(([h,p])=>`adapter ${h} `+(p===!1?"is not supported by the environment":"is not available in the build"));let l=r?a.length>1?`since :
4
- `+a.map(Nt).join(`
5
- `):" "+Nt(a[0]):"as no adapter specified";throw new z("There is no suitable adapter to dispatch the request "+l,"ERR_NOT_SUPPORT")}return o},adapters:Ve};function Je(e){if(e.cancelToken&&e.cancelToken.throwIfRequested(),e.signal&&e.signal.aborted)throw new de(null,e)}function Ut(e){return Je(e),e.headers=Z.from(e.headers),e.data=Ye.call(e,e.transformRequest),["post","put","patch"].indexOf(e.method)!==-1&&e.headers.setContentType("application/x-www-form-urlencoded",!1),zt.getAdapter(e.adapter||ge.adapter,e)(e).then(function(n){return Je(e),n.data=Ye.call(e,e.transformResponse,n),n.headers=Z.from(n.headers),n},function(n){return St(n)||(Je(e),n&&n.response&&(n.response.data=Ye.call(e,e.transformResponse,n.response),n.response.headers=Z.from(n.response.headers))),Promise.reject(n)})}const Ft="1.12.2",_e={};["object","boolean","number","function","string","symbol"].forEach((e,t)=>{_e[e]=function(n){return typeof n===e||"a"+(t<1?"n ":" ")+e}});const Dt={};_e.transitional=function(t,r,n){function o(i,a){return"[Axios v"+Ft+"] Transitional option '"+i+"'"+a+(n?". "+n:"")}return(i,a,l)=>{if(t===!1)throw new z(o(a," has been removed"+(r?" in "+r:"")),z.ERR_DEPRECATED);return r&&!Dt[a]&&(Dt[a]=!0,console.warn(o(a," has been deprecated since v"+r+" and will be removed in the near future"))),t?t(i,a,l):!0}},_e.spelling=function(t){return(r,n)=>(console.warn(`${n} is likely a misspelling of ${t}`),!0)};function hn(e,t,r){if(typeof e!="object")throw new z("options must be an object",z.ERR_BAD_OPTION_VALUE);const n=Object.keys(e);let o=n.length;for(;o-- >0;){const i=n[o],a=t[i];if(a){const l=e[i],h=l===void 0||a(l,i,e);if(h!==!0)throw new z("option "+i+" must be "+h,z.ERR_BAD_OPTION_VALUE);continue}if(r!==!0)throw new z("Unknown option "+i,z.ERR_BAD_OPTION)}}const Ae={assertOptions:hn,validators:_e},ee=Ae.validators;let oe=class{constructor(t){this.defaults=t||{},this.interceptors={request:new gt,response:new gt}}async request(t,r){try{return await this._request(t,r)}catch(n){if(n instanceof Error){let o={};Error.captureStackTrace?Error.captureStackTrace(o):o=new Error;const i=o.stack?o.stack.replace(/^.+\n/,""):"";try{n.stack?i&&!String(n.stack).endsWith(i.replace(/^.+\n.+\n/,""))&&(n.stack+=`
6
- `+i):n.stack=i}catch{}}throw n}}_request(t,r){typeof t=="string"?(r=r||{},r.url=t):r=t||{},r=se(this.defaults,r);const{transitional:n,paramsSerializer:o,headers:i}=r;n!==void 0&&Ae.assertOptions(n,{silentJSONParsing:ee.transitional(ee.boolean),forcedJSONParsing:ee.transitional(ee.boolean),clarifyTimeoutError:ee.transitional(ee.boolean)},!1),o!=null&&(d.isFunction(o)?r.paramsSerializer={serialize:o}:Ae.assertOptions(o,{encode:ee.function,serialize:ee.function},!0)),r.allowAbsoluteUrls!==void 0||(this.defaults.allowAbsoluteUrls!==void 0?r.allowAbsoluteUrls=this.defaults.allowAbsoluteUrls:r.allowAbsoluteUrls=!0),Ae.assertOptions(r,{baseUrl:ee.spelling("baseURL"),withXsrfToken:ee.spelling("withXSRFToken")},!0),r.method=(r.method||this.defaults.method||"get").toLowerCase();let a=i&&d.merge(i.common,i[r.method]);i&&d.forEach(["delete","get","head","post","put","patch","common"],c=>{delete i[c]}),r.headers=Z.concat(a,i);const l=[];let h=!0;this.interceptors.request.forEach(function(g){typeof g.runWhen=="function"&&g.runWhen(r)===!1||(h=h&&g.synchronous,l.unshift(g.fulfilled,g.rejected))});const p=[];this.interceptors.response.forEach(function(g){p.push(g.fulfilled,g.rejected)});let u,b=0,C;if(!h){const c=[Ut.bind(this),void 0];for(c.unshift(...l),c.push(...p),C=c.length,u=Promise.resolve(r);b<C;)u=u.then(c[b++],c[b++]);return u}C=l.length;let k=r;for(;b<C;){const c=l[b++],g=l[b++];try{k=c(k)}catch(y){g.call(this,y);break}}try{u=Ut.call(this,k)}catch(c){return Promise.reject(c)}for(b=0,C=p.length;b<C;)u=u.then(p[b++],p[b++]);return u}getUri(t){t=se(this.defaults,t);const r=Et(t.baseURL,t.url,t.allowAbsoluteUrls);return mt(r,t.params,t.paramsSerializer)}};d.forEach(["delete","get","head","options"],function(t){oe.prototype[t]=function(r,n){return this.request(se(n||{},{method:t,url:r,data:(n||{}).data}))}}),d.forEach(["post","put","patch"],function(t){function r(n){return function(i,a,l){return this.request(se(l||{},{method:t,headers:n?{"Content-Type":"multipart/form-data"}:{},url:i,data:a}))}}oe.prototype[t]=r(),oe.prototype[t+"Form"]=r(!0)});let mn=class Kt{constructor(t){if(typeof t!="function")throw new TypeError("executor must be a function.");let r;this.promise=new Promise(function(i){r=i});const n=this;this.promise.then(o=>{if(!n._listeners)return;let i=n._listeners.length;for(;i-- >0;)n._listeners[i](o);n._listeners=null}),this.promise.then=o=>{let i;const a=new Promise(l=>{n.subscribe(l),i=l}).then(o);return a.cancel=function(){n.unsubscribe(i)},a},t(function(i,a,l){n.reason||(n.reason=new de(i,a,l),r(n.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(t){if(this.reason){t(this.reason);return}this._listeners?this._listeners.push(t):this._listeners=[t]}unsubscribe(t){if(!this._listeners)return;const r=this._listeners.indexOf(t);r!==-1&&this._listeners.splice(r,1)}toAbortSignal(){const t=new AbortController,r=n=>{t.abort(n)};return this.subscribe(r),t.signal.unsubscribe=()=>this.unsubscribe(r),t.signal}static source(){let t;return{token:new Kt(function(o){t=o}),cancel:t}}};function gn(e){return function(r){return e.apply(null,r)}}function yn(e){return d.isObject(e)&&e.isAxiosError===!0}const Ke={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511};Object.entries(Ke).forEach(([e,t])=>{Ke[t]=e});function Lt(e){const t=new oe(e),r=tt(oe.prototype.request,t);return d.extend(r,oe.prototype,t,{allOwnKeys:!0}),d.extend(r,t,null,{allOwnKeys:!0}),r.create=function(o){return Lt(se(e,o))},r}const $=Lt(ge);$.Axios=oe,$.CanceledError=de,$.CancelToken=mn,$.isCancel=St,$.VERSION=Ft,$.toFormData=Ce,$.AxiosError=z,$.Cancel=$.CanceledError,$.all=function(t){return Promise.all(t)},$.spread=gn,$.isAxiosError=yn,$.mergeConfig=se,$.AxiosHeaders=Z,$.formToJSON=e=>bt(d.isHTMLForm(e)?new FormData(e):e),$.getAdapter=zt.getAdapter,$.HttpStatusCode=Ke,$.default=$;const{Axios:is,AxiosError:ls,CanceledError:cs,isCancel:ds,CancelToken:us,VERSION:ps,all:fs,Cancel:xs,isAxiosError:hs,spread:ms,toFormData:gs,AxiosHeaders:ys,HttpStatusCode:bs,formToJSON:ws,getAdapter:Ss,mergeConfig:vs}=$;class bn{baseUrl;apiKey;appId;client;constructor(t){if(!t||!t.baseUrl)throw new Error("NeuctraAuthixClient: 'baseUrl' is required in config");this.baseUrl=t.baseUrl.replace(/\/$/,""),this.apiKey=t.apiKey||null,this.appId=t.appId||null,this.client=$.create({baseURL:this.baseUrl,headers:{"Content-Type":"application/json",...this.apiKey?{"x-api-key":this.apiKey}:{}},timeout:1e4})}async request(t,r,n,o={}){if(!t)throw new Error("HTTP method is required");if(!r)throw new Error("Request path is required");try{const i={...this.appId?{appId:this.appId}:{},...n||{}};return(await this.client.request({url:r,method:t,data:i,headers:o})).data}catch(i){if(i.isAxiosError&&!i.response)throw new Error(`Network error: ${i.message}`);if(i.response){const a=i.response.status,l=i.response.data?.message||i.response.statusText;throw new Error(`API Error (${a}): ${l}`)}throw new Error(i.message||"Unknown error occurred during API request")}}async signup(t){const{name:r,email:n,password:o}=t;if(!r||!n||!o)throw new Error("signup: 'name', 'email', and 'password' are required");return this.request("POST","/users/signup",t)}async login(t){const{email:r,password:n,appId:o}=t;if(!r||!n)throw new Error("login: 'email' and 'password' are required");return this.request("POST","/users/login",{email:r,password:n,appId:o||this.appId})}async updateUser(t){const{userId:r,appId:n}=t;if(!r)throw new Error("updateUser: 'userId' is required");return this.request("PUT",`/users/update/${r}`,{...t,appId:n||this.appId})}async changePassword(t){const{userId:r,currentPassword:n,newPassword:o,appId:i}=t;if(!r)throw new Error("changePassword: 'userId' is required");if(!n||!o)throw new Error("changePassword: both 'currentPassword' and 'newPassword' are required");return this.request("PUT",`/users/change-password/${r}`,{currentPassword:n,newPassword:o,appId:i||this.appId})}async deleteUser(t){const{userId:r,appId:n}=t;if(!r)throw new Error("deleteUser: 'userId' is required");return this.request("DELETE",`/users/delete/${r}`,{appId:n||this.appId})}async getProfile(t){const{token:r}=t;if(!r)throw new Error("getProfile: 'token' is required");return this.request("GET","/users/profile",{},{Authorization:`Bearer ${r}`})}async sendVerifyOTP(t){const{token:r,appId:n}=t;if(!r)throw new Error("sendVerifyOTP: 'token' is required");return this.request("POST","/users/send-verify-otp",{appId:n||this.appId},{Authorization:`Bearer ${r}`})}async verifyEmail(t){const{token:r,otp:n,appId:o}=t;if(!r)throw new Error("verifyEmail: 'token' is required");if(!n)throw new Error("verifyEmail: 'otp' is required");return this.request("POST","/users/verify-email",{otp:n,appId:o||this.appId},{Authorization:`Bearer ${r}`})}async forgotPassword(t){const{email:r,appId:n}=t;if(!r)throw new Error("forgotPassword: 'email' is required");return this.request("POST","/users/forgot-password",{email:r,appId:n||this.appId})}async resetPassword(t){const{email:r,otp:n,newPassword:o,appId:i}=t;if(!r||!n||!o)throw new Error("resetPassword: 'email', 'otp' and 'newPassword' are required");return this.request("POST","/users/reset-password",{email:r,otp:n,newPassword:o,appId:i||this.appId})}async getUserData(t){const{userId:r}=t;if(!r)throw new Error("getUserData: 'userId' is required");return this.request("GET",`/users/${r}/data`)}async getSingleUserData(t){const{userId:r,dataId:n}=t;if(!r||!n)throw new Error("getSingleUserData: 'userId' and 'dataId' are required");return this.request("GET",`/users/${r}/data/${n}`)}async addUserData(t){const{userId:r,data:n}=t;if(!r)throw new Error("addUserData: 'userId' is required");if(!n)throw new Error("addUserData: 'data' is required");return this.request("POST",`/users/${r}/data`,n)}async updateUserData(t){const{userId:r,dataId:n,data:o}=t;if(!r||!n)throw new Error("updateUserData: 'userId' and 'dataId' are required");if(!o)throw new Error("updateUserData: 'data' is required");return this.request("PUT",`/users/${r}/data/${n}`,o)}async deleteUserData(t){const{userId:r,dataId:n}=t;if(!r||!n)throw new Error("deleteUserData: 'userId' and 'dataId' are required");return this.request("DELETE",`/users/${r}/data/${n}`)}}var Ne={exports:{}},be={};/**
1
+ (function(Q,k){typeof exports=="object"&&typeof module<"u"?k(exports,require("react")):typeof define=="function"&&define.amd?define(["exports","react"],k):(Q=typeof globalThis<"u"?globalThis:Q||self,k(Q.NeuctraAuthix={},Q.React))})(this,(function(Q,k){"use strict";function nt(e,t){return function(){return e.apply(t,arguments)}}const{toString:er}=Object.prototype,{getPrototypeOf:Me}=Object,{iterator:Re,toStringTag:st}=Symbol,Pe=(e=>t=>{const r=er.call(t);return e[r]||(e[r]=r.slice(8,-1).toLowerCase())})(Object.create(null)),ne=e=>(e=e.toLowerCase(),t=>Pe(t)===e),Ie=e=>t=>typeof t===e,{isArray:xe}=Array,he=Ie("undefined");function be(e){return e!==null&&!he(e)&&e.constructor!==null&&!he(e.constructor)&&ee(e.constructor.isBuffer)&&e.constructor.isBuffer(e)}const ot=ne("ArrayBuffer");function tr(e){let t;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?t=ArrayBuffer.isView(e):t=e&&e.buffer&&ot(e.buffer),t}const rr=Ie("string"),ee=Ie("function"),at=Ie("number"),we=e=>e!==null&&typeof e=="object",nr=e=>e===!0||e===!1,Oe=e=>{if(Pe(e)!=="object")return!1;const t=Me(e);return(t===null||t===Object.prototype||Object.getPrototypeOf(t)===null)&&!(st in e)&&!(Re in e)},sr=e=>{if(!we(e)||be(e))return!1;try{return Object.keys(e).length===0&&Object.getPrototypeOf(e)===Object.prototype}catch{return!1}},or=ne("Date"),ar=ne("File"),ir=ne("Blob"),lr=ne("FileList"),cr=e=>we(e)&&ee(e.pipe),dr=e=>{let t;return e&&(typeof FormData=="function"&&e instanceof FormData||ee(e.append)&&((t=Pe(e))==="formdata"||t==="object"&&ee(e.toString)&&e.toString()==="[object FormData]"))},ur=ne("URLSearchParams"),[pr,fr,xr,hr]=["ReadableStream","Request","Response","Headers"].map(ne),gr=e=>e.trim?e.trim():e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function Se(e,t,{allOwnKeys:r=!1}={}){if(e===null||typeof e>"u")return;let s,o;if(typeof e!="object"&&(e=[e]),xe(e))for(s=0,o=e.length;s<o;s++)t.call(null,e[s],s,e);else{if(be(e))return;const i=r?Object.getOwnPropertyNames(e):Object.keys(e),a=i.length;let l;for(s=0;s<a;s++)l=i[s],t.call(null,e[l],l,e)}}function it(e,t){if(be(e))return null;t=t.toLowerCase();const r=Object.keys(e);let s=r.length,o;for(;s-- >0;)if(o=r[s],t===o.toLowerCase())return o;return null}const ie=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global,lt=e=>!he(e)&&e!==ie;function We(){const{caseless:e,skipUndefined:t}=lt(this)&&this||{},r={},s=(o,i)=>{const a=e&&it(r,i)||i;Oe(r[a])&&Oe(o)?r[a]=We(r[a],o):Oe(o)?r[a]=We({},o):xe(o)?r[a]=o.slice():(!t||!he(o))&&(r[a]=o)};for(let o=0,i=arguments.length;o<i;o++)arguments[o]&&Se(arguments[o],s);return r}const mr=(e,t,r,{allOwnKeys:s}={})=>(Se(t,(o,i)=>{r&&ee(o)?e[i]=nt(o,r):e[i]=o},{allOwnKeys:s}),e),yr=e=>(e.charCodeAt(0)===65279&&(e=e.slice(1)),e),br=(e,t,r,s)=>{e.prototype=Object.create(t.prototype,s),e.prototype.constructor=e,Object.defineProperty(e,"super",{value:t.prototype}),r&&Object.assign(e.prototype,r)},wr=(e,t,r,s)=>{let o,i,a;const l={};if(t=t||{},e==null)return t;do{for(o=Object.getOwnPropertyNames(e),i=o.length;i-- >0;)a=o[i],(!s||s(a,e,t))&&!l[a]&&(t[a]=e[a],l[a]=!0);e=r!==!1&&Me(e)}while(e&&(!r||r(e,t))&&e!==Object.prototype);return t},Sr=(e,t,r)=>{e=String(e),(r===void 0||r>e.length)&&(r=e.length),r-=t.length;const s=e.indexOf(t,r);return s!==-1&&s===r},jr=e=>{if(!e)return null;if(xe(e))return e;let t=e.length;if(!at(t))return null;const r=new Array(t);for(;t-- >0;)r[t]=e[t];return r},vr=(e=>t=>e&&t instanceof e)(typeof Uint8Array<"u"&&Me(Uint8Array)),kr=(e,t)=>{const s=(e&&e[Re]).call(e);let o;for(;(o=s.next())&&!o.done;){const i=o.value;t.call(e,i[0],i[1])}},Er=(e,t)=>{let r;const s=[];for(;(r=e.exec(t))!==null;)s.push(r);return s},Tr=ne("HTMLFormElement"),Cr=e=>e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(r,s,o){return s.toUpperCase()+o}),ct=(({hasOwnProperty:e})=>(t,r)=>e.call(t,r))(Object.prototype),Rr=ne("RegExp"),dt=(e,t)=>{const r=Object.getOwnPropertyDescriptors(e),s={};Se(r,(o,i)=>{let a;(a=t(o,i,e))!==!1&&(s[i]=a||o)}),Object.defineProperties(e,s)},Pr=e=>{dt(e,(t,r)=>{if(ee(e)&&["arguments","caller","callee"].indexOf(r)!==-1)return!1;const s=e[r];if(ee(s)){if(t.enumerable=!1,"writable"in t){t.writable=!1;return}t.set||(t.set=()=>{throw Error("Can not rewrite read-only method '"+r+"'")})}})},Ir=(e,t)=>{const r={},s=o=>{o.forEach(i=>{r[i]=!0})};return xe(e)?s(e):s(String(e).split(t)),r},Or=()=>{},_r=(e,t)=>e!=null&&Number.isFinite(e=+e)?e:t;function Ar(e){return!!(e&&ee(e.append)&&e[st]==="FormData"&&e[Re])}const zr=e=>{const t=new Array(10),r=(s,o)=>{if(we(s)){if(t.indexOf(s)>=0)return;if(be(s))return s;if(!("toJSON"in s)){t[o]=s;const i=xe(s)?[]:{};return Se(s,(a,l)=>{const f=r(a,o+1);!he(f)&&(i[l]=f)}),t[o]=void 0,i}}return s};return r(e,0)},Nr=ne("AsyncFunction"),Ur=e=>e&&(we(e)||ee(e))&&ee(e.then)&&ee(e.catch),ut=((e,t)=>e?setImmediate:t?((r,s)=>(ie.addEventListener("message",({source:o,data:i})=>{o===ie&&i===r&&s.length&&s.shift()()},!1),o=>{s.push(o),ie.postMessage(r,"*")}))(`axios@${Math.random()}`,[]):r=>setTimeout(r))(typeof setImmediate=="function",ee(ie.postMessage)),Dr=typeof queueMicrotask<"u"?queueMicrotask.bind(ie):typeof process<"u"&&process.nextTick||ut,d={isArray:xe,isArrayBuffer:ot,isBuffer:be,isFormData:dr,isArrayBufferView:tr,isString:rr,isNumber:at,isBoolean:nr,isObject:we,isPlainObject:Oe,isEmptyObject:sr,isReadableStream:pr,isRequest:fr,isResponse:xr,isHeaders:hr,isUndefined:he,isDate:or,isFile:ar,isBlob:ir,isRegExp:Rr,isFunction:ee,isStream:cr,isURLSearchParams:ur,isTypedArray:vr,isFileList:lr,forEach:Se,merge:We,extend:mr,trim:gr,stripBOM:yr,inherits:br,toFlatObject:wr,kindOf:Pe,kindOfTest:ne,endsWith:Sr,toArray:jr,forEachEntry:kr,matchAll:Er,isHTMLForm:Tr,hasOwnProperty:ct,hasOwnProp:ct,reduceDescriptors:dt,freezeMethods:Pr,toObjectSet:Ir,toCamelCase:Cr,noop:Or,toFiniteNumber:_r,findKey:it,global:ie,isContextDefined:lt,isSpecCompliantForm:Ar,toJSONObject:zr,isAsyncFn:Nr,isThenable:Ur,setImmediate:ut,asap:Dr,isIterable:e=>e!=null&&ee(e[Re])};function N(e,t,r,s,o){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack,this.message=e,this.name="AxiosError",t&&(this.code=t),r&&(this.config=r),s&&(this.request=s),o&&(this.response=o,this.status=o.status?o.status:null)}d.inherits(N,Error,{toJSON:function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:d.toJSONObject(this.config),code:this.code,status:this.status}}});const pt=N.prototype,ft={};["ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","ECONNABORTED","ETIMEDOUT","ERR_NETWORK","ERR_FR_TOO_MANY_REDIRECTS","ERR_DEPRECATED","ERR_BAD_RESPONSE","ERR_BAD_REQUEST","ERR_CANCELED","ERR_NOT_SUPPORT","ERR_INVALID_URL"].forEach(e=>{ft[e]={value:e}}),Object.defineProperties(N,ft),Object.defineProperty(pt,"isAxiosError",{value:!0}),N.from=(e,t,r,s,o,i)=>{const a=Object.create(pt);d.toFlatObject(e,a,function(u){return u!==Error.prototype},p=>p!=="isAxiosError");const l=e&&e.message?e.message:"Error",f=t==null&&e?e.code:t;return N.call(a,l,f,r,s,o),e&&a.cause==null&&Object.defineProperty(a,"cause",{value:e,configurable:!0}),a.name=e&&e.name||"Error",i&&Object.assign(a,i),a};const Fr=null;function $e(e){return d.isPlainObject(e)||d.isArray(e)}function xt(e){return d.endsWith(e,"[]")?e.slice(0,-2):e}function ht(e,t,r){return e?e.concat(t).map(function(o,i){return o=xt(o),!r&&i?"["+o+"]":o}).join(r?".":""):t}function Lr(e){return d.isArray(e)&&!e.some($e)}const Br=d.toFlatObject(d,{},null,function(t){return/^is[A-Z]/.test(t)});function _e(e,t,r){if(!d.isObject(e))throw new TypeError("target must be an object");t=t||new FormData,r=d.toFlatObject(r,{metaTokens:!0,dots:!1,indexes:!1},!1,function(b,w){return!d.isUndefined(w[b])});const s=r.metaTokens,o=r.visitor||u,i=r.dots,a=r.indexes,f=(r.Blob||typeof Blob<"u"&&Blob)&&d.isSpecCompliantForm(t);if(!d.isFunction(o))throw new TypeError("visitor must be a function");function p(c){if(c===null)return"";if(d.isDate(c))return c.toISOString();if(d.isBoolean(c))return c.toString();if(!f&&d.isBlob(c))throw new N("Blob is not supported. Use a Buffer instead.");return d.isArrayBuffer(c)||d.isTypedArray(c)?f&&typeof Blob=="function"?new Blob([c]):Buffer.from(c):c}function u(c,b,w){let U=c;if(c&&!w&&typeof c=="object"){if(d.endsWith(b,"{}"))b=s?b:b.slice(0,-2),c=JSON.stringify(c);else if(d.isArray(c)&&Lr(c)||(d.isFileList(c)||d.endsWith(b,"[]"))&&(U=d.toArray(c)))return b=xt(b),U.forEach(function(I,C){!(d.isUndefined(I)||I===null)&&t.append(a===!0?ht([b],C,i):a===null?b:b+"[]",p(I))}),!1}return $e(c)?!0:(t.append(ht(w,b,i),p(c)),!1)}const y=[],T=Object.assign(Br,{defaultVisitor:u,convertValue:p,isVisitable:$e});function E(c,b){if(!d.isUndefined(c)){if(y.indexOf(c)!==-1)throw Error("Circular reference detected in "+b.join("."));y.push(c),d.forEach(c,function(U,M){(!(d.isUndefined(U)||U===null)&&o.call(t,U,d.isString(M)?M.trim():M,b,T))===!0&&E(U,b?b.concat(M):[M])}),y.pop()}}if(!d.isObject(e))throw new TypeError("data must be an object");return E(e),t}function gt(e){const t={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(e).replace(/[!'()~]|%20|%00/g,function(s){return t[s]})}function He(e,t){this._pairs=[],e&&_e(e,this,t)}const mt=He.prototype;mt.append=function(t,r){this._pairs.push([t,r])},mt.toString=function(t){const r=t?function(s){return t.call(this,s,gt)}:gt;return this._pairs.map(function(o){return r(o[0])+"="+r(o[1])},"").join("&")};function Mr(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+")}function yt(e,t,r){if(!t)return e;const s=r&&r.encode||Mr;d.isFunction(r)&&(r={serialize:r});const o=r&&r.serialize;let i;if(o?i=o(t,r):i=d.isURLSearchParams(t)?t.toString():new He(t,r).toString(s),i){const a=e.indexOf("#");a!==-1&&(e=e.slice(0,a)),e+=(e.indexOf("?")===-1?"?":"&")+i}return e}class bt{constructor(){this.handlers=[]}use(t,r,s){return this.handlers.push({fulfilled:t,rejected:r,synchronous:s?s.synchronous:!1,runWhen:s?s.runWhen:null}),this.handlers.length-1}eject(t){this.handlers[t]&&(this.handlers[t]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(t){d.forEach(this.handlers,function(s){s!==null&&t(s)})}}const wt={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1},Wr={isBrowser:!0,classes:{URLSearchParams:typeof URLSearchParams<"u"?URLSearchParams:He,FormData:typeof FormData<"u"?FormData:null,Blob:typeof Blob<"u"?Blob:null},protocols:["http","https","file","blob","url","data"]},Ve=typeof window<"u"&&typeof document<"u",qe=typeof navigator=="object"&&navigator||void 0,$r=Ve&&(!qe||["ReactNative","NativeScript","NS"].indexOf(qe.product)<0),Hr=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function",Vr=Ve&&window.location.href||"http://localhost",Z={...Object.freeze(Object.defineProperty({__proto__:null,hasBrowserEnv:Ve,hasStandardBrowserEnv:$r,hasStandardBrowserWebWorkerEnv:Hr,navigator:qe,origin:Vr},Symbol.toStringTag,{value:"Module"})),...Wr};function qr(e,t){return _e(e,new Z.classes.URLSearchParams,{visitor:function(r,s,o,i){return Z.isNode&&d.isBuffer(r)?(this.append(s,r.toString("base64")),!1):i.defaultVisitor.apply(this,arguments)},...t})}function Yr(e){return d.matchAll(/\w+|\[(\w*)]/g,e).map(t=>t[0]==="[]"?"":t[1]||t[0])}function Kr(e){const t={},r=Object.keys(e);let s;const o=r.length;let i;for(s=0;s<o;s++)i=r[s],t[i]=e[i];return t}function St(e){function t(r,s,o,i){let a=r[i++];if(a==="__proto__")return!0;const l=Number.isFinite(+a),f=i>=r.length;return a=!a&&d.isArray(o)?o.length:a,f?(d.hasOwnProp(o,a)?o[a]=[o[a],s]:o[a]=s,!l):((!o[a]||!d.isObject(o[a]))&&(o[a]=[]),t(r,s,o[a],i)&&d.isArray(o[a])&&(o[a]=Kr(o[a])),!l)}if(d.isFormData(e)&&d.isFunction(e.entries)){const r={};return d.forEachEntry(e,(s,o)=>{t(Yr(s),o,r,0)}),r}return null}function Jr(e,t,r){if(d.isString(e))try{return(t||JSON.parse)(e),d.trim(e)}catch(s){if(s.name!=="SyntaxError")throw s}return(r||JSON.stringify)(e)}const je={transitional:wt,adapter:["xhr","http","fetch"],transformRequest:[function(t,r){const s=r.getContentType()||"",o=s.indexOf("application/json")>-1,i=d.isObject(t);if(i&&d.isHTMLForm(t)&&(t=new FormData(t)),d.isFormData(t))return o?JSON.stringify(St(t)):t;if(d.isArrayBuffer(t)||d.isBuffer(t)||d.isStream(t)||d.isFile(t)||d.isBlob(t)||d.isReadableStream(t))return t;if(d.isArrayBufferView(t))return t.buffer;if(d.isURLSearchParams(t))return r.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),t.toString();let l;if(i){if(s.indexOf("application/x-www-form-urlencoded")>-1)return qr(t,this.formSerializer).toString();if((l=d.isFileList(t))||s.indexOf("multipart/form-data")>-1){const f=this.env&&this.env.FormData;return _e(l?{"files[]":t}:t,f&&new f,this.formSerializer)}}return i||o?(r.setContentType("application/json",!1),Jr(t)):t}],transformResponse:[function(t){const r=this.transitional||je.transitional,s=r&&r.forcedJSONParsing,o=this.responseType==="json";if(d.isResponse(t)||d.isReadableStream(t))return t;if(t&&d.isString(t)&&(s&&!this.responseType||o)){const a=!(r&&r.silentJSONParsing)&&o;try{return JSON.parse(t,this.parseReviver)}catch(l){if(a)throw l.name==="SyntaxError"?N.from(l,N.ERR_BAD_RESPONSE,this,null,this.response):l}}return t}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:Z.classes.FormData,Blob:Z.classes.Blob},validateStatus:function(t){return t>=200&&t<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};d.forEach(["delete","get","head","post","put","patch"],e=>{je.headers[e]={}});const Xr=d.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),Gr=e=>{const t={};let r,s,o;return e&&e.split(`
2
+ `).forEach(function(a){o=a.indexOf(":"),r=a.substring(0,o).trim().toLowerCase(),s=a.substring(o+1).trim(),!(!r||t[r]&&Xr[r])&&(r==="set-cookie"?t[r]?t[r].push(s):t[r]=[s]:t[r]=t[r]?t[r]+", "+s:s)}),t},jt=Symbol("internals");function ve(e){return e&&String(e).trim().toLowerCase()}function Ae(e){return e===!1||e==null?e:d.isArray(e)?e.map(Ae):String(e)}function Zr(e){const t=Object.create(null),r=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;let s;for(;s=r.exec(e);)t[s[1]]=s[2];return t}const Qr=e=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(e.trim());function Ye(e,t,r,s,o){if(d.isFunction(s))return s.call(this,t,r);if(o&&(t=r),!!d.isString(t)){if(d.isString(s))return t.indexOf(s)!==-1;if(d.isRegExp(s))return s.test(t)}}function en(e){return e.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(t,r,s)=>r.toUpperCase()+s)}function tn(e,t){const r=d.toCamelCase(" "+t);["get","set","has"].forEach(s=>{Object.defineProperty(e,s+r,{value:function(o,i,a){return this[s].call(this,t,o,i,a)},configurable:!0})})}let te=class{constructor(t){t&&this.set(t)}set(t,r,s){const o=this;function i(l,f,p){const u=ve(f);if(!u)throw new Error("header name must be a non-empty string");const y=d.findKey(o,u);(!y||o[y]===void 0||p===!0||p===void 0&&o[y]!==!1)&&(o[y||f]=Ae(l))}const a=(l,f)=>d.forEach(l,(p,u)=>i(p,u,f));if(d.isPlainObject(t)||t instanceof this.constructor)a(t,r);else if(d.isString(t)&&(t=t.trim())&&!Qr(t))a(Gr(t),r);else if(d.isObject(t)&&d.isIterable(t)){let l={},f,p;for(const u of t){if(!d.isArray(u))throw TypeError("Object iterator must return a key-value pair");l[p=u[0]]=(f=l[p])?d.isArray(f)?[...f,u[1]]:[f,u[1]]:u[1]}a(l,r)}else t!=null&&i(r,t,s);return this}get(t,r){if(t=ve(t),t){const s=d.findKey(this,t);if(s){const o=this[s];if(!r)return o;if(r===!0)return Zr(o);if(d.isFunction(r))return r.call(this,o,s);if(d.isRegExp(r))return r.exec(o);throw new TypeError("parser must be boolean|regexp|function")}}}has(t,r){if(t=ve(t),t){const s=d.findKey(this,t);return!!(s&&this[s]!==void 0&&(!r||Ye(this,this[s],s,r)))}return!1}delete(t,r){const s=this;let o=!1;function i(a){if(a=ve(a),a){const l=d.findKey(s,a);l&&(!r||Ye(s,s[l],l,r))&&(delete s[l],o=!0)}}return d.isArray(t)?t.forEach(i):i(t),o}clear(t){const r=Object.keys(this);let s=r.length,o=!1;for(;s--;){const i=r[s];(!t||Ye(this,this[i],i,t,!0))&&(delete this[i],o=!0)}return o}normalize(t){const r=this,s={};return d.forEach(this,(o,i)=>{const a=d.findKey(s,i);if(a){r[a]=Ae(o),delete r[i];return}const l=t?en(i):String(i).trim();l!==i&&delete r[i],r[l]=Ae(o),s[l]=!0}),this}concat(...t){return this.constructor.concat(this,...t)}toJSON(t){const r=Object.create(null);return d.forEach(this,(s,o)=>{s!=null&&s!==!1&&(r[o]=t&&d.isArray(s)?s.join(", "):s)}),r}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map(([t,r])=>t+": "+r).join(`
3
+ `)}getSetCookie(){return this.get("set-cookie")||[]}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(t){return t instanceof this?t:new this(t)}static concat(t,...r){const s=new this(t);return r.forEach(o=>s.set(o)),s}static accessor(t){const s=(this[jt]=this[jt]={accessors:{}}).accessors,o=this.prototype;function i(a){const l=ve(a);s[l]||(tn(o,a),s[l]=!0)}return d.isArray(t)?t.forEach(i):i(t),this}};te.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]),d.reduceDescriptors(te.prototype,({value:e},t)=>{let r=t[0].toUpperCase()+t.slice(1);return{get:()=>e,set(s){this[r]=s}}}),d.freezeMethods(te);function Ke(e,t){const r=this||je,s=t||r,o=te.from(s.headers);let i=s.data;return d.forEach(e,function(l){i=l.call(r,i,o.normalize(),t?t.status:void 0)}),o.normalize(),i}function vt(e){return!!(e&&e.__CANCEL__)}function ge(e,t,r){N.call(this,e??"canceled",N.ERR_CANCELED,t,r),this.name="CanceledError"}d.inherits(ge,N,{__CANCEL__:!0});function kt(e,t,r){const s=r.config.validateStatus;!r.status||!s||s(r.status)?e(r):t(new N("Request failed with status code "+r.status,[N.ERR_BAD_REQUEST,N.ERR_BAD_RESPONSE][Math.floor(r.status/100)-4],r.config,r.request,r))}function rn(e){const t=/^([-+\w]{1,25})(:?\/\/|:)/.exec(e);return t&&t[1]||""}function nn(e,t){e=e||10;const r=new Array(e),s=new Array(e);let o=0,i=0,a;return t=t!==void 0?t:1e3,function(f){const p=Date.now(),u=s[i];a||(a=p),r[o]=f,s[o]=p;let y=i,T=0;for(;y!==o;)T+=r[y++],y=y%e;if(o=(o+1)%e,o===i&&(i=(i+1)%e),p-a<t)return;const E=u&&p-u;return E?Math.round(T*1e3/E):void 0}}function sn(e,t){let r=0,s=1e3/t,o,i;const a=(p,u=Date.now())=>{r=u,o=null,i&&(clearTimeout(i),i=null),e(...p)};return[(...p)=>{const u=Date.now(),y=u-r;y>=s?a(p,u):(o=p,i||(i=setTimeout(()=>{i=null,a(o)},s-y)))},()=>o&&a(o)]}const ze=(e,t,r=3)=>{let s=0;const o=nn(50,250);return sn(i=>{const a=i.loaded,l=i.lengthComputable?i.total:void 0,f=a-s,p=o(f),u=a<=l;s=a;const y={loaded:a,total:l,progress:l?a/l:void 0,bytes:f,rate:p||void 0,estimated:p&&l&&u?(l-a)/p:void 0,event:i,lengthComputable:l!=null,[t?"download":"upload"]:!0};e(y)},r)},Et=(e,t)=>{const r=e!=null;return[s=>t[0]({lengthComputable:r,total:e,loaded:s}),t[1]]},Tt=e=>(...t)=>d.asap(()=>e(...t)),on=Z.hasStandardBrowserEnv?((e,t)=>r=>(r=new URL(r,Z.origin),e.protocol===r.protocol&&e.host===r.host&&(t||e.port===r.port)))(new URL(Z.origin),Z.navigator&&/(msie|trident)/i.test(Z.navigator.userAgent)):()=>!0,an=Z.hasStandardBrowserEnv?{write(e,t,r,s,o,i){const a=[e+"="+encodeURIComponent(t)];d.isNumber(r)&&a.push("expires="+new Date(r).toGMTString()),d.isString(s)&&a.push("path="+s),d.isString(o)&&a.push("domain="+o),i===!0&&a.push("secure"),document.cookie=a.join("; ")},read(e){const t=document.cookie.match(new RegExp("(^|;\\s*)("+e+")=([^;]*)"));return t?decodeURIComponent(t[3]):null},remove(e){this.write(e,"",Date.now()-864e5)}}:{write(){},read(){return null},remove(){}};function ln(e){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(e)}function cn(e,t){return t?e.replace(/\/?\/$/,"")+"/"+t.replace(/^\/+/,""):e}function Ct(e,t,r){let s=!ln(t);return e&&(s||r==!1)?cn(e,t):t}const Rt=e=>e instanceof te?{...e}:e;function le(e,t){t=t||{};const r={};function s(p,u,y,T){return d.isPlainObject(p)&&d.isPlainObject(u)?d.merge.call({caseless:T},p,u):d.isPlainObject(u)?d.merge({},u):d.isArray(u)?u.slice():u}function o(p,u,y,T){if(d.isUndefined(u)){if(!d.isUndefined(p))return s(void 0,p,y,T)}else return s(p,u,y,T)}function i(p,u){if(!d.isUndefined(u))return s(void 0,u)}function a(p,u){if(d.isUndefined(u)){if(!d.isUndefined(p))return s(void 0,p)}else return s(void 0,u)}function l(p,u,y){if(y in t)return s(p,u);if(y in e)return s(void 0,p)}const f={url:i,method:i,data:i,baseURL:a,transformRequest:a,transformResponse:a,paramsSerializer:a,timeout:a,timeoutMessage:a,withCredentials:a,withXSRFToken:a,adapter:a,responseType:a,xsrfCookieName:a,xsrfHeaderName:a,onUploadProgress:a,onDownloadProgress:a,decompress:a,maxContentLength:a,maxBodyLength:a,beforeRedirect:a,transport:a,httpAgent:a,httpsAgent:a,cancelToken:a,socketPath:a,responseEncoding:a,validateStatus:l,headers:(p,u,y)=>o(Rt(p),Rt(u),y,!0)};return d.forEach(Object.keys({...e,...t}),function(u){const y=f[u]||o,T=y(e[u],t[u],u);d.isUndefined(T)&&y!==l||(r[u]=T)}),r}const Pt=e=>{const t=le({},e);let{data:r,withXSRFToken:s,xsrfHeaderName:o,xsrfCookieName:i,headers:a,auth:l}=t;if(t.headers=a=te.from(a),t.url=yt(Ct(t.baseURL,t.url,t.allowAbsoluteUrls),e.params,e.paramsSerializer),l&&a.set("Authorization","Basic "+btoa((l.username||"")+":"+(l.password?unescape(encodeURIComponent(l.password)):""))),d.isFormData(r)){if(Z.hasStandardBrowserEnv||Z.hasStandardBrowserWebWorkerEnv)a.setContentType(void 0);else if(d.isFunction(r.getHeaders)){const f=r.getHeaders(),p=["content-type","content-length"];Object.entries(f).forEach(([u,y])=>{p.includes(u.toLowerCase())&&a.set(u,y)})}}if(Z.hasStandardBrowserEnv&&(s&&d.isFunction(s)&&(s=s(t)),s||s!==!1&&on(t.url))){const f=o&&i&&an.read(i);f&&a.set(o,f)}return t},dn=typeof XMLHttpRequest<"u"&&function(e){return new Promise(function(r,s){const o=Pt(e);let i=o.data;const a=te.from(o.headers).normalize();let{responseType:l,onUploadProgress:f,onDownloadProgress:p}=o,u,y,T,E,c;function b(){E&&E(),c&&c(),o.cancelToken&&o.cancelToken.unsubscribe(u),o.signal&&o.signal.removeEventListener("abort",u)}let w=new XMLHttpRequest;w.open(o.method.toUpperCase(),o.url,!0),w.timeout=o.timeout;function U(){if(!w)return;const I=te.from("getAllResponseHeaders"in w&&w.getAllResponseHeaders()),L={data:!l||l==="text"||l==="json"?w.responseText:w.response,status:w.status,statusText:w.statusText,headers:I,config:e,request:w};kt(function(z){r(z),b()},function(z){s(z),b()},L),w=null}"onloadend"in w?w.onloadend=U:w.onreadystatechange=function(){!w||w.readyState!==4||w.status===0&&!(w.responseURL&&w.responseURL.indexOf("file:")===0)||setTimeout(U)},w.onabort=function(){w&&(s(new N("Request aborted",N.ECONNABORTED,e,w)),w=null)},w.onerror=function(C){const L=C&&C.message?C.message:"Network Error",m=new N(L,N.ERR_NETWORK,e,w);m.event=C||null,s(m),w=null},w.ontimeout=function(){let C=o.timeout?"timeout of "+o.timeout+"ms exceeded":"timeout exceeded";const L=o.transitional||wt;o.timeoutErrorMessage&&(C=o.timeoutErrorMessage),s(new N(C,L.clarifyTimeoutError?N.ETIMEDOUT:N.ECONNABORTED,e,w)),w=null},i===void 0&&a.setContentType(null),"setRequestHeader"in w&&d.forEach(a.toJSON(),function(C,L){w.setRequestHeader(L,C)}),d.isUndefined(o.withCredentials)||(w.withCredentials=!!o.withCredentials),l&&l!=="json"&&(w.responseType=o.responseType),p&&([T,c]=ze(p,!0),w.addEventListener("progress",T)),f&&w.upload&&([y,E]=ze(f),w.upload.addEventListener("progress",y),w.upload.addEventListener("loadend",E)),(o.cancelToken||o.signal)&&(u=I=>{w&&(s(!I||I.type?new ge(null,e,w):I),w.abort(),w=null)},o.cancelToken&&o.cancelToken.subscribe(u),o.signal&&(o.signal.aborted?u():o.signal.addEventListener("abort",u)));const M=rn(o.url);if(M&&Z.protocols.indexOf(M)===-1){s(new N("Unsupported protocol "+M+":",N.ERR_BAD_REQUEST,e));return}w.send(i||null)})},un=(e,t)=>{const{length:r}=e=e?e.filter(Boolean):[];if(t||r){let s=new AbortController,o;const i=function(p){if(!o){o=!0,l();const u=p instanceof Error?p:this.reason;s.abort(u instanceof N?u:new ge(u instanceof Error?u.message:u))}};let a=t&&setTimeout(()=>{a=null,i(new N(`timeout ${t} of ms exceeded`,N.ETIMEDOUT))},t);const l=()=>{e&&(a&&clearTimeout(a),a=null,e.forEach(p=>{p.unsubscribe?p.unsubscribe(i):p.removeEventListener("abort",i)}),e=null)};e.forEach(p=>p.addEventListener("abort",i));const{signal:f}=s;return f.unsubscribe=()=>d.asap(l),f}},pn=function*(e,t){let r=e.byteLength;if(r<t){yield e;return}let s=0,o;for(;s<r;)o=s+t,yield e.slice(s,o),s=o},fn=async function*(e,t){for await(const r of xn(e))yield*pn(r,t)},xn=async function*(e){if(e[Symbol.asyncIterator]){yield*e;return}const t=e.getReader();try{for(;;){const{done:r,value:s}=await t.read();if(r)break;yield s}}finally{await t.cancel()}},It=(e,t,r,s)=>{const o=fn(e,t);let i=0,a,l=f=>{a||(a=!0,s&&s(f))};return new ReadableStream({async pull(f){try{const{done:p,value:u}=await o.next();if(p){l(),f.close();return}let y=u.byteLength;if(r){let T=i+=y;r(T)}f.enqueue(new Uint8Array(u))}catch(p){throw l(p),p}},cancel(f){return l(f),o.return()}},{highWaterMark:2})},Ot=64*1024,{isFunction:Ne}=d,hn=(({Request:e,Response:t})=>({Request:e,Response:t}))(d.global),{ReadableStream:_t,TextEncoder:At}=d.global,zt=(e,...t)=>{try{return!!e(...t)}catch{return!1}},gn=e=>{e=d.merge.call({skipUndefined:!0},hn,e);const{fetch:t,Request:r,Response:s}=e,o=t?Ne(t):typeof fetch=="function",i=Ne(r),a=Ne(s);if(!o)return!1;const l=o&&Ne(_t),f=o&&(typeof At=="function"?(c=>b=>c.encode(b))(new At):async c=>new Uint8Array(await new r(c).arrayBuffer())),p=i&&l&&zt(()=>{let c=!1;const b=new r(Z.origin,{body:new _t,method:"POST",get duplex(){return c=!0,"half"}}).headers.has("Content-Type");return c&&!b}),u=a&&l&&zt(()=>d.isReadableStream(new s("").body)),y={stream:u&&(c=>c.body)};o&&["text","arrayBuffer","blob","formData","stream"].forEach(c=>{!y[c]&&(y[c]=(b,w)=>{let U=b&&b[c];if(U)return U.call(b);throw new N(`Response type '${c}' is not supported`,N.ERR_NOT_SUPPORT,w)})});const T=async c=>{if(c==null)return 0;if(d.isBlob(c))return c.size;if(d.isSpecCompliantForm(c))return(await new r(Z.origin,{method:"POST",body:c}).arrayBuffer()).byteLength;if(d.isArrayBufferView(c)||d.isArrayBuffer(c))return c.byteLength;if(d.isURLSearchParams(c)&&(c=c+""),d.isString(c))return(await f(c)).byteLength},E=async(c,b)=>{const w=d.toFiniteNumber(c.getContentLength());return w??T(b)};return async c=>{let{url:b,method:w,data:U,signal:M,cancelToken:I,timeout:C,onDownloadProgress:L,onUploadProgress:m,responseType:z,headers:v,withCredentials:D="same-origin",fetchOptions:H}=Pt(c),A=t||fetch;z=z?(z+"").toLowerCase():"text";let X=un([M,I&&I.toAbortSignal()],C),V=null;const P=X&&X.unsubscribe&&(()=>{X.unsubscribe()});let K;try{if(m&&p&&w!=="get"&&w!=="head"&&(K=await E(v,U))!==0){let R=new r(b,{method:"POST",body:U,duplex:"half"}),F;if(d.isFormData(U)&&(F=R.headers.get("content-type"))&&v.setContentType(F),R.body){const[B,h]=Et(K,ze(Tt(m)));U=It(R.body,Ot,B,h)}}d.isString(D)||(D=D?"include":"omit");const J=i&&"credentials"in r.prototype,_={...H,signal:X,method:w.toUpperCase(),headers:v.normalize().toJSON(),body:U,duplex:"half",credentials:J?D:void 0};V=i&&new r(b,_);let S=await(i?A(V,H):A(b,_));const Y=u&&(z==="stream"||z==="response");if(u&&(L||Y&&P)){const R={};["status","statusText","headers"].forEach(g=>{R[g]=S[g]});const F=d.toFiniteNumber(S.headers.get("content-length")),[B,h]=L&&Et(F,ze(Tt(L),!0))||[];S=new s(It(S.body,Ot,B,()=>{h&&h(),P&&P()}),R)}z=z||"text";let x=await y[d.findKey(y,z)||"text"](S,c);return!Y&&P&&P(),await new Promise((R,F)=>{kt(R,F,{data:x,headers:te.from(S.headers),status:S.status,statusText:S.statusText,config:c,request:V})})}catch(J){throw P&&P(),J&&J.name==="TypeError"&&/Load failed|fetch/i.test(J.message)?Object.assign(new N("Network Error",N.ERR_NETWORK,c,V),{cause:J.cause||J}):N.from(J,J&&J.code,c,V)}}},mn=new Map,Nt=e=>{let t=e?e.env:{};const{fetch:r,Request:s,Response:o}=t,i=[s,o,r];let a=i.length,l=a,f,p,u=mn;for(;l--;)f=i[l],p=u.get(f),p===void 0&&u.set(f,p=l?new Map:gn(t)),u=p;return p};Nt();const Je={http:Fr,xhr:dn,fetch:{get:Nt}};d.forEach(Je,(e,t)=>{if(e){try{Object.defineProperty(e,"name",{value:t})}catch{}Object.defineProperty(e,"adapterName",{value:t})}});const Ut=e=>`- ${e}`,yn=e=>d.isFunction(e)||e===null||e===!1,Dt={getAdapter:(e,t)=>{e=d.isArray(e)?e:[e];const{length:r}=e;let s,o;const i={};for(let a=0;a<r;a++){s=e[a];let l;if(o=s,!yn(s)&&(o=Je[(l=String(s)).toLowerCase()],o===void 0))throw new N(`Unknown adapter '${l}'`);if(o&&(d.isFunction(o)||(o=o.get(t))))break;i[l||"#"+a]=o}if(!o){const a=Object.entries(i).map(([f,p])=>`adapter ${f} `+(p===!1?"is not supported by the environment":"is not available in the build"));let l=r?a.length>1?`since :
4
+ `+a.map(Ut).join(`
5
+ `):" "+Ut(a[0]):"as no adapter specified";throw new N("There is no suitable adapter to dispatch the request "+l,"ERR_NOT_SUPPORT")}return o},adapters:Je};function Xe(e){if(e.cancelToken&&e.cancelToken.throwIfRequested(),e.signal&&e.signal.aborted)throw new ge(null,e)}function Ft(e){return Xe(e),e.headers=te.from(e.headers),e.data=Ke.call(e,e.transformRequest),["post","put","patch"].indexOf(e.method)!==-1&&e.headers.setContentType("application/x-www-form-urlencoded",!1),Dt.getAdapter(e.adapter||je.adapter,e)(e).then(function(s){return Xe(e),s.data=Ke.call(e,e.transformResponse,s),s.headers=te.from(s.headers),s},function(s){return vt(s)||(Xe(e),s&&s.response&&(s.response.data=Ke.call(e,e.transformResponse,s.response),s.response.headers=te.from(s.response.headers))),Promise.reject(s)})}const Lt="1.12.2",Ue={};["object","boolean","number","function","string","symbol"].forEach((e,t)=>{Ue[e]=function(s){return typeof s===e||"a"+(t<1?"n ":" ")+e}});const Bt={};Ue.transitional=function(t,r,s){function o(i,a){return"[Axios v"+Lt+"] Transitional option '"+i+"'"+a+(s?". "+s:"")}return(i,a,l)=>{if(t===!1)throw new N(o(a," has been removed"+(r?" in "+r:"")),N.ERR_DEPRECATED);return r&&!Bt[a]&&(Bt[a]=!0,console.warn(o(a," has been deprecated since v"+r+" and will be removed in the near future"))),t?t(i,a,l):!0}},Ue.spelling=function(t){return(r,s)=>(console.warn(`${s} is likely a misspelling of ${t}`),!0)};function bn(e,t,r){if(typeof e!="object")throw new N("options must be an object",N.ERR_BAD_OPTION_VALUE);const s=Object.keys(e);let o=s.length;for(;o-- >0;){const i=s[o],a=t[i];if(a){const l=e[i],f=l===void 0||a(l,i,e);if(f!==!0)throw new N("option "+i+" must be "+f,N.ERR_BAD_OPTION_VALUE);continue}if(r!==!0)throw new N("Unknown option "+i,N.ERR_BAD_OPTION)}}const De={assertOptions:bn,validators:Ue},se=De.validators;let ce=class{constructor(t){this.defaults=t||{},this.interceptors={request:new bt,response:new bt}}async request(t,r){try{return await this._request(t,r)}catch(s){if(s instanceof Error){let o={};Error.captureStackTrace?Error.captureStackTrace(o):o=new Error;const i=o.stack?o.stack.replace(/^.+\n/,""):"";try{s.stack?i&&!String(s.stack).endsWith(i.replace(/^.+\n.+\n/,""))&&(s.stack+=`
6
+ `+i):s.stack=i}catch{}}throw s}}_request(t,r){typeof t=="string"?(r=r||{},r.url=t):r=t||{},r=le(this.defaults,r);const{transitional:s,paramsSerializer:o,headers:i}=r;s!==void 0&&De.assertOptions(s,{silentJSONParsing:se.transitional(se.boolean),forcedJSONParsing:se.transitional(se.boolean),clarifyTimeoutError:se.transitional(se.boolean)},!1),o!=null&&(d.isFunction(o)?r.paramsSerializer={serialize:o}:De.assertOptions(o,{encode:se.function,serialize:se.function},!0)),r.allowAbsoluteUrls!==void 0||(this.defaults.allowAbsoluteUrls!==void 0?r.allowAbsoluteUrls=this.defaults.allowAbsoluteUrls:r.allowAbsoluteUrls=!0),De.assertOptions(r,{baseUrl:se.spelling("baseURL"),withXsrfToken:se.spelling("withXSRFToken")},!0),r.method=(r.method||this.defaults.method||"get").toLowerCase();let a=i&&d.merge(i.common,i[r.method]);i&&d.forEach(["delete","get","head","post","put","patch","common"],c=>{delete i[c]}),r.headers=te.concat(a,i);const l=[];let f=!0;this.interceptors.request.forEach(function(b){typeof b.runWhen=="function"&&b.runWhen(r)===!1||(f=f&&b.synchronous,l.unshift(b.fulfilled,b.rejected))});const p=[];this.interceptors.response.forEach(function(b){p.push(b.fulfilled,b.rejected)});let u,y=0,T;if(!f){const c=[Ft.bind(this),void 0];for(c.unshift(...l),c.push(...p),T=c.length,u=Promise.resolve(r);y<T;)u=u.then(c[y++],c[y++]);return u}T=l.length;let E=r;for(;y<T;){const c=l[y++],b=l[y++];try{E=c(E)}catch(w){b.call(this,w);break}}try{u=Ft.call(this,E)}catch(c){return Promise.reject(c)}for(y=0,T=p.length;y<T;)u=u.then(p[y++],p[y++]);return u}getUri(t){t=le(this.defaults,t);const r=Ct(t.baseURL,t.url,t.allowAbsoluteUrls);return yt(r,t.params,t.paramsSerializer)}};d.forEach(["delete","get","head","options"],function(t){ce.prototype[t]=function(r,s){return this.request(le(s||{},{method:t,url:r,data:(s||{}).data}))}}),d.forEach(["post","put","patch"],function(t){function r(s){return function(i,a,l){return this.request(le(l||{},{method:t,headers:s?{"Content-Type":"multipart/form-data"}:{},url:i,data:a}))}}ce.prototype[t]=r(),ce.prototype[t+"Form"]=r(!0)});let wn=class Qt{constructor(t){if(typeof t!="function")throw new TypeError("executor must be a function.");let r;this.promise=new Promise(function(i){r=i});const s=this;this.promise.then(o=>{if(!s._listeners)return;let i=s._listeners.length;for(;i-- >0;)s._listeners[i](o);s._listeners=null}),this.promise.then=o=>{let i;const a=new Promise(l=>{s.subscribe(l),i=l}).then(o);return a.cancel=function(){s.unsubscribe(i)},a},t(function(i,a,l){s.reason||(s.reason=new ge(i,a,l),r(s.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(t){if(this.reason){t(this.reason);return}this._listeners?this._listeners.push(t):this._listeners=[t]}unsubscribe(t){if(!this._listeners)return;const r=this._listeners.indexOf(t);r!==-1&&this._listeners.splice(r,1)}toAbortSignal(){const t=new AbortController,r=s=>{t.abort(s)};return this.subscribe(r),t.signal.unsubscribe=()=>this.unsubscribe(r),t.signal}static source(){let t;return{token:new Qt(function(o){t=o}),cancel:t}}};function Sn(e){return function(r){return e.apply(null,r)}}function jn(e){return d.isObject(e)&&e.isAxiosError===!0}const Ge={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511};Object.entries(Ge).forEach(([e,t])=>{Ge[t]=e});function Mt(e){const t=new ce(e),r=nt(ce.prototype.request,t);return d.extend(r,ce.prototype,t,{allOwnKeys:!0}),d.extend(r,t,null,{allOwnKeys:!0}),r.create=function(o){return Mt(le(e,o))},r}const W=Mt(je);W.Axios=ce,W.CanceledError=ge,W.CancelToken=wn,W.isCancel=vt,W.VERSION=Lt,W.toFormData=_e,W.AxiosError=N,W.Cancel=W.CanceledError,W.all=function(t){return Promise.all(t)},W.spread=Sn,W.isAxiosError=jn,W.mergeConfig=le,W.AxiosHeaders=te,W.formToJSON=e=>St(d.isHTMLForm(e)?new FormData(e):e),W.getAdapter=Dt.getAdapter,W.HttpStatusCode=Ge,W.default=W;const{Axios:ds,AxiosError:us,CanceledError:ps,isCancel:fs,CancelToken:xs,VERSION:hs,all:gs,Cancel:ms,isAxiosError:ys,spread:bs,toFormData:ws,AxiosHeaders:Ss,HttpStatusCode:js,formToJSON:vs,getAdapter:ks,mergeConfig:Es}=W;class vn{baseUrl;apiKey;appId;client;constructor(t){if(!t||!t.baseUrl)throw new Error("NeuctraAuthixClient: 'baseUrl' is required in config");this.baseUrl=t.baseUrl.replace(/\/$/,""),this.apiKey=t.apiKey||null,this.appId=t.appId||null,this.client=W.create({baseURL:this.baseUrl,headers:{"Content-Type":"application/json",...this.apiKey?{"x-api-key":this.apiKey}:{}},timeout:1e4})}async request(t,r,s,o={}){if(!t)throw new Error("HTTP method is required");if(!r)throw new Error("Request path is required");try{const i={...this.appId?{appId:this.appId}:{},...s||{}};return(await this.client.request({url:r,method:t,data:i,headers:o})).data}catch(i){if(i.isAxiosError&&!i.response)throw new Error(`Network error: ${i.message}`);if(i.response){const a=i.response.status,l=i.response.data?.message||i.response.statusText;throw new Error(`API Error (${a}): ${l}`)}throw new Error(i.message||"Unknown error occurred during API request")}}async signup(t){const{name:r,email:s,password:o}=t;if(!r||!s||!o)throw new Error("signup: 'name', 'email', and 'password' are required");return this.request("POST","/users/signup",t)}async login(t){const{email:r,password:s,appId:o}=t;if(!r||!s)throw new Error("login: 'email' and 'password' are required");return this.request("POST","/users/login",{email:r,password:s,appId:o||this.appId})}async updateUser(t){const{userId:r,appId:s}=t;if(!r)throw new Error("updateUser: 'userId' is required");return this.request("PUT",`/users/update/${r}`,{...t,appId:s||this.appId})}async changePassword(t){const{userId:r,currentPassword:s,newPassword:o,appId:i}=t;if(!r)throw new Error("changePassword: 'userId' is required");if(!s||!o)throw new Error("changePassword: both 'currentPassword' and 'newPassword' are required");return this.request("PUT",`/users/change-password/${r}`,{currentPassword:s,newPassword:o,appId:i||this.appId})}async deleteUser(t){const{userId:r,appId:s}=t;if(!r)throw new Error("deleteUser: 'userId' is required");return this.request("DELETE",`/users/delete/${r}`,{appId:s||this.appId})}async getProfile(t){const{token:r}=t;if(!r)throw new Error("getProfile: 'token' is required");return this.request("GET","/users/profile",{},{Authorization:`Bearer ${r}`})}async sendVerifyOTP(t){const{token:r,appId:s}=t;if(!r)throw new Error("sendVerifyOTP: 'token' is required");return this.request("POST","/users/send-verify-otp",{appId:s||this.appId},{Authorization:`Bearer ${r}`})}async verifyEmail(t){const{token:r,otp:s,appId:o}=t;if(!r)throw new Error("verifyEmail: 'token' is required");if(!s)throw new Error("verifyEmail: 'otp' is required");return this.request("POST","/users/verify-email",{otp:s,appId:o||this.appId},{Authorization:`Bearer ${r}`})}async forgotPassword(t){const{email:r,appId:s}=t;if(!r)throw new Error("forgotPassword: 'email' is required");return this.request("POST","/users/forgot-password",{email:r,appId:s||this.appId})}async resetPassword(t){const{email:r,otp:s,newPassword:o,appId:i}=t;if(!r||!s||!o)throw new Error("resetPassword: 'email', 'otp' and 'newPassword' are required");return this.request("POST","/users/reset-password",{email:r,otp:s,newPassword:o,appId:i||this.appId})}async getUserData(t){const{userId:r}=t;if(!r)throw new Error("getUserData: 'userId' is required");return this.request("GET",`/users/${r}/data`)}async getSingleUserData(t){const{userId:r,dataId:s}=t;if(!r||!s)throw new Error("getSingleUserData: 'userId' and 'dataId' are required");return this.request("GET",`/users/${r}/data/${s}`)}async addUserData(t){const{userId:r,data:s}=t;if(!r)throw new Error("addUserData: 'userId' is required");if(!s)throw new Error("addUserData: 'data' is required");return this.request("POST",`/users/${r}/data`,s)}async updateUserData(t){const{userId:r,dataId:s,data:o}=t;if(!r||!s)throw new Error("updateUserData: 'userId' and 'dataId' are required");if(!o)throw new Error("updateUserData: 'data' is required");return this.request("PUT",`/users/${r}/data/${s}`,o)}async deleteUserData(t){const{userId:r,dataId:s}=t;if(!r||!s)throw new Error("deleteUserData: 'userId' and 'dataId' are required");return this.request("DELETE",`/users/${r}/data/${s}`)}}var Fe={exports:{}},ke={};/**
7
7
  * @license React
8
8
  * react-jsx-runtime.production.js
9
9
  *
@@ -11,7 +11,7 @@
11
11
  *
12
12
  * This source code is licensed under the MIT license found in the
13
13
  * LICENSE file in the root directory of this source tree.
14
- */var Mt;function wn(){if(Mt)return be;Mt=1;var e=Symbol.for("react.transitional.element"),t=Symbol.for("react.fragment");function r(n,o,i){var a=null;if(i!==void 0&&(a=""+i),o.key!==void 0&&(a=""+o.key),"key"in o){i={};for(var l in o)l!=="key"&&(i[l]=o[l])}else i=o;return o=i.ref,{$$typeof:e,type:n,key:a,ref:o!==void 0?o:null,props:i}}return be.Fragment=t,be.jsx=r,be.jsxs=r,be}var we={};/**
14
+ */var Wt;function kn(){if(Wt)return ke;Wt=1;var e=Symbol.for("react.transitional.element"),t=Symbol.for("react.fragment");function r(s,o,i){var a=null;if(i!==void 0&&(a=""+i),o.key!==void 0&&(a=""+o.key),"key"in o){i={};for(var l in o)l!=="key"&&(i[l]=o[l])}else i=o;return o=i.ref,{$$typeof:e,type:s,key:a,ref:o!==void 0?o:null,props:i}}return ke.Fragment=t,ke.jsx=r,ke.jsxs=r,ke}var Ee={};/**
15
15
  * @license React
16
16
  * react-jsx-runtime.development.js
17
17
  *
@@ -19,177 +19,236 @@
19
19
  *
20
20
  * This source code is licensed under the MIT license found in the
21
21
  * LICENSE file in the root directory of this source tree.
22
- */var Bt;function Sn(){return Bt||(Bt=1,process.env.NODE_ENV!=="production"&&(function(){function e(f){if(f==null)return null;if(typeof f=="function")return f.$$typeof===V?null:f.displayName||f.name||null;if(typeof f=="string")return f;switch(f){case g:return"Fragment";case I:return"Profiler";case y:return"StrictMode";case D:return"Suspense";case m:return"SuspenseList";case M:return"Activity"}if(typeof f=="object")switch(typeof f.tag=="number"&&console.error("Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."),f.$$typeof){case c:return"Portal";case S:return(f.displayName||"Context")+".Provider";case W:return(f._context.displayName||"Context")+".Consumer";case F:var R=f.render;return f=f.displayName,f||(f=R.displayName||R.name||"",f=f!==""?"ForwardRef("+f+")":"ForwardRef"),f;case _:return R=f.displayName||null,R!==null?R:e(f.type)||"Memo";case w:R=f._payload,f=f._init;try{return e(f(R))}catch{}}return null}function t(f){return""+f}function r(f){try{t(f);var R=!1}catch{R=!0}if(R){R=console;var L=R.error,x=typeof Symbol=="function"&&Symbol.toStringTag&&f[Symbol.toStringTag]||f.constructor.name||"Object";return L.call(R,"The provided key is an unsupported type %s. This value must be coerced to a string before using it here.",x),t(f)}}function n(f){if(f===g)return"<>";if(typeof f=="object"&&f!==null&&f.$$typeof===w)return"<...>";try{var R=e(f);return R?"<"+R+">":"<...>"}catch{return"<...>"}}function o(){var f=U.A;return f===null?null:f.getOwner()}function i(){return Error("react-stack-top-frame")}function a(f){if(A.call(f,"key")){var R=Object.getOwnPropertyDescriptor(f,"key").get;if(R&&R.isReactWarning)return!1}return f.key!==void 0}function l(f,R){function L(){N||(N=!0,console.error("%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://react.dev/link/special-props)",R))}L.isReactWarning=!0,Object.defineProperty(f,"key",{get:L,configurable:!0})}function h(){var f=e(this.type);return T[f]||(T[f]=!0,console.error("Accessing element.ref was removed in React 19. ref is now a regular prop. It will be removed from the JSX Element type in a future release.")),f=this.props.ref,f!==void 0?f:null}function p(f,R,L,x,v,H,te,ve){return L=H.ref,f={$$typeof:k,type:f,key:R,props:H,_owner:v},(L!==void 0?L:null)!==null?Object.defineProperty(f,"ref",{enumerable:!1,get:h}):Object.defineProperty(f,"ref",{enumerable:!1,value:null}),f._store={},Object.defineProperty(f._store,"validated",{configurable:!1,enumerable:!1,writable:!0,value:0}),Object.defineProperty(f,"_debugInfo",{configurable:!1,enumerable:!1,writable:!0,value:null}),Object.defineProperty(f,"_debugStack",{configurable:!1,enumerable:!1,writable:!0,value:te}),Object.defineProperty(f,"_debugTask",{configurable:!1,enumerable:!1,writable:!0,value:ve}),Object.freeze&&(Object.freeze(f.props),Object.freeze(f)),f}function u(f,R,L,x,v,H,te,ve){var J=R.children;if(J!==void 0)if(x)if(O(J)){for(x=0;x<J.length;x++)b(J[x]);Object.freeze&&Object.freeze(J)}else console.error("React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead.");else b(J);if(A.call(R,"key")){J=e(f);var re=Object.keys(R).filter(function(et){return et!=="key"});x=0<re.length?"{key: someKey, "+re.join(": ..., ")+": ...}":"{key: someKey}",q[J+x]||(re=0<re.length?"{"+re.join(": ..., ")+": ...}":"{}",console.error(`A props object containing a "key" prop is being spread into JSX:
22
+ */var $t;function En(){return $t||($t=1,process.env.NODE_ENV!=="production"&&(function(){function e(x){if(x==null)return null;if(typeof x=="function")return x.$$typeof===H?null:x.displayName||x.name||null;if(typeof x=="string")return x;switch(x){case b:return"Fragment";case U:return"Profiler";case w:return"StrictMode";case L:return"Suspense";case m:return"SuspenseList";case D:return"Activity"}if(typeof x=="object")switch(typeof x.tag=="number"&&console.error("Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."),x.$$typeof){case c:return"Portal";case I:return(x.displayName||"Context")+".Provider";case M:return(x._context.displayName||"Context")+".Consumer";case C:var R=x.render;return x=x.displayName,x||(x=R.displayName||R.name||"",x=x!==""?"ForwardRef("+x+")":"ForwardRef"),x;case z:return R=x.displayName||null,R!==null?R:e(x.type)||"Memo";case v:R=x._payload,x=x._init;try{return e(x(R))}catch{}}return null}function t(x){return""+x}function r(x){try{t(x);var R=!1}catch{R=!0}if(R){R=console;var F=R.error,B=typeof Symbol=="function"&&Symbol.toStringTag&&x[Symbol.toStringTag]||x.constructor.name||"Object";return F.call(R,"The provided key is an unsupported type %s. This value must be coerced to a string before using it here.",B),t(x)}}function s(x){if(x===b)return"<>";if(typeof x=="object"&&x!==null&&x.$$typeof===v)return"<...>";try{var R=e(x);return R?"<"+R+">":"<...>"}catch{return"<...>"}}function o(){var x=A.A;return x===null?null:x.getOwner()}function i(){return Error("react-stack-top-frame")}function a(x){if(X.call(x,"key")){var R=Object.getOwnPropertyDescriptor(x,"key").get;if(R&&R.isReactWarning)return!1}return x.key!==void 0}function l(x,R){function F(){K||(K=!0,console.error("%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://react.dev/link/special-props)",R))}F.isReactWarning=!0,Object.defineProperty(x,"key",{get:F,configurable:!0})}function f(){var x=e(this.type);return J[x]||(J[x]=!0,console.error("Accessing element.ref was removed in React 19. ref is now a regular prop. It will be removed from the JSX Element type in a future release.")),x=this.props.ref,x!==void 0?x:null}function p(x,R,F,B,h,g,G,j){return F=g.ref,x={$$typeof:E,type:x,key:R,props:g,_owner:h},(F!==void 0?F:null)!==null?Object.defineProperty(x,"ref",{enumerable:!1,get:f}):Object.defineProperty(x,"ref",{enumerable:!1,value:null}),x._store={},Object.defineProperty(x._store,"validated",{configurable:!1,enumerable:!1,writable:!0,value:0}),Object.defineProperty(x,"_debugInfo",{configurable:!1,enumerable:!1,writable:!0,value:null}),Object.defineProperty(x,"_debugStack",{configurable:!1,enumerable:!1,writable:!0,value:G}),Object.defineProperty(x,"_debugTask",{configurable:!1,enumerable:!1,writable:!0,value:j}),Object.freeze&&(Object.freeze(x.props),Object.freeze(x)),x}function u(x,R,F,B,h,g,G,j){var O=R.children;if(O!==void 0)if(B)if(V(O)){for(B=0;B<O.length;B++)y(O[B]);Object.freeze&&Object.freeze(O)}else console.error("React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead.");else y(O);if(X.call(R,"key")){O=e(x);var q=Object.keys(R).filter(function(fe){return fe!=="key"});B=0<q.length?"{key: someKey, "+q.join(": ..., ")+": ...}":"{key: someKey}",Y[O+B]||(q=0<q.length?"{"+q.join(": ..., ")+": ...}":"{}",console.error(`A props object containing a "key" prop is being spread into JSX:
23
23
  let props = %s;
24
24
  <%s {...props} />
25
25
  React keys must be passed directly to JSX without using spread:
26
26
  let props = %s;
27
- <%s key={someKey} {...props} />`,x,J,re,J),q[J+x]=!0)}if(J=null,L!==void 0&&(r(L),J=""+L),a(R)&&(r(R.key),J=""+R.key),"key"in R){L={};for(var je in R)je!=="key"&&(L[je]=R[je])}else L=R;return J&&l(L,typeof f=="function"?f.displayName||f.name||"Unknown":f),p(f,J,H,v,o(),L,te,ve)}function b(f){typeof f=="object"&&f!==null&&f.$$typeof===k&&f._store&&(f._store.validated=1)}var C=j,k=Symbol.for("react.transitional.element"),c=Symbol.for("react.portal"),g=Symbol.for("react.fragment"),y=Symbol.for("react.strict_mode"),I=Symbol.for("react.profiler"),W=Symbol.for("react.consumer"),S=Symbol.for("react.context"),F=Symbol.for("react.forward_ref"),D=Symbol.for("react.suspense"),m=Symbol.for("react.suspense_list"),_=Symbol.for("react.memo"),w=Symbol.for("react.lazy"),M=Symbol.for("react.activity"),V=Symbol.for("react.client.reference"),U=C.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,A=Object.prototype.hasOwnProperty,O=Array.isArray,E=console.createTask?console.createTask:function(){return null};C={react_stack_bottom_frame:function(f){return f()}};var N,T={},P=C.react_stack_bottom_frame.bind(C,i)(),B=E(n(i)),q={};we.Fragment=g,we.jsx=function(f,R,L,x,v){var H=1e4>U.recentlyCreatedOwnerStacks++;return u(f,R,L,!1,x,v,H?Error("react-stack-top-frame"):P,H?E(n(f)):B)},we.jsxs=function(f,R,L,x,v){var H=1e4>U.recentlyCreatedOwnerStacks++;return u(f,R,L,!0,x,v,H?Error("react-stack-top-frame"):P,H?E(n(f)):B)}})()),we}var $t;function vn(){return $t||($t=1,process.env.NODE_ENV==="production"?Ne.exports=wn():Ne.exports=Sn()),Ne.exports}var s=vn();const jn=async(e,t)=>{const{name:r,email:n,password:o,appId:i,phone:a,address:l,avatarUrl:h,isActive:p=!0,role:u="user"}=e,{baseUrl:b,apiKey:C}=t;if(!C)throw new Error("API key is required for signup");if(!r||!n||!o||!i)throw new Error("Name, email, password, and appId are required");try{const k=await $.post(`${b}/users/signup`,{name:r,email:n,password:o,appId:i,phone:a,address:l,avatarUrl:h,isActive:p,role:u},{headers:{"Content-Type":"application/json","x-api-key":C}});return k.data?.user&&localStorage.setItem("userInfo",JSON.stringify(k.data.user)),k.data.user}catch(k){const c=k.response?.data?.message||k.message||"Signup failed";if(console.error("Signup API Error:",c),k.response?.status===400){if(c.includes("already exists"))throw{success:!1,message:"User with this email already exists for this app",status:400};if(c.includes("inactive"))throw{success:!1,message:"Cannot signup under an inactive app",status:400}}throw k.response?.status===404?{success:!1,message:"Invalid or inactive app",status:404}:{success:!1,message:c,status:k.response?.status||500}}};/**
27
+ <%s key={someKey} {...props} />`,B,O,q,O),Y[O+B]=!0)}if(O=null,F!==void 0&&(r(F),O=""+F),a(R)&&(r(R.key),O=""+R.key),"key"in R){F={};for(var re in R)re!=="key"&&(F[re]=R[re])}else F=R;return O&&l(F,typeof x=="function"?x.displayName||x.name||"Unknown":x),p(x,O,g,h,o(),F,G,j)}function y(x){typeof x=="object"&&x!==null&&x.$$typeof===E&&x._store&&(x._store.validated=1)}var T=k,E=Symbol.for("react.transitional.element"),c=Symbol.for("react.portal"),b=Symbol.for("react.fragment"),w=Symbol.for("react.strict_mode"),U=Symbol.for("react.profiler"),M=Symbol.for("react.consumer"),I=Symbol.for("react.context"),C=Symbol.for("react.forward_ref"),L=Symbol.for("react.suspense"),m=Symbol.for("react.suspense_list"),z=Symbol.for("react.memo"),v=Symbol.for("react.lazy"),D=Symbol.for("react.activity"),H=Symbol.for("react.client.reference"),A=T.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,X=Object.prototype.hasOwnProperty,V=Array.isArray,P=console.createTask?console.createTask:function(){return null};T={react_stack_bottom_frame:function(x){return x()}};var K,J={},_=T.react_stack_bottom_frame.bind(T,i)(),S=P(s(i)),Y={};Ee.Fragment=b,Ee.jsx=function(x,R,F,B,h){var g=1e4>A.recentlyCreatedOwnerStacks++;return u(x,R,F,!1,B,h,g?Error("react-stack-top-frame"):_,g?P(s(x)):S)},Ee.jsxs=function(x,R,F,B,h){var g=1e4>A.recentlyCreatedOwnerStacks++;return u(x,R,F,!0,B,h,g?Error("react-stack-top-frame"):_,g?P(s(x)):S)}})()),Ee}var Ht;function Tn(){return Ht||(Ht=1,process.env.NODE_ENV==="production"?Fe.exports=kn():Fe.exports=En()),Fe.exports}var n=Tn();const Cn=async(e,t)=>{const{name:r,email:s,password:o,appId:i,phone:a,address:l,avatarUrl:f,isActive:p=!0,role:u="user"}=e,{baseUrl:y,apiKey:T}=t;if(!T)throw new Error("API key is required for signup");if(!r||!s||!o||!i)throw new Error("Name, email, password, and appId are required");try{const E=await W.post(`${y}/users/signup`,{name:r,email:s,password:o,appId:i,phone:a,address:l,avatarUrl:f,isActive:p,role:u},{headers:{"Content-Type":"application/json","x-api-key":T}});return E.data?.user&&localStorage.setItem("userInfo",JSON.stringify(E.data.user)),E.data.user}catch(E){const c=E.response?.data?.message||E.message||"Signup failed";if(console.error("Signup API Error:",c),E.response?.status===400){if(c.includes("already exists"))throw{success:!1,message:"User with this email already exists for this app",status:400};if(c.includes("inactive"))throw{success:!1,message:"Cannot signup under an inactive app",status:400}}throw E.response?.status===404?{success:!1,message:"Invalid or inactive app",status:404}:{success:!1,message:c,status:E.response?.status||500}}};/**
28
28
  * @license lucide-react v0.544.0 - ISC
29
29
  *
30
30
  * This source code is licensed under the ISC license.
31
31
  * See the LICENSE file in the root directory of this source tree.
32
- */const kn=e=>e.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase(),En=e=>e.replace(/^([A-Z])|[\s-_]+(\w)/g,(t,r,n)=>n?n.toUpperCase():r.toLowerCase()),Wt=e=>{const t=En(e);return t.charAt(0).toUpperCase()+t.slice(1)},Ht=(...e)=>e.filter((t,r,n)=>!!t&&t.trim()!==""&&n.indexOf(t)===r).join(" ").trim(),Tn=e=>{for(const t in e)if(t.startsWith("aria-")||t==="role"||t==="title")return!0};/**
32
+ */const Rn=e=>e.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase(),Pn=e=>e.replace(/^([A-Z])|[\s-_]+(\w)/g,(t,r,s)=>s?s.toUpperCase():r.toLowerCase()),Vt=e=>{const t=Pn(e);return t.charAt(0).toUpperCase()+t.slice(1)},qt=(...e)=>e.filter((t,r,s)=>!!t&&t.trim()!==""&&s.indexOf(t)===r).join(" ").trim(),In=e=>{for(const t in e)if(t.startsWith("aria-")||t==="role"||t==="title")return!0};/**
33
33
  * @license lucide-react v0.544.0 - ISC
34
34
  *
35
35
  * This source code is licensed under the ISC license.
36
36
  * See the LICENSE file in the root directory of this source tree.
37
- */var Rn={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};/**
37
+ */var On={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};/**
38
38
  * @license lucide-react v0.544.0 - ISC
39
39
  *
40
40
  * This source code is licensed under the ISC license.
41
41
  * See the LICENSE file in the root directory of this source tree.
42
- */const Cn=j.forwardRef(({color:e="currentColor",size:t=24,strokeWidth:r=2,absoluteStrokeWidth:n,className:o="",children:i,iconNode:a,...l},h)=>j.createElement("svg",{ref:h,...Rn,width:t,height:t,stroke:e,strokeWidth:n?Number(r)*24/Number(t):r,className:Ht("lucide",o),...!i&&!Tn(l)&&{"aria-hidden":"true"},...l},[...a.map(([p,u])=>j.createElement(p,u)),...Array.isArray(i)?i:[i]]));/**
42
+ */const _n=k.forwardRef(({color:e="currentColor",size:t=24,strokeWidth:r=2,absoluteStrokeWidth:s,className:o="",children:i,iconNode:a,...l},f)=>k.createElement("svg",{ref:f,...On,width:t,height:t,stroke:e,strokeWidth:s?Number(r)*24/Number(t):r,className:qt("lucide",o),...!i&&!In(l)&&{"aria-hidden":"true"},...l},[...a.map(([p,u])=>k.createElement(p,u)),...Array.isArray(i)?i:[i]]));/**
43
43
  * @license lucide-react v0.544.0 - ISC
44
44
  *
45
45
  * This source code is licensed under the ISC license.
46
46
  * See the LICENSE file in the root directory of this source tree.
47
- */const Y=(e,t)=>{const r=j.forwardRef(({className:n,...o},i)=>j.createElement(Cn,{ref:i,iconNode:t,className:Ht(`lucide-${kn(Wt(e))}`,`lucide-${e}`,n),...o}));return r.displayName=Wt(e),r};/**
47
+ */const $=(e,t)=>{const r=k.forwardRef(({className:s,...o},i)=>k.createElement(_n,{ref:i,iconNode:t,className:qt(`lucide-${Rn(Vt(e))}`,`lucide-${e}`,s),...o}));return r.displayName=Vt(e),r};/**
48
48
  * @license lucide-react v0.544.0 - ISC
49
49
  *
50
50
  * This source code is licensed under the ISC license.
51
51
  * See the LICENSE file in the root directory of this source tree.
52
- */const Xe=Y("camera",[["path",{d:"M13.997 4a2 2 0 0 1 1.76 1.05l.486.9A2 2 0 0 0 18.003 7H20a2 2 0 0 1 2 2v9a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V9a2 2 0 0 1 2-2h1.997a2 2 0 0 0 1.759-1.048l.489-.904A2 2 0 0 1 10.004 4z",key:"18u6gg"}],["circle",{cx:"12",cy:"13",r:"3",key:"1vg3eu"}]]);/**
52
+ */const Ze=$("camera",[["path",{d:"M13.997 4a2 2 0 0 1 1.76 1.05l.486.9A2 2 0 0 0 18.003 7H20a2 2 0 0 1 2 2v9a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V9a2 2 0 0 1 2-2h1.997a2 2 0 0 0 1.759-1.048l.489-.904A2 2 0 0 1 10.004 4z",key:"18u6gg"}],["circle",{cx:"12",cy:"13",r:"3",key:"1vg3eu"}]]);/**
53
53
  * @license lucide-react v0.544.0 - ISC
54
54
  *
55
55
  * This source code is licensed under the ISC license.
56
56
  * See the LICENSE file in the root directory of this source tree.
57
- */const Pn=Y("chevron-down",[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]]);/**
57
+ */const An=$("chevron-down",[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]]);/**
58
58
  * @license lucide-react v0.544.0 - ISC
59
59
  *
60
60
  * This source code is licensed under the ISC license.
61
61
  * See the LICENSE file in the root directory of this source tree.
62
- */const ae=Y("circle-alert",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["line",{x1:"12",x2:"12",y1:"8",y2:"12",key:"1pkeuh"}],["line",{x1:"12",x2:"12.01",y1:"16",y2:"16",key:"4dfq90"}]]);/**
62
+ */const oe=$("circle-alert",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["line",{x1:"12",x2:"12",y1:"8",y2:"12",key:"1pkeuh"}],["line",{x1:"12",x2:"12.01",y1:"16",y2:"16",key:"4dfq90"}]]);/**
63
63
  * @license lucide-react v0.544.0 - ISC
64
64
  *
65
65
  * This source code is licensed under the ISC license.
66
66
  * See the LICENSE file in the root directory of this source tree.
67
- */const ze=Y("circle-check-big",[["path",{d:"M21.801 10A10 10 0 1 1 17 3.335",key:"yps3ct"}],["path",{d:"m9 11 3 3L22 4",key:"1pflzl"}]]);/**
67
+ */const de=$("circle-check-big",[["path",{d:"M21.801 10A10 10 0 1 1 17 3.335",key:"yps3ct"}],["path",{d:"m9 11 3 3L22 4",key:"1pflzl"}]]);/**
68
68
  * @license lucide-react v0.544.0 - ISC
69
69
  *
70
70
  * This source code is licensed under the ISC license.
71
71
  * See the LICENSE file in the root directory of this source tree.
72
- */const Ge=Y("circle-check",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m9 12 2 2 4-4",key:"dzmm74"}]]);/**
72
+ */const Qe=$("circle-check",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m9 12 2 2 4-4",key:"dzmm74"}]]);/**
73
73
  * @license lucide-react v0.544.0 - ISC
74
74
  *
75
75
  * This source code is licensed under the ISC license.
76
76
  * See the LICENSE file in the root directory of this source tree.
77
- */const In=Y("database",[["ellipse",{cx:"12",cy:"5",rx:"9",ry:"3",key:"msslwz"}],["path",{d:"M3 5V19A9 3 0 0 0 21 19V5",key:"1wlel7"}],["path",{d:"M3 12A9 3 0 0 0 21 12",key:"mv7ke4"}]]);/**
77
+ */const zn=$("database",[["ellipse",{cx:"12",cy:"5",rx:"9",ry:"3",key:"msslwz"}],["path",{d:"M3 5V19A9 3 0 0 0 21 19V5",key:"1wlel7"}],["path",{d:"M3 12A9 3 0 0 0 21 12",key:"mv7ke4"}]]);/**
78
78
  * @license lucide-react v0.544.0 - ISC
79
79
  *
80
80
  * This source code is licensed under the ISC license.
81
81
  * See the LICENSE file in the root directory of this source tree.
82
- */const Ze=Y("eye-off",[["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",key:"ct8e1f"}],["path",{d:"M14.084 14.158a3 3 0 0 1-4.242-4.242",key:"151rxh"}],["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",key:"13bj9a"}],["path",{d:"m2 2 20 20",key:"1ooewy"}]]);/**
82
+ */const et=$("eye-off",[["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",key:"ct8e1f"}],["path",{d:"M14.084 14.158a3 3 0 0 1-4.242-4.242",key:"151rxh"}],["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",key:"13bj9a"}],["path",{d:"m2 2 20 20",key:"1ooewy"}]]);/**
83
83
  * @license lucide-react v0.544.0 - ISC
84
84
  *
85
85
  * This source code is licensed under the ISC license.
86
86
  * See the LICENSE file in the root directory of this source tree.
87
- */const Qe=Y("eye",[["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",key:"1nclc0"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]]);/**
87
+ */const tt=$("eye",[["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",key:"1nclc0"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]]);/**
88
88
  * @license lucide-react v0.544.0 - ISC
89
89
  *
90
90
  * This source code is licensed under the ISC license.
91
91
  * See the LICENSE file in the root directory of this source tree.
92
- */const qt=Y("image",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",ry:"2",key:"1m3agn"}],["circle",{cx:"9",cy:"9",r:"2",key:"af1f0g"}],["path",{d:"m21 15-3.086-3.086a2 2 0 0 0-2.828 0L6 21",key:"1xmnt7"}]]);/**
92
+ */const Yt=$("image",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",ry:"2",key:"1m3agn"}],["circle",{cx:"9",cy:"9",r:"2",key:"af1f0g"}],["path",{d:"m21 15-3.086-3.086a2 2 0 0 0-2.828 0L6 21",key:"1xmnt7"}]]);/**
93
93
  * @license lucide-react v0.544.0 - ISC
94
94
  *
95
95
  * This source code is licensed under the ISC license.
96
96
  * See the LICENSE file in the root directory of this source tree.
97
- */const On=Y("key-round",[["path",{d:"M2.586 17.414A2 2 0 0 0 2 18.828V21a1 1 0 0 0 1 1h3a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1h1a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1h.172a2 2 0 0 0 1.414-.586l.814-.814a6.5 6.5 0 1 0-4-4z",key:"1s6t7t"}],["circle",{cx:"16.5",cy:"7.5",r:".5",fill:"currentColor",key:"w0ekpg"}]]);/**
97
+ */const Kt=$("key-round",[["path",{d:"M2.586 17.414A2 2 0 0 0 2 18.828V21a1 1 0 0 0 1 1h3a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1h1a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1h.172a2 2 0 0 0 1.414-.586l.814-.814a6.5 6.5 0 1 0-4-4z",key:"1s6t7t"}],["circle",{cx:"16.5",cy:"7.5",r:".5",fill:"currentColor",key:"w0ekpg"}]]);/**
98
98
  * @license lucide-react v0.544.0 - ISC
99
99
  *
100
100
  * This source code is licensed under the ISC license.
101
101
  * See the LICENSE file in the root directory of this source tree.
102
- */const Yt=Y("key",[["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",key:"g0fldk"}],["path",{d:"m21 2-9.6 9.6",key:"1j0ho8"}],["circle",{cx:"7.5",cy:"15.5",r:"5.5",key:"yqb3hr"}]]);/**
102
+ */const Jt=$("key",[["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",key:"g0fldk"}],["path",{d:"m21 2-9.6 9.6",key:"1j0ho8"}],["circle",{cx:"7.5",cy:"15.5",r:"5.5",key:"yqb3hr"}]]);/**
103
103
  * @license lucide-react v0.544.0 - ISC
104
104
  *
105
105
  * This source code is licensed under the ISC license.
106
106
  * See the LICENSE file in the root directory of this source tree.
107
- */const _n=Y("link-2",[["path",{d:"M9 17H7A5 5 0 0 1 7 7h2",key:"8i5ue5"}],["path",{d:"M15 7h2a5 5 0 1 1 0 10h-2",key:"1b9ql8"}],["line",{x1:"8",x2:"16",y1:"12",y2:"12",key:"1jonct"}]]);/**
107
+ */const Nn=$("link-2",[["path",{d:"M9 17H7A5 5 0 0 1 7 7h2",key:"8i5ue5"}],["path",{d:"M15 7h2a5 5 0 1 1 0 10h-2",key:"1b9ql8"}],["line",{x1:"8",x2:"16",y1:"12",y2:"12",key:"1jonct"}]]);/**
108
108
  * @license lucide-react v0.544.0 - ISC
109
109
  *
110
110
  * This source code is licensed under the ISC license.
111
111
  * See the LICENSE file in the root directory of this source tree.
112
- */const ue=Y("loader-circle",[["path",{d:"M21 12a9 9 0 1 1-6.219-8.56",key:"13zald"}]]);/**
112
+ */const ae=$("loader-circle",[["path",{d:"M21 12a9 9 0 1 1-6.219-8.56",key:"13zald"}]]);/**
113
113
  * @license lucide-react v0.544.0 - ISC
114
114
  *
115
115
  * This source code is licensed under the ISC license.
116
116
  * See the LICENSE file in the root directory of this source tree.
117
- */const An=Y("loader",[["path",{d:"M12 2v4",key:"3427ic"}],["path",{d:"m16.2 7.8 2.9-2.9",key:"r700ao"}],["path",{d:"M18 12h4",key:"wj9ykh"}],["path",{d:"m16.2 16.2 2.9 2.9",key:"1bxg5t"}],["path",{d:"M12 18v4",key:"jadmvz"}],["path",{d:"m4.9 19.1 2.9-2.9",key:"bwix9q"}],["path",{d:"M2 12h4",key:"j09sii"}],["path",{d:"m4.9 4.9 2.9 2.9",key:"giyufr"}]]);/**
117
+ */const Un=$("loader",[["path",{d:"M12 2v4",key:"3427ic"}],["path",{d:"m16.2 7.8 2.9-2.9",key:"r700ao"}],["path",{d:"M18 12h4",key:"wj9ykh"}],["path",{d:"m16.2 16.2 2.9 2.9",key:"1bxg5t"}],["path",{d:"M12 18v4",key:"jadmvz"}],["path",{d:"m4.9 19.1 2.9-2.9",key:"bwix9q"}],["path",{d:"M2 12h4",key:"j09sii"}],["path",{d:"m4.9 4.9 2.9 2.9",key:"giyufr"}]]);/**
118
118
  * @license lucide-react v0.544.0 - ISC
119
119
  *
120
120
  * This source code is licensed under the ISC license.
121
121
  * See the LICENSE file in the root directory of this source tree.
122
- */const pe=Y("lock",[["rect",{width:"18",height:"11",x:"3",y:"11",rx:"2",ry:"2",key:"1w4ew1"}],["path",{d:"M7 11V7a5 5 0 0 1 10 0v4",key:"fwvmzm"}]]);/**
122
+ */const me=$("lock",[["rect",{width:"18",height:"11",x:"3",y:"11",rx:"2",ry:"2",key:"1w4ew1"}],["path",{d:"M7 11V7a5 5 0 0 1 10 0v4",key:"fwvmzm"}]]);/**
123
123
  * @license lucide-react v0.544.0 - ISC
124
124
  *
125
125
  * This source code is licensed under the ISC license.
126
126
  * See the LICENSE file in the root directory of this source tree.
127
- */const Vt=Y("log-out",[["path",{d:"m16 17 5-5-5-5",key:"1bji2h"}],["path",{d:"M21 12H9",key:"dn1m92"}],["path",{d:"M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4",key:"1uf3rs"}]]);/**
127
+ */const rt=$("log-out",[["path",{d:"m16 17 5-5-5-5",key:"1bji2h"}],["path",{d:"M21 12H9",key:"dn1m92"}],["path",{d:"M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4",key:"1uf3rs"}]]);/**
128
128
  * @license lucide-react v0.544.0 - ISC
129
129
  *
130
130
  * This source code is licensed under the ISC license.
131
131
  * See the LICENSE file in the root directory of this source tree.
132
- */const Se=Y("mail",[["path",{d:"m22 7-8.991 5.727a2 2 0 0 1-2.009 0L2 7",key:"132q7q"}],["rect",{x:"2",y:"4",width:"20",height:"16",rx:"2",key:"izxlao"}]]);/**
132
+ */const ue=$("mail",[["path",{d:"m22 7-8.991 5.727a2 2 0 0 1-2.009 0L2 7",key:"132q7q"}],["rect",{x:"2",y:"4",width:"20",height:"16",rx:"2",key:"izxlao"}]]);/**
133
133
  * @license lucide-react v0.544.0 - ISC
134
134
  *
135
135
  * This source code is licensed under the ISC license.
136
136
  * See the LICENSE file in the root directory of this source tree.
137
- */const Nn=Y("map-pin",[["path",{d:"M20 10c0 4.993-5.539 10.193-7.399 11.799a1 1 0 0 1-1.202 0C9.539 20.193 4 14.993 4 10a8 8 0 0 1 16 0",key:"1r0f0z"}],["circle",{cx:"12",cy:"10",r:"3",key:"ilqhr7"}]]);/**
137
+ */const Dn=$("map-pin",[["path",{d:"M20 10c0 4.993-5.539 10.193-7.399 11.799a1 1 0 0 1-1.202 0C9.539 20.193 4 14.993 4 10a8 8 0 0 1 16 0",key:"1r0f0z"}],["circle",{cx:"12",cy:"10",r:"3",key:"ilqhr7"}]]);/**
138
138
  * @license lucide-react v0.544.0 - ISC
139
139
  *
140
140
  * This source code is licensed under the ISC license.
141
141
  * See the LICENSE file in the root directory of this source tree.
142
- */const zn=Y("pen-line",[["path",{d:"M13 21h8",key:"1jsn5i"}],["path",{d:"M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z",key:"1a8usu"}]]);/**
142
+ */const Fn=$("pen-line",[["path",{d:"M13 21h8",key:"1jsn5i"}],["path",{d:"M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z",key:"1a8usu"}]]);/**
143
143
  * @license lucide-react v0.544.0 - ISC
144
144
  *
145
145
  * This source code is licensed under the ISC license.
146
146
  * See the LICENSE file in the root directory of this source tree.
147
- */const Un=Y("phone",[["path",{d:"M13.832 16.568a1 1 0 0 0 1.213-.303l.355-.465A2 2 0 0 1 17 15h3a2 2 0 0 1 2 2v3a2 2 0 0 1-2 2A18 18 0 0 1 2 4a2 2 0 0 1 2-2h3a2 2 0 0 1 2 2v3a2 2 0 0 1-.8 1.6l-.468.351a1 1 0 0 0-.292 1.233 14 14 0 0 0 6.392 6.384",key:"9njp5v"}]]);/**
147
+ */const Ln=$("phone",[["path",{d:"M13.832 16.568a1 1 0 0 0 1.213-.303l.355-.465A2 2 0 0 1 17 15h3a2 2 0 0 1 2 2v3a2 2 0 0 1-2 2A18 18 0 0 1 2 4a2 2 0 0 1 2-2h3a2 2 0 0 1 2 2v3a2 2 0 0 1-.8 1.6l-.468.351a1 1 0 0 0-.292 1.233 14 14 0 0 0 6.392 6.384",key:"9njp5v"}]]);/**
148
148
  * @license lucide-react v0.544.0 - ISC
149
149
  *
150
150
  * This source code is licensed under the ISC license.
151
151
  * See the LICENSE file in the root directory of this source tree.
152
- */const Fn=Y("save",[["path",{d:"M15.2 3a2 2 0 0 1 1.4.6l3.8 3.8a2 2 0 0 1 .6 1.4V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2z",key:"1c8476"}],["path",{d:"M17 21v-7a1 1 0 0 0-1-1H8a1 1 0 0 0-1 1v7",key:"1ydtos"}],["path",{d:"M7 3v4a1 1 0 0 0 1 1h7",key:"t51u73"}]]);/**
152
+ */const Bn=$("save",[["path",{d:"M15.2 3a2 2 0 0 1 1.4.6l3.8 3.8a2 2 0 0 1 .6 1.4V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2z",key:"1c8476"}],["path",{d:"M17 21v-7a1 1 0 0 0-1-1H8a1 1 0 0 0-1 1v7",key:"1ydtos"}],["path",{d:"M7 3v4a1 1 0 0 0 1 1h7",key:"t51u73"}]]);/**
153
153
  * @license lucide-react v0.544.0 - ISC
154
154
  *
155
155
  * This source code is licensed under the ISC license.
156
156
  * See the LICENSE file in the root directory of this source tree.
157
- */const Dn=Y("settings",[["path",{d:"M9.671 4.136a2.34 2.34 0 0 1 4.659 0 2.34 2.34 0 0 0 3.319 1.915 2.34 2.34 0 0 1 2.33 4.033 2.34 2.34 0 0 0 0 3.831 2.34 2.34 0 0 1-2.33 4.033 2.34 2.34 0 0 0-3.319 1.915 2.34 2.34 0 0 1-4.659 0 2.34 2.34 0 0 0-3.32-1.915 2.34 2.34 0 0 1-2.33-4.033 2.34 2.34 0 0 0 0-3.831A2.34 2.34 0 0 1 6.35 6.051a2.34 2.34 0 0 0 3.319-1.915",key:"1i5ecw"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]]);/**
157
+ */const Xt=$("send",[["path",{d:"M14.536 21.686a.5.5 0 0 0 .937-.024l6.5-19a.496.496 0 0 0-.635-.635l-19 6.5a.5.5 0 0 0-.024.937l7.93 3.18a2 2 0 0 1 1.112 1.11z",key:"1ffxy3"}],["path",{d:"m21.854 2.147-10.94 10.939",key:"12cjpa"}]]);/**
158
158
  * @license lucide-react v0.544.0 - ISC
159
159
  *
160
160
  * This source code is licensed under the ISC license.
161
161
  * See the LICENSE file in the root directory of this source tree.
162
- */const Ln=Y("shield",[["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",key:"oel41y"}]]);/**
162
+ */const Mn=$("settings",[["path",{d:"M9.671 4.136a2.34 2.34 0 0 1 4.659 0 2.34 2.34 0 0 0 3.319 1.915 2.34 2.34 0 0 1 2.33 4.033 2.34 2.34 0 0 0 0 3.831 2.34 2.34 0 0 1-2.33 4.033 2.34 2.34 0 0 0-3.319 1.915 2.34 2.34 0 0 1-4.659 0 2.34 2.34 0 0 0-3.32-1.915 2.34 2.34 0 0 1-2.33-4.033 2.34 2.34 0 0 0 0-3.831A2.34 2.34 0 0 1 6.35 6.051a2.34 2.34 0 0 0 3.319-1.915",key:"1i5ecw"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]]);/**
163
163
  * @license lucide-react v0.544.0 - ISC
164
164
  *
165
165
  * This source code is licensed under the ISC license.
166
166
  * See the LICENSE file in the root directory of this source tree.
167
- */const Ue=Y("trash-2",[["path",{d:"M10 11v6",key:"nco0om"}],["path",{d:"M14 11v6",key:"outv1u"}],["path",{d:"M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6",key:"miytrc"}],["path",{d:"M3 6h18",key:"d0wm0j"}],["path",{d:"M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2",key:"e791ji"}]]);/**
167
+ */const Gt=$("shield",[["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",key:"oel41y"}]]);/**
168
168
  * @license lucide-react v0.544.0 - ISC
169
169
  *
170
170
  * This source code is licensed under the ISC license.
171
171
  * See the LICENSE file in the root directory of this source tree.
172
- */const Jt=Y("triangle-alert",[["path",{d:"m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3",key:"wmoenq"}],["path",{d:"M12 9v4",key:"juzpu7"}],["path",{d:"M12 17h.01",key:"p32p05"}]]);/**
172
+ */const Le=$("trash-2",[["path",{d:"M10 11v6",key:"nco0om"}],["path",{d:"M14 11v6",key:"outv1u"}],["path",{d:"M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6",key:"miytrc"}],["path",{d:"M3 6h18",key:"d0wm0j"}],["path",{d:"M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2",key:"e791ji"}]]);/**
173
173
  * @license lucide-react v0.544.0 - ISC
174
174
  *
175
175
  * This source code is licensed under the ISC license.
176
176
  * See the LICENSE file in the root directory of this source tree.
177
- */const Mn=Y("user-x",[["path",{d:"M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2",key:"1yyitq"}],["circle",{cx:"9",cy:"7",r:"4",key:"nufk8"}],["line",{x1:"17",x2:"22",y1:"8",y2:"13",key:"3nzzx3"}],["line",{x1:"22",x2:"17",y1:"8",y2:"13",key:"1swrse"}]]);/**
177
+ */const Zt=$("triangle-alert",[["path",{d:"m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3",key:"wmoenq"}],["path",{d:"M12 9v4",key:"juzpu7"}],["path",{d:"M12 17h.01",key:"p32p05"}]]);/**
178
178
  * @license lucide-react v0.544.0 - ISC
179
179
  *
180
180
  * This source code is licensed under the ISC license.
181
181
  * See the LICENSE file in the root directory of this source tree.
182
- */const fe=Y("user",[["path",{d:"M19 21v-2a4 4 0 0 0-4-4H9a4 4 0 0 0-4 4v2",key:"975kel"}],["circle",{cx:"12",cy:"7",r:"4",key:"17ys0d"}]]);/**
182
+ */const Wn=$("user-x",[["path",{d:"M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2",key:"1yyitq"}],["circle",{cx:"9",cy:"7",r:"4",key:"nufk8"}],["line",{x1:"17",x2:"22",y1:"8",y2:"13",key:"3nzzx3"}],["line",{x1:"22",x2:"17",y1:"8",y2:"13",key:"1swrse"}]]);/**
183
183
  * @license lucide-react v0.544.0 - ISC
184
184
  *
185
185
  * This source code is licensed under the ISC license.
186
186
  * See the LICENSE file in the root directory of this source tree.
187
- */const Fe=Y("x",[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]]),De={baseUrl:"",apiKey:"",appId:""},Bn=e=>{if(!e.baseUrl||!e.apiKey||!e.appId)throw new Error("baseUrl, apiKey, and appId are required");De.baseUrl=e.baseUrl,De.apiKey=e.apiKey,De.appId=e.appId},ie=()=>De,$n=({logoUrl:e,title:t="Create Your Account",subtitle:r="Join our platform today",footerText:n="Secure authentication powered by Neuctra Authix",primaryColor:o="#00C214",gradient:i="linear-gradient(135deg, #22c55e, #00C214)",darkMode:a=!0,showAvatar:l=!1,loginUrl:h,onSuccess:p,onError:u})=>{const{baseUrl:b,apiKey:C,appId:k}=ie(),c={name:"",email:"",password:"",...l&&{avatarUrl:""}},[g,y]=j.useState(c),[I,W]=j.useState(!1),[S,F]=j.useState(!1),[D,m]=j.useState(null),[_,w]=j.useState({}),M=typeof window<"u"?window.innerWidth<768:!1,V=a?"#ffffff":"#111827",U=a?"#a1a1aa":"#6b7280",A=a?"rgba(255,255,255,0.05)":"rgba(0,0,0,0.02)",O=a?"rgba(255,255,255,0.1)":"rgba(0,0,0,0.1)",E=B=>{const{name:q,value:f}=B.target;y(R=>({...R,[q]:f})),_[q]&&w(R=>({...R,[q]:void 0}))},N=()=>{const B={};return g.name.trim()||(B.name="Name is required"),g.email.trim()?/\S+@\S+\.\S+/.test(g.email)||(B.email="Invalid email address"):B.email="Email is required",g.password?g.password.length<6&&(B.password="Password must be at least 6 characters"):B.password="Password is required",w(B),Object.keys(B).length===0},T=async B=>{if(B.preventDefault(),!!N()){F(!0),m(null);try{const q={...g,appId:k},f=await jn(q,{baseUrl:b,apiKey:C});m({type:"success",text:"Account created successfully!"}),p&&p(f),window.location.reload()}catch(q){const f=q.message||"Signup failed. Please try again.";m({type:"error",text:f}),u&&u(q)}finally{F(!1)}}},P={width:"100%",padding:M?"14px 14px 14px 44px":"16px 16px 16px 44px",backgroundColor:A,border:`1px solid ${O}`,borderRadius:"12px",color:V,fontSize:"15px",outline:"none",transition:"all 0.2s ease",boxSizing:"border-box"};return s.jsxs("div",{style:{display:"flex",justifyContent:"center",alignItems:"center"},children:[s.jsxs("div",{style:{minWidth:M?"320px":"340px",width:"100%",maxWidth:"390px",display:"flex",flexDirection:"column",borderRadius:"10px",fontFamily:"'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif",backgroundColor:a?"#000000":"#ffffff",padding:M?"30px 24px":"32px 28px"},children:[s.jsxs("div",{style:{display:"flex",flexDirection:"column",alignItems:"center",marginBottom:"20px"},children:[e?s.jsx("img",{src:e,alt:"Logo",style:{height:"50px",width:"50px",marginBottom:"10px"}}):s.jsx(fe,{size:40,color:o,style:{marginBottom:"10px"}}),s.jsx("h2",{style:{fontSize:"24px",fontWeight:700,color:V,margin:0},children:t}),s.jsx("p",{style:{fontSize:"14px",color:U,margin:"6px 0 0 0"},children:r})]}),l&&g.avatarUrl&&s.jsx("div",{style:{display:"flex",justifyContent:"center",marginBottom:"16px"},children:s.jsx("img",{src:g.avatarUrl,alt:"Avatar Preview",style:{width:"60px",height:"60px",borderRadius:"50%",objectFit:"cover",border:`2px solid ${o}30`},onError:B=>{const q=B.target;q.style.display="none"}})}),s.jsxs("form",{onSubmit:T,style:{display:"flex",flexDirection:"column",gap:"14px"},children:[s.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"4px"},children:[s.jsx("label",{htmlFor:"signup-name",style:{fontSize:"14px",fontWeight:500,color:V},children:"Full Name"}),s.jsxs("div",{style:{position:"relative"},children:[s.jsx(fe,{size:20,style:{position:"absolute",left:"14px",top:"50%",transform:"translateY(-50%)",color:U}}),s.jsx("input",{id:"signup-name",type:"text",name:"name",placeholder:"Enter your full name",value:g.name,onChange:E,style:{...P,borderColor:_.name?"#ef4444":O}})]}),_.name&&s.jsx("span",{style:{color:"#ef4444",fontSize:"12px",marginTop:"2px"},children:_.name})]}),s.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"4px"},children:[s.jsx("label",{htmlFor:"signup-email",style:{fontSize:"14px",fontWeight:500,color:V},children:"Email Address"}),s.jsxs("div",{style:{position:"relative"},children:[s.jsx(Se,{size:20,style:{position:"absolute",left:"14px",top:"50%",transform:"translateY(-50%)",color:U}}),s.jsx("input",{id:"signup-email",type:"email",name:"email",placeholder:"Enter your email address",value:g.email,onChange:E,style:{...P,borderColor:_.email?"#ef4444":O}})]}),_.email&&s.jsx("span",{style:{color:"#ef4444",fontSize:"12px",marginTop:"2px"},children:_.email})]}),s.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"4px"},children:[s.jsx("label",{htmlFor:"signup-password",style:{fontSize:"14px",fontWeight:500,color:V},children:"Password"}),s.jsxs("div",{style:{position:"relative"},children:[s.jsx(pe,{size:20,style:{position:"absolute",left:"14px",top:"50%",transform:"translateY(-50%)",color:U}}),s.jsx("input",{id:"signup-password",type:I?"text":"password",name:"password",placeholder:"Create a secure password",value:g.password,onChange:E,style:{...P,borderColor:_.password?"#ef4444":O}}),s.jsx("button",{type:"button",onClick:()=>W(!I),style:{position:"absolute",right:"14px",top:"50%",transform:"translateY(-50%)",background:"transparent",border:"none",color:U,cursor:"pointer",padding:"4px"},children:I?s.jsx(Ze,{size:20}):s.jsx(Qe,{size:20})})]}),_.password&&s.jsx("span",{style:{color:"#ef4444",fontSize:"12px",marginTop:"2px"},children:_.password})]}),l&&s.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"4px"},children:[s.jsx("label",{htmlFor:"signup-avatar",style:{fontSize:"14px",fontWeight:500,color:V},children:"Avatar URL (Optional)"}),s.jsxs("div",{style:{position:"relative"},children:[s.jsx(qt,{size:20,style:{position:"absolute",left:"14px",top:"50%",transform:"translateY(-50%)",color:U}}),s.jsx("input",{id:"signup-avatar",type:"url",name:"avatarUrl",placeholder:"Paste your avatar image URL",value:g.avatarUrl||"",onChange:E,style:P})]})]}),s.jsx("div",{style:{display:"flex",justifyContent:"space-between",fontSize:"13px",marginTop:"6px"},children:h&&s.jsx("a",{href:h,style:{color:o,textDecoration:"none",fontWeight:500},children:"Already have an account?"})}),s.jsx("button",{type:"submit",disabled:S,style:{padding:"12px",background:i,color:"#fff",border:"none",borderRadius:"10px",fontWeight:600,cursor:S?"not-allowed":"pointer",opacity:S?.7:1,marginTop:"8px",display:"flex",alignItems:"center",justifyContent:"center",gap:"8px"},children:S?s.jsxs(s.Fragment,{children:[s.jsx(An,{size:18,style:{animation:"spin 1s linear infinite"}}),"Creating Account..."]}):"Create Account"})]}),D&&s.jsxs("div",{style:{marginTop:"16px",padding:"12px",borderRadius:"12px",fontSize:"14px",display:"flex",alignItems:"center",gap:"10px",backgroundColor:D.type==="success"?`${o}15`:"rgba(239,68,68,0.1)",border:D.type==="success"?`1px solid ${o}30`:"1px solid rgba(239,68,68,0.3)",color:D.type==="success"?o:"#ef4444"},children:[D.type==="success"?s.jsx(ze,{size:20}):s.jsx(ae,{size:20}),s.jsx("span",{children:D.text})]}),s.jsxs("div",{style:{textAlign:"center",fontSize:"12px",color:U,marginTop:"20px",padding:"0 4px"},children:["Secure authentication powered by"," ",s.jsx("span",{style:{color:o,fontWeight:600},children:"Neuctra Authix"})]})]}),s.jsx("style",{children:`
187
+ */const ye=$("user",[["path",{d:"M19 21v-2a4 4 0 0 0-4-4H9a4 4 0 0 0-4 4v2",key:"975kel"}],["circle",{cx:"12",cy:"7",r:"4",key:"17ys0d"}]]);/**
188
+ * @license lucide-react v0.544.0 - ISC
189
+ *
190
+ * This source code is licensed under the ISC license.
191
+ * See the LICENSE file in the root directory of this source tree.
192
+ */const Te=$("x",[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]]),Be={baseUrl:"",apiKey:"",appId:""},$n=e=>{if(!e.baseUrl||!e.apiKey||!e.appId)throw new Error("baseUrl, apiKey, and appId are required");Be.baseUrl=e.baseUrl,Be.apiKey=e.apiKey,Be.appId=e.appId},pe=()=>Be,Hn=({logoUrl:e,title:t="Create Your Account",subtitle:r="Join our platform today",footerText:s="Secure authentication powered by Neuctra Authix",primaryColor:o="#00C214",gradient:i="linear-gradient(135deg, #22c55e, #00C214)",darkMode:a=!0,showAvatar:l=!1,loginUrl:f,onSuccess:p,onError:u})=>{const{baseUrl:y,apiKey:T,appId:E}=pe(),c={name:"",email:"",password:"",...l&&{avatarUrl:""}},[b,w]=k.useState(c),[U,M]=k.useState(!1),[I,C]=k.useState(!1),[L,m]=k.useState(null),[z,v]=k.useState({}),D=typeof window<"u"?window.innerWidth<768:!1,H=a?"#ffffff":"#111827",A=a?"#a1a1aa":"#6b7280",X=a?"rgba(255,255,255,0.05)":"rgba(0,0,0,0.02)",V=a?"rgba(255,255,255,0.1)":"rgba(0,0,0,0.1)",P=S=>{const{name:Y,value:x}=S.target;w(R=>({...R,[Y]:x})),z[Y]&&v(R=>({...R,[Y]:void 0}))},K=()=>{const S={};return b.name.trim()||(S.name="Name is required"),b.email.trim()?/\S+@\S+\.\S+/.test(b.email)||(S.email="Invalid email address"):S.email="Email is required",b.password?b.password.length<6&&(S.password="Password must be at least 6 characters"):S.password="Password is required",v(S),Object.keys(S).length===0},J=async S=>{if(S.preventDefault(),!!K()){C(!0),m(null);try{const Y={...b,appId:E},x=await Cn(Y,{baseUrl:y,apiKey:T});m({type:"success",text:"Account created successfully!"}),p&&p(x),window.location.reload()}catch(Y){const x=Y.message||"Signup failed. Please try again.";m({type:"error",text:x}),u&&u(Y)}finally{C(!1)}}},_={width:"100%",padding:D?"14px 14px 14px 44px":"14px 16px 14px 44px",backgroundColor:X,border:`1px solid ${V}`,borderRadius:"12px",color:H,fontSize:"15px",outline:"none",transition:"all 0.2s ease",boxSizing:"border-box"};return n.jsxs("div",{style:{display:"flex",justifyContent:"center",alignItems:"center"},children:[n.jsxs("div",{style:{minWidth:D?"320px":"380px",width:"100%",maxWidth:D?"340px":"390px",display:"flex",flexDirection:"column",borderRadius:"10px",fontFamily:"'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif",backgroundColor:a?"#000000":"#ffffff",padding:D?"30px 24px":"32px 28px"},children:[n.jsxs("div",{style:{display:"flex",flexDirection:"column",alignItems:"center",marginBottom:"20px"},children:[e?n.jsx("img",{src:e,alt:"Logo",style:{height:"50px",width:"50px",marginBottom:"10px"}}):n.jsx(ye,{size:40,color:o,style:{marginBottom:"10px"}}),n.jsx("h2",{style:{fontSize:"24px",fontWeight:700,color:H,margin:0},children:t}),n.jsx("p",{style:{fontSize:"14px",color:A,margin:"6px 0 0 0"},children:r})]}),l&&b.avatarUrl&&n.jsx("div",{style:{display:"flex",justifyContent:"center",marginBottom:"16px"},children:n.jsx("img",{src:b.avatarUrl,alt:"Avatar Preview",style:{width:"60px",height:"60px",borderRadius:"50%",objectFit:"cover",border:`2px solid ${o}30`},onError:S=>{const Y=S.target;Y.style.display="none"}})}),n.jsxs("form",{onSubmit:J,style:{display:"flex",flexDirection:"column",gap:"14px"},children:[n.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"4px"},children:[n.jsx("label",{htmlFor:"signup-name",style:{fontSize:"14px",fontWeight:500,color:H},children:"Full Name"}),n.jsxs("div",{style:{position:"relative"},children:[n.jsx(ye,{size:20,style:{position:"absolute",left:"14px",top:"50%",transform:"translateY(-50%)",color:A}}),n.jsx("input",{id:"signup-name",type:"text",name:"name",placeholder:"Enter your full name",value:b.name,onChange:P,style:{..._,borderColor:z.name?"#ef4444":V}})]}),z.name&&n.jsx("span",{style:{color:"#ef4444",fontSize:"12px",marginTop:"2px"},children:z.name})]}),n.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"4px"},children:[n.jsx("label",{htmlFor:"signup-email",style:{fontSize:"14px",fontWeight:500,color:H},children:"Email Address"}),n.jsxs("div",{style:{position:"relative"},children:[n.jsx(ue,{size:20,style:{position:"absolute",left:"14px",top:"50%",transform:"translateY(-50%)",color:A}}),n.jsx("input",{id:"signup-email",type:"email",name:"email",placeholder:"Enter your email address",value:b.email,onChange:P,style:{..._,borderColor:z.email?"#ef4444":V}})]}),z.email&&n.jsx("span",{style:{color:"#ef4444",fontSize:"12px",marginTop:"2px"},children:z.email})]}),n.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"4px"},children:[n.jsx("label",{htmlFor:"signup-password",style:{fontSize:"14px",fontWeight:500,color:H},children:"Password"}),n.jsxs("div",{style:{position:"relative"},children:[n.jsx(me,{size:20,style:{position:"absolute",left:"14px",top:"50%",transform:"translateY(-50%)",color:A}}),n.jsx("input",{id:"signup-password",type:U?"text":"password",name:"password",placeholder:"Create a secure password",value:b.password,onChange:P,style:{..._,borderColor:z.password?"#ef4444":V}}),n.jsx("button",{type:"button",onClick:()=>M(!U),style:{position:"absolute",right:"14px",top:"50%",transform:"translateY(-50%)",background:"transparent",border:"none",color:A,cursor:"pointer",padding:"4px"},children:U?n.jsx(et,{size:20}):n.jsx(tt,{size:20})})]}),z.password&&n.jsx("span",{style:{color:"#ef4444",fontSize:"12px",marginTop:"2px"},children:z.password})]}),l&&n.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"4px"},children:[n.jsx("label",{htmlFor:"signup-avatar",style:{fontSize:"14px",fontWeight:500,color:H},children:"Avatar URL (Optional)"}),n.jsxs("div",{style:{position:"relative"},children:[n.jsx(Yt,{size:20,style:{position:"absolute",left:"14px",top:"50%",transform:"translateY(-50%)",color:A}}),n.jsx("input",{id:"signup-avatar",type:"url",name:"avatarUrl",placeholder:"Paste your avatar image URL",value:b.avatarUrl||"",onChange:P,style:_})]})]}),n.jsx("div",{style:{display:"flex",justifyContent:"space-between",fontSize:"13px",marginTop:"6px"},children:f&&n.jsx("a",{href:f,style:{color:o,textDecoration:"none",fontWeight:500},children:"Already have an account?"})}),L&&n.jsxs("div",{style:{padding:"12px",borderRadius:"12px",fontSize:"12px",display:"flex",alignItems:"start",gap:"10px",backgroundColor:L.type==="success"?`${o}15`:"rgba(239,68,68,0.1)",border:L.type==="success"?`1px solid ${o}30`:"1px solid rgba(239,68,68,0.3)",color:L.type==="success"?o:"#ef4444"},children:[L.type==="success"?n.jsx(de,{size:20}):n.jsx(oe,{size:20}),n.jsx("span",{children:L.text})]}),n.jsx("button",{type:"submit",disabled:I,style:{padding:"12px",background:i,color:"#fff",border:"none",borderRadius:"10px",fontWeight:600,cursor:I?"not-allowed":"pointer",opacity:I?.7:1,marginTop:"8px",display:"flex",alignItems:"center",justifyContent:"center",gap:"8px"},children:I?n.jsxs(n.Fragment,{children:[n.jsx(Un,{size:18,style:{animation:"spin 1s linear infinite"}}),"Creating Account..."]}):"Create Account"})]}),n.jsxs("div",{style:{textAlign:"center",fontSize:"12px",color:A,marginTop:"20px",padding:"0 4px"},children:["Secure authentication powered by"," ",n.jsx("span",{style:{color:o,fontWeight:600},children:"Neuctra Authix"})]})]}),n.jsx("style",{children:`
188
193
  @keyframes spin {
189
194
  from { transform: rotate(0deg); }
190
195
  to { transform: rotate(360deg); }
191
196
  }
192
- `})]})},Wn=async(e,t)=>{const{email:r,password:n,appId:o}=e,{baseUrl:i,apiKey:a}=t;if(!a)throw new Error("API key is required for login");try{const l=await $.post(`${i}/users/login`,{email:r,password:n,appId:o},{headers:{"Content-Type":"application/json","x-api-key":a}});return l.data?.user&&localStorage.setItem("userInfo",JSON.stringify(l.data.user)),l.data.user}catch(l){const h=l.response?.data?.message||l.message||"Login failed";throw console.error("Login API Error:",h),{success:!1,message:h,status:l.response?.status||500}}},Hn=({logoUrl:e,title:t="Sign In to Your Account",subtitle:r="Welcome back! Please enter your details",footerText:n="Secure authentication powered by Neuctra Authix",primaryColor:o="#00C214",gradient:i="linear-gradient(135deg, #22c55e, #00C214)",darkMode:a=!0,signupUrl:l,onSuccess:h,onError:p})=>{const{baseUrl:u,apiKey:b,appId:C}=ie(),[k,c]=j.useState("login"),[g,y]=j.useState(1),[I,W]=j.useState(!1),[S,F]=j.useState(!1),[D,m]=j.useState(null),[_,w]=j.useState(""),[M,V]=j.useState(""),[U,A]=j.useState({email:"",otp:"",newPassword:"",appId:C}),O=window.innerWidth<768,E=a?"#ffffff":"#111827",N=a?"#a1a1aa":"#6b7280",T=a?"rgba(255,255,255,0.05)":"rgba(0,0,0,0.02)",P=a?"rgba(255,255,255,0.1)":"rgba(0,0,0,0.1)",B=async x=>{x.preventDefault(),F(!0),m(null);try{const v=await Wn({email:_,password:M,appId:C},{baseUrl:u,apiKey:b});m({type:"success",text:`Welcome ${v.name}`}),h?.(v),window.location.reload()}catch(v){const H=v.message||"Login failed";m({type:"error",text:H}),p?.(v)}finally{F(!1)}},q=x=>{A({...U,[x.target.name]:x.target.value})},f=async x=>{x.preventDefault(),F(!0),m(null);try{const v=await $.post(`${u}/users/forgot-password`,{email:U.email,appId:C},{headers:{"x-api-key":b}});v.data.success?(y(2),m({type:"success",text:"OTP sent to your email"})):m({type:"error",text:v.data.message||"Failed to send OTP"})}catch(v){m({type:"error",text:v.response?.data?.message||"Something went wrong"})}finally{F(!1)}},R=async x=>{x.preventDefault(),F(!0),m(null);try{const v=await $.post(`${u}/users/reset-password`,U,{headers:{"x-api-key":b}});v.data.success?(m({type:"success",text:"Password reset successfully!"}),y(1),A({email:"",otp:"",newPassword:"",appId:C}),c("login")):m({type:"error",text:v.data.message||"Reset failed"})}catch(v){m({type:"error",text:v.response?.data?.message||"Something went wrong"})}finally{F(!1)}},L={width:"100%",padding:O?"14px 14px 14px 44px":"16px 16px 16px 44px",backgroundColor:T,border:`1px solid ${P}`,borderRadius:"12px",color:E,fontSize:"15px",outline:"none",transition:"all 0.2s ease"};return s.jsx("div",{style:{display:"flex",justifyContent:"center",alignItems:"center"},children:s.jsxs("div",{style:{minWidth:O?"320px":"340px",maxWidth:"390px",width:"100%",display:"flex",flexDirection:"column",borderRadius:"10px",fontFamily:"'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif",backgroundColor:a?"#000000":"#ffffff",padding:O?"30px 24px":"32px 28px"},children:[s.jsxs("div",{style:{display:"flex",flexDirection:"column",alignItems:"center",marginBottom:"20px"},children:[e?s.jsx("img",{src:e,alt:"Logo",style:{height:"50px",width:"50px",marginBottom:"10px"}}):s.jsx(fe,{size:40,color:o,style:{marginBottom:"10px"}}),s.jsx("h2",{style:{fontSize:"24px",fontWeight:700,color:E,margin:0},children:k==="login"?t:g===1?"Forgot Password":"Reset Password"}),s.jsx("p",{style:{fontSize:"14px",color:N,margin:"6px 0 0 0"},children:k==="login"?r:"Follow the steps to reset your password"})]}),k==="login"&&s.jsxs("form",{onSubmit:B,style:{display:"flex",flexDirection:"column",gap:"14px"},children:[s.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"4px"},children:[s.jsx("label",{htmlFor:"login-email",style:{fontSize:"14px",fontWeight:500,color:a?"#ffffff":"#000000"},children:"Email Address"}),s.jsxs("div",{style:{position:"relative"},children:[s.jsx(Se,{size:20,style:{position:"absolute",left:"14px",top:"50%",transform:"translateY(-50%)",color:N}}),s.jsx("input",{id:"login-email",type:"email",placeholder:"Enter your email",value:_,onChange:x=>w(x.target.value),style:L})]})]}),s.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"4px"},children:[s.jsx("label",{htmlFor:"login-password",style:{fontSize:"14px",fontWeight:500,color:a?"#ffffff":"#000000"},children:"Password"}),s.jsxs("div",{style:{position:"relative"},children:[s.jsx(pe,{size:20,style:{position:"absolute",left:"14px",top:"50%",transform:"translateY(-50%)",color:N}}),s.jsx("input",{id:"login-password",type:I?"text":"password",placeholder:"Enter your password",value:M,onChange:x=>V(x.target.value),style:L}),s.jsx("button",{type:"button",onClick:()=>W(!I),style:{position:"absolute",right:"14px",padding:"4px",top:"50%",transform:"translateY(-50%)",background:"transparent",border:"none",color:N,cursor:"pointer"},children:I?s.jsx(Ze,{size:20}):s.jsx(Qe,{size:20})})]})]}),s.jsxs("div",{style:{display:"flex",justifyContent:"space-between",fontSize:"13px"},children:[l&&s.jsx("a",{href:l,style:{color:o,textDecoration:"none",fontWeight:500},children:"Create new account"}),s.jsx("button",{type:"button",onClick:()=>c("forgot"),style:{background:"none",border:"none",color:o,fontWeight:500,cursor:"pointer"},children:"Forgot password?"})]}),s.jsx("button",{type:"submit",disabled:S,style:{padding:"12px",background:i,color:"#fff",border:"none",borderRadius:"10px",fontWeight:600},children:S?"Signing In...":"Sign In"})]}),k==="forgot"&&s.jsxs("form",{onSubmit:g===1?f:R,style:{display:"flex",flexDirection:"column",gap:"14px"},children:[g===1?s.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"4px"},children:[s.jsx("label",{htmlFor:"forgot-email",style:{fontSize:"14px",fontWeight:500,color:a?"#ffffff":"#000000"},children:"Email Address"}),s.jsxs("div",{style:{position:"relative"},children:[s.jsx(Se,{size:20,style:{position:"absolute",left:"14px",top:"50%",transform:"translateY(-50%)",color:N}}),s.jsx("input",{id:"forgot-email",type:"email",name:"email",placeholder:"Enter your email",value:U.email,onChange:q,style:L})]})]}):s.jsxs(s.Fragment,{children:[s.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"6px"},children:[s.jsx("label",{htmlFor:"otp",style:{fontSize:"14px",fontWeight:500,color:a?"#ffffff":"#000000"},children:"One-Time Password (OTP)"}),s.jsxs("div",{style:{position:"relative"},children:[s.jsx(On,{size:20,style:{position:"absolute",left:"14px",top:"50%",transform:"translateY(-50%)",color:N}}),s.jsx("input",{id:"otp",type:"text",name:"otp",placeholder:"Enter OTP",value:U.otp,onChange:q,style:L})]})]}),s.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"6px"},children:[s.jsx("label",{htmlFor:"newPassword",style:{fontSize:"14px",fontWeight:500,color:a?"#ffffff":"#000000"},children:"New Password"}),s.jsxs("div",{style:{position:"relative"},children:[s.jsx(pe,{size:20,style:{position:"absolute",left:"14px",top:"50%",transform:"translateY(-50%)",color:N}}),s.jsx("input",{id:"newPassword",type:"password",name:"newPassword",placeholder:"Enter new password",value:U.newPassword,onChange:q,style:L})]})]})]}),s.jsx("button",{type:"submit",disabled:S,style:{padding:"12px",background:i,color:"#fff",border:"none",fontSize:"15px",borderRadius:"10px",fontWeight:600},children:S?"Please wait...":g===1?"Send Reset OTP":"Reset Password"}),s.jsx("button",{type:"button",onClick:()=>{c("login"),y(1)},style:{background:"none",border:"none",color:N,marginTop:"6px",cursor:"pointer"},children:"Back to Login"})]}),D&&s.jsxs("div",{style:{marginTop:"16px",padding:"12px",borderRadius:"12px",fontSize:"14px",display:"flex",alignItems:"center",gap:"10px",backgroundColor:D.type==="success"?`${o}15`:"rgba(239,68,68,0.1)",border:D.type==="success"?`1px solid ${o}30`:"1px solid rgba(239,68,68,0.3)",color:D.type==="success"?o:"#ef4444"},children:[D.type==="success"?s.jsx(ze,{size:20}):s.jsx(ae,{size:20}),s.jsx("span",{children:D.text})]}),s.jsxs("div",{style:{textAlign:"center",fontSize:"12px",color:N,marginTop:"20px",padding:"0 4px"},children:["Secure authentication powered by"," ",s.jsx("span",{style:{color:o,fontWeight:600},children:"Neuctra Authix"})]})]})})},qn=()=>{try{const e=localStorage.getItem("userInfo");return!!(e&&e!=="undefined")}catch{return!1}},Yn=({children:e})=>qn()?s.jsx("div",{children:e??s.jsxs("div",{style:{padding:"20px",border:"2px solid green",margin:"10px",borderRadius:"8px"},children:[s.jsx("h2",{children:"Signed In Content"}),s.jsx("p",{children:"This content only shows when user is signed in."})]})}):null,Vn=()=>{try{const e=localStorage.getItem("userInfo");return!!(e&&e!=="undefined")}catch{return!1}},Jn=({children:e})=>Vn()?null:s.jsx("div",{children:e??s.jsxs("div",{style:{padding:"20px",border:"2px solid blue",margin:"10px",borderRadius:"8px"},children:[s.jsx("h2",{children:"Signed Out Content"}),s.jsx("p",{children:"This content only shows when user is signed out."})]})}),Kn=({isOpen:e,onClose:t,onUpdate:r,colors:n})=>{const[o,i]=j.useState(""),[a,l]=j.useState(!1),[h,p]=j.useState(!1),[u,b]=j.useState({isValid:!1,message:"",type:null});if(j.useEffect(()=>{const c=()=>{p(window.innerWidth<640)};return c(),window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[]),j.useEffect(()=>{if(!o.trim()){b({isValid:!1,message:"",type:null});return}try{const c=new URL(o),g=/\.(jpg|jpeg|png|gif|webp|svg)$/i.test(c.pathname);b(g?{isValid:!0,message:"Valid image URL",type:"success"}:{isValid:!1,message:"URL should point to an image file",type:"warning"})}catch{b({isValid:!1,message:"Please enter a valid URL",type:"error"})}},[o]),!e)return null;const C=async()=>{if(!(!o||!u.isValid)){l(!0);try{await r(o)&&(i(""),t())}finally{l(!1)}}},k=c=>{c.target===c.currentTarget&&t()};return s.jsxs("div",{style:{position:"fixed",inset:0,background:"rgba(0,0,0,0.8)",backdropFilter:"blur(8px)",display:"flex",alignItems:"center",justifyContent:"center",padding:"16px",zIndex:1e3},onClick:k,children:[s.jsxs("div",{style:{backgroundColor:n.surface,border:`1px solid ${n.border}`,borderRadius:"20px",width:"100%",maxWidth:"480px",padding:"24px",boxShadow:"0 32px 64px rgba(0,0,0,0.4)",animation:"modalSlideIn 0.3s ease-out"},className:"avatar-modal-container",children:[s.jsxs("div",{style:{display:"flex",alignItems:"flex-start",justifyContent:"space-between",marginBottom:"24px",gap:"16px"},children:[s.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"12px",flex:1},children:[s.jsx("div",{style:{width:"44px",height:"44px",borderRadius:"12px",background:`linear-gradient(135deg, ${n.accent}20, ${n.accent}40)`,display:"flex",alignItems:"center",justifyContent:"center",color:n.accent,flexShrink:0},children:s.jsx(Xe,{size:22})}),s.jsx("div",{children:s.jsx("h3",{style:{color:n.textPrimary,margin:0,fontSize:"20px",fontWeight:700,lineHeight:"1.3"},children:"Update Avatar"})})]}),s.jsx("button",{onClick:t,"aria-label":"Close avatar modal",style:{background:"transparent",border:"none",color:n.textTertiary,cursor:"pointer",padding:"8px",borderRadius:"8px",width:"36px",height:"36px",display:"flex",alignItems:"center",justifyContent:"center",flexShrink:0,transition:"all 0.2s ease"},onMouseOver:c=>{c.currentTarget.style.backgroundColor=n.border,c.currentTarget.style.color=n.textPrimary},onMouseOut:c=>{c.currentTarget.style.backgroundColor="transparent",c.currentTarget.style.color=n.textTertiary},children:s.jsx(Fe,{size:20})})]}),s.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"20px"},children:[s.jsxs("div",{children:[s.jsxs("label",{htmlFor:"avatar-url",style:{display:"flex",marginBottom:"8px",color:n.textPrimary,fontSize:"14px",fontWeight:500,alignItems:"center",gap:"6px"},children:[s.jsx(_n,{size:16}),"Avatar URL"]}),s.jsxs("div",{style:{position:"relative"},children:[s.jsx("input",{type:"url",id:"avatar-url",placeholder:"https://example.com/your-avatar.jpg",value:o,onChange:c=>i(c.target.value),style:{width:"100%",padding:"14px 16px",paddingLeft:"44px",borderRadius:"12px",border:`1.5px solid ${u.type==="error"?n.error:u.type==="success"?n.success:n.border}`,backgroundColor:"transparent",color:n.textPrimary,fontSize:"15px",outline:"none",transition:"all 0.2s ease",boxSizing:"border-box"},onFocus:c=>{c.target.style.borderColor=n.accent,c.target.style.boxShadow=`0 0 0 3px ${n.accent}20`},onBlur:c=>{c.target.style.borderColor=u.type==="error"?n.error:u.type==="success"?n.success:n.border,c.target.style.boxShadow="none"},disabled:a}),s.jsx("div",{style:{position:"absolute",left:"16px",top:"50%",transform:"translateY(-50%)",color:n.textTertiary},children:s.jsx(qt,{size:18})})]}),u.message&&s.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"6px",marginTop:"8px",fontSize:"13px",color:u.type==="success"?n.success:u.type==="error"?n.error:n.textTertiary},children:[u.type==="success"&&s.jsx(ze,{size:14}),u.type==="error"&&s.jsx(ae,{size:14}),u.type==="warning"&&s.jsx(ae,{size:14}),u.message]})]}),o&&u.type==="success"&&s.jsxs("div",{style:{padding:"16px",backgroundColor:`${n.success}10`,border:`1px solid ${n.success}20`,borderRadius:"12px",textAlign:"center"},children:[s.jsx("p",{style:{color:n.textSecondary,fontSize:"13px",fontWeight:500,margin:"0 0 12px 0"},children:"Preview"}),s.jsx("img",{src:o,alt:"Avatar preview",style:{width:"80px",height:"80px",borderRadius:"50%",objectFit:"cover",border:`2px solid ${n.success}40`,margin:"0 auto"},onError:c=>{c.currentTarget.style.display="none"}})]})]}),s.jsxs("div",{style:{display:"flex",gap:"12px",flexDirection:h?"column-reverse":"row",justifyContent:"flex-end",alignItems:"stretch",marginTop:"24px"},children:[s.jsx("button",{onClick:t,disabled:a,style:{padding:"10px 24px",borderRadius:"10px",border:`1.5px solid ${n.border}`,background:"transparent",color:n.textPrimary,fontSize:"14px",fontWeight:500,cursor:a?"not-allowed":"pointer",flex:h?"none":1,minWidth:h?"100%":"120px",opacity:a?.6:1,transition:"all 0.2s ease"},onMouseOver:c=>{a||(c.currentTarget.style.backgroundColor=n.border,c.currentTarget.style.transform="translateY(-1px)")},onMouseOut:c=>{a||(c.currentTarget.style.backgroundColor="transparent",c.currentTarget.style.transform="translateY(0)")},children:"Cancel"}),s.jsx("button",{onClick:C,disabled:a||!u.isValid,style:{padding:"10px 24px",borderRadius:"10px",border:"none",background:`linear-gradient(135deg, ${n.accent}, ${n.accent}E6)`,color:"#fff",fontSize:"14px",fontWeight:600,cursor:a||!u.isValid?"not-allowed":"pointer",flex:h?"none":1,minWidth:h?"100%":"140px",opacity:a||!u.isValid?.6:1,display:"flex",alignItems:"center",justifyContent:"center",gap:"8px",transition:"all 0.2s ease",boxShadow:a||!u.isValid?"none":`0 4px 12px ${n.accent}40`},onMouseOver:c=>{!a&&u.isValid&&(c.currentTarget.style.transform="translateY(-1px)",c.currentTarget.style.boxShadow=`0 6px 20px ${n.accent}60`)},onMouseOut:c=>{!a&&u.isValid&&(c.currentTarget.style.transform="translateY(0)",c.currentTarget.style.boxShadow=`0 4px 12px ${n.accent}40`)},children:a?s.jsxs(s.Fragment,{children:[s.jsx(ue,{size:16,style:{animation:"spin 1s linear infinite"}}),"Updating..."]}):s.jsxs(s.Fragment,{children:[s.jsx(Xe,{size:16}),"Update Avatar"]})})]})]}),s.jsx("style",{children:`
197
+ `})]})},Vn=async(e,t)=>{const{email:r,password:s,appId:o}=e,{baseUrl:i,apiKey:a}=t;if(!a)throw new Error("API key is required for login");try{const l=await W.post(`${i}/users/login`,{email:r,password:s,appId:o},{headers:{"Content-Type":"application/json","x-api-key":a}});return l.data?.user&&localStorage.setItem("userInfo",JSON.stringify(l.data.user)),l.data.user}catch(l){const f=l.response?.data?.message||l.message||"Login failed";throw console.error("Login API Error:",f),{success:!1,message:f,status:l.response?.status||500}}},qn=({logoUrl:e,title:t="Sign In to Your Account",subtitle:r="Welcome back! Please enter your details",footerText:s="Secure authentication powered by Neuctra Authix",primaryColor:o="#00C214",gradient:i="linear-gradient(135deg, #22c55e, #00C214)",darkMode:a=!0,signupUrl:l,onSuccess:f,onError:p})=>{const{baseUrl:u,apiKey:y,appId:T}=pe(),[E,c]=k.useState("login"),[b,w]=k.useState(1),[U,M]=k.useState(!1),[I,C]=k.useState(!1),[L,m]=k.useState(null),[z,v]=k.useState(""),[D,H]=k.useState(""),[A,X]=k.useState({email:"",otp:"",newPassword:"",appId:T}),V=window.innerWidth<768,P=a?"#ffffff":"#111827",K=a?"#a1a1aa":"#6b7280",J=a?"rgba(255,255,255,0.05)":"rgba(0,0,0,0.02)",_=a?"rgba(255,255,255,0.1)":"rgba(0,0,0,0.1)",S=async B=>{B.preventDefault(),C(!0),m(null);try{const h=await Vn({email:z,password:D,appId:T},{baseUrl:u,apiKey:y});m({type:"success",text:`Welcome ${h.name}`}),f?.(h),window.location.reload()}catch(h){const g=h.message||"Login failed";m({type:"error",text:g}),p?.(h)}finally{C(!1)}},Y=B=>{X({...A,[B.target.name]:B.target.value})},x=async B=>{B.preventDefault(),C(!0),m(null);try{const h=await W.post(`${u}/users/forgot-password`,{email:A.email,appId:T},{headers:{"x-api-key":y}});h.data.success?(w(2),m({type:"success",text:"OTP sent to your email"})):m({type:"error",text:h.data.message||"Failed to send OTP"})}catch(h){m({type:"error",text:h.response?.data?.message||"Something went wrong"})}finally{C(!1)}},R=async B=>{B.preventDefault(),C(!0),m(null);try{const h=await W.post(`${u}/users/reset-password`,A,{headers:{"x-api-key":y}});h.data.success?(m({type:"success",text:"Password reset successfully!"}),w(1),X({email:"",otp:"",newPassword:"",appId:T}),c("login")):m({type:"error",text:h.data.message||"Reset failed"})}catch(h){m({type:"error",text:h.response?.data?.message||"Something went wrong"})}finally{C(!1)}},F={width:"100%",padding:V?"14px 14px 14px 44px":"14px 16px 14px 44px",backgroundColor:J,border:`1px solid ${_}`,borderRadius:"12px",color:P,fontSize:"15px",outline:"none",transition:"all 0.2s ease"};return n.jsx("div",{style:{display:"flex",justifyContent:"center",alignItems:"center"},children:n.jsxs("div",{style:{minWidth:V?"320px":"380px",maxWidth:V?"340px":"390px",width:"100%",display:"flex",flexDirection:"column",borderRadius:"10px",fontFamily:"'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif",backgroundColor:a?"#000000":"#ffffff",padding:V?"30px 24px":"32px 28px"},children:[n.jsxs("div",{style:{display:"flex",flexDirection:"column",alignItems:"center",marginBottom:"20px"},children:[e?n.jsx("img",{src:e,alt:"Logo",style:{height:"50px",width:"50px",marginBottom:"10px"}}):n.jsx(ye,{size:40,color:o,style:{marginBottom:"10px"}}),n.jsx("h2",{style:{fontSize:"24px",fontWeight:700,color:P,margin:0},children:E==="login"?t:b===1?"Forgot Password":"Reset Password"}),n.jsx("p",{style:{fontSize:"14px",color:K,margin:"6px 0 0 0"},children:E==="login"?r:"Follow the steps to reset your password"})]}),E==="login"&&n.jsxs("form",{onSubmit:S,style:{display:"flex",flexDirection:"column",gap:"14px"},children:[n.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"4px"},children:[n.jsx("label",{htmlFor:"login-email",style:{fontSize:"14px",fontWeight:500,color:a?"#ffffff":"#000000"},children:"Email Address"}),n.jsxs("div",{style:{position:"relative"},children:[n.jsx(ue,{size:20,style:{position:"absolute",left:"14px",top:"50%",transform:"translateY(-50%)",color:K}}),n.jsx("input",{id:"login-email",type:"email",placeholder:"Enter your email",value:z,onChange:B=>v(B.target.value),style:F})]})]}),n.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"4px"},children:[n.jsx("label",{htmlFor:"login-password",style:{fontSize:"14px",fontWeight:500,color:a?"#ffffff":"#000000"},children:"Password"}),n.jsxs("div",{style:{position:"relative"},children:[n.jsx(me,{size:20,style:{position:"absolute",left:"14px",top:"50%",transform:"translateY(-50%)",color:K}}),n.jsx("input",{id:"login-password",type:U?"text":"password",placeholder:"Enter your password",value:D,onChange:B=>H(B.target.value),style:F}),n.jsx("button",{type:"button",onClick:()=>M(!U),style:{position:"absolute",right:"14px",padding:"4px",top:"50%",transform:"translateY(-50%)",background:"transparent",border:"none",color:K,cursor:"pointer"},children:U?n.jsx(et,{size:20}):n.jsx(tt,{size:20})})]})]}),n.jsxs("div",{style:{display:"flex",justifyContent:"space-between",fontSize:"13px"},children:[l&&n.jsx("a",{href:l,style:{color:o,textDecoration:"none",fontWeight:500},children:"Create new account"}),n.jsx("button",{type:"button",onClick:()=>c("forgot"),style:{background:"none",border:"none",color:o,fontWeight:500,cursor:"pointer"},children:"Forgot password?"})]}),n.jsx("button",{type:"submit",disabled:I,style:{padding:"12px",background:i,color:"#fff",border:"none",borderRadius:"10px",fontWeight:600},children:I?"Signing In...":"Sign In"})]}),E==="forgot"&&n.jsxs("form",{onSubmit:b===1?x:R,style:{display:"flex",flexDirection:"column",gap:"14px"},children:[b===1?n.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"4px"},children:[n.jsx("label",{htmlFor:"forgot-email",style:{fontSize:"14px",fontWeight:500,color:a?"#ffffff":"#000000"},children:"Email Address"}),n.jsxs("div",{style:{position:"relative"},children:[n.jsx(ue,{size:20,style:{position:"absolute",left:"14px",top:"50%",transform:"translateY(-50%)",color:K}}),n.jsx("input",{id:"forgot-email",type:"email",name:"email",placeholder:"Enter your email",value:A.email,onChange:Y,style:F})]})]}):n.jsxs(n.Fragment,{children:[n.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"6px"},children:[n.jsx("label",{htmlFor:"otp",style:{fontSize:"14px",fontWeight:500,color:a?"#ffffff":"#000000"},children:"One-Time Password (OTP)"}),n.jsxs("div",{style:{position:"relative"},children:[n.jsx(Kt,{size:20,style:{position:"absolute",left:"14px",top:"50%",transform:"translateY(-50%)",color:K}}),n.jsx("input",{id:"otp",type:"text",name:"otp",placeholder:"Enter OTP",value:A.otp,onChange:Y,style:F})]})]}),n.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"6px"},children:[n.jsx("label",{htmlFor:"newPassword",style:{fontSize:"14px",fontWeight:500,color:a?"#ffffff":"#000000"},children:"New Password"}),n.jsxs("div",{style:{position:"relative"},children:[n.jsx(me,{size:20,style:{position:"absolute",left:"14px",top:"50%",transform:"translateY(-50%)",color:K}}),n.jsx("input",{id:"newPassword",type:"password",name:"newPassword",placeholder:"Enter new password",value:A.newPassword,onChange:Y,style:F})]})]})]}),n.jsx("button",{type:"submit",disabled:I,style:{padding:"12px",background:i,color:"#fff",border:"none",fontSize:"15px",borderRadius:"10px",fontWeight:600},children:I?"Please wait...":b===1?"Send Reset OTP":"Reset Password"}),n.jsx("button",{type:"button",onClick:()=>{c("login"),w(1)},style:{background:"none",border:"none",color:K,marginTop:"6px",cursor:"pointer"},children:"Back to Login"})]}),L&&n.jsxs("div",{style:{marginTop:"16px",padding:"12px",borderRadius:"12px",fontSize:"14px",display:"flex",alignItems:"center",gap:"10px",backgroundColor:L.type==="success"?`${o}15`:"rgba(239,68,68,0.1)",border:L.type==="success"?`1px solid ${o}30`:"1px solid rgba(239,68,68,0.3)",color:L.type==="success"?o:"#ef4444"},children:[L.type==="success"?n.jsx(de,{size:20}):n.jsx(oe,{size:20}),n.jsx("span",{children:L.text})]}),n.jsxs("div",{style:{textAlign:"center",fontSize:"12px",color:K,marginTop:"20px",padding:"0 4px"},children:["Secure authentication powered by"," ",n.jsx("span",{style:{color:o,fontWeight:600},children:"Neuctra Authix"})]})]})})},Yn=()=>{try{const e=localStorage.getItem("userInfo");return!!(e&&e!=="undefined")}catch{return!1}},Kn=({children:e})=>Yn()?n.jsx("div",{children:e??n.jsxs("div",{style:{padding:"20px",border:"2px solid green",margin:"10px",borderRadius:"8px"},children:[n.jsx("h2",{children:"Signed In Content"}),n.jsx("p",{children:"This content only shows when user is signed in."})]})}):null,Jn=()=>{try{const e=localStorage.getItem("userInfo");return!!(e&&e!=="undefined")}catch{return!1}},Xn=({children:e})=>Jn()?null:n.jsx("div",{children:e??n.jsxs("div",{style:{padding:"20px",border:"2px solid blue",margin:"10px",borderRadius:"8px"},children:[n.jsx("h2",{children:"Signed Out Content"}),n.jsx("p",{children:"This content only shows when user is signed out."})]})}),Gn=({isOpen:e,onClose:t,onSuccess:r,onError:s,userId:o,token:i,colors:a})=>{const{baseUrl:l,apiKey:f,appId:p}=pe(),[u,y]=k.useState(!1),[T,E]=k.useState(""),[c,b]=k.useState("warning"),[w,U]=k.useState(!1);if(k.useEffect(()=>{const m=()=>{U(window.innerWidth<640)};return m(),window.addEventListener("resize",m),()=>window.removeEventListener("resize",m)},[]),!e)return null;const M=async()=>{y(!0),b("processing");try{const{data:m}=await W.delete(`${l}/users/delete/${o}`,{data:{appId:p},headers:{"x-api-key":f}});m.success?(r(m.message||"Account deleted successfully"),b("success"),setTimeout(()=>{localStorage.removeItem("userInfo"),localStorage.removeItem("userToken"),window.location.href="/"},2e3)):(s(m.message||"Failed to delete account"),b("warning"))}catch(m){s(m.response?.data?.message||"Something went wrong"),b("warning")}finally{y(!1)}},I=T.toLowerCase()==="delete my account",C=m=>{m.target===m.currentTarget&&c!=="processing"&&c!=="success"&&t()},L=()=>{switch(c){case"warning":return n.jsxs(n.Fragment,{children:[n.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",marginBottom:"24px",gap:"16px"},children:[n.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"12px",flex:1},children:[n.jsx("div",{style:{width:"40px",height:"40px",borderRadius:"12px",background:"linear-gradient(135deg, #ef4444, #dc2626)",display:"flex",alignItems:"center",justifyContent:"center",color:"white",flexShrink:0},children:n.jsx(Le,{size:20})}),n.jsx("div",{children:n.jsx("h3",{style:{color:a.textPrimary,margin:0,fontSize:"20px",fontWeight:700,lineHeight:"1.3"},children:"Delete Account"})})]}),n.jsx("button",{onClick:t,"aria-label":"Close modal",style:{background:"transparent",border:"none",color:a.textTertiary,cursor:"pointer",padding:"8px",borderRadius:"8px",width:"36px",height:"36px",display:"flex",alignItems:"center",justifyContent:"center",flexShrink:0,transition:"all 0.2s ease"},onMouseOver:m=>{m.currentTarget.style.backgroundColor=a.border,m.currentTarget.style.color=a.textPrimary},onMouseOut:m=>{m.currentTarget.style.backgroundColor="transparent",m.currentTarget.style.color=a.textTertiary},children:n.jsx(Te,{size:20})})]}),n.jsxs("div",{style:{display:"flex",gap:"16px",padding:"20px",background:`${a.error}15`,border:`1px solid ${a.error}30`,borderRadius:"12px",marginBottom:"20px"},children:[n.jsx("div",{style:{color:a.error,flexShrink:0,display:"flex",alignItems:"flex-start"},children:n.jsx(Zt,{size:24})}),n.jsxs("div",{style:{flex:1},children:[n.jsx("h4",{style:{color:a.textPrimary,margin:"0 0 12px 0",fontSize:"16px",fontWeight:600},children:"Before you proceed..."}),n.jsx("div",{style:{display:"flex",flexDirection:"column",gap:"10px"},children:[{icon:n.jsx(zn,{size:16}),text:"All your data will be permanently deleted"},{icon:n.jsx(Wn,{size:16}),text:"This action cannot be reversed"},{icon:n.jsx(rt,{size:16}),text:"You will lose access to all services"}].map((m,z)=>n.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"10px",fontSize:"14px",color:a.textSecondary},children:[n.jsx("div",{style:{color:a.error,flexShrink:0},children:m.icon}),n.jsx("span",{children:m.text})]},z))})]})]}),n.jsxs("div",{style:{display:"flex",gap:"12px",flexDirection:w?"column-reverse":"row",justifyContent:"flex-end",alignItems:"stretch"},children:[n.jsx("button",{onClick:t,style:{padding:"10px 24px",borderRadius:"10px",border:`1.5px solid ${a.border}`,background:"transparent",color:a.textPrimary,fontSize:"14px",fontWeight:500,cursor:"pointer",flex:w?"none":1,minWidth:w?"100%":"120px",transition:"all 0.2s ease"},onMouseOver:m=>{m.currentTarget.style.backgroundColor=a.border,m.currentTarget.style.transform="translateY(-1px)"},onMouseOut:m=>{m.currentTarget.style.backgroundColor="transparent",m.currentTarget.style.transform="translateY(0)"},children:"Cancel"}),n.jsxs("button",{onClick:()=>b("confirmation"),style:{padding:"10px 24px",borderRadius:"10px",border:"none",background:"linear-gradient(135deg, #ef4444, #dc2626)",color:"white",fontSize:"14px",fontWeight:600,cursor:"pointer",flex:w?"none":1,minWidth:w?"100%":"140px",display:"flex",alignItems:"center",justifyContent:"center",gap:"8px",transition:"all 0.2s ease",boxShadow:"0 4px 12px rgba(239, 68, 68, 0.4)"},onMouseOver:m=>{m.currentTarget.style.transform="translateY(-1px)",m.currentTarget.style.boxShadow="0 6px 20px rgba(239, 68, 68, 0.5)"},onMouseOut:m=>{m.currentTarget.style.transform="translateY(0)",m.currentTarget.style.boxShadow="0 4px 12px rgba(239, 68, 68, 0.4)"},children:[n.jsx(Le,{size:16}),"Continue to Delete"]})]})]});case"confirmation":return n.jsxs(n.Fragment,{children:[n.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"12px",marginBottom:"24px"},children:[n.jsx("div",{style:{width:"40px",height:"40px",borderRadius:"12px",background:"linear-gradient(135deg, #f59e0b, #d97706)",display:"flex",alignItems:"center",justifyContent:"center",color:"white",flexShrink:0},children:n.jsx(Zt,{size:24})}),n.jsx("div",{style:{flex:1},children:n.jsx("h3",{style:{color:a.textPrimary,margin:0,fontSize:"20px",fontWeight:700,lineHeight:"1.3"},children:"Confirm Deletion"})})]}),n.jsxs("div",{style:{marginBottom:"24px"},children:[n.jsxs("p",{style:{color:a.textSecondary,marginBottom:"16px",fontSize:"14px",lineHeight:"1.5"},children:["Type"," ",n.jsx("strong",{style:{color:a.textPrimary},children:'"delete my account"'})," ","to confirm:"]}),n.jsx("input",{type:"text",value:T,onChange:m=>E(m.target.value),placeholder:"delete my account",style:{width:"100%",padding:"14px 16px",borderRadius:"10px",border:`2px solid ${I?a.success:a.error}`,backgroundColor:"transparent",color:a.textPrimary,fontSize:"15px",outline:"none",transition:"all 0.2s ease",boxSizing:"border-box"},onFocus:m=>{m.target.style.boxShadow=`0 0 0 3px ${a.accent}20`},onBlur:m=>{m.target.style.boxShadow="none"},autoFocus:!0}),I&&n.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"8px",marginTop:"10px",color:a.success,fontSize:"14px",fontWeight:500},children:[n.jsx(Qe,{size:16}),n.jsx("span",{children:"Confirmation accepted"})]})]}),n.jsxs("div",{style:{display:"flex",gap:"12px",flexDirection:"column-reverse",justifyContent:"flex-end",alignItems:"stretch"},children:[n.jsx("button",{onClick:()=>{b("warning"),E("")},style:{padding:"10px 24px",borderRadius:"10px",border:`1.5px solid ${a.border}`,background:"transparent",color:a.textPrimary,fontSize:"14px",fontWeight:500,cursor:"pointer",flex:w?"none":1,minWidth:w?"100%":"120px",transition:"all 0.2s ease"},onMouseOver:m=>{m.currentTarget.style.backgroundColor=a.border,m.currentTarget.style.transform="translateY(-1px)"},onMouseOut:m=>{m.currentTarget.style.backgroundColor="transparent",m.currentTarget.style.transform="translateY(0)"},children:"Go Back"}),n.jsxs("button",{onClick:M,disabled:!I||u,style:{padding:"10px 24px",borderRadius:"10px",border:"none",background:"linear-gradient(135deg, #ef4444, #dc2626)",color:"white",fontSize:"14px",fontWeight:600,cursor:!I||u?"not-allowed":"pointer",flex:w?"none":1,minWidth:w?"100%":"140px",opacity:!I||u?.6:1,display:"flex",alignItems:"center",justifyContent:"center",gap:"8px",transition:"all 0.2s ease",boxShadow:!I||u?"none":"0 4px 12px rgba(239, 68, 68, 0.4)"},onMouseOver:m=>{I&&!u&&(m.currentTarget.style.transform="translateY(-1px)",m.currentTarget.style.boxShadow="0 6px 20px rgba(239, 68, 68, 0.5)")},onMouseOut:m=>{I&&!u&&(m.currentTarget.style.transform="translateY(0)",m.currentTarget.style.boxShadow="0 4px 12px rgba(239, 68, 68, 0.4)")},children:[n.jsx(Le,{size:16}),"Yes, Delete My Account"]})]})]});case"processing":return n.jsxs(n.Fragment,{children:[n.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"12px",marginBottom:"24px"},children:[n.jsx("div",{style:{width:"40px",height:"40px",borderRadius:"12px",background:"linear-gradient(135deg, #6b7280, #4b5563)",display:"flex",alignItems:"center",justifyContent:"center",color:"white",flexShrink:0},children:n.jsx(ae,{size:20,style:{animation:"spin 1s linear infinite"}})}),n.jsxs("div",{style:{flex:1},children:[n.jsx("h3",{style:{color:a.textPrimary,margin:0,fontSize:"20px",fontWeight:700,lineHeight:"1.3"},children:"Deleting Account"}),n.jsx("p",{style:{color:a.textTertiary,margin:"4px 0 0 0",fontSize:"14px",lineHeight:"1.4"},children:"Please wait while we process your request"})]})]}),n.jsx("div",{style:{marginBottom:"20px"},children:n.jsx("div",{style:{display:"flex",flexDirection:"column",gap:"12px"},children:[{text:"Removing your data",active:!0},{text:"Closing active sessions",active:!1},{text:"Finalizing deletion",active:!1}].map((m,z)=>n.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"12px",padding:"12px",borderRadius:"8px",transition:"all 0.2s ease",backgroundColor:m.active?`${a.accent}10`:"transparent"},children:[n.jsx("div",{style:{width:"8px",height:"8px",borderRadius:"50%",backgroundColor:m.active?a.accent:a.textTertiary,transition:"all 0.3s ease",boxShadow:m.active?`0 0 0 4px ${a.accent}20`:"none"}}),n.jsx("span",{style:{fontSize:"14px",color:m.active?a.textPrimary:a.textSecondary,fontWeight:m.active?500:400},children:m.text})]},z))})}),n.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"10px",padding:"16px",background:`${a.accent}10`,borderRadius:"10px",fontSize:"14px",color:a.textSecondary},children:[n.jsx(Gt,{size:18,style:{color:a.accent,flexShrink:0}}),n.jsx("span",{children:"You will be redirected to the login page shortly"})]})]});case"success":return n.jsxs(n.Fragment,{children:[n.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"12px",marginBottom:"24px"},children:[n.jsx("div",{style:{width:"40px",height:"40px",borderRadius:"12px",background:"linear-gradient(135deg, #10b981, #059669)",display:"flex",alignItems:"center",justifyContent:"center",color:"white",flexShrink:0},children:n.jsx(Qe,{size:20})}),n.jsxs("div",{style:{flex:1},children:[n.jsx("h3",{style:{color:a.textPrimary,margin:0,fontSize:"20px",fontWeight:700,lineHeight:"1.3"},children:"Account Deleted"}),n.jsx("p",{style:{color:a.textTertiary,margin:"4px 0 0 0",fontSize:"14px",lineHeight:"1.4"},children:"Your account has been successfully deleted"})]})]}),n.jsxs("div",{style:{textAlign:"center",padding:"20px",background:`${a.success}10`,border:`1px solid ${a.success}20`,borderRadius:"12px",marginBottom:"24px"},children:[n.jsx(Qe,{size:48,style:{color:a.success,marginBottom:"12px",display:"block",margin:"0 auto 12px auto"}}),n.jsx("p",{style:{color:a.textPrimary,fontSize:"16px",fontWeight:600,margin:"0 0 8px 0"},children:"Goodbye!"}),n.jsx("p",{style:{color:a.textSecondary,fontSize:"14px",margin:0,lineHeight:"1.5"},children:"Your account and all associated data have been permanently removed from our systems."})]}),n.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"10px",padding:"16px",background:`${a.accent}10`,borderRadius:"10px",fontSize:"14px",color:a.textSecondary,justifyContent:"center"},children:[n.jsx(ae,{size:16,style:{animation:"spin 1s linear infinite",color:a.accent}}),n.jsx("span",{children:"Redirecting to login page..."})]})]})}};return n.jsxs("div",{style:{position:"fixed",inset:0,background:"rgba(0,0,0,0.8)",backdropFilter:"blur(8px)",display:"flex",alignItems:"center",justifyContent:"center",padding:"16px",zIndex:1e4,animation:"fadeIn 0.3s ease-out"},onClick:C,children:[n.jsx("div",{style:{backgroundColor:a.surface,border:`1px solid ${a.border}`,borderRadius:"20px",width:"100%",maxWidth:"480px",padding:"24px",boxShadow:"0 32px 64px rgba(0,0,0,0.4)",animation:"scaleIn 0.3s ease-out"},className:"delete-modal-container",children:L()}),n.jsx("style",{children:`
198
+ @keyframes fadeIn {
199
+ from { opacity: 0; }
200
+ to { opacity: 1; }
201
+ }
202
+
203
+ @keyframes scaleIn {
204
+ from {
205
+ opacity: 0;
206
+ transform: scale(0.9) translateY(20px);
207
+ }
208
+ to {
209
+ opacity: 1;
210
+ transform: scale(1) translateY(0);
211
+ }
212
+ }
213
+
214
+ @keyframes spin {
215
+ from { transform: rotate(0deg); }
216
+ to { transform: rotate(360deg); }
217
+ }
218
+
219
+ .delete-modal-container {
220
+ animation: scaleIn 0.3s ease-out;
221
+ }
222
+
223
+ /* Mobile responsiveness */
224
+ @media (max-width: 480px) {
225
+ .delete-modal-container {
226
+ padding: 20px 16px;
227
+ margin: 0;
228
+ border-radius: 16px 16px 0 0;
229
+ max-height: 90vh;
230
+ overflow-y: auto;
231
+ }
232
+ }
233
+
234
+ @media (max-width: 360px) {
235
+ .delete-modal-container {
236
+ padding: 16px 12px;
237
+ }
238
+ }
239
+
240
+ /* Reduced motion support */
241
+ @media (prefers-reduced-motion: reduce) {
242
+ .delete-modal-container {
243
+ animation: none;
244
+ }
245
+
246
+ * {
247
+ transition: none !important;
248
+ animation: none !important;
249
+ }
250
+ }
251
+ `})]})},Zn=({isOpen:e,onClose:t,onUpdate:r,colors:s})=>{const[o,i]=k.useState(""),[a,l]=k.useState(!1),[f,p]=k.useState(!1),[u,y]=k.useState({isValid:!1,message:"",type:null});if(k.useEffect(()=>{const c=()=>{p(window.innerWidth<640)};return c(),window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[]),k.useEffect(()=>{if(!o.trim()){y({isValid:!1,message:"",type:null});return}try{const c=new URL(o),b=/\.(jpg|jpeg|png|gif|webp|svg)$/i.test(c.pathname);y(b?{isValid:!0,message:"Valid image URL",type:"success"}:{isValid:!1,message:"URL should point to an image file",type:"warning"})}catch{y({isValid:!1,message:"Please enter a valid URL",type:"error"})}},[o]),!e)return null;const T=async()=>{if(!(!o||!u.isValid)){l(!0);try{await r(o)&&(i(""),t())}finally{l(!1)}}},E=c=>{c.target===c.currentTarget&&t()};return n.jsxs("div",{style:{position:"fixed",inset:0,background:"rgba(0,0,0,0.8)",backdropFilter:"blur(8px)",display:"flex",alignItems:"center",justifyContent:"center",padding:"16px",zIndex:1e3},onClick:E,children:[n.jsxs("div",{style:{backgroundColor:s.surface,border:`1px solid ${s.border}`,borderRadius:"20px",width:"100%",maxWidth:"480px",padding:"24px",boxShadow:"0 32px 64px rgba(0,0,0,0.4)",animation:"modalSlideIn 0.3s ease-out"},className:"avatar-modal-container",children:[n.jsxs("div",{style:{display:"flex",alignItems:"flex-start",justifyContent:"space-between",marginBottom:"24px",gap:"16px"},children:[n.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"12px",flex:1},children:[n.jsx("div",{style:{width:"44px",height:"44px",borderRadius:"12px",background:`linear-gradient(135deg, ${s.accent}20, ${s.accent}40)`,display:"flex",alignItems:"center",justifyContent:"center",color:s.accent,flexShrink:0},children:n.jsx(Ze,{size:22})}),n.jsx("div",{children:n.jsx("h3",{style:{color:s.textPrimary,margin:0,fontSize:"20px",fontWeight:700,lineHeight:"1.3"},children:"Update Avatar"})})]}),n.jsx("button",{onClick:t,"aria-label":"Close avatar modal",style:{background:"transparent",border:"none",color:s.textTertiary,cursor:"pointer",padding:"8px",borderRadius:"8px",width:"36px",height:"36px",display:"flex",alignItems:"center",justifyContent:"center",flexShrink:0,transition:"all 0.2s ease"},onMouseOver:c=>{c.currentTarget.style.backgroundColor=s.border,c.currentTarget.style.color=s.textPrimary},onMouseOut:c=>{c.currentTarget.style.backgroundColor="transparent",c.currentTarget.style.color=s.textTertiary},children:n.jsx(Te,{size:20})})]}),n.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"20px"},children:[n.jsxs("div",{children:[n.jsxs("label",{htmlFor:"avatar-url",style:{display:"flex",marginBottom:"8px",color:s.textPrimary,fontSize:"14px",fontWeight:500,alignItems:"center",gap:"6px"},children:[n.jsx(Nn,{size:16}),"Avatar URL"]}),n.jsxs("div",{style:{position:"relative"},children:[n.jsx("input",{type:"url",id:"avatar-url",placeholder:"https://example.com/your-avatar.jpg",value:o,onChange:c=>i(c.target.value),style:{width:"100%",padding:"14px 16px",paddingLeft:"44px",borderRadius:"12px",border:`1.5px solid ${u.type==="error"?s.error:u.type==="success"?s.success:s.border}`,backgroundColor:"transparent",color:s.textPrimary,fontSize:"15px",outline:"none",transition:"all 0.2s ease",boxSizing:"border-box"},onFocus:c=>{c.target.style.borderColor=s.accent,c.target.style.boxShadow=`0 0 0 3px ${s.accent}20`},onBlur:c=>{c.target.style.borderColor=u.type==="error"?s.error:u.type==="success"?s.success:s.border,c.target.style.boxShadow="none"},disabled:a}),n.jsx("div",{style:{position:"absolute",left:"16px",top:"50%",transform:"translateY(-50%)",color:s.textTertiary},children:n.jsx(Yt,{size:18})})]}),u.message&&n.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"6px",marginTop:"8px",fontSize:"13px",color:u.type==="success"?s.success:u.type==="error"?s.error:s.textTertiary},children:[u.type==="success"&&n.jsx(de,{size:14}),u.type==="error"&&n.jsx(oe,{size:14}),u.type==="warning"&&n.jsx(oe,{size:14}),u.message]})]}),o&&u.type==="success"&&n.jsxs("div",{style:{padding:"16px",backgroundColor:`${s.success}10`,border:`1px solid ${s.success}20`,borderRadius:"12px",textAlign:"center"},children:[n.jsx("p",{style:{color:s.textSecondary,fontSize:"13px",fontWeight:500,margin:"0 0 12px 0"},children:"Preview"}),n.jsx("img",{src:o,alt:"Avatar preview",style:{width:"80px",height:"80px",borderRadius:"50%",objectFit:"cover",border:`2px solid ${s.success}40`,margin:"0 auto"},onError:c=>{c.currentTarget.style.display="none"}})]})]}),n.jsxs("div",{style:{display:"flex",gap:"12px",flexDirection:f?"column-reverse":"row",justifyContent:"flex-end",alignItems:"stretch",marginTop:"24px"},children:[n.jsx("button",{onClick:t,disabled:a,style:{padding:"10px 24px",borderRadius:"10px",border:`1.5px solid ${s.border}`,background:"transparent",color:s.textPrimary,fontSize:"14px",fontWeight:500,cursor:a?"not-allowed":"pointer",flex:f?"none":1,minWidth:f?"100%":"120px",opacity:a?.6:1,transition:"all 0.2s ease"},onMouseOver:c=>{a||(c.currentTarget.style.backgroundColor=s.border,c.currentTarget.style.transform="translateY(-1px)")},onMouseOut:c=>{a||(c.currentTarget.style.backgroundColor="transparent",c.currentTarget.style.transform="translateY(0)")},children:"Cancel"}),n.jsx("button",{onClick:T,disabled:a||!u.isValid,style:{padding:"10px 24px",borderRadius:"10px",border:"none",background:`linear-gradient(135deg, ${s.accent}, ${s.accent}E6)`,color:"#fff",fontSize:"14px",fontWeight:600,cursor:a||!u.isValid?"not-allowed":"pointer",flex:f?"none":1,minWidth:f?"100%":"140px",opacity:a||!u.isValid?.6:1,display:"flex",alignItems:"center",justifyContent:"center",gap:"8px",transition:"all 0.2s ease",boxShadow:a||!u.isValid?"none":`0 4px 12px ${s.accent}40`},onMouseOver:c=>{!a&&u.isValid&&(c.currentTarget.style.transform="translateY(-1px)",c.currentTarget.style.boxShadow=`0 6px 20px ${s.accent}60`)},onMouseOut:c=>{!a&&u.isValid&&(c.currentTarget.style.transform="translateY(0)",c.currentTarget.style.boxShadow=`0 4px 12px ${s.accent}40`)},children:a?n.jsxs(n.Fragment,{children:[n.jsx(ae,{size:16,style:{animation:"spin 1s linear infinite"}}),"Updating..."]}):n.jsxs(n.Fragment,{children:[n.jsx(Ze,{size:16}),"Update Avatar"]})})]})]}),n.jsx("style",{children:`
193
252
  @keyframes modalSlideIn {
194
253
  from {
195
254
  opacity: 0;
@@ -237,7 +296,7 @@ React keys must be passed directly to JSX without using spread:
237
296
  transition: none !important;
238
297
  }
239
298
  }
240
- `})]})},Xn=({isOpen:e,onClose:t,onSuccess:r,onError:n,userId:o,colors:i})=>{const{baseUrl:a,apiKey:l,appId:h}=ie(),[p,u]=j.useState({currentPassword:"",newPassword:"",confirmPassword:""}),[b,C]=j.useState({}),[k,c]=j.useState(!1),[g,y]=j.useState({currentPassword:!1,newPassword:!1,confirmPassword:!1}),[I,W]=j.useState(!1);if(j.useEffect(()=>{const w=()=>{W(window.innerWidth<640)};return w(),window.addEventListener("resize",w),()=>window.removeEventListener("resize",w)},[]),!e)return null;const S=w=>{const{name:M,value:V}=w.target;u(U=>({...U,[M]:V})),b[M]&&C(U=>({...U,[M]:""}))},F=w=>{y(M=>({...M,[w]:!M[w]}))},D=()=>{const w={};return p.currentPassword||(w.currentPassword="Current password is required"),p.newPassword?p.newPassword.length<6&&(w.newPassword="Password must be at least 6 characters"):w.newPassword="New password is required",p.newPassword!==p.confirmPassword&&(w.confirmPassword="Passwords do not match"),C(w),Object.keys(w).length===0},m=async w=>{if(w.preventDefault(),!!D()){c(!0);try{const{data:M}=await $.put(`${a}/users/change-password/${o}`,{appId:h,currentPassword:p.currentPassword,newPassword:p.newPassword},{headers:{"x-api-key":l}});M.success?(r(M.message||"Password updated successfully"),u({currentPassword:"",newPassword:"",confirmPassword:""}),t()):n(M.message||"Failed to update password")}catch(M){n(M.response?.data?.message||"Something went wrong")}finally{c(!1)}}},_=[{field:"currentPassword",label:"Current Password",icon:s.jsx(Yt,{size:18})},{field:"newPassword",label:"New Password",icon:s.jsx(pe,{size:18})},{field:"confirmPassword",label:"Confirm Password",icon:s.jsx(pe,{size:18})}];return s.jsx("div",{style:{position:"fixed",inset:0,background:"rgba(0,0,0,0.7)",backdropFilter:"blur(6px)",display:"flex",alignItems:"center",justifyContent:"center",padding:"16px",zIndex:1e3},children:s.jsxs("div",{style:{backgroundColor:i.surface,border:`1px solid ${i.border}`,borderRadius:"16px",maxWidth:"440px",width:"100%",padding:"24px",boxShadow:"0 20px 60px rgba(0,0,0,0.4)",maxHeight:"90vh",overflowY:"auto"},className:"change-password-modal",children:[s.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"flex-start",marginBottom:"24px",gap:"12px"},children:[s.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"12px",flex:1},children:[s.jsx("div",{style:{width:"40px",height:"40px",borderRadius:"10px",background:`linear-gradient(135deg, ${i.accent}20, ${i.accent}40)`,display:"flex",alignItems:"center",justifyContent:"center",color:i.accent,flexShrink:0},children:s.jsx(pe,{size:20})}),s.jsx("div",{children:s.jsx("h3",{style:{color:i.textPrimary,margin:0,fontSize:"18px",fontWeight:600,lineHeight:"1.4"},children:"Change Password"})})]}),s.jsx("button",{onClick:t,"aria-label":"Close password change modal",style:{background:"transparent",border:"none",color:i.textTertiary,cursor:"pointer",padding:"8px",borderRadius:"8px",flexShrink:0,width:"36px",height:"36px",display:"flex",alignItems:"center",justifyContent:"center"},onMouseOver:w=>{w.currentTarget.style.backgroundColor=i.border,w.currentTarget.style.color=i.textPrimary},onMouseOut:w=>{w.currentTarget.style.backgroundColor="transparent",w.currentTarget.style.color=i.textTertiary},children:s.jsx(Fe,{size:20})})]}),s.jsxs("form",{onSubmit:m,children:[_.map(({field:w,label:M,icon:V})=>s.jsxs("div",{style:{marginBottom:"20px",position:"relative"},children:[s.jsx("label",{htmlFor:w,style:{display:"block",marginBottom:"8px",color:i.textPrimary,fontSize:"14px",fontWeight:500,lineHeight:"1.4"},children:M}),s.jsxs("div",{style:{position:"relative"},children:[s.jsx("div",{style:{position:"absolute",left:"14px",top:"50%",transform:"translateY(-50%)",color:i.textTertiary,zIndex:2},children:V}),s.jsx("input",{type:g[w]?"text":"password",id:w,name:w,placeholder:`Enter ${M.toLowerCase()}`,value:p[w],onChange:S,style:{width:"100%",padding:"14px 48px 14px 44px",borderRadius:"10px",border:`1.5px solid ${b[w]?i.error:i.border}`,backgroundColor:"transparent",color:i.textPrimary,fontSize:"15px",outline:"none",transition:"all 0.2s ease",boxSizing:"border-box"},onFocus:U=>{U.target.style.borderColor=i.accent,U.target.style.boxShadow=`0 0 0 3px ${i.accent}20`},onBlur:U=>{U.target.style.borderColor=b[w]?i.error:i.border,U.target.style.boxShadow="none"}}),s.jsx("button",{type:"button",onClick:()=>F(w),style:{position:"absolute",right:"14px",top:"50%",transform:"translateY(-50%)",background:"transparent",border:"none",cursor:"pointer",color:i.textTertiary,padding:"4px",borderRadius:"4px",width:"32px",height:"32px",display:"flex",alignItems:"center",justifyContent:"center"},onMouseOver:U=>{U.currentTarget.style.backgroundColor=i.border,U.currentTarget.style.color=i.textPrimary},onMouseOut:U=>{U.currentTarget.style.backgroundColor="transparent",U.currentTarget.style.color=i.textTertiary},children:g[w]?s.jsx(Ze,{size:18}):s.jsx(Qe,{size:18})})]}),b[w]&&s.jsxs("div",{style:{fontSize:"13px",color:i.error,marginTop:"6px",display:"flex",alignItems:"center",gap:"6px"},children:[s.jsx("span",{style:{fontSize:"16px"},children:"⚠"}),b[w]]})]},w)),s.jsxs("div",{style:{display:"flex",gap:"12px",flexDirection:I?"column-reverse":"row",justifyContent:"flex-end",alignItems:"stretch"},children:[s.jsx("button",{type:"button",onClick:t,disabled:k,style:{padding:"14px 24px",borderRadius:"10px",border:`1.5px solid ${i.border}`,background:"transparent",color:i.textPrimary,fontSize:"14px",fontWeight:500,cursor:k?"not-allowed":"pointer",flex:I?"none":1,minWidth:I?"100%":"120px",opacity:k?.6:1,transition:"all 0.2s ease"},onMouseOver:w=>{k||(w.currentTarget.style.backgroundColor=i.border,w.currentTarget.style.transform="translateY(-1px)")},onMouseOut:w=>{k||(w.currentTarget.style.backgroundColor="transparent",w.currentTarget.style.transform="translateY(0)")},children:"Cancel"}),s.jsx("button",{type:"submit",disabled:k,style:{padding:"14px 24px",borderRadius:"10px",border:"none",background:`linear-gradient(135deg, ${i.accent}, ${i.accent}E6)`,color:"#fff",fontSize:"14px",fontWeight:600,cursor:k?"not-allowed":"pointer",flex:I?"none":1,minWidth:I?"100%":"140px",opacity:k?.8:1,display:"flex",alignItems:"center",justifyContent:"center",gap:"8px",transition:"all 0.2s ease",boxShadow:k?"none":`0 4px 12px ${i.accent}40`},onMouseOver:w=>{k||(w.currentTarget.style.transform="translateY(-1px)",w.currentTarget.style.boxShadow=`0 6px 20px ${i.accent}60`)},onMouseOut:w=>{k||(w.currentTarget.style.transform="translateY(0)",w.currentTarget.style.boxShadow=`0 4px 12px ${i.accent}40`)},children:k?s.jsxs(s.Fragment,{children:[s.jsx(ue,{size:16,style:{animation:"spin 1s linear infinite"}}),"Updating..."]}):"Update Password"})]})]}),s.jsx("style",{children:`
299
+ `})]})},Qn=({isOpen:e,onClose:t,onSuccess:r,onError:s,userId:o,colors:i})=>{const{baseUrl:a,apiKey:l,appId:f}=pe(),[p,u]=k.useState({currentPassword:"",newPassword:"",confirmPassword:""}),[y,T]=k.useState({}),[E,c]=k.useState(!1),[b,w]=k.useState({currentPassword:!1,newPassword:!1,confirmPassword:!1}),[U,M]=k.useState(!1);if(k.useEffect(()=>{const v=()=>{M(window.innerWidth<640)};return v(),window.addEventListener("resize",v),()=>window.removeEventListener("resize",v)},[]),!e)return null;const I=v=>{const{name:D,value:H}=v.target;u(A=>({...A,[D]:H})),y[D]&&T(A=>({...A,[D]:""}))},C=v=>{w(D=>({...D,[v]:!D[v]}))},L=()=>{const v={};return p.currentPassword||(v.currentPassword="Current password is required"),p.newPassword?p.newPassword.length<6&&(v.newPassword="Password must be at least 6 characters"):v.newPassword="New password is required",p.newPassword!==p.confirmPassword&&(v.confirmPassword="Passwords do not match"),T(v),Object.keys(v).length===0},m=async v=>{if(v.preventDefault(),!!L()){c(!0);try{const{data:D}=await W.put(`${a}/users/change-password/${o}`,{appId:f,currentPassword:p.currentPassword,newPassword:p.newPassword},{headers:{"x-api-key":l}});D.success?(r(D.message||"Password updated successfully"),u({currentPassword:"",newPassword:"",confirmPassword:""}),t()):s(D.message||"Failed to update password")}catch(D){s(D.response?.data?.message||"Something went wrong")}finally{c(!1)}}},z=[{field:"currentPassword",label:"Current Password",icon:n.jsx(Jt,{size:18})},{field:"newPassword",label:"New Password",icon:n.jsx(me,{size:18})},{field:"confirmPassword",label:"Confirm Password",icon:n.jsx(me,{size:18})}];return n.jsx("div",{style:{position:"fixed",inset:0,background:"rgba(0,0,0,0.7)",backdropFilter:"blur(6px)",display:"flex",alignItems:"center",justifyContent:"center",padding:"16px",zIndex:1e3},children:n.jsxs("div",{style:{backgroundColor:i.surface,border:`1px solid ${i.border}`,borderRadius:"16px",maxWidth:"440px",width:"100%",padding:"24px",boxShadow:"0 20px 60px rgba(0,0,0,0.4)",maxHeight:"90vh",overflowY:"auto"},className:"change-password-modal",children:[n.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"flex-start",marginBottom:"24px",gap:"12px"},children:[n.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"12px",flex:1},children:[n.jsx("div",{style:{width:"40px",height:"40px",borderRadius:"10px",background:`linear-gradient(135deg, ${i.accent}20, ${i.accent}40)`,display:"flex",alignItems:"center",justifyContent:"center",color:i.accent,flexShrink:0},children:n.jsx(me,{size:20})}),n.jsx("div",{children:n.jsx("h3",{style:{color:i.textPrimary,margin:0,fontSize:"18px",fontWeight:600,lineHeight:"1.4"},children:"Change Password"})})]}),n.jsx("button",{onClick:t,"aria-label":"Close password change modal",style:{background:"transparent",border:"none",color:i.textTertiary,cursor:"pointer",padding:"8px",borderRadius:"8px",flexShrink:0,width:"36px",height:"36px",display:"flex",alignItems:"center",justifyContent:"center"},onMouseOver:v=>{v.currentTarget.style.backgroundColor=i.border,v.currentTarget.style.color=i.textPrimary},onMouseOut:v=>{v.currentTarget.style.backgroundColor="transparent",v.currentTarget.style.color=i.textTertiary},children:n.jsx(Te,{size:20})})]}),n.jsxs("form",{onSubmit:m,children:[z.map(({field:v,label:D,icon:H})=>n.jsxs("div",{style:{marginBottom:"20px",position:"relative"},children:[n.jsx("label",{htmlFor:v,style:{display:"block",marginBottom:"8px",color:i.textPrimary,fontSize:"14px",fontWeight:500,lineHeight:"1.4"},children:D}),n.jsxs("div",{style:{position:"relative"},children:[n.jsx("div",{style:{position:"absolute",left:"14px",top:"50%",transform:"translateY(-50%)",color:i.textTertiary,zIndex:2},children:H}),n.jsx("input",{type:b[v]?"text":"password",id:v,name:v,placeholder:`Enter ${D.toLowerCase()}`,value:p[v],onChange:I,style:{width:"100%",padding:"14px 48px 14px 44px",borderRadius:"10px",border:`1.5px solid ${y[v]?i.error:i.border}`,backgroundColor:"transparent",color:i.textPrimary,fontSize:"15px",outline:"none",transition:"all 0.2s ease",boxSizing:"border-box"},onFocus:A=>{A.target.style.borderColor=i.accent,A.target.style.boxShadow=`0 0 0 3px ${i.accent}20`},onBlur:A=>{A.target.style.borderColor=y[v]?i.error:i.border,A.target.style.boxShadow="none"}}),n.jsx("button",{type:"button",onClick:()=>C(v),style:{position:"absolute",right:"14px",top:"50%",transform:"translateY(-50%)",background:"transparent",border:"none",cursor:"pointer",color:i.textTertiary,padding:"4px",borderRadius:"4px",width:"32px",height:"32px",display:"flex",alignItems:"center",justifyContent:"center"},onMouseOver:A=>{A.currentTarget.style.backgroundColor=i.border,A.currentTarget.style.color=i.textPrimary},onMouseOut:A=>{A.currentTarget.style.backgroundColor="transparent",A.currentTarget.style.color=i.textTertiary},children:b[v]?n.jsx(et,{size:18}):n.jsx(tt,{size:18})})]}),y[v]&&n.jsxs("div",{style:{fontSize:"13px",color:i.error,marginTop:"6px",display:"flex",alignItems:"center",gap:"6px"},children:[n.jsx("span",{style:{fontSize:"16px"},children:"⚠"}),y[v]]})]},v)),n.jsxs("div",{style:{display:"flex",gap:"12px",flexDirection:U?"column-reverse":"row",justifyContent:"flex-end",alignItems:"stretch"},children:[n.jsx("button",{type:"button",onClick:t,disabled:E,style:{padding:"14px 24px",borderRadius:"10px",border:`1.5px solid ${i.border}`,background:"transparent",color:i.textPrimary,fontSize:"14px",fontWeight:500,cursor:E?"not-allowed":"pointer",flex:U?"none":1,minWidth:U?"100%":"120px",opacity:E?.6:1,transition:"all 0.2s ease"},onMouseOver:v=>{E||(v.currentTarget.style.backgroundColor=i.border,v.currentTarget.style.transform="translateY(-1px)")},onMouseOut:v=>{E||(v.currentTarget.style.backgroundColor="transparent",v.currentTarget.style.transform="translateY(0)")},children:"Cancel"}),n.jsx("button",{type:"submit",disabled:E,style:{padding:"14px 24px",borderRadius:"10px",border:"none",background:`linear-gradient(135deg, ${i.accent}, ${i.accent}E6)`,color:"#fff",fontSize:"14px",fontWeight:600,cursor:E?"not-allowed":"pointer",flex:U?"none":1,minWidth:U?"100%":"140px",opacity:E?.8:1,display:"flex",alignItems:"center",justifyContent:"center",gap:"8px",transition:"all 0.2s ease",boxShadow:E?"none":`0 4px 12px ${i.accent}40`},onMouseOver:v=>{E||(v.currentTarget.style.transform="translateY(-1px)",v.currentTarget.style.boxShadow=`0 6px 20px ${i.accent}60`)},onMouseOut:v=>{E||(v.currentTarget.style.transform="translateY(0)",v.currentTarget.style.boxShadow=`0 4px 12px ${i.accent}40`)},children:E?n.jsxs(n.Fragment,{children:[n.jsx(ae,{size:16,style:{animation:"spin 1s linear infinite"}}),"Updating..."]}):"Update Password"})]})]}),n.jsx("style",{children:`
241
300
  @keyframes spin {
242
301
  from { transform: rotate(0deg); }
243
302
  to { transform: rotate(360deg); }
@@ -275,312 +334,135 @@ React keys must be passed directly to JSX without using spread:
275
334
  padding: 16px 12px;
276
335
  }
277
336
  }
278
- `})]})})},Gn=({isOpen:e,onClose:t,onSuccess:r,onError:n,userId:o,token:i,colors:a})=>{const{baseUrl:l,apiKey:h,appId:p}=ie(),[u,b]=j.useState(!1),[C,k]=j.useState(""),[c,g]=j.useState("warning"),[y,I]=j.useState(!1);if(j.useEffect(()=>{const m=()=>{I(window.innerWidth<640)};return m(),window.addEventListener("resize",m),()=>window.removeEventListener("resize",m)},[]),!e)return null;const W=async()=>{b(!0),g("processing");try{const{data:m}=await $.delete(`${l}/users/delete/${o}`,{data:{appId:p},headers:{"x-api-key":h}});m.success?(r(m.message||"Account deleted successfully"),g("success"),setTimeout(()=>{localStorage.removeItem("userInfo"),localStorage.removeItem("userToken"),window.location.href="/"},2e3)):(n(m.message||"Failed to delete account"),g("warning"))}catch(m){n(m.response?.data?.message||"Something went wrong"),g("warning")}finally{b(!1)}},S=C.toLowerCase()==="delete my account",F=m=>{m.target===m.currentTarget&&c!=="processing"&&c!=="success"&&t()},D=()=>{switch(c){case"warning":return s.jsxs(s.Fragment,{children:[s.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",marginBottom:"24px",gap:"16px"},children:[s.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"12px",flex:1},children:[s.jsx("div",{style:{width:"40px",height:"40px",borderRadius:"12px",background:"linear-gradient(135deg, #ef4444, #dc2626)",display:"flex",alignItems:"center",justifyContent:"center",color:"white",flexShrink:0},children:s.jsx(Ue,{size:20})}),s.jsx("div",{children:s.jsx("h3",{style:{color:a.textPrimary,margin:0,fontSize:"20px",fontWeight:700,lineHeight:"1.3"},children:"Delete Account"})})]}),s.jsx("button",{onClick:t,"aria-label":"Close modal",style:{background:"transparent",border:"none",color:a.textTertiary,cursor:"pointer",padding:"8px",borderRadius:"8px",width:"36px",height:"36px",display:"flex",alignItems:"center",justifyContent:"center",flexShrink:0,transition:"all 0.2s ease"},onMouseOver:m=>{m.currentTarget.style.backgroundColor=a.border,m.currentTarget.style.color=a.textPrimary},onMouseOut:m=>{m.currentTarget.style.backgroundColor="transparent",m.currentTarget.style.color=a.textTertiary},children:s.jsx(Fe,{size:20})})]}),s.jsxs("div",{style:{display:"flex",gap:"16px",padding:"20px",background:`${a.error}15`,border:`1px solid ${a.error}30`,borderRadius:"12px",marginBottom:"20px"},children:[s.jsx("div",{style:{color:a.error,flexShrink:0,display:"flex",alignItems:"flex-start"},children:s.jsx(Jt,{size:24})}),s.jsxs("div",{style:{flex:1},children:[s.jsx("h4",{style:{color:a.textPrimary,margin:"0 0 12px 0",fontSize:"16px",fontWeight:600},children:"Before you proceed..."}),s.jsx("div",{style:{display:"flex",flexDirection:"column",gap:"10px"},children:[{icon:s.jsx(In,{size:16}),text:"All your data will be permanently deleted"},{icon:s.jsx(Mn,{size:16}),text:"This action cannot be reversed"},{icon:s.jsx(Vt,{size:16}),text:"You will lose access to all services"}].map((m,_)=>s.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"10px",fontSize:"14px",color:a.textSecondary},children:[s.jsx("div",{style:{color:a.error,flexShrink:0},children:m.icon}),s.jsx("span",{children:m.text})]},_))})]})]}),s.jsxs("div",{style:{display:"flex",gap:"12px",flexDirection:y?"column-reverse":"row",justifyContent:"flex-end",alignItems:"stretch"},children:[s.jsx("button",{onClick:t,style:{padding:"10px 24px",borderRadius:"10px",border:`1.5px solid ${a.border}`,background:"transparent",color:a.textPrimary,fontSize:"14px",fontWeight:500,cursor:"pointer",flex:y?"none":1,minWidth:y?"100%":"120px",transition:"all 0.2s ease"},onMouseOver:m=>{m.currentTarget.style.backgroundColor=a.border,m.currentTarget.style.transform="translateY(-1px)"},onMouseOut:m=>{m.currentTarget.style.backgroundColor="transparent",m.currentTarget.style.transform="translateY(0)"},children:"Cancel"}),s.jsxs("button",{onClick:()=>g("confirmation"),style:{padding:"10px 24px",borderRadius:"10px",border:"none",background:"linear-gradient(135deg, #ef4444, #dc2626)",color:"white",fontSize:"14px",fontWeight:600,cursor:"pointer",flex:y?"none":1,minWidth:y?"100%":"140px",display:"flex",alignItems:"center",justifyContent:"center",gap:"8px",transition:"all 0.2s ease",boxShadow:"0 4px 12px rgba(239, 68, 68, 0.4)"},onMouseOver:m=>{m.currentTarget.style.transform="translateY(-1px)",m.currentTarget.style.boxShadow="0 6px 20px rgba(239, 68, 68, 0.5)"},onMouseOut:m=>{m.currentTarget.style.transform="translateY(0)",m.currentTarget.style.boxShadow="0 4px 12px rgba(239, 68, 68, 0.4)"},children:[s.jsx(Ue,{size:16}),"Continue to Delete"]})]})]});case"confirmation":return s.jsxs(s.Fragment,{children:[s.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"12px",marginBottom:"24px"},children:[s.jsx("div",{style:{width:"40px",height:"40px",borderRadius:"12px",background:"linear-gradient(135deg, #f59e0b, #d97706)",display:"flex",alignItems:"center",justifyContent:"center",color:"white",flexShrink:0},children:s.jsx(Jt,{size:24})}),s.jsx("div",{style:{flex:1},children:s.jsx("h3",{style:{color:a.textPrimary,margin:0,fontSize:"20px",fontWeight:700,lineHeight:"1.3"},children:"Confirm Deletion"})})]}),s.jsxs("div",{style:{marginBottom:"24px"},children:[s.jsxs("p",{style:{color:a.textSecondary,marginBottom:"16px",fontSize:"14px",lineHeight:"1.5"},children:["Type"," ",s.jsx("strong",{style:{color:a.textPrimary},children:'"delete my account"'})," ","to confirm:"]}),s.jsx("input",{type:"text",value:C,onChange:m=>k(m.target.value),placeholder:"delete my account",style:{width:"100%",padding:"14px 16px",borderRadius:"10px",border:`2px solid ${S?a.success:a.error}`,backgroundColor:"transparent",color:a.textPrimary,fontSize:"15px",outline:"none",transition:"all 0.2s ease",boxSizing:"border-box"},onFocus:m=>{m.target.style.boxShadow=`0 0 0 3px ${a.accent}20`},onBlur:m=>{m.target.style.boxShadow="none"},autoFocus:!0}),S&&s.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"8px",marginTop:"10px",color:a.success,fontSize:"14px",fontWeight:500},children:[s.jsx(Ge,{size:16}),s.jsx("span",{children:"Confirmation accepted"})]})]}),s.jsxs("div",{style:{display:"flex",gap:"12px",flexDirection:"column-reverse",justifyContent:"flex-end",alignItems:"stretch"},children:[s.jsx("button",{onClick:()=>{g("warning"),k("")},style:{padding:"10px 24px",borderRadius:"10px",border:`1.5px solid ${a.border}`,background:"transparent",color:a.textPrimary,fontSize:"14px",fontWeight:500,cursor:"pointer",flex:y?"none":1,minWidth:y?"100%":"120px",transition:"all 0.2s ease"},onMouseOver:m=>{m.currentTarget.style.backgroundColor=a.border,m.currentTarget.style.transform="translateY(-1px)"},onMouseOut:m=>{m.currentTarget.style.backgroundColor="transparent",m.currentTarget.style.transform="translateY(0)"},children:"Go Back"}),s.jsxs("button",{onClick:W,disabled:!S||u,style:{padding:"10px 24px",borderRadius:"10px",border:"none",background:"linear-gradient(135deg, #ef4444, #dc2626)",color:"white",fontSize:"14px",fontWeight:600,cursor:!S||u?"not-allowed":"pointer",flex:y?"none":1,minWidth:y?"100%":"140px",opacity:!S||u?.6:1,display:"flex",alignItems:"center",justifyContent:"center",gap:"8px",transition:"all 0.2s ease",boxShadow:!S||u?"none":"0 4px 12px rgba(239, 68, 68, 0.4)"},onMouseOver:m=>{S&&!u&&(m.currentTarget.style.transform="translateY(-1px)",m.currentTarget.style.boxShadow="0 6px 20px rgba(239, 68, 68, 0.5)")},onMouseOut:m=>{S&&!u&&(m.currentTarget.style.transform="translateY(0)",m.currentTarget.style.boxShadow="0 4px 12px rgba(239, 68, 68, 0.4)")},children:[s.jsx(Ue,{size:16}),"Yes, Delete My Account"]})]})]});case"processing":return s.jsxs(s.Fragment,{children:[s.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"12px",marginBottom:"24px"},children:[s.jsx("div",{style:{width:"40px",height:"40px",borderRadius:"12px",background:"linear-gradient(135deg, #6b7280, #4b5563)",display:"flex",alignItems:"center",justifyContent:"center",color:"white",flexShrink:0},children:s.jsx(ue,{size:20,style:{animation:"spin 1s linear infinite"}})}),s.jsxs("div",{style:{flex:1},children:[s.jsx("h3",{style:{color:a.textPrimary,margin:0,fontSize:"20px",fontWeight:700,lineHeight:"1.3"},children:"Deleting Account"}),s.jsx("p",{style:{color:a.textTertiary,margin:"4px 0 0 0",fontSize:"14px",lineHeight:"1.4"},children:"Please wait while we process your request"})]})]}),s.jsx("div",{style:{marginBottom:"20px"},children:s.jsx("div",{style:{display:"flex",flexDirection:"column",gap:"12px"},children:[{text:"Removing your data",active:!0},{text:"Closing active sessions",active:!1},{text:"Finalizing deletion",active:!1}].map((m,_)=>s.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"12px",padding:"12px",borderRadius:"8px",transition:"all 0.2s ease",backgroundColor:m.active?`${a.accent}10`:"transparent"},children:[s.jsx("div",{style:{width:"8px",height:"8px",borderRadius:"50%",backgroundColor:m.active?a.accent:a.textTertiary,transition:"all 0.3s ease",boxShadow:m.active?`0 0 0 4px ${a.accent}20`:"none"}}),s.jsx("span",{style:{fontSize:"14px",color:m.active?a.textPrimary:a.textSecondary,fontWeight:m.active?500:400},children:m.text})]},_))})}),s.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"10px",padding:"16px",background:`${a.accent}10`,borderRadius:"10px",fontSize:"14px",color:a.textSecondary},children:[s.jsx(Ln,{size:18,style:{color:a.accent,flexShrink:0}}),s.jsx("span",{children:"You will be redirected to the login page shortly"})]})]});case"success":return s.jsxs(s.Fragment,{children:[s.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"12px",marginBottom:"24px"},children:[s.jsx("div",{style:{width:"40px",height:"40px",borderRadius:"12px",background:"linear-gradient(135deg, #10b981, #059669)",display:"flex",alignItems:"center",justifyContent:"center",color:"white",flexShrink:0},children:s.jsx(Ge,{size:20})}),s.jsxs("div",{style:{flex:1},children:[s.jsx("h3",{style:{color:a.textPrimary,margin:0,fontSize:"20px",fontWeight:700,lineHeight:"1.3"},children:"Account Deleted"}),s.jsx("p",{style:{color:a.textTertiary,margin:"4px 0 0 0",fontSize:"14px",lineHeight:"1.4"},children:"Your account has been successfully deleted"})]})]}),s.jsxs("div",{style:{textAlign:"center",padding:"20px",background:`${a.success}10`,border:`1px solid ${a.success}20`,borderRadius:"12px",marginBottom:"24px"},children:[s.jsx(Ge,{size:48,style:{color:a.success,marginBottom:"12px",display:"block",margin:"0 auto 12px auto"}}),s.jsx("p",{style:{color:a.textPrimary,fontSize:"16px",fontWeight:600,margin:"0 0 8px 0"},children:"Goodbye!"}),s.jsx("p",{style:{color:a.textSecondary,fontSize:"14px",margin:0,lineHeight:"1.5"},children:"Your account and all associated data have been permanently removed from our systems."})]}),s.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"10px",padding:"16px",background:`${a.accent}10`,borderRadius:"10px",fontSize:"14px",color:a.textSecondary,justifyContent:"center"},children:[s.jsx(ue,{size:16,style:{animation:"spin 1s linear infinite",color:a.accent}}),s.jsx("span",{children:"Redirecting to login page..."})]})]})}};return s.jsxs("div",{style:{position:"fixed",inset:0,background:"rgba(0,0,0,0.8)",backdropFilter:"blur(8px)",display:"flex",alignItems:"center",justifyContent:"center",padding:"16px",zIndex:1e4,animation:"fadeIn 0.3s ease-out"},onClick:F,children:[s.jsx("div",{style:{backgroundColor:a.surface,border:`1px solid ${a.border}`,borderRadius:"20px",width:"100%",maxWidth:"480px",padding:"24px",boxShadow:"0 32px 64px rgba(0,0,0,0.4)",animation:"scaleIn 0.3s ease-out"},className:"delete-modal-container",children:D()}),s.jsx("style",{children:`
279
- @keyframes fadeIn {
280
- from { opacity: 0; }
281
- to { opacity: 1; }
282
- }
283
-
284
- @keyframes scaleIn {
285
- from {
286
- opacity: 0;
287
- transform: scale(0.9) translateY(20px);
288
- }
289
- to {
290
- opacity: 1;
291
- transform: scale(1) translateY(0);
292
- }
293
- }
294
-
295
- @keyframes spin {
296
- from { transform: rotate(0deg); }
297
- to { transform: rotate(360deg); }
298
- }
299
-
300
- .delete-modal-container {
301
- animation: scaleIn 0.3s ease-out;
302
- }
303
-
304
- /* Mobile responsiveness */
305
- @media (max-width: 480px) {
306
- .delete-modal-container {
307
- padding: 20px 16px;
308
- margin: 0;
309
- border-radius: 16px 16px 0 0;
310
- max-height: 90vh;
311
- overflow-y: auto;
312
- }
313
- }
314
-
315
- @media (max-width: 360px) {
316
- .delete-modal-container {
317
- padding: 16px 12px;
318
- }
319
- }
320
-
321
- /* Reduced motion support */
322
- @media (prefers-reduced-motion: reduce) {
323
- .delete-modal-container {
324
- animation: none;
325
- }
326
-
327
- * {
328
- transition: none !important;
329
- animation: none !important;
330
- }
331
- }
332
- `})]})},Zn=({token:e,user:t=null,darkMode:r=!0,primaryColor:n="#00C214"})=>{const{baseUrl:o,apiKey:i,appId:a}=ie(),[l,h]=j.useState(t),[p,u]=j.useState(!0),[b,C]=j.useState(!1),[k,c]=j.useState(!1),[g,y]=j.useState(!1),[I,W]=j.useState(!1),[S,F]=j.useState(!1),[D,m]=j.useState(null),_=(E,N)=>{m({type:E,message:N}),setTimeout(()=>m(null),3e3)},w=async E=>{if(!l)return!1;try{const N={...l,avatarUrl:E},{data:T}=await $.put(`${o}/users/update/${l.id}`,N,{headers:{"x-api-key":i}});return T.success?(h(N),localStorage.setItem("userInfo",JSON.stringify({...N,token:e})),_("success","Avatar updated successfully!"),!0):(_("error",T.message||"Failed to update avatar"),!1)}catch(N){return console.error("Avatar update error:",N),_("error","Failed to update avatar"),!1}},M=async()=>{if(l){c(!0);try{const{data:E}=await $.put(`${o}/users/update/${l.id}`,l,{headers:{"x-api-key":i}});E.success?(h(E.user),C(!1),localStorage.setItem("userInfo",JSON.stringify({...E.user,token:e})),_("success","Profile updated successfully")):_("error",E.message)}catch(E){console.error(E),_("error","Update failed")}finally{c(!1)}}},V=async E=>{try{const{data:N}=await $.get(`${o}/users/check-user/${E}?appId=${a}`,{headers:{"x-api-key":i}});(!N.success||!N.exists)&&(console.warn("User not found, clearing session..."),localStorage.removeItem("userInfo"),h(null))}catch(N){console.error("User check failed:",N),localStorage.removeItem("userInfo"),h(null)}};j.useEffect(()=>{(()=>{if(t)h(t),u(!1),V(t.id);else{const N=localStorage.getItem("userInfo");if(N){const T=JSON.parse(N);h(T),u(!1),V(T.id)}else u(!1)}})()},[t]);const U=(E,N)=>{let T=parseInt(E.replace("#",""),16),P=(T>>16)+N,B=(T>>8&255)+N,q=(T&255)+N;return P=Math.min(255,Math.max(0,P)),B=Math.min(255,Math.max(0,B)),q=Math.min(255,Math.max(0,q)),`#${(q|B<<8|P<<16).toString(16).padStart(6,"0")}`},A=r?{background:"#000000",surface:"#18181b",surfaceLight:"#27272a",surfaceLighter:"#3f3f46",textPrimary:"#ffffff",textSecondary:"#d4d4d8",textTertiary:"#a1a1aa",accent:n,accentHover:U(n,-15),success:"#10b981",error:"#ef4444",border:"#27272a"}:{background:"#ffffff",surface:"#fafafa",surfaceLight:"#f4f4f5",surfaceLighter:"#e4e4e7",textPrimary:"#18181b",textSecondary:"#52525b",textTertiary:"#71717a",accent:n,accentHover:U(n,-15),success:"#10b981",error:"#ef4444",border:"#e4e4e7"};if(p)return s.jsx("div",{className:"profile-container",style:{color:A.textPrimary},children:s.jsxs("div",{className:"loading-container",children:[s.jsx(ue,{size:40,color:A.accent,className:"spinner","aria-hidden":"true"}),s.jsx("p",{style:{color:A.textTertiary},children:"Loading your profile..."})]})});if(!l)return s.jsx("div",{className:"profile-container",style:{color:A.textPrimary},children:s.jsxs("div",{style:{display:"flex",gap:"12px",flexDirection:"column",alignItems:"center",justifyContent:"center",minHeight:"400px",textAlign:"center"},children:[s.jsx(ae,{size:40,color:A.error,"aria-hidden":"true"}),s.jsx("p",{style:{color:A.textTertiary},children:"No profile found. Please log in again."})]})});const O=[{label:"Full Name",value:l.name,name:"name",type:"text",icon:fe},{label:"Email Address",value:l.email,name:"email",type:"email",icon:Se},{label:"Phone Number",value:l.phone||"Not set",name:"phone",type:"tel",icon:Un},{label:"Address",value:l.address||"Not provided",name:"address",type:"text",icon:Nn}];return s.jsxs("div",{className:"profile-container",style:{color:A.textPrimary},children:[D&&s.jsxs("div",{className:`notification ${D.type}`,style:{zIndex:1e4,...D.type==="success"?{backgroundColor:r?"rgba(16, 185, 129, 0.1)":"rgba(16, 185, 129, 0.05)",borderColor:r?"rgba(16, 185, 129, 0.3)":"rgba(16, 185, 129, 0.2)",color:r?"#34d399":"#059669"}:{backgroundColor:r?"rgba(239, 68, 68, 0.1)":"rgba(239, 68, 68, 0.05)",borderColor:r?"rgba(239, 68, 68, 0.3)":"rgba(239, 68, 68, 0.2)",color:r?"#f87171":"#dc2626"}},role:"alert","aria-live":"polite",children:[D.type==="success"?s.jsx(ze,{size:20,"aria-hidden":"true"}):s.jsx(ae,{size:20,"aria-hidden":"true"}),D.message]}),s.jsx("div",{className:"profile-main-container",children:s.jsxs("div",{className:"profile-grid",children:[s.jsxs("aside",{className:"profile-sidebar",children:[s.jsxs("section",{className:"profile-card avatar-section",style:{backgroundColor:A.surface},children:[s.jsxs("div",{className:"avatar-container",children:[s.jsx("img",{src:l.avatarUrl||`https://api.dicebear.com/9.x/glass/svg?seed=${encodeURIComponent(l.name)}`,alt:`Profile avatar of ${l.name}`,className:"avatar-image",style:{borderColor:A.border},width:128,height:128,loading:"eager"}),s.jsx("button",{onClick:()=>y(!0),className:"avatar-edit-btn",style:{backgroundColor:A.accent},"aria-label":"Change profile picture",children:s.jsx(Xe,{size:16,"aria-hidden":"true"})})]}),s.jsx("h2",{className:"avatar-name",children:l.name}),s.jsx("p",{style:{color:A.textTertiary},children:l.email})]}),s.jsx("nav",{className:"action-buttons",children:b?s.jsxs(s.Fragment,{children:[s.jsxs("button",{onClick:()=>C(!1),className:"btn btn-outline",style:{backgroundColor:A.surfaceLight,borderColor:A.border,color:A.textPrimary},children:[s.jsx(Fe,{size:16,"aria-hidden":"true"}),"Cancel"]}),s.jsxs("button",{onClick:M,disabled:k,className:"btn btn-primary",style:{background:`linear-gradient(to right, ${A.accent}, ${A.accentHover})`,opacity:k?.7:1},children:[k?s.jsx(ue,{size:16,className:"spinner","aria-hidden":"true"}):s.jsx(Fn,{size:16,"aria-hidden":"true"}),k?"Saving...":"Save Changes"]})]}):s.jsxs(s.Fragment,{children:[s.jsxs("button",{onClick:()=>C(!0),className:"btn btn-primary",style:{background:`linear-gradient(to right, ${A.accent}, ${A.accentHover})`},children:[s.jsx(zn,{size:16,"aria-hidden":"true"}),"Edit Profile"]}),s.jsxs("button",{onClick:()=>W(!0),className:"btn btn-secondary",children:[s.jsx(Yt,{size:14,"aria-hidden":"true"}),"Change Password"]}),s.jsxs("button",{onClick:()=>F(!0),className:"btn btn-danger",style:{backgroundColor:r?"rgba(239, 68, 68, 0.1)":"rgba(239, 68, 68, 0.15)",color:A.error,border:`1px solid ${r?"rgba(239, 68, 68, 0.4)":"rgba(239, 68, 68, 0.3)"}`,padding:"8px 14px",borderRadius:"8px",fontWeight:500,transition:"all 0.2s ease"},onMouseEnter:E=>{E.currentTarget.style.backgroundColor=r?"rgba(239, 68, 68, 0.2)":"rgba(239, 68, 68, 0.25)"},onMouseLeave:E=>{E.currentTarget.style.backgroundColor=r?"rgba(239, 68, 68, 0.1)":"rgba(239, 68, 68, 0.15)"},children:[s.jsx(Ue,{size:16,"aria-hidden":"true"}),"Delete Account"]})]})})]}),s.jsx("main",{className:"profile-content",children:s.jsxs("section",{className:"profile-card",style:{backgroundColor:A.surface},children:[s.jsxs("h2",{className:"section-title",children:[s.jsx(fe,{size:20,"aria-hidden":"true"}),"Personal Information"]}),s.jsx("div",{className:"fields-grid",children:O.map(E=>{const N=E.icon;return s.jsxs("div",{className:"field-group",children:[s.jsxs("label",{className:"field-label",children:[s.jsx(N,{size:16,"aria-hidden":"true"}),E.label]}),b?s.jsx("input",{type:E.type,name:E.name,value:l[E.name],onChange:T=>h(P=>P&&{...P,[T.target.name]:T.target.value}),className:"field-input",style:{borderColor:n,color:A.textPrimary},placeholder:`Enter ${E.label.toLowerCase()}`,"aria-label":E.label}):s.jsx("div",{className:"field-value",style:{color:A.textPrimary},children:E.value})]},E.name)})})]})})]})}),s.jsx(Kn,{isOpen:g,onClose:()=>{y(!1)},onUpdate:w,colors:A}),s.jsx(Xn,{baseUrl:o,apiKey:i,appId:a,userId:l.id,isOpen:I,onClose:()=>W(!1),onSuccess:E=>_("success",E),onError:E=>_("error",E),colors:A}),s.jsx(Gn,{baseUrl:o,apiKey:i,appId:a,userId:l.id,token:e,isOpen:S,onClose:()=>F(!1),onSuccess:E=>_("success",E),onError:E=>_("error",E),colors:A}),s.jsx("style",{children:`
333
- .profile-container {
334
- width: 100%;
335
- font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
336
- line-height: 1.5;
337
- }
338
-
339
- .notification {
337
+ `})]})})},es=({isOpen:e,onClose:t,onVerify:r,onSendOTP:s,verifyFormData:o,setVerifyFormData:i,otpSent:a,verifying:l,user:f,colors:p,darkMode:u})=>{if(!e)return null;const y=()=>{t(),i({email:f?.email||"",otp:"",appId:o.appId})};return n.jsxs("div",{className:"modal-overlay",style:{backgroundColor:u?"rgba(0, 0, 0, 0.8)":"rgba(0, 0, 0, 0.5)"},children:[n.jsxs("div",{className:"verify-email-modal",style:{backgroundColor:p.surface,border:`1px solid ${p.border}`},children:[n.jsxs("div",{className:"modal-header",children:[n.jsx("h3",{style:{color:p.textPrimary},children:"Verify Your Email"}),n.jsx("button",{onClick:y,className:"close-btn",style:{color:p.textTertiary},"aria-label":"Close verification modal",children:n.jsx(Te,{size:20,"aria-hidden":"true"})})]}),n.jsxs("form",{className:"verify-form",onSubmit:r,children:[n.jsxs("div",{className:"form-group",children:[n.jsx("label",{style:{color:p.textSecondary},children:"Email"}),n.jsxs("div",{className:"input-container",children:[n.jsx(ue,{size:18,style:{color:p.textTertiary},"aria-hidden":"true"}),n.jsx("input",{type:"email",value:o.email,onChange:T=>i(E=>({...E,email:T.target.value})),placeholder:"Enter your email",style:{backgroundColor:p.surfaceLight,color:p.textPrimary,borderColor:p.border},required:!0,"aria-required":"true","aria-label":"Email address"})]})]}),a&&n.jsxs("div",{className:"form-group",children:[n.jsx("label",{style:{color:p.textSecondary},children:"OTP"}),n.jsxs("div",{className:"input-container",children:[n.jsx(Kt,{size:18,style:{color:p.textTertiary},"aria-hidden":"true"}),n.jsx("input",{type:"text",value:o.otp,onChange:T=>i(E=>({...E,otp:T.target.value})),placeholder:"Enter OTP",style:{backgroundColor:p.surfaceLight,color:p.textPrimary,borderColor:p.border},required:!0,"aria-required":"true","aria-label":"One-time password"})]})]}),n.jsx("div",{className:"modal-actions",children:a?n.jsxs("button",{type:"submit",disabled:l,className:"btn-primary",style:{background:`linear-gradient(to right, ${p.accent}, ${p.accentHover})`,opacity:l?.7:1},"aria-label":l?"Verifying email":"Verify email",children:[l?n.jsx(ae,{size:16,className:"spinner","aria-hidden":"true"}):n.jsx(de,{size:16,"aria-hidden":"true"}),l?"Verifying...":"Verify Email"]}):n.jsxs("button",{type:"button",onClick:s,disabled:l,className:"btn-primary",style:{background:`linear-gradient(to right, ${p.accent}, ${p.accentHover})`,opacity:l?.7:1},"aria-label":l?"Sending OTP":"Send OTP",children:[l?n.jsx(ae,{size:16,className:"spinner","aria-hidden":"true"}):n.jsx(Xt,{size:16,"aria-hidden":"true"}),l?"Sending...":"Send OTP"]})})]})]}),n.jsx("style",{children:`
338
+ .modal-overlay {
340
339
  position: fixed;
341
- top: 20px;
342
- right: 20px;
343
- padding: 12px 24px;
344
- border-radius: 12px;
345
- box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
346
- backdrop-filter: blur(8px);
347
- border: 1px solid;
348
- z-index: 1000;
340
+ top: 0;
341
+ left: 0;
342
+ right: 0;
343
+ bottom: 0;
349
344
  display: flex;
350
345
  align-items: center;
351
- gap: 8px;
352
- font-size: 14px;
353
- font-weight: 500;
354
- max-width: 400px;
355
- animation: slideIn 0.3s ease-out;
356
- }
357
-
358
- @keyframes slideIn {
359
- from {
360
- transform: translateX(100%);
361
- opacity: 0;
362
- }
363
- to {
364
- transform: translateX(0);
365
- opacity: 1;
366
- }
367
- }
368
-
369
- .profile-main-container {
370
- max-width: 1200px;
371
- margin: 0 auto;
372
- padding: 0 16px;
373
- }
374
-
375
- .profile-header {
376
- margin-bottom: 32px;
377
- text-align: center;
378
- }
379
-
380
- .profile-title {
381
- font-size: clamp(1.875rem, 1.5rem + 1.5vw, 2.5rem);
382
- font-weight: 700;
383
- margin: 0 0 8px 0;
384
- background: ${r?"linear-gradient(to right, white, #d1d5db)":"linear-gradient(to right, #111827, #374151)"};
385
- -webkit-background-clip: text;
386
- -webkit-text-fill-color: transparent;
387
- background-clip: text;
388
- }
389
-
390
- .profile-subtitle {
391
- font-size: 16px;
392
- margin: 0;
393
- }
394
-
395
- .profile-grid {
396
- display: grid;
397
- gap: 24px;
398
- grid-template-columns: 1fr;
399
- }
400
-
401
- .profile-sidebar {
402
- display: flex;
403
- flex-direction: column;
404
- gap: 24px;
405
- }
406
-
407
- .profile-content {
408
- min-width: 0;
346
+ justify-content: center;
347
+ z-index: 100;
348
+ padding: 20px;
409
349
  }
410
350
 
411
- .profile-card {
351
+ .verify-email-modal {
352
+ width: 100%;
353
+ max-width: 440px;
412
354
  border-radius: 16px;
413
355
  padding: 24px;
414
- box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
356
+ box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
357
+ backdrop-filter: blur(8px);
415
358
  }
416
359
 
417
- .avatar-section {
418
- text-align: center;
360
+ .modal-header {
419
361
  display: flex;
420
- flex-direction: column;
421
362
  align-items: center;
363
+ justify-content: space-between;
364
+ margin-bottom: 24px;
422
365
  }
423
366
 
424
- .avatar-container {
425
- position: relative;
426
- display: inline-block;
427
- margin-bottom: 16px;
428
- }
429
-
430
- .avatar-image {
431
- width: 128px;
432
- height: 128px;
433
- border-radius: 50%;
434
- object-fit: cover;
435
- box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.3);
436
- border: 3px solid;
367
+ .modal-header h3 {
368
+ margin: 0;
369
+ font-size: 20px;
370
+ font-weight: 600;
437
371
  }
438
372
 
439
- .avatar-edit-btn {
440
- position: absolute;
441
- bottom: 8px;
442
- right: 8px;
443
- color: white;
444
- padding: 8px;
445
- border-radius: 50%;
373
+ .close-btn {
374
+ background: none;
446
375
  border: none;
447
376
  cursor: pointer;
448
- transition: all 0.2s ease;
377
+ padding: 4px;
378
+ border-radius: 4px;
379
+ transition: background-color 0.2s ease;
449
380
  display: flex;
450
381
  align-items: center;
451
382
  justify-content: center;
452
383
  }
453
384
 
454
- .avatar-edit-btn:hover {
455
- transform: scale(1.1);
385
+ .close-btn:hover {
386
+ background-color: ${u?"rgba(255,255,255,0.1)":"rgba(0,0,0,0.1)"};
456
387
  }
457
388
 
458
- .avatar-name {
459
- font-size: 24px;
460
- font-weight: 600;
461
- margin: 0 0 4px 0;
462
- }
463
-
464
- .action-buttons {
389
+ .verify-form {
465
390
  display: flex;
466
391
  flex-direction: column;
467
- gap: 12px;
392
+ gap: 20px;
468
393
  }
469
394
 
470
- .btn {
471
- padding: 8px 20px;
472
- border-radius: 8px;
473
- border: none;
474
- cursor: pointer;
475
- transition: all 0.2s ease;
476
- font-size: 14px;
477
- font-weight: 500;
395
+ .form-group {
478
396
  display: flex;
479
- align-items: center;
480
- justify-content: center;
397
+ flex-direction: column;
481
398
  gap: 8px;
482
- text-decoration: none;
483
- min-height: 44px;
484
- }
485
-
486
- .btn:hover {
487
- transform: translateY(-1px);
488
- box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
489
399
  }
490
400
 
491
- .btn:disabled {
492
- opacity: 0.6;
493
- cursor: not-allowed;
494
- transform: none;
495
- }
496
-
497
- .btn-primary {
498
- background: linear-gradient(to right, ${A.accent}, ${A.accentHover});
499
- color: white;
500
- }
501
-
502
- .btn-secondary {
503
- background-color: #27272a;
504
- color: white;
401
+ .form-group label {
402
+ font-size: 14px;
403
+ font-weight: 500;
505
404
  }
506
405
 
507
- .btn-secondary:hover {
508
- background-color: #3f3f46;
406
+ .input-container {
407
+ position: relative;
408
+ display: flex;
409
+ align-items: center;
509
410
  }
510
411
 
511
- .btn-outline {
512
- background: transparent;
513
- border: 1px solid;
412
+ .input-container svg {
413
+ position: absolute;
414
+ left: 12px;
415
+ pointer-events: none;
514
416
  }
515
417
 
516
- .btn-danger {
517
- background: transparent;
418
+ .input-container input {
419
+ width: 100%;
420
+ padding: 12px 12px 12px 40px;
421
+ border-radius: 8px;
518
422
  border: 1px solid;
423
+ font-size: 14px;
424
+ outline: none;
425
+ transition: border-color 0.2s ease;
426
+ background-color: transparent;
519
427
  }
520
428
 
521
- .section-title {
522
- font-size: 20px;
523
- font-weight: 600;
524
- margin: 0 0 24px 0;
525
- color: ${A.textSecondary};
526
- display: flex;
527
- align-items: center;
528
- gap: 8px;
529
- }
530
-
531
- .fields-grid {
532
- display: flex;
533
- flex-direction: column;
534
- gap: 20px;
429
+ .input-container input:focus {
430
+ border-color: ${p.accent};
431
+ box-shadow: 0 0 0 3px ${p.accent}20;
535
432
  }
536
433
 
537
- .field-group {
434
+ .modal-actions {
538
435
  display: flex;
539
- flex-direction: column;
540
- gap: 8px;
436
+ gap: 12px;
541
437
  }
542
438
 
543
- .field-label {
544
- color: ${A.textTertiary};
545
- font-size: 14px;
439
+ .modal-actions .btn-primary {
440
+ flex: 1;
441
+ padding: 12px 20px;
442
+ border: none;
443
+ border-radius: 8px;
444
+ color: white;
546
445
  font-weight: 500;
446
+ cursor: pointer;
447
+ transition: all 0.2s ease;
547
448
  display: flex;
548
449
  align-items: center;
450
+ justify-content: center;
549
451
  gap: 8px;
550
- }
551
-
552
- .field-input {
553
- padding: 12px;
554
- border-radius: 8px;
555
- border: 1px solid;
556
- background: transparent;
557
- color: inherit;
558
452
  font-size: 14px;
559
- outline: none;
560
- transition: border-color 0.2s ease;
561
- min-height: 44px;
562
- width: 100%;
563
- box-sizing: border-box;
564
453
  }
565
454
 
566
- .field-input:focus {
567
- border-color: ${A.accent};
568
- box-shadow: 0 0 0 3px ${A.accent}20;
455
+ .modal-actions .btn-primary:hover:not(:disabled) {
456
+ transform: translateY(-1px);
457
+ box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
569
458
  }
570
459
 
571
- .field-value {
572
- padding: 12px;
573
- border-radius: 8px;
574
- border: 1px solid transparent;
575
- font-size: 14px;
576
- min-height: 44px;
577
- display: flex;
578
- align-items: center;
579
- box-sizing: border-box;
460
+ .modal-actions .btn-primary:disabled {
461
+ opacity: 0.6;
462
+ cursor: not-allowed;
463
+ transform: none;
580
464
  }
581
465
 
582
-
583
-
584
466
  .spinner {
585
467
  animation: spin 1s linear infinite;
586
468
  }
@@ -590,41 +472,52 @@ React keys must be passed directly to JSX without using spread:
590
472
  to { transform: rotate(360deg); }
591
473
  }
592
474
 
593
- /* Responsive Design */
594
- @media (min-width: 640px) {
595
- .profile-main-container {
596
- padding: 0 24px;
475
+ @media (prefers-reduced-motion: reduce) {
476
+ .close-btn, .modal-actions .btn-primary {
477
+ transition: none;
597
478
  }
598
-
599
- .profile-header {
600
- text-align: left;
479
+
480
+ .spinner {
481
+ animation: none;
601
482
  }
602
483
  }
603
-
604
- @media (min-width: 768px) {
605
- .fields-grid {
606
- display: grid;
607
- grid-template-columns: 1fr 1fr;
608
- gap: 20px;
484
+ `})]})},ts=({token:e,user:t=null,darkMode:r=!0,onLogout:s,primaryColor:o="#00C214"})=>{const{baseUrl:i,apiKey:a,appId:l}=pe(),[f,p]=k.useState(t),[u,y]=k.useState(!0),[T,E]=k.useState(!1),[c,b]=k.useState(!1),[w,U]=k.useState(!1),[M,I]=k.useState(!1),[C,L]=k.useState(!1),[m,z]=k.useState(!1),[v,D]=k.useState(null),[H,A]=k.useState(!1),[X,V]=k.useState({email:"",otp:"",appId:l}),[P,K]=k.useState(!1),[J,_]=k.useState(!1),S=(j,O)=>{D({type:j,message:O}),setTimeout(()=>D(null),3e3)},Y=async()=>{if(!X.email||!/\S+@\S+\.\S+/.test(X.email)){S("error","Please enter a valid email");return}try{_(!0);const j=await W.post(`${i}/users/send-verify-otp/${f?.id}`,{email:X.email},{headers:{"x-api-key":a,"x-app-id":l}});j.data.success?(S("success",j.data.message||"OTP sent to email!"),K(!0)):S("error",j.data.message||"Failed to send OTP")}catch(j){S("error",j.response?.data?.message||"Server error")}finally{_(!1)}},x=async j=>{if(j.preventDefault(),!X.email||!X.otp){S("error","Please fill in all fields");return}try{_(!0);const O=await W.post(`${i}/users/verify-email`,X);if(O.data.success){if(S("success",O.data.message||"Email verified!"),f){const q={...f,isVerified:!0};p(q),localStorage.setItem("userInfo",JSON.stringify({...q,token:e}))}V({email:"",otp:"",appId:l}),K(!1),z(!1)}else S("error",O.data.message||"Verification failed")}catch(O){S("error",O.response?.data?.message||"Something went wrong")}finally{_(!1)}},R=async j=>{if(!f)return!1;try{const O={...f,avatarUrl:j},{data:q}=await W.put(`${i}/users/update/${f.id}`,O,{headers:{"x-api-key":a}});return q.success?(p(O),localStorage.setItem("userInfo",JSON.stringify({...O,token:e})),S("success","Avatar updated successfully!"),!0):(S("error",q.message||"Failed to update avatar"),!1)}catch(O){return console.error("Avatar update error:",O),S("error","Failed to update avatar"),!1}},F=async()=>{if(f){b(!0);try{const{data:j}=await W.put(`${i}/users/update/${f.id}`,f,{headers:{"x-api-key":a}});j.success?(p(j.user),E(!1),localStorage.setItem("userInfo",JSON.stringify({...j.user,token:e})),S("success","Profile updated successfully")):S("error",j.message)}catch(j){console.error(j),S("error","Update failed")}finally{b(!1)}}},B=async j=>{try{const{data:O}=await W.get(`${i}/users/check-user/${j}?appId=${l}`,{headers:{"x-api-key":a}});(!O.success||!O.exists)&&(console.warn("User not found, clearing session..."),localStorage.removeItem("userInfo"),p(null))}catch(O){console.error("User check failed:",O),localStorage.removeItem("userInfo"),p(null)}};k.useEffect(()=>{(()=>{if(t)p(t),y(!1),B(t.id);else{const O=localStorage.getItem("userInfo");if(O){const q=JSON.parse(O);p(q),y(!1),B(q.id)}else y(!1)}})()},[t]),k.useEffect(()=>{f?.email&&V(j=>({...j,email:f.email}))},[f?.email]);const h=(j,O)=>{let q=parseInt(j.replace("#",""),16),re=(q>>16)+O,fe=(q>>8&255)+O,Ce=(q&255)+O;return re=Math.min(255,Math.max(0,re)),fe=Math.min(255,Math.max(0,fe)),Ce=Math.min(255,Math.max(0,Ce)),`#${(Ce|fe<<8|re<<16).toString(16).padStart(6,"0")}`},g=r?{background:"#000000",surface:"#18181b",surfaceLight:"#27272a",surfaceLighter:"#3f3f46",textPrimary:"#ffffff",textSecondary:"#d4d4d8",textTertiary:"#a1a1aa",accent:o,accentHover:h(o,-15),success:"#10b981",error:"#ef4444",border:"#27272a",warning:"#f59e0b"}:{background:"#ffffff",surface:"#fafafa",surfaceLight:"#f4f4f5",surfaceLighter:"#e4e4e7",textPrimary:"#18181b",textSecondary:"#52525b",textTertiary:"#71717a",accent:o,accentHover:h(o,-15),success:"#10b981",error:"#ef4444",border:"#e4e4e7",warning:"#d97706"};if(u)return n.jsx("div",{style:{width:"100%",minHeight:"400px",display:"flex",alignItems:"center",justifyContent:"center",color:g.textPrimary,fontFamily:"'Inter', -apple-system, BlinkMacSystemFont, sans-serif"},children:n.jsxs("div",{style:{display:"flex",flexDirection:"column",alignItems:"center",gap:"16px",textAlign:"center"},children:[n.jsx(ae,{size:40,color:g.accent,style:{animation:"spin 1s linear infinite"},"aria-hidden":"true"}),n.jsx("p",{style:{color:g.textTertiary,margin:0},children:"Loading your profile..."})]})});if(!f)return n.jsx("div",{style:{width:"100%",minHeight:"400px",display:"flex",alignItems:"center",justifyContent:"center",color:g.textPrimary,fontFamily:"'Inter', -apple-system, BlinkMacSystemFont, sans-serif"},children:n.jsxs("div",{style:{display:"flex",flexDirection:"column",alignItems:"center",gap:"12px",textAlign:"center"},children:[n.jsx(oe,{size:40,color:g.error,"aria-hidden":"true"}),n.jsx("p",{style:{color:g.textTertiary,margin:0},children:"No profile found. Please log in again."})]})});const G=[{label:"Full Name",value:f.name,name:"name",type:"text",icon:ye},{label:"Email Address",value:f.email,name:"email",type:"email",icon:ue},{label:"Phone Number",value:f.phone||"Not set",name:"phone",type:"tel",icon:Ln},{label:"Address",value:f.address||"Not provided",name:"address",type:"text",icon:Dn}];return n.jsxs("div",{style:{width:"100%",display:"flex",alignItems:"center",justifyContent:"center",color:g.textPrimary,fontFamily:"'Inter', -apple-system, BlinkMacSystemFont, sans-serif",lineHeight:1.5,minHeight:"80vh"},children:[v&&n.jsxs("div",{style:{position:"fixed",top:"20px",right:"20px",padding:"12px 24px",borderRadius:"12px",boxShadow:"0 25px 50px -12px rgba(0, 0, 0, 0.25)",backdropFilter:"blur(8px)",border:"1px solid",zIndex:1e3,display:"flex",alignItems:"center",gap:"8px",fontSize:"14px",fontWeight:500,maxWidth:"400px",animation:"slideIn 0.3s ease-out",...v.type==="success"?{backgroundColor:r?"rgba(16, 185, 129, 0.1)":"rgba(16, 185, 129, 0.05)",borderColor:r?"rgba(16, 185, 129, 0.3)":"rgba(16, 185, 129, 0.2)",color:r?"#34d399":"#059669"}:{backgroundColor:r?"rgba(239, 68, 68, 0.1)":"rgba(239, 68, 68, 0.05)",borderColor:r?"rgba(239, 68, 68, 0.3)":"rgba(239, 68, 68, 0.2)",color:r?"#f87171":"#dc2626"}},role:"alert","aria-live":"polite",children:[v.type==="success"?n.jsx(de,{size:20,"aria-hidden":"true"}):n.jsx(oe,{size:20,"aria-hidden":"true"}),v.message]}),n.jsx("div",{style:{maxWidth:"1200px",margin:"0 auto",padding:"16px",width:"100%",boxSizing:"border-box"},children:n.jsxs("div",{style:{display:"grid",gap:"24px",gridTemplateColumns:"1fr",...window.innerWidth>=1024&&{gridTemplateColumns:"1fr 2fr",gap:"20px"},...window.innerWidth>=768&&window.innerWidth<1024&&{gap:"20px"},...window.innerWidth>=600&&window.innerWidth<768&&{gap:"28px"}},children:[n.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"6px"},children:[n.jsxs("section",{style:{backgroundColor:g.surface,borderRadius:"16px",padding:"24px",boxShadow:"0 1px 3px rgba(0, 0, 0, 0.1)",textAlign:"center",display:"flex",flexDirection:"column",alignItems:"center"},children:[n.jsxs("div",{style:{position:"relative",display:"inline-block",marginBottom:"16px"},children:[n.jsx("img",{src:f.avatarUrl||`https://api.dicebear.com/9.x/initials/svg?seed=${encodeURIComponent(f.name)}`,alt:`Profile avatar of ${f.name}`,style:{width:"128px",height:"128px",borderRadius:"50%",objectFit:"cover",boxShadow:"0 10px 25px -5px rgba(0, 0, 0, 0.3)",border:`3px solid ${g.border}`},width:128,height:128,loading:"eager"}),n.jsx("button",{onClick:()=>U(!0),style:{position:"absolute",bottom:"8px",right:"8px",backgroundColor:g.accent,color:"white",padding:"8px",borderRadius:"50%",border:"none",cursor:"pointer",transition:"all 0.2s ease",display:"flex",alignItems:"center",justifyContent:"center",width:"32px",height:"32px"},"aria-label":"Change profile picture",children:n.jsx(Ze,{size:16,"aria-hidden":"true"})})]}),n.jsx("h2",{style:{fontSize:"24px",fontWeight:600,margin:"0 0 4px 0",color:g.textPrimary},children:f.name}),n.jsx("p",{style:{color:g.textTertiary,margin:"0 0 8px 0"},children:f.email}),n.jsxs("div",{style:{backgroundColor:f.isVerified?r?"rgba(16, 185, 129, 0.1)":"rgba(16, 185, 129, 0.05)":r?"rgba(245, 158, 11, 0.1)":"rgba(245, 158, 11, 0.05)",color:f.isVerified?g.success:g.warning,border:`1px solid ${f.isVerified?r?"rgba(16, 185, 129, 0.3)":"rgba(16, 185, 129, 0.2)":r?"rgba(245, 158, 11, 0.3)":"rgba(245, 158, 11, 0.2)"}`,padding:"6px 12px",borderRadius:"20px",fontSize:"12px",fontWeight:500,display:"inline-flex",alignItems:"center",gap:"6px",marginTop:"8px"},children:[f.isVerified?n.jsx(de,{size:16,"aria-hidden":"true"}):n.jsx(oe,{size:16,"aria-hidden":"true"}),f.isVerified?"Email Verified":"Not Verified"]})]}),n.jsx("nav",{style:{display:"flex",flexDirection:"column",gap:"6px"},children:T?n.jsxs(n.Fragment,{children:[n.jsxs("button",{onClick:()=>E(!1),style:{backgroundColor:g.surfaceLight,border:`1px solid ${g.border}`,color:g.textPrimary,padding:"12px 20px",borderRadius:"8px",borderStyle:"solid",cursor:"pointer",transition:"all 0.2s ease",fontSize:"14px",fontWeight:500,display:"flex",alignItems:"center",justifyContent:"center",gap:"8px",textDecoration:"none",minHeight:"44px",flex:window.innerWidth<1024?"1":"auto"},children:[n.jsx(Te,{size:16,"aria-hidden":"true"}),"Cancel"]}),n.jsxs("button",{onClick:F,disabled:c,style:{background:`linear-gradient(to right, ${g.accent}, ${g.accentHover})`,opacity:c?.7:1,color:"white",padding:"12px 20px",borderRadius:"8px",border:"none",cursor:c?"not-allowed":"pointer",transition:"all 0.2s ease",fontSize:"14px",fontWeight:500,display:"flex",alignItems:"center",justifyContent:"center",gap:"8px",textDecoration:"none",minHeight:"44px",flex:window.innerWidth<1024?"1":"auto"},children:[c?n.jsx(ae,{size:16,style:{animation:"spin 1s linear infinite"},"aria-hidden":"true"}):n.jsx(Bn,{size:16,"aria-hidden":"true"}),c?"Saving...":"Save Changes"]})]}):n.jsxs(n.Fragment,{children:[n.jsxs("button",{onClick:()=>E(!0),style:{background:`linear-gradient(to right, ${g.accent}, ${g.accentHover})`,color:"white",padding:"12px 20px",borderRadius:"8px",border:"none",cursor:"pointer",transition:"all 0.2s ease",fontSize:"14px",fontWeight:500,display:"flex",alignItems:"center",justifyContent:"center",gap:"8px",textDecoration:"none",minHeight:"44px",flex:window.innerWidth<1024?"1":"auto"},children:[n.jsx(Fn,{size:16,"aria-hidden":"true"}),"Edit Profile"]}),n.jsxs("button",{onClick:()=>I(!0),style:{backgroundColor:g.surfaceLight,color:g.textPrimary,padding:"12px 20px",borderRadius:"8px",border:"none",cursor:"pointer",transition:"all 0.2s ease",fontSize:"14px",fontWeight:500,display:"flex",alignItems:"center",justifyContent:"center",gap:"8px",textDecoration:"none",minHeight:"44px",flex:window.innerWidth<1024?"1":"auto"},children:[n.jsx(Jt,{size:14,"aria-hidden":"true"}),"Change Password"]}),!f.isVerified&&n.jsxs("button",{onClick:()=>z(!0),disabled:H,style:{backgroundColor:r?"rgba(245, 158, 11, 0.1)":"rgba(245, 158, 11, 0.05)",color:g.warning,border:`1px solid ${r?"rgba(245, 158, 11, 0.3)":"rgba(245, 158, 11, 0.2)"}`,padding:"12px 20px",borderRadius:"8px",borderStyle:"solid",cursor:H?"not-allowed":"pointer",transition:"all 0.2s ease",fontSize:"14px",fontWeight:500,display:"flex",alignItems:"center",justifyContent:"center",gap:"8px",minHeight:"44px",flex:window.innerWidth<1024?"1":"auto",opacity:H?.6:1},children:[H?n.jsx(ae,{size:16,style:{animation:"spin 1s linear infinite"},"aria-hidden":"true"}):n.jsx(Xt,{size:16,"aria-hidden":"true"}),H?"Sending...":"Verify Email"]}),s&&n.jsxs("button",{onClick:s,style:{backgroundColor:r?"rgba(239, 68, 68, 0.12)":"rgba(239, 68, 68, 0.08)",color:r?"#fca5a5":"#dc2626",border:`1px solid ${r?"rgba(248, 113, 113, 0.4)":"rgba(239, 68, 68, 0.25)"}`,padding:"12px 20px",borderRadius:"10px",cursor:"pointer",transition:"all 0.25s ease",fontSize:"14px",fontWeight:500,display:"flex",alignItems:"center",justifyContent:"center",gap:"8px",textDecoration:"none",minHeight:"44px",flex:window.innerWidth<1024?"1":"auto"},onMouseEnter:j=>{j.currentTarget.style.backgroundColor=r?"rgba(239, 68, 68, 0.2)":"rgba(239, 68, 68, 0.18)",j.currentTarget.style.borderColor=r?"rgba(248, 113, 113, 0.6)":"rgba(239, 68, 68, 0.45)"},onMouseLeave:j=>{j.currentTarget.style.backgroundColor=r?"rgba(239, 68, 68, 0.12)":"rgba(239, 68, 68, 0.08)",j.currentTarget.style.borderColor=r?"rgba(248, 113, 113, 0.4)":"rgba(239, 68, 68, 0.25)"},children:[n.jsx(rt,{size:16,"aria-hidden":"true"}),"Logout"]}),n.jsxs("button",{onClick:()=>L(!0),style:{backgroundColor:"#b91c1c",color:"#ffffff",padding:"12px 20px",borderRadius:"10px",cursor:"pointer",transition:"all 0.25s ease",fontSize:"14px",fontWeight:600,display:"flex",alignItems:"center",justifyContent:"center",gap:"8px",textDecoration:"none",minHeight:"44px",flex:window.innerWidth<1024?"1":"auto",boxShadow:r?"0 0 10px rgba(220, 38, 38, 0.25)":"0 2px 8px rgba(185, 28, 28, 0.25)"},onMouseEnter:j=>{j.currentTarget.style.backgroundColor=r?"#7f1d1d":"#991b1b",j.currentTarget.style.boxShadow=r?"0 0 14px rgba(239, 68, 68, 0.4)":"0 3px 10px rgba(185, 28, 28, 0.35)"},onMouseLeave:j=>{j.currentTarget.style.backgroundColor="#b91c1c",j.currentTarget.style.boxShadow=r?"0 0 10px rgba(220, 38, 38, 0.25)":"0 2px 8px rgba(185, 28, 28, 0.25)"},onMouseDown:j=>{j.currentTarget.style.transform="scale(0.97)"},onMouseUp:j=>{j.currentTarget.style.transform="scale(1)"},children:[n.jsx(Le,{size:16,"aria-hidden":"true"}),"Delete Account"]})]})})]}),n.jsxs("div",{style:{minWidth:0,display:"flex",flexDirection:"column",gap:"12px"},children:[n.jsxs("section",{style:{backgroundColor:g.surface,borderRadius:"16px",padding:"24px",boxShadow:"0 1px 3px rgba(0, 0, 0, 0.1)"},children:[n.jsxs("h2",{style:{fontSize:"20px",fontWeight:600,margin:"0 0 24px 0",color:g.textSecondary,display:"flex",alignItems:"center",gap:"8px"},children:[n.jsx(ye,{size:20,"aria-hidden":"true"}),"Personal Information"]}),n.jsx("div",{style:{display:"grid",gap:"20px",gridTemplateColumns:"1fr",...window.innerWidth>=600&&{gridTemplateColumns:"1fr 1fr",gap:"20px"}},children:G.map(j=>{const O=j.icon;return n.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"8px"},children:[n.jsxs("label",{style:{color:g.textTertiary,fontSize:"14px",fontWeight:500,display:"flex",alignItems:"center",gap:"8px"},children:[n.jsx(O,{size:16,"aria-hidden":"true"}),j.label]}),T?n.jsx("input",{type:j.type,name:j.name,value:f[j.name],onChange:q=>p(re=>re&&{...re,[q.target.name]:q.target.value}),style:{padding:"12px",borderRadius:"8px",border:`1px solid ${o}`,backgroundColor:"transparent",color:g.textPrimary,fontSize:"14px",outline:"none",transition:"border-color 0.2s ease",minHeight:"44px",width:"100%",boxSizing:"border-box"},placeholder:`Enter ${j.label.toLowerCase()}`,"aria-label":j.label}):n.jsx("div",{style:{padding:"12px",borderRadius:"8px",border:"1px solid transparent",fontSize:"14px",minHeight:"44px",display:"flex",alignItems:"center",boxSizing:"border-box",color:g.textPrimary,backgroundColor:r?"rgba(255,255,255,0.05)":"rgba(0,0,0,0.05)"},children:j.value})]},j.name)})})]}),n.jsxs("section",{style:{backgroundColor:g.surface,borderRadius:"16px",padding:"30px 24px",boxShadow:"0 1px 3px rgba(0, 0, 0, 0.1)"},children:[n.jsxs("h2",{style:{fontSize:"20px",fontWeight:600,margin:"0 0 24px 0",color:g.textSecondary,display:"flex",alignItems:"center",gap:"8px"},children:[n.jsx(Gt,{size:20,"aria-hidden":"true"}),"Security Status"]}),n.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"16px"},children:[n.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",padding:"12px 0"},children:[n.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"12px",color:g.textSecondary},children:[n.jsx(ue,{size:16,"aria-hidden":"true"}),n.jsx("span",{children:"Email Verification"})]}),n.jsx("div",{style:{padding:"6px 12px",borderRadius:"8px",fontSize:"12px",fontWeight:500,display:"flex",alignItems:"center",gap:"6px",...f.isVerified?{backgroundColor:r?"rgba(16, 185, 129, 0.1)":"rgba(16, 185, 129, 0.05)",color:g.success,border:`1px solid ${r?"rgba(16, 185, 129, 0.3)":"rgba(16, 185, 129, 0.2)"}`}:{backgroundColor:r?"rgba(245, 158, 11, 0.1)":"rgba(245, 158, 11, 0.05)",color:g.warning,border:`1px solid ${r?"rgba(245, 158, 11, 0.3)":"rgba(245, 158, 11, 0.2)"}`}},children:f.isVerified?n.jsxs(n.Fragment,{children:[n.jsx(de,{size:16,"aria-hidden":"true"}),"Verified"]}):n.jsxs(n.Fragment,{children:[n.jsx(oe,{size:16,"aria-hidden":"true"}),"Not Verified"]})})]}),!f.isVerified&&n.jsx("div",{style:{padding:"12px",borderRadius:"8px",backgroundColor:r?"rgba(100, 100, 100, 0.1)":"rgba(0, 0, 0, 0.05)"},children:n.jsx("p",{style:{color:g.textTertiary,fontSize:"14px",margin:0},children:"Verify your email to unlock all features and enhance your account security."})})]})]})]})]})}),n.jsx(Zn,{isOpen:w,onClose:()=>{U(!1)},onUpdate:R,colors:g}),n.jsx(Qn,{baseUrl:i,apiKey:a,appId:l,userId:f.id,isOpen:M,onClose:()=>I(!1),onSuccess:j=>S("success",j),onError:j=>S("error",j),colors:g}),n.jsx(Gn,{baseUrl:i,apiKey:a,appId:l,userId:f.id,token:e,isOpen:C,onClose:()=>L(!1),onSuccess:j=>S("success",j),onError:j=>S("error",j),colors:g}),n.jsx(es,{isOpen:m,onClose:()=>{z(!1),K(!1),V({email:f?.email||"",otp:"",appId:l})},onVerify:x,onSendOTP:Y,verifyFormData:X,setVerifyFormData:V,otpSent:P,verifying:J,user:f,colors:g,darkMode:r}),n.jsx("style",{children:`
485
+ @keyframes slideIn {
486
+ from {
487
+ transform: translateX(100%);
488
+ opacity: 0;
609
489
  }
490
+ to {
491
+ transform: translateX(0);
492
+ opacity: 1;
493
+ }
494
+ }
495
+
496
+ @keyframes spin {
497
+ from { transform: rotate(0deg); }
498
+ to { transform: rotate(360deg); }
499
+ }
610
500
 
611
- .field-group:nth-last-child(1):nth-child(odd) {
612
- grid-column: 1 / -1;
501
+ /* Responsive design using container queries as fallback */
502
+ @media (max-width: 599px) {
503
+ .profile-main-container {
504
+ padding: 0 12px;
613
505
  }
614
506
  }
615
507
 
616
- @media (min-width: 1024px) {
617
- .profile-grid {
618
- grid-template-columns: 1fr 2fr;
619
- gap: 32px;
508
+ @media (min-width: 600px) and (max-width: 767px) {
509
+ .profile-main-container {
510
+ padding: 0 20px;
620
511
  }
512
+ }
621
513
 
622
- .action-buttons {
623
- flex-direction: column;
514
+ @media (min-width: 768px) and (max-width: 1023px) {
515
+ .profile-main-container {
516
+ padding: 0 24px;
624
517
  }
625
518
  }
626
519
 
627
- @media (min-width: 1280px) {
520
+ @media (min-width: 1024px) {
628
521
  .profile-main-container {
629
522
  padding: 0 32px;
630
523
  }
@@ -632,23 +525,10 @@ React keys must be passed directly to JSX without using spread:
632
525
 
633
526
  /* Reduced motion support */
634
527
  @media (prefers-reduced-motion: reduce) {
635
- .btn, .avatar-edit-btn, .notification {
636
- transition: none;
637
- }
638
-
639
- .spinner {
640
- animation: none;
641
- }
642
- }
643
-
644
- /* High contrast support */
645
- @media (prefers-contrast: high) {
646
- .field-input {
647
- border-width: 2px;
648
- }
649
-
650
- .btn {
651
- border-width: 2px;
528
+ * {
529
+ animation-duration: 0.01ms !important;
530
+ animation-iteration-count: 1 !important;
531
+ transition-duration: 0.01ms !important;
652
532
  }
653
533
  }
654
- `})]})},Qn=({darkMode:e=!0,primaryColor:t="#3b82f6",onLogout:r,propUser:n,className:o="",profileUrl:i,settingsUrl:a,showProfileMenuItem:l=!0,showSettingsMenuItem:h=!0,showViewProfileMenuItem:p=!0,profileLabel:u="My Profile",settingsLabel:b="Settings",viewProfileLabel:C="View Profile",logoutLabel:k="Sign Out"})=>{const{baseUrl:c,apiKey:g,appId:y}=ie(),[I,W]=j.useState(!1),[S,F]=j.useState(null),[D,m]=j.useState(!0),[_,w]=j.useState(null),M=j.useRef(null),V=j.useRef(null),[U,A]=j.useState(!1),[O,E]=j.useState(!1);j.useEffect(()=>{const x=()=>{E(window.innerWidth<768)};return x(),window.addEventListener("resize",x),()=>window.removeEventListener("resize",x)},[]);const N=async x=>{try{if(!x)throw new Error("Invalid user ID");const{data:v}=await $.get(`${c}/users/check-user/${x}?appId=${y}`,{headers:{"x-api-key":g},timeout:1e4});(!v.success||!v.exists)&&(console.warn("User not found, clearing session..."),localStorage.removeItem("userInfo"),F(null),w("Session expired"))}catch(v){console.error("User validation failed:",v);const H=v.response?.status===404?"User not found":v.code==="NETWORK_ERROR"?"Network error":"Validation failed";w(H),v.response?.status===404&&(localStorage.removeItem("userInfo"),F(null))}};j.useEffect(()=>{(async()=>{try{if(m(!0),w(null),n){if(!n.id||!n.name||!n.email)throw new Error("Invalid user data provided");F(n),await N(n.id)}else{const v=localStorage.getItem("userInfo");if(v)try{const H=JSON.parse(v);if(!H.id||!H.name||!H.email)throw new Error("Invalid stored user data");F(H),await N(H.id)}catch(H){console.error("Failed to parse stored user data:",H),localStorage.removeItem("userInfo"),w("Invalid user data")}}}catch(v){console.error("User initialization failed:",v),w(v.message||"Failed to load user")}finally{m(!1)}})()},[n]),j.useEffect(()=>{const x=()=>{if(I&&V.current){const v=V.current.getBoundingClientRect(),H=window.innerWidth,te=window.innerHeight,ve=280,J=300,re=H-v.right,je=v.left,et=te-v.bottom,es=re>=ve||re>je;A(es),et<J&&v.top>J}};return x(),window.addEventListener("resize",x),()=>window.removeEventListener("resize",x)},[I]),j.useEffect(()=>{const x=te=>{M.current&&!M.current.contains(te.target)&&!V.current?.contains(te.target)&&W(!1)},v=te=>{te.key==="Escape"&&W(!1)},H=()=>{I&&W(!1)};return I&&(document.addEventListener("mousedown",x),document.addEventListener("keydown",v),window.addEventListener("scroll",H,{passive:!0})),()=>{document.removeEventListener("mousedown",x),document.removeEventListener("keydown",v),window.removeEventListener("scroll",H)}},[I]);const T=e?{surface:"#000000",surfaceElevated:"#000000",surfaceHover:"#262626",border:"#262626",borderLight:"#404040",textPrimary:"#ffffff",textSecondary:"#a3a3a3",textTertiary:"#737373",accent:t,accentHover:`${t}e6`,error:"#ef4444"}:{surface:"#ffffff",surfaceElevated:"#fafafa",surfaceHover:"#f5f5f5",border:"#e5e5e5",borderLight:"#f0f0f0",textPrimary:"#171717",textSecondary:"#525252",textTertiary:"#a3a3a3",accent:t,accentHover:`${t}e6`,error:"#ef4444"},P={wrapper:{position:"relative",display:"inline-block"},avatarButton:{display:"flex",alignItems:"center",gap:O?"6px":"8px",padding:O?"6px 10px 6px 6px":"8px 12px 8px 8px",borderRadius:"24px",backgroundColor:T.surface,cursor:"pointer",transition:"all 0.2s cubic-bezier(0.4, 0, 0.2, 1)",minWidth:O?"auto":"140px",maxWidth:O?"200px":"none",outline:"none"},avatarImage:{width:O?"28px":"32px",height:O?"28px":"32px",borderRadius:"50%",objectFit:"cover",border:`2px solid ${T.borderLight}`,flexShrink:0},userInfo:{display:"flex",flexDirection:"column",alignItems:"flex-start",flex:1,minWidth:0,overflow:"hidden"},userName:{fontSize:O?"13px":"14px",fontWeight:600,color:T.textPrimary,lineHeight:"1.2",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",maxWidth:O?"80px":"120px"},userEmail:{fontSize:O?"11px":"12px",color:T.textTertiary,lineHeight:"1.2",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",maxWidth:O?"80px":"120px"},chevron:{transition:"transform 0.2s ease",transform:I?"rotate(180deg)":"rotate(0deg)",color:T.textTertiary,flexShrink:0},dropdown:{position:"absolute",top:"100%",marginTop:"8px",[U?"left":"right"]:"0",backgroundColor:T.surfaceElevated,border:`1px solid ${T.border}`,borderRadius:"12px",boxShadow:"0 20px 40px rgba(0,0,0,0.15), 0 4px 12px rgba(0,0,0,0.1)",width:"min(280px, 90vw)",maxWidth:"calc(100vw - 20px)",padding:"6px 6px 16px 6px",zIndex:1e3,fontFamily:"'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif",opacity:I?1:0,pointerEvents:I?"auto":"none",transition:"all 0.2s cubic-bezier(0.4, 0, 0.2, 1)",transform:I?"translateY(0) scale(1)":"translateY(-8px) scale(0.95)",overflow:"hidden"},dropdownSection:{padding:O?"10px 12px":"0px 16px","&:last-child":{borderBottom:"none"}},userSection:{display:"flex",alignItems:"center",gap:O?"10px":"12px",padding:O?"14px":"16px"},dropdownAvatar:{width:O?"40px":"48px",height:O?"40px":"48px",borderRadius:"50%",objectFit:"cover",border:`2px solid ${T.borderLight}`,flexShrink:0},dropdownUserInfo:{display:"flex",flexDirection:"column",flex:1,minWidth:0},dropdownUserName:{fontSize:O?"15px":"16px",fontWeight:600,color:T.textPrimary,lineHeight:"1.2",marginBottom:"2px",overflow:"hidden",textOverflow:"ellipsis"},dropdownUserEmail:{fontSize:O?"13px":"14px",color:T.textSecondary,lineHeight:"1.2",overflow:"hidden",textOverflow:"ellipsis"},menuItem:{display:"flex",alignItems:"center",gap:O?"10px":"12px",padding:O?"10px 12px":"12px 16px",borderRadius:"8px",cursor:"pointer",transition:"all 0.15s ease",color:T.textPrimary,textDecoration:"none",border:"none",background:"none",width:"100%",fontSize:O?"13px":"14px",textAlign:"left",outline:"none"},menuItemText:{flex:1},icon:{width:O?"16px":"18px",height:O?"16px":"18px",color:T.textSecondary,flexShrink:0},logoutButton:{display:"flex",alignItems:"center",gap:O?"10px":"12px",padding:O?"10px 12px":"12px 16px",borderRadius:"8px",cursor:"pointer",transition:"all 0.15s ease",background:"none",border:"none",width:"100%",fontSize:O?"13px":"14px",color:T.error,textAlign:"left",outline:"none"},loadingText:{padding:O?"16px 12px":"20px 16px",textAlign:"center",color:T.textSecondary,fontSize:O?"13px":"14px"},errorState:{padding:O?"16px 12px":"20px 16px",textAlign:"center",color:T.textSecondary,fontSize:O?"13px":"14px",display:"flex",alignItems:"center",justifyContent:"center",gap:"8px",flexDirection:"column"},retryButton:{marginTop:"8px",padding:"8px 16px",backgroundColor:T.accent,color:"#ffffff",border:"none",borderRadius:"6px",cursor:"pointer",fontSize:"12px",fontWeight:500,transition:"background-color 0.2s ease"}},B=()=>{w(null),m(!0);const x=localStorage.getItem("userInfo");if(x)try{const v=JSON.parse(x);F(v),N(v.id)}catch{w("Invalid user data")}m(!1)},q=(x,v)=>{(x.key==="Enter"||x.key===" ")&&(x.preventDefault(),v())},f=()=>i||S?.profileUrl,R=()=>{const x=f();x&&window.open(x,"_blank","noopener,noreferrer")},L=()=>{a&&window.open(a,"_blank","noopener,noreferrer")};return s.jsxs("div",{style:P.wrapper,ref:M,className:o,role:"menu","aria-label":"User menu",children:[s.jsxs("div",{ref:V,style:P.avatarButton,onClick:()=>W(x=>!x),onKeyDown:x=>q(x,()=>W(v=>!v)),tabIndex:0,role:"button","aria-haspopup":"true","aria-expanded":I,"aria-label":"Toggle user menu",onMouseOver:x=>{x.currentTarget.style.backgroundColor=T.surfaceHover,x.currentTarget.style.boxShadow="0 4px 12px rgba(0,0,0,0.15)"},onMouseOut:x=>{x.currentTarget.style.backgroundColor=T.surface,x.currentTarget.style.boxShadow="none"},onBlur:x=>{x.currentTarget.style.outline="none"},children:[S?.avatarUrl?s.jsx("img",{src:S.avatarUrl,alt:`${S.name}'s avatar`,style:P.avatarImage,loading:"lazy",onError:x=>{const v=x.target;v.src=`https://api.dicebear.com/9.x/avataaars/svg?seed=${S.name||"user"}`}}):s.jsx("img",{src:`https://api.dicebear.com/9.x/avataaars/svg?seed=${S?.name||"user"}`,alt:"Default user avatar",style:P.avatarImage,loading:"lazy"}),!O&&s.jsxs("div",{style:P.userInfo,children:[s.jsx("div",{style:P.userName,title:S?.name,children:S?.name||"Guest"}),S?.email&&s.jsx("div",{style:P.userEmail,title:S.email,children:S.email})]}),s.jsx(Pn,{size:O?14:16,style:P.chevron,"aria-hidden":"true"})]}),I&&s.jsx("div",{style:P.dropdown,role:"menu","aria-label":"User options",children:D?s.jsx("div",{style:P.loadingText,role:"status","aria-live":"polite",children:"Loading user information..."}):S?s.jsxs(s.Fragment,{children:[s.jsxs("div",{style:P.userSection,children:[S?.avatarUrl?s.jsx("img",{src:S.avatarUrl,alt:`${S.name}'s profile picture`,style:P.dropdownAvatar,loading:"lazy",onError:x=>{const v=x.target;v.src=`https://api.dicebear.com/9.x/avataaars/svg?seed=${S.name}`}}):s.jsx("img",{src:`https://api.dicebear.com/9.x/avataaars/svg?seed=${S.name}`,alt:`${S.name}'s default avatar`,style:P.dropdownAvatar,loading:"lazy"}),s.jsxs("div",{style:P.dropdownUserInfo,children:[s.jsx("div",{style:P.dropdownUserName,title:S.name,children:S.name}),s.jsx("div",{style:P.dropdownUserEmail,title:S.email,children:S.email})]})]}),s.jsxs("div",{style:P.dropdownSection,children:[l&&f()&&s.jsxs("button",{style:P.menuItem,onClick:R,onMouseOver:x=>{x.currentTarget.style.backgroundColor=T.surfaceHover},onMouseOut:x=>{x.currentTarget.style.backgroundColor="transparent"},onKeyDown:x=>q(x,R),role:"menuitem",tabIndex:0,children:[s.jsx(fe,{style:P.icon,"aria-hidden":"true"}),s.jsx("span",{style:P.menuItemText,children:u})]}),h&&a&&s.jsxs("button",{style:P.menuItem,onClick:L,onMouseOver:x=>{x.currentTarget.style.backgroundColor=T.surfaceHover},onMouseOut:x=>{x.currentTarget.style.backgroundColor="transparent"},onKeyDown:x=>q(x,L),role:"menuitem",tabIndex:0,children:[s.jsx(Dn,{style:P.icon,"aria-hidden":"true"}),s.jsx("span",{style:P.menuItemText,children:b})]}),p&&S.profileUrl&&s.jsxs("a",{href:S.profileUrl,target:"_blank",rel:"noopener noreferrer",style:P.menuItem,onMouseOver:x=>{x.currentTarget.style.backgroundColor=T.surfaceHover},onMouseOut:x=>{x.currentTarget.style.backgroundColor="transparent"},role:"menuitem",tabIndex:0,children:[s.jsx(Se,{style:P.icon,"aria-hidden":"true"}),s.jsx("span",{style:P.menuItemText,children:C})]})]}),s.jsx("div",{style:P.dropdownSection,children:s.jsxs("button",{style:P.logoutButton,onClick:r,onMouseOver:x=>{x.currentTarget.style.backgroundColor=T.surfaceHover},onMouseOut:x=>{x.currentTarget.style.backgroundColor="transparent"},onKeyDown:x=>q(x,r),role:"menuitem",tabIndex:0,children:[s.jsx(Vt,{style:{...P.icon,color:T.error},"aria-hidden":"true"}),s.jsx("span",{style:P.menuItemText,children:k})]})})]}):s.jsxs("div",{style:P.errorState,role:"alert",children:[s.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"8px"},children:[s.jsx(ae,{size:16,"aria-hidden":"true"}),s.jsx("span",{children:_||"Not signed in"})]}),_&&_!=="Not signed in"&&s.jsx("button",{style:P.retryButton,onClick:B,onMouseOver:x=>{x.currentTarget.style.backgroundColor=T.accentHover},onMouseOut:x=>{x.currentTarget.style.backgroundColor=T.accent},children:"Try Again"})]})})]})};X.NeuctraAuthix=bn,X.ReactSignedIn=Yn,X.ReactSignedOut=Jn,X.ReactUserButton=Qn,X.ReactUserLogin=Hn,X.ReactUserProfile=Zn,X.ReactUserSignUp=$n,X.getSdkConfig=ie,X.setSdkConfig=Bn,Object.defineProperty(X,Symbol.toStringTag,{value:"Module"})}));
534
+ `})]})},rs=({darkMode:e=!0,primaryColor:t="#3b82f6",onLogout:r,varient:s="classic",propUser:o,className:i="",profileUrl:a,settingsUrl:l,showProfileMenuItem:f=!0,showSettingsMenuItem:p=!0,showViewProfileMenuItem:u=!0,profileLabel:y="My Profile",settingsLabel:T="Settings",viewProfileLabel:E="View Profile",logoutLabel:c="Sign Out"})=>{const{baseUrl:b,apiKey:w,appId:U}=pe(),[M,I]=k.useState(!1),[C,L]=k.useState(null),[m,z]=k.useState(!0),[v,D]=k.useState(null),H=k.useRef(null),A=k.useRef(null),[X,V]=k.useState(!1),[P,K]=k.useState(!1);k.useEffect(()=>{const h=()=>{K(window.innerWidth<768)};return h(),window.addEventListener("resize",h),()=>window.removeEventListener("resize",h)},[]);const J=async h=>{try{if(!h)throw new Error("Invalid user ID");const{data:g}=await W.get(`${b}/users/check-user/${h}?appId=${U}`,{headers:{"x-api-key":w},timeout:1e4});(!g.success||!g.exists)&&(console.warn("User not found, clearing session..."),localStorage.removeItem("userInfo"),L(null),D("Session expired"))}catch(g){console.error("User validation failed:",g);const G=g.response?.status===404?"User not found":g.code==="NETWORK_ERROR"?"Network error":"Validation failed";D(G),g.response?.status===404&&(localStorage.removeItem("userInfo"),L(null))}};k.useEffect(()=>{(async()=>{try{if(z(!0),D(null),o){if(!o.id||!o.name||!o.email)throw new Error("Invalid user data provided");L(o),await J(o.id)}else{const g=localStorage.getItem("userInfo");if(g)try{const G=JSON.parse(g);if(!G.id||!G.name||!G.email)throw new Error("Invalid stored user data");L(G),await J(G.id)}catch(G){console.error("Failed to parse stored user data:",G),localStorage.removeItem("userInfo"),D("Invalid user data")}}}catch(g){console.error("User initialization failed:",g),D(g.message||"Failed to load user")}finally{z(!1)}})()},[o]),k.useEffect(()=>{const h=()=>{if(M&&A.current){const g=A.current.getBoundingClientRect(),G=window.innerWidth,j=window.innerHeight,O=280,q=300,re=G-g.right,fe=g.left,Ce=j-g.bottom,ns=re>=O||re>fe;V(ns),Ce<q&&g.top>q}};return h(),window.addEventListener("resize",h),()=>window.removeEventListener("resize",h)},[M]),k.useEffect(()=>{const h=j=>{H.current&&!H.current.contains(j.target)&&!A.current?.contains(j.target)&&I(!1)},g=j=>{j.key==="Escape"&&I(!1)},G=()=>{M&&I(!1)};return M&&(document.addEventListener("mousedown",h),document.addEventListener("keydown",g),window.addEventListener("scroll",G,{passive:!0})),()=>{document.removeEventListener("mousedown",h),document.removeEventListener("keydown",g),window.removeEventListener("scroll",G)}},[M]);const _=e?{surface:"#000000",surfaceElevated:"#000000",surfaceHover:"#262626",border:"#262626",borderLight:"#404040",textPrimary:"#ffffff",textSecondary:"#a3a3a3",textTertiary:"#737373",accent:t,accentHover:`${t}e6`,error:"#ef4444"}:{surface:"#ffffff",surfaceElevated:"#fafafa",surfaceHover:"#f5f5f5",border:"#e5e5e5",borderLight:"#f0f0f0",textPrimary:"#171717",textSecondary:"#525252",textTertiary:"#a3a3a3",accent:t,accentHover:`${t}e6`,error:"#ef4444"},S={wrapper:{position:"relative",display:"inline-block"},avatarButton:{display:"flex",alignItems:"center",gap:P?"6px":"8px",padding:P?"6px 10px 6px 6px":"8px 12px 8px 8px",borderRadius:"24px",backgroundColor:_.surface,cursor:"pointer",transition:"all 0.2s cubic-bezier(0.4, 0, 0.2, 1)",minWidth:P?"auto":"140px",maxWidth:P?"200px":"none",outline:"none"},avatarImage:{width:P?"28px":"32px",height:P?"28px":"32px",borderRadius:"50%",objectFit:"cover",border:`2px solid ${_.borderLight}`,flexShrink:0},userInfo:{display:"flex",flexDirection:"column",alignItems:"flex-start",flex:1,minWidth:0,overflow:"hidden"},userName:{fontSize:P?"13px":"14px",fontWeight:600,color:_.textPrimary,lineHeight:"1.2",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",maxWidth:P?"80px":"120px"},userEmail:{fontSize:P?"11px":"12px",color:_.textTertiary,lineHeight:"1.2",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",maxWidth:P?"80px":"120px"},chevron:{transition:"transform 0.2s ease",transform:M?"rotate(180deg)":"rotate(0deg)",color:_.textTertiary,flexShrink:0},dropdown:{position:"absolute",top:"100%",marginTop:"8px",[X?"left":"right"]:"0",backgroundColor:_.surfaceElevated,border:`1px solid ${_.border}`,borderRadius:"12px",boxShadow:"0 20px 40px rgba(0,0,0,0.15), 0 4px 12px rgba(0,0,0,0.1)",width:"min(280px, 90vw)",maxWidth:"calc(100vw - 20px)",padding:"6px 6px 16px 6px",zIndex:1e3,fontFamily:"'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif",opacity:M?1:0,pointerEvents:M?"auto":"none",transition:"all 0.2s cubic-bezier(0.4, 0, 0.2, 1)",transform:M?"translateY(0) scale(1)":"translateY(-8px) scale(0.95)",overflow:"hidden"},dropdownSection:{padding:P?"10px 12px":"0px 16px","&:last-child":{borderBottom:"none"}},userSection:{display:"flex",alignItems:"center",gap:P?"10px":"12px",padding:P?"14px":"16px"},dropdownAvatar:{width:P?"40px":"48px",height:P?"40px":"48px",borderRadius:"50%",objectFit:"cover",border:`2px solid ${_.borderLight}`,flexShrink:0},dropdownUserInfo:{display:"flex",flexDirection:"column",flex:1,minWidth:0},dropdownUserName:{fontSize:P?"15px":"16px",fontWeight:600,color:_.textPrimary,lineHeight:"1.2",marginBottom:"2px",overflow:"hidden",textOverflow:"ellipsis"},dropdownUserEmail:{fontSize:P?"13px":"14px",color:_.textSecondary,lineHeight:"1.2",overflow:"hidden",textOverflow:"ellipsis"},menuItem:{display:"flex",alignItems:"center",gap:P?"10px":"12px",padding:P?"10px 12px":"12px 16px",borderRadius:"8px",cursor:"pointer",transition:"all 0.15s ease",color:_.textPrimary,textDecoration:"none",border:"none",background:"none",width:"100%",fontSize:P?"13px":"14px",textAlign:"left",outline:"none"},menuItemText:{flex:1},icon:{width:P?"16px":"18px",height:P?"16px":"18px",color:_.textSecondary,flexShrink:0},logoutButton:{display:"flex",alignItems:"center",gap:P?"10px":"12px",padding:P?"10px 12px":"12px 16px",borderRadius:"8px",cursor:"pointer",transition:"all 0.15s ease",background:"none",border:"none",width:"100%",fontSize:P?"13px":"14px",color:_.error,textAlign:"left",outline:"none"},loadingText:{padding:P?"16px 12px":"20px 16px",textAlign:"center",color:_.textSecondary,fontSize:P?"13px":"14px"},errorState:{padding:P?"16px 12px":"20px 16px",textAlign:"center",color:_.textSecondary,fontSize:P?"13px":"14px",display:"flex",alignItems:"center",justifyContent:"center",gap:"8px",flexDirection:"column"},retryButton:{marginTop:"8px",padding:"8px 16px",backgroundColor:_.accent,color:"#ffffff",border:"none",borderRadius:"6px",cursor:"pointer",fontSize:"12px",fontWeight:500,transition:"background-color 0.2s ease"}},Y=()=>{D(null),z(!0);const h=localStorage.getItem("userInfo");if(h)try{const g=JSON.parse(h);L(g),J(g.id)}catch{D("Invalid user data")}z(!1)},x=(h,g)=>{(h.key==="Enter"||h.key===" ")&&(h.preventDefault(),g())},R=()=>a||C?.profileUrl,F=()=>{const h=R();h&&window.open(h,"_blank","noopener,noreferrer")},B=()=>{l&&window.open(l,"_blank","noopener,noreferrer")};return n.jsxs("div",{style:S.wrapper,ref:H,className:i,role:"menu","aria-label":"User menu",children:[s==="classic"?n.jsx("div",{ref:A,onClick:()=>I(h=>!h),onKeyDown:h=>x(h,()=>I(g=>!g)),tabIndex:0,role:"button","aria-haspopup":"true","aria-expanded":M,"aria-label":"Toggle user menu",children:C?.avatarUrl?n.jsx("img",{src:C.avatarUrl,alt:`${C.name}'s avatar`,style:{width:P?"34px":"40px",height:P?"34px":"40px",borderRadius:"50%",objectFit:"cover",border:`2px solid ${_.borderLight}`,flexShrink:0},loading:"lazy",onError:h=>{const g=h.target;g.src="https://api.dicebear.com/9.x/glass/svg?seed=Kingston"}}):n.jsx("img",{src:"https://api.dicebear.com/9.x/glass/svg?seed=Kingston",alt:"Default user avatar",style:{width:P?"34px":"40px",height:P?"34px":"40px",borderRadius:"50%",objectFit:"cover",border:`2px solid ${_.borderLight}`,flexShrink:0},loading:"lazy"})}):n.jsxs("div",{ref:A,style:S.avatarButton,onClick:()=>I(h=>!h),onKeyDown:h=>x(h,()=>I(g=>!g)),tabIndex:0,role:"button","aria-haspopup":"true","aria-expanded":M,"aria-label":"Toggle user menu",onMouseOver:h=>{h.currentTarget.style.backgroundColor=_.surfaceHover,h.currentTarget.style.boxShadow="0 4px 12px rgba(0,0,0,0.15)"},onMouseOut:h=>{h.currentTarget.style.backgroundColor=_.surface,h.currentTarget.style.boxShadow="none"},onBlur:h=>{h.currentTarget.style.outline="none"},children:[C?.avatarUrl?n.jsx("img",{src:C.avatarUrl,alt:`${C.name}'s avatar`,style:S.avatarImage,loading:"lazy",onError:h=>{const g=h.target;g.src="https://api.dicebear.com/9.x/glass/svg?seed=Kingston"}}):n.jsx("img",{src:"https://api.dicebear.com/9.x/glass/svg?seed=Kingston",alt:"Default user avatar",style:S.avatarImage,loading:"lazy"}),!P&&n.jsxs("div",{style:S.userInfo,children:[n.jsx("div",{style:S.userName,title:C?.name,children:C?.name||"Guest"}),C?.email&&n.jsx("div",{style:S.userEmail,title:C.email,children:C.email})]}),n.jsx(An,{size:P?14:16,style:S.chevron,"aria-hidden":"true"})]}),M&&n.jsx("div",{style:S.dropdown,role:"menu","aria-label":"User options",children:m?n.jsx("div",{style:S.loadingText,role:"status","aria-live":"polite",children:"Loading user information..."}):C?n.jsxs(n.Fragment,{children:[n.jsxs("div",{style:S.userSection,children:[C?.avatarUrl?n.jsx("img",{src:C.avatarUrl,alt:`${C.name}'s profile picture`,style:S.dropdownAvatar,loading:"lazy",onError:h=>{const g=h.target;g.src=`https://api.dicebear.com/9.x/initials/svg?seed=${C.name}`}}):n.jsx("img",{src:`https://api.dicebear.com/9.x/initials/svg?seed=${C.name}`,alt:`${C.name}'s default avatar`,style:S.dropdownAvatar,loading:"lazy"}),n.jsxs("div",{style:S.dropdownUserInfo,children:[n.jsx("div",{style:S.dropdownUserName,title:C.name,children:C.name}),n.jsx("div",{style:S.dropdownUserEmail,title:C.email,children:C.email})]})]}),n.jsxs("div",{style:S.dropdownSection,children:[f&&R()&&n.jsxs("button",{style:S.menuItem,onClick:F,onMouseOver:h=>{h.currentTarget.style.backgroundColor=_.surfaceHover},onMouseOut:h=>{h.currentTarget.style.backgroundColor="transparent"},onKeyDown:h=>x(h,F),role:"menuitem",tabIndex:0,children:[n.jsx(ye,{style:S.icon,"aria-hidden":"true"}),n.jsx("span",{style:S.menuItemText,children:y})]}),p&&l&&n.jsxs("button",{style:S.menuItem,onClick:B,onMouseOver:h=>{h.currentTarget.style.backgroundColor=_.surfaceHover},onMouseOut:h=>{h.currentTarget.style.backgroundColor="transparent"},onKeyDown:h=>x(h,B),role:"menuitem",tabIndex:0,children:[n.jsx(Mn,{style:S.icon,"aria-hidden":"true"}),n.jsx("span",{style:S.menuItemText,children:T})]}),u&&C.profileUrl&&n.jsxs("a",{href:C.profileUrl,target:"_blank",rel:"noopener noreferrer",style:S.menuItem,onMouseOver:h=>{h.currentTarget.style.backgroundColor=_.surfaceHover},onMouseOut:h=>{h.currentTarget.style.backgroundColor="transparent"},role:"menuitem",tabIndex:0,children:[n.jsx(ue,{style:S.icon,"aria-hidden":"true"}),n.jsx("span",{style:S.menuItemText,children:E})]})]}),n.jsx("div",{style:S.dropdownSection,children:n.jsxs("button",{style:S.logoutButton,onClick:r,onMouseOver:h=>{h.currentTarget.style.backgroundColor=_.surfaceHover},onMouseOut:h=>{h.currentTarget.style.backgroundColor="transparent"},onKeyDown:h=>x(h,r),role:"menuitem",tabIndex:0,children:[n.jsx(rt,{style:{...S.icon,color:_.error},"aria-hidden":"true"}),n.jsx("span",{style:S.menuItemText,children:c})]})})]}):n.jsxs("div",{style:S.errorState,role:"alert",children:[n.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"8px"},children:[n.jsx(oe,{size:16,"aria-hidden":"true"}),n.jsx("span",{children:v||"Not signed in"})]}),v&&v!=="Not signed in"&&n.jsx("button",{style:S.retryButton,onClick:Y,onMouseOver:h=>{h.currentTarget.style.backgroundColor=_.accentHover},onMouseOut:h=>{h.currentTarget.style.backgroundColor=_.accent},children:"Try Again"})]})})]})};Q.NeuctraAuthix=vn,Q.ReactSignedIn=Kn,Q.ReactSignedOut=Xn,Q.ReactUserButton=rs,Q.ReactUserLogin=qn,Q.ReactUserProfile=ts,Q.ReactUserSignUp=Hn,Q.getSdkConfig=pe,Q.setSdkConfig=$n,Object.defineProperty(Q,Symbol.toStringTag,{value:"Module"})}));