@dimasbaguspm/versaur 0.0.12 → 0.0.13

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 (38) hide show
  1. package/dist/js/bottom-sheet-CBLNEX4F.js +281 -0
  2. package/dist/js/bottom-sheet.atoms-DFMOaMsU.js +78 -0
  3. package/dist/js/{calendar-De5dCVnE.js → calendar-B9rIZCdo.js} +318 -163
  4. package/dist/js/{index-DOdDlCoL.js → cn-BKwT3erk.js} +463 -788
  5. package/dist/js/enforce-subpath-import.js +1 -0
  6. package/dist/js/feedbacks/index.js +1 -1
  7. package/dist/js/{form-layout-BBDs1Y8m.js → form-layout-PLH-7bWq.js} +58 -57
  8. package/dist/js/forms/index.js +1 -1
  9. package/dist/js/index-Dmu_fHni.js +329 -0
  10. package/dist/js/index.js +32 -31
  11. package/dist/js/layouts/index.js +1 -1
  12. package/dist/js/{menu-Du409VIG.js → menu-oRrbZAAy.js} +56 -60
  13. package/dist/js/navigation/index.js +1 -1
  14. package/dist/js/overlays/index.js +5 -4
  15. package/dist/js/primitive/index.js +2 -2
  16. package/dist/js/{skeleton-BNZyaRjo.js → skeleton-Ma-Fcs06.js} +6 -5
  17. package/dist/js/{switch-input-B-pwBWbi.js → switch-input-o8oO4Rf4.js} +482 -435
  18. package/dist/js/{tabs-BbOkYchB.js → tabs-DSeR5XxX.js} +6 -5
  19. package/dist/js/{tile-6SeBYc08.js → tile-8hqVMf2m.js} +110 -139
  20. package/dist/types/forms/chip-input/types.d.ts +16 -0
  21. package/dist/types/forms/date-range-picker-input/date-range-picker-input.d.ts +10 -0
  22. package/dist/types/forms/date-range-picker-input/index.d.ts +2 -0
  23. package/dist/types/forms/date-range-picker-input/types.d.ts +64 -0
  24. package/dist/types/forms/date-range-picker-input/use-date-range-picker.d.ts +13 -0
  25. package/dist/types/overlays/bottom-sheet/bottom-sheet.atoms.d.ts +17 -0
  26. package/dist/types/overlays/bottom-sheet/bottom-sheet.d.ts +7 -0
  27. package/dist/types/overlays/bottom-sheet/index.d.ts +2 -0
  28. package/dist/types/overlays/bottom-sheet/types.d.ts +22 -0
  29. package/dist/types/overlays/drawer/drawer.atoms.d.ts +2 -1
  30. package/dist/types/overlays/drawer/drawer.d.ts +1 -0
  31. package/dist/types/overlays/drawer/types.d.ts +6 -3
  32. package/dist/types/overlays/index.d.ts +1 -0
  33. package/dist/types/primitive/calendar/calendar.atoms.d.ts +13 -0
  34. package/dist/types/primitive/calendar/index.d.ts +1 -1
  35. package/dist/types/primitive/calendar/types.d.ts +38 -4
  36. package/dist/types/primitive/calendar/use-calendar.d.ts +18 -0
  37. package/package.json +1 -1
  38. package/dist/js/drawer-Cn7sreJG.js +0 -221
@@ -1,5 +1,6 @@
1
- import { c as d, j as o, a as u } from "./index-DOdDlCoL.js";
1
+ import { a as d, j as o } from "./index-Dmu_fHni.js";
2
2
  import { forwardRef as f, createContext as x, useContext as g, useState as p, useLayoutEffect as y, useRef as h } from "react";
