@ninoop/tng-design-system 0.1.0 → 0.2.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.
package/dist/index.js CHANGED
@@ -1,148 +1,149 @@
1
- import ee from "react";
2
- var p = { exports: {} }, d = {};
3
- var $;
4
- function re() {
5
- if ($) return d;
6
- $ = 1;
7
- var u = /* @__PURE__ */ Symbol.for("react.transitional.element"), i = /* @__PURE__ */ Symbol.for("react.fragment");
8
- function l(c, o, s) {
1
+ import * as i from "react";
2
+ import ge from "react";
3
+ var D = { exports: {} }, A = {};
4
+ var ae;
5
+ function be() {
6
+ if (ae) return A;
7
+ ae = 1;
8
+ var t = /* @__PURE__ */ Symbol.for("react.transitional.element"), r = /* @__PURE__ */ Symbol.for("react.fragment");
9
+ function n(o, a, c) {
9
10
  var _ = null;
10
- if (s !== void 0 && (_ = "" + s), o.key !== void 0 && (_ = "" + o.key), "key" in o) {
11
- s = {};
12
- for (var m in o)
13
- m !== "key" && (s[m] = o[m]);
14
- } else s = o;
15
- return o = s.ref, {
16
- $$typeof: u,
17
- type: c,
11
+ if (c !== void 0 && (_ = "" + c), a.key !== void 0 && (_ = "" + a.key), "key" in a) {
12
+ c = {};
13
+ for (var u in a)
14
+ u !== "key" && (c[u] = a[u]);
15
+ } else c = a;
16
+ return a = c.ref, {
17
+ $$typeof: t,
18
+ type: o,
18
19
  key: _,
19
- ref: o !== void 0 ? o : null,
20
- props: s
20
+ ref: a !== void 0 ? a : null,
21
+ props: c
21
22
  };
22
23
  }
23
- return d.Fragment = i, d.jsx = l, d.jsxs = l, d;
24
+ return A.Fragment = r, A.jsx = n, A.jsxs = n, A;
24
25
  }
25
- var E = {};
26
- var I;
27
- function te() {
28
- return I || (I = 1, process.env.NODE_ENV !== "production" && (function() {
29
- function u(e) {
26
+ var P = {};
27
+ var le;
28
+ function ve() {
29
+ return le || (le = 1, process.env.NODE_ENV !== "production" && (function() {
30
+ function t(e) {
30
31
  if (e == null) return null;
31
32
  if (typeof e == "function")
32
- return e.$$typeof === Z ? null : e.displayName || e.name || null;
33
+ return e.$$typeof === me ? null : e.displayName || e.name || null;
33
34
  if (typeof e == "string") return e;
34
35
  switch (e) {
35
- case v:
36
+ case k:
36
37
  return "Fragment";
37
- case q:
38
+ case O:
38
39
  return "Profiler";
39
- case U:
40
+ case R:
40
41
  return "StrictMode";
41
- case G:
42
+ case m:
42
43
  return "Suspense";
43
- case X:
44
+ case W:
44
45
  return "SuspenseList";
45
- case H:
46
+ case de:
46
47
  return "Activity";
47
48
  }
48
49
  if (typeof e == "object")
49
50
  switch (typeof e.tag == "number" && console.error(
50
51
  "Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."
51
52
  ), e.$$typeof) {
52
- case W:
53
+ case q:
53
54
  return "Portal";
54
- case V:
55
+ case Y:
55
56
  return e.displayName || "Context";
56
- case J:
57
+ case M:
57
58
  return (e._context.displayName || "Context") + ".Consumer";
58
- case z:
59
- var r = e.render;
60
- return e = e.displayName, e || (e = r.displayName || r.name || "", e = e !== "" ? "ForwardRef(" + e + ")" : "ForwardRef"), e;
61
- case B:
62
- return r = e.displayName || null, r !== null ? r : u(e.type) || "Memo";
63
- case T:
64
- r = e._payload, e = e._init;
59
+ case F:
60
+ var l = e.render;
61
+ return e = e.displayName, e || (e = l.displayName || l.name || "", e = e !== "" ? "ForwardRef(" + e + ")" : "ForwardRef"), e;
62
+ case ue:
63
+ return l = e.displayName || null, l !== null ? l : t(e.type) || "Memo";
64
+ case U:
65
+ l = e._payload, e = e._init;
65
66
  try {
66
- return u(e(r));
67
+ return t(e(l));
67
68
  } catch {
68
69
  }
69
70
  }
70
71
  return null;
71
72
  }
72
- function i(e) {
73
+ function r(e) {
73
74
  return "" + e;
74
75
  }
75
- function l(e) {
76
+ function n(e) {
76
77
  try {
77
- i(e);
78
- var r = !1;
78
+ r(e);
79
+ var l = !1;
79
80
  } catch {
80
- r = !0;
81
+ l = !0;
81
82
  }
82
- if (r) {
83
- r = console;
84
- var t = r.error, n = typeof Symbol == "function" && Symbol.toStringTag && e[Symbol.toStringTag] || e.constructor.name || "Object";
85
- return t.call(
86
- r,
83
+ if (l) {
84
+ l = console;
85
+ var d = l.error, f = typeof Symbol == "function" && Symbol.toStringTag && e[Symbol.toStringTag] || e.constructor.name || "Object";
86
+ return d.call(
87
+ l,
87
88
  "The provided key is an unsupported type %s. This value must be coerced to a string before using it here.",
88
- n
89
- ), i(e);
89
+ f
90
+ ), r(e);
90
91
  }
91
92
  }
92
- function c(e) {
93
- if (e === v) return "<>";
94
- if (typeof e == "object" && e !== null && e.$$typeof === T)
93
+ function o(e) {
94
+ if (e === k) return "<>";
95
+ if (typeof e == "object" && e !== null && e.$$typeof === U)
95
96
  return "<...>";
96
97
  try {
97
- var r = u(e);
98
- return r ? "<" + r + ">" : "<...>";
98
+ var l = t(e);
99
+ return l ? "<" + l + ">" : "<...>";
99
100
  } catch {
100
101
  return "<...>";
101
102
  }
102
103
  }
103
- function o() {
104
- var e = k.A;
104
+ function a() {
105
+ var e = G.A;
105
106
  return e === null ? null : e.getOwner();
106
107
  }
107
- function s() {
108
+ function c() {
108
109
  return Error("react-stack-top-frame");
109
110
  }
110
111
  function _(e) {
111
- if (w.call(e, "key")) {
112
- var r = Object.getOwnPropertyDescriptor(e, "key").get;
113
- if (r && r.isReactWarning) return !1;
112
+ if (ee.call(e, "key")) {
113
+ var l = Object.getOwnPropertyDescriptor(e, "key").get;
114
+ if (l && l.isReactWarning) return !1;
114
115
  }
115
116
  return e.key !== void 0;
116
117
  }
117
- function m(e, r) {
118
- function t() {
119
- x || (x = !0, console.error(
118
+ function u(e, l) {
119
+ function d() {
120
+ te || (te = !0, console.error(
120
121
  "%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://react.dev/link/special-props)",
121
- r
122
+ l
122
123
  ));
123
124
  }
124
- t.isReactWarning = !0, Object.defineProperty(e, "key", {
125
- get: t,
125
+ d.isReactWarning = !0, Object.defineProperty(e, "key", {
126
+ get: d,
126
127
  configurable: !0
127
128
  });
128
129
  }
129
- function L() {
130
- var e = u(this.type);
131
- return h[e] || (h[e] = !0, console.error(
130
+ function g() {
131
+ var e = t(this.type);
132
+ return re[e] || (re[e] = !0, console.error(
132
133
  "Accessing element.ref was removed in React 19. ref is now a regular prop. It will be removed from the JSX Element type in a future release."
133
134
  )), e = this.props.ref, e !== void 0 ? e : null;
134
135
  }
135
- function M(e, r, t, n, R, O) {
136
- var a = t.ref;
136
+ function b(e, l, d, f, z, H) {
137
+ var p = d.ref;
137
138
  return e = {
138
- $$typeof: j,
139
+ $$typeof: L,
139
140
  type: e,
140
- key: r,
141
- props: t,
142
- _owner: n
143
- }, (a !== void 0 ? a : null) !== null ? Object.defineProperty(e, "ref", {
141
+ key: l,
142
+ props: d,
143
+ _owner: f
144
+ }, (p !== void 0 ? p : null) !== null ? Object.defineProperty(e, "ref", {
144
145
  enumerable: !1,
145
- get: L
146
+ get: g
146
147
  }) : Object.defineProperty(e, "ref", { enumerable: !1, value: null }), e._store = {}, Object.defineProperty(e._store, "validated", {
147
148
  configurable: !1,
148
149
  enumerable: !1,
@@ -157,117 +158,587 @@ function te() {
157
158
  configurable: !1,
158
159
  enumerable: !1,
159
160
  writable: !0,
160
- value: R
161
+ value: z
161
162
  }), Object.defineProperty(e, "_debugTask", {
162
163
  configurable: !1,
163
164
  enumerable: !1,
164
165
  writable: !0,
165
- value: O
166
+ value: H
166
167
  }), Object.freeze && (Object.freeze(e.props), Object.freeze(e)), e;
167
168
  }
168
- function S(e, r, t, n, R, O) {
169
- var a = r.children;
170
- if (a !== void 0)
171
- if (n)
172
- if (Q(a)) {
173
- for (n = 0; n < a.length; n++)
174
- P(a[n]);
175
- Object.freeze && Object.freeze(a);
169
+ function y(e, l, d, f, z, H) {
170
+ var p = l.children;
171
+ if (p !== void 0)
172
+ if (f)
173
+ if (fe(p)) {
174
+ for (f = 0; f < p.length; f++)
175
+ j(p[f]);
176
+ Object.freeze && Object.freeze(p);
176
177
  } else
177
178
  console.error(
178
179
  "React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead."
179
180
  );
180
- else P(a);
181
- if (w.call(r, "key")) {
182
- a = u(e);
183
- var f = Object.keys(r).filter(function(K) {
184
- return K !== "key";
181
+ else j(p);
182
+ if (ee.call(l, "key")) {
183
+ p = t(e);
184
+ var N = Object.keys(l).filter(function(pe) {
185
+ return pe !== "key";
185
186
  });
186
- n = 0 < f.length ? "{key: someKey, " + f.join(": ..., ") + ": ...}" : "{key: someKey}", Y[a + n] || (f = 0 < f.length ? "{" + f.join(": ..., ") + ": ...}" : "{}", console.error(
187
+ f = 0 < N.length ? "{key: someKey, " + N.join(": ..., ") + ": ...}" : "{key: someKey}", oe[p + f] || (N = 0 < N.length ? "{" + N.join(": ..., ") + ": ...}" : "{}", console.error(
187
188
  `A props object containing a "key" prop is being spread into JSX:
188
189
  let props = %s;
189
190
  <%s {...props} />
190
191
  React keys must be passed directly to JSX without using spread:
191
192
  let props = %s;
192
193
  <%s key={someKey} {...props} />`,
193
- n,
194
- a,
195
194
  f,
196
- a
197
- ), Y[a + n] = !0);
195
+ p,
196
+ N,
197
+ p
198
+ ), oe[p + f] = !0);
198
199
  }
199
- if (a = null, t !== void 0 && (l(t), a = "" + t), _(r) && (l(r.key), a = "" + r.key), "key" in r) {
200
- t = {};
201
- for (var A in r)
202
- A !== "key" && (t[A] = r[A]);
203
- } else t = r;
204
- return a && m(
205
- t,
200
+ if (p = null, d !== void 0 && (n(d), p = "" + d), _(l) && (n(l.key), p = "" + l.key), "key" in l) {
201
+ d = {};
202
+ for (var V in l)
203
+ V !== "key" && (d[V] = l[V]);
204
+ } else d = l;
205
+ return p && u(
206
+ d,
206
207
  typeof e == "function" ? e.displayName || e.name || "Unknown" : e
207
- ), M(
208
+ ), b(
208
209
  e,
209
- a,
210
- t,
211
- o(),
212
- R,
213
- O
210
+ p,
211
+ d,
212
+ a(),
213
+ z,
214
+ H
214
215
  );
215
216
  }
216
- function P(e) {
217
- g(e) ? e._store && (e._store.validated = 1) : typeof e == "object" && e !== null && e.$$typeof === T && (e._payload.status === "fulfilled" ? g(e._payload.value) && e._payload.value._store && (e._payload.value._store.validated = 1) : e._store && (e._store.validated = 1));
217
+ function j(e) {
218
+ v(e) ? e._store && (e._store.validated = 1) : typeof e == "object" && e !== null && e.$$typeof === U && (e._payload.status === "fulfilled" ? v(e._payload.value) && e._payload.value._store && (e._payload.value._store.validated = 1) : e._store && (e._store.validated = 1));
218
219
  }
219
- function g(e) {
220
- return typeof e == "object" && e !== null && e.$$typeof === j;
220
+ function v(e) {
221
+ return typeof e == "object" && e !== null && e.$$typeof === L;
221
222
  }
222
- var b = ee, j = /* @__PURE__ */ Symbol.for("react.transitional.element"), W = /* @__PURE__ */ Symbol.for("react.portal"), v = /* @__PURE__ */ Symbol.for("react.fragment"), U = /* @__PURE__ */ Symbol.for("react.strict_mode"), q = /* @__PURE__ */ Symbol.for("react.profiler"), J = /* @__PURE__ */ Symbol.for("react.consumer"), V = /* @__PURE__ */ Symbol.for("react.context"), z = /* @__PURE__ */ Symbol.for("react.forward_ref"), G = /* @__PURE__ */ Symbol.for("react.suspense"), X = /* @__PURE__ */ Symbol.for("react.suspense_list"), B = /* @__PURE__ */ Symbol.for("react.memo"), T = /* @__PURE__ */ Symbol.for("react.lazy"), H = /* @__PURE__ */ Symbol.for("react.activity"), Z = /* @__PURE__ */ Symbol.for("react.client.reference"), k = b.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE, w = Object.prototype.hasOwnProperty, Q = Array.isArray, y = console.createTask ? console.createTask : function() {
223
+ var h = ge, L = /* @__PURE__ */ Symbol.for("react.transitional.element"), q = /* @__PURE__ */ Symbol.for("react.portal"), k = /* @__PURE__ */ Symbol.for("react.fragment"), R = /* @__PURE__ */ Symbol.for("react.strict_mode"), O = /* @__PURE__ */ Symbol.for("react.profiler"), M = /* @__PURE__ */ Symbol.for("react.consumer"), Y = /* @__PURE__ */ Symbol.for("react.context"), F = /* @__PURE__ */ Symbol.for("react.forward_ref"), m = /* @__PURE__ */ Symbol.for("react.suspense"), W = /* @__PURE__ */ Symbol.for("react.suspense_list"), ue = /* @__PURE__ */ Symbol.for("react.memo"), U = /* @__PURE__ */ Symbol.for("react.lazy"), de = /* @__PURE__ */ Symbol.for("react.activity"), me = /* @__PURE__ */ Symbol.for("react.client.reference"), G = h.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE, ee = Object.prototype.hasOwnProperty, fe = Array.isArray, J = console.createTask ? console.createTask : function() {
223
224
  return null;
224
225
  };
225
- b = {
226
+ h = {
226
227
  react_stack_bottom_frame: function(e) {
227
228
  return e();
228
229
  }
229
230
  };
230
- var x, h = {}, N = b.react_stack_bottom_frame.bind(
231
- b,
232
- s
233
- )(), C = y(c(s)), Y = {};
234
- E.Fragment = v, E.jsx = function(e, r, t) {
235
- var n = 1e4 > k.recentlyCreatedOwnerStacks++;
236
- return S(
231
+ var te, re = {}, ne = h.react_stack_bottom_frame.bind(
232
+ h,
233
+ c
234
+ )(), se = J(o(c)), oe = {};
235
+ P.Fragment = k, P.jsx = function(e, l, d) {
236
+ var f = 1e4 > G.recentlyCreatedOwnerStacks++;
237
+ return y(
237
238
  e,
238
- r,
239
- t,
239
+ l,
240
+ d,
240
241
  !1,
241
- n ? Error("react-stack-top-frame") : N,
242
- n ? y(c(e)) : C
242
+ f ? Error("react-stack-top-frame") : ne,
243
+ f ? J(o(e)) : se
243
244
  );
244
- }, E.jsxs = function(e, r, t) {
245
- var n = 1e4 > k.recentlyCreatedOwnerStacks++;
246
- return S(
245
+ }, P.jsxs = function(e, l, d) {
246
+ var f = 1e4 > G.recentlyCreatedOwnerStacks++;
247
+ return y(
247
248
  e,
248
- r,
249
- t,
249
+ l,
250
+ d,
250
251
  !0,
251
- n ? Error("react-stack-top-frame") : N,
252
- n ? y(c(e)) : C
252
+ f ? Error("react-stack-top-frame") : ne,
253
+ f ? J(o(e)) : se
253
254
  );
254
255
  };
255
- })()), E;
256
+ })()), P;
256
257
  }
257
- var F;
258
- function ne() {
259
- return F || (F = 1, process.env.NODE_ENV === "production" ? p.exports = re() : p.exports = te()), p.exports;
258
+ var ce;
259
+ function xe() {
260
+ return ce || (ce = 1, process.env.NODE_ENV === "production" ? D.exports = be() : D.exports = ve()), D.exports;
260
261
  }
261
- var ae = ne();
262
- const oe = "_button_k91y8_1", se = "_primary_k91y8_17", ue = "_ghost_k91y8_35", D = {
263
- button: oe,
264
- primary: se,
265
- ghost: ue
262
+ var s = xe();
263
+ const ie = i.createContext(void 0);
264
+ function he() {
265
+ return typeof window > "u" ? "light" : window.matchMedia("(prefers-color-scheme: dark)").matches ? "dark" : "light";
266
+ }
267
+ function gr({
268
+ children: t,
269
+ defaultTheme: r = "system",
270
+ defaultAccent: n = "blue"
271
+ }) {
272
+ const [o, a] = i.useState(r), [c, _] = i.useState(n), [u, g] = i.useState(he);
273
+ i.useEffect(() => {
274
+ const j = window.matchMedia("(prefers-color-scheme: dark)"), v = (h) => g(h.matches ? "dark" : "light");
275
+ return j.addEventListener("change", v), () => j.removeEventListener("change", v);
276
+ }, []);
277
+ const b = o === "system" ? u : o, y = i.useMemo(
278
+ () => ({ theme: o, resolvedTheme: b, accentColor: c, setTheme: a, setAccentColor: _ }),
279
+ [o, b, c]
280
+ );
281
+ return /* @__PURE__ */ s.jsx(ie.Provider, { value: y, children: /* @__PURE__ */ s.jsx(
282
+ "div",
283
+ {
284
+ className: "tng-root",
285
+ "data-tng-theme": b,
286
+ "data-tng-accent": c,
287
+ children: t
288
+ }
289
+ ) });
290
+ }
291
+ function br() {
292
+ const t = i.useContext(ie);
293
+ if (!t) throw new Error("useTheme must be used within a <ThemeProvider>");
294
+ return t;
295
+ }
296
+ const je = "_button_77t7q_1", ye = "_sm_77t7q_33", we = "_md_77t7q_40", ke = "_lg_77t7q_46", Te = "_iconOnly_77t7q_54", Ee = "_solid_77t7q_60", Re = "_soft_77t7q_73", Ne = "_outline_77t7q_82", $e = "_ghost_77t7q_93", Se = "_loading_77t7q_104", Ce = "_hiddenContent_77t7q_108", Oe = "_spinner_77t7q_112", T = {
297
+ button: je,
298
+ sm: ye,
299
+ md: we,
300
+ lg: ke,
301
+ iconOnly: Te,
302
+ solid: Ee,
303
+ soft: Re,
304
+ outline: Ne,
305
+ ghost: $e,
306
+ loading: Se,
307
+ hiddenContent: Ce,
308
+ spinner: Oe,
309
+ "button-spin": "_button-spin_77t7q_1"
310
+ }, Ae = i.forwardRef(
311
+ ({ variant: t = "solid", size: r = "md", loading: n, iconOnly: o, className: a, disabled: c, children: _, ...u }, g) => {
312
+ const b = [
313
+ T.button,
314
+ T[t],
315
+ T[r],
316
+ o && T.iconOnly,
317
+ n && T.loading,
318
+ a
319
+ ].filter(Boolean).join(" ");
320
+ return /* @__PURE__ */ s.jsxs("button", { ref: g, className: b, disabled: c || n, ...u, children: [
321
+ n && /* @__PURE__ */ s.jsx("span", { className: T.spinner, "aria-hidden": "true" }),
322
+ /* @__PURE__ */ s.jsx("span", { className: n ? T.hiddenContent : void 0, children: _ })
323
+ ] });
324
+ }
325
+ );
326
+ Ae.displayName = "Button";
327
+ const Pe = "_input_1abtm_1", Be = "_sm_1abtm_33", Le = "_md_1abtm_39", ze = "_lg_1abtm_45", De = "_error_1abtm_53", X = {
328
+ input: Pe,
329
+ sm: Be,
330
+ md: Le,
331
+ lg: ze,
332
+ error: De
333
+ }, Ie = i.forwardRef(
334
+ ({ inputSize: t = "md", error: r, className: n, ...o }, a) => {
335
+ const c = [
336
+ X.input,
337
+ X[t],
338
+ r && X.error,
339
+ n
340
+ ].filter(Boolean).join(" ");
341
+ return /* @__PURE__ */ s.jsx("input", { ref: a, className: c, ...o });
342
+ }
343
+ );
344
+ Ie.displayName = "Input";
345
+ const qe = "_textarea_a0d05_1", Me = "_sm_a0d05_34", Ye = "_md_a0d05_39", Fe = "_lg_a0d05_44", We = "_error_a0d05_51", Z = {
346
+ textarea: qe,
347
+ sm: Me,
348
+ md: Ye,
349
+ lg: Fe,
350
+ error: We
351
+ }, Ue = i.forwardRef(
352
+ ({ textAreaSize: t = "md", error: r, resize: n = "vertical", className: o, style: a, ...c }, _) => {
353
+ const u = [
354
+ Z.textarea,
355
+ Z[t],
356
+ r && Z.error,
357
+ o
358
+ ].filter(Boolean).join(" ");
359
+ return /* @__PURE__ */ s.jsx(
360
+ "textarea",
361
+ {
362
+ ref: _,
363
+ className: u,
364
+ style: { ...a, resize: n },
365
+ ...c
366
+ }
367
+ );
368
+ }
369
+ );
370
+ Ue.displayName = "TextArea";
371
+ const Ge = "_wrapper_nd7m8_1", Je = "_input_nd7m8_9", He = "_control_nd7m8_23", Ve = "_icon_nd7m8_57", Xe = "_label_nd7m8_61", Ze = "_sm_nd7m8_68", Qe = "_md_nd7m8_72", Ke = "_lg_nd7m8_76", $ = {
372
+ wrapper: Ge,
373
+ input: Je,
374
+ control: He,
375
+ icon: Ve,
376
+ label: Xe,
377
+ sm: Ze,
378
+ md: Qe,
379
+ lg: Ke
380
+ }, et = i.forwardRef(
381
+ ({ label: t, checkboxSize: r = "md", className: n, id: o, ...a }, c) => {
382
+ const _ = i.useId(), u = o ?? _;
383
+ return /* @__PURE__ */ s.jsxs("label", { className: [$.wrapper, $[r], n].filter(Boolean).join(" "), htmlFor: u, children: [
384
+ /* @__PURE__ */ s.jsx("input", { ref: c, type: "checkbox", id: u, className: $.input, ...a }),
385
+ /* @__PURE__ */ s.jsx("span", { className: $.control, "aria-hidden": "true", children: /* @__PURE__ */ s.jsx("svg", { className: $.icon, viewBox: "0 0 12 12", fill: "none", children: /* @__PURE__ */ s.jsx("path", { d: "M2.5 6L5 8.5L9.5 3.5", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" }) }) }),
386
+ t && /* @__PURE__ */ s.jsx("span", { className: $.label, children: t })
387
+ ] });
388
+ }
389
+ );
390
+ et.displayName = "Checkbox";
391
+ const tt = "_wrapper_wtcfo_1", rt = "_input_wtcfo_9", nt = "_control_wtcfo_23", st = "_dot_wtcfo_35", ot = "_label_wtcfo_69", at = "_sm_wtcfo_76", lt = "_md_wtcfo_80", ct = "_lg_wtcfo_84", S = {
392
+ wrapper: tt,
393
+ input: rt,
394
+ control: nt,
395
+ dot: st,
396
+ label: ot,
397
+ sm: at,
398
+ md: lt,
399
+ lg: ct
400
+ }, it = i.forwardRef(
401
+ ({ label: t, radioSize: r = "md", className: n, id: o, ...a }, c) => {
402
+ const _ = i.useId(), u = o ?? _;
403
+ return /* @__PURE__ */ s.jsxs("label", { className: [S.wrapper, S[r], n].filter(Boolean).join(" "), htmlFor: u, children: [
404
+ /* @__PURE__ */ s.jsx("input", { ref: c, type: "radio", id: u, className: S.input, ...a }),
405
+ /* @__PURE__ */ s.jsx("span", { className: S.control, "aria-hidden": "true", children: /* @__PURE__ */ s.jsx("span", { className: S.dot }) }),
406
+ t && /* @__PURE__ */ s.jsx("span", { className: S.label, children: t })
407
+ ] });
408
+ }
409
+ );
410
+ it.displayName = "Radio";
411
+ const _t = "_wrapper_kg1pu_1", ut = "_trigger_kg1pu_7", dt = "_open_kg1pu_39", mt = "_sm_kg1pu_46", ft = "_md_kg1pu_52", pt = "_lg_kg1pu_58", gt = "_error_kg1pu_66", bt = "_placeholder_kg1pu_78", vt = "_selectedText_kg1pu_82", xt = "_chevron_kg1pu_88", ht = "_menu_kg1pu_100", jt = "_option_kg1pu_129", yt = "_selected_kg1pu_82", wt = "_optionDisabled_kg1pu_147", x = {
412
+ wrapper: _t,
413
+ trigger: ut,
414
+ open: dt,
415
+ sm: mt,
416
+ md: ft,
417
+ lg: pt,
418
+ error: gt,
419
+ placeholder: bt,
420
+ selectedText: vt,
421
+ chevron: xt,
422
+ menu: ht,
423
+ "dropdown-enter": "_dropdown-enter_kg1pu_1",
424
+ option: jt,
425
+ selected: yt,
426
+ optionDisabled: wt
427
+ }, kt = i.forwardRef(
428
+ ({ options: t, value: r, defaultValue: n, onChange: o, placeholder: a = "Select...", disabled: c, error: _, dropdownSize: u = "md", className: g, id: b, name: y }, j) => {
429
+ const [v, h] = i.useState(!1), [L, q] = i.useState(n ?? ""), k = i.useRef(null), R = r !== void 0 ? r : L, O = t.find((m) => m.value === R), M = (m) => {
430
+ r === void 0 && q(m), o?.(m), h(!1);
431
+ };
432
+ i.useEffect(() => {
433
+ if (!v) return;
434
+ const m = (W) => {
435
+ k.current && !k.current.contains(W.target) && h(!1);
436
+ };
437
+ return document.addEventListener("mousedown", m), () => document.removeEventListener("mousedown", m);
438
+ }, [v]);
439
+ const Y = (m) => {
440
+ m.key === "Escape" && h(!1);
441
+ }, F = [
442
+ x.trigger,
443
+ x[u],
444
+ _ && x.error,
445
+ v && x.open,
446
+ g
447
+ ].filter(Boolean).join(" ");
448
+ return /* @__PURE__ */ s.jsxs("div", { ref: k, className: x.wrapper, onKeyDown: Y, children: [
449
+ y && /* @__PURE__ */ s.jsx("input", { type: "hidden", name: y, value: R }),
450
+ /* @__PURE__ */ s.jsxs(
451
+ "button",
452
+ {
453
+ ref: j,
454
+ type: "button",
455
+ id: b,
456
+ className: F,
457
+ disabled: c,
458
+ "aria-haspopup": "listbox",
459
+ "aria-expanded": v,
460
+ onClick: () => h(!v),
461
+ children: [
462
+ /* @__PURE__ */ s.jsx("span", { className: O ? x.selectedText : x.placeholder, children: O ? O.label : a }),
463
+ /* @__PURE__ */ s.jsx("svg", { className: x.chevron, width: "16", height: "16", viewBox: "0 0 16 16", fill: "none", "aria-hidden": "true", children: /* @__PURE__ */ s.jsx("path", { d: "M4 6L8 10L12 6", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round", strokeLinejoin: "round" }) })
464
+ ]
465
+ }
466
+ ),
467
+ v && /* @__PURE__ */ s.jsx("ul", { className: x.menu, role: "listbox", children: t.map((m) => /* @__PURE__ */ s.jsx(
468
+ "li",
469
+ {
470
+ role: "option",
471
+ "aria-selected": m.value === R,
472
+ "aria-disabled": m.disabled,
473
+ className: [
474
+ x.option,
475
+ m.value === R && x.selected,
476
+ m.disabled && x.optionDisabled
477
+ ].filter(Boolean).join(" "),
478
+ onClick: () => !m.disabled && M(m.value),
479
+ children: m.label
480
+ },
481
+ m.value
482
+ )) })
483
+ ] });
484
+ }
485
+ );
486
+ kt.displayName = "Dropdown";
487
+ const Tt = "_wrapper_1sgjx_1", Et = "_table_1sgjx_6", Rt = "_thead_1sgjx_14", Nt = "_th_1sgjx_14", $t = "_td_1sgjx_29", St = "_tr_1sgjx_33", Ct = "_tbody_1sgjx_38", Ot = "_striped_1sgjx_48", w = {
488
+ wrapper: Tt,
489
+ table: Et,
490
+ thead: Rt,
491
+ th: Nt,
492
+ td: $t,
493
+ tr: St,
494
+ tbody: Ct,
495
+ striped: Ot
496
+ }, At = i.forwardRef(
497
+ ({ variant: t = "default", className: r, ...n }, o) => {
498
+ const a = [w.table, w[t], r].filter(Boolean).join(" ");
499
+ return /* @__PURE__ */ s.jsx("div", { className: w.wrapper, children: /* @__PURE__ */ s.jsx("table", { ref: o, className: a, ...n }) });
500
+ }
501
+ );
502
+ At.displayName = "Table";
503
+ const Pt = i.forwardRef(
504
+ ({ className: t, ...r }, n) => /* @__PURE__ */ s.jsx("thead", { ref: n, className: [w.thead, t].filter(Boolean).join(" "), ...r })
505
+ );
506
+ Pt.displayName = "TableHead";
507
+ const Bt = i.forwardRef(
508
+ ({ className: t, ...r }, n) => /* @__PURE__ */ s.jsx("tbody", { ref: n, className: [w.tbody, t].filter(Boolean).join(" "), ...r })
509
+ );
510
+ Bt.displayName = "TableBody";
511
+ const Lt = i.forwardRef(
512
+ ({ className: t, ...r }, n) => /* @__PURE__ */ s.jsx("tr", { ref: n, className: [w.tr, t].filter(Boolean).join(" "), ...r })
513
+ );
514
+ Lt.displayName = "TableRow";
515
+ const zt = i.forwardRef(
516
+ ({ className: t, ...r }, n) => /* @__PURE__ */ s.jsx("th", { ref: n, className: [w.th, t].filter(Boolean).join(" "), ...r })
517
+ );
518
+ zt.displayName = "TableHeaderCell";
519
+ const Dt = i.forwardRef(
520
+ ({ className: t, ...r }, n) => /* @__PURE__ */ s.jsx("td", { ref: n, className: [w.td, t].filter(Boolean).join(" "), ...r })
521
+ );
522
+ Dt.displayName = "TableCell";
523
+ const It = "_grid_rsz4l_1", Q = {
524
+ grid: It,
525
+ "gap-sm": "_gap-sm_rsz4l_6",
526
+ "gap-md": "_gap-md_rsz4l_7",
527
+ "gap-lg": "_gap-lg_rsz4l_8",
528
+ "gap-xl": "_gap-xl_rsz4l_9",
529
+ "align-start": "_align-start_rsz4l_12",
530
+ "align-center": "_align-center_rsz4l_13",
531
+ "align-end": "_align-end_rsz4l_14",
532
+ "align-stretch": "_align-stretch_rsz4l_15"
533
+ }, qt = i.forwardRef(
534
+ ({ columns: t = 3, minChildWidth: r = "200px", gap: n = "md", align: o, className: a, style: c, ..._ }, u) => {
535
+ const g = [
536
+ Q.grid,
537
+ n !== "none" && Q[`gap-${n}`],
538
+ o && Q[`align-${o}`],
539
+ a
540
+ ].filter(Boolean).join(" "), b = typeof t == "number" ? `repeat(${t}, minmax(0, 1fr))` : `repeat(${t}, minmax(${r}, 1fr))`;
541
+ return /* @__PURE__ */ s.jsx(
542
+ "div",
543
+ {
544
+ ref: u,
545
+ className: g,
546
+ style: { ...c, gridTemplateColumns: b },
547
+ ..._
548
+ }
549
+ );
550
+ }
551
+ );
552
+ qt.displayName = "Grid";
553
+ const Mt = "_overlay_y78yx_1", Yt = "_content_y78yx_18", Ft = "_title_y78yx_44", Wt = "_description_y78yx_52", Ut = "_footer_y78yx_59", B = {
554
+ overlay: Mt,
555
+ content: Yt,
556
+ title: Ft,
557
+ description: Wt,
558
+ footer: Ut
266
559
  };
267
- function ce({ variant: u = "primary", className: i, ...l }) {
268
- const c = [D.button, D[u], i].filter(Boolean).join(" ");
269
- return /* @__PURE__ */ ae.jsx("button", { ...l, className: c });
560
+ function vr({ open: t, onOpenChange: r, children: n }) {
561
+ return i.useEffect(() => {
562
+ if (!t) return;
563
+ const o = (a) => {
564
+ a.key === "Escape" && r(!1);
565
+ };
566
+ return document.addEventListener("keydown", o), () => document.removeEventListener("keydown", o);
567
+ }, [t, r]), i.useEffect(() => {
568
+ if (!t) return;
569
+ const o = document.body.style.overflow;
570
+ return document.body.style.overflow = "hidden", () => {
571
+ document.body.style.overflow = o;
572
+ };
573
+ }, [t]), t ? /* @__PURE__ */ s.jsx("div", { className: B.overlay, onClick: () => r(!1), children: /* @__PURE__ */ s.jsx(
574
+ "div",
575
+ {
576
+ className: B.content,
577
+ role: "dialog",
578
+ "aria-modal": "true",
579
+ onClick: (o) => o.stopPropagation(),
580
+ children: n
581
+ }
582
+ ) }) : null;
583
+ }
584
+ function xr({ className: t, ...r }) {
585
+ return /* @__PURE__ */ s.jsx("h2", { className: [B.title, t].filter(Boolean).join(" "), ...r });
586
+ }
587
+ function hr({ className: t, ...r }) {
588
+ return /* @__PURE__ */ s.jsx("p", { className: [B.description, t].filter(Boolean).join(" "), ...r });
589
+ }
590
+ function jr({ className: t, ...r }) {
591
+ return /* @__PURE__ */ s.jsx("div", { className: [B.footer, t].filter(Boolean).join(" "), ...r });
592
+ }
593
+ const Gt = "_spinner_cnszt_1", Jt = "_svg_cnszt_7", Ht = "_spin_cnszt_1", Vt = "_track_cnszt_11", Xt = "_arc_cnszt_15", Zt = "_primary_cnszt_21", Qt = "_current_cnszt_25", Kt = "_sm_cnszt_31", er = "_md_cnszt_32", tr = "_lg_cnszt_33", rr = "_srOnly_cnszt_37", E = {
594
+ spinner: Gt,
595
+ svg: Jt,
596
+ spin: Ht,
597
+ track: Vt,
598
+ arc: Xt,
599
+ primary: Zt,
600
+ current: Qt,
601
+ sm: Kt,
602
+ md: er,
603
+ lg: tr,
604
+ srOnly: rr
605
+ }, nr = i.forwardRef(
606
+ ({ size: t = "md", color: r = "primary", label: n = "Loading", className: o, ...a }, c) => {
607
+ const _ = [
608
+ E.spinner,
609
+ E[t],
610
+ E[r],
611
+ o
612
+ ].filter(Boolean).join(" ");
613
+ return /* @__PURE__ */ s.jsxs("span", { ref: c, role: "status", className: _, ...a, children: [
614
+ /* @__PURE__ */ s.jsxs("svg", { className: E.svg, viewBox: "0 0 24 24", fill: "none", "aria-hidden": "true", children: [
615
+ /* @__PURE__ */ s.jsx("circle", { className: E.track, cx: "12", cy: "12", r: "10", stroke: "currentColor", strokeWidth: "3" }),
616
+ /* @__PURE__ */ s.jsx(
617
+ "path",
618
+ {
619
+ className: E.arc,
620
+ d: "M12 2a10 10 0 019.8 8",
621
+ stroke: "currentColor",
622
+ strokeWidth: "3",
623
+ strokeLinecap: "round"
624
+ }
625
+ )
626
+ ] }),
627
+ /* @__PURE__ */ s.jsx("span", { className: E.srOnly, children: n })
628
+ ] });
629
+ }
630
+ );
631
+ nr.displayName = "Spinner";
632
+ const sr = "_list_1jgnk_3", or = "_trigger_1jgnk_22", ar = "_active_1jgnk_54", lr = "_content_1jgnk_74", C = {
633
+ list: sr,
634
+ "list-underline": "_list-underline_1jgnk_9",
635
+ "list-pills": "_list-pills_1jgnk_14",
636
+ trigger: or,
637
+ "trigger-underline": "_trigger-underline_1jgnk_48",
638
+ active: ar,
639
+ "trigger-pills": "_trigger-pills_1jgnk_61",
640
+ content: lr,
641
+ "tab-enter": "_tab-enter_1jgnk_1"
642
+ }, _e = i.createContext(void 0);
643
+ function K() {
644
+ const t = i.useContext(_e);
645
+ if (!t) throw new Error("Tabs compound components must be used within <Tabs>");
646
+ return t;
647
+ }
648
+ function yr({ value: t, defaultValue: r = "", onValueChange: n, variant: o = "underline", children: a, className: c }) {
649
+ const [_, u] = i.useState(r), g = t !== void 0 ? t : _, b = i.useCallback(
650
+ (j) => {
651
+ t === void 0 && u(j), n?.(j);
652
+ },
653
+ [t, n]
654
+ ), y = i.useMemo(() => ({ value: g, onSelect: b, variant: o }), [g, b, o]);
655
+ return /* @__PURE__ */ s.jsx(_e.Provider, { value: y, children: /* @__PURE__ */ s.jsx("div", { className: c, children: a }) });
656
+ }
657
+ function wr({ className: t, ...r }) {
658
+ const { variant: n } = K(), o = [C.list, C[`list-${n}`], t].filter(Boolean).join(" ");
659
+ return /* @__PURE__ */ s.jsx("div", { role: "tablist", className: o, ...r });
660
+ }
661
+ function kr({ value: t, className: r, ...n }) {
662
+ const { value: o, onSelect: a, variant: c } = K(), _ = t === o, u = [
663
+ C.trigger,
664
+ C[`trigger-${c}`],
665
+ _ && C.active,
666
+ r
667
+ ].filter(Boolean).join(" ");
668
+ return /* @__PURE__ */ s.jsx(
669
+ "button",
670
+ {
671
+ role: "tab",
672
+ type: "button",
673
+ "aria-selected": _,
674
+ className: u,
675
+ onClick: () => a(t),
676
+ ...n
677
+ }
678
+ );
679
+ }
680
+ function Tr({ value: t, className: r, ...n }) {
681
+ const { value: o } = K();
682
+ return t !== o ? null : /* @__PURE__ */ s.jsx("div", { role: "tabpanel", className: [C.content, r].filter(Boolean).join(" "), ...n });
683
+ }
684
+ const cr = "_wrapper_1vxu8_1", ir = "_tooltip_1vxu8_6", _r = "_arrow_1vxu8_32", ur = "_top_1vxu8_42", dr = "_bottom_1vxu8_54", mr = "_left_1vxu8_66", fr = "_right_1vxu8_78", I = {
685
+ wrapper: cr,
686
+ tooltip: ir,
687
+ "tooltip-enter": "_tooltip-enter_1vxu8_1",
688
+ arrow: _r,
689
+ top: ur,
690
+ bottom: dr,
691
+ left: mr,
692
+ right: fr
693
+ };
694
+ function Er({ content: t, side: r = "top", delayMs: n = 200, children: o }) {
695
+ const [a, c] = i.useState(!1), _ = i.useRef(void 0), u = () => {
696
+ clearTimeout(_.current), _.current = setTimeout(() => c(!0), n);
697
+ }, g = () => {
698
+ clearTimeout(_.current), c(!1);
699
+ };
700
+ return i.useEffect(() => () => clearTimeout(_.current), []), /* @__PURE__ */ s.jsxs(
701
+ "span",
702
+ {
703
+ className: I.wrapper,
704
+ onMouseEnter: u,
705
+ onMouseLeave: g,
706
+ onFocus: u,
707
+ onBlur: g,
708
+ children: [
709
+ o,
710
+ a && /* @__PURE__ */ s.jsxs("span", { role: "tooltip", className: [I.tooltip, I[r]].join(" "), children: [
711
+ t,
712
+ /* @__PURE__ */ s.jsx("span", { className: I.arrow })
713
+ ] })
714
+ ]
715
+ }
716
+ );
270
717
  }
271
718
  export {
272
- ce as Button
719
+ Ae as Button,
720
+ et as Checkbox,
721
+ vr as Dialog,
722
+ hr as DialogDescription,
723
+ jr as DialogFooter,
724
+ xr as DialogTitle,
725
+ kt as Dropdown,
726
+ qt as Grid,
727
+ Ie as Input,
728
+ it as Radio,
729
+ nr as Spinner,
730
+ Tr as TabContent,
731
+ wr as TabList,
732
+ kr as TabTrigger,
733
+ At as Table,
734
+ Bt as TableBody,
735
+ Dt as TableCell,
736
+ Pt as TableHead,
737
+ zt as TableHeaderCell,
738
+ Lt as TableRow,
739
+ yr as Tabs,
740
+ Ue as TextArea,
741
+ gr as ThemeProvider,
742
+ Er as Tooltip,
743
+ br as useTheme
273
744
  };