@airlock-hq/design-system 0.1.0 → 0.1.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 Airlock
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
package/dist/index.js CHANGED
@@ -1,50 +1,53 @@
1
- import { A as t, a as e, b as o, B as r, c as l, C as i, d as n, e as g, f as D, g as T, h as c, D as S, i as p, j as C, k as d, l as u, m as b, n as B, o as A, p as L, q as V, I as m, L as v, S as x, r as F, s as H, t as I, u as P, v as f, w, x as y, y as G, z as O, E as U, F as h, T as j, G as k, H as q, J as z, K as E, M as J, N as K, O as M, P as N, Q, R, U as W } from "./tooltip-D_CcZ2wZ.js";
1
+ import { A as t, a as e, b as o, B as l, c as r, C as i, d as n, e as g, f as c, g as D, h as T, D as S, i as d, j as p, k as C, l as b, m as u, n as B, o as L, p as V, q as A, I as F, L as P, O as m, P as v, R as w, S as x, r as G, s as H, t as I, u as O, v as f, w as y, x as R, y as U, z as h, E as j, F as k, T as q, G as z, H as E, J, K, M, N, Q, U as W, V as X, W as Y, X as Z } from "./tooltip-CZX9jfTP.js";
2
2
  export {
3
3
  t as Alert,
4
4
  e as AlertDescription,
5
5
  o as AlertTitle,
6
- r as Badge,
7
- l as Button,
6
+ l as Badge,
7
+ r as Button,
8
8
  i as Card,
9
9
  n as CardContent,
10
10
  g as CardDescription,
11
- D as CardFooter,
12
- T as CardHeader,
13
- c as CardTitle,
11
+ c as CardFooter,
12
+ D as CardHeader,
13
+ T as CardTitle,
14
14
  S as Dialog,
15
- p as DialogClose,
16
- C as DialogContent,
17
- d as DialogDescription,
18
- u as DialogFooter,
19
- b as DialogHeader,
15
+ d as DialogClose,
16
+ p as DialogContent,
17
+ C as DialogDescription,
18
+ b as DialogFooter,
19
+ u as DialogHeader,
20
20
  B as DialogOverlay,
21
- A as DialogPortal,
22
- L as DialogTitle,
23
- V as DialogTrigger,
24
- m as Input,
25
- v as Label,
21
+ L as DialogPortal,
22
+ V as DialogTitle,
23
+ A as DialogTrigger,
24
+ F as Input,
25
+ P as Label,
26
+ m as OrbitalLines,
27
+ v as ParticleField,
28
+ w as RadialGlow,
26
29
  x as Select,
27
- F as SelectContent,
30
+ G as SelectContent,
28
31
  H as SelectGroup,
29
32
  I as SelectItem,
30
- P as SelectLabel,
33
+ O as SelectLabel,
31
34
  f as SelectScrollDownButton,
32
- w as SelectScrollUpButton,
33
- y as SelectSeparator,
34
- G as SelectTrigger,
35
- O as SelectValue,
36
- U as Separator,
37
- h as StatusDot,
38
- j as Tabs,
39
- k as TabsContent,
40
- q as TabsList,
41
- z as TabsTrigger,
42
- E as Textarea,
43
- J as Tooltip,
44
- K as TooltipContent,
45
- M as TooltipProvider,
46
- N as TooltipTrigger,
47
- Q as badgeVariants,
48
- R as buttonVariants,
49
- W as statusDotVariants
35
+ y as SelectScrollUpButton,
36
+ R as SelectSeparator,
37
+ U as SelectTrigger,
38
+ h as SelectValue,
39
+ j as Separator,
40
+ k as StatusDot,
41
+ q as Tabs,
42
+ z as TabsContent,
43
+ E as TabsList,
44
+ J as TabsTrigger,
45
+ K as Textarea,
46
+ M as Tooltip,
47
+ N as TooltipContent,
48
+ Q as TooltipProvider,
49
+ W as TooltipTrigger,
50
+ X as badgeVariants,
51
+ Y as buttonVariants,
52
+ Z as statusDotVariants
50
53
  };
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Pure presentational atmospheric background components.
3
+ * Used for ambient visual effects (orbital lines, radial glow, particle field).
4
+ */
5
+ export declare function OrbitalLines(): import("react/jsx-runtime").JSX.Element;
6
+ export declare function RadialGlow(): import("react/jsx-runtime").JSX.Element;
7
+ export declare function ParticleField(): import("react/jsx-runtime").JSX.Element;
@@ -1,4 +1,5 @@
1
1
  export * from './alert';
2
+ export * from './atmosphere';
2
3
  export * from './badge';
3
4
  export * from './button';
4
5
  export * from './card';
