@objectstack/account 5.0.0 → 5.1.0

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.
@@ -70,7 +70,7 @@ Error generating stack: `+e.message+`
70
70
  `)}t.write(`payload.value = newResult;`),t.write(`return payload;`);let s=t.compile();return(t,n)=>s(e,t,n)},a,o=Ga,s=!Aa.jitless,c=s&&Ka.value,l=t.catchall,u;e._zod.parse=(d,f)=>{u??=r.value;let p=d.value;return o(p)?s&&c&&f?.async===!1&&f.jitless!==!0?(a||=i(t.shape),d=a(d,f),l?xc([],p,d,f,u,e):d):n(d,f):(d.issues.push({expected:`object`,code:`invalid_type`,input:p,inst:e}),d)}});function wc(e,t,n,r){for(let n of e)if(n.issues.length===0)return t.value=n.value,t;let i=e.filter(e=>!so(e));return i.length===1?(t.value=i[0].value,i[0]):(t.issues.push({code:`invalid_union`,input:t.value,inst:n,errors:e.map(e=>e.issues.map(e=>fo(e,r,ja())))}),t)}var Tc=P(`$ZodUnion`,(e,t)=>{Ns.init(e,t),za(e._zod,`optin`,()=>t.options.some(e=>e._zod.optin===`optional`)?`optional`:void 0),za(e._zod,`optout`,()=>t.options.some(e=>e._zod.optout===`optional`)?`optional`:void 0),za(e._zod,`values`,()=>{if(t.options.every(e=>e._zod.values))return new Set(t.options.flatMap(e=>Array.from(e._zod.values)))}),za(e._zod,`pattern`,()=>{if(t.options.every(e=>e._zod.pattern)){let e=t.options.map(e=>e._zod.pattern);return RegExp(`^(${e.map(e=>Ia(e.source)).join(`|`)})$`)}});let n=t.options.length===1?t.options[0]._zod.run:null;e._zod.parse=(r,i)=>{if(n)return n(r,i);let a=!1,o=[];for(let e of t.options){let t=e._zod.run({value:r.value,issues:[]},i);if(t instanceof Promise)o.push(t),a=!0;else{if(t.issues.length===0)return t;o.push(t)}}return a?Promise.all(o).then(t=>wc(t,r,e,i)):wc(o,r,e,i)}}),Ec=P(`$ZodDiscriminatedUnion`,(e,t)=>{t.inclusive=!1,Tc.init(e,t);let n=e._zod.parse;za(e._zod,`propValues`,()=>{let e={};for(let n of t.options){let r=n._zod.propValues;if(!r||Object.keys(r).length===0)throw Error(`Invalid discriminated union option at index "${t.options.indexOf(n)}"`);for(let[t,n]of Object.entries(r)){e[t]||(e[t]=new Set);for(let r of n)e[t].add(r)}}return e});let r=Pa(()=>{let e=t.options,n=new Map;for(let r of e){let e=r._zod.propValues?.[t.discriminator];if(!e||e.size===0)throw Error(`Invalid discriminated union option at index "${t.options.indexOf(r)}"`);for(let t of e){if(n.has(t))throw Error(`Duplicate discriminator value "${String(t)}"`);n.set(t,r)}}return n});e._zod.parse=(i,a)=>{let o=i.value;if(!Ga(o))return i.issues.push({code:`invalid_type`,expected:`object`,input:o,inst:e}),i;let s=r.value.get(o?.[t.discriminator]);return s?s._zod.run(i,a):t.unionFallback||a.direction===`backward`?n(i,a):(i.issues.push({code:`invalid_union`,errors:[],note:`No matching discriminator`,discriminator:t.discriminator,options:Array.from(r.value.keys()),input:o,path:[t.discriminator],inst:e}),i)}}),Dc=P(`$ZodIntersection`,(e,t)=>{Ns.init(e,t),e._zod.parse=(e,n)=>{let r=e.value,i=t.left._zod.run({value:r,issues:[]},n),a=t.right._zod.run({value:r,issues:[]},n);return i instanceof Promise||a instanceof Promise?Promise.all([i,a]).then(([t,n])=>kc(e,t,n)):kc(e,i,a)}});function Oc(e,t){if(e===t||e instanceof Date&&t instanceof Date&&+e==+t)return{valid:!0,data:e};if(qa(e)&&qa(t)){let n=Object.keys(t),r=Object.keys(e).filter(e=>n.indexOf(e)!==-1),i={...e,...t};for(let n of r){let r=Oc(e[n],t[n]);if(!r.valid)return{valid:!1,mergeErrorPath:[n,...r.mergeErrorPath]};i[n]=r.data}return{valid:!0,data:i}}if(Array.isArray(e)&&Array.isArray(t)){if(e.length!==t.length)return{valid:!1,mergeErrorPath:[]};let n=[];for(let r=0;r<e.length;r++){let i=e[r],a=t[r],o=Oc(i,a);if(!o.valid)return{valid:!1,mergeErrorPath:[r,...o.mergeErrorPath]};n.push(o.data)}return{valid:!0,data:n}}return{valid:!1,mergeErrorPath:[]}}function kc(e,t,n){let r=new Map,i;for(let n of t.issues)if(n.code===`unrecognized_keys`){i??=n;for(let e of n.keys)r.has(e)||r.set(e,{}),r.get(e).l=!0}else e.issues.push(n);for(let t of n.issues)if(t.code===`unrecognized_keys`)for(let e of t.keys)r.has(e)||r.set(e,{}),r.get(e).r=!0;else e.issues.push(t);let a=[...r].filter(([,e])=>e.l&&e.r).map(([e])=>e);if(a.length&&i&&e.issues.push({...i,keys:a}),so(e))return e;let o=Oc(t.value,n.value);if(!o.valid)throw Error(`Unmergable intersection. Error path: ${JSON.stringify(o.mergeErrorPath)}`);return e.value=o.data,e}var Ac=P(`$ZodTuple`,(e,t)=>{Ns.init(e,t);let n=t.items;e._zod.parse=(r,i)=>{let a=r.value;if(!Array.isArray(a))return r.issues.push({input:a,inst:e,expected:`tuple`,code:`invalid_type`}),r;r.value=[];let o=[],s=jc(n,`optin`),c=jc(n,`optout`);if(!t.rest){if(a.length<s)return r.issues.push({code:`too_small`,minimum:s,inclusive:!0,input:a,inst:e,origin:`array`}),r;a.length>n.length&&r.issues.push({code:`too_big`,maximum:n.length,inclusive:!0,input:a,inst:e,origin:`array`})}let l=Array(n.length);for(let e=0;e<n.length;e++){let t=n[e]._zod.run({value:a[e],issues:[]},i);t instanceof Promise?o.push(t.then(t=>{l[e]=t})):l[e]=t}if(t.rest){let e=n.length-1,s=a.slice(n.length);for(let n of s){e++;let a=t.rest._zod.run({value:n,issues:[]},i);a instanceof Promise?o.push(a.then(t=>Mc(t,r,e))):Mc(a,r,e)}}return o.length?Promise.all(o).then(()=>Nc(l,r,n,a,c)):Nc(l,r,n,a,c)}});function jc(e,t){for(let n=e.length-1;n>=0;n--)if(e[n]._zod[t]!==`optional`)return n+1;return 0}function Mc(e,t,n){e.issues.length&&t.issues.push(...lo(n,e.issues)),t.value[n]=e.value}function Nc(e,t,n,r,i){for(let a=0;a<n.length;a++){let n=e[a],o=a<r.length;if(n.issues.length){if(!o&&a>=i){t.value.length=a;break}t.issues.push(...lo(a,n.issues))}t.value[a]=n.value}for(let e=t.value.length-1;e>=r.length&&n[e]._zod.optout===`optional`&&t.value[e]===void 0;e--)t.value.length=e;return t}var Pc=P(`$ZodRecord`,(e,t)=>{Ns.init(e,t),e._zod.parse=(n,r)=>{let i=n.value;if(!qa(i))return n.issues.push({expected:`record`,code:`invalid_type`,input:i,inst:e}),n;let a=[],o=t.keyType._zod.values;if(o){n.value={};let s=new Set;for(let c of o)if(typeof c==`string`||typeof c==`number`||typeof c==`symbol`){s.add(typeof c==`number`?c.toString():c);let o=t.keyType._zod.run({value:c,issues:[]},r);if(o instanceof Promise)throw Error(`Async schemas not supported in object keys currently`);if(o.issues.length){n.issues.push({code:`invalid_key`,origin:`record`,issues:o.issues.map(e=>fo(e,r,ja())),input:c,path:[c],inst:e});continue}let l=o.value,u=t.valueType._zod.run({value:i[c],issues:[]},r);u instanceof Promise?a.push(u.then(e=>{e.issues.length&&n.issues.push(...lo(c,e.issues)),n.value[l]=e.value})):(u.issues.length&&n.issues.push(...lo(c,u.issues)),n.value[l]=u.value)}let c;for(let e in i)s.has(e)||(c??=[],c.push(e));c&&c.length>0&&n.issues.push({code:`unrecognized_keys`,input:i,inst:e,keys:c})}else{n.value={};for(let o of Reflect.ownKeys(i)){if(o===`__proto__`||!Object.prototype.propertyIsEnumerable.call(i,o))continue;let s=t.keyType._zod.run({value:o,issues:[]},r);if(s instanceof Promise)throw Error(`Async schemas not supported in object keys currently`);if(typeof o==`string`&&ls.test(o)&&s.issues.length){let e=t.keyType._zod.run({value:Number(o),issues:[]},r);if(e instanceof Promise)throw Error(`Async schemas not supported in object keys currently`);e.issues.length===0&&(s=e)}if(s.issues.length){t.mode===`loose`?n.value[o]=i[o]:n.issues.push({code:`invalid_key`,origin:`record`,issues:s.issues.map(e=>fo(e,r,ja())),input:o,path:[o],inst:e});continue}let c=t.valueType._zod.run({value:i[o],issues:[]},r);c instanceof Promise?a.push(c.then(e=>{e.issues.length&&n.issues.push(...lo(o,e.issues)),n.value[s.value]=e.value})):(c.issues.length&&n.issues.push(...lo(o,c.issues)),n.value[s.value]=c.value)}}return a.length?Promise.all(a).then(()=>n):n}}),Fc=P(`$ZodEnum`,(e,t)=>{Ns.init(e,t);let n=Ma(t.entries),r=new Set(n);e._zod.values=r,e._zod.pattern=RegExp(`^(${n.filter(e=>Ya.has(typeof e)).map(e=>typeof e==`string`?Xa(e):e.toString()).join(`|`)})$`),e._zod.parse=(t,i)=>{let a=t.value;return r.has(a)||t.issues.push({code:`invalid_value`,values:n,input:a,inst:e}),t}}),Ic=P(`$ZodLiteral`,(e,t)=>{if(Ns.init(e,t),t.values.length===0)throw Error(`Cannot create literal schema with no valid values`);let n=new Set(t.values);e._zod.values=n,e._zod.pattern=RegExp(`^(${t.values.map(e=>typeof e==`string`?Xa(e):e?Xa(e.toString()):String(e)).join(`|`)})$`),e._zod.parse=(r,i)=>{let a=r.value;return n.has(a)||r.issues.push({code:`invalid_value`,values:t.values,input:a,inst:e}),r}}),Lc=P(`$ZodTransform`,(e,t)=>{Ns.init(e,t),e._zod.optin=`optional`,e._zod.parse=(n,r)=>{if(r.direction===`backward`)throw new ka(e.constructor.name);let i=t.transform(n.value,n);if(r.async)return(i instanceof Promise?i:Promise.resolve(i)).then(e=>(n.value=e,n.fallback=!0,n));if(i instanceof Promise)throw new Oa;return n.value=i,n.fallback=!0,n}});function Rc(e,t){return t===void 0&&(e.issues.length||e.fallback)?{issues:[],value:void 0}:e}var zc=P(`$ZodOptional`,(e,t)=>{Ns.init(e,t),e._zod.optin=`optional`,e._zod.optout=`optional`,za(e._zod,`values`,()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,void 0]):void 0),za(e._zod,`pattern`,()=>{let e=t.innerType._zod.pattern;return e?RegExp(`^(${Ia(e.source)})?$`):void 0}),e._zod.parse=(e,n)=>{if(t.innerType._zod.optin===`optional`){let r=e.value,i=t.innerType._zod.run(e,n);return i instanceof Promise?i.then(e=>Rc(e,r)):Rc(i,r)}return e.value===void 0?e:t.innerType._zod.run(e,n)}}),Bc=P(`$ZodExactOptional`,(e,t)=>{zc.init(e,t),za(e._zod,`values`,()=>t.innerType._zod.values),za(e._zod,`pattern`,()=>t.innerType._zod.pattern),e._zod.parse=(e,n)=>t.innerType._zod.run(e,n)}),Vc=P(`$ZodNullable`,(e,t)=>{Ns.init(e,t),za(e._zod,`optin`,()=>t.innerType._zod.optin),za(e._zod,`optout`,()=>t.innerType._zod.optout),za(e._zod,`pattern`,()=>{let e=t.innerType._zod.pattern;return e?RegExp(`^(${Ia(e.source)}|null)$`):void 0}),za(e._zod,`values`,()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,null]):void 0),e._zod.parse=(e,n)=>e.value===null?e:t.innerType._zod.run(e,n)}),Hc=P(`$ZodDefault`,(e,t)=>{Ns.init(e,t),e._zod.optin=`optional`,za(e._zod,`values`,()=>t.innerType._zod.values),e._zod.parse=(e,n)=>{if(n.direction===`backward`)return t.innerType._zod.run(e,n);if(e.value===void 0)return e.value=t.defaultValue,e;let r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(e=>Uc(e,t)):Uc(r,t)}});function Uc(e,t){return e.value===void 0&&(e.value=t.defaultValue),e}var Wc=P(`$ZodPrefault`,(e,t)=>{Ns.init(e,t),e._zod.optin=`optional`,za(e._zod,`values`,()=>t.innerType._zod.values),e._zod.parse=(e,n)=>(n.direction===`backward`||e.value===void 0&&(e.value=t.defaultValue),t.innerType._zod.run(e,n))}),Gc=P(`$ZodNonOptional`,(e,t)=>{Ns.init(e,t),za(e._zod,`values`,()=>{let e=t.innerType._zod.values;return e?new Set([...e].filter(e=>e!==void 0)):void 0}),e._zod.parse=(n,r)=>{let i=t.innerType._zod.run(n,r);return i instanceof Promise?i.then(t=>Kc(t,e)):Kc(i,e)}});function Kc(e,t){return!e.issues.length&&e.value===void 0&&e.issues.push({code:`invalid_type`,expected:`nonoptional`,input:e.value,inst:t}),e}var qc=P(`$ZodCatch`,(e,t)=>{Ns.init(e,t),e._zod.optin=`optional`,za(e._zod,`optout`,()=>t.innerType._zod.optout),za(e._zod,`values`,()=>t.innerType._zod.values),e._zod.parse=(e,n)=>{if(n.direction===`backward`)return t.innerType._zod.run(e,n);let r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(r=>(e.value=r.value,r.issues.length&&(e.value=t.catchValue({...e,error:{issues:r.issues.map(e=>fo(e,n,ja()))},input:e.value}),e.issues=[],e.fallback=!0),e)):(e.value=r.value,r.issues.length&&(e.value=t.catchValue({...e,error:{issues:r.issues.map(e=>fo(e,n,ja()))},input:e.value}),e.issues=[],e.fallback=!0),e)}}),Jc=P(`$ZodPipe`,(e,t)=>{Ns.init(e,t),za(e._zod,`values`,()=>t.in._zod.values),za(e._zod,`optin`,()=>t.in._zod.optin),za(e._zod,`optout`,()=>t.out._zod.optout),za(e._zod,`propValues`,()=>t.in._zod.propValues),e._zod.parse=(e,n)=>{if(n.direction===`backward`){let r=t.out._zod.run(e,n);return r instanceof Promise?r.then(e=>Yc(e,t.in,n)):Yc(r,t.in,n)}let r=t.in._zod.run(e,n);return r instanceof Promise?r.then(e=>Yc(e,t.out,n)):Yc(r,t.out,n)}});function Yc(e,t,n){return e.issues.length?(e.aborted=!0,e):t._zod.run({value:e.value,issues:e.issues,fallback:e.fallback},n)}var Xc=P(`$ZodReadonly`,(e,t)=>{Ns.init(e,t),za(e._zod,`propValues`,()=>t.innerType._zod.propValues),za(e._zod,`values`,()=>t.innerType._zod.values),za(e._zod,`optin`,()=>t.innerType?._zod?.optin),za(e._zod,`optout`,()=>t.innerType?._zod?.optout),e._zod.parse=(e,n)=>{if(n.direction===`backward`)return t.innerType._zod.run(e,n);let r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(Zc):Zc(r)}});function Zc(e){return e.value=Object.freeze(e.value),e}var Qc=P(`$ZodFunction`,(e,t)=>(Ns.init(e,t),e._def=t,e._zod.def=t,e.implement=t=>{if(typeof t!=`function`)throw Error(`implement() must be called with a function`);return function(...n){let r=e._def.input?xo(e._def.input,n):n,i=Reflect.apply(t,this,r);return e._def.output?xo(e._def.output,i):i}},e.implementAsync=t=>{if(typeof t!=`function`)throw Error(`implementAsync() must be called with a function`);return async function(...n){let r=e._def.input?await Co(e._def.input,n):n,i=await Reflect.apply(t,this,r);return e._def.output?await Co(e._def.output,i):i}},e._zod.parse=(t,n)=>typeof t.value==`function`?(e._def.output&&e._def.output._zod.def.type===`promise`?t.value=e.implementAsync(t.value):t.value=e.implement(t.value),t):(t.issues.push({code:`invalid_type`,expected:`function`,input:t.value,inst:e}),t),e.input=(...t)=>{let n=e.constructor;return Array.isArray(t[0])?new n({type:`function`,input:new Ac({type:`tuple`,items:t[0],rest:t[1]}),output:e._def.output}):new n({type:`function`,input:t[0],output:e._def.output})},e.output=t=>{let n=e.constructor;return new n({type:`function`,input:e._def.input,output:t})},e)),$c=P(`$ZodPromise`,(e,t)=>{Ns.init(e,t),e._zod.parse=(e,n)=>Promise.resolve(e.value).then(e=>t.innerType._zod.run({value:e,issues:[]},n))}),el=P(`$ZodLazy`,(e,t)=>{Ns.init(e,t),za(e._zod,`innerType`,()=>{let e=t;return e._cachedInner||=t.getter(),e._cachedInner}),za(e._zod,`pattern`,()=>e._zod.innerType?._zod?.pattern),za(e._zod,`propValues`,()=>e._zod.innerType?._zod?.propValues),za(e._zod,`optin`,()=>e._zod.innerType?._zod?.optin??void 0),za(e._zod,`optout`,()=>e._zod.innerType?._zod?.optout??void 0),e._zod.parse=(t,n)=>e._zod.innerType._zod.run(t,n)}),tl=P(`$ZodCustom`,(e,t)=>{ms.init(e,t),Ns.init(e,t),e._zod.parse=(e,t)=>e,e._zod.check=n=>{let r=n.value,i=t.fn(r);if(i instanceof Promise)return i.then(t=>nl(t,n,r,e));nl(i,n,r,e)}});function nl(e,t,n,r){if(!e){let e={code:`custom`,input:n,inst:r,path:[...r._zod.def.path??[]],continue:!r._zod.def.abort};r._zod.def.params&&(e.params=r._zod.def.params),t.issues.push(mo(e))}}var rl,il=class{constructor(){this._map=new WeakMap,this._idmap=new Map}add(e,...t){let n=t[0];return this._map.set(e,n),n&&typeof n==`object`&&`id`in n&&this._idmap.set(n.id,e),this}clear(){return this._map=new WeakMap,this._idmap=new Map,this}remove(e){let t=this._map.get(e);return t&&typeof t==`object`&&`id`in t&&this._idmap.delete(t.id),this._map.delete(e),this}get(e){let t=e._zod.parent;if(t){let n={...this.get(t)??{}};delete n.id;let r={...n,...this._map.get(e)};return Object.keys(r).length?r:void 0}return this._map.get(e)}has(e){return this._map.has(e)}};function al(){return new il}(rl=globalThis).__zod_globalRegistry??(rl.__zod_globalRegistry=al());var ol=globalThis.__zod_globalRegistry;function sl(e,t){return new e({type:`string`,...F(t)})}function cl(e,t){return new e({type:`string`,format:`email`,check:`string_format`,abort:!1,...F(t)})}function ll(e,t){return new e({type:`string`,format:`guid`,check:`string_format`,abort:!1,...F(t)})}function ul(e,t){return new e({type:`string`,format:`uuid`,check:`string_format`,abort:!1,...F(t)})}function dl(e,t){return new e({type:`string`,format:`uuid`,check:`string_format`,abort:!1,version:`v4`,...F(t)})}function fl(e,t){return new e({type:`string`,format:`uuid`,check:`string_format`,abort:!1,version:`v6`,...F(t)})}function pl(e,t){return new e({type:`string`,format:`uuid`,check:`string_format`,abort:!1,version:`v7`,...F(t)})}function ml(e,t){return new e({type:`string`,format:`url`,check:`string_format`,abort:!1,...F(t)})}function hl(e,t){return new e({type:`string`,format:`emoji`,check:`string_format`,abort:!1,...F(t)})}function gl(e,t){return new e({type:`string`,format:`nanoid`,check:`string_format`,abort:!1,...F(t)})}function _l(e,t){return new e({type:`string`,format:`cuid`,check:`string_format`,abort:!1,...F(t)})}function vl(e,t){return new e({type:`string`,format:`cuid2`,check:`string_format`,abort:!1,...F(t)})}function yl(e,t){return new e({type:`string`,format:`ulid`,check:`string_format`,abort:!1,...F(t)})}function bl(e,t){return new e({type:`string`,format:`xid`,check:`string_format`,abort:!1,...F(t)})}function xl(e,t){return new e({type:`string`,format:`ksuid`,check:`string_format`,abort:!1,...F(t)})}function Sl(e,t){return new e({type:`string`,format:`ipv4`,check:`string_format`,abort:!1,...F(t)})}function Cl(e,t){return new e({type:`string`,format:`ipv6`,check:`string_format`,abort:!1,...F(t)})}function wl(e,t){return new e({type:`string`,format:`cidrv4`,check:`string_format`,abort:!1,...F(t)})}function Tl(e,t){return new e({type:`string`,format:`cidrv6`,check:`string_format`,abort:!1,...F(t)})}function El(e,t){return new e({type:`string`,format:`base64`,check:`string_format`,abort:!1,...F(t)})}function Dl(e,t){return new e({type:`string`,format:`base64url`,check:`string_format`,abort:!1,...F(t)})}function Ol(e,t){return new e({type:`string`,format:`e164`,check:`string_format`,abort:!1,...F(t)})}function kl(e,t){return new e({type:`string`,format:`jwt`,check:`string_format`,abort:!1,...F(t)})}function Al(e,t){return new e({type:`string`,format:`datetime`,check:`string_format`,offset:!1,local:!1,precision:null,...F(t)})}function jl(e,t){return new e({type:`string`,format:`date`,check:`string_format`,...F(t)})}function Ml(e,t){return new e({type:`string`,format:`time`,check:`string_format`,precision:null,...F(t)})}function Nl(e,t){return new e({type:`string`,format:`duration`,check:`string_format`,...F(t)})}function Pl(e,t){return new e({type:`number`,checks:[],...F(t)})}function Fl(e,t){return new e({type:`number`,check:`number_format`,abort:!1,format:`safeint`,...F(t)})}function Il(e,t){return new e({type:`boolean`,...F(t)})}function Ll(e,t){return new e({type:`null`,...F(t)})}function Rl(e){return new e({type:`any`})}function zl(e){return new e({type:`unknown`})}function Bl(e,t){return new e({type:`never`,...F(t)})}function Vl(e,t){return new e({type:`void`,...F(t)})}function Hl(e,t){return new e({type:`date`,...F(t)})}function Ul(e,t){return new gs({check:`less_than`,...F(t),value:e,inclusive:!1})}function Wl(e,t){return new gs({check:`less_than`,...F(t),value:e,inclusive:!0})}function Gl(e,t){return new _s({check:`greater_than`,...F(t),value:e,inclusive:!1})}function Kl(e,t){return new _s({check:`greater_than`,...F(t),value:e,inclusive:!0})}function ql(e,t){return new vs({check:`multiple_of`,...F(t),value:e})}function Jl(e,t){return new bs({check:`max_length`,...F(t),maximum:e})}function Yl(e,t){return new xs({check:`min_length`,...F(t),minimum:e})}function Xl(e,t){return new Ss({check:`length_equals`,...F(t),length:e})}function Zl(e,t){return new ws({check:`string_format`,format:`regex`,...F(t),pattern:e})}function Ql(e){return new Ts({check:`string_format`,format:`lowercase`,...F(e)})}function $l(e){return new Es({check:`string_format`,format:`uppercase`,...F(e)})}function eu(e,t){return new Ds({check:`string_format`,format:`includes`,...F(t),includes:e})}function tu(e,t){return new Os({check:`string_format`,format:`starts_with`,...F(t),prefix:e})}function nu(e,t){return new ks({check:`string_format`,format:`ends_with`,...F(t),suffix:e})}function ru(e){return new As({check:`overwrite`,tx:e})}function iu(e){return ru(t=>t.normalize(e))}function au(){return ru(e=>e.trim())}function ou(){return ru(e=>e.toLowerCase())}function su(){return ru(e=>e.toUpperCase())}function cu(){return ru(e=>Ua(e))}function lu(e,t,n){return new e({type:`array`,element:t,...F(n)})}function uu(e,t,n){let r=F(n);return r.abort??=!0,new e({type:`custom`,check:`custom`,fn:t,...r})}function du(e,t,n){return new e({type:`custom`,check:`custom`,fn:t,...F(n)})}function fu(e,t){let n=pu(t=>(t.addIssue=e=>{if(typeof e==`string`)t.issues.push(mo(e,t.value,n._zod.def));else{let r=e;r.fatal&&(r.continue=!1),r.code??=`custom`,r.input??=t.value,r.inst??=n,r.continue??=!n._zod.def.abort,t.issues.push(mo(r))}},e(t.value,t)),t);return n}function pu(e,t){let n=new ms({check:`custom`,...F(t)});return n._zod.check=e,n}function mu(e){let t=e?.target??`draft-2020-12`;return t===`draft-4`&&(t=`draft-04`),t===`draft-7`&&(t=`draft-07`),{processors:e.processors??{},metadataRegistry:e?.metadata??ol,target:t,unrepresentable:e?.unrepresentable??`throw`,override:e?.override??(()=>{}),io:e?.io??`output`,counter:0,seen:new Map,cycles:e?.cycles??`ref`,reused:e?.reused??`inline`,external:e?.external??void 0}}function hu(e,t,n={path:[],schemaPath:[]}){var r;let i=e._zod.def,a=t.seen.get(e);if(a)return a.count++,n.schemaPath.includes(e)&&(a.cycle=n.path),a.schema;let o={schema:{},count:1,cycle:void 0,path:n.path};t.seen.set(e,o);let s=e._zod.toJSONSchema?.();if(s)o.schema=s;else{let r={...n,schemaPath:[...n.schemaPath,e],path:n.path};if(e._zod.processJSONSchema)e._zod.processJSONSchema(t,o.schema,r);else{let n=o.schema,a=t.processors[i.type];if(!a)throw Error(`[toJSONSchema]: Non-representable type encountered: ${i.type}`);a(e,t,n,r)}let a=e._zod.parent;a&&(o.ref||=a,hu(a,t,r),t.seen.get(a).isParent=!0)}let c=t.metadataRegistry.get(e);return c&&Object.assign(o.schema,c),t.io===`input`&&vu(e)&&(delete o.schema.examples,delete o.schema.default),t.io===`input`&&`_prefault`in o.schema&&((r=o.schema).default??(r.default=o.schema._prefault)),delete o.schema._prefault,t.seen.get(e).schema}function gu(e,t){let n=e.seen.get(t);if(!n)throw Error(`Unprocessed schema. This is a bug in Zod.`);let r=new Map;for(let t of e.seen.entries()){let n=e.metadataRegistry.get(t[0])?.id;if(n){let e=r.get(n);if(e&&e!==t[0])throw Error(`Duplicate schema id "${n}" detected during JSON Schema conversion. Two different schemas cannot share the same id when converted together.`);r.set(n,t[0])}}let i=t=>{let r=e.target===`draft-2020-12`?`$defs`:`definitions`;if(e.external){let n=e.external.registry.get(t[0])?.id,i=e.external.uri??(e=>e);if(n)return{ref:i(n)};let a=t[1].defId??t[1].schema.id??`schema${e.counter++}`;return t[1].defId=a,{defId:a,ref:`${i(`__shared`)}#/${r}/${a}`}}if(t[1]===n)return{ref:`#`};let i=`#/${r}/`,a=t[1].schema.id??`__schema${e.counter++}`;return{defId:a,ref:i+a}},a=e=>{if(e[1].schema.$ref)return;let t=e[1],{ref:n,defId:r}=i(e);t.def={...t.schema},r&&(t.defId=r);let a=t.schema;for(let e in a)delete a[e];a.$ref=n};if(e.cycles===`throw`)for(let t of e.seen.entries()){let e=t[1];if(e.cycle)throw Error(`Cycle detected: #/${e.cycle?.join(`/`)}/<root>
71
71
 
72
72
  Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(let n of e.seen.entries()){let r=n[1];if(t===n[0]){a(n);continue}if(e.external){let r=e.external.registry.get(n[0])?.id;if(t!==n[0]&&r){a(n);continue}}if(e.metadataRegistry.get(n[0])?.id){a(n);continue}if(r.cycle){a(n);continue}if(r.count>1&&e.reused===`ref`){a(n);continue}}}function _u(e,t){let n=e.seen.get(t);if(!n)throw Error(`Unprocessed schema. This is a bug in Zod.`);let r=t=>{let n=e.seen.get(t);if(n.ref===null)return;let i=n.def??n.schema,a={...i},o=n.ref;if(n.ref=null,o){r(o);let n=e.seen.get(o),s=n.schema;if(s.$ref&&(e.target===`draft-07`||e.target===`draft-04`||e.target===`openapi-3.0`)?(i.allOf=i.allOf??[],i.allOf.push(s)):Object.assign(i,s),Object.assign(i,a),t._zod.parent===o)for(let e in i)e===`$ref`||e===`allOf`||e in a||delete i[e];if(s.$ref&&n.def)for(let e in i)e===`$ref`||e===`allOf`||e in n.def&&JSON.stringify(i[e])===JSON.stringify(n.def[e])&&delete i[e]}let s=t._zod.parent;if(s&&s!==o){r(s);let t=e.seen.get(s);if(t?.schema.$ref&&(i.$ref=t.schema.$ref,t.def))for(let e in i)e===`$ref`||e===`allOf`||e in t.def&&JSON.stringify(i[e])===JSON.stringify(t.def[e])&&delete i[e]}e.override({zodSchema:t,jsonSchema:i,path:n.path??[]})};for(let t of[...e.seen.entries()].reverse())r(t[0]);let i={};if(e.target===`draft-2020-12`?i.$schema=`https://json-schema.org/draft/2020-12/schema`:e.target===`draft-07`?i.$schema=`http://json-schema.org/draft-07/schema#`:e.target===`draft-04`?i.$schema=`http://json-schema.org/draft-04/schema#`:e.target,e.external?.uri){let n=e.external.registry.get(t)?.id;if(!n)throw Error("Schema is missing an `id` property");i.$id=e.external.uri(n)}Object.assign(i,n.def??n.schema);let a=e.metadataRegistry.get(t)?.id;a!==void 0&&i.id===a&&delete i.id;let o=e.external?.defs??{};for(let t of e.seen.entries()){let e=t[1];e.def&&e.defId&&(e.def.id===e.defId&&delete e.def.id,o[e.defId]=e.def)}e.external||Object.keys(o).length>0&&(e.target===`draft-2020-12`?i.$defs=o:i.definitions=o);try{let n=JSON.parse(JSON.stringify(i));return Object.defineProperty(n,"~standard",{value:{...t[`~standard`],jsonSchema:{input:bu(t,`input`,e.processors),output:bu(t,`output`,e.processors)}},enumerable:!1,writable:!1}),n}catch{throw Error(`Error converting schema to JSON.`)}}function vu(e,t){let n=t??{seen:new Set};if(n.seen.has(e))return!1;n.seen.add(e);let r=e._zod.def;if(r.type===`transform`)return!0;if(r.type===`array`)return vu(r.element,n);if(r.type===`set`)return vu(r.valueType,n);if(r.type===`lazy`)return vu(r.getter(),n);if(r.type===`promise`||r.type===`optional`||r.type===`nonoptional`||r.type===`nullable`||r.type===`readonly`||r.type===`default`||r.type===`prefault`)return vu(r.innerType,n);if(r.type===`intersection`)return vu(r.left,n)||vu(r.right,n);if(r.type===`record`||r.type===`map`)return vu(r.keyType,n)||vu(r.valueType,n);if(r.type===`pipe`)return e._zod.traits.has(`$ZodCodec`)?!0:vu(r.in,n)||vu(r.out,n);if(r.type===`object`){for(let e in r.shape)if(vu(r.shape[e],n))return!0;return!1}if(r.type===`union`){for(let e of r.options)if(vu(e,n))return!0;return!1}if(r.type===`tuple`){for(let e of r.items)if(vu(e,n))return!0;return!!(r.rest&&vu(r.rest,n))}return!1}var yu=(e,t={})=>n=>{let r=mu({...n,processors:t});return hu(e,r),gu(r,e),_u(r,e)},bu=(e,t,n={})=>r=>{let{libraryOptions:i,target:a}=r??{},o=mu({...i??{},target:a,io:t,processors:n});return hu(e,o),gu(o,e),_u(o,e)},xu={guid:`uuid`,url:`uri`,datetime:`date-time`,json_string:`json-string`,regex:``},Su=(e,t,n,r)=>{let i=n;i.type=`string`;let{minimum:a,maximum:o,format:s,patterns:c,contentEncoding:l}=e._zod.bag;if(typeof a==`number`&&(i.minLength=a),typeof o==`number`&&(i.maxLength=o),s&&(i.format=xu[s]??s,i.format===``&&delete i.format,s===`time`&&delete i.format),l&&(i.contentEncoding=l),c&&c.size>0){let e=[...c];e.length===1?i.pattern=e[0].source:e.length>1&&(i.allOf=[...e.map(e=>({...t.target===`draft-07`||t.target===`draft-04`||t.target===`openapi-3.0`?{type:`string`}:{},pattern:e.source}))])}},Cu=(e,t,n,r)=>{let i=n,{minimum:a,maximum:o,format:s,multipleOf:c,exclusiveMaximum:l,exclusiveMinimum:u}=e._zod.bag;typeof s==`string`&&s.includes(`int`)?i.type=`integer`:i.type=`number`;let d=typeof u==`number`&&u>=(a??-1/0),f=typeof l==`number`&&l<=(o??1/0),p=t.target===`draft-04`||t.target===`openapi-3.0`;d?p?(i.minimum=u,i.exclusiveMinimum=!0):i.exclusiveMinimum=u:typeof a==`number`&&(i.minimum=a),f?p?(i.maximum=l,i.exclusiveMaximum=!0):i.exclusiveMaximum=l:typeof o==`number`&&(i.maximum=o),typeof c==`number`&&(i.multipleOf=c)},wu=(e,t,n,r)=>{n.type=`boolean`},Tu=(e,t,n,r)=>{t.target===`openapi-3.0`?(n.type=`string`,n.nullable=!0,n.enum=[null]):n.type=`null`},Eu=(e,t,n,r)=>{if(t.unrepresentable===`throw`)throw Error(`Void cannot be represented in JSON Schema`)},Du=(e,t,n,r)=>{n.not={}},Ou=(e,t,n,r)=>{if(t.unrepresentable===`throw`)throw Error(`Date cannot be represented in JSON Schema`)},ku=(e,t,n,r)=>{let i=e._zod.def,a=Ma(i.entries);a.every(e=>typeof e==`number`)&&(n.type=`number`),a.every(e=>typeof e==`string`)&&(n.type=`string`),n.enum=a},Au=(e,t,n,r)=>{let i=e._zod.def,a=[];for(let e of i.values)if(e===void 0){if(t.unrepresentable===`throw`)throw Error("Literal `undefined` cannot be represented in JSON Schema")}else if(typeof e==`bigint`){if(t.unrepresentable===`throw`)throw Error(`BigInt literals cannot be represented in JSON Schema`);a.push(Number(e))}else a.push(e);if(a.length!==0)if(a.length===1){let e=a[0];n.type=e===null?`null`:typeof e,t.target===`draft-04`||t.target===`openapi-3.0`?n.enum=[e]:n.const=e}else a.every(e=>typeof e==`number`)&&(n.type=`number`),a.every(e=>typeof e==`string`)&&(n.type=`string`),a.every(e=>typeof e==`boolean`)&&(n.type=`boolean`),a.every(e=>e===null)&&(n.type=`null`),n.enum=a},ju=(e,t,n,r)=>{if(t.unrepresentable===`throw`)throw Error(`Custom types cannot be represented in JSON Schema`)},Mu=(e,t,n,r)=>{if(t.unrepresentable===`throw`)throw Error(`Function types cannot be represented in JSON Schema`)},Nu=(e,t,n,r)=>{if(t.unrepresentable===`throw`)throw Error(`Transforms cannot be represented in JSON Schema`)},Pu=(e,t,n,r)=>{let i=n,a=e._zod.def,{minimum:o,maximum:s}=e._zod.bag;typeof o==`number`&&(i.minItems=o),typeof s==`number`&&(i.maxItems=s),i.type=`array`,i.items=hu(a.element,t,{...r,path:[...r.path,`items`]})},Fu=(e,t,n,r)=>{let i=n,a=e._zod.def;i.type=`object`,i.properties={};let o=a.shape;for(let e in o)i.properties[e]=hu(o[e],t,{...r,path:[...r.path,`properties`,e]});let s=new Set(Object.keys(o)),c=new Set([...s].filter(e=>{let n=a.shape[e]._zod;return t.io===`input`?n.optin===void 0:n.optout===void 0}));c.size>0&&(i.required=Array.from(c)),a.catchall?._zod.def.type===`never`?i.additionalProperties=!1:a.catchall?a.catchall&&(i.additionalProperties=hu(a.catchall,t,{...r,path:[...r.path,`additionalProperties`]})):t.io===`output`&&(i.additionalProperties=!1)},Iu=(e,t,n,r)=>{let i=e._zod.def,a=i.inclusive===!1,o=i.options.map((e,n)=>hu(e,t,{...r,path:[...r.path,a?`oneOf`:`anyOf`,n]}));a?n.oneOf=o:n.anyOf=o},Lu=(e,t,n,r)=>{let i=e._zod.def,a=hu(i.left,t,{...r,path:[...r.path,`allOf`,0]}),o=hu(i.right,t,{...r,path:[...r.path,`allOf`,1]}),s=e=>`allOf`in e&&Object.keys(e).length===1;n.allOf=[...s(a)?a.allOf:[a],...s(o)?o.allOf:[o]]},Ru=(e,t,n,r)=>{let i=n,a=e._zod.def;i.type=`array`;let o=t.target===`draft-2020-12`?`prefixItems`:`items`,s=t.target===`draft-2020-12`||t.target===`openapi-3.0`?`items`:`additionalItems`,c=a.items.map((e,n)=>hu(e,t,{...r,path:[...r.path,o,n]})),l=a.rest?hu(a.rest,t,{...r,path:[...r.path,s,...t.target===`openapi-3.0`?[a.items.length]:[]]}):null;t.target===`draft-2020-12`?(i.prefixItems=c,l&&(i.items=l)):t.target===`openapi-3.0`?(i.items={anyOf:c},l&&i.items.anyOf.push(l),i.minItems=c.length,l||(i.maxItems=c.length)):(i.items=c,l&&(i.additionalItems=l));let{minimum:u,maximum:d}=e._zod.bag;typeof u==`number`&&(i.minItems=u),typeof d==`number`&&(i.maxItems=d)},zu=(e,t,n,r)=>{let i=n,a=e._zod.def;i.type=`object`;let o=a.keyType,s=o._zod.bag?.patterns;if(a.mode===`loose`&&s&&s.size>0){let e=hu(a.valueType,t,{...r,path:[...r.path,`patternProperties`,`*`]});i.patternProperties={};for(let t of s)i.patternProperties[t.source]=e}else (t.target===`draft-07`||t.target===`draft-2020-12`)&&(i.propertyNames=hu(a.keyType,t,{...r,path:[...r.path,`propertyNames`]})),i.additionalProperties=hu(a.valueType,t,{...r,path:[...r.path,`additionalProperties`]});let c=o._zod.values;if(c){let e=[...c].filter(e=>typeof e==`string`||typeof e==`number`);e.length>0&&(i.required=e)}},Bu=(e,t,n,r)=>{let i=e._zod.def,a=hu(i.innerType,t,r),o=t.seen.get(e);t.target===`openapi-3.0`?(o.ref=i.innerType,n.nullable=!0):n.anyOf=[a,{type:`null`}]},Vu=(e,t,n,r)=>{let i=e._zod.def;hu(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType},Hu=(e,t,n,r)=>{let i=e._zod.def;hu(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType,n.default=JSON.parse(JSON.stringify(i.defaultValue))},Uu=(e,t,n,r)=>{let i=e._zod.def;hu(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType,t.io===`input`&&(n._prefault=JSON.parse(JSON.stringify(i.defaultValue)))},Wu=(e,t,n,r)=>{let i=e._zod.def;hu(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType;let o;try{o=i.catchValue(void 0)}catch{throw Error(`Dynamic catch values are not supported in JSON Schema`)}n.default=o},Gu=(e,t,n,r)=>{let i=e._zod.def,a=i.in._zod.traits.has(`$ZodTransform`),o=t.io===`input`?a?i.out:i.in:i.out;hu(o,t,r);let s=t.seen.get(e);s.ref=o},Ku=(e,t,n,r)=>{let i=e._zod.def;hu(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType,n.readOnly=!0},qu=(e,t,n,r)=>{let i=e._zod.def;hu(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType},Ju=(e,t,n,r)=>{let i=e._zod.def;hu(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType},Yu=(e,t,n,r)=>{let i=e._zod.innerType;hu(i,t,r);let a=t.seen.get(e);a.ref=i},Xu=P(`ZodISODateTime`,(e,t)=>{qs.init(e,t),Sd.init(e,t)});function Zu(e){return Al(Xu,e)}var Qu=P(`ZodISODate`,(e,t)=>{Js.init(e,t),Sd.init(e,t)});function $u(e){return jl(Qu,e)}var ed=P(`ZodISOTime`,(e,t)=>{Ys.init(e,t),Sd.init(e,t)});function td(e){return Ml(ed,e)}var nd=P(`ZodISODuration`,(e,t)=>{Xs.init(e,t),Sd.init(e,t)});function rd(e){return Nl(nd,e)}var id=P(`ZodError`,(e,t)=>{go.init(e,t),e.name=`ZodError`,Object.defineProperties(e,{format:{value:t=>yo(e,t)},flatten:{value:t=>vo(e,t)},addIssue:{value:t=>{e.issues.push(t),e.message=JSON.stringify(e.issues,Na,2)}},addIssues:{value:t=>{e.issues.push(...t),e.message=JSON.stringify(e.issues,Na,2)}},isEmpty:{get(){return e.issues.length===0}}})},{Parent:Error}),ad=bo(id),od=So(id),sd=wo(id),cd=Eo(id),ld=Oo(id),ud=ko(id),dd=Ao(id),fd=jo(id),pd=Mo(id),md=No(id),hd=Po(id),gd=Fo(id),_d=new WeakMap;function vd(e,t,n){let r=Object.getPrototypeOf(e),i=_d.get(r);if(i||(i=new Set,_d.set(r,i)),!i.has(t)){i.add(t);for(let e in n){let t=n[e];Object.defineProperty(r,e,{configurable:!0,enumerable:!1,get(){let n=t.bind(this);return Object.defineProperty(this,e,{configurable:!0,writable:!0,enumerable:!0,value:n}),n},set(t){Object.defineProperty(this,e,{configurable:!0,writable:!0,enumerable:!0,value:t})}})}}}var yd=P(`ZodType`,(e,t)=>(Ns.init(e,t),Object.assign(e[`~standard`],{jsonSchema:{input:bu(e,`input`),output:bu(e,`output`)}}),e.toJSONSchema=yu(e,{}),e.def=t,e.type=t.type,Object.defineProperty(e,"_def",{value:t}),e.parse=(t,n)=>ad(e,t,n,{callee:e.parse}),e.safeParse=(t,n)=>sd(e,t,n),e.parseAsync=async(t,n)=>od(e,t,n,{callee:e.parseAsync}),e.safeParseAsync=async(t,n)=>cd(e,t,n),e.spa=e.safeParseAsync,e.encode=(t,n)=>ld(e,t,n),e.decode=(t,n)=>ud(e,t,n),e.encodeAsync=async(t,n)=>dd(e,t,n),e.decodeAsync=async(t,n)=>fd(e,t,n),e.safeEncode=(t,n)=>pd(e,t,n),e.safeDecode=(t,n)=>md(e,t,n),e.safeEncodeAsync=async(t,n)=>hd(e,t,n),e.safeDecodeAsync=async(t,n)=>gd(e,t,n),vd(e,`ZodType`,{check(...e){let t=this.def;return this.clone(Va(t,{checks:[...t.checks??[],...e.map(e=>typeof e==`function`?{_zod:{check:e,def:{check:`custom`},onattach:[]}}:e)]}),{parent:!0})},with(...e){return this.check(...e)},clone(e,t){return Za(this,e,t)},brand(){return this},register(e,t){return e.add(this,t),this},refine(e,t){return this.check(Wf(e,t))},superRefine(e,t){return this.check(Gf(e,t))},overwrite(e){return this.check(ru(e))},optional(){return yf(this)},exactOptional(){return xf(this)},nullable(){return Cf(this)},nullish(){return yf(Cf(this))},nonoptional(e){return kf(this,e)},array(){return B(this)},or(e){return H([this,e])},and(e){return uf(this,e)},transform(e){return Nf(this,_f(e))},default(e){return Tf(this,e)},prefault(e){return Df(this,e)},catch(e){return jf(this,e)},pipe(e){return Nf(this,e)},readonly(){return Ff(this)},describe(e){let t=this.clone();return ol.add(t,{description:e}),t},meta(...e){if(e.length===0)return ol.get(this);let t=this.clone();return ol.add(t,e[0]),t},isOptional(){return this.safeParse(void 0).success},isNullable(){return this.safeParse(null).success},apply(e){return e(this)}}),Object.defineProperty(e,"description",{get(){return ol.get(e)?.description},configurable:!0}),e)),bd=P(`_ZodString`,(e,t)=>{Ps.init(e,t),yd.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Su(e,t,n,r);let n=e._zod.bag;e.format=n.format??null,e.minLength=n.minimum??null,e.maxLength=n.maximum??null,vd(e,`_ZodString`,{regex(...e){return this.check(Zl(...e))},includes(...e){return this.check(eu(...e))},startsWith(...e){return this.check(tu(...e))},endsWith(...e){return this.check(nu(...e))},min(...e){return this.check(Yl(...e))},max(...e){return this.check(Jl(...e))},length(...e){return this.check(Xl(...e))},nonempty(...e){return this.check(Yl(1,...e))},lowercase(e){return this.check(Ql(e))},uppercase(e){return this.check($l(e))},trim(){return this.check(au())},normalize(...e){return this.check(iu(...e))},toLowerCase(){return this.check(ou())},toUpperCase(){return this.check(su())},slugify(){return this.check(cu())}})}),xd=P(`ZodString`,(e,t)=>{Ps.init(e,t),bd.init(e,t),e.email=t=>e.check(cl(Cd,t)),e.url=t=>e.check(ml(Ed,t)),e.jwt=t=>e.check(kl(Vd,t)),e.emoji=t=>e.check(hl(Dd,t)),e.guid=t=>e.check(ll(wd,t)),e.uuid=t=>e.check(ul(Td,t)),e.uuidv4=t=>e.check(dl(Td,t)),e.uuidv6=t=>e.check(fl(Td,t)),e.uuidv7=t=>e.check(pl(Td,t)),e.nanoid=t=>e.check(gl(Od,t)),e.guid=t=>e.check(ll(wd,t)),e.cuid=t=>e.check(_l(kd,t)),e.cuid2=t=>e.check(vl(Ad,t)),e.ulid=t=>e.check(yl(jd,t)),e.base64=t=>e.check(El(Rd,t)),e.base64url=t=>e.check(Dl(zd,t)),e.xid=t=>e.check(bl(Md,t)),e.ksuid=t=>e.check(xl(Nd,t)),e.ipv4=t=>e.check(Sl(Pd,t)),e.ipv6=t=>e.check(Cl(Fd,t)),e.cidrv4=t=>e.check(wl(Id,t)),e.cidrv6=t=>e.check(Tl(Ld,t)),e.e164=t=>e.check(Ol(Bd,t)),e.datetime=t=>e.check(Zu(t)),e.date=t=>e.check($u(t)),e.time=t=>e.check(td(t)),e.duration=t=>e.check(rd(t))});function I(e){return sl(xd,e)}var Sd=P(`ZodStringFormat`,(e,t)=>{Fs.init(e,t),bd.init(e,t)}),Cd=P(`ZodEmail`,(e,t)=>{Rs.init(e,t),Sd.init(e,t)}),wd=P(`ZodGUID`,(e,t)=>{Is.init(e,t),Sd.init(e,t)}),Td=P(`ZodUUID`,(e,t)=>{Ls.init(e,t),Sd.init(e,t)}),Ed=P(`ZodURL`,(e,t)=>{zs.init(e,t),Sd.init(e,t)}),Dd=P(`ZodEmoji`,(e,t)=>{Bs.init(e,t),Sd.init(e,t)}),Od=P(`ZodNanoID`,(e,t)=>{Vs.init(e,t),Sd.init(e,t)}),kd=P(`ZodCUID`,(e,t)=>{Hs.init(e,t),Sd.init(e,t)}),Ad=P(`ZodCUID2`,(e,t)=>{Us.init(e,t),Sd.init(e,t)}),jd=P(`ZodULID`,(e,t)=>{Ws.init(e,t),Sd.init(e,t)}),Md=P(`ZodXID`,(e,t)=>{Gs.init(e,t),Sd.init(e,t)}),Nd=P(`ZodKSUID`,(e,t)=>{Ks.init(e,t),Sd.init(e,t)}),Pd=P(`ZodIPv4`,(e,t)=>{Zs.init(e,t),Sd.init(e,t)}),Fd=P(`ZodIPv6`,(e,t)=>{Qs.init(e,t),Sd.init(e,t)}),Id=P(`ZodCIDRv4`,(e,t)=>{$s.init(e,t),Sd.init(e,t)}),Ld=P(`ZodCIDRv6`,(e,t)=>{ec.init(e,t),Sd.init(e,t)}),Rd=P(`ZodBase64`,(e,t)=>{nc.init(e,t),Sd.init(e,t)}),zd=P(`ZodBase64URL`,(e,t)=>{ic.init(e,t),Sd.init(e,t)}),Bd=P(`ZodE164`,(e,t)=>{ac.init(e,t),Sd.init(e,t)}),Vd=P(`ZodJWT`,(e,t)=>{sc.init(e,t),Sd.init(e,t)}),Hd=P(`ZodNumber`,(e,t)=>{cc.init(e,t),yd.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Cu(e,t,n,r),vd(e,`ZodNumber`,{gt(e,t){return this.check(Gl(e,t))},gte(e,t){return this.check(Kl(e,t))},min(e,t){return this.check(Kl(e,t))},lt(e,t){return this.check(Ul(e,t))},lte(e,t){return this.check(Wl(e,t))},max(e,t){return this.check(Wl(e,t))},int(e){return this.check(Wd(e))},safe(e){return this.check(Wd(e))},positive(e){return this.check(Gl(0,e))},nonnegative(e){return this.check(Kl(0,e))},negative(e){return this.check(Ul(0,e))},nonpositive(e){return this.check(Wl(0,e))},multipleOf(e,t){return this.check(ql(e,t))},step(e,t){return this.check(ql(e,t))},finite(){return this}});let n=e._zod.bag;e.minValue=Math.max(n.minimum??-1/0,n.exclusiveMinimum??-1/0)??null,e.maxValue=Math.min(n.maximum??1/0,n.exclusiveMaximum??1/0)??null,e.isInt=(n.format??``).includes(`int`)||Number.isSafeInteger(n.multipleOf??.5),e.isFinite=!0,e.format=n.format??null});function L(e){return Pl(Hd,e)}var Ud=P(`ZodNumberFormat`,(e,t)=>{lc.init(e,t),Hd.init(e,t)});function Wd(e){return Fl(Ud,e)}var Gd=P(`ZodBoolean`,(e,t)=>{uc.init(e,t),yd.init(e,t),e._zod.processJSONSchema=(t,n,r)=>wu(e,t,n,r)});function R(e){return Il(Gd,e)}var Kd=P(`ZodNull`,(e,t)=>{dc.init(e,t),yd.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Tu(e,t,n,r)});function qd(e){return Ll(Kd,e)}var Jd=P(`ZodAny`,(e,t)=>{fc.init(e,t),yd.init(e,t),e._zod.processJSONSchema=(e,t,n)=>void 0});function Yd(){return Rl(Jd)}var Xd=P(`ZodUnknown`,(e,t)=>{pc.init(e,t),yd.init(e,t),e._zod.processJSONSchema=(e,t,n)=>void 0});function z(){return zl(Xd)}var Zd=P(`ZodNever`,(e,t)=>{mc.init(e,t),yd.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Du(e,t,n,r)});function Qd(e){return Bl(Zd,e)}var $d=P(`ZodVoid`,(e,t)=>{hc.init(e,t),yd.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Eu(e,t,n,r)});function ef(e){return Vl($d,e)}var tf=P(`ZodDate`,(e,t)=>{gc.init(e,t),yd.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Ou(e,t,n,r),e.min=(t,n)=>e.check(Kl(t,n)),e.max=(t,n)=>e.check(Wl(t,n));let n=e._zod.bag;e.minDate=n.minimum?new Date(n.minimum):null,e.maxDate=n.maximum?new Date(n.maximum):null});function nf(e){return Hl(tf,e)}var rf=P(`ZodArray`,(e,t)=>{vc.init(e,t),yd.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Pu(e,t,n,r),e.element=t.element,vd(e,`ZodArray`,{min(e,t){return this.check(Yl(e,t))},nonempty(e){return this.check(Yl(1,e))},max(e,t){return this.check(Jl(e,t))},length(e,t){return this.check(Xl(e,t))},unwrap(){return this.element}})});function B(e,t){return lu(rf,e,t)}var af=P(`ZodObject`,(e,t)=>{Cc.init(e,t),yd.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Fu(e,t,n,r),za(e,`shape`,()=>t.shape),vd(e,`ZodObject`,{keyof(){return W(Object.keys(this._zod.def.shape))},catchall(e){return this.clone({...this._zod.def,catchall:e})},passthrough(){return this.clone({...this._zod.def,catchall:z()})},loose(){return this.clone({...this._zod.def,catchall:z()})},strict(){return this.clone({...this._zod.def,catchall:Qd()})},strip(){return this.clone({...this._zod.def,catchall:void 0})},extend(e){return no(this,e)},safeExtend(e){return ro(this,e)},merge(e){return io(this,e)},pick(e){return eo(this,e)},omit(e){return to(this,e)},partial(...e){return ao(vf,this,e[0])},required(...e){return oo(Of,this,e[0])}})});function V(e,t){return new af({type:`object`,shape:e??{},...F(t)})}var of=P(`ZodUnion`,(e,t)=>{Tc.init(e,t),yd.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Iu(e,t,n,r),e.options=t.options});function H(e,t){return new of({type:`union`,options:e,...F(t)})}var sf=P(`ZodDiscriminatedUnion`,(e,t)=>{of.init(e,t),Ec.init(e,t)});function cf(e,t,n){return new sf({type:`union`,options:t,discriminator:e,...F(n)})}var lf=P(`ZodIntersection`,(e,t)=>{Dc.init(e,t),yd.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Lu(e,t,n,r)});function uf(e,t){return new lf({type:`intersection`,left:e,right:t})}var df=P(`ZodTuple`,(e,t)=>{Ac.init(e,t),yd.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Ru(e,t,n,r),e.rest=t=>e.clone({...e._zod.def,rest:t})});function ff(e,t,n){let r=t instanceof Ns;return new df({type:`tuple`,items:e,rest:r?t:null,...F(r?n:t)})}var pf=P(`ZodRecord`,(e,t)=>{Pc.init(e,t),yd.init(e,t),e._zod.processJSONSchema=(t,n,r)=>zu(e,t,n,r),e.keyType=t.keyType,e.valueType=t.valueType});function U(e,t,n){return!t||!t._zod?new pf({type:`record`,keyType:I(),valueType:e,...F(t)}):new pf({type:`record`,keyType:e,valueType:t,...F(n)})}var mf=P(`ZodEnum`,(e,t)=>{Fc.init(e,t),yd.init(e,t),e._zod.processJSONSchema=(t,n,r)=>ku(e,t,n,r),e.enum=t.entries,e.options=Object.values(t.entries);let n=new Set(Object.keys(t.entries));e.extract=(e,r)=>{let i={};for(let r of e)if(n.has(r))i[r]=t.entries[r];else throw Error(`Key ${r} not found in enum`);return new mf({...t,checks:[],...F(r),entries:i})},e.exclude=(e,r)=>{let i={...t.entries};for(let t of e)if(n.has(t))delete i[t];else throw Error(`Key ${t} not found in enum`);return new mf({...t,checks:[],...F(r),entries:i})}});function W(e,t){return new mf({type:`enum`,entries:Array.isArray(e)?Object.fromEntries(e.map(e=>[e,e])):e,...F(t)})}var hf=P(`ZodLiteral`,(e,t)=>{Ic.init(e,t),yd.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Au(e,t,n,r),e.values=new Set(t.values),Object.defineProperty(e,"value",{get(){if(t.values.length>1)throw Error("This schema contains multiple valid literal values. Use `.values` instead.");return t.values[0]}})});function G(e,t){return new hf({type:`literal`,values:Array.isArray(e)?e:[e],...F(t)})}var gf=P(`ZodTransform`,(e,t)=>{Lc.init(e,t),yd.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Nu(e,t,n,r),e._zod.parse=(n,r)=>{if(r.direction===`backward`)throw new ka(e.constructor.name);n.addIssue=r=>{if(typeof r==`string`)n.issues.push(mo(r,n.value,t));else{let t=r;t.fatal&&(t.continue=!1),t.code??=`custom`,t.input??=n.value,t.inst??=e,n.issues.push(mo(t))}};let i=t.transform(n.value,n);return i instanceof Promise?i.then(e=>(n.value=e,n.fallback=!0,n)):(n.value=i,n.fallback=!0,n)}});function _f(e){return new gf({type:`transform`,transform:e})}var vf=P(`ZodOptional`,(e,t)=>{zc.init(e,t),yd.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Ju(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function yf(e){return new vf({type:`optional`,innerType:e})}var bf=P(`ZodExactOptional`,(e,t)=>{Bc.init(e,t),yd.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Ju(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function xf(e){return new bf({type:`optional`,innerType:e})}var Sf=P(`ZodNullable`,(e,t)=>{Vc.init(e,t),yd.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Bu(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function Cf(e){return new Sf({type:`nullable`,innerType:e})}var wf=P(`ZodDefault`,(e,t)=>{Hc.init(e,t),yd.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Hu(e,t,n,r),e.unwrap=()=>e._zod.def.innerType,e.removeDefault=e.unwrap});function Tf(e,t){return new wf({type:`default`,innerType:e,get defaultValue(){return typeof t==`function`?t():Ja(t)}})}var Ef=P(`ZodPrefault`,(e,t)=>{Wc.init(e,t),yd.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Uu(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function Df(e,t){return new Ef({type:`prefault`,innerType:e,get defaultValue(){return typeof t==`function`?t():Ja(t)}})}var Of=P(`ZodNonOptional`,(e,t)=>{Gc.init(e,t),yd.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Vu(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function kf(e,t){return new Of({type:`nonoptional`,innerType:e,...F(t)})}var Af=P(`ZodCatch`,(e,t)=>{qc.init(e,t),yd.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Wu(e,t,n,r),e.unwrap=()=>e._zod.def.innerType,e.removeCatch=e.unwrap});function jf(e,t){return new Af({type:`catch`,innerType:e,catchValue:typeof t==`function`?t:()=>t})}var Mf=P(`ZodPipe`,(e,t)=>{Jc.init(e,t),yd.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Gu(e,t,n,r),e.in=t.in,e.out=t.out});function Nf(e,t){return new Mf({type:`pipe`,in:e,out:t})}var Pf=P(`ZodReadonly`,(e,t)=>{Xc.init(e,t),yd.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Ku(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function Ff(e){return new Pf({type:`readonly`,innerType:e})}var If=P(`ZodLazy`,(e,t)=>{el.init(e,t),yd.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Yu(e,t,n,r),e.unwrap=()=>e._zod.def.getter()});function Lf(e){return new If({type:`lazy`,getter:e})}var Rf=P(`ZodPromise`,(e,t)=>{$c.init(e,t),yd.init(e,t),e._zod.processJSONSchema=(t,n,r)=>qu(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function zf(e){return new Rf({type:`promise`,innerType:e})}var Bf=P(`ZodFunction`,(e,t)=>{Qc.init(e,t),yd.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Mu(e,t,n,r)});function Vf(e){return new Bf({type:`function`,input:Array.isArray(e?.input)?ff(e?.input):e?.input??B(z()),output:e?.output??z()})}var Hf=P(`ZodCustom`,(e,t)=>{tl.init(e,t),yd.init(e,t),e._zod.processJSONSchema=(t,n,r)=>ju(e,t,n,r)});function Uf(e,t){return uu(Hf,e??(()=>!0),t)}function Wf(e,t={}){return du(Hf,e,t)}function Gf(e,t){return fu(e,t)}var Kf=c(_(),1);function K(e){if(typeof process<`u`&&{}.OS_EAGER_SCHEMAS===`1`)return e();let t,n=()=>(t===void 0&&(t=e()),t);return new Proxy(function(){},{get(e,t){let r=n(),i=r[t];return typeof i==`function`?i.bind(r):i},set(e,t,r){let i=n();return i[t]=r,!0},has(e,t){return t in n()},ownKeys(){return Reflect.ownKeys(n())},getOwnPropertyDescriptor(e,t){return Reflect.getOwnPropertyDescriptor(n(),t)},getPrototypeOf(){return Reflect.getPrototypeOf(n())}})}var qf=K(()=>V({$field:I().describe(`Field Reference/Column Name`)}));K(()=>V({$eq:Yd().optional(),$ne:Yd().optional()})),K(()=>V({$gt:H([L(),nf(),qf]).optional(),$gte:H([L(),nf(),qf]).optional(),$lt:H([L(),nf(),qf]).optional(),$lte:H([L(),nf(),qf]).optional()})),K(()=>V({$in:B(Yd()).optional(),$nin:B(Yd()).optional()})),K(()=>V({$between:ff([H([L(),nf(),qf]),H([L(),nf(),qf])]).optional()})),K(()=>V({$contains:I().optional(),$notContains:I().optional(),$startsWith:I().optional(),$endsWith:I().optional()})),K(()=>V({$null:R().optional(),$exists:R().optional()}));var Jf=K(()=>V({$eq:Yd().optional(),$ne:Yd().optional(),$gt:H([L(),nf(),qf]).optional(),$gte:H([L(),nf(),qf]).optional(),$lt:H([L(),nf(),qf]).optional(),$lte:H([L(),nf(),qf]).optional(),$in:B(Yd()).optional(),$nin:B(Yd()).optional(),$between:ff([H([L(),nf(),qf]),H([L(),nf(),qf])]).optional(),$contains:I().optional(),$notContains:I().optional(),$startsWith:I().optional(),$endsWith:I().optional(),$null:R().optional(),$exists:R().optional()})),Yf=Lf(()=>U(I(),z()).and(V({$and:B(Yf).optional(),$or:B(Yf).optional(),$not:Yf.optional()})));K(()=>V({where:Yf.optional()}));var Xf=Lf(()=>V({$and:B(H([U(I(),Jf),Xf])).optional(),$or:B(H([U(I(),Jf),Xf])).optional(),$not:H([U(I(),Jf),Xf]).optional()})),Zf=new Set([`=`,`==`,`!=`,`<>`,`>`,`>=`,`<`,`<=`,`in`,`nin`,`not_in`,`contains`,`notcontains`,`not_contains`,`like`,`startswith`,`starts_with`,`endswith`,`ends_with`,`between`,`is_null`,`is_not_null`]);function Qf(e){if(!Array.isArray(e)||e.length===0)return!1;let t=e[0];if(typeof t==`string`){let n=t.toLowerCase();if(n===`and`||n===`or`)return e.length>=2&&e.slice(1).every(e=>Qf(e));if(e.length>=2&&typeof e[1]==`string`)return Zf.has(e[1].toLowerCase())}return e.every(e=>Qf(e))?e.length>0:!1}var $f=[`$eq`,`$ne`,`$gt`,`$gte`,`$lt`,`$lte`,`$in`,`$nin`,`$between`,`$contains`,`$notContains`,`$startsWith`,`$endsWith`,`$null`,`$exists`],ep=[`$and`,`$or`,`$not`];[...$f,...ep];var tp=K(()=>V({field:I(),order:W([`asc`,`desc`]).default(`asc`)})),np=W([`count`,`sum`,`avg`,`min`,`max`,`count_distinct`,`array_agg`,`string_agg`]),rp=W([`day`,`week`,`month`,`quarter`,`year`]),ip=K(()=>H([I(),V({field:I().describe(`Field to group by`),dateGranularity:rp.optional().describe(`Bucket date values into uniform periods (day/week/month/quarter/year)`),alias:I().optional().describe(`Alias for the projected group value`)})])),ap=K(()=>V({function:np.describe(`Aggregation function`),field:I().optional().describe(`Field to aggregate (optional for COUNT(*))`),alias:I().describe(`Result column alias`),distinct:R().optional().describe(`Apply DISTINCT before aggregation`),filter:Yf.optional().describe(`Filter/Condition to apply to the aggregation (FILTER WHERE clause)`)})),op=W([`inner`,`left`,`right`,`full`]),sp=W([`auto`,`database`,`hash`,`loop`]),cp=Lf(()=>V({type:op.describe(`Join type`),strategy:sp.optional().describe(`Execution strategy hint`),object:I().describe(`Object/table to join`),alias:I().optional().describe(`Table alias`),on:Yf.describe(`Join condition`),subquery:Lf(()=>hp).optional().describe(`Subquery instead of object`)})),lp=W([`row_number`,`rank`,`dense_rank`,`percent_rank`,`lag`,`lead`,`first_value`,`last_value`,`sum`,`avg`,`count`,`min`,`max`]),up=K(()=>V({partitionBy:B(I()).optional().describe(`PARTITION BY fields`),orderBy:B(tp).optional().describe(`ORDER BY specification`),frame:V({type:W([`rows`,`range`]).optional(),start:I().optional().describe(`Frame start (e.g., "UNBOUNDED PRECEDING", "1 PRECEDING")`),end:I().optional().describe(`Frame end (e.g., "CURRENT ROW", "1 FOLLOWING")`)}).optional().describe(`Window frame specification`)})),dp=K(()=>V({function:lp.describe(`Window function name`),field:I().optional().describe(`Field to operate on (for aggregate window functions)`),alias:I().describe(`Result column alias`),over:up.describe(`Window specification (OVER clause)`)})),fp=Lf(()=>H([I(),V({field:I(),fields:B(fp).optional(),alias:I().optional()})])),pp=K(()=>V({query:I().describe(`Search query text`),fields:B(I()).optional().describe(`Fields to search in (if not specified, searches all text fields)`),fuzzy:R().optional().default(!1).describe(`Enable fuzzy matching (tolerates typos)`),operator:W([`and`,`or`]).optional().default(`or`).describe(`Logical operator between terms`),boost:U(I(),L()).optional().describe(`Field-specific relevance boosting (field name -> boost factor)`),minScore:L().optional().describe(`Minimum relevance score threshold`),language:I().optional().describe(`Language for text analysis (e.g., "en", "zh", "es")`),highlight:R().optional().default(!1).describe(`Enable search result highlighting`)})),mp=V({object:I().describe(`Object name (e.g. account)`),fields:B(fp).optional().describe(`Fields to retrieve`),where:Yf.optional().describe(`Filtering criteria (WHERE)`),search:pp.optional().describe(`Full-text search configuration ($search parameter)`),orderBy:B(tp).optional().describe(`Sorting instructions (ORDER BY)`),limit:L().optional().describe(`Max records to return (LIMIT)`),offset:L().optional().describe(`Records to skip (OFFSET)`),top:L().optional().describe(`Alias for limit (OData compatibility)`),cursor:U(I(),z()).optional().describe(`Cursor for keyset pagination`),joins:B(cp).optional().describe(`Explicit Table Joins`),aggregations:B(ap).optional().describe(`Aggregation functions`),groupBy:B(ip).optional().describe("GROUP BY targets (strings or `{field, dateGranularity?}` objects for date bucketing)"),having:Yf.optional().describe(`HAVING clause for aggregation filtering`),windowFunctions:B(dp).optional().describe(`Window functions with OVER clause`),distinct:R().optional().describe(`SELECT DISTINCT flag`)}),hp=K(()=>mp.extend({expand:Lf(()=>U(I(),hp)).optional().describe(`Recursive relation loading map. Keys are lookup/master_detail field names; values are nested QueryAST objects that control select, filter, sort, and further expansion on the related object. The engine resolves expand via batch $in queries (driver-agnostic) with a default max depth of 3.`)})),gp=K(()=>I().min(2,{message:`System identifier must be at least 2 characters`}).regex(/^[a-z][a-z0-9_.]*$/,{message:`System identifier must be lowercase, starting with a letter, and may contain letters, numbers, underscores, or dots (e.g., "user_profile" or "order.created")`}).describe(`System identifier (lowercase with underscores or dots)`)),_p=K(()=>I().min(2,{message:`Identifier must be at least 2 characters`}).regex(/^[a-z][a-z0-9_]*$/,{message:`Identifier must be lowercase snake_case, starting with a letter, and may contain only letters, numbers, and underscores (e.g., "user_profile")`}).describe(`Snake case identifier (lowercase with underscores only)`));K(()=>I().min(3,{message:`Event name must be at least 3 characters`}).regex(/^[a-z][a-z0-9_.]*$/,{message:`Event name must be lowercase with dots for namespacing (e.g., "user.created", "order.paid")`}).describe(`Event name (lowercase with dot notation for namespacing)`));var vp=W([`cel`,`js`,`cron`,`template`]),yp=V({rationale:I().optional(),generatedBy:I().optional()}),bp=V({dialect:vp,source:I().min(1).optional(),ast:z().optional(),meta:yp.optional()}).refine(e=>e.source!==void 0||e.ast!==void 0,{message:"Expression requires at least one of `source` or `ast`"}),xp=H([I().min(1).transform(e=>({dialect:`cel`,source:e})),bp]);H([I().min(1).transform(e=>({dialect:`cron`,source:e})),bp]);var Sp=H([I().min(1).transform(e=>({dialect:`template`,source:e})),bp]),Cp=K(()=>W([`aes-256-gcm`,`aes-256-cbc`,`chacha20-poly1305`]).describe(`Supported encryption algorithm`)),wp=K(()=>W([`local`,`aws-kms`,`azure-key-vault`,`gcp-kms`,`hashicorp-vault`]).describe(`Key management service provider`)),Tp=K(()=>V({enabled:R().default(!1).describe(`Enable automatic key rotation`),frequencyDays:L().min(1).default(90).describe(`Rotation frequency in days`),retainOldVersions:L().default(3).describe(`Number of old key versions to retain`),autoRotate:R().default(!0).describe(`Automatically rotate without manual approval`)}).describe(`Policy for automatic encryption key rotation`)),Ep=K(()=>V({enabled:R().default(!1).describe(`Enable field-level encryption`),algorithm:Cp.default(`aes-256-gcm`).describe(`Encryption algorithm`),keyManagement:V({provider:wp.describe(`Key management service provider`),keyId:I().optional().describe(`Key identifier in the provider`),rotationPolicy:Tp.optional().describe(`Key rotation policy`)}).describe(`Key management configuration`),scope:W([`field`,`record`,`table`,`database`]).describe(`Encryption scope level`),deterministicEncryption:R().default(!1).describe(`Allows equality queries on encrypted data`),searchableEncryption:R().default(!1).describe(`Allows search on encrypted data`)}).describe(`Field-level encryption configuration`));K(()=>V({fieldName:I().describe(`Name of the field to encrypt`),encryptionConfig:Ep.describe(`Encryption settings for this field`),indexable:R().default(!1).describe(`Allow indexing on encrypted field`)}).describe(`Per-field encryption assignment`));var Dp=K(()=>W([`redact`,`partial`,`hash`,`tokenize`,`randomize`,`nullify`,`substitute`]).describe(`Data masking strategy for PII protection`)),Op=K(()=>V({field:I().describe(`Field name to apply masking to`),strategy:Dp.describe(`Masking strategy to use`),pattern:I().optional().describe(`Regex pattern for partial masking`),preserveFormat:R().default(!0).describe(`Keep the original data format after masking`),preserveLength:R().default(!0).describe(`Keep the original data length after masking`),roles:B(I()).optional().describe(`Roles that see masked data`),exemptRoles:B(I()).optional().describe(`Roles that see unmasked data`)}).describe(`Masking rule for a single field`));K(()=>V({enabled:R().default(!1).describe(`Enable data masking`),rules:B(Op).describe(`List of field-level masking rules`),auditUnmasking:R().default(!0).describe(`Log when masked data is accessed unmasked`)}).describe(`Top-level data masking configuration for PII protection`));var kp=W(`text.textarea.email.url.phone.password.markdown.html.richtext.number.currency.percent.date.datetime.time.boolean.toggle.select.multiselect.radio.checkboxes.lookup.master_detail.tree.image.file.avatar.video.audio.formula.summary.autonumber.location.address.code.json.color.rating.slider.signature.qrcode.progress.tags.vector`.split(`.`)),Ap=K(()=>V({label:I().describe(`Display label (human-readable, any case allowed)`),value:gp.describe(`Stored value (lowercase machine identifier)`),color:I().optional().describe(`Color code for badges/charts`),default:R().optional().describe(`Is default option`)}));K(()=>V({latitude:L().min(-90).max(90).describe(`Latitude coordinate`),longitude:L().min(-180).max(180).describe(`Longitude coordinate`),altitude:L().optional().describe(`Altitude in meters`),accuracy:L().optional().describe(`Accuracy in meters`)}));var jp=K(()=>V({precision:L().int().min(0).max(10).default(2).describe(`Decimal precision (default: 2)`),currencyMode:W([`dynamic`,`fixed`]).default(`dynamic`).describe(`Currency mode: dynamic (user selectable) or fixed (single currency)`),defaultCurrency:I().length(3).default(`CNY`).describe(`Default or fixed currency code (ISO 4217, e.g., USD, CNY, EUR)`)}));K(()=>V({value:L().describe(`Monetary amount`),currency:I().length(3).describe(`Currency code (ISO 4217)`)})),K(()=>V({street:I().optional().describe(`Street address`),city:I().optional().describe(`City name`),state:I().optional().describe(`State/Province`),postalCode:I().optional().describe(`Postal/ZIP code`),country:I().optional().describe(`Country name or code`),countryCode:I().optional().describe(`ISO country code (e.g., US, GB)`),formatted:I().optional().describe(`Formatted address string`)}));var Mp=K(()=>V({dimensions:L().int().min(1).max(1e4).describe(`Vector dimensionality (e.g., 1536 for OpenAI embeddings)`),distanceMetric:W([`cosine`,`euclidean`,`dotProduct`,`manhattan`]).default(`cosine`).describe(`Distance/similarity metric for vector search`),normalized:R().default(!1).describe(`Whether vectors are normalized (unit length)`),indexed:R().default(!0).describe(`Whether to create a vector index for fast similarity search`),indexType:W([`hnsw`,`ivfflat`,`flat`]).optional().describe(`Vector index algorithm (HNSW for high accuracy, IVFFlat for large datasets)`)})),Np=K(()=>V({minSize:L().min(0).optional().describe(`Minimum file size in bytes`),maxSize:L().min(1).optional().describe(`Maximum file size in bytes (e.g., 10485760 = 10MB)`),allowedTypes:B(I()).optional().describe(`Allowed file extensions (e.g., [".pdf", ".docx", ".jpg"])`),blockedTypes:B(I()).optional().describe(`Blocked file extensions (e.g., [".exe", ".bat", ".sh"])`),allowedMimeTypes:B(I()).optional().describe(`Allowed MIME types (e.g., ["image/jpeg", "application/pdf"])`),blockedMimeTypes:B(I()).optional().describe(`Blocked MIME types`),virusScan:R().default(!1).describe(`Enable virus scanning for uploaded files`),virusScanProvider:W([`clamav`,`virustotal`,`metadefender`,`custom`]).optional().describe(`Virus scanning service provider`),virusScanOnUpload:R().default(!0).describe(`Scan files immediately on upload`),quarantineOnThreat:R().default(!0).describe(`Quarantine files if threat detected`),storageProvider:I().optional().describe(`Object storage provider name (references ObjectStorageConfig)`),storageBucket:I().optional().describe(`Target bucket name`),storagePrefix:I().optional().describe(`Storage path prefix (e.g., "uploads/documents/")`),imageValidation:V({minWidth:L().min(1).optional().describe(`Minimum image width in pixels`),maxWidth:L().min(1).optional().describe(`Maximum image width in pixels`),minHeight:L().min(1).optional().describe(`Minimum image height in pixels`),maxHeight:L().min(1).optional().describe(`Maximum image height in pixels`),aspectRatio:I().optional().describe(`Required aspect ratio (e.g., "16:9", "1:1")`),generateThumbnails:R().default(!1).describe(`Auto-generate thumbnails`),thumbnailSizes:B(V({name:I().describe(`Thumbnail variant name (e.g., "small", "medium", "large")`),width:L().min(1).describe(`Thumbnail width in pixels`),height:L().min(1).describe(`Thumbnail height in pixels`),crop:R().default(!1).describe(`Crop to exact dimensions`)})).optional().describe(`Thumbnail size configurations`),preserveMetadata:R().default(!1).describe(`Preserve EXIF metadata`),autoRotate:R().default(!0).describe(`Auto-rotate based on EXIF orientation`)}).optional().describe(`Image-specific validation rules`),allowMultiple:R().default(!1).describe(`Allow multiple file uploads (overrides field.multiple)`),allowReplace:R().default(!0).describe(`Allow replacing existing files`),allowDelete:R().default(!0).describe(`Allow deleting uploaded files`),requireUpload:R().default(!1).describe(`Require at least one file when field is required`),extractMetadata:R().default(!0).describe(`Extract file metadata (name, size, type, etc.)`),extractText:R().default(!1).describe(`Extract text content from documents (OCR/parsing)`),versioningEnabled:R().default(!1).describe(`Keep previous versions of replaced files`),maxVersions:L().min(1).optional().describe(`Maximum number of versions to retain`),publicRead:R().default(!1).describe(`Allow public read access to uploaded files`),presignedUrlExpiry:L().min(60).max(604800).default(3600).describe(`Presigned URL expiration in seconds (default: 1 hour)`)}).refine(e=>!(e.minSize!==void 0&&e.maxSize!==void 0&&e.minSize>e.maxSize),{message:`minSize must be less than or equal to maxSize`}).refine(e=>!(e.virusScanProvider!==void 0&&e.virusScan!==!0),{message:`virusScanProvider requires virusScan to be enabled`})),Pp=K(()=>V({uniqueness:R().default(!1).describe(`Enforce unique values across all records`),completeness:L().min(0).max(1).default(0).describe(`Minimum ratio of non-null values (0-1, default: 0 = no requirement)`),accuracy:V({source:I().describe(`Reference data source for validation (e.g., "api.verify.com", "master_data")`),threshold:L().min(0).max(1).describe(`Minimum accuracy threshold (0-1, e.g., 0.95 = 95% match required)`)}).optional().describe(`Accuracy validation configuration`)})),Fp=K(()=>V({enabled:R().describe(`Enable caching for computed field results`),ttl:L().min(0).describe(`Cache TTL in seconds (0 = no expiration)`),invalidateOn:B(I()).describe(`Field paths that invalidate cache (e.g., ["inventory.quantity", "pricing.base_price"])`)})),Ip=K(()=>V({name:I().regex(/^[a-z_][a-z0-9_]*$/).describe(`Machine name (snake_case)`).optional(),label:I().optional().describe(`Human readable label`),type:kp.describe(`Field Data Type`),description:I().optional().describe(`Tooltip/Help text`),format:I().optional().describe(`Format string (e.g. email, phone)`),columnName:I().optional().describe(`Physical column name in the target datasource. Defaults to the field key when not set.`),required:R().default(!1).describe(`Is required`),searchable:R().default(!1).describe(`Is searchable`),multiple:R().default(!1).describe(`Allow multiple values (Stores as Array/JSON). Applicable for select, lookup, file, image.`),unique:R().default(!1).describe(`Is unique constraint`),defaultValue:z().optional().describe(`Default value`),maxLength:L().optional().describe(`Max character length`),minLength:L().optional().describe(`Min character length`),precision:L().optional().describe(`Total digits`),scale:L().optional().describe(`Decimal places`),min:L().optional().describe(`Minimum value`),max:L().optional().describe(`Maximum value`),options:B(Ap).optional().describe(`Static options for select/multiselect`),reference:I().optional().describe(`Target object name (snake_case) for lookup/master_detail fields. Required for relationship types. Used by $expand to resolve foreign key IDs into full objects.`),referenceFilters:B(I()).optional().describe(`Filters applied to lookup dialogs (e.g. "active = true")`),writeRequiresMasterRead:R().optional().describe(`If true, user needs read access to master record to edit this field`),deleteBehavior:W([`set_null`,`cascade`,`restrict`]).optional().default(`set_null`).describe(`What happens if referenced record is deleted`),expression:xp.optional().describe("Formula expression (CEL). e.g. F`record.amount * 0.1`"),summaryOperations:V({object:I().describe(`Source child object name for roll-up`),field:I().describe(`Field on child object to aggregate`),function:W([`count`,`sum`,`min`,`max`,`avg`]).describe(`Aggregation function to apply`)}).optional().describe(`Roll-up summary definition`),language:I().optional().describe(`Programming language for syntax highlighting (e.g., javascript, python, sql)`),theme:I().optional().describe(`Code editor theme (e.g., dark, light, monokai)`),lineNumbers:R().optional().describe(`Show line numbers in code editor`),maxRating:L().optional().describe(`Maximum rating value (default: 5)`),allowHalf:R().optional().describe(`Allow half-star ratings`),displayMap:R().optional().describe(`Display map widget for location field`),allowGeocoding:R().optional().describe(`Allow address-to-coordinate conversion`),addressFormat:W([`us`,`uk`,`international`]).optional().describe(`Address format template`),colorFormat:W([`hex`,`rgb`,`rgba`,`hsl`]).optional().describe(`Color value format`),allowAlpha:R().optional().describe(`Allow transparency/alpha channel`),presetColors:B(I()).optional().describe(`Preset color options`),step:L().optional().describe(`Step increment for slider (default: 1)`),showValue:R().optional().describe(`Display current value on slider`),marks:U(I(),I()).optional().describe(`Custom marks/labels at specific values (e.g., {0: "Low", 50: "Medium", 100: "High"})`),barcodeFormat:W([`qr`,`ean13`,`ean8`,`code128`,`code39`,`upca`,`upce`]).optional().describe(`Barcode format type`),qrErrorCorrection:W([`L`,`M`,`Q`,`H`]).optional().describe(`QR code error correction level (L=7%, M=15%, Q=25%, H=30%). Only applicable when barcodeFormat is "qr"`),displayValue:R().optional().describe(`Display human-readable value below barcode/QR code`),allowScanning:R().optional().describe(`Enable camera scanning for barcode/QR code input`),currencyConfig:jp.optional().describe(`Configuration for currency field type`),vectorConfig:Mp.optional().describe(`Configuration for vector field type (AI/ML embeddings)`),fileAttachmentConfig:Np.optional().describe(`Configuration for file and attachment field types`),encryptionConfig:Ep.optional().describe(`Field-level encryption configuration for sensitive data (GDPR/HIPAA/PCI-DSS)`),maskingRule:Op.optional().describe(`Data masking rules for PII protection`),auditTrail:R().default(!1).describe(`Enable detailed audit trail for this field (tracks all changes with user and timestamp)`),dependencies:B(I()).optional().describe(`Array of field names that this field depends on (for formulas, visibility rules, etc.)`),cached:Fp.optional().describe(`Caching configuration for computed/formula fields`),dataQuality:Pp.optional().describe(`Data quality validation and monitoring rules`),group:I().optional().describe(`Field group name for organizing fields in forms and layouts (e.g., "contact_info", "billing", "system")`),conditionalRequired:xp.optional().describe("Predicate (CEL) — field is required when TRUE. e.g. P`record.status == 'closed_won'`"),hidden:R().default(!1).describe(`Hidden from default UI`),readonly:R().default(!1).describe(`Read-only in UI`),system:R().optional().describe(`Auto-injected system/audit field (e.g. created_at, updated_by, organization_id). Tools that surface system fields separately from author-declared business fields should branch on this flag.`),sortable:R().optional().default(!0).describe(`Whether field is sortable in list views`),inlineHelpText:I().optional().describe(`Help text displayed below the field in forms`),trackFeedHistory:R().optional().describe(`Track field changes in Chatter/activity feed (Salesforce pattern)`),caseSensitive:R().optional().describe(`Whether text comparisons are case-sensitive`),autonumberFormat:I().optional().describe(`Auto-number display format pattern (e.g., "CASE-{0000}")`),index:R().default(!1).describe(`Create standard database index`),externalId:R().default(!1).describe(`Is external ID for upsert operations`)})),Lp=V({name:I().regex(/^[a-z_][a-z0-9_]*$/).describe(`Unique rule name (snake_case)`),label:I().optional().describe(`Human-readable label for the rule listing`),description:I().optional().describe(`Administrative notes explaining the business reason`),active:R().default(!0),events:B(W([`insert`,`update`,`delete`])).default([`insert`,`update`]).describe(`Validation contexts`),priority:L().int().min(0).max(9999).default(100).describe(`Execution priority (lower runs first, default: 100)`),tags:B(I()).optional().describe(`Categorization tags (e.g., "compliance", "billing")`),severity:W([`error`,`warning`,`info`]).default(`error`),message:I().describe(`Error message to display to the user`)}),Rp=K(()=>Lp.extend({type:G(`script`),condition:xp.describe("Predicate (CEL). If TRUE, validation fails. e.g. P`record.amount < 0`")})),zp=K(()=>Lp.extend({type:G(`unique`),fields:B(I()).describe(`Fields that must be combined unique`),scope:xp.optional().describe("Predicate (CEL) limiting uniqueness scope. e.g. P`record.active == true`"),caseSensitive:R().default(!0)})),Bp=K(()=>Lp.extend({type:G(`state_machine`),field:I().describe(`State field (e.g. status)`),transitions:U(I(),B(I())).describe(`Map of { OldState: [AllowedNewStates] }`)})),Vp=K(()=>Lp.extend({type:G(`format`),field:I(),regex:I().optional(),format:W([`email`,`url`,`phone`,`json`]).optional()})),Hp=K(()=>Lp.extend({type:G(`cross_field`),condition:xp.describe("Predicate (CEL) comparing fields. e.g. P`record.end_date > record.start_date`"),fields:B(I()).describe(`Fields involved in the validation`)})),Up=K(()=>Lp.extend({type:G(`json_schema`),field:I().describe(`JSON field to validate`),schema:U(I(),z()).describe(`JSON Schema object definition`)})),Wp=K(()=>Lp.extend({type:G(`async`),field:I().describe(`Field to validate`),validatorUrl:I().optional().describe(`External API endpoint for validation`),method:W([`GET`,`POST`]).default(`GET`).describe(`HTTP method for external call`),headers:U(I(),I()).optional().describe(`Custom headers for the request`),validatorFunction:I().optional().describe(`Reference to custom validator function`),timeout:L().optional().default(5e3).describe(`Timeout in milliseconds`),debounce:L().optional().describe(`Debounce delay in milliseconds`),params:U(I(),z()).optional().describe(`Additional parameters to pass to validator`)})),Gp=K(()=>Lp.extend({type:G(`custom`),handler:I().describe(`Name of the custom validation function registered in the system`),params:U(I(),z()).optional().describe(`Parameters passed to the custom handler`)})),Kp=Lf(()=>cf(`type`,[Rp,zp,Bp,Vp,Hp,Up,Wp,Gp,qp])),qp=K(()=>Lp.extend({type:G(`conditional`),when:xp.describe("Predicate (CEL). e.g. P`record.type == 'enterprise'`"),then:Kp.describe(`Validation rule to apply when condition is true`),otherwise:Kp.optional().describe(`Validation rule to apply when condition is false`)})),Jp=K(()=>H([I().describe(`Action Name`),V({type:I(),params:U(I(),z()).optional()})])),Yp=K(()=>H([I().describe(`Guard Name (e.g., "isManager", "amountGT1000")`),V({type:I(),params:U(I(),z()).optional()})])),Xp=K(()=>V({target:I().optional().describe(`Target State ID`),cond:Yp.optional().describe(`Condition (Guard) required to take this path`),actions:B(Jp).optional().describe(`Actions to execute during transition`),description:I().optional().describe(`Human readable description of this rule`)}));K(()=>V({type:I().describe(`Event Type (e.g. "APPROVE", "REJECT", "Submit")`),schema:U(I(),z()).optional().describe(`Expected event payload structure`)}));var Zp=Lf(()=>V({type:W([`atomic`,`compound`,`parallel`,`final`,`history`]).default(`atomic`),entry:B(Jp).optional().describe(`Actions to run when entering this state`),exit:B(Jp).optional().describe(`Actions to run when leaving this state`),on:U(I(),H([I(),Xp,B(Xp)])).optional().describe(`Map of Event Type -> Transition Definition`),always:B(Xp).optional(),initial:I().optional().describe(`Initial child state (if compound)`),states:U(I(),Zp).optional(),meta:V({label:I().optional(),description:I().optional(),color:I().optional(),aiInstructions:I().optional().describe(`Specific instructions for AI when in this state`)}).optional()})),Qp=K(()=>V({id:_p.describe(`Unique Machine ID`),description:I().optional(),contextSchema:U(I(),z()).optional().describe(`Zod Schema for the machine context/memory`),initial:I().describe(`Initial State ID`),states:U(I(),Zp).describe(`State Nodes`),on:U(I(),H([I(),Xp,B(Xp)])).optional()}));K(()=>V({key:I().describe(`Translation key (e.g., "views.task_list.label")`),defaultValue:I().optional().describe(`Fallback value when translation key is not found`),params:U(I(),H([I(),L(),R()])).optional().describe(`Interpolation parameters (e.g., { count: 5 })`)}));var $p=K(()=>I().describe(`Display label (plain string; i18n keys are auto-generated by the framework)`)),em=K(()=>V({ariaLabel:$p.optional().describe(`Accessible label for screen readers (WAI-ARIA aria-label)`),ariaDescribedBy:I().optional().describe(`ID of element providing additional description (WAI-ARIA aria-describedby)`),role:I().optional().describe(`WAI-ARIA role attribute (e.g., "dialog", "navigation", "alert")`)}).describe(`ARIA accessibility attributes`));K(()=>V({key:I().describe(`Translation key`),zero:I().optional().describe(`Zero form (e.g., "No items")`),one:I().optional().describe(`Singular form (e.g., "{count} item")`),two:I().optional().describe(`Dual form (e.g., "{count} items" for exactly 2)`),few:I().optional().describe(`Few form (e.g., for 2-4 in some languages)`),many:I().optional().describe(`Many form (e.g., for 5+ in some languages)`),other:I().describe(`Default plural form (e.g., "{count} items")`)}).describe(`ICU plural rules for a translation key`));var tm=K(()=>V({style:W([`decimal`,`currency`,`percent`,`unit`]).default(`decimal`).describe(`Number formatting style`),currency:I().optional().describe(`ISO 4217 currency code (e.g., "USD", "EUR")`),unit:I().optional().describe(`Unit for unit formatting (e.g., "kilometer", "liter")`),minimumFractionDigits:L().optional().describe(`Minimum number of fraction digits`),maximumFractionDigits:L().optional().describe(`Maximum number of fraction digits`),useGrouping:R().optional().describe(`Whether to use grouping separators (e.g., 1,000)`)}).describe(`Number formatting rules`)),nm=K(()=>V({dateStyle:W([`full`,`long`,`medium`,`short`]).optional().describe(`Date display style`),timeStyle:W([`full`,`long`,`medium`,`short`]).optional().describe(`Time display style`),timeZone:I().optional().describe(`IANA time zone (e.g., "America/New_York")`),hour12:R().optional().describe(`Use 12-hour format`)}).describe(`Date/time formatting rules`));K(()=>V({code:I().describe(`BCP 47 language code (e.g., "en-US", "zh-CN")`),fallbackChain:B(I()).optional().describe(`Fallback language codes in priority order (e.g., ["zh-TW", "en"])`),direction:W([`ltr`,`rtl`]).default(`ltr`).describe(`Text direction: left-to-right or right-to-left`),numberFormat:tm.optional().describe(`Default number formatting rules`),dateFormat:nm.optional().describe(`Default date/time formatting rules`)}).describe(`Locale configuration`));var rm=W([`api.read`,`api.write`,`crypto.uuid`,`crypto.hash`,`log`]),im=cf(`language`,[V({language:G(`expression`),source:I().min(1).describe(`Formula expression source`)}).describe(`L1 expression body — pure formula, no IO`),V({language:G(`js`),source:I().min(1).describe(`Function body source`),capabilities:B(rm).default([]).describe(`Granted capability tokens`),timeoutMs:L().int().positive().max(3e4).optional().describe(`Per-invocation timeout (ms)`),memoryMb:L().int().positive().max(256).optional().describe(`Per-invocation memory cap (MB)`)}).describe(`L2 sandboxed JS body — runs inside an isolated VM with declared capabilities`)]).describe(`Hook/Action body — expression (L1) or sandboxed JS (L2)`),am=K(()=>V({name:I().optional(),field:_p.optional(),objectOverride:_p.optional(),label:$p.optional(),type:kp.optional(),required:R().optional().default(!1),options:B(V({label:$p,value:I()})).optional(),placeholder:I().optional(),helpText:I().optional(),defaultValue:z().optional(),defaultFromRow:R().optional()}).refine(e=>!!e.name||!!e.field,{message:`ActionParam requires either "name" or "field"`})),om=W([`script`,`url`,`modal`,`flow`,`api`,`form`]),sm=new Set(om.options.filter(e=>e!==`script`)),cm=K(()=>V({name:_p.describe(`Machine name (lowercase snake_case)`),label:$p.describe(`Display label`),objectName:I().regex(/^[a-z_][a-z0-9_]*$/).optional().describe(`Target object this action belongs to. When set, the action is auto-merged into the object's actions array by defineStack().`),icon:I().optional().describe(`Icon name`),locations:B(W([`list_toolbar`,`list_item`,`record_header`,`record_more`,`record_related`,`global_nav`])).optional().describe(`Locations where this action is visible`),component:W([`action:button`,`action:icon`,`action:menu`,`action:group`]).optional().describe(`Visual component override`),type:om.default(`script`).describe(`Action functionality type`),target:I().optional().describe(`URL, Script Name, Flow ID, or API Endpoint`),body:im.optional().describe("Action body — expression (L1) or sandboxed JS (L2). Only used when type is `script`."),execute:I().optional().describe(`@deprecated — Use target instead. Auto-migrated to target during parsing.`),params:B(am).optional().describe(`Input parameters required from user`),variant:W([`primary`,`secondary`,`danger`,`ghost`,`link`]).optional().describe(`Button visual variant for styling (primary = highlighted, danger = destructive, ghost = transparent)`),confirmText:$p.optional().describe(`Confirmation message before execution`),successMessage:$p.optional().describe(`Success message to show after execution`),refreshAfter:R().default(!1).describe(`Refresh view after execution`),visible:xp.optional().describe(`Visibility predicate (CEL).`),disabled:H([R(),xp]).optional().describe(`Boolean or predicate (CEL) — action is disabled when TRUE.`),shortcut:I().optional().describe(`Keyboard shortcut to trigger this action (e.g., "Ctrl+S")`),bulkEnabled:R().optional().describe(`Whether this action can be applied to multiple selected records`),recordIdParam:I().optional().describe(`Body key to inject the row id into when running from a list_item context.`),recordIdField:I().optional().describe(`Row field whose value seeds recordIdParam. Defaults to "id".`),bodyShape:H([G(`flat`),V({wrap:I()})]).optional().describe(`Body wrapping: flat (default) or { wrap: key } to nest user-collected params under a key.`),method:W([`POST`,`PATCH`,`PUT`,`DELETE`]).optional().describe(`HTTP method for type:"api" actions. Defaults to POST.`),bodyExtra:U(I(),z()).optional().describe(`Constant body fields merged into the API request (applied last; overrides user params).`),mode:W([`create`,`edit`,`delete`,`custom`]).optional().describe(`Semantic mode of the action.`),timeout:L().optional().describe(`Maximum execution time in milliseconds for the action`),aria:em.optional().describe(`ARIA accessibility attributes`)}).transform(e=>e.execute&&!e.target?{...e,target:e.execute}:e).refine(e=>!(sm.has(e.type)&&!e.target),{message:`Action 'target' is required when type is 'url', 'flow', 'modal', 'api', or 'form'.`,path:[`target`]})),lm=K(()=>V({enabled:R().default(!1).describe(`Enable public sharing`),publicLink:I().optional().describe(`Generated public share URL`),password:I().optional().describe(`Password required to access shared link`),allowedDomains:B(I()).optional().describe(`Restrict access to specific email domains (e.g. ["example.com"])`),expiresAt:I().optional().describe(`Expiration date/time in ISO 8601 format`),allowAnonymous:R().optional().default(!1).describe(`Allow access without authentication`)}));K(()=>V({enabled:R().default(!1).describe(`Enable iframe embedding`),allowedOrigins:B(I()).optional().describe(`Allowed iframe parent origins (e.g. ["https://example.com"])`),width:I().optional().default(`100%`).describe(`Embed width (CSS value)`),height:I().optional().default(`600px`).describe(`Embed height (CSS value)`),showHeader:R().optional().default(!0).describe(`Show interface header in embed`),showNavigation:R().optional().default(!1).describe(`Show navigation in embed`),responsive:R().optional().default(!0).describe(`Enable responsive resizing`)}));var um=W([`xs`,`sm`,`md`,`lg`,`xl`,`2xl`]),dm=K(()=>V({xs:L().min(1).max(12).optional(),sm:L().min(1).max(12).optional(),md:L().min(1).max(12).optional(),lg:L().min(1).max(12).optional(),xl:L().min(1).max(12).optional(),"2xl":L().min(1).max(12).optional()}).describe(`Grid columns per breakpoint (1-12)`)),fm=K(()=>V({xs:L().optional(),sm:L().optional(),md:L().optional(),lg:L().optional(),xl:L().optional(),"2xl":L().optional()}).describe(`Display order per breakpoint`)),pm=K(()=>V({breakpoint:um.optional().describe(`Minimum breakpoint for visibility`),hiddenOn:B(um).optional().describe(`Hide on these breakpoints`),columns:dm.optional().describe(`Grid columns per breakpoint`),order:fm.optional().describe(`Display order per breakpoint`)}).describe(`Responsive layout configuration`)),mm=K(()=>V({lazyLoad:R().optional().describe(`Enable lazy loading (defer rendering until visible)`),virtualScroll:V({enabled:R().default(!1).describe(`Enable virtual scrolling`),itemHeight:L().optional().describe(`Fixed item height in pixels (for estimation)`),overscan:L().optional().describe(`Number of extra items to render outside viewport`)}).optional().describe(`Virtual scrolling configuration`),cacheStrategy:W([`none`,`cache-first`,`network-first`,`stale-while-revalidate`]).optional().describe(`Client-side data caching strategy`),prefetch:R().optional().describe(`Prefetch data before component is visible`),pageSize:L().optional().describe(`Number of items per page for pagination`),debounceMs:L().optional().describe(`Debounce interval for user interactions in milliseconds`)}).describe(`Performance optimization configuration`)),hm=W([`GET`,`POST`,`PUT`,`DELETE`,`PATCH`,`HEAD`,`OPTIONS`]),gm=K(()=>W([`GET`,`POST`,`PUT`,`PATCH`,`DELETE`])),_m=K(()=>V({url:I().describe(`API endpoint URL`),method:gm.optional().default(`GET`).describe(`HTTP method`),headers:U(I(),I()).optional().describe(`Custom HTTP headers`),params:U(I(),z()).optional().describe(`Query parameters`),body:z().optional().describe(`Request body for POST/PUT/PATCH`)}));K(()=>V({enabled:R().default(!0).describe(`Enable CORS`),origins:H([I(),B(I())]).default(`*`).describe(`Allowed origins (* for all)`),methods:B(hm).optional().describe(`Allowed HTTP methods`),credentials:R().default(!1).describe(`Allow credentials (cookies, authorization headers)`),maxAge:L().int().optional().describe(`Preflight cache duration in seconds`)})),K(()=>V({enabled:R().default(!1).describe(`Enable rate limiting`),windowMs:L().int().default(6e4).describe(`Time window in milliseconds`),maxRequests:L().int().default(100).describe(`Max requests per window`)})),K(()=>V({path:I().describe(`URL path to serve from`),directory:I().describe(`Physical directory to serve`),cacheControl:I().optional().describe(`Cache-Control header value`)}));var vm=K(()=>cf(`provider`,[V({provider:G(`object`),object:I().describe(`Target object name`)}),V({provider:G(`api`),read:_m.optional().describe(`Configuration for fetching data`),write:_m.optional().describe(`Configuration for submitting data (for forms/editable tables)`)}),V({provider:G(`value`),items:B(z()).describe(`Static data array`)})])),ym=K(()=>V({field:I().describe(`Field name to filter on`),operator:I().describe(`Filter operator (e.g. equals, not_equals, contains, this_quarter)`),value:H([I(),L(),R(),qd(),B(H([I(),L()]))]).optional().describe(`Filter value`)}).describe(`View filter rule`)),bm=K(()=>W([`none`,`count`,`count_empty`,`count_filled`,`count_unique`,`percent_empty`,`percent_filled`,`sum`,`avg`,`min`,`max`]).describe(`Aggregation function for column footer summary`)),xm=K(()=>V({field:I().describe(`Field name (snake_case)`),label:$p.optional().describe(`Display label override`),width:L().positive().optional().describe(`Column width in pixels`),align:W([`left`,`center`,`right`]).optional().describe(`Text alignment`),hidden:R().optional().describe(`Hide column by default`),sortable:R().optional().describe(`Allow sorting by this column`),resizable:R().optional().describe(`Allow resizing this column`),wrap:R().optional().describe(`Allow text wrapping`),type:I().optional().describe(`Renderer type override (e.g., "currency", "date")`),pinned:W([`left`,`right`]).optional().describe(`Pin/freeze column to left or right side`),summary:bm.optional().describe(`Footer aggregation function for this column`),link:R().optional().describe(`Functions as the primary navigation link (triggers View navigation)`),action:I().optional().describe(`Registered Action ID to execute when clicked`)})),Sm=K(()=>V({type:W([`none`,`single`,`multiple`]).default(`none`).describe(`Selection mode`)})),Cm=K(()=>V({pageSize:L().int().positive().default(25).describe(`Number of records per page`),pageSizeOptions:B(L().int().positive()).optional().describe(`Available page size options`)})),wm=K(()=>W([`compact`,`short`,`medium`,`tall`,`extra_tall`]).describe(`Row height / density setting for list view`)),Tm=K(()=>V({field:I().describe(`Field name to group by`),order:W([`asc`,`desc`]).default(`asc`).describe(`Group sort order`),collapsed:R().default(!1).describe(`Collapse groups by default`)})),Em=K(()=>V({fields:B(Tm).min(1).describe(`Fields to group by (supports up to 3 levels)`)}).describe(`Record grouping configuration`)),Dm=K(()=>V({coverField:I().optional().describe(`Attachment/image field to display as card cover`),coverFit:W([`cover`,`contain`]).default(`cover`).describe(`Image fit mode for card cover`),cardSize:W([`small`,`medium`,`large`]).default(`medium`).describe(`Card size in gallery view`),titleField:I().optional().describe(`Field to display as card title`),visibleFields:B(I()).optional().describe(`Fields to display on card body`)}).describe(`Gallery/card view configuration`)),Om=K(()=>V({startDateField:I().describe(`Field for timeline item start date`),endDateField:I().optional().describe(`Field for timeline item end date`),titleField:I().describe(`Field to display as timeline item title`),groupByField:I().optional().describe(`Field to group timeline rows`),colorField:I().optional().describe(`Field to determine item color`),scale:W([`hour`,`day`,`week`,`month`,`quarter`,`year`]).default(`week`).describe(`Default timeline scale`)}).describe(`Timeline view configuration`)),km=K(()=>V({type:W([`personal`,`collaborative`]).default(`collaborative`).describe(`View ownership type`),lockedBy:I().optional().describe(`User who locked the view configuration`)}).describe(`View sharing and access configuration`)),Am=K(()=>V({field:I().describe(`Field to derive color from (typically a select/status field)`),colors:U(I(),I()).optional().describe(`Map of field value to color (hex/token)`)}).describe(`Row color configuration based on field values`)),jm=K(()=>W([`grid`,`kanban`,`gallery`,`calendar`,`timeline`,`gantt`,`map`]).describe(`Visualization type that users can switch to`)),Mm=K(()=>V({sort:R().default(!0).describe(`Allow users to sort records`),search:R().default(!0).describe(`Allow users to search records`),filter:R().default(!0).describe(`Allow users to filter records`),rowHeight:R().default(!0).describe(`Allow users to toggle row height/density`),addRecordForm:R().default(!1).describe(`Add records through a form instead of inline`),buttons:B(I()).optional().describe(`Custom action button IDs to show in the toolbar`)}).describe(`User action toggles for the view toolbar`)),Nm=K(()=>V({showDescription:R().default(!0).describe(`Show the view description text`),allowedVisualizations:B(jm).optional().describe(`Whitelist of visualization types users can switch between (e.g. ["grid", "gallery", "kanban"])`)}).describe(`Appearance and visualization configuration`)),Pm=K(()=>V({name:_p.describe(`Tab identifier (snake_case)`),label:$p.optional().describe(`Display label`),icon:I().optional().describe(`Tab icon name`),view:I().optional().describe(`Referenced list view name from listViews`),filter:B(ym).optional().describe(`Tab-specific filter criteria`),order:L().int().min(0).optional().describe(`Tab display order`),pinned:R().default(!1).describe(`Pin tab (cannot be removed by users)`),isDefault:R().default(!1).describe(`Set as the default active tab`),visible:R().default(!0).describe(`Tab visibility`)}).describe(`Tab configuration for multi-tab view interface`)),Fm=K(()=>V({enabled:R().default(!0).describe(`Show the add record entry point`),position:W([`top`,`bottom`,`both`]).default(`bottom`).describe(`Position of the add record button`),mode:W([`inline`,`form`,`modal`]).default(`inline`).describe(`How to add a new record`),formView:I().optional().describe(`Named form view to use when mode is "form" or "modal"`)}).describe(`Add record entry point configuration`)),Im=K(()=>V({groupByField:I().describe(`Field to group columns by (usually status/select)`),summarizeField:I().optional().describe(`Field to sum at top of column (e.g. amount)`),columns:B(I()).describe(`Fields to show on cards`)})),Lm=K(()=>V({chartType:W([`bar`,`line`,`pie`,`area`,`scatter`]).default(`bar`).describe(`Chart visualisation type`),xAxisField:I().describe(`Field used as the X axis / category dimension`),yAxisFields:B(I()).min(1).describe(`Field(s) used as the Y axis / measures`),aggregation:W([`sum`,`avg`,`count`,`min`,`max`]).optional().describe(`Aggregation function applied to Y axis fields`),groupByField:I().optional().describe(`Optional field used to split / stack the chart`)}).describe(`List chart view configuration`)),Rm=K(()=>V({startDateField:I(),endDateField:I().optional(),titleField:I(),colorField:I().optional()})),zm=K(()=>V({startDateField:I(),endDateField:I(),titleField:I(),progressField:I().optional(),dependenciesField:I().optional()})),Bm=K(()=>W([`page`,`drawer`,`modal`,`split`,`popover`,`new_window`,`none`])),Vm=K(()=>V({mode:Bm.default(`page`),view:I().optional().describe(`Name of the form view to use for details (e.g. "summary_view", "edit_form")`),preventNavigation:R().default(!1).describe(`Disable standard navigation entirely`),openNewTab:R().default(!1).describe(`Force open in new tab (applies to page mode)`),width:H([I(),L()]).optional().describe(`Width of the drawer/modal (e.g. "600px", "50%")`)})),Hm=K(()=>V({name:_p.optional().describe(`Internal view name (lowercase snake_case)`),label:$p.optional(),type:W([`grid`,`kanban`,`gallery`,`calendar`,`timeline`,`gantt`,`map`,`chart`]).default(`grid`),data:vm.optional().describe(`Data source configuration (defaults to "object" provider)`),columns:H([B(I()),B(xm)]).describe(`Fields to display as columns`),filter:B(ym).optional().describe(`Filter criteria (JSON Rules)`),sort:H([I(),B(V({field:I(),order:W([`asc`,`desc`])}))]).optional(),searchableFields:B(I()).optional().describe(`Fields enabled for search`),filterableFields:B(I()).optional().describe(`Fields enabled for end-user filtering in the top bar`),resizable:R().optional().describe(`Enable column resizing`),striped:R().optional().describe(`Striped row styling`),bordered:R().optional().describe(`Show borders`),compactToolbar:R().optional().describe(`Collapse Group/Color/Density/Hide-fields into a single View settings popover`),selection:Sm.optional().describe(`Row selection configuration`),navigation:Vm.optional().describe(`Configuration for item click navigation (page, drawer, modal, etc.)`),pagination:Cm.optional().describe(`Pagination configuration`),kanban:Im.optional(),calendar:Rm.optional(),gantt:zm.optional(),gallery:Dm.optional(),timeline:Om.optional(),chart:Lm.optional(),description:$p.optional().describe(`View description for documentation/tooltips`),sharing:km.optional().describe(`View sharing and access configuration`),rowHeight:wm.optional().describe(`Row height / density setting`),grouping:Em.optional().describe(`Group records by one or more fields`),rowColor:Am.optional().describe(`Color rows based on field value`),hiddenFields:B(I()).optional().describe(`Fields to hide in this specific view`),fieldOrder:B(I()).optional().describe(`Explicit field display order for this view`),rowActions:B(I()).optional().describe(`Actions available for individual row items`),bulkActions:B(I()).optional().describe(`Actions available when multiple rows are selected`),bulkActionDefs:B(U(I(),Yd())).optional().describe(`Rich bulk action definitions (schema-driven, executed via BulkActionDialog)`),virtualScroll:R().optional().describe(`Enable virtual scrolling for large datasets`),conditionalFormatting:B(V({condition:xp.describe(`Predicate (CEL) to evaluate.`),style:U(I(),I()).describe(`CSS styles to apply when condition is true`)})).optional().describe(`Conditional formatting rules for list rows`),inlineEdit:R().optional().describe(`Allow inline editing of records directly in the list view`),exportOptions:B(W([`csv`,`xlsx`,`pdf`,`json`])).optional().describe(`Available export format options`),userActions:Mm.optional().describe(`User action toggles for the view toolbar`),appearance:Nm.optional().describe(`Appearance and visualization configuration`),tabs:B(Pm).optional().describe(`Tab definitions for multi-tab view interface`),addRecord:Fm.optional().describe(`Add record entry point configuration`),showRecordCount:R().optional().describe(`Show record count at the bottom of the list`),allowPrinting:R().optional().describe(`Allow users to print the view`),emptyState:V({title:$p.optional(),message:$p.optional(),icon:I().optional()}).optional().describe(`Empty state configuration when no records found`),aria:em.optional().describe(`ARIA accessibility attributes for the list view`),responsive:pm.optional().describe(`Responsive layout configuration`),performance:mm.optional().describe(`Performance optimization settings`)})),Um=K(()=>V({field:I().describe(`Field name (snake_case)`),label:$p.optional().describe(`Display label override`),placeholder:$p.optional().describe(`Placeholder text`),helpText:$p.optional().describe(`Help/hint text`),readonly:R().optional().describe(`Read-only override`),required:R().optional().describe(`Required override`),hidden:R().optional().describe(`Hidden override`),colSpan:L().int().min(1).max(4).optional().describe(`Column span in grid layout (1-4)`),widget:I().optional().describe(`Custom widget/component name`),dependsOn:I().optional().describe(`Parent field name for cascading`),visibleOn:xp.optional().describe(`Visibility predicate (CEL).`)})),Wm=K(()=>V({label:$p.optional(),collapsible:R().default(!1),collapsed:R().default(!1),columns:H([W([`1`,`2`,`3`,`4`]),G(1),G(2),G(3),G(4)]).default(2).transform(e=>typeof e==`string`?parseInt(e):e),fields:B(H([I(),Um]))})),Gm=K(()=>V({type:W([`simple`,`tabbed`,`wizard`,`split`,`drawer`,`modal`]).default(`simple`),data:vm.optional().describe(`Data source configuration (defaults to "object" provider)`),sections:B(Wm).optional(),groups:B(Wm).optional(),defaultSort:B(V({field:I().describe(`Field name to sort by`),order:W([`asc`,`desc`]).default(`desc`).describe(`Sort direction`)})).optional().describe(`Default sort order for related list views within this form`),sharing:lm.optional().describe(`Public sharing configuration for this form`),submitBehavior:H([V({kind:G(`thank-you`),title:I().optional(),message:I().optional()}),V({kind:G(`redirect`),url:I(),delayMs:L().int().min(0).optional()}),V({kind:G(`continue`)}),V({kind:G(`next-record`)})]).optional().describe(`Post-submit behavior`),aria:em.optional().describe(`ARIA accessibility attributes for the form view`)}));K(()=>V({list:Hm.optional(),form:Gm.optional(),listViews:U(I(),Hm).optional().describe(`Additional named list views`),formViews:U(I(),Gm).optional().describe(`Additional named form views`)}));var Km=W([`get`,`list`,`create`,`update`,`delete`,`upsert`,`bulk`,`aggregate`,`history`,`search`,`restore`,`purge`,`import`,`export`]),qm=V({trackHistory:R().default(!1).describe(`Enable field history tracking for audit compliance`),searchable:R().default(!0).describe(`Index records for global search`),apiEnabled:R().default(!0).describe(`Expose object via automatic APIs`),apiMethods:B(Km).optional().describe(`Whitelist of allowed API operations`),files:R().default(!1).describe(`Enable file attachments and document management`),feeds:R().default(!1).describe(`Enable social feed, comments, and mentions (Chatter-like)`),activities:R().default(!1).describe(`Enable standard tasks and events tracking`),trash:R().default(!0).describe(`Enable soft-delete with restore capability`),mru:R().default(!0).describe(`Track Most Recently Used (MRU) list for users`),clone:R().default(!0).describe(`Allow record deep cloning`)}),Jm=K(()=>V({name:I().optional().describe(`Index name (auto-generated if not provided)`),fields:B(I()).describe(`Fields included in the index`),type:W([`btree`,`hash`,`gin`,`gist`,`fulltext`]).optional().default(`btree`).describe(`Index algorithm type`),unique:R().optional().default(!1).describe(`Whether the index enforces uniqueness`),partial:I().optional().describe(`Partial index condition (SQL WHERE clause for conditional indexes)`)})),Ym=K(()=>V({fields:B(I()).describe(`Fields to index for full-text search weighting`),displayFields:B(I()).optional().describe(`Fields to display in search result cards`),filters:B(I()).optional().describe(`Default filters for search results`)})),Xm=K(()=>V({enabled:R().describe(`Enable multi-tenancy for this object`),strategy:W([`shared`,`isolated`,`hybrid`]).describe(`Tenant isolation strategy: shared (single DB, row-level), isolated (separate DB per tenant), hybrid (mix)`),tenantField:I().default(`tenant_id`).describe(`Field name for tenant identifier`),crossTenantAccess:R().default(!1).describe(`Allow cross-tenant data access (with explicit permission)`)})),Zm=K(()=>V({enabled:R().describe(`Enable soft delete (trash/recycle bin)`),field:I().default(`deleted_at`).describe(`Field name for soft delete timestamp`),cascadeDelete:R().default(!1).describe(`Cascade soft delete to related records`)})),Qm=K(()=>V({enabled:R().describe(`Enable record versioning`),strategy:W([`snapshot`,`delta`,`event-sourcing`]).describe(`Versioning strategy: snapshot (full copy), delta (changes only), event-sourcing (event log)`),retentionDays:L().min(1).optional().describe(`Number of days to retain old versions (undefined = infinite)`),versionField:I().default(`version`).describe(`Field name for version number/timestamp`)})),$m=K(()=>V({enabled:R().describe(`Enable table partitioning`),strategy:W([`range`,`hash`,`list`]).describe(`Partitioning strategy: range (date ranges), hash (consistent hashing), list (predefined values)`),key:I().describe(`Field name to partition by`),interval:I().optional().describe(`Partition interval for range strategy (e.g., "1 month", "1 year")`)}).refine(e=>!(e.strategy===`range`&&!e.interval),{message:`interval is required when strategy is "range"`})),eh=K(()=>V({enabled:R().describe(`Enable Change Data Capture`),events:B(W([`insert`,`update`,`delete`])).describe(`Event types to capture`),destination:I().describe(`Destination endpoint (e.g., "kafka://topic", "webhook://url")`)})),th=K(()=>V({key:I().regex(/^[a-z_][a-z0-9_]*$/,{message:`Field group key must be lowercase snake_case (e.g., "contact_info", "billing", "system")`}).describe(`Group machine key (snake_case). Referenced by Field.group.`),label:I().describe(`Group display label`),icon:I().optional().describe(`Icon name (Lucide/Material) for the group header`),description:I().optional().describe(`Optional description shown under the group header`),defaultExpanded:R().optional().default(!0).describe(`Whether the group is expanded by default`),visibleOn:xp.optional().describe(`Visibility predicate (CEL); group is hidden when FALSE.`)})),nh=V({name:I().regex(/^[a-z_][a-z0-9_]*$/).describe(`Machine unique key (snake_case). Immutable.`),label:I().optional().describe(`Human readable singular label (e.g. "Account")`),pluralLabel:I().optional().describe(`Human readable plural label (e.g. "Accounts")`),description:I().optional().describe(`Developer documentation / description`),icon:I().optional().describe(`Icon name (Lucide/Material) for UI representation`),tags:B(I()).optional().describe(`Categorization tags (e.g. "sales", "system", "reference")`),active:R().optional().default(!0).describe(`Is the object active and usable`),isSystem:R().optional().default(!1).describe(`Is system object (protected from deletion)`),abstract:R().optional().default(!1).describe(`Is abstract base object (cannot be instantiated)`),managedBy:W([`platform`,`config`,`system`,`append-only`,`better-auth`]).optional().describe(`Lifecycle bucket — platform (user CRUD) | config (admin authored) | system (engine-managed) | append-only (audit) | better-auth (identity). UI clients honour the resolved affordance matrix.`),userActions:V({create:R().optional().describe(`Show generic "New" button.`),import:R().optional().describe(`Show CSV import wizard entry.`),edit:R().optional().describe(`Allow inline / form edit of existing rows.`),delete:R().optional().describe(`Show row-level delete + bulk delete.`),exportCsv:R().optional().describe(`Show CSV export entry.`)}).optional().describe(`Per-object override of the resolved CRUD affordance matrix.`),systemFields:H([G(!1),V({tenant:R().optional().describe(`Inject organization_id (multi-tenant only). Default true.`),owner:R().optional().describe(`Reserved for future owner_id auto-injection.`),audit:R().optional().describe(`Reserved for future created_by/updated_by auto-injection.`)})]).optional().describe(`Opt out of, or selectively disable, registry-level system-field auto-injection.`),datasource:I().optional().default(`default`).describe(`Target Datasource ID. "default" is the primary DB.`),fields:U(I().regex(/^[a-z_][a-z0-9_]*$/,{message:`Field names must be lowercase snake_case (e.g., "first_name", "company", "annual_revenue")`}),Ip).describe(`Field definitions map. Keys must be snake_case identifiers.`),indexes:B(Jm).optional().describe(`Database performance indexes`),fieldGroups:B(th).refine(e=>new Set(e.map(e=>e.key)).size===e.length,{message:`fieldGroups[].key must be unique within an object`}).optional().describe(`Ordered list of field groups (array order = display order). See ObjectFieldGroupSchema.`),tenancy:Xm.optional().describe(`Multi-tenancy configuration for SaaS applications`),softDelete:Zm.optional().describe(`Soft delete (trash/recycle bin) configuration`),versioning:Qm.optional().describe(`Record versioning and history tracking configuration`),partitioning:$m.optional().describe(`Table partitioning configuration for performance`),cdc:eh.optional().describe(`Change Data Capture (CDC) configuration for real-time data streaming`),validations:B(Kp).optional().describe(`Object-level validation rules`),stateMachines:U(I(),Qp).optional().describe(`Named state machines for parallel lifecycles (e.g., status, payment, approval)`),displayNameField:I().optional().describe(`Field to use as the record display name (e.g., "name", "title"). Defaults to "name" if present.`),recordName:V({type:W([`text`,`autonumber`]).describe(`Record name type: text (user-entered) or autonumber (system-generated)`),displayFormat:I().optional().describe(`Auto-number format pattern (e.g., "CASE-{0000}", "INV-{YYYY}-{0000}")`),startNumber:L().int().min(0).optional().describe(`Starting number for autonumber (default: 1)`)}).optional().describe(`Record name generation configuration (Salesforce pattern)`),titleFormat:Sp.optional().describe(`Title template — supports {{record.field}} interpolation. Overrides displayNameField.`),compactLayout:B(I()).optional().describe(`Primary fields for hover/cards/lookups`),listViews:U(I(),Hm).optional().describe(`Built-in named list views (segmented tabs) shipped with the object schema`),defaultDetailForm:I().optional().describe(`Name of the default FormView for record detail / edit screens`),search:Ym.optional().describe(`Search engine configuration`),enable:qm.optional().describe(`Enabled system features modules`),recordTypes:B(I()).optional().describe(`Record type names for this object`),sharingModel:W([`private`,`read`,`read_write`,`full`]).optional().describe(`Default sharing model`),keyPrefix:I().max(5).optional().describe(`Short prefix for record IDs (e.g., "001" for Account)`),detail:V({renderViaSchema:R().optional().describe(`Opt this object out of the schema-driven detail renderer`),hideReferenceRail:R().optional().describe(`Suppress the right-hand reference-rail on the detail page`),hideRelatedTab:R().optional().describe(`Suppress the Related tab on the detail page`)}).passthrough().optional().describe(`Detail-page UI hints consumed by @object-ui/plugin-detail synth`),actions:B(cm).optional().describe(`Actions associated with this object (auto-populated from top-level actions via objectName)`)});function rh(e){return e.split(`_`).map(e=>e.charAt(0).toUpperCase()+e.slice(1)).join(` `)}K(()=>Object.assign(nh,{create:e=>{let t={...e,label:e.label??rh(e.name)};return nh.parse(t)}})),W([`own`,`extend`]),K(()=>V({extend:I().describe(`Target object name (FQN) to extend`),fields:U(I(),Ip).optional().describe(`Fields to add/override`),label:I().optional().describe(`Override label for the extended object`),pluralLabel:I().optional().describe(`Override plural label for the extended object`),description:I().optional().describe(`Override description for the extended object`),validations:B(Kp).optional().describe(`Additional validation rules to merge into the target object`),indexes:B(Jm).optional().describe(`Additional indexes to merge into the target object`),priority:L().int().min(0).max(999).default(200).describe(`Merge priority (higher = applied later)`)}));var ih=W([`beforeFind`,`afterFind`,`beforeFindOne`,`afterFindOne`,`beforeCount`,`afterCount`,`beforeAggregate`,`afterAggregate`,`beforeInsert`,`afterInsert`,`beforeUpdate`,`afterUpdate`,`beforeDelete`,`afterDelete`,`beforeUpdateMany`,`afterUpdateMany`,`beforeDeleteMany`,`afterDeleteMany`]);K(()=>V({name:I().regex(/^[a-z_][a-z0-9_]*$/).describe(`Hook unique name (snake_case)`),label:I().optional().describe(`Description of what this hook does`),object:H([I(),B(I())]).describe(`Target object(s)`),events:B(ih).describe(`Lifecycle events`),handler:H([I(),Uf(e=>typeof e==`function`,{message:`Expected function`})]).optional().describe("Handler function name (string, post-build) or inline function (pre-build) — DEPRECATED, prefer `body`"),body:im.optional().describe(`Hook body — expression (L1) or sandboxed JS (L2)`),priority:L().default(100).describe(`Execution priority`),async:R().default(!1).describe(`Run specifically as fire-and-forget`),condition:xp.optional().describe('Predicate (CEL); hook runs only when TRUE. e.g. P`record.status == "closed" && record.amount > 1000`'),description:I().optional().describe(`Human-readable description of what this hook does`),retryPolicy:V({maxRetries:L().default(3).describe(`Maximum retry attempts on failure`),backoffMs:L().default(1e3).describe(`Backoff delay between retries in milliseconds`)}).optional().describe(`Retry policy for failed hook executions`),timeout:L().optional().describe(`Maximum execution time in milliseconds before the hook is aborted`),onError:W([`abort`,`log`]).default(`abort`).describe(`Error handling strategy`)})),K(()=>V({id:I().optional().describe(`Unique execution ID for tracing`),object:I(),event:ih,input:U(I(),z()).describe(`Mutable input parameters`),result:z().optional().describe(`Operation result (After hooks only)`),previous:U(I(),z()).optional().describe(`Record state before operation`),session:V({userId:I().optional(),tenantId:I().optional(),roles:B(I()).optional(),accessToken:I().optional(),isSystem:R().optional().describe(`True when the call was made with an elevated system context (engine self-writes)`)}).optional().describe(`Current session context`),transaction:z().optional().describe(`Database transaction handle`),ql:z().describe(`ObjectQL Engine Reference`),api:z().optional().describe(`Cross-object data access (ScopedContext)`),user:V({id:I().optional(),name:I().optional(),email:I().optional()}).optional().describe(`Current user info shortcut`)}));var ah=W([`none`,`constant`,`lookup`,`split`,`join`,`javascript`,`map`]),oh=K(()=>V({source:H([I(),B(I())]).describe(`Source column header(s)`),target:H([I(),B(I())]).describe(`Target object field(s)`),transform:ah.default(`none`),params:V({value:z().optional(),object:I().optional(),fromField:I().optional(),toField:I().optional(),autoCreate:R().optional(),valueMap:U(I(),z()).optional(),separator:I().optional()}).optional()}));K(()=>V({name:_p.describe(`Mapping unique name (lowercase snake_case)`),label:I().optional(),sourceFormat:W([`csv`,`json`,`xml`,`sql`]).default(`csv`),targetObject:I().describe(`Target Object Name`),fieldMapping:B(oh),mode:W([`insert`,`update`,`upsert`]).default(`insert`),upsertKey:B(I()).optional().describe(`Fields to match for upsert (e.g. email)`),extractQuery:hp.optional().describe(`Query to run for export only`),errorPolicy:W([`skip`,`abort`,`retry`]).default(`skip`),batchSize:L().default(1e3)}));var sh=K(()=>V({userId:I().optional(),tenantId:I().optional(),roles:B(I()).default([]),permissions:B(I()).default([]),isSystem:R().default(!1),accessToken:I().optional(),transaction:z().optional(),traceId:I().optional()})),ch=K(()=>H([U(I(),z()),Yf]).describe(`Data Engine query filter conditions`)),lh=K(()=>H([U(I(),W([`asc`,`desc`])),U(I(),H([G(1),G(-1)])),B(tp)]).describe(`Sort order definition`)),uh=K(()=>V({context:sh.optional()})),dh=K(()=>uh.extend({where:H([U(I(),z()),Yf]).optional(),fields:B(fp).optional(),orderBy:B(tp).optional(),limit:L().optional(),offset:L().optional(),top:L().optional(),cursor:U(I(),z()).optional(),search:pp.optional(),expand:Lf(()=>U(I(),hp)).optional(),distinct:R().optional()}).describe(`QueryAST-aligned query options for IDataEngine.find() operations`));K(()=>uh.extend({filter:ch.optional(),select:B(I()).optional(),sort:lh.optional(),limit:L().int().min(1).optional(),skip:L().int().min(0).optional(),top:L().int().min(1).optional(),populate:B(I()).optional()}).describe(`Query options for IDataEngine.find() operations`));var fh=K(()=>uh.extend({returning:R().default(!0).optional()}).describe(`Options for DataEngine.insert operations`)),ph=K(()=>uh.extend({where:H([U(I(),z()),Yf]).optional(),upsert:R().default(!1).optional(),multi:R().default(!1).optional(),returning:R().default(!1).optional()}).describe(`QueryAST-aligned options for DataEngine.update operations`));K(()=>uh.extend({filter:ch.optional(),upsert:R().default(!1).optional(),multi:R().default(!1).optional(),returning:R().default(!1).optional()}).describe(`Options for DataEngine.update operations`));var mh=K(()=>uh.extend({where:H([U(I(),z()),Yf]).optional(),multi:R().default(!1).optional()}).describe(`QueryAST-aligned options for DataEngine.delete operations`));K(()=>uh.extend({filter:ch.optional(),multi:R().default(!1).optional()}).describe(`Options for DataEngine.delete operations`));var hh=K(()=>uh.extend({where:H([U(I(),z()),Yf]).optional(),groupBy:B(I()).optional(),aggregations:B(ap).optional()}).describe(`QueryAST-aligned options for DataEngine.aggregate operations`));K(()=>uh.extend({filter:ch.optional(),groupBy:B(I()).optional(),aggregations:B(V({field:I(),method:W([`count`,`sum`,`avg`,`min`,`max`,`count_distinct`]),alias:I().optional()})).optional()}).describe(`Options for DataEngine.aggregate operations`));var gh=K(()=>uh.extend({where:H([U(I(),z()),Yf]).optional()}).describe(`QueryAST-aligned options for DataEngine.count operations`));K(()=>uh.extend({filter:ch.optional()}).describe(`Options for DataEngine.count operations`)),K(()=>V({find:Vf().input(ff([I(),dh.optional()])).output(zf(B(z()))),findOne:Vf().input(ff([I(),dh.optional()])).output(zf(z())),insert:Vf().input(ff([I(),H([U(I(),z()),B(U(I(),z()))]),fh.optional()])).output(zf(z())),update:Vf().input(ff([I(),U(I(),z()),ph.optional()])).output(zf(z())),delete:Vf().input(ff([I(),mh.optional()])).output(zf(z())),count:Vf().input(ff([I(),gh.optional()])).output(zf(L())),aggregate:Vf().input(ff([I(),hh])).output(zf(B(z())))}).describe(`Standard Data Engine Contract`));var _h={filter:ch.optional()},vh=dh.extend({..._h,select:B(I()).optional(),sort:lh.optional(),skip:L().int().min(0).optional(),populate:B(I()).optional()}),yh=K(()=>V({method:G(`find`),object:I(),query:vh.optional()})),bh=K(()=>V({method:G(`findOne`),object:I(),query:vh.optional()})),xh=K(()=>V({method:G(`insert`),object:I(),data:H([U(I(),z()),B(U(I(),z()))]),options:fh.optional()})),Sh=K(()=>V({method:G(`update`),object:I(),data:U(I(),z()),id:H([I(),L()]).optional().describe(`ID for single update, or use where in options`),options:ph.extend(_h).optional()})),Ch=K(()=>V({method:G(`delete`),object:I(),id:H([I(),L()]).optional().describe(`ID for single delete, or use where in options`),options:mh.extend(_h).optional()})),wh=K(()=>V({method:G(`count`),object:I(),query:gh.extend(_h).optional()})),Th=K(()=>V({method:G(`aggregate`),object:I(),query:hh.extend(_h)})),Eh=K(()=>V({method:G(`execute`),command:z(),options:U(I(),z()).optional()})),Dh=K(()=>V({method:G(`vectorFind`),object:I(),vector:B(L()),where:H([U(I(),z()),Yf]).optional(),fields:B(I()).optional(),limit:L().int().default(5).optional(),threshold:L().optional()})),Oh=K(()=>V({method:G(`batch`),requests:B(cf(`method`,[yh,bh,xh,Sh,Ch,wh,Th,Eh,Dh])),transaction:R().default(!0).optional()}));K(()=>cf(`method`,[yh,bh,xh,Sh,Ch,wh,Th,Oh,Eh,Dh]).describe(`Virtual ObjectQL Request Protocol`)),W([`count`,`sum`,`avg`,`min`,`max`,`count_distinct`,`percentile`,`median`,`stddev`,`variance`]).describe(`Standard aggregation functions`);var kh=W([`asc`,`desc`]).describe(`Sort order direction`);K(()=>V({field:I().describe(`Field name to sort by`),order:kh.describe(`Sort direction`)}).describe(`Sort field and direction pair`)),W([`insert`,`update`,`delete`,`upsert`]).describe(`Data mutation event types`);var Ah=W([`read_uncommitted`,`read_committed`,`repeatable_read`,`serializable`,`snapshot`]).describe(`Transaction isolation levels (snake_case standard)`);W([`lru`,`lfu`,`ttl`,`fifo`]).describe(`Cache eviction strategy`);var jh=K(()=>V({transaction:z().optional().describe(`Transaction handle`),timeout:L().optional().describe(`Timeout in ms`),skipCache:R().optional().describe(`Bypass cache`),traceContext:U(I(),I()).optional().describe(`OpenTelemetry context or request ID`),tenantId:I().optional().describe(`Tenant Isolation identifier`)})),Mh=K(()=>V({create:R().default(!0).describe(`Supports CREATE operations`),read:R().default(!0).describe(`Supports READ operations`),update:R().default(!0).describe(`Supports UPDATE operations`),delete:R().default(!0).describe(`Supports DELETE operations`),bulkCreate:R().default(!1).describe(`Supports bulk CREATE operations`),bulkUpdate:R().default(!1).describe(`Supports bulk UPDATE operations`),bulkDelete:R().default(!1).describe(`Supports bulk DELETE operations`),transactions:R().default(!1).describe(`Supports ACID transactions`),savepoints:R().default(!1).describe(`Supports transaction savepoints`),isolationLevels:B(Ah).optional().describe(`Supported isolation levels`),queryFilters:R().default(!0).describe(`Supports WHERE clause filtering`),queryAggregations:R().default(!1).describe(`Supports GROUP BY and aggregation functions`),queryDateGranularity:U(rp,R()).optional().describe(`Per-granularity native date bucketing (day/week/month/quarter/year). Missing keys fall back to in-memory bucketing.`),querySorting:R().default(!0).describe(`Supports ORDER BY sorting`),queryPagination:R().default(!0).describe(`Supports LIMIT/OFFSET pagination`),queryWindowFunctions:R().default(!1).describe(`Supports window functions with OVER clause`),querySubqueries:R().default(!1).describe(`Supports subqueries`),queryCTE:R().default(!1).describe(`Supports Common Table Expressions (WITH clause)`),joins:R().default(!1).describe(`Supports SQL joins`),fullTextSearch:R().default(!1).describe(`Supports full-text search`),jsonQuery:R().default(!1).describe(`Supports JSON field querying`),geospatialQuery:R().default(!1).describe(`Supports geospatial queries`),streaming:R().default(!1).describe(`Supports result streaming (cursors/iterators)`),jsonFields:R().default(!1).describe(`Supports JSON field types`),arrayFields:R().default(!1).describe(`Supports array field types`),vectorSearch:R().default(!1).describe(`Supports vector embeddings and similarity search`),schemaSync:R().default(!1).describe(`Supports automatic schema synchronization`),batchSchemaSync:R().default(!1).describe(`Supports batched schema sync to reduce schema DDL round-trips`),migrations:R().default(!1).describe(`Supports database migrations`),indexes:R().default(!1).describe(`Supports index creation and management`),connectionPooling:R().default(!1).describe(`Supports connection pooling`),preparedStatements:R().default(!1).describe(`Supports prepared statements (SQL injection prevention)`),queryCache:R().default(!1).describe(`Supports query result caching`)}));K(()=>V({name:I().describe(`Driver unique name`),version:I().describe(`Driver version`),supports:Mh,connect:Vf().input(ff([])).output(zf(ef())).describe(`Establish connection`),disconnect:Vf().input(ff([])).output(zf(ef())).describe(`Close connection`),checkHealth:Vf().input(ff([])).output(zf(R())).describe(`Health check`),getPoolStats:Vf().input(ff([])).output(V({total:L(),idle:L(),active:L(),waiting:L()}).optional()).optional().describe(`Get connection pool statistics`),execute:Vf().input(ff([z(),B(z()).optional(),jh.optional()])).output(zf(z())).describe(`Execute raw command`),find:Vf().input(ff([I(),hp,jh.optional()])).output(zf(B(U(I(),z())))).describe(`Find records`),findStream:Vf().input(ff([I(),hp,jh.optional()])).output(z()).describe(`Stream records (AsyncIterable)`),findOne:Vf().input(ff([I(),hp,jh.optional()])).output(zf(U(I(),z()).nullable())).describe(`Find one record`),create:Vf().input(ff([I(),U(I(),z()),jh.optional()])).output(zf(U(I(),z()))).describe(`Create record`),update:Vf().input(ff([I(),I().or(L()),U(I(),z()),jh.optional()])).output(zf(U(I(),z()))).describe(`Update record`),upsert:Vf().input(ff([I(),U(I(),z()),B(I()).optional(),jh.optional()])).output(zf(U(I(),z()))).describe(`Upsert record`),delete:Vf().input(ff([I(),I().or(L()),jh.optional()])).output(zf(R())).describe(`Delete record`),count:Vf().input(ff([I(),hp.optional(),jh.optional()])).output(zf(L())).describe(`Count records`),bulkCreate:Vf().input(ff([I(),B(U(I(),z())),jh.optional()])).output(zf(B(U(I(),z())))),bulkUpdate:Vf().input(ff([I(),B(V({id:I().or(L()),data:U(I(),z())})),jh.optional()])).output(zf(B(U(I(),z())))),bulkDelete:Vf().input(ff([I(),B(I().or(L())),jh.optional()])).output(zf(ef())),updateMany:Vf().input(ff([I(),hp,U(I(),z()),jh.optional()])).output(zf(L())).optional(),deleteMany:Vf().input(ff([I(),hp,jh.optional()])).output(zf(L())).optional(),beginTransaction:Vf().input(ff([V({isolationLevel:Ah.optional()}).optional()])).output(zf(z())).describe(`Start transaction`),commit:Vf().input(ff([z()])).output(zf(ef())).describe(`Commit transaction`),rollback:Vf().input(ff([z()])).output(zf(ef())).describe(`Rollback transaction`),syncSchema:Vf().input(ff([I(),z(),jh.optional()])).output(zf(ef())).describe(`Sync object schema to DB`),syncSchemasBatch:Vf().input(ff([B(V({object:I(),schema:z()})),jh.optional()])).output(zf(ef())).optional().describe(`Batch sync multiple schemas in one round-trip`),dropTable:Vf().input(ff([I(),jh.optional()])).output(zf(ef())),explain:Vf().input(ff([I(),hp,jh.optional()])).output(zf(z())).optional()}));var Nh=K(()=>V({min:L().min(0).default(2).describe(`Minimum number of connections in pool`),max:L().min(1).default(10).describe(`Maximum number of connections in pool`),idleTimeoutMillis:L().min(0).default(3e4).describe(`Time in ms before idle connection is closed`),connectionTimeoutMillis:L().min(0).default(5e3).describe(`Time in ms to wait for available connection`)})),Ph=K(()=>V({name:I().describe(`Driver instance name`),type:W([`sql`,`nosql`,`cache`,`search`,`graph`,`timeseries`]).describe(`Driver type category`),capabilities:Mh.describe(`Driver capability flags`),connectionString:I().optional().describe(`Database connection string (driver-specific format)`),poolConfig:Nh.optional().describe(`Connection pool configuration`)})),Fh=K(()=>W([`postgresql`,`mysql`,`sqlite`,`mssql`,`oracle`,`mariadb`])),Ih=K(()=>V({text:I().describe(`SQL type for text fields (e.g., VARCHAR, TEXT)`),number:I().describe(`SQL type for number fields (e.g., NUMERIC, DECIMAL, INT)`),boolean:I().describe(`SQL type for boolean fields (e.g., BOOLEAN, BIT)`),date:I().describe(`SQL type for date fields (e.g., DATE)`),datetime:I().describe(`SQL type for datetime fields (e.g., TIMESTAMP, DATETIME)`),json:I().optional().describe(`SQL type for JSON fields (e.g., JSON, JSONB)`),uuid:I().optional().describe(`SQL type for UUID fields (e.g., UUID, CHAR(36))`),binary:I().optional().describe(`SQL type for binary fields (e.g., BLOB, BYTEA)`)})),Lh=K(()=>V({rejectUnauthorized:R().default(!0).describe(`Reject connections with invalid certificates`),ca:I().optional().describe(`CA certificate file path or content`),cert:I().optional().describe(`Client certificate file path or content`),key:I().optional().describe(`Client private key file path or content`)}).refine(e=>e.cert!==void 0==(e.key!==void 0),{message:`Client certificate (cert) and private key (key) must be provided together`}));K(()=>Ph.extend({type:G(`sql`).describe(`Driver type must be "sql"`),dialect:Fh.describe(`SQL database dialect`),dataTypeMapping:Ih.describe(`SQL data type mapping configuration`),ssl:R().default(!1).describe(`Enable SSL/TLS connection`),sslConfig:Lh.optional().describe(`SSL/TLS configuration (required when ssl is true)`)}).refine(e=>!(e.ssl&&!e.sslConfig),{message:`sslConfig is required when ssl is true`}));var Rh=K(()=>W([`mongodb`,`couchdb`,`dynamodb`,`cassandra`,`redis`,`elasticsearch`,`neo4j`,`orientdb`]));K(()=>W([`find`,`findOne`,`insert`,`update`,`delete`,`aggregate`,`mapReduce`,`count`,`distinct`,`createIndex`,`dropIndex`]));var zh=K(()=>W([`all`,`quorum`,`one`,`local_quorum`,`each_quorum`,`eventual`])),Bh=K(()=>W([`single`,`compound`,`unique`,`text`,`geospatial`,`hashed`,`ttl`,`sparse`])),Vh=K(()=>V({enabled:R().default(!1).describe(`Enable sharding`),shardKey:I().optional().describe(`Field to use as shard key`),shardingStrategy:W([`hash`,`range`,`zone`]).optional().describe(`Sharding strategy`),numShards:L().int().positive().optional().describe(`Number of shards`)})),Hh=K(()=>V({enabled:R().default(!1).describe(`Enable replication`),replicaSetName:I().optional().describe(`Replica set name`),replicas:L().int().positive().optional().describe(`Number of replicas`),readPreference:W([`primary`,`primaryPreferred`,`secondary`,`secondaryPreferred`,`nearest`]).optional().describe(`Read preference for replica set`),writeConcern:W([`majority`,`acknowledged`,`unacknowledged`]).optional().describe(`Write concern level`)})),Uh=K(()=>V({enabled:R().default(!1).describe(`Enable schema validation`),validationLevel:W([`strict`,`moderate`,`off`]).optional().describe(`Validation strictness`),validationAction:W([`error`,`warn`]).optional().describe(`Action on validation failure`),jsonSchema:U(I(),z()).optional().describe(`JSON Schema for validation`)})),Wh=K(()=>V({text:I().describe(`NoSQL type for text fields`),number:I().describe(`NoSQL type for number fields`),boolean:I().describe(`NoSQL type for boolean fields`),date:I().describe(`NoSQL type for date fields`),datetime:I().describe(`NoSQL type for datetime fields`),json:I().optional().describe(`NoSQL type for JSON/object fields`),uuid:I().optional().describe(`NoSQL type for UUID fields`),binary:I().optional().describe(`NoSQL type for binary fields`),array:I().optional().describe(`NoSQL type for array fields`),objectId:I().optional().describe(`NoSQL type for ObjectID fields (MongoDB)`),geopoint:I().optional().describe(`NoSQL type for geospatial point fields`)}));K(()=>Ph.extend({type:G(`nosql`).describe(`Driver type must be "nosql"`),databaseType:Rh.describe(`Specific NoSQL database type`),dataTypeMapping:Wh.describe(`NoSQL data type mapping configuration`),consistency:zh.optional().describe(`Consistency level for operations`),replication:Hh.optional().describe(`Replication configuration`),sharding:Vh.optional().describe(`Sharding configuration`),schemaValidation:Uh.optional().describe(`Document schema validation`),region:I().optional().describe(`AWS region (for managed NoSQL services)`),accessKeyId:I().optional().describe(`AWS access key ID`),secretAccessKey:I().optional().describe(`AWS secret access key`),ttlField:I().optional().describe(`Field name for TTL (auto-deletion)`),maxDocumentSize:L().int().positive().optional().describe(`Maximum document size in bytes`),collectionPrefix:I().optional().describe(`Prefix for collection/table names`)}));var Gh=K(()=>V({consistency:zh.optional().describe(`Consistency level override`),readFromSecondary:R().optional().describe(`Allow reading from secondary replicas`),projection:U(I(),H([G(0),G(1)])).optional().describe(`Field projection`),timeout:L().int().positive().optional().describe(`Query timeout (ms)`),useCursor:R().optional().describe(`Use cursor instead of loading all results`),batchSize:L().int().positive().optional().describe(`Cursor batch size`),profile:R().optional().describe(`Enable query profiling`),hint:I().optional().describe(`Index hint for query optimization`)})),Kh=K(()=>V({operator:I().describe(`Aggregation operator (e.g., $match, $group, $sort)`),options:U(I(),z()).describe(`Stage-specific options`)}));K(()=>V({collection:I().describe(`Collection/table name`),stages:B(Kh).describe(`Aggregation pipeline stages`),options:Gh.optional().describe(`Query options`)})),K(()=>V({name:I().describe(`Index name`),type:Bh.describe(`Index type`),fields:B(V({field:I().describe(`Field name`),order:W([`asc`,`desc`,`text`,`2dsphere`]).optional().describe(`Index order or type`)})).describe(`Fields to index`),unique:R().default(!1).describe(`Enforce uniqueness`),sparse:R().default(!1).describe(`Sparse index`),expireAfterSeconds:L().int().positive().optional().describe(`TTL in seconds`),partialFilterExpression:U(I(),z()).optional().describe(`Partial index filter`),background:R().default(!1).describe(`Create index in background`)})),K(()=>V({readConcern:W([`local`,`majority`,`linearizable`,`snapshot`]).optional().describe(`Read concern level`),writeConcern:W([`majority`,`acknowledged`,`unacknowledged`]).optional().describe(`Write concern level`),readPreference:W([`primary`,`primaryPreferred`,`secondary`,`secondaryPreferred`,`nearest`]).optional().describe(`Read preference`),maxCommitTimeMS:L().int().positive().optional().describe(`Transaction commit timeout (ms)`)}));var qh=W([`insert`,`update`,`upsert`,`replace`,`ignore`]),Jh=K(()=>V({object:I().regex(/^[a-z_][a-z0-9_]*$/).describe(`Target Object Name`),externalId:I().default(`name`).describe(`Field match for uniqueness check`),mode:qh.default(`upsert`).describe(`Conflict resolution strategy`),env:B(W([`prod`,`dev`,`test`])).default([`prod`,`dev`,`test`]).describe(`Applicable environments`),records:B(U(I(),z())).describe(`Data records`)})),Yh=K(()=>V({field:I().describe(`Source field name containing the reference value`),targetObject:I().regex(/^[a-z_][a-z0-9_]*$/).describe(`Target object name (snake_case)`),targetField:I().default(`name`).describe(`Field on target object used for matching`),fieldType:W([`lookup`,`master_detail`]).describe(`Relationship field type`)}).describe(`Describes how a field reference is resolved during seed loading`)),Xh=K(()=>V({object:I().regex(/^[a-z_][a-z0-9_]*$/).describe(`Object name (snake_case)`),dependsOn:B(I()).describe(`Objects this object depends on`),references:B(Yh).describe(`Field-level reference details`)}).describe(`Object node in the seed data dependency graph`)),Zh=K(()=>V({nodes:B(Xh).describe(`All objects in the dependency graph`),insertOrder:B(I()).describe(`Topologically sorted insert order`),circularDependencies:B(B(I())).default([]).describe(`Circular dependency chains (e.g., [["a", "b", "a"]])`)}).describe(`Complete object dependency graph for seed data loading`)),Qh=K(()=>V({sourceObject:I().describe(`Object with the broken reference`),field:I().describe(`Field name with unresolved reference`),targetObject:I().describe(`Target object searched for the reference`),targetField:I().describe(`ExternalId field used for matching`),attemptedValue:z().describe(`Value that failed to resolve`),recordIndex:L().int().min(0).describe(`Index of the record in the dataset`),message:I().describe(`Human-readable error description`)}).describe(`Actionable error for a failed reference resolution`)),$h=K(()=>V({dryRun:R().default(!1).describe(`Validate references without writing data`),haltOnError:R().default(!1).describe(`Stop on first reference resolution error`),multiPass:R().default(!0).describe(`Enable multi-pass loading for circular dependencies`),defaultMode:qh.default(`upsert`).describe(`Default conflict resolution strategy`),batchSize:L().int().min(1).default(1e3).describe(`Maximum records per batch insert/upsert`),transaction:R().default(!1).describe(`Wrap entire load in a transaction (all-or-nothing)`),env:W([`prod`,`dev`,`test`]).optional().describe(`Only load datasets matching this environment`),organizationId:I().min(1).optional().describe(`Target organization id for per-tenant seed replay`)}).describe(`Seed data loader configuration`)),eg=K(()=>V({object:I().describe(`Object that was loaded`),mode:qh.describe(`Import mode used`),inserted:L().int().min(0).describe(`Records inserted`),updated:L().int().min(0).describe(`Records updated`),skipped:L().int().min(0).describe(`Records skipped`),errored:L().int().min(0).describe(`Records with errors`),total:L().int().min(0).describe(`Total records in dataset`),referencesResolved:L().int().min(0).describe(`References resolved via externalId`),referencesDeferred:L().int().min(0).describe(`References deferred to second pass`),errors:B(Qh).default([]).describe(`Reference resolution errors`)}).describe(`Result of loading a single dataset`));K(()=>V({success:R().describe(`Overall success status`),dryRun:R().describe(`Whether this was a dry-run`),dependencyGraph:Zh.describe(`Object dependency graph`),results:B(eg).describe(`Per-object load results`),errors:B(Qh).describe(`All reference resolution errors`),summary:V({objectsProcessed:L().int().min(0).describe(`Total objects processed`),totalRecords:L().int().min(0).describe(`Total records across all objects`),totalInserted:L().int().min(0).describe(`Total records inserted`),totalUpdated:L().int().min(0).describe(`Total records updated`),totalSkipped:L().int().min(0).describe(`Total records skipped`),totalErrored:L().int().min(0).describe(`Total records with errors`),totalReferencesResolved:L().int().min(0).describe(`Total references resolved`),totalReferencesDeferred:L().int().min(0).describe(`Total references deferred`),circularDependencyCount:L().int().min(0).describe(`Circular dependency chains detected`),durationMs:L().min(0).describe(`Load duration in milliseconds`)}).describe(`Summary statistics`)}).describe(`Complete seed loader result`)),K(()=>V({datasets:B(Jh).min(1).describe(`Datasets to load`),config:$h.default(()=>$h.parse({})).describe(`Loader configuration`)}).describe(`Seed loader request with datasets and configuration`));var tg=K(()=>V({versionNumber:L().describe(`Version number`),createdAt:L().describe(`Creation timestamp`),createdBy:I().describe(`Creator user ID`),size:L().describe(`File size in bytes`),checksum:I().describe(`File checksum`),downloadUrl:I().url().describe(`Download URL`),isLatest:R().optional().default(!1).describe(`Is latest version`)})),ng=K(()=>V({id:I().describe(`Template ID`),name:I().describe(`Template name`),description:I().optional().describe(`Template description`),fileUrl:I().url().describe(`Template file URL`),fileType:I().describe(`File MIME type`),placeholders:B(V({key:I().describe(`Placeholder key`),label:I().describe(`Placeholder label`),type:W([`text`,`number`,`date`,`image`]).describe(`Placeholder type`),required:R().optional().default(!1).describe(`Is required`)})).describe(`Template placeholders`)})),rg=K(()=>V({provider:W([`docusign`,`adobe-sign`,`hellosign`,`custom`]).describe(`E-signature provider`),enabled:R().optional().default(!1).describe(`E-signature enabled`),signers:B(V({email:I().email().describe(`Signer email`),name:I().describe(`Signer name`),role:I().describe(`Signer role`),order:L().describe(`Signing order`)})).describe(`Document signers`),expirationDays:L().optional().default(30).describe(`Expiration days`),reminderDays:L().optional().default(7).describe(`Reminder interval days`)}));K(()=>V({id:I().describe(`Document ID`),name:I().describe(`Document name`),description:I().optional().describe(`Document description`),fileType:I().describe(`File MIME type`),fileSize:L().describe(`File size in bytes`),category:I().optional().describe(`Document category`),tags:B(I()).optional().describe(`Document tags`),versioning:V({enabled:R().describe(`Versioning enabled`),versions:B(tg).describe(`Version history`),majorVersion:L().describe(`Major version`),minorVersion:L().describe(`Minor version`)}).optional().describe(`Version control`),template:ng.optional().describe(`Document template`),eSignature:rg.optional().describe(`E-signature config`),access:V({isPublic:R().optional().default(!1).describe(`Public access`),sharedWith:B(I()).optional().describe(`Shared with`),expiresAt:L().optional().describe(`Access expiration`)}).optional().describe(`Access control`),metadata:U(I(),z()).optional().describe(`Custom metadata`)}));var ig=K(()=>cf(`type`,[V({type:G(`constant`),value:z().describe(`Constant value to use`)}).describe(`Set a constant value`),V({type:G(`cast`),targetType:W([`string`,`number`,`boolean`,`date`]).describe(`Target data type`)}).describe(`Cast to a specific data type`),V({type:G(`lookup`),table:I().describe(`Lookup table name`),keyField:I().describe(`Field to match on`),valueField:I().describe(`Field to retrieve`)}).describe(`Lookup value from another table`),V({type:G(`javascript`),expression:xp.describe(`JS expression (dialect="js" recommended). e.g. value.toUpperCase()`)}).describe(`Custom JavaScript transformation`),V({type:G(`map`),mappings:U(I(),z()).describe(`Value mappings (e.g., {"Active": "active"})`)}).describe(`Map values using a dictionary`)])),ag=K(()=>V({source:I().describe(`Source field name`),target:I().describe(`Target field name`),transform:ig.optional().describe(`Transformation to apply`),defaultValue:z().optional().describe(`Default if source is null/undefined`)})),og=K(()=>V({id:I().describe(`Data source ID`),name:I().describe(`Data source name`),type:W([`odata`,`rest-api`,`graphql`,`custom`]).describe(`Protocol type`),endpoint:I().url().describe(`API endpoint URL`),authentication:V({type:W([`oauth2`,`api-key`,`basic`,`none`]).describe(`Auth type`),config:U(I(),z()).describe(`Auth configuration`)}).describe(`Authentication`)})),sg=K(()=>ag.extend({type:I().optional().describe(`Field type`),readonly:R().optional().default(!0).describe(`Read-only field`)}));K(()=>V({fieldName:I().describe(`Field name`),dataSource:og.describe(`External data source`),query:V({endpoint:I().describe(`Query endpoint path`),method:W([`GET`,`POST`]).optional().default(`GET`).describe(`HTTP method`),parameters:U(I(),z()).optional().describe(`Query parameters`)}).describe(`Query configuration`),fieldMappings:B(sg).describe(`Field mappings`),caching:V({enabled:R().optional().default(!0).describe(`Cache enabled`),ttl:L().optional().default(300).describe(`Cache TTL (seconds)`),strategy:W([`lru`,`lfu`,`ttl`]).optional().default(`ttl`).describe(`Cache strategy`)}).optional().describe(`Caching configuration`),fallback:V({enabled:R().optional().default(!0).describe(`Fallback enabled`),defaultValue:z().optional().describe(`Default fallback value`),showError:R().optional().default(!0).describe(`Show error to user`)}).optional().describe(`Fallback configuration`),rateLimit:V({requestsPerSecond:L().describe(`Requests per second limit`),burstSize:L().optional().describe(`Burst size`)}).optional().describe(`Rate limiting`),retry:V({maxRetries:L().min(0).default(3).describe(`Maximum retry attempts`),initialDelayMs:L().default(1e3).describe(`Initial retry delay in milliseconds`),maxDelayMs:L().default(3e4).describe(`Maximum retry delay in milliseconds`),backoffMultiplier:L().default(2).describe(`Exponential backoff multiplier`),retryableStatusCodes:B(L()).default([429,500,502,503,504]).describe(`HTTP status codes that are retryable`)}).optional().describe(`Retry configuration with exponential backoff`),transform:V({request:V({headers:U(I(),I()).optional().describe(`Additional request headers`),queryParams:U(I(),I()).optional().describe(`Additional query parameters`)}).optional().describe(`Request transformation`),response:V({dataPath:I().optional().describe(`JSONPath to extract data (e.g., "$.data.results")`),totalPath:I().optional().describe(`JSONPath to extract total count (e.g., "$.meta.total")`)}).optional().describe(`Response transformation`)}).optional().describe(`Request/response transformation pipeline`),pagination:V({type:W([`offset`,`cursor`,`page`]).default(`offset`).describe(`Pagination type`),pageSize:L().default(100).describe(`Items per page`),maxPages:L().optional().describe(`Maximum number of pages to fetch`)}).optional().describe(`Pagination configuration for external data`)}));var cg=I().describe(`Underlying driver identifier`);K(()=>V({id:I().describe(`Unique driver identifier (e.g. "postgres")`),label:I().describe(`Display label (e.g. "PostgreSQL")`),description:I().optional(),icon:I().optional(),configSchema:U(I(),z()).describe(`JSON Schema for connection configuration`),capabilities:Lf(()=>lg).optional()}));var lg=V({transactions:R().default(!1),queryFilters:R().default(!1),queryAggregations:R().default(!1),querySorting:R().default(!1),queryPagination:R().default(!1),queryWindowFunctions:R().default(!1),querySubqueries:R().default(!1),joins:R().default(!1),fullTextSearch:R().default(!1),readOnly:R().default(!1),dynamicSchema:R().default(!1)});K(()=>V({name:I().regex(/^[a-z_][a-z0-9_]*$/).describe(`Unique datasource identifier`),label:I().optional().describe(`Display label`),driver:cg.describe(`Underlying driver type`),config:U(I(),z()).describe(`Driver specific configuration`),pool:V({min:L().default(0).describe(`Minimum connections`),max:L().default(10).describe(`Maximum connections`),idleTimeoutMillis:L().default(3e4).describe(`Idle timeout`),connectionTimeoutMillis:L().default(3e3).describe(`Connection establishment timeout`)}).optional().describe(`Connection pool settings`),readReplicas:B(U(I(),z())).optional().describe(`Read-only replica configurations`),capabilities:lg.optional().describe(`Capability overrides`),healthCheck:V({enabled:R().default(!0).describe(`Enable health check endpoint`),intervalMs:L().default(3e4).describe(`Health check interval in milliseconds`),timeoutMs:L().default(5e3).describe(`Health check timeout in milliseconds`)}).optional().describe(`Datasource health check configuration`),ssl:V({enabled:R().default(!1).describe(`Enable SSL/TLS for database connection`),rejectUnauthorized:R().default(!0).describe(`Reject connections with invalid/self-signed certificates`),ca:I().optional().describe(`CA certificate (PEM format or path to file)`),cert:I().optional().describe(`Client certificate (PEM format or path to file)`),key:I().optional().describe(`Client private key (PEM format or path to file)`)}).optional().describe(`SSL/TLS configuration for secure database connections`),retryPolicy:V({maxRetries:L().default(3).describe(`Maximum number of retry attempts`),baseDelayMs:L().default(1e3).describe(`Base delay between retries in milliseconds`),maxDelayMs:L().default(3e4).describe(`Maximum delay between retries in milliseconds`),backoffMultiplier:L().default(2).describe(`Exponential backoff multiplier`)}).optional().describe(`Connection retry policy for transient failures`),description:I().optional().describe(`Internal description`),active:R().default(!0).describe(`Is datasource enabled`)}));var ug=W([`count`,`sum`,`avg`,`min`,`max`,`count_distinct`,`number`,`string`,`boolean`]),dg=W([`string`,`number`,`boolean`,`time`,`geo`]),fg=W([`second`,`minute`,`hour`,`day`,`week`,`month`,`quarter`,`year`]),pg=K(()=>V({name:I().regex(/^[a-z_][a-z0-9_]*$/).describe(`Unique metric ID`),label:I().describe(`Human readable label`),description:I().optional(),type:ug,sql:I().describe(`SQL expression or field reference`),filters:B(V({sql:I()})).optional(),format:I().optional()})),mg=K(()=>V({name:I().regex(/^[a-z_][a-z0-9_]*$/).describe(`Unique dimension ID`),label:I().describe(`Human readable label`),description:I().optional(),type:dg,sql:I().describe(`SQL expression or column reference`),granularities:B(fg).optional()})),hg=K(()=>V({name:I().describe(`Target cube name`),relationship:W([`one_to_one`,`one_to_many`,`many_to_one`]).default(`many_to_one`),sql:I().describe(`Join condition (ON clause)`)}));K(()=>V({name:I().regex(/^[a-z_][a-z0-9_]*$/).describe(`Cube name (snake_case)`),title:I().optional(),description:I().optional(),sql:I().describe(`Base SQL statement or Table Name`),measures:U(I(),pg).describe(`Quantitative metrics`),dimensions:U(I(),mg).describe(`Qualitative attributes`),joins:U(I(),hg).optional(),refreshKey:V({every:I().optional(),sql:I().optional()}).optional(),public:R().default(!1)})),K(()=>V({cube:I().optional().describe(`Target cube name (optional when provided externally, e.g. in API request wrapper)`),measures:B(I()).describe(`List of metrics to calculate`),dimensions:B(I()).optional().describe(`List of dimensions to group by`),where:Yf.optional().describe(`Filtering criteria (canonical Query DSL FilterCondition)`),timeDimensions:B(V({dimension:I(),granularity:fg.optional(),dateRange:H([I(),B(I())]).optional()})).optional(),order:U(I(),W([`asc`,`desc`])).optional(),limit:L().optional(),offset:L().optional(),timezone:I().optional().default(`UTC`)}));var gg=W([`comment`,`field_change`,`task`,`event`,`email`,`call`,`note`,`file`,`record_create`,`record_delete`,`approval`,`sharing`,`system`]),_g=K(()=>V({type:W([`user`,`team`,`record`]).describe(`Mention target type`),id:I().describe(`Target ID`),name:I().describe(`Display name for rendering`),offset:L().int().min(0).describe(`Character offset in body text`),length:L().int().min(1).describe(`Length of mention token in body text`)})),vg=K(()=>V({field:I().describe(`Field machine name`),fieldLabel:I().optional().describe(`Field display label`),oldValue:z().optional().describe(`Previous value`),newValue:z().optional().describe(`New value`),oldDisplayValue:I().optional().describe(`Human-readable old value`),newDisplayValue:I().optional().describe(`Human-readable new value`)})),yg=K(()=>V({emoji:I().describe(`Emoji character or shortcode (e.g., "👍", ":thumbsup:")`),userIds:B(I()).describe(`Users who reacted`),count:L().int().min(1).describe(`Total reaction count`)})),bg=K(()=>V({type:W([`user`,`system`,`service`,`automation`]).describe(`Actor type`),id:I().describe(`Actor ID`),name:I().optional().describe(`Actor display name`),avatarUrl:I().url().optional().describe(`Actor avatar URL`),source:I().optional().describe(`Source application (e.g., "Omni", "API", "Studio")`)})),xg=W([`public`,`internal`,`private`]);K(()=>V({id:I().describe(`Feed item ID`),type:gg.describe(`Activity type`),object:I().describe(`Object name (e.g., "account")`),recordId:I().describe(`Record ID this feed item belongs to`),actor:bg.describe(`Who performed this action`),body:I().optional().describe(`Rich text body (Markdown supported)`),mentions:B(_g).optional().describe(`Mentioned users/teams/records`),changes:B(vg).optional().describe(`Field-level changes`),reactions:B(yg).optional().describe(`Emoji reactions on this item`),parentId:I().optional().describe(`Parent feed item ID for threaded replies`),replyCount:L().int().min(0).default(0).describe(`Number of replies`),pinned:R().default(!1).describe(`Whether the feed item is pinned to the top of the timeline`),pinnedAt:I().datetime().optional().describe(`Timestamp when the item was pinned`),pinnedBy:I().optional().describe(`User ID who pinned the item`),starred:R().default(!1).describe(`Whether the feed item is starred/bookmarked by the current user`),starredAt:I().datetime().optional().describe(`Timestamp when the item was starred`),visibility:xg.default(`public`).describe(`Visibility: public (all users), internal (team only), private (author + mentioned)`),createdAt:I().datetime().describe(`Creation timestamp`),updatedAt:I().datetime().optional().describe(`Last update timestamp`),editedAt:I().datetime().optional().describe(`When comment was last edited`),isEdited:R().default(!1).describe(`Whether comment has been edited`)})),W([`all`,`comments_only`,`changes_only`,`tasks_only`]);var Sg=W([`comment`,`mention`,`field_change`,`task`,`approval`,`all`]),Cg=W([`in_app`,`email`,`push`,`slack`]);K(()=>V({object:I().describe(`Object name`),recordId:I().describe(`Record ID`),userId:I().describe(`Subscribing user ID`),events:B(Sg).default([`all`]).describe(`Event types to receive notifications for`),channels:B(Cg).default([`in_app`]).describe(`Notification delivery channels`),active:R().default(!0).describe(`Whether the subscription is active`),createdAt:I().datetime().describe(`Subscription creation timestamp`)}));var wg=K(()=>W([`header`,`subdomain`,`path`,`token`,`lookup`]).describe(`Strategy for resolving tenant identity from request context`)),Tg=K(()=>V({name:I().min(1).describe(`Turso database group name`),primaryLocation:I().min(2).describe(`Primary Turso region code (e.g., iad, lhr, nrt)`),replicaLocations:B(I().min(2)).default([]).describe(`Additional replica region codes`),schemaDatabase:I().optional().describe(`Schema database name for multi-db schemas`)}).describe(`Turso database group configuration`)),Eg=K(()=>V({onTenantCreate:V({autoCreate:R().default(!0).describe(`Auto-create database on tenant registration`),group:I().optional().describe(`Turso group for the new database`),applyGroupSchema:R().default(!0).describe(`Apply shared schema from group`),seedData:R().default(!1).describe(`Populate seed data on creation`)}).describe(`Tenant creation hook`),onTenantDelete:V({immediate:R().default(!1).describe(`Destroy database immediately`),gracePeriodHours:L().int().min(0).default(72).describe(`Grace period before permanent deletion`),createBackup:R().default(!0).describe(`Create backup before deletion`)}).describe(`Tenant deletion hook`),onTenantSuspend:V({revokeTokens:R().default(!0).describe(`Revoke auth tokens on suspension`),readOnly:R().default(!0).describe(`Set database to read-only on suspension`)}).describe(`Tenant suspension hook`)}).describe(`Tenant database lifecycle hooks`));K(()=>V({organizationSlug:I().min(1).describe(`Turso organization slug`),urlTemplate:I().min(1).describe(`URL template with {tenant_id} placeholder`),groupAuthToken:I().min(1).describe(`Group-level auth token for platform operations`),tenantResolverStrategy:wg.default(`token`),group:Tg.optional().describe(`Database group configuration`),lifecycle:Eg.optional().describe(`Lifecycle hooks`),maxCachedConnections:L().int().min(1).default(100).describe(`Max cached tenant connections (LRU)`),connectionCacheTTL:L().int().min(0).default(300).describe(`Connection cache TTL in seconds`)}).describe(`Turso multi-tenant router configuration`));var Dg=(e=>l===void 0?typeof Proxy<`u`?new Proxy(e,{get:(e,t)=>(l===void 0?e:l)[t]}):e:l)(function(e){if(l!==void 0)return l.apply(this,arguments);throw Error(`Dynamic require of "`+e+`" is not supported`)}),Og={debug:0,info:1,warn:2,error:3,fatal:4,silent:5},kg={debug:`\x1B[36m`,info:`\x1B[32m`,warn:`\x1B[33m`,error:`\x1B[31m`,fatal:`\x1B[35m`,silent:``},Ag=`\x1B[0m`,jg=class e{constructor(e={},t={}){this.config={name:e.name,level:e.level??`info`,format:e.format??`pretty`,redact:e.redact??[`password`,`token`,`secret`,`key`],sourceLocation:e.sourceLocation??!1,file:e.file,rotation:e.rotation??{maxSize:`10m`,maxFiles:5}},this.bindings=t,this.config.file&&typeof process<`u`&&this.openFileStream(this.config.file)}openFileStream(e){try{let t=Dg(`fs`),n=Dg(`path`).dirname(e);t.mkdirSync(n,{recursive:!0}),this.fileStream=t.createWriteStream(e,{flags:`a`})}catch{}}isEnabled(e){return Og[e]>=Og[this.config.level]}redactSensitive(e){if(!e||typeof e!=`object`)return e;let t=Array.isArray(e)?[...e]:{...e};for(let e in t){let n=e.toLowerCase();this.config.redact.some(e=>n.includes(e.toLowerCase()))?t[e]=`***REDACTED***`:typeof t[e]==`object`&&t[e]!==null&&(t[e]=this.redactSensitive(t[e]))}return t}write(e,t,n,r){if(!this.isEnabled(e))return;let i=this.redactSensitive({...this.bindings,...n,...r?{error:{message:r.message,stack:r.stack}}:{}}),a=Object.keys(i).length>0,o=new Date().toISOString(),s;if(this.config.format===`json`)s=JSON.stringify({time:o,level:e,...this.config.name?{name:this.config.name}:{},msg:t,...i});else if(this.config.format===`text`){let n=[o,e.toUpperCase(),t];a&&n.push(JSON.stringify(i)),s=n.join(` | `)}else{let n=kg[e]||``,r=this.config.name?`[${this.config.name}] `:``;s=`${n}${o} ${e.toUpperCase()}${Ag} ${r}${t}`,a&&(s+=` ${JSON.stringify(i)}`)}let c=s+`
73
- `;typeof process<`u`&&process.stderr?e===`error`||e===`fatal`?process.stderr.write(c):process.stdout?.write(c):typeof console<`u`&&(e===`error`||e===`fatal`?console.error:e===`warn`?console.warn:e===`debug`?console.debug:console.log)(s),this.fileStream&&this.fileStream.write(c)}debug(e,t){this.write(`debug`,e,t)}info(e,t){this.write(`info`,e,t)}warn(e,t){this.write(`warn`,e,t)}error(e,t,n){t instanceof Error?this.write(`error`,e,n,t):this.write(`error`,e,t)}fatal(e,t,n){t instanceof Error?this.write(`fatal`,e,n,t):this.write(`fatal`,e,t)}log(e,...t){this.info(e,t.length>0?{args:t}:void 0)}child(t){let n=new e(this.config,{...this.bindings,...t});return n.fileStream=this.fileStream,n}withTrace(e,t){return this.child({traceId:e,spanId:t})}async destroy(){this.fileStream&&=(await new Promise(e=>this.fileStream.end(e)),void 0)}};function Mg(e){return new jg(e)}var Ng=class{constructor(e,t){this.subscriptions=new Map,this.eventBuffer=[],this._baseUrl=e,this._token=t}subscribeMetadata(e,t,n){let r=`metadata-${e}-${Date.now()}`;return this.subscriptions.set(r,{filter:{type:e,packageId:n?.packageId,eventTypes:[`metadata.${e}.created`,`metadata.${e}.updated`,`metadata.${e}.deleted`]},handler:e=>{e.type.startsWith(`metadata.`)&&t(e)}}),this.startPolling(),()=>{this.subscriptions.delete(r),this.subscriptions.size===0&&this.stopPolling()}}subscribeData(e,t,n){let r=`data-${e}-${Date.now()}`;return this.subscriptions.set(r,{filter:{type:e,recordId:n?.recordId,eventTypes:[`data.record.created`,`data.record.updated`,`data.record.deleted`]},handler:r=>{r.type.startsWith(`data.`)&&r.object===e&&(!n?.recordId||r.payload?.recordId===n.recordId)&&t(r)}}),this.startPolling(),()=>{this.subscriptions.delete(r),this.subscriptions.size===0&&this.stopPolling()}}emitEvent(e){for(let t of this.subscriptions.values()){let n=!t.filter.type||e.type.includes(t.filter.type)||e.object===t.filter.type,r=!t.filter.eventTypes?.length||t.filter.eventTypes.includes(e.type),i=!t.filter.packageId||e.payload?.packageId===t.filter.packageId;if(n&&r&&i)try{t.handler(e)}catch(e){console.error(`Error in realtime event handler:`,e)}}}startPolling(){this.pollInterval||=setInterval(()=>{for(;this.eventBuffer.length>0;){let e=this.eventBuffer.shift();e&&this.emitEvent(e)}},2e3)}stopPolling(){this.pollInterval&&=(clearInterval(this.pollInterval),void 0)}_bufferEvent(e){this.eventBuffer.push(e)}disconnect(){this.stopPolling(),this.subscriptions.clear(),this.eventBuffer=[]}},Pg=class{constructor(e){this.meta={getTypes:async()=>{let e=this.getRoute(`metadata`),t=await this.fetch(`${this.baseUrl}${e}`);return this.unwrapResponse(t)},getItems:async(e,t)=>{let n=this.getRoute(`metadata`),r=new URLSearchParams;t?.packageId&&r.set(`package`,t.packageId);let i=r.toString(),a=`${this.baseUrl}${n}/${e}${i?`?${i}`:``}`,o=await this.fetch(a);return this.unwrapResponse(o)},getItem:async(e,t,n)=>{let r=this.getRoute(`metadata`),i=new URLSearchParams;n?.packageId&&i.set(`package`,n.packageId);let a=i.toString(),o=`${this.baseUrl}${r}/${e}/${t}${a?`?${a}`:``}`,s=await this.fetch(o);return this.unwrapResponse(s)},saveItem:async(e,t,n)=>{let r=this.getRoute(`metadata`),i=await this.fetch(`${this.baseUrl}${r}/${e}/${t}`,{method:`PUT`,body:JSON.stringify(n)});return this.unwrapResponse(i)},deleteItem:async(e,t)=>{let n=this.getRoute(`metadata`),r=await this.fetch(`${this.baseUrl}${n}/${encodeURIComponent(e)}/${encodeURIComponent(t)}`,{method:`DELETE`});return this.unwrapResponse(r)},getCached:async(e,t)=>{let n=this.getRoute(`metadata`),r={};t?.ifNoneMatch&&(r[`If-None-Match`]=t.ifNoneMatch),t?.ifModifiedSince&&(r[`If-Modified-Since`]=t.ifModifiedSince);let i=await this.fetch(`${this.baseUrl}${n}/object/${e}`,{headers:r});if(i.status===304)return{notModified:!0,etag:t?.ifNoneMatch?{value:t.ifNoneMatch.replace(/^W\/|"/g,``),weak:t.ifNoneMatch.startsWith(`W/`)}:void 0};let a=await i.json(),o=i.headers.get(`ETag`),s=i.headers.get(`Last-Modified`);return{data:a,etag:o?{value:o.replace(/^W\/|"/g,``),weak:o.startsWith(`W/`)}:void 0,lastModified:s||void 0,notModified:!1}},getView:async(e,t=`list`)=>{let n=this.getRoute(`ui`),r=await this.fetch(`${this.baseUrl}${n}/view/${e}?type=${t}`);return this.unwrapResponse(r)}},this.analytics={query:async e=>{let t=this.getRoute(`analytics`);return(await this.fetch(`${this.baseUrl}${t}/query`,{method:`POST`,body:JSON.stringify(e)})).json()},meta:async e=>{let t=this.getRoute(`analytics`);return(await this.fetch(`${this.baseUrl}${t}/meta/${e}`)).json()},explain:async e=>{let t=this.getRoute(`analytics`);return(await this.fetch(`${this.baseUrl}${t}/explain`,{method:`POST`,body:JSON.stringify(e)})).json()}},this.packages={list:async e=>{let t=this.getRoute(`packages`),n=new URLSearchParams;e?.status&&n.set(`status`,e.status),e?.type&&n.set(`type`,e.type),e?.enabled!==void 0&&n.set(`enabled`,String(e.enabled));let r=n.toString(),i=`${this.baseUrl}${t}${r?`?`+r:``}`,a=await this.fetch(i);return this.unwrapResponse(a)},get:async e=>{let t=this.getRoute(`packages`),n=await this.fetch(`${this.baseUrl}${t}/${encodeURIComponent(e)}`);return this.unwrapResponse(n)},install:async(e,t)=>{let n=this.getRoute(`packages`),r=await this.fetch(`${this.baseUrl}${n}`,{method:`POST`,body:JSON.stringify({manifest:e,settings:t?.settings,enableOnInstall:t?.enableOnInstall})});return this.unwrapResponse(r)},uninstall:async e=>{let t=this.getRoute(`packages`),n=await this.fetch(`${this.baseUrl}${t}/${encodeURIComponent(e)}`,{method:`DELETE`});return this.unwrapResponse(n)},enable:async e=>{let t=this.getRoute(`packages`),n=await this.fetch(`${this.baseUrl}${t}/${encodeURIComponent(e)}/enable`,{method:`PATCH`});return this.unwrapResponse(n)},disable:async e=>{let t=this.getRoute(`packages`),n=await this.fetch(`${this.baseUrl}${t}/${encodeURIComponent(e)}/disable`,{method:`PATCH`});return this.unwrapResponse(n)}},this.projects={list:async e=>{let t=new URLSearchParams;e?.organization_id&&t.set(`organizationId`,e.organization_id),e?.env_type&&t.set(`envType`,e.env_type),e?.status&&t.set(`status`,e.status);let n=t.toString(),r=`${this.baseUrl}/api/v1/cloud/projects${n?`?`+n:``}`,i=await this.fetch(r);return this.unwrapResponse(i)},get:async e=>{let t=await this.fetch(`${this.baseUrl}/api/v1/cloud/projects/${encodeURIComponent(e)}`);return this.unwrapResponse(t)},create:async e=>{let t=await this.fetch(`${this.baseUrl}/api/v1/cloud/projects`,{method:`POST`,body:JSON.stringify(e)});return this.unwrapResponse(t)},update:async(e,t)=>{let n=await this.fetch(`${this.baseUrl}/api/v1/cloud/projects/${encodeURIComponent(e)}`,{method:`PATCH`,body:JSON.stringify(t)});return this.unwrapResponse(n)},delete:async(e,t)=>{let n=t?.force?`?force=1`:``,r=await this.fetch(`${this.baseUrl}/api/v1/cloud/projects/${encodeURIComponent(e)}${n}`,{method:`DELETE`});return this.unwrapResponse(r)},activate:async e=>{let t=await this.fetch(`${this.baseUrl}/api/v1/cloud/projects/${encodeURIComponent(e)}/activate`,{method:`POST`});return this.unwrapResponse(t)},rotateCredential:async(e,t)=>{let n=await this.fetch(`${this.baseUrl}/api/v1/cloud/projects/${encodeURIComponent(e)}/credentials/rotate`,{method:`POST`,body:JSON.stringify({plaintext:t})});return this.unwrapResponse(n)},updateHostname:async(e,t)=>{let n=await this.fetch(`${this.baseUrl}/api/v1/cloud/projects/${encodeURIComponent(e)}/hostname`,{method:`POST`,body:JSON.stringify({hostname:t})});return this.unwrapResponse(n)},updateVisibility:async(e,t)=>{let n=await this.fetch(`${this.baseUrl}/api/v1/cloud/projects/${encodeURIComponent(e)}`,{method:`PATCH`,body:JSON.stringify({visibility:t})});return this.unwrapResponse(n)},listRevisions:async(e,t)=>{let n=new URLSearchParams;t?.limit&&n.set(`limit`,String(t.limit)),t?.cursor&&n.set(`cursor`,t.cursor),t?.branch&&n.set(`branch`,t.branch);let r=n.toString(),i=await this.fetch(`${this.baseUrl}/api/v1/cloud/projects/${encodeURIComponent(e)}/revisions${r?`?${r}`:``}`);return this.unwrapResponse(i)},listBranches:async e=>{let t=await this.fetch(`${this.baseUrl}/api/v1/cloud/projects/${encodeURIComponent(e)}/branches`);return this.unwrapResponse(t)},renameBranch:async(e,t,n)=>{let r=await this.fetch(`${this.baseUrl}/api/v1/cloud/projects/${encodeURIComponent(e)}/branches/${encodeURIComponent(t)}/rename`,{method:`POST`,headers:{"content-type":`application/json`},body:JSON.stringify({newName:n})});return this.unwrapResponse(r)},deleteBranch:async(e,t)=>{let n=await this.fetch(`${this.baseUrl}/api/v1/cloud/projects/${encodeURIComponent(e)}/branches/${encodeURIComponent(t)}`,{method:`DELETE`});return this.unwrapResponse(n)},activateRevision:async(e,t)=>{let n=await this.fetch(`${this.baseUrl}/api/v1/cloud/projects/${encodeURIComponent(e)}/revisions/${encodeURIComponent(t)}/activate`,{method:`POST`});return this.unwrapResponse(n)},retryProvisioning:async e=>{let t=await this.fetch(`${this.baseUrl}/api/v1/cloud/projects/${encodeURIComponent(e)}/retry`,{method:`POST`});return this.unwrapResponse(t)},listMembers:async e=>{let t=await this.fetch(`${this.baseUrl}/api/v1/cloud/projects/${encodeURIComponent(e)}/members`);return this.unwrapResponse(t)},addMember:async(e,t)=>{let n=await this.fetch(`${this.baseUrl}/api/v1/cloud/projects/${encodeURIComponent(e)}/members`,{method:`POST`,headers:{"content-type":`application/json`},body:JSON.stringify(t)});return this.unwrapResponse(n)},updateMemberRole:async(e,t,n)=>{let r=await this.fetch(`${this.baseUrl}/api/v1/cloud/projects/${encodeURIComponent(e)}/members/${encodeURIComponent(t)}`,{method:`PATCH`,headers:{"content-type":`application/json`},body:JSON.stringify({role:n})});return this.unwrapResponse(r)},removeMember:async(e,t)=>{let n=await this.fetch(`${this.baseUrl}/api/v1/cloud/projects/${encodeURIComponent(e)}/members/${encodeURIComponent(t)}`,{method:`DELETE`});return this.unwrapResponse(n)},listDrivers:async()=>{let e=await this.fetch(`${this.baseUrl}/api/v1/cloud/drivers`);return this.unwrapResponse(e)},listTemplates:async()=>{let e=await this.fetch(`${this.baseUrl}/api/v1/cloud/templates`);return this.unwrapResponse(e)},packages:{list:async e=>{let t=await this.fetch(`${this.baseUrl}/api/v1/cloud/projects/${encodeURIComponent(e)}/packages`);return this.unwrapResponse(t)},install:async(e,t)=>{let n=await this.fetch(`${this.baseUrl}/api/v1/cloud/projects/${encodeURIComponent(e)}/packages`,{method:`POST`,body:JSON.stringify(t)});return this.unwrapResponse(n)},get:async(e,t)=>{let n=await this.fetch(`${this.baseUrl}/api/v1/cloud/projects/${encodeURIComponent(e)}/packages/${encodeURIComponent(t)}`);return this.unwrapResponse(n)},enable:async(e,t)=>{let n=await this.fetch(`${this.baseUrl}/api/v1/cloud/projects/${encodeURIComponent(e)}/packages/${encodeURIComponent(t)}/enable`,{method:`PATCH`});return this.unwrapResponse(n)},disable:async(e,t)=>{let n=await this.fetch(`${this.baseUrl}/api/v1/cloud/projects/${encodeURIComponent(e)}/packages/${encodeURIComponent(t)}/disable`,{method:`PATCH`});return this.unwrapResponse(n)},uninstall:async(e,t)=>{let n=await this.fetch(`${this.baseUrl}/api/v1/cloud/projects/${encodeURIComponent(e)}/packages/${encodeURIComponent(t)}`,{method:`DELETE`});return this.unwrapResponse(n)},upgrade:async(e,t,n)=>{let r=await this.fetch(`${this.baseUrl}/api/v1/cloud/projects/${encodeURIComponent(e)}/packages/${encodeURIComponent(t)}/upgrade`,{method:`POST`,body:JSON.stringify({targetVersion:n})});return this.unwrapResponse(r)}}},this.organizations={list:async()=>{let e=this.getRoute(`auth`),t=await(await this.fetch(`${this.baseUrl}${e}/organization/list`)).json();return{organizations:Array.isArray(t)?t:t?.data??[]}},create:async e=>{let t=this.getRoute(`auth`);return(await this.fetch(`${this.baseUrl}${t}/organization/create`,{method:`POST`,body:JSON.stringify(e)})).json()},update:async(e,t)=>{let n=this.getRoute(`auth`);return(await this.fetch(`${this.baseUrl}${n}/organization/update`,{method:`POST`,body:JSON.stringify({organizationId:e,data:t})})).json()},setActive:async e=>{let t=this.getRoute(`auth`);return(await this.fetch(`${this.baseUrl}${t}/organization/set-active`,{method:`POST`,body:JSON.stringify({organizationId:e})})).json()},get:async e=>{let t=this.getRoute(`auth`);return(await this.fetch(`${this.baseUrl}${t}/organization/get-full-organization?organizationId=${encodeURIComponent(e)}`)).json()},listMembers:async e=>{let t=this.getRoute(`auth`);return(await this.fetch(`${this.baseUrl}${t}/organization/list-members?organizationId=${encodeURIComponent(e)}`)).json()},invite:async e=>{let t=this.getRoute(`auth`);return(await this.fetch(`${this.baseUrl}${t}/organization/invite-member`,{method:`POST`,body:JSON.stringify(e)})).json()},leave:async e=>{let t=this.getRoute(`auth`);return(await this.fetch(`${this.baseUrl}${t}/organization/leave`,{method:`POST`,body:JSON.stringify({organizationId:e})})).json()},delete:async e=>{let t=this.getRoute(`auth`);return(await this.fetch(`${this.baseUrl}${t}/organization/delete`,{method:`POST`,body:JSON.stringify({organizationId:e})})).json()},removeMember:async(e,t)=>{let n=this.getRoute(`auth`);return(await this.fetch(`${this.baseUrl}${n}/organization/remove-member`,{method:`POST`,body:JSON.stringify({memberIdOrEmail:t.memberIdOrEmail,organizationId:e})})).json()},updateMemberRole:async(e,t)=>{let n=this.getRoute(`auth`);return(await this.fetch(`${this.baseUrl}${n}/organization/update-member-role`,{method:`POST`,body:JSON.stringify({memberId:t.memberId,role:t.role,organizationId:e})})).json()},getActiveMember:async e=>{let t=this.getRoute(`auth`);return(await this.fetch(`${this.baseUrl}${t}/organization/get-active-member?organizationId=${encodeURIComponent(e)}`)).json()},invitations:{list:async e=>{let t=this.getRoute(`auth`),n=await(await this.fetch(`${this.baseUrl}${t}/organization/list-invitations?organizationId=${encodeURIComponent(e)}`)).json();return{invitations:Array.isArray(n)?n:n?.data??n?.invitations??[]}},listMine:async()=>{let e=this.getRoute(`auth`),t=await(await this.fetch(`${this.baseUrl}${e}/organization/list-user-invitations`)).json();return{invitations:Array.isArray(t)?t:t?.data??t?.invitations??[]}},cancel:async e=>{let t=this.getRoute(`auth`);return(await this.fetch(`${this.baseUrl}${t}/organization/cancel-invitation`,{method:`POST`,body:JSON.stringify({invitationId:e})})).json()},accept:async e=>{let t=this.getRoute(`auth`);return(await this.fetch(`${this.baseUrl}${t}/organization/accept-invitation`,{method:`POST`,body:JSON.stringify({invitationId:e})})).json()},reject:async e=>{let t=this.getRoute(`auth`);return(await this.fetch(`${this.baseUrl}${t}/organization/reject-invitation`,{method:`POST`,body:JSON.stringify({invitationId:e})})).json()},resend:async e=>{if(e.id)try{await this.organizations.invitations.cancel(e.id)}catch{}return this.organizations.invite({email:e.email,role:e.role??`member`,organizationId:e.organizationId})}},teams:{list:async e=>{let t=this.getRoute(`auth`),n=await(await this.fetch(`${this.baseUrl}${t}/organization/list-teams?organizationId=${encodeURIComponent(e)}`)).json();return{teams:Array.isArray(n)?n:n?.data??n?.teams??[]}},create:async e=>{let t=this.getRoute(`auth`);return(await this.fetch(`${this.baseUrl}${t}/organization/create-team`,{method:`POST`,body:JSON.stringify(e)})).json()},update:async e=>{let t=this.getRoute(`auth`);return(await this.fetch(`${this.baseUrl}${t}/organization/update-team`,{method:`POST`,body:JSON.stringify(e)})).json()},delete:async e=>{let t=this.getRoute(`auth`);return(await this.fetch(`${this.baseUrl}${t}/organization/remove-team`,{method:`POST`,body:JSON.stringify(e)})).json()},listMembers:async e=>{let t=this.getRoute(`auth`),n=await(await this.fetch(`${this.baseUrl}${t}/organization/list-team-members?teamId=${encodeURIComponent(e)}`)).json();return{members:Array.isArray(n)?n:n?.data??n?.members??[]}},addMember:async e=>{let t=this.getRoute(`auth`);return(await this.fetch(`${this.baseUrl}${t}/organization/add-team-member`,{method:`POST`,body:JSON.stringify(e)})).json()},removeMember:async e=>{let t=this.getRoute(`auth`);return(await this.fetch(`${this.baseUrl}${t}/organization/remove-team-member`,{method:`POST`,body:JSON.stringify(e)})).json()}}},this.oauth={applications:{register:async e=>{let t=this.getRoute(`auth`);return(await this.fetch(`${this.baseUrl}${t}/oauth2/create-client`,{method:`POST`,body:JSON.stringify(e)})).json()},get:async e=>{let t=this.getRoute(`auth`);return(await this.fetch(`${this.baseUrl}${t}/oauth2/get-client?client_id=${encodeURIComponent(e)}`)).json()},getPublic:async e=>{let t=this.getRoute(`auth`);return(await this.fetch(`${this.baseUrl}${t}/oauth2/public-client?client_id=${encodeURIComponent(e)}`)).json()},list:async()=>{let e=this.getRoute(`auth`),t=await(await this.fetch(`${this.baseUrl}${e}/oauth2/get-clients`)).json();return{applications:Array.isArray(t)?t:t?.clients??t?.data??[]}},delete:async e=>{let t=this.getRoute(`auth`);return(await this.fetch(`${this.baseUrl}${t}/oauth2/delete-client`,{method:`POST`,body:JSON.stringify({client_id:e})})).json()}},consent:async e=>{let t=this.getRoute(`auth`);return(await this.fetch(`${this.baseUrl}${t}/oauth2/consent`,{method:`POST`,body:JSON.stringify(e)})).json()}},this.auth={getConfig:async()=>{let e=this.getRoute(`auth`),t=await this.fetch(`${this.baseUrl}${e}/config`);return this.unwrapResponse(t)},login:async e=>{let t=this.getRoute(`auth`),n=await(await this.fetch(`${this.baseUrl}${t}/sign-in/email`,{method:`POST`,headers:{Origin:this.baseUrl},body:JSON.stringify(e)})).json(),r=n&&(n.data??(n.token||n.user?{token:n.token,user:n.user}:void 0)),i=r?{...n,data:r}:n;return i.data?.token&&(this.token=i.data.token),i},logout:async()=>{let e=this.getRoute(`auth`);await this.fetch(`${this.baseUrl}${e}/sign-out`,{method:`POST`,headers:{"Content-Type":`application/json`,Origin:this.baseUrl},body:`{}`}),this.token=void 0},me:async()=>{let e=this.getRoute(`auth`);return(await this.fetch(`${this.baseUrl}${e}/get-session`,{headers:{Origin:this.baseUrl}})).json()},register:async e=>{let t=this.getRoute(`auth`),n=await(await this.fetch(`${this.baseUrl}${t}/sign-up/email`,{method:`POST`,headers:{Origin:this.baseUrl},body:JSON.stringify(e)})).json(),r=n&&(n.data??(n.token||n.user?{token:n.token,user:n.user}:void 0)),i=r?{...n,data:r}:n;return i.data?.token&&(this.token=i.data.token),i},signInWithProvider:async(e,t)=>{if(typeof window>`u`)throw Error(`signInWithProvider requires a browser environment`);let n=this.getRoute(`auth`),r=t?.callbackURL??window.location.origin+`/login`,i=t?.type===`oidc`,a=i?`/sign-in/oauth2`:`/sign-in/social`,o=i?{providerId:e,callbackURL:r}:{provider:e,callbackURL:r};t?.errorCallbackURL&&(o.errorCallbackURL=t.errorCallbackURL);let s=await(await this.fetch(`${this.baseUrl}${n}${a}`,{method:`POST`,body:JSON.stringify(o)})).json(),c=s?.url??s?.data?.url;if(c)window.location.assign(c);else throw Error(`signInWithProvider: no redirect URL returned for provider "${e}"`)},refreshToken:async e=>{let t=this.getRoute(`auth`),n=await(await this.fetch(`${this.baseUrl}${t}/get-session`,{method:`GET`})).json();return n.data?.token&&(this.token=n.data.token),n},bootstrapStatus:async()=>{let e=this.getRoute(`auth`),t=await(await this.fetch(`${this.baseUrl}${e}/bootstrap-status`)).json();return{hasOwner:!!(t?.data??t)?.hasOwner}},updateUser:async e=>{let t=this.getRoute(`auth`);return(await this.fetch(`${this.baseUrl}${t}/update-user`,{method:`POST`,body:JSON.stringify(e)})).json()},changePassword:async e=>{let t=this.getRoute(`auth`);return(await this.fetch(`${this.baseUrl}${t}/change-password`,{method:`POST`,body:JSON.stringify(e)})).json()},changeEmail:async e=>{let t=this.getRoute(`auth`);return(await this.fetch(`${this.baseUrl}${t}/change-email`,{method:`POST`,body:JSON.stringify(e)})).json()},sendVerificationEmail:async e=>{let t=this.getRoute(`auth`);return(await this.fetch(`${this.baseUrl}${t}/send-verification-email`,{method:`POST`,body:JSON.stringify(e)})).json()},verifyEmail:async e=>{let t=this.getRoute(`auth`),n=new URL(`${this.baseUrl}${t}/verify-email`);return n.searchParams.set(`token`,e.token),e.callbackURL&&n.searchParams.set(`callbackURL`,e.callbackURL),(await this.fetch(n.toString())).json()},deleteUser:async e=>{let t=this.getRoute(`auth`),n=await this.fetch(`${this.baseUrl}${t}/delete-user`,{method:`POST`,body:JSON.stringify(e)});return this.token=void 0,n.json()},sessions:{list:async()=>{let e=this.getRoute(`auth`),t=await(await this.fetch(`${this.baseUrl}${e}/list-sessions`)).json();return{sessions:Array.isArray(t)?t:t?.data??t?.sessions??[]}},revoke:async e=>{let t=this.getRoute(`auth`);return(await this.fetch(`${this.baseUrl}${t}/revoke-session`,{method:`POST`,body:JSON.stringify({token:e})})).json()},revokeOthers:async()=>{let e=this.getRoute(`auth`);return(await this.fetch(`${this.baseUrl}${e}/revoke-other-sessions`,{method:`POST`,body:`{}`})).json()},revokeAll:async()=>{let e=this.getRoute(`auth`),t=await this.fetch(`${this.baseUrl}${e}/revoke-sessions`,{method:`POST`,body:`{}`});return this.token=void 0,t.json()}},twoFactor:{enable:async e=>{let t=this.getRoute(`auth`),n=await(await this.fetch(`${this.baseUrl}${t}/two-factor/enable`,{method:`POST`,body:JSON.stringify(e)})).json();return n?.data??n},verifyTotp:async e=>{let t=this.getRoute(`auth`);return(await this.fetch(`${this.baseUrl}${t}/two-factor/verify-totp`,{method:`POST`,body:JSON.stringify(e)})).json()},disable:async e=>{let t=this.getRoute(`auth`);return(await this.fetch(`${this.baseUrl}${t}/two-factor/disable`,{method:`POST`,body:JSON.stringify(e)})).json()},generateBackupCodes:async e=>{let t=this.getRoute(`auth`),n=await(await this.fetch(`${this.baseUrl}${t}/two-factor/generate-backup-codes`,{method:`POST`,body:JSON.stringify(e)})).json();return n?.data??n},verifyBackupCode:async e=>{let t=this.getRoute(`auth`);return(await this.fetch(`${this.baseUrl}${t}/two-factor/verify-backup-code`,{method:`POST`,body:JSON.stringify(e)})).json()}},accounts:{list:async()=>{let e=this.getRoute(`auth`),t=await(await this.fetch(`${this.baseUrl}${e}/list-accounts`)).json();return{accounts:Array.isArray(t)?t:t?.data??t?.accounts??[]}},unlink:async e=>{let t=this.getRoute(`auth`);return(await this.fetch(`${this.baseUrl}${t}/unlink-account`,{method:`POST`,body:JSON.stringify(e)})).json()},linkSocial:async e=>{let t=this.getRoute(`auth`),n=e.callbackURL??(typeof window<`u`?window.location.href:void 0),r=await(await this.fetch(`${this.baseUrl}${t}/link-social`,{method:`POST`,body:JSON.stringify({provider:e.provider,callbackURL:n})})).json();return r?.data??r}}},this.storage={upload:async(e,t=`user`)=>{let n={filename:e.name,mimeType:e.type,size:e.size,scope:t},r=this.getRoute(`storage`),{data:i}=await(await this.fetch(`${this.baseUrl}${r}/upload/presigned`,{method:`POST`,body:JSON.stringify(n)})).json(),a=await this.fetchImpl(i.uploadUrl,{method:i.method,headers:i.headers,body:e});if(!a.ok)throw Error(`Storage Upload Failed: ${a.statusText}`);let o={fileId:i.fileId};return(await this.fetch(`${this.baseUrl}${r}/upload/complete`,{method:`POST`,body:JSON.stringify(o)})).json()},getDownloadUrl:async e=>{let t=this.getRoute(`storage`);return(await(await this.fetch(`${this.baseUrl}${t}/files/${e}/url`)).json()).url},getPresignedUrl:async e=>{let t=this.getRoute(`storage`);return(await this.fetch(`${this.baseUrl}${t}/upload/presigned`,{method:`POST`,body:JSON.stringify(e)})).json()},initChunkedUpload:async e=>{let t=this.getRoute(`storage`);return(await this.fetch(`${this.baseUrl}${t}/upload/chunked`,{method:`POST`,body:JSON.stringify(e)})).json()},uploadPart:async(e,t,n,r)=>{let i=this.getRoute(`storage`);return(await this.fetch(`${this.baseUrl}${i}/upload/chunked/${e}/chunk/${t}`,{method:`PUT`,headers:{"x-resume-token":n},body:r})).json()},completeChunkedUpload:async e=>{let t=this.getRoute(`storage`);return(await this.fetch(`${this.baseUrl}${t}/upload/chunked/${e.uploadId}/complete`,{method:`POST`,body:JSON.stringify(e)})).json()},resumeUpload:async(e,t,n,r)=>{let i=this.getRoute(`storage`),{totalChunks:a,uploadedChunks:o}=(await(await this.fetch(`${this.baseUrl}${i}/upload/chunked/${e}/progress`)).json()).data,s=[],c=t instanceof ArrayBuffer?t:await t.arrayBuffer();for(let t=o;t<a;t++){let i=t*n,a=Math.min(i+n,c.byteLength),o=new Blob([c.slice(i,a)]),l=await this.storage.uploadPart(e,t,r,o);s.push({chunkIndex:t,eTag:l.data.eTag})}return this.storage.completeChunkedUpload({uploadId:e,parts:s})}},this.automation={trigger:async(e,t)=>{let n=this.getRoute(`automation`);return(await this.fetch(`${this.baseUrl}${n}/trigger/${e}`,{method:`POST`,body:JSON.stringify(t)})).json()},list:async()=>{let e=this.getRoute(`automation`),t=await this.fetch(`${this.baseUrl}${e}`);return this.unwrapResponse(t)},get:async e=>{let t=this.getRoute(`automation`),n=await this.fetch(`${this.baseUrl}${t}/${e}`);return this.unwrapResponse(n)},create:async(e,t)=>{let n=this.getRoute(`automation`),r=await this.fetch(`${this.baseUrl}${n}`,{method:`POST`,body:JSON.stringify({name:e,...t})});return this.unwrapResponse(r)},update:async(e,t)=>{let n=this.getRoute(`automation`),r=await this.fetch(`${this.baseUrl}${n}/${e}`,{method:`PUT`,body:JSON.stringify({definition:t})});return this.unwrapResponse(r)},delete:async e=>{let t=this.getRoute(`automation`),n=await this.fetch(`${this.baseUrl}${t}/${e}`,{method:`DELETE`});return this.unwrapResponse(n)},toggle:async(e,t)=>{let n=this.getRoute(`automation`),r=await this.fetch(`${this.baseUrl}${n}/${e}/toggle`,{method:`POST`,body:JSON.stringify({enabled:t})});return this.unwrapResponse(r)},runs:{list:async(e,t)=>{let n=this.getRoute(`automation`),r=new URLSearchParams;t?.limit&&r.set(`limit`,String(t.limit)),t?.cursor&&r.set(`cursor`,t.cursor);let i=r.toString(),a=await this.fetch(`${this.baseUrl}${n}/${e}/runs${i?`?${i}`:``}`);return this.unwrapResponse(a)},get:async(e,t)=>{let n=this.getRoute(`automation`),r=await this.fetch(`${this.baseUrl}${n}/${e}/runs/${t}`);return this.unwrapResponse(r)}},getFlow:async e=>{let t=this.getRoute(`automation`),n=await this.fetch(`${this.baseUrl}${t}/${encodeURIComponent(e)}`);return this.unwrapResponse(n)},execute:async(e,t)=>{let n=this.getRoute(`automation`),r=await this.fetch(`${this.baseUrl}${n}/${encodeURIComponent(e)}/trigger`,{method:`POST`,body:JSON.stringify(t??{})});return this.unwrapResponse(r)},listRuns:async(e,t)=>{let n=this.getRoute(`automation`),r=new URLSearchParams;t?.limit!=null&&r.set(`limit`,String(t.limit)),t?.cursor&&r.set(`cursor`,t.cursor);let i=r.toString(),a=await this.fetch(`${this.baseUrl}${n}/${encodeURIComponent(e)}/runs${i?`?${i}`:``}`);return this.unwrapResponse(a)},getRun:async(e,t)=>{let n=this.getRoute(`automation`),r=await this.fetch(`${this.baseUrl}${n}/${encodeURIComponent(e)}/runs/${encodeURIComponent(t)}`);return this.unwrapResponse(r)}},this.permissions={check:async e=>{let t=this.getRoute(`permissions`),n=new URLSearchParams({object:e.object,action:e.action});e.recordId!==void 0&&n.set(`recordId`,e.recordId),e.field!==void 0&&n.set(`field`,e.field);let r=await this.fetch(`${this.baseUrl}${t}/check?${n.toString()}`);return this.unwrapResponse(r)},getObjectPermissions:async e=>{let t=this.getRoute(`permissions`),n=await this.fetch(`${this.baseUrl}${t}/objects/${encodeURIComponent(e)}`);return this.unwrapResponse(n)},getEffectivePermissions:async()=>{let e=this.getRoute(`permissions`),t=await this.fetch(`${this.baseUrl}${e}/effective`);return this.unwrapResponse(t)}},this.realtime={connect:async e=>{let t=this.getRoute(`realtime`),n=await this.fetch(`${this.baseUrl}${t}/connect`,{method:`POST`,body:JSON.stringify(e||{})});return this.unwrapResponse(n)},disconnect:async()=>{let e=this.getRoute(`realtime`);await this.fetch(`${this.baseUrl}${e}/disconnect`,{method:`POST`})},subscribe:async e=>{let t=this.getRoute(`realtime`),n=await this.fetch(`${this.baseUrl}${t}/subscribe`,{method:`POST`,body:JSON.stringify(e)});return this.unwrapResponse(n)},unsubscribe:async e=>{let t=this.getRoute(`realtime`);await this.fetch(`${this.baseUrl}${t}/unsubscribe`,{method:`POST`,body:JSON.stringify({subscriptionId:e})})},setPresence:async(e,t)=>{let n=this.getRoute(`realtime`);await this.fetch(`${this.baseUrl}${n}/presence`,{method:`PUT`,body:JSON.stringify({channel:e,state:t})})},getPresence:async e=>{let t=this.getRoute(`realtime`),n=await this.fetch(`${this.baseUrl}${t}/presence/${encodeURIComponent(e)}`);return this.unwrapResponse(n)}},this.workflow={getConfig:async e=>{let t=this.getRoute(`workflow`),n=await this.fetch(`${this.baseUrl}${t}/${encodeURIComponent(e)}/config`);return this.unwrapResponse(n)},getState:async(e,t)=>{let n=this.getRoute(`workflow`),r=await this.fetch(`${this.baseUrl}${n}/${encodeURIComponent(e)}/${encodeURIComponent(t)}/state`);return this.unwrapResponse(r)},transition:async e=>{let t=this.getRoute(`workflow`),n=await this.fetch(`${this.baseUrl}${t}/${encodeURIComponent(e.object)}/${encodeURIComponent(e.recordId)}/transition`,{method:`POST`,body:JSON.stringify({transition:e.transition,comment:e.comment,data:e.data})});return this.unwrapResponse(n)},approve:async e=>{let t=this.getRoute(`workflow`),n=await this.fetch(`${this.baseUrl}${t}/${encodeURIComponent(e.object)}/${encodeURIComponent(e.recordId)}/approve`,{method:`POST`,body:JSON.stringify({comment:e.comment,data:e.data})});return this.unwrapResponse(n)},reject:async e=>{let t=this.getRoute(`workflow`),n=await this.fetch(`${this.baseUrl}${t}/${encodeURIComponent(e.object)}/${encodeURIComponent(e.recordId)}/reject`,{method:`POST`,body:JSON.stringify({reason:e.reason,comment:e.comment})});return this.unwrapResponse(n)}},this.views={list:async(e,t)=>{let n=this.getRoute(`views`),r=new URLSearchParams;t&&r.set(`type`,t);let i=r.toString(),a=await this.fetch(`${this.baseUrl}${n}/${encodeURIComponent(e)}${i?`?${i}`:``}`);return this.unwrapResponse(a)},get:async(e,t)=>{let n=this.getRoute(`views`),r=await this.fetch(`${this.baseUrl}${n}/${encodeURIComponent(e)}/${encodeURIComponent(t)}`);return this.unwrapResponse(r)},create:async(e,t)=>{let n=this.getRoute(`views`),r=await this.fetch(`${this.baseUrl}${n}/${encodeURIComponent(e)}`,{method:`POST`,body:JSON.stringify({object:e,data:t})});return this.unwrapResponse(r)},update:async(e,t,n)=>{let r=this.getRoute(`views`),i=await this.fetch(`${this.baseUrl}${r}/${encodeURIComponent(e)}/${encodeURIComponent(t)}`,{method:`PUT`,body:JSON.stringify({object:e,viewId:t,data:n})});return this.unwrapResponse(i)},delete:async(e,t)=>{let n=this.getRoute(`views`),r=await this.fetch(`${this.baseUrl}${n}/${encodeURIComponent(e)}/${encodeURIComponent(t)}`,{method:`DELETE`});return this.unwrapResponse(r)}},this.notifications={registerDevice:async e=>{let t=this.getRoute(`notifications`),n=await this.fetch(`${this.baseUrl}${t}/devices`,{method:`POST`,body:JSON.stringify(e)});return this.unwrapResponse(n)},unregisterDevice:async e=>{let t=this.getRoute(`notifications`),n=await this.fetch(`${this.baseUrl}${t}/devices/${encodeURIComponent(e)}`,{method:`DELETE`});return this.unwrapResponse(n)},getPreferences:async()=>{let e=this.getRoute(`notifications`),t=await this.fetch(`${this.baseUrl}${e}/preferences`);return this.unwrapResponse(t)},updatePreferences:async e=>{let t=this.getRoute(`notifications`),n=await this.fetch(`${this.baseUrl}${t}/preferences`,{method:`PUT`,body:JSON.stringify({preferences:e})});return this.unwrapResponse(n)},list:async e=>{let t=this.getRoute(`notifications`),n=new URLSearchParams;e?.read!==void 0&&n.set(`read`,String(e.read)),e?.type&&n.set(`type`,e.type),e?.limit&&n.set(`limit`,String(e.limit)),e?.cursor&&n.set(`cursor`,e.cursor);let r=n.toString(),i=await this.fetch(`${this.baseUrl}${t}${r?`?${r}`:``}`);return this.unwrapResponse(i)},markRead:async e=>{let t=this.getRoute(`notifications`),n=await this.fetch(`${this.baseUrl}${t}/read`,{method:`POST`,body:JSON.stringify({ids:e})});return this.unwrapResponse(n)},markAllRead:async()=>{let e=this.getRoute(`notifications`),t=await this.fetch(`${this.baseUrl}${e}/read/all`,{method:`POST`});return this.unwrapResponse(t)}},this.ai={nlq:async e=>{let t=this.getRoute(`ai`),n=await this.fetch(`${this.baseUrl}${t}/nlq`,{method:`POST`,body:JSON.stringify(e)});return this.unwrapResponse(n)},suggest:async e=>{let t=this.getRoute(`ai`),n=await this.fetch(`${this.baseUrl}${t}/suggest`,{method:`POST`,body:JSON.stringify(e)});return this.unwrapResponse(n)},insights:async e=>{let t=this.getRoute(`ai`),n=await this.fetch(`${this.baseUrl}${t}/insights`,{method:`POST`,body:JSON.stringify(e)});return this.unwrapResponse(n)}},this.i18n={getLocales:async()=>{let e=this.getRoute(`i18n`),t=await this.fetch(`${this.baseUrl}${e}/locales`);return this.unwrapResponse(t)},getTranslations:async(e,t)=>{let n=this.getRoute(`i18n`),r=new URLSearchParams;r.set(`locale`,e),t?.namespace&&r.set(`namespace`,t.namespace),t?.keys&&r.set(`keys`,t.keys.join(`,`));let i=await this.fetch(`${this.baseUrl}${n}/translations?${r.toString()}`);return this.unwrapResponse(i)},getFieldLabels:async(e,t)=>{let n=this.getRoute(`i18n`),r=await this.fetch(`${this.baseUrl}${n}/labels/${encodeURIComponent(e)}?locale=${encodeURIComponent(t)}`);return this.unwrapResponse(r)}},this.feed={list:async(e,t,n)=>{let r=this.getRoute(`data`),i=new URLSearchParams;n?.type&&i.set(`type`,n.type),n?.limit&&i.set(`limit`,String(n.limit)),n?.cursor&&i.set(`cursor`,n.cursor);let a=i.toString(),o=await this.fetch(`${this.baseUrl}${r}/${encodeURIComponent(e)}/${encodeURIComponent(t)}/feed${a?`?${a}`:``}`);return this.unwrapResponse(o)},create:async(e,t,n)=>{let r=this.getRoute(`data`),i=await this.fetch(`${this.baseUrl}${r}/${encodeURIComponent(e)}/${encodeURIComponent(t)}/feed`,{method:`POST`,body:JSON.stringify(n)});return this.unwrapResponse(i)},update:async(e,t,n,r)=>{let i=this.getRoute(`data`),a=await this.fetch(`${this.baseUrl}${i}/${encodeURIComponent(e)}/${encodeURIComponent(t)}/feed/${encodeURIComponent(n)}`,{method:`PUT`,body:JSON.stringify(r)});return this.unwrapResponse(a)},delete:async(e,t,n)=>{let r=this.getRoute(`data`),i=await this.fetch(`${this.baseUrl}${r}/${encodeURIComponent(e)}/${encodeURIComponent(t)}/feed/${encodeURIComponent(n)}`,{method:`DELETE`});return this.unwrapResponse(i)},addReaction:async(e,t,n,r)=>{let i=this.getRoute(`data`),a=await this.fetch(`${this.baseUrl}${i}/${encodeURIComponent(e)}/${encodeURIComponent(t)}/feed/${encodeURIComponent(n)}/reactions`,{method:`POST`,body:JSON.stringify({emoji:r})});return this.unwrapResponse(a)},removeReaction:async(e,t,n,r)=>{let i=this.getRoute(`data`),a=await this.fetch(`${this.baseUrl}${i}/${encodeURIComponent(e)}/${encodeURIComponent(t)}/feed/${encodeURIComponent(n)}/reactions/${encodeURIComponent(r)}`,{method:`DELETE`});return this.unwrapResponse(a)},pin:async(e,t,n)=>{let r=this.getRoute(`data`),i=await this.fetch(`${this.baseUrl}${r}/${encodeURIComponent(e)}/${encodeURIComponent(t)}/feed/${encodeURIComponent(n)}/pin`,{method:`POST`});return this.unwrapResponse(i)},unpin:async(e,t,n)=>{let r=this.getRoute(`data`),i=await this.fetch(`${this.baseUrl}${r}/${encodeURIComponent(e)}/${encodeURIComponent(t)}/feed/${encodeURIComponent(n)}/pin`,{method:`DELETE`});return this.unwrapResponse(i)},star:async(e,t,n)=>{let r=this.getRoute(`data`),i=await this.fetch(`${this.baseUrl}${r}/${encodeURIComponent(e)}/${encodeURIComponent(t)}/feed/${encodeURIComponent(n)}/star`,{method:`POST`});return this.unwrapResponse(i)},unstar:async(e,t,n)=>{let r=this.getRoute(`data`),i=await this.fetch(`${this.baseUrl}${r}/${encodeURIComponent(e)}/${encodeURIComponent(t)}/feed/${encodeURIComponent(n)}/star`,{method:`DELETE`});return this.unwrapResponse(i)},search:async(e,t,n,r)=>{let i=this.getRoute(`data`),a=new URLSearchParams;a.set(`query`,n),r?.type&&a.set(`type`,r.type),r?.actorId&&a.set(`actorId`,r.actorId),r?.dateFrom&&a.set(`dateFrom`,r.dateFrom),r?.dateTo&&a.set(`dateTo`,r.dateTo),r?.limit&&a.set(`limit`,String(r.limit)),r?.cursor&&a.set(`cursor`,r.cursor);let o=await this.fetch(`${this.baseUrl}${i}/${encodeURIComponent(e)}/${encodeURIComponent(t)}/feed/search?${a.toString()}`);return this.unwrapResponse(o)},getChangelog:async(e,t,n)=>{let r=this.getRoute(`data`),i=new URLSearchParams;n?.field&&i.set(`field`,n.field),n?.actorId&&i.set(`actorId`,n.actorId),n?.dateFrom&&i.set(`dateFrom`,n.dateFrom),n?.dateTo&&i.set(`dateTo`,n.dateTo),n?.limit&&i.set(`limit`,String(n.limit)),n?.cursor&&i.set(`cursor`,n.cursor);let a=i.toString(),o=await this.fetch(`${this.baseUrl}${r}/${encodeURIComponent(e)}/${encodeURIComponent(t)}/changelog${a?`?${a}`:``}`);return this.unwrapResponse(o)},subscribe:async(e,t,n)=>{let r=this.getRoute(`data`),i=await this.fetch(`${this.baseUrl}${r}/${encodeURIComponent(e)}/${encodeURIComponent(t)}/subscribe`,{method:`POST`,body:JSON.stringify(n||{})});return this.unwrapResponse(i)},unsubscribe:async(e,t)=>{let n=this.getRoute(`data`),r=await this.fetch(`${this.baseUrl}${n}/${encodeURIComponent(e)}/${encodeURIComponent(t)}/subscribe`,{method:`DELETE`});return this.unwrapResponse(r)}},this.data={query:async(e,t)=>{let n=this.getRoute(`data`),r=await this.fetch(`${this.baseUrl}${n}/${e}/query`,{method:`POST`,body:JSON.stringify(t)});return this.unwrapResponse(r)},find:async(e,t={})=>{let n=this.getRoute(`data`),r=new URLSearchParams,i=t,a={};if(`where`in t||`fields`in t||`orderBy`in t||`offset`in t?(i.where&&(a.filter=i.where),i.fields&&(a.select=i.fields),i.orderBy&&(a.sort=i.orderBy),i.limit!=null&&(a.top=i.limit),i.offset!=null&&(a.skip=i.offset),i.aggregations&&(a.aggregations=i.aggregations),i.groupBy&&(a.groupBy=i.groupBy)):Object.assign(a,t),a.top&&r.set(`top`,a.top.toString()),a.skip&&r.set(`skip`,a.skip.toString()),a.sort)if(Array.isArray(a.sort)&&typeof a.sort[0]==`object`)r.set(`sort`,JSON.stringify(a.sort));else{let e=Array.isArray(a.sort)?a.sort.join(`,`):a.sort;r.set(`sort`,e)}a.select&&r.set(`select`,a.select.join(`,`));let o=a.filter??a.filters;o&&(this.isFilterAST(o)||Array.isArray(o)?r.set(`filter`,JSON.stringify(o)):typeof o==`object`&&o&&Object.entries(o).forEach(([e,t])=>{t!=null&&r.append(e,String(t))})),a.aggregations&&r.set(`aggregations`,JSON.stringify(a.aggregations)),a.groupBy&&r.set(`groupBy`,a.groupBy.join(`,`));let s=await this.fetch(`${this.baseUrl}${n}/${e}?${r.toString()}`);return this.unwrapResponse(s)},get:async(e,t)=>{let n=this.getRoute(`data`),r=await this.fetch(`${this.baseUrl}${n}/${e}/${t}`);return this.unwrapResponse(r)},create:async(e,t)=>{let n=this.getRoute(`data`),r=await this.fetch(`${this.baseUrl}${n}/${e}`,{method:`POST`,body:JSON.stringify(t)});return this.unwrapResponse(r)},createMany:async(e,t)=>{let n=this.getRoute(`data`),r=await this.fetch(`${this.baseUrl}${n}/${e}/createMany`,{method:`POST`,body:JSON.stringify(t)});return this.unwrapResponse(r)},update:async(e,t,n,r)=>{let i=this.getRoute(`data`),a={};r?.ifMatch&&(a[`If-Match`]=String(r.ifMatch));let o=await this.fetch(`${this.baseUrl}${i}/${e}/${t}`,{method:`PATCH`,body:JSON.stringify(n),...Object.keys(a).length?{headers:a}:{}});return this.unwrapResponse(o)},batch:async(e,t)=>{let n=this.getRoute(`data`),r=await this.fetch(`${this.baseUrl}${n}/${e}/batch`,{method:`POST`,body:JSON.stringify(t)});return this.unwrapResponse(r)},updateMany:async(e,t,n)=>{let r=this.getRoute(`data`),i={records:t,options:n},a=await this.fetch(`${this.baseUrl}${r}/${e}/updateMany`,{method:`POST`,body:JSON.stringify(i)});return this.unwrapResponse(a)},delete:async(e,t,n)=>{let r=this.getRoute(`data`),i={};n?.ifMatch&&(i[`If-Match`]=String(n.ifMatch));let a=await this.fetch(`${this.baseUrl}${r}/${e}/${t}`,{method:`DELETE`,...Object.keys(i).length?{headers:i}:{}});return this.unwrapResponse(a)},deleteMany:async(e,t,n)=>{let r=this.getRoute(`data`),i={ids:t,options:n},a=await this.fetch(`${this.baseUrl}${r}/${e}/deleteMany`,{method:`POST`,body:JSON.stringify(i)});return this.unwrapResponse(a)}},this.baseUrl=e.baseUrl.replace(/\/$/,``),this.token=e.token,this.projectId=e.projectId,this.fetchImpl=e.fetch||globalThis.fetch.bind(globalThis),this.logger=e.logger||Mg({level:e.debug?`debug`:`info`,format:`pretty`}),this.realtimeAPI=new Ng(this.baseUrl,this.token),this.logger.debug(`ObjectStack client created`,{baseUrl:this.baseUrl})}async connect(){this.logger.debug(`Connecting to ObjectStack server`,{baseUrl:this.baseUrl});try{let e;try{let t=`${this.baseUrl}/api/v1/discovery`;this.logger.debug(`Probing protocol-standard discovery endpoint`,{url:t});let n=await this.fetchImpl(t);if(n.ok){let t=await n.json();e=t.data||t,this.logger.debug(`Discovered via /api/v1/discovery`)}}catch(e){this.logger.debug(`Protocol-standard discovery probe failed`,{error:e.message})}if(!e){let t;try{t=`${new URL(this.baseUrl).origin}/.well-known/objectstack`}catch{t=`/.well-known/objectstack`}this.logger.debug(`Falling back to .well-known discovery`,{url:t});let n=await this.fetchImpl(t);if(!n.ok)throw Error(`Failed to connect to ${t}: ${n.statusText}`);let r=await n.json();e=r.data||r}if(!e)throw Error(`Connection failed: No discovery data returned`);return this.discoveryInfo=e,this.logger.info(`Connected to ObjectStack server`,{version:e.version,apiName:e.apiName,services:e.services}),e}catch(e){throw this.logger.error(`Failed to connect to ObjectStack server`,e,{baseUrl:this.baseUrl}),e}}get capabilities(){let e=this.discoveryInfo?.capabilities;if(!e)return;let t={};for(let[n,r]of Object.entries(e))t[n]=typeof r==`object`&&r?!!r.enabled:!!r;return t}project(e){if(!e)throw Error(`[ObjectStack] project(id): projectId is required`);return new Fg(this,e)}_baseUrl(){return this.baseUrl}_fetch(e,t){return this.fetch(e,t)}_unwrap(e){return this.unwrapResponse(e)}_isFilterAST(e){return this.isFilterAST(e)}setProjectId(e){this.projectId=e,this.logger.debug(`Active project changed`,{projectId:e})}getProjectId(){return this.projectId}get events(){return this.realtimeAPI}isFilterAST(e){return Qf(e)}async unwrapResponse(e){let t=await e.json();return t&&typeof t.success==`boolean`&&`data`in t?t.data:t}async fetch(e,t={}){this.logger.debug(`HTTP request`,{method:t.method||`GET`,url:e,hasBody:!!t.body});let n={"Content-Type":`application/json`,...t.headers||{}};this.token&&(n.Authorization=`Bearer ${this.token}`),this.projectId&&(n[`X-Project-Id`]=this.projectId);let r=await this.fetchImpl(e,{...t,headers:n});if(this.logger.debug(`HTTP response`,{method:t.method||`GET`,url:e,status:r.status,ok:r.ok}),!r.ok){let n;try{n=await r.json()}catch{n={message:r.statusText}}this.logger.error(`HTTP request failed`,void 0,{method:t.method||`GET`,url:e,status:r.status,error:n});let i=n?.message??n?.error?.message??(typeof n?.error==`string`?n.error:void 0)??r.statusText,a=n?.code||n?.error?.code,o=Error(`[ObjectStack] ${a?`${a}: `:``}${i}`);throw o.code=a,o.category=n?.category,o.httpStatus=r.status,o.retryable=n?.retryable,o.details=n?.details||n,o}return r}getRoute(e){let t=this.discoveryInfo?.routes;if(t){let n=t[e];if(n)return n}return{data:`/api/v1/data`,metadata:`/api/v1/meta`,discovery:`/api/v1/discovery`,ui:`/api/v1/ui`,auth:`/api/v1/auth`,analytics:`/api/v1/analytics`,storage:`/api/v1/storage`,automation:`/api/v1/automation`,packages:`/api/v1/packages`,permissions:`/api/v1/permissions`,realtime:`/api/v1/realtime`,workflow:`/api/v1/workflow`,views:`/api/v1/ui/views`,notifications:`/api/v1/notifications`,ai:`/api/v1/ai`,i18n:`/api/v1/i18n`,feed:`/api/v1/feed`,graphql:`/graphql`}[e]||`/api/v1/${e}`}},Fg=class{constructor(e,t){this.meta={getTypes:async()=>{let e=await this.parent._fetch(this.url(`/meta`));return this.parent._unwrap(e)},getItems:async(e,t)=>{let n=new URLSearchParams;t?.packageId&&n.set(`package`,t.packageId);let r=n.toString(),i=await this.parent._fetch(this.url(`/meta/${e}${r?`?${r}`:``}`));return this.parent._unwrap(i)},getItem:async(e,t,n)=>{let r=new URLSearchParams;n?.packageId&&r.set(`package`,n.packageId);let i=r.toString(),a=await this.parent._fetch(this.url(`/meta/${e}/${t}${i?`?${i}`:``}`));return this.parent._unwrap(a)},saveItem:async(e,t,n)=>{let r=await this.parent._fetch(this.url(`/meta/${e}/${t}`),{method:`PUT`,body:JSON.stringify(n)});return this.parent._unwrap(r)},deleteItem:async(e,t)=>{let n=await this.parent._fetch(this.url(`/meta/${encodeURIComponent(e)}/${encodeURIComponent(t)}`),{method:`DELETE`});return this.parent._unwrap(n)}},this.data={query:async(e,t)=>{let n=await this.parent._fetch(this.url(`/data/${e}/query`),{method:`POST`,body:JSON.stringify(t)});return this.parent._unwrap(n)},find:async(e,t={})=>{let n=new URLSearchParams,r=t,i={};if(`where`in t||`fields`in t||`orderBy`in t||`offset`in t?(r.where&&(i.filter=r.where),r.fields&&(i.select=r.fields),r.orderBy&&(i.sort=r.orderBy),r.limit!=null&&(i.top=r.limit),r.offset!=null&&(i.skip=r.offset),r.aggregations&&(i.aggregations=r.aggregations),r.groupBy&&(i.groupBy=r.groupBy)):Object.assign(i,t),i.top&&n.set(`top`,i.top.toString()),i.skip&&n.set(`skip`,i.skip.toString()),i.sort)if(Array.isArray(i.sort)&&typeof i.sort[0]==`object`)n.set(`sort`,JSON.stringify(i.sort));else{let e=Array.isArray(i.sort)?i.sort.join(`,`):i.sort;n.set(`sort`,e)}i.select&&n.set(`select`,i.select.join(`,`));let a=i.filter??i.filters;a&&(this.parent._isFilterAST(a)||Array.isArray(a)?n.set(`filter`,JSON.stringify(a)):typeof a==`object`&&a&&Object.entries(a).forEach(([e,t])=>{t!=null&&n.append(e,String(t))})),i.aggregations&&n.set(`aggregations`,JSON.stringify(i.aggregations)),i.groupBy&&n.set(`groupBy`,i.groupBy.join(`,`));let o=n.toString(),s=await this.parent._fetch(this.url(`/data/${e}${o?`?${o}`:``}`));return this.parent._unwrap(s)},get:async(e,t)=>{let n=await this.parent._fetch(this.url(`/data/${e}/${t}`));return this.parent._unwrap(n)},create:async(e,t)=>{let n=await this.parent._fetch(this.url(`/data/${e}`),{method:`POST`,body:JSON.stringify(t)});return this.parent._unwrap(n)},createMany:async(e,t)=>{let n=await this.parent._fetch(this.url(`/data/${e}/createMany`),{method:`POST`,body:JSON.stringify(t)});return this.parent._unwrap(n)},update:async(e,t,n)=>{let r=await this.parent._fetch(this.url(`/data/${e}/${t}`),{method:`PATCH`,body:JSON.stringify(n)});return this.parent._unwrap(r)},batch:async(e,t)=>{let n=await this.parent._fetch(this.url(`/data/${e}/batch`),{method:`POST`,body:JSON.stringify(t)});return this.parent._unwrap(n)},updateMany:async(e,t,n)=>{let r={records:t,options:n},i=await this.parent._fetch(this.url(`/data/${e}/updateMany`),{method:`POST`,body:JSON.stringify(r)});return this.parent._unwrap(i)},delete:async(e,t)=>{let n=await this.parent._fetch(this.url(`/data/${e}/${t}`),{method:`DELETE`});return this.parent._unwrap(n)},deleteMany:async(e,t,n)=>{let r={ids:t,options:n},i=await this.parent._fetch(this.url(`/data/${e}/deleteMany`),{method:`POST`,body:JSON.stringify(r)});return this.parent._unwrap(i)}},this.packages={list:async()=>{let e=await this.parent._fetch(this.url(`/packages`));return this.parent._unwrap(e)},get:async(e,t)=>{let n=t?`?version=${encodeURIComponent(t)}`:``,r=await this.parent._fetch(this.url(`/packages/${encodeURIComponent(e)}${n}`));return this.parent._unwrap(r)}},this.automation={getFlow:async e=>{let t=await this.parent._fetch(this.url(`/automation/${encodeURIComponent(e)}`));return this.parent._unwrap(t)},execute:async(e,t)=>{let n=await this.parent._fetch(this.url(`/automation/${encodeURIComponent(e)}/trigger`),{method:`POST`,body:JSON.stringify(t??{})});return this.parent._unwrap(n)},listRuns:async(e,t)=>{let n=new URLSearchParams;t?.limit!=null&&n.set(`limit`,String(t.limit)),t?.cursor&&n.set(`cursor`,t.cursor);let r=n.toString(),i=await this.parent._fetch(this.url(`/automation/${encodeURIComponent(e)}/runs${r?`?${r}`:``}`));return this.parent._unwrap(i)},getRun:async(e,t)=>{let n=await this.parent._fetch(this.url(`/automation/${encodeURIComponent(e)}/runs/${encodeURIComponent(t)}`));return this.parent._unwrap(n)}},this.parent=e,this.projectId=t}getProjectId(){return this.projectId}scope(){return`/api/v1/projects/${encodeURIComponent(this.projectId)}`}url(e){return`${this.parent._baseUrl()}${this.scope()}${e}`}},Ig=(0,j.createContext)(null);function Lg({client:e,children:t}){return j.createElement(Ig.Provider,{value:e},t)}function Rg(){let e=(0,j.useContext)(Ig);if(!e)throw Error(`useClient must be used within an ObjectStackProvider. Make sure your component is wrapped with <ObjectStackProvider client={...}>.`);return e}var zg=1,Bg=1e6,Vg=0;function Hg(){return Vg=(Vg+1)%(2**53-1),Vg.toString()}var Ug=new Map,Wg=e=>{if(Ug.has(e))return;let t=setTimeout(()=>{Ug.delete(e),Jg({type:`REMOVE_TOAST`,toastId:e})},Bg);Ug.set(e,t)},Gg=(e,t)=>{switch(t.type){case`ADD_TOAST`:return{...e,toasts:[t.toast,...e.toasts].slice(0,zg)};case`UPDATE_TOAST`:return{...e,toasts:e.toasts.map(e=>e.id===t.toast.id?{...e,...t.toast}:e)};case`DISMISS_TOAST`:{let{toastId:n}=t;return n?Wg(n):e.toasts.forEach(e=>{Wg(e.id)}),{...e,toasts:e.toasts.map(e=>e.id===n||n===void 0?{...e,open:!1}:e)}}case`REMOVE_TOAST`:return t.toastId===void 0?{...e,toasts:[]}:{...e,toasts:e.toasts.filter(e=>e.id!==t.toastId)}}},Kg=[],qg={toasts:[]};function Jg(e){qg=Gg(qg,e),Kg.forEach(e=>{e(qg)})}function q({...e}){let t=Hg(),n=e=>Jg({type:`UPDATE_TOAST`,toast:{...e,id:t}}),r=()=>Jg({type:`DISMISS_TOAST`,toastId:t});return Jg({type:`ADD_TOAST`,toast:{...e,id:t,open:!0,onOpenChange:e=>{e||r()}}}),{id:t,dismiss:r,update:n}}function Yg(){let[e,t]=j.useState(qg);return j.useEffect(()=>(Kg.push(t),()=>{let e=Kg.indexOf(t);e>-1&&Kg.splice(e,1)}),[e]),{...e,toast:q,dismiss:e=>Jg({type:`DISMISS_TOAST`,toastId:e})}}typeof window<`u`&&window.document&&window.document.createElement;function J(e,t,{checkForDefaultPrevented:n=!0}={}){return function(r){if(e?.(r),n===!1||!r.defaultPrevented)return t?.(r)}}function Xg(e,t){if(typeof e==`function`)return e(t);e!=null&&(e.current=t)}function Zg(...e){return t=>{let n=!1,r=e.map(e=>{let r=Xg(e,t);return!n&&typeof r==`function`&&(n=!0),r});if(n)return()=>{for(let t=0;t<r.length;t++){let n=r[t];typeof n==`function`?n():Xg(e[t],null)}}}}function Qg(...e){return j.useCallback(Zg(...e),e)}function $g(e,t){let n=j.createContext(t),r=e=>{let{children:t,...r}=e,i=j.useMemo(()=>r,Object.values(r));return(0,M.jsx)(n.Provider,{value:i,children:t})};r.displayName=e+`Provider`;function i(r){let i=j.useContext(n);if(i)return i;if(t!==void 0)return t;throw Error(`\`${r}\` must be used within \`${e}\``)}return[r,i]}function e_(e,t=[]){let n=[];function r(t,r){let i=j.createContext(r),a=n.length;n=[...n,r];let o=t=>{let{scope:n,children:r,...o}=t,s=n?.[e]?.[a]||i,c=j.useMemo(()=>o,Object.values(o));return(0,M.jsx)(s.Provider,{value:c,children:r})};o.displayName=t+`Provider`;function s(n,o){let s=o?.[e]?.[a]||i,c=j.useContext(s);if(c)return c;if(r!==void 0)return r;throw Error(`\`${n}\` must be used within \`${t}\``)}return[o,s]}let i=()=>{let t=n.map(e=>j.createContext(e));return function(n){let r=n?.[e]||t;return j.useMemo(()=>({[`__scope${e}`]:{...n,[e]:r}}),[n,r])}};return i.scopeName=e,[r,t_(i,...t)]}function t_(...e){let t=e[0];if(e.length===1)return t;let n=()=>{let n=e.map(e=>({useScope:e(),scopeName:e.scopeName}));return function(e){let r=n.reduce((t,{useScope:n,scopeName:r})=>{let i=n(e)[`__scope${r}`];return{...t,...i}},{});return j.useMemo(()=>({[`__scope${t.scopeName}`]:r}),[r])}};return n.scopeName=t.scopeName,n}function n_(e){let t=r_(e),n=j.forwardRef((e,n)=>{let{children:r,...i}=e,a=j.Children.toArray(r),o=a.find(o_);if(o){let e=o.props.children,r=a.map(t=>t===o?j.Children.count(e)>1?j.Children.only(null):j.isValidElement(e)?e.props.children:null:t);return(0,M.jsx)(t,{...i,ref:n,children:j.isValidElement(e)?j.cloneElement(e,void 0,r):null})}return(0,M.jsx)(t,{...i,ref:n,children:r})});return n.displayName=`${e}.Slot`,n}function r_(e){let t=j.forwardRef((e,t)=>{let{children:n,...r}=e;if(j.isValidElement(n)){let e=c_(n),i=s_(r,n.props);return n.type!==j.Fragment&&(i.ref=t?Zg(t,e):e),j.cloneElement(n,i)}return j.Children.count(n)>1?j.Children.only(null):null});return t.displayName=`${e}.SlotClone`,t}var i_=Symbol(`radix.slottable`);function a_(e){let t=({children:e})=>(0,M.jsx)(M.Fragment,{children:e});return t.displayName=`${e}.Slottable`,t.__radixId=i_,t}function o_(e){return j.isValidElement(e)&&typeof e.type==`function`&&`__radixId`in e.type&&e.type.__radixId===i_}function s_(e,t){let n={...t};for(let r in t){let i=e[r],a=t[r];/^on[A-Z]/.test(r)?i&&a?n[r]=(...e)=>{let t=a(...e);return i(...e),t}:i&&(n[r]=i):r===`style`?n[r]={...i,...a}:r===`className`&&(n[r]=[i,a].filter(Boolean).join(` `))}return{...e,...n}}function c_(e){let t=Object.getOwnPropertyDescriptor(e.props,`ref`)?.get,n=t&&`isReactWarning`in t&&t.isReactWarning;return n?e.ref:(t=Object.getOwnPropertyDescriptor(e,`ref`)?.get,n=t&&`isReactWarning`in t&&t.isReactWarning,n?e.props.ref:e.props.ref||e.ref)}function l_(e){let t=e+`CollectionProvider`,[n,r]=e_(t),[i,a]=n(t,{collectionRef:{current:null},itemMap:new Map}),o=e=>{let{scope:t,children:n}=e,r=j.useRef(null),a=j.useRef(new Map).current;return(0,M.jsx)(i,{scope:t,itemMap:a,collectionRef:r,children:n})};o.displayName=t;let s=e+`CollectionSlot`,c=n_(s),l=j.forwardRef((e,t)=>{let{scope:n,children:r}=e;return(0,M.jsx)(c,{ref:Qg(t,a(s,n).collectionRef),children:r})});l.displayName=s;let u=e+`CollectionItemSlot`,d=`data-radix-collection-item`,f=n_(u),p=j.forwardRef((e,t)=>{let{scope:n,children:r,...i}=e,o=j.useRef(null),s=Qg(t,o),c=a(u,n);return j.useEffect(()=>(c.itemMap.set(o,{ref:o,...i}),()=>void c.itemMap.delete(o))),(0,M.jsx)(f,{[d]:``,ref:s,children:r})});p.displayName=u;function m(t){let n=a(e+`CollectionConsumer`,t);return j.useCallback(()=>{let e=n.collectionRef.current;if(!e)return[];let t=Array.from(e.querySelectorAll(`[${d}]`));return Array.from(n.itemMap.values()).sort((e,n)=>t.indexOf(e.ref.current)-t.indexOf(n.ref.current))},[n.collectionRef,n.itemMap])}return[{Provider:o,Slot:l,ItemSlot:p},m,r]}var u_=[`a`,`button`,`div`,`form`,`h2`,`h3`,`img`,`input`,`label`,`li`,`nav`,`ol`,`p`,`select`,`span`,`svg`,`ul`].reduce((e,t)=>{let n=n_(`Primitive.${t}`),r=j.forwardRef((e,r)=>{let{asChild:i,...a}=e,o=i?n:t;return typeof window<`u`&&(window[Symbol.for(`radix-ui`)]=!0),(0,M.jsx)(o,{...a,ref:r})});return r.displayName=`Primitive.${t}`,{...e,[t]:r}},{});function d_(e,t){e&&Ui.flushSync(()=>e.dispatchEvent(t))}function f_(e){let t=j.useRef(e);return j.useEffect(()=>{t.current=e}),j.useMemo(()=>(...e)=>t.current?.(...e),[])}function p_(e,t=globalThis?.document){let n=f_(e);j.useEffect(()=>{let e=e=>{e.key===`Escape`&&n(e)};return t.addEventListener(`keydown`,e,{capture:!0}),()=>t.removeEventListener(`keydown`,e,{capture:!0})},[n,t])}var m_=`DismissableLayer`,h_=`dismissableLayer.update`,g_=`dismissableLayer.pointerDownOutside`,__=`dismissableLayer.focusOutside`,v_,y_=j.createContext({layers:new Set,layersWithOutsidePointerEventsDisabled:new Set,branches:new Set}),b_=j.forwardRef((e,t)=>{let{disableOutsidePointerEvents:n=!1,onEscapeKeyDown:r,onPointerDownOutside:i,onFocusOutside:a,onInteractOutside:o,onDismiss:s,...c}=e,l=j.useContext(y_),[u,d]=j.useState(null),f=u?.ownerDocument??globalThis?.document,[,p]=j.useState({}),m=Qg(t,e=>d(e)),h=Array.from(l.layers),[g]=[...l.layersWithOutsidePointerEventsDisabled].slice(-1),_=h.indexOf(g),v=u?h.indexOf(u):-1,y=l.layersWithOutsidePointerEventsDisabled.size>0,b=v>=_,x=C_(e=>{let t=e.target,n=[...l.branches].some(e=>e.contains(t));!b||n||(i?.(e),o?.(e),e.defaultPrevented||s?.())},f),S=w_(e=>{let t=e.target;[...l.branches].some(e=>e.contains(t))||(a?.(e),o?.(e),e.defaultPrevented||s?.())},f);return p_(e=>{v===l.layers.size-1&&(r?.(e),!e.defaultPrevented&&s&&(e.preventDefault(),s()))},f),j.useEffect(()=>{if(u)return n&&(l.layersWithOutsidePointerEventsDisabled.size===0&&(v_=f.body.style.pointerEvents,f.body.style.pointerEvents=`none`),l.layersWithOutsidePointerEventsDisabled.add(u)),l.layers.add(u),T_(),()=>{n&&l.layersWithOutsidePointerEventsDisabled.size===1&&(f.body.style.pointerEvents=v_)}},[u,f,n,l]),j.useEffect(()=>()=>{u&&(l.layers.delete(u),l.layersWithOutsidePointerEventsDisabled.delete(u),T_())},[u,l]),j.useEffect(()=>{let e=()=>p({});return document.addEventListener(h_,e),()=>document.removeEventListener(h_,e)},[]),(0,M.jsx)(u_.div,{...c,ref:m,style:{pointerEvents:y?b?`auto`:`none`:void 0,...e.style},onFocusCapture:J(e.onFocusCapture,S.onFocusCapture),onBlurCapture:J(e.onBlurCapture,S.onBlurCapture),onPointerDownCapture:J(e.onPointerDownCapture,x.onPointerDownCapture)})});b_.displayName=m_;var x_=`DismissableLayerBranch`,S_=j.forwardRef((e,t)=>{let n=j.useContext(y_),r=j.useRef(null),i=Qg(t,r);return j.useEffect(()=>{let e=r.current;if(e)return n.branches.add(e),()=>{n.branches.delete(e)}},[n.branches]),(0,M.jsx)(u_.div,{...e,ref:i})});S_.displayName=x_;function C_(e,t=globalThis?.document){let n=f_(e),r=j.useRef(!1),i=j.useRef(()=>{});return j.useEffect(()=>{let e=e=>{if(e.target&&!r.current){let r=function(){E_(g_,n,a,{discrete:!0})},a={originalEvent:e};e.pointerType===`touch`?(t.removeEventListener(`click`,i.current),i.current=r,t.addEventListener(`click`,i.current,{once:!0})):r()}else t.removeEventListener(`click`,i.current);r.current=!1},a=window.setTimeout(()=>{t.addEventListener(`pointerdown`,e)},0);return()=>{window.clearTimeout(a),t.removeEventListener(`pointerdown`,e),t.removeEventListener(`click`,i.current)}},[t,n]),{onPointerDownCapture:()=>r.current=!0}}function w_(e,t=globalThis?.document){let n=f_(e),r=j.useRef(!1);return j.useEffect(()=>{let e=e=>{e.target&&!r.current&&E_(__,n,{originalEvent:e},{discrete:!1})};return t.addEventListener(`focusin`,e),()=>t.removeEventListener(`focusin`,e)},[t,n]),{onFocusCapture:()=>r.current=!0,onBlurCapture:()=>r.current=!1}}function T_(){let e=new CustomEvent(h_);document.dispatchEvent(e)}function E_(e,t,n,{discrete:r}){let i=n.originalEvent.target,a=new CustomEvent(e,{bubbles:!1,cancelable:!0,detail:n});t&&i.addEventListener(e,t,{once:!0}),r?d_(i,a):i.dispatchEvent(a)}var D_=b_,O_=S_,k_=globalThis?.document?j.useLayoutEffect:()=>{},A_=`Portal`,j_=j.forwardRef((e,t)=>{let{container:n,...r}=e,[i,a]=j.useState(!1);k_(()=>a(!0),[]);let o=n||i&&globalThis?.document?.body;return o?Ui.createPortal((0,M.jsx)(u_.div,{...r,ref:t}),o):null});j_.displayName=A_;function M_(e,t){return j.useReducer((e,n)=>t[e][n]??e,e)}var N_=e=>{let{present:t,children:n}=e,r=P_(t),i=typeof n==`function`?n({present:r.isPresent}):j.Children.only(n),a=Qg(r.ref,I_(i));return typeof n==`function`||r.isPresent?j.cloneElement(i,{ref:a}):null};N_.displayName=`Presence`;function P_(e){let[t,n]=j.useState(),r=j.useRef(null),i=j.useRef(e),a=j.useRef(`none`),[o,s]=M_(e?`mounted`:`unmounted`,{mounted:{UNMOUNT:`unmounted`,ANIMATION_OUT:`unmountSuspended`},unmountSuspended:{MOUNT:`mounted`,ANIMATION_END:`unmounted`},unmounted:{MOUNT:`mounted`}});return j.useEffect(()=>{let e=F_(r.current);a.current=o===`mounted`?e:`none`},[o]),k_(()=>{let t=r.current,n=i.current;if(n!==e){let r=a.current,o=F_(t);e?s(`MOUNT`):o===`none`||t?.display===`none`?s(`UNMOUNT`):s(n&&r!==o?`ANIMATION_OUT`:`UNMOUNT`),i.current=e}},[e,s]),k_(()=>{if(t){let e,n=t.ownerDocument.defaultView??window,o=a=>{let o=F_(r.current).includes(CSS.escape(a.animationName));if(a.target===t&&o&&(s(`ANIMATION_END`),!i.current)){let r=t.style.animationFillMode;t.style.animationFillMode=`forwards`,e=n.setTimeout(()=>{t.style.animationFillMode===`forwards`&&(t.style.animationFillMode=r)})}},c=e=>{e.target===t&&(a.current=F_(r.current))};return t.addEventListener(`animationstart`,c),t.addEventListener(`animationcancel`,o),t.addEventListener(`animationend`,o),()=>{n.clearTimeout(e),t.removeEventListener(`animationstart`,c),t.removeEventListener(`animationcancel`,o),t.removeEventListener(`animationend`,o)}}else s(`ANIMATION_END`)},[t,s]),{isPresent:[`mounted`,`unmountSuspended`].includes(o),ref:j.useCallback(e=>{r.current=e?getComputedStyle(e):null,n(e)},[])}}function F_(e){return e?.animationName||`none`}function I_(e){let t=Object.getOwnPropertyDescriptor(e.props,`ref`)?.get,n=t&&`isReactWarning`in t&&t.isReactWarning;return n?e.ref:(t=Object.getOwnPropertyDescriptor(e,`ref`)?.get,n=t&&`isReactWarning`in t&&t.isReactWarning,n?e.props.ref:e.props.ref||e.ref)}var L_=j.useInsertionEffect||k_;function R_({prop:e,defaultProp:t,onChange:n=()=>{},caller:r}){let[i,a,o]=z_({defaultProp:t,onChange:n}),s=e!==void 0,c=s?e:i;{let t=j.useRef(e!==void 0);j.useEffect(()=>{let e=t.current;e!==s&&console.warn(`${r} is changing from ${e?`controlled`:`uncontrolled`} to ${s?`controlled`:`uncontrolled`}. Components should not switch from controlled to uncontrolled (or vice versa). Decide between using a controlled or uncontrolled value for the lifetime of the component.`),t.current=s},[s,r])}return[c,j.useCallback(t=>{if(s){let n=B_(t)?t(e):t;n!==e&&o.current?.(n)}else a(t)},[s,e,a,o])]}function z_({defaultProp:e,onChange:t}){let[n,r]=j.useState(e),i=j.useRef(n),a=j.useRef(t);return L_(()=>{a.current=t},[t]),j.useEffect(()=>{i.current!==n&&(a.current?.(n),i.current=n)},[n,i]),[n,r,a]}function B_(e){return typeof e==`function`}var V_=Object.freeze({position:`absolute`,border:0,width:1,height:1,padding:0,margin:-1,overflow:`hidden`,clip:`rect(0, 0, 0, 0)`,whiteSpace:`nowrap`,wordWrap:`normal`}),H_=`VisuallyHidden`,U_=j.forwardRef((e,t)=>(0,M.jsx)(u_.span,{...e,ref:t,style:{...V_,...e.style}}));U_.displayName=H_;var W_=U_,G_=`ToastProvider`,[K_,q_,J_]=l_(`Toast`),[Y_,X_]=e_(`Toast`,[J_]),[Z_,Q_]=Y_(G_),$_=e=>{let{__scopeToast:t,label:n=`Notification`,duration:r=5e3,swipeDirection:i=`right`,swipeThreshold:a=50,children:o}=e,[s,c]=j.useState(null),[l,u]=j.useState(0),d=j.useRef(!1),f=j.useRef(!1);return n.trim()||console.error(`Invalid prop \`label\` supplied to \`${G_}\`. Expected non-empty \`string\`.`),(0,M.jsx)(K_.Provider,{scope:t,children:(0,M.jsx)(Z_,{scope:t,label:n,duration:r,swipeDirection:i,swipeThreshold:a,toastCount:l,viewport:s,onViewportChange:c,onToastAdd:j.useCallback(()=>u(e=>e+1),[]),onToastRemove:j.useCallback(()=>u(e=>e-1),[]),isFocusedToastEscapeKeyDownRef:d,isClosePausedRef:f,children:o})})};$_.displayName=G_;var ev=`ToastViewport`,tv=[`F8`],nv=`toast.viewportPause`,rv=`toast.viewportResume`,iv=j.forwardRef((e,t)=>{let{__scopeToast:n,hotkey:r=tv,label:i=`Notifications ({hotkey})`,...a}=e,o=Q_(ev,n),s=q_(n),c=j.useRef(null),l=j.useRef(null),u=j.useRef(null),d=j.useRef(null),f=Qg(t,d,o.onViewportChange),p=r.join(`+`).replace(/Key/g,``).replace(/Digit/g,``),m=o.toastCount>0;j.useEffect(()=>{let e=e=>{r.length!==0&&r.every(t=>e[t]||e.code===t)&&d.current?.focus()};return document.addEventListener(`keydown`,e),()=>document.removeEventListener(`keydown`,e)},[r]),j.useEffect(()=>{let e=c.current,t=d.current;if(m&&e&&t){let n=()=>{if(!o.isClosePausedRef.current){let e=new CustomEvent(nv);t.dispatchEvent(e),o.isClosePausedRef.current=!0}},r=()=>{if(o.isClosePausedRef.current){let e=new CustomEvent(rv);t.dispatchEvent(e),o.isClosePausedRef.current=!1}},i=t=>{e.contains(t.relatedTarget)||r()},a=()=>{e.contains(document.activeElement)||r()};return e.addEventListener(`focusin`,n),e.addEventListener(`focusout`,i),e.addEventListener(`pointermove`,n),e.addEventListener(`pointerleave`,a),window.addEventListener(`blur`,n),window.addEventListener(`focus`,r),()=>{e.removeEventListener(`focusin`,n),e.removeEventListener(`focusout`,i),e.removeEventListener(`pointermove`,n),e.removeEventListener(`pointerleave`,a),window.removeEventListener(`blur`,n),window.removeEventListener(`focus`,r)}}},[m,o.isClosePausedRef]);let h=j.useCallback(({tabbingDirection:e})=>{let t=s().map(t=>{let n=t.ref.current,r=[n,...jv(n)];return e===`forwards`?r:r.reverse()});return(e===`forwards`?t.reverse():t).flat()},[s]);return j.useEffect(()=>{let e=d.current;if(e){let t=t=>{let n=t.altKey||t.ctrlKey||t.metaKey;if(t.key===`Tab`&&!n){let n=document.activeElement,r=t.shiftKey;if(t.target===e&&r){l.current?.focus();return}let i=h({tabbingDirection:r?`backwards`:`forwards`}),a=i.findIndex(e=>e===n);Mv(i.slice(a+1))?t.preventDefault():r?l.current?.focus():u.current?.focus()}};return e.addEventListener(`keydown`,t),()=>e.removeEventListener(`keydown`,t)}},[s,h]),(0,M.jsxs)(O_,{ref:c,role:`region`,"aria-label":i.replace(`{hotkey}`,p),tabIndex:-1,style:{pointerEvents:m?void 0:`none`},children:[m&&(0,M.jsx)(ov,{ref:l,onFocusFromOutsideViewport:()=>{Mv(h({tabbingDirection:`forwards`}))}}),(0,M.jsx)(K_.Slot,{scope:n,children:(0,M.jsx)(u_.ol,{tabIndex:-1,...a,ref:f})}),m&&(0,M.jsx)(ov,{ref:u,onFocusFromOutsideViewport:()=>{Mv(h({tabbingDirection:`backwards`}))}})]})});iv.displayName=ev;var av=`ToastFocusProxy`,ov=j.forwardRef((e,t)=>{let{__scopeToast:n,onFocusFromOutsideViewport:r,...i}=e,a=Q_(av,n);return(0,M.jsx)(U_,{tabIndex:0,...i,ref:t,style:{position:`fixed`},onFocus:e=>{let t=e.relatedTarget;a.viewport?.contains(t)||r()}})});ov.displayName=av;var sv=`Toast`,cv=`toast.swipeStart`,lv=`toast.swipeMove`,uv=`toast.swipeCancel`,dv=`toast.swipeEnd`,fv=j.forwardRef((e,t)=>{let{forceMount:n,open:r,defaultOpen:i,onOpenChange:a,...o}=e,[s,c]=R_({prop:r,defaultProp:i??!0,onChange:a,caller:sv});return(0,M.jsx)(N_,{present:n||s,children:(0,M.jsx)(hv,{open:s,...o,ref:t,onClose:()=>c(!1),onPause:f_(e.onPause),onResume:f_(e.onResume),onSwipeStart:J(e.onSwipeStart,e=>{e.currentTarget.setAttribute(`data-swipe`,`start`)}),onSwipeMove:J(e.onSwipeMove,e=>{let{x:t,y:n}=e.detail.delta;e.currentTarget.setAttribute(`data-swipe`,`move`),e.currentTarget.style.setProperty(`--radix-toast-swipe-move-x`,`${t}px`),e.currentTarget.style.setProperty(`--radix-toast-swipe-move-y`,`${n}px`)}),onSwipeCancel:J(e.onSwipeCancel,e=>{e.currentTarget.setAttribute(`data-swipe`,`cancel`),e.currentTarget.style.removeProperty(`--radix-toast-swipe-move-x`),e.currentTarget.style.removeProperty(`--radix-toast-swipe-move-y`),e.currentTarget.style.removeProperty(`--radix-toast-swipe-end-x`),e.currentTarget.style.removeProperty(`--radix-toast-swipe-end-y`)}),onSwipeEnd:J(e.onSwipeEnd,e=>{let{x:t,y:n}=e.detail.delta;e.currentTarget.setAttribute(`data-swipe`,`end`),e.currentTarget.style.removeProperty(`--radix-toast-swipe-move-x`),e.currentTarget.style.removeProperty(`--radix-toast-swipe-move-y`),e.currentTarget.style.setProperty(`--radix-toast-swipe-end-x`,`${t}px`),e.currentTarget.style.setProperty(`--radix-toast-swipe-end-y`,`${n}px`),c(!1)})})})});fv.displayName=sv;var[pv,mv]=Y_(sv,{onClose(){}}),hv=j.forwardRef((e,t)=>{let{__scopeToast:n,type:r=`foreground`,duration:i,open:a,onClose:o,onEscapeKeyDown:s,onPause:c,onResume:l,onSwipeStart:u,onSwipeMove:d,onSwipeCancel:f,onSwipeEnd:p,...m}=e,h=Q_(sv,n),[g,_]=j.useState(null),v=Qg(t,e=>_(e)),y=j.useRef(null),b=j.useRef(null),x=i||h.duration,S=j.useRef(0),C=j.useRef(x),w=j.useRef(0),{onToastAdd:T,onToastRemove:E}=h,D=f_(()=>{g?.contains(document.activeElement)&&h.viewport?.focus(),o()}),O=j.useCallback(e=>{!e||e===1/0||(window.clearTimeout(w.current),S.current=new Date().getTime(),w.current=window.setTimeout(D,e))},[D]);j.useEffect(()=>{let e=h.viewport;if(e){let t=()=>{O(C.current),l?.()},n=()=>{let e=new Date().getTime()-S.current;C.current-=e,window.clearTimeout(w.current),c?.()};return e.addEventListener(nv,n),e.addEventListener(rv,t),()=>{e.removeEventListener(nv,n),e.removeEventListener(rv,t)}}},[h.viewport,x,c,l,O]),j.useEffect(()=>{a&&!h.isClosePausedRef.current&&O(x)},[a,x,h.isClosePausedRef,O]),j.useEffect(()=>(T(),()=>E()),[T,E]);let ee=j.useMemo(()=>g?Ev(g):null,[g]);return h.viewport?(0,M.jsxs)(M.Fragment,{children:[ee&&(0,M.jsx)(gv,{__scopeToast:n,role:`status`,"aria-live":r===`foreground`?`assertive`:`polite`,children:ee}),(0,M.jsx)(pv,{scope:n,onClose:D,children:Ui.createPortal((0,M.jsx)(K_.ItemSlot,{scope:n,children:(0,M.jsx)(D_,{asChild:!0,onEscapeKeyDown:J(s,()=>{h.isFocusedToastEscapeKeyDownRef.current||D(),h.isFocusedToastEscapeKeyDownRef.current=!1}),children:(0,M.jsx)(u_.li,{tabIndex:0,"data-state":a?`open`:`closed`,"data-swipe-direction":h.swipeDirection,...m,ref:v,style:{userSelect:`none`,touchAction:`none`,...e.style},onKeyDown:J(e.onKeyDown,e=>{e.key===`Escape`&&(s?.(e.nativeEvent),e.nativeEvent.defaultPrevented||(h.isFocusedToastEscapeKeyDownRef.current=!0,D()))}),onPointerDown:J(e.onPointerDown,e=>{e.button===0&&(y.current={x:e.clientX,y:e.clientY})}),onPointerMove:J(e.onPointerMove,e=>{if(!y.current)return;let t=e.clientX-y.current.x,n=e.clientY-y.current.y,r=!!b.current,i=[`left`,`right`].includes(h.swipeDirection),a=[`left`,`up`].includes(h.swipeDirection)?Math.min:Math.max,o=i?a(0,t):0,s=i?0:a(0,n),c=e.pointerType===`touch`?10:2,l={x:o,y:s},f={originalEvent:e,delta:l};r?(b.current=l,Dv(lv,d,f,{discrete:!1})):Ov(l,h.swipeDirection,c)?(b.current=l,Dv(cv,u,f,{discrete:!1}),e.target.setPointerCapture(e.pointerId)):(Math.abs(t)>c||Math.abs(n)>c)&&(y.current=null)}),onPointerUp:J(e.onPointerUp,e=>{let t=b.current,n=e.target;if(n.hasPointerCapture(e.pointerId)&&n.releasePointerCapture(e.pointerId),b.current=null,y.current=null,t){let n=e.currentTarget,r={originalEvent:e,delta:t};Ov(t,h.swipeDirection,h.swipeThreshold)?Dv(dv,p,r,{discrete:!0}):Dv(uv,f,r,{discrete:!0}),n.addEventListener(`click`,e=>e.preventDefault(),{once:!0})}})})})}),h.viewport)})]}):null}),gv=e=>{let{__scopeToast:t,children:n,...r}=e,i=Q_(sv,t),[a,o]=j.useState(!1),[s,c]=j.useState(!1);return kv(()=>o(!0)),j.useEffect(()=>{let e=window.setTimeout(()=>c(!0),1e3);return()=>window.clearTimeout(e)},[]),s?null:(0,M.jsx)(j_,{asChild:!0,children:(0,M.jsx)(U_,{...r,children:a&&(0,M.jsxs)(M.Fragment,{children:[i.label,` `,n]})})})},_v=`ToastTitle`,vv=j.forwardRef((e,t)=>{let{__scopeToast:n,...r}=e;return(0,M.jsx)(u_.div,{...r,ref:t})});vv.displayName=_v;var yv=`ToastDescription`,bv=j.forwardRef((e,t)=>{let{__scopeToast:n,...r}=e;return(0,M.jsx)(u_.div,{...r,ref:t})});bv.displayName=yv;var xv=`ToastAction`,Sv=j.forwardRef((e,t)=>{let{altText:n,...r}=e;return n.trim()?(0,M.jsx)(Tv,{altText:n,asChild:!0,children:(0,M.jsx)(wv,{...r,ref:t})}):(console.error(`Invalid prop \`altText\` supplied to \`${xv}\`. Expected non-empty \`string\`.`),null)});Sv.displayName=xv;var Cv=`ToastClose`,wv=j.forwardRef((e,t)=>{let{__scopeToast:n,...r}=e,i=mv(Cv,n);return(0,M.jsx)(Tv,{asChild:!0,children:(0,M.jsx)(u_.button,{type:`button`,...r,ref:t,onClick:J(e.onClick,i.onClose)})})});wv.displayName=Cv;var Tv=j.forwardRef((e,t)=>{let{__scopeToast:n,altText:r,...i}=e;return(0,M.jsx)(u_.div,{"data-radix-toast-announce-exclude":``,"data-radix-toast-announce-alt":r||void 0,...i,ref:t})});function Ev(e){let t=[];return Array.from(e.childNodes).forEach(e=>{if(e.nodeType===e.TEXT_NODE&&e.textContent&&t.push(e.textContent),Av(e)){let n=e.ariaHidden||e.hidden||e.style.display===`none`,r=e.dataset.radixToastAnnounceExclude===``;if(!n)if(r){let n=e.dataset.radixToastAnnounceAlt;n&&t.push(n)}else t.push(...Ev(e))}}),t}function Dv(e,t,n,{discrete:r}){let i=n.originalEvent.currentTarget,a=new CustomEvent(e,{bubbles:!0,cancelable:!0,detail:n});t&&i.addEventListener(e,t,{once:!0}),r?d_(i,a):i.dispatchEvent(a)}var Ov=(e,t,n=0)=>{let r=Math.abs(e.x),i=Math.abs(e.y),a=r>i;return t===`left`||t===`right`?a&&r>n:!a&&i>n};function kv(e=()=>{}){let t=f_(e);k_(()=>{let e=0,n=0;return e=window.requestAnimationFrame(()=>n=window.requestAnimationFrame(t)),()=>{window.cancelAnimationFrame(e),window.cancelAnimationFrame(n)}},[t])}function Av(e){return e.nodeType===e.ELEMENT_NODE}function jv(e){let t=[],n=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,{acceptNode:e=>{let t=e.tagName===`INPUT`&&e.type===`hidden`;return e.disabled||e.hidden||t?NodeFilter.FILTER_SKIP:e.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});for(;n.nextNode();)t.push(n.currentNode);return t}function Mv(e){let t=document.activeElement;return e.some(e=>e===t?!0:(e.focus(),document.activeElement!==t))}var Nv=$_,Pv=iv,Fv=fv,Iv=vv,Lv=bv,Rv=Sv,zv=wv;function Bv(e){var t,n,r=``;if(typeof e==`string`||typeof e==`number`)r+=e;else if(typeof e==`object`)if(Array.isArray(e)){var i=e.length;for(t=0;t<i;t++)e[t]&&(n=Bv(e[t]))&&(r&&(r+=` `),r+=n)}else for(n in e)e[n]&&(r&&(r+=` `),r+=n);return r}function Vv(){for(var e,t,n=0,r=``,i=arguments.length;n<i;n++)(e=arguments[n])&&(t=Bv(e))&&(r&&(r+=` `),r+=t);return r}var Hv=e=>typeof e==`boolean`?`${e}`:e===0?`0`:e,Uv=Vv,Wv=(e,t)=>n=>{if(t?.variants==null)return Uv(e,n?.class,n?.className);let{variants:r,defaultVariants:i}=t,a=Object.keys(r).map(e=>{let t=n?.[e],a=i?.[e];if(t===null)return null;let o=Hv(t)||Hv(a);return r[e][o]}),o=n&&Object.entries(n).reduce((e,t)=>{let[n,r]=t;return r===void 0||(e[n]=r),e},{});return Uv(e,a,t?.compoundVariants?.reduce((e,t)=>{let{class:n,className:r,...a}=t;return Object.entries(a).every(e=>{let[t,n]=e;return Array.isArray(n)?n.includes({...i,...o}[t]):{...i,...o}[t]===n})?[...e,n,r]:e},[]),n?.class,n?.className)},Gv=(...e)=>e.filter((e,t,n)=>!!e&&e.trim()!==``&&n.indexOf(e)===t).join(` `).trim(),Kv=e=>e.replace(/([a-z0-9])([A-Z])/g,`$1-$2`).toLowerCase(),qv=e=>e.replace(/^([A-Z])|[\s-_]+(\w)/g,(e,t,n)=>n?n.toUpperCase():t.toLowerCase()),Jv=e=>{let t=qv(e);return t.charAt(0).toUpperCase()+t.slice(1)},Yv={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`},Xv=e=>{for(let t in e)if(t.startsWith(`aria-`)||t===`role`||t===`title`)return!0;return!1},Zv=(0,j.createContext)({}),Qv=()=>(0,j.useContext)(Zv),$v=(0,j.forwardRef)(({color:e,size:t,strokeWidth:n,absoluteStrokeWidth:r,className:i=``,children:a,iconNode:o,...s},c)=>{let{size:l=24,strokeWidth:u=2,absoluteStrokeWidth:d=!1,color:f=`currentColor`,className:p=``}=Qv()??{},m=r??d?Number(n??u)*24/Number(t??l):n??u;return(0,j.createElement)(`svg`,{ref:c,...Yv,width:t??l??Yv.width,height:t??l??Yv.height,stroke:e??f,strokeWidth:m,className:Gv(`lucide`,p,i),...!a&&!Xv(s)&&{"aria-hidden":`true`},...s},[...o.map(([e,t])=>(0,j.createElement)(e,t)),...Array.isArray(a)?a:[a]])}),ey=(e,t)=>{let n=(0,j.forwardRef)(({className:n,...r},i)=>(0,j.createElement)($v,{ref:i,iconNode:t,className:Gv(`lucide-${Kv(Jv(e))}`,`lucide-${e}`,n),...r}));return n.displayName=Jv(e),n},ty=ey(`arrow-right`,[[`path`,{d:`M5 12h14`,key:`1ays0h`}],[`path`,{d:`m12 5 7 7-7 7`,key:`xquz4c`}]]),ny=ey(`building-2`,[[`path`,{d:`M10 12h4`,key:`a56b0p`}],[`path`,{d:`M10 8h4`,key:`1sr2af`}],[`path`,{d:`M14 21v-3a2 2 0 0 0-4 0v3`,key:`1rgiei`}],[`path`,{d:`M6 10H4a2 2 0 0 0-2 2v7a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V9a2 2 0 0 0-2-2h-2`,key:`secmi2`}],[`path`,{d:`M6 21V5a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v16`,key:`16ra0t`}]]),ry=ey(`check`,[[`path`,{d:`M20 6 9 17l-5-5`,key:`1gmf2c`}]]),iy=ey(`chevron-down`,[[`path`,{d:`m6 9 6 6 6-6`,key:`qrunsl`}]]),ay=ey(`chevron-right`,[[`path`,{d:`m9 18 6-6-6-6`,key:`mthhwq`}]]),oy=ey(`chevron-up`,[[`path`,{d:`m18 15-6-6-6 6`,key:`153udz`}]]),sy=ey(`chevrons-up-down`,[[`path`,{d:`m7 15 5 5 5-5`,key:`1hf1tw`}],[`path`,{d:`m7 9 5-5 5 5`,key:`sgt6xg`}]]),cy=ey(`circle-check`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`m9 12 2 2 4-4`,key:`dzmm74`}]]),ly=ey(`circle-user-round`,[[`path`,{d:`M17.925 20.056a6 6 0 0 0-11.851.001`,key:`z69sun`}],[`circle`,{cx:`12`,cy:`11`,r:`4`,key:`1gt34v`}],[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}]]),uy=ey(`circle-x`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`m15 9-6 6`,key:`1uzhvr`}],[`path`,{d:`m9 9 6 6`,key:`z0biqf`}]]),dy=ey(`circle`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}]]),fy=ey(`clock`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`M12 6v6l4 2`,key:`mmk7yg`}]]),py=ey(`copy`,[[`rect`,{width:`14`,height:`14`,x:`8`,y:`8`,rx:`2`,ry:`2`,key:`17jyea`}],[`path`,{d:`M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2`,key:`zix9uf`}]]),my=ey(`ellipsis-vertical`,[[`circle`,{cx:`12`,cy:`12`,r:`1`,key:`41hilf`}],[`circle`,{cx:`12`,cy:`5`,r:`1`,key:`gxeob9`}],[`circle`,{cx:`12`,cy:`19`,r:`1`,key:`lyex9k`}]]),hy=ey(`gallery-vertical-end`,[[`path`,{d:`M7 2h10`,key:`nczekb`}],[`path`,{d:`M5 6h14`,key:`u2x4p`}],[`rect`,{width:`18`,height:`12`,x:`3`,y:`10`,rx:`2`,key:`l0tzu3`}]]),gy=ey(`globe`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`M12 2a14.5 14.5 0 0 0 0 20 14.5 14.5 0 0 0 0-20`,key:`13o1zl`}],[`path`,{d:`M2 12h20`,key:`9i4pu4`}]]),_y=ey(`house`,[[`path`,{d:`M15 21v-8a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v8`,key:`5wwlr5`}],[`path`,{d:`M3 10a2 2 0 0 1 .709-1.528l7-6a2 2 0 0 1 2.582 0l7 6A2 2 0 0 1 21 10v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z`,key:`r6nss1`}]]),vy=ey(`inbox`,[[`polyline`,{points:`22 12 16 12 14 15 10 15 8 12 2 12`,key:`o97t9d`}],[`path`,{d:`M5.45 5.11 2 12v6a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-6l-3.45-6.89A2 2 0 0 0 16.76 4H7.24a2 2 0 0 0-1.79 1.11z`,key:`oot6mr`}]]),yy=ey(`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`}]]),by=ey(`languages`,[[`path`,{d:`m5 8 6 6`,key:`1wu5hv`}],[`path`,{d:`m4 14 6-6 2-3`,key:`1k1g8d`}],[`path`,{d:`M2 5h12`,key:`or177f`}],[`path`,{d:`M7 2h1`,key:`1t2jsx`}],[`path`,{d:`m22 22-5-10-5 10`,key:`don7ne`}],[`path`,{d:`M14 18h6`,key:`1m8k6r`}]]),xy=ey(`link-2-off`,[[`path`,{d:`M9 17H7A5 5 0 0 1 7 7`,key:`10o201`}],[`path`,{d:`M15 7h2a5 5 0 0 1 4 8`,key:`1d3206`}],[`line`,{x1:`8`,x2:`12`,y1:`12`,y2:`12`,key:`rvw6j4`}],[`line`,{x1:`2`,x2:`22`,y1:`2`,y2:`22`,key:`a6p6uj`}]]),Sy=ey(`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`}]]),Cy=ey(`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`}]]),wy=ey(`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`}]]),Ty=ey(`monitor`,[[`rect`,{width:`20`,height:`14`,x:`2`,y:`3`,rx:`2`,key:`48i651`}],[`line`,{x1:`8`,x2:`16`,y1:`21`,y2:`21`,key:`1svkeh`}],[`line`,{x1:`12`,x2:`12`,y1:`17`,y2:`21`,key:`vw1qmm`}]]),Ey=ey(`moon`,[[`path`,{d:`M20.985 12.486a9 9 0 1 1-9.473-9.472c.405-.022.617.46.402.803a6 6 0 0 0 8.268 8.268c.344-.215.825-.004.803.401`,key:`kfwtm`}]]),Dy=ey(`panel-left`,[[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`,key:`afitv7`}],[`path`,{d:`M9 3v18`,key:`fh3hqa`}]]),Oy=ey(`plus`,[[`path`,{d:`M5 12h14`,key:`1ays0h`}],[`path`,{d:`M12 5v14`,key:`s699le`}]]),ky=ey(`refresh-cw`,[[`path`,{d:`M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8`,key:`v9h5vc`}],[`path`,{d:`M21 3v5h-5`,key:`1q7to0`}],[`path`,{d:`M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16`,key:`3uifl3`}],[`path`,{d:`M8 16H3v5`,key:`1cv678`}]]),Ay=ey(`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`}]]),jy=ey(`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`}]]),My=ey(`shield-check`,[[`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`}],[`path`,{d:`m9 12 2 2 4-4`,key:`dzmm74`}]]),Ny=ey(`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`}]]),Py=ey(`smartphone`,[[`rect`,{width:`14`,height:`20`,x:`5`,y:`2`,rx:`2`,ry:`2`,key:`1yt0o3`}],[`path`,{d:`M12 18h.01`,key:`mhygvu`}]]),Fy=ey(`sun`,[[`circle`,{cx:`12`,cy:`12`,r:`4`,key:`4exip2`}],[`path`,{d:`M12 2v2`,key:`tus03m`}],[`path`,{d:`M12 20v2`,key:`1lh1kg`}],[`path`,{d:`m4.93 4.93 1.41 1.41`,key:`149t6j`}],[`path`,{d:`m17.66 17.66 1.41 1.41`,key:`ptbguv`}],[`path`,{d:`M2 12h2`,key:`1t8f8n`}],[`path`,{d:`M20 12h2`,key:`1q8mjw`}],[`path`,{d:`m6.34 17.66-1.41 1.41`,key:`1m8zz5`}],[`path`,{d:`m19.07 4.93-1.41 1.41`,key:`1shlcs`}]]),Iy=ey(`tablet`,[[`rect`,{width:`16`,height:`20`,x:`4`,y:`2`,rx:`2`,ry:`2`,key:`76otgf`}],[`line`,{x1:`12`,x2:`12.01`,y1:`18`,y2:`18`,key:`1dp563`}]]),Ly=ey(`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`}]]),Ry=ey(`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`}]]),zy=ey(`upload`,[[`path`,{d:`M12 3v12`,key:`1x0j5s`}],[`path`,{d:`m17 8-5-5-5 5`,key:`7q97r8`}],[`path`,{d:`M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4`,key:`ih7n3h`}]]),By=ey(`user-minus`,[[`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:`22`,x2:`16`,y1:`11`,y2:`11`,key:`1shjgl`}]]),Vy=ey(`user-plus`,[[`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:`19`,x2:`19`,y1:`8`,y2:`14`,key:`1bvyxn`}],[`line`,{x1:`22`,x2:`16`,y1:`11`,y2:`11`,key:`1shjgl`}]]),Hy=ey(`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`}]]),Uy=ey(`users-round`,[[`path`,{d:`M18 21a8 8 0 0 0-16 0`,key:`3ypg7q`}],[`circle`,{cx:`10`,cy:`8`,r:`5`,key:`o932ke`}],[`path`,{d:`M22 20c0-3.37-2-6.5-4-8a5 5 0 0 0-.45-8.3`,key:`10s06x`}]]),Wy=ey(`users`,[[`path`,{d:`M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2`,key:`1yyitq`}],[`path`,{d:`M16 3.128a4 4 0 0 1 0 7.744`,key:`16gr8j`}],[`path`,{d:`M22 21v-2a4 4 0 0 0-3-3.87`,key:`kshegd`}],[`circle`,{cx:`9`,cy:`7`,r:`4`,key:`nufk8`}]]),Gy=ey(`x`,[[`path`,{d:`M18 6 6 18`,key:`1bl5f8`}],[`path`,{d:`m6 6 12 12`,key:`d8bk6v`}]]),Ky=(e,t)=>{let n=Array(e.length+t.length);for(let t=0;t<e.length;t++)n[t]=e[t];for(let r=0;r<t.length;r++)n[e.length+r]=t[r];return n},qy=(e,t)=>({classGroupId:e,validator:t}),Jy=(e=new Map,t=null,n)=>({nextPart:e,validators:t,classGroupId:n}),Yy=`-`,Xy=[],Zy=`arbitrary..`,Qy=e=>{let t=tb(e),{conflictingClassGroups:n,conflictingClassGroupModifiers:r}=e;return{getClassGroupId:e=>{if(e.startsWith(`[`)&&e.endsWith(`]`))return eb(e);let n=e.split(Yy);return $y(n,+(n[0]===``&&n.length>1),t)},getConflictingClassGroupIds:(e,t)=>{if(t){let t=r[e],i=n[e];return t?i?Ky(i,t):t:i||Xy}return n[e]||Xy}}},$y=(e,t,n)=>{if(e.length-t===0)return n.classGroupId;let r=e[t],i=n.nextPart.get(r);if(i){let n=$y(e,t+1,i);if(n)return n}let a=n.validators;if(a===null)return;let o=t===0?e.join(Yy):e.slice(t).join(Yy),s=a.length;for(let e=0;e<s;e++){let t=a[e];if(t.validator(o))return t.classGroupId}},eb=e=>e.slice(1,-1).indexOf(`:`)===-1?void 0:(()=>{let t=e.slice(1,-1),n=t.indexOf(`:`),r=t.slice(0,n);return r?Zy+r:void 0})(),tb=e=>{let{theme:t,classGroups:n}=e;return nb(n,t)},nb=(e,t)=>{let n=Jy();for(let r in e){let i=e[r];rb(i,n,r,t)}return n},rb=(e,t,n,r)=>{let i=e.length;for(let a=0;a<i;a++){let i=e[a];ib(i,t,n,r)}},ib=(e,t,n,r)=>{if(typeof e==`string`){ab(e,t,n);return}if(typeof e==`function`){ob(e,t,n,r);return}sb(e,t,n,r)},ab=(e,t,n)=>{let r=e===``?t:cb(t,e);r.classGroupId=n},ob=(e,t,n,r)=>{if(lb(e)){rb(e(r),t,n,r);return}t.validators===null&&(t.validators=[]),t.validators.push(qy(n,e))},sb=(e,t,n,r)=>{let i=Object.entries(e),a=i.length;for(let e=0;e<a;e++){let[a,o]=i[e];rb(o,cb(t,a),n,r)}},cb=(e,t)=>{let n=e,r=t.split(Yy),i=r.length;for(let e=0;e<i;e++){let t=r[e],i=n.nextPart.get(t);i||(i=Jy(),n.nextPart.set(t,i)),n=i}return n},lb=e=>`isThemeGetter`in e&&e.isThemeGetter===!0,ub=e=>{if(e<1)return{get:()=>void 0,set:()=>{}};let t=0,n=Object.create(null),r=Object.create(null),i=(i,a)=>{n[i]=a,t++,t>e&&(t=0,r=n,n=Object.create(null))};return{get(e){let t=n[e];if(t!==void 0)return t;if((t=r[e])!==void 0)return i(e,t),t},set(e,t){e in n?n[e]=t:i(e,t)}}},db=`!`,fb=`:`,pb=[],mb=(e,t,n,r,i)=>({modifiers:e,hasImportantModifier:t,baseClassName:n,maybePostfixModifierPosition:r,isExternal:i}),hb=e=>{let{prefix:t,experimentalParseClassName:n}=e,r=e=>{let t=[],n=0,r=0,i=0,a,o=e.length;for(let s=0;s<o;s++){let o=e[s];if(n===0&&r===0){if(o===fb){t.push(e.slice(i,s)),i=s+1;continue}if(o===`/`){a=s;continue}}o===`[`?n++:o===`]`?n--:o===`(`?r++:o===`)`&&r--}let s=t.length===0?e:e.slice(i),c=s,l=!1;s.endsWith(db)?(c=s.slice(0,-1),l=!0):s.startsWith(db)&&(c=s.slice(1),l=!0);let u=a&&a>i?a-i:void 0;return mb(t,l,c,u)};if(t){let e=t+fb,n=r;r=t=>t.startsWith(e)?n(t.slice(e.length)):mb(pb,!1,t,void 0,!0)}if(n){let e=r;r=t=>n({className:t,parseClassName:e})}return r},gb=e=>{let t=new Map;return e.orderSensitiveModifiers.forEach((e,n)=>{t.set(e,1e6+n)}),e=>{let n=[],r=[];for(let i=0;i<e.length;i++){let a=e[i],o=a[0]===`[`,s=t.has(a);o||s?(r.length>0&&(r.sort(),n.push(...r),r=[]),n.push(a)):r.push(a)}return r.length>0&&(r.sort(),n.push(...r)),n}},_b=e=>({cache:ub(e.cacheSize),parseClassName:hb(e),sortModifiers:gb(e),postfixLookupClassGroupIds:vb(e),...Qy(e)}),vb=e=>{let t=Object.create(null),n=e.postfixLookupClassGroups;if(n)for(let e=0;e<n.length;e++)t[n[e]]=!0;return t},yb=/\s+/,bb=(e,t)=>{let{parseClassName:n,getClassGroupId:r,getConflictingClassGroupIds:i,sortModifiers:a,postfixLookupClassGroupIds:o}=t,s=[],c=e.trim().split(yb),l=``;for(let e=c.length-1;e>=0;--e){let t=c[e],{isExternal:u,modifiers:d,hasImportantModifier:f,baseClassName:p,maybePostfixModifierPosition:m}=n(t);if(u){l=t+(l.length>0?` `+l:l);continue}let h=!!m,g;if(h){g=r(p.substring(0,m));let e=g&&o[g]?r(p):void 0;e&&e!==g&&(g=e,h=!1)}else g=r(p);if(!g){if(!h){l=t+(l.length>0?` `+l:l);continue}if(g=r(p),!g){l=t+(l.length>0?` `+l:l);continue}h=!1}let _=d.length===0?``:d.length===1?d[0]:a(d).join(`:`),v=f?_+db:_,y=v+g;if(s.indexOf(y)>-1)continue;s.push(y);let b=i(g,h);for(let e=0;e<b.length;++e){let t=b[e];s.push(v+t)}l=t+(l.length>0?` `+l:l)}return l},xb=(...e)=>{let t=0,n,r,i=``;for(;t<e.length;)(n=e[t++])&&(r=Sb(n))&&(i&&(i+=` `),i+=r);return i},Sb=e=>{if(typeof e==`string`)return e;let t,n=``;for(let r=0;r<e.length;r++)e[r]&&(t=Sb(e[r]))&&(n&&(n+=` `),n+=t);return n},Cb=(e,...t)=>{let n,r,i,a,o=o=>(n=_b(t.reduce((e,t)=>t(e),e())),r=n.cache.get,i=n.cache.set,a=s,s(o)),s=e=>{let t=r(e);if(t)return t;let a=bb(e,n);return i(e,a),a};return a=o,(...e)=>a(xb(...e))},wb=[],Tb=e=>{let t=t=>t[e]||wb;return t.isThemeGetter=!0,t},Eb=/^\[(?:(\w[\w-]*):)?(.+)\]$/i,Db=/^\((?:(\w[\w-]*):)?(.+)\)$/i,Ob=/^\d+(?:\.\d+)?\/\d+(?:\.\d+)?$/,kb=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,Ab=/\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/,jb=/^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix)\(.+\)$/,Mb=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,Nb=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,Pb=e=>Ob.test(e),Fb=e=>!!e&&!Number.isNaN(Number(e)),Ib=e=>!!e&&Number.isInteger(Number(e)),Lb=e=>e.endsWith(`%`)&&Fb(e.slice(0,-1)),Rb=e=>kb.test(e),zb=()=>!0,Bb=e=>Ab.test(e)&&!jb.test(e),Vb=()=>!1,Hb=e=>Mb.test(e),Ub=e=>Nb.test(e),Wb=e=>!Y(e)&&!X(e),Gb=e=>e.startsWith(`@container`)&&(e[10]===`/`&&e[11]!==void 0||e[11]===`s`&&e[16]!==void 0&&e.startsWith(`-size/`,10)||e[11]===`n`&&e[18]!==void 0&&e.startsWith(`-normal/`,10)),Kb=e=>sx(e,dx,Vb),Y=e=>Eb.test(e),qb=e=>sx(e,fx,Bb),Jb=e=>sx(e,px,Fb),Yb=e=>sx(e,hx,zb),Xb=e=>sx(e,mx,Vb),Zb=e=>sx(e,lx,Vb),Qb=e=>sx(e,ux,Ub),$b=e=>sx(e,gx,Hb),X=e=>Db.test(e),ex=e=>cx(e,fx),tx=e=>cx(e,mx),nx=e=>cx(e,lx),rx=e=>cx(e,dx),ix=e=>cx(e,ux),ax=e=>cx(e,gx,!0),ox=e=>cx(e,hx,!0),sx=(e,t,n)=>{let r=Eb.exec(e);return r?r[1]?t(r[1]):n(r[2]):!1},cx=(e,t,n=!1)=>{let r=Db.exec(e);return r?r[1]?t(r[1]):n:!1},lx=e=>e===`position`||e===`percentage`,ux=e=>e===`image`||e===`url`,dx=e=>e===`length`||e===`size`||e===`bg-size`,fx=e=>e===`length`,px=e=>e===`number`,mx=e=>e===`family-name`,hx=e=>e===`number`||e===`weight`,gx=e=>e===`shadow`,_x=Cb(()=>{let e=Tb(`color`),t=Tb(`font`),n=Tb(`text`),r=Tb(`font-weight`),i=Tb(`tracking`),a=Tb(`leading`),o=Tb(`breakpoint`),s=Tb(`container`),c=Tb(`spacing`),l=Tb(`radius`),u=Tb(`shadow`),d=Tb(`inset-shadow`),f=Tb(`text-shadow`),p=Tb(`drop-shadow`),m=Tb(`blur`),h=Tb(`perspective`),g=Tb(`aspect`),_=Tb(`ease`),v=Tb(`animate`),y=()=>[`auto`,`avoid`,`all`,`avoid-page`,`page`,`left`,`right`,`column`],b=()=>[`center`,`top`,`bottom`,`left`,`right`,`top-left`,`left-top`,`top-right`,`right-top`,`bottom-right`,`right-bottom`,`bottom-left`,`left-bottom`],x=()=>[...b(),X,Y],S=()=>[`auto`,`hidden`,`clip`,`visible`,`scroll`],C=()=>[`auto`,`contain`,`none`],w=()=>[X,Y,c],T=()=>[Pb,`full`,`auto`,...w()],E=()=>[Ib,`none`,`subgrid`,X,Y],D=()=>[`auto`,{span:[`full`,Ib,X,Y]},Ib,X,Y],O=()=>[Ib,`auto`,X,Y],ee=()=>[`auto`,`min`,`max`,`fr`,X,Y],te=()=>[`start`,`end`,`center`,`between`,`around`,`evenly`,`stretch`,`baseline`,`center-safe`,`end-safe`],ne=()=>[`start`,`end`,`center`,`stretch`,`center-safe`,`end-safe`],re=()=>[`auto`,...w()],ie=()=>[Pb,`auto`,`full`,`dvw`,`dvh`,`lvw`,`lvh`,`svw`,`svh`,`min`,`max`,`fit`,...w()],ae=()=>[Pb,`screen`,`full`,`dvw`,`lvw`,`svw`,`min`,`max`,`fit`,...w()],oe=()=>[Pb,`screen`,`full`,`lh`,`dvh`,`lvh`,`svh`,`min`,`max`,`fit`,...w()],k=()=>[e,X,Y],se=()=>[...b(),nx,Zb,{position:[X,Y]}],ce=()=>[`no-repeat`,{repeat:[``,`x`,`y`,`space`,`round`]}],le=()=>[`auto`,`cover`,`contain`,rx,Kb,{size:[X,Y]}],ue=()=>[Lb,ex,qb],A=()=>[``,`none`,`full`,l,X,Y],de=()=>[``,Fb,ex,qb],fe=()=>[`solid`,`dashed`,`dotted`,`double`],pe=()=>[`normal`,`multiply`,`screen`,`overlay`,`darken`,`lighten`,`color-dodge`,`color-burn`,`hard-light`,`soft-light`,`difference`,`exclusion`,`hue`,`saturation`,`color`,`luminosity`],me=()=>[Fb,Lb,nx,Zb],he=()=>[``,`none`,m,X,Y],ge=()=>[`none`,Fb,X,Y],_e=()=>[`none`,Fb,X,Y],ve=()=>[Fb,X,Y],ye=()=>[Pb,`full`,...w()];return{cacheSize:500,theme:{animate:[`spin`,`ping`,`pulse`,`bounce`],aspect:[`video`],blur:[Rb],breakpoint:[Rb],color:[zb],container:[Rb],"drop-shadow":[Rb],ease:[`in`,`out`,`in-out`],font:[Wb],"font-weight":[`thin`,`extralight`,`light`,`normal`,`medium`,`semibold`,`bold`,`extrabold`,`black`],"inset-shadow":[Rb],leading:[`none`,`tight`,`snug`,`normal`,`relaxed`,`loose`],perspective:[`dramatic`,`near`,`normal`,`midrange`,`distant`,`none`],radius:[Rb],shadow:[Rb],spacing:[`px`,Fb],text:[Rb],"text-shadow":[Rb],tracking:[`tighter`,`tight`,`normal`,`wide`,`wider`,`widest`]},classGroups:{aspect:[{aspect:[`auto`,`square`,Pb,Y,X,g]}],container:[`container`],"container-type":[{"@container":[``,`normal`,`size`,X,Y]}],"container-named":[Gb],columns:[{columns:[Fb,Y,X,s]}],"break-after":[{"break-after":y()}],"break-before":[{"break-before":y()}],"break-inside":[{"break-inside":[`auto`,`avoid`,`avoid-page`,`avoid-column`]}],"box-decoration":[{"box-decoration":[`slice`,`clone`]}],box:[{box:[`border`,`content`]}],display:[`block`,`inline-block`,`inline`,`flex`,`inline-flex`,`table`,`inline-table`,`table-caption`,`table-cell`,`table-column`,`table-column-group`,`table-footer-group`,`table-header-group`,`table-row-group`,`table-row`,`flow-root`,`grid`,`inline-grid`,`contents`,`list-item`,`hidden`],sr:[`sr-only`,`not-sr-only`],float:[{float:[`right`,`left`,`none`,`start`,`end`]}],clear:[{clear:[`left`,`right`,`both`,`none`,`start`,`end`]}],isolation:[`isolate`,`isolation-auto`],"object-fit":[{object:[`contain`,`cover`,`fill`,`none`,`scale-down`]}],"object-position":[{object:x()}],overflow:[{overflow:S()}],"overflow-x":[{"overflow-x":S()}],"overflow-y":[{"overflow-y":S()}],overscroll:[{overscroll:C()}],"overscroll-x":[{"overscroll-x":C()}],"overscroll-y":[{"overscroll-y":C()}],position:[`static`,`fixed`,`absolute`,`relative`,`sticky`],inset:[{inset:T()}],"inset-x":[{"inset-x":T()}],"inset-y":[{"inset-y":T()}],start:[{"inset-s":T(),start:T()}],end:[{"inset-e":T(),end:T()}],"inset-bs":[{"inset-bs":T()}],"inset-be":[{"inset-be":T()}],top:[{top:T()}],right:[{right:T()}],bottom:[{bottom:T()}],left:[{left:T()}],visibility:[`visible`,`invisible`,`collapse`],z:[{z:[Ib,`auto`,X,Y]}],basis:[{basis:[Pb,`full`,`auto`,s,...w()]}],"flex-direction":[{flex:[`row`,`row-reverse`,`col`,`col-reverse`]}],"flex-wrap":[{flex:[`nowrap`,`wrap`,`wrap-reverse`]}],flex:[{flex:[Fb,Pb,`auto`,`initial`,`none`,Y]}],grow:[{grow:[``,Fb,X,Y]}],shrink:[{shrink:[``,Fb,X,Y]}],order:[{order:[Ib,`first`,`last`,`none`,X,Y]}],"grid-cols":[{"grid-cols":E()}],"col-start-end":[{col:D()}],"col-start":[{"col-start":O()}],"col-end":[{"col-end":O()}],"grid-rows":[{"grid-rows":E()}],"row-start-end":[{row:D()}],"row-start":[{"row-start":O()}],"row-end":[{"row-end":O()}],"grid-flow":[{"grid-flow":[`row`,`col`,`dense`,`row-dense`,`col-dense`]}],"auto-cols":[{"auto-cols":ee()}],"auto-rows":[{"auto-rows":ee()}],gap:[{gap:w()}],"gap-x":[{"gap-x":w()}],"gap-y":[{"gap-y":w()}],"justify-content":[{justify:[...te(),`normal`]}],"justify-items":[{"justify-items":[...ne(),`normal`]}],"justify-self":[{"justify-self":[`auto`,...ne()]}],"align-content":[{content:[`normal`,...te()]}],"align-items":[{items:[...ne(),{baseline:[``,`last`]}]}],"align-self":[{self:[`auto`,...ne(),{baseline:[``,`last`]}]}],"place-content":[{"place-content":te()}],"place-items":[{"place-items":[...ne(),`baseline`]}],"place-self":[{"place-self":[`auto`,...ne()]}],p:[{p:w()}],px:[{px:w()}],py:[{py:w()}],ps:[{ps:w()}],pe:[{pe:w()}],pbs:[{pbs:w()}],pbe:[{pbe:w()}],pt:[{pt:w()}],pr:[{pr:w()}],pb:[{pb:w()}],pl:[{pl:w()}],m:[{m:re()}],mx:[{mx:re()}],my:[{my:re()}],ms:[{ms:re()}],me:[{me:re()}],mbs:[{mbs:re()}],mbe:[{mbe:re()}],mt:[{mt:re()}],mr:[{mr:re()}],mb:[{mb:re()}],ml:[{ml:re()}],"space-x":[{"space-x":w()}],"space-x-reverse":[`space-x-reverse`],"space-y":[{"space-y":w()}],"space-y-reverse":[`space-y-reverse`],size:[{size:ie()}],"inline-size":[{inline:[`auto`,...ae()]}],"min-inline-size":[{"min-inline":[`auto`,...ae()]}],"max-inline-size":[{"max-inline":[`none`,...ae()]}],"block-size":[{block:[`auto`,...oe()]}],"min-block-size":[{"min-block":[`auto`,...oe()]}],"max-block-size":[{"max-block":[`none`,...oe()]}],w:[{w:[s,`screen`,...ie()]}],"min-w":[{"min-w":[s,`screen`,`none`,...ie()]}],"max-w":[{"max-w":[s,`screen`,`none`,`prose`,{screen:[o]},...ie()]}],h:[{h:[`screen`,`lh`,...ie()]}],"min-h":[{"min-h":[`screen`,`lh`,`none`,...ie()]}],"max-h":[{"max-h":[`screen`,`lh`,...ie()]}],"font-size":[{text:[`base`,n,ex,qb]}],"font-smoothing":[`antialiased`,`subpixel-antialiased`],"font-style":[`italic`,`not-italic`],"font-weight":[{font:[r,ox,Yb]}],"font-stretch":[{"font-stretch":[`ultra-condensed`,`extra-condensed`,`condensed`,`semi-condensed`,`normal`,`semi-expanded`,`expanded`,`extra-expanded`,`ultra-expanded`,Lb,Y]}],"font-family":[{font:[tx,Xb,t]}],"font-features":[{"font-features":[Y]}],"fvn-normal":[`normal-nums`],"fvn-ordinal":[`ordinal`],"fvn-slashed-zero":[`slashed-zero`],"fvn-figure":[`lining-nums`,`oldstyle-nums`],"fvn-spacing":[`proportional-nums`,`tabular-nums`],"fvn-fraction":[`diagonal-fractions`,`stacked-fractions`],tracking:[{tracking:[i,X,Y]}],"line-clamp":[{"line-clamp":[Fb,`none`,X,Jb]}],leading:[{leading:[a,...w()]}],"list-image":[{"list-image":[`none`,X,Y]}],"list-style-position":[{list:[`inside`,`outside`]}],"list-style-type":[{list:[`disc`,`decimal`,`none`,X,Y]}],"text-alignment":[{text:[`left`,`center`,`right`,`justify`,`start`,`end`]}],"placeholder-color":[{placeholder:k()}],"text-color":[{text:k()}],"text-decoration":[`underline`,`overline`,`line-through`,`no-underline`],"text-decoration-style":[{decoration:[...fe(),`wavy`]}],"text-decoration-thickness":[{decoration:[Fb,`from-font`,`auto`,X,qb]}],"text-decoration-color":[{decoration:k()}],"underline-offset":[{"underline-offset":[Fb,`auto`,X,Y]}],"text-transform":[`uppercase`,`lowercase`,`capitalize`,`normal-case`],"text-overflow":[`truncate`,`text-ellipsis`,`text-clip`],"text-wrap":[{text:[`wrap`,`nowrap`,`balance`,`pretty`]}],indent:[{indent:w()}],"tab-size":[{tab:[Ib,X,Y]}],"vertical-align":[{align:[`baseline`,`top`,`middle`,`bottom`,`text-top`,`text-bottom`,`sub`,`super`,X,Y]}],whitespace:[{whitespace:[`normal`,`nowrap`,`pre`,`pre-line`,`pre-wrap`,`break-spaces`]}],break:[{break:[`normal`,`words`,`all`,`keep`]}],wrap:[{wrap:[`break-word`,`anywhere`,`normal`]}],hyphens:[{hyphens:[`none`,`manual`,`auto`]}],content:[{content:[`none`,X,Y]}],"bg-attachment":[{bg:[`fixed`,`local`,`scroll`]}],"bg-clip":[{"bg-clip":[`border`,`padding`,`content`,`text`]}],"bg-origin":[{"bg-origin":[`border`,`padding`,`content`]}],"bg-position":[{bg:se()}],"bg-repeat":[{bg:ce()}],"bg-size":[{bg:le()}],"bg-image":[{bg:[`none`,{linear:[{to:[`t`,`tr`,`r`,`br`,`b`,`bl`,`l`,`tl`]},Ib,X,Y],radial:[``,X,Y],conic:[Ib,X,Y]},ix,Qb]}],"bg-color":[{bg:k()}],"gradient-from-pos":[{from:ue()}],"gradient-via-pos":[{via:ue()}],"gradient-to-pos":[{to:ue()}],"gradient-from":[{from:k()}],"gradient-via":[{via:k()}],"gradient-to":[{to:k()}],rounded:[{rounded:A()}],"rounded-s":[{"rounded-s":A()}],"rounded-e":[{"rounded-e":A()}],"rounded-t":[{"rounded-t":A()}],"rounded-r":[{"rounded-r":A()}],"rounded-b":[{"rounded-b":A()}],"rounded-l":[{"rounded-l":A()}],"rounded-ss":[{"rounded-ss":A()}],"rounded-se":[{"rounded-se":A()}],"rounded-ee":[{"rounded-ee":A()}],"rounded-es":[{"rounded-es":A()}],"rounded-tl":[{"rounded-tl":A()}],"rounded-tr":[{"rounded-tr":A()}],"rounded-br":[{"rounded-br":A()}],"rounded-bl":[{"rounded-bl":A()}],"border-w":[{border:de()}],"border-w-x":[{"border-x":de()}],"border-w-y":[{"border-y":de()}],"border-w-s":[{"border-s":de()}],"border-w-e":[{"border-e":de()}],"border-w-bs":[{"border-bs":de()}],"border-w-be":[{"border-be":de()}],"border-w-t":[{"border-t":de()}],"border-w-r":[{"border-r":de()}],"border-w-b":[{"border-b":de()}],"border-w-l":[{"border-l":de()}],"divide-x":[{"divide-x":de()}],"divide-x-reverse":[`divide-x-reverse`],"divide-y":[{"divide-y":de()}],"divide-y-reverse":[`divide-y-reverse`],"border-style":[{border:[...fe(),`hidden`,`none`]}],"divide-style":[{divide:[...fe(),`hidden`,`none`]}],"border-color":[{border:k()}],"border-color-x":[{"border-x":k()}],"border-color-y":[{"border-y":k()}],"border-color-s":[{"border-s":k()}],"border-color-e":[{"border-e":k()}],"border-color-bs":[{"border-bs":k()}],"border-color-be":[{"border-be":k()}],"border-color-t":[{"border-t":k()}],"border-color-r":[{"border-r":k()}],"border-color-b":[{"border-b":k()}],"border-color-l":[{"border-l":k()}],"divide-color":[{divide:k()}],"outline-style":[{outline:[...fe(),`none`,`hidden`]}],"outline-offset":[{"outline-offset":[Fb,X,Y]}],"outline-w":[{outline:[``,Fb,ex,qb]}],"outline-color":[{outline:k()}],shadow:[{shadow:[``,`none`,u,ax,$b]}],"shadow-color":[{shadow:k()}],"inset-shadow":[{"inset-shadow":[`none`,d,ax,$b]}],"inset-shadow-color":[{"inset-shadow":k()}],"ring-w":[{ring:de()}],"ring-w-inset":[`ring-inset`],"ring-color":[{ring:k()}],"ring-offset-w":[{"ring-offset":[Fb,qb]}],"ring-offset-color":[{"ring-offset":k()}],"inset-ring-w":[{"inset-ring":de()}],"inset-ring-color":[{"inset-ring":k()}],"text-shadow":[{"text-shadow":[`none`,f,ax,$b]}],"text-shadow-color":[{"text-shadow":k()}],opacity:[{opacity:[Fb,X,Y]}],"mix-blend":[{"mix-blend":[...pe(),`plus-darker`,`plus-lighter`]}],"bg-blend":[{"bg-blend":pe()}],"mask-clip":[{"mask-clip":[`border`,`padding`,`content`,`fill`,`stroke`,`view`]},`mask-no-clip`],"mask-composite":[{mask:[`add`,`subtract`,`intersect`,`exclude`]}],"mask-image-linear-pos":[{"mask-linear":[Fb]}],"mask-image-linear-from-pos":[{"mask-linear-from":me()}],"mask-image-linear-to-pos":[{"mask-linear-to":me()}],"mask-image-linear-from-color":[{"mask-linear-from":k()}],"mask-image-linear-to-color":[{"mask-linear-to":k()}],"mask-image-t-from-pos":[{"mask-t-from":me()}],"mask-image-t-to-pos":[{"mask-t-to":me()}],"mask-image-t-from-color":[{"mask-t-from":k()}],"mask-image-t-to-color":[{"mask-t-to":k()}],"mask-image-r-from-pos":[{"mask-r-from":me()}],"mask-image-r-to-pos":[{"mask-r-to":me()}],"mask-image-r-from-color":[{"mask-r-from":k()}],"mask-image-r-to-color":[{"mask-r-to":k()}],"mask-image-b-from-pos":[{"mask-b-from":me()}],"mask-image-b-to-pos":[{"mask-b-to":me()}],"mask-image-b-from-color":[{"mask-b-from":k()}],"mask-image-b-to-color":[{"mask-b-to":k()}],"mask-image-l-from-pos":[{"mask-l-from":me()}],"mask-image-l-to-pos":[{"mask-l-to":me()}],"mask-image-l-from-color":[{"mask-l-from":k()}],"mask-image-l-to-color":[{"mask-l-to":k()}],"mask-image-x-from-pos":[{"mask-x-from":me()}],"mask-image-x-to-pos":[{"mask-x-to":me()}],"mask-image-x-from-color":[{"mask-x-from":k()}],"mask-image-x-to-color":[{"mask-x-to":k()}],"mask-image-y-from-pos":[{"mask-y-from":me()}],"mask-image-y-to-pos":[{"mask-y-to":me()}],"mask-image-y-from-color":[{"mask-y-from":k()}],"mask-image-y-to-color":[{"mask-y-to":k()}],"mask-image-radial":[{"mask-radial":[X,Y]}],"mask-image-radial-from-pos":[{"mask-radial-from":me()}],"mask-image-radial-to-pos":[{"mask-radial-to":me()}],"mask-image-radial-from-color":[{"mask-radial-from":k()}],"mask-image-radial-to-color":[{"mask-radial-to":k()}],"mask-image-radial-shape":[{"mask-radial":[`circle`,`ellipse`]}],"mask-image-radial-size":[{"mask-radial":[{closest:[`side`,`corner`],farthest:[`side`,`corner`]}]}],"mask-image-radial-pos":[{"mask-radial-at":b()}],"mask-image-conic-pos":[{"mask-conic":[Fb]}],"mask-image-conic-from-pos":[{"mask-conic-from":me()}],"mask-image-conic-to-pos":[{"mask-conic-to":me()}],"mask-image-conic-from-color":[{"mask-conic-from":k()}],"mask-image-conic-to-color":[{"mask-conic-to":k()}],"mask-mode":[{mask:[`alpha`,`luminance`,`match`]}],"mask-origin":[{"mask-origin":[`border`,`padding`,`content`,`fill`,`stroke`,`view`]}],"mask-position":[{mask:se()}],"mask-repeat":[{mask:ce()}],"mask-size":[{mask:le()}],"mask-type":[{"mask-type":[`alpha`,`luminance`]}],"mask-image":[{mask:[`none`,X,Y]}],filter:[{filter:[``,`none`,X,Y]}],blur:[{blur:he()}],brightness:[{brightness:[Fb,X,Y]}],contrast:[{contrast:[Fb,X,Y]}],"drop-shadow":[{"drop-shadow":[``,`none`,p,ax,$b]}],"drop-shadow-color":[{"drop-shadow":k()}],grayscale:[{grayscale:[``,Fb,X,Y]}],"hue-rotate":[{"hue-rotate":[Fb,X,Y]}],invert:[{invert:[``,Fb,X,Y]}],saturate:[{saturate:[Fb,X,Y]}],sepia:[{sepia:[``,Fb,X,Y]}],"backdrop-filter":[{"backdrop-filter":[``,`none`,X,Y]}],"backdrop-blur":[{"backdrop-blur":he()}],"backdrop-brightness":[{"backdrop-brightness":[Fb,X,Y]}],"backdrop-contrast":[{"backdrop-contrast":[Fb,X,Y]}],"backdrop-grayscale":[{"backdrop-grayscale":[``,Fb,X,Y]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[Fb,X,Y]}],"backdrop-invert":[{"backdrop-invert":[``,Fb,X,Y]}],"backdrop-opacity":[{"backdrop-opacity":[Fb,X,Y]}],"backdrop-saturate":[{"backdrop-saturate":[Fb,X,Y]}],"backdrop-sepia":[{"backdrop-sepia":[``,Fb,X,Y]}],"border-collapse":[{border:[`collapse`,`separate`]}],"border-spacing":[{"border-spacing":w()}],"border-spacing-x":[{"border-spacing-x":w()}],"border-spacing-y":[{"border-spacing-y":w()}],"table-layout":[{table:[`auto`,`fixed`]}],caption:[{caption:[`top`,`bottom`]}],transition:[{transition:[``,`all`,`colors`,`opacity`,`shadow`,`transform`,`none`,X,Y]}],"transition-behavior":[{transition:[`normal`,`discrete`]}],duration:[{duration:[Fb,`initial`,X,Y]}],ease:[{ease:[`linear`,`initial`,_,X,Y]}],delay:[{delay:[Fb,X,Y]}],animate:[{animate:[`none`,v,X,Y]}],backface:[{backface:[`hidden`,`visible`]}],perspective:[{perspective:[h,X,Y]}],"perspective-origin":[{"perspective-origin":x()}],rotate:[{rotate:ge()}],"rotate-x":[{"rotate-x":ge()}],"rotate-y":[{"rotate-y":ge()}],"rotate-z":[{"rotate-z":ge()}],scale:[{scale:_e()}],"scale-x":[{"scale-x":_e()}],"scale-y":[{"scale-y":_e()}],"scale-z":[{"scale-z":_e()}],"scale-3d":[`scale-3d`],skew:[{skew:ve()}],"skew-x":[{"skew-x":ve()}],"skew-y":[{"skew-y":ve()}],transform:[{transform:[X,Y,``,`none`,`gpu`,`cpu`]}],"transform-origin":[{origin:x()}],"transform-style":[{transform:[`3d`,`flat`]}],translate:[{translate:ye()}],"translate-x":[{"translate-x":ye()}],"translate-y":[{"translate-y":ye()}],"translate-z":[{"translate-z":ye()}],"translate-none":[`translate-none`],zoom:[{zoom:[Ib,X,Y]}],accent:[{accent:k()}],appearance:[{appearance:[`none`,`auto`]}],"caret-color":[{caret:k()}],"color-scheme":[{scheme:[`normal`,`dark`,`light`,`light-dark`,`only-dark`,`only-light`]}],cursor:[{cursor:[`auto`,`default`,`pointer`,`wait`,`text`,`move`,`help`,`not-allowed`,`none`,`context-menu`,`progress`,`cell`,`crosshair`,`vertical-text`,`alias`,`copy`,`no-drop`,`grab`,`grabbing`,`all-scroll`,`col-resize`,`row-resize`,`n-resize`,`e-resize`,`s-resize`,`w-resize`,`ne-resize`,`nw-resize`,`se-resize`,`sw-resize`,`ew-resize`,`ns-resize`,`nesw-resize`,`nwse-resize`,`zoom-in`,`zoom-out`,X,Y]}],"field-sizing":[{"field-sizing":[`fixed`,`content`]}],"pointer-events":[{"pointer-events":[`auto`,`none`]}],resize:[{resize:[`none`,``,`y`,`x`]}],"scroll-behavior":[{scroll:[`auto`,`smooth`]}],"scrollbar-thumb-color":[{"scrollbar-thumb":k()}],"scrollbar-track-color":[{"scrollbar-track":k()}],"scrollbar-gutter":[{"scrollbar-gutter":[`auto`,`stable`,`both`]}],"scrollbar-w":[{scrollbar:[`auto`,`thin`,`none`]}],"scroll-m":[{"scroll-m":w()}],"scroll-mx":[{"scroll-mx":w()}],"scroll-my":[{"scroll-my":w()}],"scroll-ms":[{"scroll-ms":w()}],"scroll-me":[{"scroll-me":w()}],"scroll-mbs":[{"scroll-mbs":w()}],"scroll-mbe":[{"scroll-mbe":w()}],"scroll-mt":[{"scroll-mt":w()}],"scroll-mr":[{"scroll-mr":w()}],"scroll-mb":[{"scroll-mb":w()}],"scroll-ml":[{"scroll-ml":w()}],"scroll-p":[{"scroll-p":w()}],"scroll-px":[{"scroll-px":w()}],"scroll-py":[{"scroll-py":w()}],"scroll-ps":[{"scroll-ps":w()}],"scroll-pe":[{"scroll-pe":w()}],"scroll-pbs":[{"scroll-pbs":w()}],"scroll-pbe":[{"scroll-pbe":w()}],"scroll-pt":[{"scroll-pt":w()}],"scroll-pr":[{"scroll-pr":w()}],"scroll-pb":[{"scroll-pb":w()}],"scroll-pl":[{"scroll-pl":w()}],"snap-align":[{snap:[`start`,`end`,`center`,`align-none`]}],"snap-stop":[{snap:[`normal`,`always`]}],"snap-type":[{snap:[`none`,`x`,`y`,`both`]}],"snap-strictness":[{snap:[`mandatory`,`proximity`]}],touch:[{touch:[`auto`,`none`,`manipulation`]}],"touch-x":[{"touch-pan":[`x`,`left`,`right`]}],"touch-y":[{"touch-pan":[`y`,`up`,`down`]}],"touch-pz":[`touch-pinch-zoom`],select:[{select:[`none`,`text`,`all`,`auto`]}],"will-change":[{"will-change":[`auto`,`scroll`,`contents`,`transform`,X,Y]}],fill:[{fill:[`none`,...k()]}],"stroke-w":[{stroke:[Fb,ex,qb,Jb]}],stroke:[{stroke:[`none`,...k()]}],"forced-color-adjust":[{"forced-color-adjust":[`auto`,`none`]}]},conflictingClassGroups:{"container-named":[`container-type`],overflow:[`overflow-x`,`overflow-y`],overscroll:[`overscroll-x`,`overscroll-y`],inset:[`inset-x`,`inset-y`,`inset-bs`,`inset-be`,`start`,`end`,`top`,`right`,`bottom`,`left`],"inset-x":[`right`,`left`],"inset-y":[`top`,`bottom`],flex:[`basis`,`grow`,`shrink`],gap:[`gap-x`,`gap-y`],p:[`px`,`py`,`ps`,`pe`,`pbs`,`pbe`,`pt`,`pr`,`pb`,`pl`],px:[`pr`,`pl`],py:[`pt`,`pb`],m:[`mx`,`my`,`ms`,`me`,`mbs`,`mbe`,`mt`,`mr`,`mb`,`ml`],mx:[`mr`,`ml`],my:[`mt`,`mb`],size:[`w`,`h`],"font-size":[`leading`],"fvn-normal":[`fvn-ordinal`,`fvn-slashed-zero`,`fvn-figure`,`fvn-spacing`,`fvn-fraction`],"fvn-ordinal":[`fvn-normal`],"fvn-slashed-zero":[`fvn-normal`],"fvn-figure":[`fvn-normal`],"fvn-spacing":[`fvn-normal`],"fvn-fraction":[`fvn-normal`],"line-clamp":[`display`,`overflow`],rounded:[`rounded-s`,`rounded-e`,`rounded-t`,`rounded-r`,`rounded-b`,`rounded-l`,`rounded-ss`,`rounded-se`,`rounded-ee`,`rounded-es`,`rounded-tl`,`rounded-tr`,`rounded-br`,`rounded-bl`],"rounded-s":[`rounded-ss`,`rounded-es`],"rounded-e":[`rounded-se`,`rounded-ee`],"rounded-t":[`rounded-tl`,`rounded-tr`],"rounded-r":[`rounded-tr`,`rounded-br`],"rounded-b":[`rounded-br`,`rounded-bl`],"rounded-l":[`rounded-tl`,`rounded-bl`],"border-spacing":[`border-spacing-x`,`border-spacing-y`],"border-w":[`border-w-x`,`border-w-y`,`border-w-s`,`border-w-e`,`border-w-bs`,`border-w-be`,`border-w-t`,`border-w-r`,`border-w-b`,`border-w-l`],"border-w-x":[`border-w-r`,`border-w-l`],"border-w-y":[`border-w-t`,`border-w-b`],"border-color":[`border-color-x`,`border-color-y`,`border-color-s`,`border-color-e`,`border-color-bs`,`border-color-be`,`border-color-t`,`border-color-r`,`border-color-b`,`border-color-l`],"border-color-x":[`border-color-r`,`border-color-l`],"border-color-y":[`border-color-t`,`border-color-b`],translate:[`translate-x`,`translate-y`,`translate-none`],"translate-none":[`translate`,`translate-x`,`translate-y`,`translate-z`],"scroll-m":[`scroll-mx`,`scroll-my`,`scroll-ms`,`scroll-me`,`scroll-mbs`,`scroll-mbe`,`scroll-mt`,`scroll-mr`,`scroll-mb`,`scroll-ml`],"scroll-mx":[`scroll-mr`,`scroll-ml`],"scroll-my":[`scroll-mt`,`scroll-mb`],"scroll-p":[`scroll-px`,`scroll-py`,`scroll-ps`,`scroll-pe`,`scroll-pbs`,`scroll-pbe`,`scroll-pt`,`scroll-pr`,`scroll-pb`,`scroll-pl`],"scroll-px":[`scroll-pr`,`scroll-pl`],"scroll-py":[`scroll-pt`,`scroll-pb`],touch:[`touch-x`,`touch-y`,`touch-pz`],"touch-x":[`touch`],"touch-y":[`touch`],"touch-pz":[`touch`]},conflictingClassGroupModifiers:{"font-size":[`leading`]},postfixLookupClassGroups:[`container-type`],orderSensitiveModifiers:[`*`,`**`,`after`,`backdrop`,`before`,`details-content`,`file`,`first-letter`,`first-line`,`marker`,`placeholder`,`selection`]}});function Z(...e){return _x(Vv(e))}var vx=Nv,yx=j.forwardRef(({className:e,...t},n)=>(0,M.jsx)(Pv,{ref:n,className:Z(`fixed top-0 z-[100] flex max-h-screen w-full flex-col-reverse p-4 sm:bottom-0 sm:right-0 sm:top-auto sm:flex-col md:max-w-[420px]`,e),...t}));yx.displayName=Pv.displayName;var bx=Wv(`group pointer-events-auto relative flex w-full items-center justify-between space-x-4 overflow-hidden rounded-md border p-6 pr-8 shadow-lg transition-all data-[swipe=cancel]:translate-x-0 data-[swipe=end]:translate-x-[var(--radix-toast-swipe-end-x)] data-[swipe=move]:translate-x-[var(--radix-toast-swipe-move-x)] data-[swipe=move]:transition-none data-[state=open]:animate-in data-[state=closed]:animate-out data-[swipe=end]:animate-out data-[state=closed]:fade-out-80 data-[state=closed]:slide-out-to-right-full data-[state=open]:slide-in-from-top-full data-[state=open]:sm:slide-in-from-bottom-full`,{variants:{variant:{default:`border bg-background text-foreground`,destructive:`destructive group border-destructive bg-destructive text-destructive-foreground`}},defaultVariants:{variant:`default`}}),xx=j.forwardRef(({className:e,variant:t,...n},r)=>(0,M.jsx)(Fv,{ref:r,className:Z(bx({variant:t}),e),...n}));xx.displayName=Fv.displayName;var Sx=j.forwardRef(({className:e,...t},n)=>(0,M.jsx)(Rv,{ref:n,className:Z(`inline-flex h-8 shrink-0 items-center justify-center rounded-md border bg-transparent px-3 text-sm font-medium ring-offset-background transition-colors hover:bg-secondary focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 group-[.destructive]:border-muted/40 group-[.destructive]:hover:border-destructive/30 group-[.destructive]:hover:bg-destructive group-[.destructive]:hover:text-destructive-foreground group-[.destructive]:focus:ring-destructive`,e),...t}));Sx.displayName=Rv.displayName;var Cx=j.forwardRef(({className:e,...t},n)=>(0,M.jsx)(zv,{ref:n,className:Z(`absolute right-2 top-2 rounded-md p-1 text-foreground/50 opacity-0 transition-opacity hover:text-foreground focus:opacity-100 focus:outline-none focus:ring-2 group-hover:opacity-100 group-[.destructive]:text-red-300 group-[.destructive]:hover:text-red-50 group-[.destructive]:focus:ring-red-400 group-[.destructive]:focus:ring-offset-red-600`,e),"toast-close":``,...t,children:(0,M.jsx)(Gy,{className:`h-4 w-4`})}));Cx.displayName=zv.displayName;var wx=j.forwardRef(({className:e,...t},n)=>(0,M.jsx)(Iv,{ref:n,className:Z(`text-sm font-semibold`,e),...t}));wx.displayName=Iv.displayName;var Tx=j.forwardRef(({className:e,...t},n)=>(0,M.jsx)(Lv,{ref:n,className:Z(`text-sm opacity-90`,e),...t}));Tx.displayName=Lv.displayName;function Ex(){let{toasts:e}=Yg();return(0,M.jsxs)(vx,{children:[e.map(function({id:e,title:t,description:n,action:r,...i}){return(0,M.jsxs)(xx,{...i,children:[(0,M.jsxs)(`div`,{className:`grid gap-1`,children:[t&&(0,M.jsx)(wx,{children:t}),n&&(0,M.jsx)(Tx,{children:n})]}),r,(0,M.jsx)(Cx,{})]},e)}),(0,M.jsx)(yx,{})]})}var Dx=Symbol.for(`react.lazy`),Ox=j.use;function kx(e){return typeof e==`object`&&!!e&&`then`in e}function Ax(e){return typeof e==`object`&&!!e&&`$$typeof`in e&&e.$$typeof===Dx&&`_payload`in e&&kx(e._payload)}function jx(e){let t=Nx(e),n=j.forwardRef((e,n)=>{let{children:r,...i}=e;Ax(r)&&typeof Ox==`function`&&(r=Ox(r._payload));let a=j.Children.toArray(r),o=a.find(Fx);if(o){let e=o.props.children,r=a.map(t=>t===o?j.Children.count(e)>1?j.Children.only(null):j.isValidElement(e)?e.props.children:null:t);return(0,M.jsx)(t,{...i,ref:n,children:j.isValidElement(e)?j.cloneElement(e,void 0,r):null})}return(0,M.jsx)(t,{...i,ref:n,children:r})});return n.displayName=`${e}.Slot`,n}var Mx=jx(`Slot`);function Nx(e){let t=j.forwardRef((e,t)=>{let{children:n,...r}=e;if(Ax(n)&&typeof Ox==`function`&&(n=Ox(n._payload)),j.isValidElement(n)){let e=Lx(n),i=Ix(r,n.props);return n.type!==j.Fragment&&(i.ref=t?Zg(t,e):e),j.cloneElement(n,i)}return j.Children.count(n)>1?j.Children.only(null):null});return t.displayName=`${e}.SlotClone`,t}var Px=Symbol(`radix.slottable`);function Fx(e){return j.isValidElement(e)&&typeof e.type==`function`&&`__radixId`in e.type&&e.type.__radixId===Px}function Ix(e,t){let n={...t};for(let r in t){let i=e[r],a=t[r];/^on[A-Z]/.test(r)?i&&a?n[r]=(...e)=>{let t=a(...e);return i(...e),t}:i&&(n[r]=i):r===`style`?n[r]={...i,...a}:r===`className`&&(n[r]=[i,a].filter(Boolean).join(` `))}return{...e,...n}}function Lx(e){let t=Object.getOwnPropertyDescriptor(e.props,`ref`)?.get,n=t&&`isReactWarning`in t&&t.isReactWarning;return n?e.ref:(t=Object.getOwnPropertyDescriptor(e,`ref`)?.get,n=t&&`isReactWarning`in t&&t.isReactWarning,n?e.props.ref:e.props.ref||e.ref)}var Rx=768;function zx(){let[e,t]=j.useState(void 0);return j.useEffect(()=>{let e=window.matchMedia(`(max-width: ${Rx-1}px)`),n=()=>{t(window.innerWidth<Rx)};return e.addEventListener(`change`,n),t(window.innerWidth<Rx),()=>e.removeEventListener(`change`,n)},[]),!!e}var Bx=Wv(`inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0`,{variants:{variant:{default:`bg-primary text-primary-foreground shadow hover:bg-primary/90`,destructive:`bg-destructive text-destructive-foreground shadow-sm hover:bg-destructive/90`,outline:`border border-input bg-background shadow-sm hover:bg-accent hover:text-accent-foreground`,secondary:`bg-secondary text-secondary-foreground shadow-sm hover:bg-secondary/80`,ghost:`hover:bg-accent hover:text-accent-foreground`,link:`text-primary underline-offset-4 hover:underline`},size:{default:`h-9 px-4 py-2`,sm:`h-8 rounded-md px-3 text-xs`,lg:`h-10 rounded-md px-8`,icon:`h-9 w-9`}},defaultVariants:{variant:`default`,size:`default`}}),Q=j.forwardRef(({className:e,variant:t,size:n,asChild:r=!1,...i},a)=>(0,M.jsx)(r?Mx:`button`,{className:Z(Bx({variant:t,size:n,className:e})),ref:a,...i}));Q.displayName=`Button`;var Vx=j.forwardRef(({className:e,type:t,...n},r)=>(0,M.jsx)(`input`,{type:t,className:Z(`flex h-9 w-full rounded-md border border-input bg-transparent px-3 py-1 text-sm shadow-sm transition-colors file:border-0 file:bg-transparent file:text-sm file:font-medium placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50`,e),ref:r,...n}));Vx.displayName=`Input`;var Hx=[`a`,`button`,`div`,`form`,`h2`,`h3`,`img`,`input`,`label`,`li`,`nav`,`ol`,`p`,`select`,`span`,`svg`,`ul`].reduce((e,t)=>{let n=jx(`Primitive.${t}`),r=j.forwardRef((e,r)=>{let{asChild:i,...a}=e,o=i?n:t;return typeof window<`u`&&(window[Symbol.for(`radix-ui`)]=!0),(0,M.jsx)(o,{...a,ref:r})});return r.displayName=`Primitive.${t}`,{...e,[t]:r}},{}),Ux=`Separator`,Wx=`horizontal`,Gx=[`horizontal`,`vertical`],Kx=j.forwardRef((e,t)=>{let{decorative:n,orientation:r=Wx,...i}=e,a=qx(r)?r:Wx,o=n?{role:`none`}:{"aria-orientation":a===`vertical`?a:void 0,role:`separator`};return(0,M.jsx)(Hx.div,{"data-orientation":a,...o,...i,ref:t})});Kx.displayName=Ux;function qx(e){return Gx.includes(e)}var Jx=Kx,Yx=j.forwardRef(({className:e,orientation:t=`horizontal`,decorative:n=!0,...r},i)=>(0,M.jsx)(Jx,{ref:i,decorative:n,orientation:t,className:Z(`shrink-0 bg-border`,t===`horizontal`?`h-[1px] w-full`:`h-full w-[1px]`,e),...r}));Yx.displayName=Jx.displayName;var Xx=j.useId||(()=>void 0),Zx=0;function Qx(e){let[t,n]=j.useState(Xx());return k_(()=>{e||n(e=>e??String(Zx++))},[e]),e||(t?`radix-${t}`:``)}var $x=`focusScope.autoFocusOnMount`,eS=`focusScope.autoFocusOnUnmount`,tS={bubbles:!1,cancelable:!0},nS=`FocusScope`,rS=j.forwardRef((e,t)=>{let{loop:n=!1,trapped:r=!1,onMountAutoFocus:i,onUnmountAutoFocus:a,...o}=e,[s,c]=j.useState(null),l=f_(i),u=f_(a),d=j.useRef(null),f=Qg(t,e=>c(e)),p=j.useRef({paused:!1,pause(){this.paused=!0},resume(){this.paused=!1}}).current;j.useEffect(()=>{if(r){let e=function(e){if(p.paused||!s)return;let t=e.target;s.contains(t)?d.current=t:uS(d.current,{select:!0})},t=function(e){if(p.paused||!s)return;let t=e.relatedTarget;t!==null&&(s.contains(t)||uS(d.current,{select:!0}))},n=function(e){if(document.activeElement===document.body)for(let t of e)t.removedNodes.length>0&&uS(s)};document.addEventListener(`focusin`,e),document.addEventListener(`focusout`,t);let r=new MutationObserver(n);return s&&r.observe(s,{childList:!0,subtree:!0}),()=>{document.removeEventListener(`focusin`,e),document.removeEventListener(`focusout`,t),r.disconnect()}}},[r,s,p.paused]),j.useEffect(()=>{if(s){dS.add(p);let e=document.activeElement;if(!s.contains(e)){let t=new CustomEvent($x,tS);s.addEventListener($x,l),s.dispatchEvent(t),t.defaultPrevented||(iS(mS(oS(s)),{select:!0}),document.activeElement===e&&uS(s))}return()=>{s.removeEventListener($x,l),setTimeout(()=>{let t=new CustomEvent(eS,tS);s.addEventListener(eS,u),s.dispatchEvent(t),t.defaultPrevented||uS(e??document.body,{select:!0}),s.removeEventListener(eS,u),dS.remove(p)},0)}}},[s,l,u,p]);let m=j.useCallback(e=>{if(!n&&!r||p.paused)return;let t=e.key===`Tab`&&!e.altKey&&!e.ctrlKey&&!e.metaKey,i=document.activeElement;if(t&&i){let t=e.currentTarget,[r,a]=aS(t);r&&a?!e.shiftKey&&i===a?(e.preventDefault(),n&&uS(r,{select:!0})):e.shiftKey&&i===r&&(e.preventDefault(),n&&uS(a,{select:!0})):i===t&&e.preventDefault()}},[n,r,p.paused]);return(0,M.jsx)(u_.div,{tabIndex:-1,...o,ref:f,onKeyDown:m})});rS.displayName=nS;function iS(e,{select:t=!1}={}){let n=document.activeElement;for(let r of e)if(uS(r,{select:t}),document.activeElement!==n)return}function aS(e){let t=oS(e);return[sS(t,e),sS(t.reverse(),e)]}function oS(e){let t=[],n=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,{acceptNode:e=>{let t=e.tagName===`INPUT`&&e.type===`hidden`;return e.disabled||e.hidden||t?NodeFilter.FILTER_SKIP:e.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});for(;n.nextNode();)t.push(n.currentNode);return t}function sS(e,t){for(let n of e)if(!cS(n,{upTo:t}))return n}function cS(e,{upTo:t}){if(getComputedStyle(e).visibility===`hidden`)return!0;for(;e;){if(t!==void 0&&e===t)return!1;if(getComputedStyle(e).display===`none`)return!0;e=e.parentElement}return!1}function lS(e){return e instanceof HTMLInputElement&&`select`in e}function uS(e,{select:t=!1}={}){if(e&&e.focus){let n=document.activeElement;e.focus({preventScroll:!0}),e!==n&&lS(e)&&t&&e.select()}}var dS=fS();function fS(){let e=[];return{add(t){let n=e[0];t!==n&&n?.pause(),e=pS(e,t),e.unshift(t)},remove(t){e=pS(e,t),e[0]?.resume()}}}function pS(e,t){let n=[...e],r=n.indexOf(t);return r!==-1&&n.splice(r,1),n}function mS(e){return e.filter(e=>e.tagName!==`A`)}var hS=0;function gS(){j.useEffect(()=>{let e=document.querySelectorAll(`[data-radix-focus-guard]`);return document.body.insertAdjacentElement(`afterbegin`,e[0]??_S()),document.body.insertAdjacentElement(`beforeend`,e[1]??_S()),hS++,()=>{hS===1&&document.querySelectorAll(`[data-radix-focus-guard]`).forEach(e=>e.remove()),hS--}},[])}function _S(){let e=document.createElement(`span`);return e.setAttribute(`data-radix-focus-guard`,``),e.tabIndex=0,e.style.outline=`none`,e.style.opacity=`0`,e.style.position=`fixed`,e.style.pointerEvents=`none`,e}var vS=function(){return vS=Object.assign||function(e){for(var t,n=1,r=arguments.length;n<r;n++)for(var i in t=arguments[n],t)Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i]);return e},vS.apply(this,arguments)};function yS(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols==`function`)for(var i=0,r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]]);return n}function bS(e,t,n){if(n||arguments.length===2)for(var r=0,i=t.length,a;r<i;r++)(a||!(r in t))&&(a||=Array.prototype.slice.call(t,0,r),a[r]=t[r]);return e.concat(a||Array.prototype.slice.call(t))}var xS=`right-scroll-bar-position`,SS=`width-before-scroll-bar`,CS=`with-scroll-bars-hidden`,wS=`--removed-body-scroll-bar-size`;function TS(e,t){return typeof e==`function`?e(t):e&&(e.current=t),e}function ES(e,t){var n=(0,j.useState)(function(){return{value:e,callback:t,facade:{get current(){return n.value},set current(e){var t=n.value;t!==e&&(n.value=e,n.callback(e,t))}}}})[0];return n.callback=t,n.facade}var DS=typeof window<`u`?j.useLayoutEffect:j.useEffect,OS=new WeakMap;function kS(e,t){var n=ES(t||null,function(t){return e.forEach(function(e){return TS(e,t)})});return DS(function(){var t=OS.get(n);if(t){var r=new Set(t),i=new Set(e),a=n.current;r.forEach(function(e){i.has(e)||TS(e,null)}),i.forEach(function(e){r.has(e)||TS(e,a)})}OS.set(n,e)},[e]),n}function AS(e){return e}function jS(e,t){t===void 0&&(t=AS);var n=[],r=!1;return{read:function(){if(r)throw Error("Sidecar: could not `read` from an `assigned` medium. `read` could be used only with `useMedium`.");return n.length?n[n.length-1]:e},useMedium:function(e){var i=t(e,r);return n.push(i),function(){n=n.filter(function(e){return e!==i})}},assignSyncMedium:function(e){for(r=!0;n.length;){var t=n;n=[],t.forEach(e)}n={push:function(t){return e(t)},filter:function(){return n}}},assignMedium:function(e){r=!0;var t=[];if(n.length){var i=n;n=[],i.forEach(e),t=n}var a=function(){var n=t;t=[],n.forEach(e)},o=function(){return Promise.resolve().then(a)};o(),n={push:function(e){t.push(e),o()},filter:function(e){return t=t.filter(e),n}}}}}function MS(e){e===void 0&&(e={});var t=jS(null);return t.options=vS({async:!0,ssr:!1},e),t}var NS=function(e){var t=e.sideCar,n=yS(e,[`sideCar`]);if(!t)throw Error("Sidecar: please provide `sideCar` property to import the right car");var r=t.read();if(!r)throw Error(`Sidecar medium not found`);return j.createElement(r,vS({},n))};NS.isSideCarExport=!0;function PS(e,t){return e.useMedium(t),NS}var FS=MS(),IS=function(){},LS=j.forwardRef(function(e,t){var n=j.useRef(null),r=j.useState({onScrollCapture:IS,onWheelCapture:IS,onTouchMoveCapture:IS}),i=r[0],a=r[1],o=e.forwardProps,s=e.children,c=e.className,l=e.removeScrollBar,u=e.enabled,d=e.shards,f=e.sideCar,p=e.noRelative,m=e.noIsolation,h=e.inert,g=e.allowPinchZoom,_=e.as,v=_===void 0?`div`:_,y=e.gapMode,b=yS(e,[`forwardProps`,`children`,`className`,`removeScrollBar`,`enabled`,`shards`,`sideCar`,`noRelative`,`noIsolation`,`inert`,`allowPinchZoom`,`as`,`gapMode`]),x=f,S=kS([n,t]),C=vS(vS({},b),i);return j.createElement(j.Fragment,null,u&&j.createElement(x,{sideCar:FS,removeScrollBar:l,shards:d,noRelative:p,noIsolation:m,inert:h,setCallbacks:a,allowPinchZoom:!!g,lockRef:n,gapMode:y}),o?j.cloneElement(j.Children.only(s),vS(vS({},C),{ref:S})):j.createElement(v,vS({},C,{className:c,ref:S}),s))});LS.defaultProps={enabled:!0,removeScrollBar:!0,inert:!1},LS.classNames={fullWidth:SS,zeroRight:xS};var RS,zS=function(){if(RS)return RS;if(typeof __webpack_nonce__<`u`)return __webpack_nonce__};function BS(){if(!document)return null;var e=document.createElement(`style`);e.type=`text/css`;var t=zS();return t&&e.setAttribute(`nonce`,t),e}function VS(e,t){e.styleSheet?e.styleSheet.cssText=t:e.appendChild(document.createTextNode(t))}function HS(e){(document.head||document.getElementsByTagName(`head`)[0]).appendChild(e)}var US=function(){var e=0,t=null;return{add:function(n){e==0&&(t=BS())&&(VS(t,n),HS(t)),e++},remove:function(){e--,!e&&t&&(t.parentNode&&t.parentNode.removeChild(t),t=null)}}},WS=function(){var e=US();return function(t,n){j.useEffect(function(){return e.add(t),function(){e.remove()}},[t&&n])}},GS=function(){var e=WS();return function(t){var n=t.styles,r=t.dynamic;return e(n,r),null}},KS={left:0,top:0,right:0,gap:0},qS=function(e){return parseInt(e||``,10)||0},JS=function(e){var t=window.getComputedStyle(document.body),n=t[e===`padding`?`paddingLeft`:`marginLeft`],r=t[e===`padding`?`paddingTop`:`marginTop`],i=t[e===`padding`?`paddingRight`:`marginRight`];return[qS(n),qS(r),qS(i)]},YS=function(e){if(e===void 0&&(e=`margin`),typeof window>`u`)return KS;var t=JS(e),n=document.documentElement.clientWidth,r=window.innerWidth;return{left:t[0],top:t[1],right:t[2],gap:Math.max(0,r-n+t[2]-t[0])}},XS=GS(),ZS=`data-scroll-locked`,QS=function(e,t,n,r){var i=e.left,a=e.top,o=e.right,s=e.gap;return n===void 0&&(n=`margin`),`
73
+ `;typeof process<`u`&&process.stderr?e===`error`||e===`fatal`?process.stderr.write(c):process.stdout?.write(c):typeof console<`u`&&(e===`error`||e===`fatal`?console.error:e===`warn`?console.warn:e===`debug`?console.debug:console.log)(s),this.fileStream&&this.fileStream.write(c)}debug(e,t){this.write(`debug`,e,t)}info(e,t){this.write(`info`,e,t)}warn(e,t){this.write(`warn`,e,t)}error(e,t,n){t instanceof Error?this.write(`error`,e,n,t):this.write(`error`,e,t)}fatal(e,t,n){t instanceof Error?this.write(`fatal`,e,n,t):this.write(`fatal`,e,t)}log(e,...t){this.info(e,t.length>0?{args:t}:void 0)}child(t){let n=new e(this.config,{...this.bindings,...t});return n.fileStream=this.fileStream,n}withTrace(e,t){return this.child({traceId:e,spanId:t})}async destroy(){this.fileStream&&=(await new Promise(e=>this.fileStream.end(e)),void 0)}};function Mg(e){return new jg(e)}var Ng=class{constructor(e,t){this.subscriptions=new Map,this.eventBuffer=[],this._baseUrl=e,this._token=t}subscribeMetadata(e,t,n){let r=`metadata-${e}-${Date.now()}`;return this.subscriptions.set(r,{filter:{type:e,packageId:n?.packageId,eventTypes:[`metadata.${e}.created`,`metadata.${e}.updated`,`metadata.${e}.deleted`]},handler:e=>{e.type.startsWith(`metadata.`)&&t(e)}}),this.startPolling(),()=>{this.subscriptions.delete(r),this.subscriptions.size===0&&this.stopPolling()}}subscribeData(e,t,n){let r=`data-${e}-${Date.now()}`;return this.subscriptions.set(r,{filter:{type:e,recordId:n?.recordId,eventTypes:[`data.record.created`,`data.record.updated`,`data.record.deleted`]},handler:r=>{r.type.startsWith(`data.`)&&r.object===e&&(!n?.recordId||r.payload?.recordId===n.recordId)&&t(r)}}),this.startPolling(),()=>{this.subscriptions.delete(r),this.subscriptions.size===0&&this.stopPolling()}}emitEvent(e){for(let t of this.subscriptions.values()){let n=!t.filter.type||e.type.includes(t.filter.type)||e.object===t.filter.type,r=!t.filter.eventTypes?.length||t.filter.eventTypes.includes(e.type),i=!t.filter.packageId||e.payload?.packageId===t.filter.packageId;if(n&&r&&i)try{t.handler(e)}catch(e){console.error(`Error in realtime event handler:`,e)}}}startPolling(){this.pollInterval||=setInterval(()=>{for(;this.eventBuffer.length>0;){let e=this.eventBuffer.shift();e&&this.emitEvent(e)}},2e3)}stopPolling(){this.pollInterval&&=(clearInterval(this.pollInterval),void 0)}_bufferEvent(e){this.eventBuffer.push(e)}disconnect(){this.stopPolling(),this.subscriptions.clear(),this.eventBuffer=[]}},Pg=class{constructor(e){this.meta={getTypes:async()=>{let e=this.getRoute(`metadata`),t=await this.fetch(`${this.baseUrl}${e}`);return this.unwrapResponse(t)},getItems:async(e,t)=>{let n=this.getRoute(`metadata`),r=new URLSearchParams;t?.packageId&&r.set(`package`,t.packageId);let i=r.toString(),a=`${this.baseUrl}${n}/${e}${i?`?${i}`:``}`,o=await this.fetch(a);return this.unwrapResponse(o)},getItem:async(e,t,n)=>{let r=this.getRoute(`metadata`),i=new URLSearchParams;n?.packageId&&i.set(`package`,n.packageId);let a=i.toString(),o=`${this.baseUrl}${r}/${e}/${t}${a?`?${a}`:``}`,s=await this.fetch(o);return this.unwrapResponse(s)},saveItem:async(e,t,n)=>{let r=this.getRoute(`metadata`),i=await this.fetch(`${this.baseUrl}${r}/${e}/${t}`,{method:`PUT`,body:JSON.stringify(n)});return this.unwrapResponse(i)},deleteItem:async(e,t)=>{let n=this.getRoute(`metadata`),r=await this.fetch(`${this.baseUrl}${n}/${encodeURIComponent(e)}/${encodeURIComponent(t)}`,{method:`DELETE`});return this.unwrapResponse(r)},getHistory:async(e,t,n)=>{let r=this.getRoute(`metadata`),i=new URLSearchParams;n?.sinceSeq!==void 0&&i.set(`sinceSeq`,String(n.sinceSeq)),n?.limit!==void 0&&i.set(`limit`,String(n.limit));let a=i.toString(),o=`${this.baseUrl}${r}/${encodeURIComponent(e)}/${encodeURIComponent(t)}/history${a?`?${a}`:``}`,s=await this.fetch(o);return this.unwrapResponse(s)},getCached:async(e,t)=>{let n=this.getRoute(`metadata`),r={};t?.ifNoneMatch&&(r[`If-None-Match`]=t.ifNoneMatch),t?.ifModifiedSince&&(r[`If-Modified-Since`]=t.ifModifiedSince);let i=await this.fetch(`${this.baseUrl}${n}/object/${e}`,{headers:r});if(i.status===304)return{notModified:!0,etag:t?.ifNoneMatch?{value:t.ifNoneMatch.replace(/^W\/|"/g,``),weak:t.ifNoneMatch.startsWith(`W/`)}:void 0};let a=await i.json(),o=i.headers.get(`ETag`),s=i.headers.get(`Last-Modified`);return{data:a,etag:o?{value:o.replace(/^W\/|"/g,``),weak:o.startsWith(`W/`)}:void 0,lastModified:s||void 0,notModified:!1}},getView:async(e,t=`list`)=>{let n=this.getRoute(`ui`),r=await this.fetch(`${this.baseUrl}${n}/view/${e}?type=${t}`);return this.unwrapResponse(r)}},this.analytics={query:async e=>{let t=this.getRoute(`analytics`);return(await this.fetch(`${this.baseUrl}${t}/query`,{method:`POST`,body:JSON.stringify(e)})).json()},meta:async e=>{let t=this.getRoute(`analytics`);return(await this.fetch(`${this.baseUrl}${t}/meta/${e}`)).json()},explain:async e=>{let t=this.getRoute(`analytics`);return(await this.fetch(`${this.baseUrl}${t}/explain`,{method:`POST`,body:JSON.stringify(e)})).json()}},this.packages={list:async e=>{let t=this.getRoute(`packages`),n=new URLSearchParams;e?.status&&n.set(`status`,e.status),e?.type&&n.set(`type`,e.type),e?.enabled!==void 0&&n.set(`enabled`,String(e.enabled));let r=n.toString(),i=`${this.baseUrl}${t}${r?`?`+r:``}`,a=await this.fetch(i);return this.unwrapResponse(a)},get:async e=>{let t=this.getRoute(`packages`),n=await this.fetch(`${this.baseUrl}${t}/${encodeURIComponent(e)}`);return this.unwrapResponse(n)},install:async(e,t)=>{let n=this.getRoute(`packages`),r=await this.fetch(`${this.baseUrl}${n}`,{method:`POST`,body:JSON.stringify({manifest:e,settings:t?.settings,enableOnInstall:t?.enableOnInstall})});return this.unwrapResponse(r)},uninstall:async e=>{let t=this.getRoute(`packages`),n=await this.fetch(`${this.baseUrl}${t}/${encodeURIComponent(e)}`,{method:`DELETE`});return this.unwrapResponse(n)},enable:async e=>{let t=this.getRoute(`packages`),n=await this.fetch(`${this.baseUrl}${t}/${encodeURIComponent(e)}/enable`,{method:`PATCH`});return this.unwrapResponse(n)},disable:async e=>{let t=this.getRoute(`packages`),n=await this.fetch(`${this.baseUrl}${t}/${encodeURIComponent(e)}/disable`,{method:`PATCH`});return this.unwrapResponse(n)}},this.projects={list:async e=>{let t=new URLSearchParams;e?.organization_id&&t.set(`organizationId`,e.organization_id),e?.env_type&&t.set(`envType`,e.env_type),e?.status&&t.set(`status`,e.status);let n=t.toString(),r=`${this.baseUrl}/api/v1/cloud/projects${n?`?`+n:``}`,i=await this.fetch(r);return this.unwrapResponse(i)},get:async e=>{let t=await this.fetch(`${this.baseUrl}/api/v1/cloud/projects/${encodeURIComponent(e)}`);return this.unwrapResponse(t)},create:async e=>{let t=await this.fetch(`${this.baseUrl}/api/v1/cloud/projects`,{method:`POST`,body:JSON.stringify(e)});return this.unwrapResponse(t)},update:async(e,t)=>{let n=await this.fetch(`${this.baseUrl}/api/v1/cloud/projects/${encodeURIComponent(e)}`,{method:`PATCH`,body:JSON.stringify(t)});return this.unwrapResponse(n)},delete:async(e,t)=>{let n=t?.force?`?force=1`:``,r=await this.fetch(`${this.baseUrl}/api/v1/cloud/projects/${encodeURIComponent(e)}${n}`,{method:`DELETE`});return this.unwrapResponse(r)},activate:async e=>{let t=await this.fetch(`${this.baseUrl}/api/v1/cloud/projects/${encodeURIComponent(e)}/activate`,{method:`POST`});return this.unwrapResponse(t)},rotateCredential:async(e,t)=>{let n=await this.fetch(`${this.baseUrl}/api/v1/cloud/projects/${encodeURIComponent(e)}/credentials/rotate`,{method:`POST`,body:JSON.stringify({plaintext:t})});return this.unwrapResponse(n)},updateHostname:async(e,t)=>{let n=await this.fetch(`${this.baseUrl}/api/v1/cloud/projects/${encodeURIComponent(e)}/hostname`,{method:`POST`,body:JSON.stringify({hostname:t})});return this.unwrapResponse(n)},updateVisibility:async(e,t)=>{let n=await this.fetch(`${this.baseUrl}/api/v1/cloud/projects/${encodeURIComponent(e)}`,{method:`PATCH`,body:JSON.stringify({visibility:t})});return this.unwrapResponse(n)},listRevisions:async(e,t)=>{let n=new URLSearchParams;t?.limit&&n.set(`limit`,String(t.limit)),t?.cursor&&n.set(`cursor`,t.cursor),t?.branch&&n.set(`branch`,t.branch);let r=n.toString(),i=await this.fetch(`${this.baseUrl}/api/v1/cloud/projects/${encodeURIComponent(e)}/revisions${r?`?${r}`:``}`);return this.unwrapResponse(i)},listBranches:async e=>{let t=await this.fetch(`${this.baseUrl}/api/v1/cloud/projects/${encodeURIComponent(e)}/branches`);return this.unwrapResponse(t)},renameBranch:async(e,t,n)=>{let r=await this.fetch(`${this.baseUrl}/api/v1/cloud/projects/${encodeURIComponent(e)}/branches/${encodeURIComponent(t)}/rename`,{method:`POST`,headers:{"content-type":`application/json`},body:JSON.stringify({newName:n})});return this.unwrapResponse(r)},deleteBranch:async(e,t)=>{let n=await this.fetch(`${this.baseUrl}/api/v1/cloud/projects/${encodeURIComponent(e)}/branches/${encodeURIComponent(t)}`,{method:`DELETE`});return this.unwrapResponse(n)},activateRevision:async(e,t)=>{let n=await this.fetch(`${this.baseUrl}/api/v1/cloud/projects/${encodeURIComponent(e)}/revisions/${encodeURIComponent(t)}/activate`,{method:`POST`});return this.unwrapResponse(n)},retryProvisioning:async e=>{let t=await this.fetch(`${this.baseUrl}/api/v1/cloud/projects/${encodeURIComponent(e)}/retry`,{method:`POST`});return this.unwrapResponse(t)},listMembers:async e=>{let t=await this.fetch(`${this.baseUrl}/api/v1/cloud/projects/${encodeURIComponent(e)}/members`);return this.unwrapResponse(t)},addMember:async(e,t)=>{let n=await this.fetch(`${this.baseUrl}/api/v1/cloud/projects/${encodeURIComponent(e)}/members`,{method:`POST`,headers:{"content-type":`application/json`},body:JSON.stringify(t)});return this.unwrapResponse(n)},updateMemberRole:async(e,t,n)=>{let r=await this.fetch(`${this.baseUrl}/api/v1/cloud/projects/${encodeURIComponent(e)}/members/${encodeURIComponent(t)}`,{method:`PATCH`,headers:{"content-type":`application/json`},body:JSON.stringify({role:n})});return this.unwrapResponse(r)},removeMember:async(e,t)=>{let n=await this.fetch(`${this.baseUrl}/api/v1/cloud/projects/${encodeURIComponent(e)}/members/${encodeURIComponent(t)}`,{method:`DELETE`});return this.unwrapResponse(n)},listDrivers:async()=>{let e=await this.fetch(`${this.baseUrl}/api/v1/cloud/drivers`);return this.unwrapResponse(e)},listTemplates:async()=>{let e=await this.fetch(`${this.baseUrl}/api/v1/cloud/templates`);return this.unwrapResponse(e)},packages:{list:async e=>{let t=await this.fetch(`${this.baseUrl}/api/v1/cloud/projects/${encodeURIComponent(e)}/packages`);return this.unwrapResponse(t)},install:async(e,t)=>{let n=await this.fetch(`${this.baseUrl}/api/v1/cloud/projects/${encodeURIComponent(e)}/packages`,{method:`POST`,body:JSON.stringify(t)});return this.unwrapResponse(n)},get:async(e,t)=>{let n=await this.fetch(`${this.baseUrl}/api/v1/cloud/projects/${encodeURIComponent(e)}/packages/${encodeURIComponent(t)}`);return this.unwrapResponse(n)},enable:async(e,t)=>{let n=await this.fetch(`${this.baseUrl}/api/v1/cloud/projects/${encodeURIComponent(e)}/packages/${encodeURIComponent(t)}/enable`,{method:`PATCH`});return this.unwrapResponse(n)},disable:async(e,t)=>{let n=await this.fetch(`${this.baseUrl}/api/v1/cloud/projects/${encodeURIComponent(e)}/packages/${encodeURIComponent(t)}/disable`,{method:`PATCH`});return this.unwrapResponse(n)},uninstall:async(e,t)=>{let n=await this.fetch(`${this.baseUrl}/api/v1/cloud/projects/${encodeURIComponent(e)}/packages/${encodeURIComponent(t)}`,{method:`DELETE`});return this.unwrapResponse(n)},upgrade:async(e,t,n)=>{let r=await this.fetch(`${this.baseUrl}/api/v1/cloud/projects/${encodeURIComponent(e)}/packages/${encodeURIComponent(t)}/upgrade`,{method:`POST`,body:JSON.stringify({targetVersion:n})});return this.unwrapResponse(r)}}},this.organizations={list:async()=>{let e=this.getRoute(`auth`),t=await(await this.fetch(`${this.baseUrl}${e}/organization/list`)).json();return{organizations:Array.isArray(t)?t:t?.data??[]}},create:async e=>{let t=this.getRoute(`auth`);return(await this.fetch(`${this.baseUrl}${t}/organization/create`,{method:`POST`,body:JSON.stringify(e)})).json()},update:async(e,t)=>{let n=this.getRoute(`auth`);return(await this.fetch(`${this.baseUrl}${n}/organization/update`,{method:`POST`,body:JSON.stringify({organizationId:e,data:t})})).json()},setActive:async e=>{let t=this.getRoute(`auth`);return(await this.fetch(`${this.baseUrl}${t}/organization/set-active`,{method:`POST`,body:JSON.stringify({organizationId:e})})).json()},get:async e=>{let t=this.getRoute(`auth`);return(await this.fetch(`${this.baseUrl}${t}/organization/get-full-organization?organizationId=${encodeURIComponent(e)}`)).json()},listMembers:async e=>{let t=this.getRoute(`auth`);return(await this.fetch(`${this.baseUrl}${t}/organization/list-members?organizationId=${encodeURIComponent(e)}`)).json()},invite:async e=>{let t=this.getRoute(`auth`);return(await this.fetch(`${this.baseUrl}${t}/organization/invite-member`,{method:`POST`,body:JSON.stringify(e)})).json()},leave:async e=>{let t=this.getRoute(`auth`);return(await this.fetch(`${this.baseUrl}${t}/organization/leave`,{method:`POST`,body:JSON.stringify({organizationId:e})})).json()},delete:async e=>{let t=this.getRoute(`auth`);return(await this.fetch(`${this.baseUrl}${t}/organization/delete`,{method:`POST`,body:JSON.stringify({organizationId:e})})).json()},removeMember:async(e,t)=>{let n=this.getRoute(`auth`);return(await this.fetch(`${this.baseUrl}${n}/organization/remove-member`,{method:`POST`,body:JSON.stringify({memberIdOrEmail:t.memberIdOrEmail,organizationId:e})})).json()},updateMemberRole:async(e,t)=>{let n=this.getRoute(`auth`);return(await this.fetch(`${this.baseUrl}${n}/organization/update-member-role`,{method:`POST`,body:JSON.stringify({memberId:t.memberId,role:t.role,organizationId:e})})).json()},getActiveMember:async e=>{let t=this.getRoute(`auth`);return(await this.fetch(`${this.baseUrl}${t}/organization/get-active-member?organizationId=${encodeURIComponent(e)}`)).json()},invitations:{list:async e=>{let t=this.getRoute(`auth`),n=await(await this.fetch(`${this.baseUrl}${t}/organization/list-invitations?organizationId=${encodeURIComponent(e)}`)).json();return{invitations:Array.isArray(n)?n:n?.data??n?.invitations??[]}},listMine:async()=>{let e=this.getRoute(`auth`),t=await(await this.fetch(`${this.baseUrl}${e}/organization/list-user-invitations`)).json();return{invitations:Array.isArray(t)?t:t?.data??t?.invitations??[]}},cancel:async e=>{let t=this.getRoute(`auth`);return(await this.fetch(`${this.baseUrl}${t}/organization/cancel-invitation`,{method:`POST`,body:JSON.stringify({invitationId:e})})).json()},accept:async e=>{let t=this.getRoute(`auth`);return(await this.fetch(`${this.baseUrl}${t}/organization/accept-invitation`,{method:`POST`,body:JSON.stringify({invitationId:e})})).json()},reject:async e=>{let t=this.getRoute(`auth`);return(await this.fetch(`${this.baseUrl}${t}/organization/reject-invitation`,{method:`POST`,body:JSON.stringify({invitationId:e})})).json()},resend:async e=>{if(e.id)try{await this.organizations.invitations.cancel(e.id)}catch{}return this.organizations.invite({email:e.email,role:e.role??`member`,organizationId:e.organizationId})}},teams:{list:async e=>{let t=this.getRoute(`auth`),n=await(await this.fetch(`${this.baseUrl}${t}/organization/list-teams?organizationId=${encodeURIComponent(e)}`)).json();return{teams:Array.isArray(n)?n:n?.data??n?.teams??[]}},create:async e=>{let t=this.getRoute(`auth`);return(await this.fetch(`${this.baseUrl}${t}/organization/create-team`,{method:`POST`,body:JSON.stringify(e)})).json()},update:async e=>{let t=this.getRoute(`auth`);return(await this.fetch(`${this.baseUrl}${t}/organization/update-team`,{method:`POST`,body:JSON.stringify(e)})).json()},delete:async e=>{let t=this.getRoute(`auth`);return(await this.fetch(`${this.baseUrl}${t}/organization/remove-team`,{method:`POST`,body:JSON.stringify(e)})).json()},listMembers:async e=>{let t=this.getRoute(`auth`),n=await(await this.fetch(`${this.baseUrl}${t}/organization/list-team-members?teamId=${encodeURIComponent(e)}`)).json();return{members:Array.isArray(n)?n:n?.data??n?.members??[]}},addMember:async e=>{let t=this.getRoute(`auth`);return(await this.fetch(`${this.baseUrl}${t}/organization/add-team-member`,{method:`POST`,body:JSON.stringify(e)})).json()},removeMember:async e=>{let t=this.getRoute(`auth`);return(await this.fetch(`${this.baseUrl}${t}/organization/remove-team-member`,{method:`POST`,body:JSON.stringify(e)})).json()}}},this.oauth={applications:{register:async e=>{let t=this.getRoute(`auth`);return(await this.fetch(`${this.baseUrl}${t}/oauth2/create-client`,{method:`POST`,body:JSON.stringify(e)})).json()},get:async e=>{let t=this.getRoute(`auth`);return(await this.fetch(`${this.baseUrl}${t}/oauth2/get-client?client_id=${encodeURIComponent(e)}`)).json()},getPublic:async e=>{let t=this.getRoute(`auth`);return(await this.fetch(`${this.baseUrl}${t}/oauth2/public-client?client_id=${encodeURIComponent(e)}`)).json()},list:async()=>{let e=this.getRoute(`auth`),t=await(await this.fetch(`${this.baseUrl}${e}/oauth2/get-clients`)).json();return{applications:Array.isArray(t)?t:t?.clients??t?.data??[]}},delete:async e=>{let t=this.getRoute(`auth`);return(await this.fetch(`${this.baseUrl}${t}/oauth2/delete-client`,{method:`POST`,body:JSON.stringify({client_id:e})})).json()}},consent:async e=>{let t=this.getRoute(`auth`);return(await this.fetch(`${this.baseUrl}${t}/oauth2/consent`,{method:`POST`,body:JSON.stringify(e)})).json()}},this.auth={getConfig:async()=>{let e=this.getRoute(`auth`),t=await this.fetch(`${this.baseUrl}${e}/config`);return this.unwrapResponse(t)},login:async e=>{let t=this.getRoute(`auth`),n=await(await this.fetch(`${this.baseUrl}${t}/sign-in/email`,{method:`POST`,headers:{Origin:this.baseUrl},body:JSON.stringify(e)})).json(),r=n&&(n.data??(n.token||n.user?{token:n.token,user:n.user}:void 0)),i=r?{...n,data:r}:n;return i.data?.token&&(this.token=i.data.token),i},logout:async()=>{let e=this.getRoute(`auth`);await this.fetch(`${this.baseUrl}${e}/sign-out`,{method:`POST`,headers:{"Content-Type":`application/json`,Origin:this.baseUrl},body:`{}`}),this.token=void 0},me:async()=>{let e=this.getRoute(`auth`);return(await this.fetch(`${this.baseUrl}${e}/get-session`,{headers:{Origin:this.baseUrl}})).json()},register:async e=>{let t=this.getRoute(`auth`),n=await(await this.fetch(`${this.baseUrl}${t}/sign-up/email`,{method:`POST`,headers:{Origin:this.baseUrl},body:JSON.stringify(e)})).json(),r=n&&(n.data??(n.token||n.user?{token:n.token,user:n.user}:void 0)),i=r?{...n,data:r}:n;return i.data?.token&&(this.token=i.data.token),i},signInWithProvider:async(e,t)=>{if(typeof window>`u`)throw Error(`signInWithProvider requires a browser environment`);let n=this.getRoute(`auth`),r=t?.callbackURL??window.location.origin+`/login`,i=t?.type===`oidc`,a=i?`/sign-in/oauth2`:`/sign-in/social`,o=i?{providerId:e,callbackURL:r}:{provider:e,callbackURL:r};t?.errorCallbackURL&&(o.errorCallbackURL=t.errorCallbackURL);let s=await(await this.fetch(`${this.baseUrl}${n}${a}`,{method:`POST`,body:JSON.stringify(o)})).json(),c=s?.url??s?.data?.url;if(c)window.location.assign(c);else throw Error(`signInWithProvider: no redirect URL returned for provider "${e}"`)},refreshToken:async e=>{let t=this.getRoute(`auth`),n=await(await this.fetch(`${this.baseUrl}${t}/get-session`,{method:`GET`})).json();return n.data?.token&&(this.token=n.data.token),n},bootstrapStatus:async()=>{let e=this.getRoute(`auth`),t=await(await this.fetch(`${this.baseUrl}${e}/bootstrap-status`)).json();return{hasOwner:!!(t?.data??t)?.hasOwner}},updateUser:async e=>{let t=this.getRoute(`auth`);return(await this.fetch(`${this.baseUrl}${t}/update-user`,{method:`POST`,body:JSON.stringify(e)})).json()},changePassword:async e=>{let t=this.getRoute(`auth`);return(await this.fetch(`${this.baseUrl}${t}/change-password`,{method:`POST`,body:JSON.stringify(e)})).json()},changeEmail:async e=>{let t=this.getRoute(`auth`);return(await this.fetch(`${this.baseUrl}${t}/change-email`,{method:`POST`,body:JSON.stringify(e)})).json()},sendVerificationEmail:async e=>{let t=this.getRoute(`auth`);return(await this.fetch(`${this.baseUrl}${t}/send-verification-email`,{method:`POST`,body:JSON.stringify(e)})).json()},verifyEmail:async e=>{let t=this.getRoute(`auth`),n=new URL(`${this.baseUrl}${t}/verify-email`);return n.searchParams.set(`token`,e.token),e.callbackURL&&n.searchParams.set(`callbackURL`,e.callbackURL),(await this.fetch(n.toString())).json()},deleteUser:async e=>{let t=this.getRoute(`auth`),n=await this.fetch(`${this.baseUrl}${t}/delete-user`,{method:`POST`,body:JSON.stringify(e)});return this.token=void 0,n.json()},sessions:{list:async()=>{let e=this.getRoute(`auth`),t=await(await this.fetch(`${this.baseUrl}${e}/list-sessions`)).json();return{sessions:Array.isArray(t)?t:t?.data??t?.sessions??[]}},revoke:async e=>{let t=this.getRoute(`auth`);return(await this.fetch(`${this.baseUrl}${t}/revoke-session`,{method:`POST`,body:JSON.stringify({token:e})})).json()},revokeOthers:async()=>{let e=this.getRoute(`auth`);return(await this.fetch(`${this.baseUrl}${e}/revoke-other-sessions`,{method:`POST`,body:`{}`})).json()},revokeAll:async()=>{let e=this.getRoute(`auth`),t=await this.fetch(`${this.baseUrl}${e}/revoke-sessions`,{method:`POST`,body:`{}`});return this.token=void 0,t.json()}},twoFactor:{enable:async e=>{let t=this.getRoute(`auth`),n=await(await this.fetch(`${this.baseUrl}${t}/two-factor/enable`,{method:`POST`,body:JSON.stringify(e)})).json();return n?.data??n},verifyTotp:async e=>{let t=this.getRoute(`auth`);return(await this.fetch(`${this.baseUrl}${t}/two-factor/verify-totp`,{method:`POST`,body:JSON.stringify(e)})).json()},disable:async e=>{let t=this.getRoute(`auth`);return(await this.fetch(`${this.baseUrl}${t}/two-factor/disable`,{method:`POST`,body:JSON.stringify(e)})).json()},generateBackupCodes:async e=>{let t=this.getRoute(`auth`),n=await(await this.fetch(`${this.baseUrl}${t}/two-factor/generate-backup-codes`,{method:`POST`,body:JSON.stringify(e)})).json();return n?.data??n},verifyBackupCode:async e=>{let t=this.getRoute(`auth`);return(await this.fetch(`${this.baseUrl}${t}/two-factor/verify-backup-code`,{method:`POST`,body:JSON.stringify(e)})).json()}},accounts:{list:async()=>{let e=this.getRoute(`auth`),t=await(await this.fetch(`${this.baseUrl}${e}/list-accounts`)).json();return{accounts:Array.isArray(t)?t:t?.data??t?.accounts??[]}},unlink:async e=>{let t=this.getRoute(`auth`);return(await this.fetch(`${this.baseUrl}${t}/unlink-account`,{method:`POST`,body:JSON.stringify(e)})).json()},linkSocial:async e=>{let t=this.getRoute(`auth`),n=e.callbackURL??(typeof window<`u`?window.location.href:void 0),r=await(await this.fetch(`${this.baseUrl}${t}/link-social`,{method:`POST`,body:JSON.stringify({provider:e.provider,callbackURL:n})})).json();return r?.data??r}}},this.storage={upload:async(e,t=`user`)=>{let n={filename:e.name,mimeType:e.type,size:e.size,scope:t},r=this.getRoute(`storage`),{data:i}=await(await this.fetch(`${this.baseUrl}${r}/upload/presigned`,{method:`POST`,body:JSON.stringify(n)})).json(),a=await this.fetchImpl(i.uploadUrl,{method:i.method,headers:i.headers,body:e});if(!a.ok)throw Error(`Storage Upload Failed: ${a.statusText}`);let o={fileId:i.fileId};return(await this.fetch(`${this.baseUrl}${r}/upload/complete`,{method:`POST`,body:JSON.stringify(o)})).json()},getDownloadUrl:async e=>{let t=this.getRoute(`storage`);return(await(await this.fetch(`${this.baseUrl}${t}/files/${e}/url`)).json()).url},getPresignedUrl:async e=>{let t=this.getRoute(`storage`);return(await this.fetch(`${this.baseUrl}${t}/upload/presigned`,{method:`POST`,body:JSON.stringify(e)})).json()},initChunkedUpload:async e=>{let t=this.getRoute(`storage`);return(await this.fetch(`${this.baseUrl}${t}/upload/chunked`,{method:`POST`,body:JSON.stringify(e)})).json()},uploadPart:async(e,t,n,r)=>{let i=this.getRoute(`storage`);return(await this.fetch(`${this.baseUrl}${i}/upload/chunked/${e}/chunk/${t}`,{method:`PUT`,headers:{"x-resume-token":n},body:r})).json()},completeChunkedUpload:async e=>{let t=this.getRoute(`storage`);return(await this.fetch(`${this.baseUrl}${t}/upload/chunked/${e.uploadId}/complete`,{method:`POST`,body:JSON.stringify(e)})).json()},resumeUpload:async(e,t,n,r)=>{let i=this.getRoute(`storage`),{totalChunks:a,uploadedChunks:o}=(await(await this.fetch(`${this.baseUrl}${i}/upload/chunked/${e}/progress`)).json()).data,s=[],c=t instanceof ArrayBuffer?t:await t.arrayBuffer();for(let t=o;t<a;t++){let i=t*n,a=Math.min(i+n,c.byteLength),o=new Blob([c.slice(i,a)]),l=await this.storage.uploadPart(e,t,r,o);s.push({chunkIndex:t,eTag:l.data.eTag})}return this.storage.completeChunkedUpload({uploadId:e,parts:s})}},this.automation={trigger:async(e,t)=>{let n=this.getRoute(`automation`);return(await this.fetch(`${this.baseUrl}${n}/trigger/${e}`,{method:`POST`,body:JSON.stringify(t)})).json()},list:async()=>{let e=this.getRoute(`automation`),t=await this.fetch(`${this.baseUrl}${e}`);return this.unwrapResponse(t)},get:async e=>{let t=this.getRoute(`automation`),n=await this.fetch(`${this.baseUrl}${t}/${e}`);return this.unwrapResponse(n)},create:async(e,t)=>{let n=this.getRoute(`automation`),r=await this.fetch(`${this.baseUrl}${n}`,{method:`POST`,body:JSON.stringify({name:e,...t})});return this.unwrapResponse(r)},update:async(e,t)=>{let n=this.getRoute(`automation`),r=await this.fetch(`${this.baseUrl}${n}/${e}`,{method:`PUT`,body:JSON.stringify({definition:t})});return this.unwrapResponse(r)},delete:async e=>{let t=this.getRoute(`automation`),n=await this.fetch(`${this.baseUrl}${t}/${e}`,{method:`DELETE`});return this.unwrapResponse(n)},toggle:async(e,t)=>{let n=this.getRoute(`automation`),r=await this.fetch(`${this.baseUrl}${n}/${e}/toggle`,{method:`POST`,body:JSON.stringify({enabled:t})});return this.unwrapResponse(r)},runs:{list:async(e,t)=>{let n=this.getRoute(`automation`),r=new URLSearchParams;t?.limit&&r.set(`limit`,String(t.limit)),t?.cursor&&r.set(`cursor`,t.cursor);let i=r.toString(),a=await this.fetch(`${this.baseUrl}${n}/${e}/runs${i?`?${i}`:``}`);return this.unwrapResponse(a)},get:async(e,t)=>{let n=this.getRoute(`automation`),r=await this.fetch(`${this.baseUrl}${n}/${e}/runs/${t}`);return this.unwrapResponse(r)}},getFlow:async e=>{let t=this.getRoute(`automation`),n=await this.fetch(`${this.baseUrl}${t}/${encodeURIComponent(e)}`);return this.unwrapResponse(n)},execute:async(e,t)=>{let n=this.getRoute(`automation`),r=await this.fetch(`${this.baseUrl}${n}/${encodeURIComponent(e)}/trigger`,{method:`POST`,body:JSON.stringify(t??{})});return this.unwrapResponse(r)},listRuns:async(e,t)=>{let n=this.getRoute(`automation`),r=new URLSearchParams;t?.limit!=null&&r.set(`limit`,String(t.limit)),t?.cursor&&r.set(`cursor`,t.cursor);let i=r.toString(),a=await this.fetch(`${this.baseUrl}${n}/${encodeURIComponent(e)}/runs${i?`?${i}`:``}`);return this.unwrapResponse(a)},getRun:async(e,t)=>{let n=this.getRoute(`automation`),r=await this.fetch(`${this.baseUrl}${n}/${encodeURIComponent(e)}/runs/${encodeURIComponent(t)}`);return this.unwrapResponse(r)}},this.permissions={check:async e=>{let t=this.getRoute(`permissions`),n=new URLSearchParams({object:e.object,action:e.action});e.recordId!==void 0&&n.set(`recordId`,e.recordId),e.field!==void 0&&n.set(`field`,e.field);let r=await this.fetch(`${this.baseUrl}${t}/check?${n.toString()}`);return this.unwrapResponse(r)},getObjectPermissions:async e=>{let t=this.getRoute(`permissions`),n=await this.fetch(`${this.baseUrl}${t}/objects/${encodeURIComponent(e)}`);return this.unwrapResponse(n)},getEffectivePermissions:async()=>{let e=this.getRoute(`permissions`),t=await this.fetch(`${this.baseUrl}${e}/effective`);return this.unwrapResponse(t)}},this.realtime={connect:async e=>{let t=this.getRoute(`realtime`),n=await this.fetch(`${this.baseUrl}${t}/connect`,{method:`POST`,body:JSON.stringify(e||{})});return this.unwrapResponse(n)},disconnect:async()=>{let e=this.getRoute(`realtime`);await this.fetch(`${this.baseUrl}${e}/disconnect`,{method:`POST`})},subscribe:async e=>{let t=this.getRoute(`realtime`),n=await this.fetch(`${this.baseUrl}${t}/subscribe`,{method:`POST`,body:JSON.stringify(e)});return this.unwrapResponse(n)},unsubscribe:async e=>{let t=this.getRoute(`realtime`);await this.fetch(`${this.baseUrl}${t}/unsubscribe`,{method:`POST`,body:JSON.stringify({subscriptionId:e})})},setPresence:async(e,t)=>{let n=this.getRoute(`realtime`);await this.fetch(`${this.baseUrl}${n}/presence`,{method:`PUT`,body:JSON.stringify({channel:e,state:t})})},getPresence:async e=>{let t=this.getRoute(`realtime`),n=await this.fetch(`${this.baseUrl}${t}/presence/${encodeURIComponent(e)}`);return this.unwrapResponse(n)}},this.workflow={getConfig:async e=>{let t=this.getRoute(`workflow`),n=await this.fetch(`${this.baseUrl}${t}/${encodeURIComponent(e)}/config`);return this.unwrapResponse(n)},getState:async(e,t)=>{let n=this.getRoute(`workflow`),r=await this.fetch(`${this.baseUrl}${n}/${encodeURIComponent(e)}/${encodeURIComponent(t)}/state`);return this.unwrapResponse(r)},transition:async e=>{let t=this.getRoute(`workflow`),n=await this.fetch(`${this.baseUrl}${t}/${encodeURIComponent(e.object)}/${encodeURIComponent(e.recordId)}/transition`,{method:`POST`,body:JSON.stringify({transition:e.transition,comment:e.comment,data:e.data})});return this.unwrapResponse(n)},approve:async e=>{let t=this.getRoute(`workflow`),n=await this.fetch(`${this.baseUrl}${t}/${encodeURIComponent(e.object)}/${encodeURIComponent(e.recordId)}/approve`,{method:`POST`,body:JSON.stringify({comment:e.comment,data:e.data})});return this.unwrapResponse(n)},reject:async e=>{let t=this.getRoute(`workflow`),n=await this.fetch(`${this.baseUrl}${t}/${encodeURIComponent(e.object)}/${encodeURIComponent(e.recordId)}/reject`,{method:`POST`,body:JSON.stringify({reason:e.reason,comment:e.comment})});return this.unwrapResponse(n)}},this.views={list:async(e,t)=>{let n=this.getRoute(`views`),r=new URLSearchParams;t&&r.set(`type`,t);let i=r.toString(),a=await this.fetch(`${this.baseUrl}${n}/${encodeURIComponent(e)}${i?`?${i}`:``}`);return this.unwrapResponse(a)},get:async(e,t)=>{let n=this.getRoute(`views`),r=await this.fetch(`${this.baseUrl}${n}/${encodeURIComponent(e)}/${encodeURIComponent(t)}`);return this.unwrapResponse(r)},create:async(e,t)=>{let n=this.getRoute(`views`),r=await this.fetch(`${this.baseUrl}${n}/${encodeURIComponent(e)}`,{method:`POST`,body:JSON.stringify({object:e,data:t})});return this.unwrapResponse(r)},update:async(e,t,n)=>{let r=this.getRoute(`views`),i=await this.fetch(`${this.baseUrl}${r}/${encodeURIComponent(e)}/${encodeURIComponent(t)}`,{method:`PUT`,body:JSON.stringify({object:e,viewId:t,data:n})});return this.unwrapResponse(i)},delete:async(e,t)=>{let n=this.getRoute(`views`),r=await this.fetch(`${this.baseUrl}${n}/${encodeURIComponent(e)}/${encodeURIComponent(t)}`,{method:`DELETE`});return this.unwrapResponse(r)}},this.notifications={registerDevice:async e=>{let t=this.getRoute(`notifications`),n=await this.fetch(`${this.baseUrl}${t}/devices`,{method:`POST`,body:JSON.stringify(e)});return this.unwrapResponse(n)},unregisterDevice:async e=>{let t=this.getRoute(`notifications`),n=await this.fetch(`${this.baseUrl}${t}/devices/${encodeURIComponent(e)}`,{method:`DELETE`});return this.unwrapResponse(n)},getPreferences:async()=>{let e=this.getRoute(`notifications`),t=await this.fetch(`${this.baseUrl}${e}/preferences`);return this.unwrapResponse(t)},updatePreferences:async e=>{let t=this.getRoute(`notifications`),n=await this.fetch(`${this.baseUrl}${t}/preferences`,{method:`PUT`,body:JSON.stringify({preferences:e})});return this.unwrapResponse(n)},list:async e=>{let t=this.getRoute(`notifications`),n=new URLSearchParams;e?.read!==void 0&&n.set(`read`,String(e.read)),e?.type&&n.set(`type`,e.type),e?.limit&&n.set(`limit`,String(e.limit)),e?.cursor&&n.set(`cursor`,e.cursor);let r=n.toString(),i=await this.fetch(`${this.baseUrl}${t}${r?`?${r}`:``}`);return this.unwrapResponse(i)},markRead:async e=>{let t=this.getRoute(`notifications`),n=await this.fetch(`${this.baseUrl}${t}/read`,{method:`POST`,body:JSON.stringify({ids:e})});return this.unwrapResponse(n)},markAllRead:async()=>{let e=this.getRoute(`notifications`),t=await this.fetch(`${this.baseUrl}${e}/read/all`,{method:`POST`});return this.unwrapResponse(t)}},this.ai={nlq:async e=>{let t=this.getRoute(`ai`),n=await this.fetch(`${this.baseUrl}${t}/nlq`,{method:`POST`,body:JSON.stringify(e)});return this.unwrapResponse(n)},suggest:async e=>{let t=this.getRoute(`ai`),n=await this.fetch(`${this.baseUrl}${t}/suggest`,{method:`POST`,body:JSON.stringify(e)});return this.unwrapResponse(n)},insights:async e=>{let t=this.getRoute(`ai`),n=await this.fetch(`${this.baseUrl}${t}/insights`,{method:`POST`,body:JSON.stringify(e)});return this.unwrapResponse(n)}},this.i18n={getLocales:async()=>{let e=this.getRoute(`i18n`),t=await this.fetch(`${this.baseUrl}${e}/locales`);return this.unwrapResponse(t)},getTranslations:async(e,t)=>{let n=this.getRoute(`i18n`),r=new URLSearchParams;r.set(`locale`,e),t?.namespace&&r.set(`namespace`,t.namespace),t?.keys&&r.set(`keys`,t.keys.join(`,`));let i=await this.fetch(`${this.baseUrl}${n}/translations?${r.toString()}`);return this.unwrapResponse(i)},getFieldLabels:async(e,t)=>{let n=this.getRoute(`i18n`),r=await this.fetch(`${this.baseUrl}${n}/labels/${encodeURIComponent(e)}?locale=${encodeURIComponent(t)}`);return this.unwrapResponse(r)}},this.feed={list:async(e,t,n)=>{let r=this.getRoute(`data`),i=new URLSearchParams;n?.type&&i.set(`type`,n.type),n?.limit&&i.set(`limit`,String(n.limit)),n?.cursor&&i.set(`cursor`,n.cursor);let a=i.toString(),o=await this.fetch(`${this.baseUrl}${r}/${encodeURIComponent(e)}/${encodeURIComponent(t)}/feed${a?`?${a}`:``}`);return this.unwrapResponse(o)},create:async(e,t,n)=>{let r=this.getRoute(`data`),i=await this.fetch(`${this.baseUrl}${r}/${encodeURIComponent(e)}/${encodeURIComponent(t)}/feed`,{method:`POST`,body:JSON.stringify(n)});return this.unwrapResponse(i)},update:async(e,t,n,r)=>{let i=this.getRoute(`data`),a=await this.fetch(`${this.baseUrl}${i}/${encodeURIComponent(e)}/${encodeURIComponent(t)}/feed/${encodeURIComponent(n)}`,{method:`PUT`,body:JSON.stringify(r)});return this.unwrapResponse(a)},delete:async(e,t,n)=>{let r=this.getRoute(`data`),i=await this.fetch(`${this.baseUrl}${r}/${encodeURIComponent(e)}/${encodeURIComponent(t)}/feed/${encodeURIComponent(n)}`,{method:`DELETE`});return this.unwrapResponse(i)},addReaction:async(e,t,n,r)=>{let i=this.getRoute(`data`),a=await this.fetch(`${this.baseUrl}${i}/${encodeURIComponent(e)}/${encodeURIComponent(t)}/feed/${encodeURIComponent(n)}/reactions`,{method:`POST`,body:JSON.stringify({emoji:r})});return this.unwrapResponse(a)},removeReaction:async(e,t,n,r)=>{let i=this.getRoute(`data`),a=await this.fetch(`${this.baseUrl}${i}/${encodeURIComponent(e)}/${encodeURIComponent(t)}/feed/${encodeURIComponent(n)}/reactions/${encodeURIComponent(r)}`,{method:`DELETE`});return this.unwrapResponse(a)},pin:async(e,t,n)=>{let r=this.getRoute(`data`),i=await this.fetch(`${this.baseUrl}${r}/${encodeURIComponent(e)}/${encodeURIComponent(t)}/feed/${encodeURIComponent(n)}/pin`,{method:`POST`});return this.unwrapResponse(i)},unpin:async(e,t,n)=>{let r=this.getRoute(`data`),i=await this.fetch(`${this.baseUrl}${r}/${encodeURIComponent(e)}/${encodeURIComponent(t)}/feed/${encodeURIComponent(n)}/pin`,{method:`DELETE`});return this.unwrapResponse(i)},star:async(e,t,n)=>{let r=this.getRoute(`data`),i=await this.fetch(`${this.baseUrl}${r}/${encodeURIComponent(e)}/${encodeURIComponent(t)}/feed/${encodeURIComponent(n)}/star`,{method:`POST`});return this.unwrapResponse(i)},unstar:async(e,t,n)=>{let r=this.getRoute(`data`),i=await this.fetch(`${this.baseUrl}${r}/${encodeURIComponent(e)}/${encodeURIComponent(t)}/feed/${encodeURIComponent(n)}/star`,{method:`DELETE`});return this.unwrapResponse(i)},search:async(e,t,n,r)=>{let i=this.getRoute(`data`),a=new URLSearchParams;a.set(`query`,n),r?.type&&a.set(`type`,r.type),r?.actorId&&a.set(`actorId`,r.actorId),r?.dateFrom&&a.set(`dateFrom`,r.dateFrom),r?.dateTo&&a.set(`dateTo`,r.dateTo),r?.limit&&a.set(`limit`,String(r.limit)),r?.cursor&&a.set(`cursor`,r.cursor);let o=await this.fetch(`${this.baseUrl}${i}/${encodeURIComponent(e)}/${encodeURIComponent(t)}/feed/search?${a.toString()}`);return this.unwrapResponse(o)},getChangelog:async(e,t,n)=>{let r=this.getRoute(`data`),i=new URLSearchParams;n?.field&&i.set(`field`,n.field),n?.actorId&&i.set(`actorId`,n.actorId),n?.dateFrom&&i.set(`dateFrom`,n.dateFrom),n?.dateTo&&i.set(`dateTo`,n.dateTo),n?.limit&&i.set(`limit`,String(n.limit)),n?.cursor&&i.set(`cursor`,n.cursor);let a=i.toString(),o=await this.fetch(`${this.baseUrl}${r}/${encodeURIComponent(e)}/${encodeURIComponent(t)}/changelog${a?`?${a}`:``}`);return this.unwrapResponse(o)},subscribe:async(e,t,n)=>{let r=this.getRoute(`data`),i=await this.fetch(`${this.baseUrl}${r}/${encodeURIComponent(e)}/${encodeURIComponent(t)}/subscribe`,{method:`POST`,body:JSON.stringify(n||{})});return this.unwrapResponse(i)},unsubscribe:async(e,t)=>{let n=this.getRoute(`data`),r=await this.fetch(`${this.baseUrl}${n}/${encodeURIComponent(e)}/${encodeURIComponent(t)}/subscribe`,{method:`DELETE`});return this.unwrapResponse(r)}},this.data={query:async(e,t)=>{let n=this.getRoute(`data`),r=await this.fetch(`${this.baseUrl}${n}/${e}/query`,{method:`POST`,body:JSON.stringify(t)});return this.unwrapResponse(r)},find:async(e,t={})=>{let n=this.getRoute(`data`),r=new URLSearchParams,i=t,a={};if(`where`in t||`fields`in t||`orderBy`in t||`offset`in t?(i.where&&(a.filter=i.where),i.fields&&(a.select=i.fields),i.orderBy&&(a.sort=i.orderBy),i.limit!=null&&(a.top=i.limit),i.offset!=null&&(a.skip=i.offset),i.aggregations&&(a.aggregations=i.aggregations),i.groupBy&&(a.groupBy=i.groupBy)):Object.assign(a,t),a.top&&r.set(`top`,a.top.toString()),a.skip&&r.set(`skip`,a.skip.toString()),a.sort)if(Array.isArray(a.sort)&&typeof a.sort[0]==`object`)r.set(`sort`,JSON.stringify(a.sort));else{let e=Array.isArray(a.sort)?a.sort.join(`,`):a.sort;r.set(`sort`,e)}a.select&&r.set(`select`,a.select.join(`,`));let o=a.filter??a.filters;o&&(this.isFilterAST(o)||Array.isArray(o)?r.set(`filter`,JSON.stringify(o)):typeof o==`object`&&o&&Object.entries(o).forEach(([e,t])=>{t!=null&&r.append(e,String(t))})),a.aggregations&&r.set(`aggregations`,JSON.stringify(a.aggregations)),a.groupBy&&r.set(`groupBy`,a.groupBy.join(`,`));let s=await this.fetch(`${this.baseUrl}${n}/${e}?${r.toString()}`);return this.unwrapResponse(s)},get:async(e,t)=>{let n=this.getRoute(`data`),r=await this.fetch(`${this.baseUrl}${n}/${e}/${t}`);return this.unwrapResponse(r)},create:async(e,t)=>{let n=this.getRoute(`data`),r=await this.fetch(`${this.baseUrl}${n}/${e}`,{method:`POST`,body:JSON.stringify(t)});return this.unwrapResponse(r)},createMany:async(e,t)=>{let n=this.getRoute(`data`),r=await this.fetch(`${this.baseUrl}${n}/${e}/createMany`,{method:`POST`,body:JSON.stringify(t)});return this.unwrapResponse(r)},update:async(e,t,n,r)=>{let i=this.getRoute(`data`),a={};r?.ifMatch&&(a[`If-Match`]=String(r.ifMatch));let o=await this.fetch(`${this.baseUrl}${i}/${e}/${t}`,{method:`PATCH`,body:JSON.stringify(n),...Object.keys(a).length?{headers:a}:{}});return this.unwrapResponse(o)},batch:async(e,t)=>{let n=this.getRoute(`data`),r=await this.fetch(`${this.baseUrl}${n}/${e}/batch`,{method:`POST`,body:JSON.stringify(t)});return this.unwrapResponse(r)},updateMany:async(e,t,n)=>{let r=this.getRoute(`data`),i={records:t,options:n},a=await this.fetch(`${this.baseUrl}${r}/${e}/updateMany`,{method:`POST`,body:JSON.stringify(i)});return this.unwrapResponse(a)},delete:async(e,t,n)=>{let r=this.getRoute(`data`),i={};n?.ifMatch&&(i[`If-Match`]=String(n.ifMatch));let a=await this.fetch(`${this.baseUrl}${r}/${e}/${t}`,{method:`DELETE`,...Object.keys(i).length?{headers:i}:{}});return this.unwrapResponse(a)},deleteMany:async(e,t,n)=>{let r=this.getRoute(`data`),i={ids:t,options:n},a=await this.fetch(`${this.baseUrl}${r}/${e}/deleteMany`,{method:`POST`,body:JSON.stringify(i)});return this.unwrapResponse(a)}},this.baseUrl=e.baseUrl.replace(/\/$/,``),this.token=e.token,this.projectId=e.projectId,this.fetchImpl=e.fetch||globalThis.fetch.bind(globalThis),this.logger=e.logger||Mg({level:e.debug?`debug`:`info`,format:`pretty`}),this.realtimeAPI=new Ng(this.baseUrl,this.token),this.logger.debug(`ObjectStack client created`,{baseUrl:this.baseUrl})}async connect(){this.logger.debug(`Connecting to ObjectStack server`,{baseUrl:this.baseUrl});try{let e;try{let t=`${this.baseUrl}/api/v1/discovery`;this.logger.debug(`Probing protocol-standard discovery endpoint`,{url:t});let n=await this.fetchImpl(t);if(n.ok){let t=await n.json();e=t.data||t,this.logger.debug(`Discovered via /api/v1/discovery`)}}catch(e){this.logger.debug(`Protocol-standard discovery probe failed`,{error:e.message})}if(!e){let t;try{t=`${new URL(this.baseUrl).origin}/.well-known/objectstack`}catch{t=`/.well-known/objectstack`}this.logger.debug(`Falling back to .well-known discovery`,{url:t});let n=await this.fetchImpl(t);if(!n.ok)throw Error(`Failed to connect to ${t}: ${n.statusText}`);let r=await n.json();e=r.data||r}if(!e)throw Error(`Connection failed: No discovery data returned`);return this.discoveryInfo=e,this.logger.info(`Connected to ObjectStack server`,{version:e.version,apiName:e.apiName,services:e.services}),e}catch(e){throw this.logger.error(`Failed to connect to ObjectStack server`,e,{baseUrl:this.baseUrl}),e}}get capabilities(){let e=this.discoveryInfo?.capabilities;if(!e)return;let t={};for(let[n,r]of Object.entries(e))t[n]=typeof r==`object`&&r?!!r.enabled:!!r;return t}project(e){if(!e)throw Error(`[ObjectStack] project(id): projectId is required`);return new Fg(this,e)}_baseUrl(){return this.baseUrl}_fetch(e,t){return this.fetch(e,t)}_unwrap(e){return this.unwrapResponse(e)}_isFilterAST(e){return this.isFilterAST(e)}setProjectId(e){this.projectId=e,this.logger.debug(`Active project changed`,{projectId:e})}getProjectId(){return this.projectId}get events(){return this.realtimeAPI}isFilterAST(e){return Qf(e)}async unwrapResponse(e){let t=await e.json();return t&&typeof t.success==`boolean`&&`data`in t?t.data:t}async fetch(e,t={}){this.logger.debug(`HTTP request`,{method:t.method||`GET`,url:e,hasBody:!!t.body});let n={"Content-Type":`application/json`,...t.headers||{}};this.token&&(n.Authorization=`Bearer ${this.token}`),this.projectId&&(n[`X-Project-Id`]=this.projectId);let r=await this.fetchImpl(e,{...t,headers:n});if(this.logger.debug(`HTTP response`,{method:t.method||`GET`,url:e,status:r.status,ok:r.ok}),!r.ok){let n;try{n=await r.json()}catch{n={message:r.statusText}}this.logger.error(`HTTP request failed`,void 0,{method:t.method||`GET`,url:e,status:r.status,error:n});let i=n?.message??n?.error?.message??(typeof n?.error==`string`?n.error:void 0)??r.statusText,a=n?.code||n?.error?.code,o=Error(`[ObjectStack] ${a?`${a}: `:``}${i}`);throw o.code=a,o.category=n?.category,o.httpStatus=r.status,o.retryable=n?.retryable,o.details=n?.details||n,o}return r}getRoute(e){let t=this.discoveryInfo?.routes;if(t){let n=t[e];if(n)return n}return{data:`/api/v1/data`,metadata:`/api/v1/meta`,discovery:`/api/v1/discovery`,ui:`/api/v1/ui`,auth:`/api/v1/auth`,analytics:`/api/v1/analytics`,storage:`/api/v1/storage`,automation:`/api/v1/automation`,packages:`/api/v1/packages`,permissions:`/api/v1/permissions`,realtime:`/api/v1/realtime`,workflow:`/api/v1/workflow`,views:`/api/v1/ui/views`,notifications:`/api/v1/notifications`,ai:`/api/v1/ai`,i18n:`/api/v1/i18n`,feed:`/api/v1/feed`,graphql:`/graphql`}[e]||`/api/v1/${e}`}},Fg=class{constructor(e,t){this.meta={getTypes:async()=>{let e=await this.parent._fetch(this.url(`/meta`));return this.parent._unwrap(e)},getItems:async(e,t)=>{let n=new URLSearchParams;t?.packageId&&n.set(`package`,t.packageId);let r=n.toString(),i=await this.parent._fetch(this.url(`/meta/${e}${r?`?${r}`:``}`));return this.parent._unwrap(i)},getItem:async(e,t,n)=>{let r=new URLSearchParams;n?.packageId&&r.set(`package`,n.packageId);let i=r.toString(),a=await this.parent._fetch(this.url(`/meta/${e}/${t}${i?`?${i}`:``}`));return this.parent._unwrap(a)},saveItem:async(e,t,n)=>{let r=await this.parent._fetch(this.url(`/meta/${e}/${t}`),{method:`PUT`,body:JSON.stringify(n)});return this.parent._unwrap(r)},deleteItem:async(e,t)=>{let n=await this.parent._fetch(this.url(`/meta/${encodeURIComponent(e)}/${encodeURIComponent(t)}`),{method:`DELETE`});return this.parent._unwrap(n)},getHistory:async(e,t,n)=>{let r=new URLSearchParams;n?.sinceSeq!==void 0&&r.set(`sinceSeq`,String(n.sinceSeq)),n?.limit!==void 0&&r.set(`limit`,String(n.limit));let i=r.toString(),a=await this.parent._fetch(this.url(`/meta/${encodeURIComponent(e)}/${encodeURIComponent(t)}/history${i?`?${i}`:``}`));return this.parent._unwrap(a)}},this.data={query:async(e,t)=>{let n=await this.parent._fetch(this.url(`/data/${e}/query`),{method:`POST`,body:JSON.stringify(t)});return this.parent._unwrap(n)},find:async(e,t={})=>{let n=new URLSearchParams,r=t,i={};if(`where`in t||`fields`in t||`orderBy`in t||`offset`in t?(r.where&&(i.filter=r.where),r.fields&&(i.select=r.fields),r.orderBy&&(i.sort=r.orderBy),r.limit!=null&&(i.top=r.limit),r.offset!=null&&(i.skip=r.offset),r.aggregations&&(i.aggregations=r.aggregations),r.groupBy&&(i.groupBy=r.groupBy)):Object.assign(i,t),i.top&&n.set(`top`,i.top.toString()),i.skip&&n.set(`skip`,i.skip.toString()),i.sort)if(Array.isArray(i.sort)&&typeof i.sort[0]==`object`)n.set(`sort`,JSON.stringify(i.sort));else{let e=Array.isArray(i.sort)?i.sort.join(`,`):i.sort;n.set(`sort`,e)}i.select&&n.set(`select`,i.select.join(`,`));let a=i.filter??i.filters;a&&(this.parent._isFilterAST(a)||Array.isArray(a)?n.set(`filter`,JSON.stringify(a)):typeof a==`object`&&a&&Object.entries(a).forEach(([e,t])=>{t!=null&&n.append(e,String(t))})),i.aggregations&&n.set(`aggregations`,JSON.stringify(i.aggregations)),i.groupBy&&n.set(`groupBy`,i.groupBy.join(`,`));let o=n.toString(),s=await this.parent._fetch(this.url(`/data/${e}${o?`?${o}`:``}`));return this.parent._unwrap(s)},get:async(e,t)=>{let n=await this.parent._fetch(this.url(`/data/${e}/${t}`));return this.parent._unwrap(n)},create:async(e,t)=>{let n=await this.parent._fetch(this.url(`/data/${e}`),{method:`POST`,body:JSON.stringify(t)});return this.parent._unwrap(n)},createMany:async(e,t)=>{let n=await this.parent._fetch(this.url(`/data/${e}/createMany`),{method:`POST`,body:JSON.stringify(t)});return this.parent._unwrap(n)},update:async(e,t,n)=>{let r=await this.parent._fetch(this.url(`/data/${e}/${t}`),{method:`PATCH`,body:JSON.stringify(n)});return this.parent._unwrap(r)},batch:async(e,t)=>{let n=await this.parent._fetch(this.url(`/data/${e}/batch`),{method:`POST`,body:JSON.stringify(t)});return this.parent._unwrap(n)},updateMany:async(e,t,n)=>{let r={records:t,options:n},i=await this.parent._fetch(this.url(`/data/${e}/updateMany`),{method:`POST`,body:JSON.stringify(r)});return this.parent._unwrap(i)},delete:async(e,t)=>{let n=await this.parent._fetch(this.url(`/data/${e}/${t}`),{method:`DELETE`});return this.parent._unwrap(n)},deleteMany:async(e,t,n)=>{let r={ids:t,options:n},i=await this.parent._fetch(this.url(`/data/${e}/deleteMany`),{method:`POST`,body:JSON.stringify(r)});return this.parent._unwrap(i)}},this.packages={list:async()=>{let e=await this.parent._fetch(this.url(`/packages`));return this.parent._unwrap(e)},get:async(e,t)=>{let n=t?`?version=${encodeURIComponent(t)}`:``,r=await this.parent._fetch(this.url(`/packages/${encodeURIComponent(e)}${n}`));return this.parent._unwrap(r)}},this.automation={getFlow:async e=>{let t=await this.parent._fetch(this.url(`/automation/${encodeURIComponent(e)}`));return this.parent._unwrap(t)},execute:async(e,t)=>{let n=await this.parent._fetch(this.url(`/automation/${encodeURIComponent(e)}/trigger`),{method:`POST`,body:JSON.stringify(t??{})});return this.parent._unwrap(n)},listRuns:async(e,t)=>{let n=new URLSearchParams;t?.limit!=null&&n.set(`limit`,String(t.limit)),t?.cursor&&n.set(`cursor`,t.cursor);let r=n.toString(),i=await this.parent._fetch(this.url(`/automation/${encodeURIComponent(e)}/runs${r?`?${r}`:``}`));return this.parent._unwrap(i)},getRun:async(e,t)=>{let n=await this.parent._fetch(this.url(`/automation/${encodeURIComponent(e)}/runs/${encodeURIComponent(t)}`));return this.parent._unwrap(n)}},this.parent=e,this.projectId=t}getProjectId(){return this.projectId}scope(){return`/api/v1/projects/${encodeURIComponent(this.projectId)}`}url(e){return`${this.parent._baseUrl()}${this.scope()}${e}`}},Ig=(0,j.createContext)(null);function Lg({client:e,children:t}){return j.createElement(Ig.Provider,{value:e},t)}function Rg(){let e=(0,j.useContext)(Ig);if(!e)throw Error(`useClient must be used within an ObjectStackProvider. Make sure your component is wrapped with <ObjectStackProvider client={...}>.`);return e}var zg=1,Bg=1e6,Vg=0;function Hg(){return Vg=(Vg+1)%(2**53-1),Vg.toString()}var Ug=new Map,Wg=e=>{if(Ug.has(e))return;let t=setTimeout(()=>{Ug.delete(e),Jg({type:`REMOVE_TOAST`,toastId:e})},Bg);Ug.set(e,t)},Gg=(e,t)=>{switch(t.type){case`ADD_TOAST`:return{...e,toasts:[t.toast,...e.toasts].slice(0,zg)};case`UPDATE_TOAST`:return{...e,toasts:e.toasts.map(e=>e.id===t.toast.id?{...e,...t.toast}:e)};case`DISMISS_TOAST`:{let{toastId:n}=t;return n?Wg(n):e.toasts.forEach(e=>{Wg(e.id)}),{...e,toasts:e.toasts.map(e=>e.id===n||n===void 0?{...e,open:!1}:e)}}case`REMOVE_TOAST`:return t.toastId===void 0?{...e,toasts:[]}:{...e,toasts:e.toasts.filter(e=>e.id!==t.toastId)}}},Kg=[],qg={toasts:[]};function Jg(e){qg=Gg(qg,e),Kg.forEach(e=>{e(qg)})}function q({...e}){let t=Hg(),n=e=>Jg({type:`UPDATE_TOAST`,toast:{...e,id:t}}),r=()=>Jg({type:`DISMISS_TOAST`,toastId:t});return Jg({type:`ADD_TOAST`,toast:{...e,id:t,open:!0,onOpenChange:e=>{e||r()}}}),{id:t,dismiss:r,update:n}}function Yg(){let[e,t]=j.useState(qg);return j.useEffect(()=>(Kg.push(t),()=>{let e=Kg.indexOf(t);e>-1&&Kg.splice(e,1)}),[e]),{...e,toast:q,dismiss:e=>Jg({type:`DISMISS_TOAST`,toastId:e})}}typeof window<`u`&&window.document&&window.document.createElement;function J(e,t,{checkForDefaultPrevented:n=!0}={}){return function(r){if(e?.(r),n===!1||!r.defaultPrevented)return t?.(r)}}function Xg(e,t){if(typeof e==`function`)return e(t);e!=null&&(e.current=t)}function Zg(...e){return t=>{let n=!1,r=e.map(e=>{let r=Xg(e,t);return!n&&typeof r==`function`&&(n=!0),r});if(n)return()=>{for(let t=0;t<r.length;t++){let n=r[t];typeof n==`function`?n():Xg(e[t],null)}}}}function Qg(...e){return j.useCallback(Zg(...e),e)}function $g(e,t){let n=j.createContext(t),r=e=>{let{children:t,...r}=e,i=j.useMemo(()=>r,Object.values(r));return(0,M.jsx)(n.Provider,{value:i,children:t})};r.displayName=e+`Provider`;function i(r){let i=j.useContext(n);if(i)return i;if(t!==void 0)return t;throw Error(`\`${r}\` must be used within \`${e}\``)}return[r,i]}function e_(e,t=[]){let n=[];function r(t,r){let i=j.createContext(r),a=n.length;n=[...n,r];let o=t=>{let{scope:n,children:r,...o}=t,s=n?.[e]?.[a]||i,c=j.useMemo(()=>o,Object.values(o));return(0,M.jsx)(s.Provider,{value:c,children:r})};o.displayName=t+`Provider`;function s(n,o){let s=o?.[e]?.[a]||i,c=j.useContext(s);if(c)return c;if(r!==void 0)return r;throw Error(`\`${n}\` must be used within \`${t}\``)}return[o,s]}let i=()=>{let t=n.map(e=>j.createContext(e));return function(n){let r=n?.[e]||t;return j.useMemo(()=>({[`__scope${e}`]:{...n,[e]:r}}),[n,r])}};return i.scopeName=e,[r,t_(i,...t)]}function t_(...e){let t=e[0];if(e.length===1)return t;let n=()=>{let n=e.map(e=>({useScope:e(),scopeName:e.scopeName}));return function(e){let r=n.reduce((t,{useScope:n,scopeName:r})=>{let i=n(e)[`__scope${r}`];return{...t,...i}},{});return j.useMemo(()=>({[`__scope${t.scopeName}`]:r}),[r])}};return n.scopeName=t.scopeName,n}function n_(e){let t=r_(e),n=j.forwardRef((e,n)=>{let{children:r,...i}=e,a=j.Children.toArray(r),o=a.find(o_);if(o){let e=o.props.children,r=a.map(t=>t===o?j.Children.count(e)>1?j.Children.only(null):j.isValidElement(e)?e.props.children:null:t);return(0,M.jsx)(t,{...i,ref:n,children:j.isValidElement(e)?j.cloneElement(e,void 0,r):null})}return(0,M.jsx)(t,{...i,ref:n,children:r})});return n.displayName=`${e}.Slot`,n}function r_(e){let t=j.forwardRef((e,t)=>{let{children:n,...r}=e;if(j.isValidElement(n)){let e=c_(n),i=s_(r,n.props);return n.type!==j.Fragment&&(i.ref=t?Zg(t,e):e),j.cloneElement(n,i)}return j.Children.count(n)>1?j.Children.only(null):null});return t.displayName=`${e}.SlotClone`,t}var i_=Symbol(`radix.slottable`);function a_(e){let t=({children:e})=>(0,M.jsx)(M.Fragment,{children:e});return t.displayName=`${e}.Slottable`,t.__radixId=i_,t}function o_(e){return j.isValidElement(e)&&typeof e.type==`function`&&`__radixId`in e.type&&e.type.__radixId===i_}function s_(e,t){let n={...t};for(let r in t){let i=e[r],a=t[r];/^on[A-Z]/.test(r)?i&&a?n[r]=(...e)=>{let t=a(...e);return i(...e),t}:i&&(n[r]=i):r===`style`?n[r]={...i,...a}:r===`className`&&(n[r]=[i,a].filter(Boolean).join(` `))}return{...e,...n}}function c_(e){let t=Object.getOwnPropertyDescriptor(e.props,`ref`)?.get,n=t&&`isReactWarning`in t&&t.isReactWarning;return n?e.ref:(t=Object.getOwnPropertyDescriptor(e,`ref`)?.get,n=t&&`isReactWarning`in t&&t.isReactWarning,n?e.props.ref:e.props.ref||e.ref)}function l_(e){let t=e+`CollectionProvider`,[n,r]=e_(t),[i,a]=n(t,{collectionRef:{current:null},itemMap:new Map}),o=e=>{let{scope:t,children:n}=e,r=j.useRef(null),a=j.useRef(new Map).current;return(0,M.jsx)(i,{scope:t,itemMap:a,collectionRef:r,children:n})};o.displayName=t;let s=e+`CollectionSlot`,c=n_(s),l=j.forwardRef((e,t)=>{let{scope:n,children:r}=e;return(0,M.jsx)(c,{ref:Qg(t,a(s,n).collectionRef),children:r})});l.displayName=s;let u=e+`CollectionItemSlot`,d=`data-radix-collection-item`,f=n_(u),p=j.forwardRef((e,t)=>{let{scope:n,children:r,...i}=e,o=j.useRef(null),s=Qg(t,o),c=a(u,n);return j.useEffect(()=>(c.itemMap.set(o,{ref:o,...i}),()=>void c.itemMap.delete(o))),(0,M.jsx)(f,{[d]:``,ref:s,children:r})});p.displayName=u;function m(t){let n=a(e+`CollectionConsumer`,t);return j.useCallback(()=>{let e=n.collectionRef.current;if(!e)return[];let t=Array.from(e.querySelectorAll(`[${d}]`));return Array.from(n.itemMap.values()).sort((e,n)=>t.indexOf(e.ref.current)-t.indexOf(n.ref.current))},[n.collectionRef,n.itemMap])}return[{Provider:o,Slot:l,ItemSlot:p},m,r]}var u_=[`a`,`button`,`div`,`form`,`h2`,`h3`,`img`,`input`,`label`,`li`,`nav`,`ol`,`p`,`select`,`span`,`svg`,`ul`].reduce((e,t)=>{let n=n_(`Primitive.${t}`),r=j.forwardRef((e,r)=>{let{asChild:i,...a}=e,o=i?n:t;return typeof window<`u`&&(window[Symbol.for(`radix-ui`)]=!0),(0,M.jsx)(o,{...a,ref:r})});return r.displayName=`Primitive.${t}`,{...e,[t]:r}},{});function d_(e,t){e&&Ui.flushSync(()=>e.dispatchEvent(t))}function f_(e){let t=j.useRef(e);return j.useEffect(()=>{t.current=e}),j.useMemo(()=>(...e)=>t.current?.(...e),[])}function p_(e,t=globalThis?.document){let n=f_(e);j.useEffect(()=>{let e=e=>{e.key===`Escape`&&n(e)};return t.addEventListener(`keydown`,e,{capture:!0}),()=>t.removeEventListener(`keydown`,e,{capture:!0})},[n,t])}var m_=`DismissableLayer`,h_=`dismissableLayer.update`,g_=`dismissableLayer.pointerDownOutside`,__=`dismissableLayer.focusOutside`,v_,y_=j.createContext({layers:new Set,layersWithOutsidePointerEventsDisabled:new Set,branches:new Set}),b_=j.forwardRef((e,t)=>{let{disableOutsidePointerEvents:n=!1,onEscapeKeyDown:r,onPointerDownOutside:i,onFocusOutside:a,onInteractOutside:o,onDismiss:s,...c}=e,l=j.useContext(y_),[u,d]=j.useState(null),f=u?.ownerDocument??globalThis?.document,[,p]=j.useState({}),m=Qg(t,e=>d(e)),h=Array.from(l.layers),[g]=[...l.layersWithOutsidePointerEventsDisabled].slice(-1),_=h.indexOf(g),v=u?h.indexOf(u):-1,y=l.layersWithOutsidePointerEventsDisabled.size>0,b=v>=_,x=C_(e=>{let t=e.target,n=[...l.branches].some(e=>e.contains(t));!b||n||(i?.(e),o?.(e),e.defaultPrevented||s?.())},f),S=w_(e=>{let t=e.target;[...l.branches].some(e=>e.contains(t))||(a?.(e),o?.(e),e.defaultPrevented||s?.())},f);return p_(e=>{v===l.layers.size-1&&(r?.(e),!e.defaultPrevented&&s&&(e.preventDefault(),s()))},f),j.useEffect(()=>{if(u)return n&&(l.layersWithOutsidePointerEventsDisabled.size===0&&(v_=f.body.style.pointerEvents,f.body.style.pointerEvents=`none`),l.layersWithOutsidePointerEventsDisabled.add(u)),l.layers.add(u),T_(),()=>{n&&l.layersWithOutsidePointerEventsDisabled.size===1&&(f.body.style.pointerEvents=v_)}},[u,f,n,l]),j.useEffect(()=>()=>{u&&(l.layers.delete(u),l.layersWithOutsidePointerEventsDisabled.delete(u),T_())},[u,l]),j.useEffect(()=>{let e=()=>p({});return document.addEventListener(h_,e),()=>document.removeEventListener(h_,e)},[]),(0,M.jsx)(u_.div,{...c,ref:m,style:{pointerEvents:y?b?`auto`:`none`:void 0,...e.style},onFocusCapture:J(e.onFocusCapture,S.onFocusCapture),onBlurCapture:J(e.onBlurCapture,S.onBlurCapture),onPointerDownCapture:J(e.onPointerDownCapture,x.onPointerDownCapture)})});b_.displayName=m_;var x_=`DismissableLayerBranch`,S_=j.forwardRef((e,t)=>{let n=j.useContext(y_),r=j.useRef(null),i=Qg(t,r);return j.useEffect(()=>{let e=r.current;if(e)return n.branches.add(e),()=>{n.branches.delete(e)}},[n.branches]),(0,M.jsx)(u_.div,{...e,ref:i})});S_.displayName=x_;function C_(e,t=globalThis?.document){let n=f_(e),r=j.useRef(!1),i=j.useRef(()=>{});return j.useEffect(()=>{let e=e=>{if(e.target&&!r.current){let r=function(){E_(g_,n,a,{discrete:!0})},a={originalEvent:e};e.pointerType===`touch`?(t.removeEventListener(`click`,i.current),i.current=r,t.addEventListener(`click`,i.current,{once:!0})):r()}else t.removeEventListener(`click`,i.current);r.current=!1},a=window.setTimeout(()=>{t.addEventListener(`pointerdown`,e)},0);return()=>{window.clearTimeout(a),t.removeEventListener(`pointerdown`,e),t.removeEventListener(`click`,i.current)}},[t,n]),{onPointerDownCapture:()=>r.current=!0}}function w_(e,t=globalThis?.document){let n=f_(e),r=j.useRef(!1);return j.useEffect(()=>{let e=e=>{e.target&&!r.current&&E_(__,n,{originalEvent:e},{discrete:!1})};return t.addEventListener(`focusin`,e),()=>t.removeEventListener(`focusin`,e)},[t,n]),{onFocusCapture:()=>r.current=!0,onBlurCapture:()=>r.current=!1}}function T_(){let e=new CustomEvent(h_);document.dispatchEvent(e)}function E_(e,t,n,{discrete:r}){let i=n.originalEvent.target,a=new CustomEvent(e,{bubbles:!1,cancelable:!0,detail:n});t&&i.addEventListener(e,t,{once:!0}),r?d_(i,a):i.dispatchEvent(a)}var D_=b_,O_=S_,k_=globalThis?.document?j.useLayoutEffect:()=>{},A_=`Portal`,j_=j.forwardRef((e,t)=>{let{container:n,...r}=e,[i,a]=j.useState(!1);k_(()=>a(!0),[]);let o=n||i&&globalThis?.document?.body;return o?Ui.createPortal((0,M.jsx)(u_.div,{...r,ref:t}),o):null});j_.displayName=A_;function M_(e,t){return j.useReducer((e,n)=>t[e][n]??e,e)}var N_=e=>{let{present:t,children:n}=e,r=P_(t),i=typeof n==`function`?n({present:r.isPresent}):j.Children.only(n),a=Qg(r.ref,I_(i));return typeof n==`function`||r.isPresent?j.cloneElement(i,{ref:a}):null};N_.displayName=`Presence`;function P_(e){let[t,n]=j.useState(),r=j.useRef(null),i=j.useRef(e),a=j.useRef(`none`),[o,s]=M_(e?`mounted`:`unmounted`,{mounted:{UNMOUNT:`unmounted`,ANIMATION_OUT:`unmountSuspended`},unmountSuspended:{MOUNT:`mounted`,ANIMATION_END:`unmounted`},unmounted:{MOUNT:`mounted`}});return j.useEffect(()=>{let e=F_(r.current);a.current=o===`mounted`?e:`none`},[o]),k_(()=>{let t=r.current,n=i.current;if(n!==e){let r=a.current,o=F_(t);e?s(`MOUNT`):o===`none`||t?.display===`none`?s(`UNMOUNT`):s(n&&r!==o?`ANIMATION_OUT`:`UNMOUNT`),i.current=e}},[e,s]),k_(()=>{if(t){let e,n=t.ownerDocument.defaultView??window,o=a=>{let o=F_(r.current).includes(CSS.escape(a.animationName));if(a.target===t&&o&&(s(`ANIMATION_END`),!i.current)){let r=t.style.animationFillMode;t.style.animationFillMode=`forwards`,e=n.setTimeout(()=>{t.style.animationFillMode===`forwards`&&(t.style.animationFillMode=r)})}},c=e=>{e.target===t&&(a.current=F_(r.current))};return t.addEventListener(`animationstart`,c),t.addEventListener(`animationcancel`,o),t.addEventListener(`animationend`,o),()=>{n.clearTimeout(e),t.removeEventListener(`animationstart`,c),t.removeEventListener(`animationcancel`,o),t.removeEventListener(`animationend`,o)}}else s(`ANIMATION_END`)},[t,s]),{isPresent:[`mounted`,`unmountSuspended`].includes(o),ref:j.useCallback(e=>{r.current=e?getComputedStyle(e):null,n(e)},[])}}function F_(e){return e?.animationName||`none`}function I_(e){let t=Object.getOwnPropertyDescriptor(e.props,`ref`)?.get,n=t&&`isReactWarning`in t&&t.isReactWarning;return n?e.ref:(t=Object.getOwnPropertyDescriptor(e,`ref`)?.get,n=t&&`isReactWarning`in t&&t.isReactWarning,n?e.props.ref:e.props.ref||e.ref)}var L_=j.useInsertionEffect||k_;function R_({prop:e,defaultProp:t,onChange:n=()=>{},caller:r}){let[i,a,o]=z_({defaultProp:t,onChange:n}),s=e!==void 0,c=s?e:i;{let t=j.useRef(e!==void 0);j.useEffect(()=>{let e=t.current;e!==s&&console.warn(`${r} is changing from ${e?`controlled`:`uncontrolled`} to ${s?`controlled`:`uncontrolled`}. Components should not switch from controlled to uncontrolled (or vice versa). Decide between using a controlled or uncontrolled value for the lifetime of the component.`),t.current=s},[s,r])}return[c,j.useCallback(t=>{if(s){let n=B_(t)?t(e):t;n!==e&&o.current?.(n)}else a(t)},[s,e,a,o])]}function z_({defaultProp:e,onChange:t}){let[n,r]=j.useState(e),i=j.useRef(n),a=j.useRef(t);return L_(()=>{a.current=t},[t]),j.useEffect(()=>{i.current!==n&&(a.current?.(n),i.current=n)},[n,i]),[n,r,a]}function B_(e){return typeof e==`function`}var V_=Object.freeze({position:`absolute`,border:0,width:1,height:1,padding:0,margin:-1,overflow:`hidden`,clip:`rect(0, 0, 0, 0)`,whiteSpace:`nowrap`,wordWrap:`normal`}),H_=`VisuallyHidden`,U_=j.forwardRef((e,t)=>(0,M.jsx)(u_.span,{...e,ref:t,style:{...V_,...e.style}}));U_.displayName=H_;var W_=U_,G_=`ToastProvider`,[K_,q_,J_]=l_(`Toast`),[Y_,X_]=e_(`Toast`,[J_]),[Z_,Q_]=Y_(G_),$_=e=>{let{__scopeToast:t,label:n=`Notification`,duration:r=5e3,swipeDirection:i=`right`,swipeThreshold:a=50,children:o}=e,[s,c]=j.useState(null),[l,u]=j.useState(0),d=j.useRef(!1),f=j.useRef(!1);return n.trim()||console.error(`Invalid prop \`label\` supplied to \`${G_}\`. Expected non-empty \`string\`.`),(0,M.jsx)(K_.Provider,{scope:t,children:(0,M.jsx)(Z_,{scope:t,label:n,duration:r,swipeDirection:i,swipeThreshold:a,toastCount:l,viewport:s,onViewportChange:c,onToastAdd:j.useCallback(()=>u(e=>e+1),[]),onToastRemove:j.useCallback(()=>u(e=>e-1),[]),isFocusedToastEscapeKeyDownRef:d,isClosePausedRef:f,children:o})})};$_.displayName=G_;var ev=`ToastViewport`,tv=[`F8`],nv=`toast.viewportPause`,rv=`toast.viewportResume`,iv=j.forwardRef((e,t)=>{let{__scopeToast:n,hotkey:r=tv,label:i=`Notifications ({hotkey})`,...a}=e,o=Q_(ev,n),s=q_(n),c=j.useRef(null),l=j.useRef(null),u=j.useRef(null),d=j.useRef(null),f=Qg(t,d,o.onViewportChange),p=r.join(`+`).replace(/Key/g,``).replace(/Digit/g,``),m=o.toastCount>0;j.useEffect(()=>{let e=e=>{r.length!==0&&r.every(t=>e[t]||e.code===t)&&d.current?.focus()};return document.addEventListener(`keydown`,e),()=>document.removeEventListener(`keydown`,e)},[r]),j.useEffect(()=>{let e=c.current,t=d.current;if(m&&e&&t){let n=()=>{if(!o.isClosePausedRef.current){let e=new CustomEvent(nv);t.dispatchEvent(e),o.isClosePausedRef.current=!0}},r=()=>{if(o.isClosePausedRef.current){let e=new CustomEvent(rv);t.dispatchEvent(e),o.isClosePausedRef.current=!1}},i=t=>{e.contains(t.relatedTarget)||r()},a=()=>{e.contains(document.activeElement)||r()};return e.addEventListener(`focusin`,n),e.addEventListener(`focusout`,i),e.addEventListener(`pointermove`,n),e.addEventListener(`pointerleave`,a),window.addEventListener(`blur`,n),window.addEventListener(`focus`,r),()=>{e.removeEventListener(`focusin`,n),e.removeEventListener(`focusout`,i),e.removeEventListener(`pointermove`,n),e.removeEventListener(`pointerleave`,a),window.removeEventListener(`blur`,n),window.removeEventListener(`focus`,r)}}},[m,o.isClosePausedRef]);let h=j.useCallback(({tabbingDirection:e})=>{let t=s().map(t=>{let n=t.ref.current,r=[n,...jv(n)];return e===`forwards`?r:r.reverse()});return(e===`forwards`?t.reverse():t).flat()},[s]);return j.useEffect(()=>{let e=d.current;if(e){let t=t=>{let n=t.altKey||t.ctrlKey||t.metaKey;if(t.key===`Tab`&&!n){let n=document.activeElement,r=t.shiftKey;if(t.target===e&&r){l.current?.focus();return}let i=h({tabbingDirection:r?`backwards`:`forwards`}),a=i.findIndex(e=>e===n);Mv(i.slice(a+1))?t.preventDefault():r?l.current?.focus():u.current?.focus()}};return e.addEventListener(`keydown`,t),()=>e.removeEventListener(`keydown`,t)}},[s,h]),(0,M.jsxs)(O_,{ref:c,role:`region`,"aria-label":i.replace(`{hotkey}`,p),tabIndex:-1,style:{pointerEvents:m?void 0:`none`},children:[m&&(0,M.jsx)(ov,{ref:l,onFocusFromOutsideViewport:()=>{Mv(h({tabbingDirection:`forwards`}))}}),(0,M.jsx)(K_.Slot,{scope:n,children:(0,M.jsx)(u_.ol,{tabIndex:-1,...a,ref:f})}),m&&(0,M.jsx)(ov,{ref:u,onFocusFromOutsideViewport:()=>{Mv(h({tabbingDirection:`backwards`}))}})]})});iv.displayName=ev;var av=`ToastFocusProxy`,ov=j.forwardRef((e,t)=>{let{__scopeToast:n,onFocusFromOutsideViewport:r,...i}=e,a=Q_(av,n);return(0,M.jsx)(U_,{tabIndex:0,...i,ref:t,style:{position:`fixed`},onFocus:e=>{let t=e.relatedTarget;a.viewport?.contains(t)||r()}})});ov.displayName=av;var sv=`Toast`,cv=`toast.swipeStart`,lv=`toast.swipeMove`,uv=`toast.swipeCancel`,dv=`toast.swipeEnd`,fv=j.forwardRef((e,t)=>{let{forceMount:n,open:r,defaultOpen:i,onOpenChange:a,...o}=e,[s,c]=R_({prop:r,defaultProp:i??!0,onChange:a,caller:sv});return(0,M.jsx)(N_,{present:n||s,children:(0,M.jsx)(hv,{open:s,...o,ref:t,onClose:()=>c(!1),onPause:f_(e.onPause),onResume:f_(e.onResume),onSwipeStart:J(e.onSwipeStart,e=>{e.currentTarget.setAttribute(`data-swipe`,`start`)}),onSwipeMove:J(e.onSwipeMove,e=>{let{x:t,y:n}=e.detail.delta;e.currentTarget.setAttribute(`data-swipe`,`move`),e.currentTarget.style.setProperty(`--radix-toast-swipe-move-x`,`${t}px`),e.currentTarget.style.setProperty(`--radix-toast-swipe-move-y`,`${n}px`)}),onSwipeCancel:J(e.onSwipeCancel,e=>{e.currentTarget.setAttribute(`data-swipe`,`cancel`),e.currentTarget.style.removeProperty(`--radix-toast-swipe-move-x`),e.currentTarget.style.removeProperty(`--radix-toast-swipe-move-y`),e.currentTarget.style.removeProperty(`--radix-toast-swipe-end-x`),e.currentTarget.style.removeProperty(`--radix-toast-swipe-end-y`)}),onSwipeEnd:J(e.onSwipeEnd,e=>{let{x:t,y:n}=e.detail.delta;e.currentTarget.setAttribute(`data-swipe`,`end`),e.currentTarget.style.removeProperty(`--radix-toast-swipe-move-x`),e.currentTarget.style.removeProperty(`--radix-toast-swipe-move-y`),e.currentTarget.style.setProperty(`--radix-toast-swipe-end-x`,`${t}px`),e.currentTarget.style.setProperty(`--radix-toast-swipe-end-y`,`${n}px`),c(!1)})})})});fv.displayName=sv;var[pv,mv]=Y_(sv,{onClose(){}}),hv=j.forwardRef((e,t)=>{let{__scopeToast:n,type:r=`foreground`,duration:i,open:a,onClose:o,onEscapeKeyDown:s,onPause:c,onResume:l,onSwipeStart:u,onSwipeMove:d,onSwipeCancel:f,onSwipeEnd:p,...m}=e,h=Q_(sv,n),[g,_]=j.useState(null),v=Qg(t,e=>_(e)),y=j.useRef(null),b=j.useRef(null),x=i||h.duration,S=j.useRef(0),C=j.useRef(x),w=j.useRef(0),{onToastAdd:T,onToastRemove:E}=h,D=f_(()=>{g?.contains(document.activeElement)&&h.viewport?.focus(),o()}),O=j.useCallback(e=>{!e||e===1/0||(window.clearTimeout(w.current),S.current=new Date().getTime(),w.current=window.setTimeout(D,e))},[D]);j.useEffect(()=>{let e=h.viewport;if(e){let t=()=>{O(C.current),l?.()},n=()=>{let e=new Date().getTime()-S.current;C.current-=e,window.clearTimeout(w.current),c?.()};return e.addEventListener(nv,n),e.addEventListener(rv,t),()=>{e.removeEventListener(nv,n),e.removeEventListener(rv,t)}}},[h.viewport,x,c,l,O]),j.useEffect(()=>{a&&!h.isClosePausedRef.current&&O(x)},[a,x,h.isClosePausedRef,O]),j.useEffect(()=>(T(),()=>E()),[T,E]);let ee=j.useMemo(()=>g?Ev(g):null,[g]);return h.viewport?(0,M.jsxs)(M.Fragment,{children:[ee&&(0,M.jsx)(gv,{__scopeToast:n,role:`status`,"aria-live":r===`foreground`?`assertive`:`polite`,children:ee}),(0,M.jsx)(pv,{scope:n,onClose:D,children:Ui.createPortal((0,M.jsx)(K_.ItemSlot,{scope:n,children:(0,M.jsx)(D_,{asChild:!0,onEscapeKeyDown:J(s,()=>{h.isFocusedToastEscapeKeyDownRef.current||D(),h.isFocusedToastEscapeKeyDownRef.current=!1}),children:(0,M.jsx)(u_.li,{tabIndex:0,"data-state":a?`open`:`closed`,"data-swipe-direction":h.swipeDirection,...m,ref:v,style:{userSelect:`none`,touchAction:`none`,...e.style},onKeyDown:J(e.onKeyDown,e=>{e.key===`Escape`&&(s?.(e.nativeEvent),e.nativeEvent.defaultPrevented||(h.isFocusedToastEscapeKeyDownRef.current=!0,D()))}),onPointerDown:J(e.onPointerDown,e=>{e.button===0&&(y.current={x:e.clientX,y:e.clientY})}),onPointerMove:J(e.onPointerMove,e=>{if(!y.current)return;let t=e.clientX-y.current.x,n=e.clientY-y.current.y,r=!!b.current,i=[`left`,`right`].includes(h.swipeDirection),a=[`left`,`up`].includes(h.swipeDirection)?Math.min:Math.max,o=i?a(0,t):0,s=i?0:a(0,n),c=e.pointerType===`touch`?10:2,l={x:o,y:s},f={originalEvent:e,delta:l};r?(b.current=l,Dv(lv,d,f,{discrete:!1})):Ov(l,h.swipeDirection,c)?(b.current=l,Dv(cv,u,f,{discrete:!1}),e.target.setPointerCapture(e.pointerId)):(Math.abs(t)>c||Math.abs(n)>c)&&(y.current=null)}),onPointerUp:J(e.onPointerUp,e=>{let t=b.current,n=e.target;if(n.hasPointerCapture(e.pointerId)&&n.releasePointerCapture(e.pointerId),b.current=null,y.current=null,t){let n=e.currentTarget,r={originalEvent:e,delta:t};Ov(t,h.swipeDirection,h.swipeThreshold)?Dv(dv,p,r,{discrete:!0}):Dv(uv,f,r,{discrete:!0}),n.addEventListener(`click`,e=>e.preventDefault(),{once:!0})}})})})}),h.viewport)})]}):null}),gv=e=>{let{__scopeToast:t,children:n,...r}=e,i=Q_(sv,t),[a,o]=j.useState(!1),[s,c]=j.useState(!1);return kv(()=>o(!0)),j.useEffect(()=>{let e=window.setTimeout(()=>c(!0),1e3);return()=>window.clearTimeout(e)},[]),s?null:(0,M.jsx)(j_,{asChild:!0,children:(0,M.jsx)(U_,{...r,children:a&&(0,M.jsxs)(M.Fragment,{children:[i.label,` `,n]})})})},_v=`ToastTitle`,vv=j.forwardRef((e,t)=>{let{__scopeToast:n,...r}=e;return(0,M.jsx)(u_.div,{...r,ref:t})});vv.displayName=_v;var yv=`ToastDescription`,bv=j.forwardRef((e,t)=>{let{__scopeToast:n,...r}=e;return(0,M.jsx)(u_.div,{...r,ref:t})});bv.displayName=yv;var xv=`ToastAction`,Sv=j.forwardRef((e,t)=>{let{altText:n,...r}=e;return n.trim()?(0,M.jsx)(Tv,{altText:n,asChild:!0,children:(0,M.jsx)(wv,{...r,ref:t})}):(console.error(`Invalid prop \`altText\` supplied to \`${xv}\`. Expected non-empty \`string\`.`),null)});Sv.displayName=xv;var Cv=`ToastClose`,wv=j.forwardRef((e,t)=>{let{__scopeToast:n,...r}=e,i=mv(Cv,n);return(0,M.jsx)(Tv,{asChild:!0,children:(0,M.jsx)(u_.button,{type:`button`,...r,ref:t,onClick:J(e.onClick,i.onClose)})})});wv.displayName=Cv;var Tv=j.forwardRef((e,t)=>{let{__scopeToast:n,altText:r,...i}=e;return(0,M.jsx)(u_.div,{"data-radix-toast-announce-exclude":``,"data-radix-toast-announce-alt":r||void 0,...i,ref:t})});function Ev(e){let t=[];return Array.from(e.childNodes).forEach(e=>{if(e.nodeType===e.TEXT_NODE&&e.textContent&&t.push(e.textContent),Av(e)){let n=e.ariaHidden||e.hidden||e.style.display===`none`,r=e.dataset.radixToastAnnounceExclude===``;if(!n)if(r){let n=e.dataset.radixToastAnnounceAlt;n&&t.push(n)}else t.push(...Ev(e))}}),t}function Dv(e,t,n,{discrete:r}){let i=n.originalEvent.currentTarget,a=new CustomEvent(e,{bubbles:!0,cancelable:!0,detail:n});t&&i.addEventListener(e,t,{once:!0}),r?d_(i,a):i.dispatchEvent(a)}var Ov=(e,t,n=0)=>{let r=Math.abs(e.x),i=Math.abs(e.y),a=r>i;return t===`left`||t===`right`?a&&r>n:!a&&i>n};function kv(e=()=>{}){let t=f_(e);k_(()=>{let e=0,n=0;return e=window.requestAnimationFrame(()=>n=window.requestAnimationFrame(t)),()=>{window.cancelAnimationFrame(e),window.cancelAnimationFrame(n)}},[t])}function Av(e){return e.nodeType===e.ELEMENT_NODE}function jv(e){let t=[],n=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,{acceptNode:e=>{let t=e.tagName===`INPUT`&&e.type===`hidden`;return e.disabled||e.hidden||t?NodeFilter.FILTER_SKIP:e.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});for(;n.nextNode();)t.push(n.currentNode);return t}function Mv(e){let t=document.activeElement;return e.some(e=>e===t?!0:(e.focus(),document.activeElement!==t))}var Nv=$_,Pv=iv,Fv=fv,Iv=vv,Lv=bv,Rv=Sv,zv=wv;function Bv(e){var t,n,r=``;if(typeof e==`string`||typeof e==`number`)r+=e;else if(typeof e==`object`)if(Array.isArray(e)){var i=e.length;for(t=0;t<i;t++)e[t]&&(n=Bv(e[t]))&&(r&&(r+=` `),r+=n)}else for(n in e)e[n]&&(r&&(r+=` `),r+=n);return r}function Vv(){for(var e,t,n=0,r=``,i=arguments.length;n<i;n++)(e=arguments[n])&&(t=Bv(e))&&(r&&(r+=` `),r+=t);return r}var Hv=e=>typeof e==`boolean`?`${e}`:e===0?`0`:e,Uv=Vv,Wv=(e,t)=>n=>{if(t?.variants==null)return Uv(e,n?.class,n?.className);let{variants:r,defaultVariants:i}=t,a=Object.keys(r).map(e=>{let t=n?.[e],a=i?.[e];if(t===null)return null;let o=Hv(t)||Hv(a);return r[e][o]}),o=n&&Object.entries(n).reduce((e,t)=>{let[n,r]=t;return r===void 0||(e[n]=r),e},{});return Uv(e,a,t?.compoundVariants?.reduce((e,t)=>{let{class:n,className:r,...a}=t;return Object.entries(a).every(e=>{let[t,n]=e;return Array.isArray(n)?n.includes({...i,...o}[t]):{...i,...o}[t]===n})?[...e,n,r]:e},[]),n?.class,n?.className)},Gv=(...e)=>e.filter((e,t,n)=>!!e&&e.trim()!==``&&n.indexOf(e)===t).join(` `).trim(),Kv=e=>e.replace(/([a-z0-9])([A-Z])/g,`$1-$2`).toLowerCase(),qv=e=>e.replace(/^([A-Z])|[\s-_]+(\w)/g,(e,t,n)=>n?n.toUpperCase():t.toLowerCase()),Jv=e=>{let t=qv(e);return t.charAt(0).toUpperCase()+t.slice(1)},Yv={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`},Xv=e=>{for(let t in e)if(t.startsWith(`aria-`)||t===`role`||t===`title`)return!0;return!1},Zv=(0,j.createContext)({}),Qv=()=>(0,j.useContext)(Zv),$v=(0,j.forwardRef)(({color:e,size:t,strokeWidth:n,absoluteStrokeWidth:r,className:i=``,children:a,iconNode:o,...s},c)=>{let{size:l=24,strokeWidth:u=2,absoluteStrokeWidth:d=!1,color:f=`currentColor`,className:p=``}=Qv()??{},m=r??d?Number(n??u)*24/Number(t??l):n??u;return(0,j.createElement)(`svg`,{ref:c,...Yv,width:t??l??Yv.width,height:t??l??Yv.height,stroke:e??f,strokeWidth:m,className:Gv(`lucide`,p,i),...!a&&!Xv(s)&&{"aria-hidden":`true`},...s},[...o.map(([e,t])=>(0,j.createElement)(e,t)),...Array.isArray(a)?a:[a]])}),ey=(e,t)=>{let n=(0,j.forwardRef)(({className:n,...r},i)=>(0,j.createElement)($v,{ref:i,iconNode:t,className:Gv(`lucide-${Kv(Jv(e))}`,`lucide-${e}`,n),...r}));return n.displayName=Jv(e),n},ty=ey(`arrow-right`,[[`path`,{d:`M5 12h14`,key:`1ays0h`}],[`path`,{d:`m12 5 7 7-7 7`,key:`xquz4c`}]]),ny=ey(`building-2`,[[`path`,{d:`M10 12h4`,key:`a56b0p`}],[`path`,{d:`M10 8h4`,key:`1sr2af`}],[`path`,{d:`M14 21v-3a2 2 0 0 0-4 0v3`,key:`1rgiei`}],[`path`,{d:`M6 10H4a2 2 0 0 0-2 2v7a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V9a2 2 0 0 0-2-2h-2`,key:`secmi2`}],[`path`,{d:`M6 21V5a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v16`,key:`16ra0t`}]]),ry=ey(`check`,[[`path`,{d:`M20 6 9 17l-5-5`,key:`1gmf2c`}]]),iy=ey(`chevron-down`,[[`path`,{d:`m6 9 6 6 6-6`,key:`qrunsl`}]]),ay=ey(`chevron-right`,[[`path`,{d:`m9 18 6-6-6-6`,key:`mthhwq`}]]),oy=ey(`chevron-up`,[[`path`,{d:`m18 15-6-6-6 6`,key:`153udz`}]]),sy=ey(`chevrons-up-down`,[[`path`,{d:`m7 15 5 5 5-5`,key:`1hf1tw`}],[`path`,{d:`m7 9 5-5 5 5`,key:`sgt6xg`}]]),cy=ey(`circle-check`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`m9 12 2 2 4-4`,key:`dzmm74`}]]),ly=ey(`circle-user-round`,[[`path`,{d:`M17.925 20.056a6 6 0 0 0-11.851.001`,key:`z69sun`}],[`circle`,{cx:`12`,cy:`11`,r:`4`,key:`1gt34v`}],[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}]]),uy=ey(`circle-x`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`m15 9-6 6`,key:`1uzhvr`}],[`path`,{d:`m9 9 6 6`,key:`z0biqf`}]]),dy=ey(`circle`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}]]),fy=ey(`clock`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`M12 6v6l4 2`,key:`mmk7yg`}]]),py=ey(`copy`,[[`rect`,{width:`14`,height:`14`,x:`8`,y:`8`,rx:`2`,ry:`2`,key:`17jyea`}],[`path`,{d:`M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2`,key:`zix9uf`}]]),my=ey(`ellipsis-vertical`,[[`circle`,{cx:`12`,cy:`12`,r:`1`,key:`41hilf`}],[`circle`,{cx:`12`,cy:`5`,r:`1`,key:`gxeob9`}],[`circle`,{cx:`12`,cy:`19`,r:`1`,key:`lyex9k`}]]),hy=ey(`gallery-vertical-end`,[[`path`,{d:`M7 2h10`,key:`nczekb`}],[`path`,{d:`M5 6h14`,key:`u2x4p`}],[`rect`,{width:`18`,height:`12`,x:`3`,y:`10`,rx:`2`,key:`l0tzu3`}]]),gy=ey(`globe`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`M12 2a14.5 14.5 0 0 0 0 20 14.5 14.5 0 0 0 0-20`,key:`13o1zl`}],[`path`,{d:`M2 12h20`,key:`9i4pu4`}]]),_y=ey(`house`,[[`path`,{d:`M15 21v-8a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v8`,key:`5wwlr5`}],[`path`,{d:`M3 10a2 2 0 0 1 .709-1.528l7-6a2 2 0 0 1 2.582 0l7 6A2 2 0 0 1 21 10v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z`,key:`r6nss1`}]]),vy=ey(`inbox`,[[`polyline`,{points:`22 12 16 12 14 15 10 15 8 12 2 12`,key:`o97t9d`}],[`path`,{d:`M5.45 5.11 2 12v6a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-6l-3.45-6.89A2 2 0 0 0 16.76 4H7.24a2 2 0 0 0-1.79 1.11z`,key:`oot6mr`}]]),yy=ey(`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`}]]),by=ey(`languages`,[[`path`,{d:`m5 8 6 6`,key:`1wu5hv`}],[`path`,{d:`m4 14 6-6 2-3`,key:`1k1g8d`}],[`path`,{d:`M2 5h12`,key:`or177f`}],[`path`,{d:`M7 2h1`,key:`1t2jsx`}],[`path`,{d:`m22 22-5-10-5 10`,key:`don7ne`}],[`path`,{d:`M14 18h6`,key:`1m8k6r`}]]),xy=ey(`link-2-off`,[[`path`,{d:`M9 17H7A5 5 0 0 1 7 7`,key:`10o201`}],[`path`,{d:`M15 7h2a5 5 0 0 1 4 8`,key:`1d3206`}],[`line`,{x1:`8`,x2:`12`,y1:`12`,y2:`12`,key:`rvw6j4`}],[`line`,{x1:`2`,x2:`22`,y1:`2`,y2:`22`,key:`a6p6uj`}]]),Sy=ey(`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`}]]),Cy=ey(`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`}]]),wy=ey(`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`}]]),Ty=ey(`monitor`,[[`rect`,{width:`20`,height:`14`,x:`2`,y:`3`,rx:`2`,key:`48i651`}],[`line`,{x1:`8`,x2:`16`,y1:`21`,y2:`21`,key:`1svkeh`}],[`line`,{x1:`12`,x2:`12`,y1:`17`,y2:`21`,key:`vw1qmm`}]]),Ey=ey(`moon`,[[`path`,{d:`M20.985 12.486a9 9 0 1 1-9.473-9.472c.405-.022.617.46.402.803a6 6 0 0 0 8.268 8.268c.344-.215.825-.004.803.401`,key:`kfwtm`}]]),Dy=ey(`panel-left`,[[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`,key:`afitv7`}],[`path`,{d:`M9 3v18`,key:`fh3hqa`}]]),Oy=ey(`plus`,[[`path`,{d:`M5 12h14`,key:`1ays0h`}],[`path`,{d:`M12 5v14`,key:`s699le`}]]),ky=ey(`refresh-cw`,[[`path`,{d:`M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8`,key:`v9h5vc`}],[`path`,{d:`M21 3v5h-5`,key:`1q7to0`}],[`path`,{d:`M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16`,key:`3uifl3`}],[`path`,{d:`M8 16H3v5`,key:`1cv678`}]]),Ay=ey(`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`}]]),jy=ey(`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`}]]),My=ey(`shield-check`,[[`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`}],[`path`,{d:`m9 12 2 2 4-4`,key:`dzmm74`}]]),Ny=ey(`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`}]]),Py=ey(`smartphone`,[[`rect`,{width:`14`,height:`20`,x:`5`,y:`2`,rx:`2`,ry:`2`,key:`1yt0o3`}],[`path`,{d:`M12 18h.01`,key:`mhygvu`}]]),Fy=ey(`sun`,[[`circle`,{cx:`12`,cy:`12`,r:`4`,key:`4exip2`}],[`path`,{d:`M12 2v2`,key:`tus03m`}],[`path`,{d:`M12 20v2`,key:`1lh1kg`}],[`path`,{d:`m4.93 4.93 1.41 1.41`,key:`149t6j`}],[`path`,{d:`m17.66 17.66 1.41 1.41`,key:`ptbguv`}],[`path`,{d:`M2 12h2`,key:`1t8f8n`}],[`path`,{d:`M20 12h2`,key:`1q8mjw`}],[`path`,{d:`m6.34 17.66-1.41 1.41`,key:`1m8zz5`}],[`path`,{d:`m19.07 4.93-1.41 1.41`,key:`1shlcs`}]]),Iy=ey(`tablet`,[[`rect`,{width:`16`,height:`20`,x:`4`,y:`2`,rx:`2`,ry:`2`,key:`76otgf`}],[`line`,{x1:`12`,x2:`12.01`,y1:`18`,y2:`18`,key:`1dp563`}]]),Ly=ey(`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`}]]),Ry=ey(`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`}]]),zy=ey(`upload`,[[`path`,{d:`M12 3v12`,key:`1x0j5s`}],[`path`,{d:`m17 8-5-5-5 5`,key:`7q97r8`}],[`path`,{d:`M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4`,key:`ih7n3h`}]]),By=ey(`user-minus`,[[`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:`22`,x2:`16`,y1:`11`,y2:`11`,key:`1shjgl`}]]),Vy=ey(`user-plus`,[[`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:`19`,x2:`19`,y1:`8`,y2:`14`,key:`1bvyxn`}],[`line`,{x1:`22`,x2:`16`,y1:`11`,y2:`11`,key:`1shjgl`}]]),Hy=ey(`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`}]]),Uy=ey(`users-round`,[[`path`,{d:`M18 21a8 8 0 0 0-16 0`,key:`3ypg7q`}],[`circle`,{cx:`10`,cy:`8`,r:`5`,key:`o932ke`}],[`path`,{d:`M22 20c0-3.37-2-6.5-4-8a5 5 0 0 0-.45-8.3`,key:`10s06x`}]]),Wy=ey(`users`,[[`path`,{d:`M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2`,key:`1yyitq`}],[`path`,{d:`M16 3.128a4 4 0 0 1 0 7.744`,key:`16gr8j`}],[`path`,{d:`M22 21v-2a4 4 0 0 0-3-3.87`,key:`kshegd`}],[`circle`,{cx:`9`,cy:`7`,r:`4`,key:`nufk8`}]]),Gy=ey(`x`,[[`path`,{d:`M18 6 6 18`,key:`1bl5f8`}],[`path`,{d:`m6 6 12 12`,key:`d8bk6v`}]]),Ky=(e,t)=>{let n=Array(e.length+t.length);for(let t=0;t<e.length;t++)n[t]=e[t];for(let r=0;r<t.length;r++)n[e.length+r]=t[r];return n},qy=(e,t)=>({classGroupId:e,validator:t}),Jy=(e=new Map,t=null,n)=>({nextPart:e,validators:t,classGroupId:n}),Yy=`-`,Xy=[],Zy=`arbitrary..`,Qy=e=>{let t=tb(e),{conflictingClassGroups:n,conflictingClassGroupModifiers:r}=e;return{getClassGroupId:e=>{if(e.startsWith(`[`)&&e.endsWith(`]`))return eb(e);let n=e.split(Yy);return $y(n,+(n[0]===``&&n.length>1),t)},getConflictingClassGroupIds:(e,t)=>{if(t){let t=r[e],i=n[e];return t?i?Ky(i,t):t:i||Xy}return n[e]||Xy}}},$y=(e,t,n)=>{if(e.length-t===0)return n.classGroupId;let r=e[t],i=n.nextPart.get(r);if(i){let n=$y(e,t+1,i);if(n)return n}let a=n.validators;if(a===null)return;let o=t===0?e.join(Yy):e.slice(t).join(Yy),s=a.length;for(let e=0;e<s;e++){let t=a[e];if(t.validator(o))return t.classGroupId}},eb=e=>e.slice(1,-1).indexOf(`:`)===-1?void 0:(()=>{let t=e.slice(1,-1),n=t.indexOf(`:`),r=t.slice(0,n);return r?Zy+r:void 0})(),tb=e=>{let{theme:t,classGroups:n}=e;return nb(n,t)},nb=(e,t)=>{let n=Jy();for(let r in e){let i=e[r];rb(i,n,r,t)}return n},rb=(e,t,n,r)=>{let i=e.length;for(let a=0;a<i;a++){let i=e[a];ib(i,t,n,r)}},ib=(e,t,n,r)=>{if(typeof e==`string`){ab(e,t,n);return}if(typeof e==`function`){ob(e,t,n,r);return}sb(e,t,n,r)},ab=(e,t,n)=>{let r=e===``?t:cb(t,e);r.classGroupId=n},ob=(e,t,n,r)=>{if(lb(e)){rb(e(r),t,n,r);return}t.validators===null&&(t.validators=[]),t.validators.push(qy(n,e))},sb=(e,t,n,r)=>{let i=Object.entries(e),a=i.length;for(let e=0;e<a;e++){let[a,o]=i[e];rb(o,cb(t,a),n,r)}},cb=(e,t)=>{let n=e,r=t.split(Yy),i=r.length;for(let e=0;e<i;e++){let t=r[e],i=n.nextPart.get(t);i||(i=Jy(),n.nextPart.set(t,i)),n=i}return n},lb=e=>`isThemeGetter`in e&&e.isThemeGetter===!0,ub=e=>{if(e<1)return{get:()=>void 0,set:()=>{}};let t=0,n=Object.create(null),r=Object.create(null),i=(i,a)=>{n[i]=a,t++,t>e&&(t=0,r=n,n=Object.create(null))};return{get(e){let t=n[e];if(t!==void 0)return t;if((t=r[e])!==void 0)return i(e,t),t},set(e,t){e in n?n[e]=t:i(e,t)}}},db=`!`,fb=`:`,pb=[],mb=(e,t,n,r,i)=>({modifiers:e,hasImportantModifier:t,baseClassName:n,maybePostfixModifierPosition:r,isExternal:i}),hb=e=>{let{prefix:t,experimentalParseClassName:n}=e,r=e=>{let t=[],n=0,r=0,i=0,a,o=e.length;for(let s=0;s<o;s++){let o=e[s];if(n===0&&r===0){if(o===fb){t.push(e.slice(i,s)),i=s+1;continue}if(o===`/`){a=s;continue}}o===`[`?n++:o===`]`?n--:o===`(`?r++:o===`)`&&r--}let s=t.length===0?e:e.slice(i),c=s,l=!1;s.endsWith(db)?(c=s.slice(0,-1),l=!0):s.startsWith(db)&&(c=s.slice(1),l=!0);let u=a&&a>i?a-i:void 0;return mb(t,l,c,u)};if(t){let e=t+fb,n=r;r=t=>t.startsWith(e)?n(t.slice(e.length)):mb(pb,!1,t,void 0,!0)}if(n){let e=r;r=t=>n({className:t,parseClassName:e})}return r},gb=e=>{let t=new Map;return e.orderSensitiveModifiers.forEach((e,n)=>{t.set(e,1e6+n)}),e=>{let n=[],r=[];for(let i=0;i<e.length;i++){let a=e[i],o=a[0]===`[`,s=t.has(a);o||s?(r.length>0&&(r.sort(),n.push(...r),r=[]),n.push(a)):r.push(a)}return r.length>0&&(r.sort(),n.push(...r)),n}},_b=e=>({cache:ub(e.cacheSize),parseClassName:hb(e),sortModifiers:gb(e),postfixLookupClassGroupIds:vb(e),...Qy(e)}),vb=e=>{let t=Object.create(null),n=e.postfixLookupClassGroups;if(n)for(let e=0;e<n.length;e++)t[n[e]]=!0;return t},yb=/\s+/,bb=(e,t)=>{let{parseClassName:n,getClassGroupId:r,getConflictingClassGroupIds:i,sortModifiers:a,postfixLookupClassGroupIds:o}=t,s=[],c=e.trim().split(yb),l=``;for(let e=c.length-1;e>=0;--e){let t=c[e],{isExternal:u,modifiers:d,hasImportantModifier:f,baseClassName:p,maybePostfixModifierPosition:m}=n(t);if(u){l=t+(l.length>0?` `+l:l);continue}let h=!!m,g;if(h){g=r(p.substring(0,m));let e=g&&o[g]?r(p):void 0;e&&e!==g&&(g=e,h=!1)}else g=r(p);if(!g){if(!h){l=t+(l.length>0?` `+l:l);continue}if(g=r(p),!g){l=t+(l.length>0?` `+l:l);continue}h=!1}let _=d.length===0?``:d.length===1?d[0]:a(d).join(`:`),v=f?_+db:_,y=v+g;if(s.indexOf(y)>-1)continue;s.push(y);let b=i(g,h);for(let e=0;e<b.length;++e){let t=b[e];s.push(v+t)}l=t+(l.length>0?` `+l:l)}return l},xb=(...e)=>{let t=0,n,r,i=``;for(;t<e.length;)(n=e[t++])&&(r=Sb(n))&&(i&&(i+=` `),i+=r);return i},Sb=e=>{if(typeof e==`string`)return e;let t,n=``;for(let r=0;r<e.length;r++)e[r]&&(t=Sb(e[r]))&&(n&&(n+=` `),n+=t);return n},Cb=(e,...t)=>{let n,r,i,a,o=o=>(n=_b(t.reduce((e,t)=>t(e),e())),r=n.cache.get,i=n.cache.set,a=s,s(o)),s=e=>{let t=r(e);if(t)return t;let a=bb(e,n);return i(e,a),a};return a=o,(...e)=>a(xb(...e))},wb=[],Tb=e=>{let t=t=>t[e]||wb;return t.isThemeGetter=!0,t},Eb=/^\[(?:(\w[\w-]*):)?(.+)\]$/i,Db=/^\((?:(\w[\w-]*):)?(.+)\)$/i,Ob=/^\d+(?:\.\d+)?\/\d+(?:\.\d+)?$/,kb=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,Ab=/\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/,jb=/^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix)\(.+\)$/,Mb=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,Nb=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,Pb=e=>Ob.test(e),Fb=e=>!!e&&!Number.isNaN(Number(e)),Ib=e=>!!e&&Number.isInteger(Number(e)),Lb=e=>e.endsWith(`%`)&&Fb(e.slice(0,-1)),Rb=e=>kb.test(e),zb=()=>!0,Bb=e=>Ab.test(e)&&!jb.test(e),Vb=()=>!1,Hb=e=>Mb.test(e),Ub=e=>Nb.test(e),Wb=e=>!Y(e)&&!X(e),Gb=e=>e.startsWith(`@container`)&&(e[10]===`/`&&e[11]!==void 0||e[11]===`s`&&e[16]!==void 0&&e.startsWith(`-size/`,10)||e[11]===`n`&&e[18]!==void 0&&e.startsWith(`-normal/`,10)),Kb=e=>sx(e,dx,Vb),Y=e=>Eb.test(e),qb=e=>sx(e,fx,Bb),Jb=e=>sx(e,px,Fb),Yb=e=>sx(e,hx,zb),Xb=e=>sx(e,mx,Vb),Zb=e=>sx(e,lx,Vb),Qb=e=>sx(e,ux,Ub),$b=e=>sx(e,gx,Hb),X=e=>Db.test(e),ex=e=>cx(e,fx),tx=e=>cx(e,mx),nx=e=>cx(e,lx),rx=e=>cx(e,dx),ix=e=>cx(e,ux),ax=e=>cx(e,gx,!0),ox=e=>cx(e,hx,!0),sx=(e,t,n)=>{let r=Eb.exec(e);return r?r[1]?t(r[1]):n(r[2]):!1},cx=(e,t,n=!1)=>{let r=Db.exec(e);return r?r[1]?t(r[1]):n:!1},lx=e=>e===`position`||e===`percentage`,ux=e=>e===`image`||e===`url`,dx=e=>e===`length`||e===`size`||e===`bg-size`,fx=e=>e===`length`,px=e=>e===`number`,mx=e=>e===`family-name`,hx=e=>e===`number`||e===`weight`,gx=e=>e===`shadow`,_x=Cb(()=>{let e=Tb(`color`),t=Tb(`font`),n=Tb(`text`),r=Tb(`font-weight`),i=Tb(`tracking`),a=Tb(`leading`),o=Tb(`breakpoint`),s=Tb(`container`),c=Tb(`spacing`),l=Tb(`radius`),u=Tb(`shadow`),d=Tb(`inset-shadow`),f=Tb(`text-shadow`),p=Tb(`drop-shadow`),m=Tb(`blur`),h=Tb(`perspective`),g=Tb(`aspect`),_=Tb(`ease`),v=Tb(`animate`),y=()=>[`auto`,`avoid`,`all`,`avoid-page`,`page`,`left`,`right`,`column`],b=()=>[`center`,`top`,`bottom`,`left`,`right`,`top-left`,`left-top`,`top-right`,`right-top`,`bottom-right`,`right-bottom`,`bottom-left`,`left-bottom`],x=()=>[...b(),X,Y],S=()=>[`auto`,`hidden`,`clip`,`visible`,`scroll`],C=()=>[`auto`,`contain`,`none`],w=()=>[X,Y,c],T=()=>[Pb,`full`,`auto`,...w()],E=()=>[Ib,`none`,`subgrid`,X,Y],D=()=>[`auto`,{span:[`full`,Ib,X,Y]},Ib,X,Y],O=()=>[Ib,`auto`,X,Y],ee=()=>[`auto`,`min`,`max`,`fr`,X,Y],te=()=>[`start`,`end`,`center`,`between`,`around`,`evenly`,`stretch`,`baseline`,`center-safe`,`end-safe`],ne=()=>[`start`,`end`,`center`,`stretch`,`center-safe`,`end-safe`],re=()=>[`auto`,...w()],ie=()=>[Pb,`auto`,`full`,`dvw`,`dvh`,`lvw`,`lvh`,`svw`,`svh`,`min`,`max`,`fit`,...w()],ae=()=>[Pb,`screen`,`full`,`dvw`,`lvw`,`svw`,`min`,`max`,`fit`,...w()],oe=()=>[Pb,`screen`,`full`,`lh`,`dvh`,`lvh`,`svh`,`min`,`max`,`fit`,...w()],k=()=>[e,X,Y],se=()=>[...b(),nx,Zb,{position:[X,Y]}],ce=()=>[`no-repeat`,{repeat:[``,`x`,`y`,`space`,`round`]}],le=()=>[`auto`,`cover`,`contain`,rx,Kb,{size:[X,Y]}],ue=()=>[Lb,ex,qb],A=()=>[``,`none`,`full`,l,X,Y],de=()=>[``,Fb,ex,qb],fe=()=>[`solid`,`dashed`,`dotted`,`double`],pe=()=>[`normal`,`multiply`,`screen`,`overlay`,`darken`,`lighten`,`color-dodge`,`color-burn`,`hard-light`,`soft-light`,`difference`,`exclusion`,`hue`,`saturation`,`color`,`luminosity`],me=()=>[Fb,Lb,nx,Zb],he=()=>[``,`none`,m,X,Y],ge=()=>[`none`,Fb,X,Y],_e=()=>[`none`,Fb,X,Y],ve=()=>[Fb,X,Y],ye=()=>[Pb,`full`,...w()];return{cacheSize:500,theme:{animate:[`spin`,`ping`,`pulse`,`bounce`],aspect:[`video`],blur:[Rb],breakpoint:[Rb],color:[zb],container:[Rb],"drop-shadow":[Rb],ease:[`in`,`out`,`in-out`],font:[Wb],"font-weight":[`thin`,`extralight`,`light`,`normal`,`medium`,`semibold`,`bold`,`extrabold`,`black`],"inset-shadow":[Rb],leading:[`none`,`tight`,`snug`,`normal`,`relaxed`,`loose`],perspective:[`dramatic`,`near`,`normal`,`midrange`,`distant`,`none`],radius:[Rb],shadow:[Rb],spacing:[`px`,Fb],text:[Rb],"text-shadow":[Rb],tracking:[`tighter`,`tight`,`normal`,`wide`,`wider`,`widest`]},classGroups:{aspect:[{aspect:[`auto`,`square`,Pb,Y,X,g]}],container:[`container`],"container-type":[{"@container":[``,`normal`,`size`,X,Y]}],"container-named":[Gb],columns:[{columns:[Fb,Y,X,s]}],"break-after":[{"break-after":y()}],"break-before":[{"break-before":y()}],"break-inside":[{"break-inside":[`auto`,`avoid`,`avoid-page`,`avoid-column`]}],"box-decoration":[{"box-decoration":[`slice`,`clone`]}],box:[{box:[`border`,`content`]}],display:[`block`,`inline-block`,`inline`,`flex`,`inline-flex`,`table`,`inline-table`,`table-caption`,`table-cell`,`table-column`,`table-column-group`,`table-footer-group`,`table-header-group`,`table-row-group`,`table-row`,`flow-root`,`grid`,`inline-grid`,`contents`,`list-item`,`hidden`],sr:[`sr-only`,`not-sr-only`],float:[{float:[`right`,`left`,`none`,`start`,`end`]}],clear:[{clear:[`left`,`right`,`both`,`none`,`start`,`end`]}],isolation:[`isolate`,`isolation-auto`],"object-fit":[{object:[`contain`,`cover`,`fill`,`none`,`scale-down`]}],"object-position":[{object:x()}],overflow:[{overflow:S()}],"overflow-x":[{"overflow-x":S()}],"overflow-y":[{"overflow-y":S()}],overscroll:[{overscroll:C()}],"overscroll-x":[{"overscroll-x":C()}],"overscroll-y":[{"overscroll-y":C()}],position:[`static`,`fixed`,`absolute`,`relative`,`sticky`],inset:[{inset:T()}],"inset-x":[{"inset-x":T()}],"inset-y":[{"inset-y":T()}],start:[{"inset-s":T(),start:T()}],end:[{"inset-e":T(),end:T()}],"inset-bs":[{"inset-bs":T()}],"inset-be":[{"inset-be":T()}],top:[{top:T()}],right:[{right:T()}],bottom:[{bottom:T()}],left:[{left:T()}],visibility:[`visible`,`invisible`,`collapse`],z:[{z:[Ib,`auto`,X,Y]}],basis:[{basis:[Pb,`full`,`auto`,s,...w()]}],"flex-direction":[{flex:[`row`,`row-reverse`,`col`,`col-reverse`]}],"flex-wrap":[{flex:[`nowrap`,`wrap`,`wrap-reverse`]}],flex:[{flex:[Fb,Pb,`auto`,`initial`,`none`,Y]}],grow:[{grow:[``,Fb,X,Y]}],shrink:[{shrink:[``,Fb,X,Y]}],order:[{order:[Ib,`first`,`last`,`none`,X,Y]}],"grid-cols":[{"grid-cols":E()}],"col-start-end":[{col:D()}],"col-start":[{"col-start":O()}],"col-end":[{"col-end":O()}],"grid-rows":[{"grid-rows":E()}],"row-start-end":[{row:D()}],"row-start":[{"row-start":O()}],"row-end":[{"row-end":O()}],"grid-flow":[{"grid-flow":[`row`,`col`,`dense`,`row-dense`,`col-dense`]}],"auto-cols":[{"auto-cols":ee()}],"auto-rows":[{"auto-rows":ee()}],gap:[{gap:w()}],"gap-x":[{"gap-x":w()}],"gap-y":[{"gap-y":w()}],"justify-content":[{justify:[...te(),`normal`]}],"justify-items":[{"justify-items":[...ne(),`normal`]}],"justify-self":[{"justify-self":[`auto`,...ne()]}],"align-content":[{content:[`normal`,...te()]}],"align-items":[{items:[...ne(),{baseline:[``,`last`]}]}],"align-self":[{self:[`auto`,...ne(),{baseline:[``,`last`]}]}],"place-content":[{"place-content":te()}],"place-items":[{"place-items":[...ne(),`baseline`]}],"place-self":[{"place-self":[`auto`,...ne()]}],p:[{p:w()}],px:[{px:w()}],py:[{py:w()}],ps:[{ps:w()}],pe:[{pe:w()}],pbs:[{pbs:w()}],pbe:[{pbe:w()}],pt:[{pt:w()}],pr:[{pr:w()}],pb:[{pb:w()}],pl:[{pl:w()}],m:[{m:re()}],mx:[{mx:re()}],my:[{my:re()}],ms:[{ms:re()}],me:[{me:re()}],mbs:[{mbs:re()}],mbe:[{mbe:re()}],mt:[{mt:re()}],mr:[{mr:re()}],mb:[{mb:re()}],ml:[{ml:re()}],"space-x":[{"space-x":w()}],"space-x-reverse":[`space-x-reverse`],"space-y":[{"space-y":w()}],"space-y-reverse":[`space-y-reverse`],size:[{size:ie()}],"inline-size":[{inline:[`auto`,...ae()]}],"min-inline-size":[{"min-inline":[`auto`,...ae()]}],"max-inline-size":[{"max-inline":[`none`,...ae()]}],"block-size":[{block:[`auto`,...oe()]}],"min-block-size":[{"min-block":[`auto`,...oe()]}],"max-block-size":[{"max-block":[`none`,...oe()]}],w:[{w:[s,`screen`,...ie()]}],"min-w":[{"min-w":[s,`screen`,`none`,...ie()]}],"max-w":[{"max-w":[s,`screen`,`none`,`prose`,{screen:[o]},...ie()]}],h:[{h:[`screen`,`lh`,...ie()]}],"min-h":[{"min-h":[`screen`,`lh`,`none`,...ie()]}],"max-h":[{"max-h":[`screen`,`lh`,...ie()]}],"font-size":[{text:[`base`,n,ex,qb]}],"font-smoothing":[`antialiased`,`subpixel-antialiased`],"font-style":[`italic`,`not-italic`],"font-weight":[{font:[r,ox,Yb]}],"font-stretch":[{"font-stretch":[`ultra-condensed`,`extra-condensed`,`condensed`,`semi-condensed`,`normal`,`semi-expanded`,`expanded`,`extra-expanded`,`ultra-expanded`,Lb,Y]}],"font-family":[{font:[tx,Xb,t]}],"font-features":[{"font-features":[Y]}],"fvn-normal":[`normal-nums`],"fvn-ordinal":[`ordinal`],"fvn-slashed-zero":[`slashed-zero`],"fvn-figure":[`lining-nums`,`oldstyle-nums`],"fvn-spacing":[`proportional-nums`,`tabular-nums`],"fvn-fraction":[`diagonal-fractions`,`stacked-fractions`],tracking:[{tracking:[i,X,Y]}],"line-clamp":[{"line-clamp":[Fb,`none`,X,Jb]}],leading:[{leading:[a,...w()]}],"list-image":[{"list-image":[`none`,X,Y]}],"list-style-position":[{list:[`inside`,`outside`]}],"list-style-type":[{list:[`disc`,`decimal`,`none`,X,Y]}],"text-alignment":[{text:[`left`,`center`,`right`,`justify`,`start`,`end`]}],"placeholder-color":[{placeholder:k()}],"text-color":[{text:k()}],"text-decoration":[`underline`,`overline`,`line-through`,`no-underline`],"text-decoration-style":[{decoration:[...fe(),`wavy`]}],"text-decoration-thickness":[{decoration:[Fb,`from-font`,`auto`,X,qb]}],"text-decoration-color":[{decoration:k()}],"underline-offset":[{"underline-offset":[Fb,`auto`,X,Y]}],"text-transform":[`uppercase`,`lowercase`,`capitalize`,`normal-case`],"text-overflow":[`truncate`,`text-ellipsis`,`text-clip`],"text-wrap":[{text:[`wrap`,`nowrap`,`balance`,`pretty`]}],indent:[{indent:w()}],"tab-size":[{tab:[Ib,X,Y]}],"vertical-align":[{align:[`baseline`,`top`,`middle`,`bottom`,`text-top`,`text-bottom`,`sub`,`super`,X,Y]}],whitespace:[{whitespace:[`normal`,`nowrap`,`pre`,`pre-line`,`pre-wrap`,`break-spaces`]}],break:[{break:[`normal`,`words`,`all`,`keep`]}],wrap:[{wrap:[`break-word`,`anywhere`,`normal`]}],hyphens:[{hyphens:[`none`,`manual`,`auto`]}],content:[{content:[`none`,X,Y]}],"bg-attachment":[{bg:[`fixed`,`local`,`scroll`]}],"bg-clip":[{"bg-clip":[`border`,`padding`,`content`,`text`]}],"bg-origin":[{"bg-origin":[`border`,`padding`,`content`]}],"bg-position":[{bg:se()}],"bg-repeat":[{bg:ce()}],"bg-size":[{bg:le()}],"bg-image":[{bg:[`none`,{linear:[{to:[`t`,`tr`,`r`,`br`,`b`,`bl`,`l`,`tl`]},Ib,X,Y],radial:[``,X,Y],conic:[Ib,X,Y]},ix,Qb]}],"bg-color":[{bg:k()}],"gradient-from-pos":[{from:ue()}],"gradient-via-pos":[{via:ue()}],"gradient-to-pos":[{to:ue()}],"gradient-from":[{from:k()}],"gradient-via":[{via:k()}],"gradient-to":[{to:k()}],rounded:[{rounded:A()}],"rounded-s":[{"rounded-s":A()}],"rounded-e":[{"rounded-e":A()}],"rounded-t":[{"rounded-t":A()}],"rounded-r":[{"rounded-r":A()}],"rounded-b":[{"rounded-b":A()}],"rounded-l":[{"rounded-l":A()}],"rounded-ss":[{"rounded-ss":A()}],"rounded-se":[{"rounded-se":A()}],"rounded-ee":[{"rounded-ee":A()}],"rounded-es":[{"rounded-es":A()}],"rounded-tl":[{"rounded-tl":A()}],"rounded-tr":[{"rounded-tr":A()}],"rounded-br":[{"rounded-br":A()}],"rounded-bl":[{"rounded-bl":A()}],"border-w":[{border:de()}],"border-w-x":[{"border-x":de()}],"border-w-y":[{"border-y":de()}],"border-w-s":[{"border-s":de()}],"border-w-e":[{"border-e":de()}],"border-w-bs":[{"border-bs":de()}],"border-w-be":[{"border-be":de()}],"border-w-t":[{"border-t":de()}],"border-w-r":[{"border-r":de()}],"border-w-b":[{"border-b":de()}],"border-w-l":[{"border-l":de()}],"divide-x":[{"divide-x":de()}],"divide-x-reverse":[`divide-x-reverse`],"divide-y":[{"divide-y":de()}],"divide-y-reverse":[`divide-y-reverse`],"border-style":[{border:[...fe(),`hidden`,`none`]}],"divide-style":[{divide:[...fe(),`hidden`,`none`]}],"border-color":[{border:k()}],"border-color-x":[{"border-x":k()}],"border-color-y":[{"border-y":k()}],"border-color-s":[{"border-s":k()}],"border-color-e":[{"border-e":k()}],"border-color-bs":[{"border-bs":k()}],"border-color-be":[{"border-be":k()}],"border-color-t":[{"border-t":k()}],"border-color-r":[{"border-r":k()}],"border-color-b":[{"border-b":k()}],"border-color-l":[{"border-l":k()}],"divide-color":[{divide:k()}],"outline-style":[{outline:[...fe(),`none`,`hidden`]}],"outline-offset":[{"outline-offset":[Fb,X,Y]}],"outline-w":[{outline:[``,Fb,ex,qb]}],"outline-color":[{outline:k()}],shadow:[{shadow:[``,`none`,u,ax,$b]}],"shadow-color":[{shadow:k()}],"inset-shadow":[{"inset-shadow":[`none`,d,ax,$b]}],"inset-shadow-color":[{"inset-shadow":k()}],"ring-w":[{ring:de()}],"ring-w-inset":[`ring-inset`],"ring-color":[{ring:k()}],"ring-offset-w":[{"ring-offset":[Fb,qb]}],"ring-offset-color":[{"ring-offset":k()}],"inset-ring-w":[{"inset-ring":de()}],"inset-ring-color":[{"inset-ring":k()}],"text-shadow":[{"text-shadow":[`none`,f,ax,$b]}],"text-shadow-color":[{"text-shadow":k()}],opacity:[{opacity:[Fb,X,Y]}],"mix-blend":[{"mix-blend":[...pe(),`plus-darker`,`plus-lighter`]}],"bg-blend":[{"bg-blend":pe()}],"mask-clip":[{"mask-clip":[`border`,`padding`,`content`,`fill`,`stroke`,`view`]},`mask-no-clip`],"mask-composite":[{mask:[`add`,`subtract`,`intersect`,`exclude`]}],"mask-image-linear-pos":[{"mask-linear":[Fb]}],"mask-image-linear-from-pos":[{"mask-linear-from":me()}],"mask-image-linear-to-pos":[{"mask-linear-to":me()}],"mask-image-linear-from-color":[{"mask-linear-from":k()}],"mask-image-linear-to-color":[{"mask-linear-to":k()}],"mask-image-t-from-pos":[{"mask-t-from":me()}],"mask-image-t-to-pos":[{"mask-t-to":me()}],"mask-image-t-from-color":[{"mask-t-from":k()}],"mask-image-t-to-color":[{"mask-t-to":k()}],"mask-image-r-from-pos":[{"mask-r-from":me()}],"mask-image-r-to-pos":[{"mask-r-to":me()}],"mask-image-r-from-color":[{"mask-r-from":k()}],"mask-image-r-to-color":[{"mask-r-to":k()}],"mask-image-b-from-pos":[{"mask-b-from":me()}],"mask-image-b-to-pos":[{"mask-b-to":me()}],"mask-image-b-from-color":[{"mask-b-from":k()}],"mask-image-b-to-color":[{"mask-b-to":k()}],"mask-image-l-from-pos":[{"mask-l-from":me()}],"mask-image-l-to-pos":[{"mask-l-to":me()}],"mask-image-l-from-color":[{"mask-l-from":k()}],"mask-image-l-to-color":[{"mask-l-to":k()}],"mask-image-x-from-pos":[{"mask-x-from":me()}],"mask-image-x-to-pos":[{"mask-x-to":me()}],"mask-image-x-from-color":[{"mask-x-from":k()}],"mask-image-x-to-color":[{"mask-x-to":k()}],"mask-image-y-from-pos":[{"mask-y-from":me()}],"mask-image-y-to-pos":[{"mask-y-to":me()}],"mask-image-y-from-color":[{"mask-y-from":k()}],"mask-image-y-to-color":[{"mask-y-to":k()}],"mask-image-radial":[{"mask-radial":[X,Y]}],"mask-image-radial-from-pos":[{"mask-radial-from":me()}],"mask-image-radial-to-pos":[{"mask-radial-to":me()}],"mask-image-radial-from-color":[{"mask-radial-from":k()}],"mask-image-radial-to-color":[{"mask-radial-to":k()}],"mask-image-radial-shape":[{"mask-radial":[`circle`,`ellipse`]}],"mask-image-radial-size":[{"mask-radial":[{closest:[`side`,`corner`],farthest:[`side`,`corner`]}]}],"mask-image-radial-pos":[{"mask-radial-at":b()}],"mask-image-conic-pos":[{"mask-conic":[Fb]}],"mask-image-conic-from-pos":[{"mask-conic-from":me()}],"mask-image-conic-to-pos":[{"mask-conic-to":me()}],"mask-image-conic-from-color":[{"mask-conic-from":k()}],"mask-image-conic-to-color":[{"mask-conic-to":k()}],"mask-mode":[{mask:[`alpha`,`luminance`,`match`]}],"mask-origin":[{"mask-origin":[`border`,`padding`,`content`,`fill`,`stroke`,`view`]}],"mask-position":[{mask:se()}],"mask-repeat":[{mask:ce()}],"mask-size":[{mask:le()}],"mask-type":[{"mask-type":[`alpha`,`luminance`]}],"mask-image":[{mask:[`none`,X,Y]}],filter:[{filter:[``,`none`,X,Y]}],blur:[{blur:he()}],brightness:[{brightness:[Fb,X,Y]}],contrast:[{contrast:[Fb,X,Y]}],"drop-shadow":[{"drop-shadow":[``,`none`,p,ax,$b]}],"drop-shadow-color":[{"drop-shadow":k()}],grayscale:[{grayscale:[``,Fb,X,Y]}],"hue-rotate":[{"hue-rotate":[Fb,X,Y]}],invert:[{invert:[``,Fb,X,Y]}],saturate:[{saturate:[Fb,X,Y]}],sepia:[{sepia:[``,Fb,X,Y]}],"backdrop-filter":[{"backdrop-filter":[``,`none`,X,Y]}],"backdrop-blur":[{"backdrop-blur":he()}],"backdrop-brightness":[{"backdrop-brightness":[Fb,X,Y]}],"backdrop-contrast":[{"backdrop-contrast":[Fb,X,Y]}],"backdrop-grayscale":[{"backdrop-grayscale":[``,Fb,X,Y]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[Fb,X,Y]}],"backdrop-invert":[{"backdrop-invert":[``,Fb,X,Y]}],"backdrop-opacity":[{"backdrop-opacity":[Fb,X,Y]}],"backdrop-saturate":[{"backdrop-saturate":[Fb,X,Y]}],"backdrop-sepia":[{"backdrop-sepia":[``,Fb,X,Y]}],"border-collapse":[{border:[`collapse`,`separate`]}],"border-spacing":[{"border-spacing":w()}],"border-spacing-x":[{"border-spacing-x":w()}],"border-spacing-y":[{"border-spacing-y":w()}],"table-layout":[{table:[`auto`,`fixed`]}],caption:[{caption:[`top`,`bottom`]}],transition:[{transition:[``,`all`,`colors`,`opacity`,`shadow`,`transform`,`none`,X,Y]}],"transition-behavior":[{transition:[`normal`,`discrete`]}],duration:[{duration:[Fb,`initial`,X,Y]}],ease:[{ease:[`linear`,`initial`,_,X,Y]}],delay:[{delay:[Fb,X,Y]}],animate:[{animate:[`none`,v,X,Y]}],backface:[{backface:[`hidden`,`visible`]}],perspective:[{perspective:[h,X,Y]}],"perspective-origin":[{"perspective-origin":x()}],rotate:[{rotate:ge()}],"rotate-x":[{"rotate-x":ge()}],"rotate-y":[{"rotate-y":ge()}],"rotate-z":[{"rotate-z":ge()}],scale:[{scale:_e()}],"scale-x":[{"scale-x":_e()}],"scale-y":[{"scale-y":_e()}],"scale-z":[{"scale-z":_e()}],"scale-3d":[`scale-3d`],skew:[{skew:ve()}],"skew-x":[{"skew-x":ve()}],"skew-y":[{"skew-y":ve()}],transform:[{transform:[X,Y,``,`none`,`gpu`,`cpu`]}],"transform-origin":[{origin:x()}],"transform-style":[{transform:[`3d`,`flat`]}],translate:[{translate:ye()}],"translate-x":[{"translate-x":ye()}],"translate-y":[{"translate-y":ye()}],"translate-z":[{"translate-z":ye()}],"translate-none":[`translate-none`],zoom:[{zoom:[Ib,X,Y]}],accent:[{accent:k()}],appearance:[{appearance:[`none`,`auto`]}],"caret-color":[{caret:k()}],"color-scheme":[{scheme:[`normal`,`dark`,`light`,`light-dark`,`only-dark`,`only-light`]}],cursor:[{cursor:[`auto`,`default`,`pointer`,`wait`,`text`,`move`,`help`,`not-allowed`,`none`,`context-menu`,`progress`,`cell`,`crosshair`,`vertical-text`,`alias`,`copy`,`no-drop`,`grab`,`grabbing`,`all-scroll`,`col-resize`,`row-resize`,`n-resize`,`e-resize`,`s-resize`,`w-resize`,`ne-resize`,`nw-resize`,`se-resize`,`sw-resize`,`ew-resize`,`ns-resize`,`nesw-resize`,`nwse-resize`,`zoom-in`,`zoom-out`,X,Y]}],"field-sizing":[{"field-sizing":[`fixed`,`content`]}],"pointer-events":[{"pointer-events":[`auto`,`none`]}],resize:[{resize:[`none`,``,`y`,`x`]}],"scroll-behavior":[{scroll:[`auto`,`smooth`]}],"scrollbar-thumb-color":[{"scrollbar-thumb":k()}],"scrollbar-track-color":[{"scrollbar-track":k()}],"scrollbar-gutter":[{"scrollbar-gutter":[`auto`,`stable`,`both`]}],"scrollbar-w":[{scrollbar:[`auto`,`thin`,`none`]}],"scroll-m":[{"scroll-m":w()}],"scroll-mx":[{"scroll-mx":w()}],"scroll-my":[{"scroll-my":w()}],"scroll-ms":[{"scroll-ms":w()}],"scroll-me":[{"scroll-me":w()}],"scroll-mbs":[{"scroll-mbs":w()}],"scroll-mbe":[{"scroll-mbe":w()}],"scroll-mt":[{"scroll-mt":w()}],"scroll-mr":[{"scroll-mr":w()}],"scroll-mb":[{"scroll-mb":w()}],"scroll-ml":[{"scroll-ml":w()}],"scroll-p":[{"scroll-p":w()}],"scroll-px":[{"scroll-px":w()}],"scroll-py":[{"scroll-py":w()}],"scroll-ps":[{"scroll-ps":w()}],"scroll-pe":[{"scroll-pe":w()}],"scroll-pbs":[{"scroll-pbs":w()}],"scroll-pbe":[{"scroll-pbe":w()}],"scroll-pt":[{"scroll-pt":w()}],"scroll-pr":[{"scroll-pr":w()}],"scroll-pb":[{"scroll-pb":w()}],"scroll-pl":[{"scroll-pl":w()}],"snap-align":[{snap:[`start`,`end`,`center`,`align-none`]}],"snap-stop":[{snap:[`normal`,`always`]}],"snap-type":[{snap:[`none`,`x`,`y`,`both`]}],"snap-strictness":[{snap:[`mandatory`,`proximity`]}],touch:[{touch:[`auto`,`none`,`manipulation`]}],"touch-x":[{"touch-pan":[`x`,`left`,`right`]}],"touch-y":[{"touch-pan":[`y`,`up`,`down`]}],"touch-pz":[`touch-pinch-zoom`],select:[{select:[`none`,`text`,`all`,`auto`]}],"will-change":[{"will-change":[`auto`,`scroll`,`contents`,`transform`,X,Y]}],fill:[{fill:[`none`,...k()]}],"stroke-w":[{stroke:[Fb,ex,qb,Jb]}],stroke:[{stroke:[`none`,...k()]}],"forced-color-adjust":[{"forced-color-adjust":[`auto`,`none`]}]},conflictingClassGroups:{"container-named":[`container-type`],overflow:[`overflow-x`,`overflow-y`],overscroll:[`overscroll-x`,`overscroll-y`],inset:[`inset-x`,`inset-y`,`inset-bs`,`inset-be`,`start`,`end`,`top`,`right`,`bottom`,`left`],"inset-x":[`right`,`left`],"inset-y":[`top`,`bottom`],flex:[`basis`,`grow`,`shrink`],gap:[`gap-x`,`gap-y`],p:[`px`,`py`,`ps`,`pe`,`pbs`,`pbe`,`pt`,`pr`,`pb`,`pl`],px:[`pr`,`pl`],py:[`pt`,`pb`],m:[`mx`,`my`,`ms`,`me`,`mbs`,`mbe`,`mt`,`mr`,`mb`,`ml`],mx:[`mr`,`ml`],my:[`mt`,`mb`],size:[`w`,`h`],"font-size":[`leading`],"fvn-normal":[`fvn-ordinal`,`fvn-slashed-zero`,`fvn-figure`,`fvn-spacing`,`fvn-fraction`],"fvn-ordinal":[`fvn-normal`],"fvn-slashed-zero":[`fvn-normal`],"fvn-figure":[`fvn-normal`],"fvn-spacing":[`fvn-normal`],"fvn-fraction":[`fvn-normal`],"line-clamp":[`display`,`overflow`],rounded:[`rounded-s`,`rounded-e`,`rounded-t`,`rounded-r`,`rounded-b`,`rounded-l`,`rounded-ss`,`rounded-se`,`rounded-ee`,`rounded-es`,`rounded-tl`,`rounded-tr`,`rounded-br`,`rounded-bl`],"rounded-s":[`rounded-ss`,`rounded-es`],"rounded-e":[`rounded-se`,`rounded-ee`],"rounded-t":[`rounded-tl`,`rounded-tr`],"rounded-r":[`rounded-tr`,`rounded-br`],"rounded-b":[`rounded-br`,`rounded-bl`],"rounded-l":[`rounded-tl`,`rounded-bl`],"border-spacing":[`border-spacing-x`,`border-spacing-y`],"border-w":[`border-w-x`,`border-w-y`,`border-w-s`,`border-w-e`,`border-w-bs`,`border-w-be`,`border-w-t`,`border-w-r`,`border-w-b`,`border-w-l`],"border-w-x":[`border-w-r`,`border-w-l`],"border-w-y":[`border-w-t`,`border-w-b`],"border-color":[`border-color-x`,`border-color-y`,`border-color-s`,`border-color-e`,`border-color-bs`,`border-color-be`,`border-color-t`,`border-color-r`,`border-color-b`,`border-color-l`],"border-color-x":[`border-color-r`,`border-color-l`],"border-color-y":[`border-color-t`,`border-color-b`],translate:[`translate-x`,`translate-y`,`translate-none`],"translate-none":[`translate`,`translate-x`,`translate-y`,`translate-z`],"scroll-m":[`scroll-mx`,`scroll-my`,`scroll-ms`,`scroll-me`,`scroll-mbs`,`scroll-mbe`,`scroll-mt`,`scroll-mr`,`scroll-mb`,`scroll-ml`],"scroll-mx":[`scroll-mr`,`scroll-ml`],"scroll-my":[`scroll-mt`,`scroll-mb`],"scroll-p":[`scroll-px`,`scroll-py`,`scroll-ps`,`scroll-pe`,`scroll-pbs`,`scroll-pbe`,`scroll-pt`,`scroll-pr`,`scroll-pb`,`scroll-pl`],"scroll-px":[`scroll-pr`,`scroll-pl`],"scroll-py":[`scroll-pt`,`scroll-pb`],touch:[`touch-x`,`touch-y`,`touch-pz`],"touch-x":[`touch`],"touch-y":[`touch`],"touch-pz":[`touch`]},conflictingClassGroupModifiers:{"font-size":[`leading`]},postfixLookupClassGroups:[`container-type`],orderSensitiveModifiers:[`*`,`**`,`after`,`backdrop`,`before`,`details-content`,`file`,`first-letter`,`first-line`,`marker`,`placeholder`,`selection`]}});function Z(...e){return _x(Vv(e))}var vx=Nv,yx=j.forwardRef(({className:e,...t},n)=>(0,M.jsx)(Pv,{ref:n,className:Z(`fixed top-0 z-[100] flex max-h-screen w-full flex-col-reverse p-4 sm:bottom-0 sm:right-0 sm:top-auto sm:flex-col md:max-w-[420px]`,e),...t}));yx.displayName=Pv.displayName;var bx=Wv(`group pointer-events-auto relative flex w-full items-center justify-between space-x-4 overflow-hidden rounded-md border p-6 pr-8 shadow-lg transition-all data-[swipe=cancel]:translate-x-0 data-[swipe=end]:translate-x-[var(--radix-toast-swipe-end-x)] data-[swipe=move]:translate-x-[var(--radix-toast-swipe-move-x)] data-[swipe=move]:transition-none data-[state=open]:animate-in data-[state=closed]:animate-out data-[swipe=end]:animate-out data-[state=closed]:fade-out-80 data-[state=closed]:slide-out-to-right-full data-[state=open]:slide-in-from-top-full data-[state=open]:sm:slide-in-from-bottom-full`,{variants:{variant:{default:`border bg-background text-foreground`,destructive:`destructive group border-destructive bg-destructive text-destructive-foreground`}},defaultVariants:{variant:`default`}}),xx=j.forwardRef(({className:e,variant:t,...n},r)=>(0,M.jsx)(Fv,{ref:r,className:Z(bx({variant:t}),e),...n}));xx.displayName=Fv.displayName;var Sx=j.forwardRef(({className:e,...t},n)=>(0,M.jsx)(Rv,{ref:n,className:Z(`inline-flex h-8 shrink-0 items-center justify-center rounded-md border bg-transparent px-3 text-sm font-medium ring-offset-background transition-colors hover:bg-secondary focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 group-[.destructive]:border-muted/40 group-[.destructive]:hover:border-destructive/30 group-[.destructive]:hover:bg-destructive group-[.destructive]:hover:text-destructive-foreground group-[.destructive]:focus:ring-destructive`,e),...t}));Sx.displayName=Rv.displayName;var Cx=j.forwardRef(({className:e,...t},n)=>(0,M.jsx)(zv,{ref:n,className:Z(`absolute right-2 top-2 rounded-md p-1 text-foreground/50 opacity-0 transition-opacity hover:text-foreground focus:opacity-100 focus:outline-none focus:ring-2 group-hover:opacity-100 group-[.destructive]:text-red-300 group-[.destructive]:hover:text-red-50 group-[.destructive]:focus:ring-red-400 group-[.destructive]:focus:ring-offset-red-600`,e),"toast-close":``,...t,children:(0,M.jsx)(Gy,{className:`h-4 w-4`})}));Cx.displayName=zv.displayName;var wx=j.forwardRef(({className:e,...t},n)=>(0,M.jsx)(Iv,{ref:n,className:Z(`text-sm font-semibold`,e),...t}));wx.displayName=Iv.displayName;var Tx=j.forwardRef(({className:e,...t},n)=>(0,M.jsx)(Lv,{ref:n,className:Z(`text-sm opacity-90`,e),...t}));Tx.displayName=Lv.displayName;function Ex(){let{toasts:e}=Yg();return(0,M.jsxs)(vx,{children:[e.map(function({id:e,title:t,description:n,action:r,...i}){return(0,M.jsxs)(xx,{...i,children:[(0,M.jsxs)(`div`,{className:`grid gap-1`,children:[t&&(0,M.jsx)(wx,{children:t}),n&&(0,M.jsx)(Tx,{children:n})]}),r,(0,M.jsx)(Cx,{})]},e)}),(0,M.jsx)(yx,{})]})}var Dx=Symbol.for(`react.lazy`),Ox=j.use;function kx(e){return typeof e==`object`&&!!e&&`then`in e}function Ax(e){return typeof e==`object`&&!!e&&`$$typeof`in e&&e.$$typeof===Dx&&`_payload`in e&&kx(e._payload)}function jx(e){let t=Nx(e),n=j.forwardRef((e,n)=>{let{children:r,...i}=e;Ax(r)&&typeof Ox==`function`&&(r=Ox(r._payload));let a=j.Children.toArray(r),o=a.find(Fx);if(o){let e=o.props.children,r=a.map(t=>t===o?j.Children.count(e)>1?j.Children.only(null):j.isValidElement(e)?e.props.children:null:t);return(0,M.jsx)(t,{...i,ref:n,children:j.isValidElement(e)?j.cloneElement(e,void 0,r):null})}return(0,M.jsx)(t,{...i,ref:n,children:r})});return n.displayName=`${e}.Slot`,n}var Mx=jx(`Slot`);function Nx(e){let t=j.forwardRef((e,t)=>{let{children:n,...r}=e;if(Ax(n)&&typeof Ox==`function`&&(n=Ox(n._payload)),j.isValidElement(n)){let e=Lx(n),i=Ix(r,n.props);return n.type!==j.Fragment&&(i.ref=t?Zg(t,e):e),j.cloneElement(n,i)}return j.Children.count(n)>1?j.Children.only(null):null});return t.displayName=`${e}.SlotClone`,t}var Px=Symbol(`radix.slottable`);function Fx(e){return j.isValidElement(e)&&typeof e.type==`function`&&`__radixId`in e.type&&e.type.__radixId===Px}function Ix(e,t){let n={...t};for(let r in t){let i=e[r],a=t[r];/^on[A-Z]/.test(r)?i&&a?n[r]=(...e)=>{let t=a(...e);return i(...e),t}:i&&(n[r]=i):r===`style`?n[r]={...i,...a}:r===`className`&&(n[r]=[i,a].filter(Boolean).join(` `))}return{...e,...n}}function Lx(e){let t=Object.getOwnPropertyDescriptor(e.props,`ref`)?.get,n=t&&`isReactWarning`in t&&t.isReactWarning;return n?e.ref:(t=Object.getOwnPropertyDescriptor(e,`ref`)?.get,n=t&&`isReactWarning`in t&&t.isReactWarning,n?e.props.ref:e.props.ref||e.ref)}var Rx=768;function zx(){let[e,t]=j.useState(void 0);return j.useEffect(()=>{let e=window.matchMedia(`(max-width: ${Rx-1}px)`),n=()=>{t(window.innerWidth<Rx)};return e.addEventListener(`change`,n),t(window.innerWidth<Rx),()=>e.removeEventListener(`change`,n)},[]),!!e}var Bx=Wv(`inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0`,{variants:{variant:{default:`bg-primary text-primary-foreground shadow hover:bg-primary/90`,destructive:`bg-destructive text-destructive-foreground shadow-sm hover:bg-destructive/90`,outline:`border border-input bg-background shadow-sm hover:bg-accent hover:text-accent-foreground`,secondary:`bg-secondary text-secondary-foreground shadow-sm hover:bg-secondary/80`,ghost:`hover:bg-accent hover:text-accent-foreground`,link:`text-primary underline-offset-4 hover:underline`},size:{default:`h-9 px-4 py-2`,sm:`h-8 rounded-md px-3 text-xs`,lg:`h-10 rounded-md px-8`,icon:`h-9 w-9`}},defaultVariants:{variant:`default`,size:`default`}}),Q=j.forwardRef(({className:e,variant:t,size:n,asChild:r=!1,...i},a)=>(0,M.jsx)(r?Mx:`button`,{className:Z(Bx({variant:t,size:n,className:e})),ref:a,...i}));Q.displayName=`Button`;var Vx=j.forwardRef(({className:e,type:t,...n},r)=>(0,M.jsx)(`input`,{type:t,className:Z(`flex h-9 w-full rounded-md border border-input bg-transparent px-3 py-1 text-sm shadow-sm transition-colors file:border-0 file:bg-transparent file:text-sm file:font-medium placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50`,e),ref:r,...n}));Vx.displayName=`Input`;var Hx=[`a`,`button`,`div`,`form`,`h2`,`h3`,`img`,`input`,`label`,`li`,`nav`,`ol`,`p`,`select`,`span`,`svg`,`ul`].reduce((e,t)=>{let n=jx(`Primitive.${t}`),r=j.forwardRef((e,r)=>{let{asChild:i,...a}=e,o=i?n:t;return typeof window<`u`&&(window[Symbol.for(`radix-ui`)]=!0),(0,M.jsx)(o,{...a,ref:r})});return r.displayName=`Primitive.${t}`,{...e,[t]:r}},{}),Ux=`Separator`,Wx=`horizontal`,Gx=[`horizontal`,`vertical`],Kx=j.forwardRef((e,t)=>{let{decorative:n,orientation:r=Wx,...i}=e,a=qx(r)?r:Wx,o=n?{role:`none`}:{"aria-orientation":a===`vertical`?a:void 0,role:`separator`};return(0,M.jsx)(Hx.div,{"data-orientation":a,...o,...i,ref:t})});Kx.displayName=Ux;function qx(e){return Gx.includes(e)}var Jx=Kx,Yx=j.forwardRef(({className:e,orientation:t=`horizontal`,decorative:n=!0,...r},i)=>(0,M.jsx)(Jx,{ref:i,decorative:n,orientation:t,className:Z(`shrink-0 bg-border`,t===`horizontal`?`h-[1px] w-full`:`h-full w-[1px]`,e),...r}));Yx.displayName=Jx.displayName;var Xx=j.useId||(()=>void 0),Zx=0;function Qx(e){let[t,n]=j.useState(Xx());return k_(()=>{e||n(e=>e??String(Zx++))},[e]),e||(t?`radix-${t}`:``)}var $x=`focusScope.autoFocusOnMount`,eS=`focusScope.autoFocusOnUnmount`,tS={bubbles:!1,cancelable:!0},nS=`FocusScope`,rS=j.forwardRef((e,t)=>{let{loop:n=!1,trapped:r=!1,onMountAutoFocus:i,onUnmountAutoFocus:a,...o}=e,[s,c]=j.useState(null),l=f_(i),u=f_(a),d=j.useRef(null),f=Qg(t,e=>c(e)),p=j.useRef({paused:!1,pause(){this.paused=!0},resume(){this.paused=!1}}).current;j.useEffect(()=>{if(r){let e=function(e){if(p.paused||!s)return;let t=e.target;s.contains(t)?d.current=t:uS(d.current,{select:!0})},t=function(e){if(p.paused||!s)return;let t=e.relatedTarget;t!==null&&(s.contains(t)||uS(d.current,{select:!0}))},n=function(e){if(document.activeElement===document.body)for(let t of e)t.removedNodes.length>0&&uS(s)};document.addEventListener(`focusin`,e),document.addEventListener(`focusout`,t);let r=new MutationObserver(n);return s&&r.observe(s,{childList:!0,subtree:!0}),()=>{document.removeEventListener(`focusin`,e),document.removeEventListener(`focusout`,t),r.disconnect()}}},[r,s,p.paused]),j.useEffect(()=>{if(s){dS.add(p);let e=document.activeElement;if(!s.contains(e)){let t=new CustomEvent($x,tS);s.addEventListener($x,l),s.dispatchEvent(t),t.defaultPrevented||(iS(mS(oS(s)),{select:!0}),document.activeElement===e&&uS(s))}return()=>{s.removeEventListener($x,l),setTimeout(()=>{let t=new CustomEvent(eS,tS);s.addEventListener(eS,u),s.dispatchEvent(t),t.defaultPrevented||uS(e??document.body,{select:!0}),s.removeEventListener(eS,u),dS.remove(p)},0)}}},[s,l,u,p]);let m=j.useCallback(e=>{if(!n&&!r||p.paused)return;let t=e.key===`Tab`&&!e.altKey&&!e.ctrlKey&&!e.metaKey,i=document.activeElement;if(t&&i){let t=e.currentTarget,[r,a]=aS(t);r&&a?!e.shiftKey&&i===a?(e.preventDefault(),n&&uS(r,{select:!0})):e.shiftKey&&i===r&&(e.preventDefault(),n&&uS(a,{select:!0})):i===t&&e.preventDefault()}},[n,r,p.paused]);return(0,M.jsx)(u_.div,{tabIndex:-1,...o,ref:f,onKeyDown:m})});rS.displayName=nS;function iS(e,{select:t=!1}={}){let n=document.activeElement;for(let r of e)if(uS(r,{select:t}),document.activeElement!==n)return}function aS(e){let t=oS(e);return[sS(t,e),sS(t.reverse(),e)]}function oS(e){let t=[],n=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,{acceptNode:e=>{let t=e.tagName===`INPUT`&&e.type===`hidden`;return e.disabled||e.hidden||t?NodeFilter.FILTER_SKIP:e.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});for(;n.nextNode();)t.push(n.currentNode);return t}function sS(e,t){for(let n of e)if(!cS(n,{upTo:t}))return n}function cS(e,{upTo:t}){if(getComputedStyle(e).visibility===`hidden`)return!0;for(;e;){if(t!==void 0&&e===t)return!1;if(getComputedStyle(e).display===`none`)return!0;e=e.parentElement}return!1}function lS(e){return e instanceof HTMLInputElement&&`select`in e}function uS(e,{select:t=!1}={}){if(e&&e.focus){let n=document.activeElement;e.focus({preventScroll:!0}),e!==n&&lS(e)&&t&&e.select()}}var dS=fS();function fS(){let e=[];return{add(t){let n=e[0];t!==n&&n?.pause(),e=pS(e,t),e.unshift(t)},remove(t){e=pS(e,t),e[0]?.resume()}}}function pS(e,t){let n=[...e],r=n.indexOf(t);return r!==-1&&n.splice(r,1),n}function mS(e){return e.filter(e=>e.tagName!==`A`)}var hS=0;function gS(){j.useEffect(()=>{let e=document.querySelectorAll(`[data-radix-focus-guard]`);return document.body.insertAdjacentElement(`afterbegin`,e[0]??_S()),document.body.insertAdjacentElement(`beforeend`,e[1]??_S()),hS++,()=>{hS===1&&document.querySelectorAll(`[data-radix-focus-guard]`).forEach(e=>e.remove()),hS--}},[])}function _S(){let e=document.createElement(`span`);return e.setAttribute(`data-radix-focus-guard`,``),e.tabIndex=0,e.style.outline=`none`,e.style.opacity=`0`,e.style.position=`fixed`,e.style.pointerEvents=`none`,e}var vS=function(){return vS=Object.assign||function(e){for(var t,n=1,r=arguments.length;n<r;n++)for(var i in t=arguments[n],t)Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i]);return e},vS.apply(this,arguments)};function yS(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols==`function`)for(var i=0,r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]]);return n}function bS(e,t,n){if(n||arguments.length===2)for(var r=0,i=t.length,a;r<i;r++)(a||!(r in t))&&(a||=Array.prototype.slice.call(t,0,r),a[r]=t[r]);return e.concat(a||Array.prototype.slice.call(t))}var xS=`right-scroll-bar-position`,SS=`width-before-scroll-bar`,CS=`with-scroll-bars-hidden`,wS=`--removed-body-scroll-bar-size`;function TS(e,t){return typeof e==`function`?e(t):e&&(e.current=t),e}function ES(e,t){var n=(0,j.useState)(function(){return{value:e,callback:t,facade:{get current(){return n.value},set current(e){var t=n.value;t!==e&&(n.value=e,n.callback(e,t))}}}})[0];return n.callback=t,n.facade}var DS=typeof window<`u`?j.useLayoutEffect:j.useEffect,OS=new WeakMap;function kS(e,t){var n=ES(t||null,function(t){return e.forEach(function(e){return TS(e,t)})});return DS(function(){var t=OS.get(n);if(t){var r=new Set(t),i=new Set(e),a=n.current;r.forEach(function(e){i.has(e)||TS(e,null)}),i.forEach(function(e){r.has(e)||TS(e,a)})}OS.set(n,e)},[e]),n}function AS(e){return e}function jS(e,t){t===void 0&&(t=AS);var n=[],r=!1;return{read:function(){if(r)throw Error("Sidecar: could not `read` from an `assigned` medium. `read` could be used only with `useMedium`.");return n.length?n[n.length-1]:e},useMedium:function(e){var i=t(e,r);return n.push(i),function(){n=n.filter(function(e){return e!==i})}},assignSyncMedium:function(e){for(r=!0;n.length;){var t=n;n=[],t.forEach(e)}n={push:function(t){return e(t)},filter:function(){return n}}},assignMedium:function(e){r=!0;var t=[];if(n.length){var i=n;n=[],i.forEach(e),t=n}var a=function(){var n=t;t=[],n.forEach(e)},o=function(){return Promise.resolve().then(a)};o(),n={push:function(e){t.push(e),o()},filter:function(e){return t=t.filter(e),n}}}}}function MS(e){e===void 0&&(e={});var t=jS(null);return t.options=vS({async:!0,ssr:!1},e),t}var NS=function(e){var t=e.sideCar,n=yS(e,[`sideCar`]);if(!t)throw Error("Sidecar: please provide `sideCar` property to import the right car");var r=t.read();if(!r)throw Error(`Sidecar medium not found`);return j.createElement(r,vS({},n))};NS.isSideCarExport=!0;function PS(e,t){return e.useMedium(t),NS}var FS=MS(),IS=function(){},LS=j.forwardRef(function(e,t){var n=j.useRef(null),r=j.useState({onScrollCapture:IS,onWheelCapture:IS,onTouchMoveCapture:IS}),i=r[0],a=r[1],o=e.forwardProps,s=e.children,c=e.className,l=e.removeScrollBar,u=e.enabled,d=e.shards,f=e.sideCar,p=e.noRelative,m=e.noIsolation,h=e.inert,g=e.allowPinchZoom,_=e.as,v=_===void 0?`div`:_,y=e.gapMode,b=yS(e,[`forwardProps`,`children`,`className`,`removeScrollBar`,`enabled`,`shards`,`sideCar`,`noRelative`,`noIsolation`,`inert`,`allowPinchZoom`,`as`,`gapMode`]),x=f,S=kS([n,t]),C=vS(vS({},b),i);return j.createElement(j.Fragment,null,u&&j.createElement(x,{sideCar:FS,removeScrollBar:l,shards:d,noRelative:p,noIsolation:m,inert:h,setCallbacks:a,allowPinchZoom:!!g,lockRef:n,gapMode:y}),o?j.cloneElement(j.Children.only(s),vS(vS({},C),{ref:S})):j.createElement(v,vS({},C,{className:c,ref:S}),s))});LS.defaultProps={enabled:!0,removeScrollBar:!0,inert:!1},LS.classNames={fullWidth:SS,zeroRight:xS};var RS,zS=function(){if(RS)return RS;if(typeof __webpack_nonce__<`u`)return __webpack_nonce__};function BS(){if(!document)return null;var e=document.createElement(`style`);e.type=`text/css`;var t=zS();return t&&e.setAttribute(`nonce`,t),e}function VS(e,t){e.styleSheet?e.styleSheet.cssText=t:e.appendChild(document.createTextNode(t))}function HS(e){(document.head||document.getElementsByTagName(`head`)[0]).appendChild(e)}var US=function(){var e=0,t=null;return{add:function(n){e==0&&(t=BS())&&(VS(t,n),HS(t)),e++},remove:function(){e--,!e&&t&&(t.parentNode&&t.parentNode.removeChild(t),t=null)}}},WS=function(){var e=US();return function(t,n){j.useEffect(function(){return e.add(t),function(){e.remove()}},[t&&n])}},GS=function(){var e=WS();return function(t){var n=t.styles,r=t.dynamic;return e(n,r),null}},KS={left:0,top:0,right:0,gap:0},qS=function(e){return parseInt(e||``,10)||0},JS=function(e){var t=window.getComputedStyle(document.body),n=t[e===`padding`?`paddingLeft`:`marginLeft`],r=t[e===`padding`?`paddingTop`:`marginTop`],i=t[e===`padding`?`paddingRight`:`marginRight`];return[qS(n),qS(r),qS(i)]},YS=function(e){if(e===void 0&&(e=`margin`),typeof window>`u`)return KS;var t=JS(e),n=document.documentElement.clientWidth,r=window.innerWidth;return{left:t[0],top:t[1],right:t[2],gap:Math.max(0,r-n+t[2]-t[0])}},XS=GS(),ZS=`data-scroll-locked`,QS=function(e,t,n,r){var i=e.left,a=e.top,o=e.right,s=e.gap;return n===void 0&&(n=`margin`),`
74
74
  .${CS} {
75
75
  overflow: hidden ${r};
76
76
  padding-right: ${s}px ${r};
@@ -114,5 +114,5 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
114
114
 
115
115
  If you want to hide the \`${t.titleName}\`, you can wrap it with our VisuallyHidden component.
116
116
 
117
- For more information, see https://radix-ui.com/primitives/docs/components/${t.docsSlug}`;return j.useEffect(()=>{e&&(document.getElementById(e)||console.error(n))},[n,e]),null},mw=`DialogDescriptionWarning`,hw=({contentRef:e,descriptionId:t})=>{let n=`Warning: Missing \`Description\` or \`aria-describedby={undefined}\` for {${fw(mw).contentName}}.`;return j.useEffect(()=>{let r=e.current?.getAttribute(`aria-describedby`);t&&r&&(document.getElementById(t)||console.warn(n))},[n,e,t]),null},gw=VC,_w=qC,vw=YC,yw=$C,bw=iw,xw=ow,Sw=cw,Cw=gw,ww=_w,Tw=j.forwardRef(({className:e,...t},n)=>(0,M.jsx)(vw,{className:Z(`fixed inset-0 z-50 bg-black/80 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0`,e),...t,ref:n}));Tw.displayName=vw.displayName;var Ew=Wv(`fixed z-50 gap-4 bg-background p-6 shadow-lg transition ease-in-out data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:duration-300 data-[state=open]:duration-500`,{variants:{side:{top:`inset-x-0 top-0 border-b data-[state=closed]:slide-out-to-top data-[state=open]:slide-in-from-top`,bottom:`inset-x-0 bottom-0 border-t data-[state=closed]:slide-out-to-bottom data-[state=open]:slide-in-from-bottom`,left:`inset-y-0 left-0 h-full w-3/4 border-r data-[state=closed]:slide-out-to-left data-[state=open]:slide-in-from-left sm:max-w-sm`,right:`inset-y-0 right-0 h-full w-3/4 border-l data-[state=closed]:slide-out-to-right data-[state=open]:slide-in-from-right sm:max-w-sm`}},defaultVariants:{side:`right`}}),Dw=j.forwardRef(({side:e=`right`,className:t,children:n,...r},i)=>(0,M.jsxs)(ww,{children:[(0,M.jsx)(Tw,{}),(0,M.jsxs)(yw,{ref:i,className:Z(Ew({side:e}),t),...r,children:[n,(0,M.jsxs)(Sw,{className:`absolute right-4 top-4 rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none data-[state=open]:bg-secondary`,children:[(0,M.jsx)(Gy,{className:`h-4 w-4`}),(0,M.jsx)(`span`,{className:`sr-only`,children:`Close`})]})]})]}));Dw.displayName=yw.displayName;var Ow=({className:e,...t})=>(0,M.jsx)(`div`,{className:Z(`flex flex-col space-y-2 text-center sm:text-left`,e),...t});Ow.displayName=`SheetHeader`;var kw=({className:e,...t})=>(0,M.jsx)(`div`,{className:Z(`flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2`,e),...t});kw.displayName=`SheetFooter`;var Aw=j.forwardRef(({className:e,...t},n)=>(0,M.jsx)(bw,{ref:n,className:Z(`text-lg font-semibold text-foreground`,e),...t}));Aw.displayName=bw.displayName;var jw=j.forwardRef(({className:e,...t},n)=>(0,M.jsx)(xw,{ref:n,className:Z(`text-sm text-muted-foreground`,e),...t}));jw.displayName=xw.displayName;function Mw({className:e,...t}){return(0,M.jsx)(`div`,{className:Z(`bg-muted animate-pulse rounded-md`,e),...t})}var Nw=[`top`,`right`,`bottom`,`left`],Pw=Math.min,Fw=Math.max,Iw=Math.round,Lw=Math.floor,Rw=e=>({x:e,y:e}),zw={left:`right`,right:`left`,bottom:`top`,top:`bottom`};function Bw(e,t,n){return Fw(e,Pw(t,n))}function Vw(e,t){return typeof e==`function`?e(t):e}function Hw(e){return e.split(`-`)[0]}function Uw(e){return e.split(`-`)[1]}function Ww(e){return e===`x`?`y`:`x`}function Gw(e){return e===`y`?`height`:`width`}function Kw(e){let t=e[0];return t===`t`||t===`b`?`y`:`x`}function qw(e){return Ww(Kw(e))}function Jw(e,t,n){n===void 0&&(n=!1);let r=Uw(e),i=qw(e),a=Gw(i),o=i===`x`?r===(n?`end`:`start`)?`right`:`left`:r===`start`?`bottom`:`top`;return t.reference[a]>t.floating[a]&&(o=rT(o)),[o,rT(o)]}function Yw(e){let t=rT(e);return[Xw(e),t,Xw(t)]}function Xw(e){return e.includes(`start`)?e.replace(`start`,`end`):e.replace(`end`,`start`)}var Zw=[`left`,`right`],Qw=[`right`,`left`],$w=[`top`,`bottom`],eT=[`bottom`,`top`];function tT(e,t,n){switch(e){case`top`:case`bottom`:return n?t?Qw:Zw:t?Zw:Qw;case`left`:case`right`:return t?$w:eT;default:return[]}}function nT(e,t,n,r){let i=Uw(e),a=tT(Hw(e),n===`start`,r);return i&&(a=a.map(e=>e+`-`+i),t&&(a=a.concat(a.map(Xw)))),a}function rT(e){let t=Hw(e);return zw[t]+e.slice(t.length)}function iT(e){return{top:0,right:0,bottom:0,left:0,...e}}function aT(e){return typeof e==`number`?{top:e,right:e,bottom:e,left:e}:iT(e)}function oT(e){let{x:t,y:n,width:r,height:i}=e;return{width:r,height:i,top:n,left:t,right:t+r,bottom:n+i,x:t,y:n}}function sT(e,t,n){let{reference:r,floating:i}=e,a=Kw(t),o=qw(t),s=Gw(o),c=Hw(t),l=a===`y`,u=r.x+r.width/2-i.width/2,d=r.y+r.height/2-i.height/2,f=r[s]/2-i[s]/2,p;switch(c){case`top`:p={x:u,y:r.y-i.height};break;case`bottom`:p={x:u,y:r.y+r.height};break;case`right`:p={x:r.x+r.width,y:d};break;case`left`:p={x:r.x-i.width,y:d};break;default:p={x:r.x,y:r.y}}switch(Uw(t)){case`start`:p[o]-=f*(n&&l?-1:1);break;case`end`:p[o]+=f*(n&&l?-1:1);break}return p}async function cT(e,t){t===void 0&&(t={});let{x:n,y:r,platform:i,rects:a,elements:o,strategy:s}=e,{boundary:c=`clippingAncestors`,rootBoundary:l=`viewport`,elementContext:u=`floating`,altBoundary:d=!1,padding:f=0}=Vw(t,e),p=aT(f),m=o[d?u===`floating`?`reference`:`floating`:u],h=oT(await i.getClippingRect({element:await(i.isElement==null?void 0:i.isElement(m))??!0?m:m.contextElement||await(i.getDocumentElement==null?void 0:i.getDocumentElement(o.floating)),boundary:c,rootBoundary:l,strategy:s})),g=u===`floating`?{x:n,y:r,width:a.floating.width,height:a.floating.height}:a.reference,_=await(i.getOffsetParent==null?void 0:i.getOffsetParent(o.floating)),v=await(i.isElement==null?void 0:i.isElement(_))&&await(i.getScale==null?void 0:i.getScale(_))||{x:1,y:1},y=oT(i.convertOffsetParentRelativeRectToViewportRelativeRect?await i.convertOffsetParentRelativeRectToViewportRelativeRect({elements:o,rect:g,offsetParent:_,strategy:s}):g);return{top:(h.top-y.top+p.top)/v.y,bottom:(y.bottom-h.bottom+p.bottom)/v.y,left:(h.left-y.left+p.left)/v.x,right:(y.right-h.right+p.right)/v.x}}var lT=50,uT=async(e,t,n)=>{let{placement:r=`bottom`,strategy:i=`absolute`,middleware:a=[],platform:o}=n,s=o.detectOverflow?o:{...o,detectOverflow:cT},c=await(o.isRTL==null?void 0:o.isRTL(t)),l=await o.getElementRects({reference:e,floating:t,strategy:i}),{x:u,y:d}=sT(l,r,c),f=r,p=0,m={};for(let n=0;n<a.length;n++){let h=a[n];if(!h)continue;let{name:g,fn:_}=h,{x:v,y,data:b,reset:x}=await _({x:u,y:d,initialPlacement:r,placement:f,strategy:i,middlewareData:m,rects:l,platform:s,elements:{reference:e,floating:t}});u=v??u,d=y??d,m[g]={...m[g],...b},x&&p<lT&&(p++,typeof x==`object`&&(x.placement&&(f=x.placement),x.rects&&(l=x.rects===!0?await o.getElementRects({reference:e,floating:t,strategy:i}):x.rects),{x:u,y:d}=sT(l,f,c)),n=-1)}return{x:u,y:d,placement:f,strategy:i,middlewareData:m}},dT=e=>({name:`arrow`,options:e,async fn(t){let{x:n,y:r,placement:i,rects:a,platform:o,elements:s,middlewareData:c}=t,{element:l,padding:u=0}=Vw(e,t)||{};if(l==null)return{};let d=aT(u),f={x:n,y:r},p=qw(i),m=Gw(p),h=await o.getDimensions(l),g=p===`y`,_=g?`top`:`left`,v=g?`bottom`:`right`,y=g?`clientHeight`:`clientWidth`,b=a.reference[m]+a.reference[p]-f[p]-a.floating[m],x=f[p]-a.reference[p],S=await(o.getOffsetParent==null?void 0:o.getOffsetParent(l)),C=S?S[y]:0;(!C||!await(o.isElement==null?void 0:o.isElement(S)))&&(C=s.floating[y]||a.floating[m]);let w=b/2-x/2,T=C/2-h[m]/2-1,E=Pw(d[_],T),D=Pw(d[v],T),O=E,ee=C-h[m]-D,te=C/2-h[m]/2+w,ne=Bw(O,te,ee),re=!c.arrow&&Uw(i)!=null&&te!==ne&&a.reference[m]/2-(te<O?E:D)-h[m]/2<0,ie=re?te<O?te-O:te-ee:0;return{[p]:f[p]+ie,data:{[p]:ne,centerOffset:te-ne-ie,...re&&{alignmentOffset:ie}},reset:re}}}),fT=function(e){return e===void 0&&(e={}),{name:`flip`,options:e,async fn(t){var n;let{placement:r,middlewareData:i,rects:a,initialPlacement:o,platform:s,elements:c}=t,{mainAxis:l=!0,crossAxis:u=!0,fallbackPlacements:d,fallbackStrategy:f=`bestFit`,fallbackAxisSideDirection:p=`none`,flipAlignment:m=!0,...h}=Vw(e,t);if((n=i.arrow)!=null&&n.alignmentOffset)return{};let g=Hw(r),_=Kw(o),v=Hw(o)===o,y=await(s.isRTL==null?void 0:s.isRTL(c.floating)),b=d||(v||!m?[rT(o)]:Yw(o)),x=p!==`none`;!d&&x&&b.push(...nT(o,m,p,y));let S=[o,...b],C=await s.detectOverflow(t,h),w=[],T=i.flip?.overflows||[];if(l&&w.push(C[g]),u){let e=Jw(r,a,y);w.push(C[e[0]],C[e[1]])}if(T=[...T,{placement:r,overflows:w}],!w.every(e=>e<=0)){let e=(i.flip?.index||0)+1,t=S[e];if(t&&(!(u===`alignment`&&_!==Kw(t))||T.every(e=>Kw(e.placement)===_?e.overflows[0]>0:!0)))return{data:{index:e,overflows:T},reset:{placement:t}};let n=T.filter(e=>e.overflows[0]<=0).sort((e,t)=>e.overflows[1]-t.overflows[1])[0]?.placement;if(!n)switch(f){case`bestFit`:{let e=T.filter(e=>{if(x){let t=Kw(e.placement);return t===_||t===`y`}return!0}).map(e=>[e.placement,e.overflows.filter(e=>e>0).reduce((e,t)=>e+t,0)]).sort((e,t)=>e[1]-t[1])[0]?.[0];e&&(n=e);break}case`initialPlacement`:n=o;break}if(r!==n)return{reset:{placement:n}}}return{}}}};function pT(e,t){return{top:e.top-t.height,right:e.right-t.width,bottom:e.bottom-t.height,left:e.left-t.width}}function mT(e){return Nw.some(t=>e[t]>=0)}var hT=function(e){return e===void 0&&(e={}),{name:`hide`,options:e,async fn(t){let{rects:n,platform:r}=t,{strategy:i=`referenceHidden`,...a}=Vw(e,t);switch(i){case`referenceHidden`:{let e=pT(await r.detectOverflow(t,{...a,elementContext:`reference`}),n.reference);return{data:{referenceHiddenOffsets:e,referenceHidden:mT(e)}}}case`escaped`:{let e=pT(await r.detectOverflow(t,{...a,altBoundary:!0}),n.floating);return{data:{escapedOffsets:e,escaped:mT(e)}}}default:return{}}}}},gT=new Set([`left`,`top`]);async function _T(e,t){let{placement:n,platform:r,elements:i}=e,a=await(r.isRTL==null?void 0:r.isRTL(i.floating)),o=Hw(n),s=Uw(n),c=Kw(n)===`y`,l=gT.has(o)?-1:1,u=a&&c?-1:1,d=Vw(t,e),{mainAxis:f,crossAxis:p,alignmentAxis:m}=typeof d==`number`?{mainAxis:d,crossAxis:0,alignmentAxis:null}:{mainAxis:d.mainAxis||0,crossAxis:d.crossAxis||0,alignmentAxis:d.alignmentAxis};return s&&typeof m==`number`&&(p=s===`end`?m*-1:m),c?{x:p*u,y:f*l}:{x:f*l,y:p*u}}var vT=function(e){return e===void 0&&(e=0),{name:`offset`,options:e,async fn(t){var n;let{x:r,y:i,placement:a,middlewareData:o}=t,s=await _T(t,e);return a===o.offset?.placement&&(n=o.arrow)!=null&&n.alignmentOffset?{}:{x:r+s.x,y:i+s.y,data:{...s,placement:a}}}}},yT=function(e){return e===void 0&&(e={}),{name:`shift`,options:e,async fn(t){let{x:n,y:r,placement:i,platform:a}=t,{mainAxis:o=!0,crossAxis:s=!1,limiter:c={fn:e=>{let{x:t,y:n}=e;return{x:t,y:n}}},...l}=Vw(e,t),u={x:n,y:r},d=await a.detectOverflow(t,l),f=Kw(Hw(i)),p=Ww(f),m=u[p],h=u[f];if(o){let e=p===`y`?`top`:`left`,t=p===`y`?`bottom`:`right`,n=m+d[e],r=m-d[t];m=Bw(n,m,r)}if(s){let e=f===`y`?`top`:`left`,t=f===`y`?`bottom`:`right`,n=h+d[e],r=h-d[t];h=Bw(n,h,r)}let g=c.fn({...t,[p]:m,[f]:h});return{...g,data:{x:g.x-n,y:g.y-r,enabled:{[p]:o,[f]:s}}}}}},bT=function(e){return e===void 0&&(e={}),{options:e,fn(t){let{x:n,y:r,placement:i,rects:a,middlewareData:o}=t,{offset:s=0,mainAxis:c=!0,crossAxis:l=!0}=Vw(e,t),u={x:n,y:r},d=Kw(i),f=Ww(d),p=u[f],m=u[d],h=Vw(s,t),g=typeof h==`number`?{mainAxis:h,crossAxis:0}:{mainAxis:0,crossAxis:0,...h};if(c){let e=f===`y`?`height`:`width`,t=a.reference[f]-a.floating[e]+g.mainAxis,n=a.reference[f]+a.reference[e]-g.mainAxis;p<t?p=t:p>n&&(p=n)}if(l){let e=f===`y`?`width`:`height`,t=gT.has(Hw(i)),n=a.reference[d]-a.floating[e]+(t&&o.offset?.[d]||0)+(t?0:g.crossAxis),r=a.reference[d]+a.reference[e]+(t?0:o.offset?.[d]||0)-(t?g.crossAxis:0);m<n?m=n:m>r&&(m=r)}return{[f]:p,[d]:m}}}},xT=function(e){return e===void 0&&(e={}),{name:`size`,options:e,async fn(t){var n,r;let{placement:i,rects:a,platform:o,elements:s}=t,{apply:c=()=>{},...l}=Vw(e,t),u=await o.detectOverflow(t,l),d=Hw(i),f=Uw(i),p=Kw(i)===`y`,{width:m,height:h}=a.floating,g,_;d===`top`||d===`bottom`?(g=d,_=f===(await(o.isRTL==null?void 0:o.isRTL(s.floating))?`start`:`end`)?`left`:`right`):(_=d,g=f===`end`?`top`:`bottom`);let v=h-u.top-u.bottom,y=m-u.left-u.right,b=Pw(h-u[g],v),x=Pw(m-u[_],y),S=!t.middlewareData.shift,C=b,w=x;if((n=t.middlewareData.shift)!=null&&n.enabled.x&&(w=y),(r=t.middlewareData.shift)!=null&&r.enabled.y&&(C=v),S&&!f){let e=Fw(u.left,0),t=Fw(u.right,0),n=Fw(u.top,0),r=Fw(u.bottom,0);p?w=m-2*(e!==0||t!==0?e+t:Fw(u.left,u.right)):C=h-2*(n!==0||r!==0?n+r:Fw(u.top,u.bottom))}await c({...t,availableWidth:w,availableHeight:C});let T=await o.getDimensions(s.floating);return m!==T.width||h!==T.height?{reset:{rects:!0}}:{}}}};function ST(){return typeof window<`u`}function CT(e){return ET(e)?(e.nodeName||``).toLowerCase():`#document`}function wT(e){var t;return(e==null||(t=e.ownerDocument)==null?void 0:t.defaultView)||window}function TT(e){return((ET(e)?e.ownerDocument:e.document)||window.document)?.documentElement}function ET(e){return ST()?e instanceof Node||e instanceof wT(e).Node:!1}function DT(e){return ST()?e instanceof Element||e instanceof wT(e).Element:!1}function OT(e){return ST()?e instanceof HTMLElement||e instanceof wT(e).HTMLElement:!1}function kT(e){return!ST()||typeof ShadowRoot>`u`?!1:e instanceof ShadowRoot||e instanceof wT(e).ShadowRoot}function AT(e){let{overflow:t,overflowX:n,overflowY:r,display:i}=VT(e);return/auto|scroll|overlay|hidden|clip/.test(t+r+n)&&i!==`inline`&&i!==`contents`}function jT(e){return/^(table|td|th)$/.test(CT(e))}function MT(e){try{if(e.matches(`:popover-open`))return!0}catch{}try{return e.matches(`:modal`)}catch{return!1}}var NT=/transform|translate|scale|rotate|perspective|filter/,PT=/paint|layout|strict|content/,FT=e=>!!e&&e!==`none`,IT;function LT(e){let t=DT(e)?VT(e):e;return FT(t.transform)||FT(t.translate)||FT(t.scale)||FT(t.rotate)||FT(t.perspective)||!zT()&&(FT(t.backdropFilter)||FT(t.filter))||NT.test(t.willChange||``)||PT.test(t.contain||``)}function RT(e){let t=UT(e);for(;OT(t)&&!BT(t);){if(LT(t))return t;if(MT(t))return null;t=UT(t)}return null}function zT(){return IT??=typeof CSS<`u`&&CSS.supports&&CSS.supports(`-webkit-backdrop-filter`,`none`),IT}function BT(e){return/^(html|body|#document)$/.test(CT(e))}function VT(e){return wT(e).getComputedStyle(e)}function HT(e){return DT(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.scrollX,scrollTop:e.scrollY}}function UT(e){if(CT(e)===`html`)return e;let t=e.assignedSlot||e.parentNode||kT(e)&&e.host||TT(e);return kT(t)?t.host:t}function WT(e){let t=UT(e);return BT(t)?e.ownerDocument?e.ownerDocument.body:e.body:OT(t)&&AT(t)?t:WT(t)}function GT(e,t,n){t===void 0&&(t=[]),n===void 0&&(n=!0);let r=WT(e),i=r===e.ownerDocument?.body,a=wT(r);if(i){let e=KT(a);return t.concat(a,a.visualViewport||[],AT(r)?r:[],e&&n?GT(e):[])}else return t.concat(r,GT(r,[],n))}function KT(e){return e.parent&&Object.getPrototypeOf(e.parent)?e.frameElement:null}function qT(e){let t=VT(e),n=parseFloat(t.width)||0,r=parseFloat(t.height)||0,i=OT(e),a=i?e.offsetWidth:n,o=i?e.offsetHeight:r,s=Iw(n)!==a||Iw(r)!==o;return s&&(n=a,r=o),{width:n,height:r,$:s}}function JT(e){return DT(e)?e:e.contextElement}function YT(e){let t=JT(e);if(!OT(t))return Rw(1);let n=t.getBoundingClientRect(),{width:r,height:i,$:a}=qT(t),o=(a?Iw(n.width):n.width)/r,s=(a?Iw(n.height):n.height)/i;return(!o||!Number.isFinite(o))&&(o=1),(!s||!Number.isFinite(s))&&(s=1),{x:o,y:s}}var XT=Rw(0);function ZT(e){let t=wT(e);return!zT()||!t.visualViewport?XT:{x:t.visualViewport.offsetLeft,y:t.visualViewport.offsetTop}}function QT(e,t,n){return t===void 0&&(t=!1),!n||t&&n!==wT(e)?!1:t}function $T(e,t,n,r){t===void 0&&(t=!1),n===void 0&&(n=!1);let i=e.getBoundingClientRect(),a=JT(e),o=Rw(1);t&&(r?DT(r)&&(o=YT(r)):o=YT(e));let s=QT(a,n,r)?ZT(a):Rw(0),c=(i.left+s.x)/o.x,l=(i.top+s.y)/o.y,u=i.width/o.x,d=i.height/o.y;if(a){let e=wT(a),t=r&&DT(r)?wT(r):r,n=e,i=KT(n);for(;i&&r&&t!==n;){let e=YT(i),t=i.getBoundingClientRect(),r=VT(i),a=t.left+(i.clientLeft+parseFloat(r.paddingLeft))*e.x,o=t.top+(i.clientTop+parseFloat(r.paddingTop))*e.y;c*=e.x,l*=e.y,u*=e.x,d*=e.y,c+=a,l+=o,n=wT(i),i=KT(n)}}return oT({width:u,height:d,x:c,y:l})}function eE(e,t){let n=HT(e).scrollLeft;return t?t.left+n:$T(TT(e)).left+n}function tE(e,t){let n=e.getBoundingClientRect();return{x:n.left+t.scrollLeft-eE(e,n),y:n.top+t.scrollTop}}function nE(e){let{elements:t,rect:n,offsetParent:r,strategy:i}=e,a=i===`fixed`,o=TT(r),s=t?MT(t.floating):!1;if(r===o||s&&a)return n;let c={scrollLeft:0,scrollTop:0},l=Rw(1),u=Rw(0),d=OT(r);if((d||!d&&!a)&&((CT(r)!==`body`||AT(o))&&(c=HT(r)),d)){let e=$T(r);l=YT(r),u.x=e.x+r.clientLeft,u.y=e.y+r.clientTop}let f=o&&!d&&!a?tE(o,c):Rw(0);return{width:n.width*l.x,height:n.height*l.y,x:n.x*l.x-c.scrollLeft*l.x+u.x+f.x,y:n.y*l.y-c.scrollTop*l.y+u.y+f.y}}function rE(e){return Array.from(e.getClientRects())}function iE(e){let t=TT(e),n=HT(e),r=e.ownerDocument.body,i=Fw(t.scrollWidth,t.clientWidth,r.scrollWidth,r.clientWidth),a=Fw(t.scrollHeight,t.clientHeight,r.scrollHeight,r.clientHeight),o=-n.scrollLeft+eE(e),s=-n.scrollTop;return VT(r).direction===`rtl`&&(o+=Fw(t.clientWidth,r.clientWidth)-i),{width:i,height:a,x:o,y:s}}var aE=25;function oE(e,t){let n=wT(e),r=TT(e),i=n.visualViewport,a=r.clientWidth,o=r.clientHeight,s=0,c=0;if(i){a=i.width,o=i.height;let e=zT();(!e||e&&t===`fixed`)&&(s=i.offsetLeft,c=i.offsetTop)}let l=eE(r);if(l<=0){let e=r.ownerDocument,t=e.body,n=getComputedStyle(t),i=e.compatMode===`CSS1Compat`&&parseFloat(n.marginLeft)+parseFloat(n.marginRight)||0,o=Math.abs(r.clientWidth-t.clientWidth-i);o<=aE&&(a-=o)}else l<=aE&&(a+=l);return{width:a,height:o,x:s,y:c}}function sE(e,t){let n=$T(e,!0,t===`fixed`),r=n.top+e.clientTop,i=n.left+e.clientLeft,a=OT(e)?YT(e):Rw(1);return{width:e.clientWidth*a.x,height:e.clientHeight*a.y,x:i*a.x,y:r*a.y}}function cE(e,t,n){let r;if(t===`viewport`)r=oE(e,n);else if(t===`document`)r=iE(TT(e));else if(DT(t))r=sE(t,n);else{let n=ZT(e);r={x:t.x-n.x,y:t.y-n.y,width:t.width,height:t.height}}return oT(r)}function lE(e,t){let n=UT(e);return n===t||!DT(n)||BT(n)?!1:VT(n).position===`fixed`||lE(n,t)}function uE(e,t){let n=t.get(e);if(n)return n;let r=GT(e,[],!1).filter(e=>DT(e)&&CT(e)!==`body`),i=null,a=VT(e).position===`fixed`,o=a?UT(e):e;for(;DT(o)&&!BT(o);){let t=VT(o),n=LT(o);!n&&t.position===`fixed`&&(i=null),(a?!n&&!i:!n&&t.position===`static`&&i&&(i.position===`absolute`||i.position===`fixed`)||AT(o)&&!n&&lE(e,o))?r=r.filter(e=>e!==o):i=t,o=UT(o)}return t.set(e,r),r}function dE(e){let{element:t,boundary:n,rootBoundary:r,strategy:i}=e,a=[...n===`clippingAncestors`?MT(t)?[]:uE(t,this._c):[].concat(n),r],o=cE(t,a[0],i),s=o.top,c=o.right,l=o.bottom,u=o.left;for(let e=1;e<a.length;e++){let n=cE(t,a[e],i);s=Fw(n.top,s),c=Pw(n.right,c),l=Pw(n.bottom,l),u=Fw(n.left,u)}return{width:c-u,height:l-s,x:u,y:s}}function fE(e){let{width:t,height:n}=qT(e);return{width:t,height:n}}function pE(e,t,n){let r=OT(t),i=TT(t),a=n===`fixed`,o=$T(e,!0,a,t),s={scrollLeft:0,scrollTop:0},c=Rw(0);function l(){c.x=eE(i)}if(r||!r&&!a)if((CT(t)!==`body`||AT(i))&&(s=HT(t)),r){let e=$T(t,!0,a,t);c.x=e.x+t.clientLeft,c.y=e.y+t.clientTop}else i&&l();a&&!r&&i&&l();let u=i&&!r&&!a?tE(i,s):Rw(0);return{x:o.left+s.scrollLeft-c.x-u.x,y:o.top+s.scrollTop-c.y-u.y,width:o.width,height:o.height}}function mE(e){return VT(e).position===`static`}function hE(e,t){if(!OT(e)||VT(e).position===`fixed`)return null;if(t)return t(e);let n=e.offsetParent;return TT(e)===n&&(n=n.ownerDocument.body),n}function gE(e,t){let n=wT(e);if(MT(e))return n;if(!OT(e)){let t=UT(e);for(;t&&!BT(t);){if(DT(t)&&!mE(t))return t;t=UT(t)}return n}let r=hE(e,t);for(;r&&jT(r)&&mE(r);)r=hE(r,t);return r&&BT(r)&&mE(r)&&!LT(r)?n:r||RT(e)||n}var _E=async function(e){let t=this.getOffsetParent||gE,n=this.getDimensions,r=await n(e.floating);return{reference:pE(e.reference,await t(e.floating),e.strategy),floating:{x:0,y:0,width:r.width,height:r.height}}};function vE(e){return VT(e).direction===`rtl`}var yE={convertOffsetParentRelativeRectToViewportRelativeRect:nE,getDocumentElement:TT,getClippingRect:dE,getOffsetParent:gE,getElementRects:_E,getClientRects:rE,getDimensions:fE,getScale:YT,isElement:DT,isRTL:vE};function bE(e,t){return e.x===t.x&&e.y===t.y&&e.width===t.width&&e.height===t.height}function xE(e,t){let n=null,r,i=TT(e);function a(){var e;clearTimeout(r),(e=n)==null||e.disconnect(),n=null}function o(s,c){s===void 0&&(s=!1),c===void 0&&(c=1),a();let l=e.getBoundingClientRect(),{left:u,top:d,width:f,height:p}=l;if(s||t(),!f||!p)return;let m=Lw(d),h=Lw(i.clientWidth-(u+f)),g=Lw(i.clientHeight-(d+p)),_=Lw(u),v={rootMargin:-m+`px `+-h+`px `+-g+`px `+-_+`px`,threshold:Fw(0,Pw(1,c))||1},y=!0;function b(t){let n=t[0].intersectionRatio;if(n!==c){if(!y)return o();n?o(!1,n):r=setTimeout(()=>{o(!1,1e-7)},1e3)}n===1&&!bE(l,e.getBoundingClientRect())&&o(),y=!1}try{n=new IntersectionObserver(b,{...v,root:i.ownerDocument})}catch{n=new IntersectionObserver(b,v)}n.observe(e)}return o(!0),a}function SE(e,t,n,r){r===void 0&&(r={});let{ancestorScroll:i=!0,ancestorResize:a=!0,elementResize:o=typeof ResizeObserver==`function`,layoutShift:s=typeof IntersectionObserver==`function`,animationFrame:c=!1}=r,l=JT(e),u=i||a?[...l?GT(l):[],...t?GT(t):[]]:[];u.forEach(e=>{i&&e.addEventListener(`scroll`,n,{passive:!0}),a&&e.addEventListener(`resize`,n)});let d=l&&s?xE(l,n):null,f=-1,p=null;o&&(p=new ResizeObserver(e=>{let[r]=e;r&&r.target===l&&p&&t&&(p.unobserve(t),cancelAnimationFrame(f),f=requestAnimationFrame(()=>{var e;(e=p)==null||e.observe(t)})),n()}),l&&!c&&p.observe(l),t&&p.observe(t));let m,h=c?$T(e):null;c&&g();function g(){let t=$T(e);h&&!bE(h,t)&&n(),h=t,m=requestAnimationFrame(g)}return n(),()=>{var e;u.forEach(e=>{i&&e.removeEventListener(`scroll`,n),a&&e.removeEventListener(`resize`,n)}),d?.(),(e=p)==null||e.disconnect(),p=null,c&&cancelAnimationFrame(m)}}var CE=vT,wE=yT,TE=fT,EE=xT,DE=hT,OE=dT,kE=bT,AE=(e,t,n)=>{let r=new Map,i={platform:yE,...n},a={...i.platform,_c:r};return uT(e,t,{...i,platform:a})},jE=typeof document<`u`?j.useLayoutEffect:function(){};function ME(e,t){if(e===t)return!0;if(typeof e!=typeof t)return!1;if(typeof e==`function`&&e.toString()===t.toString())return!0;let n,r,i;if(e&&t&&typeof e==`object`){if(Array.isArray(e)){if(n=e.length,n!==t.length)return!1;for(r=n;r--!==0;)if(!ME(e[r],t[r]))return!1;return!0}if(i=Object.keys(e),n=i.length,n!==Object.keys(t).length)return!1;for(r=n;r--!==0;)if(!{}.hasOwnProperty.call(t,i[r]))return!1;for(r=n;r--!==0;){let n=i[r];if(!(n===`_owner`&&e.$$typeof)&&!ME(e[n],t[n]))return!1}return!0}return e!==e&&t!==t}function NE(e){return typeof window>`u`?1:(e.ownerDocument.defaultView||window).devicePixelRatio||1}function PE(e,t){let n=NE(e);return Math.round(t*n)/n}function FE(e){let t=j.useRef(e);return jE(()=>{t.current=e}),t}function IE(e){e===void 0&&(e={});let{placement:t=`bottom`,strategy:n=`absolute`,middleware:r=[],platform:i,elements:{reference:a,floating:o}={},transform:s=!0,whileElementsMounted:c,open:l}=e,[u,d]=j.useState({x:0,y:0,strategy:n,placement:t,middlewareData:{},isPositioned:!1}),[f,p]=j.useState(r);ME(f,r)||p(r);let[m,h]=j.useState(null),[g,_]=j.useState(null),v=j.useCallback(e=>{e!==S.current&&(S.current=e,h(e))},[]),y=j.useCallback(e=>{e!==C.current&&(C.current=e,_(e))},[]),b=a||m,x=o||g,S=j.useRef(null),C=j.useRef(null),w=j.useRef(u),T=c!=null,E=FE(c),D=FE(i),O=FE(l),ee=j.useCallback(()=>{if(!S.current||!C.current)return;let e={placement:t,strategy:n,middleware:f};D.current&&(e.platform=D.current),AE(S.current,C.current,e).then(e=>{let t={...e,isPositioned:O.current!==!1};te.current&&!ME(w.current,t)&&(w.current=t,Ui.flushSync(()=>{d(t)}))})},[f,t,n,D,O]);jE(()=>{l===!1&&w.current.isPositioned&&(w.current.isPositioned=!1,d(e=>({...e,isPositioned:!1})))},[l]);let te=j.useRef(!1);jE(()=>(te.current=!0,()=>{te.current=!1}),[]),jE(()=>{if(b&&(S.current=b),x&&(C.current=x),b&&x){if(E.current)return E.current(b,x,ee);ee()}},[b,x,ee,E,T]);let ne=j.useMemo(()=>({reference:S,floating:C,setReference:v,setFloating:y}),[v,y]),re=j.useMemo(()=>({reference:b,floating:x}),[b,x]),ie=j.useMemo(()=>{let e={position:n,left:0,top:0};if(!re.floating)return e;let t=PE(re.floating,u.x),r=PE(re.floating,u.y);return s?{...e,transform:`translate(`+t+`px, `+r+`px)`,...NE(re.floating)>=1.5&&{willChange:`transform`}}:{position:n,left:t,top:r}},[n,s,re.floating,u.x,u.y]);return j.useMemo(()=>({...u,update:ee,refs:ne,elements:re,floatingStyles:ie}),[u,ee,ne,re,ie])}var LE=e=>{function t(e){return{}.hasOwnProperty.call(e,`current`)}return{name:`arrow`,options:e,fn(n){let{element:r,padding:i}=typeof e==`function`?e(n):e;return r&&t(r)?r.current==null?{}:OE({element:r.current,padding:i}).fn(n):r?OE({element:r,padding:i}).fn(n):{}}}},RE=(e,t)=>{let n=CE(e);return{name:n.name,fn:n.fn,options:[e,t]}},zE=(e,t)=>{let n=wE(e);return{name:n.name,fn:n.fn,options:[e,t]}},BE=(e,t)=>({fn:kE(e).fn,options:[e,t]}),VE=(e,t)=>{let n=TE(e);return{name:n.name,fn:n.fn,options:[e,t]}},HE=(e,t)=>{let n=EE(e);return{name:n.name,fn:n.fn,options:[e,t]}},UE=(e,t)=>{let n=DE(e);return{name:n.name,fn:n.fn,options:[e,t]}},WE=(e,t)=>{let n=LE(e);return{name:n.name,fn:n.fn,options:[e,t]}},GE=`Arrow`,KE=j.forwardRef((e,t)=>{let{children:n,width:r=10,height:i=5,...a}=e;return(0,M.jsx)(u_.svg,{...a,ref:t,width:r,height:i,viewBox:`0 0 30 10`,preserveAspectRatio:`none`,children:e.asChild?n:(0,M.jsx)(`polygon`,{points:`0,0 30,0 15,10`})})});KE.displayName=GE;var qE=KE;function JE(e){let[t,n]=j.useState(void 0);return k_(()=>{if(e){n({width:e.offsetWidth,height:e.offsetHeight});let t=new ResizeObserver(t=>{if(!Array.isArray(t)||!t.length)return;let r=t[0],i,a;if(`borderBoxSize`in r){let e=r.borderBoxSize,t=Array.isArray(e)?e[0]:e;i=t.inlineSize,a=t.blockSize}else i=e.offsetWidth,a=e.offsetHeight;n({width:i,height:a})});return t.observe(e,{box:`border-box`}),()=>t.unobserve(e)}else n(void 0)},[e]),t}var YE=`Popper`,[XE,ZE]=e_(YE),[QE,$E]=XE(YE),eD=e=>{let{__scopePopper:t,children:n}=e,[r,i]=j.useState(null);return(0,M.jsx)(QE,{scope:t,anchor:r,onAnchorChange:i,children:n})};eD.displayName=YE;var tD=`PopperAnchor`,nD=j.forwardRef((e,t)=>{let{__scopePopper:n,virtualRef:r,...i}=e,a=$E(tD,n),o=j.useRef(null),s=Qg(t,o),c=j.useRef(null);return j.useEffect(()=>{let e=c.current;c.current=r?.current||o.current,e!==c.current&&a.onAnchorChange(c.current)}),r?null:(0,M.jsx)(u_.div,{...i,ref:s})});nD.displayName=tD;var rD=`PopperContent`,[iD,aD]=XE(rD),oD=j.forwardRef((e,t)=>{let{__scopePopper:n,side:r=`bottom`,sideOffset:i=0,align:a=`center`,alignOffset:o=0,arrowPadding:s=0,avoidCollisions:c=!0,collisionBoundary:l=[],collisionPadding:u=0,sticky:d=`partial`,hideWhenDetached:f=!1,updatePositionStrategy:p=`optimized`,onPlaced:m,...h}=e,g=$E(rD,n),[_,v]=j.useState(null),y=Qg(t,e=>v(e)),[b,x]=j.useState(null),S=JE(b),C=S?.width??0,w=S?.height??0,T=r+(a===`center`?``:`-`+a),E=typeof u==`number`?u:{top:0,right:0,bottom:0,left:0,...u},D=Array.isArray(l)?l:[l],O=D.length>0,ee={padding:E,boundary:D.filter(uD),altBoundary:O},{refs:te,floatingStyles:ne,placement:re,isPositioned:ie,middlewareData:ae}=IE({strategy:`fixed`,placement:T,whileElementsMounted:(...e)=>SE(...e,{animationFrame:p===`always`}),elements:{reference:g.anchor},middleware:[RE({mainAxis:i+w,alignmentAxis:o}),c&&zE({mainAxis:!0,crossAxis:!1,limiter:d===`partial`?BE():void 0,...ee}),c&&VE({...ee}),HE({...ee,apply:({elements:e,rects:t,availableWidth:n,availableHeight:r})=>{let{width:i,height:a}=t.reference,o=e.floating.style;o.setProperty(`--radix-popper-available-width`,`${n}px`),o.setProperty(`--radix-popper-available-height`,`${r}px`),o.setProperty(`--radix-popper-anchor-width`,`${i}px`),o.setProperty(`--radix-popper-anchor-height`,`${a}px`)}}),b&&WE({element:b,padding:s}),dD({arrowWidth:C,arrowHeight:w}),f&&UE({strategy:`referenceHidden`,...ee})]}),[oe,k]=fD(re),se=f_(m);k_(()=>{ie&&se?.()},[ie,se]);let ce=ae.arrow?.x,le=ae.arrow?.y,ue=ae.arrow?.centerOffset!==0,[A,de]=j.useState();return k_(()=>{_&&de(window.getComputedStyle(_).zIndex)},[_]),(0,M.jsx)(`div`,{ref:te.setFloating,"data-radix-popper-content-wrapper":``,style:{...ne,transform:ie?ne.transform:`translate(0, -200%)`,minWidth:`max-content`,zIndex:A,"--radix-popper-transform-origin":[ae.transformOrigin?.x,ae.transformOrigin?.y].join(` `),...ae.hide?.referenceHidden&&{visibility:`hidden`,pointerEvents:`none`}},dir:e.dir,children:(0,M.jsx)(iD,{scope:n,placedSide:oe,onArrowChange:x,arrowX:ce,arrowY:le,shouldHideArrow:ue,children:(0,M.jsx)(u_.div,{"data-side":oe,"data-align":k,...h,ref:y,style:{...h.style,animation:ie?void 0:`none`}})})})});oD.displayName=rD;var sD=`PopperArrow`,cD={top:`bottom`,right:`left`,bottom:`top`,left:`right`},lD=j.forwardRef(function(e,t){let{__scopePopper:n,...r}=e,i=aD(sD,n),a=cD[i.placedSide];return(0,M.jsx)(`span`,{ref:i.onArrowChange,style:{position:`absolute`,left:i.arrowX,top:i.arrowY,[a]:0,transformOrigin:{top:``,right:`0 0`,bottom:`center 0`,left:`100% 0`}[i.placedSide],transform:{top:`translateY(100%)`,right:`translateY(50%) rotate(90deg) translateX(-50%)`,bottom:`rotate(180deg)`,left:`translateY(50%) rotate(-90deg) translateX(50%)`}[i.placedSide],visibility:i.shouldHideArrow?`hidden`:void 0},children:(0,M.jsx)(qE,{...r,ref:t,style:{...r.style,display:`block`}})})});lD.displayName=sD;function uD(e){return e!==null}var dD=e=>({name:`transformOrigin`,options:e,fn(t){let{placement:n,rects:r,middlewareData:i}=t,a=i.arrow?.centerOffset!==0,o=a?0:e.arrowWidth,s=a?0:e.arrowHeight,[c,l]=fD(n),u={start:`0%`,center:`50%`,end:`100%`}[l],d=(i.arrow?.x??0)+o/2,f=(i.arrow?.y??0)+s/2,p=``,m=``;return c===`bottom`?(p=a?u:`${d}px`,m=`${-s}px`):c===`top`?(p=a?u:`${d}px`,m=`${r.floating.height+s}px`):c===`right`?(p=`${-s}px`,m=a?u:`${f}px`):c===`left`&&(p=`${r.floating.width+s}px`,m=a?u:`${f}px`),{data:{x:p,y:m}}}});function fD(e){let[t,n=`center`]=e.split(`-`);return[t,n]}var pD=eD,mD=nD,hD=oD,gD=lD,[_D,vD]=e_(`Tooltip`,[ZE]),yD=ZE(),bD=`TooltipProvider`,xD=700,SD=`tooltip.open`,[CD,wD]=_D(bD),TD=e=>{let{__scopeTooltip:t,delayDuration:n=xD,skipDelayDuration:r=300,disableHoverableContent:i=!1,children:a}=e,o=j.useRef(!0),s=j.useRef(!1),c=j.useRef(0);return j.useEffect(()=>{let e=c.current;return()=>window.clearTimeout(e)},[]),(0,M.jsx)(CD,{scope:t,isOpenDelayedRef:o,delayDuration:n,onOpen:j.useCallback(()=>{window.clearTimeout(c.current),o.current=!1},[]),onClose:j.useCallback(()=>{window.clearTimeout(c.current),c.current=window.setTimeout(()=>o.current=!0,r)},[r]),isPointerInTransitRef:s,onPointerInTransitChange:j.useCallback(e=>{s.current=e},[]),disableHoverableContent:i,children:a})};TD.displayName=bD;var ED=`Tooltip`,[DD,OD]=_D(ED),kD=e=>{let{__scopeTooltip:t,children:n,open:r,defaultOpen:i,onOpenChange:a,disableHoverableContent:o,delayDuration:s}=e,c=wD(ED,e.__scopeTooltip),l=yD(t),[u,d]=j.useState(null),f=Qx(),p=j.useRef(0),m=o??c.disableHoverableContent,h=s??c.delayDuration,g=j.useRef(!1),[_,v]=R_({prop:r,defaultProp:i??!1,onChange:e=>{e?(c.onOpen(),document.dispatchEvent(new CustomEvent(SD))):c.onClose(),a?.(e)},caller:ED}),y=j.useMemo(()=>_?g.current?`delayed-open`:`instant-open`:`closed`,[_]),b=j.useCallback(()=>{window.clearTimeout(p.current),p.current=0,g.current=!1,v(!0)},[v]),x=j.useCallback(()=>{window.clearTimeout(p.current),p.current=0,v(!1)},[v]),S=j.useCallback(()=>{window.clearTimeout(p.current),p.current=window.setTimeout(()=>{g.current=!0,v(!0),p.current=0},h)},[h,v]);return j.useEffect(()=>()=>{p.current&&=(window.clearTimeout(p.current),0)},[]),(0,M.jsx)(pD,{...l,children:(0,M.jsx)(DD,{scope:t,contentId:f,open:_,stateAttribute:y,trigger:u,onTriggerChange:d,onTriggerEnter:j.useCallback(()=>{c.isOpenDelayedRef.current?S():b()},[c.isOpenDelayedRef,S,b]),onTriggerLeave:j.useCallback(()=>{m?x():(window.clearTimeout(p.current),p.current=0)},[x,m]),onOpen:b,onClose:x,disableHoverableContent:m,children:n})})};kD.displayName=ED;var AD=`TooltipTrigger`,jD=j.forwardRef((e,t)=>{let{__scopeTooltip:n,...r}=e,i=OD(AD,n),a=wD(AD,n),o=yD(n),s=Qg(t,j.useRef(null),i.onTriggerChange),c=j.useRef(!1),l=j.useRef(!1),u=j.useCallback(()=>c.current=!1,[]);return j.useEffect(()=>()=>document.removeEventListener(`pointerup`,u),[u]),(0,M.jsx)(mD,{asChild:!0,...o,children:(0,M.jsx)(u_.button,{"aria-describedby":i.open?i.contentId:void 0,"data-state":i.stateAttribute,...r,ref:s,onPointerMove:J(e.onPointerMove,e=>{e.pointerType!==`touch`&&!l.current&&!a.isPointerInTransitRef.current&&(i.onTriggerEnter(),l.current=!0)}),onPointerLeave:J(e.onPointerLeave,()=>{i.onTriggerLeave(),l.current=!1}),onPointerDown:J(e.onPointerDown,()=>{i.open&&i.onClose(),c.current=!0,document.addEventListener(`pointerup`,u,{once:!0})}),onFocus:J(e.onFocus,()=>{c.current||i.onOpen()}),onBlur:J(e.onBlur,i.onClose),onClick:J(e.onClick,i.onClose)})})});jD.displayName=AD;var MD=`TooltipPortal`,[ND,PD]=_D(MD,{forceMount:void 0}),FD=e=>{let{__scopeTooltip:t,forceMount:n,children:r,container:i}=e,a=OD(MD,t);return(0,M.jsx)(ND,{scope:t,forceMount:n,children:(0,M.jsx)(N_,{present:n||a.open,children:(0,M.jsx)(j_,{asChild:!0,container:i,children:r})})})};FD.displayName=MD;var ID=`TooltipContent`,LD=j.forwardRef((e,t)=>{let n=PD(ID,e.__scopeTooltip),{forceMount:r=n.forceMount,side:i=`top`,...a}=e,o=OD(ID,e.__scopeTooltip);return(0,M.jsx)(N_,{present:r||o.open,children:o.disableHoverableContent?(0,M.jsx)(HD,{side:i,...a,ref:t}):(0,M.jsx)(RD,{side:i,...a,ref:t})})}),RD=j.forwardRef((e,t)=>{let n=OD(ID,e.__scopeTooltip),r=wD(ID,e.__scopeTooltip),i=j.useRef(null),a=Qg(t,i),[o,s]=j.useState(null),{trigger:c,onClose:l}=n,u=i.current,{onPointerInTransitChange:d}=r,f=j.useCallback(()=>{s(null),d(!1)},[d]),p=j.useCallback((e,t)=>{let n=e.currentTarget,r={x:e.clientX,y:e.clientY},i=KD(r,GD(r,n.getBoundingClientRect())),a=qD(t.getBoundingClientRect());s(YD([...i,...a])),d(!0)},[d]);return j.useEffect(()=>()=>f(),[f]),j.useEffect(()=>{if(c&&u){let e=e=>p(e,u),t=e=>p(e,c);return c.addEventListener(`pointerleave`,e),u.addEventListener(`pointerleave`,t),()=>{c.removeEventListener(`pointerleave`,e),u.removeEventListener(`pointerleave`,t)}}},[c,u,p,f]),j.useEffect(()=>{if(o){let e=e=>{let t=e.target,n={x:e.clientX,y:e.clientY},r=c?.contains(t)||u?.contains(t),i=!JD(n,o);r?f():i&&(f(),l())};return document.addEventListener(`pointermove`,e),()=>document.removeEventListener(`pointermove`,e)}},[c,u,o,l,f]),(0,M.jsx)(HD,{...e,ref:a})}),[zD,BD]=_D(ED,{isInside:!1}),VD=a_(`TooltipContent`),HD=j.forwardRef((e,t)=>{let{__scopeTooltip:n,children:r,"aria-label":i,onEscapeKeyDown:a,onPointerDownOutside:o,...s}=e,c=OD(ID,n),l=yD(n),{onClose:u}=c;return j.useEffect(()=>(document.addEventListener(SD,u),()=>document.removeEventListener(SD,u)),[u]),j.useEffect(()=>{if(c.trigger){let e=e=>{e.target?.contains(c.trigger)&&u()};return window.addEventListener(`scroll`,e,{capture:!0}),()=>window.removeEventListener(`scroll`,e,{capture:!0})}},[c.trigger,u]),(0,M.jsx)(b_,{asChild:!0,disableOutsidePointerEvents:!1,onEscapeKeyDown:a,onPointerDownOutside:o,onFocusOutside:e=>e.preventDefault(),onDismiss:u,children:(0,M.jsxs)(hD,{"data-state":c.stateAttribute,...l,...s,ref:t,style:{...s.style,"--radix-tooltip-content-transform-origin":`var(--radix-popper-transform-origin)`,"--radix-tooltip-content-available-width":`var(--radix-popper-available-width)`,"--radix-tooltip-content-available-height":`var(--radix-popper-available-height)`,"--radix-tooltip-trigger-width":`var(--radix-popper-anchor-width)`,"--radix-tooltip-trigger-height":`var(--radix-popper-anchor-height)`},children:[(0,M.jsx)(VD,{children:r}),(0,M.jsx)(zD,{scope:n,isInside:!0,children:(0,M.jsx)(W_,{id:c.contentId,role:`tooltip`,children:i||r})})]})})});LD.displayName=ID;var UD=`TooltipArrow`,WD=j.forwardRef((e,t)=>{let{__scopeTooltip:n,...r}=e,i=yD(n);return BD(UD,n).isInside?null:(0,M.jsx)(gD,{...i,...r,ref:t})});WD.displayName=UD;function GD(e,t){let n=Math.abs(t.top-e.y),r=Math.abs(t.bottom-e.y),i=Math.abs(t.right-e.x),a=Math.abs(t.left-e.x);switch(Math.min(n,r,i,a)){case a:return`left`;case i:return`right`;case n:return`top`;case r:return`bottom`;default:throw Error(`unreachable`)}}function KD(e,t,n=5){let r=[];switch(t){case`top`:r.push({x:e.x-n,y:e.y+n},{x:e.x+n,y:e.y+n});break;case`bottom`:r.push({x:e.x-n,y:e.y-n},{x:e.x+n,y:e.y-n});break;case`left`:r.push({x:e.x+n,y:e.y-n},{x:e.x+n,y:e.y+n});break;case`right`:r.push({x:e.x-n,y:e.y-n},{x:e.x-n,y:e.y+n});break}return r}function qD(e){let{top:t,right:n,bottom:r,left:i}=e;return[{x:i,y:t},{x:n,y:t},{x:n,y:r},{x:i,y:r}]}function JD(e,t){let{x:n,y:r}=e,i=!1;for(let e=0,a=t.length-1;e<t.length;a=e++){let o=t[e],s=t[a],c=o.x,l=o.y,u=s.x,d=s.y;l>r!=d>r&&n<(u-c)*(r-l)/(d-l)+c&&(i=!i)}return i}function YD(e){let t=e.slice();return t.sort((e,t)=>e.x<t.x?-1:e.x>t.x?1:e.y<t.y?-1:+(e.y>t.y)),XD(t)}function XD(e){if(e.length<=1)return e.slice();let t=[];for(let n=0;n<e.length;n++){let r=e[n];for(;t.length>=2;){let e=t[t.length-1],n=t[t.length-2];if((e.x-n.x)*(r.y-n.y)>=(e.y-n.y)*(r.x-n.x))t.pop();else break}t.push(r)}t.pop();let n=[];for(let t=e.length-1;t>=0;t--){let r=e[t];for(;n.length>=2;){let e=n[n.length-1],t=n[n.length-2];if((e.x-t.x)*(r.y-t.y)>=(e.y-t.y)*(r.x-t.x))n.pop();else break}n.push(r)}return n.pop(),t.length===1&&n.length===1&&t[0].x===n[0].x&&t[0].y===n[0].y?t:t.concat(n)}var ZD=TD,QD=kD,$D=jD,eO=LD,tO=ZD,nO=QD,rO=$D,iO=j.forwardRef(({className:e,sideOffset:t=4,...n},r)=>(0,M.jsx)(eO,{ref:r,sideOffset:t,className:Z(`z-50 overflow-hidden rounded-md border bg-popover px-3 py-1.5 text-sm text-popover-foreground shadow-md animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2`,e),...n}));iO.displayName=eO.displayName;var aO=`sidebar_state`,oO=3600*24*7,sO=`16rem`,cO=`18rem`,lO=`3rem`,uO=`b`,dO=j.createContext(null);function fO(){let e=j.useContext(dO);if(!e)throw Error(`useSidebar must be used within a SidebarProvider`);return e}var pO=j.forwardRef(({defaultOpen:e=!0,open:t,onOpenChange:n,className:r,style:i,children:a,...o},s)=>{let c=zx(),[l,u]=j.useState(!1),[d,f]=j.useState(e),p=t??d,m=j.useCallback(e=>{let t=typeof e==`function`?e(p):e;n?n(t):f(t),document.cookie=`${aO}=${t}; path=/; max-age=${oO}`},[n,p]),h=j.useCallback(()=>c?u(e=>!e):m(e=>!e),[c,m,u]);j.useEffect(()=>{let e=e=>{e.key===uO&&(e.metaKey||e.ctrlKey)&&(e.preventDefault(),h())};return window.addEventListener(`keydown`,e),()=>window.removeEventListener(`keydown`,e)},[h]);let g=p?`expanded`:`collapsed`,_=j.useMemo(()=>({state:g,open:p,setOpen:m,isMobile:c,openMobile:l,setOpenMobile:u,toggleSidebar:h}),[g,p,m,c,l,u,h]);return(0,M.jsx)(dO.Provider,{value:_,children:(0,M.jsx)(tO,{delayDuration:0,children:(0,M.jsx)(`div`,{style:{"--sidebar-width":sO,"--sidebar-width-icon":lO,...i},className:Z(`group/sidebar-wrapper has-data-[variant=inset]:bg-sidebar flex min-h-0 w-full`,r),ref:s,...o,children:a})})})});pO.displayName=`SidebarProvider`;var mO=j.forwardRef(({side:e=`left`,variant:t=`sidebar`,collapsible:n=`offcanvas`,className:r,children:i,...a},o)=>{let{isMobile:s,state:c,openMobile:l,setOpenMobile:u}=fO();return n===`none`?(0,M.jsx)(`div`,{className:Z(`bg-sidebar text-sidebar-foreground flex h-full w-[var(--sidebar-width)] flex-col`,r),ref:o,...a,children:i}):s?(0,M.jsx)(Cw,{open:l,onOpenChange:u,...a,children:(0,M.jsx)(Dw,{"data-sidebar":`sidebar`,"data-mobile":`true`,className:`bg-sidebar text-sidebar-foreground w-[var(--sidebar-width)] p-0 [&>button]:hidden`,style:{"--sidebar-width":cO},side:e,children:(0,M.jsx)(`div`,{className:`flex h-full w-full flex-col`,children:i})})}):(0,M.jsx)(`div`,{ref:o,className:Z(`bg-sidebar text-sidebar-foreground hidden md:flex h-svh w-[var(--sidebar-width)] shrink-0 flex-col border-r transition-[width] duration-200 ease-linear overflow-hidden`,c===`collapsed`&&n===`offcanvas`&&`w-0 border-0`,c===`collapsed`&&n===`icon`&&`w-[var(--sidebar-width-icon)]`,r),"data-state":c,"data-collapsible":c===`collapsed`?n:``,"data-variant":t,"data-side":e,...a,children:i})});mO.displayName=`Sidebar`;var hO=j.forwardRef(({className:e,onClick:t,...n},r)=>{let{toggleSidebar:i}=fO();return(0,M.jsxs)(Q,{ref:r,"data-sidebar":`trigger`,variant:`ghost`,size:`icon`,className:Z(`h-7 w-7`,e),onClick:e=>{t?.(e),i()},...n,children:[(0,M.jsx)(Dy,{}),(0,M.jsx)(`span`,{className:`sr-only`,children:`Toggle Sidebar`})]})});hO.displayName=`SidebarTrigger`;var gO=j.forwardRef(({className:e,...t},n)=>{let{toggleSidebar:r}=fO();return(0,M.jsx)(`button`,{ref:n,"data-sidebar":`rail`,"aria-label":`Toggle Sidebar`,tabIndex:-1,onClick:r,title:`Toggle Sidebar`,className:Z(`hover:after:bg-sidebar-border absolute inset-y-0 z-20 hidden w-4 -translate-x-1/2 transition-all ease-linear after:absolute after:inset-y-0 after:left-1/2 after:w-[2px] group-data-[side=left]:-right-4 group-data-[side=right]:left-0 sm:flex`,`[[data-side=left]_&]:cursor-w-resize [[data-side=right]_&]:cursor-e-resize`,`[[data-side=left][data-state=collapsed]_&]:cursor-e-resize [[data-side=right][data-state=collapsed]_&]:cursor-w-resize`,`group-data-[collapsible=offcanvas]:translate-x-0 group-data-[collapsible=offcanvas]:after:left-full group-data-[collapsible=offcanvas]:hover:bg-sidebar`,`[[data-side=left][data-collapsible=offcanvas]_&]:-right-2`,`[[data-side=right][data-collapsible=offcanvas]_&]:-left-2`,e),...t})});gO.displayName=`SidebarRail`;var _O=j.forwardRef(({className:e,...t},n)=>(0,M.jsx)(`main`,{ref:n,className:Z(`relative flex min-h-svh flex-1 flex-col bg-background`,`peer-data-[variant=inset]:min-h-[calc(100svh-theme(spacing.4))] md:peer-data-[variant=inset]:m-2 md:peer-data-[state=collapsed]:peer-data-[variant=inset]:ml-2 md:peer-data-[variant=inset]:ml-0 md:peer-data-[variant=inset]:rounded-xl md:peer-data-[variant=inset]:shadow`,e),...t}));_O.displayName=`SidebarInset`;var vO=j.forwardRef(({className:e,...t},n)=>(0,M.jsx)(Vx,{ref:n,"data-sidebar":`input`,className:Z(`h-8 w-full bg-background shadow-none focus-visible:ring-2 focus-visible:ring-sidebar-ring`,e),...t}));vO.displayName=`SidebarInput`;var yO=j.forwardRef(({className:e,...t},n)=>(0,M.jsx)(`div`,{ref:n,"data-sidebar":`header`,className:Z(`flex flex-col gap-2 p-2`,e),...t}));yO.displayName=`SidebarHeader`;var bO=j.forwardRef(({className:e,...t},n)=>(0,M.jsx)(`div`,{ref:n,"data-sidebar":`footer`,className:Z(`flex flex-col gap-2 p-2`,e),...t}));bO.displayName=`SidebarFooter`;var xO=j.forwardRef(({className:e,...t},n)=>(0,M.jsx)(Yx,{ref:n,"data-sidebar":`separator`,className:Z(`mx-2 w-auto bg-sidebar-border`,e),...t}));xO.displayName=`SidebarSeparator`;var SO=j.forwardRef(({className:e,...t},n)=>(0,M.jsx)(`div`,{ref:n,"data-sidebar":`content`,className:Z(`flex min-h-0 flex-1 flex-col gap-2 overflow-auto`,e),...t}));SO.displayName=`SidebarContent`;var CO=j.forwardRef(({className:e,...t},n)=>(0,M.jsx)(`div`,{ref:n,"data-sidebar":`group`,className:Z(`relative flex w-full min-w-0 flex-col p-2`,e),...t}));CO.displayName=`SidebarGroup`;var wO=j.forwardRef(({className:e,asChild:t=!1,...n},r)=>(0,M.jsx)(t?Mx:`div`,{ref:r,"data-sidebar":`group-label`,className:Z(`text-xs/6 font-medium text-sidebar-foreground/70 ring-sidebar-ring flex h-8 shrink-0 items-center rounded-md px-2 outline-none transition-[margin,opacity] duration-200 ease-linear focus-visible:ring-2 [&>svg]:size-4 [&>svg]:shrink-0 [[data-collapsible=icon]_&]:-mt-8 [[data-collapsible=icon]_&]:opacity-0 [[data-collapsible=icon]_&]:overflow-hidden`,e),...n}));wO.displayName=`SidebarGroupLabel`;var TO=j.forwardRef(({className:e,asChild:t=!1,...n},r)=>(0,M.jsx)(t?Mx:`button`,{ref:r,"data-sidebar":`group-action`,className:Z(`absolute right-3 top-3.5 flex aspect-square w-5 items-center justify-center rounded-md p-0 text-sidebar-foreground outline-none ring-sidebar-ring transition-transform hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 [&>svg]:size-4 [&>svg]:shrink-0`,`after:absolute after:-inset-2 after:md:hidden`,`group-data-[collapsible=icon]:hidden`,e),...n}));TO.displayName=`SidebarGroupAction`;var EO=j.forwardRef(({className:e,...t},n)=>(0,M.jsx)(`div`,{ref:n,"data-sidebar":`group-content`,className:Z(`w-full text-sm`,e),...t}));EO.displayName=`SidebarGroupContent`;var DO=j.forwardRef(({className:e,...t},n)=>(0,M.jsx)(`ul`,{ref:n,"data-sidebar":`menu`,className:Z(`flex w-full min-w-0 flex-col gap-1`,e),...t}));DO.displayName=`SidebarMenu`;var OO=j.forwardRef(({className:e,...t},n)=>(0,M.jsx)(`li`,{ref:n,"data-sidebar":`menu-item`,className:Z(`group/menu-item relative`,e),...t}));OO.displayName=`SidebarMenuItem`;var kO=j.forwardRef(({asChild:e=!1,isActive:t=!1,variant:n=`default`,size:r=`default`,tooltip:i,className:a,...o},s)=>{let c=e?Mx:`button`,{isMobile:l,state:u}=fO(),d=(0,M.jsx)(c,{ref:s,"data-sidebar":`menu-button`,"data-size":r,"data-active":t,className:Z(AO({variant:n,size:r}),a),...o});return i?(typeof i==`string`&&(i={children:i}),(0,M.jsxs)(nO,{children:[(0,M.jsx)(rO,{asChild:!0,children:d}),(0,M.jsx)(iO,{side:`right`,align:`center`,hidden:u!==`collapsed`||l,...i})]})):d});kO.displayName=`SidebarMenuButton`;var AO=Wv(`peer/menu-button flex w-full items-center gap-2 overflow-hidden rounded-md p-2 text-left text-sm outline-none ring-sidebar-ring transition-[width,height,padding] hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 active:bg-sidebar-accent active:text-sidebar-accent-foreground disabled:pointer-events-none disabled:opacity-50 group-has-[[data-sidebar=menu-action]]/menu-item:pr-8 aria-disabled:pointer-events-none aria-disabled:opacity-50 data-[active=true]:bg-sidebar-accent data-[active=true]:font-medium data-[active=true]:text-sidebar-accent-foreground data-[state=open]:hover:bg-sidebar-accent data-[state=open]:hover:text-sidebar-accent-foreground group-data-[collapsible=icon]:!size-8 group-data-[collapsible=icon]:!p-2 [&>span:last-child]:truncate [&>svg]:size-4 [&>svg]:shrink-0`,{variants:{variant:{default:`hover:bg-sidebar-accent hover:text-sidebar-accent-foreground`,outline:`bg-background shadow-[0_0_0_1px_hsl(var(--sidebar-border))] hover:bg-sidebar-accent hover:text-sidebar-accent-foreground hover:shadow-[0_0_0_1px_hsl(var(--sidebar-accent))]`},size:{default:`h-8 text-sm`,sm:`h-7 text-xs`,lg:`h-12 text-sm group-data-[collapsible=icon]:!p-0`}},defaultVariants:{variant:`default`,size:`default`}}),jO=j.forwardRef(({className:e,asChild:t=!1,showOnHover:n=!1,...r},i)=>(0,M.jsx)(t?Mx:`button`,{ref:i,"data-sidebar":`menu-action`,className:Z(`absolute right-1 top-1.5 flex aspect-square w-5 items-center justify-center rounded-md p-0 text-sidebar-foreground outline-none ring-sidebar-ring transition-transform hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 [&>svg]:size-4 [&>svg]:shrink-0`,`after:absolute after:-inset-2 after:md:hidden`,`peer-data-[size=sm]/menu-button:top-1`,`peer-data-[size=default]/menu-button:top-1.5`,`peer-data-[size=lg]/menu-button:top-2.5`,`group-data-[collapsible=icon]:hidden`,n&&`group-focus-within/menu-item:opacity-100 group-hover/menu-item:opacity-100 data-[state=open]:opacity-100 peer-data-[active=true]/menu-button:text-sidebar-accent-foreground md:opacity-0`,e),...r}));jO.displayName=`SidebarMenuAction`;var MO=j.forwardRef(({className:e,...t},n)=>(0,M.jsx)(`div`,{ref:n,"data-sidebar":`menu-badge`,className:Z(`text-sidebar-foreground pointer-events-none absolute right-1 flex h-5 min-w-5 items-center justify-center rounded-md px-1 text-xs font-medium tabular-nums select-none`,`peer-hover/menu-button:text-sidebar-accent-foreground peer-data-[active=true]/menu-button:text-sidebar-accent-foreground`,`peer-data-[size=sm]/menu-button:top-1`,`peer-data-[size=default]/menu-button:top-1.5`,`peer-data-[size=lg]/menu-button:top-2.5`,`group-data-[collapsible=icon]:hidden`,e),...t}));MO.displayName=`SidebarMenuBadge`;var NO=j.forwardRef(({className:e,showIcon:t=!1,...n},r)=>{let i=j.useMemo(()=>`${Math.floor(Math.random()*40)+50}%`,[]);return(0,M.jsxs)(`div`,{ref:r,"data-sidebar":`menu-skeleton`,className:Z(`rounded-md h-8 flex gap-2 px-2 items-center`,e),...n,children:[t&&(0,M.jsx)(Mw,{className:`size-4 rounded-md`,"data-sidebar":`menu-skeleton-icon`}),(0,M.jsx)(Mw,{className:`h-4 flex-1 max-w-[var(--skeleton-width)]`,"data-sidebar":`menu-skeleton-text`,style:{"--skeleton-width":i}})]})});NO.displayName=`SidebarMenuSkeleton`;var PO=j.forwardRef(({className:e,...t},n)=>(0,M.jsx)(`ul`,{ref:n,"data-sidebar":`menu-sub`,className:Z(`mx-3.5 flex min-w-0 translate-x-px flex-col gap-1 border-l border-sidebar-border px-2.5 py-0.5`,`group-data-[collapsible=icon]:hidden`,e),...t}));PO.displayName=`SidebarMenuSub`;var FO=j.forwardRef(({...e},t)=>(0,M.jsx)(`li`,{ref:t,...e}));FO.displayName=`SidebarMenuSubItem`;var IO=j.forwardRef(({asChild:e=!1,size:t=`md`,isActive:n,className:r,...i},a)=>(0,M.jsx)(e?Mx:`a`,{ref:a,"data-sidebar":`menu-sub-button`,"data-size":t,"data-active":n,className:Z(`flex h-7 min-w-0 -translate-x-px items-center gap-2 overflow-hidden rounded-md px-2 text-sidebar-foreground outline-none ring-sidebar-ring hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 active:bg-sidebar-accent active:text-sidebar-accent-foreground disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50 [&>span:last-child]:truncate [&>svg]:size-4 [&>svg]:shrink-0 [&>svg]:text-sidebar-accent-foreground`,`data-[active=true]:bg-sidebar-accent data-[active=true]:text-sidebar-accent-foreground`,t===`sm`&&`text-xs`,t===`md`&&`text-sm`,r),...i}));IO.displayName=`SidebarMenuSubButton`;var LO=Wv(`text-muted-foreground flex flex-wrap items-center gap-1.5 break-words text-sm sm:gap-2.5`),RO=j.forwardRef(({className:e,...t},n)=>(0,M.jsx)(`nav`,{ref:n,"aria-label":`breadcrumb`,className:Z(LO(),e),...t}));RO.displayName=`Breadcrumb`;var zO=j.forwardRef(({className:e,...t},n)=>(0,M.jsx)(`ol`,{ref:n,className:Z(`text-muted-foreground flex flex-wrap items-center gap-1.5 break-words text-sm sm:gap-2.5`,e),...t}));zO.displayName=`BreadcrumbList`;var BO=j.forwardRef(({className:e,...t},n)=>(0,M.jsx)(`li`,{ref:n,className:Z(`inline-flex items-center gap-1.5`,e),...t}));BO.displayName=`BreadcrumbItem`;var VO=j.forwardRef(({asChild:e,className:t,...n},r)=>(0,M.jsx)(e?Mx:`a`,{ref:r,className:Z(`hover:text-foreground transition-colors`,t),...n}));VO.displayName=`BreadcrumbLink`;var HO=j.forwardRef(({className:e,...t},n)=>(0,M.jsx)(`span`,{ref:n,role:`link`,"aria-disabled":`true`,"aria-current":`page`,className:Z(`text-foreground font-normal`,e),...t}));HO.displayName=`BreadcrumbPage`;var UO=({children:e,className:t,...n})=>(0,M.jsx)(`li`,{role:`presentation`,"aria-hidden":`true`,className:Z(`[&>svg]:size-3.5`,t),...n,children:e??(0,M.jsx)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2`,strokeLinecap:`round`,strokeLinejoin:`round`,className:`size-4`,children:(0,M.jsx)(`path`,{d:`m9 18 6-6-6-6`})})});UO.displayName=`BreadcrumbSeparator`;var WO=({className:e,...t})=>(0,M.jsxs)(`span`,{role:`presentation`,"aria-hidden":`true`,className:Z(`flex h-9 w-9 items-center justify-center`,e),...t,children:[(0,M.jsxs)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2`,strokeLinecap:`round`,strokeLinejoin:`round`,className:`size-4`,children:[(0,M.jsx)(`circle`,{cx:`12`,cy:`12`,r:`1`}),(0,M.jsx)(`circle`,{cx:`19`,cy:`12`,r:`1`}),(0,M.jsx)(`circle`,{cx:`5`,cy:`12`,r:`1`})]}),(0,M.jsx)(`span`,{className:`sr-only`,children:`More`})]});WO.displayName=`BreadcrumbElipssis`;var GO=j.createContext(void 0);function KO(e){let t=j.useContext(GO);return e||t||`ltr`}var qO=`rovingFocusGroup.onEntryFocus`,JO={bubbles:!1,cancelable:!0},YO=`RovingFocusGroup`,[XO,ZO,QO]=l_(YO),[$O,ek]=e_(YO,[QO]),[tk,nk]=$O(YO),rk=j.forwardRef((e,t)=>(0,M.jsx)(XO.Provider,{scope:e.__scopeRovingFocusGroup,children:(0,M.jsx)(XO.Slot,{scope:e.__scopeRovingFocusGroup,children:(0,M.jsx)(ik,{...e,ref:t})})}));rk.displayName=YO;var ik=j.forwardRef((e,t)=>{let{__scopeRovingFocusGroup:n,orientation:r,loop:i=!1,dir:a,currentTabStopId:o,defaultCurrentTabStopId:s,onCurrentTabStopIdChange:c,onEntryFocus:l,preventScrollOnEntryFocus:u=!1,...d}=e,f=j.useRef(null),p=Qg(t,f),m=KO(a),[h,g]=R_({prop:o,defaultProp:s??null,onChange:c,caller:YO}),[_,v]=j.useState(!1),y=f_(l),b=ZO(n),x=j.useRef(!1),[S,C]=j.useState(0);return j.useEffect(()=>{let e=f.current;if(e)return e.addEventListener(qO,y),()=>e.removeEventListener(qO,y)},[y]),(0,M.jsx)(tk,{scope:n,orientation:r,dir:m,loop:i,currentTabStopId:h,onItemFocus:j.useCallback(e=>g(e),[g]),onItemShiftTab:j.useCallback(()=>v(!0),[]),onFocusableItemAdd:j.useCallback(()=>C(e=>e+1),[]),onFocusableItemRemove:j.useCallback(()=>C(e=>e-1),[]),children:(0,M.jsx)(u_.div,{tabIndex:_||S===0?-1:0,"data-orientation":r,...d,ref:p,style:{outline:`none`,...e.style},onMouseDown:J(e.onMouseDown,()=>{x.current=!0}),onFocus:J(e.onFocus,e=>{let t=!x.current;if(e.target===e.currentTarget&&t&&!_){let t=new CustomEvent(qO,JO);if(e.currentTarget.dispatchEvent(t),!t.defaultPrevented){let e=b().filter(e=>e.focusable);uk([e.find(e=>e.active),e.find(e=>e.id===h),...e].filter(Boolean).map(e=>e.ref.current),u)}}x.current=!1}),onBlur:J(e.onBlur,()=>v(!1))})})}),ak=`RovingFocusGroupItem`,ok=j.forwardRef((e,t)=>{let{__scopeRovingFocusGroup:n,focusable:r=!0,active:i=!1,tabStopId:a,children:o,...s}=e,c=Qx(),l=a||c,u=nk(ak,n),d=u.currentTabStopId===l,f=ZO(n),{onFocusableItemAdd:p,onFocusableItemRemove:m,currentTabStopId:h}=u;return j.useEffect(()=>{if(r)return p(),()=>m()},[r,p,m]),(0,M.jsx)(XO.ItemSlot,{scope:n,id:l,focusable:r,active:i,children:(0,M.jsx)(u_.span,{tabIndex:d?0:-1,"data-orientation":u.orientation,...s,ref:t,onMouseDown:J(e.onMouseDown,e=>{r?u.onItemFocus(l):e.preventDefault()}),onFocus:J(e.onFocus,()=>u.onItemFocus(l)),onKeyDown:J(e.onKeyDown,e=>{if(e.key===`Tab`&&e.shiftKey){u.onItemShiftTab();return}if(e.target!==e.currentTarget)return;let t=lk(e,u.orientation,u.dir);if(t!==void 0){if(e.metaKey||e.ctrlKey||e.altKey||e.shiftKey)return;e.preventDefault();let n=f().filter(e=>e.focusable).map(e=>e.ref.current);if(t===`last`)n.reverse();else if(t===`prev`||t===`next`){t===`prev`&&n.reverse();let r=n.indexOf(e.currentTarget);n=u.loop?dk(n,r+1):n.slice(r+1)}setTimeout(()=>uk(n))}}),children:typeof o==`function`?o({isCurrentTabStop:d,hasTabStop:h!=null}):o})})});ok.displayName=ak;var sk={ArrowLeft:`prev`,ArrowUp:`prev`,ArrowRight:`next`,ArrowDown:`next`,PageUp:`first`,Home:`first`,PageDown:`last`,End:`last`};function ck(e,t){return t===`rtl`?e===`ArrowLeft`?`ArrowRight`:e===`ArrowRight`?`ArrowLeft`:e:e}function lk(e,t,n){let r=ck(e.key,n);if(!(t===`vertical`&&[`ArrowLeft`,`ArrowRight`].includes(r))&&!(t===`horizontal`&&[`ArrowUp`,`ArrowDown`].includes(r)))return sk[r]}function uk(e,t=!1){let n=document.activeElement;for(let r of e)if(r===n||(r.focus({preventScroll:t}),document.activeElement!==n))return}function dk(e,t){return e.map((n,r)=>e[(t+r)%e.length])}var fk=rk,pk=ok,mk=[`Enter`,` `],hk=[`ArrowDown`,`PageUp`,`Home`],gk=[`ArrowUp`,`PageDown`,`End`],_k=[...hk,...gk],vk={ltr:[...mk,`ArrowRight`],rtl:[...mk,`ArrowLeft`]},yk={ltr:[`ArrowLeft`],rtl:[`ArrowRight`]},bk=`Menu`,[xk,Sk,Ck]=l_(bk),[wk,Tk]=e_(bk,[Ck,ZE,ek]),Ek=ZE(),Dk=ek(),[Ok,kk]=wk(bk),[Ak,jk]=wk(bk),Mk=e=>{let{__scopeMenu:t,open:n=!1,children:r,dir:i,onOpenChange:a,modal:o=!0}=e,s=Ek(t),[c,l]=j.useState(null),u=j.useRef(!1),d=f_(a),f=KO(i);return j.useEffect(()=>{let e=()=>{u.current=!0,document.addEventListener(`pointerdown`,t,{capture:!0,once:!0}),document.addEventListener(`pointermove`,t,{capture:!0,once:!0})},t=()=>u.current=!1;return document.addEventListener(`keydown`,e,{capture:!0}),()=>{document.removeEventListener(`keydown`,e,{capture:!0}),document.removeEventListener(`pointerdown`,t,{capture:!0}),document.removeEventListener(`pointermove`,t,{capture:!0})}},[]),(0,M.jsx)(pD,{...s,children:(0,M.jsx)(Ok,{scope:t,open:n,onOpenChange:d,content:c,onContentChange:l,children:(0,M.jsx)(Ak,{scope:t,onClose:j.useCallback(()=>d(!1),[d]),isUsingKeyboardRef:u,dir:f,modal:o,children:r})})})};Mk.displayName=bk;var Nk=`MenuAnchor`,Pk=j.forwardRef((e,t)=>{let{__scopeMenu:n,...r}=e,i=Ek(n);return(0,M.jsx)(mD,{...i,...r,ref:t})});Pk.displayName=Nk;var Fk=`MenuPortal`,[Ik,Lk]=wk(Fk,{forceMount:void 0}),Rk=e=>{let{__scopeMenu:t,forceMount:n,children:r,container:i}=e,a=kk(Fk,t);return(0,M.jsx)(Ik,{scope:t,forceMount:n,children:(0,M.jsx)(N_,{present:n||a.open,children:(0,M.jsx)(j_,{asChild:!0,container:i,children:r})})})};Rk.displayName=Fk;var zk=`MenuContent`,[Bk,Vk]=wk(zk),Hk=j.forwardRef((e,t)=>{let n=Lk(zk,e.__scopeMenu),{forceMount:r=n.forceMount,...i}=e,a=kk(zk,e.__scopeMenu),o=jk(zk,e.__scopeMenu);return(0,M.jsx)(xk.Provider,{scope:e.__scopeMenu,children:(0,M.jsx)(N_,{present:r||a.open,children:(0,M.jsx)(xk.Slot,{scope:e.__scopeMenu,children:o.modal?(0,M.jsx)(Uk,{...i,ref:t}):(0,M.jsx)(Wk,{...i,ref:t})})})})}),Uk=j.forwardRef((e,t)=>{let n=kk(zk,e.__scopeMenu),r=j.useRef(null),i=Qg(t,r);return j.useEffect(()=>{let e=r.current;if(e)return FC(e)},[]),(0,M.jsx)(Kk,{...e,ref:i,trapFocus:n.open,disableOutsidePointerEvents:n.open,disableOutsideScroll:!0,onFocusOutside:J(e.onFocusOutside,e=>e.preventDefault(),{checkForDefaultPrevented:!1}),onDismiss:()=>n.onOpenChange(!1)})}),Wk=j.forwardRef((e,t)=>{let n=kk(zk,e.__scopeMenu);return(0,M.jsx)(Kk,{...e,ref:t,trapFocus:!1,disableOutsidePointerEvents:!1,disableOutsideScroll:!1,onDismiss:()=>n.onOpenChange(!1)})}),Gk=n_(`MenuContent.ScrollLock`),Kk=j.forwardRef((e,t)=>{let{__scopeMenu:n,loop:r=!1,trapFocus:i,onOpenAutoFocus:a,onCloseAutoFocus:o,disableOutsidePointerEvents:s,onEntryFocus:c,onEscapeKeyDown:l,onPointerDownOutside:u,onFocusOutside:d,onInteractOutside:f,onDismiss:p,disableOutsideScroll:m,...h}=e,g=kk(zk,n),_=jk(zk,n),v=Ek(n),y=Dk(n),b=Sk(n),[x,S]=j.useState(null),C=j.useRef(null),w=Qg(t,C,g.onContentChange),T=j.useRef(0),E=j.useRef(``),D=j.useRef(0),O=j.useRef(null),ee=j.useRef(`right`),te=j.useRef(0),ne=m?EC:j.Fragment,re=m?{as:Gk,allowPinchZoom:!0}:void 0,ie=e=>{let t=E.current+e,n=b().filter(e=>!e.disabled),r=document.activeElement,i=n.find(e=>e.ref.current===r)?.textValue,a=AA(n.map(e=>e.textValue),t,i),o=n.find(e=>e.textValue===a)?.ref.current;(function e(t){E.current=t,window.clearTimeout(T.current),t!==``&&(T.current=window.setTimeout(()=>e(``),1e3))})(t),o&&setTimeout(()=>o.focus())};j.useEffect(()=>()=>window.clearTimeout(T.current),[]),gS();let ae=j.useCallback(e=>ee.current===O.current?.side&&MA(e,O.current?.area),[]);return(0,M.jsx)(Bk,{scope:n,searchRef:E,onItemEnter:j.useCallback(e=>{ae(e)&&e.preventDefault()},[ae]),onItemLeave:j.useCallback(e=>{ae(e)||(C.current?.focus(),S(null))},[ae]),onTriggerLeave:j.useCallback(e=>{ae(e)&&e.preventDefault()},[ae]),pointerGraceTimerRef:D,onPointerGraceIntentChange:j.useCallback(e=>{O.current=e},[]),children:(0,M.jsx)(ne,{...re,children:(0,M.jsx)(rS,{asChild:!0,trapped:i,onMountAutoFocus:J(a,e=>{e.preventDefault(),C.current?.focus({preventScroll:!0})}),onUnmountAutoFocus:o,children:(0,M.jsx)(b_,{asChild:!0,disableOutsidePointerEvents:s,onEscapeKeyDown:l,onPointerDownOutside:u,onFocusOutside:d,onInteractOutside:f,onDismiss:p,children:(0,M.jsx)(fk,{asChild:!0,...y,dir:_.dir,orientation:`vertical`,loop:r,currentTabStopId:x,onCurrentTabStopIdChange:S,onEntryFocus:J(c,e=>{_.isUsingKeyboardRef.current||e.preventDefault()}),preventScrollOnEntryFocus:!0,children:(0,M.jsx)(hD,{role:`menu`,"aria-orientation":`vertical`,"data-state":TA(g.open),"data-radix-menu-content":``,dir:_.dir,...v,...h,ref:w,style:{outline:`none`,...h.style},onKeyDown:J(h.onKeyDown,e=>{let t=e.target.closest(`[data-radix-menu-content]`)===e.currentTarget,n=e.ctrlKey||e.altKey||e.metaKey,r=e.key.length===1;t&&(e.key===`Tab`&&e.preventDefault(),!n&&r&&ie(e.key));let i=C.current;if(e.target!==i||!_k.includes(e.key))return;e.preventDefault();let a=b().filter(e=>!e.disabled).map(e=>e.ref.current);gk.includes(e.key)&&a.reverse(),OA(a)}),onBlur:J(e.onBlur,e=>{e.currentTarget.contains(e.target)||(window.clearTimeout(T.current),E.current=``)}),onPointerMove:J(e.onPointerMove,NA(e=>{let t=e.target,n=te.current!==e.clientX;e.currentTarget.contains(t)&&n&&(ee.current=e.clientX>te.current?`right`:`left`,te.current=e.clientX)}))})})})})})})});Hk.displayName=zk;var qk=`MenuGroup`,Jk=j.forwardRef((e,t)=>{let{__scopeMenu:n,...r}=e;return(0,M.jsx)(u_.div,{role:`group`,...r,ref:t})});Jk.displayName=qk;var Yk=`MenuLabel`,Xk=j.forwardRef((e,t)=>{let{__scopeMenu:n,...r}=e;return(0,M.jsx)(u_.div,{...r,ref:t})});Xk.displayName=Yk;var Zk=`MenuItem`,Qk=`menu.itemSelect`,$k=j.forwardRef((e,t)=>{let{disabled:n=!1,onSelect:r,...i}=e,a=j.useRef(null),o=jk(Zk,e.__scopeMenu),s=Vk(Zk,e.__scopeMenu),c=Qg(t,a),l=j.useRef(!1),u=()=>{let e=a.current;if(!n&&e){let t=new CustomEvent(Qk,{bubbles:!0,cancelable:!0});e.addEventListener(Qk,e=>r?.(e),{once:!0}),d_(e,t),t.defaultPrevented?l.current=!1:o.onClose()}};return(0,M.jsx)(eA,{...i,ref:c,disabled:n,onClick:J(e.onClick,u),onPointerDown:t=>{e.onPointerDown?.(t),l.current=!0},onPointerUp:J(e.onPointerUp,e=>{l.current||e.currentTarget?.click()}),onKeyDown:J(e.onKeyDown,e=>{let t=s.searchRef.current!==``;n||t&&e.key===` `||mk.includes(e.key)&&(e.currentTarget.click(),e.preventDefault())})})});$k.displayName=Zk;var eA=j.forwardRef((e,t)=>{let{__scopeMenu:n,disabled:r=!1,textValue:i,...a}=e,o=Vk(Zk,n),s=Dk(n),c=j.useRef(null),l=Qg(t,c),[u,d]=j.useState(!1),[f,p]=j.useState(``);return j.useEffect(()=>{let e=c.current;e&&p((e.textContent??``).trim())},[a.children]),(0,M.jsx)(xk.ItemSlot,{scope:n,disabled:r,textValue:i??f,children:(0,M.jsx)(pk,{asChild:!0,...s,focusable:!r,children:(0,M.jsx)(u_.div,{role:`menuitem`,"data-highlighted":u?``:void 0,"aria-disabled":r||void 0,"data-disabled":r?``:void 0,...a,ref:l,onPointerMove:J(e.onPointerMove,NA(e=>{r?o.onItemLeave(e):(o.onItemEnter(e),e.defaultPrevented||e.currentTarget.focus({preventScroll:!0}))})),onPointerLeave:J(e.onPointerLeave,NA(e=>o.onItemLeave(e))),onFocus:J(e.onFocus,()=>d(!0)),onBlur:J(e.onBlur,()=>d(!1))})})})}),tA=`MenuCheckboxItem`,nA=j.forwardRef((e,t)=>{let{checked:n=!1,onCheckedChange:r,...i}=e;return(0,M.jsx)(uA,{scope:e.__scopeMenu,checked:n,children:(0,M.jsx)($k,{role:`menuitemcheckbox`,"aria-checked":EA(n)?`mixed`:n,...i,ref:t,"data-state":DA(n),onSelect:J(i.onSelect,()=>r?.(EA(n)?!0:!n),{checkForDefaultPrevented:!1})})})});nA.displayName=tA;var rA=`MenuRadioGroup`,[iA,aA]=wk(rA,{value:void 0,onValueChange:()=>{}}),oA=j.forwardRef((e,t)=>{let{value:n,onValueChange:r,...i}=e,a=f_(r);return(0,M.jsx)(iA,{scope:e.__scopeMenu,value:n,onValueChange:a,children:(0,M.jsx)(Jk,{...i,ref:t})})});oA.displayName=rA;var sA=`MenuRadioItem`,cA=j.forwardRef((e,t)=>{let{value:n,...r}=e,i=aA(sA,e.__scopeMenu),a=n===i.value;return(0,M.jsx)(uA,{scope:e.__scopeMenu,checked:a,children:(0,M.jsx)($k,{role:`menuitemradio`,"aria-checked":a,...r,ref:t,"data-state":DA(a),onSelect:J(r.onSelect,()=>i.onValueChange?.(n),{checkForDefaultPrevented:!1})})})});cA.displayName=sA;var lA=`MenuItemIndicator`,[uA,dA]=wk(lA,{checked:!1}),fA=j.forwardRef((e,t)=>{let{__scopeMenu:n,forceMount:r,...i}=e,a=dA(lA,n);return(0,M.jsx)(N_,{present:r||EA(a.checked)||a.checked===!0,children:(0,M.jsx)(u_.span,{...i,ref:t,"data-state":DA(a.checked)})})});fA.displayName=lA;var pA=`MenuSeparator`,mA=j.forwardRef((e,t)=>{let{__scopeMenu:n,...r}=e;return(0,M.jsx)(u_.div,{role:`separator`,"aria-orientation":`horizontal`,...r,ref:t})});mA.displayName=pA;var hA=`MenuArrow`,gA=j.forwardRef((e,t)=>{let{__scopeMenu:n,...r}=e,i=Ek(n);return(0,M.jsx)(gD,{...i,...r,ref:t})});gA.displayName=hA;var _A=`MenuSub`,[vA,yA]=wk(_A),bA=e=>{let{__scopeMenu:t,children:n,open:r=!1,onOpenChange:i}=e,a=kk(_A,t),o=Ek(t),[s,c]=j.useState(null),[l,u]=j.useState(null),d=f_(i);return j.useEffect(()=>(a.open===!1&&d(!1),()=>d(!1)),[a.open,d]),(0,M.jsx)(pD,{...o,children:(0,M.jsx)(Ok,{scope:t,open:r,onOpenChange:d,content:l,onContentChange:u,children:(0,M.jsx)(vA,{scope:t,contentId:Qx(),triggerId:Qx(),trigger:s,onTriggerChange:c,children:n})})})};bA.displayName=_A;var xA=`MenuSubTrigger`,SA=j.forwardRef((e,t)=>{let n=kk(xA,e.__scopeMenu),r=jk(xA,e.__scopeMenu),i=yA(xA,e.__scopeMenu),a=Vk(xA,e.__scopeMenu),o=j.useRef(null),{pointerGraceTimerRef:s,onPointerGraceIntentChange:c}=a,l={__scopeMenu:e.__scopeMenu},u=j.useCallback(()=>{o.current&&window.clearTimeout(o.current),o.current=null},[]);return j.useEffect(()=>u,[u]),j.useEffect(()=>{let e=s.current;return()=>{window.clearTimeout(e),c(null)}},[s,c]),(0,M.jsx)(Pk,{asChild:!0,...l,children:(0,M.jsx)(eA,{id:i.triggerId,"aria-haspopup":`menu`,"aria-expanded":n.open,"aria-controls":i.contentId,"data-state":TA(n.open),...e,ref:Zg(t,i.onTriggerChange),onClick:t=>{e.onClick?.(t),!(e.disabled||t.defaultPrevented)&&(t.currentTarget.focus(),n.open||n.onOpenChange(!0))},onPointerMove:J(e.onPointerMove,NA(t=>{a.onItemEnter(t),!t.defaultPrevented&&!e.disabled&&!n.open&&!o.current&&(a.onPointerGraceIntentChange(null),o.current=window.setTimeout(()=>{n.onOpenChange(!0),u()},100))})),onPointerLeave:J(e.onPointerLeave,NA(e=>{u();let t=n.content?.getBoundingClientRect();if(t){let r=n.content?.dataset.side,i=r===`right`,o=i?-5:5,c=t[i?`left`:`right`],l=t[i?`right`:`left`];a.onPointerGraceIntentChange({area:[{x:e.clientX+o,y:e.clientY},{x:c,y:t.top},{x:l,y:t.top},{x:l,y:t.bottom},{x:c,y:t.bottom}],side:r}),window.clearTimeout(s.current),s.current=window.setTimeout(()=>a.onPointerGraceIntentChange(null),300)}else{if(a.onTriggerLeave(e),e.defaultPrevented)return;a.onPointerGraceIntentChange(null)}})),onKeyDown:J(e.onKeyDown,t=>{let i=a.searchRef.current!==``;e.disabled||i&&t.key===` `||vk[r.dir].includes(t.key)&&(n.onOpenChange(!0),n.content?.focus(),t.preventDefault())})})})});SA.displayName=xA;var CA=`MenuSubContent`,wA=j.forwardRef((e,t)=>{let n=Lk(zk,e.__scopeMenu),{forceMount:r=n.forceMount,...i}=e,a=kk(zk,e.__scopeMenu),o=jk(zk,e.__scopeMenu),s=yA(CA,e.__scopeMenu),c=j.useRef(null),l=Qg(t,c);return(0,M.jsx)(xk.Provider,{scope:e.__scopeMenu,children:(0,M.jsx)(N_,{present:r||a.open,children:(0,M.jsx)(xk.Slot,{scope:e.__scopeMenu,children:(0,M.jsx)(Kk,{id:s.contentId,"aria-labelledby":s.triggerId,...i,ref:l,align:`start`,side:o.dir===`rtl`?`left`:`right`,disableOutsidePointerEvents:!1,disableOutsideScroll:!1,trapFocus:!1,onOpenAutoFocus:e=>{o.isUsingKeyboardRef.current&&c.current?.focus(),e.preventDefault()},onCloseAutoFocus:e=>e.preventDefault(),onFocusOutside:J(e.onFocusOutside,e=>{e.target!==s.trigger&&a.onOpenChange(!1)}),onEscapeKeyDown:J(e.onEscapeKeyDown,e=>{o.onClose(),e.preventDefault()}),onKeyDown:J(e.onKeyDown,e=>{let t=e.currentTarget.contains(e.target),n=yk[o.dir].includes(e.key);t&&n&&(a.onOpenChange(!1),s.trigger?.focus(),e.preventDefault())})})})})})});wA.displayName=CA;function TA(e){return e?`open`:`closed`}function EA(e){return e===`indeterminate`}function DA(e){return EA(e)?`indeterminate`:e?`checked`:`unchecked`}function OA(e){let t=document.activeElement;for(let n of e)if(n===t||(n.focus(),document.activeElement!==t))return}function kA(e,t){return e.map((n,r)=>e[(t+r)%e.length])}function AA(e,t,n){let r=t.length>1&&Array.from(t).every(e=>e===t[0])?t[0]:t,i=n?e.indexOf(n):-1,a=kA(e,Math.max(i,0));r.length===1&&(a=a.filter(e=>e!==n));let o=a.find(e=>e.toLowerCase().startsWith(r.toLowerCase()));return o===n?void 0:o}function jA(e,t){let{x:n,y:r}=e,i=!1;for(let e=0,a=t.length-1;e<t.length;a=e++){let o=t[e],s=t[a],c=o.x,l=o.y,u=s.x,d=s.y;l>r!=d>r&&n<(u-c)*(r-l)/(d-l)+c&&(i=!i)}return i}function MA(e,t){return t?jA({x:e.clientX,y:e.clientY},t):!1}function NA(e){return t=>t.pointerType===`mouse`?e(t):void 0}var PA=Mk,FA=Pk,IA=Rk,LA=Hk,RA=Jk,zA=Xk,BA=$k,VA=nA,HA=oA,UA=cA,WA=fA,GA=mA,KA=gA,qA=SA,JA=wA,YA=`DropdownMenu`,[XA,ZA]=e_(YA,[Tk]),QA=Tk(),[$A,ej]=XA(YA),tj=e=>{let{__scopeDropdownMenu:t,children:n,dir:r,open:i,defaultOpen:a,onOpenChange:o,modal:s=!0}=e,c=QA(t),l=j.useRef(null),[u,d]=R_({prop:i,defaultProp:a??!1,onChange:o,caller:YA});return(0,M.jsx)($A,{scope:t,triggerId:Qx(),triggerRef:l,contentId:Qx(),open:u,onOpenChange:d,onOpenToggle:j.useCallback(()=>d(e=>!e),[d]),modal:s,children:(0,M.jsx)(PA,{...c,open:u,onOpenChange:d,dir:r,modal:s,children:n})})};tj.displayName=YA;var nj=`DropdownMenuTrigger`,rj=j.forwardRef((e,t)=>{let{__scopeDropdownMenu:n,disabled:r=!1,...i}=e,a=ej(nj,n),o=QA(n);return(0,M.jsx)(FA,{asChild:!0,...o,children:(0,M.jsx)(u_.button,{type:`button`,id:a.triggerId,"aria-haspopup":`menu`,"aria-expanded":a.open,"aria-controls":a.open?a.contentId:void 0,"data-state":a.open?`open`:`closed`,"data-disabled":r?``:void 0,disabled:r,...i,ref:Zg(t,a.triggerRef),onPointerDown:J(e.onPointerDown,e=>{!r&&e.button===0&&e.ctrlKey===!1&&(a.onOpenToggle(),a.open||e.preventDefault())}),onKeyDown:J(e.onKeyDown,e=>{r||([`Enter`,` `].includes(e.key)&&a.onOpenToggle(),e.key===`ArrowDown`&&a.onOpenChange(!0),[`Enter`,` `,`ArrowDown`].includes(e.key)&&e.preventDefault())})})})});rj.displayName=nj;var ij=`DropdownMenuPortal`,aj=e=>{let{__scopeDropdownMenu:t,...n}=e,r=QA(t);return(0,M.jsx)(IA,{...r,...n})};aj.displayName=ij;var oj=`DropdownMenuContent`,sj=j.forwardRef((e,t)=>{let{__scopeDropdownMenu:n,...r}=e,i=ej(oj,n),a=QA(n),o=j.useRef(!1);return(0,M.jsx)(LA,{id:i.contentId,"aria-labelledby":i.triggerId,...a,...r,ref:t,onCloseAutoFocus:J(e.onCloseAutoFocus,e=>{o.current||i.triggerRef.current?.focus(),o.current=!1,e.preventDefault()}),onInteractOutside:J(e.onInteractOutside,e=>{let t=e.detail.originalEvent,n=t.button===0&&t.ctrlKey===!0,r=t.button===2||n;(!i.modal||r)&&(o.current=!0)}),style:{...e.style,"--radix-dropdown-menu-content-transform-origin":`var(--radix-popper-transform-origin)`,"--radix-dropdown-menu-content-available-width":`var(--radix-popper-available-width)`,"--radix-dropdown-menu-content-available-height":`var(--radix-popper-available-height)`,"--radix-dropdown-menu-trigger-width":`var(--radix-popper-anchor-width)`,"--radix-dropdown-menu-trigger-height":`var(--radix-popper-anchor-height)`}})});sj.displayName=oj;var cj=`DropdownMenuGroup`,lj=j.forwardRef((e,t)=>{let{__scopeDropdownMenu:n,...r}=e,i=QA(n);return(0,M.jsx)(RA,{...i,...r,ref:t})});lj.displayName=cj;var uj=`DropdownMenuLabel`,dj=j.forwardRef((e,t)=>{let{__scopeDropdownMenu:n,...r}=e,i=QA(n);return(0,M.jsx)(zA,{...i,...r,ref:t})});dj.displayName=uj;var fj=`DropdownMenuItem`,pj=j.forwardRef((e,t)=>{let{__scopeDropdownMenu:n,...r}=e,i=QA(n);return(0,M.jsx)(BA,{...i,...r,ref:t})});pj.displayName=fj;var mj=`DropdownMenuCheckboxItem`,hj=j.forwardRef((e,t)=>{let{__scopeDropdownMenu:n,...r}=e,i=QA(n);return(0,M.jsx)(VA,{...i,...r,ref:t})});hj.displayName=mj;var gj=`DropdownMenuRadioGroup`,_j=j.forwardRef((e,t)=>{let{__scopeDropdownMenu:n,...r}=e,i=QA(n);return(0,M.jsx)(HA,{...i,...r,ref:t})});_j.displayName=gj;var vj=`DropdownMenuRadioItem`,yj=j.forwardRef((e,t)=>{let{__scopeDropdownMenu:n,...r}=e,i=QA(n);return(0,M.jsx)(UA,{...i,...r,ref:t})});yj.displayName=vj;var bj=`DropdownMenuItemIndicator`,xj=j.forwardRef((e,t)=>{let{__scopeDropdownMenu:n,...r}=e,i=QA(n);return(0,M.jsx)(WA,{...i,...r,ref:t})});xj.displayName=bj;var Sj=`DropdownMenuSeparator`,Cj=j.forwardRef((e,t)=>{let{__scopeDropdownMenu:n,...r}=e,i=QA(n);return(0,M.jsx)(GA,{...i,...r,ref:t})});Cj.displayName=Sj;var wj=`DropdownMenuArrow`,Tj=j.forwardRef((e,t)=>{let{__scopeDropdownMenu:n,...r}=e,i=QA(n);return(0,M.jsx)(KA,{...i,...r,ref:t})});Tj.displayName=wj;var Ej=`DropdownMenuSubTrigger`,Dj=j.forwardRef((e,t)=>{let{__scopeDropdownMenu:n,...r}=e,i=QA(n);return(0,M.jsx)(qA,{...i,...r,ref:t})});Dj.displayName=Ej;var Oj=`DropdownMenuSubContent`,kj=j.forwardRef((e,t)=>{let{__scopeDropdownMenu:n,...r}=e,i=QA(n);return(0,M.jsx)(JA,{...i,...r,ref:t,style:{...e.style,"--radix-dropdown-menu-content-transform-origin":`var(--radix-popper-transform-origin)`,"--radix-dropdown-menu-content-available-width":`var(--radix-popper-available-width)`,"--radix-dropdown-menu-content-available-height":`var(--radix-popper-available-height)`,"--radix-dropdown-menu-trigger-width":`var(--radix-popper-anchor-width)`,"--radix-dropdown-menu-trigger-height":`var(--radix-popper-anchor-height)`}})});kj.displayName=Oj;var Aj=tj,jj=rj,Mj=aj,Nj=sj,Pj=dj,Fj=pj,Ij=hj,Lj=yj,Rj=xj,zj=Cj,Bj=Dj,Vj=kj,Hj=Aj,Uj=jj,Wj=j.forwardRef(({className:e,inset:t,children:n,...r},i)=>(0,M.jsxs)(Bj,{ref:i,className:Z(`flex cursor-default gap-2 select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none focus:bg-accent data-[state=open]:bg-accent [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0`,t&&`pl-8`,e),...r,children:[n,(0,M.jsx)(ay,{className:`ml-auto`})]}));Wj.displayName=Bj.displayName;var Gj=j.forwardRef(({className:e,...t},n)=>(0,M.jsx)(Vj,{ref:n,className:Z(`z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-lg data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2`,e),...t}));Gj.displayName=Vj.displayName;var Kj=j.forwardRef(({className:e,sideOffset:t=4,...n},r)=>(0,M.jsx)(Mj,{children:(0,M.jsx)(Nj,{ref:r,sideOffset:t,className:Z(`z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-md data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2`,e),...n})}));Kj.displayName=Nj.displayName;var qj=j.forwardRef(({className:e,inset:t,...n},r)=>(0,M.jsx)(Fj,{ref:r,className:Z(`relative flex cursor-default select-none items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0`,t&&`pl-8`,e),...n}));qj.displayName=Fj.displayName;var Jj=j.forwardRef(({className:e,children:t,checked:n,...r},i)=>(0,M.jsxs)(Ij,{ref:i,className:Z(`relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50`,e),checked:n,...r,children:[(0,M.jsx)(`span`,{className:`absolute left-2 flex h-3.5 w-3.5 items-center justify-center`,children:(0,M.jsx)(Rj,{children:(0,M.jsx)(ry,{className:`h-4 w-4`})})}),t]}));Jj.displayName=Ij.displayName;var Yj=j.forwardRef(({className:e,children:t,...n},r)=>(0,M.jsxs)(Lj,{ref:r,className:Z(`relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50`,e),...n,children:[(0,M.jsx)(`span`,{className:`absolute left-2 flex h-3.5 w-3.5 items-center justify-center`,children:(0,M.jsx)(Rj,{children:(0,M.jsx)(dy,{className:`h-2 w-2 fill-current`})})}),t]}));Yj.displayName=Lj.displayName;var Xj=j.forwardRef(({className:e,inset:t,...n},r)=>(0,M.jsx)(Pj,{ref:r,className:Z(`px-2 py-1.5 text-sm font-semibold`,t&&`pl-8`,e),...n}));Xj.displayName=Pj.displayName;var Zj=j.forwardRef(({className:e,...t},n)=>(0,M.jsx)(zj,{ref:n,className:Z(`-mx-1 my-1 h-px bg-muted`,e),...t}));Zj.displayName=zj.displayName;var Qj=({className:e,...t})=>(0,M.jsx)(`span`,{className:Z(`ml-auto text-xs tracking-widest opacity-60`,e),...t});Qj.displayName=`DropdownMenuShortcut`;var $j=`modulepreload`,eM=function(e){return`/_account/`+e},tM={},nM=function(e,t,n){let r=Promise.resolve();if(t&&t.length>0){let e=document.getElementsByTagName(`link`),i=document.querySelector(`meta[property=csp-nonce]`),a=i?.nonce||i?.getAttribute(`nonce`);function o(e){return Promise.all(e.map(e=>Promise.resolve(e).then(e=>({status:`fulfilled`,value:e}),e=>({status:`rejected`,reason:e}))))}r=o(t.map(t=>{if(t=eM(t,n),t in tM)return;tM[t]=!0;let r=t.endsWith(`.css`),i=r?`[rel="stylesheet"]`:``;if(n)for(let n=e.length-1;n>=0;n--){let i=e[n];if(i.href===t&&(!r||i.rel===`stylesheet`))return}else if(document.querySelector(`link[href="${t}"]${i}`))return;let o=document.createElement(`link`);if(o.rel=r?`stylesheet`:$j,r||(o.as=`script`),o.crossOrigin=``,o.href=t,a&&o.setAttribute(`nonce`,a),document.head.appendChild(o),r)return new Promise((e,n)=>{o.addEventListener(`load`,e),o.addEventListener(`error`,()=>n(Error(`Unable to preload CSS for ${t}`)))})}))}function i(e){let t=new Event(`vite:preloadError`,{cancelable:!0});if(t.payload=e,window.dispatchEvent(t),!t.defaultPrevented)throw e}return r.then(t=>{for(let e of t||[])e.status===`rejected`&&i(e.reason);return e().catch(i)})},rM=[`en`,`zh-CN`],iM={en:()=>nM(()=>import(`./en-CuO7DiqH.js`),[]),"zh-CN":()=>nM(()=>import(`./zh-CN-DhlJn7Oy.js`),[])};function aM(e){return rM.includes(e)?e:e.toLowerCase().startsWith(`zh`)?`zh-CN`:`en`}async function oM(e){let t=aM(e);try{return(await iM[t]()).default}catch(t){return console.warn(`[account/i18n] Failed to load language pack '${e}':`,t),{}}}var sM={en:`English`,"zh-CN":`中文`};function cM(){let{t:e,language:t,changeLanguage:n}=vt();async function r(e){await n(e);try{localStorage.setItem(`account.lang`,e)}catch{}}return(0,M.jsxs)(Hj,{children:[(0,M.jsx)(Uj,{asChild:!0,children:(0,M.jsxs)(Q,{variant:`ghost`,size:`icon`,className:`h-8 w-8`,"aria-label":e(`common.language`),children:[(0,M.jsx)(by,{className:`h-4 w-4`}),(0,M.jsx)(`span`,{className:`sr-only`,children:e(`common.language`)})]})}),(0,M.jsx)(Kj,{align:`end`,children:rM.map(e=>(0,M.jsx)(qj,{onSelect:()=>void r(e),className:e===t?`font-medium`:void 0,children:sM[e]},e))})]})}function lM(e){let t=document.documentElement;e===`dark`?t.classList.add(`dark`):t.classList.remove(`dark`)}function uM(){let{t:e}=vt(),[,t]=(0,j.useState)(`light`);(0,j.useEffect)(()=>{let e=localStorage.getItem(`theme`);e?(t(e),lM(e===`system`?window.matchMedia(`(prefers-color-scheme: dark)`).matches?`dark`:`light`:e)):(t(`system`),lM(window.matchMedia(`(prefers-color-scheme: dark)`).matches?`dark`:`light`))},[]);function n(e){t(e),localStorage.setItem(`theme`,e),lM(e===`system`?window.matchMedia(`(prefers-color-scheme: dark)`).matches?`dark`:`light`:e)}return(0,M.jsxs)(Hj,{children:[(0,M.jsx)(Uj,{asChild:!0,children:(0,M.jsxs)(Q,{variant:`ghost`,size:`icon`,className:`h-8 w-8`,children:[(0,M.jsx)(Fy,{className:`h-4 w-4 rotate-0 scale-100 transition-all dark:-rotate-90 dark:scale-0`}),(0,M.jsx)(Ey,{className:`absolute h-4 w-4 rotate-90 scale-0 transition-all dark:rotate-0 dark:scale-100`}),(0,M.jsx)(`span`,{className:`sr-only`,children:e(`common.toggleTheme`)})]})}),(0,M.jsxs)(Kj,{align:`end`,children:[(0,M.jsxs)(qj,{onClick:()=>n(`light`),children:[(0,M.jsx)(Fy,{className:`mr-2 h-4 w-4`}),e(`common.light`)]}),(0,M.jsxs)(qj,{onClick:()=>n(`dark`),children:[(0,M.jsx)(Ey,{className:`mr-2 h-4 w-4`}),e(`common.dark`)]}),(0,M.jsx)(qj,{onClick:()=>n(`system`),children:e(`common.system`)})]})]})}function dM(e,t=[]){let n=[];function r(t,r){let i=j.createContext(r);i.displayName=t+`Context`;let a=n.length;n=[...n,r];let o=t=>{let{scope:n,children:r,...o}=t,s=n?.[e]?.[a]||i,c=j.useMemo(()=>o,Object.values(o));return(0,M.jsx)(s.Provider,{value:c,children:r})};o.displayName=t+`Provider`;function s(n,o){let s=o?.[e]?.[a]||i,c=j.useContext(s);if(c)return c;if(r!==void 0)return r;throw Error(`\`${n}\` must be used within \`${t}\``)}return[o,s]}let i=()=>{let t=n.map(e=>j.createContext(e));return function(n){let r=n?.[e]||t;return j.useMemo(()=>({[`__scope${e}`]:{...n,[e]:r}}),[n,r])}};return i.scopeName=e,[r,fM(i,...t)]}function fM(...e){let t=e[0];if(e.length===1)return t;let n=()=>{let n=e.map(e=>({useScope:e(),scopeName:e.scopeName}));return function(e){let r=n.reduce((t,{useScope:n,scopeName:r})=>{let i=n(e)[`__scope${r}`];return{...t,...i}},{});return j.useMemo(()=>({[`__scope${t.scopeName}`]:r}),[r])}};return n.scopeName=t.scopeName,n}function pM(){return(0,ot.useSyncExternalStore)(mM,()=>!0,()=>!1)}function mM(){return()=>{}}var hM=`Avatar`,[gM,_M]=dM(hM),[vM,yM]=gM(hM),bM=j.forwardRef((e,t)=>{let{__scopeAvatar:n,...r}=e,[i,a]=j.useState(`idle`);return(0,M.jsx)(vM,{scope:n,imageLoadingStatus:i,onImageLoadingStatusChange:a,children:(0,M.jsx)(Hx.span,{...r,ref:t})})});bM.displayName=hM;var xM=`AvatarImage`,SM=j.forwardRef((e,t)=>{let{__scopeAvatar:n,src:r,onLoadingStatusChange:i=()=>{},...a}=e,o=yM(xM,n),s=EM(r,a),c=f_(e=>{i(e),o.onImageLoadingStatusChange(e)});return k_(()=>{s!==`idle`&&c(s)},[s,c]),s===`loaded`?(0,M.jsx)(Hx.img,{...a,ref:t,src:r}):null});SM.displayName=xM;var CM=`AvatarFallback`,wM=j.forwardRef((e,t)=>{let{__scopeAvatar:n,delayMs:r,...i}=e,a=yM(CM,n),[o,s]=j.useState(r===void 0);return j.useEffect(()=>{if(r!==void 0){let e=window.setTimeout(()=>s(!0),r);return()=>window.clearTimeout(e)}},[r]),o&&a.imageLoadingStatus!==`loaded`?(0,M.jsx)(Hx.span,{...i,ref:t}):null});wM.displayName=CM;function TM(e,t){return e?t?(e.src!==t&&(e.src=t),e.complete&&e.naturalWidth>0?`loaded`:`loading`):`error`:`idle`}function EM(e,{referrerPolicy:t,crossOrigin:n}){let r=pM(),i=j.useRef(null),a=r?(i.current||=new window.Image,i.current):null,[o,s]=j.useState(()=>TM(a,e));return k_(()=>{s(TM(a,e))},[a,e]),k_(()=>{let e=e=>()=>{s(e)};if(!a)return;let r=e(`loaded`),i=e(`error`);return a.addEventListener(`load`,r),a.addEventListener(`error`,i),t&&(a.referrerPolicy=t),typeof n==`string`&&(a.crossOrigin=n),()=>{a.removeEventListener(`load`,r),a.removeEventListener(`error`,i)}},[a,n,t]),o}var DM=bM,OM=SM,kM=wM,AM=j.forwardRef(({className:e,...t},n)=>(0,M.jsx)(DM,{ref:n,className:Z(`relative flex h-10 w-10 shrink-0 overflow-hidden rounded-full`,e),...t}));AM.displayName=DM.displayName;var jM=j.forwardRef(({className:e,...t},n)=>(0,M.jsx)(OM,{ref:n,className:Z(`aspect-square h-full w-full`,e),...t}));jM.displayName=OM.displayName;var MM=j.forwardRef(({className:e,...t},n)=>(0,M.jsx)(kM,{ref:n,className:Z(`flex h-full w-full items-center justify-center rounded-full bg-muted`,e),...t}));MM.displayName=kM.displayName;var NM=(0,j.createContext)(null),PM=`auth-session-token`,FM=`auth-active-organization-id`;function IM(e){if(!(typeof window>`u`))try{e?.token?localStorage.setItem(PM,e.token):localStorage.removeItem(PM),e?.activeOrganizationId?localStorage.setItem(FM,e.activeOrganizationId):localStorage.removeItem(FM)}catch{}}function LM(e){if(!e)return{user:null,session:null};let t=e.data===void 0?e:e.data;return t?{user:t.user??null,session:t.session??null}:{user:null,session:null}}function RM({children:e}){let t=Rg(),[n,r]=(0,j.useState)(null),[i,a]=(0,j.useState)(null),[o,s]=(0,j.useState)(!0),[c,l]=(0,j.useState)(null),[u,d]=(0,j.useState)([]),[f,p]=(0,j.useState)(!1),[m,h]=(0,j.useState)(!1),g=(0,j.useCallback)(async()=>{if(t?.organizations){p(!0);try{d((await t.organizations.list())?.organizations??[])}catch{d([])}finally{p(!1),h(!0)}}},[t]),_=(0,j.useCallback)(async()=>{if(t?.auth){s(!0),l(null);try{let{user:e,session:n}=LM(await t.auth.me());r(e),a(n),IM(e?n:null)}catch(e){l(e),r(null),a(null),IM(null)}finally{s(!1)}}},[t]);(0,j.useEffect)(()=>{_()},[_]),(0,j.useEffect)(()=>{n?g():(d([]),h(!1))},[n,g]);let v=(0,j.useCallback)(async()=>{if(t?.auth)try{await t.auth.logout()}finally{r(null),a(null),d([]),h(!1),IM(null)}},[t]),y=(0,j.useCallback)(async e=>{if(t?.organizations){await t.organizations.setActive(e),await _();try{localStorage.setItem(FM,e)}catch{}}},[t,_]),b=(0,j.useMemo)(()=>({user:n,session:i,loading:o,error:c,refresh:_,logout:v,setActiveOrganization:y,organizations:u,organizationsLoading:f,organizationsFetched:m,reloadOrganizations:g}),[n,i,o,c,_,v,y,u,f,m,g]);return(0,j.createElement)(NM.Provider,{value:b},e)}function zM(){let e=(0,j.useContext)(NM);if(!e)throw Error(`useSession must be used inside <SessionProvider>.`);return e}function BM(){let{organizations:e,organizationsLoading:t,reloadOrganizations:n}=zM();return{organizations:e,loading:t,error:null,reload:n}}function VM(){let e=Rg(),[t,n]=(0,j.useState)(!1),[r,i]=(0,j.useState)(null);return{create:(0,j.useCallback)(async t=>{if(!e?.organizations)throw Error(`Client not ready`);n(!0),i(null);try{return await e.organizations.create(t)}catch(e){throw i(e),e}finally{n(!1)}},[e]),creating:t,error:r}}function HM(){let e=Rg(),{reloadOrganizations:t,refresh:n}=zM(),[r,i]=(0,j.useState)(!1),[a,o]=(0,j.useState)(null);return{update:(0,j.useCallback)(async(r,a)=>{if(!e?.organizations?.update)throw Error(`Client not ready`);i(!0),o(null);try{let i=await e.organizations.update(r,a);return await t(),await n(),i}catch(e){throw o(e),e}finally{i(!1)}},[e,t,n]),updating:r,error:a}}function UM(){let e=Rg(),{reloadOrganizations:t,refresh:n}=zM(),[r,i]=(0,j.useState)(!1),[a,o]=(0,j.useState)(null);return{remove:(0,j.useCallback)(async r=>{if(!e?.organizations?.delete)throw Error(`Client not ready`);i(!0),o(null);try{let i=await e.organizations.delete(r);return await t(),await n(),i}catch(e){throw o(e),e}finally{i(!1)}},[e,t,n]),deleting:r,error:a}}function WM(e,t){let n=(e||t||`?`).trim(),r=n.split(/\s+/);return r.length>=2?(r[0][0]+r[1][0]).toUpperCase():n.slice(0,2).toUpperCase()}function GM(){let{t:e}=vt(),t=N(),{user:n,loading:r,logout:i}=zM();return r&&!n?(0,M.jsx)(`div`,{className:`h-8 w-8 animate-pulse rounded-full bg-muted`,"aria-hidden":!0}):n?(0,M.jsxs)(Hj,{children:[(0,M.jsx)(Uj,{asChild:!0,children:(0,M.jsx)(Q,{variant:`ghost`,size:`icon`,className:`h-8 w-8 rounded-full`,children:(0,M.jsxs)(AM,{className:`h-7 w-7`,children:[n.image?(0,M.jsx)(jM,{src:n.image,alt:n.name??n.email??e(`userMenu.user`)}):null,(0,M.jsx)(MM,{className:`text-[11px]`,children:WM(n.name,n.email)})]})})}),(0,M.jsxs)(Kj,{align:`end`,className:`w-64`,children:[(0,M.jsx)(Xj,{children:(0,M.jsxs)(`div`,{className:`flex flex-col gap-0.5`,children:[(0,M.jsx)(`span`,{className:`truncate text-sm font-medium`,children:n.name||n.email}),n.email&&(0,M.jsx)(`span`,{className:`truncate text-[11px] text-muted-foreground`,children:n.email})]})}),(0,M.jsx)(Zj,{}),(0,M.jsxs)(qj,{onSelect:()=>t({to:`/account`}),children:[(0,M.jsx)(Hy,{className:`mr-2 h-3.5 w-3.5`}),e(`userMenu.account`)]}),(0,M.jsxs)(qj,{onSelect:()=>t({to:`/organizations`}),children:[(0,M.jsx)(ny,{className:`mr-2 h-3.5 w-3.5`}),e(`userMenu.organizations`)]}),(0,M.jsx)(Zj,{}),(0,M.jsxs)(qj,{onSelect:async()=>{try{await i()}finally{t({to:`/login`,replace:!0})}},children:[(0,M.jsx)(Cy,{className:`mr-2 h-3.5 w-3.5`}),e(`userMenu.signOut`)]})]})]}):(0,M.jsx)(Q,{variant:`outline`,size:`sm`,className:`h-8`,onClick:()=>t({to:`/login`}),children:e(`userMenu.signIn`)})}function KM(){let{t:e}=vt(),t=N(),n=Ea(),{organizations:r,loading:i,reload:a}=BM(),{session:o,setActiveOrganization:s}=zM(),[c,l]=(0,j.useState)(!1),[u,d]=(0,j.useState)(!1),f=o?.activeOrganizationId??void 0,p=(0,j.useMemo)(()=>r.find(e=>e.id===f)??null,[r,f]),m=async r=>{if(l(!1),r===f){t({to:`/organizations/$orgId/general`,params:{orgId:r}});return}d(!0);try{await s(r),await a(),q({title:e(`organizations.general.switched`)});let i=n.pathname.match(/^\/organizations\/[^/]+\/(general|members)\/?$/);t({to:(i?i[1]:`general`)===`members`?`/organizations/$orgId/members`:`/organizations/$orgId/general`,params:{orgId:r}})}catch(t){q({title:e(`organizations.switchFailed`),description:t.message,variant:`destructive`})}finally{d(!1)}};return(0,M.jsxs)(Hj,{open:c,onOpenChange:l,children:[(0,M.jsx)(Uj,{asChild:!0,children:(0,M.jsxs)(Q,{variant:`ghost`,size:`sm`,className:`h-8 gap-2 px-2 text-sm font-medium`,disabled:u,children:[p?(0,M.jsx)(`span`,{className:`max-w-[160px] truncate`,children:p.name}):(0,M.jsx)(`span`,{className:`text-muted-foreground`,children:e(i?`organizations.loading`:`organizationSwitcher.select`)}),(0,M.jsx)(sy,{className:`h-3 w-3 opacity-50`})]})}),(0,M.jsxs)(Kj,{align:`start`,className:`w-[280px]`,sideOffset:4,children:[(0,M.jsx)(Xj,{className:`text-[10px] uppercase tracking-wider text-muted-foreground`,children:e(`organizations.title`)}),r.length===0&&!i&&(0,M.jsx)(`div`,{className:`px-3 py-4 text-center text-xs text-muted-foreground`,children:e(`organizations.emptyTitle`)}),r.map(e=>(0,M.jsxs)(qj,{onSelect:t=>{t.preventDefault(),m(e.id)},className:`flex items-center gap-2`,children:[(0,M.jsxs)(`div`,{className:`flex-1 min-w-0`,children:[(0,M.jsx)(`div`,{className:`truncate font-medium`,children:e.name}),e.slug&&(0,M.jsx)(`code`,{className:`text-[11px] text-muted-foreground font-mono`,children:e.slug})]}),e.id===f&&(0,M.jsx)(ry,{className:`h-3.5 w-3.5 text-primary`})]},e.id)),(0,M.jsx)(Zj,{}),(0,M.jsxs)(qj,{onSelect:e=>{e.preventDefault(),l(!1),t({to:`/organizations/new`})},className:`gap-2 text-sm`,children:[(0,M.jsx)(Oy,{className:`h-3.5 w-3.5`}),e(`organizationSwitcher.new`)]}),(0,M.jsx)(qj,{onSelect:e=>{e.preventDefault(),l(!1),t({to:`/organizations`})},className:`gap-2 text-sm text-muted-foreground`,children:e(`organizationSwitcher.manage`)})]})]})}function qM({label:e}){return(0,M.jsx)(ta,{to:`/account`,className:`flex h-8 w-8 items-center justify-center rounded-md bg-brand-gradient text-primary-foreground shadow-sm shadow-primary/30 ring-1 ring-white/15 transition-transform hover:scale-105`,"aria-label":e,children:(0,M.jsx)(ly,{className:`h-4 w-4`})})}function JM(){return(0,M.jsx)(ay,{"aria-hidden":!0,className:`size-3.5 shrink-0 text-muted-foreground/50`})}function YM(){let{t:e}=vt(),t=Ea(),n=zi({strict:!1}),r=(0,j.useMemo)(()=>{let r=t.pathname,i=t=>e(`topBar.breadcrumb.${t}`);if(r.startsWith(`/account`)){let e=[{label:i(`account`)}];return r===`/account/profile`?e.push({label:i(`profile`)}):r===`/account/security`?e.push({label:i(`security`)}):r===`/account/sessions`?e.push({label:i(`sessions`)}):r===`/account/two-factor`?e.push({label:i(`twoFactor`)}):r===`/account/oauth-applications`?e.push({label:i(`oauthApps`)}):r===`/account/oauth-applications/new`?e.push({label:i(`oauthApps`)},{label:i(`new`)}):r.startsWith(`/account/oauth-applications/`)&&e.push({label:i(`oauthApps`)}),e}if(r===`/organizations/new`)return[{label:i(`organizations`)},{label:i(`new`)}];if(n.orgId){let e=r.endsWith(`/general`)?i(`general`):r.endsWith(`/members`)?i(`members`):i(`settings`);return[{label:i(`organizations`)},{label:e}]}return r===`/organizations`||r.startsWith(`/organizations/`)?[{label:i(`organizations`)}]:r.startsWith(`/accept-invitation/`)?[{label:i(`acceptInvitation`)}]:r.startsWith(`/auth/device`)?[{label:i(`deviceAuthorization`)}]:[{label:i(`account`)}]},[t.pathname,n.orgId,e]);return(0,M.jsxs)(`header`,{className:`sticky top-0 z-30 flex h-14 shrink-0 items-center justify-between gap-2 border-b bg-background/80 px-2 backdrop-blur supports-[backdrop-filter]:bg-background/70 sm:px-4`,children:[(0,M.jsxs)(`div`,{className:`flex min-w-0 items-center gap-1.5 sm:gap-2.5`,children:[(0,M.jsx)(`div`,{className:`sm:hidden`,children:(0,M.jsx)(hO,{className:`h-9 w-9`})}),(0,M.jsx)(qM,{label:e(`topBar.accountHome`)}),(0,M.jsx)(`span`,{className:`hidden text-sm font-semibold tracking-tight sm:inline`,children:e(`topBar.brand`)}),(0,M.jsxs)(`div`,{className:`hidden items-center gap-1.5 sm:flex`,children:[(0,M.jsx)(Yx,{orientation:`vertical`,className:`mx-1 h-4`}),(0,M.jsx)(KM,{}),(0,M.jsx)(JM,{}),(0,M.jsx)(RO,{children:(0,M.jsx)(zO,{children:r.map((e,t)=>(0,M.jsxs)(`div`,{className:`flex items-center`,children:[t>0&&(0,M.jsx)(UO,{}),(0,M.jsx)(BO,{children:(0,M.jsx)(HO,{className:`font-medium`,children:e.label})})]},t))})})]}),(0,M.jsx)(`div`,{className:`min-w-0 flex-1 sm:hidden`,children:r.length>0&&(0,M.jsx)(`span`,{className:`truncate text-sm font-medium`,children:r[r.length-1].label})})]}),(0,M.jsxs)(`div`,{className:`flex items-center gap-1 sm:gap-2`,children:[(0,M.jsx)(`div`,{className:`hidden sm:block`,children:(0,M.jsx)(cM,{})}),(0,M.jsx)(`div`,{className:`hidden sm:block`,children:(0,M.jsx)(uM,{})}),(0,M.jsx)(GM,{})]})]})}var XM=[{to:`/account`,label:`home`,icon:_y,exact:!0},{to:`/account/profile`,label:`profile`,icon:Hy},{to:`/account/security`,label:`security`,icon:Ny},{to:`/account/sessions`,label:`sessions`,icon:Ty},{to:`/account/two-factor`,label:`twoFactor`,icon:My},{to:`/account/invitations`,label:`invitations`,icon:vy},{to:`/account/linked-accounts`,label:`linkedAccounts`,icon:Sy}],ZM=[`group/nav relative transition-all duration-150`,`before:absolute before:left-0 before:top-1/2 before:h-5 before:w-[3px] before:-translate-y-1/2 before:rounded-r-full before:bg-brand-gradient before:opacity-0 before:transition-opacity`,`data-[active=true]:before:opacity-100`,`data-[active=true]:bg-sidebar-accent/80 data-[active=true]:text-sidebar-accent-foreground`,`[&>svg]:transition-transform [&>svg]:duration-150 hover:[&>svg]:scale-110`,`data-[active=true]:[&>svg]:text-primary`].join(` `);function QM(){let{t:e}=vt(),{pathname:t}=Ea(),{organizations:n}=BM(),r=t,i=t.match(/^\/organizations\/([^/]+)(?:\/.*)?$/),a=i&&n.some(e=>e.id===i[1])?i[1]:null;return(0,M.jsxs)(mO,{collapsible:`icon`,className:`h-full`,children:[(0,M.jsxs)(SO,{children:[(0,M.jsxs)(CO,{children:[(0,M.jsx)(wO,{children:e(`sidebar.groups.account`)}),(0,M.jsx)(EO,{children:(0,M.jsx)(DO,{children:XM.map(t=>{let n=t.icon;return(0,M.jsx)(OO,{children:(0,M.jsx)(kO,{asChild:!0,isActive:t.exact?r===t.to||r===`${t.to}/`:r===t.to||r.startsWith(`${t.to}/`),tooltip:e(`sidebar.items.${t.label}`),className:ZM,children:(0,M.jsxs)(ta,{to:t.to,children:[(0,M.jsx)(n,{className:`size-4`}),(0,M.jsx)(`span`,{children:e(`sidebar.items.${t.label}`)})]})})},t.to)})})})]}),(0,M.jsx)(xO,{}),(0,M.jsxs)(CO,{children:[(0,M.jsx)(wO,{children:e(`sidebar.groups.organization`)}),(0,M.jsx)(EO,{children:(0,M.jsxs)(DO,{children:[(0,M.jsx)(OO,{children:(0,M.jsx)(kO,{asChild:!0,isActive:t===`/organizations`,tooltip:e(`sidebar.items.overview`),className:ZM,children:(0,M.jsxs)(ta,{to:`/organizations`,children:[(0,M.jsx)(ny,{className:`size-4`}),(0,M.jsx)(`span`,{children:e(`sidebar.items.overview`)})]})})}),a&&(0,M.jsxs)(M.Fragment,{children:[(0,M.jsx)(OO,{children:(0,M.jsx)(kO,{asChild:!0,isActive:t===`/organizations/${a}/general`,tooltip:e(`sidebar.items.general`),className:ZM,children:(0,M.jsxs)(ta,{to:`/organizations/$orgId/general`,params:{orgId:a},children:[(0,M.jsx)(jy,{className:`size-4`}),(0,M.jsx)(`span`,{children:e(`sidebar.items.general`)})]})})}),(0,M.jsx)(OO,{children:(0,M.jsx)(kO,{asChild:!0,isActive:t===`/organizations/${a}/members`,tooltip:e(`sidebar.items.members`),className:ZM,children:(0,M.jsxs)(ta,{to:`/organizations/$orgId/members`,params:{orgId:a},children:[(0,M.jsx)(Wy,{className:`size-4`}),(0,M.jsx)(`span`,{children:e(`sidebar.items.members`)})]})})}),(0,M.jsx)(OO,{children:(0,M.jsx)(kO,{asChild:!0,isActive:t===`/organizations/${a}/teams`,tooltip:e(`sidebar.items.teams`),className:ZM,children:(0,M.jsxs)(ta,{to:`/organizations/$orgId/teams`,params:{orgId:a},children:[(0,M.jsx)(Uy,{className:`size-4`}),(0,M.jsx)(`span`,{children:e(`sidebar.items.teams`)})]})})})]})]})})]}),(0,M.jsx)(xO,{}),(0,M.jsxs)(CO,{children:[(0,M.jsx)(wO,{children:e(`sidebar.groups.developer`)}),(0,M.jsx)(EO,{children:(0,M.jsx)(DO,{children:(0,M.jsx)(OO,{children:(0,M.jsx)(kO,{asChild:!0,isActive:t.startsWith(`/account/oauth-applications`),tooltip:e(`sidebar.items.oauthApps`),className:ZM,children:(0,M.jsxs)(ta,{to:`/account/oauth-applications`,children:[(0,M.jsx)(yy,{className:`size-4`}),(0,M.jsx)(`span`,{children:e(`sidebar.items.oauthApps`)})]})})})})})]})]}),(0,M.jsx)(bO,{children:(0,M.jsx)(DO,{children:(0,M.jsx)(OO,{children:(0,M.jsx)($M,{})})})})]})}function $M(){let{t:e}=vt(),{state:t,toggleSidebar:n}=fO(),r=e(t===`collapsed`?`sidebar.expand`:`sidebar.collapse`);return(0,M.jsx)(kO,{onClick:n,tooltip:r,"aria-label":r,children:(0,M.jsx)(Dy,{className:`size-4`})})}function eN(){return typeof window<`u`&&window.location.pathname.startsWith(`/_account`)?window.location.origin:`http://localhost:3000`}var tN=new Set([`/login`,`/register`,`/forgot-password`,`/reset-password`,`/verify-email`,`/auth/device`,`/setup`]);function nN(e){return tN.has(e)||e.startsWith(`/accept-invitation/`)}function rN(){let[e,t]=(0,j.useState)(null);return(0,j.useEffect)(()=>{let e=!1;return(async()=>{try{let n=await fetch(`/api/v1/auth/bootstrap-status`);if(!n.ok){e||t(!0);return}let r=await n.json();e||t(r.hasOwner!==!1)}catch{e||t(!0)}})(),()=>{e=!0}},[]),e}function iN({children:e}){let{user:t,loading:n}=zM(),r=N(),i=Ea(),a=nN(i.pathname),o=i.pathname.startsWith(`/oauth/`),s=rN(),c=i.pathname===`/setup`;return(0,j.useEffect)(()=>{s===!1&&!c&&!t&&r({to:`/setup`,replace:!0})},[s,c,t,r]),(0,j.useEffect)(()=>{n||s!==!1&&!t&&!a&&r({to:`/login`,search:{redirect:i.pathname+i.searchStr},replace:!0})},[t,n,a,r,i.pathname,i.searchStr,s]),s===null||n&&!t?(0,M.jsx)(`div`,{className:`flex min-h-screen w-full flex-1 items-center justify-center bg-background`,children:(0,M.jsx)(`div`,{className:`h-8 w-8 animate-spin rounded-full border-4 border-muted border-t-primary`})}):s===!1&&!c||!t&&!a?null:a||o?(0,M.jsx)(`div`,{className:`flex min-h-screen w-full`,children:e}):(0,M.jsxs)(pO,{className:`flex h-svh w-full flex-col`,children:[(0,M.jsx)(YM,{}),(0,M.jsxs)(`div`,{className:`flex min-h-0 flex-1 w-full`,children:[(0,M.jsx)(QM,{}),(0,M.jsx)(_O,{className:`flex min-w-0 flex-1 flex-col overflow-hidden`,children:(0,M.jsx)(`main`,{className:`flex min-h-0 flex-1 flex-col overflow-auto bg-background`,children:e})})]})]})}function aN(){let e=eN();return(0,M.jsx)(Lg,{client:(0,j.useMemo)(()=>new Pg({baseUrl:e}),[e]),children:(0,M.jsxs)(RM,{children:[(0,M.jsx)(iN,{children:(0,M.jsx)(_a,{})}),(0,M.jsx)(Ex,{})]})})}var oN=oa({component:aN}),$=j.forwardRef(({className:e,...t},n)=>(0,M.jsx)(`div`,{ref:n,className:Z(`rounded-lg border bg-card text-card-foreground shadow-sm`,e),...t}));$.displayName=`Card`;var sN=j.forwardRef(({className:e,...t},n)=>(0,M.jsx)(`div`,{ref:n,className:Z(`flex flex-col space-y-1.5 p-6`,e),...t}));sN.displayName=`CardHeader`;var cN=j.forwardRef(({className:e,...t},n)=>(0,M.jsx)(`h3`,{ref:n,className:Z(`text-2xl font-semibold leading-none tracking-tight`,e),...t}));cN.displayName=`CardTitle`;var lN=j.forwardRef(({className:e,...t},n)=>(0,M.jsx)(`p`,{ref:n,className:Z(`text-sm text-muted-foreground`,e),...t}));lN.displayName=`CardDescription`;var uN=j.forwardRef(({className:e,...t},n)=>(0,M.jsx)(`div`,{ref:n,className:Z(`p-6 pt-0`,e),...t}));uN.displayName=`CardContent`;var dN=j.forwardRef(({className:e,...t},n)=>(0,M.jsx)(`div`,{ref:n,className:Z(`flex items-center p-6 pt-0`,e),...t}));dN.displayName=`CardFooter`;function fN({children:e,headline:t,subline:n,formWidth:r=`sm`}){let{t:i}=vt();return(0,M.jsxs)(`div`,{className:`relative grid min-h-svh w-full lg:grid-cols-2`,children:[(0,M.jsx)(`div`,{className:`flex flex-col items-center justify-center gap-6 bg-background p-6 md:p-10`,children:(0,M.jsxs)(`div`,{className:Z(`flex w-full flex-col gap-6`,r===`md`?`max-w-md`:`max-w-sm`),children:[(0,M.jsxs)(`a`,{href:`#`,className:`flex items-center gap-2 self-center font-semibold tracking-tight`,children:[(0,M.jsx)(`div`,{className:`flex size-7 items-center justify-center rounded-md bg-brand-gradient text-primary-foreground shadow-sm shadow-primary/30`,children:(0,M.jsx)(hy,{className:`size-4`})}),(0,M.jsx)(`span`,{children:`ObjectStack`})]}),e]})}),(0,M.jsxs)(`aside`,{"aria-hidden":!0,className:`relative hidden overflow-hidden bg-brand-mesh text-white lg:flex lg:flex-col lg:justify-between lg:p-12`,children:[(0,M.jsx)(`div`,{className:`pointer-events-none absolute inset-0 opacity-[0.12]`,style:{backgroundImage:`linear-gradient(rgba(255,255,255,0.6) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,0.6) 1px, transparent 1px)`,backgroundSize:`48px 48px`,maskImage:`radial-gradient(ellipse at center, black 40%, transparent 75%)`}}),(0,M.jsx)(`div`,{className:`pointer-events-none absolute -left-24 top-1/3 size-[28rem] rounded-full bg-white/15 blur-3xl`}),(0,M.jsx)(`div`,{className:`pointer-events-none absolute -right-20 -bottom-20 size-[24rem] rounded-full bg-white/10 blur-3xl`}),(0,M.jsxs)(`div`,{className:`relative flex items-center gap-2 text-sm font-semibold tracking-tight`,children:[(0,M.jsx)(`div`,{className:`flex size-7 items-center justify-center rounded-md bg-white/15 ring-1 ring-white/30 backdrop-blur`,children:(0,M.jsx)(hy,{className:`size-4`})}),`ObjectStack`]}),(0,M.jsxs)(`div`,{className:`relative max-w-md space-y-5`,children:[(0,M.jsx)(`h2`,{className:`text-balance text-3xl font-semibold leading-tight tracking-tight md:text-4xl`,children:t??i(`auth.login.brandHeadline`,{defaultValue:`The AI-native backend for business software.`})}),(0,M.jsx)(`p`,{className:`text-balance text-base/relaxed text-white/80`,children:n??i(`auth.login.brandSubline`,{defaultValue:`One identity, every workspace. Sign in to manage your account, organizations and connected apps.`})})]}),(0,M.jsxs)(`div`,{className:`relative text-xs text-white/60`,children:[`© `,new Date().getFullYear(),` ObjectStack`]})]})]})}var pN=sa(`/verify-email`)({validateSearch:e=>{let t=e.token;return typeof t==`string`?{token:t}:{}},component:mN});function mN(){let{t:e}=vt(),{token:t}=pN.useSearch(),n=Rg(),[r,i]=(0,j.useState)(`loading`),[a,o]=(0,j.useState)(``);return(0,j.useEffect)(()=>{if(!t){i(`error`),o(e(`auth.verifyEmail.missingToken`));return}let r=!1;return(async()=>{try{await n.auth.verifyEmail({token:t}),r||i(`success`)}catch(t){r||(i(`error`),o(t.message||e(`auth.verifyEmail.errorDescription`)))}})(),()=>{r=!0}},[t,e,n]),(0,M.jsx)(fN,{headline:e(`auth.verifyEmail.brandHeadline`,{defaultValue:`One more step to get started.`}),subline:e(`auth.verifyEmail.brandSubline`,{defaultValue:`Verifying your email keeps your ObjectStack account secure.`}),children:(0,M.jsxs)($,{className:`border-border/60 shadow-sm shadow-primary/5 backdrop-blur supports-[backdrop-filter]:bg-card/95`,children:[r===`loading`&&(0,M.jsxs)(M.Fragment,{children:[(0,M.jsxs)(sN,{className:`text-center`,children:[(0,M.jsx)(cN,{className:`text-xl tracking-tight`,children:e(`auth.verifyEmail.verifyingTitle`)}),(0,M.jsx)(lN,{children:e(`auth.verifyEmail.verifyingDescription`)})]}),(0,M.jsx)(uN,{className:`flex justify-center py-6`,children:(0,M.jsx)(`div`,{className:`h-10 w-10 animate-spin rounded-full border-4 border-muted border-t-primary`})})]}),r===`success`&&(0,M.jsxs)(M.Fragment,{children:[(0,M.jsxs)(sN,{className:`text-center`,children:[(0,M.jsx)(`div`,{className:`mx-auto mb-2 flex size-12 items-center justify-center rounded-full bg-emerald-500/10 text-emerald-500 ring-1 ring-emerald-500/30`,children:(0,M.jsx)(cy,{className:`size-6`})}),(0,M.jsx)(cN,{className:`text-xl tracking-tight`,children:e(`auth.verifyEmail.successTitle`)}),(0,M.jsx)(lN,{children:e(`auth.verifyEmail.successDescription`)})]}),(0,M.jsx)(uN,{className:`text-center`,children:(0,M.jsx)(ta,{to:`/login`,className:`text-sm font-medium text-primary underline-offset-4 hover:underline`,children:e(`auth.verifyEmail.signInLink`)})})]}),r===`error`&&(0,M.jsxs)(M.Fragment,{children:[(0,M.jsxs)(sN,{className:`text-center`,children:[(0,M.jsx)(`div`,{className:`mx-auto mb-2 flex size-12 items-center justify-center rounded-full bg-destructive/10 text-destructive ring-1 ring-destructive/30`,children:(0,M.jsx)(uy,{className:`size-6`})}),(0,M.jsx)(cN,{className:`text-xl tracking-tight`,children:e(`auth.verifyEmail.errorTitle`)}),(0,M.jsx)(lN,{children:a||e(`auth.verifyEmail.errorDescription`)})]}),(0,M.jsx)(uN,{className:`text-center`,children:(0,M.jsx)(ta,{to:`/login`,className:`text-sm font-medium text-primary underline-offset-4 hover:underline`,children:e(`auth.verifyEmail.backToSignIn`)})})]})]})})}var hN=`Label`,gN=j.forwardRef((e,t)=>(0,M.jsx)(Hx.label,{...e,ref:t,onMouseDown:t=>{t.target.closest(`button, input, select, textarea`)||(e.onMouseDown?.(t),!t.defaultPrevented&&t.detail>1&&t.preventDefault())}}));gN.displayName=hN;var _N=gN,vN=Wv(`text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70`),yN=j.forwardRef(({className:e,...t},n)=>(0,M.jsx)(_N,{ref:n,className:Z(vN(),e),...t}));yN.displayName=_N.displayName;var bN=sa(`/setup`)({component:SN});function xN(e){return e.toLowerCase().replace(/[^a-z0-9]+/g,`-`).replace(/^-+|-+$/g,``)}function SN(){let{t:e}=vt(),t=N(),n=Rg(),{user:r,refresh:i}=zM(),[a,o]=(0,j.useState)(``),[s,c]=(0,j.useState)(``),[l,u]=(0,j.useState)(``),[d,f]=(0,j.useState)(``),[p,m]=(0,j.useState)(!1),[h,g]=(0,j.useState)(null);return(0,j.useEffect)(()=>{let e=!1;return(async()=>{try{let{hasOwner:t}=await n.auth.bootstrapStatus();e||g(t)}catch{e||g(!1)}})(),()=>{e=!0}},[n]),(0,j.useEffect)(()=>{h===!0&&!r&&t({to:`/login`,replace:!0})},[h,r,t]),(0,j.useEffect)(()=>{r&&window.location.assign(`/`)},[r]),h===null?(0,M.jsx)(`div`,{className:`flex min-h-svh w-full items-center justify-center bg-muted`,children:(0,M.jsx)(`div`,{className:`h-8 w-8 animate-spin rounded-full border-4 border-muted-foreground/20 border-t-primary`})}):(0,M.jsx)(`div`,{className:`flex min-h-svh w-full items-center justify-center bg-muted p-6`,children:(0,M.jsxs)(`div`,{className:`flex w-full max-w-md flex-col gap-6`,children:[(0,M.jsxs)(`a`,{href:`#`,className:`flex items-center gap-2 self-center font-medium`,children:[(0,M.jsx)(`div`,{className:`flex size-6 items-center justify-center rounded-md bg-primary text-primary-foreground`,children:(0,M.jsx)(hy,{className:`size-4`})}),`ObjectStack`]}),(0,M.jsxs)($,{children:[(0,M.jsxs)(sN,{className:`text-center`,children:[(0,M.jsx)(cN,{children:e(`auth.setup.welcomeTitle`)}),(0,M.jsx)(lN,{children:e(`auth.setup.description`)})]}),(0,M.jsx)(uN,{children:(0,M.jsxs)(`form`,{onSubmit:async t=>{if(t.preventDefault(),n?.auth){m(!0);try{await n.auth.register({name:a,email:s,password:l}),await i();let e=d.trim();if(e)try{let{organizations:t}=await n.organizations.list(),r=t?.[0],i;if(r?.id)await n.organizations.update(r.id,{name:e,slug:xN(e)}),i=r.id;else{let t=await n.organizations.create({name:e,slug:xN(e)});i=t?.id??t?.data?.id}i&&await n.organizations.setActive(i).catch(()=>{})}catch(e){console.warn(`[setup] organization rename/create failed`,e)}window.location.assign(`/`)}catch(t){q({title:e(`auth.setup.failed`),description:t.message,variant:`destructive`})}finally{m(!1)}}},className:`flex flex-col gap-4`,children:[(0,M.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,M.jsx)(yN,{htmlFor:`name`,children:e(`auth.setup.yourName`)}),(0,M.jsx)(Vx,{id:`name`,autoComplete:`name`,required:!0,value:a,onChange:e=>o(e.target.value)})]}),(0,M.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,M.jsx)(yN,{htmlFor:`orgName`,children:e(`auth.setup.orgName`)}),(0,M.jsx)(Vx,{id:`orgName`,required:!0,placeholder:e(`auth.setup.orgNamePlaceholder`),value:d,onChange:e=>f(e.target.value)})]}),(0,M.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,M.jsx)(yN,{htmlFor:`email`,children:e(`auth.emailLabel`)}),(0,M.jsx)(Vx,{id:`email`,type:`email`,placeholder:e(`auth.emailPlaceholder`),autoComplete:`email`,required:!0,value:s,onChange:e=>c(e.target.value)})]}),(0,M.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,M.jsx)(yN,{htmlFor:`password`,children:e(`auth.passwordLabel`)}),(0,M.jsx)(Vx,{id:`password`,type:`password`,autoComplete:`new-password`,required:!0,minLength:8,placeholder:e(`auth.setup.passwordHint`),value:l,onChange:e=>u(e.target.value)})]}),(0,M.jsx)(Q,{type:`submit`,className:`mt-2 w-full`,disabled:p,children:e(p?`auth.setup.submitting`:`auth.setup.submit`)})]})})]})]})})}var CN=sa(`/reset-password`)({validateSearch:e=>{let t=e.token;return typeof t==`string`?{token:t}:{}},component:wN});function wN(){let{t:e}=vt(),t=N(),{token:n}=CN.useSearch(),[r,i]=(0,j.useState)(``),[a,o]=(0,j.useState)(``),[s,c]=(0,j.useState)(!1);return(0,M.jsx)(fN,{headline:e(`auth.resetPassword.brandHeadline`,{defaultValue:`Choose a new password.`}),subline:e(`auth.resetPassword.brandSubline`,{defaultValue:`Make it strong — at least 8 characters with a mix of letters and numbers.`}),children:(0,M.jsxs)($,{className:`border-border/60 shadow-sm shadow-primary/5 backdrop-blur supports-[backdrop-filter]:bg-card/95`,children:[(0,M.jsxs)(sN,{className:`text-center`,children:[(0,M.jsx)(cN,{className:`text-xl tracking-tight`,children:e(`auth.resetPassword.title`)}),(0,M.jsx)(lN,{children:e(`auth.resetPassword.description`)})]}),(0,M.jsx)(uN,{children:n?(0,M.jsxs)(`form`,{onSubmit:async i=>{if(i.preventDefault(),r!==a){q({title:e(`auth.resetPassword.passwordsMismatch`),variant:`destructive`});return}if(!n){q({title:e(`auth.resetPassword.missingToken`),variant:`destructive`});return}c(!0);try{let i=await fetch(`/api/v1/auth/reset-password`,{method:`POST`,headers:{"Content-Type":`application/json`},credentials:`include`,body:JSON.stringify({token:n,newPassword:r})});if(!i.ok){let e=await i.json().catch(()=>({}));throw Error(e?.message||`Request failed: ${i.status}`)}q({title:e(`auth.resetPassword.success`)}),t({to:`/login`})}catch(t){q({title:e(`auth.resetPassword.failed`),description:t.message,variant:`destructive`})}finally{c(!1)}},className:`flex flex-col gap-4`,children:[(0,M.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,M.jsx)(yN,{htmlFor:`new-password`,children:e(`auth.resetPassword.newPassword`)}),(0,M.jsx)(Vx,{id:`new-password`,type:`password`,autoComplete:`new-password`,required:!0,minLength:8,value:r,onChange:e=>i(e.target.value)})]}),(0,M.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,M.jsx)(yN,{htmlFor:`confirm-password`,children:e(`auth.resetPassword.confirmPassword`)}),(0,M.jsx)(Vx,{id:`confirm-password`,type:`password`,autoComplete:`new-password`,required:!0,minLength:8,value:a,onChange:e=>o(e.target.value)})]}),(0,M.jsx)(Q,{type:`submit`,className:`w-full bg-brand-gradient text-primary-foreground shadow-sm shadow-primary/20 transition-all hover:opacity-95 hover:shadow-md hover:shadow-primary/30`,disabled:s,children:e(s?`auth.resetPassword.submitting`:`auth.resetPassword.submit`)})]}):(0,M.jsxs)(`p`,{className:`text-sm text-muted-foreground text-center`,children:[e(`auth.resetPassword.invalidToken`),` `,(0,M.jsx)(ta,{to:`/forgot-password`,className:`font-medium text-primary underline-offset-4 hover:underline`,children:e(`auth.resetPassword.requestNewLink`)})]})})]})})}function TN({mode:e,redirect:t}){let{t:n}=vt(),r=Rg(),[i,a]=(0,j.useState)([]),[o,s]=(0,j.useState)(!0);if((0,j.useEffect)(()=>{r?.auth?.getConfig&&r.auth.getConfig().then(e=>{a((e?.socialProviders??e?.data?.socialProviders??[]).filter(e=>e.enabled))}).catch(e=>{console.warn(`[SocialSignInButtons] failed to load auth config`,e)}).finally(()=>s(!1))},[r]),o||i.length===0)return null;let c=n(e===`sign-in`?`auth.social.continueWith`:`auth.social.signUpWith`),l=window.location.origin+`/_account/login`+(t?`?redirect=${encodeURIComponent(t)}`:``);return(0,M.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[i.map(e=>(0,M.jsxs)(Q,{type:`button`,variant:`outline`,className:`w-full`,onClick:()=>r.auth.signInWithProvider(e.id,{callbackURL:l,errorCallbackURL:l,type:e.type??`social`}),children:[(0,M.jsx)(`span`,{className:`mr-2 flex h-4 w-4 items-center justify-center rounded-sm bg-muted text-[10px] font-bold uppercase`,children:e.id[0]}),c,` `,e.name]},e.id)),(0,M.jsxs)(`div`,{className:`relative my-1`,children:[(0,M.jsx)(`div`,{className:`absolute inset-0 flex items-center`,children:(0,M.jsx)(`span`,{className:`w-full border-t`})}),(0,M.jsx)(`div`,{className:`relative flex justify-center text-xs uppercase`,children:(0,M.jsx)(`span`,{className:`bg-card px-2 text-muted-foreground`,children:n(`auth.social.orContinueEmail`)})})]})]})}var EN=sa(`/register`)({validateSearch:e=>{let t=e.redirect;return typeof t==`string`?{redirect:t}:{}},component:kN});function DN(e){return!!e&&e.startsWith(`/`)&&!e.startsWith(`//`)}function ON(e){return e.startsWith(`/_`)?e:`/_account/`.replace(/\/$/,``)+e}function kN(){let{t:e}=vt(),t=N(),{redirect:n}=EN.useSearch(),r=Rg(),{session:i,user:a,loading:o,refresh:s,organizations:c,organizationsLoading:l,organizationsFetched:u,setActiveOrganization:d}=zM(),[f,p]=(0,j.useState)(``),[m,h]=(0,j.useState)(``),[g,_]=(0,j.useState)(``),[v,y]=(0,j.useState)(!1),[b,x]=(0,j.useState)(!1);return(0,j.useEffect)(()=>{if(a){if(typeof window<`u`){let e=new URLSearchParams(window.location.search);if(e.has(`client_id`)&&e.has(`redirect_uri`)){window.location.assign(`/api/v1/auth/oauth2/authorize${window.location.search}`);return}}if(!i?.activeOrganizationId){if(!u||l||b)return;if(c.length===1){x(!0),d(c[0].id).catch(()=>void 0).finally(()=>x(!1));return}if(c.length>1){t({to:`/organizations`});return}t({to:`/organizations/new`});return}if(!b){if(DN(n)){window.location.assign(ON(n));return}window.location.assign(`/`)}}},[a,i,t,n,c,l,u,b,d]),(0,M.jsx)(fN,{headline:e(`auth.register.brandHeadline`,{defaultValue:`Create your ObjectStack account.`}),subline:e(`auth.register.brandSubline`,{defaultValue:`One identity for every workspace, app and integration in your stack.`}),children:o||a?(0,M.jsxs)(`div`,{className:`flex flex-col items-center gap-3 py-10 text-sm text-muted-foreground`,children:[(0,M.jsx)(`div`,{className:`size-6 animate-spin rounded-full border-2 border-muted-foreground border-t-transparent`}),(0,M.jsx)(`span`,{children:a?e(`auth.register.signingIn`,{defaultValue:`Setting up your account…`}):e(`auth.login.redirecting`,{defaultValue:`Loading…`})})]}):(0,M.jsxs)(`div`,{className:`flex flex-col gap-6`,children:[(0,M.jsxs)($,{className:`border-border/60 shadow-sm shadow-primary/5 backdrop-blur supports-[backdrop-filter]:bg-card/95`,children:[(0,M.jsxs)(sN,{className:`text-center`,children:[(0,M.jsx)(cN,{className:`text-xl tracking-tight`,children:e(`auth.register.title`)}),(0,M.jsx)(lN,{children:e(`auth.register.description`)})]}),(0,M.jsx)(uN,{children:(0,M.jsx)(`form`,{onSubmit:async t=>{if(t.preventDefault(),r?.auth){y(!0);try{await r.auth.register({name:f,email:m,password:g}),await s(),q({title:e(`auth.register.successToast`)})}catch(t){q({title:e(`auth.register.failed`),description:t.message,variant:`destructive`})}finally{y(!1)}}},children:(0,M.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,M.jsx)(TN,{mode:`sign-up`,redirect:n}),(0,M.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,M.jsx)(yN,{htmlFor:`name`,children:e(`auth.nameLabel`)}),(0,M.jsx)(Vx,{id:`name`,autoComplete:`name`,required:!0,value:f,onChange:e=>p(e.target.value)})]}),(0,M.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,M.jsx)(yN,{htmlFor:`email`,children:e(`auth.emailLabel`)}),(0,M.jsx)(Vx,{id:`email`,type:`email`,placeholder:e(`auth.emailPlaceholder`),autoComplete:`email`,required:!0,value:m,onChange:e=>h(e.target.value)})]}),(0,M.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,M.jsx)(yN,{htmlFor:`password`,children:e(`auth.passwordLabel`)}),(0,M.jsx)(Vx,{id:`password`,type:`password`,autoComplete:`new-password`,required:!0,minLength:8,value:g,onChange:e=>_(e.target.value)})]}),(0,M.jsx)(Q,{type:`submit`,className:`w-full bg-brand-gradient text-primary-foreground shadow-sm shadow-primary/20 transition-all hover:opacity-95 hover:shadow-md hover:shadow-primary/30`,disabled:v,children:e(v?`auth.register.submitting`:`auth.register.submit`)}),(0,M.jsxs)(`p`,{className:`text-center text-sm text-muted-foreground`,children:[e(`auth.register.haveAccount`),` `,(0,M.jsx)(ta,{to:`/login`,search:n?{redirect:n}:void 0,className:`font-medium text-primary underline-offset-4 hover:underline`,children:e(`auth.register.signIn`)})]})]})})})]}),(0,M.jsxs)(`p`,{className:`px-6 text-center text-xs text-muted-foreground [&_a]:underline [&_a]:underline-offset-4 [&_a]:hover:text-primary`,children:[e(`legal.agreementPrefix`),` `,(0,M.jsx)(`a`,{href:`#`,children:e(`legal.termsOfService`)}),` `,e(`legal.and`),` `,(0,M.jsx)(`a`,{href:`#`,children:e(`legal.privacyPolicy`)}),`.`]})]})})}var AN=sa(`/login`)({validateSearch:e=>{let t=e.redirect,n=e.fallback;return{...typeof t==`string`?{redirect:t}:{},...n===`1`||n===`true`||n===!0?{fallback:!0}:{}}},component:NN});function jN(e){return!!e&&e.startsWith(`/`)&&!e.startsWith(`//`)}function MN(e){return e.startsWith(`/_`)?e:`/_account/`.replace(/\/$/,``)+e}function NN(){let{t:e}=vt(),t=N(),{redirect:n,fallback:r}=AN.useSearch(),i=Rg(),{session:a,user:o,loading:s,refresh:c,organizations:l,organizationsLoading:u,organizationsFetched:d,setActiveOrganization:f}=zM(),[p,m]=(0,j.useState)(``),[h,g]=(0,j.useState)(``),[_,v]=(0,j.useState)(!1),[y,b]=(0,j.useState)(!1),[x,S]=(0,j.useState)(!r);return(0,j.useEffect)(()=>{if(r){S(!1);return}if(o){S(!1);return}if(typeof window<`u`){let e=new URLSearchParams(window.location.search);if(e.has(`client_id`)&&e.has(`redirect_uri`)){S(!1);return}}if(!i?.auth?.getConfig||!i?.auth?.signInWithProvider){S(!1);return}let e=!1;return(async(t,n)=>{let r;for(let a=1;a<=t;a+=1){if(e)throw Error(`cancelled`);try{return await i.auth.getConfig()}catch(e){r=e,a<t&&await new Promise(e=>setTimeout(e,n*a))}}throw r})(4,500).then(t=>{if(e)return;let r=(t?.socialProviders??t?.data?.socialProviders??[]).find(e=>e.enabled&&e.id===`objectstack-cloud`);if(!r){S(!1);return}let a=window.location.origin+`/_account/`,o=new URLSearchParams({fallback:`1`});n&&o.set(`redirect`,n);let s=`${a}login?${o.toString()}`,c=jN(n)?window.location.origin+MN(n):window.location.origin+`/`;i.auth.signInWithProvider(r.id,{callbackURL:c,errorCallbackURL:s,type:r.type??`oidc`}).catch(t=>{console.warn(`[LoginPage] platform SSO auto-redirect failed`,t),e||S(!1)})}).catch(t=>{console.warn(`[LoginPage] failed to probe auth config`,t),e||S(!1)}),()=>{e=!0}},[i,r,n,o]),(0,j.useEffect)(()=>{if(o){if(typeof window<`u`){let e=new URLSearchParams(window.location.search);if(e.has(`client_id`)&&e.has(`redirect_uri`)){window.location.assign(`/api/v1/auth/oauth2/authorize${window.location.search}`);return}}if(!a?.activeOrganizationId){if(!d||u||y)return;if(l.length===1){b(!0),f(l[0].id).catch(()=>void 0).finally(()=>b(!1));return}if(l.length===0){t({to:`/organizations/new`});return}t({to:`/organizations`});return}if(!y){if(jN(n)){window.location.assign(MN(n));return}window.location.assign(`/`)}}},[o,a,t,n,l,u,d,y,f]),x||s||o?(0,M.jsx)(fN,{children:(0,M.jsxs)(`div`,{className:`flex flex-col items-center gap-3 py-10 text-sm text-muted-foreground`,children:[(0,M.jsx)(`div`,{className:`size-6 animate-spin rounded-full border-2 border-muted-foreground border-t-transparent`}),(0,M.jsx)(`span`,{children:o?e(`auth.login.signingIn`,{defaultValue:`Signing you in…`}):e(`auth.login.redirecting`,{defaultValue:`Redirecting to ObjectStack…`})})]})}):(0,M.jsx)(fN,{children:(0,M.jsxs)(`div`,{className:`flex flex-col gap-6`,children:[(0,M.jsxs)($,{className:`border-border/60 shadow-sm shadow-primary/5 backdrop-blur supports-[backdrop-filter]:bg-card/95`,children:[(0,M.jsxs)(sN,{className:`text-center`,children:[(0,M.jsx)(cN,{className:`text-xl tracking-tight`,children:e(`auth.login.title`)}),(0,M.jsx)(lN,{children:e(`auth.login.description`)})]}),(0,M.jsx)(uN,{children:(0,M.jsx)(`form`,{onSubmit:async t=>{if(t.preventDefault(),i?.auth){v(!0);try{await i.auth.login({type:`email`,email:p,password:h}),await c(),q({title:e(`auth.login.welcomeToast`)})}catch(t){q({title:e(`auth.login.failed`),description:t.message,variant:`destructive`})}finally{v(!1)}}},children:(0,M.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,M.jsx)(TN,{mode:`sign-in`,redirect:n}),(0,M.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,M.jsx)(yN,{htmlFor:`email`,children:e(`auth.emailLabel`)}),(0,M.jsx)(Vx,{id:`email`,type:`email`,placeholder:e(`auth.emailPlaceholder`),autoComplete:`email`,required:!0,value:p,onChange:e=>m(e.target.value)})]}),(0,M.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,M.jsxs)(`div`,{className:`flex items-center`,children:[(0,M.jsx)(yN,{htmlFor:`password`,children:e(`auth.passwordLabel`)}),(0,M.jsx)(ta,{to:`/forgot-password`,className:`ml-auto text-sm underline-offset-4 hover:underline`,children:e(`auth.login.forgotPassword`)})]}),(0,M.jsx)(Vx,{id:`password`,type:`password`,autoComplete:`current-password`,required:!0,value:h,onChange:e=>g(e.target.value)})]}),(0,M.jsx)(Q,{type:`submit`,className:`w-full bg-brand-gradient text-primary-foreground shadow-sm shadow-primary/20 transition-all hover:opacity-95 hover:shadow-md hover:shadow-primary/30`,disabled:_,children:e(_?`auth.login.submitting`:`auth.login.submit`)}),(0,M.jsxs)(`p`,{className:`text-center text-sm text-muted-foreground`,children:[e(`auth.login.noAccount`),` `,(0,M.jsx)(ta,{to:`/register`,search:n?{redirect:n}:void 0,className:`font-medium text-primary underline-offset-4 hover:underline`,children:e(`auth.login.signUp`)})]})]})})})]}),(0,M.jsxs)(`p`,{className:`px-6 text-center text-xs text-muted-foreground [&_a]:underline [&_a]:underline-offset-4 [&_a]:hover:text-primary`,children:[e(`legal.agreementPrefix`),` `,(0,M.jsx)(`a`,{href:`#`,children:e(`legal.termsOfService`)}),` `,e(`legal.and`),` `,(0,M.jsx)(`a`,{href:`#`,children:e(`legal.privacyPolicy`)}),`.`]})]})})}var PN=sa(`/forgot-password`)({component:FN});function FN(){let{t:e}=vt(),[t,n]=(0,j.useState)(``),[r,i]=(0,j.useState)(!1),[a,o]=(0,j.useState)(!1);return(0,M.jsx)(fN,{headline:e(`auth.forgotPassword.brandHeadline`,{defaultValue:`Forgot your password?`}),subline:e(`auth.forgotPassword.brandSubline`,{defaultValue:`No problem — we will send you a secure link to reset it.`}),children:(0,M.jsx)($,{className:`border-border/60 shadow-sm shadow-primary/5 backdrop-blur supports-[backdrop-filter]:bg-card/95`,children:a?(0,M.jsxs)(M.Fragment,{children:[(0,M.jsxs)(sN,{className:`text-center`,children:[(0,M.jsx)(cN,{className:`text-xl tracking-tight`,children:e(`auth.forgotPassword.checkEmailTitle`)}),(0,M.jsx)(lN,{children:e(`auth.forgotPassword.checkEmailDescription`,{email:t})})]}),(0,M.jsx)(uN,{className:`text-center`,children:(0,M.jsx)(ta,{to:`/login`,className:`text-sm font-medium text-primary underline-offset-4 hover:underline`,children:e(`auth.forgotPassword.backToSignIn`)})})]}):(0,M.jsxs)(M.Fragment,{children:[(0,M.jsxs)(sN,{className:`text-center`,children:[(0,M.jsx)(cN,{className:`text-xl tracking-tight`,children:e(`auth.forgotPassword.title`)}),(0,M.jsx)(lN,{children:e(`auth.forgotPassword.description`)})]}),(0,M.jsx)(uN,{children:(0,M.jsxs)(`form`,{onSubmit:async n=>{n.preventDefault(),i(!0);try{let e=window.location.origin+`/_account/`.replace(/\/$/,``)+`/reset-password`,n=await fetch(`/api/v1/auth/forget-password`,{method:`POST`,headers:{"Content-Type":`application/json`},credentials:`include`,body:JSON.stringify({email:t,redirectTo:e})});if(!n.ok){let e=await n.json().catch(()=>({}));throw Error(e?.message||`Request failed: ${n.status}`)}o(!0)}catch(t){q({title:e(`auth.forgotPassword.failed`),description:t.message,variant:`destructive`})}finally{i(!1)}},className:`flex flex-col gap-4`,children:[(0,M.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,M.jsx)(yN,{htmlFor:`email`,children:e(`auth.emailLabel`)}),(0,M.jsx)(Vx,{id:`email`,type:`email`,placeholder:e(`auth.emailPlaceholder`),autoComplete:`email`,required:!0,value:t,onChange:e=>n(e.target.value)})]}),(0,M.jsx)(Q,{type:`submit`,className:`w-full bg-brand-gradient text-primary-foreground shadow-sm shadow-primary/20 transition-all hover:opacity-95 hover:shadow-md hover:shadow-primary/30`,disabled:r,children:e(r?`auth.forgotPassword.submitting`:`auth.forgotPassword.submit`)}),(0,M.jsxs)(`p`,{className:`text-center text-sm text-muted-foreground`,children:[e(`auth.forgotPassword.rememberPassword`),` `,(0,M.jsx)(ta,{to:`/login`,className:`font-medium text-primary underline-offset-4 hover:underline`,children:e(`auth.forgotPassword.signIn`)})]})]})})]})})})}var IN=sa(`/account`)({component:LN});function LN(){return(0,M.jsx)(`div`,{className:`flex flex-1 flex-col overflow-hidden`,children:(0,M.jsx)(`div`,{className:`flex-1 overflow-auto px-4 py-6 sm:px-6 sm:py-8`,children:(0,M.jsx)(`div`,{className:`page-enter mx-auto flex max-w-4xl flex-col gap-6`,children:(0,M.jsx)(_a,{})})})})}var RN=sa(`/`)({component:zN});function zN(){return(0,M.jsx)(Vi,{to:`/login`})}var BN=Wv(`inline-flex items-center rounded-full border px-2.5 py-0.5 text-xs font-semibold transition-colors focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2`,{variants:{variant:{default:`border-transparent bg-primary text-primary-foreground hover:bg-primary/80`,secondary:`border-transparent bg-secondary text-secondary-foreground hover:bg-secondary/80`,destructive:`border-transparent bg-destructive text-destructive-foreground hover:bg-destructive/80`,outline:`text-foreground`}},defaultVariants:{variant:`default`}});function VN({className:e,variant:t,...n}){return(0,M.jsx)(`div`,{className:Z(BN({variant:t}),e),...n})}function HN({title:e,description:t,icon:n,actions:r,className:i,...a}){return(0,M.jsxs)(`div`,{className:Z(`relative overflow-hidden rounded-xl border bg-brand-gradient-subtle`,`px-5 py-5 sm:px-6 sm:py-6`,i),...a,children:[(0,M.jsx)(`div`,{className:`pointer-events-none absolute inset-0 opacity-60`,style:{backgroundImage:`radial-gradient(ellipse 60% 80% at 0% 0%, hsl(var(--brand-from) / 0.12), transparent 60%)`},"aria-hidden":!0}),(0,M.jsxs)(`div`,{className:`relative flex flex-col gap-4 sm:flex-row sm:items-start sm:justify-between sm:gap-6`,children:[(0,M.jsxs)(`div`,{className:`flex min-w-0 items-start gap-4`,children:[n?(0,M.jsx)(`div`,{className:`flex size-10 shrink-0 items-center justify-center rounded-lg bg-brand-gradient text-primary-foreground shadow-sm shadow-primary/30 ring-1 ring-white/15`,children:(0,M.jsx)(n,{className:`size-5`})}):null,(0,M.jsxs)(`div`,{className:`min-w-0 space-y-1`,children:[(0,M.jsx)(`h1`,{className:`truncate text-xl font-semibold tracking-tight sm:text-2xl`,children:e}),t?(0,M.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:t}):null]})]}),r?(0,M.jsx)(`div`,{className:`flex shrink-0 flex-wrap items-center gap-2`,children:r}):null]})]})}var UN=sa(`/organizations/`)({component:WN});function WN(){let{t:e}=vt(),{organizations:t,loading:n}=BM(),{session:r,setActiveOrganization:i}=zM(),a=N(),o=r?.activeOrganizationId??void 0,s=async t=>{try{t!==o&&await i(t),a({to:`/organizations/$orgId`,params:{orgId:t}})}catch(t){q({title:e(`organizations.switchFailed`),description:t.message,variant:`destructive`})}},c=e=>e.split(/\s+/).map(e=>e[0]).join(``).slice(0,2).toUpperCase();return(0,M.jsx)(`div`,{className:`flex flex-1 flex-col overflow-hidden`,children:(0,M.jsx)(`div`,{className:`flex-1 overflow-auto px-4 py-6 sm:px-6 sm:py-8`,children:(0,M.jsxs)(`div`,{className:`page-enter mx-auto flex max-w-3xl flex-col gap-6`,children:[(0,M.jsx)(HN,{icon:ny,title:e(`organizations.title`),description:e(`organizations.description`),actions:(0,M.jsxs)(Q,{onClick:()=>a({to:`/organizations/new`}),className:`bg-brand-gradient text-primary-foreground shadow-sm shadow-primary/20 transition-all hover:opacity-95 hover:shadow-md hover:shadow-primary/30`,children:[(0,M.jsx)(Oy,{className:`mr-2 h-4 w-4`}),e(`organizations.newOrganization`)]})}),n&&(0,M.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:e(`organizations.loading`)}),!n&&t.length===0&&(0,M.jsxs)($,{className:`p-10 text-center`,children:[(0,M.jsx)(`div`,{className:`mx-auto mb-3 flex size-12 items-center justify-center rounded-lg bg-brand-gradient-subtle text-primary ring-1 ring-primary/15`,children:(0,M.jsx)(ny,{className:`h-6 w-6`})}),(0,M.jsx)(`h3`,{className:`text-base font-medium`,children:e(`organizations.emptyTitle`)}),(0,M.jsx)(`p`,{className:`mb-4 text-sm text-muted-foreground`,children:e(`organizations.emptyDescription`)}),(0,M.jsxs)(Q,{onClick:()=>a({to:`/organizations/new`}),className:`bg-brand-gradient text-primary-foreground shadow-sm shadow-primary/20`,children:[(0,M.jsx)(Oy,{className:`mr-2 h-4 w-4`}),e(`organizations.createOrganization`)]})]}),(0,M.jsx)(`div`,{className:`grid gap-3`,children:t.map(t=>{let n=t.id===o;return(0,M.jsx)($,{role:`button`,tabIndex:0,onClick:()=>s(t.id),onKeyDown:e=>{(e.key===`Enter`||e.key===` `)&&(e.preventDefault(),s(t.id))},className:`group cursor-pointer p-4 transition-all hover:-translate-y-0.5 hover:border-primary/30 hover:shadow-md hover:shadow-primary/5 focus:outline-none focus:ring-2 focus:ring-ring ${n?`border-primary/50 bg-brand-gradient-subtle ring-1 ring-primary/30`:``}`,children:(0,M.jsxs)(`div`,{className:`flex items-center gap-4`,children:[(0,M.jsx)(`div`,{className:`flex size-12 shrink-0 items-center justify-center rounded-lg font-semibold `+(n?`bg-brand-gradient text-primary-foreground shadow-sm shadow-primary/30 ring-1 ring-white/15`:`bg-muted text-muted-foreground group-hover:bg-brand-gradient-subtle group-hover:text-primary`),children:c(t.name)||(0,M.jsx)(ny,{className:`h-5 w-5`})}),(0,M.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,M.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,M.jsx)(`h3`,{className:`truncate text-base font-medium`,children:t.name}),n&&(0,M.jsxs)(VN,{className:`gap-1 border-transparent bg-emerald-500/15 text-[10px] font-medium text-emerald-600 dark:text-emerald-400`,children:[(0,M.jsx)(ry,{className:`h-3 w-3`}),e(`organizations.active`)]})]}),t.slug&&(0,M.jsx)(`code`,{className:`mt-0.5 block font-mono text-xs text-muted-foreground`,children:t.slug})]}),(0,M.jsx)(ay,{className:`size-4 shrink-0 text-muted-foreground transition-transform group-hover:translate-x-0.5 group-hover:text-primary`})]})},t.id)})})]})})})}var GN=sa(`/account/`)({component:KN});function KN(){let{t:e}=vt(),{user:t}=zM(),{organizations:n}=BM(),r=[!!t?.emailVerified,!!t?.twoFactorEnabled,!!t?.name,!!t?.image].filter(Boolean).length*25,i=r>=75?`success`:r>=50?`warn`:`danger`,a=(t?.name??t?.email??`?`).split(/\s+/).map(e=>e[0]).join(``).slice(0,2).toUpperCase(),o=[{to:`/account/profile`,label:e(`home.tiles.profile.title`,{defaultValue:`Profile`}),description:e(`home.tiles.profile.description`,{defaultValue:`Display name, avatar and contact info.`}),icon:Hy},{to:`/account/security`,label:e(`home.tiles.security.title`,{defaultValue:`Security`}),description:e(`home.tiles.security.description`,{defaultValue:`Change your password and review activity.`}),icon:Ny},{to:`/account/two-factor`,label:e(`home.tiles.twoFactor.title`,{defaultValue:`Two-factor auth`}),description:e(`home.tiles.twoFactor.description`,{defaultValue:`Add an authenticator app for stronger sign-in.`}),icon:My},{to:`/account/sessions`,label:e(`home.tiles.sessions.title`,{defaultValue:`Active sessions`}),description:e(`home.tiles.sessions.description`,{defaultValue:`See and revoke devices that are signed in.`}),icon:Ty},{to:`/account/linked-accounts`,label:e(`home.tiles.linked.title`,{defaultValue:`Linked accounts`}),description:e(`home.tiles.linked.description`,{defaultValue:`Manage your social and SSO providers.`}),icon:Sy},{to:`/account/oauth-applications`,label:e(`home.tiles.oauth.title`,{defaultValue:`OAuth applications`}),description:e(`home.tiles.oauth.description`,{defaultValue:`Apps you have authorised to access your account.`}),icon:yy}];return(0,M.jsxs)(`div`,{className:`space-y-6`,children:[(0,M.jsxs)(`div`,{className:`relative overflow-hidden rounded-xl border bg-card`,children:[(0,M.jsx)(`div`,{className:`absolute inset-0 bg-brand-gradient`,"aria-hidden":!0}),(0,M.jsx)(`div`,{className:`absolute inset-0 opacity-40 mix-blend-soft-light`,style:{backgroundImage:`radial-gradient(ellipse at 20% 0%, rgba(255,255,255,0.4), transparent 60%), radial-gradient(ellipse at 100% 100%, rgba(0,0,0,0.25), transparent 60%)`},"aria-hidden":!0}),(0,M.jsxs)(`div`,{className:`relative flex flex-col gap-4 p-6 text-white sm:flex-row sm:items-center sm:gap-6 sm:p-8`,children:[(0,M.jsxs)(AM,{className:`size-16 shrink-0 ring-4 ring-white/30 shadow-md sm:size-20`,children:[t?.image?(0,M.jsx)(jM,{src:t.image,alt:t?.name??``}):null,(0,M.jsx)(MM,{className:`bg-white/20 text-base font-semibold text-white backdrop-blur`,children:a})]}),(0,M.jsxs)(`div`,{className:`min-w-0 flex-1 space-y-1`,children:[(0,M.jsx)(`p`,{className:`text-xs uppercase tracking-wider text-white/70`,children:e(`home.welcome`,{defaultValue:`Welcome back`})}),(0,M.jsx)(`h2`,{className:`truncate text-2xl font-semibold tracking-tight`,children:t?.name||t?.email||`ObjectStack user`}),(0,M.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2 text-sm text-white/80`,children:[(0,M.jsx)(wy,{className:`size-3.5`,"aria-hidden":!0}),(0,M.jsx)(`span`,{className:`truncate`,children:t?.email}),t?.emailVerified?(0,M.jsx)(VN,{className:`border-white/30 bg-white/15 text-[10px] font-medium text-white backdrop-blur hover:bg-white/20`,children:e(`home.verified`,{defaultValue:`Verified`})}):null]})]})]})]}),(0,M.jsxs)(`div`,{className:`grid grid-cols-1 gap-4 sm:grid-cols-3`,children:[(0,M.jsx)(qN,{icon:My,label:e(`home.stats.score`,{defaultValue:`Security score`}),value:`${r}%`,tone:i,extra:(0,M.jsx)(`div`,{className:`mt-2 h-1.5 w-full overflow-hidden rounded-full bg-muted`,children:(0,M.jsx)(`div`,{className:`h-full bg-brand-gradient transition-[width] duration-500`,style:{width:`${r}%`}})})}),(0,M.jsx)(qN,{icon:ny,label:e(`home.stats.orgs`,{defaultValue:`Organizations`}),value:String(n.length),extra:(0,M.jsxs)(ta,{to:`/organizations`,className:`mt-2 inline-flex items-center gap-1 text-xs font-medium text-primary hover:underline`,children:[e(`home.stats.manage`,{defaultValue:`Manage`}),(0,M.jsx)(ty,{className:`size-3`})]})}),(0,M.jsx)(qN,{icon:t?.twoFactorEnabled?My:Ny,label:e(`home.stats.twoFactor`,{defaultValue:`Two-factor auth`}),value:t?.twoFactorEnabled?e(`home.stats.enabled`,{defaultValue:`Enabled`}):e(`home.stats.disabled`,{defaultValue:`Disabled`}),tone:t?.twoFactorEnabled?`success`:`warn`,extra:(0,M.jsxs)(ta,{to:`/account/two-factor`,className:`mt-2 inline-flex items-center gap-1 text-xs font-medium text-primary hover:underline`,children:[t?.twoFactorEnabled?e(`home.stats.review`,{defaultValue:`Review`}):e(`home.stats.enable`,{defaultValue:`Enable now`}),(0,M.jsx)(ty,{className:`size-3`})]})})]}),(0,M.jsxs)(`div`,{children:[(0,M.jsx)(`h3`,{className:`mb-3 text-sm font-medium text-muted-foreground`,children:e(`home.quickAccess`,{defaultValue:`Quick access`})}),(0,M.jsx)(`div`,{className:`grid grid-cols-1 gap-3 sm:grid-cols-2 lg:grid-cols-3`,children:o.map(({to:e,label:t,description:n,icon:r})=>(0,M.jsxs)(ta,{to:e,className:`group relative flex items-start gap-3 rounded-lg border bg-card p-4 transition-all hover:-translate-y-0.5 hover:border-primary/30 hover:shadow-md hover:shadow-primary/5`,children:[(0,M.jsx)(`div`,{className:`flex size-9 shrink-0 items-center justify-center rounded-md bg-brand-gradient-subtle text-primary ring-1 ring-primary/10 transition-transform group-hover:scale-110`,children:(0,M.jsx)(r,{className:`size-4`})}),(0,M.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,M.jsxs)(`div`,{className:`flex items-center justify-between gap-2`,children:[(0,M.jsx)(`span`,{className:`truncate font-medium`,children:t}),(0,M.jsx)(ty,{className:`size-4 shrink-0 text-muted-foreground transition-transform group-hover:translate-x-0.5 group-hover:text-primary`})]}),(0,M.jsx)(`p`,{className:`mt-0.5 line-clamp-2 text-xs text-muted-foreground`,children:n})]})]},e))})]})]})}function qN({icon:e,label:t,value:n,tone:r=`neutral`,extra:i}){let a=r===`success`?`text-emerald-600 dark:text-emerald-400`:r===`warn`?`text-amber-600 dark:text-amber-400`:r===`danger`?`text-destructive`:`text-foreground`;return(0,M.jsx)($,{className:`overflow-hidden`,children:(0,M.jsxs)(uN,{className:`p-5`,children:[(0,M.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,M.jsx)(`p`,{className:`text-xs font-medium uppercase tracking-wider text-muted-foreground`,children:t}),(0,M.jsx)(e,{className:`size-4 ${a}`})]}),(0,M.jsx)(`p`,{className:`mt-1 text-2xl font-semibold tracking-tight ${a}`,children:n}),i]})})}var JN=sa(`/organizations/new`)({component:XN});function YN(e){return e.toLowerCase().trim().replace(/[^a-z0-9]+/g,`-`).replace(/^-+|-+$/g,``).slice(0,48)}function XN(){let{t:e}=vt(),t=N(),{create:n,creating:r}=VM(),{setActiveOrganization:i,reloadOrganizations:a}=zM(),[o,s]=(0,j.useState)(``),[c,l]=(0,j.useState)(``),[u,d]=(0,j.useState)(!1),f=e=>{s(e),u||l(YN(e))};return(0,M.jsx)(`div`,{className:`flex flex-1 flex-col overflow-hidden`,children:(0,M.jsx)(`div`,{className:`flex-1 px-6 py-8 overflow-auto`,children:(0,M.jsx)(`div`,{className:`mx-auto max-w-lg`,children:(0,M.jsxs)($,{children:[(0,M.jsxs)(sN,{children:[(0,M.jsx)(cN,{children:e(`organizations.new.title`)}),(0,M.jsx)(lN,{children:e(`organizations.new.description`)})]}),(0,M.jsxs)(`form`,{onSubmit:async t=>{t.preventDefault();try{let t=await n({name:o,slug:c||void 0}),r=t?.data??t,s=r?.id??r?.organization?.id;s&&await i(s).catch(()=>{}),await a().catch(()=>{}),q({title:e(`organizations.new.successToast`)}),window.location.assign(`/`)}catch(t){q({title:e(`organizations.new.failed`),description:t.message,variant:`destructive`})}},children:[(0,M.jsxs)(uN,{className:`space-y-4`,children:[(0,M.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,M.jsx)(yN,{htmlFor:`name`,children:e(`organizations.new.name`)}),(0,M.jsx)(Vx,{id:`name`,required:!0,value:o,onChange:e=>f(e.target.value),placeholder:e(`organizations.new.namePlaceholder`)})]}),(0,M.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,M.jsx)(yN,{htmlFor:`slug`,children:e(`organizations.new.slug`)}),(0,M.jsx)(Vx,{id:`slug`,value:c,onChange:e=>{l(e.target.value),d(!0)},placeholder:e(`organizations.new.slugPlaceholder`),pattern:`[a-z0-9-]+`}),(0,M.jsx)(`p`,{className:`text-[11px] text-muted-foreground`,children:e(`organizations.new.slugHint`)})]})]}),(0,M.jsxs)(dN,{className:`flex justify-between`,children:[(0,M.jsx)(Q,{type:`button`,variant:`ghost`,onClick:()=>t({to:`/organizations`}),children:e(`organizations.new.cancel`)}),(0,M.jsx)(Q,{type:`submit`,disabled:r||!o,children:e(r?`organizations.new.submitting`:`organizations.new.submit`)})]})]})]})})})})}var ZN=sa(`/organizations/$orgId`)({component:QN});function QN(){let{t:e}=vt(),{orgId:t}=ZN.useParams(),{organizations:n}=BM(),r=n.find(e=>e.id===t);return(0,M.jsx)(`div`,{className:`flex flex-1 flex-col overflow-hidden`,children:(0,M.jsx)(`div`,{className:`flex-1 overflow-auto px-6 py-8`,children:(0,M.jsxs)(`div`,{className:`mx-auto max-w-4xl space-y-6`,children:[(0,M.jsxs)(`header`,{children:[(0,M.jsx)(`h1`,{className:`text-2xl font-semibold`,children:r?.name??e(`organizations.title`)}),r?.slug&&(0,M.jsx)(`p`,{className:`text-sm text-muted-foreground font-mono`,children:r.slug})]}),(0,M.jsx)(_a,{})]})})})}function $N(){let e=Rg(),[t,n]=(0,j.useState)([]),[r,i]=(0,j.useState)(!1),[a,o]=(0,j.useState)(null),s=(0,j.useCallback)(async()=>{if(e?.oauth?.applications){i(!0),o(null);try{n((await e.oauth.applications.list())?.applications??[])}catch(e){o(e),n([])}finally{i(!1)}}},[e]);return(0,j.useEffect)(()=>{s()},[s]),{applications:t,loading:r,error:a,reload:s}}function eP(){let e=Rg(),[t,n]=(0,j.useState)(!1),[r,i]=(0,j.useState)(null),[a,o]=(0,j.useState)(null);return{register:(0,j.useCallback)(async t=>{if(!e?.oauth?.applications?.register)throw Error(`Client not ready`);n(!0),i(null);try{let n=await e.oauth.applications.register(t);return o(n),n}catch(e){throw i(e),e}finally{n(!1)}},[e]),registering:t,error:r,lastResult:a}}function tP(){let e=Rg(),[t,n]=(0,j.useState)(!1),[r,i]=(0,j.useState)(null);return{remove:(0,j.useCallback)(async t=>{if(!e?.oauth?.applications?.delete)throw Error(`Client not ready`);n(!0),i(null);try{return await e.oauth.applications.delete(t)}catch(e){throw i(e),e}finally{n(!1)}},[e]),deleting:t,error:r}}function nP(){let e=Rg(),[t,n]=(0,j.useState)(!1),[r,i]=(0,j.useState)(null);return{submit:(0,j.useCallback)(async t=>{if(!e?.oauth?.consent)throw Error(`Client not ready`);n(!0),i(null);try{return await e.oauth.consent(t)}catch(e){throw i(e),e}finally{n(!1)}},[e]),submitting:t,error:r}}var rP=sa(`/oauth/consent`)({validateSearch:e=>e,component:iP});function iP(){let{t:e}=vt(),t=N(),n=Rg(),{user:r,loading:i}=zM(),{submit:a,submitting:o}=nP(),[s,c]=(0,j.useState)(null),l=typeof window<`u`?window.location.search:``,u=l.startsWith(`?`)?l.slice(1):l,d=new URLSearchParams(u),f=d.get(`client_id`)??void 0,p=d.get(`scope`)??``;(0,j.useEffect)(()=>{i||r||t({to:`/login`,search:{redirect:window.location.pathname+window.location.search}})},[r,i,t]),(0,j.useEffect)(()=>{if(!f||!n?.oauth?.applications?.getPublic)return;let e=!1;return n.oauth.applications.getPublic(f).then(t=>{if(e)return;let n=t?.data??t;c({name:n?.name??n?.client_name,icon:n?.icon??n?.logo_uri})},()=>{}),()=>{e=!0}},[n,f]);let m=p.split(/\s+/).filter(Boolean),h=async t=>{try{let n=await a({accept:t,oauth_query:u}),r=n?.redirect_uri??n?.redirectURI??n?.url;if(r){window.location.href=r;return}q({title:e(t?`oauth.consent.granted`:`oauth.consent.denied`),description:e(`oauth.consent.noRedirect`),variant:t?void 0:`destructive`})}catch(t){q({title:e(`oauth.consent.failed`),description:t.message,variant:`destructive`})}},g=s?.name??f??e(`oauth.consent.unknownApp`);return(0,M.jsx)(`div`,{className:`flex min-h-svh w-full flex-1 items-center justify-center bg-background px-4`,children:(0,M.jsxs)($,{className:`w-full max-w-md`,children:[(0,M.jsxs)(sN,{className:`items-center text-center`,children:[(0,M.jsx)(`div`,{className:`mb-3 rounded-full border bg-muted p-3`,children:s?.icon?(0,M.jsx)(`img`,{src:s.icon,alt:``,className:`h-8 w-8 rounded`,onError:e=>e.currentTarget.style.display=`none`}):(0,M.jsx)(yy,{className:`h-7 w-7 text-muted-foreground`})}),(0,M.jsx)(cN,{className:`text-xl`,children:e(`oauth.consent.title`,{appName:g})}),(0,M.jsx)(lN,{children:e(`oauth.consent.request`,{appName:g,suffix:r?.email?` (${r.email})`:``})})]}),(0,M.jsxs)(uN,{className:`space-y-4`,children:[m.length>0&&(0,M.jsxs)(`div`,{children:[(0,M.jsx)(`p`,{className:`mb-2 text-sm font-medium`,children:e(`oauth.consent.willAllow`)}),(0,M.jsx)(`ul`,{className:`space-y-1.5 rounded-md border bg-muted/40 p-3 text-sm`,children:m.map(t=>(0,M.jsxs)(`li`,{className:`flex items-start gap-2`,children:[(0,M.jsx)(ry,{className:`mt-0.5 h-4 w-4 text-green-600 dark:text-green-400`}),(0,M.jsx)(`span`,{children:aP(t,e)})]},t))})]}),(0,M.jsxs)(`div`,{className:`grid grid-cols-2 gap-2 pt-2`,children:[(0,M.jsxs)(Q,{variant:`outline`,onClick:()=>h(!1),disabled:o,children:[(0,M.jsx)(Gy,{className:`mr-2 h-4 w-4`}),e(`oauth.consent.deny`)]}),(0,M.jsxs)(Q,{onClick:()=>h(!0),disabled:o,children:[(0,M.jsx)(ry,{className:`mr-2 h-4 w-4`}),e(o?`oauth.consent.submitting`:`oauth.consent.authorize`)]})]}),(0,M.jsx)(`p`,{className:`pt-2 text-center text-xs text-muted-foreground`,children:e(`oauth.consent.footer`)})]})]})})}function aP(e,t){switch(e){case`openid`:return t(`oauth.consent.scope.openid`);case`profile`:return t(`oauth.consent.scope.profile`);case`email`:return t(`oauth.consent.scope.email`);case`offline_access`:return t(`oauth.consent.scope.offlineAccess`);default:return e}}var oP=sa(`/auth/device`)({validateSearch:e=>({user_code:e.user_code??e.code??``}),component:cP});function sP({children:e}){return(0,M.jsx)(`div`,{className:`flex min-h-svh w-full flex-col items-center justify-center gap-6 bg-muted p-6 md:p-10`,children:(0,M.jsxs)(`div`,{className:`flex w-full max-w-sm flex-col gap-6`,children:[(0,M.jsxs)(`a`,{href:`#`,className:`flex items-center gap-2 self-center font-medium`,children:[(0,M.jsx)(`div`,{className:`flex size-6 items-center justify-center rounded-md bg-primary text-primary-foreground`,children:(0,M.jsx)(hy,{className:`size-4`})}),`ObjectStack`]}),(0,M.jsx)(`div`,{className:`flex flex-col gap-6`,children:e})]})})}function cP(){let{t:e}=vt(),{user_code:t}=oP.useSearch(),{user:n,loading:r}=zM(),i=N(),[a,o]=(0,j.useState)(!1),[s,c]=(0,j.useState)(!1),[l,u]=(0,j.useState)(!1),[d,f]=(0,j.useState)(!1),[p,m]=(0,j.useState)(``);return t?r?(0,M.jsx)(sP,{children:(0,M.jsx)($,{children:(0,M.jsx)(sN,{className:`text-center`,children:(0,M.jsx)(lN,{children:e(`auth.device.loading`)})})})}):n?l?(0,M.jsx)(sP,{children:(0,M.jsx)($,{children:(0,M.jsxs)(sN,{className:`text-center`,children:[(0,M.jsx)(cy,{className:`h-10 w-10 text-green-500 mx-auto mb-2`}),(0,M.jsx)(cN,{children:e(`auth.device.approvedTitle`)}),(0,M.jsx)(lN,{children:e(`auth.device.approvedDescription`)})]})})}):d?(0,M.jsx)(sP,{children:(0,M.jsx)($,{children:(0,M.jsxs)(sN,{className:`text-center`,children:[(0,M.jsx)(cN,{children:e(`auth.device.deniedTitle`)}),(0,M.jsx)(lN,{children:e(`auth.device.deniedDescription`)})]})})}):(0,M.jsx)(sP,{children:(0,M.jsxs)($,{children:[(0,M.jsxs)(sN,{className:`text-center`,children:[(0,M.jsx)(cN,{children:e(`auth.device.title`)}),(0,M.jsx)(lN,{children:e(`auth.device.subtitle`,{email:n.email})})]}),(0,M.jsxs)(uN,{className:`space-y-4`,children:[(0,M.jsxs)(`div`,{className:`rounded-md border bg-background px-4 py-3 text-center`,children:[(0,M.jsx)(`p`,{className:`text-xs text-muted-foreground mb-1`,children:e(`auth.device.userCodeLabel`)}),(0,M.jsx)(`p`,{className:`font-mono font-semibold tracking-widest text-lg`,children:t})]}),(0,M.jsxs)(`div`,{className:`space-y-4`,children:[(0,M.jsx)(`p`,{className:`text-sm text-center text-muted-foreground`,children:e(`auth.device.loggedInAs`,{email:n.email})}),p&&(0,M.jsx)(`p`,{className:`text-sm text-destructive text-center`,children:p}),(0,M.jsx)(Q,{onClick:async()=>{m(``),o(!0);try{let n=await fetch(`/api/v1/auth/device/approve`,{method:`POST`,headers:{"Content-Type":`application/json`},credentials:`include`,body:JSON.stringify({userCode:t})});if(!n.ok){let t=await n.json().catch(()=>({}));throw Error(t?.message??t?.error?.message??e(`auth.device.approveFailed`))}u(!0),q({title:e(`auth.device.approveSuccess`),description:e(`auth.device.approveSuccessDescription`)})}catch(t){m(t?.message??e(`auth.device.approveFailed`))}finally{o(!1)}},className:`w-full`,disabled:a||s,children:e(a?`auth.device.approving`:`auth.device.approve`)}),(0,M.jsx)(Q,{onClick:async()=>{m(``),c(!0);try{await fetch(`/api/v1/auth/device/deny`,{method:`POST`,headers:{"Content-Type":`application/json`},credentials:`include`,body:JSON.stringify({userCode:t})}),f(!0)}catch(t){m(t?.message??e(`auth.device.denyFailed`))}finally{c(!1)}},variant:`outline`,className:`w-full`,disabled:a||s,children:e(s?`auth.device.denying`:`auth.device.deny`)}),(0,M.jsx)(`div`,{className:`text-center`,children:(0,M.jsx)(`button`,{type:`button`,className:`text-sm text-muted-foreground underline-offset-4 hover:underline`,onClick:()=>i({to:`/`}),children:e(`auth.device.cancel`)})})]})]})]})}):(0,M.jsx)(Vi,{to:`/login`,search:{redirect:`/auth/device?user_code=${encodeURIComponent(t)}`}}):(0,M.jsx)(sP,{children:(0,M.jsx)($,{children:(0,M.jsxs)(sN,{className:`text-center`,children:[(0,M.jsx)(cN,{children:e(`auth.device.invalidTitle`)}),(0,M.jsx)(lN,{children:e(`auth.device.invalidDescription`)})]})})})}var lP=sa(`/account/two-factor`)({component:uP});function uP(){let{t:e}=vt(),t=Rg(),{user:n,loading:r,refresh:i}=zM(),[a,o]=(0,j.useState)(null),[s,c]=(0,j.useState)(``),[l,u]=(0,j.useState)(!1),[d,f]=(0,j.useState)(null),[p,m]=(0,j.useState)(null),[h,g]=(0,j.useState)(!1),[_,v]=(0,j.useState)(``),[y,b]=(0,j.useState)(!1),[x,S]=(0,j.useState)(``),[C,w]=(0,j.useState)(!1),[T,E]=(0,j.useState)(``),[D,O]=(0,j.useState)(!1),[ee,te]=(0,j.useState)(null);(0,j.useEffect)(()=>{r||o(!!n?.twoFactorEnabled)},[r,n?.twoFactorEnabled]);let ne=async n=>{n.preventDefault(),u(!0);try{let e=await t.auth.twoFactor.enable({password:s});f(e?.totpURI??null),m(e?.backupCodes??null),c(``)}catch(t){q({title:e(`twoFactor.enableFailed`),description:t.message,variant:`destructive`})}finally{u(!1)}},re=async n=>{n.preventDefault(),b(!0);try{await t.auth.twoFactor.verifyTotp({code:_,trustDevice:h}),q({title:e(`twoFactor.enableSuccess`)}),o(!0),f(null),v(``),await i()}catch(t){q({title:e(`twoFactor.invalidCode`),description:t.message,variant:`destructive`})}finally{b(!1)}},ie=async n=>{n.preventDefault(),w(!0);try{await t.auth.twoFactor.disable({password:x}),q({title:e(`twoFactor.disableSuccess`)}),o(!1),S(``),te(null),await i()}catch(t){q({title:e(`twoFactor.disableFailed`),description:t.message,variant:`destructive`})}finally{w(!1)}},ae=async n=>{n.preventDefault(),O(!0);try{te((await t.auth.twoFactor.generateBackupCodes({password:T}))?.backupCodes??[]),E(``),q({title:e(`twoFactor.backupCodes.regenerated`)})}catch(t){q({title:e(`twoFactor.backupCodes.regenerateFailed`),description:t.message,variant:`destructive`})}finally{O(!1)}},oe=async t=>{try{await navigator.clipboard.writeText(t.join(`
117
+ For more information, see https://radix-ui.com/primitives/docs/components/${t.docsSlug}`;return j.useEffect(()=>{e&&(document.getElementById(e)||console.error(n))},[n,e]),null},mw=`DialogDescriptionWarning`,hw=({contentRef:e,descriptionId:t})=>{let n=`Warning: Missing \`Description\` or \`aria-describedby={undefined}\` for {${fw(mw).contentName}}.`;return j.useEffect(()=>{let r=e.current?.getAttribute(`aria-describedby`);t&&r&&(document.getElementById(t)||console.warn(n))},[n,e,t]),null},gw=VC,_w=qC,vw=YC,yw=$C,bw=iw,xw=ow,Sw=cw,Cw=gw,ww=_w,Tw=j.forwardRef(({className:e,...t},n)=>(0,M.jsx)(vw,{className:Z(`fixed inset-0 z-50 bg-black/80 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0`,e),...t,ref:n}));Tw.displayName=vw.displayName;var Ew=Wv(`fixed z-50 gap-4 bg-background p-6 shadow-lg transition ease-in-out data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:duration-300 data-[state=open]:duration-500`,{variants:{side:{top:`inset-x-0 top-0 border-b data-[state=closed]:slide-out-to-top data-[state=open]:slide-in-from-top`,bottom:`inset-x-0 bottom-0 border-t data-[state=closed]:slide-out-to-bottom data-[state=open]:slide-in-from-bottom`,left:`inset-y-0 left-0 h-full w-3/4 border-r data-[state=closed]:slide-out-to-left data-[state=open]:slide-in-from-left sm:max-w-sm`,right:`inset-y-0 right-0 h-full w-3/4 border-l data-[state=closed]:slide-out-to-right data-[state=open]:slide-in-from-right sm:max-w-sm`}},defaultVariants:{side:`right`}}),Dw=j.forwardRef(({side:e=`right`,className:t,children:n,...r},i)=>(0,M.jsxs)(ww,{children:[(0,M.jsx)(Tw,{}),(0,M.jsxs)(yw,{ref:i,className:Z(Ew({side:e}),t),...r,children:[n,(0,M.jsxs)(Sw,{className:`absolute right-4 top-4 rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none data-[state=open]:bg-secondary`,children:[(0,M.jsx)(Gy,{className:`h-4 w-4`}),(0,M.jsx)(`span`,{className:`sr-only`,children:`Close`})]})]})]}));Dw.displayName=yw.displayName;var Ow=({className:e,...t})=>(0,M.jsx)(`div`,{className:Z(`flex flex-col space-y-2 text-center sm:text-left`,e),...t});Ow.displayName=`SheetHeader`;var kw=({className:e,...t})=>(0,M.jsx)(`div`,{className:Z(`flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2`,e),...t});kw.displayName=`SheetFooter`;var Aw=j.forwardRef(({className:e,...t},n)=>(0,M.jsx)(bw,{ref:n,className:Z(`text-lg font-semibold text-foreground`,e),...t}));Aw.displayName=bw.displayName;var jw=j.forwardRef(({className:e,...t},n)=>(0,M.jsx)(xw,{ref:n,className:Z(`text-sm text-muted-foreground`,e),...t}));jw.displayName=xw.displayName;function Mw({className:e,...t}){return(0,M.jsx)(`div`,{className:Z(`bg-muted animate-pulse rounded-md`,e),...t})}var Nw=[`top`,`right`,`bottom`,`left`],Pw=Math.min,Fw=Math.max,Iw=Math.round,Lw=Math.floor,Rw=e=>({x:e,y:e}),zw={left:`right`,right:`left`,bottom:`top`,top:`bottom`};function Bw(e,t,n){return Fw(e,Pw(t,n))}function Vw(e,t){return typeof e==`function`?e(t):e}function Hw(e){return e.split(`-`)[0]}function Uw(e){return e.split(`-`)[1]}function Ww(e){return e===`x`?`y`:`x`}function Gw(e){return e===`y`?`height`:`width`}function Kw(e){let t=e[0];return t===`t`||t===`b`?`y`:`x`}function qw(e){return Ww(Kw(e))}function Jw(e,t,n){n===void 0&&(n=!1);let r=Uw(e),i=qw(e),a=Gw(i),o=i===`x`?r===(n?`end`:`start`)?`right`:`left`:r===`start`?`bottom`:`top`;return t.reference[a]>t.floating[a]&&(o=rT(o)),[o,rT(o)]}function Yw(e){let t=rT(e);return[Xw(e),t,Xw(t)]}function Xw(e){return e.includes(`start`)?e.replace(`start`,`end`):e.replace(`end`,`start`)}var Zw=[`left`,`right`],Qw=[`right`,`left`],$w=[`top`,`bottom`],eT=[`bottom`,`top`];function tT(e,t,n){switch(e){case`top`:case`bottom`:return n?t?Qw:Zw:t?Zw:Qw;case`left`:case`right`:return t?$w:eT;default:return[]}}function nT(e,t,n,r){let i=Uw(e),a=tT(Hw(e),n===`start`,r);return i&&(a=a.map(e=>e+`-`+i),t&&(a=a.concat(a.map(Xw)))),a}function rT(e){let t=Hw(e);return zw[t]+e.slice(t.length)}function iT(e){return{top:0,right:0,bottom:0,left:0,...e}}function aT(e){return typeof e==`number`?{top:e,right:e,bottom:e,left:e}:iT(e)}function oT(e){let{x:t,y:n,width:r,height:i}=e;return{width:r,height:i,top:n,left:t,right:t+r,bottom:n+i,x:t,y:n}}function sT(e,t,n){let{reference:r,floating:i}=e,a=Kw(t),o=qw(t),s=Gw(o),c=Hw(t),l=a===`y`,u=r.x+r.width/2-i.width/2,d=r.y+r.height/2-i.height/2,f=r[s]/2-i[s]/2,p;switch(c){case`top`:p={x:u,y:r.y-i.height};break;case`bottom`:p={x:u,y:r.y+r.height};break;case`right`:p={x:r.x+r.width,y:d};break;case`left`:p={x:r.x-i.width,y:d};break;default:p={x:r.x,y:r.y}}switch(Uw(t)){case`start`:p[o]-=f*(n&&l?-1:1);break;case`end`:p[o]+=f*(n&&l?-1:1);break}return p}async function cT(e,t){t===void 0&&(t={});let{x:n,y:r,platform:i,rects:a,elements:o,strategy:s}=e,{boundary:c=`clippingAncestors`,rootBoundary:l=`viewport`,elementContext:u=`floating`,altBoundary:d=!1,padding:f=0}=Vw(t,e),p=aT(f),m=o[d?u===`floating`?`reference`:`floating`:u],h=oT(await i.getClippingRect({element:await(i.isElement==null?void 0:i.isElement(m))??!0?m:m.contextElement||await(i.getDocumentElement==null?void 0:i.getDocumentElement(o.floating)),boundary:c,rootBoundary:l,strategy:s})),g=u===`floating`?{x:n,y:r,width:a.floating.width,height:a.floating.height}:a.reference,_=await(i.getOffsetParent==null?void 0:i.getOffsetParent(o.floating)),v=await(i.isElement==null?void 0:i.isElement(_))&&await(i.getScale==null?void 0:i.getScale(_))||{x:1,y:1},y=oT(i.convertOffsetParentRelativeRectToViewportRelativeRect?await i.convertOffsetParentRelativeRectToViewportRelativeRect({elements:o,rect:g,offsetParent:_,strategy:s}):g);return{top:(h.top-y.top+p.top)/v.y,bottom:(y.bottom-h.bottom+p.bottom)/v.y,left:(h.left-y.left+p.left)/v.x,right:(y.right-h.right+p.right)/v.x}}var lT=50,uT=async(e,t,n)=>{let{placement:r=`bottom`,strategy:i=`absolute`,middleware:a=[],platform:o}=n,s=o.detectOverflow?o:{...o,detectOverflow:cT},c=await(o.isRTL==null?void 0:o.isRTL(t)),l=await o.getElementRects({reference:e,floating:t,strategy:i}),{x:u,y:d}=sT(l,r,c),f=r,p=0,m={};for(let n=0;n<a.length;n++){let h=a[n];if(!h)continue;let{name:g,fn:_}=h,{x:v,y,data:b,reset:x}=await _({x:u,y:d,initialPlacement:r,placement:f,strategy:i,middlewareData:m,rects:l,platform:s,elements:{reference:e,floating:t}});u=v??u,d=y??d,m[g]={...m[g],...b},x&&p<lT&&(p++,typeof x==`object`&&(x.placement&&(f=x.placement),x.rects&&(l=x.rects===!0?await o.getElementRects({reference:e,floating:t,strategy:i}):x.rects),{x:u,y:d}=sT(l,f,c)),n=-1)}return{x:u,y:d,placement:f,strategy:i,middlewareData:m}},dT=e=>({name:`arrow`,options:e,async fn(t){let{x:n,y:r,placement:i,rects:a,platform:o,elements:s,middlewareData:c}=t,{element:l,padding:u=0}=Vw(e,t)||{};if(l==null)return{};let d=aT(u),f={x:n,y:r},p=qw(i),m=Gw(p),h=await o.getDimensions(l),g=p===`y`,_=g?`top`:`left`,v=g?`bottom`:`right`,y=g?`clientHeight`:`clientWidth`,b=a.reference[m]+a.reference[p]-f[p]-a.floating[m],x=f[p]-a.reference[p],S=await(o.getOffsetParent==null?void 0:o.getOffsetParent(l)),C=S?S[y]:0;(!C||!await(o.isElement==null?void 0:o.isElement(S)))&&(C=s.floating[y]||a.floating[m]);let w=b/2-x/2,T=C/2-h[m]/2-1,E=Pw(d[_],T),D=Pw(d[v],T),O=E,ee=C-h[m]-D,te=C/2-h[m]/2+w,ne=Bw(O,te,ee),re=!c.arrow&&Uw(i)!=null&&te!==ne&&a.reference[m]/2-(te<O?E:D)-h[m]/2<0,ie=re?te<O?te-O:te-ee:0;return{[p]:f[p]+ie,data:{[p]:ne,centerOffset:te-ne-ie,...re&&{alignmentOffset:ie}},reset:re}}}),fT=function(e){return e===void 0&&(e={}),{name:`flip`,options:e,async fn(t){var n;let{placement:r,middlewareData:i,rects:a,initialPlacement:o,platform:s,elements:c}=t,{mainAxis:l=!0,crossAxis:u=!0,fallbackPlacements:d,fallbackStrategy:f=`bestFit`,fallbackAxisSideDirection:p=`none`,flipAlignment:m=!0,...h}=Vw(e,t);if((n=i.arrow)!=null&&n.alignmentOffset)return{};let g=Hw(r),_=Kw(o),v=Hw(o)===o,y=await(s.isRTL==null?void 0:s.isRTL(c.floating)),b=d||(v||!m?[rT(o)]:Yw(o)),x=p!==`none`;!d&&x&&b.push(...nT(o,m,p,y));let S=[o,...b],C=await s.detectOverflow(t,h),w=[],T=i.flip?.overflows||[];if(l&&w.push(C[g]),u){let e=Jw(r,a,y);w.push(C[e[0]],C[e[1]])}if(T=[...T,{placement:r,overflows:w}],!w.every(e=>e<=0)){let e=(i.flip?.index||0)+1,t=S[e];if(t&&(!(u===`alignment`&&_!==Kw(t))||T.every(e=>Kw(e.placement)===_?e.overflows[0]>0:!0)))return{data:{index:e,overflows:T},reset:{placement:t}};let n=T.filter(e=>e.overflows[0]<=0).sort((e,t)=>e.overflows[1]-t.overflows[1])[0]?.placement;if(!n)switch(f){case`bestFit`:{let e=T.filter(e=>{if(x){let t=Kw(e.placement);return t===_||t===`y`}return!0}).map(e=>[e.placement,e.overflows.filter(e=>e>0).reduce((e,t)=>e+t,0)]).sort((e,t)=>e[1]-t[1])[0]?.[0];e&&(n=e);break}case`initialPlacement`:n=o;break}if(r!==n)return{reset:{placement:n}}}return{}}}};function pT(e,t){return{top:e.top-t.height,right:e.right-t.width,bottom:e.bottom-t.height,left:e.left-t.width}}function mT(e){return Nw.some(t=>e[t]>=0)}var hT=function(e){return e===void 0&&(e={}),{name:`hide`,options:e,async fn(t){let{rects:n,platform:r}=t,{strategy:i=`referenceHidden`,...a}=Vw(e,t);switch(i){case`referenceHidden`:{let e=pT(await r.detectOverflow(t,{...a,elementContext:`reference`}),n.reference);return{data:{referenceHiddenOffsets:e,referenceHidden:mT(e)}}}case`escaped`:{let e=pT(await r.detectOverflow(t,{...a,altBoundary:!0}),n.floating);return{data:{escapedOffsets:e,escaped:mT(e)}}}default:return{}}}}},gT=new Set([`left`,`top`]);async function _T(e,t){let{placement:n,platform:r,elements:i}=e,a=await(r.isRTL==null?void 0:r.isRTL(i.floating)),o=Hw(n),s=Uw(n),c=Kw(n)===`y`,l=gT.has(o)?-1:1,u=a&&c?-1:1,d=Vw(t,e),{mainAxis:f,crossAxis:p,alignmentAxis:m}=typeof d==`number`?{mainAxis:d,crossAxis:0,alignmentAxis:null}:{mainAxis:d.mainAxis||0,crossAxis:d.crossAxis||0,alignmentAxis:d.alignmentAxis};return s&&typeof m==`number`&&(p=s===`end`?m*-1:m),c?{x:p*u,y:f*l}:{x:f*l,y:p*u}}var vT=function(e){return e===void 0&&(e=0),{name:`offset`,options:e,async fn(t){var n;let{x:r,y:i,placement:a,middlewareData:o}=t,s=await _T(t,e);return a===o.offset?.placement&&(n=o.arrow)!=null&&n.alignmentOffset?{}:{x:r+s.x,y:i+s.y,data:{...s,placement:a}}}}},yT=function(e){return e===void 0&&(e={}),{name:`shift`,options:e,async fn(t){let{x:n,y:r,placement:i,platform:a}=t,{mainAxis:o=!0,crossAxis:s=!1,limiter:c={fn:e=>{let{x:t,y:n}=e;return{x:t,y:n}}},...l}=Vw(e,t),u={x:n,y:r},d=await a.detectOverflow(t,l),f=Kw(Hw(i)),p=Ww(f),m=u[p],h=u[f];if(o){let e=p===`y`?`top`:`left`,t=p===`y`?`bottom`:`right`,n=m+d[e],r=m-d[t];m=Bw(n,m,r)}if(s){let e=f===`y`?`top`:`left`,t=f===`y`?`bottom`:`right`,n=h+d[e],r=h-d[t];h=Bw(n,h,r)}let g=c.fn({...t,[p]:m,[f]:h});return{...g,data:{x:g.x-n,y:g.y-r,enabled:{[p]:o,[f]:s}}}}}},bT=function(e){return e===void 0&&(e={}),{options:e,fn(t){let{x:n,y:r,placement:i,rects:a,middlewareData:o}=t,{offset:s=0,mainAxis:c=!0,crossAxis:l=!0}=Vw(e,t),u={x:n,y:r},d=Kw(i),f=Ww(d),p=u[f],m=u[d],h=Vw(s,t),g=typeof h==`number`?{mainAxis:h,crossAxis:0}:{mainAxis:0,crossAxis:0,...h};if(c){let e=f===`y`?`height`:`width`,t=a.reference[f]-a.floating[e]+g.mainAxis,n=a.reference[f]+a.reference[e]-g.mainAxis;p<t?p=t:p>n&&(p=n)}if(l){let e=f===`y`?`width`:`height`,t=gT.has(Hw(i)),n=a.reference[d]-a.floating[e]+(t&&o.offset?.[d]||0)+(t?0:g.crossAxis),r=a.reference[d]+a.reference[e]+(t?0:o.offset?.[d]||0)-(t?g.crossAxis:0);m<n?m=n:m>r&&(m=r)}return{[f]:p,[d]:m}}}},xT=function(e){return e===void 0&&(e={}),{name:`size`,options:e,async fn(t){var n,r;let{placement:i,rects:a,platform:o,elements:s}=t,{apply:c=()=>{},...l}=Vw(e,t),u=await o.detectOverflow(t,l),d=Hw(i),f=Uw(i),p=Kw(i)===`y`,{width:m,height:h}=a.floating,g,_;d===`top`||d===`bottom`?(g=d,_=f===(await(o.isRTL==null?void 0:o.isRTL(s.floating))?`start`:`end`)?`left`:`right`):(_=d,g=f===`end`?`top`:`bottom`);let v=h-u.top-u.bottom,y=m-u.left-u.right,b=Pw(h-u[g],v),x=Pw(m-u[_],y),S=!t.middlewareData.shift,C=b,w=x;if((n=t.middlewareData.shift)!=null&&n.enabled.x&&(w=y),(r=t.middlewareData.shift)!=null&&r.enabled.y&&(C=v),S&&!f){let e=Fw(u.left,0),t=Fw(u.right,0),n=Fw(u.top,0),r=Fw(u.bottom,0);p?w=m-2*(e!==0||t!==0?e+t:Fw(u.left,u.right)):C=h-2*(n!==0||r!==0?n+r:Fw(u.top,u.bottom))}await c({...t,availableWidth:w,availableHeight:C});let T=await o.getDimensions(s.floating);return m!==T.width||h!==T.height?{reset:{rects:!0}}:{}}}};function ST(){return typeof window<`u`}function CT(e){return ET(e)?(e.nodeName||``).toLowerCase():`#document`}function wT(e){var t;return(e==null||(t=e.ownerDocument)==null?void 0:t.defaultView)||window}function TT(e){return((ET(e)?e.ownerDocument:e.document)||window.document)?.documentElement}function ET(e){return ST()?e instanceof Node||e instanceof wT(e).Node:!1}function DT(e){return ST()?e instanceof Element||e instanceof wT(e).Element:!1}function OT(e){return ST()?e instanceof HTMLElement||e instanceof wT(e).HTMLElement:!1}function kT(e){return!ST()||typeof ShadowRoot>`u`?!1:e instanceof ShadowRoot||e instanceof wT(e).ShadowRoot}function AT(e){let{overflow:t,overflowX:n,overflowY:r,display:i}=VT(e);return/auto|scroll|overlay|hidden|clip/.test(t+r+n)&&i!==`inline`&&i!==`contents`}function jT(e){return/^(table|td|th)$/.test(CT(e))}function MT(e){try{if(e.matches(`:popover-open`))return!0}catch{}try{return e.matches(`:modal`)}catch{return!1}}var NT=/transform|translate|scale|rotate|perspective|filter/,PT=/paint|layout|strict|content/,FT=e=>!!e&&e!==`none`,IT;function LT(e){let t=DT(e)?VT(e):e;return FT(t.transform)||FT(t.translate)||FT(t.scale)||FT(t.rotate)||FT(t.perspective)||!zT()&&(FT(t.backdropFilter)||FT(t.filter))||NT.test(t.willChange||``)||PT.test(t.contain||``)}function RT(e){let t=UT(e);for(;OT(t)&&!BT(t);){if(LT(t))return t;if(MT(t))return null;t=UT(t)}return null}function zT(){return IT??=typeof CSS<`u`&&CSS.supports&&CSS.supports(`-webkit-backdrop-filter`,`none`),IT}function BT(e){return/^(html|body|#document)$/.test(CT(e))}function VT(e){return wT(e).getComputedStyle(e)}function HT(e){return DT(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.scrollX,scrollTop:e.scrollY}}function UT(e){if(CT(e)===`html`)return e;let t=e.assignedSlot||e.parentNode||kT(e)&&e.host||TT(e);return kT(t)?t.host:t}function WT(e){let t=UT(e);return BT(t)?e.ownerDocument?e.ownerDocument.body:e.body:OT(t)&&AT(t)?t:WT(t)}function GT(e,t,n){t===void 0&&(t=[]),n===void 0&&(n=!0);let r=WT(e),i=r===e.ownerDocument?.body,a=wT(r);if(i){let e=KT(a);return t.concat(a,a.visualViewport||[],AT(r)?r:[],e&&n?GT(e):[])}else return t.concat(r,GT(r,[],n))}function KT(e){return e.parent&&Object.getPrototypeOf(e.parent)?e.frameElement:null}function qT(e){let t=VT(e),n=parseFloat(t.width)||0,r=parseFloat(t.height)||0,i=OT(e),a=i?e.offsetWidth:n,o=i?e.offsetHeight:r,s=Iw(n)!==a||Iw(r)!==o;return s&&(n=a,r=o),{width:n,height:r,$:s}}function JT(e){return DT(e)?e:e.contextElement}function YT(e){let t=JT(e);if(!OT(t))return Rw(1);let n=t.getBoundingClientRect(),{width:r,height:i,$:a}=qT(t),o=(a?Iw(n.width):n.width)/r,s=(a?Iw(n.height):n.height)/i;return(!o||!Number.isFinite(o))&&(o=1),(!s||!Number.isFinite(s))&&(s=1),{x:o,y:s}}var XT=Rw(0);function ZT(e){let t=wT(e);return!zT()||!t.visualViewport?XT:{x:t.visualViewport.offsetLeft,y:t.visualViewport.offsetTop}}function QT(e,t,n){return t===void 0&&(t=!1),!n||t&&n!==wT(e)?!1:t}function $T(e,t,n,r){t===void 0&&(t=!1),n===void 0&&(n=!1);let i=e.getBoundingClientRect(),a=JT(e),o=Rw(1);t&&(r?DT(r)&&(o=YT(r)):o=YT(e));let s=QT(a,n,r)?ZT(a):Rw(0),c=(i.left+s.x)/o.x,l=(i.top+s.y)/o.y,u=i.width/o.x,d=i.height/o.y;if(a){let e=wT(a),t=r&&DT(r)?wT(r):r,n=e,i=KT(n);for(;i&&r&&t!==n;){let e=YT(i),t=i.getBoundingClientRect(),r=VT(i),a=t.left+(i.clientLeft+parseFloat(r.paddingLeft))*e.x,o=t.top+(i.clientTop+parseFloat(r.paddingTop))*e.y;c*=e.x,l*=e.y,u*=e.x,d*=e.y,c+=a,l+=o,n=wT(i),i=KT(n)}}return oT({width:u,height:d,x:c,y:l})}function eE(e,t){let n=HT(e).scrollLeft;return t?t.left+n:$T(TT(e)).left+n}function tE(e,t){let n=e.getBoundingClientRect();return{x:n.left+t.scrollLeft-eE(e,n),y:n.top+t.scrollTop}}function nE(e){let{elements:t,rect:n,offsetParent:r,strategy:i}=e,a=i===`fixed`,o=TT(r),s=t?MT(t.floating):!1;if(r===o||s&&a)return n;let c={scrollLeft:0,scrollTop:0},l=Rw(1),u=Rw(0),d=OT(r);if((d||!d&&!a)&&((CT(r)!==`body`||AT(o))&&(c=HT(r)),d)){let e=$T(r);l=YT(r),u.x=e.x+r.clientLeft,u.y=e.y+r.clientTop}let f=o&&!d&&!a?tE(o,c):Rw(0);return{width:n.width*l.x,height:n.height*l.y,x:n.x*l.x-c.scrollLeft*l.x+u.x+f.x,y:n.y*l.y-c.scrollTop*l.y+u.y+f.y}}function rE(e){return Array.from(e.getClientRects())}function iE(e){let t=TT(e),n=HT(e),r=e.ownerDocument.body,i=Fw(t.scrollWidth,t.clientWidth,r.scrollWidth,r.clientWidth),a=Fw(t.scrollHeight,t.clientHeight,r.scrollHeight,r.clientHeight),o=-n.scrollLeft+eE(e),s=-n.scrollTop;return VT(r).direction===`rtl`&&(o+=Fw(t.clientWidth,r.clientWidth)-i),{width:i,height:a,x:o,y:s}}var aE=25;function oE(e,t){let n=wT(e),r=TT(e),i=n.visualViewport,a=r.clientWidth,o=r.clientHeight,s=0,c=0;if(i){a=i.width,o=i.height;let e=zT();(!e||e&&t===`fixed`)&&(s=i.offsetLeft,c=i.offsetTop)}let l=eE(r);if(l<=0){let e=r.ownerDocument,t=e.body,n=getComputedStyle(t),i=e.compatMode===`CSS1Compat`&&parseFloat(n.marginLeft)+parseFloat(n.marginRight)||0,o=Math.abs(r.clientWidth-t.clientWidth-i);o<=aE&&(a-=o)}else l<=aE&&(a+=l);return{width:a,height:o,x:s,y:c}}function sE(e,t){let n=$T(e,!0,t===`fixed`),r=n.top+e.clientTop,i=n.left+e.clientLeft,a=OT(e)?YT(e):Rw(1);return{width:e.clientWidth*a.x,height:e.clientHeight*a.y,x:i*a.x,y:r*a.y}}function cE(e,t,n){let r;if(t===`viewport`)r=oE(e,n);else if(t===`document`)r=iE(TT(e));else if(DT(t))r=sE(t,n);else{let n=ZT(e);r={x:t.x-n.x,y:t.y-n.y,width:t.width,height:t.height}}return oT(r)}function lE(e,t){let n=UT(e);return n===t||!DT(n)||BT(n)?!1:VT(n).position===`fixed`||lE(n,t)}function uE(e,t){let n=t.get(e);if(n)return n;let r=GT(e,[],!1).filter(e=>DT(e)&&CT(e)!==`body`),i=null,a=VT(e).position===`fixed`,o=a?UT(e):e;for(;DT(o)&&!BT(o);){let t=VT(o),n=LT(o);!n&&t.position===`fixed`&&(i=null),(a?!n&&!i:!n&&t.position===`static`&&i&&(i.position===`absolute`||i.position===`fixed`)||AT(o)&&!n&&lE(e,o))?r=r.filter(e=>e!==o):i=t,o=UT(o)}return t.set(e,r),r}function dE(e){let{element:t,boundary:n,rootBoundary:r,strategy:i}=e,a=[...n===`clippingAncestors`?MT(t)?[]:uE(t,this._c):[].concat(n),r],o=cE(t,a[0],i),s=o.top,c=o.right,l=o.bottom,u=o.left;for(let e=1;e<a.length;e++){let n=cE(t,a[e],i);s=Fw(n.top,s),c=Pw(n.right,c),l=Pw(n.bottom,l),u=Fw(n.left,u)}return{width:c-u,height:l-s,x:u,y:s}}function fE(e){let{width:t,height:n}=qT(e);return{width:t,height:n}}function pE(e,t,n){let r=OT(t),i=TT(t),a=n===`fixed`,o=$T(e,!0,a,t),s={scrollLeft:0,scrollTop:0},c=Rw(0);function l(){c.x=eE(i)}if(r||!r&&!a)if((CT(t)!==`body`||AT(i))&&(s=HT(t)),r){let e=$T(t,!0,a,t);c.x=e.x+t.clientLeft,c.y=e.y+t.clientTop}else i&&l();a&&!r&&i&&l();let u=i&&!r&&!a?tE(i,s):Rw(0);return{x:o.left+s.scrollLeft-c.x-u.x,y:o.top+s.scrollTop-c.y-u.y,width:o.width,height:o.height}}function mE(e){return VT(e).position===`static`}function hE(e,t){if(!OT(e)||VT(e).position===`fixed`)return null;if(t)return t(e);let n=e.offsetParent;return TT(e)===n&&(n=n.ownerDocument.body),n}function gE(e,t){let n=wT(e);if(MT(e))return n;if(!OT(e)){let t=UT(e);for(;t&&!BT(t);){if(DT(t)&&!mE(t))return t;t=UT(t)}return n}let r=hE(e,t);for(;r&&jT(r)&&mE(r);)r=hE(r,t);return r&&BT(r)&&mE(r)&&!LT(r)?n:r||RT(e)||n}var _E=async function(e){let t=this.getOffsetParent||gE,n=this.getDimensions,r=await n(e.floating);return{reference:pE(e.reference,await t(e.floating),e.strategy),floating:{x:0,y:0,width:r.width,height:r.height}}};function vE(e){return VT(e).direction===`rtl`}var yE={convertOffsetParentRelativeRectToViewportRelativeRect:nE,getDocumentElement:TT,getClippingRect:dE,getOffsetParent:gE,getElementRects:_E,getClientRects:rE,getDimensions:fE,getScale:YT,isElement:DT,isRTL:vE};function bE(e,t){return e.x===t.x&&e.y===t.y&&e.width===t.width&&e.height===t.height}function xE(e,t){let n=null,r,i=TT(e);function a(){var e;clearTimeout(r),(e=n)==null||e.disconnect(),n=null}function o(s,c){s===void 0&&(s=!1),c===void 0&&(c=1),a();let l=e.getBoundingClientRect(),{left:u,top:d,width:f,height:p}=l;if(s||t(),!f||!p)return;let m=Lw(d),h=Lw(i.clientWidth-(u+f)),g=Lw(i.clientHeight-(d+p)),_=Lw(u),v={rootMargin:-m+`px `+-h+`px `+-g+`px `+-_+`px`,threshold:Fw(0,Pw(1,c))||1},y=!0;function b(t){let n=t[0].intersectionRatio;if(n!==c){if(!y)return o();n?o(!1,n):r=setTimeout(()=>{o(!1,1e-7)},1e3)}n===1&&!bE(l,e.getBoundingClientRect())&&o(),y=!1}try{n=new IntersectionObserver(b,{...v,root:i.ownerDocument})}catch{n=new IntersectionObserver(b,v)}n.observe(e)}return o(!0),a}function SE(e,t,n,r){r===void 0&&(r={});let{ancestorScroll:i=!0,ancestorResize:a=!0,elementResize:o=typeof ResizeObserver==`function`,layoutShift:s=typeof IntersectionObserver==`function`,animationFrame:c=!1}=r,l=JT(e),u=i||a?[...l?GT(l):[],...t?GT(t):[]]:[];u.forEach(e=>{i&&e.addEventListener(`scroll`,n,{passive:!0}),a&&e.addEventListener(`resize`,n)});let d=l&&s?xE(l,n):null,f=-1,p=null;o&&(p=new ResizeObserver(e=>{let[r]=e;r&&r.target===l&&p&&t&&(p.unobserve(t),cancelAnimationFrame(f),f=requestAnimationFrame(()=>{var e;(e=p)==null||e.observe(t)})),n()}),l&&!c&&p.observe(l),t&&p.observe(t));let m,h=c?$T(e):null;c&&g();function g(){let t=$T(e);h&&!bE(h,t)&&n(),h=t,m=requestAnimationFrame(g)}return n(),()=>{var e;u.forEach(e=>{i&&e.removeEventListener(`scroll`,n),a&&e.removeEventListener(`resize`,n)}),d?.(),(e=p)==null||e.disconnect(),p=null,c&&cancelAnimationFrame(m)}}var CE=vT,wE=yT,TE=fT,EE=xT,DE=hT,OE=dT,kE=bT,AE=(e,t,n)=>{let r=new Map,i={platform:yE,...n},a={...i.platform,_c:r};return uT(e,t,{...i,platform:a})},jE=typeof document<`u`?j.useLayoutEffect:function(){};function ME(e,t){if(e===t)return!0;if(typeof e!=typeof t)return!1;if(typeof e==`function`&&e.toString()===t.toString())return!0;let n,r,i;if(e&&t&&typeof e==`object`){if(Array.isArray(e)){if(n=e.length,n!==t.length)return!1;for(r=n;r--!==0;)if(!ME(e[r],t[r]))return!1;return!0}if(i=Object.keys(e),n=i.length,n!==Object.keys(t).length)return!1;for(r=n;r--!==0;)if(!{}.hasOwnProperty.call(t,i[r]))return!1;for(r=n;r--!==0;){let n=i[r];if(!(n===`_owner`&&e.$$typeof)&&!ME(e[n],t[n]))return!1}return!0}return e!==e&&t!==t}function NE(e){return typeof window>`u`?1:(e.ownerDocument.defaultView||window).devicePixelRatio||1}function PE(e,t){let n=NE(e);return Math.round(t*n)/n}function FE(e){let t=j.useRef(e);return jE(()=>{t.current=e}),t}function IE(e){e===void 0&&(e={});let{placement:t=`bottom`,strategy:n=`absolute`,middleware:r=[],platform:i,elements:{reference:a,floating:o}={},transform:s=!0,whileElementsMounted:c,open:l}=e,[u,d]=j.useState({x:0,y:0,strategy:n,placement:t,middlewareData:{},isPositioned:!1}),[f,p]=j.useState(r);ME(f,r)||p(r);let[m,h]=j.useState(null),[g,_]=j.useState(null),v=j.useCallback(e=>{e!==S.current&&(S.current=e,h(e))},[]),y=j.useCallback(e=>{e!==C.current&&(C.current=e,_(e))},[]),b=a||m,x=o||g,S=j.useRef(null),C=j.useRef(null),w=j.useRef(u),T=c!=null,E=FE(c),D=FE(i),O=FE(l),ee=j.useCallback(()=>{if(!S.current||!C.current)return;let e={placement:t,strategy:n,middleware:f};D.current&&(e.platform=D.current),AE(S.current,C.current,e).then(e=>{let t={...e,isPositioned:O.current!==!1};te.current&&!ME(w.current,t)&&(w.current=t,Ui.flushSync(()=>{d(t)}))})},[f,t,n,D,O]);jE(()=>{l===!1&&w.current.isPositioned&&(w.current.isPositioned=!1,d(e=>({...e,isPositioned:!1})))},[l]);let te=j.useRef(!1);jE(()=>(te.current=!0,()=>{te.current=!1}),[]),jE(()=>{if(b&&(S.current=b),x&&(C.current=x),b&&x){if(E.current)return E.current(b,x,ee);ee()}},[b,x,ee,E,T]);let ne=j.useMemo(()=>({reference:S,floating:C,setReference:v,setFloating:y}),[v,y]),re=j.useMemo(()=>({reference:b,floating:x}),[b,x]),ie=j.useMemo(()=>{let e={position:n,left:0,top:0};if(!re.floating)return e;let t=PE(re.floating,u.x),r=PE(re.floating,u.y);return s?{...e,transform:`translate(`+t+`px, `+r+`px)`,...NE(re.floating)>=1.5&&{willChange:`transform`}}:{position:n,left:t,top:r}},[n,s,re.floating,u.x,u.y]);return j.useMemo(()=>({...u,update:ee,refs:ne,elements:re,floatingStyles:ie}),[u,ee,ne,re,ie])}var LE=e=>{function t(e){return{}.hasOwnProperty.call(e,`current`)}return{name:`arrow`,options:e,fn(n){let{element:r,padding:i}=typeof e==`function`?e(n):e;return r&&t(r)?r.current==null?{}:OE({element:r.current,padding:i}).fn(n):r?OE({element:r,padding:i}).fn(n):{}}}},RE=(e,t)=>{let n=CE(e);return{name:n.name,fn:n.fn,options:[e,t]}},zE=(e,t)=>{let n=wE(e);return{name:n.name,fn:n.fn,options:[e,t]}},BE=(e,t)=>({fn:kE(e).fn,options:[e,t]}),VE=(e,t)=>{let n=TE(e);return{name:n.name,fn:n.fn,options:[e,t]}},HE=(e,t)=>{let n=EE(e);return{name:n.name,fn:n.fn,options:[e,t]}},UE=(e,t)=>{let n=DE(e);return{name:n.name,fn:n.fn,options:[e,t]}},WE=(e,t)=>{let n=LE(e);return{name:n.name,fn:n.fn,options:[e,t]}},GE=`Arrow`,KE=j.forwardRef((e,t)=>{let{children:n,width:r=10,height:i=5,...a}=e;return(0,M.jsx)(u_.svg,{...a,ref:t,width:r,height:i,viewBox:`0 0 30 10`,preserveAspectRatio:`none`,children:e.asChild?n:(0,M.jsx)(`polygon`,{points:`0,0 30,0 15,10`})})});KE.displayName=GE;var qE=KE;function JE(e){let[t,n]=j.useState(void 0);return k_(()=>{if(e){n({width:e.offsetWidth,height:e.offsetHeight});let t=new ResizeObserver(t=>{if(!Array.isArray(t)||!t.length)return;let r=t[0],i,a;if(`borderBoxSize`in r){let e=r.borderBoxSize,t=Array.isArray(e)?e[0]:e;i=t.inlineSize,a=t.blockSize}else i=e.offsetWidth,a=e.offsetHeight;n({width:i,height:a})});return t.observe(e,{box:`border-box`}),()=>t.unobserve(e)}else n(void 0)},[e]),t}var YE=`Popper`,[XE,ZE]=e_(YE),[QE,$E]=XE(YE),eD=e=>{let{__scopePopper:t,children:n}=e,[r,i]=j.useState(null);return(0,M.jsx)(QE,{scope:t,anchor:r,onAnchorChange:i,children:n})};eD.displayName=YE;var tD=`PopperAnchor`,nD=j.forwardRef((e,t)=>{let{__scopePopper:n,virtualRef:r,...i}=e,a=$E(tD,n),o=j.useRef(null),s=Qg(t,o),c=j.useRef(null);return j.useEffect(()=>{let e=c.current;c.current=r?.current||o.current,e!==c.current&&a.onAnchorChange(c.current)}),r?null:(0,M.jsx)(u_.div,{...i,ref:s})});nD.displayName=tD;var rD=`PopperContent`,[iD,aD]=XE(rD),oD=j.forwardRef((e,t)=>{let{__scopePopper:n,side:r=`bottom`,sideOffset:i=0,align:a=`center`,alignOffset:o=0,arrowPadding:s=0,avoidCollisions:c=!0,collisionBoundary:l=[],collisionPadding:u=0,sticky:d=`partial`,hideWhenDetached:f=!1,updatePositionStrategy:p=`optimized`,onPlaced:m,...h}=e,g=$E(rD,n),[_,v]=j.useState(null),y=Qg(t,e=>v(e)),[b,x]=j.useState(null),S=JE(b),C=S?.width??0,w=S?.height??0,T=r+(a===`center`?``:`-`+a),E=typeof u==`number`?u:{top:0,right:0,bottom:0,left:0,...u},D=Array.isArray(l)?l:[l],O=D.length>0,ee={padding:E,boundary:D.filter(uD),altBoundary:O},{refs:te,floatingStyles:ne,placement:re,isPositioned:ie,middlewareData:ae}=IE({strategy:`fixed`,placement:T,whileElementsMounted:(...e)=>SE(...e,{animationFrame:p===`always`}),elements:{reference:g.anchor},middleware:[RE({mainAxis:i+w,alignmentAxis:o}),c&&zE({mainAxis:!0,crossAxis:!1,limiter:d===`partial`?BE():void 0,...ee}),c&&VE({...ee}),HE({...ee,apply:({elements:e,rects:t,availableWidth:n,availableHeight:r})=>{let{width:i,height:a}=t.reference,o=e.floating.style;o.setProperty(`--radix-popper-available-width`,`${n}px`),o.setProperty(`--radix-popper-available-height`,`${r}px`),o.setProperty(`--radix-popper-anchor-width`,`${i}px`),o.setProperty(`--radix-popper-anchor-height`,`${a}px`)}}),b&&WE({element:b,padding:s}),dD({arrowWidth:C,arrowHeight:w}),f&&UE({strategy:`referenceHidden`,...ee})]}),[oe,k]=fD(re),se=f_(m);k_(()=>{ie&&se?.()},[ie,se]);let ce=ae.arrow?.x,le=ae.arrow?.y,ue=ae.arrow?.centerOffset!==0,[A,de]=j.useState();return k_(()=>{_&&de(window.getComputedStyle(_).zIndex)},[_]),(0,M.jsx)(`div`,{ref:te.setFloating,"data-radix-popper-content-wrapper":``,style:{...ne,transform:ie?ne.transform:`translate(0, -200%)`,minWidth:`max-content`,zIndex:A,"--radix-popper-transform-origin":[ae.transformOrigin?.x,ae.transformOrigin?.y].join(` `),...ae.hide?.referenceHidden&&{visibility:`hidden`,pointerEvents:`none`}},dir:e.dir,children:(0,M.jsx)(iD,{scope:n,placedSide:oe,onArrowChange:x,arrowX:ce,arrowY:le,shouldHideArrow:ue,children:(0,M.jsx)(u_.div,{"data-side":oe,"data-align":k,...h,ref:y,style:{...h.style,animation:ie?void 0:`none`}})})})});oD.displayName=rD;var sD=`PopperArrow`,cD={top:`bottom`,right:`left`,bottom:`top`,left:`right`},lD=j.forwardRef(function(e,t){let{__scopePopper:n,...r}=e,i=aD(sD,n),a=cD[i.placedSide];return(0,M.jsx)(`span`,{ref:i.onArrowChange,style:{position:`absolute`,left:i.arrowX,top:i.arrowY,[a]:0,transformOrigin:{top:``,right:`0 0`,bottom:`center 0`,left:`100% 0`}[i.placedSide],transform:{top:`translateY(100%)`,right:`translateY(50%) rotate(90deg) translateX(-50%)`,bottom:`rotate(180deg)`,left:`translateY(50%) rotate(-90deg) translateX(50%)`}[i.placedSide],visibility:i.shouldHideArrow?`hidden`:void 0},children:(0,M.jsx)(qE,{...r,ref:t,style:{...r.style,display:`block`}})})});lD.displayName=sD;function uD(e){return e!==null}var dD=e=>({name:`transformOrigin`,options:e,fn(t){let{placement:n,rects:r,middlewareData:i}=t,a=i.arrow?.centerOffset!==0,o=a?0:e.arrowWidth,s=a?0:e.arrowHeight,[c,l]=fD(n),u={start:`0%`,center:`50%`,end:`100%`}[l],d=(i.arrow?.x??0)+o/2,f=(i.arrow?.y??0)+s/2,p=``,m=``;return c===`bottom`?(p=a?u:`${d}px`,m=`${-s}px`):c===`top`?(p=a?u:`${d}px`,m=`${r.floating.height+s}px`):c===`right`?(p=`${-s}px`,m=a?u:`${f}px`):c===`left`&&(p=`${r.floating.width+s}px`,m=a?u:`${f}px`),{data:{x:p,y:m}}}});function fD(e){let[t,n=`center`]=e.split(`-`);return[t,n]}var pD=eD,mD=nD,hD=oD,gD=lD,[_D,vD]=e_(`Tooltip`,[ZE]),yD=ZE(),bD=`TooltipProvider`,xD=700,SD=`tooltip.open`,[CD,wD]=_D(bD),TD=e=>{let{__scopeTooltip:t,delayDuration:n=xD,skipDelayDuration:r=300,disableHoverableContent:i=!1,children:a}=e,o=j.useRef(!0),s=j.useRef(!1),c=j.useRef(0);return j.useEffect(()=>{let e=c.current;return()=>window.clearTimeout(e)},[]),(0,M.jsx)(CD,{scope:t,isOpenDelayedRef:o,delayDuration:n,onOpen:j.useCallback(()=>{window.clearTimeout(c.current),o.current=!1},[]),onClose:j.useCallback(()=>{window.clearTimeout(c.current),c.current=window.setTimeout(()=>o.current=!0,r)},[r]),isPointerInTransitRef:s,onPointerInTransitChange:j.useCallback(e=>{s.current=e},[]),disableHoverableContent:i,children:a})};TD.displayName=bD;var ED=`Tooltip`,[DD,OD]=_D(ED),kD=e=>{let{__scopeTooltip:t,children:n,open:r,defaultOpen:i,onOpenChange:a,disableHoverableContent:o,delayDuration:s}=e,c=wD(ED,e.__scopeTooltip),l=yD(t),[u,d]=j.useState(null),f=Qx(),p=j.useRef(0),m=o??c.disableHoverableContent,h=s??c.delayDuration,g=j.useRef(!1),[_,v]=R_({prop:r,defaultProp:i??!1,onChange:e=>{e?(c.onOpen(),document.dispatchEvent(new CustomEvent(SD))):c.onClose(),a?.(e)},caller:ED}),y=j.useMemo(()=>_?g.current?`delayed-open`:`instant-open`:`closed`,[_]),b=j.useCallback(()=>{window.clearTimeout(p.current),p.current=0,g.current=!1,v(!0)},[v]),x=j.useCallback(()=>{window.clearTimeout(p.current),p.current=0,v(!1)},[v]),S=j.useCallback(()=>{window.clearTimeout(p.current),p.current=window.setTimeout(()=>{g.current=!0,v(!0),p.current=0},h)},[h,v]);return j.useEffect(()=>()=>{p.current&&=(window.clearTimeout(p.current),0)},[]),(0,M.jsx)(pD,{...l,children:(0,M.jsx)(DD,{scope:t,contentId:f,open:_,stateAttribute:y,trigger:u,onTriggerChange:d,onTriggerEnter:j.useCallback(()=>{c.isOpenDelayedRef.current?S():b()},[c.isOpenDelayedRef,S,b]),onTriggerLeave:j.useCallback(()=>{m?x():(window.clearTimeout(p.current),p.current=0)},[x,m]),onOpen:b,onClose:x,disableHoverableContent:m,children:n})})};kD.displayName=ED;var AD=`TooltipTrigger`,jD=j.forwardRef((e,t)=>{let{__scopeTooltip:n,...r}=e,i=OD(AD,n),a=wD(AD,n),o=yD(n),s=Qg(t,j.useRef(null),i.onTriggerChange),c=j.useRef(!1),l=j.useRef(!1),u=j.useCallback(()=>c.current=!1,[]);return j.useEffect(()=>()=>document.removeEventListener(`pointerup`,u),[u]),(0,M.jsx)(mD,{asChild:!0,...o,children:(0,M.jsx)(u_.button,{"aria-describedby":i.open?i.contentId:void 0,"data-state":i.stateAttribute,...r,ref:s,onPointerMove:J(e.onPointerMove,e=>{e.pointerType!==`touch`&&!l.current&&!a.isPointerInTransitRef.current&&(i.onTriggerEnter(),l.current=!0)}),onPointerLeave:J(e.onPointerLeave,()=>{i.onTriggerLeave(),l.current=!1}),onPointerDown:J(e.onPointerDown,()=>{i.open&&i.onClose(),c.current=!0,document.addEventListener(`pointerup`,u,{once:!0})}),onFocus:J(e.onFocus,()=>{c.current||i.onOpen()}),onBlur:J(e.onBlur,i.onClose),onClick:J(e.onClick,i.onClose)})})});jD.displayName=AD;var MD=`TooltipPortal`,[ND,PD]=_D(MD,{forceMount:void 0}),FD=e=>{let{__scopeTooltip:t,forceMount:n,children:r,container:i}=e,a=OD(MD,t);return(0,M.jsx)(ND,{scope:t,forceMount:n,children:(0,M.jsx)(N_,{present:n||a.open,children:(0,M.jsx)(j_,{asChild:!0,container:i,children:r})})})};FD.displayName=MD;var ID=`TooltipContent`,LD=j.forwardRef((e,t)=>{let n=PD(ID,e.__scopeTooltip),{forceMount:r=n.forceMount,side:i=`top`,...a}=e,o=OD(ID,e.__scopeTooltip);return(0,M.jsx)(N_,{present:r||o.open,children:o.disableHoverableContent?(0,M.jsx)(HD,{side:i,...a,ref:t}):(0,M.jsx)(RD,{side:i,...a,ref:t})})}),RD=j.forwardRef((e,t)=>{let n=OD(ID,e.__scopeTooltip),r=wD(ID,e.__scopeTooltip),i=j.useRef(null),a=Qg(t,i),[o,s]=j.useState(null),{trigger:c,onClose:l}=n,u=i.current,{onPointerInTransitChange:d}=r,f=j.useCallback(()=>{s(null),d(!1)},[d]),p=j.useCallback((e,t)=>{let n=e.currentTarget,r={x:e.clientX,y:e.clientY},i=KD(r,GD(r,n.getBoundingClientRect())),a=qD(t.getBoundingClientRect());s(YD([...i,...a])),d(!0)},[d]);return j.useEffect(()=>()=>f(),[f]),j.useEffect(()=>{if(c&&u){let e=e=>p(e,u),t=e=>p(e,c);return c.addEventListener(`pointerleave`,e),u.addEventListener(`pointerleave`,t),()=>{c.removeEventListener(`pointerleave`,e),u.removeEventListener(`pointerleave`,t)}}},[c,u,p,f]),j.useEffect(()=>{if(o){let e=e=>{let t=e.target,n={x:e.clientX,y:e.clientY},r=c?.contains(t)||u?.contains(t),i=!JD(n,o);r?f():i&&(f(),l())};return document.addEventListener(`pointermove`,e),()=>document.removeEventListener(`pointermove`,e)}},[c,u,o,l,f]),(0,M.jsx)(HD,{...e,ref:a})}),[zD,BD]=_D(ED,{isInside:!1}),VD=a_(`TooltipContent`),HD=j.forwardRef((e,t)=>{let{__scopeTooltip:n,children:r,"aria-label":i,onEscapeKeyDown:a,onPointerDownOutside:o,...s}=e,c=OD(ID,n),l=yD(n),{onClose:u}=c;return j.useEffect(()=>(document.addEventListener(SD,u),()=>document.removeEventListener(SD,u)),[u]),j.useEffect(()=>{if(c.trigger){let e=e=>{e.target?.contains(c.trigger)&&u()};return window.addEventListener(`scroll`,e,{capture:!0}),()=>window.removeEventListener(`scroll`,e,{capture:!0})}},[c.trigger,u]),(0,M.jsx)(b_,{asChild:!0,disableOutsidePointerEvents:!1,onEscapeKeyDown:a,onPointerDownOutside:o,onFocusOutside:e=>e.preventDefault(),onDismiss:u,children:(0,M.jsxs)(hD,{"data-state":c.stateAttribute,...l,...s,ref:t,style:{...s.style,"--radix-tooltip-content-transform-origin":`var(--radix-popper-transform-origin)`,"--radix-tooltip-content-available-width":`var(--radix-popper-available-width)`,"--radix-tooltip-content-available-height":`var(--radix-popper-available-height)`,"--radix-tooltip-trigger-width":`var(--radix-popper-anchor-width)`,"--radix-tooltip-trigger-height":`var(--radix-popper-anchor-height)`},children:[(0,M.jsx)(VD,{children:r}),(0,M.jsx)(zD,{scope:n,isInside:!0,children:(0,M.jsx)(W_,{id:c.contentId,role:`tooltip`,children:i||r})})]})})});LD.displayName=ID;var UD=`TooltipArrow`,WD=j.forwardRef((e,t)=>{let{__scopeTooltip:n,...r}=e,i=yD(n);return BD(UD,n).isInside?null:(0,M.jsx)(gD,{...i,...r,ref:t})});WD.displayName=UD;function GD(e,t){let n=Math.abs(t.top-e.y),r=Math.abs(t.bottom-e.y),i=Math.abs(t.right-e.x),a=Math.abs(t.left-e.x);switch(Math.min(n,r,i,a)){case a:return`left`;case i:return`right`;case n:return`top`;case r:return`bottom`;default:throw Error(`unreachable`)}}function KD(e,t,n=5){let r=[];switch(t){case`top`:r.push({x:e.x-n,y:e.y+n},{x:e.x+n,y:e.y+n});break;case`bottom`:r.push({x:e.x-n,y:e.y-n},{x:e.x+n,y:e.y-n});break;case`left`:r.push({x:e.x+n,y:e.y-n},{x:e.x+n,y:e.y+n});break;case`right`:r.push({x:e.x-n,y:e.y-n},{x:e.x-n,y:e.y+n});break}return r}function qD(e){let{top:t,right:n,bottom:r,left:i}=e;return[{x:i,y:t},{x:n,y:t},{x:n,y:r},{x:i,y:r}]}function JD(e,t){let{x:n,y:r}=e,i=!1;for(let e=0,a=t.length-1;e<t.length;a=e++){let o=t[e],s=t[a],c=o.x,l=o.y,u=s.x,d=s.y;l>r!=d>r&&n<(u-c)*(r-l)/(d-l)+c&&(i=!i)}return i}function YD(e){let t=e.slice();return t.sort((e,t)=>e.x<t.x?-1:e.x>t.x?1:e.y<t.y?-1:+(e.y>t.y)),XD(t)}function XD(e){if(e.length<=1)return e.slice();let t=[];for(let n=0;n<e.length;n++){let r=e[n];for(;t.length>=2;){let e=t[t.length-1],n=t[t.length-2];if((e.x-n.x)*(r.y-n.y)>=(e.y-n.y)*(r.x-n.x))t.pop();else break}t.push(r)}t.pop();let n=[];for(let t=e.length-1;t>=0;t--){let r=e[t];for(;n.length>=2;){let e=n[n.length-1],t=n[n.length-2];if((e.x-t.x)*(r.y-t.y)>=(e.y-t.y)*(r.x-t.x))n.pop();else break}n.push(r)}return n.pop(),t.length===1&&n.length===1&&t[0].x===n[0].x&&t[0].y===n[0].y?t:t.concat(n)}var ZD=TD,QD=kD,$D=jD,eO=LD,tO=ZD,nO=QD,rO=$D,iO=j.forwardRef(({className:e,sideOffset:t=4,...n},r)=>(0,M.jsx)(eO,{ref:r,sideOffset:t,className:Z(`z-50 overflow-hidden rounded-md border bg-popover px-3 py-1.5 text-sm text-popover-foreground shadow-md animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2`,e),...n}));iO.displayName=eO.displayName;var aO=`sidebar_state`,oO=3600*24*7,sO=`16rem`,cO=`18rem`,lO=`3rem`,uO=`b`,dO=j.createContext(null);function fO(){let e=j.useContext(dO);if(!e)throw Error(`useSidebar must be used within a SidebarProvider`);return e}var pO=j.forwardRef(({defaultOpen:e=!0,open:t,onOpenChange:n,className:r,style:i,children:a,...o},s)=>{let c=zx(),[l,u]=j.useState(!1),[d,f]=j.useState(e),p=t??d,m=j.useCallback(e=>{let t=typeof e==`function`?e(p):e;n?n(t):f(t),document.cookie=`${aO}=${t}; path=/; max-age=${oO}`},[n,p]),h=j.useCallback(()=>c?u(e=>!e):m(e=>!e),[c,m,u]);j.useEffect(()=>{let e=e=>{e.key===uO&&(e.metaKey||e.ctrlKey)&&(e.preventDefault(),h())};return window.addEventListener(`keydown`,e),()=>window.removeEventListener(`keydown`,e)},[h]);let g=p?`expanded`:`collapsed`,_=j.useMemo(()=>({state:g,open:p,setOpen:m,isMobile:c,openMobile:l,setOpenMobile:u,toggleSidebar:h}),[g,p,m,c,l,u,h]);return(0,M.jsx)(dO.Provider,{value:_,children:(0,M.jsx)(tO,{delayDuration:0,children:(0,M.jsx)(`div`,{style:{"--sidebar-width":sO,"--sidebar-width-icon":lO,...i},className:Z(`group/sidebar-wrapper has-data-[variant=inset]:bg-sidebar flex min-h-0 w-full`,r),ref:s,...o,children:a})})})});pO.displayName=`SidebarProvider`;var mO=j.forwardRef(({side:e=`left`,variant:t=`sidebar`,collapsible:n=`offcanvas`,className:r,children:i,...a},o)=>{let{isMobile:s,state:c,openMobile:l,setOpenMobile:u}=fO();return n===`none`?(0,M.jsx)(`div`,{className:Z(`bg-sidebar text-sidebar-foreground flex h-full w-[var(--sidebar-width)] flex-col`,r),ref:o,...a,children:i}):s?(0,M.jsx)(Cw,{open:l,onOpenChange:u,...a,children:(0,M.jsx)(Dw,{"data-sidebar":`sidebar`,"data-mobile":`true`,className:`bg-sidebar text-sidebar-foreground w-[var(--sidebar-width)] p-0 [&>button]:hidden`,style:{"--sidebar-width":cO},side:e,children:(0,M.jsx)(`div`,{className:`flex h-full w-full flex-col`,children:i})})}):(0,M.jsx)(`div`,{ref:o,className:Z(`bg-sidebar text-sidebar-foreground hidden md:flex h-svh w-[var(--sidebar-width)] shrink-0 flex-col border-r transition-[width] duration-200 ease-linear overflow-hidden`,c===`collapsed`&&n===`offcanvas`&&`w-0 border-0`,c===`collapsed`&&n===`icon`&&`w-[var(--sidebar-width-icon)]`,r),"data-state":c,"data-collapsible":c===`collapsed`?n:``,"data-variant":t,"data-side":e,...a,children:i})});mO.displayName=`Sidebar`;var hO=j.forwardRef(({className:e,onClick:t,...n},r)=>{let{toggleSidebar:i}=fO();return(0,M.jsxs)(Q,{ref:r,"data-sidebar":`trigger`,variant:`ghost`,size:`icon`,className:Z(`h-7 w-7`,e),onClick:e=>{t?.(e),i()},...n,children:[(0,M.jsx)(Dy,{}),(0,M.jsx)(`span`,{className:`sr-only`,children:`Toggle Sidebar`})]})});hO.displayName=`SidebarTrigger`;var gO=j.forwardRef(({className:e,...t},n)=>{let{toggleSidebar:r}=fO();return(0,M.jsx)(`button`,{ref:n,"data-sidebar":`rail`,"aria-label":`Toggle Sidebar`,tabIndex:-1,onClick:r,title:`Toggle Sidebar`,className:Z(`hover:after:bg-sidebar-border absolute inset-y-0 z-20 hidden w-4 -translate-x-1/2 transition-all ease-linear after:absolute after:inset-y-0 after:left-1/2 after:w-[2px] group-data-[side=left]:-right-4 group-data-[side=right]:left-0 sm:flex`,`[[data-side=left]_&]:cursor-w-resize [[data-side=right]_&]:cursor-e-resize`,`[[data-side=left][data-state=collapsed]_&]:cursor-e-resize [[data-side=right][data-state=collapsed]_&]:cursor-w-resize`,`group-data-[collapsible=offcanvas]:translate-x-0 group-data-[collapsible=offcanvas]:after:left-full group-data-[collapsible=offcanvas]:hover:bg-sidebar`,`[[data-side=left][data-collapsible=offcanvas]_&]:-right-2`,`[[data-side=right][data-collapsible=offcanvas]_&]:-left-2`,e),...t})});gO.displayName=`SidebarRail`;var _O=j.forwardRef(({className:e,...t},n)=>(0,M.jsx)(`main`,{ref:n,className:Z(`relative flex min-h-svh flex-1 flex-col bg-background`,`peer-data-[variant=inset]:min-h-[calc(100svh-theme(spacing.4))] md:peer-data-[variant=inset]:m-2 md:peer-data-[state=collapsed]:peer-data-[variant=inset]:ml-2 md:peer-data-[variant=inset]:ml-0 md:peer-data-[variant=inset]:rounded-xl md:peer-data-[variant=inset]:shadow`,e),...t}));_O.displayName=`SidebarInset`;var vO=j.forwardRef(({className:e,...t},n)=>(0,M.jsx)(Vx,{ref:n,"data-sidebar":`input`,className:Z(`h-8 w-full bg-background shadow-none focus-visible:ring-2 focus-visible:ring-sidebar-ring`,e),...t}));vO.displayName=`SidebarInput`;var yO=j.forwardRef(({className:e,...t},n)=>(0,M.jsx)(`div`,{ref:n,"data-sidebar":`header`,className:Z(`flex flex-col gap-2 p-2`,e),...t}));yO.displayName=`SidebarHeader`;var bO=j.forwardRef(({className:e,...t},n)=>(0,M.jsx)(`div`,{ref:n,"data-sidebar":`footer`,className:Z(`flex flex-col gap-2 p-2`,e),...t}));bO.displayName=`SidebarFooter`;var xO=j.forwardRef(({className:e,...t},n)=>(0,M.jsx)(Yx,{ref:n,"data-sidebar":`separator`,className:Z(`mx-2 w-auto bg-sidebar-border`,e),...t}));xO.displayName=`SidebarSeparator`;var SO=j.forwardRef(({className:e,...t},n)=>(0,M.jsx)(`div`,{ref:n,"data-sidebar":`content`,className:Z(`flex min-h-0 flex-1 flex-col gap-2 overflow-auto`,e),...t}));SO.displayName=`SidebarContent`;var CO=j.forwardRef(({className:e,...t},n)=>(0,M.jsx)(`div`,{ref:n,"data-sidebar":`group`,className:Z(`relative flex w-full min-w-0 flex-col p-2`,e),...t}));CO.displayName=`SidebarGroup`;var wO=j.forwardRef(({className:e,asChild:t=!1,...n},r)=>(0,M.jsx)(t?Mx:`div`,{ref:r,"data-sidebar":`group-label`,className:Z(`text-xs/6 font-medium text-sidebar-foreground/70 ring-sidebar-ring flex h-8 shrink-0 items-center rounded-md px-2 outline-none transition-[margin,opacity] duration-200 ease-linear focus-visible:ring-2 [&>svg]:size-4 [&>svg]:shrink-0 [[data-collapsible=icon]_&]:-mt-8 [[data-collapsible=icon]_&]:opacity-0 [[data-collapsible=icon]_&]:overflow-hidden`,e),...n}));wO.displayName=`SidebarGroupLabel`;var TO=j.forwardRef(({className:e,asChild:t=!1,...n},r)=>(0,M.jsx)(t?Mx:`button`,{ref:r,"data-sidebar":`group-action`,className:Z(`absolute right-3 top-3.5 flex aspect-square w-5 items-center justify-center rounded-md p-0 text-sidebar-foreground outline-none ring-sidebar-ring transition-transform hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 [&>svg]:size-4 [&>svg]:shrink-0`,`after:absolute after:-inset-2 after:md:hidden`,`group-data-[collapsible=icon]:hidden`,e),...n}));TO.displayName=`SidebarGroupAction`;var EO=j.forwardRef(({className:e,...t},n)=>(0,M.jsx)(`div`,{ref:n,"data-sidebar":`group-content`,className:Z(`w-full text-sm`,e),...t}));EO.displayName=`SidebarGroupContent`;var DO=j.forwardRef(({className:e,...t},n)=>(0,M.jsx)(`ul`,{ref:n,"data-sidebar":`menu`,className:Z(`flex w-full min-w-0 flex-col gap-1`,e),...t}));DO.displayName=`SidebarMenu`;var OO=j.forwardRef(({className:e,...t},n)=>(0,M.jsx)(`li`,{ref:n,"data-sidebar":`menu-item`,className:Z(`group/menu-item relative`,e),...t}));OO.displayName=`SidebarMenuItem`;var kO=j.forwardRef(({asChild:e=!1,isActive:t=!1,variant:n=`default`,size:r=`default`,tooltip:i,className:a,...o},s)=>{let c=e?Mx:`button`,{isMobile:l,state:u}=fO(),d=(0,M.jsx)(c,{ref:s,"data-sidebar":`menu-button`,"data-size":r,"data-active":t,className:Z(AO({variant:n,size:r}),a),...o});return i?(typeof i==`string`&&(i={children:i}),(0,M.jsxs)(nO,{children:[(0,M.jsx)(rO,{asChild:!0,children:d}),(0,M.jsx)(iO,{side:`right`,align:`center`,hidden:u!==`collapsed`||l,...i})]})):d});kO.displayName=`SidebarMenuButton`;var AO=Wv(`peer/menu-button flex w-full items-center gap-2 overflow-hidden rounded-md p-2 text-left text-sm outline-none ring-sidebar-ring transition-[width,height,padding] hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 active:bg-sidebar-accent active:text-sidebar-accent-foreground disabled:pointer-events-none disabled:opacity-50 group-has-[[data-sidebar=menu-action]]/menu-item:pr-8 aria-disabled:pointer-events-none aria-disabled:opacity-50 data-[active=true]:bg-sidebar-accent data-[active=true]:font-medium data-[active=true]:text-sidebar-accent-foreground data-[state=open]:hover:bg-sidebar-accent data-[state=open]:hover:text-sidebar-accent-foreground group-data-[collapsible=icon]:!size-8 group-data-[collapsible=icon]:!p-2 [&>span:last-child]:truncate [&>svg]:size-4 [&>svg]:shrink-0`,{variants:{variant:{default:`hover:bg-sidebar-accent hover:text-sidebar-accent-foreground`,outline:`bg-background shadow-[0_0_0_1px_hsl(var(--sidebar-border))] hover:bg-sidebar-accent hover:text-sidebar-accent-foreground hover:shadow-[0_0_0_1px_hsl(var(--sidebar-accent))]`},size:{default:`h-8 text-sm`,sm:`h-7 text-xs`,lg:`h-12 text-sm group-data-[collapsible=icon]:!p-0`}},defaultVariants:{variant:`default`,size:`default`}}),jO=j.forwardRef(({className:e,asChild:t=!1,showOnHover:n=!1,...r},i)=>(0,M.jsx)(t?Mx:`button`,{ref:i,"data-sidebar":`menu-action`,className:Z(`absolute right-1 top-1.5 flex aspect-square w-5 items-center justify-center rounded-md p-0 text-sidebar-foreground outline-none ring-sidebar-ring transition-transform hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 [&>svg]:size-4 [&>svg]:shrink-0`,`after:absolute after:-inset-2 after:md:hidden`,`peer-data-[size=sm]/menu-button:top-1`,`peer-data-[size=default]/menu-button:top-1.5`,`peer-data-[size=lg]/menu-button:top-2.5`,`group-data-[collapsible=icon]:hidden`,n&&`group-focus-within/menu-item:opacity-100 group-hover/menu-item:opacity-100 data-[state=open]:opacity-100 peer-data-[active=true]/menu-button:text-sidebar-accent-foreground md:opacity-0`,e),...r}));jO.displayName=`SidebarMenuAction`;var MO=j.forwardRef(({className:e,...t},n)=>(0,M.jsx)(`div`,{ref:n,"data-sidebar":`menu-badge`,className:Z(`text-sidebar-foreground pointer-events-none absolute right-1 flex h-5 min-w-5 items-center justify-center rounded-md px-1 text-xs font-medium tabular-nums select-none`,`peer-hover/menu-button:text-sidebar-accent-foreground peer-data-[active=true]/menu-button:text-sidebar-accent-foreground`,`peer-data-[size=sm]/menu-button:top-1`,`peer-data-[size=default]/menu-button:top-1.5`,`peer-data-[size=lg]/menu-button:top-2.5`,`group-data-[collapsible=icon]:hidden`,e),...t}));MO.displayName=`SidebarMenuBadge`;var NO=j.forwardRef(({className:e,showIcon:t=!1,...n},r)=>{let i=j.useMemo(()=>`${Math.floor(Math.random()*40)+50}%`,[]);return(0,M.jsxs)(`div`,{ref:r,"data-sidebar":`menu-skeleton`,className:Z(`rounded-md h-8 flex gap-2 px-2 items-center`,e),...n,children:[t&&(0,M.jsx)(Mw,{className:`size-4 rounded-md`,"data-sidebar":`menu-skeleton-icon`}),(0,M.jsx)(Mw,{className:`h-4 flex-1 max-w-[var(--skeleton-width)]`,"data-sidebar":`menu-skeleton-text`,style:{"--skeleton-width":i}})]})});NO.displayName=`SidebarMenuSkeleton`;var PO=j.forwardRef(({className:e,...t},n)=>(0,M.jsx)(`ul`,{ref:n,"data-sidebar":`menu-sub`,className:Z(`mx-3.5 flex min-w-0 translate-x-px flex-col gap-1 border-l border-sidebar-border px-2.5 py-0.5`,`group-data-[collapsible=icon]:hidden`,e),...t}));PO.displayName=`SidebarMenuSub`;var FO=j.forwardRef(({...e},t)=>(0,M.jsx)(`li`,{ref:t,...e}));FO.displayName=`SidebarMenuSubItem`;var IO=j.forwardRef(({asChild:e=!1,size:t=`md`,isActive:n,className:r,...i},a)=>(0,M.jsx)(e?Mx:`a`,{ref:a,"data-sidebar":`menu-sub-button`,"data-size":t,"data-active":n,className:Z(`flex h-7 min-w-0 -translate-x-px items-center gap-2 overflow-hidden rounded-md px-2 text-sidebar-foreground outline-none ring-sidebar-ring hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 active:bg-sidebar-accent active:text-sidebar-accent-foreground disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50 [&>span:last-child]:truncate [&>svg]:size-4 [&>svg]:shrink-0 [&>svg]:text-sidebar-accent-foreground`,`data-[active=true]:bg-sidebar-accent data-[active=true]:text-sidebar-accent-foreground`,t===`sm`&&`text-xs`,t===`md`&&`text-sm`,r),...i}));IO.displayName=`SidebarMenuSubButton`;var LO=Wv(`text-muted-foreground flex flex-wrap items-center gap-1.5 break-words text-sm sm:gap-2.5`),RO=j.forwardRef(({className:e,...t},n)=>(0,M.jsx)(`nav`,{ref:n,"aria-label":`breadcrumb`,className:Z(LO(),e),...t}));RO.displayName=`Breadcrumb`;var zO=j.forwardRef(({className:e,...t},n)=>(0,M.jsx)(`ol`,{ref:n,className:Z(`text-muted-foreground flex flex-wrap items-center gap-1.5 break-words text-sm sm:gap-2.5`,e),...t}));zO.displayName=`BreadcrumbList`;var BO=j.forwardRef(({className:e,...t},n)=>(0,M.jsx)(`li`,{ref:n,className:Z(`inline-flex items-center gap-1.5`,e),...t}));BO.displayName=`BreadcrumbItem`;var VO=j.forwardRef(({asChild:e,className:t,...n},r)=>(0,M.jsx)(e?Mx:`a`,{ref:r,className:Z(`hover:text-foreground transition-colors`,t),...n}));VO.displayName=`BreadcrumbLink`;var HO=j.forwardRef(({className:e,...t},n)=>(0,M.jsx)(`span`,{ref:n,role:`link`,"aria-disabled":`true`,"aria-current":`page`,className:Z(`text-foreground font-normal`,e),...t}));HO.displayName=`BreadcrumbPage`;var UO=({children:e,className:t,...n})=>(0,M.jsx)(`li`,{role:`presentation`,"aria-hidden":`true`,className:Z(`[&>svg]:size-3.5`,t),...n,children:e??(0,M.jsx)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2`,strokeLinecap:`round`,strokeLinejoin:`round`,className:`size-4`,children:(0,M.jsx)(`path`,{d:`m9 18 6-6-6-6`})})});UO.displayName=`BreadcrumbSeparator`;var WO=({className:e,...t})=>(0,M.jsxs)(`span`,{role:`presentation`,"aria-hidden":`true`,className:Z(`flex h-9 w-9 items-center justify-center`,e),...t,children:[(0,M.jsxs)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2`,strokeLinecap:`round`,strokeLinejoin:`round`,className:`size-4`,children:[(0,M.jsx)(`circle`,{cx:`12`,cy:`12`,r:`1`}),(0,M.jsx)(`circle`,{cx:`19`,cy:`12`,r:`1`}),(0,M.jsx)(`circle`,{cx:`5`,cy:`12`,r:`1`})]}),(0,M.jsx)(`span`,{className:`sr-only`,children:`More`})]});WO.displayName=`BreadcrumbElipssis`;var GO=j.createContext(void 0);function KO(e){let t=j.useContext(GO);return e||t||`ltr`}var qO=`rovingFocusGroup.onEntryFocus`,JO={bubbles:!1,cancelable:!0},YO=`RovingFocusGroup`,[XO,ZO,QO]=l_(YO),[$O,ek]=e_(YO,[QO]),[tk,nk]=$O(YO),rk=j.forwardRef((e,t)=>(0,M.jsx)(XO.Provider,{scope:e.__scopeRovingFocusGroup,children:(0,M.jsx)(XO.Slot,{scope:e.__scopeRovingFocusGroup,children:(0,M.jsx)(ik,{...e,ref:t})})}));rk.displayName=YO;var ik=j.forwardRef((e,t)=>{let{__scopeRovingFocusGroup:n,orientation:r,loop:i=!1,dir:a,currentTabStopId:o,defaultCurrentTabStopId:s,onCurrentTabStopIdChange:c,onEntryFocus:l,preventScrollOnEntryFocus:u=!1,...d}=e,f=j.useRef(null),p=Qg(t,f),m=KO(a),[h,g]=R_({prop:o,defaultProp:s??null,onChange:c,caller:YO}),[_,v]=j.useState(!1),y=f_(l),b=ZO(n),x=j.useRef(!1),[S,C]=j.useState(0);return j.useEffect(()=>{let e=f.current;if(e)return e.addEventListener(qO,y),()=>e.removeEventListener(qO,y)},[y]),(0,M.jsx)(tk,{scope:n,orientation:r,dir:m,loop:i,currentTabStopId:h,onItemFocus:j.useCallback(e=>g(e),[g]),onItemShiftTab:j.useCallback(()=>v(!0),[]),onFocusableItemAdd:j.useCallback(()=>C(e=>e+1),[]),onFocusableItemRemove:j.useCallback(()=>C(e=>e-1),[]),children:(0,M.jsx)(u_.div,{tabIndex:_||S===0?-1:0,"data-orientation":r,...d,ref:p,style:{outline:`none`,...e.style},onMouseDown:J(e.onMouseDown,()=>{x.current=!0}),onFocus:J(e.onFocus,e=>{let t=!x.current;if(e.target===e.currentTarget&&t&&!_){let t=new CustomEvent(qO,JO);if(e.currentTarget.dispatchEvent(t),!t.defaultPrevented){let e=b().filter(e=>e.focusable);uk([e.find(e=>e.active),e.find(e=>e.id===h),...e].filter(Boolean).map(e=>e.ref.current),u)}}x.current=!1}),onBlur:J(e.onBlur,()=>v(!1))})})}),ak=`RovingFocusGroupItem`,ok=j.forwardRef((e,t)=>{let{__scopeRovingFocusGroup:n,focusable:r=!0,active:i=!1,tabStopId:a,children:o,...s}=e,c=Qx(),l=a||c,u=nk(ak,n),d=u.currentTabStopId===l,f=ZO(n),{onFocusableItemAdd:p,onFocusableItemRemove:m,currentTabStopId:h}=u;return j.useEffect(()=>{if(r)return p(),()=>m()},[r,p,m]),(0,M.jsx)(XO.ItemSlot,{scope:n,id:l,focusable:r,active:i,children:(0,M.jsx)(u_.span,{tabIndex:d?0:-1,"data-orientation":u.orientation,...s,ref:t,onMouseDown:J(e.onMouseDown,e=>{r?u.onItemFocus(l):e.preventDefault()}),onFocus:J(e.onFocus,()=>u.onItemFocus(l)),onKeyDown:J(e.onKeyDown,e=>{if(e.key===`Tab`&&e.shiftKey){u.onItemShiftTab();return}if(e.target!==e.currentTarget)return;let t=lk(e,u.orientation,u.dir);if(t!==void 0){if(e.metaKey||e.ctrlKey||e.altKey||e.shiftKey)return;e.preventDefault();let n=f().filter(e=>e.focusable).map(e=>e.ref.current);if(t===`last`)n.reverse();else if(t===`prev`||t===`next`){t===`prev`&&n.reverse();let r=n.indexOf(e.currentTarget);n=u.loop?dk(n,r+1):n.slice(r+1)}setTimeout(()=>uk(n))}}),children:typeof o==`function`?o({isCurrentTabStop:d,hasTabStop:h!=null}):o})})});ok.displayName=ak;var sk={ArrowLeft:`prev`,ArrowUp:`prev`,ArrowRight:`next`,ArrowDown:`next`,PageUp:`first`,Home:`first`,PageDown:`last`,End:`last`};function ck(e,t){return t===`rtl`?e===`ArrowLeft`?`ArrowRight`:e===`ArrowRight`?`ArrowLeft`:e:e}function lk(e,t,n){let r=ck(e.key,n);if(!(t===`vertical`&&[`ArrowLeft`,`ArrowRight`].includes(r))&&!(t===`horizontal`&&[`ArrowUp`,`ArrowDown`].includes(r)))return sk[r]}function uk(e,t=!1){let n=document.activeElement;for(let r of e)if(r===n||(r.focus({preventScroll:t}),document.activeElement!==n))return}function dk(e,t){return e.map((n,r)=>e[(t+r)%e.length])}var fk=rk,pk=ok,mk=[`Enter`,` `],hk=[`ArrowDown`,`PageUp`,`Home`],gk=[`ArrowUp`,`PageDown`,`End`],_k=[...hk,...gk],vk={ltr:[...mk,`ArrowRight`],rtl:[...mk,`ArrowLeft`]},yk={ltr:[`ArrowLeft`],rtl:[`ArrowRight`]},bk=`Menu`,[xk,Sk,Ck]=l_(bk),[wk,Tk]=e_(bk,[Ck,ZE,ek]),Ek=ZE(),Dk=ek(),[Ok,kk]=wk(bk),[Ak,jk]=wk(bk),Mk=e=>{let{__scopeMenu:t,open:n=!1,children:r,dir:i,onOpenChange:a,modal:o=!0}=e,s=Ek(t),[c,l]=j.useState(null),u=j.useRef(!1),d=f_(a),f=KO(i);return j.useEffect(()=>{let e=()=>{u.current=!0,document.addEventListener(`pointerdown`,t,{capture:!0,once:!0}),document.addEventListener(`pointermove`,t,{capture:!0,once:!0})},t=()=>u.current=!1;return document.addEventListener(`keydown`,e,{capture:!0}),()=>{document.removeEventListener(`keydown`,e,{capture:!0}),document.removeEventListener(`pointerdown`,t,{capture:!0}),document.removeEventListener(`pointermove`,t,{capture:!0})}},[]),(0,M.jsx)(pD,{...s,children:(0,M.jsx)(Ok,{scope:t,open:n,onOpenChange:d,content:c,onContentChange:l,children:(0,M.jsx)(Ak,{scope:t,onClose:j.useCallback(()=>d(!1),[d]),isUsingKeyboardRef:u,dir:f,modal:o,children:r})})})};Mk.displayName=bk;var Nk=`MenuAnchor`,Pk=j.forwardRef((e,t)=>{let{__scopeMenu:n,...r}=e,i=Ek(n);return(0,M.jsx)(mD,{...i,...r,ref:t})});Pk.displayName=Nk;var Fk=`MenuPortal`,[Ik,Lk]=wk(Fk,{forceMount:void 0}),Rk=e=>{let{__scopeMenu:t,forceMount:n,children:r,container:i}=e,a=kk(Fk,t);return(0,M.jsx)(Ik,{scope:t,forceMount:n,children:(0,M.jsx)(N_,{present:n||a.open,children:(0,M.jsx)(j_,{asChild:!0,container:i,children:r})})})};Rk.displayName=Fk;var zk=`MenuContent`,[Bk,Vk]=wk(zk),Hk=j.forwardRef((e,t)=>{let n=Lk(zk,e.__scopeMenu),{forceMount:r=n.forceMount,...i}=e,a=kk(zk,e.__scopeMenu),o=jk(zk,e.__scopeMenu);return(0,M.jsx)(xk.Provider,{scope:e.__scopeMenu,children:(0,M.jsx)(N_,{present:r||a.open,children:(0,M.jsx)(xk.Slot,{scope:e.__scopeMenu,children:o.modal?(0,M.jsx)(Uk,{...i,ref:t}):(0,M.jsx)(Wk,{...i,ref:t})})})})}),Uk=j.forwardRef((e,t)=>{let n=kk(zk,e.__scopeMenu),r=j.useRef(null),i=Qg(t,r);return j.useEffect(()=>{let e=r.current;if(e)return FC(e)},[]),(0,M.jsx)(Kk,{...e,ref:i,trapFocus:n.open,disableOutsidePointerEvents:n.open,disableOutsideScroll:!0,onFocusOutside:J(e.onFocusOutside,e=>e.preventDefault(),{checkForDefaultPrevented:!1}),onDismiss:()=>n.onOpenChange(!1)})}),Wk=j.forwardRef((e,t)=>{let n=kk(zk,e.__scopeMenu);return(0,M.jsx)(Kk,{...e,ref:t,trapFocus:!1,disableOutsidePointerEvents:!1,disableOutsideScroll:!1,onDismiss:()=>n.onOpenChange(!1)})}),Gk=n_(`MenuContent.ScrollLock`),Kk=j.forwardRef((e,t)=>{let{__scopeMenu:n,loop:r=!1,trapFocus:i,onOpenAutoFocus:a,onCloseAutoFocus:o,disableOutsidePointerEvents:s,onEntryFocus:c,onEscapeKeyDown:l,onPointerDownOutside:u,onFocusOutside:d,onInteractOutside:f,onDismiss:p,disableOutsideScroll:m,...h}=e,g=kk(zk,n),_=jk(zk,n),v=Ek(n),y=Dk(n),b=Sk(n),[x,S]=j.useState(null),C=j.useRef(null),w=Qg(t,C,g.onContentChange),T=j.useRef(0),E=j.useRef(``),D=j.useRef(0),O=j.useRef(null),ee=j.useRef(`right`),te=j.useRef(0),ne=m?EC:j.Fragment,re=m?{as:Gk,allowPinchZoom:!0}:void 0,ie=e=>{let t=E.current+e,n=b().filter(e=>!e.disabled),r=document.activeElement,i=n.find(e=>e.ref.current===r)?.textValue,a=AA(n.map(e=>e.textValue),t,i),o=n.find(e=>e.textValue===a)?.ref.current;(function e(t){E.current=t,window.clearTimeout(T.current),t!==``&&(T.current=window.setTimeout(()=>e(``),1e3))})(t),o&&setTimeout(()=>o.focus())};j.useEffect(()=>()=>window.clearTimeout(T.current),[]),gS();let ae=j.useCallback(e=>ee.current===O.current?.side&&MA(e,O.current?.area),[]);return(0,M.jsx)(Bk,{scope:n,searchRef:E,onItemEnter:j.useCallback(e=>{ae(e)&&e.preventDefault()},[ae]),onItemLeave:j.useCallback(e=>{ae(e)||(C.current?.focus(),S(null))},[ae]),onTriggerLeave:j.useCallback(e=>{ae(e)&&e.preventDefault()},[ae]),pointerGraceTimerRef:D,onPointerGraceIntentChange:j.useCallback(e=>{O.current=e},[]),children:(0,M.jsx)(ne,{...re,children:(0,M.jsx)(rS,{asChild:!0,trapped:i,onMountAutoFocus:J(a,e=>{e.preventDefault(),C.current?.focus({preventScroll:!0})}),onUnmountAutoFocus:o,children:(0,M.jsx)(b_,{asChild:!0,disableOutsidePointerEvents:s,onEscapeKeyDown:l,onPointerDownOutside:u,onFocusOutside:d,onInteractOutside:f,onDismiss:p,children:(0,M.jsx)(fk,{asChild:!0,...y,dir:_.dir,orientation:`vertical`,loop:r,currentTabStopId:x,onCurrentTabStopIdChange:S,onEntryFocus:J(c,e=>{_.isUsingKeyboardRef.current||e.preventDefault()}),preventScrollOnEntryFocus:!0,children:(0,M.jsx)(hD,{role:`menu`,"aria-orientation":`vertical`,"data-state":TA(g.open),"data-radix-menu-content":``,dir:_.dir,...v,...h,ref:w,style:{outline:`none`,...h.style},onKeyDown:J(h.onKeyDown,e=>{let t=e.target.closest(`[data-radix-menu-content]`)===e.currentTarget,n=e.ctrlKey||e.altKey||e.metaKey,r=e.key.length===1;t&&(e.key===`Tab`&&e.preventDefault(),!n&&r&&ie(e.key));let i=C.current;if(e.target!==i||!_k.includes(e.key))return;e.preventDefault();let a=b().filter(e=>!e.disabled).map(e=>e.ref.current);gk.includes(e.key)&&a.reverse(),OA(a)}),onBlur:J(e.onBlur,e=>{e.currentTarget.contains(e.target)||(window.clearTimeout(T.current),E.current=``)}),onPointerMove:J(e.onPointerMove,NA(e=>{let t=e.target,n=te.current!==e.clientX;e.currentTarget.contains(t)&&n&&(ee.current=e.clientX>te.current?`right`:`left`,te.current=e.clientX)}))})})})})})})});Hk.displayName=zk;var qk=`MenuGroup`,Jk=j.forwardRef((e,t)=>{let{__scopeMenu:n,...r}=e;return(0,M.jsx)(u_.div,{role:`group`,...r,ref:t})});Jk.displayName=qk;var Yk=`MenuLabel`,Xk=j.forwardRef((e,t)=>{let{__scopeMenu:n,...r}=e;return(0,M.jsx)(u_.div,{...r,ref:t})});Xk.displayName=Yk;var Zk=`MenuItem`,Qk=`menu.itemSelect`,$k=j.forwardRef((e,t)=>{let{disabled:n=!1,onSelect:r,...i}=e,a=j.useRef(null),o=jk(Zk,e.__scopeMenu),s=Vk(Zk,e.__scopeMenu),c=Qg(t,a),l=j.useRef(!1),u=()=>{let e=a.current;if(!n&&e){let t=new CustomEvent(Qk,{bubbles:!0,cancelable:!0});e.addEventListener(Qk,e=>r?.(e),{once:!0}),d_(e,t),t.defaultPrevented?l.current=!1:o.onClose()}};return(0,M.jsx)(eA,{...i,ref:c,disabled:n,onClick:J(e.onClick,u),onPointerDown:t=>{e.onPointerDown?.(t),l.current=!0},onPointerUp:J(e.onPointerUp,e=>{l.current||e.currentTarget?.click()}),onKeyDown:J(e.onKeyDown,e=>{let t=s.searchRef.current!==``;n||t&&e.key===` `||mk.includes(e.key)&&(e.currentTarget.click(),e.preventDefault())})})});$k.displayName=Zk;var eA=j.forwardRef((e,t)=>{let{__scopeMenu:n,disabled:r=!1,textValue:i,...a}=e,o=Vk(Zk,n),s=Dk(n),c=j.useRef(null),l=Qg(t,c),[u,d]=j.useState(!1),[f,p]=j.useState(``);return j.useEffect(()=>{let e=c.current;e&&p((e.textContent??``).trim())},[a.children]),(0,M.jsx)(xk.ItemSlot,{scope:n,disabled:r,textValue:i??f,children:(0,M.jsx)(pk,{asChild:!0,...s,focusable:!r,children:(0,M.jsx)(u_.div,{role:`menuitem`,"data-highlighted":u?``:void 0,"aria-disabled":r||void 0,"data-disabled":r?``:void 0,...a,ref:l,onPointerMove:J(e.onPointerMove,NA(e=>{r?o.onItemLeave(e):(o.onItemEnter(e),e.defaultPrevented||e.currentTarget.focus({preventScroll:!0}))})),onPointerLeave:J(e.onPointerLeave,NA(e=>o.onItemLeave(e))),onFocus:J(e.onFocus,()=>d(!0)),onBlur:J(e.onBlur,()=>d(!1))})})})}),tA=`MenuCheckboxItem`,nA=j.forwardRef((e,t)=>{let{checked:n=!1,onCheckedChange:r,...i}=e;return(0,M.jsx)(uA,{scope:e.__scopeMenu,checked:n,children:(0,M.jsx)($k,{role:`menuitemcheckbox`,"aria-checked":EA(n)?`mixed`:n,...i,ref:t,"data-state":DA(n),onSelect:J(i.onSelect,()=>r?.(EA(n)?!0:!n),{checkForDefaultPrevented:!1})})})});nA.displayName=tA;var rA=`MenuRadioGroup`,[iA,aA]=wk(rA,{value:void 0,onValueChange:()=>{}}),oA=j.forwardRef((e,t)=>{let{value:n,onValueChange:r,...i}=e,a=f_(r);return(0,M.jsx)(iA,{scope:e.__scopeMenu,value:n,onValueChange:a,children:(0,M.jsx)(Jk,{...i,ref:t})})});oA.displayName=rA;var sA=`MenuRadioItem`,cA=j.forwardRef((e,t)=>{let{value:n,...r}=e,i=aA(sA,e.__scopeMenu),a=n===i.value;return(0,M.jsx)(uA,{scope:e.__scopeMenu,checked:a,children:(0,M.jsx)($k,{role:`menuitemradio`,"aria-checked":a,...r,ref:t,"data-state":DA(a),onSelect:J(r.onSelect,()=>i.onValueChange?.(n),{checkForDefaultPrevented:!1})})})});cA.displayName=sA;var lA=`MenuItemIndicator`,[uA,dA]=wk(lA,{checked:!1}),fA=j.forwardRef((e,t)=>{let{__scopeMenu:n,forceMount:r,...i}=e,a=dA(lA,n);return(0,M.jsx)(N_,{present:r||EA(a.checked)||a.checked===!0,children:(0,M.jsx)(u_.span,{...i,ref:t,"data-state":DA(a.checked)})})});fA.displayName=lA;var pA=`MenuSeparator`,mA=j.forwardRef((e,t)=>{let{__scopeMenu:n,...r}=e;return(0,M.jsx)(u_.div,{role:`separator`,"aria-orientation":`horizontal`,...r,ref:t})});mA.displayName=pA;var hA=`MenuArrow`,gA=j.forwardRef((e,t)=>{let{__scopeMenu:n,...r}=e,i=Ek(n);return(0,M.jsx)(gD,{...i,...r,ref:t})});gA.displayName=hA;var _A=`MenuSub`,[vA,yA]=wk(_A),bA=e=>{let{__scopeMenu:t,children:n,open:r=!1,onOpenChange:i}=e,a=kk(_A,t),o=Ek(t),[s,c]=j.useState(null),[l,u]=j.useState(null),d=f_(i);return j.useEffect(()=>(a.open===!1&&d(!1),()=>d(!1)),[a.open,d]),(0,M.jsx)(pD,{...o,children:(0,M.jsx)(Ok,{scope:t,open:r,onOpenChange:d,content:l,onContentChange:u,children:(0,M.jsx)(vA,{scope:t,contentId:Qx(),triggerId:Qx(),trigger:s,onTriggerChange:c,children:n})})})};bA.displayName=_A;var xA=`MenuSubTrigger`,SA=j.forwardRef((e,t)=>{let n=kk(xA,e.__scopeMenu),r=jk(xA,e.__scopeMenu),i=yA(xA,e.__scopeMenu),a=Vk(xA,e.__scopeMenu),o=j.useRef(null),{pointerGraceTimerRef:s,onPointerGraceIntentChange:c}=a,l={__scopeMenu:e.__scopeMenu},u=j.useCallback(()=>{o.current&&window.clearTimeout(o.current),o.current=null},[]);return j.useEffect(()=>u,[u]),j.useEffect(()=>{let e=s.current;return()=>{window.clearTimeout(e),c(null)}},[s,c]),(0,M.jsx)(Pk,{asChild:!0,...l,children:(0,M.jsx)(eA,{id:i.triggerId,"aria-haspopup":`menu`,"aria-expanded":n.open,"aria-controls":i.contentId,"data-state":TA(n.open),...e,ref:Zg(t,i.onTriggerChange),onClick:t=>{e.onClick?.(t),!(e.disabled||t.defaultPrevented)&&(t.currentTarget.focus(),n.open||n.onOpenChange(!0))},onPointerMove:J(e.onPointerMove,NA(t=>{a.onItemEnter(t),!t.defaultPrevented&&!e.disabled&&!n.open&&!o.current&&(a.onPointerGraceIntentChange(null),o.current=window.setTimeout(()=>{n.onOpenChange(!0),u()},100))})),onPointerLeave:J(e.onPointerLeave,NA(e=>{u();let t=n.content?.getBoundingClientRect();if(t){let r=n.content?.dataset.side,i=r===`right`,o=i?-5:5,c=t[i?`left`:`right`],l=t[i?`right`:`left`];a.onPointerGraceIntentChange({area:[{x:e.clientX+o,y:e.clientY},{x:c,y:t.top},{x:l,y:t.top},{x:l,y:t.bottom},{x:c,y:t.bottom}],side:r}),window.clearTimeout(s.current),s.current=window.setTimeout(()=>a.onPointerGraceIntentChange(null),300)}else{if(a.onTriggerLeave(e),e.defaultPrevented)return;a.onPointerGraceIntentChange(null)}})),onKeyDown:J(e.onKeyDown,t=>{let i=a.searchRef.current!==``;e.disabled||i&&t.key===` `||vk[r.dir].includes(t.key)&&(n.onOpenChange(!0),n.content?.focus(),t.preventDefault())})})})});SA.displayName=xA;var CA=`MenuSubContent`,wA=j.forwardRef((e,t)=>{let n=Lk(zk,e.__scopeMenu),{forceMount:r=n.forceMount,...i}=e,a=kk(zk,e.__scopeMenu),o=jk(zk,e.__scopeMenu),s=yA(CA,e.__scopeMenu),c=j.useRef(null),l=Qg(t,c);return(0,M.jsx)(xk.Provider,{scope:e.__scopeMenu,children:(0,M.jsx)(N_,{present:r||a.open,children:(0,M.jsx)(xk.Slot,{scope:e.__scopeMenu,children:(0,M.jsx)(Kk,{id:s.contentId,"aria-labelledby":s.triggerId,...i,ref:l,align:`start`,side:o.dir===`rtl`?`left`:`right`,disableOutsidePointerEvents:!1,disableOutsideScroll:!1,trapFocus:!1,onOpenAutoFocus:e=>{o.isUsingKeyboardRef.current&&c.current?.focus(),e.preventDefault()},onCloseAutoFocus:e=>e.preventDefault(),onFocusOutside:J(e.onFocusOutside,e=>{e.target!==s.trigger&&a.onOpenChange(!1)}),onEscapeKeyDown:J(e.onEscapeKeyDown,e=>{o.onClose(),e.preventDefault()}),onKeyDown:J(e.onKeyDown,e=>{let t=e.currentTarget.contains(e.target),n=yk[o.dir].includes(e.key);t&&n&&(a.onOpenChange(!1),s.trigger?.focus(),e.preventDefault())})})})})})});wA.displayName=CA;function TA(e){return e?`open`:`closed`}function EA(e){return e===`indeterminate`}function DA(e){return EA(e)?`indeterminate`:e?`checked`:`unchecked`}function OA(e){let t=document.activeElement;for(let n of e)if(n===t||(n.focus(),document.activeElement!==t))return}function kA(e,t){return e.map((n,r)=>e[(t+r)%e.length])}function AA(e,t,n){let r=t.length>1&&Array.from(t).every(e=>e===t[0])?t[0]:t,i=n?e.indexOf(n):-1,a=kA(e,Math.max(i,0));r.length===1&&(a=a.filter(e=>e!==n));let o=a.find(e=>e.toLowerCase().startsWith(r.toLowerCase()));return o===n?void 0:o}function jA(e,t){let{x:n,y:r}=e,i=!1;for(let e=0,a=t.length-1;e<t.length;a=e++){let o=t[e],s=t[a],c=o.x,l=o.y,u=s.x,d=s.y;l>r!=d>r&&n<(u-c)*(r-l)/(d-l)+c&&(i=!i)}return i}function MA(e,t){return t?jA({x:e.clientX,y:e.clientY},t):!1}function NA(e){return t=>t.pointerType===`mouse`?e(t):void 0}var PA=Mk,FA=Pk,IA=Rk,LA=Hk,RA=Jk,zA=Xk,BA=$k,VA=nA,HA=oA,UA=cA,WA=fA,GA=mA,KA=gA,qA=SA,JA=wA,YA=`DropdownMenu`,[XA,ZA]=e_(YA,[Tk]),QA=Tk(),[$A,ej]=XA(YA),tj=e=>{let{__scopeDropdownMenu:t,children:n,dir:r,open:i,defaultOpen:a,onOpenChange:o,modal:s=!0}=e,c=QA(t),l=j.useRef(null),[u,d]=R_({prop:i,defaultProp:a??!1,onChange:o,caller:YA});return(0,M.jsx)($A,{scope:t,triggerId:Qx(),triggerRef:l,contentId:Qx(),open:u,onOpenChange:d,onOpenToggle:j.useCallback(()=>d(e=>!e),[d]),modal:s,children:(0,M.jsx)(PA,{...c,open:u,onOpenChange:d,dir:r,modal:s,children:n})})};tj.displayName=YA;var nj=`DropdownMenuTrigger`,rj=j.forwardRef((e,t)=>{let{__scopeDropdownMenu:n,disabled:r=!1,...i}=e,a=ej(nj,n),o=QA(n);return(0,M.jsx)(FA,{asChild:!0,...o,children:(0,M.jsx)(u_.button,{type:`button`,id:a.triggerId,"aria-haspopup":`menu`,"aria-expanded":a.open,"aria-controls":a.open?a.contentId:void 0,"data-state":a.open?`open`:`closed`,"data-disabled":r?``:void 0,disabled:r,...i,ref:Zg(t,a.triggerRef),onPointerDown:J(e.onPointerDown,e=>{!r&&e.button===0&&e.ctrlKey===!1&&(a.onOpenToggle(),a.open||e.preventDefault())}),onKeyDown:J(e.onKeyDown,e=>{r||([`Enter`,` `].includes(e.key)&&a.onOpenToggle(),e.key===`ArrowDown`&&a.onOpenChange(!0),[`Enter`,` `,`ArrowDown`].includes(e.key)&&e.preventDefault())})})})});rj.displayName=nj;var ij=`DropdownMenuPortal`,aj=e=>{let{__scopeDropdownMenu:t,...n}=e,r=QA(t);return(0,M.jsx)(IA,{...r,...n})};aj.displayName=ij;var oj=`DropdownMenuContent`,sj=j.forwardRef((e,t)=>{let{__scopeDropdownMenu:n,...r}=e,i=ej(oj,n),a=QA(n),o=j.useRef(!1);return(0,M.jsx)(LA,{id:i.contentId,"aria-labelledby":i.triggerId,...a,...r,ref:t,onCloseAutoFocus:J(e.onCloseAutoFocus,e=>{o.current||i.triggerRef.current?.focus(),o.current=!1,e.preventDefault()}),onInteractOutside:J(e.onInteractOutside,e=>{let t=e.detail.originalEvent,n=t.button===0&&t.ctrlKey===!0,r=t.button===2||n;(!i.modal||r)&&(o.current=!0)}),style:{...e.style,"--radix-dropdown-menu-content-transform-origin":`var(--radix-popper-transform-origin)`,"--radix-dropdown-menu-content-available-width":`var(--radix-popper-available-width)`,"--radix-dropdown-menu-content-available-height":`var(--radix-popper-available-height)`,"--radix-dropdown-menu-trigger-width":`var(--radix-popper-anchor-width)`,"--radix-dropdown-menu-trigger-height":`var(--radix-popper-anchor-height)`}})});sj.displayName=oj;var cj=`DropdownMenuGroup`,lj=j.forwardRef((e,t)=>{let{__scopeDropdownMenu:n,...r}=e,i=QA(n);return(0,M.jsx)(RA,{...i,...r,ref:t})});lj.displayName=cj;var uj=`DropdownMenuLabel`,dj=j.forwardRef((e,t)=>{let{__scopeDropdownMenu:n,...r}=e,i=QA(n);return(0,M.jsx)(zA,{...i,...r,ref:t})});dj.displayName=uj;var fj=`DropdownMenuItem`,pj=j.forwardRef((e,t)=>{let{__scopeDropdownMenu:n,...r}=e,i=QA(n);return(0,M.jsx)(BA,{...i,...r,ref:t})});pj.displayName=fj;var mj=`DropdownMenuCheckboxItem`,hj=j.forwardRef((e,t)=>{let{__scopeDropdownMenu:n,...r}=e,i=QA(n);return(0,M.jsx)(VA,{...i,...r,ref:t})});hj.displayName=mj;var gj=`DropdownMenuRadioGroup`,_j=j.forwardRef((e,t)=>{let{__scopeDropdownMenu:n,...r}=e,i=QA(n);return(0,M.jsx)(HA,{...i,...r,ref:t})});_j.displayName=gj;var vj=`DropdownMenuRadioItem`,yj=j.forwardRef((e,t)=>{let{__scopeDropdownMenu:n,...r}=e,i=QA(n);return(0,M.jsx)(UA,{...i,...r,ref:t})});yj.displayName=vj;var bj=`DropdownMenuItemIndicator`,xj=j.forwardRef((e,t)=>{let{__scopeDropdownMenu:n,...r}=e,i=QA(n);return(0,M.jsx)(WA,{...i,...r,ref:t})});xj.displayName=bj;var Sj=`DropdownMenuSeparator`,Cj=j.forwardRef((e,t)=>{let{__scopeDropdownMenu:n,...r}=e,i=QA(n);return(0,M.jsx)(GA,{...i,...r,ref:t})});Cj.displayName=Sj;var wj=`DropdownMenuArrow`,Tj=j.forwardRef((e,t)=>{let{__scopeDropdownMenu:n,...r}=e,i=QA(n);return(0,M.jsx)(KA,{...i,...r,ref:t})});Tj.displayName=wj;var Ej=`DropdownMenuSubTrigger`,Dj=j.forwardRef((e,t)=>{let{__scopeDropdownMenu:n,...r}=e,i=QA(n);return(0,M.jsx)(qA,{...i,...r,ref:t})});Dj.displayName=Ej;var Oj=`DropdownMenuSubContent`,kj=j.forwardRef((e,t)=>{let{__scopeDropdownMenu:n,...r}=e,i=QA(n);return(0,M.jsx)(JA,{...i,...r,ref:t,style:{...e.style,"--radix-dropdown-menu-content-transform-origin":`var(--radix-popper-transform-origin)`,"--radix-dropdown-menu-content-available-width":`var(--radix-popper-available-width)`,"--radix-dropdown-menu-content-available-height":`var(--radix-popper-available-height)`,"--radix-dropdown-menu-trigger-width":`var(--radix-popper-anchor-width)`,"--radix-dropdown-menu-trigger-height":`var(--radix-popper-anchor-height)`}})});kj.displayName=Oj;var Aj=tj,jj=rj,Mj=aj,Nj=sj,Pj=dj,Fj=pj,Ij=hj,Lj=yj,Rj=xj,zj=Cj,Bj=Dj,Vj=kj,Hj=Aj,Uj=jj,Wj=j.forwardRef(({className:e,inset:t,children:n,...r},i)=>(0,M.jsxs)(Bj,{ref:i,className:Z(`flex cursor-default gap-2 select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none focus:bg-accent data-[state=open]:bg-accent [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0`,t&&`pl-8`,e),...r,children:[n,(0,M.jsx)(ay,{className:`ml-auto`})]}));Wj.displayName=Bj.displayName;var Gj=j.forwardRef(({className:e,...t},n)=>(0,M.jsx)(Vj,{ref:n,className:Z(`z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-lg data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2`,e),...t}));Gj.displayName=Vj.displayName;var Kj=j.forwardRef(({className:e,sideOffset:t=4,...n},r)=>(0,M.jsx)(Mj,{children:(0,M.jsx)(Nj,{ref:r,sideOffset:t,className:Z(`z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-md data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2`,e),...n})}));Kj.displayName=Nj.displayName;var qj=j.forwardRef(({className:e,inset:t,...n},r)=>(0,M.jsx)(Fj,{ref:r,className:Z(`relative flex cursor-default select-none items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0`,t&&`pl-8`,e),...n}));qj.displayName=Fj.displayName;var Jj=j.forwardRef(({className:e,children:t,checked:n,...r},i)=>(0,M.jsxs)(Ij,{ref:i,className:Z(`relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50`,e),checked:n,...r,children:[(0,M.jsx)(`span`,{className:`absolute left-2 flex h-3.5 w-3.5 items-center justify-center`,children:(0,M.jsx)(Rj,{children:(0,M.jsx)(ry,{className:`h-4 w-4`})})}),t]}));Jj.displayName=Ij.displayName;var Yj=j.forwardRef(({className:e,children:t,...n},r)=>(0,M.jsxs)(Lj,{ref:r,className:Z(`relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50`,e),...n,children:[(0,M.jsx)(`span`,{className:`absolute left-2 flex h-3.5 w-3.5 items-center justify-center`,children:(0,M.jsx)(Rj,{children:(0,M.jsx)(dy,{className:`h-2 w-2 fill-current`})})}),t]}));Yj.displayName=Lj.displayName;var Xj=j.forwardRef(({className:e,inset:t,...n},r)=>(0,M.jsx)(Pj,{ref:r,className:Z(`px-2 py-1.5 text-sm font-semibold`,t&&`pl-8`,e),...n}));Xj.displayName=Pj.displayName;var Zj=j.forwardRef(({className:e,...t},n)=>(0,M.jsx)(zj,{ref:n,className:Z(`-mx-1 my-1 h-px bg-muted`,e),...t}));Zj.displayName=zj.displayName;var Qj=({className:e,...t})=>(0,M.jsx)(`span`,{className:Z(`ml-auto text-xs tracking-widest opacity-60`,e),...t});Qj.displayName=`DropdownMenuShortcut`;var $j=`modulepreload`,eM=function(e){return`/_account/`+e},tM={},nM=function(e,t,n){let r=Promise.resolve();if(t&&t.length>0){let e=document.getElementsByTagName(`link`),i=document.querySelector(`meta[property=csp-nonce]`),a=i?.nonce||i?.getAttribute(`nonce`);function o(e){return Promise.all(e.map(e=>Promise.resolve(e).then(e=>({status:`fulfilled`,value:e}),e=>({status:`rejected`,reason:e}))))}r=o(t.map(t=>{if(t=eM(t,n),t in tM)return;tM[t]=!0;let r=t.endsWith(`.css`),i=r?`[rel="stylesheet"]`:``;if(n)for(let n=e.length-1;n>=0;n--){let i=e[n];if(i.href===t&&(!r||i.rel===`stylesheet`))return}else if(document.querySelector(`link[href="${t}"]${i}`))return;let o=document.createElement(`link`);if(o.rel=r?`stylesheet`:$j,r||(o.as=`script`),o.crossOrigin=``,o.href=t,a&&o.setAttribute(`nonce`,a),document.head.appendChild(o),r)return new Promise((e,n)=>{o.addEventListener(`load`,e),o.addEventListener(`error`,()=>n(Error(`Unable to preload CSS for ${t}`)))})}))}function i(e){let t=new Event(`vite:preloadError`,{cancelable:!0});if(t.payload=e,window.dispatchEvent(t),!t.defaultPrevented)throw e}return r.then(t=>{for(let e of t||[])e.status===`rejected`&&i(e.reason);return e().catch(i)})},rM=[`en`,`zh-CN`],iM={en:()=>nM(()=>import(`./en-CuO7DiqH.js`),[]),"zh-CN":()=>nM(()=>import(`./zh-CN-DhlJn7Oy.js`),[])};function aM(e){return rM.includes(e)?e:e.toLowerCase().startsWith(`zh`)?`zh-CN`:`en`}async function oM(e){let t=aM(e);try{return(await iM[t]()).default}catch(t){return console.warn(`[account/i18n] Failed to load language pack '${e}':`,t),{}}}var sM={en:`English`,"zh-CN":`中文`};function cM(){let{t:e,language:t,changeLanguage:n}=vt();async function r(e){await n(e);try{localStorage.setItem(`account.lang`,e)}catch{}}return(0,M.jsxs)(Hj,{children:[(0,M.jsx)(Uj,{asChild:!0,children:(0,M.jsxs)(Q,{variant:`ghost`,size:`icon`,className:`h-8 w-8`,"aria-label":e(`common.language`),children:[(0,M.jsx)(by,{className:`h-4 w-4`}),(0,M.jsx)(`span`,{className:`sr-only`,children:e(`common.language`)})]})}),(0,M.jsx)(Kj,{align:`end`,children:rM.map(e=>(0,M.jsx)(qj,{onSelect:()=>void r(e),className:e===t?`font-medium`:void 0,children:sM[e]},e))})]})}function lM(e){let t=document.documentElement;e===`dark`?t.classList.add(`dark`):t.classList.remove(`dark`)}function uM(){let{t:e}=vt(),[,t]=(0,j.useState)(`light`);(0,j.useEffect)(()=>{let e=localStorage.getItem(`theme`);e?(t(e),lM(e===`system`?window.matchMedia(`(prefers-color-scheme: dark)`).matches?`dark`:`light`:e)):(t(`system`),lM(window.matchMedia(`(prefers-color-scheme: dark)`).matches?`dark`:`light`))},[]);function n(e){t(e),localStorage.setItem(`theme`,e),lM(e===`system`?window.matchMedia(`(prefers-color-scheme: dark)`).matches?`dark`:`light`:e)}return(0,M.jsxs)(Hj,{children:[(0,M.jsx)(Uj,{asChild:!0,children:(0,M.jsxs)(Q,{variant:`ghost`,size:`icon`,className:`h-8 w-8`,children:[(0,M.jsx)(Fy,{className:`h-4 w-4 rotate-0 scale-100 transition-all dark:-rotate-90 dark:scale-0`}),(0,M.jsx)(Ey,{className:`absolute h-4 w-4 rotate-90 scale-0 transition-all dark:rotate-0 dark:scale-100`}),(0,M.jsx)(`span`,{className:`sr-only`,children:e(`common.toggleTheme`)})]})}),(0,M.jsxs)(Kj,{align:`end`,children:[(0,M.jsxs)(qj,{onClick:()=>n(`light`),children:[(0,M.jsx)(Fy,{className:`mr-2 h-4 w-4`}),e(`common.light`)]}),(0,M.jsxs)(qj,{onClick:()=>n(`dark`),children:[(0,M.jsx)(Ey,{className:`mr-2 h-4 w-4`}),e(`common.dark`)]}),(0,M.jsx)(qj,{onClick:()=>n(`system`),children:e(`common.system`)})]})]})}function dM(e,t=[]){let n=[];function r(t,r){let i=j.createContext(r);i.displayName=t+`Context`;let a=n.length;n=[...n,r];let o=t=>{let{scope:n,children:r,...o}=t,s=n?.[e]?.[a]||i,c=j.useMemo(()=>o,Object.values(o));return(0,M.jsx)(s.Provider,{value:c,children:r})};o.displayName=t+`Provider`;function s(n,o){let s=o?.[e]?.[a]||i,c=j.useContext(s);if(c)return c;if(r!==void 0)return r;throw Error(`\`${n}\` must be used within \`${t}\``)}return[o,s]}let i=()=>{let t=n.map(e=>j.createContext(e));return function(n){let r=n?.[e]||t;return j.useMemo(()=>({[`__scope${e}`]:{...n,[e]:r}}),[n,r])}};return i.scopeName=e,[r,fM(i,...t)]}function fM(...e){let t=e[0];if(e.length===1)return t;let n=()=>{let n=e.map(e=>({useScope:e(),scopeName:e.scopeName}));return function(e){let r=n.reduce((t,{useScope:n,scopeName:r})=>{let i=n(e)[`__scope${r}`];return{...t,...i}},{});return j.useMemo(()=>({[`__scope${t.scopeName}`]:r}),[r])}};return n.scopeName=t.scopeName,n}function pM(){return(0,ot.useSyncExternalStore)(mM,()=>!0,()=>!1)}function mM(){return()=>{}}var hM=`Avatar`,[gM,_M]=dM(hM),[vM,yM]=gM(hM),bM=j.forwardRef((e,t)=>{let{__scopeAvatar:n,...r}=e,[i,a]=j.useState(`idle`);return(0,M.jsx)(vM,{scope:n,imageLoadingStatus:i,onImageLoadingStatusChange:a,children:(0,M.jsx)(Hx.span,{...r,ref:t})})});bM.displayName=hM;var xM=`AvatarImage`,SM=j.forwardRef((e,t)=>{let{__scopeAvatar:n,src:r,onLoadingStatusChange:i=()=>{},...a}=e,o=yM(xM,n),s=EM(r,a),c=f_(e=>{i(e),o.onImageLoadingStatusChange(e)});return k_(()=>{s!==`idle`&&c(s)},[s,c]),s===`loaded`?(0,M.jsx)(Hx.img,{...a,ref:t,src:r}):null});SM.displayName=xM;var CM=`AvatarFallback`,wM=j.forwardRef((e,t)=>{let{__scopeAvatar:n,delayMs:r,...i}=e,a=yM(CM,n),[o,s]=j.useState(r===void 0);return j.useEffect(()=>{if(r!==void 0){let e=window.setTimeout(()=>s(!0),r);return()=>window.clearTimeout(e)}},[r]),o&&a.imageLoadingStatus!==`loaded`?(0,M.jsx)(Hx.span,{...i,ref:t}):null});wM.displayName=CM;function TM(e,t){return e?t?(e.src!==t&&(e.src=t),e.complete&&e.naturalWidth>0?`loaded`:`loading`):`error`:`idle`}function EM(e,{referrerPolicy:t,crossOrigin:n}){let r=pM(),i=j.useRef(null),a=r?(i.current||=new window.Image,i.current):null,[o,s]=j.useState(()=>TM(a,e));return k_(()=>{s(TM(a,e))},[a,e]),k_(()=>{let e=e=>()=>{s(e)};if(!a)return;let r=e(`loaded`),i=e(`error`);return a.addEventListener(`load`,r),a.addEventListener(`error`,i),t&&(a.referrerPolicy=t),typeof n==`string`&&(a.crossOrigin=n),()=>{a.removeEventListener(`load`,r),a.removeEventListener(`error`,i)}},[a,n,t]),o}var DM=bM,OM=SM,kM=wM,AM=j.forwardRef(({className:e,...t},n)=>(0,M.jsx)(DM,{ref:n,className:Z(`relative flex h-10 w-10 shrink-0 overflow-hidden rounded-full`,e),...t}));AM.displayName=DM.displayName;var jM=j.forwardRef(({className:e,...t},n)=>(0,M.jsx)(OM,{ref:n,className:Z(`aspect-square h-full w-full`,e),...t}));jM.displayName=OM.displayName;var MM=j.forwardRef(({className:e,...t},n)=>(0,M.jsx)(kM,{ref:n,className:Z(`flex h-full w-full items-center justify-center rounded-full bg-muted`,e),...t}));MM.displayName=kM.displayName;var NM=(0,j.createContext)(null),PM=`auth-session-token`,FM=`auth-active-organization-id`;function IM(e){if(!(typeof window>`u`))try{e?.token?localStorage.setItem(PM,e.token):localStorage.removeItem(PM),e?.activeOrganizationId?localStorage.setItem(FM,e.activeOrganizationId):localStorage.removeItem(FM)}catch{}}function LM(e){if(!e)return{user:null,session:null};let t=e.data===void 0?e:e.data;return t?{user:t.user??null,session:t.session??null}:{user:null,session:null}}function RM({children:e}){let t=Rg(),[n,r]=(0,j.useState)(null),[i,a]=(0,j.useState)(null),[o,s]=(0,j.useState)(!0),[c,l]=(0,j.useState)(null),[u,d]=(0,j.useState)([]),[f,p]=(0,j.useState)(!1),[m,h]=(0,j.useState)(!1),g=(0,j.useCallback)(async()=>{if(t?.organizations){p(!0);try{d((await t.organizations.list())?.organizations??[])}catch{d([])}finally{p(!1),h(!0)}}},[t]),_=(0,j.useCallback)(async()=>{if(t?.auth){s(!0),l(null);try{let{user:e,session:n}=LM(await t.auth.me());r(e),a(n),IM(e?n:null)}catch(e){l(e),r(null),a(null),IM(null)}finally{s(!1)}}},[t]);(0,j.useEffect)(()=>{_()},[_]),(0,j.useEffect)(()=>{n?g():(d([]),h(!1))},[n,g]);let v=(0,j.useCallback)(async()=>{if(t?.auth)try{await t.auth.logout()}finally{r(null),a(null),d([]),h(!1),IM(null)}},[t]),y=(0,j.useCallback)(async e=>{if(t?.organizations){await t.organizations.setActive(e),await _();try{localStorage.setItem(FM,e)}catch{}}},[t,_]),b=(0,j.useMemo)(()=>({user:n,session:i,loading:o,error:c,refresh:_,logout:v,setActiveOrganization:y,organizations:u,organizationsLoading:f,organizationsFetched:m,reloadOrganizations:g}),[n,i,o,c,_,v,y,u,f,m,g]);return(0,j.createElement)(NM.Provider,{value:b},e)}function zM(){let e=(0,j.useContext)(NM);if(!e)throw Error(`useSession must be used inside <SessionProvider>.`);return e}function BM(){let{organizations:e,organizationsLoading:t,reloadOrganizations:n}=zM();return{organizations:e,loading:t,error:null,reload:n}}function VM(){let e=Rg(),[t,n]=(0,j.useState)(!1),[r,i]=(0,j.useState)(null);return{create:(0,j.useCallback)(async t=>{if(!e?.organizations)throw Error(`Client not ready`);n(!0),i(null);try{return await e.organizations.create(t)}catch(e){throw i(e),e}finally{n(!1)}},[e]),creating:t,error:r}}function HM(){let e=Rg(),{reloadOrganizations:t,refresh:n}=zM(),[r,i]=(0,j.useState)(!1),[a,o]=(0,j.useState)(null);return{update:(0,j.useCallback)(async(r,a)=>{if(!e?.organizations?.update)throw Error(`Client not ready`);i(!0),o(null);try{let i=await e.organizations.update(r,a);return await t(),await n(),i}catch(e){throw o(e),e}finally{i(!1)}},[e,t,n]),updating:r,error:a}}function UM(){let e=Rg(),{reloadOrganizations:t,refresh:n}=zM(),[r,i]=(0,j.useState)(!1),[a,o]=(0,j.useState)(null);return{remove:(0,j.useCallback)(async r=>{if(!e?.organizations?.delete)throw Error(`Client not ready`);i(!0),o(null);try{let i=await e.organizations.delete(r);return await t(),await n(),i}catch(e){throw o(e),e}finally{i(!1)}},[e,t,n]),deleting:r,error:a}}function WM(e,t){let n=(e||t||`?`).trim(),r=n.split(/\s+/);return r.length>=2?(r[0][0]+r[1][0]).toUpperCase():n.slice(0,2).toUpperCase()}function GM(){let{t:e}=vt(),t=N(),{user:n,loading:r,logout:i}=zM();return r&&!n?(0,M.jsx)(`div`,{className:`h-8 w-8 animate-pulse rounded-full bg-muted`,"aria-hidden":!0}):n?(0,M.jsxs)(Hj,{children:[(0,M.jsx)(Uj,{asChild:!0,children:(0,M.jsx)(Q,{variant:`ghost`,size:`icon`,className:`h-8 w-8 rounded-full`,children:(0,M.jsxs)(AM,{className:`h-7 w-7`,children:[n.image?(0,M.jsx)(jM,{src:n.image,alt:n.name??n.email??e(`userMenu.user`)}):null,(0,M.jsx)(MM,{className:`text-[11px]`,children:WM(n.name,n.email)})]})})}),(0,M.jsxs)(Kj,{align:`end`,className:`w-64`,children:[(0,M.jsx)(Xj,{children:(0,M.jsxs)(`div`,{className:`flex flex-col gap-0.5`,children:[(0,M.jsx)(`span`,{className:`truncate text-sm font-medium`,children:n.name||n.email}),n.email&&(0,M.jsx)(`span`,{className:`truncate text-[11px] text-muted-foreground`,children:n.email})]})}),(0,M.jsx)(Zj,{}),(0,M.jsxs)(qj,{onSelect:()=>t({to:`/account`}),children:[(0,M.jsx)(Hy,{className:`mr-2 h-3.5 w-3.5`}),e(`userMenu.account`)]}),(0,M.jsxs)(qj,{onSelect:()=>t({to:`/organizations`}),children:[(0,M.jsx)(ny,{className:`mr-2 h-3.5 w-3.5`}),e(`userMenu.organizations`)]}),(0,M.jsx)(Zj,{}),(0,M.jsxs)(qj,{onSelect:async()=>{try{await i()}finally{t({to:`/login`,replace:!0})}},children:[(0,M.jsx)(Cy,{className:`mr-2 h-3.5 w-3.5`}),e(`userMenu.signOut`)]})]})]}):(0,M.jsx)(Q,{variant:`outline`,size:`sm`,className:`h-8`,onClick:()=>t({to:`/login`}),children:e(`userMenu.signIn`)})}function KM(){let{t:e}=vt(),t=N(),n=Ea(),{organizations:r,loading:i,reload:a}=BM(),{session:o,setActiveOrganization:s}=zM(),[c,l]=(0,j.useState)(!1),[u,d]=(0,j.useState)(!1),f=o?.activeOrganizationId??void 0,p=(0,j.useMemo)(()=>r.find(e=>e.id===f)??null,[r,f]),m=async r=>{if(l(!1),r===f){t({to:`/organizations/$orgId/general`,params:{orgId:r}});return}d(!0);try{await s(r),await a(),q({title:e(`organizations.general.switched`)});let i=n.pathname.match(/^\/organizations\/[^/]+\/(general|members)\/?$/);t({to:(i?i[1]:`general`)===`members`?`/organizations/$orgId/members`:`/organizations/$orgId/general`,params:{orgId:r}})}catch(t){q({title:e(`organizations.switchFailed`),description:t.message,variant:`destructive`})}finally{d(!1)}};return(0,M.jsxs)(Hj,{open:c,onOpenChange:l,children:[(0,M.jsx)(Uj,{asChild:!0,children:(0,M.jsxs)(Q,{variant:`ghost`,size:`sm`,className:`h-8 gap-2 px-2 text-sm font-medium`,disabled:u,children:[p?(0,M.jsx)(`span`,{className:`max-w-[160px] truncate`,children:p.name}):(0,M.jsx)(`span`,{className:`text-muted-foreground`,children:e(i?`organizations.loading`:`organizationSwitcher.select`)}),(0,M.jsx)(sy,{className:`h-3 w-3 opacity-50`})]})}),(0,M.jsxs)(Kj,{align:`start`,className:`w-[280px]`,sideOffset:4,children:[(0,M.jsx)(Xj,{className:`text-[10px] uppercase tracking-wider text-muted-foreground`,children:e(`organizations.title`)}),r.length===0&&!i&&(0,M.jsx)(`div`,{className:`px-3 py-4 text-center text-xs text-muted-foreground`,children:e(`organizations.emptyTitle`)}),r.map(e=>(0,M.jsxs)(qj,{onSelect:t=>{t.preventDefault(),m(e.id)},className:`flex items-center gap-2`,children:[(0,M.jsxs)(`div`,{className:`flex-1 min-w-0`,children:[(0,M.jsx)(`div`,{className:`truncate font-medium`,children:e.name}),e.slug&&(0,M.jsx)(`code`,{className:`text-[11px] text-muted-foreground font-mono`,children:e.slug})]}),e.id===f&&(0,M.jsx)(ry,{className:`h-3.5 w-3.5 text-primary`})]},e.id)),(0,M.jsx)(Zj,{}),(0,M.jsxs)(qj,{onSelect:e=>{e.preventDefault(),l(!1),t({to:`/organizations/new`})},className:`gap-2 text-sm`,children:[(0,M.jsx)(Oy,{className:`h-3.5 w-3.5`}),e(`organizationSwitcher.new`)]}),(0,M.jsx)(qj,{onSelect:e=>{e.preventDefault(),l(!1),t({to:`/organizations`})},className:`gap-2 text-sm text-muted-foreground`,children:e(`organizationSwitcher.manage`)})]})]})}function qM({label:e}){return(0,M.jsx)(ta,{to:`/account`,className:`flex h-8 w-8 items-center justify-center rounded-md bg-brand-gradient text-primary-foreground shadow-sm shadow-primary/30 ring-1 ring-white/15 transition-transform hover:scale-105`,"aria-label":e,children:(0,M.jsx)(ly,{className:`h-4 w-4`})})}function JM(){return(0,M.jsx)(ay,{"aria-hidden":!0,className:`size-3.5 shrink-0 text-muted-foreground/50`})}function YM(){let{t:e}=vt(),t=Ea(),n=zi({strict:!1}),r=(0,j.useMemo)(()=>{let r=t.pathname,i=t=>e(`topBar.breadcrumb.${t}`);if(r.startsWith(`/account`)){let e=[{label:i(`account`)}];return r===`/account/profile`?e.push({label:i(`profile`)}):r===`/account/security`?e.push({label:i(`security`)}):r===`/account/sessions`?e.push({label:i(`sessions`)}):r===`/account/two-factor`?e.push({label:i(`twoFactor`)}):r===`/account/oauth-applications`?e.push({label:i(`oauthApps`)}):r===`/account/oauth-applications/new`?e.push({label:i(`oauthApps`)},{label:i(`new`)}):r.startsWith(`/account/oauth-applications/`)&&e.push({label:i(`oauthApps`)}),e}if(r===`/organizations/new`)return[{label:i(`organizations`)},{label:i(`new`)}];if(n.orgId){let e=r.endsWith(`/general`)?i(`general`):r.endsWith(`/members`)?i(`members`):i(`settings`);return[{label:i(`organizations`)},{label:e}]}return r===`/organizations`||r.startsWith(`/organizations/`)?[{label:i(`organizations`)}]:r.startsWith(`/accept-invitation/`)?[{label:i(`acceptInvitation`)}]:r.startsWith(`/auth/device`)?[{label:i(`deviceAuthorization`)}]:[{label:i(`account`)}]},[t.pathname,n.orgId,e]);return(0,M.jsxs)(`header`,{className:`sticky top-0 z-30 flex h-14 shrink-0 items-center justify-between gap-2 border-b bg-background/80 px-2 backdrop-blur supports-[backdrop-filter]:bg-background/70 sm:px-4`,children:[(0,M.jsxs)(`div`,{className:`flex min-w-0 items-center gap-1.5 sm:gap-2.5`,children:[(0,M.jsx)(`div`,{className:`sm:hidden`,children:(0,M.jsx)(hO,{className:`h-9 w-9`})}),(0,M.jsx)(qM,{label:e(`topBar.accountHome`)}),(0,M.jsx)(`span`,{className:`hidden text-sm font-semibold tracking-tight sm:inline`,children:e(`topBar.brand`)}),(0,M.jsxs)(`div`,{className:`hidden items-center gap-1.5 sm:flex`,children:[(0,M.jsx)(Yx,{orientation:`vertical`,className:`mx-1 h-4`}),(0,M.jsx)(KM,{}),(0,M.jsx)(JM,{}),(0,M.jsx)(RO,{children:(0,M.jsx)(zO,{children:r.map((e,t)=>(0,M.jsxs)(`div`,{className:`flex items-center`,children:[t>0&&(0,M.jsx)(UO,{}),(0,M.jsx)(BO,{children:(0,M.jsx)(HO,{className:`font-medium`,children:e.label})})]},t))})})]}),(0,M.jsx)(`div`,{className:`min-w-0 flex-1 sm:hidden`,children:r.length>0&&(0,M.jsx)(`span`,{className:`truncate text-sm font-medium`,children:r[r.length-1].label})})]}),(0,M.jsxs)(`div`,{className:`flex items-center gap-1 sm:gap-2`,children:[(0,M.jsx)(`div`,{className:`hidden sm:block`,children:(0,M.jsx)(cM,{})}),(0,M.jsx)(`div`,{className:`hidden sm:block`,children:(0,M.jsx)(uM,{})}),(0,M.jsx)(GM,{})]})]})}var XM=[{to:`/account`,label:`home`,icon:_y,exact:!0},{to:`/account/profile`,label:`profile`,icon:Hy},{to:`/account/security`,label:`security`,icon:Ny},{to:`/account/sessions`,label:`sessions`,icon:Ty},{to:`/account/two-factor`,label:`twoFactor`,icon:My},{to:`/account/invitations`,label:`invitations`,icon:vy},{to:`/account/linked-accounts`,label:`linkedAccounts`,icon:Sy}],ZM=[`group/nav relative transition-all duration-150`,`before:absolute before:left-0 before:top-1/2 before:h-5 before:w-[3px] before:-translate-y-1/2 before:rounded-r-full before:bg-brand-gradient before:opacity-0 before:transition-opacity`,`data-[active=true]:before:opacity-100`,`data-[active=true]:bg-sidebar-accent/80 data-[active=true]:text-sidebar-accent-foreground`,`[&>svg]:transition-transform [&>svg]:duration-150 hover:[&>svg]:scale-110`,`data-[active=true]:[&>svg]:text-primary`].join(` `);function QM(){let{t:e}=vt(),{pathname:t}=Ea(),{organizations:n}=BM(),r=t,i=t.match(/^\/organizations\/([^/]+)(?:\/.*)?$/),a=i&&n.some(e=>e.id===i[1])?i[1]:null;return(0,M.jsxs)(mO,{collapsible:`icon`,className:`h-full`,children:[(0,M.jsxs)(SO,{children:[(0,M.jsxs)(CO,{children:[(0,M.jsx)(wO,{children:e(`sidebar.groups.account`)}),(0,M.jsx)(EO,{children:(0,M.jsx)(DO,{children:XM.map(t=>{let n=t.icon;return(0,M.jsx)(OO,{children:(0,M.jsx)(kO,{asChild:!0,isActive:t.exact?r===t.to||r===`${t.to}/`:r===t.to||r.startsWith(`${t.to}/`),tooltip:e(`sidebar.items.${t.label}`),className:ZM,children:(0,M.jsxs)(ta,{to:t.to,children:[(0,M.jsx)(n,{className:`size-4`}),(0,M.jsx)(`span`,{children:e(`sidebar.items.${t.label}`)})]})})},t.to)})})})]}),(0,M.jsx)(xO,{}),(0,M.jsxs)(CO,{children:[(0,M.jsx)(wO,{children:e(`sidebar.groups.organization`)}),(0,M.jsx)(EO,{children:(0,M.jsxs)(DO,{children:[(0,M.jsx)(OO,{children:(0,M.jsx)(kO,{asChild:!0,isActive:t===`/organizations`,tooltip:e(`sidebar.items.overview`),className:ZM,children:(0,M.jsxs)(ta,{to:`/organizations`,children:[(0,M.jsx)(ny,{className:`size-4`}),(0,M.jsx)(`span`,{children:e(`sidebar.items.overview`)})]})})}),a&&(0,M.jsxs)(M.Fragment,{children:[(0,M.jsx)(OO,{children:(0,M.jsx)(kO,{asChild:!0,isActive:t===`/organizations/${a}/general`,tooltip:e(`sidebar.items.general`),className:ZM,children:(0,M.jsxs)(ta,{to:`/organizations/$orgId/general`,params:{orgId:a},children:[(0,M.jsx)(jy,{className:`size-4`}),(0,M.jsx)(`span`,{children:e(`sidebar.items.general`)})]})})}),(0,M.jsx)(OO,{children:(0,M.jsx)(kO,{asChild:!0,isActive:t===`/organizations/${a}/members`,tooltip:e(`sidebar.items.members`),className:ZM,children:(0,M.jsxs)(ta,{to:`/organizations/$orgId/members`,params:{orgId:a},children:[(0,M.jsx)(Wy,{className:`size-4`}),(0,M.jsx)(`span`,{children:e(`sidebar.items.members`)})]})})}),(0,M.jsx)(OO,{children:(0,M.jsx)(kO,{asChild:!0,isActive:t===`/organizations/${a}/teams`,tooltip:e(`sidebar.items.teams`),className:ZM,children:(0,M.jsxs)(ta,{to:`/organizations/$orgId/teams`,params:{orgId:a},children:[(0,M.jsx)(Uy,{className:`size-4`}),(0,M.jsx)(`span`,{children:e(`sidebar.items.teams`)})]})})})]})]})})]}),(0,M.jsx)(xO,{}),(0,M.jsxs)(CO,{children:[(0,M.jsx)(wO,{children:e(`sidebar.groups.developer`)}),(0,M.jsx)(EO,{children:(0,M.jsx)(DO,{children:(0,M.jsx)(OO,{children:(0,M.jsx)(kO,{asChild:!0,isActive:t.startsWith(`/account/oauth-applications`),tooltip:e(`sidebar.items.oauthApps`),className:ZM,children:(0,M.jsxs)(ta,{to:`/account/oauth-applications`,children:[(0,M.jsx)(yy,{className:`size-4`}),(0,M.jsx)(`span`,{children:e(`sidebar.items.oauthApps`)})]})})})})})]})]}),(0,M.jsx)(bO,{children:(0,M.jsx)(DO,{children:(0,M.jsx)(OO,{children:(0,M.jsx)($M,{})})})})]})}function $M(){let{t:e}=vt(),{state:t,toggleSidebar:n}=fO(),r=e(t===`collapsed`?`sidebar.expand`:`sidebar.collapse`);return(0,M.jsx)(kO,{onClick:n,tooltip:r,"aria-label":r,children:(0,M.jsx)(Dy,{className:`size-4`})})}function eN(){return typeof window<`u`&&window.location.pathname.startsWith(`/_account`)?window.location.origin:`http://localhost:3000`}var tN=new Set([`/login`,`/register`,`/forgot-password`,`/reset-password`,`/verify-email`,`/auth/device`,`/setup`]);function nN(e){return tN.has(e)||e.startsWith(`/accept-invitation/`)}function rN(){let[e,t]=(0,j.useState)(null);return(0,j.useEffect)(()=>{let e=!1;return(async()=>{try{let n=await fetch(`/api/v1/auth/bootstrap-status`);if(!n.ok){e||t(!0);return}let r=await n.json();e||t(r.hasOwner!==!1)}catch{e||t(!0)}})(),()=>{e=!0}},[]),e}function iN({children:e}){let{user:t,loading:n}=zM(),r=N(),i=Ea(),a=nN(i.pathname),o=i.pathname.startsWith(`/oauth/`),s=rN(),c=i.pathname===`/setup`;return(0,j.useEffect)(()=>{s===!1&&!c&&!t&&r({to:`/setup`,replace:!0})},[s,c,t,r]),(0,j.useEffect)(()=>{n||s!==!1&&!t&&!a&&r({to:`/login`,search:{redirect:i.pathname+i.searchStr},replace:!0})},[t,n,a,r,i.pathname,i.searchStr,s]),s===null||n&&!t?(0,M.jsx)(`div`,{className:`flex min-h-screen w-full flex-1 items-center justify-center bg-background`,children:(0,M.jsx)(`div`,{className:`h-8 w-8 animate-spin rounded-full border-4 border-muted border-t-primary`})}):s===!1&&!c||!t&&!a?null:a||o?(0,M.jsx)(`div`,{className:`flex min-h-screen w-full`,children:e}):(0,M.jsxs)(pO,{className:`flex h-svh w-full flex-col`,children:[(0,M.jsx)(YM,{}),(0,M.jsxs)(`div`,{className:`flex min-h-0 flex-1 w-full`,children:[(0,M.jsx)(QM,{}),(0,M.jsx)(_O,{className:`flex min-w-0 flex-1 flex-col overflow-hidden`,children:(0,M.jsx)(`main`,{className:`flex min-h-0 flex-1 flex-col overflow-auto bg-background`,children:e})})]})]})}function aN(){let e=eN();return(0,M.jsx)(Lg,{client:(0,j.useMemo)(()=>new Pg({baseUrl:e}),[e]),children:(0,M.jsxs)(RM,{children:[(0,M.jsx)(iN,{children:(0,M.jsx)(_a,{})}),(0,M.jsx)(Ex,{})]})})}var oN=oa({component:aN}),$=j.forwardRef(({className:e,...t},n)=>(0,M.jsx)(`div`,{ref:n,className:Z(`rounded-lg border bg-card text-card-foreground shadow-sm`,e),...t}));$.displayName=`Card`;var sN=j.forwardRef(({className:e,...t},n)=>(0,M.jsx)(`div`,{ref:n,className:Z(`flex flex-col space-y-1.5 p-6`,e),...t}));sN.displayName=`CardHeader`;var cN=j.forwardRef(({className:e,...t},n)=>(0,M.jsx)(`h3`,{ref:n,className:Z(`text-2xl font-semibold leading-none tracking-tight`,e),...t}));cN.displayName=`CardTitle`;var lN=j.forwardRef(({className:e,...t},n)=>(0,M.jsx)(`p`,{ref:n,className:Z(`text-sm text-muted-foreground`,e),...t}));lN.displayName=`CardDescription`;var uN=j.forwardRef(({className:e,...t},n)=>(0,M.jsx)(`div`,{ref:n,className:Z(`p-6 pt-0`,e),...t}));uN.displayName=`CardContent`;var dN=j.forwardRef(({className:e,...t},n)=>(0,M.jsx)(`div`,{ref:n,className:Z(`flex items-center p-6 pt-0`,e),...t}));dN.displayName=`CardFooter`;function fN({children:e,headline:t,subline:n,formWidth:r=`sm`}){let{t:i}=vt();return(0,M.jsxs)(`div`,{className:`relative grid min-h-svh w-full lg:grid-cols-2`,children:[(0,M.jsx)(`div`,{className:`flex flex-col items-center justify-center gap-6 bg-background p-6 md:p-10`,children:(0,M.jsxs)(`div`,{className:Z(`flex w-full flex-col gap-6`,r===`md`?`max-w-md`:`max-w-sm`),children:[(0,M.jsxs)(`a`,{href:`#`,className:`flex items-center gap-2 self-center font-semibold tracking-tight`,children:[(0,M.jsx)(`div`,{className:`flex size-7 items-center justify-center rounded-md bg-brand-gradient text-primary-foreground shadow-sm shadow-primary/30`,children:(0,M.jsx)(hy,{className:`size-4`})}),(0,M.jsx)(`span`,{children:`ObjectStack`})]}),e]})}),(0,M.jsxs)(`aside`,{"aria-hidden":!0,className:`relative hidden overflow-hidden bg-brand-mesh text-white lg:flex lg:flex-col lg:justify-between lg:p-12`,children:[(0,M.jsx)(`div`,{className:`pointer-events-none absolute inset-0 opacity-[0.12]`,style:{backgroundImage:`linear-gradient(rgba(255,255,255,0.6) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,0.6) 1px, transparent 1px)`,backgroundSize:`48px 48px`,maskImage:`radial-gradient(ellipse at center, black 40%, transparent 75%)`}}),(0,M.jsx)(`div`,{className:`pointer-events-none absolute -left-24 top-1/3 size-[28rem] rounded-full bg-white/15 blur-3xl`}),(0,M.jsx)(`div`,{className:`pointer-events-none absolute -right-20 -bottom-20 size-[24rem] rounded-full bg-white/10 blur-3xl`}),(0,M.jsxs)(`div`,{className:`relative flex items-center gap-2 text-sm font-semibold tracking-tight`,children:[(0,M.jsx)(`div`,{className:`flex size-7 items-center justify-center rounded-md bg-white/15 ring-1 ring-white/30 backdrop-blur`,children:(0,M.jsx)(hy,{className:`size-4`})}),`ObjectStack`]}),(0,M.jsxs)(`div`,{className:`relative max-w-md space-y-5`,children:[(0,M.jsx)(`h2`,{className:`text-balance text-3xl font-semibold leading-tight tracking-tight md:text-4xl`,children:t??i(`auth.login.brandHeadline`,{defaultValue:`The AI-native backend for business software.`})}),(0,M.jsx)(`p`,{className:`text-balance text-base/relaxed text-white/80`,children:n??i(`auth.login.brandSubline`,{defaultValue:`One identity, every workspace. Sign in to manage your account, organizations and connected apps.`})})]}),(0,M.jsxs)(`div`,{className:`relative text-xs text-white/60`,children:[`© `,new Date().getFullYear(),` ObjectStack`]})]})]})}var pN=sa(`/verify-email`)({validateSearch:e=>{let t=e.token;return typeof t==`string`?{token:t}:{}},component:mN});function mN(){let{t:e}=vt(),{token:t}=pN.useSearch(),n=Rg(),[r,i]=(0,j.useState)(`loading`),[a,o]=(0,j.useState)(``);return(0,j.useEffect)(()=>{if(!t){i(`error`),o(e(`auth.verifyEmail.missingToken`));return}let r=!1;return(async()=>{try{await n.auth.verifyEmail({token:t}),r||i(`success`)}catch(t){r||(i(`error`),o(t.message||e(`auth.verifyEmail.errorDescription`)))}})(),()=>{r=!0}},[t,e,n]),(0,M.jsx)(fN,{headline:e(`auth.verifyEmail.brandHeadline`,{defaultValue:`One more step to get started.`}),subline:e(`auth.verifyEmail.brandSubline`,{defaultValue:`Verifying your email keeps your ObjectStack account secure.`}),children:(0,M.jsxs)($,{className:`border-border/60 shadow-sm shadow-primary/5 backdrop-blur supports-[backdrop-filter]:bg-card/95`,children:[r===`loading`&&(0,M.jsxs)(M.Fragment,{children:[(0,M.jsxs)(sN,{className:`text-center`,children:[(0,M.jsx)(cN,{className:`text-xl tracking-tight`,children:e(`auth.verifyEmail.verifyingTitle`)}),(0,M.jsx)(lN,{children:e(`auth.verifyEmail.verifyingDescription`)})]}),(0,M.jsx)(uN,{className:`flex justify-center py-6`,children:(0,M.jsx)(`div`,{className:`h-10 w-10 animate-spin rounded-full border-4 border-muted border-t-primary`})})]}),r===`success`&&(0,M.jsxs)(M.Fragment,{children:[(0,M.jsxs)(sN,{className:`text-center`,children:[(0,M.jsx)(`div`,{className:`mx-auto mb-2 flex size-12 items-center justify-center rounded-full bg-emerald-500/10 text-emerald-500 ring-1 ring-emerald-500/30`,children:(0,M.jsx)(cy,{className:`size-6`})}),(0,M.jsx)(cN,{className:`text-xl tracking-tight`,children:e(`auth.verifyEmail.successTitle`)}),(0,M.jsx)(lN,{children:e(`auth.verifyEmail.successDescription`)})]}),(0,M.jsx)(uN,{className:`text-center`,children:(0,M.jsx)(ta,{to:`/login`,className:`text-sm font-medium text-primary underline-offset-4 hover:underline`,children:e(`auth.verifyEmail.signInLink`)})})]}),r===`error`&&(0,M.jsxs)(M.Fragment,{children:[(0,M.jsxs)(sN,{className:`text-center`,children:[(0,M.jsx)(`div`,{className:`mx-auto mb-2 flex size-12 items-center justify-center rounded-full bg-destructive/10 text-destructive ring-1 ring-destructive/30`,children:(0,M.jsx)(uy,{className:`size-6`})}),(0,M.jsx)(cN,{className:`text-xl tracking-tight`,children:e(`auth.verifyEmail.errorTitle`)}),(0,M.jsx)(lN,{children:a||e(`auth.verifyEmail.errorDescription`)})]}),(0,M.jsx)(uN,{className:`text-center`,children:(0,M.jsx)(ta,{to:`/login`,className:`text-sm font-medium text-primary underline-offset-4 hover:underline`,children:e(`auth.verifyEmail.backToSignIn`)})})]})]})})}var hN=`Label`,gN=j.forwardRef((e,t)=>(0,M.jsx)(Hx.label,{...e,ref:t,onMouseDown:t=>{t.target.closest(`button, input, select, textarea`)||(e.onMouseDown?.(t),!t.defaultPrevented&&t.detail>1&&t.preventDefault())}}));gN.displayName=hN;var _N=gN,vN=Wv(`text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70`),yN=j.forwardRef(({className:e,...t},n)=>(0,M.jsx)(_N,{ref:n,className:Z(vN(),e),...t}));yN.displayName=_N.displayName;var bN=sa(`/setup`)({component:SN});function xN(e){return e.toLowerCase().replace(/[^a-z0-9]+/g,`-`).replace(/^-+|-+$/g,``)}function SN(){let{t:e}=vt(),t=N(),n=Rg(),{user:r,refresh:i}=zM(),[a,o]=(0,j.useState)(``),[s,c]=(0,j.useState)(``),[l,u]=(0,j.useState)(``),[d,f]=(0,j.useState)(``),[p,m]=(0,j.useState)(!1),[h,g]=(0,j.useState)(null);return(0,j.useEffect)(()=>{let e=!1;return(async()=>{try{let{hasOwner:t}=await n.auth.bootstrapStatus();e||g(t)}catch{e||g(!1)}})(),()=>{e=!0}},[n]),(0,j.useEffect)(()=>{h===!0&&!r&&t({to:`/login`,replace:!0})},[h,r,t]),(0,j.useEffect)(()=>{r&&window.location.assign(`/`)},[r]),h===null?(0,M.jsx)(`div`,{className:`flex min-h-svh w-full items-center justify-center bg-muted`,children:(0,M.jsx)(`div`,{className:`h-8 w-8 animate-spin rounded-full border-4 border-muted-foreground/20 border-t-primary`})}):(0,M.jsx)(`div`,{className:`flex min-h-svh w-full items-center justify-center bg-muted p-6`,children:(0,M.jsxs)(`div`,{className:`flex w-full max-w-md flex-col gap-6`,children:[(0,M.jsxs)(`a`,{href:`#`,className:`flex items-center gap-2 self-center font-medium`,children:[(0,M.jsx)(`div`,{className:`flex size-6 items-center justify-center rounded-md bg-primary text-primary-foreground`,children:(0,M.jsx)(hy,{className:`size-4`})}),`ObjectStack`]}),(0,M.jsxs)($,{children:[(0,M.jsxs)(sN,{className:`text-center`,children:[(0,M.jsx)(cN,{children:e(`auth.setup.welcomeTitle`)}),(0,M.jsx)(lN,{children:e(`auth.setup.description`)})]}),(0,M.jsx)(uN,{children:(0,M.jsxs)(`form`,{onSubmit:async t=>{if(t.preventDefault(),n?.auth){m(!0);try{await n.auth.register({name:a,email:s,password:l}),await i();let e=d.trim();if(e)try{let{organizations:t}=await n.organizations.list(),r=t?.[0],i;if(r?.id)await n.organizations.update(r.id,{name:e,slug:xN(e)}),i=r.id;else{let t=await n.organizations.create({name:e,slug:xN(e)});i=t?.id??t?.data?.id}i&&await n.organizations.setActive(i).catch(()=>{})}catch(e){console.warn(`[setup] organization rename/create failed`,e)}window.location.assign(`/`)}catch(t){q({title:e(`auth.setup.failed`),description:t.message,variant:`destructive`})}finally{m(!1)}}},className:`flex flex-col gap-4`,children:[(0,M.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,M.jsx)(yN,{htmlFor:`name`,children:e(`auth.setup.yourName`)}),(0,M.jsx)(Vx,{id:`name`,autoComplete:`name`,required:!0,value:a,onChange:e=>o(e.target.value)})]}),(0,M.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,M.jsx)(yN,{htmlFor:`orgName`,children:e(`auth.setup.orgName`)}),(0,M.jsx)(Vx,{id:`orgName`,required:!0,placeholder:e(`auth.setup.orgNamePlaceholder`),value:d,onChange:e=>f(e.target.value)})]}),(0,M.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,M.jsx)(yN,{htmlFor:`email`,children:e(`auth.emailLabel`)}),(0,M.jsx)(Vx,{id:`email`,type:`email`,placeholder:e(`auth.emailPlaceholder`),autoComplete:`email`,required:!0,value:s,onChange:e=>c(e.target.value)})]}),(0,M.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,M.jsx)(yN,{htmlFor:`password`,children:e(`auth.passwordLabel`)}),(0,M.jsx)(Vx,{id:`password`,type:`password`,autoComplete:`new-password`,required:!0,minLength:8,placeholder:e(`auth.setup.passwordHint`),value:l,onChange:e=>u(e.target.value)})]}),(0,M.jsx)(Q,{type:`submit`,className:`mt-2 w-full`,disabled:p,children:e(p?`auth.setup.submitting`:`auth.setup.submit`)})]})})]})]})})}var CN=sa(`/reset-password`)({validateSearch:e=>{let t=e.token;return typeof t==`string`?{token:t}:{}},component:wN});function wN(){let{t:e}=vt(),t=N(),{token:n}=CN.useSearch(),[r,i]=(0,j.useState)(``),[a,o]=(0,j.useState)(``),[s,c]=(0,j.useState)(!1);return(0,M.jsx)(fN,{headline:e(`auth.resetPassword.brandHeadline`,{defaultValue:`Choose a new password.`}),subline:e(`auth.resetPassword.brandSubline`,{defaultValue:`Make it strong — at least 8 characters with a mix of letters and numbers.`}),children:(0,M.jsxs)($,{className:`border-border/60 shadow-sm shadow-primary/5 backdrop-blur supports-[backdrop-filter]:bg-card/95`,children:[(0,M.jsxs)(sN,{className:`text-center`,children:[(0,M.jsx)(cN,{className:`text-xl tracking-tight`,children:e(`auth.resetPassword.title`)}),(0,M.jsx)(lN,{children:e(`auth.resetPassword.description`)})]}),(0,M.jsx)(uN,{children:n?(0,M.jsxs)(`form`,{onSubmit:async i=>{if(i.preventDefault(),r!==a){q({title:e(`auth.resetPassword.passwordsMismatch`),variant:`destructive`});return}if(!n){q({title:e(`auth.resetPassword.missingToken`),variant:`destructive`});return}c(!0);try{let i=await fetch(`/api/v1/auth/reset-password`,{method:`POST`,headers:{"Content-Type":`application/json`},credentials:`include`,body:JSON.stringify({token:n,newPassword:r})});if(!i.ok){let e=await i.json().catch(()=>({}));throw Error(e?.message||`Request failed: ${i.status}`)}q({title:e(`auth.resetPassword.success`)}),t({to:`/login`})}catch(t){q({title:e(`auth.resetPassword.failed`),description:t.message,variant:`destructive`})}finally{c(!1)}},className:`flex flex-col gap-4`,children:[(0,M.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,M.jsx)(yN,{htmlFor:`new-password`,children:e(`auth.resetPassword.newPassword`)}),(0,M.jsx)(Vx,{id:`new-password`,type:`password`,autoComplete:`new-password`,required:!0,minLength:8,value:r,onChange:e=>i(e.target.value)})]}),(0,M.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,M.jsx)(yN,{htmlFor:`confirm-password`,children:e(`auth.resetPassword.confirmPassword`)}),(0,M.jsx)(Vx,{id:`confirm-password`,type:`password`,autoComplete:`new-password`,required:!0,minLength:8,value:a,onChange:e=>o(e.target.value)})]}),(0,M.jsx)(Q,{type:`submit`,className:`w-full bg-brand-gradient text-primary-foreground shadow-sm shadow-primary/20 transition-all hover:opacity-95 hover:shadow-md hover:shadow-primary/30`,disabled:s,children:e(s?`auth.resetPassword.submitting`:`auth.resetPassword.submit`)})]}):(0,M.jsxs)(`p`,{className:`text-sm text-muted-foreground text-center`,children:[e(`auth.resetPassword.invalidToken`),` `,(0,M.jsx)(ta,{to:`/forgot-password`,className:`font-medium text-primary underline-offset-4 hover:underline`,children:e(`auth.resetPassword.requestNewLink`)})]})})]})})}function TN({mode:e,redirect:t}){let{t:n}=vt(),r=Rg(),[i,a]=(0,j.useState)([]),[o,s]=(0,j.useState)(!0);if((0,j.useEffect)(()=>{r?.auth?.getConfig&&r.auth.getConfig().then(e=>{a((e?.socialProviders??e?.data?.socialProviders??[]).filter(e=>e.enabled))}).catch(e=>{console.warn(`[SocialSignInButtons] failed to load auth config`,e)}).finally(()=>s(!1))},[r]),o||i.length===0)return null;let c=n(e===`sign-in`?`auth.social.continueWith`:`auth.social.signUpWith`),l=window.location.origin+`/_account/login`+(t?`?redirect=${encodeURIComponent(t)}`:``);return(0,M.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[i.map(e=>(0,M.jsxs)(Q,{type:`button`,variant:`outline`,className:`w-full`,onClick:()=>r.auth.signInWithProvider(e.id,{callbackURL:l,errorCallbackURL:l,type:e.type??`social`}),children:[(0,M.jsx)(`span`,{className:`mr-2 flex h-4 w-4 items-center justify-center rounded-sm bg-muted text-[10px] font-bold uppercase`,children:e.id[0]}),c,` `,e.name]},e.id)),(0,M.jsxs)(`div`,{className:`relative my-1`,children:[(0,M.jsx)(`div`,{className:`absolute inset-0 flex items-center`,children:(0,M.jsx)(`span`,{className:`w-full border-t`})}),(0,M.jsx)(`div`,{className:`relative flex justify-center text-xs uppercase`,children:(0,M.jsx)(`span`,{className:`bg-card px-2 text-muted-foreground`,children:n(`auth.social.orContinueEmail`)})})]})]})}var EN=sa(`/register`)({validateSearch:e=>{let t=e.redirect;return typeof t==`string`?{redirect:t}:{}},component:kN});function DN(e){return!!e&&e.startsWith(`/`)&&!e.startsWith(`//`)}function ON(e){return e.startsWith(`/_`)?e:`/_account/`.replace(/\/$/,``)+e}function kN(){let{t:e}=vt(),t=N(),{redirect:n}=EN.useSearch(),r=Rg(),{session:i,user:a,loading:o,refresh:s,organizations:c,organizationsLoading:l,organizationsFetched:u,setActiveOrganization:d}=zM(),[f,p]=(0,j.useState)(``),[m,h]=(0,j.useState)(``),[g,_]=(0,j.useState)(``),[v,y]=(0,j.useState)(!1),[b,x]=(0,j.useState)(!1);return(0,j.useEffect)(()=>{if(a){if(typeof window<`u`){let e=new URLSearchParams(window.location.search);if(e.has(`client_id`)&&e.has(`redirect_uri`)){window.location.assign(`/api/v1/auth/oauth2/authorize${window.location.search}`);return}}if(!i?.activeOrganizationId){if(!u||l||b)return;if(c.length===1){x(!0),d(c[0].id).catch(()=>void 0).finally(()=>x(!1));return}if(c.length>1){t({to:`/organizations`});return}t({to:`/organizations/new`});return}if(!b){if(DN(n)){window.location.assign(ON(n));return}window.location.assign(`/`)}}},[a,i,t,n,c,l,u,b,d]),(0,M.jsx)(fN,{headline:e(`auth.register.brandHeadline`,{defaultValue:`Create your ObjectStack account.`}),subline:e(`auth.register.brandSubline`,{defaultValue:`One identity for every workspace, app and integration in your stack.`}),children:o||a?(0,M.jsxs)(`div`,{className:`flex flex-col items-center gap-3 py-10 text-sm text-muted-foreground`,children:[(0,M.jsx)(`div`,{className:`size-6 animate-spin rounded-full border-2 border-muted-foreground border-t-transparent`}),(0,M.jsx)(`span`,{children:a?e(`auth.register.signingIn`,{defaultValue:`Setting up your account…`}):e(`auth.login.redirecting`,{defaultValue:`Loading…`})})]}):(0,M.jsxs)(`div`,{className:`flex flex-col gap-6`,children:[(0,M.jsxs)($,{className:`border-border/60 shadow-sm shadow-primary/5 backdrop-blur supports-[backdrop-filter]:bg-card/95`,children:[(0,M.jsxs)(sN,{className:`text-center`,children:[(0,M.jsx)(cN,{className:`text-xl tracking-tight`,children:e(`auth.register.title`)}),(0,M.jsx)(lN,{children:e(`auth.register.description`)})]}),(0,M.jsx)(uN,{children:(0,M.jsx)(`form`,{onSubmit:async t=>{if(t.preventDefault(),r?.auth){y(!0);try{await r.auth.register({name:f,email:m,password:g}),await s(),q({title:e(`auth.register.successToast`)})}catch(t){q({title:e(`auth.register.failed`),description:t.message,variant:`destructive`})}finally{y(!1)}}},children:(0,M.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,M.jsx)(TN,{mode:`sign-up`,redirect:n}),(0,M.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,M.jsx)(yN,{htmlFor:`name`,children:e(`auth.nameLabel`)}),(0,M.jsx)(Vx,{id:`name`,autoComplete:`name`,required:!0,value:f,onChange:e=>p(e.target.value)})]}),(0,M.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,M.jsx)(yN,{htmlFor:`email`,children:e(`auth.emailLabel`)}),(0,M.jsx)(Vx,{id:`email`,type:`email`,placeholder:e(`auth.emailPlaceholder`),autoComplete:`email`,required:!0,value:m,onChange:e=>h(e.target.value)})]}),(0,M.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,M.jsx)(yN,{htmlFor:`password`,children:e(`auth.passwordLabel`)}),(0,M.jsx)(Vx,{id:`password`,type:`password`,autoComplete:`new-password`,required:!0,minLength:8,value:g,onChange:e=>_(e.target.value)})]}),(0,M.jsx)(Q,{type:`submit`,className:`w-full bg-brand-gradient text-primary-foreground shadow-sm shadow-primary/20 transition-all hover:opacity-95 hover:shadow-md hover:shadow-primary/30`,disabled:v,children:e(v?`auth.register.submitting`:`auth.register.submit`)}),(0,M.jsxs)(`p`,{className:`text-center text-sm text-muted-foreground`,children:[e(`auth.register.haveAccount`),` `,(0,M.jsx)(ta,{to:`/login`,search:n?{redirect:n}:void 0,className:`font-medium text-primary underline-offset-4 hover:underline`,children:e(`auth.register.signIn`)})]})]})})})]}),(0,M.jsxs)(`p`,{className:`px-6 text-center text-xs text-muted-foreground [&_a]:underline [&_a]:underline-offset-4 [&_a]:hover:text-primary`,children:[e(`legal.agreementPrefix`),` `,(0,M.jsx)(`a`,{href:`#`,children:e(`legal.termsOfService`)}),` `,e(`legal.and`),` `,(0,M.jsx)(`a`,{href:`#`,children:e(`legal.privacyPolicy`)}),`.`]})]})})}var AN=sa(`/login`)({validateSearch:e=>{let t=e.redirect;return typeof t==`string`?{redirect:t}:{}},component:NN});function jN(e){return!!e&&e.startsWith(`/`)&&!e.startsWith(`//`)}function MN(e){return e.startsWith(`/_`)?e:`/_account/`.replace(/\/$/,``)+e}function NN(){let{t:e}=vt(),t=N(),{redirect:n}=AN.useSearch(),r=Rg(),{session:i,user:a,loading:o,refresh:s,organizations:c,organizationsLoading:l,organizationsFetched:u,setActiveOrganization:d}=zM(),[f,p]=(0,j.useState)(``),[m,h]=(0,j.useState)(``),[g,_]=(0,j.useState)(!1),[v,y]=(0,j.useState)(!1);return(0,j.useEffect)(()=>{if(a){if(typeof window<`u`){let e=new URLSearchParams(window.location.search);if(e.has(`client_id`)&&e.has(`redirect_uri`)){window.location.assign(`/api/v1/auth/oauth2/authorize${window.location.search}`);return}}if(!i?.activeOrganizationId){if(!u||l||v)return;if(c.length===1){y(!0),d(c[0].id).catch(()=>void 0).finally(()=>y(!1));return}if(c.length===0){t({to:`/organizations/new`});return}t({to:`/organizations`});return}if(!v){if(jN(n)){window.location.assign(MN(n));return}window.location.assign(`/`)}}},[a,i,t,n,c,l,u,v,d]),o||a?(0,M.jsx)(fN,{children:(0,M.jsxs)(`div`,{className:`flex flex-col items-center gap-3 py-10 text-sm text-muted-foreground`,children:[(0,M.jsx)(`div`,{className:`size-6 animate-spin rounded-full border-2 border-muted-foreground border-t-transparent`}),(0,M.jsx)(`span`,{children:e(`auth.login.signingIn`,{defaultValue:`Signing you in…`})})]})}):(0,M.jsx)(fN,{children:(0,M.jsxs)(`div`,{className:`flex flex-col gap-6`,children:[(0,M.jsxs)($,{className:`border-border/60 shadow-sm shadow-primary/5 backdrop-blur supports-[backdrop-filter]:bg-card/95`,children:[(0,M.jsxs)(sN,{className:`text-center`,children:[(0,M.jsx)(cN,{className:`text-xl tracking-tight`,children:e(`auth.login.title`)}),(0,M.jsx)(lN,{children:e(`auth.login.description`)})]}),(0,M.jsx)(uN,{children:(0,M.jsx)(`form`,{onSubmit:async t=>{if(t.preventDefault(),r?.auth){_(!0);try{await r.auth.login({type:`email`,email:f,password:m}),await s(),q({title:e(`auth.login.welcomeToast`)})}catch(t){q({title:e(`auth.login.failed`),description:t.message,variant:`destructive`})}finally{_(!1)}}},children:(0,M.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,M.jsx)(TN,{mode:`sign-in`,redirect:n}),(0,M.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,M.jsx)(yN,{htmlFor:`email`,children:e(`auth.emailLabel`)}),(0,M.jsx)(Vx,{id:`email`,type:`email`,placeholder:e(`auth.emailPlaceholder`),autoComplete:`email`,required:!0,value:f,onChange:e=>p(e.target.value)})]}),(0,M.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,M.jsxs)(`div`,{className:`flex items-center`,children:[(0,M.jsx)(yN,{htmlFor:`password`,children:e(`auth.passwordLabel`)}),(0,M.jsx)(ta,{to:`/forgot-password`,className:`ml-auto text-sm underline-offset-4 hover:underline`,children:e(`auth.login.forgotPassword`)})]}),(0,M.jsx)(Vx,{id:`password`,type:`password`,autoComplete:`current-password`,required:!0,value:m,onChange:e=>h(e.target.value)})]}),(0,M.jsx)(Q,{type:`submit`,className:`w-full bg-brand-gradient text-primary-foreground shadow-sm shadow-primary/20 transition-all hover:opacity-95 hover:shadow-md hover:shadow-primary/30`,disabled:g,children:e(g?`auth.login.submitting`:`auth.login.submit`)}),(0,M.jsxs)(`p`,{className:`text-center text-sm text-muted-foreground`,children:[e(`auth.login.noAccount`),` `,(0,M.jsx)(ta,{to:`/register`,search:n?{redirect:n}:void 0,className:`font-medium text-primary underline-offset-4 hover:underline`,children:e(`auth.login.signUp`)})]})]})})})]}),(0,M.jsxs)(`p`,{className:`px-6 text-center text-xs text-muted-foreground [&_a]:underline [&_a]:underline-offset-4 [&_a]:hover:text-primary`,children:[e(`legal.agreementPrefix`),` `,(0,M.jsx)(`a`,{href:`#`,children:e(`legal.termsOfService`)}),` `,e(`legal.and`),` `,(0,M.jsx)(`a`,{href:`#`,children:e(`legal.privacyPolicy`)}),`.`]})]})})}var PN=sa(`/forgot-password`)({component:FN});function FN(){let{t:e}=vt(),[t,n]=(0,j.useState)(``),[r,i]=(0,j.useState)(!1),[a,o]=(0,j.useState)(!1);return(0,M.jsx)(fN,{headline:e(`auth.forgotPassword.brandHeadline`,{defaultValue:`Forgot your password?`}),subline:e(`auth.forgotPassword.brandSubline`,{defaultValue:`No problem — we will send you a secure link to reset it.`}),children:(0,M.jsx)($,{className:`border-border/60 shadow-sm shadow-primary/5 backdrop-blur supports-[backdrop-filter]:bg-card/95`,children:a?(0,M.jsxs)(M.Fragment,{children:[(0,M.jsxs)(sN,{className:`text-center`,children:[(0,M.jsx)(cN,{className:`text-xl tracking-tight`,children:e(`auth.forgotPassword.checkEmailTitle`)}),(0,M.jsx)(lN,{children:e(`auth.forgotPassword.checkEmailDescription`,{email:t})})]}),(0,M.jsx)(uN,{className:`text-center`,children:(0,M.jsx)(ta,{to:`/login`,className:`text-sm font-medium text-primary underline-offset-4 hover:underline`,children:e(`auth.forgotPassword.backToSignIn`)})})]}):(0,M.jsxs)(M.Fragment,{children:[(0,M.jsxs)(sN,{className:`text-center`,children:[(0,M.jsx)(cN,{className:`text-xl tracking-tight`,children:e(`auth.forgotPassword.title`)}),(0,M.jsx)(lN,{children:e(`auth.forgotPassword.description`)})]}),(0,M.jsx)(uN,{children:(0,M.jsxs)(`form`,{onSubmit:async n=>{n.preventDefault(),i(!0);try{let e=window.location.origin+`/_account/`.replace(/\/$/,``)+`/reset-password`,n=await fetch(`/api/v1/auth/forget-password`,{method:`POST`,headers:{"Content-Type":`application/json`},credentials:`include`,body:JSON.stringify({email:t,redirectTo:e})});if(!n.ok){let e=await n.json().catch(()=>({}));throw Error(e?.message||`Request failed: ${n.status}`)}o(!0)}catch(t){q({title:e(`auth.forgotPassword.failed`),description:t.message,variant:`destructive`})}finally{i(!1)}},className:`flex flex-col gap-4`,children:[(0,M.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,M.jsx)(yN,{htmlFor:`email`,children:e(`auth.emailLabel`)}),(0,M.jsx)(Vx,{id:`email`,type:`email`,placeholder:e(`auth.emailPlaceholder`),autoComplete:`email`,required:!0,value:t,onChange:e=>n(e.target.value)})]}),(0,M.jsx)(Q,{type:`submit`,className:`w-full bg-brand-gradient text-primary-foreground shadow-sm shadow-primary/20 transition-all hover:opacity-95 hover:shadow-md hover:shadow-primary/30`,disabled:r,children:e(r?`auth.forgotPassword.submitting`:`auth.forgotPassword.submit`)}),(0,M.jsxs)(`p`,{className:`text-center text-sm text-muted-foreground`,children:[e(`auth.forgotPassword.rememberPassword`),` `,(0,M.jsx)(ta,{to:`/login`,className:`font-medium text-primary underline-offset-4 hover:underline`,children:e(`auth.forgotPassword.signIn`)})]})]})})]})})})}var IN=sa(`/account`)({component:LN});function LN(){return(0,M.jsx)(`div`,{className:`flex flex-1 flex-col overflow-hidden`,children:(0,M.jsx)(`div`,{className:`flex-1 overflow-auto px-4 py-6 sm:px-6 sm:py-8`,children:(0,M.jsx)(`div`,{className:`page-enter mx-auto flex max-w-4xl flex-col gap-6`,children:(0,M.jsx)(_a,{})})})})}var RN=sa(`/`)({component:zN});function zN(){return(0,M.jsx)(Vi,{to:`/login`})}var BN=Wv(`inline-flex items-center rounded-full border px-2.5 py-0.5 text-xs font-semibold transition-colors focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2`,{variants:{variant:{default:`border-transparent bg-primary text-primary-foreground hover:bg-primary/80`,secondary:`border-transparent bg-secondary text-secondary-foreground hover:bg-secondary/80`,destructive:`border-transparent bg-destructive text-destructive-foreground hover:bg-destructive/80`,outline:`text-foreground`}},defaultVariants:{variant:`default`}});function VN({className:e,variant:t,...n}){return(0,M.jsx)(`div`,{className:Z(BN({variant:t}),e),...n})}function HN({title:e,description:t,icon:n,actions:r,className:i,...a}){return(0,M.jsxs)(`div`,{className:Z(`relative overflow-hidden rounded-xl border bg-brand-gradient-subtle`,`px-5 py-5 sm:px-6 sm:py-6`,i),...a,children:[(0,M.jsx)(`div`,{className:`pointer-events-none absolute inset-0 opacity-60`,style:{backgroundImage:`radial-gradient(ellipse 60% 80% at 0% 0%, hsl(var(--brand-from) / 0.12), transparent 60%)`},"aria-hidden":!0}),(0,M.jsxs)(`div`,{className:`relative flex flex-col gap-4 sm:flex-row sm:items-start sm:justify-between sm:gap-6`,children:[(0,M.jsxs)(`div`,{className:`flex min-w-0 items-start gap-4`,children:[n?(0,M.jsx)(`div`,{className:`flex size-10 shrink-0 items-center justify-center rounded-lg bg-brand-gradient text-primary-foreground shadow-sm shadow-primary/30 ring-1 ring-white/15`,children:(0,M.jsx)(n,{className:`size-5`})}):null,(0,M.jsxs)(`div`,{className:`min-w-0 space-y-1`,children:[(0,M.jsx)(`h1`,{className:`truncate text-xl font-semibold tracking-tight sm:text-2xl`,children:e}),t?(0,M.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:t}):null]})]}),r?(0,M.jsx)(`div`,{className:`flex shrink-0 flex-wrap items-center gap-2`,children:r}):null]})]})}var UN=sa(`/organizations/`)({component:WN});function WN(){let{t:e}=vt(),{organizations:t,loading:n}=BM(),{session:r,setActiveOrganization:i}=zM(),a=N(),o=r?.activeOrganizationId??void 0,s=async t=>{try{t!==o&&await i(t),a({to:`/organizations/$orgId`,params:{orgId:t}})}catch(t){q({title:e(`organizations.switchFailed`),description:t.message,variant:`destructive`})}},c=e=>e.split(/\s+/).map(e=>e[0]).join(``).slice(0,2).toUpperCase();return(0,M.jsx)(`div`,{className:`flex flex-1 flex-col overflow-hidden`,children:(0,M.jsx)(`div`,{className:`flex-1 overflow-auto px-4 py-6 sm:px-6 sm:py-8`,children:(0,M.jsxs)(`div`,{className:`page-enter mx-auto flex max-w-3xl flex-col gap-6`,children:[(0,M.jsx)(HN,{icon:ny,title:e(`organizations.title`),description:e(`organizations.description`),actions:(0,M.jsxs)(Q,{onClick:()=>a({to:`/organizations/new`}),className:`bg-brand-gradient text-primary-foreground shadow-sm shadow-primary/20 transition-all hover:opacity-95 hover:shadow-md hover:shadow-primary/30`,children:[(0,M.jsx)(Oy,{className:`mr-2 h-4 w-4`}),e(`organizations.newOrganization`)]})}),n&&(0,M.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:e(`organizations.loading`)}),!n&&t.length===0&&(0,M.jsxs)($,{className:`p-10 text-center`,children:[(0,M.jsx)(`div`,{className:`mx-auto mb-3 flex size-12 items-center justify-center rounded-lg bg-brand-gradient-subtle text-primary ring-1 ring-primary/15`,children:(0,M.jsx)(ny,{className:`h-6 w-6`})}),(0,M.jsx)(`h3`,{className:`text-base font-medium`,children:e(`organizations.emptyTitle`)}),(0,M.jsx)(`p`,{className:`mb-4 text-sm text-muted-foreground`,children:e(`organizations.emptyDescription`)}),(0,M.jsxs)(Q,{onClick:()=>a({to:`/organizations/new`}),className:`bg-brand-gradient text-primary-foreground shadow-sm shadow-primary/20`,children:[(0,M.jsx)(Oy,{className:`mr-2 h-4 w-4`}),e(`organizations.createOrganization`)]})]}),(0,M.jsx)(`div`,{className:`grid gap-3`,children:t.map(t=>{let n=t.id===o;return(0,M.jsx)($,{role:`button`,tabIndex:0,onClick:()=>s(t.id),onKeyDown:e=>{(e.key===`Enter`||e.key===` `)&&(e.preventDefault(),s(t.id))},className:`group cursor-pointer p-4 transition-all hover:-translate-y-0.5 hover:border-primary/30 hover:shadow-md hover:shadow-primary/5 focus:outline-none focus:ring-2 focus:ring-ring ${n?`border-primary/50 bg-brand-gradient-subtle ring-1 ring-primary/30`:``}`,children:(0,M.jsxs)(`div`,{className:`flex items-center gap-4`,children:[(0,M.jsx)(`div`,{className:`flex size-12 shrink-0 items-center justify-center rounded-lg font-semibold `+(n?`bg-brand-gradient text-primary-foreground shadow-sm shadow-primary/30 ring-1 ring-white/15`:`bg-muted text-muted-foreground group-hover:bg-brand-gradient-subtle group-hover:text-primary`),children:c(t.name)||(0,M.jsx)(ny,{className:`h-5 w-5`})}),(0,M.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,M.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,M.jsx)(`h3`,{className:`truncate text-base font-medium`,children:t.name}),n&&(0,M.jsxs)(VN,{className:`gap-1 border-transparent bg-emerald-500/15 text-[10px] font-medium text-emerald-600 dark:text-emerald-400`,children:[(0,M.jsx)(ry,{className:`h-3 w-3`}),e(`organizations.active`)]})]}),t.slug&&(0,M.jsx)(`code`,{className:`mt-0.5 block font-mono text-xs text-muted-foreground`,children:t.slug})]}),(0,M.jsx)(ay,{className:`size-4 shrink-0 text-muted-foreground transition-transform group-hover:translate-x-0.5 group-hover:text-primary`})]})},t.id)})})]})})})}var GN=sa(`/account/`)({component:KN});function KN(){let{t:e}=vt(),{user:t}=zM(),{organizations:n}=BM(),r=[!!t?.emailVerified,!!t?.twoFactorEnabled,!!t?.name,!!t?.image].filter(Boolean).length*25,i=r>=75?`success`:r>=50?`warn`:`danger`,a=(t?.name??t?.email??`?`).split(/\s+/).map(e=>e[0]).join(``).slice(0,2).toUpperCase(),o=[{to:`/account/profile`,label:e(`home.tiles.profile.title`,{defaultValue:`Profile`}),description:e(`home.tiles.profile.description`,{defaultValue:`Display name, avatar and contact info.`}),icon:Hy},{to:`/account/security`,label:e(`home.tiles.security.title`,{defaultValue:`Security`}),description:e(`home.tiles.security.description`,{defaultValue:`Change your password and review activity.`}),icon:Ny},{to:`/account/two-factor`,label:e(`home.tiles.twoFactor.title`,{defaultValue:`Two-factor auth`}),description:e(`home.tiles.twoFactor.description`,{defaultValue:`Add an authenticator app for stronger sign-in.`}),icon:My},{to:`/account/sessions`,label:e(`home.tiles.sessions.title`,{defaultValue:`Active sessions`}),description:e(`home.tiles.sessions.description`,{defaultValue:`See and revoke devices that are signed in.`}),icon:Ty},{to:`/account/linked-accounts`,label:e(`home.tiles.linked.title`,{defaultValue:`Linked accounts`}),description:e(`home.tiles.linked.description`,{defaultValue:`Manage your social and SSO providers.`}),icon:Sy},{to:`/account/oauth-applications`,label:e(`home.tiles.oauth.title`,{defaultValue:`OAuth applications`}),description:e(`home.tiles.oauth.description`,{defaultValue:`Apps you have authorised to access your account.`}),icon:yy}];return(0,M.jsxs)(`div`,{className:`space-y-6`,children:[(0,M.jsxs)(`div`,{className:`relative overflow-hidden rounded-xl border bg-card`,children:[(0,M.jsx)(`div`,{className:`absolute inset-0 bg-brand-gradient`,"aria-hidden":!0}),(0,M.jsx)(`div`,{className:`absolute inset-0 opacity-40 mix-blend-soft-light`,style:{backgroundImage:`radial-gradient(ellipse at 20% 0%, rgba(255,255,255,0.4), transparent 60%), radial-gradient(ellipse at 100% 100%, rgba(0,0,0,0.25), transparent 60%)`},"aria-hidden":!0}),(0,M.jsxs)(`div`,{className:`relative flex flex-col gap-4 p-6 text-white sm:flex-row sm:items-center sm:gap-6 sm:p-8`,children:[(0,M.jsxs)(AM,{className:`size-16 shrink-0 ring-4 ring-white/30 shadow-md sm:size-20`,children:[t?.image?(0,M.jsx)(jM,{src:t.image,alt:t?.name??``}):null,(0,M.jsx)(MM,{className:`bg-white/20 text-base font-semibold text-white backdrop-blur`,children:a})]}),(0,M.jsxs)(`div`,{className:`min-w-0 flex-1 space-y-1`,children:[(0,M.jsx)(`p`,{className:`text-xs uppercase tracking-wider text-white/70`,children:e(`home.welcome`,{defaultValue:`Welcome back`})}),(0,M.jsx)(`h2`,{className:`truncate text-2xl font-semibold tracking-tight`,children:t?.name||t?.email||`ObjectStack user`}),(0,M.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2 text-sm text-white/80`,children:[(0,M.jsx)(wy,{className:`size-3.5`,"aria-hidden":!0}),(0,M.jsx)(`span`,{className:`truncate`,children:t?.email}),t?.emailVerified?(0,M.jsx)(VN,{className:`border-white/30 bg-white/15 text-[10px] font-medium text-white backdrop-blur hover:bg-white/20`,children:e(`home.verified`,{defaultValue:`Verified`})}):null]})]})]})]}),(0,M.jsxs)(`div`,{className:`grid grid-cols-1 gap-4 sm:grid-cols-3`,children:[(0,M.jsx)(qN,{icon:My,label:e(`home.stats.score`,{defaultValue:`Security score`}),value:`${r}%`,tone:i,extra:(0,M.jsx)(`div`,{className:`mt-2 h-1.5 w-full overflow-hidden rounded-full bg-muted`,children:(0,M.jsx)(`div`,{className:`h-full bg-brand-gradient transition-[width] duration-500`,style:{width:`${r}%`}})})}),(0,M.jsx)(qN,{icon:ny,label:e(`home.stats.orgs`,{defaultValue:`Organizations`}),value:String(n.length),extra:(0,M.jsxs)(ta,{to:`/organizations`,className:`mt-2 inline-flex items-center gap-1 text-xs font-medium text-primary hover:underline`,children:[e(`home.stats.manage`,{defaultValue:`Manage`}),(0,M.jsx)(ty,{className:`size-3`})]})}),(0,M.jsx)(qN,{icon:t?.twoFactorEnabled?My:Ny,label:e(`home.stats.twoFactor`,{defaultValue:`Two-factor auth`}),value:t?.twoFactorEnabled?e(`home.stats.enabled`,{defaultValue:`Enabled`}):e(`home.stats.disabled`,{defaultValue:`Disabled`}),tone:t?.twoFactorEnabled?`success`:`warn`,extra:(0,M.jsxs)(ta,{to:`/account/two-factor`,className:`mt-2 inline-flex items-center gap-1 text-xs font-medium text-primary hover:underline`,children:[t?.twoFactorEnabled?e(`home.stats.review`,{defaultValue:`Review`}):e(`home.stats.enable`,{defaultValue:`Enable now`}),(0,M.jsx)(ty,{className:`size-3`})]})})]}),(0,M.jsxs)(`div`,{children:[(0,M.jsx)(`h3`,{className:`mb-3 text-sm font-medium text-muted-foreground`,children:e(`home.quickAccess`,{defaultValue:`Quick access`})}),(0,M.jsx)(`div`,{className:`grid grid-cols-1 gap-3 sm:grid-cols-2 lg:grid-cols-3`,children:o.map(({to:e,label:t,description:n,icon:r})=>(0,M.jsxs)(ta,{to:e,className:`group relative flex items-start gap-3 rounded-lg border bg-card p-4 transition-all hover:-translate-y-0.5 hover:border-primary/30 hover:shadow-md hover:shadow-primary/5`,children:[(0,M.jsx)(`div`,{className:`flex size-9 shrink-0 items-center justify-center rounded-md bg-brand-gradient-subtle text-primary ring-1 ring-primary/10 transition-transform group-hover:scale-110`,children:(0,M.jsx)(r,{className:`size-4`})}),(0,M.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,M.jsxs)(`div`,{className:`flex items-center justify-between gap-2`,children:[(0,M.jsx)(`span`,{className:`truncate font-medium`,children:t}),(0,M.jsx)(ty,{className:`size-4 shrink-0 text-muted-foreground transition-transform group-hover:translate-x-0.5 group-hover:text-primary`})]}),(0,M.jsx)(`p`,{className:`mt-0.5 line-clamp-2 text-xs text-muted-foreground`,children:n})]})]},e))})]})]})}function qN({icon:e,label:t,value:n,tone:r=`neutral`,extra:i}){let a=r===`success`?`text-emerald-600 dark:text-emerald-400`:r===`warn`?`text-amber-600 dark:text-amber-400`:r===`danger`?`text-destructive`:`text-foreground`;return(0,M.jsx)($,{className:`overflow-hidden`,children:(0,M.jsxs)(uN,{className:`p-5`,children:[(0,M.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,M.jsx)(`p`,{className:`text-xs font-medium uppercase tracking-wider text-muted-foreground`,children:t}),(0,M.jsx)(e,{className:`size-4 ${a}`})]}),(0,M.jsx)(`p`,{className:`mt-1 text-2xl font-semibold tracking-tight ${a}`,children:n}),i]})})}var JN=sa(`/organizations/new`)({component:XN});function YN(e){return e.toLowerCase().trim().replace(/[^a-z0-9]+/g,`-`).replace(/^-+|-+$/g,``).slice(0,48)}function XN(){let{t:e}=vt(),t=N(),{create:n,creating:r}=VM(),{setActiveOrganization:i,reloadOrganizations:a}=zM(),[o,s]=(0,j.useState)(``),[c,l]=(0,j.useState)(``),[u,d]=(0,j.useState)(!1),f=e=>{s(e),u||l(YN(e))};return(0,M.jsx)(`div`,{className:`flex flex-1 flex-col overflow-hidden`,children:(0,M.jsx)(`div`,{className:`flex-1 px-6 py-8 overflow-auto`,children:(0,M.jsx)(`div`,{className:`mx-auto max-w-lg`,children:(0,M.jsxs)($,{children:[(0,M.jsxs)(sN,{children:[(0,M.jsx)(cN,{children:e(`organizations.new.title`)}),(0,M.jsx)(lN,{children:e(`organizations.new.description`)})]}),(0,M.jsxs)(`form`,{onSubmit:async t=>{t.preventDefault();try{let t=await n({name:o,slug:c||void 0}),r=t?.data??t,s=r?.id??r?.organization?.id;s&&await i(s).catch(()=>{}),await a().catch(()=>{}),q({title:e(`organizations.new.successToast`)}),window.location.assign(`/`)}catch(t){q({title:e(`organizations.new.failed`),description:t.message,variant:`destructive`})}},children:[(0,M.jsxs)(uN,{className:`space-y-4`,children:[(0,M.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,M.jsx)(yN,{htmlFor:`name`,children:e(`organizations.new.name`)}),(0,M.jsx)(Vx,{id:`name`,required:!0,value:o,onChange:e=>f(e.target.value),placeholder:e(`organizations.new.namePlaceholder`)})]}),(0,M.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,M.jsx)(yN,{htmlFor:`slug`,children:e(`organizations.new.slug`)}),(0,M.jsx)(Vx,{id:`slug`,value:c,onChange:e=>{l(e.target.value),d(!0)},placeholder:e(`organizations.new.slugPlaceholder`),pattern:`[a-z0-9-]+`}),(0,M.jsx)(`p`,{className:`text-[11px] text-muted-foreground`,children:e(`organizations.new.slugHint`)})]})]}),(0,M.jsxs)(dN,{className:`flex justify-between`,children:[(0,M.jsx)(Q,{type:`button`,variant:`ghost`,onClick:()=>t({to:`/organizations`}),children:e(`organizations.new.cancel`)}),(0,M.jsx)(Q,{type:`submit`,disabled:r||!o,children:e(r?`organizations.new.submitting`:`organizations.new.submit`)})]})]})]})})})})}var ZN=sa(`/organizations/$orgId`)({component:QN});function QN(){let{t:e}=vt(),{orgId:t}=ZN.useParams(),{organizations:n}=BM(),r=n.find(e=>e.id===t);return(0,M.jsx)(`div`,{className:`flex flex-1 flex-col overflow-hidden`,children:(0,M.jsx)(`div`,{className:`flex-1 overflow-auto px-6 py-8`,children:(0,M.jsxs)(`div`,{className:`mx-auto max-w-4xl space-y-6`,children:[(0,M.jsxs)(`header`,{children:[(0,M.jsx)(`h1`,{className:`text-2xl font-semibold`,children:r?.name??e(`organizations.title`)}),r?.slug&&(0,M.jsx)(`p`,{className:`text-sm text-muted-foreground font-mono`,children:r.slug})]}),(0,M.jsx)(_a,{})]})})})}function $N(){let e=Rg(),[t,n]=(0,j.useState)([]),[r,i]=(0,j.useState)(!1),[a,o]=(0,j.useState)(null),s=(0,j.useCallback)(async()=>{if(e?.oauth?.applications){i(!0),o(null);try{n((await e.oauth.applications.list())?.applications??[])}catch(e){o(e),n([])}finally{i(!1)}}},[e]);return(0,j.useEffect)(()=>{s()},[s]),{applications:t,loading:r,error:a,reload:s}}function eP(){let e=Rg(),[t,n]=(0,j.useState)(!1),[r,i]=(0,j.useState)(null),[a,o]=(0,j.useState)(null);return{register:(0,j.useCallback)(async t=>{if(!e?.oauth?.applications?.register)throw Error(`Client not ready`);n(!0),i(null);try{let n=await e.oauth.applications.register(t);return o(n),n}catch(e){throw i(e),e}finally{n(!1)}},[e]),registering:t,error:r,lastResult:a}}function tP(){let e=Rg(),[t,n]=(0,j.useState)(!1),[r,i]=(0,j.useState)(null);return{remove:(0,j.useCallback)(async t=>{if(!e?.oauth?.applications?.delete)throw Error(`Client not ready`);n(!0),i(null);try{return await e.oauth.applications.delete(t)}catch(e){throw i(e),e}finally{n(!1)}},[e]),deleting:t,error:r}}function nP(){let e=Rg(),[t,n]=(0,j.useState)(!1),[r,i]=(0,j.useState)(null);return{submit:(0,j.useCallback)(async t=>{if(!e?.oauth?.consent)throw Error(`Client not ready`);n(!0),i(null);try{return await e.oauth.consent(t)}catch(e){throw i(e),e}finally{n(!1)}},[e]),submitting:t,error:r}}var rP=sa(`/oauth/consent`)({validateSearch:e=>e,component:iP});function iP(){let{t:e}=vt(),t=N(),n=Rg(),{user:r,loading:i}=zM(),{submit:a,submitting:o}=nP(),[s,c]=(0,j.useState)(null),l=typeof window<`u`?window.location.search:``,u=l.startsWith(`?`)?l.slice(1):l,d=new URLSearchParams(u),f=d.get(`client_id`)??void 0,p=d.get(`scope`)??``;(0,j.useEffect)(()=>{i||r||t({to:`/login`,search:{redirect:window.location.pathname+window.location.search}})},[r,i,t]),(0,j.useEffect)(()=>{if(!f||!n?.oauth?.applications?.getPublic)return;let e=!1;return n.oauth.applications.getPublic(f).then(t=>{if(e)return;let n=t?.data??t;c({name:n?.name??n?.client_name,icon:n?.icon??n?.logo_uri})},()=>{}),()=>{e=!0}},[n,f]);let m=p.split(/\s+/).filter(Boolean),h=async t=>{try{let n=await a({accept:t,oauth_query:u}),r=n?.redirect_uri??n?.redirectURI??n?.url;if(r){window.location.href=r;return}q({title:e(t?`oauth.consent.granted`:`oauth.consent.denied`),description:e(`oauth.consent.noRedirect`),variant:t?void 0:`destructive`})}catch(t){q({title:e(`oauth.consent.failed`),description:t.message,variant:`destructive`})}},g=s?.name??f??e(`oauth.consent.unknownApp`);return(0,M.jsx)(`div`,{className:`flex min-h-svh w-full flex-1 items-center justify-center bg-background px-4`,children:(0,M.jsxs)($,{className:`w-full max-w-md`,children:[(0,M.jsxs)(sN,{className:`items-center text-center`,children:[(0,M.jsx)(`div`,{className:`mb-3 rounded-full border bg-muted p-3`,children:s?.icon?(0,M.jsx)(`img`,{src:s.icon,alt:``,className:`h-8 w-8 rounded`,onError:e=>e.currentTarget.style.display=`none`}):(0,M.jsx)(yy,{className:`h-7 w-7 text-muted-foreground`})}),(0,M.jsx)(cN,{className:`text-xl`,children:e(`oauth.consent.title`,{appName:g})}),(0,M.jsx)(lN,{children:e(`oauth.consent.request`,{appName:g,suffix:r?.email?` (${r.email})`:``})})]}),(0,M.jsxs)(uN,{className:`space-y-4`,children:[m.length>0&&(0,M.jsxs)(`div`,{children:[(0,M.jsx)(`p`,{className:`mb-2 text-sm font-medium`,children:e(`oauth.consent.willAllow`)}),(0,M.jsx)(`ul`,{className:`space-y-1.5 rounded-md border bg-muted/40 p-3 text-sm`,children:m.map(t=>(0,M.jsxs)(`li`,{className:`flex items-start gap-2`,children:[(0,M.jsx)(ry,{className:`mt-0.5 h-4 w-4 text-green-600 dark:text-green-400`}),(0,M.jsx)(`span`,{children:aP(t,e)})]},t))})]}),(0,M.jsxs)(`div`,{className:`grid grid-cols-2 gap-2 pt-2`,children:[(0,M.jsxs)(Q,{variant:`outline`,onClick:()=>h(!1),disabled:o,children:[(0,M.jsx)(Gy,{className:`mr-2 h-4 w-4`}),e(`oauth.consent.deny`)]}),(0,M.jsxs)(Q,{onClick:()=>h(!0),disabled:o,children:[(0,M.jsx)(ry,{className:`mr-2 h-4 w-4`}),e(o?`oauth.consent.submitting`:`oauth.consent.authorize`)]})]}),(0,M.jsx)(`p`,{className:`pt-2 text-center text-xs text-muted-foreground`,children:e(`oauth.consent.footer`)})]})]})})}function aP(e,t){switch(e){case`openid`:return t(`oauth.consent.scope.openid`);case`profile`:return t(`oauth.consent.scope.profile`);case`email`:return t(`oauth.consent.scope.email`);case`offline_access`:return t(`oauth.consent.scope.offlineAccess`);default:return e}}var oP=sa(`/auth/device`)({validateSearch:e=>({user_code:e.user_code??e.code??``}),component:cP});function sP({children:e}){return(0,M.jsx)(`div`,{className:`flex min-h-svh w-full flex-col items-center justify-center gap-6 bg-muted p-6 md:p-10`,children:(0,M.jsxs)(`div`,{className:`flex w-full max-w-sm flex-col gap-6`,children:[(0,M.jsxs)(`a`,{href:`#`,className:`flex items-center gap-2 self-center font-medium`,children:[(0,M.jsx)(`div`,{className:`flex size-6 items-center justify-center rounded-md bg-primary text-primary-foreground`,children:(0,M.jsx)(hy,{className:`size-4`})}),`ObjectStack`]}),(0,M.jsx)(`div`,{className:`flex flex-col gap-6`,children:e})]})})}function cP(){let{t:e}=vt(),{user_code:t}=oP.useSearch(),{user:n,loading:r}=zM(),i=N(),[a,o]=(0,j.useState)(!1),[s,c]=(0,j.useState)(!1),[l,u]=(0,j.useState)(!1),[d,f]=(0,j.useState)(!1),[p,m]=(0,j.useState)(``);return t?r?(0,M.jsx)(sP,{children:(0,M.jsx)($,{children:(0,M.jsx)(sN,{className:`text-center`,children:(0,M.jsx)(lN,{children:e(`auth.device.loading`)})})})}):n?l?(0,M.jsx)(sP,{children:(0,M.jsx)($,{children:(0,M.jsxs)(sN,{className:`text-center`,children:[(0,M.jsx)(cy,{className:`h-10 w-10 text-green-500 mx-auto mb-2`}),(0,M.jsx)(cN,{children:e(`auth.device.approvedTitle`)}),(0,M.jsx)(lN,{children:e(`auth.device.approvedDescription`)})]})})}):d?(0,M.jsx)(sP,{children:(0,M.jsx)($,{children:(0,M.jsxs)(sN,{className:`text-center`,children:[(0,M.jsx)(cN,{children:e(`auth.device.deniedTitle`)}),(0,M.jsx)(lN,{children:e(`auth.device.deniedDescription`)})]})})}):(0,M.jsx)(sP,{children:(0,M.jsxs)($,{children:[(0,M.jsxs)(sN,{className:`text-center`,children:[(0,M.jsx)(cN,{children:e(`auth.device.title`)}),(0,M.jsx)(lN,{children:e(`auth.device.subtitle`,{email:n.email})})]}),(0,M.jsxs)(uN,{className:`space-y-4`,children:[(0,M.jsxs)(`div`,{className:`rounded-md border bg-background px-4 py-3 text-center`,children:[(0,M.jsx)(`p`,{className:`text-xs text-muted-foreground mb-1`,children:e(`auth.device.userCodeLabel`)}),(0,M.jsx)(`p`,{className:`font-mono font-semibold tracking-widest text-lg`,children:t})]}),(0,M.jsxs)(`div`,{className:`space-y-4`,children:[(0,M.jsx)(`p`,{className:`text-sm text-center text-muted-foreground`,children:e(`auth.device.loggedInAs`,{email:n.email})}),p&&(0,M.jsx)(`p`,{className:`text-sm text-destructive text-center`,children:p}),(0,M.jsx)(Q,{onClick:async()=>{m(``),o(!0);try{let n=await fetch(`/api/v1/auth/device/approve`,{method:`POST`,headers:{"Content-Type":`application/json`},credentials:`include`,body:JSON.stringify({userCode:t})});if(!n.ok){let t=await n.json().catch(()=>({}));throw Error(t?.message??t?.error?.message??e(`auth.device.approveFailed`))}u(!0),q({title:e(`auth.device.approveSuccess`),description:e(`auth.device.approveSuccessDescription`)})}catch(t){m(t?.message??e(`auth.device.approveFailed`))}finally{o(!1)}},className:`w-full`,disabled:a||s,children:e(a?`auth.device.approving`:`auth.device.approve`)}),(0,M.jsx)(Q,{onClick:async()=>{m(``),c(!0);try{await fetch(`/api/v1/auth/device/deny`,{method:`POST`,headers:{"Content-Type":`application/json`},credentials:`include`,body:JSON.stringify({userCode:t})}),f(!0)}catch(t){m(t?.message??e(`auth.device.denyFailed`))}finally{c(!1)}},variant:`outline`,className:`w-full`,disabled:a||s,children:e(s?`auth.device.denying`:`auth.device.deny`)}),(0,M.jsx)(`div`,{className:`text-center`,children:(0,M.jsx)(`button`,{type:`button`,className:`text-sm text-muted-foreground underline-offset-4 hover:underline`,onClick:()=>i({to:`/`}),children:e(`auth.device.cancel`)})})]})]})]})}):(0,M.jsx)(Vi,{to:`/login`,search:{redirect:`/auth/device?user_code=${encodeURIComponent(t)}`}}):(0,M.jsx)(sP,{children:(0,M.jsx)($,{children:(0,M.jsxs)(sN,{className:`text-center`,children:[(0,M.jsx)(cN,{children:e(`auth.device.invalidTitle`)}),(0,M.jsx)(lN,{children:e(`auth.device.invalidDescription`)})]})})})}var lP=sa(`/account/two-factor`)({component:uP});function uP(){let{t:e}=vt(),t=Rg(),{user:n,loading:r,refresh:i}=zM(),[a,o]=(0,j.useState)(null),[s,c]=(0,j.useState)(``),[l,u]=(0,j.useState)(!1),[d,f]=(0,j.useState)(null),[p,m]=(0,j.useState)(null),[h,g]=(0,j.useState)(!1),[_,v]=(0,j.useState)(``),[y,b]=(0,j.useState)(!1),[x,S]=(0,j.useState)(``),[C,w]=(0,j.useState)(!1),[T,E]=(0,j.useState)(``),[D,O]=(0,j.useState)(!1),[ee,te]=(0,j.useState)(null);(0,j.useEffect)(()=>{r||o(!!n?.twoFactorEnabled)},[r,n?.twoFactorEnabled]);let ne=async n=>{n.preventDefault(),u(!0);try{let e=await t.auth.twoFactor.enable({password:s});f(e?.totpURI??null),m(e?.backupCodes??null),c(``)}catch(t){q({title:e(`twoFactor.enableFailed`),description:t.message,variant:`destructive`})}finally{u(!1)}},re=async n=>{n.preventDefault(),b(!0);try{await t.auth.twoFactor.verifyTotp({code:_,trustDevice:h}),q({title:e(`twoFactor.enableSuccess`)}),o(!0),f(null),v(``),await i()}catch(t){q({title:e(`twoFactor.invalidCode`),description:t.message,variant:`destructive`})}finally{b(!1)}},ie=async n=>{n.preventDefault(),w(!0);try{await t.auth.twoFactor.disable({password:x}),q({title:e(`twoFactor.disableSuccess`)}),o(!1),S(``),te(null),await i()}catch(t){q({title:e(`twoFactor.disableFailed`),description:t.message,variant:`destructive`})}finally{w(!1)}},ae=async n=>{n.preventDefault(),O(!0);try{te((await t.auth.twoFactor.generateBackupCodes({password:T}))?.backupCodes??[]),E(``),q({title:e(`twoFactor.backupCodes.regenerated`)})}catch(t){q({title:e(`twoFactor.backupCodes.regenerateFailed`),description:t.message,variant:`destructive`})}finally{O(!1)}},oe=async t=>{try{await navigator.clipboard.writeText(t.join(`
118
118
  `)),q({title:e(`twoFactor.backupCodes.copied`)})}catch{q({title:e(`twoFactor.backupCodes.copyFailed`),variant:`destructive`})}},k=(0,M.jsx)(HN,{icon:My,title:e(`twoFactor.title`),description:e(`twoFactor.notEnabledDescription`),actions:a===!0?(0,M.jsx)(VN,{className:`border-transparent bg-emerald-500/15 font-medium text-emerald-600 dark:text-emerald-400`,children:e(`twoFactor.enabled`)}):a===!1?(0,M.jsx)(VN,{variant:`outline`,className:`font-medium`,children:e(`twoFactor.notEnabled`)}):null});if(a===null)return(0,M.jsxs)(`div`,{className:`space-y-6`,children:[k,(0,M.jsxs)($,{children:[(0,M.jsx)(sN,{children:(0,M.jsx)(cN,{className:`text-base`,children:e(`twoFactor.loadingStatus`)})}),(0,M.jsxs)(uN,{className:`space-y-2`,children:[(0,M.jsx)(Mw,{className:`h-4 w-48`}),(0,M.jsx)(Mw,{className:`h-9 w-full`}),(0,M.jsx)(Mw,{className:`h-9 w-32`})]})]})]});if(d){let t=`https://api.qrserver.com/v1/create-qr-code/?size=200x200&data=${encodeURIComponent(d)}`;return(0,M.jsxs)(`div`,{className:`space-y-6`,children:[k,(0,M.jsxs)($,{children:[(0,M.jsxs)(sN,{children:[(0,M.jsx)(cN,{className:`text-base`,children:e(`twoFactor.setupTitle`)}),(0,M.jsx)(lN,{children:e(`twoFactor.setupDescription`)})]}),(0,M.jsxs)(uN,{className:`space-y-4`,children:[(0,M.jsxs)(`div`,{className:`flex flex-col items-center gap-3`,children:[(0,M.jsx)(`img`,{src:t,alt:e(`twoFactor.qrAlt`),width:200,height:200,className:`rounded border bg-white p-2`}),(0,M.jsx)(`div`,{className:`w-full rounded bg-muted p-3 font-mono text-xs break-all`,children:d}),(0,M.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:e(`twoFactor.uriHint`)})]}),p&&p.length>0&&(0,M.jsxs)(`div`,{className:`rounded border bg-muted/40 p-3`,children:[(0,M.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,M.jsx)(`p`,{className:`text-sm font-medium`,children:e(`twoFactor.backupCodes.savedTitle`)}),(0,M.jsxs)(Q,{type:`button`,variant:`ghost`,size:`sm`,onClick:()=>oe(p),children:[(0,M.jsx)(py,{className:`mr-1 h-3 w-3`}),e(`twoFactor.backupCodes.copy`)]})]}),(0,M.jsx)(`p`,{className:`mt-1 text-xs text-muted-foreground`,children:e(`twoFactor.backupCodes.savedHint`)}),(0,M.jsx)(`div`,{className:`mt-2 grid grid-cols-2 gap-1 font-mono text-xs`,children:p.map(e=>(0,M.jsx)(`span`,{className:`rounded bg-background px-2 py-1`,children:e},e))})]}),(0,M.jsx)(Yx,{}),(0,M.jsxs)(`form`,{onSubmit:re,className:`space-y-3`,children:[(0,M.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,M.jsx)(yN,{htmlFor:`totp-code`,children:e(`twoFactor.verificationCode`)}),(0,M.jsx)(Vx,{id:`totp-code`,placeholder:`000000`,maxLength:6,inputMode:`numeric`,autoComplete:`one-time-code`,value:_,onChange:e=>v(e.target.value),required:!0})]}),(0,M.jsxs)(`label`,{className:`flex items-center gap-2 text-sm`,children:[(0,M.jsx)(`input`,{type:`checkbox`,checked:h,onChange:e=>g(e.target.checked)}),e(`twoFactor.trustDevice`)]}),(0,M.jsxs)(`div`,{className:`flex gap-2`,children:[(0,M.jsx)(Q,{type:`submit`,disabled:y||_.length<6,children:e(y?`twoFactor.verifying`:`twoFactor.verify`)}),(0,M.jsx)(Q,{type:`button`,variant:`outline`,onClick:()=>f(null),children:e(`twoFactor.cancel`)})]})]})]})]})]})}return a===!0?(0,M.jsxs)(`div`,{className:`space-y-6`,children:[k,(0,M.jsxs)($,{children:[(0,M.jsxs)(sN,{children:[(0,M.jsx)(cN,{className:`text-base`,children:e(`twoFactor.enabledTitle`,{defaultValue:`Authenticator app`})}),(0,M.jsx)(lN,{children:e(`twoFactor.enabledDescription`)})]}),(0,M.jsx)(uN,{children:(0,M.jsxs)(`form`,{onSubmit:ie,className:`space-y-4`,children:[(0,M.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,M.jsx)(yN,{htmlFor:`disable-password`,children:e(`twoFactor.password`)}),(0,M.jsx)(Vx,{id:`disable-password`,type:`password`,autoComplete:`current-password`,required:!0,value:x,onChange:e=>S(e.target.value)})]}),(0,M.jsx)(Q,{variant:`destructive`,type:`submit`,disabled:C,children:e(C?`twoFactor.disabling`:`twoFactor.disable`)})]})})]}),(0,M.jsxs)($,{children:[(0,M.jsxs)(sN,{children:[(0,M.jsxs)(cN,{className:`text-base flex items-center gap-2`,children:[(0,M.jsx)(yy,{className:`h-4 w-4`}),e(`twoFactor.backupCodes.title`)]}),(0,M.jsx)(lN,{children:e(`twoFactor.backupCodes.description`)})]}),(0,M.jsxs)(uN,{className:`space-y-4`,children:[(0,M.jsxs)(`form`,{onSubmit:ae,className:`space-y-3`,children:[(0,M.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,M.jsx)(yN,{htmlFor:`backup-password`,children:e(`twoFactor.password`)}),(0,M.jsx)(Vx,{id:`backup-password`,type:`password`,autoComplete:`current-password`,required:!0,value:T,onChange:e=>E(e.target.value)})]}),(0,M.jsxs)(Q,{type:`submit`,variant:`outline`,disabled:D,children:[(0,M.jsx)(ky,{className:`mr-2 h-4 w-4`}),e(D?`common.saving`:`twoFactor.backupCodes.regenerate`)]})]}),ee&&ee.length>0&&(0,M.jsxs)(`div`,{className:`rounded border bg-muted/40 p-3`,children:[(0,M.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,M.jsx)(`p`,{className:`text-sm font-medium`,children:e(`twoFactor.backupCodes.newTitle`)}),(0,M.jsxs)(Q,{type:`button`,variant:`ghost`,size:`sm`,onClick:()=>oe(ee),children:[(0,M.jsx)(py,{className:`mr-1 h-3 w-3`}),e(`twoFactor.backupCodes.copy`)]})]}),(0,M.jsx)(`p`,{className:`mt-1 text-xs text-muted-foreground`,children:e(`twoFactor.backupCodes.savedHint`)}),(0,M.jsx)(`div`,{className:`mt-2 grid grid-cols-2 gap-1 font-mono text-xs`,children:ee.map(e=>(0,M.jsx)(`span`,{className:`rounded bg-background px-2 py-1`,children:e},e))})]})]})]})]}):(0,M.jsxs)(`div`,{className:`space-y-6`,children:[k,(0,M.jsxs)($,{children:[(0,M.jsxs)(sN,{children:[(0,M.jsx)(cN,{className:`text-base`,children:e(`twoFactor.enable`)}),(0,M.jsx)(lN,{children:e(`twoFactor.notEnabledDescription`)})]}),(0,M.jsx)(uN,{children:(0,M.jsxs)(`form`,{onSubmit:ne,className:`space-y-4`,children:[(0,M.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,M.jsx)(yN,{htmlFor:`enable-password`,children:e(`twoFactor.password`)}),(0,M.jsx)(Vx,{id:`enable-password`,type:`password`,autoComplete:`current-password`,required:!0,value:s,onChange:e=>c(e.target.value),placeholder:e(`twoFactor.passwordPlaceholder`)})]}),(0,M.jsx)(Q,{type:`submit`,disabled:l,className:`bg-brand-gradient text-primary-foreground shadow-sm shadow-primary/20 transition-all hover:opacity-95 hover:shadow-md hover:shadow-primary/30`,children:e(l?`twoFactor.loading`:`twoFactor.enable`)})]})})]})]})}var dP=[[/Edg\//i,`Edge`],[/OPR\//i,`Opera`],[/Chrome\//i,`Chrome`],[/Firefox\//i,`Firefox`],[/Safari\//i,`Safari`]],fP=[[/Windows NT 10/i,`Windows 10/11`],[/Windows/i,`Windows`],[/Mac OS X|Macintosh/i,`macOS`],[/iPhone|iOS/i,`iOS`],[/iPad/i,`iPadOS`],[/Android/i,`Android`],[/Linux/i,`Linux`]];function pP(e){if(!e)return{browser:`Unknown`,os:`Unknown`,device:`desktop`,label:`Unknown device`,icon:gy};let t=dP.find(([t])=>t.test(e))?.[1]??`Browser`,n=fP.find(([t])=>t.test(e))?.[1]??`Unknown OS`,r=/iPad|Tablet/i.test(e),i=!r&&/Mobile|Android|iPhone|iPod/i.test(e),a=r?`tablet`:i?`mobile`:`desktop`,o=Ty;return o=a===`mobile`?Py:a===`tablet`?Iy:/Linux|Windows|Mac/i.test(e)?Ty:gy,{browser:t,os:n,device:a,label:`${t} · ${n}`,icon:o}}var mP=sa(`/account/sessions`)({component:hP});function hP(){let{t:e}=vt(),t=Rg(),{session:n}=zM(),[r,i]=(0,j.useState)([]),[a,o]=(0,j.useState)(!0),[s,c]=(0,j.useState)(null),[l,u]=(0,j.useState)(!1),d=async()=>{try{i((await t.auth.sessions.list())?.sessions??[])}catch(t){q({title:e(`sessions.loadFailed`),description:t.message,variant:`destructive`})}finally{o(!1)}};(0,j.useEffect)(()=>{d()},[]);let f=async n=>{c(n);try{await t.auth.sessions.revoke(n),q({title:e(`sessions.revoked`)}),await d()}catch(t){q({title:e(`sessions.revokeFailed`),description:t.message,variant:`destructive`})}finally{c(null)}},p=async()=>{u(!0);try{await t.auth.sessions.revokeOthers(),q({title:e(`sessions.othersRevoked`)}),await d()}catch(t){q({title:e(`sessions.revokeOthersFailed`),description:t.message,variant:`destructive`})}finally{u(!1)}},m=n?.token,h=r.find(e=>e.token===m),g=r.filter(e=>e.token!==m);return(0,M.jsxs)(`div`,{className:`space-y-6`,children:[(0,M.jsx)(HN,{icon:Ty,title:e(`sessions.title`),description:e(`sessions.description`),actions:r.length>1?(0,M.jsxs)(Q,{variant:`outline`,size:`sm`,onClick:p,disabled:l,children:[(0,M.jsx)(Cy,{className:`mr-2 h-4 w-4`}),e(l?`sessions.revokingOthers`:`sessions.revokeOthers`)]}):null}),a&&(0,M.jsx)(`div`,{className:`space-y-3`,children:[0,1,2].map(e=>(0,M.jsx)($,{className:`overflow-hidden`,children:(0,M.jsxs)(uN,{className:`flex items-center gap-3 p-4`,children:[(0,M.jsx)(Mw,{className:`size-10 rounded-lg`}),(0,M.jsxs)(`div`,{className:`flex-1 space-y-2`,children:[(0,M.jsx)(Mw,{className:`h-4 w-40`}),(0,M.jsx)(Mw,{className:`h-3 w-64`})]})]})},e))}),!a&&r.length===0&&(0,M.jsx)($,{children:(0,M.jsxs)(uN,{className:`flex flex-col items-center gap-3 p-10 text-center text-sm text-muted-foreground`,children:[(0,M.jsx)(Ty,{className:`size-10 text-muted-foreground/50`}),e(`sessions.empty`)]})}),!a&&h&&(0,M.jsx)(gP,{session:h,isCurrent:!0,revoking:!1,onRevoke:()=>void 0,t:e}),!a&&g.length>0&&(0,M.jsxs)(`div`,{className:`space-y-3`,children:[(0,M.jsx)(`p`,{className:`text-xs font-medium uppercase tracking-wider text-muted-foreground`,children:e(`sessions.otherDevices`,{defaultValue:`Other signed-in devices`})}),(0,M.jsx)(`div`,{className:`space-y-2`,children:g.map(t=>(0,M.jsx)(gP,{session:t,isCurrent:!1,revoking:s===t.token,onRevoke:()=>f(t.token),t:e},t.id))})]})]})}function gP({session:e,isCurrent:t,revoking:n,onRevoke:r,t:i}){let a=pP(e.userAgent),o=a.icon;return(0,M.jsx)($,{className:t?`border-primary/40 bg-brand-gradient-subtle shadow-sm shadow-primary/10`:`transition-colors hover:bg-accent/30`,children:(0,M.jsxs)(uN,{className:`flex items-center gap-3 p-4`,children:[(0,M.jsx)(`div`,{className:`flex size-10 shrink-0 items-center justify-center rounded-lg `+(t?`bg-brand-gradient text-primary-foreground shadow-sm shadow-primary/30`:`bg-muted text-muted-foreground`),children:(0,M.jsx)(o,{className:`size-5`})}),(0,M.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,M.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,M.jsx)(`span`,{className:`truncate text-sm font-medium`,children:a.label}),t&&(0,M.jsx)(VN,{className:`border-transparent bg-emerald-500/15 text-[10px] font-medium text-emerald-600 dark:text-emerald-400`,children:i(`sessions.current`)})]}),(0,M.jsxs)(`div`,{className:`mt-1 flex flex-wrap items-center gap-x-3 gap-y-1 text-xs text-muted-foreground`,children:[e.ipAddress&&(0,M.jsx)(`span`,{className:`font-mono`,children:e.ipAddress}),(0,M.jsx)(`span`,{children:i(`sessions.expires`,{date:new Date(e.expiresAt).toLocaleDateString()})})]})]}),!t&&(0,M.jsxs)(Q,{variant:`ghost`,size:`sm`,onClick:r,disabled:n,className:`ml-3 shrink-0 text-muted-foreground hover:text-destructive`,children:[(0,M.jsx)(Cy,{className:`mr-1.5 h-4 w-4`}),i(`sessions.revoke`,{defaultValue:`Revoke`})]})]})})}var _P=gw,vP=_w,yP=j.forwardRef(({className:e,...t},n)=>(0,M.jsx)(vw,{ref:n,className:Z(`fixed inset-0 z-50 bg-black/80 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0`,e),...t}));yP.displayName=vw.displayName;var bP=j.forwardRef(({className:e,children:t,...n},r)=>(0,M.jsxs)(vP,{children:[(0,M.jsx)(yP,{}),(0,M.jsxs)(yw,{ref:r,className:Z(`fixed left-[50%] top-[50%] z-50 grid w-full max-w-lg translate-x-[-50%] translate-y-[-50%] gap-4 border bg-background p-6 shadow-lg duration-200 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-1/2 data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-1/2 sm:rounded-lg`,e),...n,children:[t,(0,M.jsxs)(Sw,{className:`absolute right-4 top-4 rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none data-[state=open]:bg-accent data-[state=open]:text-muted-foreground`,children:[(0,M.jsx)(Gy,{className:`h-4 w-4`}),(0,M.jsx)(`span`,{className:`sr-only`,children:`Close`})]})]})]}));bP.displayName=yw.displayName;var xP=({className:e,...t})=>(0,M.jsx)(`div`,{className:Z(`flex flex-col space-y-1.5 text-center sm:text-left`,e),...t});xP.displayName=`DialogHeader`;var SP=({className:e,...t})=>(0,M.jsx)(`div`,{className:Z(`flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2`,e),...t});SP.displayName=`DialogFooter`;var CP=j.forwardRef(({className:e,...t},n)=>(0,M.jsx)(bw,{ref:n,className:Z(`text-lg font-semibold leading-none tracking-tight`,e),...t}));CP.displayName=bw.displayName;var wP=j.forwardRef(({className:e,...t},n)=>(0,M.jsx)(xw,{ref:n,className:Z(`text-sm text-muted-foreground`,e),...t}));wP.displayName=xw.displayName;var TP=sa(`/account/security`)({component:EP});function EP(){let{t:e}=vt(),t=Rg(),n=N(),{user:r,logout:i}=zM(),[a,o]=(0,j.useState)(``),[s,c]=(0,j.useState)(``),[l,u]=(0,j.useState)(``),[d,f]=(0,j.useState)(!0),[p,m]=(0,j.useState)(!1),[h,g]=(0,j.useState)(``),[_,v]=(0,j.useState)(!1),[y,b]=(0,j.useState)(!1),[x,S]=(0,j.useState)(``),[C,w]=(0,j.useState)(``),[T,E]=(0,j.useState)(!1);return(0,M.jsxs)(`div`,{className:`space-y-6`,children:[(0,M.jsx)(HN,{icon:Ny,title:e(`security.title`),description:e(`security.description`)}),(0,M.jsxs)($,{children:[(0,M.jsxs)(sN,{children:[(0,M.jsxs)(cN,{className:`text-base flex items-center gap-2`,children:[(0,M.jsx)(Ny,{className:`h-4 w-4 text-primary`}),e(`security.changePasswordTitle`,{defaultValue:`Change password`})]}),(0,M.jsx)(lN,{children:e(`security.changePasswordDescription`,{defaultValue:`Use at least 8 characters. Mix letters, numbers and symbols for strength.`})})]}),(0,M.jsx)(uN,{children:(0,M.jsxs)(`form`,{onSubmit:async n=>{if(n.preventDefault(),s!==l){q({title:e(`security.passwordsMismatch`),variant:`destructive`});return}m(!0);try{await t.auth.changePassword({currentPassword:a,newPassword:s,revokeOtherSessions:d}),q({title:e(`security.changed`)}),o(``),c(``),u(``)}catch(t){q({title:e(`security.changeFailed`),description:t.message,variant:`destructive`})}finally{m(!1)}},className:`space-y-4`,children:[(0,M.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,M.jsx)(yN,{htmlFor:`current-password`,children:e(`security.currentPassword`)}),(0,M.jsx)(Vx,{id:`current-password`,type:`password`,autoComplete:`current-password`,required:!0,value:a,onChange:e=>o(e.target.value)})]}),(0,M.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,M.jsx)(yN,{htmlFor:`new-password`,children:e(`security.newPassword`)}),(0,M.jsx)(Vx,{id:`new-password`,type:`password`,autoComplete:`new-password`,required:!0,minLength:8,value:s,onChange:e=>c(e.target.value)})]}),(0,M.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,M.jsx)(yN,{htmlFor:`confirm-new-password`,children:e(`security.confirmPassword`)}),(0,M.jsx)(Vx,{id:`confirm-new-password`,type:`password`,autoComplete:`new-password`,required:!0,minLength:8,value:l,onChange:e=>u(e.target.value)})]}),(0,M.jsxs)(`label`,{className:`flex items-center gap-2 text-sm`,children:[(0,M.jsx)(`input`,{type:`checkbox`,checked:d,onChange:e=>f(e.target.checked)}),e(`security.revokeOtherSessions`)]}),(0,M.jsx)(Q,{type:`submit`,disabled:p,children:e(p?`common.saving`:`security.submit`)})]})})]}),(0,M.jsxs)($,{children:[(0,M.jsxs)(sN,{children:[(0,M.jsxs)(cN,{className:`text-base flex items-center gap-2`,children:[(0,M.jsx)(wy,{className:`h-4 w-4 text-primary`}),e(`security.email.title`)]}),(0,M.jsx)(lN,{children:e(`security.email.description`)})]}),(0,M.jsx)(uN,{children:(0,M.jsxs)(`form`,{onSubmit:async n=>{if(n.preventDefault(),!(!h||h===r?.email)){v(!0);try{await t.auth.changeEmail({newEmail:h,callbackURL:window.location.origin+`/login`}),q({title:e(`security.email.requested`),description:e(`security.email.checkInbox`,{email:h})}),g(``)}catch(t){q({title:e(`security.email.requestFailed`),description:t.message,variant:`destructive`})}finally{v(!1)}}},className:`space-y-4`,children:[(0,M.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,M.jsx)(yN,{htmlFor:`current-email`,children:e(`security.email.current`)}),(0,M.jsx)(Vx,{id:`current-email`,value:r?.email??``,disabled:!0})]}),(0,M.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,M.jsx)(yN,{htmlFor:`new-email`,children:e(`security.email.new`)}),(0,M.jsx)(Vx,{id:`new-email`,type:`email`,value:h,onChange:e=>g(e.target.value),placeholder:e(`security.email.placeholder`),required:!0})]}),(0,M.jsx)(Q,{type:`submit`,disabled:_||!h||h===r?.email,children:e(_?`common.saving`:`security.email.submit`)})]})})]}),(0,M.jsxs)($,{className:`border-destructive/40 bg-destructive/5`,children:[(0,M.jsxs)(sN,{children:[(0,M.jsxs)(cN,{className:`text-base flex items-center gap-2 text-destructive`,children:[(0,M.jsx)(Ry,{className:`h-4 w-4`}),e(`security.delete.title`)]}),(0,M.jsx)(lN,{children:e(`security.delete.description`)})]}),(0,M.jsx)(uN,{children:(0,M.jsxs)(Q,{variant:`destructive`,onClick:()=>b(!0),children:[(0,M.jsx)(Ly,{className:`mr-2 h-4 w-4`}),e(`security.delete.cta`)]})})]}),(0,M.jsx)(_P,{open:y,onOpenChange:b,children:(0,M.jsxs)(bP,{children:[(0,M.jsxs)(xP,{children:[(0,M.jsx)(CP,{children:e(`security.delete.dialogTitle`)}),(0,M.jsx)(wP,{children:e(`security.delete.dialogDescription`,{email:r?.email??``})})]}),(0,M.jsxs)(`div`,{className:`space-y-4`,children:[(0,M.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,M.jsx)(yN,{htmlFor:`delete-password`,children:e(`security.delete.password`)}),(0,M.jsx)(Vx,{id:`delete-password`,type:`password`,autoComplete:`current-password`,value:x,onChange:e=>S(e.target.value)})]}),(0,M.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,M.jsx)(yN,{htmlFor:`delete-confirm`,children:e(`security.delete.typeEmail`,{email:r?.email??``})}),(0,M.jsx)(Vx,{id:`delete-confirm`,value:C,onChange:e=>w(e.target.value),placeholder:r?.email??``})]})]}),(0,M.jsxs)(SP,{children:[(0,M.jsx)(Q,{variant:`outline`,onClick:()=>b(!1),disabled:T,children:e(`common.cancel`)}),(0,M.jsx)(Q,{variant:`destructive`,onClick:async()=>{if(C!==r?.email){q({title:e(`security.delete.confirmationMismatch`),description:e(`security.delete.confirmationHint`,{email:r?.email??``}),variant:`destructive`});return}E(!0);try{await t.auth.deleteUser({password:x}),q({title:e(`security.delete.success`)});try{await i()}catch{}n({to:`/login`,replace:!0})}catch(t){q({title:e(`security.delete.failed`),description:t.message,variant:`destructive`})}finally{E(!1)}},disabled:T||C!==r?.email,children:e(T?`common.saving`:`security.delete.confirm`)})]})]})})]})}var DP=sa(`/account/profile`)({component:OP});function OP(){let{t:e}=vt(),t=Rg(),{user:n,refresh:r}=zM(),[i,a]=(0,j.useState)(n?.name??``),[o,s]=(0,j.useState)(n?.image??null),[c,l]=(0,j.useState)(!1),[u,d]=(0,j.useState)(!1),f=(0,j.useRef)(null);(0,j.useEffect)(()=>{a(n?.name??``),s(n?.image??null)},[n?.id,n?.name,n?.image]);let p=async n=>{n.preventDefault(),l(!0);try{await t.auth.updateUser({name:i,image:o}),await r(),q({title:e(`profile.updated`)})}catch(t){q({title:e(`profile.updateFailed`),description:t.message,variant:`destructive`})}finally{l(!1)}},m=()=>f.current?.click(),h=async n=>{let i=n.target.files?.[0];if(n.target.value=``,i){d(!0);try{if(!t?.storage?.upload)throw Error(e(`profile.avatarStorageUnavailable`));let n=await t.storage.upload(i,`user`),a=n?.data?.url??n?.url;if(!a)throw Error(`Upload returned no URL`);s(a),await t.auth.updateUser({image:a}),await r(),q({title:e(`profile.avatarUpdated`)})}catch(t){q({title:e(`profile.avatarUploadFailed`),description:t.message,variant:`destructive`})}finally{d(!1)}}},g=(n?.name??n?.email??`?`).split(/\s+/).map(e=>e[0]).join(``).slice(0,2).toUpperCase();return(0,M.jsxs)(`div`,{className:`space-y-6`,children:[(0,M.jsxs)(`div`,{className:`relative overflow-hidden rounded-xl border bg-card`,children:[(0,M.jsx)(`div`,{className:`absolute inset-x-0 top-0 h-24 bg-brand-gradient`,"aria-hidden":!0}),(0,M.jsx)(`div`,{className:`absolute inset-x-0 top-0 h-24 opacity-30`,style:{backgroundImage:`radial-gradient(ellipse at 20% 0%, rgba(255,255,255,0.4), transparent 60%)`},"aria-hidden":!0}),(0,M.jsx)(`div`,{className:`relative px-5 pb-5 pt-12 sm:px-6 sm:pb-6 sm:pt-16`,children:(0,M.jsxs)(`div`,{className:`flex flex-col gap-4 sm:flex-row sm:items-end sm:gap-5`,children:[(0,M.jsxs)(AM,{className:`size-20 shrink-0 ring-4 ring-card shadow-md`,children:[o?(0,M.jsx)(jM,{src:o,alt:n?.name??``}):null,(0,M.jsx)(MM,{className:`bg-brand-gradient text-base font-semibold text-primary-foreground`,children:g})]}),(0,M.jsxs)(`div`,{className:`min-w-0 flex-1 space-y-1`,children:[(0,M.jsx)(`h2`,{className:`truncate text-xl font-semibold tracking-tight`,children:n?.name||e(`profile.namePlaceholder`)}),(0,M.jsx)(`p`,{className:`truncate text-sm text-muted-foreground`,children:n?.email})]}),(0,M.jsxs)(Q,{type:`button`,variant:`outline`,size:`sm`,onClick:m,disabled:u,className:`self-start sm:self-auto`,children:[(0,M.jsx)(zy,{className:`mr-2 h-4 w-4`}),e(u?`profile.avatarUploading`:`profile.changeAvatar`)]}),(0,M.jsx)(`input`,{ref:f,type:`file`,accept:`image/*`,className:`hidden`,onChange:h})]})})]}),(0,M.jsxs)($,{children:[(0,M.jsxs)(sN,{children:[(0,M.jsx)(cN,{className:`text-base`,children:e(`profile.title`)}),(0,M.jsx)(lN,{children:e(`profile.description`)})]}),(0,M.jsx)(uN,{children:(0,M.jsxs)(`form`,{onSubmit:p,className:`space-y-4`,children:[(0,M.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,M.jsx)(yN,{htmlFor:`profile-email`,children:e(`profile.email`)}),(0,M.jsx)(Vx,{id:`profile-email`,value:n?.email??``,disabled:!0})]}),(0,M.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,M.jsx)(yN,{htmlFor:`profile-name`,children:e(`profile.name`)}),(0,M.jsx)(Vx,{id:`profile-name`,value:i,onChange:e=>a(e.target.value),placeholder:e(`profile.namePlaceholder`)})]}),(0,M.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:e(`profile.avatarHint`)}),(0,M.jsx)(Q,{type:`submit`,disabled:c,className:`bg-brand-gradient text-primary-foreground shadow-sm shadow-primary/20 transition-all hover:opacity-95 hover:shadow-md hover:shadow-primary/30`,children:e(c?`common.saving`:`profile.save`)})]})})]})]})}var kP=sa(`/account/linked-accounts`)({component:jP}),AP={google:`Google`,github:`GitHub`,microsoft:`Microsoft`,apple:`Apple`,discord:`Discord`,gitlab:`GitLab`,twitter:`Twitter / X`,facebook:`Facebook`};function jP(){let{t:e}=vt(),t=Rg(),[n,r]=(0,j.useState)([]),[i,a]=(0,j.useState)(!0),[o,s]=(0,j.useState)(null),c=(0,j.useCallback)(async()=>{if(t?.auth?.accounts){a(!0);try{let e=await t.auth.accounts.list();r(e?.accounts??e?.data??(Array.isArray(e)?e:[]))}catch{r([])}finally{a(!1)}}},[t]);(0,j.useEffect)(()=>{c()},[c]);let l=async n=>{if(confirm(e(`linkedAccounts.unlinkConfirm`,{provider:AP[n.providerId]??n.providerId}))){s(n.id);try{await t.auth.accounts.unlink({providerId:n.providerId,accountId:n.accountId}),q({title:e(`linkedAccounts.unlinked`)}),await c()}catch(t){q({title:e(`linkedAccounts.unlinkFailed`),description:t.message,variant:`destructive`})}finally{s(null)}}},u=async n=>{try{let r=await t.auth.accounts.linkSocial({provider:n,callbackURL:window.location.href}),i=r?.url??r?.data?.url;i?window.location.assign(i):q({title:e(`linkedAccounts.linkFailed`),variant:`destructive`})}catch(t){q({title:e(`linkedAccounts.linkFailed`),description:t.message,variant:`destructive`})}},d=new Set(n.map(e=>e.providerId)),f=Object.keys(AP).filter(e=>!d.has(e));return(0,M.jsxs)(`div`,{className:`space-y-6`,children:[(0,M.jsx)(HN,{icon:Sy,title:e(`linkedAccounts.title`),description:e(`linkedAccounts.description`)}),(0,M.jsxs)($,{children:[(0,M.jsxs)(sN,{children:[(0,M.jsx)(cN,{className:`text-base`,children:e(`linkedAccounts.connectedTitle`,{defaultValue:`Connected providers`})}),(0,M.jsx)(lN,{children:e(`linkedAccounts.connectedDescription`,{defaultValue:`Sign-in providers currently linked to this account.`})})]}),(0,M.jsxs)(uN,{children:[i&&(0,M.jsxs)(`div`,{className:`space-y-3`,children:[(0,M.jsx)(Mw,{className:`h-12 w-full`}),(0,M.jsx)(Mw,{className:`h-12 w-full`})]}),!i&&n.length===0&&(0,M.jsxs)(`div`,{className:`text-center py-8`,children:[(0,M.jsx)(Sy,{className:`mx-auto h-12 w-12 text-muted-foreground/50`}),(0,M.jsx)(`p`,{className:`mt-4 text-sm text-muted-foreground`,children:e(`linkedAccounts.empty`)})]}),!i&&n.length>0&&(0,M.jsx)(`div`,{className:`divide-y`,children:n.map(t=>(0,M.jsxs)(`div`,{className:`flex items-center justify-between py-3`,children:[(0,M.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,M.jsx)(VN,{variant:`secondary`,children:AP[t.providerId]??t.providerId}),t.createdAt&&(0,M.jsx)(`span`,{className:`text-xs text-muted-foreground`,children:e(`linkedAccounts.linkedOn`,{date:new Date(t.createdAt).toLocaleDateString()})})]}),(0,M.jsxs)(Q,{variant:`ghost`,size:`sm`,disabled:o===t.id,onClick:()=>l(t),children:[(0,M.jsx)(xy,{className:`mr-1 h-4 w-4`}),e(`linkedAccounts.unlink`)]})]},t.id))})]})]}),f.length>0&&(0,M.jsxs)($,{children:[(0,M.jsxs)(sN,{children:[(0,M.jsx)(cN,{className:`text-base`,children:e(`linkedAccounts.addTitle`)}),(0,M.jsx)(lN,{children:e(`linkedAccounts.addDescription`)})]}),(0,M.jsx)(uN,{children:(0,M.jsx)(`div`,{className:`flex flex-wrap gap-2`,children:f.map(e=>(0,M.jsxs)(Q,{variant:`outline`,size:`sm`,onClick:()=>u(e),children:[(0,M.jsx)(Oy,{className:`mr-1 h-3 w-3`}),AP[e]]},e))})})]})]})}function MP(e){let t=Rg(),[n,r]=(0,j.useState)([]),[i,a]=(0,j.useState)(!1),[o,s]=(0,j.useState)(null),c=(0,j.useCallback)(async()=>{if(!(!e||!t?.organizations)){a(!0),s(null);try{let n=await t.organizations.listMembers(e);r(n?.members??n?.data?.members??(Array.isArray(n)?n:[]))}catch(e){s(e),r([])}finally{a(!1)}}},[t,e]);return(0,j.useEffect)(()=>{c()},[c]),{members:n,loading:i,error:o,reload:c,inviteMember:(0,j.useCallback)(async(n,r=`member`)=>{if(!e||!t?.organizations)throw Error(`Organization ID or client not available`);let i=await t.organizations.invite({email:n,role:r,organizationId:e});return await c(),i},[t,e,c]),removeMember:(0,j.useCallback)(async n=>{if(!e||!t?.organizations?.removeMember)throw Error(`Organization ID or client not available`);let r=await t.organizations.removeMember(e,{memberIdOrEmail:n});return await c(),r},[t,e,c]),updateMemberRole:(0,j.useCallback)(async(n,r)=>{if(!e||!t?.organizations?.updateMemberRole)throw Error(`Organization ID or client not available`);let i=await t.organizations.updateMemberRole(e,{memberId:n,role:r});return await c(),i},[t,e,c])}}function NP(e){let t=Rg(),[n,r]=(0,j.useState)([]),[i,a]=(0,j.useState)(!1),[o,s]=(0,j.useState)(null),c=(0,j.useCallback)(async()=>{if(!(!e||!t?.organizations?.invitations)){a(!0),s(null);try{let n=await t.organizations.invitations.list(e);r(n?.invitations??n?.data?.invitations??(Array.isArray(n)?n:[]))}catch(e){s(e),r([])}finally{a(!1)}}},[t,e]);return(0,j.useEffect)(()=>{c()},[c]),{invitations:n,loading:i,error:o,reload:c,cancelInvitation:(0,j.useCallback)(async e=>{if(!t?.organizations?.invitations?.cancel)throw Error(`Client not available`);let n=await t.organizations.invitations.cancel(e);return await c(),n},[t,c]),resendInvitation:(0,j.useCallback)(async e=>{if(!t?.organizations?.invitations?.resend)throw Error(`Client not available`);let n=await t.organizations.invitations.resend({id:e.id,email:e.email,role:e.role,organizationId:e.organizationId,teamId:e.teamId??null});return await c(),n},[t,c])}}function PP(){let e=Rg(),[t,n]=(0,j.useState)([]),[r,i]=(0,j.useState)(!1),[a,o]=(0,j.useState)(null),s=(0,j.useCallback)(async()=>{if(e?.organizations?.invitations?.listMine){i(!0),o(null);try{let t=await e.organizations.invitations.listMine();n(t?.invitations??t?.data?.invitations??(Array.isArray(t)?t:[]))}catch(e){o(e),n([])}finally{i(!1)}}},[e]);return(0,j.useEffect)(()=>{s()},[s]),{invitations:t,loading:r,error:a,reload:s,accept:(0,j.useCallback)(async t=>{let n=await e.organizations.invitations.accept(t);return await s(),n},[e,s]),reject:(0,j.useCallback)(async t=>{let n=await e.organizations.invitations.reject(t);return await s(),n},[e,s])}}var FP=sa(`/account/invitations`)({component:IP});function IP(){let{t:e}=vt(),{invitations:t,loading:n,accept:r,reject:i}=PP(),a=t.filter(e=>e.status===`pending`),o=async t=>{try{await r(t),q({title:e(`invitations.accepted`)})}catch(t){q({title:e(`invitations.acceptFailed`),description:t.message,variant:`destructive`})}},s=async t=>{try{await i(t),q({title:e(`invitations.rejected`)})}catch(t){q({title:e(`invitations.rejectFailed`),description:t.message,variant:`destructive`})}};return(0,M.jsxs)(`div`,{className:`space-y-6`,children:[(0,M.jsx)(HN,{icon:vy,title:e(`invitations.title`),description:e(`invitations.description`),actions:a.length>0?(0,M.jsx)(VN,{variant:`outline`,className:`font-medium`,children:e(`invitations.pendingCount`,{count:a.length,defaultValue:`{{count}} pending`})}):null}),(0,M.jsxs)($,{children:[(0,M.jsxs)(sN,{children:[(0,M.jsx)(cN,{className:`text-base`,children:e(`invitations.pendingTitle`,{defaultValue:`Pending invitations`})}),(0,M.jsx)(lN,{children:e(`invitations.pendingDescription`,{defaultValue:`Accept to join an organization, or reject to remove it from your inbox.`})})]}),(0,M.jsxs)(uN,{children:[n&&(0,M.jsxs)(`div`,{className:`space-y-3`,children:[(0,M.jsx)(Mw,{className:`h-12 w-full`}),(0,M.jsx)(Mw,{className:`h-12 w-full`})]}),!n&&a.length===0&&(0,M.jsxs)(`div`,{className:`text-center py-8`,children:[(0,M.jsx)(vy,{className:`mx-auto h-12 w-12 text-muted-foreground/50`}),(0,M.jsx)(`p`,{className:`mt-4 text-sm text-muted-foreground`,children:e(`invitations.empty`)})]}),!n&&a.length>0&&(0,M.jsx)(`div`,{className:`divide-y`,children:a.map(t=>(0,M.jsxs)(`div`,{className:`flex items-center justify-between py-3`,children:[(0,M.jsxs)(`div`,{className:`flex-1`,children:[(0,M.jsx)(`div`,{className:`text-sm font-medium`,children:t.organizationId}),(0,M.jsxs)(`div`,{className:`flex items-center gap-2 mt-1`,children:[(0,M.jsx)(VN,{variant:`outline`,className:`text-xs`,children:e(`common.roles.${t.role}`)}),(0,M.jsx)(`span`,{className:`text-xs text-muted-foreground`,children:e(`invitations.expires`,{date:new Date(t.expiresAt).toLocaleDateString()})})]})]}),(0,M.jsxs)(`div`,{className:`flex gap-2`,children:[(0,M.jsxs)(Q,{size:`sm`,onClick:()=>o(t.id),children:[(0,M.jsx)(ry,{className:`mr-1 h-4 w-4`}),e(`invitations.accept`)]}),(0,M.jsxs)(Q,{size:`sm`,variant:`outline`,onClick:()=>s(t.id),children:[(0,M.jsx)(Gy,{className:`mr-1 h-4 w-4`}),e(`invitations.reject`)]})]})]},t.id))})]})]})]})}var LP=sa(`/accept-invitation/$invitationId`)({component:RP});function RP(){let{t:e}=vt(),{invitationId:t}=LP.useParams(),n=N(),r=Rg(),{user:i,loading:a,reloadOrganizations:o}=zM(),[s,c]=(0,j.useState)(!1),[l,u]=(0,j.useState)(!1);return(0,j.useEffect)(()=>{a||i||n({to:`/login`,search:{redirect:`/accept-invitation/${t}`},replace:!0})},[a,i,t,n]),(0,M.jsx)(`div`,{className:`flex min-h-svh w-full flex-col items-center justify-center gap-6 bg-muted p-6 md:p-10`,children:(0,M.jsxs)(`div`,{className:`flex w-full max-w-sm flex-col gap-6`,children:[(0,M.jsxs)(`a`,{href:`#`,className:`flex items-center gap-2 self-center font-medium`,children:[(0,M.jsx)(`div`,{className:`flex size-6 items-center justify-center rounded-md bg-primary text-primary-foreground`,children:(0,M.jsx)(hy,{className:`size-4`})}),`ObjectStack`]}),(0,M.jsxs)($,{children:[(0,M.jsxs)(sN,{className:`text-center`,children:[(0,M.jsx)(cN,{className:`text-xl`,children:e(`acceptInvitation.title`)}),(0,M.jsx)(lN,{children:e(`acceptInvitation.description`)})]}),(0,M.jsxs)(uN,{className:`flex flex-col gap-3`,children:[(0,M.jsx)(Q,{className:`w-full`,onClick:async()=>{c(!0);try{await r.organizations.invitations.accept(t),await o().catch(()=>{}),q({title:e(`acceptInvitation.accepted`)}),n({to:`/organizations`})}catch(t){q({title:e(`acceptInvitation.acceptFailed`),description:t.message,variant:`destructive`})}finally{c(!1)}},disabled:s||l,children:e(s?`acceptInvitation.accepting`:`acceptInvitation.accept`)}),(0,M.jsx)(Q,{variant:`outline`,className:`w-full`,onClick:async()=>{u(!0);try{await r.organizations.invitations.reject(t),q({title:e(`acceptInvitation.declined`)}),n({to:`/organizations`})}catch(t){q({title:e(`acceptInvitation.declineFailed`),description:t.message,variant:`destructive`})}finally{u(!1)}},disabled:s||l,children:e(l?`acceptInvitation.declining`:`acceptInvitation.decline`)})]})]})]})})}var zP=sa(`/organizations/$orgId/`)({component:()=>{let{orgId:e}=zP.useParams();return(0,M.jsx)(Vi,{to:`/organizations/$orgId/general`,params:{orgId:e},replace:!0})}}),BP=sa(`/account/oauth-applications/`)({component:VP});function VP(){let{t:e}=vt(),t=N(),{applications:n,loading:r,reload:i}=$N(),{remove:a,deleting:o}=tP(),[s,c]=(0,j.useState)(null);return(0,M.jsxs)(`div`,{className:`space-y-6`,children:[(0,M.jsx)(HN,{icon:yy,title:e(`oauth.applications.title`),description:e(`oauth.applications.description`),actions:(0,M.jsxs)(Q,{onClick:()=>t({to:`/account/oauth-applications/new`}),className:`bg-brand-gradient text-primary-foreground shadow-sm shadow-primary/20 transition-all hover:opacity-95 hover:shadow-md hover:shadow-primary/30`,children:[(0,M.jsx)(Oy,{className:`mr-2 h-4 w-4`}),e(`oauth.applications.new`)]})}),r?(0,M.jsx)(`div`,{className:`space-y-3`,children:[0,1,2].map(e=>(0,M.jsx)($,{children:(0,M.jsxs)(uN,{className:`flex items-center gap-3 p-4`,children:[(0,M.jsx)(Mw,{className:`size-10 rounded-md`}),(0,M.jsxs)(`div`,{className:`flex-1 space-y-2`,children:[(0,M.jsx)(Mw,{className:`h-4 w-40`}),(0,M.jsx)(Mw,{className:`h-3 w-64`})]})]})},e))}):n.length===0?(0,M.jsx)($,{children:(0,M.jsxs)(uN,{className:`flex flex-col items-center gap-3 p-12 text-center`,children:[(0,M.jsx)(`div`,{className:`flex size-12 items-center justify-center rounded-lg bg-brand-gradient-subtle text-primary ring-1 ring-primary/15`,children:(0,M.jsx)(yy,{className:`h-6 w-6`})}),(0,M.jsxs)(`div`,{children:[(0,M.jsx)(`p`,{className:`font-medium`,children:e(`oauth.applications.emptyTitle`)}),(0,M.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:e(`oauth.applications.emptyDescription`)})]}),(0,M.jsxs)(Q,{onClick:()=>t({to:`/account/oauth-applications/new`}),className:`bg-brand-gradient text-primary-foreground shadow-sm shadow-primary/20`,children:[(0,M.jsx)(Oy,{className:`mr-2 h-4 w-4`}),e(`oauth.applications.register`)]})]})}):(0,M.jsx)(`div`,{className:`grid gap-3`,children:n.map(t=>(0,M.jsx)($,{className:`group transition-all hover:-translate-y-0.5 hover:border-primary/30 hover:shadow-md hover:shadow-primary/5`,children:(0,M.jsx)(sN,{className:`pb-3`,children:(0,M.jsxs)(`div`,{className:`flex items-center justify-between gap-3`,children:[(0,M.jsxs)(ta,{to:`/account/oauth-applications/$clientId`,params:{clientId:t.client_id},className:`flex flex-1 items-center gap-3`,children:[(0,M.jsx)(`div`,{className:`flex size-10 shrink-0 items-center justify-center rounded-md bg-brand-gradient-subtle text-primary ring-1 ring-primary/15 transition-transform group-hover:scale-105`,children:(0,M.jsx)(yy,{className:`h-5 w-5`})}),(0,M.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,M.jsx)(cN,{className:`text-base`,children:t.name}),(0,M.jsx)(lN,{className:`font-mono text-xs`,children:t.client_id})]}),(0,M.jsx)(VN,{variant:`outline`,className:`capitalize`,children:t.type}),t.disabled&&(0,M.jsx)(VN,{variant:`destructive`,children:e(`oauth.applications.disabled`)})]}),(0,M.jsx)(Q,{variant:`ghost`,size:`icon`,className:`text-muted-foreground hover:text-destructive`,onClick:e=>{e.preventDefault(),e.stopPropagation(),c(t)},children:(0,M.jsx)(Ly,{className:`h-4 w-4`})})]})})},t.id))}),(0,M.jsx)(_P,{open:!!s,onOpenChange:e=>!e&&c(null),children:(0,M.jsxs)(bP,{children:[(0,M.jsxs)(xP,{children:[(0,M.jsx)(CP,{children:e(`oauth.applications.deleteDialogTitle`)}),(0,M.jsx)(wP,{children:e(`oauth.applications.deleteDialogDescription`,{name:s?.name??``})})]}),(0,M.jsxs)(SP,{children:[(0,M.jsx)(Q,{variant:`outline`,onClick:()=>c(null),disabled:o,children:e(`common.cancel`)}),(0,M.jsx)(Q,{variant:`destructive`,onClick:async()=>{if(s)try{await a(s.client_id),q({title:e(`oauth.applications.deleted`)}),c(null),await i()}catch(t){q({title:e(`oauth.applications.deleteFailed`),description:t.message,variant:`destructive`})}},disabled:o,children:e(o?`oauth.applications.deleting`:`common.delete`)})]})]})})]})}function HP(e,[t,n]){return Math.min(n,Math.max(t,e))}function UP(e){let t=j.useRef({value:e,previous:e});return j.useMemo(()=>(t.current.value!==e&&(t.current.previous=t.current.value,t.current.value=e),t.current.previous),[e])}var WP=[` `,`Enter`,`ArrowUp`,`ArrowDown`],GP=[` `,`Enter`],KP=`Select`,[qP,JP,YP]=l_(KP),[XP,ZP]=e_(KP,[YP,ZE]),QP=ZE(),[$P,eF]=XP(KP),[tF,nF]=XP(KP),rF=e=>{let{__scopeSelect:t,children:n,open:r,defaultOpen:i,onOpenChange:a,value:o,defaultValue:s,onValueChange:c,dir:l,name:u,autoComplete:d,disabled:f,required:p,form:m}=e,h=QP(t),[g,_]=j.useState(null),[v,y]=j.useState(null),[b,x]=j.useState(!1),S=KO(l),[C,w]=R_({prop:r,defaultProp:i??!1,onChange:a,caller:KP}),[T,E]=R_({prop:o,defaultProp:s,onChange:c,caller:KP}),D=j.useRef(null),O=g?m||!!g.closest(`form`):!0,[ee,te]=j.useState(new Set),ne=Array.from(ee).map(e=>e.props.value).join(`;`);return(0,M.jsx)(pD,{...h,children:(0,M.jsxs)($P,{required:p,scope:t,trigger:g,onTriggerChange:_,valueNode:v,onValueNodeChange:y,valueNodeHasChildren:b,onValueNodeHasChildrenChange:x,contentId:Qx(),value:T,onValueChange:E,open:C,onOpenChange:w,dir:S,triggerPointerDownPosRef:D,disabled:f,children:[(0,M.jsx)(qP.Provider,{scope:t,children:(0,M.jsx)(tF,{scope:e.__scopeSelect,onNativeOptionAdd:j.useCallback(e=>{te(t=>new Set(t).add(e))},[]),onNativeOptionRemove:j.useCallback(e=>{te(t=>{let n=new Set(t);return n.delete(e),n})},[]),children:n})}),O?(0,M.jsxs)(QF,{"aria-hidden":!0,required:p,tabIndex:-1,name:u,autoComplete:d,value:T,onChange:e=>E(e.target.value),disabled:f,form:m,children:[T===void 0?(0,M.jsx)(`option`,{value:``}):null,Array.from(ee)]},ne):null]})})};rF.displayName=KP;var iF=`SelectTrigger`,aF=j.forwardRef((e,t)=>{let{__scopeSelect:n,disabled:r=!1,...i}=e,a=QP(n),o=eF(iF,n),s=o.disabled||r,c=Qg(t,o.onTriggerChange),l=JP(n),u=j.useRef(`touch`),[d,f,p]=eI(e=>{let t=l().filter(e=>!e.disabled),n=tI(t,e,t.find(e=>e.value===o.value));n!==void 0&&o.onValueChange(n.value)}),m=e=>{s||(o.onOpenChange(!0),p()),e&&(o.triggerPointerDownPosRef.current={x:Math.round(e.pageX),y:Math.round(e.pageY)})};return(0,M.jsx)(mD,{asChild:!0,...a,children:(0,M.jsx)(u_.button,{type:`button`,role:`combobox`,"aria-controls":o.contentId,"aria-expanded":o.open,"aria-required":o.required,"aria-autocomplete":`none`,dir:o.dir,"data-state":o.open?`open`:`closed`,disabled:s,"data-disabled":s?``:void 0,"data-placeholder":$F(o.value)?``:void 0,...i,ref:c,onClick:J(i.onClick,e=>{e.currentTarget.focus(),u.current!==`mouse`&&m(e)}),onPointerDown:J(i.onPointerDown,e=>{u.current=e.pointerType;let t=e.target;t.hasPointerCapture(e.pointerId)&&t.releasePointerCapture(e.pointerId),e.button===0&&e.ctrlKey===!1&&e.pointerType===`mouse`&&(m(e),e.preventDefault())}),onKeyDown:J(i.onKeyDown,e=>{let t=d.current!==``;!(e.ctrlKey||e.altKey||e.metaKey)&&e.key.length===1&&f(e.key),!(t&&e.key===` `)&&WP.includes(e.key)&&(m(),e.preventDefault())})})})});aF.displayName=iF;var oF=`SelectValue`,sF=j.forwardRef((e,t)=>{let{__scopeSelect:n,className:r,style:i,children:a,placeholder:o=``,...s}=e,c=eF(oF,n),{onValueNodeHasChildrenChange:l}=c,u=a!==void 0,d=Qg(t,c.onValueNodeChange);return k_(()=>{l(u)},[l,u]),(0,M.jsx)(u_.span,{...s,ref:d,style:{pointerEvents:`none`},children:$F(c.value)?(0,M.jsx)(M.Fragment,{children:o}):a})});sF.displayName=oF;var cF=`SelectIcon`,lF=j.forwardRef((e,t)=>{let{__scopeSelect:n,children:r,...i}=e;return(0,M.jsx)(u_.span,{"aria-hidden":!0,...i,ref:t,children:r||`▼`})});lF.displayName=cF;var uF=`SelectPortal`,dF=e=>(0,M.jsx)(j_,{asChild:!0,...e});dF.displayName=uF;var fF=`SelectContent`,pF=j.forwardRef((e,t)=>{let n=eF(fF,e.__scopeSelect),[r,i]=j.useState();if(k_(()=>{i(new DocumentFragment)},[]),!n.open){let t=r;return t?Ui.createPortal((0,M.jsx)(hF,{scope:e.__scopeSelect,children:(0,M.jsx)(qP.Slot,{scope:e.__scopeSelect,children:(0,M.jsx)(`div`,{children:e.children})})}),t):null}return(0,M.jsx)(yF,{...e,ref:t})});pF.displayName=fF;var mF=10,[hF,gF]=XP(fF),_F=`SelectContentImpl`,vF=n_(`SelectContent.RemoveScroll`),yF=j.forwardRef((e,t)=>{let{__scopeSelect:n,position:r=`item-aligned`,onCloseAutoFocus:i,onEscapeKeyDown:a,onPointerDownOutside:o,side:s,sideOffset:c,align:l,alignOffset:u,arrowPadding:d,collisionBoundary:f,collisionPadding:p,sticky:m,hideWhenDetached:h,avoidCollisions:g,..._}=e,v=eF(fF,n),[y,b]=j.useState(null),[x,S]=j.useState(null),C=Qg(t,e=>b(e)),[w,T]=j.useState(null),[E,D]=j.useState(null),O=JP(n),[ee,te]=j.useState(!1),ne=j.useRef(!1);j.useEffect(()=>{if(y)return FC(y)},[y]),gS();let re=j.useCallback(e=>{let[t,...n]=O().map(e=>e.ref.current),[r]=n.slice(-1),i=document.activeElement;for(let n of e)if(n===i||(n?.scrollIntoView({block:`nearest`}),n===t&&x&&(x.scrollTop=0),n===r&&x&&(x.scrollTop=x.scrollHeight),n?.focus(),document.activeElement!==i))return},[O,x]),ie=j.useCallback(()=>re([w,y]),[re,w,y]);j.useEffect(()=>{ee&&ie()},[ee,ie]);let{onOpenChange:ae,triggerPointerDownPosRef:oe}=v;j.useEffect(()=>{if(y){let e={x:0,y:0},t=t=>{e={x:Math.abs(Math.round(t.pageX)-(oe.current?.x??0)),y:Math.abs(Math.round(t.pageY)-(oe.current?.y??0))}},n=n=>{e.x<=10&&e.y<=10?n.preventDefault():y.contains(n.target)||ae(!1),document.removeEventListener(`pointermove`,t),oe.current=null};return oe.current!==null&&(document.addEventListener(`pointermove`,t),document.addEventListener(`pointerup`,n,{capture:!0,once:!0})),()=>{document.removeEventListener(`pointermove`,t),document.removeEventListener(`pointerup`,n,{capture:!0})}}},[y,ae,oe]),j.useEffect(()=>{let e=()=>ae(!1);return window.addEventListener(`blur`,e),window.addEventListener(`resize`,e),()=>{window.removeEventListener(`blur`,e),window.removeEventListener(`resize`,e)}},[ae]);let[k,se]=eI(e=>{let t=O().filter(e=>!e.disabled),n=tI(t,e,t.find(e=>e.ref.current===document.activeElement));n&&setTimeout(()=>n.ref.current.focus())}),ce=j.useCallback((e,t,n)=>{let r=!ne.current&&!n;(v.value!==void 0&&v.value===t||r)&&(T(e),r&&(ne.current=!0))},[v.value]),le=j.useCallback(()=>y?.focus(),[y]),ue=j.useCallback((e,t,n)=>{let r=!ne.current&&!n;(v.value!==void 0&&v.value===t||r)&&D(e)},[v.value]),A=r===`popper`?CF:xF,de=A===CF?{side:s,sideOffset:c,align:l,alignOffset:u,arrowPadding:d,collisionBoundary:f,collisionPadding:p,sticky:m,hideWhenDetached:h,avoidCollisions:g}:{};return(0,M.jsx)(hF,{scope:n,content:y,viewport:x,onViewportChange:S,itemRefCallback:ce,selectedItem:w,onItemLeave:le,itemTextRefCallback:ue,focusSelectedItem:ie,selectedItemText:E,position:r,isPositioned:ee,searchRef:k,children:(0,M.jsx)(EC,{as:vF,allowPinchZoom:!0,children:(0,M.jsx)(rS,{asChild:!0,trapped:v.open,onMountAutoFocus:e=>{e.preventDefault()},onUnmountAutoFocus:J(i,e=>{v.trigger?.focus({preventScroll:!0}),e.preventDefault()}),children:(0,M.jsx)(b_,{asChild:!0,disableOutsidePointerEvents:!0,onEscapeKeyDown:a,onPointerDownOutside:o,onFocusOutside:e=>e.preventDefault(),onDismiss:()=>v.onOpenChange(!1),children:(0,M.jsx)(A,{role:`listbox`,id:v.contentId,"data-state":v.open?`open`:`closed`,dir:v.dir,onContextMenu:e=>e.preventDefault(),..._,...de,onPlaced:()=>te(!0),ref:C,style:{display:`flex`,flexDirection:`column`,outline:`none`,..._.style},onKeyDown:J(_.onKeyDown,e=>{let t=e.ctrlKey||e.altKey||e.metaKey;if(e.key===`Tab`&&e.preventDefault(),!t&&e.key.length===1&&se(e.key),[`ArrowUp`,`ArrowDown`,`Home`,`End`].includes(e.key)){let t=O().filter(e=>!e.disabled).map(e=>e.ref.current);if([`ArrowUp`,`End`].includes(e.key)&&(t=t.slice().reverse()),[`ArrowUp`,`ArrowDown`].includes(e.key)){let n=e.target,r=t.indexOf(n);t=t.slice(r+1)}setTimeout(()=>re(t)),e.preventDefault()}})})})})})})});yF.displayName=_F;var bF=`SelectItemAlignedPosition`,xF=j.forwardRef((e,t)=>{let{__scopeSelect:n,onPlaced:r,...i}=e,a=eF(fF,n),o=gF(fF,n),[s,c]=j.useState(null),[l,u]=j.useState(null),d=Qg(t,e=>u(e)),f=JP(n),p=j.useRef(!1),m=j.useRef(!0),{viewport:h,selectedItem:g,selectedItemText:_,focusSelectedItem:v}=o,y=j.useCallback(()=>{if(a.trigger&&a.valueNode&&s&&l&&h&&g&&_){let e=a.trigger.getBoundingClientRect(),t=l.getBoundingClientRect(),n=a.valueNode.getBoundingClientRect(),i=_.getBoundingClientRect();if(a.dir!==`rtl`){let r=i.left-t.left,a=n.left-r,o=e.left-a,c=e.width+o,l=Math.max(c,t.width),u=window.innerWidth-mF,d=HP(a,[mF,Math.max(mF,u-l)]);s.style.minWidth=c+`px`,s.style.left=d+`px`}else{let r=t.right-i.right,a=window.innerWidth-n.right-r,o=window.innerWidth-e.right-a,c=e.width+o,l=Math.max(c,t.width),u=window.innerWidth-mF,d=HP(a,[mF,Math.max(mF,u-l)]);s.style.minWidth=c+`px`,s.style.right=d+`px`}let o=f(),c=window.innerHeight-mF*2,u=h.scrollHeight,d=window.getComputedStyle(l),m=parseInt(d.borderTopWidth,10),v=parseInt(d.paddingTop,10),y=parseInt(d.borderBottomWidth,10),b=parseInt(d.paddingBottom,10),x=m+v+u+b+y,S=Math.min(g.offsetHeight*5,x),C=window.getComputedStyle(h),w=parseInt(C.paddingTop,10),T=parseInt(C.paddingBottom,10),E=e.top+e.height/2-mF,D=c-E,O=g.offsetHeight/2,ee=g.offsetTop+O,te=m+v+ee,ne=x-te;if(te<=E){let e=o.length>0&&g===o[o.length-1].ref.current;s.style.bottom=`0px`;let t=l.clientHeight-h.offsetTop-h.offsetHeight,n=te+Math.max(D,O+(e?T:0)+t+y);s.style.height=n+`px`}else{let e=o.length>0&&g===o[0].ref.current;s.style.top=`0px`;let t=Math.max(E,m+h.offsetTop+(e?w:0)+O)+ne;s.style.height=t+`px`,h.scrollTop=te-E+h.offsetTop}s.style.margin=`${mF}px 0`,s.style.minHeight=S+`px`,s.style.maxHeight=c+`px`,r?.(),requestAnimationFrame(()=>p.current=!0)}},[f,a.trigger,a.valueNode,s,l,h,g,_,a.dir,r]);k_(()=>y(),[y]);let[b,x]=j.useState();return k_(()=>{l&&x(window.getComputedStyle(l).zIndex)},[l]),(0,M.jsx)(wF,{scope:n,contentWrapper:s,shouldExpandOnScrollRef:p,onScrollButtonChange:j.useCallback(e=>{e&&m.current===!0&&(y(),v?.(),m.current=!1)},[y,v]),children:(0,M.jsx)(`div`,{ref:c,style:{display:`flex`,flexDirection:`column`,position:`fixed`,zIndex:b},children:(0,M.jsx)(u_.div,{...i,ref:d,style:{boxSizing:`border-box`,maxHeight:`100%`,...i.style}})})})});xF.displayName=bF;var SF=`SelectPopperPosition`,CF=j.forwardRef((e,t)=>{let{__scopeSelect:n,align:r=`start`,collisionPadding:i=mF,...a}=e,o=QP(n);return(0,M.jsx)(hD,{...o,...a,ref:t,align:r,collisionPadding:i,style:{boxSizing:`border-box`,...a.style,"--radix-select-content-transform-origin":`var(--radix-popper-transform-origin)`,"--radix-select-content-available-width":`var(--radix-popper-available-width)`,"--radix-select-content-available-height":`var(--radix-popper-available-height)`,"--radix-select-trigger-width":`var(--radix-popper-anchor-width)`,"--radix-select-trigger-height":`var(--radix-popper-anchor-height)`}})});CF.displayName=SF;var[wF,TF]=XP(fF,{}),EF=`SelectViewport`,DF=j.forwardRef((e,t)=>{let{__scopeSelect:n,nonce:r,...i}=e,a=gF(EF,n),o=TF(EF,n),s=Qg(t,a.onViewportChange),c=j.useRef(0);return(0,M.jsxs)(M.Fragment,{children:[(0,M.jsx)(`style`,{dangerouslySetInnerHTML:{__html:`[data-radix-select-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-select-viewport]::-webkit-scrollbar{display:none}`},nonce:r}),(0,M.jsx)(qP.Slot,{scope:n,children:(0,M.jsx)(u_.div,{"data-radix-select-viewport":``,role:`presentation`,...i,ref:s,style:{position:`relative`,flex:1,overflow:`hidden auto`,...i.style},onScroll:J(i.onScroll,e=>{let t=e.currentTarget,{contentWrapper:n,shouldExpandOnScrollRef:r}=o;if(r?.current&&n){let e=Math.abs(c.current-t.scrollTop);if(e>0){let r=window.innerHeight-mF*2,i=parseFloat(n.style.minHeight),a=parseFloat(n.style.height),o=Math.max(i,a);if(o<r){let i=o+e,a=Math.min(r,i),s=i-a;n.style.height=a+`px`,n.style.bottom===`0px`&&(t.scrollTop=s>0?s:0,n.style.justifyContent=`flex-end`)}}}c.current=t.scrollTop})})})]})});DF.displayName=EF;var OF=`SelectGroup`,[kF,AF]=XP(OF),jF=j.forwardRef((e,t)=>{let{__scopeSelect:n,...r}=e,i=Qx();return(0,M.jsx)(kF,{scope:n,id:i,children:(0,M.jsx)(u_.div,{role:`group`,"aria-labelledby":i,...r,ref:t})})});jF.displayName=OF;var MF=`SelectLabel`,NF=j.forwardRef((e,t)=>{let{__scopeSelect:n,...r}=e,i=AF(MF,n);return(0,M.jsx)(u_.div,{id:i.id,...r,ref:t})});NF.displayName=MF;var PF=`SelectItem`,[FF,IF]=XP(PF),LF=j.forwardRef((e,t)=>{let{__scopeSelect:n,value:r,disabled:i=!1,textValue:a,...o}=e,s=eF(PF,n),c=gF(PF,n),l=s.value===r,[u,d]=j.useState(a??``),[f,p]=j.useState(!1),m=Qg(t,e=>c.itemRefCallback?.(e,r,i)),h=Qx(),g=j.useRef(`touch`),_=()=>{i||(s.onValueChange(r),s.onOpenChange(!1))};if(r===``)throw Error(`A <Select.Item /> must have a value prop that is not an empty string. This is because the Select value can be set to an empty string to clear the selection and show the placeholder.`);return(0,M.jsx)(FF,{scope:n,value:r,disabled:i,textId:h,isSelected:l,onItemTextChange:j.useCallback(e=>{d(t=>t||(e?.textContent??``).trim())},[]),children:(0,M.jsx)(qP.ItemSlot,{scope:n,value:r,disabled:i,textValue:u,children:(0,M.jsx)(u_.div,{role:`option`,"aria-labelledby":h,"data-highlighted":f?``:void 0,"aria-selected":l&&f,"data-state":l?`checked`:`unchecked`,"aria-disabled":i||void 0,"data-disabled":i?``:void 0,tabIndex:i?void 0:-1,...o,ref:m,onFocus:J(o.onFocus,()=>p(!0)),onBlur:J(o.onBlur,()=>p(!1)),onClick:J(o.onClick,()=>{g.current!==`mouse`&&_()}),onPointerUp:J(o.onPointerUp,()=>{g.current===`mouse`&&_()}),onPointerDown:J(o.onPointerDown,e=>{g.current=e.pointerType}),onPointerMove:J(o.onPointerMove,e=>{g.current=e.pointerType,i?c.onItemLeave?.():g.current===`mouse`&&e.currentTarget.focus({preventScroll:!0})}),onPointerLeave:J(o.onPointerLeave,e=>{e.currentTarget===document.activeElement&&c.onItemLeave?.()}),onKeyDown:J(o.onKeyDown,e=>{c.searchRef?.current!==``&&e.key===` `||(GP.includes(e.key)&&_(),e.key===` `&&e.preventDefault())})})})})});LF.displayName=PF;var RF=`SelectItemText`,zF=j.forwardRef((e,t)=>{let{__scopeSelect:n,className:r,style:i,...a}=e,o=eF(RF,n),s=gF(RF,n),c=IF(RF,n),l=nF(RF,n),[u,d]=j.useState(null),f=Qg(t,e=>d(e),c.onItemTextChange,e=>s.itemTextRefCallback?.(e,c.value,c.disabled)),p=u?.textContent,m=j.useMemo(()=>(0,M.jsx)(`option`,{value:c.value,disabled:c.disabled,children:p},c.value),[c.disabled,c.value,p]),{onNativeOptionAdd:h,onNativeOptionRemove:g}=l;return k_(()=>(h(m),()=>g(m)),[h,g,m]),(0,M.jsxs)(M.Fragment,{children:[(0,M.jsx)(u_.span,{id:c.textId,...a,ref:f}),c.isSelected&&o.valueNode&&!o.valueNodeHasChildren?Ui.createPortal(a.children,o.valueNode):null]})});zF.displayName=RF;var BF=`SelectItemIndicator`,VF=j.forwardRef((e,t)=>{let{__scopeSelect:n,...r}=e;return IF(BF,n).isSelected?(0,M.jsx)(u_.span,{"aria-hidden":!0,...r,ref:t}):null});VF.displayName=BF;var HF=`SelectScrollUpButton`,UF=j.forwardRef((e,t)=>{let n=gF(HF,e.__scopeSelect),r=TF(HF,e.__scopeSelect),[i,a]=j.useState(!1),o=Qg(t,r.onScrollButtonChange);return k_(()=>{if(n.viewport&&n.isPositioned){let e=function(){a(t.scrollTop>0)},t=n.viewport;return e(),t.addEventListener(`scroll`,e),()=>t.removeEventListener(`scroll`,e)}},[n.viewport,n.isPositioned]),i?(0,M.jsx)(KF,{...e,ref:o,onAutoScroll:()=>{let{viewport:e,selectedItem:t}=n;e&&t&&(e.scrollTop-=t.offsetHeight)}}):null});UF.displayName=HF;var WF=`SelectScrollDownButton`,GF=j.forwardRef((e,t)=>{let n=gF(WF,e.__scopeSelect),r=TF(WF,e.__scopeSelect),[i,a]=j.useState(!1),o=Qg(t,r.onScrollButtonChange);return k_(()=>{if(n.viewport&&n.isPositioned){let e=function(){let e=t.scrollHeight-t.clientHeight;a(Math.ceil(t.scrollTop)<e)},t=n.viewport;return e(),t.addEventListener(`scroll`,e),()=>t.removeEventListener(`scroll`,e)}},[n.viewport,n.isPositioned]),i?(0,M.jsx)(KF,{...e,ref:o,onAutoScroll:()=>{let{viewport:e,selectedItem:t}=n;e&&t&&(e.scrollTop+=t.offsetHeight)}}):null});GF.displayName=WF;var KF=j.forwardRef((e,t)=>{let{__scopeSelect:n,onAutoScroll:r,...i}=e,a=gF(`SelectScrollButton`,n),o=j.useRef(null),s=JP(n),c=j.useCallback(()=>{o.current!==null&&(window.clearInterval(o.current),o.current=null)},[]);return j.useEffect(()=>()=>c(),[c]),k_(()=>{s().find(e=>e.ref.current===document.activeElement)?.ref.current?.scrollIntoView({block:`nearest`})},[s]),(0,M.jsx)(u_.div,{"aria-hidden":!0,...i,ref:t,style:{flexShrink:0,...i.style},onPointerDown:J(i.onPointerDown,()=>{o.current===null&&(o.current=window.setInterval(r,50))}),onPointerMove:J(i.onPointerMove,()=>{a.onItemLeave?.(),o.current===null&&(o.current=window.setInterval(r,50))}),onPointerLeave:J(i.onPointerLeave,()=>{c()})})}),qF=`SelectSeparator`,JF=j.forwardRef((e,t)=>{let{__scopeSelect:n,...r}=e;return(0,M.jsx)(u_.div,{"aria-hidden":!0,...r,ref:t})});JF.displayName=qF;var YF=`SelectArrow`,XF=j.forwardRef((e,t)=>{let{__scopeSelect:n,...r}=e,i=QP(n),a=eF(YF,n),o=gF(YF,n);return a.open&&o.position===`popper`?(0,M.jsx)(gD,{...i,...r,ref:t}):null});XF.displayName=YF;var ZF=`SelectBubbleInput`,QF=j.forwardRef(({__scopeSelect:e,value:t,...n},r)=>{let i=j.useRef(null),a=Qg(r,i),o=UP(t);return j.useEffect(()=>{let e=i.current;if(!e)return;let n=window.HTMLSelectElement.prototype,r=Object.getOwnPropertyDescriptor(n,`value`).set;if(o!==t&&r){let n=new Event(`change`,{bubbles:!0});r.call(e,t),e.dispatchEvent(n)}},[o,t]),(0,M.jsx)(u_.select,{...n,style:{...V_,...n.style},ref:a,defaultValue:t})});QF.displayName=ZF;function $F(e){return e===``||e===void 0}function eI(e){let t=f_(e),n=j.useRef(``),r=j.useRef(0),i=j.useCallback(e=>{let i=n.current+e;t(i),(function e(t){n.current=t,window.clearTimeout(r.current),t!==``&&(r.current=window.setTimeout(()=>e(``),1e3))})(i)},[t]),a=j.useCallback(()=>{n.current=``,window.clearTimeout(r.current)},[]);return j.useEffect(()=>()=>window.clearTimeout(r.current),[]),[n,i,a]}function tI(e,t,n){let r=t.length>1&&Array.from(t).every(e=>e===t[0])?t[0]:t,i=n?e.indexOf(n):-1,a=nI(e,Math.max(i,0));r.length===1&&(a=a.filter(e=>e!==n));let o=a.find(e=>e.textValue.toLowerCase().startsWith(r.toLowerCase()));return o===n?void 0:o}function nI(e,t){return e.map((n,r)=>e[(t+r)%e.length])}var rI=rF,iI=aF,aI=sF,oI=lF,sI=dF,cI=pF,lI=DF,uI=NF,dI=LF,fI=zF,pI=VF,mI=UF,hI=GF,gI=JF,_I=rI,vI=aI,yI=j.forwardRef(({className:e,children:t,...n},r)=>(0,M.jsxs)(iI,{ref:r,className:Z(`flex h-9 w-full items-center justify-between whitespace-nowrap rounded-md border border-input bg-transparent px-3 py-2 text-sm shadow-sm ring-offset-background placeholder:text-muted-foreground focus:outline-none focus:ring-1 focus:ring-ring disabled:cursor-not-allowed disabled:opacity-50 [&>span]:line-clamp-1`,e),...n,children:[t,(0,M.jsx)(oI,{asChild:!0,children:(0,M.jsx)(iy,{className:`h-4 w-4 opacity-50`})})]}));yI.displayName=iI.displayName;var bI=j.forwardRef(({className:e,...t},n)=>(0,M.jsx)(mI,{ref:n,className:Z(`flex cursor-default items-center justify-center py-1`,e),...t,children:(0,M.jsx)(oy,{className:`h-4 w-4`})}));bI.displayName=mI.displayName;var xI=j.forwardRef(({className:e,...t},n)=>(0,M.jsx)(hI,{ref:n,className:Z(`flex cursor-default items-center justify-center py-1`,e),...t,children:(0,M.jsx)(iy,{className:`h-4 w-4`})}));xI.displayName=hI.displayName;var SI=j.forwardRef(({className:e,children:t,position:n=`popper`,...r},i)=>(0,M.jsx)(sI,{children:(0,M.jsxs)(cI,{ref:i,className:Z(`relative z-50 max-h-96 min-w-[8rem] overflow-hidden rounded-md border bg-popover text-popover-foreground shadow-md data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2`,n===`popper`&&`data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1`,e),position:n,...r,children:[(0,M.jsx)(bI,{}),(0,M.jsx)(lI,{className:Z(`p-1`,n===`popper`&&`h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)]`),children:t}),(0,M.jsx)(xI,{})]})}));SI.displayName=cI.displayName;var CI=j.forwardRef(({className:e,...t},n)=>(0,M.jsx)(uI,{ref:n,className:Z(`px-2 py-1.5 text-sm font-semibold`,e),...t}));CI.displayName=uI.displayName;var wI=j.forwardRef(({className:e,children:t,...n},r)=>(0,M.jsxs)(dI,{ref:r,className:Z(`relative flex w-full cursor-default select-none items-center rounded-sm py-1.5 pl-2 pr-8 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50`,e),...n,children:[(0,M.jsx)(`span`,{className:`absolute right-2 flex h-3.5 w-3.5 items-center justify-center`,children:(0,M.jsx)(pI,{children:(0,M.jsx)(ry,{className:`h-4 w-4`})})}),(0,M.jsx)(fI,{children:t})]}));wI.displayName=dI.displayName;var TI=j.forwardRef(({className:e,...t},n)=>(0,M.jsx)(gI,{ref:n,className:Z(`-mx-1 my-1 h-px bg-muted`,e),...t}));TI.displayName=gI.displayName;var EI=sa(`/organizations/$orgId/teams`)({component:DI});function DI(){let{t:e}=vt(),{orgId:t}=EI.useParams(),n=Rg(),{members:r}=MP(t),[i,a]=(0,j.useState)([]),[o,s]=(0,j.useState)(!0),[c,l]=(0,j.useState)(!1),[u,d]=(0,j.useState)(``),[f,p]=(0,j.useState)(!1),[m,h]=(0,j.useState)(null),[g,_]=(0,j.useState)([]),[v,y]=(0,j.useState)(!1),[b,x]=(0,j.useState)(!1),[S,C]=(0,j.useState)(``),w=(0,j.useCallback)(async()=>{if(n?.organizations?.teams){s(!0);try{a((await n.organizations.teams.list(t))?.teams??[])}catch{a([])}finally{s(!1)}}},[n,t]);(0,j.useEffect)(()=>{w()},[w]);let T=(0,j.useCallback)(async e=>{if(n?.organizations?.teams){y(!0);try{_((await n.organizations.teams.listMembers(e))?.members??[])}catch{_([])}finally{y(!1)}}},[n]);(0,j.useEffect)(()=>{m&&T(m)},[m,T]);let E=async r=>{if(r.preventDefault(),u.trim()){p(!0);try{await n.organizations.teams.create({name:u.trim(),organizationId:t}),q({title:e(`teams.created`)}),l(!1),d(``),await w()}catch(t){q({title:e(`teams.createFailed`),description:t.message,variant:`destructive`})}finally{p(!1)}}},D=async r=>{if(confirm(e(`teams.deleteConfirm`,{name:r.name})))try{await n.organizations.teams.delete({teamId:r.id,organizationId:t}),q({title:e(`teams.deleted`)}),m===r.id&&h(null),await w()}catch(t){q({title:e(`teams.deleteFailed`),description:t.message,variant:`destructive`})}},O=async()=>{if(!(!m||!S))try{await n.organizations.teams.addMember({teamId:m,userId:S}),q({title:e(`teams.memberAdded`)}),x(!1),C(``),await T(m)}catch(t){q({title:e(`teams.addMemberFailed`),description:t.message,variant:`destructive`})}},ee=async(t,r)=>{try{await n.organizations.teams.removeMember({teamId:t,userId:r}),q({title:e(`teams.memberRemoved`)}),await T(t)}catch(t){q({title:e(`teams.removeMemberFailed`),description:t.message,variant:`destructive`})}},te=Object.fromEntries(r.map(e=>[e.userId,e])),ne=new Set(g.map(e=>e.userId)),re=r.filter(e=>!ne.has(e.userId));return(0,M.jsxs)(`div`,{className:`space-y-6`,children:[(0,M.jsxs)($,{children:[(0,M.jsx)(sN,{children:(0,M.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,M.jsxs)(`div`,{children:[(0,M.jsx)(cN,{className:`text-base`,children:e(`teams.title`,{count:i.length})}),(0,M.jsx)(lN,{children:e(`teams.description`)})]}),(0,M.jsxs)(Q,{size:`sm`,onClick:()=>l(!0),children:[(0,M.jsx)(Oy,{className:`mr-2 h-4 w-4`}),e(`teams.create`)]})]})}),(0,M.jsxs)(uN,{children:[o&&(0,M.jsxs)(`div`,{className:`space-y-3`,children:[(0,M.jsx)(Mw,{className:`h-12 w-full`}),(0,M.jsx)(Mw,{className:`h-12 w-full`})]}),!o&&i.length===0&&(0,M.jsxs)(`div`,{className:`text-center py-8`,children:[(0,M.jsx)(Uy,{className:`mx-auto h-12 w-12 text-muted-foreground/50`}),(0,M.jsx)(`p`,{className:`mt-4 text-sm text-muted-foreground`,children:e(`teams.empty`)})]}),!o&&i.length>0&&(0,M.jsx)(`div`,{className:`divide-y`,children:i.map(t=>(0,M.jsxs)(`div`,{children:[(0,M.jsxs)(`div`,{className:`flex items-center justify-between py-3`,children:[(0,M.jsxs)(`button`,{type:`button`,className:`flex-1 text-left`,onClick:()=>h(m===t.id?null:t.id),children:[(0,M.jsx)(`div`,{className:`font-medium text-sm`,children:t.name}),t.createdAt&&(0,M.jsx)(`div`,{className:`text-xs text-muted-foreground`,children:new Date(t.createdAt).toLocaleDateString()})]}),(0,M.jsxs)(Hj,{children:[(0,M.jsx)(Uj,{asChild:!0,children:(0,M.jsx)(Q,{variant:`ghost`,size:`sm`,className:`h-8 w-8 p-0`,children:(0,M.jsx)(my,{className:`h-4 w-4`})})}),(0,M.jsx)(Kj,{align:`end`,children:(0,M.jsxs)(qj,{className:`text-destructive`,onClick:()=>D(t),children:[(0,M.jsx)(Ly,{className:`mr-2 h-4 w-4`}),e(`teams.delete`)]})})]})]}),m===t.id&&(0,M.jsxs)(`div`,{className:`pb-3 pl-4 border-l-2 ml-2 space-y-2`,children:[(0,M.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,M.jsx)(`p`,{className:`text-xs font-medium text-muted-foreground`,children:e(`teams.members`,{count:g.length})}),(0,M.jsxs)(Q,{size:`sm`,variant:`outline`,onClick:()=>x(!0),children:[(0,M.jsx)(Vy,{className:`mr-1 h-3 w-3`}),e(`teams.addMember`)]})]}),v&&(0,M.jsx)(Mw,{className:`h-8 w-full`}),!v&&g.length===0&&(0,M.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:e(`teams.noMembers`)}),!v&&g.map(e=>{let n=te[e.userId];return(0,M.jsxs)(`div`,{className:`flex items-center justify-between py-1`,children:[(0,M.jsx)(`span`,{className:`text-sm`,children:n?.user?.name||n?.user?.email||e.userId}),(0,M.jsx)(Q,{variant:`ghost`,size:`sm`,className:`h-7 w-7 p-0`,onClick:()=>ee(t.id,e.userId),children:(0,M.jsx)(By,{className:`h-3 w-3`})})]},e.id)})]})]},t.id))})]})]}),(0,M.jsx)(_P,{open:c,onOpenChange:l,children:(0,M.jsxs)(bP,{children:[(0,M.jsxs)(xP,{children:[(0,M.jsx)(CP,{children:e(`teams.createTitle`)}),(0,M.jsx)(wP,{children:e(`teams.createDescription`)})]}),(0,M.jsxs)(`form`,{onSubmit:E,children:[(0,M.jsx)(`div`,{className:`space-y-4 py-4`,children:(0,M.jsxs)(`div`,{className:`space-y-2`,children:[(0,M.jsx)(yN,{htmlFor:`team-name`,children:e(`teams.nameLabel`)}),(0,M.jsx)(Vx,{id:`team-name`,required:!0,placeholder:e(`teams.namePlaceholder`),value:u,onChange:e=>d(e.target.value)})]})}),(0,M.jsxs)(SP,{children:[(0,M.jsx)(Q,{variant:`outline`,type:`button`,onClick:()=>l(!1),children:e(`common.cancel`)}),(0,M.jsx)(Q,{type:`submit`,disabled:f,children:e(f?`common.saving`:`teams.create`)})]})]})]})}),(0,M.jsx)(_P,{open:b,onOpenChange:x,children:(0,M.jsxs)(bP,{children:[(0,M.jsxs)(xP,{children:[(0,M.jsx)(CP,{children:e(`teams.addMemberTitle`)}),(0,M.jsx)(wP,{children:e(`teams.addMemberDescription`)})]}),(0,M.jsx)(`div`,{className:`space-y-4 py-4`,children:(0,M.jsxs)(`div`,{className:`space-y-2`,children:[(0,M.jsx)(yN,{children:e(`teams.selectMember`)}),(0,M.jsxs)(_I,{value:S,onValueChange:C,children:[(0,M.jsx)(yI,{children:(0,M.jsx)(vI,{placeholder:e(`teams.selectMemberPlaceholder`)})}),(0,M.jsx)(SI,{children:re.map(e=>(0,M.jsx)(wI,{value:e.userId,children:e.user?.name||e.user?.email||e.userId},e.userId))})]})]})}),(0,M.jsxs)(SP,{children:[(0,M.jsx)(Q,{variant:`outline`,onClick:()=>x(!1),children:e(`common.cancel`)}),(0,M.jsx)(Q,{onClick:O,disabled:!S,children:e(`teams.addMember`)})]})]})})]})}var OI=j.forwardRef(({className:e,...t},n)=>(0,M.jsx)(`textarea`,{className:Z(`flex min-h-[60px] w-full rounded-md border border-input bg-transparent px-3 py-2 text-sm shadow-sm placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50`,e),ref:n,...t}));OI.displayName=`Textarea`;var kI=sa(`/organizations/$orgId/members`)({component:AI});function AI(){let{t:e}=vt(),{orgId:t}=kI.useParams(),{organizations:n}=BM(),{user:r}=zM(),i=Rg(),a=n.find(e=>e.id===t),{members:o,loading:s,inviteMember:c,removeMember:l,updateMemberRole:u}=MP(t),{invitations:d,loading:f,cancelInvitation:p,resendInvitation:m}=NP(t),[h,g]=(0,j.useState)(!1),[_,v]=(0,j.useState)(!1),[y,b]=(0,j.useState)(``),[x,S]=(0,j.useState)(``),[C,w]=(0,j.useState)(`member`),[T,E]=(0,j.useState)(!1),[D,O]=(0,j.useState)(!1),ee=d.filter(e=>e.status===`pending`),te=o.find(e=>e.userId===r?.id),ne=te?.role===`owner`||te?.role===`admin`,re=async()=>{let t=_?x.split(/[,;\n]+/).map(e=>e.trim()).filter(Boolean):[y.trim()].filter(Boolean);if(t.length===0){q({title:e(`organizations.members.emailRequired`),variant:`destructive`});return}E(!0);let n=0;try{for(let e of t)try{await c(e,C)}catch{n++}n>0&&n<t.length?q({title:e(`organizations.members.invitePartialSuccess`,{sent:t.length-n,failed:n}),variant:`destructive`}):n===t.length?q({title:e(`organizations.members.inviteFailed`),variant:`destructive`}):q({title:e(`organizations.members.invitationSent`)}),g(!1),b(``),S(``),w(`member`)}finally{E(!1)}},ie=async(t,n)=>{if(confirm(e(`organizations.members.removeConfirm`,{name:n})))try{await l(t),q({title:e(`organizations.members.memberRemoved`)})}catch(t){q({title:e(`organizations.members.removeFailed`),description:t.message,variant:`destructive`})}},ae=async(t,n)=>{try{await u(t,n),q({title:e(`organizations.members.roleUpdated`)})}catch(t){q({title:e(`organizations.members.roleUpdateFailed`),description:t.message,variant:`destructive`})}},oe=async()=>{if(confirm(e(`organizations.members.leaveConfirm`,{org:a?.name??t}))){O(!0);try{await i.organizations.leave(t),q({title:e(`organizations.members.leftOrg`)}),window.location.assign(`/`)}catch(t){q({title:e(`organizations.members.leaveFailed`),description:t.message,variant:`destructive`})}finally{O(!1)}}},k=async(t,n)=>{if(confirm(e(`organizations.members.cancelConfirm`,{email:n})))try{await p(t),q({title:e(`organizations.members.invitationCanceled`)})}catch(t){q({title:e(`organizations.members.cancelFailed`),description:t.message,variant:`destructive`})}},se=async t=>{try{await m(t),q({title:e(`organizations.members.invitationResent`)})}catch(t){q({title:e(`organizations.members.resendFailed`),description:t.message,variant:`destructive`})}},ce=async t=>{let n=`${window.location.origin}/accept-invitation/${t}`;try{await navigator.clipboard.writeText(n),q({title:e(`organizations.members.linkCopied`)})}catch{q({title:e(`organizations.members.linkCopyFailed`),variant:`destructive`})}};return(0,M.jsxs)(`div`,{className:`space-y-6`,children:[(0,M.jsxs)($,{children:[(0,M.jsx)(sN,{children:(0,M.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,M.jsxs)(`div`,{children:[(0,M.jsx)(cN,{className:`text-base`,children:e(`organizations.members.title`,{count:o.length})}),(0,M.jsx)(lN,{children:e(`organizations.members.description`)})]}),(0,M.jsxs)(`div`,{className:`flex gap-2`,children:[te&&te.role!==`owner`&&(0,M.jsxs)(Q,{size:`sm`,variant:`outline`,onClick:oe,disabled:D,children:[(0,M.jsx)(Cy,{className:`mr-2 h-4 w-4`}),e(`organizations.members.leave`)]}),ne&&(0,M.jsxs)(Q,{size:`sm`,onClick:()=>g(!0),children:[(0,M.jsx)(Vy,{className:`mr-2 h-4 w-4`}),e(`organizations.members.invite`)]})]})]})}),(0,M.jsxs)(uN,{children:[s&&(0,M.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:e(`organizations.members.loadingMembers`)}),!s&&o.length===0&&(0,M.jsxs)(`div`,{className:`text-center py-8`,children:[(0,M.jsx)(Wy,{className:`mx-auto h-12 w-12 text-muted-foreground/50`}),(0,M.jsx)(`p`,{className:`mt-4 text-sm text-muted-foreground`,children:e(`organizations.members.empty`)})]}),!s&&o.length>0&&(0,M.jsx)(`div`,{className:`divide-y`,children:o.map(t=>(0,M.jsxs)(`div`,{className:`flex items-center justify-between py-3`,children:[(0,M.jsxs)(`div`,{className:`flex-1`,children:[(0,M.jsxs)(`div`,{className:`font-medium text-sm`,children:[t.user?.name||t.user?.email||t.userId,t.userId===r?.id&&(0,M.jsx)(VN,{variant:`secondary`,className:`ml-2 text-xs`,children:e(`organizations.members.you`)})]}),t.user?.email&&(0,M.jsx)(`div`,{className:`text-xs text-muted-foreground`,children:t.user.email})]}),(0,M.jsxs)(`div`,{className:`flex items-center gap-2`,children:[ne&&t.role!==`owner`&&t.userId!==r?.id?(0,M.jsxs)(_I,{value:t.role,onValueChange:e=>ae(t.id,e),children:[(0,M.jsx)(yI,{className:`h-7 w-24 text-xs`,children:(0,M.jsx)(vI,{})}),(0,M.jsxs)(SI,{children:[(0,M.jsx)(wI,{value:`admin`,children:e(`common.roles.admin`)}),(0,M.jsx)(wI,{value:`member`,children:e(`common.roles.member`)})]})]}):(0,M.jsx)(VN,{variant:`secondary`,className:`text-xs`,children:e(`common.roles.${t.role??`member`}`)}),ne&&t.role!==`owner`&&t.userId!==r?.id&&(0,M.jsxs)(Hj,{children:[(0,M.jsx)(Uj,{asChild:!0,children:(0,M.jsx)(Q,{variant:`ghost`,size:`sm`,className:`h-8 w-8 p-0`,children:(0,M.jsx)(my,{className:`h-4 w-4`})})}),(0,M.jsx)(Kj,{align:`end`,children:(0,M.jsxs)(qj,{className:`text-destructive`,onClick:()=>ie(t.id,t.user?.name||t.user?.email||t.userId),children:[(0,M.jsx)(Ly,{className:`mr-2 h-4 w-4`}),e(`organizations.members.removeMember`)]})})]})]})]},t.id))})]})]}),(0,M.jsxs)($,{children:[(0,M.jsx)(sN,{children:(0,M.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,M.jsxs)(`div`,{children:[(0,M.jsx)(cN,{className:`text-base`,children:e(`organizations.members.pendingTitle`,{count:ee.length})}),(0,M.jsx)(lN,{children:e(`organizations.members.pendingDescription`)})]}),ne&&(0,M.jsxs)(Q,{size:`sm`,variant:`outline`,onClick:()=>g(!0),children:[(0,M.jsx)(Vy,{className:`mr-2 h-4 w-4`}),e(`organizations.members.sendInvitation`)]})]})}),(0,M.jsxs)(uN,{children:[f&&(0,M.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:e(`organizations.members.loadingInvitations`)}),!f&&ee.length===0&&(0,M.jsxs)(`div`,{className:`text-center py-8`,children:[(0,M.jsx)(wy,{className:`mx-auto h-12 w-12 text-muted-foreground/50`}),(0,M.jsx)(`p`,{className:`mt-4 text-sm text-muted-foreground`,children:e(`organizations.members.noPending`)})]}),!f&&ee.length>0&&(0,M.jsx)(`div`,{className:`divide-y`,children:ee.map(t=>(0,M.jsxs)(`div`,{className:`flex items-center justify-between py-3`,children:[(0,M.jsxs)(`div`,{className:`flex-1`,children:[(0,M.jsx)(`div`,{className:`font-medium text-sm`,children:t.email}),(0,M.jsxs)(`div`,{className:`flex items-center gap-2 mt-1`,children:[(0,M.jsx)(VN,{variant:`outline`,className:`text-xs`,children:e(`common.roles.${t.role}`)}),(0,M.jsxs)(`span`,{className:`text-xs text-muted-foreground flex items-center gap-1`,children:[(0,M.jsx)(fy,{className:`h-3 w-3`}),e(`organizations.members.expires`,{date:new Date(t.expiresAt).toLocaleDateString()})]})]})]}),(0,M.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,M.jsx)(Q,{variant:`ghost`,size:`sm`,className:`h-8 w-8 p-0`,title:e(`organizations.members.copyLink`),onClick:()=>ce(t.id),children:(0,M.jsx)(py,{className:`h-4 w-4`})}),(0,M.jsx)(Q,{variant:`ghost`,size:`sm`,className:`h-8 w-8 p-0`,title:e(`organizations.members.resend`),onClick:()=>se(t),children:(0,M.jsx)(ky,{className:`h-4 w-4`})}),(0,M.jsx)(Q,{variant:`ghost`,size:`sm`,className:`h-8 w-8 p-0`,title:e(`organizations.members.cancel`),onClick:()=>k(t.id,t.email),children:(0,M.jsx)(Gy,{className:`h-4 w-4`})})]})]},t.id))})]})]}),(0,M.jsx)(_P,{open:h,onOpenChange:g,children:(0,M.jsxs)(bP,{children:[(0,M.jsxs)(xP,{children:[(0,M.jsx)(CP,{children:e(`organizations.members.inviteDialogTitle`)}),(0,M.jsx)(wP,{children:e(`organizations.members.inviteDialogDescription`,{organization:a?.name??``})})]}),(0,M.jsxs)(`div`,{className:`space-y-4 py-4`,children:[(0,M.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,M.jsx)(Q,{type:`button`,variant:_?`outline`:`default`,size:`sm`,onClick:()=>v(!1),children:e(`organizations.members.singleInvite`)}),(0,M.jsx)(Q,{type:`button`,variant:_?`default`:`outline`,size:`sm`,onClick:()=>v(!0),children:e(`organizations.members.bulkInvite`)})]}),_?(0,M.jsxs)(`div`,{className:`space-y-2`,children:[(0,M.jsx)(yN,{children:e(`organizations.members.bulkEmails`)}),(0,M.jsx)(OI,{placeholder:e(`organizations.members.bulkEmailsPlaceholder`),rows:5,value:x,onChange:e=>S(e.target.value)}),(0,M.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:e(`organizations.members.bulkEmailsHint`)})]}):(0,M.jsxs)(`div`,{className:`space-y-2`,children:[(0,M.jsx)(yN,{htmlFor:`invite-email`,children:e(`organizations.members.email`)}),(0,M.jsx)(Vx,{id:`invite-email`,type:`email`,placeholder:e(`organizations.members.emailPlaceholder`),value:y,onChange:e=>b(e.target.value)})]}),(0,M.jsxs)(`div`,{className:`space-y-2`,children:[(0,M.jsx)(yN,{htmlFor:`role`,children:e(`organizations.members.role`)}),(0,M.jsxs)(_I,{value:C,onValueChange:w,children:[(0,M.jsx)(yI,{id:`role`,children:(0,M.jsx)(vI,{})}),(0,M.jsxs)(SI,{children:[(0,M.jsx)(wI,{value:`owner`,children:e(`common.roles.owner`)}),(0,M.jsx)(wI,{value:`admin`,children:e(`common.roles.admin`)}),(0,M.jsx)(wI,{value:`member`,children:e(`common.roles.member`)})]})]})]})]}),(0,M.jsxs)(SP,{children:[(0,M.jsx)(Q,{variant:`outline`,onClick:()=>g(!1),disabled:T,children:e(`common.cancel`)}),(0,M.jsx)(Q,{onClick:re,disabled:T,children:e(T?`organizations.members.sending`:`organizations.members.sendInvitation`)})]})]})})]})}var jI=sa(`/organizations/$orgId/general`)({component:MI});function MI(){let{t:e}=vt(),{orgId:t}=jI.useParams(),n=N(),{organizations:r}=BM(),{session:i,user:a,setActiveOrganization:o}=zM(),s=r.find(e=>e.id===t),{members:c}=MP(t),{invitations:l}=NP(t),{remove:u,deleting:d}=UM(),{update:f,updating:p}=HM(),[m,h]=(0,j.useState)(``),[g,_]=(0,j.useState)(``),[v,y]=(0,j.useState)(``),[b,x]=(0,j.useState)(!1),[S,C]=(0,j.useState)(``);(0,j.useEffect)(()=>{h(s?.name??``),_(s?.slug??``),y(s?.logo??``)},[s?.id,s?.name,s?.slug,s?.logo]);let w=i?.activeOrganizationId===t,T=l.filter(e=>e.status===`pending`),E=(a?c.find(e=>e.userId===a.id):void 0)?.role??null,D=E===`owner`||E===`admin`,O=D&&s!=null&&(m.trim()!==(s.name??``)||g.trim()!==(s.slug??``)||v.trim()!==(s.logo??``));return(0,M.jsxs)(`div`,{className:`space-y-6`,children:[(0,M.jsxs)(`div`,{className:`flex items-center justify-between gap-2`,children:[(0,M.jsxs)(`div`,{className:`flex items-center gap-2`,children:[w&&(0,M.jsx)(VN,{variant:`outline`,children:e(`organizations.active`)}),E&&(0,M.jsx)(VN,{variant:`secondary`,className:`capitalize`,children:e(`common.roles.${E}`)})]}),!w&&(0,M.jsx)(Q,{size:`sm`,variant:`outline`,onClick:async()=>{try{await o(t),q({title:e(`organizations.general.switched`)})}catch(t){q({title:e(`organizations.general.switchFailed`),description:t.message,variant:`destructive`})}},children:e(`organizations.general.setActive`)})]}),(0,M.jsxs)($,{children:[(0,M.jsxs)(sN,{children:[(0,M.jsx)(cN,{children:e(`organizations.general.detailsTitle`)}),(0,M.jsx)(lN,{children:e(D?`organizations.general.detailsDescription`:`organizations.general.detailsReadOnly`)})]}),(0,M.jsxs)(uN,{className:`space-y-4`,children:[(0,M.jsxs)(`div`,{className:`space-y-2`,children:[(0,M.jsx)(yN,{htmlFor:`org-name`,children:e(`organizations.new.name`)}),(0,M.jsx)(Vx,{id:`org-name`,value:m,onChange:e=>h(e.target.value),disabled:!D||p,placeholder:e(`organizations.general.namePlaceholder`)})]}),(0,M.jsxs)(`div`,{className:`space-y-2`,children:[(0,M.jsx)(yN,{htmlFor:`org-slug`,children:e(`organizations.new.slug`)}),(0,M.jsx)(Vx,{id:`org-slug`,value:g,onChange:e=>_(e.target.value),disabled:!D||p,placeholder:e(`organizations.general.slugPlaceholder`),className:`font-mono text-sm`}),(0,M.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:e(`organizations.general.slugHint`)})]}),(0,M.jsxs)(`div`,{className:`space-y-2`,children:[(0,M.jsx)(yN,{htmlFor:`org-logo`,children:e(`organizations.general.logo`)}),(0,M.jsx)(Vx,{id:`org-logo`,value:v,onChange:e=>y(e.target.value),disabled:!D||p,placeholder:e(`organizations.general.logoPlaceholder`)})]}),(0,M.jsxs)(`div`,{className:`flex justify-between border-t pt-4 text-xs`,children:[(0,M.jsx)(`span`,{className:`text-muted-foreground`,children:e(`organizations.general.organizationId`)}),(0,M.jsx)(`code`,{className:`font-mono`,children:t})]})]}),D&&(0,M.jsxs)(uN,{className:`flex justify-end gap-2 border-t pt-4`,children:[(0,M.jsx)(Q,{variant:`ghost`,size:`sm`,onClick:()=>{h(s?.name??``),_(s?.slug??``),y(s?.logo??``)},disabled:!O||p,children:e(`organizations.general.reset`)}),(0,M.jsxs)(Q,{size:`sm`,onClick:async()=>{if(!s||!D||!O)return;let n=m.trim();if(!n){q({title:e(`organizations.general.nameRequired`),variant:`destructive`});return}try{await f(t,{name:n,slug:g.trim()||void 0,logo:v.trim()||void 0}),q({title:e(`organizations.general.updated`)})}catch(t){q({title:e(`organizations.general.updateFailed`),description:t.message,variant:`destructive`})}},disabled:!O||p,children:[(0,M.jsx)(Ay,{className:`mr-2 h-4 w-4`}),e(p?`common.saving`:`organizations.general.save`)]})]})]}),(0,M.jsxs)($,{children:[(0,M.jsx)(sN,{children:(0,M.jsx)(cN,{className:`text-base`,children:e(`organizations.general.overviewTitle`)})}),(0,M.jsxs)(uN,{className:`space-y-3 text-sm`,children:[(0,M.jsxs)(`div`,{className:`flex justify-between`,children:[(0,M.jsx)(`span`,{className:`text-muted-foreground`,children:e(`organizations.general.members`)}),(0,M.jsx)(`span`,{children:c.length})]}),(0,M.jsxs)(`div`,{className:`flex justify-between`,children:[(0,M.jsx)(`span`,{className:`text-muted-foreground`,children:e(`organizations.general.pendingInvitations`)}),(0,M.jsx)(`span`,{children:T.length})]})]})]}),D&&(0,M.jsxs)($,{className:`border-destructive/40`,children:[(0,M.jsxs)(sN,{children:[(0,M.jsx)(cN,{className:`text-base text-destructive`,children:e(`organizations.general.dangerTitle`)}),(0,M.jsx)(lN,{children:e(`organizations.general.dangerDescription`)})]}),(0,M.jsx)(uN,{children:(0,M.jsxs)(Q,{variant:`destructive`,size:`sm`,onClick:()=>x(!0),disabled:d,children:[(0,M.jsx)(Ly,{className:`mr-2 h-4 w-4`}),e(`organizations.general.delete`)]})})]}),(0,M.jsx)(_P,{open:b,onOpenChange:e=>{x(e),e||C(``)},children:(0,M.jsxs)(bP,{children:[(0,M.jsxs)(xP,{children:[(0,M.jsx)(CP,{className:`text-destructive`,children:e(`organizations.general.deleteDialogTitle`)}),(0,M.jsx)(wP,{children:e(`organizations.general.deleteDialogDescription`,{name:s?.name??``})})]}),(0,M.jsx)(`div`,{className:`space-y-4 py-2`,children:(0,M.jsxs)(`div`,{className:`space-y-2`,children:[(0,M.jsx)(yN,{htmlFor:`delete-confirm`,children:e(`organizations.general.deleteDialogLabel`,{name:s?.name??``})}),(0,M.jsx)(Vx,{id:`delete-confirm`,value:S,onChange:e=>C(e.target.value),placeholder:s?.name??``,disabled:d})]})}),(0,M.jsxs)(SP,{children:[(0,M.jsx)(Q,{variant:`outline`,onClick:()=>x(!1),disabled:d,children:e(`common.cancel`)}),(0,M.jsx)(Q,{variant:`destructive`,onClick:async()=>{if(s){if(S!==s.name){q({title:e(`organizations.general.confirmationMismatch`),description:e(`organizations.general.confirmationHint`,{name:s.name}),variant:`destructive`});return}try{let r=await u(t),i=r?.warnings,a=r?.deletedProjects??0;q({title:e(`organizations.general.deleted`),description:i?.length?e(`organizations.general.deletedWithWarnings`,{deletedProjects:a,warning:i[0],extraCount:Math.max(i.length-1,0)}):e(`organizations.general.deletedDescription`,{name:s.name,deletedProjects:a}),variant:i?.length?`destructive`:void 0}),x(!1),C(``),n({to:`/organizations`})}catch(t){q({title:e(`organizations.general.deleteFailed`),description:t.message,variant:`destructive`})}}},disabled:d||!s||S!==s.name,children:e(d?`organizations.general.deleting`:`organizations.general.delete`)})]})]})})]})}var NI=sa(`/account/oauth-applications/new`)({component:PI});function PI(){let{t:e}=vt(),t=N(),{register:n,registering:r}=eP(),[i,a]=(0,j.useState)(``),[o,s]=(0,j.useState)(``),[c,l]=(0,j.useState)(`client_secret_basic`),[u,d]=(0,j.useState)(``),[f,p]=(0,j.useState)(``),[m,h]=(0,j.useState)(null),g=async()=>{let t=i.trim(),r=o.split(/\r?\n|,/).map(e=>e.trim()).filter(Boolean);if(!t){q({title:e(`oauth.applications.form.nameRequired`),variant:`destructive`});return}if(r.length===0){q({title:e(`oauth.applications.form.redirectRequired`),variant:`destructive`});return}try{let i=await n({client_name:t,redirect_uris:r,token_endpoint_auth_method:c,...u.trim()?{client_uri:u.trim()}:{},...f.trim()?{logo_uri:f.trim()}:{}});h({client_id:i?.client_id??``,client_secret:i?.client_secret}),q({title:e(`oauth.applications.registered`)})}catch(t){q({title:e(`oauth.applications.registerFailed`),description:t.message,variant:`destructive`})}},_=(t,n)=>{navigator.clipboard.writeText(t).then(()=>q({title:e(`oauth.applications.copied`,{label:n})}),()=>q({title:e(`oauth.applications.copyFailed`,{label:n}),variant:`destructive`}))};return m?(0,M.jsxs)(`div`,{className:`space-y-6`,children:[(0,M.jsxs)(`div`,{children:[(0,M.jsx)(`h1`,{className:`text-2xl font-semibold`,children:e(`oauth.applications.registeredTitle`)}),(0,M.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:e(`oauth.applications.registeredDescription`)})]}),(0,M.jsxs)($,{children:[(0,M.jsxs)(sN,{children:[(0,M.jsx)(cN,{children:e(`oauth.applications.credentials`)}),(0,M.jsx)(lN,{children:e(`oauth.applications.credentialsDescription`)})]}),(0,M.jsxs)(uN,{className:`space-y-4`,children:[(0,M.jsxs)(`div`,{className:`space-y-1`,children:[(0,M.jsx)(yN,{children:e(`oauth.applications.clientId`)}),(0,M.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,M.jsx)(`code`,{className:`flex-1 rounded-md border bg-muted px-3 py-2 font-mono text-xs`,children:m.client_id}),(0,M.jsx)(Q,{size:`icon`,variant:`outline`,onClick:()=>_(m.client_id,e(`oauth.applications.clientId`)),children:(0,M.jsx)(py,{className:`h-4 w-4`})})]})]}),m.client_secret&&(0,M.jsxs)(`div`,{className:`space-y-1`,children:[(0,M.jsx)(yN,{children:e(`oauth.applications.clientSecret`)}),(0,M.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,M.jsx)(`code`,{className:`flex-1 break-all rounded-md border bg-muted px-3 py-2 font-mono text-xs`,children:m.client_secret}),(0,M.jsx)(Q,{size:`icon`,variant:`outline`,onClick:()=>_(m.client_secret,e(`oauth.applications.clientSecret`)),children:(0,M.jsx)(py,{className:`h-4 w-4`})})]}),(0,M.jsx)(`p`,{className:`text-xs text-destructive`,children:e(`oauth.applications.clientSecretWarning`)})]})]})]}),(0,M.jsxs)(`div`,{className:`flex justify-end gap-2`,children:[(0,M.jsx)(Q,{variant:`outline`,onClick:()=>t({to:`/account/oauth-applications`}),children:e(`oauth.applications.backToList`)}),(0,M.jsx)(Q,{onClick:()=>t({to:`/account/oauth-applications/$clientId`,params:{clientId:m.client_id}}),children:e(`oauth.applications.viewApplication`)})]})]}):(0,M.jsxs)(`div`,{className:`space-y-6`,children:[(0,M.jsxs)(`div`,{children:[(0,M.jsx)(`h1`,{className:`text-2xl font-semibold`,children:e(`oauth.applications.form.title`)}),(0,M.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:e(`oauth.applications.form.description`)})]}),(0,M.jsxs)($,{children:[(0,M.jsx)(sN,{children:(0,M.jsxs)(cN,{className:`flex items-center gap-2 text-base`,children:[(0,M.jsx)(yy,{className:`h-4 w-4`}),e(`oauth.applications.form.details`)]})}),(0,M.jsxs)(uN,{className:`space-y-4`,children:[(0,M.jsxs)(`div`,{className:`space-y-2`,children:[(0,M.jsx)(yN,{htmlFor:`oauth-name`,children:e(`oauth.applications.form.name`)}),(0,M.jsx)(Vx,{id:`oauth-name`,value:i,onChange:e=>a(e.target.value),placeholder:e(`oauth.applications.form.namePlaceholder`),disabled:r})]}),(0,M.jsxs)(`div`,{className:`space-y-2`,children:[(0,M.jsx)(yN,{htmlFor:`oauth-redirect`,children:e(`oauth.applications.form.redirectUris`)}),(0,M.jsx)(OI,{id:`oauth-redirect`,value:o,onChange:e=>s(e.target.value),placeholder:e(`oauth.applications.form.redirectPlaceholder`),rows:3,disabled:r}),(0,M.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:e(`oauth.applications.form.redirectHint`)})]}),(0,M.jsxs)(`div`,{className:`space-y-2`,children:[(0,M.jsx)(yN,{children:e(`oauth.applications.form.authMethod`)}),(0,M.jsxs)(_I,{value:c,onValueChange:e=>l(e),disabled:r,children:[(0,M.jsx)(yI,{children:(0,M.jsx)(vI,{})}),(0,M.jsxs)(SI,{children:[(0,M.jsx)(wI,{value:`client_secret_basic`,children:e(`oauth.applications.form.authMethodBasic`)}),(0,M.jsx)(wI,{value:`client_secret_post`,children:e(`oauth.applications.form.authMethodPost`)}),(0,M.jsx)(wI,{value:`none`,children:e(`oauth.applications.form.authMethodNone`)})]})]})]}),(0,M.jsxs)(`div`,{className:`space-y-2`,children:[(0,M.jsx)(yN,{htmlFor:`oauth-client-uri`,children:e(`oauth.applications.form.clientUri`)}),(0,M.jsx)(Vx,{id:`oauth-client-uri`,value:u,onChange:e=>d(e.target.value),placeholder:e(`oauth.applications.form.clientUriPlaceholder`),disabled:r})]}),(0,M.jsxs)(`div`,{className:`space-y-2`,children:[(0,M.jsx)(yN,{htmlFor:`oauth-logo`,children:e(`oauth.applications.form.logoUri`)}),(0,M.jsx)(Vx,{id:`oauth-logo`,value:f,onChange:e=>p(e.target.value),placeholder:e(`oauth.applications.form.logoUriPlaceholder`),disabled:r}),(0,M.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:e(`oauth.applications.form.logoHint`)})]})]})]}),(0,M.jsxs)(`div`,{className:`flex justify-end gap-2`,children:[(0,M.jsx)(Q,{variant:`ghost`,onClick:()=>t({to:`/account/oauth-applications`}),disabled:r,children:e(`common.cancel`)}),(0,M.jsx)(Q,{onClick:g,disabled:r,children:e(r?`oauth.applications.form.registering`:`oauth.applications.register`)})]})]})}var FI=sa(`/account/oauth-applications/$clientId`)({component:II});function II(){let{t:e}=vt(),{clientId:t}=FI.useParams(),n=N(),{applications:r,loading:i,reload:a}=$N(),{remove:o,deleting:s}=tP(),c=Rg(),l=r.find(e=>e.client_id===t),[u,d]=(0,j.useState)(null);(0,j.useEffect)(()=>{let e=!1;if(!l&&c?.oauth?.applications?.get)return c.oauth.applications.get(t).then(t=>{e||d(t?.data??t)},()=>{}),()=>{e=!0}},[c,t,l]);let f=l??u,[p,m]=(0,j.useState)(!1),h=(t,n)=>{navigator.clipboard.writeText(t).then(()=>q({title:e(`oauth.applications.copied`,{label:n})}),()=>q({title:e(`oauth.applications.copyFailed`,{label:n}),variant:`destructive`}))},g=async()=>{if(f)try{await o(f.client_id),q({title:e(`oauth.applications.deleted`)}),await a(),n({to:`/account/oauth-applications`})}catch(t){q({title:e(`oauth.applications.deleteFailed`),description:t.message,variant:`destructive`})}};if(i&&!f)return(0,M.jsx)(`div`,{className:`p-8 text-center text-sm text-muted-foreground`,children:e(`common.loading`)});if(!f)return(0,M.jsxs)(`div`,{className:`space-y-4`,children:[(0,M.jsx)(`h1`,{className:`text-2xl font-semibold`,children:e(`oauth.applications.notFoundTitle`)}),(0,M.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:e(`oauth.applications.notFoundDescription`)}),(0,M.jsx)(Q,{onClick:()=>n({to:`/account/oauth-applications`}),children:e(`oauth.applications.backToList`)})]});let _=typeof f.redirect_urls==`string`?f.redirect_urls.split(/\r?\n|,/).map(e=>e.trim()).filter(Boolean):Array.isArray(f.redirect_urls)?f.redirect_urls:[];return(0,M.jsxs)(`div`,{className:`space-y-6`,children:[(0,M.jsxs)(`div`,{className:`flex items-center justify-between gap-4`,children:[(0,M.jsxs)(`div`,{children:[(0,M.jsx)(`h1`,{className:`text-2xl font-semibold`,children:f.name}),(0,M.jsx)(`p`,{className:`font-mono text-xs text-muted-foreground`,children:f.client_id})]}),(0,M.jsxs)(`div`,{className:`flex items-center gap-2`,children:[f.type&&(0,M.jsx)(VN,{variant:`outline`,className:`capitalize`,children:f.type}),f.disabled&&(0,M.jsx)(VN,{variant:`destructive`,children:e(`oauth.applications.disabled`)})]})]}),(0,M.jsxs)($,{children:[(0,M.jsxs)(sN,{children:[(0,M.jsx)(cN,{children:e(`oauth.applications.credentials`)}),(0,M.jsx)(lN,{children:e(`oauth.applications.credentialsDescriptionDetail`)})]}),(0,M.jsxs)(uN,{className:`space-y-4`,children:[(0,M.jsxs)(`div`,{className:`space-y-1`,children:[(0,M.jsx)(yN,{children:e(`oauth.applications.clientId`)}),(0,M.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,M.jsx)(`code`,{className:`flex-1 rounded-md border bg-muted px-3 py-2 font-mono text-xs`,children:f.client_id}),(0,M.jsx)(Q,{size:`icon`,variant:`outline`,onClick:()=>h(f.client_id,e(`oauth.applications.clientId`)),children:(0,M.jsx)(py,{className:`h-4 w-4`})})]})]}),(0,M.jsxs)(`div`,{className:`space-y-1`,children:[(0,M.jsx)(yN,{children:e(`oauth.applications.redirectUris`)}),_.length===0?(0,M.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:e(`oauth.applications.noRedirectUris`)}):(0,M.jsx)(`ul`,{className:`space-y-1`,children:_.map((e,t)=>(0,M.jsx)(`li`,{className:`rounded-md border bg-muted px-3 py-2 font-mono text-xs`,children:e},t))})]})]})]}),(0,M.jsxs)($,{className:`border-destructive/40`,children:[(0,M.jsxs)(sN,{children:[(0,M.jsx)(cN,{className:`text-base text-destructive`,children:e(`oauth.applications.dangerTitle`)}),(0,M.jsx)(lN,{children:e(`oauth.applications.dangerDescription`)})]}),(0,M.jsx)(uN,{children:(0,M.jsxs)(Q,{variant:`destructive`,size:`sm`,onClick:()=>m(!0),disabled:s,children:[(0,M.jsx)(Ly,{className:`mr-2 h-4 w-4`}),e(`oauth.applications.delete`)]})})]}),(0,M.jsx)(_P,{open:p,onOpenChange:m,children:(0,M.jsxs)(bP,{children:[(0,M.jsxs)(xP,{children:[(0,M.jsx)(CP,{className:`text-destructive`,children:e(`oauth.applications.deleteDialogTitle`)}),(0,M.jsx)(wP,{children:e(`oauth.applications.deleteDialogDescription`,{name:f.name})})]}),(0,M.jsxs)(SP,{children:[(0,M.jsx)(Q,{variant:`outline`,onClick:()=>m(!1),disabled:s,children:e(`common.cancel`)}),(0,M.jsx)(Q,{variant:`destructive`,onClick:g,disabled:s,children:e(s?`oauth.applications.deleting`:`common.delete`)})]})]})})]})}var LI=pN.update({id:`/verify-email`,path:`/verify-email`,getParentRoute:()=>oN}),RI=bN.update({id:`/setup`,path:`/setup`,getParentRoute:()=>oN}),zI=CN.update({id:`/reset-password`,path:`/reset-password`,getParentRoute:()=>oN}),BI=EN.update({id:`/register`,path:`/register`,getParentRoute:()=>oN}),VI=AN.update({id:`/login`,path:`/login`,getParentRoute:()=>oN}),HI=PN.update({id:`/forgot-password`,path:`/forgot-password`,getParentRoute:()=>oN}),UI=IN.update({id:`/account`,path:`/account`,getParentRoute:()=>oN}),WI=RN.update({id:`/`,path:`/`,getParentRoute:()=>oN}),GI=UN.update({id:`/organizations/`,path:`/organizations/`,getParentRoute:()=>oN}),KI=GN.update({id:`/`,path:`/`,getParentRoute:()=>UI}),qI=JN.update({id:`/organizations/new`,path:`/organizations/new`,getParentRoute:()=>oN}),JI=ZN.update({id:`/organizations/$orgId`,path:`/organizations/$orgId`,getParentRoute:()=>oN}),YI=rP.update({id:`/oauth/consent`,path:`/oauth/consent`,getParentRoute:()=>oN}),XI=oP.update({id:`/auth/device`,path:`/auth/device`,getParentRoute:()=>oN}),ZI=lP.update({id:`/two-factor`,path:`/two-factor`,getParentRoute:()=>UI}),QI=mP.update({id:`/sessions`,path:`/sessions`,getParentRoute:()=>UI}),$I=TP.update({id:`/security`,path:`/security`,getParentRoute:()=>UI}),eL=DP.update({id:`/profile`,path:`/profile`,getParentRoute:()=>UI}),tL=kP.update({id:`/linked-accounts`,path:`/linked-accounts`,getParentRoute:()=>UI}),nL=FP.update({id:`/invitations`,path:`/invitations`,getParentRoute:()=>UI}),rL=LP.update({id:`/accept-invitation/$invitationId`,path:`/accept-invitation/$invitationId`,getParentRoute:()=>oN}),iL=zP.update({id:`/`,path:`/`,getParentRoute:()=>JI}),aL=BP.update({id:`/oauth-applications/`,path:`/oauth-applications/`,getParentRoute:()=>UI}),oL=EI.update({id:`/teams`,path:`/teams`,getParentRoute:()=>JI}),sL=kI.update({id:`/members`,path:`/members`,getParentRoute:()=>JI}),cL=jI.update({id:`/general`,path:`/general`,getParentRoute:()=>JI}),lL=NI.update({id:`/oauth-applications/new`,path:`/oauth-applications/new`,getParentRoute:()=>UI}),uL={AccountInvitationsRoute:nL,AccountLinkedAccountsRoute:tL,AccountProfileRoute:eL,AccountSecurityRoute:$I,AccountSessionsRoute:QI,AccountTwoFactorRoute:ZI,AccountIndexRoute:KI,AccountOauthApplicationsClientIdRoute:FI.update({id:`/oauth-applications/$clientId`,path:`/oauth-applications/$clientId`,getParentRoute:()=>UI}),AccountOauthApplicationsNewRoute:lL,AccountOauthApplicationsIndexRoute:aL},dL=UI._addFileChildren(uL),fL={OrganizationsOrgIdGeneralRoute:cL,OrganizationsOrgIdMembersRoute:sL,OrganizationsOrgIdTeamsRoute:oL,OrganizationsOrgIdIndexRoute:iL},pL={IndexRoute:WI,AccountRoute:dL,ForgotPasswordRoute:HI,LoginRoute:VI,RegisterRoute:BI,ResetPasswordRoute:zI,SetupRoute:RI,VerifyEmailRoute:LI,AcceptInvitationInvitationIdRoute:rL,AuthDeviceRoute:XI,OauthConsentRoute:YI,OrganizationsOrgIdRoute:JI._addFileChildren(fL),OrganizationsNewRoute:qI,OrganizationsIndexRoute:GI},mL=oN._addFileChildren(pL)._addFileTypes();function hL(){let e=`/_account/`;return e.endsWith(`/`)?e.slice(0,-1):e}var gL=Sa({routeTree:mL,basepath:hL()});function _L(){return(0,M.jsx)(Ta,{router:gL})}var vL=typeof localStorage<`u`&&localStorage.getItem(`account.lang`)||typeof navigator<`u`&&navigator.language||`en`;Kf.createRoot(document.getElementById(`root`)).render((0,M.jsx)(j.StrictMode,{children:(0,M.jsx)(_t,{config:{defaultLanguage:vL,fallbackLanguage:`en`},loadLanguage:oM,children:(0,M.jsx)(_L,{})})}));