@ranixxd/saju-design-system 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (47) hide show
  1. package/README.md +73 -0
  2. package/dist/index.cjs +1 -0
  3. package/dist/index.mjs +1157 -0
  4. package/dist/style.css +1 -0
  5. package/dist/types/components/Avatar/Avatar.d.ts +10 -0
  6. package/dist/types/components/Avatar/index.d.ts +2 -0
  7. package/dist/types/components/Badge/Badge.d.ts +11 -0
  8. package/dist/types/components/Badge/index.d.ts +2 -0
  9. package/dist/types/components/Button/Button.d.ts +12 -0
  10. package/dist/types/components/Button/index.d.ts +2 -0
  11. package/dist/types/components/Card/Card.d.ts +11 -0
  12. package/dist/types/components/Card/index.d.ts +2 -0
  13. package/dist/types/components/Checkbox/Checkbox.d.ts +9 -0
  14. package/dist/types/components/Checkbox/index.d.ts +2 -0
  15. package/dist/types/components/Divider/Divider.d.ts +8 -0
  16. package/dist/types/components/Divider/index.d.ts +2 -0
  17. package/dist/types/components/Input/Input.d.ts +14 -0
  18. package/dist/types/components/Input/index.d.ts +2 -0
  19. package/dist/types/components/Modal/Modal.d.ts +14 -0
  20. package/dist/types/components/Modal/index.d.ts +2 -0
  21. package/dist/types/components/Radio/Radio.d.ts +21 -0
  22. package/dist/types/components/Radio/index.d.ts +2 -0
  23. package/dist/types/components/Select/Select.d.ts +18 -0
  24. package/dist/types/components/Select/index.d.ts +2 -0
  25. package/dist/types/components/Spinner/Spinner.d.ts +10 -0
  26. package/dist/types/components/Spinner/index.d.ts +2 -0
  27. package/dist/types/components/Tag/Tag.d.ts +9 -0
  28. package/dist/types/components/Tag/index.d.ts +2 -0
  29. package/dist/types/components/Textarea/Textarea.d.ts +10 -0
  30. package/dist/types/components/Textarea/index.d.ts +2 -0
  31. package/dist/types/components/Toast/Toast.d.ts +22 -0
  32. package/dist/types/components/Toast/index.d.ts +2 -0
  33. package/dist/types/components/Toggle/Toggle.d.ts +8 -0
  34. package/dist/types/components/Toggle/index.d.ts +2 -0
  35. package/dist/types/components/Tooltip/Tooltip.d.ts +10 -0
  36. package/dist/types/components/Tooltip/index.d.ts +2 -0
  37. package/dist/types/components/Typography/Typography.d.ts +17 -0
  38. package/dist/types/components/Typography/index.d.ts +2 -0
  39. package/dist/types/components/index.d.ts +17 -0
  40. package/dist/types/foundations/breakpoints.d.ts +19 -0
  41. package/dist/types/foundations/colors.d.ts +116 -0
  42. package/dist/types/foundations/index.d.ts +5 -0
  43. package/dist/types/foundations/shadows.d.ts +11 -0
  44. package/dist/types/foundations/spacing.d.ts +33 -0
  45. package/dist/types/foundations/typography.d.ts +37 -0
  46. package/dist/types/index.d.ts +2 -0
  47. package/package.json +75 -0