package/dist/react.js CHANGED
@@ -1,50 +1,53 @@
1
- import { A as t, a as e, b as o, B as r, c as l, C as i, d as n, e as g, f as D, g as T, h as c, D as S, i as p, j as C, k as d, l as u, m as b, n as B, o as A, p as L, q as V, I as m, L as v, S as x, r as F, s as H, t as I, u as P, v as f, w, x as y, y as G, z as O, E as U, F as h, T as j, G as k, H as q, J as z, K as E, M as J, N as K, O as M, P as N, Q, R, U as W } from "./tooltip-D_CcZ2wZ.js";
1
+ import { A as t, a as e, b as o, B as l, c as r, C as i, d as n, e as g, f as c, g as D, h as T, D as S, i as d, j as p, k as C, l as b, m as u, n as B, o as L, p as V, q as A, I as F, L as P, O as m, P as v, R as w, S as x, r as G, s as H, t as I, u as O, v as f, w as y, x as R, y as U, z as h, E as j, F as k, T as q, G as z, H as E, J, K, M, N, Q, U as W, V as X, W as Y, X as Z } from "./tooltip-CZX9jfTP.js";
2
2
  export {
3
3
  t as Alert,
4
4
  e as AlertDescription,
5
5
  o as AlertTitle,
6
- r as Badge,
7
- l as Button,
6
+ l as Badge,
7
+ r as Button,
8
8
  i as Card,
9
9
  n as CardContent,
10
10
  g as CardDescription,
11
- D as CardFooter,
12
- T as CardHeader,
13
- c as CardTitle,
11
+ c as CardFooter,
12
+ D as CardHeader,
13
+ T as CardTitle,
14
14
  S as Dialog,
15
- p as DialogClose,
16
- C as DialogContent,
17
- d as DialogDescription,
18
- u as DialogFooter,
19
- b as DialogHeader,
15
+ d as DialogClose,
16
+ p as DialogContent,
17
+ C as DialogDescription,
18
+ b as DialogFooter,
19
+ u as DialogHeader,
20
20
  B as DialogOverlay,
21
- A as DialogPortal,
22
- L as DialogTitle,
23
- V as DialogTrigger,
24
- m as Input,
25
- v as Label,
21
+ L as DialogPortal,
22
+ V as DialogTitle,
23
+ A as DialogTrigger,
24
+ F as Input,
25
+ P as Label,
26
+ m as OrbitalLines,
27
+ v as ParticleField,
28
+ w as RadialGlow,
26
29
  x as Select,
27
- F as SelectContent,
30
+ G as SelectContent,
28
31
  H as SelectGroup,
29
32
  I as SelectItem,
30
- P as SelectLabel,
33
+ O as SelectLabel,
31
34
  f as SelectScrollDownButton,
32
- w as SelectScrollUpButton,
33
- y as SelectSeparator,
34
- G as SelectTrigger,
35
- O as SelectValue,
36
- U as Separator,
37
- h as StatusDot,
38
- j as Tabs,
39
- k as TabsContent,
40
- q as TabsList,
41
- z as TabsTrigger,
42
- E as Textarea,
43
- J as Tooltip,
44
- K as TooltipContent,
45
- M as TooltipProvider,
46
- N as TooltipTrigger,
47
- Q as badgeVariants,
48
- R as buttonVariants,
49
- W as statusDotVariants
35
+ y as SelectScrollUpButton,
36
+ R as SelectSeparator,
37
+ U as SelectTrigger,
38
+ h as SelectValue,
39
+ j as Separator,
40
+ k as StatusDot,
41
+ q as Tabs,
42
+ z as TabsContent,
43
+ E as TabsList,
44
+ J as TabsTrigger,
45
+ K as Textarea,
46
+ M as Tooltip,
47
+ N as TooltipContent,
48
+ Q as TooltipProvider,
49
+ W as TooltipTrigger,
50
+ X as badgeVariants,
51
+ Y as buttonVariants,
52
+ Z as statusDotVariants
50
53
  };
package/dist/tokens.css CHANGED
@@ -61,7 +61,7 @@
61
61
 
62
62
  /* Atmosphere (landing / decorative layers) */
63
63
  --atmosphere-orbit-line: 220 20% 90%;
64
- --atmosphere-glow-opacity: 0.08;
64
+ --atmosphere-glow-opacity: 0.12;
65
65
  --atmosphere-particle-opacity: 0.12;
66
66
 
67
67
  /* Log/terminal */
@@ -1,20 +1,20 @@
1
- import { jsx as r, jsxs as g } from "react/jsx-runtime";
1
+ import { jsx as r, jsxs as c, Fragment as w } from "react/jsx-runtime";
2
2
  import * as o from "react";
3
- import { cva as c } from "class-variance-authority";
4
- import { Slot as w } from "@radix-ui/react-slot";
3
+ import { cva as f } from "class-variance-authority";
4
+ import { Slot as N } from "@radix-ui/react-slot";
5
5
  import * as d from "@radix-ui/react-dialog";
6
- import { X as N, ChevronDown as m, ChevronUp as R, Check as C } from "lucide-react";
7
- import * as p from "@radix-ui/react-label";
6
+ import { X as R, ChevronDown as p, ChevronUp as C, Check as T } from "lucide-react";
7
+ import * as m from "@radix-ui/react-label";
8
8
  import * as i from "@radix-ui/react-select";
9
9
  import * as b from "@radix-ui/react-separator";
10
- import * as f from "@radix-ui/react-tabs";
11
- import * as u from "@radix-ui/react-tooltip";
12
- import { clsx as T } from "clsx";
10
+ import * as u from "@radix-ui/react-tabs";
11
+ import * as g from "@radix-ui/react-tooltip";
12
+ import { clsx as k } from "clsx";
13
13
  import { twMerge as D } from "tailwind-merge";
