@kahitsan/plugin-sdk 0.7.3 → 0.8.1

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.
Files changed (51) hide show
  1. package/dist/index.d.ts +40 -2
  2. package/dist/index.js +1 -1
  3. package/package.json +1 -1
  4. package/shell/_build/.vite/manifest.json +20 -19
  5. package/shell/_build/.vite/manifest.json.br +0 -0
  6. package/shell/_build/.vite/manifest.json.gz +0 -0
  7. package/shell/_build/assets/{_...slug_-BcdF4l5Z.js → _...slug_-B4-_ue16.js} +1 -1
  8. package/shell/_build/assets/_...slug_-B4-_ue16.js.br +0 -0
  9. package/shell/_build/assets/_...slug_-B4-_ue16.js.gz +0 -0
  10. package/shell/_build/assets/auth-Cej23JxT.js +72 -0
  11. package/shell/_build/assets/auth-Cej23JxT.js.br +0 -0
  12. package/shell/_build/assets/auth-Cej23JxT.js.gz +0 -0
  13. package/shell/_build/assets/client-Bf7-2Yun.js +2 -0
  14. package/shell/_build/assets/client-Bf7-2Yun.js.br +0 -0
  15. package/shell/_build/assets/client-Bf7-2Yun.js.gz +0 -0
  16. package/shell/_build/assets/client-GDtwpC-d.css +1 -0
  17. package/shell/_build/assets/client-GDtwpC-d.css.br +0 -0
  18. package/shell/_build/assets/client-GDtwpC-d.css.gz +0 -0
  19. package/shell/_build/assets/{index-CwObwzl5.js → index-CTiiFAXk.js} +1 -1
  20. package/shell/_build/assets/plugin-ui-CpJUaqcE.js +10 -0
  21. package/shell/_build/assets/plugin-ui-CpJUaqcE.js.br +0 -0
  22. package/shell/_build/assets/plugin-ui-CpJUaqcE.js.gz +0 -0
  23. package/shell/_build/assets/workspace-nav-DId-5rKi.js +1 -0
  24. package/shell/_build/assets/workspace-nav-DId-5rKi.js.br +0 -0
  25. package/shell/_build/assets/workspace-nav-DId-5rKi.js.gz +0 -0
  26. package/shell/_server/assets/app-GDtwpC-d.css +1 -0
  27. package/shell/_server/assets/app-GDtwpC-d.css.br +0 -0
  28. package/shell/_server/assets/app-GDtwpC-d.css.gz +0 -0
  29. package/shell/index.html +1 -1
  30. package/shell/index.html.br +0 -0
  31. package/shell/index.html.gz +0 -0
  32. package/shell/_build/assets/_...slug_-BcdF4l5Z.js.br +0 -0
  33. package/shell/_build/assets/_...slug_-BcdF4l5Z.js.gz +0 -0
  34. package/shell/_build/assets/auth-DnjIzX2B.js +0 -70
  35. package/shell/_build/assets/auth-DnjIzX2B.js.br +0 -0
  36. package/shell/_build/assets/auth-DnjIzX2B.js.gz +0 -0
  37. package/shell/_build/assets/client-BmadCoeU.css +0 -1
  38. package/shell/_build/assets/client-BmadCoeU.css.br +0 -0
  39. package/shell/_build/assets/client-BmadCoeU.css.gz +0 -0
  40. package/shell/_build/assets/client-StEn6jq1.js +0 -2
  41. package/shell/_build/assets/client-StEn6jq1.js.br +0 -0
  42. package/shell/_build/assets/client-StEn6jq1.js.gz +0 -0
  43. package/shell/_build/assets/plugin-ui-CBTroTyb.js +0 -10
  44. package/shell/_build/assets/plugin-ui-CBTroTyb.js.br +0 -0
  45. package/shell/_build/assets/plugin-ui-CBTroTyb.js.gz +0 -0
  46. package/shell/_build/assets/workspace-nav-fkYL3-AV.js +0 -1
  47. package/shell/_build/assets/workspace-nav-fkYL3-AV.js.br +0 -0
  48. package/shell/_build/assets/workspace-nav-fkYL3-AV.js.gz +0 -0
  49. package/shell/_server/assets/app-BmadCoeU.css +0 -1
  50. package/shell/_server/assets/app-BmadCoeU.css.br +0 -0
  51. package/shell/_server/assets/app-BmadCoeU.css.gz +0 -0
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kahitsan/plugin-sdk",
3
- "version": "0.7.3",
3
+ "version": "0.8.1",
4
4
  "description": "THE single public author surface for Hilinga plugins: createPlugin, auth guards, the workspace-scoped data surface (makeDataSurface) + migrations + withTenantContext, cross-plugin RPC, and the wire-protocol verify surface. One npm package, no -composite/-protocol companions. Self-contained, no kernel internals, no signing capability.",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -1,6 +1,6 @@
1
1
  {
2
- "_auth-DnjIzX2B.js": {
3
- "file": "assets/auth-DnjIzX2B.js",
2
+ "_auth-Cej23JxT.js": {
3
+ "file": "assets/auth-Cej23JxT.js",
4
4
  "name": "auth",
5
5
  "imports": [
6
6
  "_routing-C6AwqsGL.js",
@@ -14,36 +14,37 @@
14
14
  "_routing-C6AwqsGL.js"
15
15
  ]
16
16
  },
17
- "_plugin-ui-CBTroTyb.js": {
18
- "file": "assets/plugin-ui-CBTroTyb.js",
17
+ "_plugin-ui-CpJUaqcE.js": {
18
+ "file": "assets/plugin-ui-CpJUaqcE.js",
19
19
  "name": "plugin-ui",
20
20
  "imports": [
21
21
  "_routing-C6AwqsGL.js",
22
- "_auth-DnjIzX2B.js"
22
+ "_auth-Cej23JxT.js",
23
+ "_components-CWmQ2MDX.js"
23
24
  ]
24
25
  },
25
26
  "_routing-C6AwqsGL.js": {
26
27
  "file": "assets/routing-C6AwqsGL.js",
27
28
  "name": "routing"
28
29
  },
29
- "_workspace-nav-fkYL3-AV.js": {
30
- "file": "assets/workspace-nav-fkYL3-AV.js",
30
+ "_workspace-nav-DId-5rKi.js": {
31
+ "file": "assets/workspace-nav-DId-5rKi.js",
31
32
  "name": "workspace-nav",
32
33
  "imports": [
33
- "_auth-DnjIzX2B.js",
34
+ "_auth-Cej23JxT.js",
34
35
  "_routing-C6AwqsGL.js"
35
36
  ]
36
37
  },
37
38
  "src/routes/[...slug].tsx?pick=default&pick=$css": {
38
- "file": "assets/_...slug_-BcdF4l5Z.js",
39
+ "file": "assets/_...slug_-B4-_ue16.js",
39
40
  "name": "_...slug_",
40
41
  "src": "src/routes/[...slug].tsx?pick=default&pick=$css",
41
42
  "isEntry": true,
42
43
  "isDynamicEntry": true,
43
44
  "imports": [
44
45
  "_routing-C6AwqsGL.js",
45
- "_plugin-ui-CBTroTyb.js",
46
- "_auth-DnjIzX2B.js",
46
+ "_plugin-ui-CpJUaqcE.js",
47
+ "_auth-Cej23JxT.js",
47
48
  "_components-CWmQ2MDX.js"
48
49
  ]
49
50
  },
@@ -69,15 +70,15 @@
69
70
  ]
70
71
  },
71
72
  "src/routes/index.tsx?pick=default&pick=$css": {
72
- "file": "assets/index-CwObwzl5.js",
73
+ "file": "assets/index-CTiiFAXk.js",
73
74
  "name": "index",
74
75
  "src": "src/routes/index.tsx?pick=default&pick=$css",
75
76
  "isEntry": true,
76
77
  "isDynamicEntry": true,
77
78
  "imports": [
78
79
  "_routing-C6AwqsGL.js",
79
- "_auth-DnjIzX2B.js",
80
- "_workspace-nav-fkYL3-AV.js",
80
+ "_auth-Cej23JxT.js",
81
+ "_workspace-nav-DId-5rKi.js",
81
82
  "_components-CWmQ2MDX.js"
82
83
  ]
83
84
  },
@@ -158,15 +159,15 @@
158
159
  ]
159
160
  },
160
161
  "virtual:$vinxi/handler/client": {
161
- "file": "assets/client-StEn6jq1.js",
162
+ "file": "assets/client-Bf7-2Yun.js",
162
163
  "name": "client",
163
164
  "src": "virtual:$vinxi/handler/client",
164
165
  "isEntry": true,
165
166
  "imports": [
166
167
  "_routing-C6AwqsGL.js",
167
- "_plugin-ui-CBTroTyb.js",
168
- "_auth-DnjIzX2B.js",
169
- "_workspace-nav-fkYL3-AV.js",
168
+ "_plugin-ui-CpJUaqcE.js",
169
+ "_auth-Cej23JxT.js",
170
+ "_workspace-nav-DId-5rKi.js",
170
171
  "_components-CWmQ2MDX.js"
171
172
  ],
172
173
  "dynamicImports": [
@@ -183,7 +184,7 @@
183
184
  "src/routes/workspaces.tsx?pick=default&pick=$css"
184
185
  ],
185
186
  "css": [
186
- "assets/client-BmadCoeU.css"
187
+ "assets/client-GDtwpC-d.css"
187
188
  ]
188
189
  }
189
190
  }