3
+ import { c as u } from "./cn-BKwT3erk.js";
3
4
  const w = d(
4
5
  "flex items-center gap-2 text-sm text-tertiary",
5
6
  {
@@ -49,7 +50,7 @@ const C = f(
49
50
  function({ children: t, "aria-label": r = "Breadcrumb", ...a }, n) {
50
51
  return /* @__PURE__ */ o.jsx("nav", { "aria-label": r, ...a, children: /* @__PURE__ */ o.jsx("ol", { ref: n, className: w(), children: t }) });
51
52
  }
52
- ), O = Object.assign(C, {
53
+ ), P = Object.assign(C, {
53
54
  Item: I,
54
55
  Separator: V
55
56
  }), v = x(null), m = () => {
@@ -301,10 +302,10 @@ const k = ({
301
302
  ]
302
303
  }
303
304
  ) });
304
- }, P = Object.assign(k, {
305
+ }, q = Object.assign(k, {
305
306
  Trigger: R
306
307
  });
307
308
  export {
308
- O as B,
309
- P as T
309
+ P as B,
310
+ q as T
310
311
  };
@@ -1,9 +1,8 @@
1
- import { c as f, j as a, a as l } from "./index-DOdDlCoL.js";
2
- import * as u from "react";
3
- import { forwardRef as g, useState as v, useEffect as w, useCallback as y, useRef as S, createContext as V, useContext as T, useMemo as B } from "react";
4
- import { a as A } from "./calendar-De5dCVnE.js";
5
- import { X as k } from "lucide-react";
6
- const I = f(
1
+ import { a as b, j as a } from "./index-Dmu_fHni.js";
2
+ import * as g from "react";
3
+ import { forwardRef as d, useState as v, useEffect as x, useCallback as y, useRef as S, createContext as T, useContext as V, useMemo as A } from "react";
4
+ import { c as l } from "./cn-BKwT3erk.js";
5
+ const B = b(
7
6
  "relative flex items-center gap-2 rounded-md p-2 text-sm transition-all duration-200",
8
7
  {
9
8
  variants: {
@@ -124,7 +123,7 @@ const I = f(
124
123
  color: "neutral"
125
124
  }
126
125
  }
127
- ), R = f(
126
+ ), R = b(
128
127
  "flex-shrink-0 flex justify-center items-center ",
129
128
  {
130
129
  variants: {
@@ -138,9 +137,9 @@ const I = f(
138
137
  size: "md"
139
138
  }
140
139
  }
141
- ), C = g(
140
+ ), C = d(
142
141
  ({ className: e, children: r, ...t }, s) => /* @__PURE__ */ a.jsx("div", { ref: s, className: l(R(), e), ...t, children: r })
143
- ), O = g(
142
+ ), k = d(
144
143
  ({
145
144
  variant: e = "default",
146
145
  color: r = "neutral",
@@ -148,12 +147,12 @@ const I = f(
148
147
  className: s,
149
148
  children: o,
150
149
  ...n
151
- }, d) => /* @__PURE__ */ a.jsxs(
150
+ }, u) => /* @__PURE__ */ a.jsxs(
152
151
  "div",
153
152
  {
154
- ref: d,
153
+ ref: u,
155
154
  role: "alert",
156
- className: l(I({ variant: e, color: r }), s),
155
+ className: l(B({ variant: e, color: r }), s),
157
156
  ...n,
158
157
  children: [
159
158
  t && /* @__PURE__ */ a.jsx(C, { children: t }),
@@ -161,9 +160,9 @@ const I = f(
161
160
  ]
162
161
  }
163
162
  )
164
- ), ge = Object.assign(O, {
163
+ ), ie = Object.assign(k, {
165
164
  Icon: C
166
- }), q = f(
165
+ }), I = b(
167
166
  "inline-flex items-center justify-center font-medium text-white overflow-hidden transition-all duration-200 select-none relative",
168
167
  {
169
168
  variants: {
@@ -199,9 +198,9 @@ const I = f(
199
198
  shape: "circle"
200
199
  }
201
200
  }
202
- ), F = f(
201
+ ), O = b(
203
202
  "absolute inset-0 h-full w-full object-cover"
204
- ), L = g(
203
+ ), q = d(
205
204
  ({
206
205
  variant: e = "primary",
207
206
  size: r = "md",
@@ -209,45 +208,45 @@ const I = f(
209
208
  className: s,
210
209
  children: o,
211
210
  ...n
212
- }, d) => /* @__PURE__ */ a.jsx(
211
+ }, u) => /* @__PURE__ */ a.jsx(
213
212
  "div",
214
213
  {
215
- ref: d,
216
- className: l(q({ variant: e, size: r, shape: t }), s),
214
+ ref: u,
215
+ className: l(I({ variant: e, size: r, shape: t }), s),
217
216
  ...n,
218
217
  children: o
219
218
  }
220
219
  )
221
- ), M = g(
220
+ ), F = d(
222
221
  ({ src: e, alt: r, className: t, onError: s, ...o }, n) => {
223
- const [d, i] = v(!1);
224
- w(() => {
222
+ const [u, i] = v(!1);
223
+ x(() => {
225
224
  i(!1);
226
225
  }, [e]);
227
- const b = y(
226
+ const f = y(
228
227
  (c) => {
229
228
  i(!0), s?.(c);
230
229
  },
231
230
  [s]
232
231
  );
233
- return d ? null : /* @__PURE__ */ a.jsx(
232
+ return u ? null : /* @__PURE__ */ a.jsx(
234
233
  "img",
235
234
  {
236
235
  ref: n,
237
236
  src: e,
238
237
  alt: r,
239
- className: l(F(), t),
240
- onError: b,
238
+ className: l(O(), t),
239
+ onError: f,
241
240
  ...o
242
241
  }
243
242
  );
244
243
  }
245
- ), ue = Object.assign(L, {
244
+ ), le = Object.assign(q, {
246
245
  /**
247
246
  * AvatarImage sub-component for displaying images with fallback behavior
248
247
  */
249
- Image: M
250
- }), P = f(
248
+ Image: F
249
+ }), L = b(
251
250
  "inline-flex items-center justify-center font-medium transition-all duration-200 select-none gap-1 min-h-[1.25rem]",
252
251
  {
253
252
  variants: {
@@ -400,7 +399,7 @@ const I = f(
400
399
  iconOnly: !1
401
400
  }
402
401
  }
403
- ), H = g(
402
+ ), M = d(
404
403
  ({
405
404
  variant: e = "default",
406
405
  shape: r = "square",
@@ -408,9 +407,9 @@ const I = f(
408
407
  size: s = "md",
409
408
  iconLeft: o,
410
409
  iconRight: n,
411
- className: d,
410
+ className: u,
412
411
  children: i,
413
- ...b
412
+ ...f
414
413
  }, c) => {
415
414
  const h = !(i != null && i !== "") && !!(o || n);
416
415
  return /* @__PURE__ */ a.jsx(
@@ -418,16 +417,16 @@ const I = f(
418
417
  {
419
418
  ref: c,
420
419
  className: l(
421
- P({
420
+ L({
422
421
  variant: e,
423
422
  color: t,
424
423
  shape: r,
425
424
  size: s,
426
425
  iconOnly: h
427
426
  }),
428
- d
427
+ u
429
428
  ),
430
- ...b,
429
+ ...f,
431
430
  children: h ? (
432
431
  // Icon-only mode: display only the icon
433
432
  o || n
@@ -443,8 +442,8 @@ const I = f(
443
442
  );
444
443
  }
445
444
  );
446
- H.displayName = "Badge";
447
- const E = (e) => /* @__PURE__ */ u.createElement("svg", { width: 32, height: 32, viewBox: "0 0 32 32", fill: "none", xmlns: "http://www.w3.org/2000/svg", ...e }, /* @__PURE__ */ u.createElement("title", null, "Spenicle"), /* @__PURE__ */ u.createElement("rect", { width: 32, height: 32, fill: "#e07a5f" }), /* @__PURE__ */ u.createElement("g", { transform: "translate(16, 16) scale(0.625) translate(-12, -12)" }, /* @__PURE__ */ u.createElement("path", { d: "M4 14a1 1 0 0 1-.78-1.63l9.9-10.2a.5.5 0 0 1 .86.46l-1.92 6.02A1 1 0 0 0 13 10h7a1 1 0 0 1 .78 1.63l-9.9 10.2a.5.5 0 0 1-.86-.46l1.92-6.02A1 1 0 0 0 11 14z", fill: "white" }))), $ = (e) => /* @__PURE__ */ u.createElement("svg", { width: 32, height: 32, viewBox: "0 0 32 32", fill: "none", xmlns: "http://www.w3.org/2000/svg", ...e }, /* @__PURE__ */ u.createElement("title", null, "Spenicle"), /* @__PURE__ */ u.createElement("rect", { width: 32, height: 32, rx: 8, fill: "#e07a5f" }), /* @__PURE__ */ u.createElement("g", { transform: "translate(16, 16) scale(0.625) translate(-12, -12)" }, /* @__PURE__ */ u.createElement("path", { d: "M4 14a1 1 0 0 1-.78-1.63l9.9-10.2a.5.5 0 0 1 .86.46l-1.92 6.02A1 1 0 0 0 13 10h7a1 1 0 0 1 .78 1.63l-9.9 10.2a.5.5 0 0 1-.86-.46l1.92-6.02A1 1 0 0 0 11 14z", fill: "white" }))), X = (e) => /* @__PURE__ */ u.createElement("svg", { width: 32, height: 32, viewBox: "0 0 32 32", fill: "none", xmlns: "http://www.w3.org/2000/svg", ...e }, /* @__PURE__ */ u.createElement("title", null, "Spenicle"), /* @__PURE__ */ u.createElement("circle", { cx: 16, cy: 16, r: 16, fill: "#e07a5f" }), /* @__PURE__ */ u.createElement("g", { transform: "translate(16, 16) scale(0.625) translate(-12, -12)" }, /* @__PURE__ */ u.createElement("path", { d: "M4 14a1 1 0 0 1-.78-1.63l9.9-10.2a.5.5 0 0 1 .86.46l-1.92 6.02A1 1 0 0 0 13 10h7a1 1 0 0 1 .78 1.63l-9.9 10.2a.5.5 0 0 1-.86-.46l1.92-6.02A1 1 0 0 0 11 14z", fill: "white" }))), Y = f("", {
445
+ M.displayName = "Badge";
446
+ const E = (e) => /* @__PURE__ */ g.createElement("svg", { width: 32, height: 32, viewBox: "0 0 32 32", fill: "none", xmlns: "http://www.w3.org/2000/svg", ...e }, /* @__PURE__ */ g.createElement("title", null, "Spenicle"), /* @__PURE__ */ g.createElement("rect", { width: 32, height: 32, fill: "#e07a5f" }), /* @__PURE__ */ g.createElement("g", { transform: "translate(16, 16) scale(0.625) translate(-12, -12)" }, /* @__PURE__ */ g.createElement("path", { d: "M4 14a1 1 0 0 1-.78-1.63l9.9-10.2a.5.5 0 0 1 .86.46l-1.92 6.02A1 1 0 0 0 13 10h7a1 1 0 0 1 .78 1.63l-9.9 10.2a.5.5 0 0 1-.86-.46l1.92-6.02A1 1 0 0 0 11 14z", fill: "white" }))), P = (e) => /* @__PURE__ */ g.createElement("svg", { width: 32, height: 32, viewBox: "0 0 32 32", fill: "none", xmlns: "http://www.w3.org/2000/svg", ...e }, /* @__PURE__ */ g.createElement("title", null, "Spenicle"), /* @__PURE__ */ g.createElement("rect", { width: 32, height: 32, rx: 8, fill: "#e07a5f" }), /* @__PURE__ */ g.createElement("g", { transform: "translate(16, 16) scale(0.625) translate(-12, -12)" }, /* @__PURE__ */ g.createElement("path", { d: "M4 14a1 1 0 0 1-.78-1.63l9.9-10.2a.5.5 0 0 1 .86.46l-1.92 6.02A1 1 0 0 0 13 10h7a1 1 0 0 1 .78 1.63l-9.9 10.2a.5.5 0 0 1-.86-.46l1.92-6.02A1 1 0 0 0 11 14z", fill: "white" }))), H = (e) => /* @__PURE__ */ g.createElement("svg", { width: 32, height: 32, viewBox: "0 0 32 32", fill: "none", xmlns: "http://www.w3.org/2000/svg", ...e }, /* @__PURE__ */ g.createElement("title", null, "Spenicle"), /* @__PURE__ */ g.createElement("circle", { cx: 16, cy: 16, r: 16, fill: "#e07a5f" }), /* @__PURE__ */ g.createElement("g", { transform: "translate(16, 16) scale(0.625) translate(-12, -12)" }, /* @__PURE__ */ g.createElement("path", { d: "M4 14a1 1 0 0 1-.78-1.63l9.9-10.2a.5.5 0 0 1 .86.46l-1.92 6.02A1 1 0 0 0 13 10h7a1 1 0 0 1 .78 1.63l-9.9 10.2a.5.5 0 0 1-.86-.46l1.92-6.02A1 1 0 0 0 11 14z", fill: "white" }))), $ = b("", {
448
447
  variants: {
449
448
  size: {
450
449
  xs: "h-6 w-6",
@@ -457,33 +456,33 @@ const E = (e) => /* @__PURE__ */ u.createElement("svg", { width: 32, height: 32,
457
456
  defaultVariants: {
458
457
  size: "md"
459
458
  }
460
- }), _ = g(
459
+ }), Y = d(
461
460
  ({ shape: e = "square", size: r, ...t }, s) => {
462
461
  const n = {
463
462
  square: E,
464
- rounded: $,
465
- circle: X
463
+ rounded: P,
464
+ circle: H
466
465
  }[e] || E;
467
466
  return /* @__PURE__ */ a.jsx(
468
467
  n,
469
468
  {
470
469
  ref: s,
471
470
  ...t,
472
- className: l("inline-block", Y({ size: r }))
471
+ className: l("inline-block", $({ size: r }))
473
472
  }
474
473
  );
475
474
  }
476
- ), be = g(
475
+ ), ce = d(
477
476
  ({ name: e = "spenicle", size: r = "md", shape: t, ...s }, o) => /* @__PURE__ */ a.jsx(
478
477
  "span",
479
478
  {
480
479
  ref: o,
481
480
  className: l("inline-flex items-center gap-2"),
482
481
  ...s,
483
- children: /* @__PURE__ */ a.jsx(_, { shape: t, size: r, "aria-hidden": "true" })
482
+ children: /* @__PURE__ */ a.jsx(Y, { shape: t, size: r, "aria-hidden": "true" })
484
483
  }
485
484
  )
486
- ), D = f(
485
+ ), _ = b(
487
486
  [
488
487
  "inline-flex items-center justify-center gap-2",
489
488
  "rounded-lg",
@@ -550,32 +549,30 @@ const E = (e) => /* @__PURE__ */ u.createElement("svg", { width: 32, height: 32,
550
549
  }
551
550
  }
552
551
  );
553
- function G(e, r = "1rem") {
554
- const t = S(null), [s, o] = v({}), [n, d] = v(
555
- "absolute bottom-4 right-4"
556
- ), i = y(() => {
552
+ function D(e, r = "1rem") {
553
+ const t = S(null), [s, o] = v({}), [n, u] = v("fixed bottom-4 right-4"), i = y(() => {
557
554
  const c = t.current;
558
555
  if (!c) return;
559
556
  const m = c.getBoundingClientRect().height > window.innerHeight;
560
557
  let h = {}, p = "";
561
558
  m ? (h = {
562
- position: "absolute",
559
+ position: "fixed",
563
560
  bottom: r,
564
561
  zIndex: 50,
565
562
  transform: `translateY(${c.scrollTop}px)`
566
- }, p = `absolute bottom-4 ${e}-4`) : (h = {
567
- position: "absolute",
563
+ }, p = `fixed bottom-4 ${e}-4`) : (h = {
564
+ position: "fixed",
568
565
  bottom: r,
569
566
  zIndex: 50
570
- }, p = `absolute bottom-4 ${e}-4`), o(h), d(p);
567
+ }, p = `fixed bottom-4 ${e}-4`), o(h), u(p);
571
568
  }, [e, r]);
572
- return w(() => {
569
+ return x(() => {
573
570
  i();
574
571
  const c = t.current;
575
572
  return c && c.addEventListener("scroll", i), window.addEventListener("resize", i), () => {
576
573
  c && c.removeEventListener("scroll", i), window.removeEventListener("resize", i);
577
574
  };
578
- }, [i]), w(() => {
575
+ }, [i]), x(() => {
579
576
  t.current && i();
580
577
  }, [e, r, i]), [y(
581
578
  (c) => {
@@ -584,110 +581,84 @@ function G(e, r = "1rem") {
584
581
  [i]
585
582
  ), s, n];
586
583
  }
587
- const fe = g(
584
+ const de = d(
588
585
  function({
589
586
  className: r,
590
587
  variant: t = "primary",
591
588
  size: s = "md",
592
589
  side: o = "right",
593
590
  offset: n = "1rem",
594
- ...d
591
+ ...u
595
592
  }, i) {
596
- const [b, c, x] = G(
593
+ const [f, c, w] = D(
597
594
  o,
598
595
  n
599
596
  ), [m, h] = v(!1);
600
- return w(() => {
597
+ return x(() => {
601
598
  h(!0);
602
- }, []), /* @__PURE__ */ a.jsx("div", { ref: b, children: /* @__PURE__ */ a.jsx(
599
+ }, []), /* @__PURE__ */ a.jsx("div", { ref: f, children: /* @__PURE__ */ a.jsx(
603
600
  "button",
604
601
  {
605
602
  ref: i,
606
- type: d.type || "button",
603
+ type: u.type || "button",
607
604
  className: l(
608
- D({ variant: t, size: s }),
609
- x,
605
+ _({ variant: t, size: s }),
606
+ w,
610
607
  m && "animate-fab-in",
611
608
  r
612
609
  ),
613
610
  style: c,
614
- ...d
611
+ ...u
615
612
  }
616
613
  ) });
617
614
  }
618
- ), J = f(
619
- "flex items-center gap-2 px-4 py-2 rounded-sm w-fit max-w-sm relative bg-white shadow-sm",
615
+ ), G = b(
616
+ "flex items-center gap-2 px-4 py-2 rounded-sm w-fit relative shadow-sm",
620
617
  {
621
618
  variants: {
622
619
  color: {
623
- success: "text-success bg-success/5 border-l-4 border-success",
624
- info: "text-info bg-info/5 border-l-4 border-info",
625
- warning: "text-warning bg-warning/5 border-l-4 border-warning",
626
- danger: "text-danger bg-danger/5 border-l-4 border-danger"
620
+ success: "text-success-bold bg-success-soft border-l-4 border-success",
621
+ info: "text-info-bold bg-info-soft border-l-4 border-info",
622
+ warning: "text-warning-bold bg-warning-soft border-l-4 border-warning",
623
+ danger: "text-danger-bold bg-danger-soft border-l-4 border-danger"
627
624
  }
628
625
  },
629
626
  defaultVariants: {
630
627
  color: "success"
631
628
  }
632
629
  }
633
- );
634
- function K(e) {
635
- switch (e) {
636
- case "info":
637
- return "info-ghost";
638
- case "warning":
639
- return "warning-ghost";
640
- case "danger":
641
- return "danger-ghost";
642
- case "success":
643
- default:
644
- return "success-ghost";
645
- }
646
- }
647
- const Q = ({
630
+ ), J = ({
648
631
  children: e,
649
632
  ...r
650
633
  }) => /* @__PURE__ */ a.jsx(
651
634
  "span",
652
635
  {
653
- className: "flex-1 truncate text-base font-medium",
636
+ className: "flex-1 truncate text-sm",
654
637
  "data-testid": "snackbar-text",
655
638
  ...r,
656
639
  children: e
657
640
  }
658
- ), U = ({
641
+ ), K = ({
659
642
  children: e,
660
643
  ...r
661
- }) => /* @__PURE__ */ a.jsx("span", { className: "ml-2", "data-testid": "snackbar-action", ...r, children: e }), he = g(
662
- ({ children: e, action: r, onClose: t, color: s, className: o, ...n }, d) => /* @__PURE__ */ a.jsxs(
644
+ }) => /* @__PURE__ */ a.jsx("span", { className: "ml-2", "data-testid": "snackbar-action", ...r, children: e }), ge = d(
645
+ ({ children: e, action: r, color: t, className: s, ...o }, n) => /* @__PURE__ */ a.jsxs(
663
646
  "div",
664
647
  {
665
- ref: d,
648
+ ref: n,
666
649
  role: "status",
667
650
  "aria-live": "polite",
668
- className: l(J({ color: s }), o),
669
- ...n,
651
+ className: l(G({ color: t }), s),
652
+ ...o,
670
653
  children: [
671
- /* @__PURE__ */ a.jsx(Q, { children: e }),
672
- r && /* @__PURE__ */ a.jsx(U, { children: r }),
673
- /* @__PURE__ */ a.jsx(
674
- A,
675
- {
676
- as: k,
677
- variant: K(s),
678
- size: "sm",
679
- shape: "rounded",
680
- "aria-label": "Close",
681
- onClick: t,
682
- className: "ml-2"
683
- }
684
- )
654
+ /* @__PURE__ */ a.jsx(J, { children: e }),
655
+ r && /* @__PURE__ */ a.jsx(K, { children: r })
685
656
  ]
686
657
  }
687
658
  )
688
- ), z = V(null), W = z.Provider;
659
+ ), z = T(null), Q = z.Provider;
689
660
  function N() {
690
- const e = T(z);
661
+ const e = V(z);
691
662
  if (!e)
692
663
  throw new Error("Table compound components must be used within <Table>");
693
664
  return e;
@@ -723,7 +694,7 @@ const j = (e) => {
723
694
  default:
724
695
  return "grid-cols-2";
725
696
  }
726
- }, Z = (e) => {
697
+ }, U = (e) => {
727
698
  if (e < 1 || e > 12)
728
699
  throw new Error("Column span must be between 1 and 12");
729
700
  switch (e) {
@@ -754,7 +725,7 @@ const j = (e) => {
754
725
  default:
755
726
  return "col-span-2";
756
727
  }
757
- }, ee = g(
728
+ }, W = d(
758
729
  ({ children: e, className: r, ...t }, s) => {
759
730
  const { maxColumns: o } = N();
760
731
  return /* @__PURE__ */ a.jsx(
@@ -775,9 +746,9 @@ const j = (e) => {
775
746
  }
776
747
  );
777
748
  }
778
- ), re = g(
749
+ ), X = d(
779
750
  ({ children: e, className: r, ...t }, s) => /* @__PURE__ */ a.jsx("div", { role: "rowgroup", ref: s, className: l(r), ...t, children: e })
780
- ), te = g(
751
+ ), Z = d(
781
752
  ({ children: e, className: r, ...t }, s) => {
782
753
  const { maxColumns: o } = N();
783
754
  return /* @__PURE__ */ a.jsx(
@@ -798,7 +769,7 @@ const j = (e) => {
798
769
  }
799
770
  );
800
771
  }
801
- ), se = g(
772
+ ), ee = d(
802
773
  ({ children: e, className: r, ...t }, s) => {
803
774
  const { maxColumns: o } = N();
804
775
  return /* @__PURE__ */ a.jsx(
@@ -817,20 +788,20 @@ const j = (e) => {
817
788
  }
818
789
  );
819
790
  }
820
- ), oe = g(
821
- ({ as: e = "td", span: r, align: t = "left", children: s, className: o, ...n }, d) => {
791
+ ), re = d(
792
+ ({ as: e = "td", span: r, align: t = "left", children: s, className: o, ...n }, u) => {
822
793
  const i = e === "th" ? "columnheader" : "cell";
823
- let b = "text-left";
824
- return t === "center" ? b = "text-center" : t === "right" && (b = "text-right"), /* @__PURE__ */ a.jsx(
794
+ let f = "text-left";
795
+ return t === "center" ? f = "text-center" : t === "right" && (f = "text-right"), /* @__PURE__ */ a.jsx(
825
796
  "div",
826
797
  {
827
- ref: d,
798
+ ref: u,
828
799
  role: i,
829
800
  className: l(
830
801
  "px-4 py-2",
831
802
  "[&:not(:last-child)]:border-r [&:not(:last-child)]:border-border",
832
- Z(r),
833
- b,
803
+ U(r),
804
+ f,
834
805
  o
835
806
  ),
836
807
  ...n,
@@ -838,13 +809,13 @@ const j = (e) => {
838
809
  }
839
810
  );
840
811
  }
841
- ), ae = g(
812
+ ), te = d(
842
813
  ({ children: e, className: r, maxColumns: t = 12, ...s }, o) => {
843
- const n = B(
814
+ const n = A(
844
815
  () => ({ maxColumns: t }),
845
816
  [t]
846
817
  );
847
- return /* @__PURE__ */ a.jsx(W, { value: n, children: /* @__PURE__ */ a.jsx(
818
+ return /* @__PURE__ */ a.jsx(Q, { value: n, children: /* @__PURE__ */ a.jsx(
848
819
  "div",
849
820
  {
850
821
  ref: o,
@@ -858,13 +829,13 @@ const j = (e) => {
858
829
  }
859
830
  ) });
860
831
  }
861
- ), me = Object.assign(ae, {
862
- Header: ee,
863
- Body: re,
864
- Footer: te,
865
- Row: se,
866
- Column: oe
867
- }), ne = f(
832
+ ), ue = Object.assign(te, {
833
+ Header: W,
834
+ Body: X,
835
+ Footer: Z,
836
+ Row: ee,
837
+ Column: re
838
+ }), se = b(
868
839
  // Base classes
869
840
  "block transition-colors duration-200",
870
841
  {
@@ -899,23 +870,23 @@ const j = (e) => {
899
870
  shape: "rounded"
900
871
  }
901
872
  }
902
- ), ve = g(
873
+ ), fe = d(
903
874
  ({ variant: e = "white", size: r = "md", shape: t = "rounded", className: s, ...o }, n) => /* @__PURE__ */ a.jsx(
904
875
  "div",
905
876
  {
906
877
  ref: n,
907
- className: l(ne({ variant: e, size: r, shape: t }), s),
878
+ className: l(se({ variant: e, size: r, shape: t }), s),
908
879
  ...o
909
880
  }
910
881
  )
911
882
  );
912
883
  export {
913
- ge as A,
914
- H as B,
915
- he as S,
916
- me as T,
917
- ue as a,
918
- be as b,
919
- fe as c,
920
- ve as d
884
+ ie as A,
885
+ M as B,
886
+ ge as S,
887
+ ue as T,
888
+ le as a,
889
+ ce as b,
890
+ de as c,
891
+ fe as d
921
892
  };
@@ -3,6 +3,14 @@ import { InputHTMLAttributes, ReactNode } from 'react';
3
3
  * Props for the ChipInput component
4
4
  */
5
5
  export interface ChipInputProps extends Omit<InputHTMLAttributes<HTMLInputElement>, 'type' | 'size' | 'onChange' | 'value'> {
6
+ /**
7
+ * The shape of the chip: 'circle' (default) or 'rounded'
8
+ */
9
+ shape?: 'circle' | 'rounded';
10
+ /**
11
+ * The size of the chip: 'sm' (default), 'md', or 'lg'
12
+ */
13
+ size?: 'sm' | 'md' | 'lg';
6
14
  /**
7
15
  * Visual style variant supporting Versaur color system
8
16
  * Core variants: primary (coral), secondary (sage), tertiary (mist), ghost (slate), neutral (light gray)
@@ -48,4 +56,12 @@ export interface ChipInputOptionProps extends Omit<InputHTMLAttributes<HTMLInput
48
56
  * The value for this chip option
49
57
  */
50
58
  value: string;
59
+ /**
60
+ * Custom check icon or element. If not provided, no check is rendered unless defaultCheck is true
61
+ */
62
+ check?: React.ReactNode;
63
+ /**
64
+ * Show the default check icon if true (default: false). If both check and defaultCheck are provided, check takes precedence
65
+ */
66
+ defaultCheck?: boolean;
51
67
  }
@@ -0,0 +1,10 @@
1
+ import { default as React } from 'react';
2
+ import { DateRangePickerInputProps } from './types';
3
+ /**
4
+ * DateRangePickerInput component for Versaur UI
5
+ *
6
+ * Styled like TextInput, but acts as a button to pick a date range
7
+ * Clicking opens a docked Calendar below the input (type='range')
8
+ * Strictly typed, accessible, and visually consistent with TextInput
9
+ */
10
+ export declare const DateRangePickerInput: React.ForwardRefExoticComponent<DateRangePickerInputProps & React.RefAttributes<HTMLButtonElement>>;
@@ -0,0 +1,2 @@
1
+ export * from './date-range-picker-input';
2
+ export * from './types';