14
- function s(...e) {
15
- return D(T(e));
14
+ function s(...a) {
15
+ return D(k(a));
16
16
  }
17
- const S = c(
17
+ const S = f(
18
18
  "relative w-full rounded-lg border px-4 py-3 text-sm [&>svg+div]:translate-y-[-3px] [&>svg]:absolute [&>svg]:left-4 [&>svg]:top-4 [&>svg]:text-foreground [&>svg~*]:pl-7",
19
19
  {
20
20
  variants: {
@@ -29,17 +29,107 @@ const S = c(
29
29
  variant: "default"
30
30
  }
31
31
  }
32
- ), k = o.forwardRef(({ className: e, variant: a, ...t }, n) => /* @__PURE__ */ r("div", { ref: n, role: "alert", className: s(S({ variant: a }), e), ...t }));
33
- k.displayName = "Alert";
32
+ ), z = o.forwardRef(({ className: a, variant: e, ...t }, n) => /* @__PURE__ */ r("div", { ref: n, role: "alert", className: s(S({ variant: e }), a), ...t }));
33
+ z.displayName = "Alert";
34
34
  const V = o.forwardRef(
35
- ({ className: e, ...a }, t) => /* @__PURE__ */ r("h5", { ref: t, className: s("mb-1 leading-none font-medium tracking-tight", e), ...a })
35
+ ({ className: a, ...e }, t) => /* @__PURE__ */ r("h5", { ref: t, className: s("mb-1 leading-none font-medium tracking-tight", a), ...e })
36
36
  );
37
37
  V.displayName = "AlertTitle";
38
- const z = o.forwardRef(
39
- ({ className: e, ...a }, t) => /* @__PURE__ */ r("div", { ref: t, className: s("text-sm [&_p]:leading-relaxed", e), ...a })
38
+ const P = o.forwardRef(
39
+ ({ className: a, ...e }, t) => /* @__PURE__ */ r("div", { ref: t, className: s("text-sm [&_p]:leading-relaxed", a), ...e })
40
40
  );
41
- z.displayName = "AlertDescription";
42
- const P = c(
41
+ P.displayName = "AlertDescription";
42
+ function xe() {
43
+ return /* @__PURE__ */ c(
44
+ "svg",
45
+ {
46
+ className: "pointer-events-none absolute inset-0 h-full w-full",
47
+ xmlns: "http://www.w3.org/2000/svg",
48
+ preserveAspectRatio: "xMidYMid slice",
49
+ children: [
50
+ /* @__PURE__ */ r(
51
+ "ellipse",
52
+ {
53
+ cx: "85%",
54
+ cy: "15%",
55
+ rx: "600",
56
+ ry: "350",
57
+ fill: "none",
58
+ stroke: "hsl(var(--atmosphere-orbit-line))",
59
+ strokeWidth: "1",
60
+ transform: "rotate(-15, 800, 100)"
61
+ }
62
+ ),
63
+ /* @__PURE__ */ r(
64
+ "ellipse",
65
+ {
66
+ cx: "10%",
67
+ cy: "50%",
68
+ rx: "450",
69
+ ry: "280",
70
+ fill: "none",
71
+ stroke: "hsl(var(--atmosphere-orbit-line))",
72
+ strokeWidth: "0.75",
73
+ transform: "rotate(25, 100, 400)"
74
+ }
75
+ ),
76
+ /* @__PURE__ */ r(
77
+ "ellipse",
78
+ {
79
+ cx: "90%",
80
+ cy: "80%",
81
+ rx: "500",
82
+ ry: "300",
83
+ fill: "none",
84
+ stroke: "hsl(var(--atmosphere-orbit-line))",
85
+ strokeWidth: "0.75",
86
+ transform: "rotate(-30, 900, 600)"
87
+ }
88
+ )
89
+ ]
90
+ }
91
+ );
92
+ }
93
+ function ve() {
94
+ return /* @__PURE__ */ r(
95
+ "div",
96
+ {
97
+ className: "pointer-events-none absolute top-1/3 left-1/2 -translate-x-1/2 -translate-y-1/2",
98
+ style: {
99
+ width: "calc(70vw)",
100
+ height: "calc(70vw)",
101
+ borderRadius: "50%",
102
+ background: "radial-gradient(circle, hsl(var(--signal-glow) / var(--atmosphere-glow-opacity)) 0%, transparent 70%)"
103
+ }
104
+ }
105
+ );
106
+ }
107
+ function he() {
108
+ return /* @__PURE__ */ r(w, { children: [
109
+ { left: "20%", top: "35%", size: 2 },
110
+ { left: "45%", top: "55%", size: 1.5 },
111
+ { left: "70%", top: "25%", size: 2 },
112
+ { left: "30%", top: "65%", size: 1 },
113
+ { left: "60%", top: "45%", size: 1.5 },
114
+ { left: "80%", top: "60%", size: 1 },
115
+ { left: "55%", top: "30%", size: 2 },
116
+ { left: "75%", top: "70%", size: 1.5 }
117
+ ].map((e, t) => /* @__PURE__ */ r(
118
+ "div",
119
+ {
120
+ className: "bg-foreground pointer-events-none absolute rounded-full",
121
+ style: {
122
+ left: e.left,
123
+ top: e.top,
124
+ width: e.size,
125
+ height: e.size,
126
+ opacity: "var(--atmosphere-particle-opacity)"
127
+ }
128
+ },
129
+ t
130
+ )) });
131
+ }
132
+ const j = f(
43
133
  "inline-flex items-center rounded-full border px-2.5 py-0.5 text-xs font-semibold transition-colors focus:outline-hidden focus:ring-2 focus:ring-ring focus:ring-offset-2",
44
134
  {
45
135
  variants: {
@@ -59,10 +149,10 @@ const P = c(
59
149
  }
60
150
  }
61
151
  );
62
- function be({ className: e, variant: a, ...t }) {
63
- return /* @__PURE__ */ r("div", { className: s(P({ variant: a }), e), ...t });
152
+ function ye({ className: a, variant: e, ...t }) {
153
+ return /* @__PURE__ */ r("div", { className: s(j({ variant: e }), a), ...t });
64
154
  }
65
- const j = c(
155
+ const L = f(
66
156
  "inline-flex cursor-pointer items-center justify-center whitespace-nowrap rounded-md text-sm font-medium ring-offset-background transition-colors focus-visible:outline-hidden focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50",
67
157
  {
68
158
  variants: {
@@ -89,148 +179,148 @@ const j = c(
89
179
  }
90
180
  }
91
181
  ), B = o.forwardRef(
92
- ({ className: e, variant: a, size: t, asChild: n = !1, ...l }, y) => /* @__PURE__ */ r(n ? w : "button", { className: s(j({ variant: a, size: t, className: e })), ref: y, ...l })
182
+ ({ className: a, variant: e, size: t, asChild: n = !1, ...l }, y) => /* @__PURE__ */ r(n ? N : "button", { className: s(L({ variant: e, size: t, className: a })), ref: y, ...l })
93
183
  );
94
184
  B.displayName = "Button";
95
- const I = o.forwardRef(({ className: e, ...a }, t) => /* @__PURE__ */ r(
185
+ const I = o.forwardRef(({ className: a, ...e }, t) => /* @__PURE__ */ r(
96
186
  "div",
97
187
  {
98
188
  ref: t,
99
- className: s("border-border-subtle bg-surface text-foreground rounded-lg border shadow-xs", e),
100
- ...a
189
+ className: s("border-border-subtle bg-surface text-foreground rounded-lg border shadow-xs", a),
190
+ ...e
101
191
  }
102
192
  ));
103
193
  I.displayName = "Card";
104
- const L = o.forwardRef(
105
- ({ className: e, ...a }, t) => /* @__PURE__ */ r("div", { ref: t, className: s("flex flex-col space-y-1.5 p-6", e), ...a })
106
- );
107
- L.displayName = "CardHeader";
108
194
  const A = o.forwardRef(
109
- ({ className: e, ...a }, t) => /* @__PURE__ */ r("h3", { ref: t, className: s("text-2xl leading-none font-semibold tracking-tight", e), ...a })
195
+ ({ className: a, ...e }, t) => /* @__PURE__ */ r("div", { ref: t, className: s("flex flex-col space-y-1.5 p-6", a), ...e })
110
196
  );
111
- A.displayName = "CardTitle";
197
+ A.displayName = "CardHeader";
112
198
  const F = o.forwardRef(
113
- ({ className: e, ...a }, t) => /* @__PURE__ */ r("p", { ref: t, className: s("text-foreground-muted text-sm", e), ...a })
199
+ ({ className: a, ...e }, t) => /* @__PURE__ */ r("h3", { ref: t, className: s("text-2xl leading-none font-semibold tracking-tight", a), ...e })
114
200
  );
115
- F.displayName = "CardDescription";
201
+ F.displayName = "CardTitle";
116
202
  const H = o.forwardRef(
117
- ({ className: e, ...a }, t) => /* @__PURE__ */ r("div", { ref: t, className: s("p-6 pt-0", e), ...a })
203
+ ({ className: a, ...e }, t) => /* @__PURE__ */ r("p", { ref: t, className: s("text-foreground-muted text-sm", a), ...e })
204
+ );
205
+ H.displayName = "CardDescription";
206
+ const O = o.forwardRef(
207
+ ({ className: a, ...e }, t) => /* @__PURE__ */ r("div", { ref: t, className: s("p-6 pt-0", a), ...e })
118
208
  );
119
- H.displayName = "CardContent";
209
+ O.displayName = "CardContent";
120
210
  const U = o.forwardRef(
121
- ({ className: e, ...a }, t) => /* @__PURE__ */ r("div", { ref: t, className: s("flex items-center p-6 pt-0", e), ...a })
211
+ ({ className: a, ...e }, t) => /* @__PURE__ */ r("div", { ref: t, className: s("flex items-center p-6 pt-0", a), ...e })
122
212
  );
123
213
  U.displayName = "CardFooter";
124
- const xe = d.Root, ve = d.Trigger, O = d.Portal, he = d.Close, x = o.forwardRef(({ className: e, ...a }, t) => /* @__PURE__ */ r(
214
+ const we = d.Root, Ne = d.Trigger, G = d.Portal, Re = d.Close, x = o.forwardRef(({ className: a, ...e }, t) => /* @__PURE__ */ r(
125
215
  d.Overlay,
126
216
  {
127
217
  ref: t,
128
218
  className: s(
129
219
  "bg-foreground/25 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50",
130
- e
220
+ a
131
221
  ),
132
- ...a
222
+ ...e
133
223
  }
134
224
  ));
135
225
  x.displayName = d.Overlay.displayName;
136
- const _ = o.forwardRef(({ className: e, children: a, ...t }, n) => /* @__PURE__ */ g(O, { children: [
226
+ const M = o.forwardRef(({ className: a, children: e, ...t }, n) => /* @__PURE__ */ c(G, { children: [
137
227
  /* @__PURE__ */ r(x, {}),
138
- /* @__PURE__ */ g(
228
+ /* @__PURE__ */ c(
139
229
  d.Content,
140
230
  {
141
231
  ref: n,
142
232
  className: s(
143
233
  "border-border-subtle bg-background data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed top-[50%] left-[50%] z-50 grid w-full max-w-lg translate-x-[-50%] translate-y-[-50%] gap-4 rounded-lg border p-6 shadow-lg duration-200",
144
- e
234
+ a
145
235
  ),
146
236
  ...t,
147
237
  children: [
148
- a,
149
- /* @__PURE__ */ g(d.Close, { className: "ring-offset-background focus:ring-ring data-[state=open]:bg-surface-elevated data-[state=open]:text-foreground-muted absolute top-4 right-4 rounded-xs opacity-70 transition-opacity hover:opacity-100 focus:ring-2 focus:ring-offset-2 focus:outline-hidden disabled:pointer-events-none", children: [
150
- /* @__PURE__ */ r(N, { className: "h-4 w-4" }),
238
+ e,
239
+ /* @__PURE__ */ c(d.Close, { className: "ring-offset-background focus:ring-ring data-[state=open]:bg-surface-elevated data-[state=open]:text-foreground-muted absolute top-4 right-4 rounded-xs opacity-70 transition-opacity hover:opacity-100 focus:ring-2 focus:ring-offset-2 focus:outline-hidden disabled:pointer-events-none", children: [
240
+ /* @__PURE__ */ r(R, { className: "h-4 w-4" }),
151
241
  /* @__PURE__ */ r("span", { className: "sr-only", children: "Close" })
152
242
  ] })
153
243
  ]
154
244
  }
155
245
  )
156
246
  ] }));
157
- _.displayName = d.Content.displayName;
158
- const G = ({ className: e, ...a }) => /* @__PURE__ */ r("div", { className: s("flex flex-col space-y-1.5 text-center sm:text-left", e), ...a });
159
- G.displayName = "DialogHeader";
160
- const M = ({ className: e, ...a }) => /* @__PURE__ */ r("div", { className: s("flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2", e), ...a });
161
- M.displayName = "DialogFooter";
162
- const q = o.forwardRef(({ className: e, ...a }, t) => /* @__PURE__ */ r(
247
+ M.displayName = d.Content.displayName;
248
+ const W = ({ className: a, ...e }) => /* @__PURE__ */ r("div", { className: s("flex flex-col space-y-1.5 text-center sm:text-left", a), ...e });
249
+ W.displayName = "DialogHeader";
250
+ const _ = ({ className: a, ...e }) => /* @__PURE__ */ r("div", { className: s("flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2", a), ...e });
251
+ _.displayName = "DialogFooter";
252
+ const X = o.forwardRef(({ className: a, ...e }, t) => /* @__PURE__ */ r(
163
253
  d.Title,
164
254
  {
165
255
  ref: t,
166
- className: s("text-lg leading-none font-semibold tracking-tight", e),
167
- ...a
256
+ className: s("text-lg leading-none font-semibold tracking-tight", a),
257
+ ...e
168
258
  }
169
259
  ));
170
- q.displayName = d.Title.displayName;
171
- const E = o.forwardRef(({ className: e, ...a }, t) => /* @__PURE__ */ r(d.Description, { ref: t, className: s("text-foreground-muted text-sm", e), ...a }));
172
- E.displayName = d.Description.displayName;
173
- const J = o.forwardRef(
174
- ({ className: e, type: a, ...t }, n) => /* @__PURE__ */ r(
260
+ X.displayName = d.Title.displayName;
261
+ const q = o.forwardRef(({ className: a, ...e }, t) => /* @__PURE__ */ r(d.Description, { ref: t, className: s("text-foreground-muted text-sm", a), ...e }));
262
+ q.displayName = d.Description.displayName;
263
+ const E = o.forwardRef(
264
+ ({ className: a, type: e, ...t }, n) => /* @__PURE__ */ r(
175
265
  "input",
176
266
  {
177
- type: a,
267
+ type: e,
178
268
  className: s(
179
269
  "border-border-subtle bg-background file:text-foreground placeholder:text-foreground-muted focus-visible:ring-ring flex h-9 w-full rounded-md border px-3 py-1 text-base shadow-xs transition-colors file:border-0 file:bg-transparent file:text-sm file:font-medium focus-visible:ring-1 focus-visible:outline-hidden disabled:cursor-not-allowed disabled:opacity-50 md:text-sm",
180
- e
270
+ a
181
271
  ),
182
272
  ref: n,
183
273
  ...t
184
274
  }
185
275
  )
186
276
  );
187
- J.displayName = "Input";
188
- const K = c("text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70"), Q = o.forwardRef(({ className: e, ...a }, t) => /* @__PURE__ */ r(p.Root, { ref: t, className: s(K(), e), ...a }));
189
- Q.displayName = p.Root.displayName;
190
- const ye = i.Root, we = i.Group, Ne = i.Value, X = o.forwardRef(({ className: e, children: a, ...t }, n) => /* @__PURE__ */ g(
277
+ E.displayName = "Input";
278
+ const J = f("text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70"), K = o.forwardRef(({ className: a, ...e }, t) => /* @__PURE__ */ r(m.Root, { ref: t, className: s(J(), a), ...e }));
279
+ K.displayName = m.Root.displayName;
280
+ const Ce = i.Root, Te = i.Group, ke = i.Value, Q = o.forwardRef(({ className: a, children: e, ...t }, n) => /* @__PURE__ */ c(
191
281
  i.Trigger,
192
282
  {
193
283
  ref: n,
194
284
  className: s(
195
285
  "border-border-subtle bg-background ring-offset-background focus:ring-ring data-[placeholder]:text-foreground-muted flex h-9 w-full items-center justify-between rounded-md border px-3 py-2 text-sm whitespace-nowrap shadow-xs focus:ring-1 focus:outline-hidden disabled:cursor-not-allowed disabled:opacity-50 [&>span]:line-clamp-1",
196
- e
286
+ a
197
287
  ),
198
288
  ...t,
199
289
  children: [
200
- a,
201
- /* @__PURE__ */ r(i.Icon, { asChild: !0, children: /* @__PURE__ */ r(m, { className: "h-4 w-4 opacity-50" }) })
290
+ e,
291
+ /* @__PURE__ */ r(i.Icon, { asChild: !0, children: /* @__PURE__ */ r(p, { className: "h-4 w-4 opacity-50" }) })
202
292
  ]
203
293
  }
204
294
  ));
205
- X.displayName = i.Trigger.displayName;
206
- const v = o.forwardRef(({ className: e, ...a }, t) => /* @__PURE__ */ r(
295
+ Q.displayName = i.Trigger.displayName;
296
+ const v = o.forwardRef(({ className: a, ...e }, t) => /* @__PURE__ */ r(
207
297
  i.ScrollUpButton,
208
298
  {
209
299
  ref: t,
210
- className: s("flex cursor-default items-center justify-center py-1", e),
211
- ...a,
212
- children: /* @__PURE__ */ r(R, { className: "h-4 w-4" })
300
+ className: s("flex cursor-default items-center justify-center py-1", a),
301
+ ...e,
302
+ children: /* @__PURE__ */ r(C, { className: "h-4 w-4" })
213
303
  }
214
304
  ));
215
305
  v.displayName = i.ScrollUpButton.displayName;
216
- const h = o.forwardRef(({ className: e, ...a }, t) => /* @__PURE__ */ r(
306
+ const h = o.forwardRef(({ className: a, ...e }, t) => /* @__PURE__ */ r(
217
307
  i.ScrollDownButton,
218
308
  {
219
309
  ref: t,
220
- className: s("flex cursor-default items-center justify-center py-1", e),
221
- ...a,
222
- children: /* @__PURE__ */ r(m, { className: "h-4 w-4" })
310
+ className: s("flex cursor-default items-center justify-center py-1", a),
311
+ ...e,
312
+ children: /* @__PURE__ */ r(p, { className: "h-4 w-4" })
223
313
  }
224
314
  ));
225
315
  h.displayName = i.ScrollDownButton.displayName;
226
- const W = o.forwardRef(({ className: e, children: a, position: t = "popper", ...n }, l) => /* @__PURE__ */ r(i.Portal, { children: /* @__PURE__ */ g(
316
+ const Y = o.forwardRef(({ className: a, children: e, position: t = "popper", ...n }, l) => /* @__PURE__ */ r(i.Portal, { children: /* @__PURE__ */ c(
227
317
  i.Content,
228
318
  {
229
319
  ref: l,
230
320
  className: s(
231
321
  "border-border-subtle bg-surface-elevated text-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 relative z-50 max-h-[--radix-select-content-available-height] min-w-[8rem] origin-[--radix-select-content-transform-origin] overflow-x-hidden overflow-y-auto rounded-md border shadow-md",
232
322
  t === "popper" && "data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1",
233
- e
323
+ a
234
324
  ),
235
325
  position: t,
236
326
  ...n,
@@ -243,46 +333,46 @@ const W = o.forwardRef(({ className: e, children: a, position: t = "popper", ...
243
333
  "p-1",
244
334
  t === "popper" && "h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)]"
245
335
  ),
246
- children: a
336
+ children: e
247
337
  }
248
338
  ),
249
339
  /* @__PURE__ */ r(h, {})
250
340
  ]
251
341
  }
252
342
  ) }));
253
- W.displayName = i.Content.displayName;
254
- const Y = o.forwardRef(({ className: e, ...a }, t) => /* @__PURE__ */ r(i.Label, { ref: t, className: s("px-2 py-1.5 text-sm font-semibold", e), ...a }));
255
- Y.displayName = i.Label.displayName;
256
- const Z = o.forwardRef(({ className: e, children: a, ...t }, n) => /* @__PURE__ */ g(
343
+ Y.displayName = i.Content.displayName;
344
+ const Z = o.forwardRef(({ className: a, ...e }, t) => /* @__PURE__ */ r(i.Label, { ref: t, className: s("px-2 py-1.5 text-sm font-semibold", a), ...e }));
345
+ Z.displayName = i.Label.displayName;
346
+ const $ = o.forwardRef(({ className: a, children: e, ...t }, n) => /* @__PURE__ */ c(
257
347
  i.Item,
258
348
  {
259
349
  ref: n,
260
350
  className: s(
261
351
  "focus:bg-surface focus:text-foreground relative flex w-full cursor-default items-center rounded-xs py-1.5 pr-8 pl-2 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50",
262
- e
352
+ a
263
353
  ),
264
354
  ...t,
265
355
  children: [
266
- /* @__PURE__ */ r("span", { className: "absolute right-2 flex h-3.5 w-3.5 items-center justify-center", children: /* @__PURE__ */ r(i.ItemIndicator, { children: /* @__PURE__ */ r(C, { className: "h-4 w-4" }) }) }),
267
- /* @__PURE__ */ r(i.ItemText, { children: a })
356
+ /* @__PURE__ */ r("span", { className: "absolute right-2 flex h-3.5 w-3.5 items-center justify-center", children: /* @__PURE__ */ r(i.ItemIndicator, { children: /* @__PURE__ */ r(T, { className: "h-4 w-4" }) }) }),
357
+ /* @__PURE__ */ r(i.ItemText, { children: e })
268
358
  ]
269
359
  }
270
360
  ));
271
- Z.displayName = i.Item.displayName;
272
- const $ = o.forwardRef(({ className: e, ...a }, t) => /* @__PURE__ */ r(i.Separator, { ref: t, className: s("bg-border-subtle -mx-1 my-1 h-px", e), ...a }));
273
- $.displayName = i.Separator.displayName;
274
- const ee = o.forwardRef(({ className: e, orientation: a = "horizontal", decorative: t = !0, ...n }, l) => /* @__PURE__ */ r(
361
+ $.displayName = i.Item.displayName;
362
+ const ee = o.forwardRef(({ className: a, ...e }, t) => /* @__PURE__ */ r(i.Separator, { ref: t, className: s("bg-border-subtle -mx-1 my-1 h-px", a), ...e }));
363
+ ee.displayName = i.Separator.displayName;
364
+ const ae = o.forwardRef(({ className: a, orientation: e = "horizontal", decorative: t = !0, ...n }, l) => /* @__PURE__ */ r(
275
365
  b.Root,
276
366
  {
277
367
  ref: l,
278
368
  decorative: t,
279
- orientation: a,
280
- className: s("bg-border shrink-0", a === "horizontal" ? "h-[1px] w-full" : "h-full w-[1px]", e),
369
+ orientation: e,
370
+ className: s("bg-border shrink-0", e === "horizontal" ? "h-[1px] w-full" : "h-full w-[1px]", a),
281
371
  ...n
282
372
  }
283
373
  ));
284
- ee.displayName = b.Root.displayName;
285
- const ae = c("shrink-0 rounded-full", {
374
+ ae.displayName = b.Root.displayName;
375
+ const te = f("shrink-0 rounded-full", {
286
376
  variants: {
287
377
  variant: {
288
378
  success: "bg-success",
@@ -306,10 +396,10 @@ const ae = c("shrink-0 rounded-full", {
306
396
  pulse: !1
307
397
  }
308
398
  });
309
- function Re({ className: e, variant: a, size: t, pulse: n, ...l }) {
310
- return /* @__PURE__ */ r("div", { className: s(ae({ variant: a, size: t, pulse: n }), e), ...l });
399
+ function De({ className: a, variant: e, size: t, pulse: n, ...l }) {
400
+ return /* @__PURE__ */ r("div", { className: s(te({ variant: e, size: t, pulse: n }), a), ...l });
311
401
  }
312
- const Ce = f.Root, te = c("inline-flex items-center justify-center", {
402
+ const Se = u.Root, re = f("inline-flex items-center justify-center", {
313
403
  variants: {
314
404
  variant: {
315
405
  default: "h-9 rounded-lg bg-surface p-1 text-foreground-muted",
@@ -319,9 +409,9 @@ const Ce = f.Root, te = c("inline-flex items-center justify-center", {
319
409
  defaultVariants: {
320
410
  variant: "default"
321
411
  }
322
- }), re = o.forwardRef(({ className: e, variant: a, ...t }, n) => /* @__PURE__ */ r(f.List, { ref: n, className: s(te({ variant: a }), e), ...t }));
323
- re.displayName = f.List.displayName;
324
- const se = c(
412
+ }), se = o.forwardRef(({ className: a, variant: e, ...t }, n) => /* @__PURE__ */ r(u.List, { ref: n, className: s(re({ variant: e }), a), ...t }));
413
+ se.displayName = u.List.displayName;
414
+ const oe = f(
325
415
  "inline-flex cursor-pointer items-center justify-center whitespace-nowrap text-sm font-medium ring-offset-background transition-all focus-visible:outline-hidden focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50",
326
416
  {
327
417
  variants: {
@@ -334,93 +424,96 @@ const se = c(
334
424
  variant: "default"
335
425
  }
336
426
  }
337
- ), oe = o.forwardRef(({ className: e, variant: a, ...t }, n) => /* @__PURE__ */ r(f.Trigger, { ref: n, className: s(se({ variant: a }), e), ...t }));
338
- oe.displayName = f.Trigger.displayName;
339
- const ne = o.forwardRef(({ className: e, ...a }, t) => /* @__PURE__ */ r(
340
- f.Content,
427
+ ), ne = o.forwardRef(({ className: a, variant: e, ...t }, n) => /* @__PURE__ */ r(u.Trigger, { ref: n, className: s(oe({ variant: e }), a), ...t }));
428
+ ne.displayName = u.Trigger.displayName;
429
+ const ie = o.forwardRef(({ className: a, ...e }, t) => /* @__PURE__ */ r(
430
+ u.Content,
341
431
  {
342
432
  ref: t,
343
433
  className: s(
344
434
  "ring-offset-background focus-visible:ring-ring mt-2 focus-visible:ring-2 focus-visible:ring-offset-2 focus-visible:outline-hidden",
345
- e
435
+ a
346
436
  ),
347
- ...a
437
+ ...e
348
438
  }
349
439
  ));
350
- ne.displayName = f.Content.displayName;
351
- const ie = o.forwardRef(
352
- ({ className: e, ...a }, t) => /* @__PURE__ */ r(
440
+ ie.displayName = u.Content.displayName;
441
+ const de = o.forwardRef(
442
+ ({ className: a, ...e }, t) => /* @__PURE__ */ r(
353
443
  "textarea",
354
444
  {
355
445
  className: s(
356
446
  "border-border-subtle bg-background placeholder:text-foreground-muted focus-visible:ring-ring flex min-h-[60px] w-full rounded-md border px-3 py-2 text-base shadow-xs focus-visible:ring-1 focus-visible:outline-hidden disabled:cursor-not-allowed disabled:opacity-50 md:text-sm",
357
- e
447
+ a
358
448
  ),
359
449
  ref: t,
360
- ...a
450
+ ...e
361
451
  }
362
452
  )
363
453
  );
364
- ie.displayName = "Textarea";
365
- const Te = u.Provider, De = u.Root, Se = u.Trigger, de = o.forwardRef(({ className: e, sideOffset: a = 4, ...t }, n) => /* @__PURE__ */ r(u.Portal, { children: /* @__PURE__ */ r(
366
- u.Content,
454
+ de.displayName = "Textarea";
455
+ const ze = g.Provider, Ve = g.Root, Pe = g.Trigger, le = o.forwardRef(({ className: a, sideOffset: e = 4, ...t }, n) => /* @__PURE__ */ r(g.Portal, { children: /* @__PURE__ */ r(
456
+ g.Content,
367
457
  {
368
458
  ref: n,
369
- sideOffset: a,
459
+ sideOffset: e,
370
460
  className: s(
371
461
  "bg-foreground text-background animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 z-50 origin-[--radix-tooltip-content-transform-origin] overflow-hidden rounded-md px-3 py-1.5 text-xs",
372
- e
462
+ a
373
463
  ),
374
464
  ...t
375
465
  }
376
466
  ) }));
377
- de.displayName = u.Content.displayName;
467
+ le.displayName = g.Content.displayName;
378
468
  export {
379
- k as A,
380
- be as B,
469
+ z as A,
470
+ ye as B,
381
471
  I as C,
382
- xe as D,
383
- ee as E,
384
- Re as F,
385
- ne as G,
386
- re as H,
387
- J as I,
388
- oe as J,
389
- ie as K,
390
- Q as L,
391
- De as M,
392
- de as N,
393
- Te as O,
394
- Se as P,
395
- P as Q,
396
- j as R,
397
- ye as S,
398
- Ce as T,
399
- ae as U,
400
- z as a,
472
+ we as D,
473
+ ae as E,
474
+ De as F,
475
+ ie as G,
476
+ se as H,
477
+ E as I,
478
+ ne as J,
479
+ de as K,
480
+ K as L,
481
+ Ve as M,
482
+ le as N,
483
+ xe as O,
484
+ he as P,
485
+ ze as Q,
486
+ ve as R,
487
+ Ce as S,
488
+ Se as T,
489
+ Pe as U,
490
+ j as V,
491
+ L as W,
492
+ te as X,
493
+ P as a,
401
494
  V as b,
402
495
  B as c,
403
- H as d,
404
- F as e,
496
+ O as d,
497
+ H as e,
405
498
  U as f,
406
- L as g,
407
- A as h,
408
- he as i,
409
- _ as j,
410
- E as k,
411
- M as l,
412
- G as m,
499
+ A as g,
500
+ F as h,
501
+ Re as i,
502
+ M as j,
503
+ q as k,
504
+ _ as l,
505
+ W as m,
413
506
  x as n,
414
- O as o,
415
- q as p,
416
- ve as q,
417
- W as r,
418
- we as s,
419
- Z as t,
420
- Y as u,
507
+ G as o,
508
+ X as p,
509
+ Ne as q,
510
+ Y as r,
511
+ Te as s,
512
+ $ as t,
513
+ Z as u,
421
514
  h as v,
422
515
  v as w,
423
- $ as x,
424
- X as y,
425
- Ne as z
516
+ ee as x,
517
+ Q as y,
518
+ ke as z
426
519
  };
package/package.json CHANGED
@@ -1,9 +1,16 @@
1
1
  {
2
2
  "name": "@airlock-hq/design-system",
3
- "version": "0.1.0",
3
+ "version": "0.1.3",
4
4
  "type": "module",
5
+ "packageManager": "npm",
6
+ "engines": {
7
+ "node": ">=24",
8
+ "npm": ">=11"
9
+ },
10
+ "license": "MIT",
5
11
  "files": [
6
- "dist"
12
+ "dist",
13
+ "LICENSE"
7
14
  ],
8
15
  "main": "./dist/index.js",
9
16
  "module": "./dist/index.js",