package/dist/index.mjs ADDED
@@ -0,0 +1,1157 @@
1
+ import { jsxs as i, jsx as e } from "react/jsx-runtime";
2
+ import p from "react";
3
+ const S = "_button_1sr1u_1", M = "_sm_1sr1u_31", H = "_md_1sr1u_38", U = "_lg_1sr1u_45", P = "_primary_1sr1u_53", G = "_secondary_1sr1u_67", K = "_outline_1sr1u_80", V = "_ghost_1sr1u_92", J = "_danger_1sr1u_104", Q = "_fullWidth_1sr1u_120", X = "_loading_1sr1u_125", Y = "_icon_1sr1u_130", Z = "_label_1sr1u_136", O = "_spinner_1sr1u_142", ee = "_spin_1sr1u_142", w = {
4
+ button: S,
5
+ sm: M,
6
+ md: H,
7
+ lg: U,
8
+ primary: P,
9
+ secondary: G,
10
+ outline: K,
11
+ ghost: V,
12
+ danger: J,
13
+ fullWidth: Q,
14
+ loading: X,
15
+ icon: Y,
16
+ label: Z,
17
+ spinner: O,
18
+ spin: ee
19
+ }, te = p.forwardRef(
20
+ ({
21
+ variant: o = "primary",
22
+ size: r = "md",
23
+ loading: t = !1,
24
+ leftIcon: s,
25
+ rightIcon: n,
26
+ fullWidth: a = !1,
27
+ disabled: c,
28
+ children: l,
29
+ className: d,
30
+ ...m
31
+ }, u) => {
32
+ const b = c || t;
33
+ return /* @__PURE__ */ i(
34
+ "button",
35
+ {
36
+ ref: u,
37
+ className: [
38
+ w.button,
39
+ w[o],
40
+ w[r],
41
+ a ? w.fullWidth : "",
42
+ t ? w.loading : "",
43
+ d ?? ""
44
+ ].filter(Boolean).join(" "),
45
+ disabled: b,
46
+ "aria-busy": t,
47
+ ...m,
48
+ children: [
49
+ t && /* @__PURE__ */ e("span", { className: w.spinner, "aria-hidden": "true" }),
50
+ !t && s && /* @__PURE__ */ e("span", { className: w.icon, children: s }),
51
+ /* @__PURE__ */ e("span", { className: w.label, children: l }),
52
+ !t && n && /* @__PURE__ */ e("span", { className: w.icon, children: n })
53
+ ]
54
+ }
55
+ );
56
+ }
57
+ );
58
+ te.displayName = "Button";
59
+ const re = "_wrapper_1g7vq_1", oe = "_fullWidth_1g7vq_7", se = "_label_1g7vq_11", ne = "_inputWrapper_1g7vq_18", ae = "_error_1g7vq_33", le = "_success_1g7vq_41", ce = "_disabled_1g7vq_45", ie = "_sm_1g7vq_51", _e = "_input_1g7vq_18", de = "_md_1g7vq_60", me = "_lg_1g7vq_69", pe = "_addon_1g7vq_98", ue = "_helperText_1g7vq_106", he = "_errorText_1g7vq_113", g = {
60
+ wrapper: re,
61
+ fullWidth: oe,
62
+ label: se,
63
+ inputWrapper: ne,
64
+ error: ae,
65
+ success: le,
66
+ disabled: ce,
67
+ sm: ie,
68
+ input: _e,
69
+ md: de,
70
+ lg: me,
71
+ addon: pe,
72
+ helperText: ue,
73
+ errorText: he
74
+ }, ge = p.forwardRef(
75
+ ({
76
+ size: o = "md",
77
+ label: r,
78
+ helperText: t,
79
+ errorMessage: s,
80
+ leftAddon: n,
81
+ rightAddon: a,
82
+ isError: c = !1,
83
+ isSuccess: l = !1,
84
+ fullWidth: d = !1,
85
+ id: m,
86
+ disabled: u,
87
+ className: b,
88
+ ...v
89
+ }, T) => {
90
+ const h = m ?? (r ? `input-${r.toLowerCase().replace(/\s+/g, "-")}` : void 0), C = c || !!s;
91
+ return /* @__PURE__ */ i("div", { className: [g.wrapper, d ? g.fullWidth : ""].filter(Boolean).join(" "), children: [
92
+ r && /* @__PURE__ */ e("label", { htmlFor: h, className: g.label, children: r }),
93
+ /* @__PURE__ */ i(
94
+ "div",
95
+ {
96
+ className: [
97
+ g.inputWrapper,
98
+ g[o],
99
+ C ? g.error : "",
100
+ l ? g.success : "",
101
+ u ? g.disabled : ""
102
+ ].filter(Boolean).join(" "),
103
+ children: [
104
+ n && /* @__PURE__ */ e("span", { className: g.addon, children: n }),
105
+ /* @__PURE__ */ e(
106
+ "input",
107
+ {
108
+ ref: T,
109
+ id: h,
110
+ disabled: u,
111
+ "aria-invalid": C,
112
+ "aria-describedby": s ? `${h}-error` : t ? `${h}-helper` : void 0,
113
+ className: [g.input, b ?? ""].filter(Boolean).join(" "),
114
+ ...v
115
+ }
116
+ ),
117
+ a && /* @__PURE__ */ e("span", { className: g.addon, children: a })
118
+ ]
119
+ }
120
+ ),
121
+ s && /* @__PURE__ */ e("p", { id: `${h}-error`, className: g.errorText, role: "alert", children: s }),
122
+ !s && t && /* @__PURE__ */ e("p", { id: `${h}-helper`, className: g.helperText, children: t })
123
+ ] });
124
+ }
125
+ );
126
+ ge.displayName = "Input";
127
+ const fe = "_wrapper_19m1u_1", xe = "_fullWidth_19m1u_7", be = "_textarea_19m1u_10", ve = "_label_19m1u_14", we = "_error_19m1u_44", ye = "_disabled_19m1u_51", $e = "_helperText_19m1u_57", Ne = "_errorText_19m1u_63", N = {
128
+ wrapper: fe,
129
+ fullWidth: xe,
130
+ textarea: be,
131
+ label: ve,
132
+ error: we,
133
+ disabled: ye,
134
+ helperText: $e,
135
+ errorText: Ne
136
+ }, Be = p.forwardRef(
137
+ ({
138
+ label: o,
139
+ helperText: r,
140
+ errorMessage: t,
141
+ isError: s = !1,
142
+ fullWidth: n = !1,
143
+ resize: a = "vertical",
144
+ id: c,
145
+ disabled: l,
146
+ className: d,
147
+ ...m
148
+ }, u) => {
149
+ const b = c ?? (o ? `textarea-${o.toLowerCase().replace(/\s+/g, "-")}` : void 0), v = s || !!t;
150
+ return /* @__PURE__ */ i("div", { className: [N.wrapper, n ? N.fullWidth : ""].filter(Boolean).join(" "), children: [
151
+ o && /* @__PURE__ */ e("label", { htmlFor: b, className: N.label, children: o }),
152
+ /* @__PURE__ */ e(
153
+ "textarea",
154
+ {
155
+ ref: u,
156
+ id: b,
157
+ disabled: l,
158
+ "aria-invalid": v,
159
+ className: [
160
+ N.textarea,
161
+ v ? N.error : "",
162
+ l ? N.disabled : "",
163
+ d ?? ""
164
+ ].filter(Boolean).join(" "),
165
+ style: { resize: a },
166
+ ...m
167
+ }
168
+ ),
169
+ t && /* @__PURE__ */ e("p", { className: N.errorText, role: "alert", children: t }),
170
+ !t && r && /* @__PURE__ */ e("p", { className: N.helperText, children: r })
171
+ ] });
172
+ }
173
+ );
174
+ Be.displayName = "Textarea";
175
+ const Fe = "_wrapper_15dy7_1", ke = "_fullWidth_15dy7_7", Te = "_selectWrapper_15dy7_10", je = "_label_15dy7_14", qe = "_error_15dy7_36", Ce = "_disabled_15dy7_43", Ee = "_sm_15dy7_49", ze = "_select_15dy7_10", We = "_md_15dy7_50", Le = "_lg_15dy7_51", De = "_chevron_15dy7_71", Ie = "_helperText_15dy7_80", Re = "_errorText_15dy7_86", x = {
176
+ wrapper: Fe,
177
+ fullWidth: ke,
178
+ selectWrapper: Te,
179
+ label: je,
180
+ error: qe,
181
+ disabled: Ce,
182
+ sm: Ee,
183
+ select: ze,
184
+ md: We,
185
+ lg: Le,
186
+ chevron: De,
187
+ helperText: Ie,
188
+ errorText: Re
189
+ }, Ae = p.forwardRef(
190
+ ({
191
+ size: o = "md",
192
+ label: r,
193
+ helperText: t,
194
+ errorMessage: s,
195
+ isError: n = !1,
196
+ fullWidth: a = !1,
197
+ options: c = [],
198
+ placeholder: l,
199
+ id: d,
200
+ disabled: m,
201
+ className: u,
202
+ children: b,
203
+ ...v
204
+ }, T) => {
205
+ const h = d ?? (r ? `select-${r.toLowerCase().replace(/\s+/g, "-")}` : void 0), C = n || !!s;
206
+ return /* @__PURE__ */ i("div", { className: [x.wrapper, a ? x.fullWidth : ""].filter(Boolean).join(" "), children: [
207
+ r && /* @__PURE__ */ e("label", { htmlFor: h, className: x.label, children: r }),
208
+ /* @__PURE__ */ i(
209
+ "div",
210
+ {
211
+ className: [
212
+ x.selectWrapper,
213
+ x[o],
214
+ C ? x.error : "",
215
+ m ? x.disabled : ""
216
+ ].filter(Boolean).join(" "),
217
+ children: [
218
+ /* @__PURE__ */ i(
219
+ "select",
220
+ {
221
+ ref: T,
222
+ id: h,
223
+ disabled: m,
224
+ "aria-invalid": C,
225
+ className: [x.select, u ?? ""].filter(Boolean).join(" "),
226
+ ...v,
227
+ children: [
228
+ l && /* @__PURE__ */ e("option", { value: "", disabled: !0, children: l }),
229
+ b ?? c.map((z) => /* @__PURE__ */ e("option", { value: z.value, disabled: z.disabled, children: z.label }, z.value))
230
+ ]
231
+ }
232
+ ),
233
+ /* @__PURE__ */ e("span", { className: x.chevron, "aria-hidden": "true", children: /* @__PURE__ */ e("svg", { width: "16", height: "16", viewBox: "0 0 16 16", fill: "none", children: /* @__PURE__ */ e("path", { d: "M4 6l4 4 4-4", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round", strokeLinejoin: "round" }) }) })
234
+ ]
235
+ }
236
+ ),
237
+ s && /* @__PURE__ */ e("p", { className: x.errorText, role: "alert", children: s }),
238
+ !s && t && /* @__PURE__ */ e("p", { className: x.helperText, children: t })
239
+ ] });
240
+ }
241
+ );
242
+ Ae.displayName = "Select";
243
+ const Se = "_wrapper_19mpw_1", Me = "_label_19mpw_7", He = "_disabled_19mpw_15", Ue = "_input_19mpw_20", Pe = "_checkmark_19mpw_27", Ge = "_error_19mpw_71", Ke = "_labelText_19mpw_75", Ve = "_helperText_19mpw_81", Je = "_errorText_19mpw_88", y = {
244
+ wrapper: Se,
245
+ label: Me,
246
+ disabled: He,
247
+ input: Ue,
248
+ checkmark: Pe,
249
+ error: Ge,
250
+ labelText: Ke,
251
+ helperText: Ve,
252
+ errorText: Je
253
+ }, Qe = p.forwardRef(
254
+ ({ label: o, helperText: r, errorMessage: t, isError: s = !1, indeterminate: n = !1, id: a, disabled: c, className: l, ...d }, m) => {
255
+ const u = p.useRef(null), b = (h) => {
256
+ u.current = h, typeof m == "function" ? m(h) : m && (m.current = h);
257
+ };
258
+ p.useEffect(() => {
259
+ u.current && (u.current.indeterminate = n);
260
+ }, [n]);
261
+ const v = a ?? (o ? `checkbox-${o.toLowerCase().replace(/\s+/g, "-")}` : void 0), T = s || !!t;
262
+ return /* @__PURE__ */ i("div", { className: y.wrapper, children: [
263
+ /* @__PURE__ */ i(
264
+ "label",
265
+ {
266
+ htmlFor: v,
267
+ className: [y.label, c ? y.disabled : ""].filter(Boolean).join(" "),
268
+ children: [
269
+ /* @__PURE__ */ e(
270
+ "input",
271
+ {
272
+ ref: b,
273
+ type: "checkbox",
274
+ id: v,
275
+ disabled: c,
276
+ "aria-invalid": T,
277
+ className: [y.input, T ? y.error : "", l ?? ""].filter(Boolean).join(" "),
278
+ ...d
279
+ }
280
+ ),
281
+ /* @__PURE__ */ e("span", { className: y.checkmark, "aria-hidden": "true" }),
282
+ o && /* @__PURE__ */ e("span", { className: y.labelText, children: o })
283
+ ]
284
+ }
285
+ ),
286
+ t && /* @__PURE__ */ e("p", { className: y.errorText, role: "alert", children: t }),
287
+ !t && r && /* @__PURE__ */ e("p", { className: y.helperText, children: r })
288
+ ] });
289
+ }
290
+ );
291
+ Qe.displayName = "Checkbox";
292
+ const Xe = "_wrapper_t377s_1", Ye = "_label_t377s_7", Ze = "_disabled_t377s_15", Oe = "_input_t377s_20", et = "_dot_t377s_27", tt = "_error_t377s_58", rt = "_labelText_t377s_62", ot = "_helperText_t377s_68", st = "_group_t377s_76", nt = "_groupLabel_t377s_85", at = "_options_t377s_92", lt = "_errorText_t377s_98", f = {
293
+ wrapper: Xe,
294
+ label: Ye,
295
+ disabled: Ze,
296
+ input: Oe,
297
+ dot: et,
298
+ error: tt,
299
+ labelText: rt,
300
+ helperText: ot,
301
+ group: st,
302
+ groupLabel: nt,
303
+ options: at,
304
+ errorText: lt
305
+ }, R = p.forwardRef(
306
+ ({ label: o, helperText: r, isError: t = !1, id: s, disabled: n, className: a, ...c }, l) => {
307
+ const d = s ?? (o ? `radio-${o.toLowerCase().replace(/\s+/g, "-")}` : void 0);
308
+ return /* @__PURE__ */ i("div", { className: f.wrapper, children: [
309
+ /* @__PURE__ */ i(
310
+ "label",
311
+ {
312
+ htmlFor: d,
313
+ className: [f.label, n ? f.disabled : ""].filter(Boolean).join(" "),
314
+ children: [
315
+ /* @__PURE__ */ e(
316
+ "input",
317
+ {
318
+ ref: l,
319
+ type: "radio",
320
+ id: d,
321
+ disabled: n,
322
+ "aria-invalid": t,
323
+ className: [f.input, t ? f.error : "", a ?? ""].filter(Boolean).join(" "),
324
+ ...c
325
+ }
326
+ ),
327
+ /* @__PURE__ */ e("span", { className: f.dot, "aria-hidden": "true" }),
328
+ o && /* @__PURE__ */ e("span", { className: f.labelText, children: o })
329
+ ]
330
+ }
331
+ ),
332
+ r && /* @__PURE__ */ e("p", { className: f.helperText, children: r })
333
+ ] });
334
+ }
335
+ );
336
+ R.displayName = "Radio";
337
+ const To = ({
338
+ name: o,
339
+ label: r,
340
+ options: t,
341
+ value: s,
342
+ onChange: n,
343
+ isError: a = !1,
344
+ errorMessage: c
345
+ }) => /* @__PURE__ */ i("fieldset", { className: f.group, children: [
346
+ r && /* @__PURE__ */ e("legend", { className: f.groupLabel, children: r }),
347
+ /* @__PURE__ */ e("div", { className: f.options, children: t.map((l) => /* @__PURE__ */ e(
348
+ R,
349
+ {
350
+ name: o,
351
+ label: l.label,
352
+ value: l.value,
353
+ checked: s === l.value,
354
+ disabled: l.disabled,
355
+ isError: a,
356
+ onChange: () => n == null ? void 0 : n(l.value)
357
+ },
358
+ l.value
359
+ )) }),
360
+ c && /* @__PURE__ */ e("p", { className: f.errorText, role: "alert", children: c })
361
+ ] }), ct = "_wrapper_dgzcf_1", it = "_label_dgzcf_7", _t = "_disabled_dgzcf_15", dt = "_input_dgzcf_20", mt = "_track_dgzcf_27", pt = "_sm_dgzcf_38", ut = "_md_dgzcf_39", ht = "_lg_dgzcf_40", gt = "_thumb_dgzcf_42", ft = "_labelText_dgzcf_75", xt = "_helperText_dgzcf_81", $ = {
362
+ wrapper: ct,
363
+ label: it,
364
+ disabled: _t,
365
+ input: dt,
366
+ track: mt,
367
+ sm: pt,
368
+ md: ut,
369
+ lg: ht,
370
+ thumb: gt,
371
+ labelText: ft,
372
+ helperText: xt
373
+ }, bt = p.forwardRef(
374
+ ({ size: o = "md", label: r, helperText: t, id: s, disabled: n, className: a, ...c }, l) => {
375
+ const d = s ?? (r ? `toggle-${r.toLowerCase().replace(/\s+/g, "-")}` : void 0);
376
+ return /* @__PURE__ */ i("div", { className: $.wrapper, children: [
377
+ /* @__PURE__ */ i(
378
+ "label",
379
+ {
380
+ htmlFor: d,
381
+ className: [$.label, n ? $.disabled : ""].filter(Boolean).join(" "),
382
+ children: [
383
+ /* @__PURE__ */ e(
384
+ "input",
385
+ {
386
+ ref: l,
387
+ type: "checkbox",
388
+ role: "switch",
389
+ id: d,
390
+ disabled: n,
391
+ className: [$.input, a ?? ""].filter(Boolean).join(" "),
392
+ ...c
393
+ }
394
+ ),
395
+ /* @__PURE__ */ e("span", { className: [$.track, $[o]].join(" "), "aria-hidden": "true", children: /* @__PURE__ */ e("span", { className: $.thumb }) }),
396
+ r && /* @__PURE__ */ e("span", { className: $.labelText, children: r })
397
+ ]
398
+ }
399
+ ),
400
+ t && /* @__PURE__ */ e("p", { className: $.helperText, children: t })
401
+ ] });
402
+ }
403
+ );
404
+ bt.displayName = "Toggle";
405
+ const vt = "_badge_1mczn_1", wt = "_sm_1mczn_11", yt = "_md_1mczn_12", $t = "_neutral_1mczn_15", Nt = "_primary_1mczn_16", Bt = "_success_1mczn_17", Ft = "_warning_1mczn_18", kt = "_danger_1mczn_19", Tt = "_info_1mczn_20", jt = "_dotIndicator_1mczn_23", E = {
406
+ badge: vt,
407
+ sm: wt,
408
+ md: yt,
409
+ neutral: $t,
410
+ primary: Nt,
411
+ success: Bt,
412
+ warning: Ft,
413
+ danger: kt,
414
+ info: Tt,
415
+ dotIndicator: jt
416
+ }, jo = ({
417
+ variant: o = "neutral",
418
+ size: r = "md",
419
+ dot: t = !1,
420
+ children: s,
421
+ className: n
422
+ }) => /* @__PURE__ */ i(
423
+ "span",
424
+ {
425
+ className: [E.badge, E[o], E[r], t ? E.dot : "", n ?? ""].filter(Boolean).join(" "),
426
+ children: [
427
+ t && /* @__PURE__ */ e("span", { className: E.dotIndicator, "aria-hidden": "true" }),
428
+ s
429
+ ]
430
+ }
431
+ ), qt = "_tag_2pfl6_1", Ct = "_primary_2pfl6_14", Et = "_success_2pfl6_15", zt = "_warning_2pfl6_16", Wt = "_danger_2pfl6_17", Lt = "_label_2pfl6_19", Dt = "_removeBtn_2pfl6_21", W = {
432
+ tag: qt,
433
+ default: "_default_2pfl6_13",
434
+ primary: Ct,
435
+ success: Et,
436
+ warning: zt,
437
+ danger: Wt,
438
+ label: Lt,
439
+ removeBtn: Dt
440
+ }, qo = ({ variant: o = "default", onRemove: r, children: t, className: s }) => /* @__PURE__ */ i("span", { className: [W.tag, W[o], s ?? ""].filter(Boolean).join(" "), children: [
441
+ /* @__PURE__ */ e("span", { className: W.label, children: t }),
442
+ r && /* @__PURE__ */ e(
443
+ "button",
444
+ {
445
+ type: "button",
446
+ className: W.removeBtn,
447
+ onClick: r,
448
+ "aria-label": "Remove tag",
449
+ children: /* @__PURE__ */ e("svg", { width: "12", height: "12", viewBox: "0 0 12 12", fill: "none", "aria-hidden": "true", children: /* @__PURE__ */ e("path", { d: "M9 3L3 9M3 3l6 6", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round" }) })
450
+ }
451
+ )
452
+ ] }), It = "_avatar_1ggx9_1", Rt = "_xs_1ggx9_14", At = "_sm_1ggx9_15", St = "_md_1ggx9_16", Mt = "_lg_1ggx9_17", Ht = "_xl_1ggx9_18", Ut = "_img_1ggx9_20", Pt = "_initials_1ggx9_26", L = {
453
+ avatar: It,
454
+ xs: Rt,
455
+ sm: At,
456
+ md: St,
457
+ lg: Mt,
458
+ xl: Ht,
459
+ img: Ut,
460
+ initials: Pt
461
+ };
462
+ function Gt(o) {
463
+ return o.split(" ").map((r) => r[0]).slice(0, 2).join("").toUpperCase();
464
+ }
465
+ function Kt(o) {
466
+ const r = [
467
+ "#3B82F6",
468
+ "#8B5CF6",
469
+ "#EC4899",
470
+ "#F59E0B",
471
+ "#10B981",
472
+ "#06B6D4",
473
+ "#EF4444",
474
+ "#F97316"
475
+ ];
476
+ let t = 0;
477
+ for (let s = 0; s < o.length; s++)
478
+ t = o.charCodeAt(s) + ((t << 5) - t);
479
+ return r[Math.abs(t) % r.length];
480
+ }
481
+ const Co = ({
482
+ src: o,
483
+ alt: r,
484
+ name: t,
485
+ size: s = "md",
486
+ className: n
487
+ }) => {
488
+ const [a, c] = p.useState(!1), l = !o || a, d = t ? Gt(t) : "?", m = t ? Kt(t) : "#9CA3AF";
489
+ return /* @__PURE__ */ e(
490
+ "span",
491
+ {
492
+ className: [L.avatar, L[s], n ?? ""].filter(Boolean).join(" "),
493
+ style: l ? { backgroundColor: m } : void 0,
494
+ "aria-label": r ?? t,
495
+ role: "img",
496
+ children: l ? /* @__PURE__ */ e("span", { className: L.initials, "aria-hidden": "true", children: d }) : /* @__PURE__ */ e(
497
+ "img",
498
+ {
499
+ src: o,
500
+ alt: r ?? t ?? "",
501
+ className: L.img,
502
+ onError: () => c(!0)
503
+ }
504
+ )
505
+ }
506
+ );
507
+ }, Vt = "_card_tmi9g_1", Jt = "_padding_none_tmi9g_8", Qt = "_padding_sm_tmi9g_9", Xt = "_padding_md_tmi9g_10", Yt = "_padding_lg_tmi9g_11", Zt = "_shadow_none_tmi9g_14", Ot = "_shadow_sm_tmi9g_15", er = "_shadow_md_tmi9g_16", tr = "_shadow_lg_tmi9g_17", rr = "_bordered_tmi9g_20", or = "_hoverable_tmi9g_25", sr = "_header_tmi9g_35", nr = "_body_tmi9g_41", ar = "_footer_tmi9g_45", k = {
508
+ card: Vt,
509
+ padding_none: Jt,
510
+ padding_sm: Qt,
511
+ padding_md: Xt,
512
+ padding_lg: Yt,
513
+ shadow_none: Zt,
514
+ shadow_sm: Ot,
515
+ shadow_md: er,
516
+ shadow_lg: tr,
517
+ bordered: rr,
518
+ hoverable: or,
519
+ header: sr,
520
+ body: nr,
521
+ footer: ar
522
+ }, Eo = ({
523
+ padding: o = "md",
524
+ shadow: r = "sm",
525
+ bordered: t = !0,
526
+ hoverable: s = !1,
527
+ className: n,
528
+ children: a,
529
+ ...c
530
+ }) => /* @__PURE__ */ e(
531
+ "div",
532
+ {
533
+ className: [
534
+ k.card,
535
+ k[`padding_${o}`],
536
+ k[`shadow_${r}`],
537
+ t ? k.bordered : "",
538
+ s ? k.hoverable : "",
539
+ n ?? ""
540
+ ].filter(Boolean).join(" "),
541
+ ...c,
542
+ children: a
543
+ }
544
+ ), zo = ({
545
+ className: o,
546
+ children: r,
547
+ ...t
548
+ }) => /* @__PURE__ */ e("div", { className: [k.header, o ?? ""].filter(Boolean).join(" "), ...t, children: r }), Wo = ({
549
+ className: o,
550
+ children: r,
551
+ ...t
552
+ }) => /* @__PURE__ */ e("div", { className: [k.body, o ?? ""].filter(Boolean).join(" "), ...t, children: r }), Lo = ({
553
+ className: o,
554
+ children: r,
555
+ ...t
556
+ }) => /* @__PURE__ */ e("div", { className: [k.footer, o ?? ""].filter(Boolean).join(" "), ...t, children: r }), lr = "_overlay_1eqx2_1", cr = "_fadeIn_1eqx2_1", ir = "_modal_1eqx2_13", _r = "_slideUp_1eqx2_1", dr = "_sm_1eqx2_26", mr = "_md_1eqx2_27", pr = "_lg_1eqx2_28", ur = "_xl_1eqx2_29", hr = "_full_1eqx2_30", gr = "_header_1eqx2_32", fr = "_title_1eqx2_41", xr = "_closeBtn_1eqx2_48", br = "_body_1eqx2_68", vr = "_footer_1eqx2_74", B = {
557
+ overlay: lr,
558
+ fadeIn: cr,
559
+ modal: ir,
560
+ slideUp: _r,
561
+ sm: dr,
562
+ md: mr,
563
+ lg: pr,
564
+ xl: ur,
565
+ full: hr,
566
+ header: gr,
567
+ title: fr,
568
+ closeBtn: xr,
569
+ body: br,
570
+ footer: vr
571
+ }, Do = ({
572
+ isOpen: o,
573
+ onClose: r,
574
+ title: t,
575
+ size: s = "md",
576
+ closeOnOverlayClick: n = !0,
577
+ closeOnEscape: a = !0,
578
+ children: c,
579
+ footer: l,
580
+ className: d
581
+ }) => (p.useEffect(() => {
582
+ if (!a) return;
583
+ const m = (u) => {
584
+ u.key === "Escape" && o && r();
585
+ };
586
+ return document.addEventListener("keydown", m), () => document.removeEventListener("keydown", m);
587
+ }, [o, r, a]), p.useEffect(() => (o ? document.body.style.overflow = "hidden" : document.body.style.overflow = "", () => {
588
+ document.body.style.overflow = "";
589
+ }), [o]), o ? /* @__PURE__ */ e(
590
+ "div",
591
+ {
592
+ className: B.overlay,
593
+ onClick: n ? r : void 0,
594
+ "aria-modal": "true",
595
+ role: "dialog",
596
+ "aria-labelledby": t ? "modal-title" : void 0,
597
+ children: /* @__PURE__ */ i(
598
+ "div",
599
+ {
600
+ className: [B.modal, B[s], d ?? ""].filter(Boolean).join(" "),
601
+ onClick: (m) => m.stopPropagation(),
602
+ children: [
603
+ t && /* @__PURE__ */ i("div", { className: B.header, children: [
604
+ /* @__PURE__ */ e("h2", { id: "modal-title", className: B.title, children: t }),
605
+ /* @__PURE__ */ e(
606
+ "button",
607
+ {
608
+ type: "button",
609
+ className: B.closeBtn,
610
+ onClick: r,
611
+ "aria-label": "Close modal",
612
+ children: /* @__PURE__ */ e("svg", { width: "20", height: "20", viewBox: "0 0 20 20", fill: "none", "aria-hidden": "true", children: /* @__PURE__ */ e("path", { d: "M15 5L5 15M5 5l10 10", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round" }) })
613
+ }
614
+ )
615
+ ] }),
616
+ /* @__PURE__ */ e("div", { className: B.body, children: c }),
617
+ l && /* @__PURE__ */ e("div", { className: B.footer, children: l })
618
+ ]
619
+ }
620
+ )
621
+ }
622
+ ) : null), wr = "_container_7pb5x_1", yr = "_toast_7pb5x_12", $r = "_slideInRight_7pb5x_1", Nr = "_info_7pb5x_28", Br = "_success_7pb5x_29", Fr = "_warning_7pb5x_30", kr = "_danger_7pb5x_31", Tr = "_icon_7pb5x_33", jr = "_content_7pb5x_45", qr = "_title_7pb5x_50", Cr = "_message_7pb5x_57", Er = "_closeBtn_7pb5x_64", F = {
623
+ container: wr,
624
+ toast: yr,
625
+ slideInRight: $r,
626
+ info: Nr,
627
+ success: Br,
628
+ warning: Fr,
629
+ danger: kr,
630
+ icon: Tr,
631
+ content: jr,
632
+ title: qr,
633
+ message: Cr,
634
+ closeBtn: Er
635
+ }, zr = {
636
+ info: /* @__PURE__ */ i("svg", { width: "16", height: "16", viewBox: "0 0 16 16", fill: "none", "aria-hidden": "true", children: [
637
+ /* @__PURE__ */ e("circle", { cx: "8", cy: "8", r: "7", stroke: "currentColor", strokeWidth: "1.5" }),
638
+ /* @__PURE__ */ e("path", { d: "M8 5v1M8 8v3", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round" })
639
+ ] }),
640
+ success: /* @__PURE__ */ i("svg", { width: "16", height: "16", viewBox: "0 0 16 16", fill: "none", "aria-hidden": "true", children: [
641
+ /* @__PURE__ */ e("circle", { cx: "8", cy: "8", r: "7", stroke: "currentColor", strokeWidth: "1.5" }),
642
+ /* @__PURE__ */ e("path", { d: "M5 8l2 2 4-4", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round", strokeLinejoin: "round" })
643
+ ] }),
644
+ warning: /* @__PURE__ */ i("svg", { width: "16", height: "16", viewBox: "0 0 16 16", fill: "none", "aria-hidden": "true", children: [
645
+ /* @__PURE__ */ e("path", { d: "M8 2L15 14H1L8 2z", stroke: "currentColor", strokeWidth: "1.5", strokeLinejoin: "round" }),
646
+ /* @__PURE__ */ e("path", { d: "M8 6v3M8 11v1", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round" })
647
+ ] }),
648
+ danger: /* @__PURE__ */ i("svg", { width: "16", height: "16", viewBox: "0 0 16 16", fill: "none", "aria-hidden": "true", children: [
649
+ /* @__PURE__ */ e("circle", { cx: "8", cy: "8", r: "7", stroke: "currentColor", strokeWidth: "1.5" }),
650
+ /* @__PURE__ */ e("path", { d: "M5.5 5.5l5 5M10.5 5.5l-5 5", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round" })
651
+ ] })
652
+ }, Wr = ({
653
+ id: o,
654
+ variant: r = "info",
655
+ title: t,
656
+ message: s,
657
+ duration: n = 4e3,
658
+ onDismiss: a
659
+ }) => (p.useEffect(() => {
660
+ if (n <= 0) return;
661
+ const c = setTimeout(() => a(o), n);
662
+ return () => clearTimeout(c);
663
+ }, [o, n, a]), /* @__PURE__ */ i(
664
+ "div",
665
+ {
666
+ role: "alert",
667
+ "aria-live": "polite",
668
+ className: [F.toast, F[r]].join(" "),
669
+ children: [
670
+ /* @__PURE__ */ e("span", { className: F.icon, children: zr[r] }),
671
+ /* @__PURE__ */ i("div", { className: F.content, children: [
672
+ t && /* @__PURE__ */ e("p", { className: F.title, children: t }),
673
+ /* @__PURE__ */ e("p", { className: F.message, children: s })
674
+ ] }),
675
+ /* @__PURE__ */ e(
676
+ "button",
677
+ {
678
+ type: "button",
679
+ className: F.closeBtn,
680
+ onClick: () => a(o),
681
+ "aria-label": "Dismiss notification",
682
+ children: /* @__PURE__ */ e("svg", { width: "14", height: "14", viewBox: "0 0 14 14", fill: "none", "aria-hidden": "true", children: /* @__PURE__ */ e("path", { d: "M11 3L3 11M3 3l8 8", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round" }) })
683
+ }
684
+ )
685
+ ]
686
+ }
687
+ )), A = p.createContext(null), Io = ({ children: o }) => {
688
+ const [r, t] = p.useState([]), s = p.useCallback((a) => {
689
+ const c = Math.random().toString(36).slice(2);
690
+ t((l) => [...l, { ...a, id: c }]);
691
+ }, []), n = p.useCallback((a) => {
692
+ t((c) => c.filter((l) => l.id !== a));
693
+ }, []);
694
+ return /* @__PURE__ */ i(A.Provider, { value: { addToast: s, removeToast: n }, children: [
695
+ o,
696
+ /* @__PURE__ */ e("div", { className: F.container, "aria-live": "polite", "aria-label": "Notifications", children: r.map((a) => /* @__PURE__ */ e(Wr, { ...a, onDismiss: n }, a.id)) })
697
+ ] });
698
+ };
699
+ function Ro() {
700
+ const o = p.useContext(A);
701
+ if (!o) throw new Error("useToast must be used within ToastProvider");
702
+ return o;
703
+ }
704
+ const Lr = "_wrapper_mtqtk_1", Dr = "_tooltip_mtqtk_6", Ir = "_fadeIn_mtqtk_1", Rr = "_top_mtqtk_25", Ar = "_bottom_mtqtk_26", Sr = "_left_mtqtk_27", Mr = "_right_mtqtk_28", Hr = "_arrow_mtqtk_31", D = {
705
+ wrapper: Lr,
706
+ tooltip: Dr,
707
+ fadeIn: Ir,
708
+ top: Rr,
709
+ bottom: Ar,
710
+ left: Sr,
711
+ right: Mr,
712
+ arrow: Hr
713
+ }, Ao = ({
714
+ content: o,
715
+ placement: r = "top",
716
+ delay: t = 300,
717
+ children: s,
718
+ className: n
719
+ }) => {
720
+ const [a, c] = p.useState(!1), l = p.useRef(void 0), d = () => {
721
+ l.current = setTimeout(() => c(!0), t);
722
+ }, m = () => {
723
+ clearTimeout(l.current), c(!1);
724
+ };
725
+ return /* @__PURE__ */ i(
726
+ "span",
727
+ {
728
+ className: D.wrapper,
729
+ onMouseEnter: d,
730
+ onMouseLeave: m,
731
+ onFocus: d,
732
+ onBlur: m,
733
+ children: [
734
+ s,
735
+ a && /* @__PURE__ */ i(
736
+ "span",
737
+ {
738
+ role: "tooltip",
739
+ className: [D.tooltip, D[r], n ?? ""].filter(Boolean).join(" "),
740
+ children: [
741
+ o,
742
+ /* @__PURE__ */ e("span", { className: D.arrow, "aria-hidden": "true" })
743
+ ]
744
+ }
745
+ )
746
+ ]
747
+ }
748
+ );
749
+ }, Ur = "_spinner_zltzo_1", Pr = "_spin_zltzo_1", Gr = "_sm_zltzo_10", Kr = "_md_zltzo_11", Vr = "_lg_zltzo_12", Jr = "_xl_zltzo_13", Qr = "_primary_zltzo_16", Xr = "_white_zltzo_17", Yr = "_neutral_zltzo_18", I = {
750
+ spinner: Ur,
751
+ spin: Pr,
752
+ sm: Gr,
753
+ md: Kr,
754
+ lg: Vr,
755
+ xl: Jr,
756
+ primary: Qr,
757
+ white: Xr,
758
+ neutral: Yr
759
+ }, So = ({
760
+ size: o = "md",
761
+ variant: r = "primary",
762
+ label: t = "Loading...",
763
+ className: s
764
+ }) => /* @__PURE__ */ e(
765
+ "span",
766
+ {
767
+ role: "status",
768
+ "aria-label": t,
769
+ className: [I.spinner, I[o], I[r], s ?? ""].filter(Boolean).join(" "),
770
+ children: /* @__PURE__ */ e("span", { className: "sr-only", children: t })
771
+ }
772
+ ), Zr = "_h1_7jlcq_2", Or = "_h2_7jlcq_3", eo = "_h3_7jlcq_4", to = "_h4_7jlcq_5", ro = "_h5_7jlcq_6", oo = "_h6_7jlcq_7", so = "_text_7jlcq_10", no = "_body_7jlcq_11", ao = "_body_sm_7jlcq_12", lo = "_caption_7jlcq_13", co = "_overline_7jlcq_14", io = "_color_primary_7jlcq_17", _o = "_color_secondary_7jlcq_18", mo = "_color_tertiary_7jlcq_19", po = "_color_inverse_7jlcq_20", uo = "_color_danger_7jlcq_21", ho = "_color_success_7jlcq_22", go = "_weight_regular_7jlcq_25", fo = "_weight_medium_7jlcq_26", xo = "_weight_semibold_7jlcq_27", bo = "_weight_bold_7jlcq_28", vo = "_truncate_7jlcq_31", q = {
773
+ h1: Zr,
774
+ h2: Or,
775
+ h3: eo,
776
+ h4: to,
777
+ h5: ro,
778
+ h6: oo,
779
+ text: so,
780
+ body: no,
781
+ body_sm: ao,
782
+ caption: lo,
783
+ overline: co,
784
+ color_primary: io,
785
+ color_secondary: _o,
786
+ color_tertiary: mo,
787
+ color_inverse: po,
788
+ color_danger: uo,
789
+ color_success: ho,
790
+ weight_regular: go,
791
+ weight_medium: fo,
792
+ weight_semibold: xo,
793
+ weight_bold: bo,
794
+ truncate: vo
795
+ }, Mo = ({
796
+ as: o,
797
+ level: r = "h2",
798
+ className: t,
799
+ children: s,
800
+ ...n
801
+ }) => /* @__PURE__ */ e(
802
+ o ?? r,
803
+ {
804
+ className: [q[r], t ?? ""].filter(Boolean).join(" "),
805
+ ...n,
806
+ children: s
807
+ }
808
+ ), Ho = ({
809
+ as: o = "p",
810
+ variant: r = "body",
811
+ color: t = "primary",
812
+ weight: s,
813
+ truncate: n = !1,
814
+ className: a,
815
+ children: c,
816
+ ...l
817
+ }) => /* @__PURE__ */ e(
818
+ o,
819
+ {
820
+ className: [
821
+ q.text,
822
+ q[r.replace("-", "_")],
823
+ q[`color_${t}`],
824
+ s ? q[`weight_${s}`] : "",
825
+ n ? q.truncate : "",
826
+ a ?? ""
827
+ ].filter(Boolean).join(" "),
828
+ ...l,
829
+ children: c
830
+ }
831
+ ), wo = "_horizontal_190o0_1", yo = "_vertical_190o0_8", $o = "_withLabel_190o0_17", No = "_line_190o0_23", Bo = "_labelText_190o0_29", j = {
832
+ horizontal: wo,
833
+ vertical: yo,
834
+ withLabel: $o,
835
+ line: No,
836
+ labelText: Bo
837
+ }, Uo = ({
838
+ orientation: o = "horizontal",
839
+ label: r,
840
+ className: t
841
+ }) => o === "vertical" ? /* @__PURE__ */ e(
842
+ "span",
843
+ {
844
+ role: "separator",
845
+ "aria-orientation": "vertical",
846
+ className: [j.vertical, t ?? ""].filter(Boolean).join(" ")
847
+ }
848
+ ) : r ? /* @__PURE__ */ i(
849
+ "div",
850
+ {
851
+ role: "separator",
852
+ className: [j.withLabel, t ?? ""].filter(Boolean).join(" "),
853
+ children: [
854
+ /* @__PURE__ */ e("span", { className: j.line }),
855
+ /* @__PURE__ */ e("span", { className: j.labelText, children: r }),
856
+ /* @__PURE__ */ e("span", { className: j.line })
857
+ ]
858
+ }
859
+ ) : /* @__PURE__ */ e(
860
+ "hr",
861
+ {
862
+ role: "separator",
863
+ className: [j.horizontal, t ?? ""].filter(Boolean).join(" ")
864
+ }
865
+ ), _ = {
866
+ // Neutral
867
+ white: "#FFFFFF",
868
+ black: "#000000",
869
+ neutral: {
870
+ 50: "#F9FAFB",
871
+ 100: "#F3F4F6",
872
+ 200: "#E5E7EB",
873
+ 300: "#D1D5DB",
874
+ 400: "#9CA3AF",
875
+ 500: "#6B7280",
876
+ 600: "#4B5563",
877
+ 700: "#374151",
878
+ 800: "#1F2937",
879
+ 900: "#111827",
880
+ 950: "#030712"
881
+ },
882
+ // Primary (Blue)
883
+ primary: {
884
+ 50: "#EFF6FF",
885
+ 100: "#DBEAFE",
886
+ 200: "#BFDBFE",
887
+ 300: "#93C5FD",
888
+ 400: "#60A5FA",
889
+ 500: "#3B82F6",
890
+ 600: "#2563EB",
891
+ 700: "#1D4ED8",
892
+ 800: "#1E40AF",
893
+ 900: "#1E3A8A"
894
+ },
895
+ // Success (Green)
896
+ success: {
897
+ 50: "#F0FDF4",
898
+ 100: "#DCFCE7",
899
+ 200: "#BBF7D0",
900
+ 300: "#86EFAC",
901
+ 400: "#4ADE80",
902
+ 500: "#22C55E",
903
+ 600: "#16A34A",
904
+ 700: "#15803D",
905
+ 800: "#166534",
906
+ 900: "#14532D"
907
+ },
908
+ // Warning (Amber)
909
+ warning: {
910
+ 50: "#FFFBEB",
911
+ 100: "#FEF3C7",
912
+ 200: "#FDE68A",
913
+ 300: "#FCD34D",
914
+ 400: "#FBBF24",
915
+ 500: "#F59E0B",
916
+ 600: "#D97706",
917
+ 700: "#B45309",
918
+ 800: "#92400E",
919
+ 900: "#78350F"
920
+ },
921
+ // Danger (Red)
922
+ danger: {
923
+ 50: "#FFF1F2",
924
+ 100: "#FFE4E6",
925
+ 200: "#FECDD3",
926
+ 300: "#FDA4AF",
927
+ 400: "#FB7185",
928
+ 500: "#F43F5E",
929
+ 600: "#E11D48",
930
+ 700: "#BE123C",
931
+ 800: "#9F1239",
932
+ 900: "#881337"
933
+ },
934
+ // Info (Cyan)
935
+ info: {
936
+ 50: "#ECFEFF",
937
+ 100: "#CFFAFE",
938
+ 200: "#A5F3FC",
939
+ 300: "#67E8F9",
940
+ 400: "#22D3EE",
941
+ 500: "#06B6D4",
942
+ 600: "#0891B2",
943
+ 700: "#0E7490",
944
+ 800: "#155E75",
945
+ 900: "#164E63"
946
+ }
947
+ }, Po = {
948
+ text: {
949
+ primary: _.neutral[900],
950
+ secondary: _.neutral[600],
951
+ tertiary: _.neutral[400],
952
+ disabled: _.neutral[300],
953
+ inverse: _.white,
954
+ link: _.primary[600],
955
+ linkHover: _.primary[700]
956
+ },
957
+ background: {
958
+ primary: _.white,
959
+ secondary: _.neutral[50],
960
+ tertiary: _.neutral[100],
961
+ overlay: "rgba(0, 0, 0, 0.5)",
962
+ inverse: _.neutral[900]
963
+ },
964
+ border: {
965
+ default: _.neutral[200],
966
+ strong: _.neutral[300],
967
+ focus: _.primary[500]
968
+ },
969
+ action: {
970
+ primary: _.primary[600],
971
+ primaryHover: _.primary[700],
972
+ primaryActive: _.primary[800],
973
+ primaryDisabled: _.primary[200]
974
+ },
975
+ status: {
976
+ success: _.success[500],
977
+ successBg: _.success[50],
978
+ warning: _.warning[500],
979
+ warningBg: _.warning[50],
980
+ danger: _.danger[500],
981
+ dangerBg: _.danger[50],
982
+ info: _.info[500],
983
+ infoBg: _.info[50]
984
+ }
985
+ }, Go = {
986
+ sans: [
987
+ "-apple-system",
988
+ "BlinkMacSystemFont",
989
+ '"Segoe UI"',
990
+ "Roboto",
991
+ '"Helvetica Neue"',
992
+ "Arial",
993
+ '"Noto Sans KR"',
994
+ "sans-serif"
995
+ ].join(", "),
996
+ mono: ['"SFMono-Regular"', "Consolas", '"Liberation Mono"', "Menlo", "monospace"].join(", ")
997
+ }, Ko = {
998
+ xs: "0.75rem",
999
+ // 12px
1000
+ sm: "0.875rem",
1001
+ // 14px
1002
+ md: "1rem",
1003
+ // 16px
1004
+ lg: "1.125rem",
1005
+ // 18px
1006
+ xl: "1.25rem",
1007
+ // 20px
1008
+ "2xl": "1.5rem",
1009
+ // 24px
1010
+ "3xl": "1.875rem",
1011
+ // 30px
1012
+ "4xl": "2.25rem",
1013
+ // 36px
1014
+ "5xl": "3rem"
1015
+ // 48px
1016
+ }, Vo = {
1017
+ regular: 400,
1018
+ medium: 500,
1019
+ semibold: 600,
1020
+ bold: 700
1021
+ }, Jo = {
1022
+ none: 1,
1023
+ tight: 1.25,
1024
+ snug: 1.375,
1025
+ normal: 1.5,
1026
+ relaxed: 1.625,
1027
+ loose: 2
1028
+ }, Qo = {
1029
+ tighter: "-0.05em",
1030
+ tight: "-0.025em",
1031
+ normal: "0em",
1032
+ wide: "0.025em",
1033
+ wider: "0.05em",
1034
+ widest: "0.1em"
1035
+ }, Xo = {
1036
+ 0: "0px",
1037
+ 0.5: "0.125rem",
1038
+ // 2px
1039
+ 1: "0.25rem",
1040
+ // 4px
1041
+ 1.5: "0.375rem",
1042
+ // 6px
1043
+ 2: "0.5rem",
1044
+ // 8px
1045
+ 2.5: "0.625rem",
1046
+ // 10px
1047
+ 3: "0.75rem",
1048
+ // 12px
1049
+ 3.5: "0.875rem",
1050
+ // 14px
1051
+ 4: "1rem",
1052
+ // 16px
1053
+ 5: "1.25rem",
1054
+ // 20px
1055
+ 6: "1.5rem",
1056
+ // 24px
1057
+ 7: "1.75rem",
1058
+ // 28px
1059
+ 8: "2rem",
1060
+ // 32px
1061
+ 9: "2.25rem",
1062
+ // 36px
1063
+ 10: "2.5rem",
1064
+ // 40px
1065
+ 12: "3rem",
1066
+ // 48px
1067
+ 14: "3.5rem",
1068
+ // 56px
1069
+ 16: "4rem",
1070
+ // 64px
1071
+ 20: "5rem",
1072
+ // 80px
1073
+ 24: "6rem",
1074
+ // 96px
1075
+ 32: "8rem"
1076
+ // 128px
1077
+ }, Yo = {
1078
+ none: "0px",
1079
+ sm: "0.125rem",
1080
+ // 2px
1081
+ md: "0.375rem",
1082
+ // 6px
1083
+ lg: "0.5rem",
1084
+ // 8px
1085
+ xl: "0.75rem",
1086
+ // 12px
1087
+ "2xl": "1rem",
1088
+ // 16px
1089
+ "3xl": "1.5rem",
1090
+ // 24px
1091
+ full: "9999px"
1092
+ }, Zo = {
1093
+ none: "none",
1094
+ sm: "0 1px 2px 0 rgba(0, 0, 0, 0.05)",
1095
+ md: "0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -2px rgba(0, 0, 0, 0.1)",
1096
+ lg: "0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -4px rgba(0, 0, 0, 0.1)",
1097
+ xl: "0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 8px 10px -6px rgba(0, 0, 0, 0.1)",
1098
+ "2xl": "0 25px 50px -12px rgba(0, 0, 0, 0.25)",
1099
+ inner: "inset 0 2px 4px 0 rgba(0, 0, 0, 0.05)",
1100
+ focus: "0 0 0 3px rgba(59, 130, 246, 0.4)",
1101
+ focusDanger: "0 0 0 3px rgba(244, 63, 94, 0.4)"
1102
+ }, Oo = {
1103
+ sm: "640px",
1104
+ md: "768px",
1105
+ lg: "1024px",
1106
+ xl: "1280px",
1107
+ "2xl": "1536px"
1108
+ }, es = {
1109
+ hide: -1,
1110
+ base: 0,
1111
+ raised: 1,
1112
+ dropdown: 1e3,
1113
+ sticky: 1100,
1114
+ overlay: 1200,
1115
+ modal: 1300,
1116
+ popover: 1400,
1117
+ toast: 1500,
1118
+ tooltip: 1600
1119
+ };
1120
+ export {
1121
+ Co as Avatar,
1122
+ jo as Badge,
1123
+ te as Button,
1124
+ Eo as Card,
1125
+ Wo as CardBody,
1126
+ Lo as CardFooter,
1127
+ zo as CardHeader,
1128
+ Qe as Checkbox,
1129
+ Uo as Divider,
1130
+ Mo as Heading,
1131
+ ge as Input,
1132
+ Do as Modal,
1133
+ R as Radio,
1134
+ To as RadioGroup,
1135
+ Ae as Select,
1136
+ So as Spinner,
1137
+ qo as Tag,
1138
+ Ho as Text,
1139
+ Be as Textarea,
1140
+ Wr as Toast,
1141
+ Io as ToastProvider,
1142
+ bt as Toggle,
1143
+ Ao as Tooltip,
1144
+ Yo as borderRadius,
1145
+ Oo as breakpoints,
1146
+ Go as fontFamily,
1147
+ Ko as fontSize,
1148
+ Vo as fontWeight,
1149
+ Qo as letterSpacing,
1150
+ Jo as lineHeight,
1151
+ _ as palette,
1152
+ Po as semanticColors,
1153
+ Zo as shadows,
1154
+ Xo as spacing,
1155
+ Ro as useToast,
1156
+ es as zIndex
1157
+ };