Binary file
Binary file
@@ -1 +1 @@
1
- import{p as R,G as I,k as w,Z as W,l as j,C as L,a as G,z as s,e as n,S as g,I as H,J as E,Q as M,A as f,F as U,N as A}from"./routing-C6AwqsGL.js";import{f as B,u as T,l as D,a as P}from"./plugin-ui-CBTroTyb.js";import{u as J,F as Q}from"./auth-DnjIzX2B.js";import"./components-CWmQ2MDX.js";var X=f('<select class="shrink-0 cursor-pointer rounded border border-zinc-700 bg-zinc-900 px-2 py-1 text-[11px] text-zinc-200">'),Z=f('<div class="fixed inset-0 z-50 flex flex-col bg-zinc-950"><div class="flex shrink-0 items-center justify-between gap-3 border-b border-zinc-800 px-4 py-3"><div class="flex min-w-0 items-center gap-3"><h1 class="truncate text-sm font-semibold text-zinc-200"><span class="ml-2 text-zinc-500">— flow spec</span></h1></div><button type=button class="shrink-0 rounded border border-zinc-700 px-3 py-1 text-xs text-zinc-300 hover:bg-zinc-800"aria-label="Close full-screen flow spec">✕ Close</button></div><div class="min-h-0 flex-1">'),q=f("<option>"),K=f('<div class="flex h-full items-center justify-center text-sm text-zinc-500">');function O(i){const m=I(),{activeWorkspace:p}=J(),[x,_]=w(0),[v,b]=w(600);let a;const h=()=>{a&&b(a.clientHeight)};W(()=>{h(),window.addEventListener("resize",h),j(()=>window.removeEventListener("resize",h))});const[c]=L(()=>({wsId:p()?.ws_id??null,plugin:i.plugin}),async({wsId:t,plugin:o})=>{if(!t)return null;const l=await fetch("/api/plugins/graph",{credentials:"include",headers:{"X-Workspace-Id":String(t)}});return l.ok?(await l.json()).plugins.find($=>$.key===o||$.name===o)??null:null}),d=()=>c()?.flows??[],e=G(()=>{const t=d();return t.length?B(t[Math.min(x(),t.length-1)]):{nodes:[],edges:[]}}),r=()=>m(`/${i.plugin}`);return(()=>{var t=Z(),o=t.firstChild,l=o.firstChild,y=l.firstChild,$=y.firstChild,F=l.nextSibling,z=o.nextSibling;s(y,()=>c()?.label??i.plugin,$),s(l,n(g,{get when(){return d().length>1},get children(){var u=X();return u.addEventListener("change",k=>_(Number(k.currentTarget.value))),s(u,n(H,{get each(){return d()},children:(k,N)=>(()=>{var C=q();return s(C,()=>k.title),E(()=>C.value=N()),C})()})),E(()=>u.value=x()),u}}),null),F.$$click=r;var S=a;return typeof S=="function"?M(S,z):a=z,s(z,n(g,{get when(){return d().length},get fallback(){return(()=>{var u=K();return s(u,()=>c.loading?"Loading…":"No declared flows for this plugin."),u})()},get children(){return n(Q,{get nodes(){return e().nodes},get edges(){return e().edges},layout:"layered",direction:"vertical",interactive:!0,animated:!0,get height(){return v()},get ariaLabel(){return`${c()?.label??i.plugin} full-screen flow spec`}})}})),t})()}R(["click"]);var V=f('<div class=p-8><h1 class="text-xl font-semibold text-zinc-200">Page not found</h1><p class="mt-2 text-sm text-zinc-500">No page matches <code class=text-zinc-400></code>.'),Y=f('<div class="p-6 text-sm text-red-400">Failed to load plugin UI: ');function le(){const i=U(),m=T(),p=()=>i.pathname.split("/").filter(Boolean)[0]??"",x=()=>p().endsWith(".spec"),_=()=>p().slice(0,-5),v=()=>m.plugins().find(e=>e.routeBase===p()),[b,a]=w(""),[h,c]=w(null),[d]=L(()=>v(),async e=>{if(a(""),c(null),!e)return null;try{return(await D(e.name,e.remoteEntry,t=>c(t))).Component}catch(r){return a(r instanceof Error?r.message:String(r)),null}});return n(g,{get when(){return!x()},get fallback(){return n(O,{get plugin(){return _()}})},get children(){return n(g,{get when(){return m.ready()},get fallback(){return n(P,{})},get children(){return n(g,{get when(){return v()},get fallback(){return(()=>{var e=V(),r=e.firstChild,t=r.nextSibling,o=t.firstChild,l=o.nextSibling;return s(l,()=>i.pathname),e})()},get children(){return n(g,{get when(){return d()},get fallback(){return n(g,{get when(){return b()},get fallback(){return n(P,{get retrying(){return h()}})},get children(){var e=Y();return e.firstChild,s(e,b,null),e}})},children:e=>n(A,{get component(){return e()}})})}})}})}})}export{le as default};
1
+ import{p as R,G as I,k as w,Z as W,l as j,C as L,a as G,z as s,e as n,S as g,I as H,J as E,Q as M,A as f,F as U,N as A}from"./routing-C6AwqsGL.js";import{f as B,u as T,l as D,a as P}from"./plugin-ui-CpJUaqcE.js";import{u as J,F as Q}from"./auth-Cej23JxT.js";import"./components-CWmQ2MDX.js";var X=f('<select class="shrink-0 cursor-pointer rounded border border-zinc-700 bg-zinc-900 px-2 py-1 text-[11px] text-zinc-200">'),Z=f('<div class="fixed inset-0 z-50 flex flex-col bg-zinc-950"><div class="flex shrink-0 items-center justify-between gap-3 border-b border-zinc-800 px-4 py-3"><div class="flex min-w-0 items-center gap-3"><h1 class="truncate text-sm font-semibold text-zinc-200"><span class="ml-2 text-zinc-500">— flow spec</span></h1></div><button type=button class="shrink-0 rounded border border-zinc-700 px-3 py-1 text-xs text-zinc-300 hover:bg-zinc-800"aria-label="Close full-screen flow spec">✕ Close</button></div><div class="min-h-0 flex-1">'),q=f("<option>"),K=f('<div class="flex h-full items-center justify-center text-sm text-zinc-500">');function O(i){const m=I(),{activeWorkspace:p}=J(),[x,_]=w(0),[v,b]=w(600);let a;const h=()=>{a&&b(a.clientHeight)};W(()=>{h(),window.addEventListener("resize",h),j(()=>window.removeEventListener("resize",h))});const[c]=L(()=>({wsId:p()?.ws_id??null,plugin:i.plugin}),async({wsId:t,plugin:o})=>{if(!t)return null;const l=await fetch("/api/plugins/graph",{credentials:"include",headers:{"X-Workspace-Id":String(t)}});return l.ok?(await l.json()).plugins.find($=>$.key===o||$.name===o)??null:null}),d=()=>c()?.flows??[],e=G(()=>{const t=d();return t.length?B(t[Math.min(x(),t.length-1)]):{nodes:[],edges:[]}}),r=()=>m(`/${i.plugin}`);return(()=>{var t=Z(),o=t.firstChild,l=o.firstChild,y=l.firstChild,$=y.firstChild,F=l.nextSibling,z=o.nextSibling;s(y,()=>c()?.label??i.plugin,$),s(l,n(g,{get when(){return d().length>1},get children(){var u=X();return u.addEventListener("change",k=>_(Number(k.currentTarget.value))),s(u,n(H,{get each(){return d()},children:(k,N)=>(()=>{var C=q();return s(C,()=>k.title),E(()=>C.value=N()),C})()})),E(()=>u.value=x()),u}}),null),F.$$click=r;var S=a;return typeof S=="function"?M(S,z):a=z,s(z,n(g,{get when(){return d().length},get fallback(){return(()=>{var u=K();return s(u,()=>c.loading?"Loading…":"No declared flows for this plugin."),u})()},get children(){return n(Q,{get nodes(){return e().nodes},get edges(){return e().edges},layout:"layered",direction:"vertical",interactive:!0,animated:!0,get height(){return v()},get ariaLabel(){return`${c()?.label??i.plugin} full-screen flow spec`}})}})),t})()}R(["click"]);var V=f('<div class=p-8><h1 class="text-xl font-semibold text-zinc-200">Page not found</h1><p class="mt-2 text-sm text-zinc-500">No page matches <code class=text-zinc-400></code>.'),Y=f('<div class="p-6 text-sm text-red-400">Failed to load plugin UI: ');function le(){const i=U(),m=T(),p=()=>i.pathname.split("/").filter(Boolean)[0]??"",x=()=>p().endsWith(".spec"),_=()=>p().slice(0,-5),v=()=>m.plugins().find(e=>e.routeBase===p()),[b,a]=w(""),[h,c]=w(null),[d]=L(()=>v(),async e=>{if(a(""),c(null),!e)return null;try{return(await D(e.name,e.remoteEntry,t=>c(t))).Component}catch(r){return a(r instanceof Error?r.message:String(r)),null}});return n(g,{get when(){return!x()},get fallback(){return n(O,{get plugin(){return _()}})},get children(){return n(g,{get when(){return m.ready()},get fallback(){return n(P,{})},get children(){return n(g,{get when(){return v()},get fallback(){return(()=>{var e=V(),r=e.firstChild,t=r.nextSibling,o=t.firstChild,l=o.nextSibling;return s(l,()=>i.pathname),e})()},get children(){return n(g,{get when(){return d()},get fallback(){return n(g,{get when(){return b()},get fallback(){return n(P,{get retrying(){return h()}})},get children(){var e=Y();return e.firstChild,s(e,b,null),e}})},children:e=>n(A,{get component(){return e()}})})}})}})}})}export{le as default};
@@ -0,0 +1,72 @@
1
+ import{k as ae,Z as Wt,l as Ae,e as x,_ as Or,D as Le,E as $e,a5 as Yt,x as Rr,y as J,m as ke,z as C,A as j,N as ut,I as xe,a as te,H as De,C as Fe,S as re,J as K,K as Te,T as Ee,p as D,Q as he,M as T,O as Ft,P as Tr,L as it,U as Se}from"./routing-C6AwqsGL.js";import{N as qt}from"./components-CWmQ2MDX.js";const R=e=>/^#(?:[0-9a-f]{3,4}|[0-9a-f]{6}|[0-9a-f]{8})$/i.test(e)||/^(?:rgb|rgba|hsl|hsla)\([0-9.,%\s/]+\)$/i.test(e),Ge=e=>/^(?:0|-?(?:\d+|\d*\.\d+)(?:rem|em|px))$/.test(e),Xe=e=>/^(?:0|(?:\d+|\d*\.\d+)(?:ms|s))$/.test(e),Ar=e=>/^\d+(?:\.\d+)?$/.test(e),bt=String.raw`(?:"[A-Za-z0-9 \-]{1,60}"|'[A-Za-z0-9 \-]{1,60}'|[A-Za-z][A-Za-z0-9\-]{0,40})`,Je=e=>new RegExp(`^${bt}(?:,\\s?${bt}){0,5}$`).test(e),mt="(?:0|\\d+px)",yt=`${mt}(?:\\s+${mt}){1,3}\\s+rgba?\\([\\d.,\\s]+\\)`,Ke=e=>new RegExp(`^${yt}(?:\\s*,\\s*${yt})*$`).test(e),Lr={"--ks-bg":{cssVar:"--ks-bg",validate:R},"--ks-bg-gradient-to":{cssVar:"--ks-bg-gradient-to",validate:R},"--ks-surface":{cssVar:"--ks-surface",validate:R},"--ks-surface-raised":{cssVar:"--ks-surface-raised",validate:R},"--ks-surface-sunken":{cssVar:"--ks-surface-sunken",validate:R},"--ks-overlay":{cssVar:"--ks-overlay",validate:R},"--ks-overlay-surface":{cssVar:"--ks-overlay-surface",validate:R},"--ks-fg":{cssVar:"--ks-fg",validate:R},"--ks-fg-muted":{cssVar:"--ks-fg-muted",validate:R},"--ks-fg-subtle":{cssVar:"--ks-fg-subtle",validate:R},"--ks-fg-on-primary":{cssVar:"--ks-fg-on-primary",validate:R},"--ks-fg-on-accent":{cssVar:"--ks-fg-on-accent",validate:R},"--ks-fg-selected":{cssVar:"--ks-fg-selected",validate:R},"--ks-fg-unselected":{cssVar:"--ks-fg-unselected",validate:R},"--ks-border":{cssVar:"--ks-border",validate:R},"--ks-border-strong":{cssVar:"--ks-border-strong",validate:R},"--ks-border-subtle":{cssVar:"--ks-border-subtle",validate:R},"--ks-primary":{cssVar:"--ks-primary",validate:R},"--ks-primary-hover":{cssVar:"--ks-primary-hover",validate:R},"--ks-primary-active":{cssVar:"--ks-primary-active",validate:R},"--ks-accent":{cssVar:"--ks-accent",validate:R},"--ks-accent-hover":{cssVar:"--ks-accent-hover",validate:R},"--ks-accent-selected-fg":{cssVar:"--ks-accent-selected-fg",validate:R},"--ks-accent-selected-fg-hover":{cssVar:"--ks-accent-selected-fg-hover",validate:R},"--ks-success":{cssVar:"--ks-success",validate:R},"--ks-success-bg":{cssVar:"--ks-success-bg",validate:R},"--ks-success-fg":{cssVar:"--ks-success-fg",validate:R},"--ks-warning":{cssVar:"--ks-warning",validate:R},"--ks-warning-bg":{cssVar:"--ks-warning-bg",validate:R},"--ks-warning-fg":{cssVar:"--ks-warning-fg",validate:R},"--ks-danger":{cssVar:"--ks-danger",validate:R},"--ks-danger-bg":{cssVar:"--ks-danger-bg",validate:R},"--ks-danger-fg":{cssVar:"--ks-danger-fg",validate:R},"--ks-info":{cssVar:"--ks-info",validate:R},"--ks-info-bg":{cssVar:"--ks-info-bg",validate:R},"--ks-info-fg":{cssVar:"--ks-info-fg",validate:R},"--ks-table-header-bg":{cssVar:"--ks-table-header-bg",validate:R},"--ks-table-row-bg":{cssVar:"--ks-table-row-bg",validate:R},"--ks-table-row-alt-bg":{cssVar:"--ks-table-row-alt-bg",validate:R},"--ks-table-row-hover-bg":{cssVar:"--ks-table-row-hover-bg",validate:R},"--ks-table-border":{cssVar:"--ks-table-border",validate:R},"--ks-input-bg":{cssVar:"--ks-input-bg",validate:R},"--ks-input-border":{cssVar:"--ks-input-border",validate:R},"--ks-input-border-focus":{cssVar:"--ks-input-border-focus",validate:R},"--ks-input-placeholder":{cssVar:"--ks-input-placeholder",validate:R},"--ks-input-disabled-bg":{cssVar:"--ks-input-disabled-bg",validate:R},"--ks-chart-1":{cssVar:"--ks-chart-1",validate:R},"--ks-chart-2":{cssVar:"--ks-chart-2",validate:R},"--ks-chart-3":{cssVar:"--ks-chart-3",validate:R},"--ks-chart-4":{cssVar:"--ks-chart-4",validate:R},"--ks-chart-5":{cssVar:"--ks-chart-5",validate:R},"--ks-chart-6":{cssVar:"--ks-chart-6",validate:R},"--ks-chart-7":{cssVar:"--ks-chart-7",validate:R},"--ks-chart-8":{cssVar:"--ks-chart-8",validate:R},"--ks-focus-ring":{cssVar:"--ks-focus-ring",validate:R},"--ks-focus-ring-offset":{cssVar:"--ks-focus-ring-offset",validate:R},"--ks-shadow-sm":{cssVar:"--ks-shadow-sm",validate:Ke},"--ks-shadow-md":{cssVar:"--ks-shadow-md",validate:Ke},"--ks-shadow-lg":{cssVar:"--ks-shadow-lg",validate:Ke},"--ks-radius":{cssVar:"--ks-radius",validate:Ge},"--ks-radius-sm":{cssVar:"--ks-radius-sm",validate:Ge},"--ks-radius-lg":{cssVar:"--ks-radius-lg",validate:Ge},"--ks-spacing":{cssVar:"--ks-spacing",validate:Ar},"--ks-motion":{cssVar:"--ks-motion",validate:Xe},"--ks-motion-fast":{cssVar:"--ks-motion-fast",validate:Xe},"--ks-motion-slow":{cssVar:"--ks-motion-slow",validate:Xe},"--ks-font-body":{cssVar:"--ks-font-body",validate:Je},"--ks-font-heading":{cssVar:"--ks-font-heading",validate:Je},"--ks-font-mono":{cssVar:"--ks-font-mono",validate:Je}},$r={"color.primary":"--ks-primary","color.bg":"--ks-surface","color.fg":"--ks-fg","color.accent":"--ks-accent","color.danger":"--ks-danger",radius:"--ks-radius",spacing:"--ks-spacing",motion:"--ks-motion"};({...Object.fromEntries(Object.entries($r).map(([e,t])=>[e,Lr[t]]))});const wt={"--ks-bg":"#0a0a0a","--ks-bg-gradient-to":"#1a1a1a","--ks-surface":"#0f0f0f","--ks-surface-raised":"#1a1a1a","--ks-surface-sunken":"#141414","--ks-overlay":"rgba(0,0,0,0.7)","--ks-overlay-surface":"#18181b","--ks-fg":"#ffffff","--ks-fg-muted":"#a1a1aa","--ks-fg-subtle":"#71717a","--ks-fg-on-primary":"#0a0a0a","--ks-fg-on-accent":"#0a0a0a","--ks-fg-selected":"#f4f4f5","--ks-fg-unselected":"#d4d4d8","--ks-border":"rgba(39,39,42,0.5)","--ks-border-strong":"#3f3f46","--ks-border-subtle":"rgba(39,39,42,0.25)","--ks-primary":"#c9a961","--ks-primary-hover":"#d4b876","--ks-primary-active":"#b6944e","--ks-accent":"#fbbf24","--ks-accent-hover":"#fcd34d","--ks-accent-selected-fg":"#fde68a","--ks-accent-selected-fg-hover":"#fef3c7","--ks-success":"#10b981","--ks-success-bg":"rgba(16,185,129,0.12)","--ks-success-fg":"#34d399","--ks-warning":"#f59e0b","--ks-warning-bg":"rgba(245,158,11,0.12)","--ks-warning-fg":"#fbbf24","--ks-danger":"#ef4444","--ks-danger-bg":"rgba(239,68,68,0.12)","--ks-danger-fg":"#f87171","--ks-info":"#38bdf8","--ks-info-bg":"rgba(56,189,248,0.12)","--ks-info-fg":"#7dd3fc","--ks-table-header-bg":"#18181b","--ks-table-row-bg":"#0f0f0f","--ks-table-row-alt-bg":"#141416","--ks-table-row-hover-bg":"rgba(201,169,97,0.06)","--ks-table-border":"rgba(39,39,42,0.5)","--ks-input-bg":"#18181b","--ks-input-border":"#3f3f46","--ks-input-border-focus":"#c9a961","--ks-input-placeholder":"#71717a","--ks-input-disabled-bg":"#0f0f0f","--ks-chart-1":"#c9a961","--ks-chart-2":"#38bdf8","--ks-chart-3":"#10b981","--ks-chart-4":"#f59e0b","--ks-chart-5":"#ef4444","--ks-chart-6":"#a78bfa","--ks-chart-7":"#f472b6","--ks-chart-8":"#71717a","--ks-focus-ring":"#c9a961","--ks-focus-ring-offset":"#0a0a0a","--ks-shadow-sm":"0 1px 2px rgba(0,0,0,0.4)","--ks-shadow-md":"0 4px 12px rgba(0,0,0,0.5)","--ks-shadow-lg":"0 12px 32px rgba(0,0,0,0.6)","--ks-radius":"0.5rem","--ks-radius-sm":"0.25rem","--ks-radius-lg":"0.75rem","--ks-spacing":"1","--ks-motion":"200ms","--ks-motion-fast":"100ms","--ks-motion-slow":"300ms","--ks-font-body":'"Inter", system-ui, sans-serif',"--ks-font-heading":'"Space Grotesk", "Inter", system-ui, sans-serif',"--ks-font-mono":'"Space Mono", ui-monospace, monospace'},xt={"--ks-bg":"#f7f9fb","--ks-bg-gradient-to":"#f7f9fb","--ks-surface":"#f2f4f6","--ks-surface-raised":"#ffffff","--ks-surface-sunken":"#eef1f3","--ks-overlay":"rgba(15,23,32,0.45)","--ks-overlay-surface":"#ffffff","--ks-fg":"#191c1e","--ks-fg-muted":"#5f5e5e","--ks-fg-subtle":"#8a8a8a","--ks-fg-on-primary":"#0a0a0a","--ks-fg-on-accent":"#ffffff","--ks-fg-selected":"#18181b","--ks-fg-unselected":"#44403c","--ks-border":"rgba(203,213,225,0.7)","--ks-border-strong":"#cbd5e1","--ks-border-subtle":"rgba(226,232,240,0.6)","--ks-primary":"#c9a961","--ks-primary-hover":"#b6944e","--ks-primary-active":"#a3813d","--ks-accent":"#785a00","--ks-accent-hover":"#8f6c00","--ks-accent-selected-fg":"#785a00","--ks-accent-selected-fg-hover":"#8f6c00","--ks-success":"#059669","--ks-success-bg":"rgba(5,150,105,0.1)","--ks-success-fg":"#047857","--ks-warning":"#d97706","--ks-warning-bg":"rgba(217,119,6,0.1)","--ks-warning-fg":"#92400e","--ks-danger":"#dc2626","--ks-danger-bg":"rgba(220,38,38,0.1)","--ks-danger-fg":"#b91c1c","--ks-info":"#0284c7","--ks-info-bg":"rgba(2,132,199,0.1)","--ks-info-fg":"#075985","--ks-table-header-bg":"#eef1f3","--ks-table-row-bg":"#ffffff","--ks-table-row-alt-bg":"#f7f9fb","--ks-table-row-hover-bg":"rgba(201,169,97,0.08)","--ks-table-border":"rgba(226,232,240,0.9)","--ks-input-bg":"#ffffff","--ks-input-border":"#cbd5e1","--ks-input-border-focus":"#c9a961","--ks-input-placeholder":"#94a3b8","--ks-input-disabled-bg":"#f1f5f9","--ks-chart-1":"#c9a961","--ks-chart-2":"#38bdf8","--ks-chart-3":"#10b981","--ks-chart-4":"#f59e0b","--ks-chart-5":"#ef4444","--ks-chart-6":"#a78bfa","--ks-chart-7":"#f472b6","--ks-chart-8":"#71717a","--ks-focus-ring":"#c9a961","--ks-focus-ring-offset":"#f7f9fb","--ks-shadow-sm":"0 1px 2px rgba(15,23,32,0.08)","--ks-shadow-md":"0 4px 12px rgba(15,23,32,0.1)","--ks-shadow-lg":"0 12px 32px rgba(15,23,32,0.14)","--ks-radius":"0.5rem","--ks-radius-sm":"0.25rem","--ks-radius-lg":"0.75rem","--ks-spacing":"1","--ks-motion":"200ms","--ks-motion-fast":"100ms","--ks-motion-slow":"300ms","--ks-font-body":'"Inter", system-ui, sans-serif',"--ks-font-heading":'"Space Grotesk", "Inter", system-ui, sans-serif',"--ks-font-mono":'"Space Mono", ui-monospace, monospace'},Mr={"--ks-bg":"#0d0a04","--ks-bg-gradient-to":"#1f1810","--ks-surface":"#18140a","--ks-surface-raised":"#211a0d","--ks-surface-sunken":"#120e07","--ks-overlay-surface":"#1c160b","--ks-primary":"#c9a961","--ks-primary-hover":"#ddbc74","--ks-accent":"#f5c860","--ks-accent-hover":"#f7d585","--ks-accent-selected-fg":"#ffe9b3","--ks-accent-selected-fg-hover":"#fff5d6","--ks-border":"rgba(90,72,32,0.4)","--ks-border-strong":"#5a4820","--ks-table-header-bg":"#211a0d","--ks-input-bg":"#211a0d","--ks-input-border":"#5a4820","--ks-focus-ring-offset":"#0d0a04"},Pr={"--ks-bg":"#f4ead8","--ks-bg-gradient-to":"#efe1c8","--ks-surface":"#faf3e4","--ks-surface-raised":"#f4ead8","--ks-surface-sunken":"#ece0c6","--ks-overlay-surface":"#faf3e4","--ks-fg":"#3a2e1a","--ks-fg-muted":"#6b5a3d","--ks-fg-subtle":"#8c7a5c","--ks-border":"rgba(139,111,64,0.3)","--ks-border-strong":"#a68a5c","--ks-primary":"#785a00","--ks-primary-hover":"#8f6c00","--ks-accent":"#785a00","--ks-accent-selected-fg":"#6b4e00","--ks-accent-selected-fg-hover":"#8c6c1a","--ks-table-header-bg":"#efe1c8","--ks-table-row-alt-bg":"#f7efdf","--ks-input-bg":"#faf3e4","--ks-input-border":"#a68a5c","--ks-focus-ring-offset":"#f4ead8"},lt=[{id:"dark",label:"Dark",version:"1.0.0",author:"kahitsan",tokens:{},variants:{dark:{label:"Dark",appearance:"dark",tokens:wt}},sourcePluginId:null},{id:"light",label:"Light",version:"1.0.0",author:"kahitsan",tokens:{},variants:{light:{label:"Light",appearance:"light",tokens:xt}},sourcePluginId:null},{id:"midnight-amber",label:"Midnight Amber",version:"1.0.0",author:"kahitsan",tokens:{},variants:{dark:{label:"Dark",appearance:"dark",tokens:{...wt,...Mr}}},sourcePluginId:null},{id:"sepia",label:"Sepia",version:"1.0.0",author:"kahitsan",tokens:{},variants:{light:{label:"Light",appearance:"light",tokens:{...xt,...Pr}}},sourcePluginId:null}];new Map(lt.map(e=>[e.id,e]));function No(e,t,r){if(t&&Object.hasOwn(e.variants,t))return t;const s=Object.keys(e.variants);return s.find(a=>e.variants[a].appearance===r)??s[0]}function Io(e,t){const r=[{value:"auto",label:"Auto"},...e.map(s=>({value:s.id,label:s.label}))];return t&&t!=="auto"&&!r.some(s=>s.value===t)&&r.push({value:t,label:t}),r}const _t="ks-erp-theme",Gt="ks-erp-theme-appearance",Cr={dark:lt.find(e=>e.id==="dark").variants.dark.tokens,light:lt.find(e=>e.id==="light").variants.light.tokens},Xt=Le();function St(){return typeof window<"u"&&typeof window.matchMedia=="function"&&window.matchMedia("(prefers-color-scheme: light)").matches}function Nr(){const e=typeof window>"u"?null:localStorage.getItem(Gt);return e==="dark"||e==="light"?e:null}function Ir(e){return e==="dark"||e==="light"?e:e==="auto"?St()?"light":"dark":Nr()??(St()?"light":"dark")}const Uo=e=>{const[t,r]=ae("dark"),[s,a]=ae("dark"),[n,i]=ae(!0),f=d=>{const v=document.documentElement;v.classList.toggle("dark",d==="dark"),v.classList.toggle("light",d==="light");const b=v.style;for(const[w,O]of Object.entries(Cr[d]))b.setProperty(w,O)},l=d=>{const v=Ir(d),b=s();a(v),v!==b&&f(v);try{localStorage.setItem(Gt,v)}catch{}return v},c=()=>{const d=window.location.pathname;if(d==="/login"||d==="/register"){r("dark"),a("dark"),f("dark"),i(!1);return}const v=localStorage.getItem(_t);i(v===null);const b=v||"dark";r(b),l(b)};Wt(()=>{c();const d=()=>c();window.addEventListener("popstate",d);const v=history.pushState.bind(history),b=history.replaceState.bind(history);if(history.pushState=(...w)=>{v(...w),window.dispatchEvent(new Event("ks-route-change"))},history.replaceState=(...w)=>{b(...w),window.dispatchEvent(new Event("ks-route-change"))},window.addEventListener("ks-route-change",d),typeof window<"u"&&typeof window.matchMedia=="function"){const w=window.matchMedia("(prefers-color-scheme: light)"),O=()=>{t()==="auto"&&l("auto")};w.addEventListener("change",O),Ae(()=>{w.removeEventListener("change",O)})}Ae(()=>{window.removeEventListener("popstate",d),window.removeEventListener("ks-route-change",d),history.pushState=v,history.replaceState=b})});const o=d=>{Or(()=>{r(d),i(!1),localStorage.setItem(_t,d),l(d)})},m=()=>o(s()==="dark"?"light":"dark");return x(Xt.Provider,{value:{theme:s,mode:t,toggleTheme:m,setThemeMode:o,noStoredMode:n},get children(){return e.children}})},Jt=()=>{const e=$e(Xt);if(!e)throw new Error("useTheme must be used within ThemeProvider");return e};/**
2
+ * @license lucide-solid v1.21.0 - ISC
3
+ *
4
+ * This source code is licensed under the ISC license.
5
+ * See the LICENSE file in the root directory of this source tree.
6
+ */var Ur={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":2,"stroke-linecap":"round","stroke-linejoin":"round"},Oe=Ur,Dr=Le({size:24,color:"currentColor",strokeWidth:2,absoluteStrokeWidth:!1,class:""}),zr=j("<svg>"),Vr=e=>{for(const t in e)if(t.startsWith("aria-")||t==="role"||t==="title")return!0;return!1},jr=(...e)=>e.filter((t,r,s)=>!!t&&t.trim()!==""&&s.indexOf(t)===r).join(" ").trim(),Br=e=>e.replace(/^([A-Z])|[\s-_]+(\w)/g,(t,r,s)=>s?s.toUpperCase():r.toLowerCase()),Et=e=>e.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase(),Hr=e=>{const t=Br(e);return t.charAt(0).toUpperCase()+t.slice(1)},Wr=e=>{const[t,r]=Yt(e,["color","size","strokeWidth","children","class","name","iconNode","absoluteStrokeWidth"]),s=$e(Dr);return(()=>{var a=zr();return Rr(a,J(Oe,{get width(){return t.size??s.size??Oe.width},get height(){return t.size??s.size??Oe.height},get stroke(){return t.color??s.color??Oe.stroke},get"stroke-width"(){return ke(()=>(t.absoluteStrokeWidth??s.absoluteStrokeWidth)===!0)()?Number(t.strokeWidth??s.strokeWidth??Oe["stroke-width"])*24/Number(t.size??s.size):Number(t.strokeWidth??s.strokeWidth??Oe["stroke-width"])},get class(){return jr("lucide","lucide-icon",s.class,...t.name!=null?[`lucide-${Et(Hr(t.name))}`,`lucide-${Et(t.name)}`]:[],t.class)},get"aria-hidden"(){return!t.children&&!Vr(r)?"true":void 0}},r),!0,!0),C(a,x(xe,{get each(){return t.iconNode},children:([n,i])=>x(ut,J({component:n},i))})),a})()},se=Wr,Yr=[["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"}]],Fr=e=>x(se,J(e,{iconNode:Yr,name:"user-plus"})),qr=Fr,Gr=[["path",{d:"m2 2 20 20",key:"1ooewy"}],["path",{d:"M5 5a1 1 0 0 0-1 1v7c0 5 3.5 7.5 7.67 8.94a1 1 0 0 0 .67.01c2.35-.82 4.48-1.97 5.9-3.71",key:"1jlk70"}],["path",{d:"M9.309 3.652A12.252 12.252 0 0 0 11.24 2.28a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1v7a9.784 9.784 0 0 1-.08 1.264",key:"18rp1v"}]],Xr=e=>x(se,J(e,{iconNode:Gr,name:"shield-off"})),Jr=Xr,Kr=[["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"}]],Zr=e=>x(se,J(e,{iconNode:Kr,name:"sun"})),Kt=Zr,Qr=[["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"}]],es=e=>x(se,J(e,{iconNode:Qr,name:"moon"})),Zt=es,ts=[["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"}]],rs=e=>x(se,J(e,{iconNode:ts,name:"log-out"})),Qt=rs,ss="1.6.22";const er=ss,Ze=Symbol.for("better-auth:broadcast-channel"),ns=()=>Math.floor(Date.now()/1e3);var as=class{listeners=new Set;name;constructor(e="better-auth.message"){this.name=e}subscribe(e){return this.listeners.add(e),()=>{this.listeners.delete(e)}}post(e){if(!(typeof window>"u"))try{localStorage.setItem(this.name,JSON.stringify({...e,timestamp:ns()}))}catch{}}setup(){if(typeof window>"u"||typeof window.addEventListener>"u")return()=>{};const e=t=>{if(t.key!==this.name)return;const r=JSON.parse(t.newValue??"{}");r?.event!=="session"||!r?.data||this.listeners.forEach(s=>s(r))};return window.addEventListener("storage",e),()=>{window.removeEventListener("storage",e)}}};function Qe(e="better-auth.message"){return globalThis[Ze]||(globalThis[Ze]=new as(e)),globalThis[Ze]}let de=[],ye=0;const je=4,os=globalThis.nanostoresGlobal||={epoch:0},Ot=e=>{let t=[],r={get(){return r.lc||r.listen(()=>{})(),r.value},init:e,lc:0,listen(s){return r.lc=t.push(s),()=>{for(let n=ye+je;n<de.length;)de[n]===s?de.splice(n,je):n+=je;let a=t.indexOf(s);~a&&(t.splice(a,1),--r.lc||r.off())}},notify(s,a){os.epoch++;let n=!de.length;for(let i of t)de.push(i,r.value,s,a);if(n){for(ye=0;ye<de.length;ye+=je)de[ye](de[ye+1],de[ye+2],de[ye+3]);de.length=0}},off(){},set(s){let a=r.value;a!==s&&(r.value=s,r.notify(a))},subscribe(s){let a=r.listen(s);return s(r.value),a},value:e};return r},is=2,ls=5,Be=6,He=10;let tr=(e,t,r,s)=>(e.events=e.events||{},e.events[r+He]||(e.events[r+He]=s(a=>{e.events[r].reduceRight((n,i)=>(i(n),n),{shared:{},...a})})),e.events[r]=e.events[r]||[],e.events[r].push(t),()=>{let a=e.events[r],n=a.indexOf(t);a.splice(n,1),a.length||(delete e.events[r],e.events[r+He](),delete e.events[r+He])}),cs=(e,t)=>tr(e,t,is,r=>{let s=e.set,a=e.setKey;return e.setKey&&(e.setKey=(n,i)=>{let f;if(r({abort:()=>{f=!0},changed:n,newValue:{...e.value,[n]:i}}),!f)return a(n,i)}),e.set=n=>{let i;if(r({abort:()=>{i=!0},newValue:n}),!i)return s(n)},()=>{e.set=s,e.setKey=a}});const ds=1e3;let us=(e,t)=>tr(e,s=>{let a=t(s);a&&e.events[Be].push(a)},ls,s=>{let a=e.listen;e.listen=(...i)=>(!e.lc&&!e.active&&(e.active=!0,s()),a(...i));let n=e.off;return e.events[Be]=[],e.off=()=>{n(),setTimeout(()=>{if(e.active&&!e.lc){e.active=!1;for(let i of e.events[Be])i();e.events[Be]=[]}},ds)},()=>{e.listen=a,e.off=n}});function Rt(e){if(typeof e!="object"||e===null)return!1;const t=Object.getPrototypeOf(e);return t===Object.prototype||t===null}function qe(e,t){if(e===t)return!0;if(Array.isArray(e)&&Array.isArray(t)){if(e.length!==t.length)return!1;for(let r=0;r<e.length;r++)if(!qe(e[r],t[r]))return!1;return!0}if(Rt(e)&&Rt(t)){const r=Object.keys(e),s=Object.keys(t);if(r.length!==s.length)return!1;for(const a of r)if(!(a in t)||!qe(e[a],t[a]))return!1;return!0}return!1}function fs(e,t){return cs(e,({newValue:r,abort:s})=>{t(e.value,r)&&s()})}const et=Symbol.for("better-auth:focus-manager");var gs=class{listeners=new Set;subscribe(e){return this.listeners.add(e),()=>{this.listeners.delete(e)}}setFocused(e){this.listeners.forEach(t=>t(e))}setup(){if(typeof window>"u"||typeof document>"u"||typeof window.addEventListener>"u")return()=>{};const e=()=>{document.visibilityState==="visible"&&this.setFocused(!0)};return document.addEventListener("visibilitychange",e,!1),()=>{document.removeEventListener("visibilitychange",e,!1)}}};function Tt(){return globalThis[et]||(globalThis[et]=new gs),globalThis[et]}const tt=Symbol.for("better-auth:online-manager");var hs=class{listeners=new Set;isOnline=typeof navigator<"u"?navigator.onLine:!0;subscribe(e){return this.listeners.add(e),()=>{this.listeners.delete(e)}}setOnline(e){this.isOnline=e,this.listeners.forEach(t=>t(e))}setup(){if(typeof window>"u"||typeof window.addEventListener>"u")return()=>{};const e=()=>this.setOnline(!0),t=()=>this.setOnline(!1);return window.addEventListener("online",e,!1),window.addEventListener("offline",t,!1),()=>{window.removeEventListener("online",e,!1),window.removeEventListener("offline",t,!1)}}};function rt(){return globalThis[tt]||(globalThis[tt]=new hs),globalThis[tt]}const ps={proto:/"(?:_|\\u0{2}5[Ff]){2}(?:p|\\u0{2}70)(?:r|\\u0{2}72)(?:o|\\u0{2}6[Ff])(?:t|\\u0{2}74)(?:o|\\u0{2}6[Ff])(?:_|\\u0{2}5[Ff]){2}"\s*:/,constructor:/"(?:c|\\u0063)(?:o|\\u006[Ff])(?:n|\\u006[Ee])(?:s|\\u0073)(?:t|\\u0074)(?:r|\\u0072)(?:u|\\u0075)(?:c|\\u0063)(?:t|\\u0074)(?:o|\\u006[Ff])(?:r|\\u0072)"\s*:/,protoShort:/"__proto__"\s*:/,constructorShort:/"constructor"\s*:/},vs=/^\s*["[{]|^\s*-?\d{1,16}(\.\d{1,17})?([Ee][+-]?\d+)?\s*$/,At={true:!0,false:!1,null:null,undefined:void 0,nan:NaN,infinity:Number.POSITIVE_INFINITY,"-infinity":Number.NEGATIVE_INFINITY},ks=/^(\d{4})-(\d{2})-(\d{2})T(\d{2}):(\d{2}):(\d{2})(?:\.(\d{1,7}))?(?:Z|([+-])(\d{2}):(\d{2}))$/;function bs(e){return e instanceof Date&&!isNaN(e.getTime())}function ms(e){const t=ks.exec(e);if(!t)return null;const[,r,s,a,n,i,f,l,c,o,m]=t,d=new Date(Date.UTC(parseInt(r,10),parseInt(s,10)-1,parseInt(a,10),parseInt(n,10),parseInt(i,10),parseInt(f,10),l?parseInt(l.padEnd(3,"0"),10):0));if(c){const v=(parseInt(o,10)*60+parseInt(m,10))*(c==="+"?-1:1);d.setUTCMinutes(d.getUTCMinutes()+v)}return bs(d)?d:null}function ys(e,t={}){const{strict:r=!1,warnings:s=!1,reviver:a,parseDates:n=!0}=t;if(typeof e!="string")return e;const i=e.trim(),f=i.toLowerCase();if(f.length<=9&&f in At)return At[f];if(!vs.test(i)){if(r)throw new SyntaxError("[better-json] Invalid JSON");return e}if(Object.entries(ps).some(([l,c])=>{const o=c.test(i);return o&&s&&console.warn(`[better-json] Detected potential prototype pollution attempt using ${l} pattern`),o})&&r)throw new Error("[better-json] Potential prototype pollution attempt detected");try{return JSON.parse(i,(c,o)=>{if(c==="__proto__"||c==="constructor"&&o&&typeof o=="object"&&"prototype"in o){s&&console.warn(`[better-json] Dropping "${c}" key to prevent prototype pollution`);return}if(n&&typeof o=="string"){const m=ms(o);if(m)return m}return a?a(c,o):o})}catch(l){if(r)throw l;return e}}function ws(e,t={strict:!0}){return ys(e,t)}const st=()=>Math.floor(Date.now()/1e3),xs=5;function _s(e){const{fetchSession:t,shouldPollSession:r=()=>!0,sessionSignal:s,options:a={}}=e,n=a.sessionOptions?.refetchInterval??0,i=a.sessionOptions?.refetchOnWindowFocus??!0,f=a.sessionOptions?.refetchWhenOffline??!1,l={isInitialized:!1,lastSessionRequest:0},c=()=>f||rt().isOnline,o=h=>{if(c()){if(h?.event==="storage"){t();return}if(h?.event==="poll"){l.lastSessionRequest=st(),t();return}if(h?.event==="visibilitychange"){if(st()-l.lastSessionRequest<xs)return;l.lastSessionRequest=st(),t();return}t()}},m=h=>{Qe().post({event:"session",data:{trigger:h},clientId:Math.random().toString(36).substring(7)})},d=()=>{n&&n>0&&(l.pollInterval=setInterval(()=>{r()&&o({event:"poll"})},n*1e3))},v=()=>{l.unsubscribeBroadcast=Qe().subscribe(()=>{o({event:"storage"})})},b=()=>{i&&(l.unsubscribeFocus=Tt().subscribe(()=>{o({event:"visibilitychange"})}))},w=()=>{l.unsubscribeOnline=rt().subscribe(h=>{h&&o({event:"visibilitychange"})})},O=()=>{l.unsubscribeSignal=s.listen(()=>{t()})};return{init:()=>{l.isInitialized||(l.isInitialized=!0,d(),v(),b(),w(),O(),l.cleanupBroadcastSetup=Qe().setup(),l.cleanupFocusSetup=Tt().setup(),l.cleanupOnlineSetup=rt().setup())},cleanup:()=>{l.isInitialized&&(l.pollInterval&&(clearInterval(l.pollInterval),l.pollInterval=void 0),l.unsubscribeBroadcast&&(l.unsubscribeBroadcast(),l.unsubscribeBroadcast=void 0),l.unsubscribeFocus&&(l.unsubscribeFocus(),l.unsubscribeFocus=void 0),l.unsubscribeOnline&&(l.unsubscribeOnline(),l.unsubscribeOnline=void 0),l.unsubscribeSignal&&(l.unsubscribeSignal(),l.unsubscribeSignal=void 0),l.cleanupBroadcastSetup&&(l.cleanupBroadcastSetup(),l.cleanupBroadcastSetup=void 0),l.cleanupFocusSetup&&(l.cleanupFocusSetup(),l.cleanupFocusSetup=void 0),l.cleanupOnlineSetup&&(l.cleanupOnlineSetup(),l.cleanupOnlineSetup=void 0),l.isInitialized=!1,l.lastSessionRequest=0)},triggerRefetch:o,broadcastSessionUpdate:m}}var Ss={};const We=Object.create(null),Pe=e=>Ss||globalThis.Deno?.env.toObject()||globalThis.__env__||(e?We:globalThis),we=new Proxy(We,{get(e,t){return Pe()[t]??We[t]},has(e,t){return t in Pe()||t in We},set(e,t,r){const s=Pe(!0);return s[t]=r,!0},deleteProperty(e,t){if(!t)return!1;const r=Pe(!0);return delete r[t],!0},ownKeys(){const e=Pe(!0);return Object.keys(e)}});we.NODE_ENV;function rr(e){return Object.fromEntries(Object.entries(e).map(([t,r])=>[t,{code:t,message:r,toString:()=>t}]))}var Ue=class extends Error{constructor(e,t){super(e,t),this.name="BetterAuthError",this.message=e,this.stack=""}};const Es=47;function sr(e){let t=e.length;for(;t>0&&e.charCodeAt(t-1)===Es;)t--;return t===e.length?e:e.slice(0,t)}function Os(e){try{return(sr(new URL(e).pathname)||"/")!=="/"}catch{throw new Ue(`Invalid base URL: ${e}. Please provide a valid base URL.`)}}function Rs(e){try{const t=new URL(e);if(t.protocol!=="http:"&&t.protocol!=="https:")throw new Ue(`Invalid base URL: ${e}. URL must include 'http://' or 'https://'`)}catch(t){throw t instanceof Ue?t:new Ue(`Invalid base URL: ${e}. Please provide a valid base URL.`,{cause:t})}}function nt(e,t="/api/auth"){if(Rs(e),Os(e))return e;const r=sr(e);return!t||t==="/"?r:(t=t.startsWith("/")?t:`/${t}`,`${r}${t}`)}function Ts(e,t,r,s,a){if(e)return nt(e,t);{const n=we.BETTER_AUTH_URL||we.NEXT_PUBLIC_BETTER_AUTH_URL||we.PUBLIC_BETTER_AUTH_URL||we.NUXT_PUBLIC_BETTER_AUTH_URL||we.NUXT_PUBLIC_AUTH_URL||(we.BASE_URL!=="/"?we.BASE_URL:void 0);if(n)return nt(n,t)}if(typeof window<"u"&&window.location)return nt(window.location.origin,t)}const As=["javascript:","data:","vbscript:"];function Ls(e){let t;try{t=new URL(e)}catch{return!0}return!As.includes(t.protocol)}const $s={id:"redirect",name:"Redirect",hooks:{onSuccess(e){if(e.data?.url&&e.data?.redirect&&Ls(e.data.url)&&typeof window<"u"&&window.location&&window.location)try{window.location.href=e.data.url}catch{}}}},Ms=()=>typeof window>"u";function Lt(e){return typeof e=="object"&&e!==null&&"data"in e&&"error"in e?e:{data:e,error:null}}function Ps(e){return!e||e.session===null&&e.user===null?null:e}function Cs(e,t){return qe(e.data,t.data)&&e.error===t.error&&e.isPending===t.isPending&&e.isRefetching===t.isRefetching&&e.refetch===t.refetch}function Ns(e,t){const r=Ot(!1);let s;const a=c=>f(c),n=Ot({data:null,error:null,isPending:!0,isRefetching:!1,refetch:a});fs(n,Cs);const i=c=>{if(s!==c)return;const o=n.get();s=void 0,!(!o.isPending&&!o.isRefetching)&&n.set({...o,isPending:!1,isRefetching:!1,refetch:a})},f=async c=>{s?.abort();const o=new AbortController;s=o;const m=n.get();n.set({...m,isPending:m.data===null,isRefetching:!0,error:null,refetch:a});try{const d=await e("/get-session",{method:"GET",query:c?.query,signal:o.signal});if(o.signal.aborted){i(o);return}let{data:v,error:b}=Lt(d);if(v?.needsRefresh)try{const _=await e("/get-session",{method:"POST",signal:o.signal});if(o.signal.aborted){i(o);return}({data:v,error:b}=Lt(_))}catch{if(o.signal.aborted){i(o);return}}if(b){const _=n.get(),h=b?.status===401;n.set({data:h?null:_.data,error:b,isPending:!1,isRefetching:!1,refetch:a});return}const w=Ps(v),O=n.get(),N=O.data!=null&&w!=null&&qe(O.data,w)?O.data:w;n.set({data:N,error:null,isPending:!1,isRefetching:!1,refetch:a})}catch(d){if(o.signal.aborted){i(o);return}const v=n.get();n.set({data:v.data,error:d,isPending:!1,isRefetching:!1,refetch:a})}};let l=()=>{};return us(n,()=>{let c;Ms()||(c=setTimeout(()=>{f()},0));const o=_s({fetchSession:f,shouldPollSession:()=>n.get().data!=null,sessionSignal:r,options:t});return o.init(),l=o.broadcastSessionUpdate,()=>{c&&clearTimeout(c);const m=s;m?.abort(),m&&i(m),o.cleanup()}}),{session:n,$sessionSignal:r,broadcastSessionUpdate:c=>l(c)}}function at(e){if(e===null||typeof e!="object")return!1;const t=Object.getPrototypeOf(e);return t!==null&&t!==Object.prototype&&Object.getPrototypeOf(t)!==null||Symbol.iterator in e?!1:Symbol.toStringTag in e?Object.prototype.toString.call(e)==="[object Module]":!0}function ct(e,t,r=".",s){if(!at(t))return ct(e,{},r,s);const a={...t};for(const n of Object.keys(e)){if(n==="__proto__"||n==="constructor")continue;const i=e[n];i!=null&&(s&&s(a,n,i,r)||(Array.isArray(i)&&Array.isArray(a[n])?a[n]=[...i,...a[n]]:at(i)&&at(a[n])?a[n]=ct(i,a[n],(r?`${r}.`:"")+n.toString(),s):a[n]=i))}return a}function Is(e){return(...t)=>t.reduce((r,s)=>ct(r,s,"",e),{})}const Us=Is();var Ds=Object.defineProperty,zs=Object.defineProperties,Vs=Object.getOwnPropertyDescriptors,$t=Object.getOwnPropertySymbols,js=Object.prototype.hasOwnProperty,Bs=Object.prototype.propertyIsEnumerable,Mt=(e,t,r)=>t in e?Ds(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,fe=(e,t)=>{for(var r in t||(t={}))js.call(t,r)&&Mt(e,r,t[r]);if($t)for(var r of $t(t))Bs.call(t,r)&&Mt(e,r,t[r]);return e},ge=(e,t)=>zs(e,Vs(t)),Hs=class extends Error{constructor(e,t,r){super(t||e.toString(),{cause:r}),this.status=e,this.statusText=t,this.error=r,Error.captureStackTrace(this,this.constructor)}},Ws=async(e,t)=>{var r,s,a,n,i,f;let l=t||{};const c={onRequest:[t?.onRequest],onResponse:[t?.onResponse],onSuccess:[t?.onSuccess],onError:[t?.onError],onRetry:[t?.onRetry]};if(!t||!t?.plugins)return{url:e,options:l,hooks:c};for(const o of t?.plugins||[]){if(o.init){const m=await((r=o.init)==null?void 0:r.call(o,e.toString(),t));l=m.options||l,e=m.url}c.onRequest.push((s=o.hooks)==null?void 0:s.onRequest),c.onResponse.push((a=o.hooks)==null?void 0:a.onResponse),c.onSuccess.push((n=o.hooks)==null?void 0:n.onSuccess),c.onError.push((i=o.hooks)==null?void 0:i.onError),c.onRetry.push((f=o.hooks)==null?void 0:f.onRetry)}return{url:e,options:l,hooks:c}},Pt=class{constructor(e){this.options=e}shouldAttemptRetry(e,t){return this.options.shouldRetry?Promise.resolve(e<this.options.attempts&&this.options.shouldRetry(t)):Promise.resolve(e<this.options.attempts)}getDelay(){return this.options.delay}},Ys=class{constructor(e){this.options=e}shouldAttemptRetry(e,t){return this.options.shouldRetry?Promise.resolve(e<this.options.attempts&&this.options.shouldRetry(t)):Promise.resolve(e<this.options.attempts)}getDelay(e){return Math.min(this.options.maxDelay,this.options.baseDelay*2**e)}};function Fs(e){if(typeof e=="number")return new Pt({type:"linear",attempts:e,delay:1e3});switch(e.type){case"linear":return new Pt(e);case"exponential":return new Ys(e);default:throw new Error("Invalid retry strategy")}}var qs=async e=>{const t={},r=async s=>typeof s=="function"?await s():s;if(e?.auth){if(e.auth.type==="Bearer"){const s=await r(e.auth.token);if(!s)return t;t.authorization=`Bearer ${s}`}else if(e.auth.type==="Basic"){const[s,a]=await Promise.all([r(e.auth.username),r(e.auth.password)]);if(!s||!a)return t;t.authorization=`Basic ${btoa(`${s}:${a}`)}`}else if(e.auth.type==="Custom"){const[s,a]=await Promise.all([r(e.auth.prefix),r(e.auth.value)]);if(!a)return t;t.authorization=`${s??""} ${a}`}}return t},Gs=/^application\/(?:[\w!#$%&*.^`~-]*\+)?json(;.+)?$/i;function Xs(e){const t=e.headers.get("content-type"),r=new Set(["image/svg","application/xml","application/xhtml","application/html"]);if(!t)return"json";const s=t.split(";").shift()||"";return Gs.test(s)?"json":r.has(s)||s.startsWith("text/")?"text":"blob"}function Js(e){try{return JSON.parse(e),!0}catch{return!1}}function nr(e){if(e===void 0)return!1;const t=typeof e;return t==="string"||t==="number"||t==="boolean"||t===null?!0:t!=="object"?!1:Array.isArray(e)?!0:e.buffer?!1:e.constructor&&e.constructor.name==="Object"||typeof e.toJSON=="function"}function Ct(e){try{return JSON.parse(e)}catch{return e}}function Nt(e){return typeof e=="function"}function Ks(e){if(e?.customFetchImpl)return e.customFetchImpl;if(typeof globalThis<"u"&&Nt(globalThis.fetch))return globalThis.fetch;if(typeof window<"u"&&Nt(window.fetch))return window.fetch;throw new Error("No fetch implementation found")}function ar(...e){const t={};for(const r of e)if(r)if(r instanceof Headers)r.forEach((s,a)=>{t[a]=s});else{const s=Array.isArray(r)?r:Object.entries(r);for(const[a,n]of s)n!=null&&(t[a]=n)}return t}async function Zs(e){const t=new Headers(ar(e?.headers,await qs(e)));if(!t.has("content-type")){const r=Qs(e?.body);r&&t.set("content-type",r)}return t}function Qs(e){return nr(e)?"application/json":null}function en(e){const t=e.get("content-type");return t?t.split(";")[0].trim().toLowerCase():null}function tn(e,t){const{body:r}=e;return r?!nr(r)||typeof r=="string"?r:en(t)==="application/x-www-form-urlencoded"?new URLSearchParams(r).toString():JSON.stringify(r):null}function rn(e,t){var r;if(t?.method)return t.method.toUpperCase();if(e.startsWith("@")){const s=(r=e.split("@")[1])==null?void 0:r.split("/")[0];return ir.includes(s)?s.toUpperCase():t?.body?"POST":"GET"}return t?.body?"POST":"GET"}function sn(e,t){let r;return!e?.signal&&e?.timeout&&(r=setTimeout(()=>t?.abort(),e?.timeout)),{abortTimeout:r,clearTimeout:()=>{r&&clearTimeout(r)}}}var nn=class or extends Error{constructor(t,r){super(r||JSON.stringify(t,null,2)),this.issues=t,Object.setPrototypeOf(this,or.prototype)}};async function Ie(e,t){const r=await e["~standard"].validate(t);if(r.issues)throw new nn(r.issues);return r.value}var ir=["get","post","put","patch","delete"],an=e=>({id:"apply-schema",name:"Apply Schema",version:"1.0.0",async init(t,r){var s,a,n,i;const f=((a=(s=e.plugins)==null?void 0:s.find(l=>{var c;return(c=l.schema)!=null&&c.config?t.startsWith(l.schema.config.baseURL||"")||t.startsWith(l.schema.config.prefix||""):!1}))==null?void 0:a.schema)||e.schema;if(f){let l=t;(n=f.config)!=null&&n.prefix&&l.startsWith(f.config.prefix)&&(l=l.replace(f.config.prefix,""),f.config.baseURL&&(t=t.replace(f.config.prefix,f.config.baseURL))),(i=f.config)!=null&&i.baseURL&&l.startsWith(f.config.baseURL)&&(l=l.replace(f.config.baseURL,"")),l.startsWith("/")&&l.charAt(1)==="@"&&(l=l.substring(1));const c=f.schema[l];if(c){let o=r?.headers;if(c.headers&&!r?.disableValidation){const d={};if(r?.headers){if(r.headers instanceof Headers)r.headers.forEach((w,O)=>{d[O.toLowerCase()]=w});else if(typeof r.headers=="object")for(const[w,O]of Object.entries(r.headers))O!=null&&(d[w.toLowerCase()]=O)}const v=await Ie(c.headers,d),b={};for(const[w,O]of Object.entries(v))b[w.toLowerCase()]=O;o=b}let m=ge(fe({},r),{method:c.method,output:c.output,headers:o});return r?.disableValidation||(m=ge(fe({},m),{body:c.input?await Ie(c.input,r?.body):r?.body,params:c.params?await Ie(c.params,r?.params):r?.params,query:c.query?await Ie(c.query,r?.query):r?.query})),{url:t,options:m}}}return{url:t,options:r}}}),on=e=>{async function t(r,s){const a=ge(fe(fe({},e),s),{headers:ar(e?.headers,s?.headers),plugins:[...e?.plugins||[],an(e||{}),...s?.plugins||[]]});if(e?.catchAllError)try{return await dt(r,a)}catch(n){return{data:null,error:{status:500,statusText:"Fetch Error",message:"Fetch related error. Captured by catchAllError option. See error property for more details.",error:n}}}return await dt(r,a)}return t},ln=e=>e==="."||e==="..";function cn(e,t){let r=e;for(const[s,a]of t)r=r.replace(s,a);if(ln(r))throw new TypeError("Path parameters cannot be reserved path segments");return encodeURIComponent(r)}function dn(e,t){const{baseURL:r,params:s,query:a}=t||{query:{},params:{},baseURL:""};let n=e.startsWith("http")?e.split("/").slice(0,3).join("/"):r||"";if(e.startsWith("@")){const d=e.toString().split("@")[1].split("/")[0];ir.includes(d)&&(e=e.replace(`@${d}/`,"/"))}n.endsWith("/")||(n+="/");let[i,f]=e.replace(n,"").split("?");const l=new URLSearchParams(f);for(const[d,v]of Object.entries(a||{})){if(v==null)continue;let b;if(typeof v=="string")b=v;else if(Array.isArray(v)){for(const w of v)l.append(d,w);continue}else b=JSON.stringify(v);l.set(d,b)}const c=new Map;if(s)if(Array.isArray(s)){const d=i.split("/").filter(v=>v.startsWith(":"));for(const[v,b]of d.entries()){const w=s[v];c.set(b,String(w))}}else for(const[d,v]of Object.entries(s))c.set(`:${d}`,String(v));i=i.split("/").map(d=>cn(d,c)).join("/"),i=i.replace(/^\/+/,"");let o=l.toString();return o=o.length>0?`?${o}`.replace(/\+/g,"%20"):"",n.startsWith("http")?new URL(`${i}${o}`,n):`${n}${i}${o}`}var dt=async(e,t)=>{var r,s,a,n,i,f,l,c;const{hooks:o,url:m,options:d}=await Ws(e,t),v=Ks(d),b=new AbortController,w=(r=d.signal)!=null?r:b.signal,O=dn(m,d),N=await Zs(d),_=tn(d,N),h=rn(m,d),y=ge(fe({},d),{url:O,headers:N,body:_,method:h,signal:w});for(const I of o.onRequest)if(I){const q=await I(y);typeof q=="object"&&q!==null&&Object.assign(y,q)}("pipeTo"in y&&typeof y.pipeTo=="function"||typeof((s=t?.body)==null?void 0:s.pipe)=="function")&&("duplex"in y||(y.duplex="half"));const{clearTimeout:g}=sn(d,b);let u=await v(y.url,y);g();const E={response:u,request:y};for(const I of o.onResponse)if(I){const q=await I(ge(fe({},E),{response:(a=t?.hookOptions)!=null&&a.cloneResponse?u.clone():u}));q instanceof Response?u=q:typeof q=="object"&&q!==null&&(u=q.response)}if(u.ok){if(!(y.method!=="HEAD"))return{data:"",error:null};const q=Xs(u),V={data:null,response:u,request:y};if(q==="json"||q==="text"){const G=await u.text(),pe=(n=y.jsonParser)!=null?n:Ct;V.data=await pe(G)}else V.data=await u[q]();y?.output&&y.output&&!y.disableValidation&&(V.data=await Ie(y.output,V.data));for(const G of o.onSuccess)G&&await G(ge(fe({},V),{response:(i=t?.hookOptions)!=null&&i.cloneResponse?u.clone():u}));return t?.throw?V.data:{data:V.data,error:null}}const L=(f=t?.jsonParser)!=null?f:Ct,U=await u.text(),B=Js(U),$=B?await L(U):null,F={response:u,responseText:U,request:y,error:ge(fe({},$),{status:u.status,statusText:u.statusText})};for(const I of o.onError)I&&await I(ge(fe({},F),{response:(l=t?.hookOptions)!=null&&l.cloneResponse?u.clone():u}));if(t?.retry){const I=Fs(t.retry),q=(c=t.retryAttempt)!=null?c:0;if(await I.shouldAttemptRetry(q,u)){for(const G of o.onRetry)G&&await G(E);const V=I.getDelay(q);return await new Promise(G=>setTimeout(G,V)),await dt(e,ge(fe({},t),{retryAttempt:q+1}))}}if(t?.throw)throw new Hs(u.status,u.statusText,B?$:U);return{data:null,error:ge(fe({},$),{status:u.status,statusText:u.statusText})}},_e={};const un=e=>{if(typeof process>"u")return;const t=e??"/api/auth";if(_e.NEXT_PUBLIC_AUTH_URL)return _e.NEXT_PUBLIC_AUTH_URL;if(typeof window>"u"){if(_e.NEXTAUTH_URL)try{return _e.NEXTAUTH_URL}catch{}if(_e.VERCEL_URL)try{const r=_e.VERCEL_URL.startsWith("http")?"":"https://";return`${new URL(`${r}${_e.VERCEL_URL}`).origin}${t}`}catch{}}},fn=(e,t)=>{const r="credentials"in Request.prototype,s=Ts(e?.baseURL,e?.basePath)??un(e?.basePath)??"/api/auth",a=e?.plugins?.flatMap(g=>g.fetchPlugins).filter(g=>g!==void 0)||[],n={id:"lifecycle-hooks",name:"lifecycle-hooks",hooks:{onSuccess:e?.fetchOptions?.onSuccess,onError:e?.fetchOptions?.onError,onRequest:e?.fetchOptions?.onRequest,onResponse:e?.fetchOptions?.onResponse}},{onSuccess:i,onError:f,onRequest:l,onResponse:c,...o}=e?.fetchOptions||{},m=on({baseURL:s,...r?{credentials:"include"}:{},method:"GET",jsonParser(g){return g?ws(g,{strict:!1}):null},customFetchImpl:fetch,...o,plugins:[n,...o.plugins||[],...e?.disableDefaultFetchPlugins?[]:[$s],...a]}),{$sessionSignal:d,session:v,broadcastSessionUpdate:b}=Ns(m,e),w=e?.plugins||[];let O={};const N={$sessionSignal:d,session:v},_={"/sign-out":"POST","/revoke-sessions":"POST","/revoke-other-sessions":"POST","/delete-user":"POST"},h=[{signal:"$sessionSignal",matcher(g){return g==="/sign-out"||g==="/update-user"||g==="/update-session"||g==="/sign-up/email"||g==="/sign-in/email"||g==="/delete-user"||g==="/verify-email"||g==="/revoke-sessions"||g==="/revoke-session"||g==="/revoke-other-sessions"||g==="/change-email"||g==="/change-password"},callback(g){g==="/sign-out"?b("signout"):(g==="/update-user"||g==="/update-session")&&b("updateUser")}}];for(const g of w)g.getAtoms&&Object.assign(N,g.getAtoms?.(m)),g.pathMethods&&Object.assign(_,g.pathMethods),g.atomListeners&&h.push(...g.atomListeners);const y={notify:g=>{N[g].set(!N[g].get())},listen:(g,u)=>{N[g].subscribe(u)},atoms:N};for(const g of w)g.getActions&&(O=Us(g.getActions?.(m,y,e)??{},O));return{get baseURL(){return s},pluginsActions:O,pluginsAtoms:N,pluginPathMethods:_,atomListeners:h,$fetch:m,$store:y}};function gn(e){return typeof e=="object"&&e!==null&&"get"in e&&typeof e.get=="function"&&"lc"in e&&typeof e.lc=="number"}function hn(e){return e.charAt(0).toUpperCase()+e.slice(1)}const pn=/[\p{Ll}\d]+|\p{Lu}+(?!\p{Ll})|\p{Lu}[\p{Ll}\d]+|\p{Lo}+/gu,vn=/['\u2019]/g;function kn(e){return e.replace(vn,"").match(pn)??[]}function bn(e){return kn(e).map(t=>t.toLowerCase()).join("-")}function mn(e,t,r){const s=t[e],{fetchOptions:a,query:n,...i}=r||{};return s||(a?.method?a.method:i&&Object.keys(i).length>0?"POST":"GET")}function yn(e,t,r,s,a){function n(i=[]){return new Proxy(function(){},{get(f,l){if(typeof l!="string"||l==="then"||l==="catch"||l==="finally")return;const c=[...i,l];let o=e;for(const m of c)if(o&&typeof o=="object"&&m in o)o=o[m];else{o=void 0;break}return typeof o=="function"||gn(o)?o:n(c)},apply:async(f,l,c)=>{const o="/"+i.map(bn).join("/"),m=c[0]||{},d=c[1]||{},{query:v,fetchOptions:b,...w}=m,O={...d,...b},N=mn(o,r,m);return await t(o,{...O,body:N==="GET"?void 0:{...w,...O?.body||{}},query:v||O?.query,method:N,async onSuccess(_){if(await O?.onSuccess?.(_),!a||O.disableSignal)return;const h=a.filter(g=>g.matcher(o));if(!h.length)return;const y=new Set;for(const g of h){const u=s[g.signal];if(!u)return;if(y.has(g.signal))continue;y.add(g.signal);const E=u.get();setTimeout(()=>{u.set(!E)},10),g.callback?.(o)}}})}})}return n()}function wn(e){const{pluginPathMethods:t,pluginsActions:r,pluginsAtoms:s,$fetch:a,atomListeners:n,$store:i}=fn(e),f={};for(const[l,c]of Object.entries(s))f[`use${hn(l)}`]=c;return yn({...r,...f,$fetch:a,$store:i},a,t,s,n)}const xn=rr({FAILED_TO_CREATE_USER:"Failed to create user",USER_ALREADY_EXISTS:"User already exists.",USER_ALREADY_EXISTS_USE_ANOTHER_EMAIL:"User already exists. Use another email.",YOU_CANNOT_BAN_YOURSELF:"You cannot ban yourself",YOU_ARE_NOT_ALLOWED_TO_CHANGE_USERS_ROLE:"You are not allowed to change users role",YOU_ARE_NOT_ALLOWED_TO_CREATE_USERS:"You are not allowed to create users",YOU_ARE_NOT_ALLOWED_TO_LIST_USERS:"You are not allowed to list users",YOU_ARE_NOT_ALLOWED_TO_LIST_USERS_SESSIONS:"You are not allowed to list users sessions",YOU_ARE_NOT_ALLOWED_TO_BAN_USERS:"You are not allowed to ban users",YOU_ARE_NOT_ALLOWED_TO_IMPERSONATE_USERS:"You are not allowed to impersonate users",YOU_ARE_NOT_ALLOWED_TO_REVOKE_USERS_SESSIONS:"You are not allowed to revoke users sessions",YOU_ARE_NOT_ALLOWED_TO_DELETE_USERS:"You are not allowed to delete users",YOU_ARE_NOT_ALLOWED_TO_SET_USERS_PASSWORD:"You are not allowed to set users password",BANNED_USER:"You have been banned from this application",YOU_ARE_NOT_ALLOWED_TO_GET_USER:"You are not allowed to get user",NO_DATA_TO_UPDATE:"No data to update",YOU_ARE_NOT_ALLOWED_TO_UPDATE_USERS:"You are not allowed to update users",YOU_CANNOT_REMOVE_YOURSELF:"You cannot remove yourself",YOU_ARE_NOT_ALLOWED_TO_SET_NON_EXISTENT_VALUE:"You are not allowed to set a non-existent role value",YOU_CANNOT_IMPERSONATE_ADMINS:"You cannot impersonate admins",INVALID_ROLE_TYPE:"Invalid role type",YOU_ARE_NOT_ALLOWED_TO_SET_USERS_EMAIL:"You are not allowed to update users email",PASSWORD_CANNOT_BE_UPDATED_VIA_UPDATE_USER:"Password cannot be updated through update-user. Use the set-user-password endpoint instead"});function _n(e){return{success:!1,error:`You are not allowed to access resource: ${e}`}}function Sn(e){return{success:!1,error:`unauthorized to access resource "${e}"`}}function It(e){return e==="OR"?"OR":"AND"}function Ut(e){return Array.isArray(e)}function En(e){if(Ut(e))return{actions:e,connector:"AND"};if(!e||typeof e!="object")throw new Ue("Invalid access control request");const{actions:t,connector:r}=e;return Ut(t)?{actions:t,connector:It(r)}:{actions:[],connector:It(r)}}function Dt(e,t){return typeof t=="string"&&e.includes(t)}function On(e,{actions:t,connector:r}){return t.length===0?!1:r==="OR"?t.some(s=>Dt(e,s)):t.every(s=>Dt(e,s))}function Rn(e){return{authorize(t,r="AND"){let s=!1;for(const[a,n]of Object.entries(t)){const i=e[a];if(!i){if(r==="AND")return _n(a);continue}const f=On(i,En(n));if(f&&(s=!0),f&&r==="OR")return{success:!0};if(!f&&r==="AND")return Sn(a)}return s?{success:!0}:{success:!1,error:"Not authorized"}},statements:e}}function Tn(e){return{newRole(t){return Rn(t)},statements:e}}const An={user:["create","list","set-role","ban","impersonate","impersonate-admins","delete","set-password","set-email","get","update"],session:["list","revoke","delete"]},lr=Tn(An),cr=lr.newRole({user:["create","list","set-role","ban","impersonate","delete","set-password","set-email","get","update"],session:["list","revoke","delete"]}),dr=lr.newRole({user:[],session:[]}),Ln={admin:cr,user:dr},$n=e=>{if(e.userId&&e.options?.adminUserIds?.includes(e.userId))return!0;if(!e.permissions)return!1;const t=(e.role||e.options?.defaultRole||"user").split(","),r=e.options?.roles||Ln;for(const s of t)if(r[s]?.authorize(e.permissions)?.success)return!0;return!1},Mn=e=>{const t={admin:cr,user:dr,...e?.roles};return{id:"admin-client",version:er,$InferServerPlugin:{},getActions:()=>({admin:{checkRolePermission:r=>$n({role:r.role,options:{ac:e?.ac,roles:t},permissions:r.permissions})}}),pathMethods:{"/admin/list-users":"GET","/admin/impersonate-user":"POST","/admin/stop-impersonating":"POST"},atomListeners:[{matcher:r=>r==="/admin/impersonate-user"||r==="/admin/stop-impersonating",signal:"$sessionSignal"}],$ERROR_CODES:xn}},Pn=rr({INVALID_USERNAME_OR_PASSWORD:"Invalid username or password",EMAIL_NOT_VERIFIED:"Email not verified",UNEXPECTED_ERROR:"Unexpected error",USERNAME_IS_ALREADY_TAKEN:"Username is already taken. Please try another.",USERNAME_TOO_SHORT:"Username is too short",USERNAME_TOO_LONG:"Username is too long",INVALID_USERNAME:"Username is invalid",INVALID_DISPLAY_USERNAME:"Display username is invalid"}),Cn=()=>({id:"username",version:er,$InferServerPlugin:{},atomListeners:[{matcher:e=>e==="/sign-in/username",signal:"$sessionSignal"}],$ERROR_CODES:Pn}),ft=wn({plugins:[Mn(),Cn()]}),Nn="https://www.hilinga.com";async function ur(){await ft.signOut(),window.location.href=Nn}function Do(e){return e}const fr=Le();function In(){const e=$e(fr);if(!e)throw new Error("useActiveWorkspace must be used within AuthGuard");return e}const Ye="ks_active_workspace_id";function Un(){try{const e=localStorage.getItem(Ye);return e?Number(e):null}catch{return null}}function Dn(e){const[t,r]=ae(Un()),s=te(()=>{const n=e.workspaces();if(n.length===0)return null;const i=t();return(i!=null?n.find(l=>l.ws_id===i):null)??n[0]});De(()=>{const n=s();if(n)try{localStorage.getItem(Ye)!==String(n.ws_id)&&localStorage.setItem(Ye,String(n.ws_id))}catch{}});const a=n=>{r(n);try{localStorage.setItem(Ye,String(n))}catch{}};return x(fr.Provider,{value:{activeWorkspace:s,setActiveWsId:a},get children(){return e.children}})}const gr=Le();function hr(){const e=$e(gr);if(!e)throw new Error("usePermissions must be used within a PermissionProvider");return e}function zo(e){const t=hr();return()=>t.has(e)}async function zn(e){if(!e)return null;const t=await fetch("/api/permissions/me",{credentials:"include",headers:{"X-Workspace-Id":String(e)}});return t.ok?t.json():null}function Vn(e){const{activeWorkspace:t}=In(),[r,{refetch:s}]=Fe(()=>t()?.ws_id??null,async d=>zn(d)),a=te(()=>{const d=r();return d?new Set(d.permissions):new Set}),n=te(()=>{const d=r();return d?new Set(d.effectivePermissions??d.permissions):new Set}),i=()=>r()?.bypass??!1,m={resource:r,set:a,effectiveSet:n,bypass:i,loading:()=>r.loading,has:d=>i()?!0:a().has(d),hasAny:(...d)=>{if(i())return!0;const v=a();return d.some(b=>v.has(b))},hasAll:(...d)=>{if(i())return!0;const v=a();return d.every(b=>v.has(b))},hasEffective:d=>i()?!0:n().has(d),refetch:()=>{s()}};return x(gr.Provider,{value:m,get children(){return e.children}})}function Vo(e){const t=hr();return x(re,{get when(){return!t.resource.loading||t.resource()!=null},fallback:null,get children(){return x(re,{get when(){return e.when},get fallback(){return e.fallback??x(qt,{get href(){return e.redirectTo??"/"}})},get children(){return e.children}})}})}const zt=new Set;function gt(e,t){if(zt.has(e)||typeof document>"u")return;zt.add(e);const r=document.createElement("style");r.id=e,r.textContent=t,document.head.appendChild(r)}var jn=j('<span style="background-color:var(--ks-ripple-color, color-mix(in srgb, var(--ks-fg, #ffffff) 30%, transparent))">');const Bn="ks-button-inline-style",Hn=`
7
+ .ks-hud-scan-line { position: relative; overflow: hidden; }
8
+ .ks-hud-scan-line::before { content: ''; position: absolute; top: 0; left: -100%; width: 100%; height: 100%; opacity: 0; pointer-events: none; z-index: 1; transition: opacity 0.2s ease; background: linear-gradient(90deg, transparent, var(--ks-effect-color, rgba(201, 169, 97, 0.4)), transparent); }
9
+ .ks-hud-scan-line:hover::before { left: 100%; opacity: 1; transition: all 0.8s ease; }
10
+ .ks-hud-clip-top-left-bottom-right { clip-path: polygon(6px 0, 100% 0, 100% calc(100% - 6px), calc(100% - 6px) 100%, 0 100%, 0 6px); border: none !important; border-radius: 0 !important; }
11
+ .ks-hud-clip-top-right-bottom-left { clip-path: polygon(0 0, calc(100% - 6px) 0, 100% 6px, 100% 100%, 6px 100%, 0 calc(100% - 6px)); border: none !important; border-radius: 0 !important; }
12
+ .ks-hud-clip-minimal-top-left-bottom-right { clip-path: polygon(4px 0, 100% 0, 100% calc(100% - 4px), calc(100% - 4px) 100%, 0 100%, 0 4px); border: none !important; border-radius: 0 !important; }
13
+ .ks-hud-clip-minimal-top-right-bottom-left { clip-path: polygon(0 0, calc(100% - 4px) 0, 100% 4px, 100% 100%, 4px 100%, 0 calc(100% - 4px)); border: none !important; border-radius: 0 !important; }
14
+ .ks-hud-glow { transition: box-shadow 0.2s ease; box-shadow: 0 0 8px var(--ks-effect-glow, rgba(201, 169, 97, 0.3)); }
15
+ .ks-hud-glow:hover:not(:disabled) { box-shadow: 0 0 15px var(--ks-effect-glow-hover, rgba(201, 169, 97, 0.5)); }
16
+ .ks-hud-pulse { animation: ksHudPulse 2s infinite ease-in-out; }
17
+ @keyframes ksHudPulse { 0%, 100% { background-color: var(--ks-effect-pulse-bg, rgba(201, 169, 97, 0.1)); box-shadow: 0 0 5px var(--ks-effect-pulse-glow, rgba(201, 169, 97, 0.2)); } 50% { background-color: var(--ks-effect-pulse-bg-mid, rgba(201, 169, 97, 0.2)); box-shadow: 0 0 10px var(--ks-effect-pulse-glow-mid, rgba(201, 169, 97, 0.4)); } }
18
+ .ks-btn-ripple { position: relative; overflow: hidden; }
19
+ .ks-btn-ripple-effect { position: absolute; border-radius: 50%; transform: scale(0.1); opacity: 0.8; animation: ksButtonRippleExpand 0.4s ease-out forwards; pointer-events: none; z-index: 0; background-color: var(--ks-ripple-color, rgba(255, 255, 255, 0.3)); }
20
+ .ks-btn-ripple-fade { animation: ksButtonRippleFadeOnly 0.3s ease-out forwards; }
21
+ @keyframes ksButtonRippleExpand { 0% { transform: scale(0.1); opacity: 0.5; } 100% { transform: scale(1); opacity: 0.25; } }
22
+ @keyframes ksButtonRippleFadeOnly { 0% { opacity: 0.3; transform: scale(1); } 100% { opacity: 0; transform: scale(1.1); } }
23
+ .ks-btn-ripple > *:not(.ks-btn-ripple-effect) { position: relative; z-index: 2; }
24
+ .ks-interactive { transition: all 0.15s ease; }
25
+ .ks-interactive:active:not(:disabled) { transform: scale(0.97); opacity: 0.8; }
26
+ .ks-interactive:hover:not(:disabled) { transform: scale(1.02); }
27
+ `;function Wn(){gt(Bn,Hn)}const ue={"ks-hud-scan-line":"ks-hud-scan-line","ks-hud-clip-top-left-bottom-right":"ks-hud-clip-top-left-bottom-right","ks-hud-clip-top-right-bottom-left":"ks-hud-clip-top-right-bottom-left","ks-hud-clip-minimal-top-left-bottom-right":"ks-hud-clip-minimal-top-left-bottom-right","ks-hud-clip-minimal-top-right-bottom-left":"ks-hud-clip-minimal-top-right-bottom-left","ks-hud-glow":"ks-hud-glow","ks-hud-pulse":"ks-hud-pulse","ks-btn-ripple":"ks-btn-ripple","ks-btn-ripple-effect":"ks-btn-ripple-effect","ks-btn-ripple-fade":"ks-btn-ripple-fade","ks-interactive":"ks-interactive"};function Vt(...e){return e.filter(Boolean).join(" ")}const ot="color-mix(in srgb, var(--ks-fg, #ffffff) 30%, transparent)",jt={primary:{textColor:"text-[var(--ks-accent,#fbbf24)]",background:"bg-[color-mix(in_srgb,var(--ks-primary,#c9a961)_20%,transparent)] border-[color-mix(in_srgb,var(--ks-primary,#c9a961)_60%,transparent)]",hover:"hover:bg-[color-mix(in_srgb,var(--ks-primary-hover,#d4b876)_30%,transparent)] hover:border-[var(--ks-primary-hover,#d4b876)]",colors:{ripple:ot,effectColor:"color-mix(in srgb, var(--ks-primary, #c9a961) 40%, transparent)",effectBg:"color-mix(in srgb, var(--ks-primary, #c9a961) 10%, transparent)",effectBorder:"color-mix(in srgb, var(--ks-primary, #c9a961) 40%, transparent)",effectBgHover:"color-mix(in srgb, var(--ks-primary, #c9a961) 20%, transparent)",effectBorderHover:"color-mix(in srgb, var(--ks-primary, #c9a961) 60%, transparent)",effectGlow:"color-mix(in srgb, var(--ks-primary, #c9a961) 30%, transparent)",effectGlowHover:"color-mix(in srgb, var(--ks-primary, #c9a961) 50%, transparent)",effectPulseBgMid:"color-mix(in srgb, var(--ks-primary, #c9a961) 20%, transparent)",effectPulseGlow:"color-mix(in srgb, var(--ks-primary, #c9a961) 20%, transparent)"}},danger:{textColor:"text-[var(--ks-danger-fg,#f87171)]",background:"bg-[color-mix(in_srgb,var(--ks-danger,#ef4444)_20%,transparent)] border-[color-mix(in_srgb,var(--ks-danger,#ef4444)_60%,transparent)]",hover:"hover:bg-[color-mix(in_srgb,var(--ks-danger,#ef4444)_30%,transparent)] hover:border-[var(--ks-danger,#ef4444)]",colors:{ripple:ot,effectColor:"color-mix(in srgb, var(--ks-danger, #ef4444) 40%, transparent)",effectBg:"color-mix(in srgb, var(--ks-danger, #ef4444) 10%, transparent)",effectBorder:"color-mix(in srgb, var(--ks-danger, #ef4444) 40%, transparent)",effectBgHover:"color-mix(in srgb, var(--ks-danger, #ef4444) 20%, transparent)",effectBorderHover:"color-mix(in srgb, var(--ks-danger, #ef4444) 60%, transparent)",effectGlow:"color-mix(in srgb, var(--ks-danger, #ef4444) 30%, transparent)",effectGlowHover:"color-mix(in srgb, var(--ks-danger, #ef4444) 50%, transparent)",effectPulseBgMid:"color-mix(in srgb, var(--ks-danger, #ef4444) 20%, transparent)",effectPulseGlow:"color-mix(in srgb, var(--ks-danger, #ef4444) 20%, transparent)"}},secondary:{textColor:"text-[var(--ks-fg-muted,#a1a1aa)]",background:"bg-[color-mix(in_srgb,var(--ks-border-strong,#3f3f46)_20%,transparent)] border-[color-mix(in_srgb,var(--ks-border-strong,#3f3f46)_60%,transparent)]",hover:"hover:bg-[color-mix(in_srgb,var(--ks-border-strong,#3f3f46)_30%,transparent)] hover:border-[var(--ks-fg-muted,#a1a1aa)]",colors:{ripple:ot,effectColor:"color-mix(in srgb, var(--ks-border-strong, #3f3f46) 40%, transparent)",effectBg:"color-mix(in srgb, var(--ks-border-strong, #3f3f46) 10%, transparent)",effectBorder:"color-mix(in srgb, var(--ks-border-strong, #3f3f46) 40%, transparent)",effectBgHover:"color-mix(in srgb, var(--ks-border-strong, #3f3f46) 20%, transparent)",effectBorderHover:"color-mix(in srgb, var(--ks-border-strong, #3f3f46) 60%, transparent)",effectGlow:"color-mix(in srgb, var(--ks-border-strong, #3f3f46) 30%, transparent)",effectGlowHover:"color-mix(in srgb, var(--ks-border-strong, #3f3f46) 50%, transparent)",effectPulseBgMid:"color-mix(in srgb, var(--ks-border-strong, #3f3f46) 20%, transparent)",effectPulseGlow:"color-mix(in srgb, var(--ks-border-strong, #3f3f46) 20%, transparent)"}}},Bt={clip1:{effects:["clip-top-left-bottom-right"],baseClasses:"border",overrideType:!1},clip2:{effects:["clip-top-right-bottom-left"],baseClasses:"border",overrideType:!1},ghost:{effects:[],baseClasses:"bg-transparent border-transparent hover:bg-current/10 hover:border-transparent",overrideType:!0},link:{effects:[],baseClasses:"px-0 py-0 bg-transparent border-transparent underline-offset-4 hover:underline hover:bg-transparent hover:border-transparent",overrideType:!0}},Ht={md:{padding:"px-4 py-2",text:"text-sm",gap:"gap-2"},sm:{padding:"px-2.5 py-1",text:"text-xs",gap:"gap-1.5"}},pr=e=>{Wn();const t=J({as:"button",intent:"primary",variant:"clip1",size:"md",noRipple:!1,noScanline:!1,noGlow:!1,noPulse:!1,iconPosition:"left"},e),[r,s]=Yt(t,["as","intent","variant","size","noRipple","noScanline","noGlow","noPulse","icon","iconPosition","class","children","onClick","disabled"]),[a,n]=ae([]);let i,f=0;const l=te(()=>!r.children&&r.icon),c=te(()=>jt[r.intent]||jt.primary),o=te(()=>Bt[r.variant]||Bt.clip1),m=te(()=>Ht[r.size]||Ht.md),d=te(()=>!(r.noRipple||r.variant==="link")),v=te(()=>{const u=[...o().effects];return r.noScanline||u.push("scanline"),u}),b=te(()=>v().map(u=>({scanline:ue["ks-hud-scan-line"],"clip-top-left-bottom-right":ue["ks-hud-clip-top-left-bottom-right"],"clip-top-right-bottom-left":ue["ks-hud-clip-top-right-bottom-left"],"clip-minimal-top-left-bottom-right":ue["ks-hud-clip-minimal-top-left-bottom-right"],"clip-minimal-top-right-bottom-left":ue["ks-hud-clip-minimal-top-right-bottom-left"],glow:ue["ks-hud-glow"],pulse:ue["ks-hud-pulse"]})[u]).filter(Boolean)),w=te(()=>{const u=c().colors;return{"--ks-effect-color":u.effectColor,"--ks-effect-bg":u.effectBg,"--ks-effect-border":u.effectBorder,"--ks-effect-bg-hover":u.effectBgHover,"--ks-effect-border-hover":u.effectBorderHover,"--ks-effect-glow":u.effectGlow,"--ks-effect-glow-hover":u.effectGlowHover,"--ks-effect-pulse-bg":u.effectBg,"--ks-effect-pulse-bg-mid":u.effectPulseBgMid,"--ks-effect-pulse-glow":u.effectPulseGlow,"--ks-effect-pulse-glow-mid":u.effectGlow,"--ks-ripple-color":u.ripple}}),O=te(()=>{const u="select-none inline-flex items-center justify-center font-medium transition-all duration-200 focus:outline-none rounded",E=c().textColor,L=o().overrideType?"":`${c().background} ${c().hover}`,U=o().baseClasses,B=r.variant==="link"?`${m().text} ${m().gap}`:`${m().padding} ${m().text} ${m().gap}`;return Vt(u,B,E,L,U,r.class,d()&&ue["ks-btn-ripple"],!d()&&ue["ks-interactive"],l()&&"aspect-square !p-2",...b(),r.disabled&&"opacity-50 cursor-not-allowed")}),N=u=>{if(!r.disabled&&d()&&i){f=Date.now();const E=i.getBoundingClientRect(),L=u.clientX-E.left,U=u.clientY-E.top,B=Math.max(E.width,E.height)*2,$=Date.now()+Math.random();n(F=>[...F,{id:$,x:L,y:U,size:B,isFading:!1}])}},_=()=>{if(!d()||r.disabled)return;const u=Date.now()-f,E=Math.max(0,400-u);setTimeout(()=>{n(L=>L.map(U=>({...U,isFading:!0}))),setTimeout(()=>n([]),400)},E)},h=()=>{r.disabled||_()},y=u=>{r.onClick&&!r.disabled&&r.onClick(u)},g=te(()=>{const u=r.icon;if(l()&&u)return x(u,{});if(u&&r.children){const E=x(u,{});return r.iconPosition==="left"?[E,ke(()=>r.children)]:[ke(()=>r.children),E]}return u?x(u,{}):r.children});return Ae(()=>n([])),x(ut,J({get component(){return r.as},ref:u=>{i=u;const E=s.ref;typeof E=="function"&&E(u)},get class(){return O()},get style(){return w()},onMouseDown:N,onMouseUp:_,onMouseLeave:h,onClick:y,get disabled(){return r.disabled}},s,{get children(){return[ke(()=>g()),x(re,{get when(){return d()},get children(){return x(xe,{get each(){return a()},children:u=>(()=>{var E=jn();return K(L=>{var U=Vt(ue["ks-btn-ripple-effect"],u.isFading&&ue["ks-btn-ripple-fade"]),B=`${u.x-u.size/2}px`,$=`${u.y-u.size/2}px`,F=`${u.size}px`,I=`${u.size}px`;return U!==L.e&&Te(E,L.e=U),B!==L.t&&Ee(E,"left",L.t=B),$!==L.a&&Ee(E,"top",L.a=$),F!==L.o&&Ee(E,"width",L.o=F),I!==L.i&&Ee(E,"height",L.i=I),L},{e:void 0,t:void 0,a:void 0,o:void 0,i:void 0}),E})()})}})]}}))};var Yn=[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]],Fn=e=>x(se,J(e,{iconNode:Yn,name:"x"})),qn=Fn;D(["click"]);const Gn="ksui-toplayer-style",Xn=`
28
+ [data-ksui-toplayer]{inset:auto;margin:0;}
29
+ `;function Jn(e){return e?(gt(Gn,Xn),e.setAttribute("popover","manual"),e.setAttribute("data-ksui-toplayer",""),Wt(()=>{if(typeof e.showPopover=="function")try{e.showPopover()}catch(t){e.matches(":popover-open")||console.error("[ksui] useTopLayer: showPopover() failed to promote element",t)}}),()=>{try{e.hidePopover()}catch{}}):()=>{}}const vr=Le(()=>null);vr.Provider;function Kn(){const e=$e(vr);return()=>e()??document.body}D(["click"]);D(["click"]);D(["click"]);D(["click"]);D(["click","pointermove","pointerup","pointerdown"]);var Zn=j("<div role=radiogroup>"),Qn=j('<button type=button role=radio class="px-3 py-1.5 text-xs transition-colors">'),ea=j("<span class=sr-only>");function jo(e){const t=[],r=i=>typeof i=="string"?{value:i,label:i,capitalize:!0,disabled:!1,disabledNote:void 0}:{disabled:!1,disabledNote:void 0,...i,capitalize:!1},s=()=>{const i=e.options.findIndex(f=>r(f).value===e.value);return i>=0?i:0},a=(i,f=1)=>{const l=e.options;if(l.length!==0)for(let c=0,o=i;c<l.length;c++,o+=f){const m=(o%l.length+l.length)%l.length;if(!r(l[m]).disabled){e.onChange(r(l[m]).value),t[m]?.focus();return}}},n=i=>{switch(i.key){case"ArrowRight":case"ArrowDown":i.preventDefault(),a(s()+1,1);break;case"ArrowLeft":case"ArrowUp":i.preventDefault(),a(s()-1,-1);break;case"Home":i.preventDefault(),a(0,1);break;case"End":i.preventDefault(),a(e.options.length-1,-1);break}};return(()=>{var i=Zn();return i.$$keydown=n,C(i,x(xe,{get each(){return e.options},children:(f,l)=>{const c=r(f),o=()=>e.value===c.value,m=()=>{const b=e.options.findIndex(w=>!r(w).disabled);return b>=0?b:0},d=()=>o()||!e.value&&l()===m(),v=`${e.testIdPrefix??"segmented"}-${c.value}-note`;return(()=>{var b=Qn();return b.$$click=()=>{c.disabled||e.onChange(c.value)},he(w=>t[l()]=w,b),C(b,()=>c.label,null),C(b,(()=>{var w=ke(()=>!!(c.disabled&&c.disabledNote));return()=>w()?(()=>{var O=ea();return T(O,"id",v),C(O,()=>c.disabledNote),O})():null})(),null),K(w=>{var O=o(),N=c.disabled,_=c.disabled&&c.disabledNote?v:void 0,h=c.disabled?c.disabledNote:void 0,y=c.disabled?-1:d()?0:-1,g=e.testIdPrefix?`${e.testIdPrefix}-${c.value}`:void 0,u={capitalize:c.capitalize,"cursor-not-allowed":c.disabled,"cursor-pointer":!c.disabled,"bg-[var(--ks-accent,#fbbf24)]/20 text-[var(--ks-accent,#fbbf24)]":o()&&!c.disabled,"text-[var(--ks-fg-subtle,#71717a)]":c.disabled,"text-[var(--ks-fg-muted,#a1a1aa)] hover:text-[var(--ks-fg,#ffffff)] hover:bg-[var(--ks-surface-raised,#1a1a1a)]":!o()&&!c.disabled};return O!==w.e&&T(b,"aria-checked",w.e=O),N!==w.t&&T(b,"aria-disabled",w.t=N),_!==w.a&&T(b,"aria-describedby",w.a=_),h!==w.o&&T(b,"title",w.o=h),y!==w.i&&T(b,"tabindex",w.i=y),g!==w.n&&T(b,"data-testid",w.n=g),w.s=Ft(b,u,w.s),w},{e:void 0,t:void 0,a:void 0,o:void 0,i:void 0,n:void 0,s:void 0}),b})()}})),K(f=>{var l=e.ariaLabel,c=`flex rounded-lg border border-[var(--ks-border,rgba(39,39,42,0.5))] overflow-hidden ${e.class??""}`;return l!==f.e&&T(i,"aria-label",f.e=l),c!==f.t&&Te(i,f.t=c),f},{e:void 0,t:void 0}),i})()}D(["keydown","click"]);D(["click"]);D(["keydown","click"]);D(["click","input"]);D(["click"]);D(["click"]);D(["click","input","keydown","mousedown"]);var ta=[["path",{d:"m7 15 5 5 5-5",key:"1hf1tw"}],["path",{d:"m7 9 5-5 5 5",key:"sgt6xg"}]],ra=e=>x(se,J(e,{iconNode:ta,name:"chevrons-up-down"})),sa=ra;D(["click","input"]);D(["click"]);D(["keydown","input","click"]);D(["input","click"]);D(["click","input","keydown"]);D(["click","input"]);D(["click","input"]);D(["click"]);D(["click"]);D(["input"]);D(["input","keydown","keyup","mouseup","mousedown","click"]);var na=j('<div class="border-t border-[var(--ks-border-strong,#3f3f46)]"><button type=button class="w-full text-left px-3 py-2 text-xs text-[var(--ks-danger-fg,#f87171)] hover:bg-[color-mix(in_srgb,var(--ks-danger,#ef4444)_10%,transparent)] transition-colors flex items-center gap-2"><span>Clear selection'),aa=j('<div class="z-[10000] rounded-md border border-[var(--ks-input-border,#3f3f46)] bg-[color-mix(in_srgb,var(--ks-overlay-surface,#18181b)_95%,transparent)] backdrop-blur shadow-xl overflow-hidden flex flex-col"><div class="px-2 py-1.5 border-b border-[var(--ks-border-strong,#3f3f46)]"><input type=text class="w-full px-2 py-1 text-xs bg-[var(--ks-bg,#0a0a0a)] border border-[var(--ks-border-strong,#3f3f46)] rounded text-[var(--ks-fg,#ffffff)] placeholder:text-[var(--ks-input-placeholder,#71717a)] focus:outline-none focus:border-[color-mix(in_srgb,var(--ks-focus-ring,#c9a961)_50%,transparent)]"></div><div class="flex-1 overflow-y-auto">'),oa=j("<div><button type=button><span>"),ia=j('<span class="text-[var(--ks-fg-subtle,#71717a)] italic">'),la=j('<div class="px-3 py-3 text-xs text-[var(--ks-fg-subtle,#71717a)] text-center">'),ca=j('<span class="text-[10px] text-[var(--ks-fg-subtle,#71717a)] truncate">'),da=j('<span class="text-[var(--ks-accent,#fbbf24)] shrink-0">✓'),ua=j('<button type=button class="w-full text-left px-3 py-2 text-xs hover:bg-[color-mix(in_srgb,var(--ks-primary,#c9a961)_10%,transparent)] transition-colors flex items-center justify-between gap-2"><span class="flex flex-col min-w-0"><span class="font-medium truncate">');const fa=240,ga=320,ha=200;function Bo(e){const t=Kn(),[r,s]=ae(!1),[a,n]=ae(""),[i,f]=ae(!1),[l,c]=ae({});let o,m,d;const v=()=>{if(!(e.value==null||e.value===""))return e.options.find(_=>String(_.value)===String(e.value))?.label},b=te(()=>{const _=a().trim().toLowerCase();return _?e.options.filter(h=>h.label.toLowerCase().includes(_)||(h.description?.toLowerCase().includes(_)??!1)):e.options}),w=()=>{if(!o)return;const _=o.getBoundingClientRect(),h=window.innerHeight,y=window.innerWidth,g=Math.max(fa,_.width),u=h-_.bottom,E=_.top,L=u<ha&&E>u,U=Math.max(160,Math.min(ga,(L?E:u)-12)),B=Math.min(Math.max(8,_.left),y-g-8);c({position:"fixed",...L?{bottom:`${Math.max(8,h-_.top+4)}px`}:{top:`${_.bottom+4}px`},left:`${B}px`,width:`${g}px`,"max-height":`${U}px`})};De(()=>{if(!r())return;w(),queueMicrotask(()=>d?.focus());const _=g=>{const u=g.target;o?.contains(u)||m?.contains(u)||(s(!1),n(""))},h=g=>{g.key==="Escape"&&(s(!1),n(""))},y=()=>w();document.addEventListener("mousedown",_),document.addEventListener("keydown",h),window.addEventListener("resize",y),window.addEventListener("scroll",y,!0),Ae(()=>{document.removeEventListener("mousedown",_),document.removeEventListener("keydown",h),window.removeEventListener("resize",y),window.removeEventListener("scroll",y,!0)})});const O=()=>e.loading?"Loading…":a()?e.noMatchLabel??"No matches":e.emptyLabel??"No options",N=async _=>{f(!0);try{await e.onChange(_)}finally{f(!1),s(!1),n("")}};return(()=>{var _=oa(),h=_.firstChild,y=h.firstChild;h.$$click=()=>!e.disabled&&s(u=>!u);var g=o;return typeof g=="function"?he(g,h):o=h,C(y,(()=>{var u=ke(()=>!!i());return()=>u()?"…":v()??(()=>{var E=ia();return C(E,()=>e.placeholder??"Select…"),E})()})()),C(h,x(sa,{size:12,class:"text-[var(--ks-fg-subtle,#71717a)] shrink-0"}),null),C(_,x(re,{get when(){return r()},get children(){return x(Tr,{get mount(){return t()},get children(){var u=aa(),E=u.firstChild,L=E.firstChild,U=E.nextSibling;he($=>{m=$,Ae(Jn($))},u),L.$$input=$=>n($.currentTarget.value);var B=d;return typeof B=="function"?he(B,L):d=L,C(U,x(re,{get when(){return ke(()=>!e.loading)()&&b().length>0},get fallback(){return(()=>{var $=la();return C($,O),$})()},get children(){return x(xe,{get each(){return b()},children:$=>{const F=()=>String($.value)===String(e.value??"");return(()=>{var I=ua(),q=I.firstChild,V=q.firstChild;return I.$$click=()=>N($),C(V,()=>$.label),C(q,x(re,{get when(){return $.description},get children(){var G=ca();return C(G,()=>$.description),G}}),null),C(I,x(re,{get when(){return F()},get children(){return da()}}),null),K(G=>{var pe=!!F(),ve=!F();return pe!==G.e&&I.classList.toggle("text-[var(--ks-accent,#fbbf24)]",G.e=pe),ve!==G.t&&I.classList.toggle("text-[var(--ks-fg,#ffffff)]",G.t=ve),G},{e:void 0,t:void 0}),I})()}})}})),C(u,x(re,{get when(){return ke(()=>!!(e.allowClear&&e.value!=null))()&&e.value!==""},get children(){var $=na(),F=$.firstChild,I=F.firstChild;return F.$$click=()=>N(null),C(F,x(qn,{size:12}),I),$}}),null),K($=>{var F=l(),I=e.searchPlaceholder??"Search…";return $.e=it(u,F,$.e),I!==$.t&&T(L,"placeholder",$.t=I),$},{e:void 0,t:void 0}),K(()=>L.value=a()),u}})}}),null),K(u=>{var E=e.wrapperClass??"relative inline-block",L=e.triggerTestId,U=e.disabled||i(),B=e.triggerClass??"inline-flex items-center gap-1.5 text-xs text-[var(--ks-fg,#ffffff)] bg-[color-mix(in_srgb,var(--ks-border,rgba(39,39,42,0.5))_60%,transparent)] hover:bg-[var(--ks-surface-raised,#1a1a1a)] border border-[color-mix(in_srgb,var(--ks-border-strong,#3f3f46)_60%,transparent)] rounded px-2 py-1 cursor-pointer transition-colors",$={"cursor-not-allowed opacity-60":e.disabled},F=e.disabled?void 0:"Click to select",I=e.triggerLabelClass??"truncate max-w-[180px]";return E!==u.e&&Te(_,u.e=E),L!==u.t&&T(h,"data-testid",u.t=L),U!==u.a&&(h.disabled=u.a=U),B!==u.o&&Te(h,u.o=B),u.i=Ft(h,$,u.i),F!==u.n&&T(h,"title",u.n=F),I!==u.s&&Te(y,u.s=I),u},{e:void 0,t:void 0,a:void 0,o:void 0,i:void 0,n:void 0,s:void 0}),_})()}D(["click","input"]);D(["input","click"]);D(["click"]);var pa=[["rect",{x:"2",y:"4",width:"20",height:"16",rx:"2",key:"izxlao"}],["path",{d:"M10 4v4",key:"pp8u80"}],["path",{d:"M2 8h20",key:"d11cs7"}],["path",{d:"M6 4v4",key:"1svtjw"}]],va=e=>x(se,J(e,{iconNode:pa,name:"app-window"})),ka=va,ba=[["path",{d:"M8 3 4 7l4 4",key:"9rb6wj"}],["path",{d:"M4 7h16",key:"6tx8e3"}],["path",{d:"m16 21 4-4-4-4",key:"siv7j2"}],["path",{d:"M20 17H4",key:"h6l3hr"}]],ma=e=>x(se,J(e,{iconNode:ba,name:"arrow-left-right"})),ya=ma,wa=[["rect",{width:"16",height:"20",x:"4",y:"2",rx:"2",key:"1nb95v"}],["line",{x1:"8",x2:"16",y1:"6",y2:"6",key:"x4nwl0"}],["line",{x1:"16",x2:"16",y1:"14",y2:"18",key:"wjye3r"}],["path",{d:"M16 10h.01",key:"1m94wz"}],["path",{d:"M12 10h.01",key:"1nrarc"}],["path",{d:"M8 10h.01",key:"19clt8"}],["path",{d:"M12 14h.01",key:"1etili"}],["path",{d:"M8 14h.01",key:"6423bh"}],["path",{d:"M12 18h.01",key:"mhygvu"}],["path",{d:"M8 18h.01",key:"lrp35t"}]],xa=e=>x(se,J(e,{iconNode:wa,name:"calculator"})),_a=xa,Sa=[["path",{d:"M21.801 10A10 10 0 1 1 17 3.335",key:"yps3ct"}],["path",{d:"m9 11 3 3L22 4",key:"1pflzl"}]],Ea=e=>x(se,J(e,{iconNode:Sa,name:"circle-check-big"})),Oa=Ea,Ra=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}]],Ta=e=>x(se,J(e,{iconNode:Ra,name:"circle"})),Aa=Ta,La=[["path",{d:"M12 13v8l-4-4",key:"1f5nwf"}],["path",{d:"m12 21 4-4",key:"1lfcce"}],["path",{d:"M4.393 15.269A7 7 0 1 1 15.71 8h1.79a4.5 4.5 0 0 1 2.436 8.284",key:"ui1hmy"}]],$a=e=>x(se,J(e,{iconNode:La,name:"cloud-download"})),Ma=$a,Pa=[["ellipse",{cx:"12",cy:"5",rx:"9",ry:"3",key:"msslwz"}],["path",{d:"M3 5V19A9 3 0 0 0 21 19V5",key:"1wlel7"}],["path",{d:"M3 12A9 3 0 0 0 21 12",key:"mv7ke4"}]],Ca=e=>x(se,J(e,{iconNode:Pa,name:"database"})),Na=Ca,Ia=[["path",{d:"M15 6a9 9 0 0 0-9 9V3",key:"1cii5b"}],["circle",{cx:"18",cy:"6",r:"3",key:"1h7g24"}],["circle",{cx:"6",cy:"18",r:"3",key:"fqmcym"}]],Ua=e=>x(se,J(e,{iconNode:Ia,name:"git-branch"})),Da=Ua,za=[["path",{d:"M14 4.1 12 6",key:"ita8i4"}],["path",{d:"m5.1 8-2.9-.8",key:"1go3kf"}],["path",{d:"m6 12-1.9 2",key:"mnht97"}],["path",{d:"M7.2 2.2 8 5.1",key:"1cfko1"}],["path",{d:"M9.037 9.69a.498.498 0 0 1 .653-.653l11 4.5a.5.5 0 0 1-.074.949l-4.349 1.041a1 1 0 0 0-.74.739l-1.04 4.35a.5.5 0 0 1-.95.074z",key:"s0h3yz"}]],Va=e=>x(se,J(e,{iconNode:za,name:"mouse-pointer-click"})),ja=Va,Ba=[["path",{d:"M16.247 7.761a6 6 0 0 1 0 8.478",key:"1fwjs5"}],["path",{d:"M19.075 4.933a10 10 0 0 1 0 14.134",key:"ehdyv1"}],["path",{d:"M4.925 19.067a10 10 0 0 1 0-14.134",key:"1q22gi"}],["path",{d:"M7.753 16.239a6 6 0 0 1 0-8.478",key:"r2q7qm"}],["circle",{cx:"12",cy:"12",r:"2",key:"1c9p78"}]],Ha=e=>x(se,J(e,{iconNode:Ba,name:"radio"})),Wa=Ha,Ya=[["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"}]],Fa=e=>x(se,J(e,{iconNode:Ya,name:"save"})),qa=Fa,Ga=[["path",{d:"M11.017 2.814a1 1 0 0 1 1.966 0l1.051 5.558a2 2 0 0 0 1.594 1.594l5.558 1.051a1 1 0 0 1 0 1.966l-5.558 1.051a2 2 0 0 0-1.594 1.594l-1.051 5.558a1 1 0 0 1-1.966 0l-1.051-5.558a2 2 0 0 0-1.594-1.594l-5.558-1.051a1 1 0 0 1 0-1.966l5.558-1.051a2 2 0 0 0 1.594-1.594z",key:"1s2grr"}],["path",{d:"M20 2v4",key:"1rf3ol"}],["path",{d:"M22 4h-4",key:"gwowj6"}],["circle",{cx:"4",cy:"20",r:"2",key:"6kqj1y"}]],Xa=e=>x(se,J(e,{iconNode:Ga,name:"sparkles"})),Ja=Xa;D(["click"]);D(["click"]);D(["input"]);D(["click"]);D(["click"]);D(["click","input"]);const Ka={nodeW:168,nodeH:48,gapX:72,gapY:18,pad:16};function Za(e,t){const r=new Map;for(const s of e)r.set(s,0);for(const s of t)e.has(s.from)&&e.has(s.to)&&r.set(s.to,(r.get(s.to)??0)+1);return r}function Qa(e,t,r){const s=new Set(e.map(o=>o.id)),a=new Set(e.filter(o=>typeof o.lane=="number").map(o=>o.id)),n=new Map;for(const o of e)typeof o.lane=="number"&&n.set(o.id,o.lane);const i=Za(s,t);if(r==="bipartite"){for(const o of e)n.has(o.id)||n.set(o.id,(i.get(o.id)??0)>0?1:0);return n}for(const o of e)n.has(o.id)||n.set(o.id,0);const f=t.filter(o=>s.has(o.from)&&s.has(o.to)),l=eo(e,f),c=f.filter(o=>!l.has(`${o.from}\0${o.to}`));for(let o=0;o<e.length;o++){let m=!1;for(const d of c){if(a.has(d.to))continue;const v=(n.get(d.from)??0)+1;v>(n.get(d.to)??0)&&(n.set(d.to,v),m=!0)}if(!m)break}return n}function eo(e,t){const r=new Map;for(const n of t)(r.get(n.from)??r.set(n.from,[]).get(n.from)).push(n.to);const s=new Map;for(const n of e)s.set(n.id,0);const a=new Set;for(const n of e){if(s.get(n.id)!==0)continue;const i=[{id:n.id,i:0}];for(s.set(n.id,1);i.length;){const f=i[i.length-1],l=r.get(f.id)??[];if(f.i<l.length){const c=l[f.i++],o=s.get(c);o===1?a.add(`${f.id}\0${c}`):o===0&&(s.set(c,1),i.push({id:c,i:0}))}else s.set(f.id,2),i.pop()}}return a}function to(e,t,r="layered",s=Ka,a="horizontal"){const{nodeW:n,nodeH:i,gapX:f,gapY:l,pad:c}=s,o=Qa(e,t,r),m=a==="vertical",d=ro(e,t,o),v=e.map(h=>{const y=o.get(h.id)??0,g=d.get(h.id)??0;return{...h,lane:y,row:Math.round(g),x:c+(m?g*(n+f):y*(n+f)),y:c+(m?y*(i+l):g*(i+l))}}),b=v.reduce((h,y)=>Math.max(h,y.x),c),w=v.reduce((h,y)=>Math.max(h,y.y),c),O=b+n+c,N=w+i+c,_=new Map(v.map(h=>[h.id,h]));return{nodes:v,byId:_,width:O,height:N}}function ro(e,t,r){const s=new Set(e.map(c=>c.id)),a=new Map(e.map(c=>[c.id,c.id])),n=c=>{let o=c;for(;a.get(o)!==o;)o=a.get(o);for(;a.get(c)!==o;){const m=a.get(c);a.set(c,o),c=m}return o};for(const c of t)s.has(c.from)&&s.has(c.to)&&a.set(n(c.from),n(c.to));const i=new Map;for(const c of e){const o=n(c.id);(i.get(o)??i.set(o,[]).get(o)).push(c)}const f=new Map;let l=0;for(const c of i.values()){const o=new Set(c.map(b=>b.id)),m=t.filter(b=>o.has(b.from)&&o.has(b.to)),d=so(c,m,r);let v=0;for(const[b,w]of d)f.set(b,w+l),v=Math.max(v,w);l+=v+2}return f}function so(e,t,r){const s=new Set(e.map(d=>d.id)),a=new Map;for(const d of e){const v=r.get(d.id)??0,b=a.get(v)??[];b.push(d.id),a.set(v,b)}const n=new Map,i=new Map;for(const d of t)!s.has(d.from)||!s.has(d.to)||((i.get(d.from)??i.set(d.from,[]).get(d.from)).push(d.to),(n.get(d.to)??n.set(d.to,[]).get(d.to)).push(d.from));const f=new Map;for(const d of a.values())d.forEach((v,b)=>f.set(v,b));const l=[...a.keys()].sort((d,v)=>d-v),c=d=>d.length?d.reduce((v,b)=>v+(f.get(b)??0),0)/d.length:null;for(let d=0;d<6;d++){const v=d%2===0,b=v?l:[...l].reverse();for(const w of b){const O=a.get(w),N=O.map(y=>{const g=v?n.get(y):i.get(y);return c(g??[])??f.get(y)??0}),_=O.map((y,g)=>g).sort((y,g)=>N[y]-N[g]);let h=-1/0;for(const y of _){const g=Math.max(N[y],h+1);f.set(O[y],g),h=g}}}const o=[...f.values()],m=o.length?Math.min(...o):0;for(const[d,v]of f)f.set(d,v-m);return f}var no=j('<svg class=ksui-fg-svg role=img><defs><marker id=ksui-fg-arrow viewBox="0 0 8 8"refX=7 refY=4 markerWidth=6 markerHeight=6 orient=auto-start-reverse><path d="M0 0 L8 4 L0 8 z"fill="var(--ksui-fg-edge,color-mix(in srgb, var(--ks-fg, #ffffff) 45%, transparent))"></path></marker></defs><g>'),ao=j('<div class=ksui-fg-controls><button type=button class=ksui-fg-ctrl aria-label="Zoom in">+</button><button type=button class=ksui-fg-ctrl aria-label="Zoom out">−</button><button type=button class=ksui-fg-ctrl aria-label="Fit to view">⤢'),oo=j("<span class=ksui-fg-hint>drag to pan · scroll to zoom"),io=j("<div class=ksui-fg-wrap>"),lo=j("<p class=ksui-fg-empty>"),co=j("<svg><rect class=ksui-fg-elabel-bg height=12 rx=3></svg>",!1,!0,!1),uo=j("<svg><text class=ksui-fg-elabel text-anchor=middle></svg>",!1,!0,!1),fo=j("<svg><g><path marker-end=url(#ksui-fg-arrow)></svg>",!1,!0,!1),go=j("<span class=ksui-fg-kind>"),ho=j("<svg><foreignObject class=ksui-fg-node><div xmlns=http://www.w3.org/1999/xhtml><span class=ksui-fg-chip></span><span class=ksui-fg-txt><span class=ksui-fg-title></svg>",!1,!0,!1),po=j('<svg><circle class="ksui-fg-handle in"r=3.5></svg>',!1,!0,!1),vo=j("<svg><g></svg>",!1,!0,!1),ko=j('<svg><circle class="ksui-fg-handle out"r=3.5></svg>',!1,!0,!1);const bo={data:Na,trigger:ja,modal:ka,load:Ma,call:ya,compute:_a,condition:Da,commit:qa,emit:Wa,effect:Ja,terminal:Oa},mo=e=>bo[e??""]??Aa,kr={nodeW:190,nodeH:60,gapX:100,gapY:100,pad:28},{nodeW:Re,nodeH:Ce,pad:Ne}=kr,yo=.3,wo=3,xo="ksui-flow-graph-style",_o=`
30
+ .ksui-fg-wrap{width:100%;overflow:auto;position:relative;user-select:none;-webkit-user-select:none;}
31
+ .ksui-fg-card,.ksui-fg-title,.ksui-fg-kind,.ksui-fg-elabel{user-select:none;-webkit-user-select:none;}
32
+ .ksui-fg-wrap.interactive{overflow:hidden;border:1px solid var(--ksui-fg-node-border,color-mix(in srgb, var(--ks-fg, #ffffff) 12%, transparent));border-radius:10px;background:var(--ksui-fg-canvas,var(--ks-bg,#0a0a0a));background-image:radial-gradient(var(--ksui-fg-dot,color-mix(in srgb, var(--ks-fg, #ffffff) 5%, transparent)) 1px,transparent 1px);background-size:20px 20px;cursor:grab;touch-action:none;}
33
+ .ksui-fg-wrap.interactive.grabbing{cursor:grabbing;}
34
+ .ksui-fg-wrap.scroll{overflow:auto;border:1px solid var(--ksui-fg-node-border,color-mix(in srgb, var(--ks-fg, #ffffff) 12%, transparent));border-radius:10px;background:var(--ksui-fg-canvas,var(--ks-bg,#0a0a0a));background-image:radial-gradient(var(--ksui-fg-dot,color-mix(in srgb, var(--ks-fg, #ffffff) 5%, transparent)) 1px,transparent 1px);background-size:20px 20px;}
35
+ .ksui-fg-svg{display:block;max-width:100%;height:auto;font-family:inherit;}
36
+ .ksui-fg-wrap.scroll .ksui-fg-svg{margin:0 auto;}
37
+ .ksui-fg-wrap.interactive .ksui-fg-svg{max-width:none;width:100%;height:100%;}
38
+ .ksui-fg-edge{fill:none;stroke:var(--ksui-fg-edge,color-mix(in srgb, var(--ks-fg, #ffffff) 28%, transparent));stroke-width:1.75;}
39
+ .ksui-fg-edge.dashed{stroke-dasharray:5 4;}
40
+ .ksui-fg-edge.primary{stroke:var(--ksui-fg-primary,var(--ks-primary,#c9a961));}
41
+ .ksui-fg-edge.info{stroke:var(--ks-info,#38bdf8);}
42
+ .ksui-fg-edge.success{stroke:var(--ks-success,#10b981);}
43
+ .ksui-fg-edge.danger{stroke:var(--ks-danger,#ef4444);}
44
+ .ksui-fg-edge.muted{stroke:color-mix(in srgb, var(--ks-fg, #ffffff) 20%, transparent);}
45
+ .ksui-fg-edge.flow{stroke-dasharray:6 5;animation:ksui-fg-march .8s linear infinite;}
46
+ @keyframes ksui-fg-march{to{stroke-dashoffset:-11;}}
47
+ @media (prefers-reduced-motion:reduce){.ksui-fg-edge.flow{animation:none;}}
48
+ .ksui-fg-handle{fill:var(--ksui-fg-canvas,var(--ks-bg,#0a0a0a));stroke:var(--ksui-fg-edge,color-mix(in srgb, var(--ks-fg, #ffffff) 40%, transparent));stroke-width:1.5;}
49
+ .ksui-fg-node,.ksui-fg-edge,.ksui-fg-elabel,.ksui-fg-elabel-bg,.ksui-fg-handle{transition:opacity .12s ease;}
50
+ .ksui-fg-dim{opacity:0.14;}
51
+ .ksui-fg-elabel{fill:var(--ksui-fg-muted,color-mix(in srgb, var(--ks-fg, #ffffff) 78%, transparent));font-size:9.5px;}
52
+ .ksui-fg-elabel-bg{fill:var(--ksui-fg-canvas,var(--ks-bg,#0a0a0a));opacity:0.92;}
53
+ .ksui-fg-card{box-sizing:border-box;height:100%;display:flex;align-items:center;gap:9px;padding:0 11px;border-radius:9px;background:var(--ksui-fg-card,var(--ks-surface-raised,#1a1a1a));border:1px solid var(--ksui-fg-node-border,color-mix(in srgb, var(--ks-fg, #ffffff) 14%, transparent));border-left-width:3px;overflow:hidden;}
54
+ .ksui-fg-node.clickable .ksui-fg-card{cursor:pointer;}
55
+ .ksui-fg-node.clickable .ksui-fg-card:hover{background:var(--ks-surface-raised,#1a1a1a);}
56
+ .ksui-fg-node:focus{outline:none;}
57
+ .ksui-fg-node:focus-visible .ksui-fg-card{border-color:var(--ksui-fg-primary,var(--ks-primary,#c9a961));}
58
+ .ksui-fg-chip{flex:none;width:30px;height:30px;border-radius:7px;display:flex;align-items:center;justify-content:center;color:var(--ks-fg,#ffffff);}
59
+ .ksui-fg-txt{min-width:0;display:flex;flex-direction:column;line-height:1.15;}
60
+ .ksui-fg-title{font-size:12px;font-weight:600;color:var(--ksui-fg-fg,var(--ks-fg,#ffffff));white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
61
+ .ksui-fg-kind{font-size:9px;text-transform:uppercase;letter-spacing:0.06em;color:var(--ksui-fg-muted,color-mix(in srgb, var(--ks-fg, #ffffff) 45%, transparent));white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
62
+ .ksui-fg-card.primary{border-left-color:var(--ks-primary,#c9a961);} .ksui-fg-card.primary .ksui-fg-chip{background:var(--ks-primary,#c9a961);color:var(--ks-fg-on-primary,#0a0a0a);}
63
+ .ksui-fg-card.info{border-left-color:var(--ks-info,#38bdf8);} .ksui-fg-card.info .ksui-fg-chip{background:var(--ks-info-bg,rgba(56,189,248,0.12));}
64
+ .ksui-fg-card.success{border-left-color:var(--ks-success,#10b981);} .ksui-fg-card.success .ksui-fg-chip{background:var(--ks-success-bg,rgba(16,185,129,0.12));}
65
+ .ksui-fg-card.danger{border-left-color:var(--ks-danger,#ef4444);} .ksui-fg-card.danger .ksui-fg-chip{background:var(--ks-danger-bg,rgba(239,68,68,0.12));}
66
+ .ksui-fg-card.muted{border-left-color:color-mix(in srgb, var(--ks-fg, #ffffff) 30%, transparent);} .ksui-fg-card.muted .ksui-fg-chip{background:var(--ks-border-strong,#3f3f46);}
67
+ .ksui-fg-empty{padding:1.75rem 1rem;text-align:center;font-size:0.82rem;color:var(--ksui-fg-muted,color-mix(in srgb, var(--ks-fg, #ffffff) 55%, transparent));}
68
+ .ksui-fg-controls{position:absolute;right:8px;bottom:8px;display:flex;gap:4px;z-index:1;}
69
+ .ksui-fg-ctrl{width:24px;height:24px;display:grid;place-items:center;border-radius:5px;border:1px solid var(--ksui-fg-node-border,color-mix(in srgb, var(--ks-fg, #ffffff) 18%, transparent));background:var(--ksui-fg-card,var(--ks-surface-raised,#1a1a1a));color:var(--ksui-fg-fg,var(--ks-fg,#ffffff));font-size:14px;line-height:1;cursor:pointer;user-select:none;}
70
+ .ksui-fg-ctrl:hover{background:var(--ks-surface-raised,#1a1a1a);}
71
+ .ksui-fg-hint{position:absolute;left:8px;bottom:8px;font-size:9.5px;color:var(--ksui-fg-muted,color-mix(in srgb, var(--ks-fg, #ffffff) 40%, transparent));pointer-events:none;}
72
+ `;function So(e,t){return e.length>t?e.slice(0,t-1)+"…":e}const Ho=e=>{gt(xo,_o);const t=p=>e.testId?`${e.testId}-${p}`:void 0,r=()=>e.direction==="vertical",s=()=>!!e.interactive,a=te(()=>to(e.nodes,e.edges,e.layout??"layered",kr,e.direction)),n=te(()=>{const p=new Set,k=new Map;for(const M of e.edges){p.add(M.to);const A=k.get(M.from)??[];A.push(M),k.set(M.from,A)}return{incoming:p,outBySource:k}}),i=te(()=>{const p=new Map,k=M=>{const A=a().byId.get(M);return A?r()?A.x:A.y:0};for(const M of n().outBySource.values())[...M].map((A,H)=>({e:A,i:H})).sort((A,H)=>k(A.e.to)-k(H.e.to)||A.i-H.i).forEach(({e:A},H)=>p.set(A,H));return p}),f=(p,k,M)=>{const A=(k+1)/(M+1);return r()?{x:p.x+Re*A,y:p.y+Ce}:{x:p.x+Re,y:p.y+Ce*A}},l=p=>r()?{x:p.x+Re/2,y:p.y}:{x:p.x,y:p.y+Ce/2},[c,o]=ae({}),m=p=>{const k=c()[p.id];return k?{...p,x:p.x+k.dx,y:p.y+k.dy}:p},d=p=>{const k=a().byId.get(p);return k?m(k):void 0},[v,b]=ae(null),[w,O]=ae(null),N=()=>w()??v(),_=te(()=>{const p=N();if(!p)return null;const k=new Set([p]);for(const M of e.edges)M.from===p&&k.add(M.to),M.to===p&&k.add(M.from);return k}),h=p=>_()!==null&&!_().has(p),y=p=>_()!==null&&!(_().has(p.from)&&_().has(p.to)&&(p.from===N()||p.to===N())),[g,u]=ae({x:0,y:0,k:1}),[E,L]=ae(!1);let U,B=!1,$=0,F=0,I=!1;const q=()=>{if(!U)return;const p=U.getBoundingClientRect(),k=p.width,M=p.height,A=a().nodes.map(m);if(!k||!M||A.length===0)return;const H=Math.min(...A.map(Y=>Y.x))-Ne,S=Math.min(...A.map(Y=>Y.y))-Ne,z=Math.max(...A.map(Y=>Y.x))+Re+Ne,Z=Math.max(...A.map(Y=>Y.y))+Ce+Ne,W=Math.max(1,z-H),ne=Math.max(1,Z-S),Q=Math.min(k/W,M/ne,1.4);u({x:(k-W*Q)/2-H*Q,y:(M-ne*Q)/2-S*Q,k:Q})},V=te(()=>e.nodes.map(p=>p.id).join("|"));let G=null;De(()=>{const p=V();s()&&p!==G&&a().nodes.length>0&&U&&(G=p,o({}),requestAnimationFrame(()=>{if(!U)return;const k=U.clientWidth||0,M=a().nodes;if(!k||M.length===0)return;const A=Math.min(...M.map(z=>z.x)),H=Math.max(...M.map(z=>z.x))+Re,S=Math.min(...M.map(z=>z.y));u({x:k/2-(A+H)/2,y:Ne-S,k:1})}))});const pe=p=>Math.min(wo,Math.max(yo,p)),ve=(p,k,M)=>{const A=g(),H=pe(A.k*p),S=k??(U?.clientWidth??0)/2,z=M??(U?.clientHeight??0)/2;u({x:S-(S-A.x)*(H/A.k),y:z-(z-A.y)*(H/A.k),k:H})},ze=p=>{if(!s())return;p.preventDefault();const k=U?.getBoundingClientRect();ve(p.deltaY<0?1.12:1/1.12,p.clientX-(k?.left??0),p.clientY-(k?.top??0))};let be=null,ie=null;const Ve=p=>{s()&&(I=!1,$=p.clientX,F=p.clientY,U?.setPointerCapture(p.pointerId),be?(ie=be,be=null):(B=!0,L(!0)))},mr=p=>{if(!B&&!ie)return;const k=p.clientX-$,M=p.clientY-F;if(Math.abs(k)+Math.abs(M)>2&&(I=!0),$=p.clientX,F=p.clientY,ie){const A=ie,H=g().k||1;o(S=>{const z=S[A]??{dx:0,dy:0};return{...S,[A]:{dx:z.dx+k/H,dy:z.dy+M/H}}})}else u(A=>({...A,x:A.x+k,y:A.y+M}))},ht=p=>{ie&&!I?O(k=>k===ie?null:ie):B&&!I&&O(null),B=!1,ie=null,be=null,L(!1);try{U?.releasePointerCapture(p.pointerId)}catch{}},yr=(p,k)=>{if(r()){const A=Math.min(110,Math.max(34,Math.abs(k.y-p.y)*.5));return`M ${p.x} ${p.y} C ${p.x} ${p.y+A}, ${k.x} ${k.y-A}, ${k.x} ${k.y}`}const M=Math.min(140,Math.max(46,Math.abs(k.x-p.x)*.5));return`M ${p.x} ${p.y} C ${p.x+M} ${p.y}, ${k.x-M} ${k.y}, ${k.x} ${k.y}`},wr=(p,k)=>({x:(p.x+k.x)/2,y:(p.y+k.y)/2}),xr=p=>{I||e.onNodeSelect?.(p)},_r=(p,k)=>{(p.key==="Enter"||p.key===" ")&&(p.preventDefault(),e.onNodeSelect?.(k))},Sr=()=>s()?`translate(${g().x} ${g().y}) scale(${g().k})`:void 0;return(()=>{var p=io();return C(p,x(re,{get when(){return a().nodes.length>0},get fallback(){return(()=>{var k=lo();return C(k,()=>e.emptyLabel??"Nothing to show yet."),K(()=>T(k,"data-testid",t("empty"))),k})()},get children(){return[(()=>{var k=no(),M=k.firstChild,A=M.nextSibling;k.addEventListener("pointercancel",ht),k.$$pointerup=ht,k.$$pointermove=mr,k.$$pointerdown=Ve,k.addEventListener("wheel",ze);var H=U;return typeof H=="function"?he(H,k):U=k,C(A,x(xe,{get each(){return e.edges},children:S=>{const z=()=>d(S.from),Z=()=>d(S.to);return x(re,{get when(){return ke(()=>!!z())()&&Z()},get children(){return(()=>{const W=n().outBySource.get(S.from)??[],ne=()=>f(z(),i().get(S)??0,W.length||1),Q=()=>l(Z()),Y=()=>wr(ne(),Q()),oe=()=>So(S.label??"",18);return(()=>{var P=fo(),me=P.firstChild;return C(P,x(re,{get when(){return S.label},get children(){return[(()=>{var X=co();return K(ee=>{var le=Y().x-oe().length*2.7-3,ce=Y().y-7,Me=oe().length*5.4+6;return le!==ee.e&&T(X,"x",ee.e=le),ce!==ee.t&&T(X,"y",ee.t=ce),Me!==ee.a&&T(X,"width",ee.a=Me),ee},{e:void 0,t:void 0,a:void 0}),X})(),(()=>{var X=uo();return C(X,oe),K(ee=>{var le=Y().x,ce=Y().y+2;return le!==ee.e&&T(X,"x",ee.e=le),ce!==ee.t&&T(X,"y",ee.t=ce),ee},{e:void 0,t:void 0}),X})()]}}),null),K(X=>{var ee=!!y(S),le=`ksui-fg-edge ${S.accent??""} ${S.dashed?"dashed":""} ${e.animated?"flow":""}`,ce=yr(ne(),Q());return ee!==X.e&&P.classList.toggle("ksui-fg-dim",X.e=ee),le!==X.t&&T(me,"class",X.t=le),ce!==X.a&&T(me,"d",X.a=ce),X},{e:void 0,t:void 0,a:void 0}),P})()})()}})}}),null),C(A,x(xe,{get each(){return a().nodes},children:S=>{const z=()=>m(S),Z=()=>typeof e.onNodeSelect=="function";return(()=>{var W=ho(),ne=W.firstChild,Q=ne.firstChild,Y=Q.nextSibling,oe=Y.firstChild;return Se(W,"pointerleave",s()?()=>b(null):void 0),Se(W,"pointerenter",s()?()=>b(S.id):void 0),Se(W,"pointerdown",s()?()=>be=S.id:void 0,!0),Se(W,"keydown",Z()?P=>_r(P,S.id):void 0,!0),Se(W,"click",Z()?()=>xr(S.id):void 0,!0),T(W,"width",Re),T(W,"height",Ce),C(Q,x(ut,{get component(){return mo(S.kind)},size:15})),C(oe,()=>S.label),C(Y,x(re,{get when(){return S.sublabel},get children(){var P=go();return C(P,()=>S.sublabel),P}}),null),K(P=>{var me=z().x,X=z().y,ee=!!Z(),le=!!h(S.id),ce=t(`node-${S.id}`),Me=Z()?"button":void 0,pt=Z()?0:void 0,vt=S.sublabel?`${S.label} — ${S.sublabel}`:S.label,kt=`ksui-fg-card ${S.accent??"muted"}`,Er=s()?{cursor:"grab"}:{"pointer-events":"none"};return me!==P.e&&T(W,"x",P.e=me),X!==P.t&&T(W,"y",P.t=X),ee!==P.a&&W.classList.toggle("clickable",P.a=ee),le!==P.o&&W.classList.toggle("ksui-fg-dim",P.o=le),ce!==P.i&&T(W,"data-testid",P.i=ce),Me!==P.n&&T(W,"role",P.n=Me),pt!==P.s&&T(W,"tabindex",P.s=pt),vt!==P.h&&T(W,"aria-label",P.h=vt),kt!==P.r&&Te(ne,P.r=kt),P.d=it(ne,Er,P.d),P},{e:void 0,t:void 0,a:void 0,o:void 0,i:void 0,n:void 0,s:void 0,h:void 0,r:void 0,d:void 0}),W})()}}),null),C(A,x(xe,{get each(){return a().nodes},children:S=>{const z=()=>m(S),Z=()=>n().outBySource.get(S.id)??[],W=()=>n().incoming.has(S.id);return(()=>{var ne=vo();return C(ne,x(re,{get when(){return W()},get children(){var Q=po();return K(Y=>{var oe=l(z()).x,P=l(z()).y;return oe!==Y.e&&T(Q,"cx",Y.e=oe),P!==Y.t&&T(Q,"cy",Y.t=P),Y},{e:void 0,t:void 0}),Q}}),null),C(ne,x(xe,{get each(){return Z()},children:(Q,Y)=>(()=>{var oe=ko();return K(P=>{var me=f(z(),Y(),Z().length).x,X=f(z(),Y(),Z().length).y;return me!==P.e&&T(oe,"cx",P.e=me),X!==P.t&&T(oe,"cy",P.t=X),P},{e:void 0,t:void 0}),oe})()}),null),K(()=>ne.classList.toggle("ksui-fg-dim",!!h(S.id))),ne})()}}),null),K(S=>{var z=s()?void 0:`0 0 ${a().width} ${a().height}`,Z=s()?"100%":a().width,W=s()?"100%":a().height,ne=e.ariaLabel??"Flow graph",Q=t("svg"),Y=Sr();return z!==S.e&&T(k,"viewBox",S.e=z),Z!==S.t&&T(k,"width",S.t=Z),W!==S.a&&T(k,"height",S.a=W),ne!==S.o&&T(k,"aria-label",S.o=ne),Q!==S.i&&T(k,"data-testid",S.i=Q),Y!==S.n&&T(A,"transform",S.n=Y),S},{e:void 0,t:void 0,a:void 0,o:void 0,i:void 0,n:void 0}),k})(),x(re,{get when(){return s()},get children(){return[(()=>{var k=ao(),M=k.firstChild,A=M.nextSibling,H=A.nextSibling;return M.$$click=()=>ve(1.2),A.$$click=()=>ve(1/1.2),H.$$click=q,K(S=>{var z=t("controls"),Z=t("reset");return z!==S.e&&T(k,"data-testid",S.e=z),Z!==S.t&&T(H,"data-testid",S.t=Z),S},{e:void 0,t:void 0}),k})(),oo()]}})]}})),K(k=>{var M=!!s(),A=!!r(),H=!!E(),S=s()?{height:`${e.height??360}px`}:r()?{"max-height":`${e.height??360}px`}:void 0,z=t("root");return M!==k.e&&p.classList.toggle("interactive",k.e=M),A!==k.t&&p.classList.toggle("scroll",k.t=A),H!==k.a&&p.classList.toggle("grabbing",k.a=H),k.o=it(p,S,k.o),z!==k.i&&T(p,"data-testid",k.i=z),k},{e:void 0,t:void 0,a:void 0,o:void 0,i:void 0}),p})()};D(["pointerdown","pointermove","pointerup","click","keydown"]);var Eo=j('<div class="h-screen flex flex-col items-center justify-center fixed inset-0 z-[9999]"style="background:var(--ks-bg, #09090b);transition:opacity 0.5s ease"><div class=relative style=width:120px;height:120px><img alt style=position:absolute;inset:0;width:100%;height:100%;object-fit:contain;z-index:5><img alt style="position:absolute;inset:0;width:100%;height:100%;object-fit:contain;z-index:10;mix-blend-mode:screen;filter:hue-rotate(0deg) saturate(3) contrast(1.2);opacity:0"><img alt style="position:absolute;inset:0;width:100%;height:100%;object-fit:contain;z-index:15;mix-blend-mode:screen;filter:hue-rotate(120deg) saturate(3) contrast(1.2);opacity:0"><img alt style="position:absolute;inset:0;width:100%;height:100%;object-fit:contain;z-index:20;mix-blend-mode:screen;filter:hue-rotate(240deg) saturate(3) contrast(1.2);opacity:0"></div><p class="text-[var(--ks-fg-subtle,#71717a)] text-xs uppercase tracking-[0.3em] mt-4"style="transition:opacity 0.3s">Hilinga Workspaces');const Oo=e=>{const[t,r]=ae(!1);let s,a,n,i,f,l=null,c=null,o=!1,m=0;const d=[],v=3;function b(){if(s)for(let h=0;h<v;h++){const y=document.createElement("div");y.style.cssText=`position:fixed;top:0;left:0;width:100%;height:100%;background-image:url(${"/pwa-192.png"});background-size:contain;background-repeat:no-repeat;background-position:center;z-index:25;pointer-events:none;opacity:0;display:none`,s.appendChild(y),d.push(y)}}function w(){const h=d.find(L=>L.style.display==="none");if(!h)return;h.style.display="block",h.style.transition="none";const y=2+Math.random()*6,g=Math.random()*(100-y);h.style.clipPath=`inset(${g}% 0 ${100-g-y}% 0)`;const u=2+Math.random()*8,E=Math.random()>.5?1:-1;h.style.transform=`translateX(${E*u}px)`,h.style.opacity=String(.3+Math.random()*.25),setTimeout(()=>{h.style.transition="transform 0.15s, opacity 0.15s",h.style.transform="translateX(0)",h.style.opacity="0",setTimeout(()=>{h.style.display="none",h.style.clipPath="none"},150)},50+Math.random()*80)}function O(){if(o||!n||!f||!i||!a)return;o=!0;const h=.35+Math.random()*.35;n.style.opacity=String(h),i.style.opacity=String(h*.5),f.style.opacity=String(h);const y=2+Math.random()*6,g=-3+Math.random()*6;n.style.transform=`translate(${-y}px, ${g}px)`,f.style.transform=`translate(${y}px, ${-g}px)`,i.style.transform=`translate(${(Math.random()-.5)*3}px, ${(Math.random()-.5)*3}px)`,a.style.filter="contrast(1.15) saturate(1.3) brightness(1.05)",w(),Math.random()<.4&&w(),setTimeout(()=>{n&&(n.style.opacity="0"),i&&(i.style.opacity="0"),f&&(f.style.opacity="0"),a&&(a.style.filter="none"),o=!1},100+Math.random()*100)}function N(){m=0;const h=()=>{m++,a&&(a.style.transform=`translate(${(Math.random()-.5)*.3}px, ${(Math.random()-.5)*.3}px)`),(m>=8+Math.floor(Math.random()*10)||Math.random()<.03)&&(O(),m=0),l=requestAnimationFrame(h)};l=requestAnimationFrame(h)}function _(){l&&(cancelAnimationFrame(l),l=null)}return De(()=>{e.loaded&&(_(),c=setTimeout(()=>r(!0),300))}),De(()=>{s&&(b(),N()),Ae(()=>{_(),c&&clearTimeout(c)})}),[(()=>{var h=Eo(),y=h.firstChild,g=y.firstChild,u=g.nextSibling,E=u.nextSibling,L=E.nextSibling,U=y.nextSibling,B=s;typeof B=="function"?he(B,h):s=h;var $=a;typeof $=="function"?he($,g):a=g;var F=n;typeof F=="function"?he(F,u):n=u;var I=i;typeof I=="function"?he(I,E):i=E;var q=f;return typeof q=="function"?he(q,L):f=L,K(V=>{var G=t()?0:1,pe=t()?"none":"auto",ve="/pwa-192.png",ze="/pwa-192.png",be="/pwa-192.png",ie="/pwa-192.png",Ve=t()?0:1;return G!==V.e&&Ee(h,"opacity",V.e=G),pe!==V.t&&Ee(h,"pointer-events",V.t=pe),ve!==V.a&&T(g,"src",V.a=ve),ze!==V.o&&T(u,"src",V.o=ze),be!==V.i&&T(E,"src",V.i=be),ie!==V.n&&T(L,"src",V.n=ie),Ve!==V.s&&Ee(U,"opacity",V.s=Ve),V},{e:void 0,t:void 0,a:void 0,o:void 0,i:void 0,n:void 0,s:void 0}),h})(),x(re,{get when(){return t()},get children(){return e.children}})]};var Ro=j('<div class="page-bg min-h-screen flex flex-col items-center justify-center p-4 relative overflow-hidden"><div class="fixed top-4 right-4 z-50"><button class=ks-theme-toggle><span class=ks-theme-toggle-track><span class="ks-theme-toggle-icon ks-theme-toggle-icon-moon"></span><span class="ks-theme-toggle-icon ks-theme-toggle-icon-sun"></span></span></button></div><div class="absolute inset-0 z-0 overflow-hidden pointer-events-none"><div class="absolute top-[-10%] left-[-10%] w-[40%] h-[40%] rounded-full bg-red-500/[0.03] blur-[120px]"></div><div class="absolute bottom-[-10%] right-[-10%] w-[40%] h-[40%] rounded-full bg-red-600/[0.03] blur-[120px]"></div></div><main class="relative z-10 w-full max-w-md"><div class="bg-[var(--ks-bg,#0a0a0a)] border border-[color-mix(in_srgb,var(--ks-border,#27272a)_60%,transparent)] p-8 md:p-10 relative ks-hud-clip-top-right-bottom-left text-center"style="box-shadow:0 25px 50px -12px rgba(0, 0, 0, 0.5)"><div class="absolute top-0 right-0 w-6 h-6 border-t-2 border-r-2 border-red-500/30 pointer-events-none"></div><div class="absolute bottom-0 left-0 w-6 h-6 border-b-2 border-l-2 border-red-500/30 pointer-events-none"></div><div class="w-14 h-14 rounded-full bg-red-500/10 border border-red-500/20 flex items-center justify-center mx-auto mb-5"></div><div class="inline-flex items-center justify-center mb-2"><img alt=Hilinga width=40 height=40 class="h-10 w-10 rounded"></div><h1 class="text-lg font-semibold text-[var(--ks-fg,#ffffff)] mb-2 mt-3">Account Deactivated</h1><p class="text-[var(--ks-fg-subtle,#71717a)] text-sm mb-6 leading-relaxed">Your account has been deactivated by an administrator. Contact your workspace admin to restore access.</p></div><div class="mt-6 text-center"><p class="text-[9px] text-[var(--ks-fg-subtle,#71717a)] uppercase tracking-[0.3em] leading-relaxed">Hilinga by Kahitsan Corp.'),To=j(`<div class="page-bg min-h-screen flex flex-col items-center justify-center p-4 relative overflow-hidden"><div class="fixed top-4 right-4 z-50"><button class=ks-theme-toggle><span class=ks-theme-toggle-track><span class="ks-theme-toggle-icon ks-theme-toggle-icon-moon"></span><span class="ks-theme-toggle-icon ks-theme-toggle-icon-sun"></span></span></button></div><div class="absolute inset-0 z-0 overflow-hidden pointer-events-none"><div class="absolute top-[-10%] left-[-10%] w-[40%] h-[40%] rounded-full bg-[color-mix(in_srgb,var(--ks-accent,#fbbf24)_3%,transparent)] blur-[120px]"></div><div class="absolute bottom-[-10%] right-[-10%] w-[40%] h-[40%] rounded-full bg-[color-mix(in_srgb,var(--ks-accent,#fbbf24)_3%,transparent)] blur-[120px]"></div></div><main class="relative z-10 w-full max-w-md"><div class="bg-[var(--ks-bg,#0a0a0a)] border border-[color-mix(in_srgb,var(--ks-border,#27272a)_60%,transparent)] p-8 md:p-10 relative ks-hud-clip-top-right-bottom-left text-center"style="box-shadow:0 25px 50px -12px rgba(0, 0, 0, 0.5)"><div class="absolute top-0 right-0 w-6 h-6 border-t-2 border-r-2 border-[color-mix(in_srgb,var(--ks-accent,#fbbf24)_30%,transparent)] pointer-events-none"></div><div class="absolute bottom-0 left-0 w-6 h-6 border-b-2 border-l-2 border-[color-mix(in_srgb,var(--ks-accent,#fbbf24)_30%,transparent)] pointer-events-none"></div><div class="w-14 h-14 rounded-full bg-[color-mix(in_srgb,var(--ks-accent,#fbbf24)_10%,transparent)] border border-[color-mix(in_srgb,var(--ks-accent,#fbbf24)_20%,transparent)] flex items-center justify-center mx-auto mb-5"></div><div class="inline-flex items-center justify-center mb-2"><img alt=Hilinga width=40 height=40 class="h-10 w-10 rounded"></div><h1 class="text-lg font-semibold text-[var(--ks-fg,#ffffff)] mb-2 mt-3">Welcome, <!>!</h1><p class="text-[var(--ks-fg-subtle,#71717a)] text-sm mb-6 leading-relaxed">Your account isn't part of any workspace yet. Ask an administrator to invite you, or contact support.</p><div class="text-[11px] text-[var(--ks-fg-subtle,#71717a)] uppercase tracking-widest mb-6"></div></div><div class="mt-6 text-center"><p class="text-[9px] text-[var(--ks-fg-subtle,#71717a)] uppercase tracking-[0.3em] leading-relaxed">Hilinga by Kahitsan Corp.`);function Wo(){const e=Ao();return()=>e()?.devMode===!0}const br=Le();function Ao(){const e=$e(br);if(!e)throw new Error("useMe must be used within AuthGuard");return e.data}async function Lo(){const e=await fetch("/api/me",{credentials:"include"});return e.ok?e.json():e.status===403&&(await e.json().catch(()=>({error:""}))).error==="Account is deactivated"?{workspaces:[],workspace:null,deactivated:!0}:null}function Yo(e){const[t]=Fe(async()=>(await ft.getSession()).data),[r,{mutate:s}]=Fe(()=>t(),async i=>!i||i==="ssr-pending"?null:Lo()),a=i=>{const f=r();f?.user&&s({...f,user:{...f.user,...i}})},n=(i,f)=>{const l=r();if(!l)return;const c=l.workspaces.map(m=>m.ws_id===i?{...m,ws_logo_url:f}:m),o=l.workspace?.ws_id===i?{...l.workspace,ws_logo_url:f}:l.workspace;s({...l,workspaces:c,workspace:o})};return x(Oo,{get loaded(){return!t.loading},get children(){return x(re,{get when(){return t()},get fallback(){return x(qt,{href:"/login"})},get children(){return x(re,{get when(){return!r.loading},get children(){return x(re,{get when(){return!r()?.deactivated},get fallback(){return x($o,{})},get children(){return x(re,{get when(){return(r()?.workspaces?.length??0)>0||r()?.user?.role==="superuser"},get fallback(){return x(Mo,{get user(){return r()?.user}})},get children(){return x(br.Provider,{value:{data:()=>r(),mutate:a,mutateWorkspaceLogo:n,mutateMeData:i=>s(i)},get children(){return x(Dn,{workspaces:()=>r()?.workspaces??[],get children(){return x(Vn,{get children(){return e.children}})}})}})}})}})}})}})}})}function $o(){const{theme:e,toggleTheme:t}=Jt(),r=async()=>{await ur()};return(()=>{var s=Ro(),a=s.firstChild,n=a.firstChild,i=n.firstChild,f=i.firstChild,l=f.nextSibling,c=a.nextSibling,o=c.nextSibling,m=o.firstChild,d=m.firstChild,v=d.nextSibling,b=v.nextSibling,w=b.nextSibling,O=w.firstChild,N=w.nextSibling;return N.nextSibling,Se(n,"click",t,!0),C(f,x(Zt,{size:12})),C(l,x(Kt,{size:12})),C(b,x(Jr,{size:24,class:"text-red-400"})),C(m,x(pr,{intent:"secondary",variant:"clip1",icon:Qt,onClick:r,class:"w-full py-2.5 text-xs uppercase tracking-wider",children:"Sign out"}),null),K(_=>{var h=`Switch to ${e()==="dark"?"light":"dark"} mode`,y=`Switch to ${e()==="dark"?"light":"dark"} mode`,g=e()==="light"?"":void 0,u="/pwa-192.png";return h!==_.e&&T(n,"aria-label",_.e=h),y!==_.t&&T(n,"title",_.t=y),g!==_.a&&T(i,"data-active",_.a=g),u!==_.o&&T(O,"src",_.o=u),_},{e:void 0,t:void 0,a:void 0,o:void 0}),s})()}function Mo(e){const{theme:t,toggleTheme:r}=Jt(),s=async()=>{await ur()};return(()=>{var a=To(),n=a.firstChild,i=n.firstChild,f=i.firstChild,l=f.firstChild,c=l.nextSibling,o=n.nextSibling,m=o.nextSibling,d=m.firstChild,v=d.firstChild,b=v.nextSibling,w=b.nextSibling,O=w.nextSibling,N=O.firstChild,_=O.nextSibling,h=_.firstChild,y=h.nextSibling;y.nextSibling;var g=_.nextSibling,u=g.nextSibling;return Se(i,"click",r,!0),C(l,x(Zt,{size:12})),C(c,x(Kt,{size:12})),C(w,x(qr,{size:24,class:"text-[var(--ks-accent,#fbbf24)]"})),C(_,()=>e.user?.name||"there",y),C(u,()=>e.user?.email),C(d,x(pr,{intent:"secondary",variant:"clip1",icon:Qt,onClick:s,class:"w-full py-2.5 text-xs uppercase tracking-wider",children:"Sign out"}),null),K(E=>{var L=`Switch to ${t()==="dark"?"light":"dark"} mode`,U=`Switch to ${t()==="dark"?"light":"dark"} mode`,B=t()==="light"?"":void 0,$="/pwa-192.png";return L!==E.e&&T(i,"aria-label",E.e=L),U!==E.t&&T(i,"title",E.t=U),B!==E.a&&T(f,"data-active",E.a=B),$!==E.o&&T(N,"src",E.o=$),E},{e:void 0,t:void 0,a:void 0,o:void 0}),a})()}function Fo(){const[e,{refetch:t}]=Fe(async()=>(await ft.getSession()).data);return{session:e,refetch:t}}D(["click"]);export{Yo as A,pr as B,Ho as F,se as I,Vo as P,Bo as S,Uo as T,Fo as a,Jt as b,Ao as c,hr as d,Io as e,Wo as f,Do as g,jo as h,sa as i,zo as j,No as p,ur as s,In as u,qn as x};