@bestow-ui/react 1.0.0 → 1.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.
package/dist/client.js CHANGED
@@ -631,7 +631,7 @@ var AgreementGroup = /* @__PURE__ */ forwardRef9(
631
631
  if (!isControlled) setInnerValue(next);
632
632
  onValueChange?.(next);
633
633
  };
634
- const allValues = items2.map((item7) => item7.value);
634
+ const allValues = items2.map((item8) => item8.value);
635
635
  const agreedCount = allValues.filter((v) => agreed.includes(v)).length;
636
636
  const allChecked = items2.length > 0 && agreedCount === items2.length;
637
637
  const toggleItem = (itemValue, checked) => update(checked ? [...agreed.filter((v) => v !== itemValue), itemValue] : agreed.filter((v) => v !== itemValue));
@@ -655,28 +655,28 @@ var AgreementGroup = /* @__PURE__ */ forwardRef9(
655
655
  onChange: (event) => update(event.target.checked ? allValues : [])
656
656
  }
657
657
  ) }),
658
- /* @__PURE__ */ jsx11("ul", { className: list, children: items2.map((item7) => {
659
- const labelId = `${baseId}-${item7.value}-label`;
660
- const toggleTextId = `${baseId}-${item7.value}-toggle`;
661
- const contentId = `${baseId}-${item7.value}-content`;
662
- const isOpen = expanded.includes(item7.value);
658
+ /* @__PURE__ */ jsx11("ul", { className: list, children: items2.map((item8) => {
659
+ const labelId = `${baseId}-${item8.value}-label`;
660
+ const toggleTextId = `${baseId}-${item8.value}-toggle`;
661
+ const contentId = `${baseId}-${item8.value}-content`;
662
+ const isOpen = expanded.includes(item8.value);
663
663
  return /* @__PURE__ */ jsxs9("li", { className: item2, children: [
664
664
  /* @__PURE__ */ jsxs9("div", { className: row2, children: [
665
665
  /* @__PURE__ */ jsx11(
666
666
  Checkbox,
667
667
  {
668
668
  size: "sm",
669
- checked: agreed.includes(item7.value),
670
- invalid: error && item7.required && !agreed.includes(item7.value),
671
- onChange: (event) => toggleItem(item7.value, event.target.checked),
669
+ checked: agreed.includes(item8.value),
670
+ invalid: error && item8.required && !agreed.includes(item8.value),
671
+ onChange: (event) => toggleItem(item8.value, event.target.checked),
672
672
  label: /* @__PURE__ */ jsxs9("span", { id: labelId, children: [
673
- /* @__PURE__ */ jsx11("span", { className: tag, "data-required": item7.required || void 0, children: item7.required ? requiredText : optionalText }),
673
+ /* @__PURE__ */ jsx11("span", { className: tag, "data-required": item8.required || void 0, children: item8.required ? requiredText : optionalText }),
674
674
  " ",
675
- item7.label
675
+ item8.label
676
676
  ] })
677
677
  }
678
678
  ),
679
- item7.content && /* @__PURE__ */ jsxs9(
679
+ item8.content && /* @__PURE__ */ jsxs9(
680
680
  "button",
681
681
  {
682
682
  type: "button",
@@ -684,7 +684,7 @@ var AgreementGroup = /* @__PURE__ */ forwardRef9(
684
684
  "aria-expanded": isOpen,
685
685
  "aria-controls": contentId,
686
686
  "aria-labelledby": `${labelId} ${toggleTextId}`,
687
- onClick: () => setExpanded((prev) => isOpen ? prev.filter((v) => v !== item7.value) : [...prev, item7.value]),
687
+ onClick: () => setExpanded((prev) => isOpen ? prev.filter((v) => v !== item8.value) : [...prev, item8.value]),
688
688
  children: [
689
689
  /* @__PURE__ */ jsx11("span", { id: toggleTextId, children: isOpen ? hideText : showText }),
690
690
  /* @__PURE__ */ jsx11(ChevronDownIcon2, { size: 14, className: chevron2 })
@@ -692,10 +692,10 @@ var AgreementGroup = /* @__PURE__ */ forwardRef9(
692
692
  }
693
693
  )
694
694
  ] }),
695
- item7.content && isOpen && // 내용이 길면 스크롤된다 — 키보드로도 스크롤할 수 있게 포커스를 받는 이름 있는 영역으로 둔다
695
+ item8.content && isOpen && // 내용이 길면 스크롤된다 — 키보드로도 스크롤할 수 있게 포커스를 받는 이름 있는 영역으로 둔다
696
696
  // eslint-disable-next-line jsx-a11y/no-noninteractive-tabindex
697
- /* @__PURE__ */ jsx11("div", { id: contentId, role: "region", "aria-labelledby": labelId, tabIndex: 0, className: content3, children: item7.content })
698
- ] }, item7.value);
697
+ /* @__PURE__ */ jsx11("div", { id: contentId, role: "region", "aria-labelledby": labelId, tabIndex: 0, className: content3, children: item8.content })
698
+ ] }, item8.value);
699
699
  }) })
700
700
  ] }),
701
701
  name && agreed.map((v) => /* @__PURE__ */ jsx11("input", { type: "hidden", name, value: v }, v)),
@@ -733,7 +733,7 @@ var Alert = /* @__PURE__ */ forwardRef10(function Alert2({
733
733
  variant,
734
734
  color = "primary",
735
735
  title: title6,
736
- icon: icon6,
736
+ icon: icon7,
737
737
  action: action3,
738
738
  onClose,
739
739
  closeLabel: closeLabelProp,
@@ -744,7 +744,7 @@ var Alert = /* @__PURE__ */ forwardRef10(function Alert2({
744
744
  const m = useMessages();
745
745
  const closeLabel = closeLabelProp ?? m.close ?? "\uB2EB\uAE30";
746
746
  const DefaultIcon = defaultIcons[color];
747
- const iconNode = icon6 === void 0 ? /* @__PURE__ */ jsx12(DefaultIcon, { size: 18 }) : icon6;
747
+ const iconNode = icon7 === void 0 ? /* @__PURE__ */ jsx12(DefaultIcon, { size: 18 }) : icon7;
748
748
  return /* @__PURE__ */ jsxs10("div", { ref, className: cx(alert({ variant, color }), className), ...rest, children: [
749
749
  iconNode !== false && iconNode !== null && /* @__PURE__ */ jsx12("span", { className: icon2, "aria-hidden": true, children: iconNode }),
750
750
  /* @__PURE__ */ jsxs10("div", { className: content4, children: [
@@ -1015,11 +1015,11 @@ var Breadcrumb = /* @__PURE__ */ forwardRef15(function Breadcrumb2({ items: item
1015
1015
  const m = useMessages();
1016
1016
  const ariaLabel = ariaLabelProp ?? m.breadcrumb ?? "\uC774\uB3D9 \uACBD\uB85C";
1017
1017
  const sep = separator3 ?? /* @__PURE__ */ jsx17(ChevronRightIcon, { size: 14 });
1018
- return /* @__PURE__ */ jsx17("nav", { ref, "aria-label": ariaLabel, className, ...rest, children: /* @__PURE__ */ jsx17("ol", { className: list2, children: items2.map((item7, index) => {
1018
+ return /* @__PURE__ */ jsx17("nav", { ref, "aria-label": ariaLabel, className, ...rest, children: /* @__PURE__ */ jsx17("ol", { className: list2, children: items2.map((item8, index) => {
1019
1019
  const isCurrent = index === items2.length - 1;
1020
1020
  return /* @__PURE__ */ jsxs15("li", { className: item3, children: [
1021
1021
  index > 0 && /* @__PURE__ */ jsx17("span", { className: separator, "aria-hidden": true, children: sep }),
1022
- isCurrent || item7.href === void 0 ? /* @__PURE__ */ jsx17("span", { className: isCurrent ? current : void 0, "aria-current": isCurrent ? "page" : void 0, children: item7.label }) : /* @__PURE__ */ jsx17(Link, { as: linkAs, href: item7.href, color: "neutral", underline: "hover", className: link2, children: item7.label })
1022
+ isCurrent || item8.href === void 0 ? /* @__PURE__ */ jsx17("span", { className: isCurrent ? current : void 0, "aria-current": isCurrent ? "page" : void 0, children: item8.label }) : /* @__PURE__ */ jsx17(Link, { as: linkAs, href: item8.href, color: "neutral", underline: "hover", className: link2, children: item8.label })
1023
1023
  ] }, index);
1024
1024
  }) }) });
1025
1025
  });
@@ -1322,7 +1322,7 @@ import {
1322
1322
  useRef as useRef8,
1323
1323
  useState as useState6
1324
1324
  } from "react";
1325
- import { CheckIcon, ChevronDownIcon as ChevronDownIcon3 } from "@bestow-ui/icons";
1325
+ import { CheckIcon, ChevronDownIcon as ChevronDownIcon3, XIcon as XIcon3 } from "@bestow-ui/icons";
1326
1326
 
1327
1327
  // src/components/Select/Select.css.ts
1328
1328
  var content5 = "_1kx81e83";
@@ -1334,9 +1334,10 @@ var value = "_1kx81e81";
1334
1334
  var viewport = "_1kx81e84";
1335
1335
 
1336
1336
  // src/components/Combobox/Combobox.css.ts
1337
- var content6 = "c2pbq71";
1338
- var empty = "c2pbq72";
1339
- var toggle2 = "c2pbq70";
1337
+ var clear = "c2pbq72 c2pbq70";
1338
+ var content6 = "c2pbq73";
1339
+ var empty = "c2pbq74";
1340
+ var toggle2 = "c2pbq71 c2pbq70";
1340
1341
 
1341
1342
  // src/components/Combobox/Combobox.tsx
1342
1343
  import { jsx as jsx22, jsxs as jsxs17 } from "react/jsx-runtime";
@@ -1361,11 +1362,14 @@ var Combobox = /* @__PURE__ */ forwardRef20(function Combobox2(props, ref) {
1361
1362
  id,
1362
1363
  "aria-label": ariaLabel,
1363
1364
  toggleLabel: toggleLabelProp,
1365
+ clearable,
1366
+ clearLabel: clearLabelProp,
1364
1367
  className
1365
1368
  } = props;
1366
1369
  const m = useMessages();
1367
1370
  const emptyMessage = emptyMessageProp ?? m.noResults ?? "\uACB0\uACFC\uAC00 \uC5C6\uC5B4\uC694";
1368
1371
  const toggleLabel = toggleLabelProp ?? m.openList ?? "\uBAA9\uB85D \uC5F4\uAE30";
1372
+ const clearLabel = clearLabelProp ?? m.clearSelection ?? "\uC120\uD0DD \uC9C0\uC6B0\uAE30";
1369
1373
  const generatedId = useId5();
1370
1374
  const inputId = id ?? generatedId;
1371
1375
  const labelId = `${inputId}-label`;
@@ -1395,16 +1399,24 @@ var Combobox = /* @__PURE__ */ forwardRef20(function Combobox2(props, ref) {
1395
1399
  selectedIndex >= 0 && !list5[selectedIndex].disabled ? selectedIndex : preferLast ? firstEnabled(list5, list5.length - 1, -1) : firstEnabled(list5)
1396
1400
  );
1397
1401
  };
1398
- const close2 = () => {
1402
+ const reset = () => {
1399
1403
  setOpen(false);
1400
1404
  setQuery(null);
1401
1405
  setActiveIndex(-1);
1402
1406
  };
1407
+ const clearSelection = () => {
1408
+ if (!isControlled) setInnerValue(void 0);
1409
+ if (selectedValue) onValueChange?.("");
1410
+ };
1411
+ const close2 = () => {
1412
+ if (query === "" && selectedValue) clearSelection();
1413
+ reset();
1414
+ };
1403
1415
  const select = (option2) => {
1404
1416
  if (option2.disabled) return;
1405
1417
  if (!isControlled) setInnerValue(option2.value);
1406
1418
  if (option2.value !== selectedValue) onValueChange?.(option2.value);
1407
- close2();
1419
+ reset();
1408
1420
  };
1409
1421
  const move = (step) => {
1410
1422
  const start = activeIndex < 0 ? step === 1 ? 0 : filtered.length - 1 : activeIndex + step;
@@ -1416,7 +1428,7 @@ var Combobox = /* @__PURE__ */ forwardRef20(function Combobox2(props, ref) {
1416
1428
  const nextList = nextQuery ? options.filter((o) => filter(o, nextQuery)) : options;
1417
1429
  setQuery(nextQuery);
1418
1430
  setOpen(true);
1419
- setActiveIndex(firstEnabled(nextList));
1431
+ setActiveIndex(nextQuery ? firstEnabled(nextList) : -1);
1420
1432
  };
1421
1433
  const handleKeyDown = (event) => {
1422
1434
  switch (event.key) {
@@ -1435,6 +1447,7 @@ var Combobox = /* @__PURE__ */ forwardRef20(function Combobox2(props, ref) {
1435
1447
  event.preventDefault();
1436
1448
  const option2 = filtered[activeIndex];
1437
1449
  if (option2) select(option2);
1450
+ else close2();
1438
1451
  }
1439
1452
  break;
1440
1453
  case "Escape":
@@ -1494,6 +1507,22 @@ var Combobox = /* @__PURE__ */ forwardRef20(function Combobox2(props, ref) {
1494
1507
  className: input
1495
1508
  }
1496
1509
  ),
1510
+ clearable && selectedOption && !disabled && /* @__PURE__ */ jsx22(
1511
+ "button",
1512
+ {
1513
+ type: "button",
1514
+ tabIndex: -1,
1515
+ "aria-label": clearLabel,
1516
+ className: clear,
1517
+ onMouseDown: (event) => event.preventDefault(),
1518
+ onClick: () => {
1519
+ clearSelection();
1520
+ reset();
1521
+ inputRef.current?.focus();
1522
+ },
1523
+ children: /* @__PURE__ */ jsx22(XIcon3, { size: 16 })
1524
+ }
1525
+ ),
1497
1526
  /* @__PURE__ */ jsx22(
1498
1527
  "button",
1499
1528
  {
@@ -1581,7 +1610,7 @@ import { CalendarIcon } from "@bestow-ui/icons";
1581
1610
 
1582
1611
  // src/components/Popover/Popover.tsx
1583
1612
  import * as RadixPopover from "@radix-ui/react-popover";
1584
- import { XIcon as XIcon3 } from "@bestow-ui/icons";
1613
+ import { XIcon as XIcon4 } from "@bestow-ui/icons";
1585
1614
  import { useId as useId6 } from "react";
1586
1615
 
1587
1616
  // src/components/Popover/Popover.css.ts
@@ -1630,7 +1659,7 @@ function Popover2({
1630
1659
  children: [
1631
1660
  (title6 || showClose) && /* @__PURE__ */ jsxs18("div", { className: header5, children: [
1632
1661
  title6 && /* @__PURE__ */ jsx23("h2", { id: titleId, className: title3, children: title6 }),
1633
- showClose && /* @__PURE__ */ jsx23(RadixPopover.Close, { className: closeButton3, "aria-label": m.close ?? "\uB2EB\uAE30", children: /* @__PURE__ */ jsx23(XIcon3, { size: 16 }) })
1662
+ showClose && /* @__PURE__ */ jsx23(RadixPopover.Close, { className: closeButton3, "aria-label": m.close ?? "\uB2EB\uAE30", children: /* @__PURE__ */ jsx23(XIcon4, { size: 16 }) })
1634
1663
  ] }),
1635
1664
  content12,
1636
1665
  showArrow && /* @__PURE__ */ jsx23(RadixPopover.Arrow, { className: arrow, width: 12, height: 6 })
@@ -1803,7 +1832,7 @@ var Divider = /* @__PURE__ */ forwardRef22(function Divider2({ orientation = "ho
1803
1832
 
1804
1833
  // src/components/Drawer/Drawer.tsx
1805
1834
  import * as Dialog2 from "@radix-ui/react-dialog";
1806
- import { XIcon as XIcon4 } from "@bestow-ui/icons";
1835
+ import { XIcon as XIcon5 } from "@bestow-ui/icons";
1807
1836
 
1808
1837
  // src/components/Drawer/Drawer.css.ts
1809
1838
  import { createRuntimeFn as _7a46813 } from "@vanilla-extract/recipes/createRuntimeFn";
@@ -1857,7 +1886,7 @@ function Drawer({
1857
1886
  /* @__PURE__ */ jsx26(Dialog2.Title, { className: title4, children: title6 }),
1858
1887
  description6 && /* @__PURE__ */ jsx26(Dialog2.Description, { className: description3, children: description6 })
1859
1888
  ] }),
1860
- !hideCloseButton && /* @__PURE__ */ jsx26(Dialog2.Close, { asChild: true, children: /* @__PURE__ */ jsx26(IconButton, { "aria-label": m.close ?? "\uB2EB\uAE30", size: "sm", className: closeButton4, children: /* @__PURE__ */ jsx26(XIcon4, {}) }) })
1889
+ !hideCloseButton && /* @__PURE__ */ jsx26(Dialog2.Close, { asChild: true, children: /* @__PURE__ */ jsx26(IconButton, { "aria-label": m.close ?? "\uB2EB\uAE30", size: "sm", className: closeButton4, children: /* @__PURE__ */ jsx26(XIcon5, {}) }) })
1861
1890
  ] }),
1862
1891
  children && /* @__PURE__ */ jsx26("div", { className: body3, children }),
1863
1892
  footer6 && /* @__PURE__ */ jsx26("div", { className: footer3, children: footer6 })
@@ -1906,9 +1935,9 @@ var DropdownMenuContent = /* @__PURE__ */ forwardRef23(
1906
1935
  }
1907
1936
  );
1908
1937
  var DropdownMenuItem = /* @__PURE__ */ forwardRef23(
1909
- function DropdownMenuItem2({ icon: icon6, shortcut: shortcut2, color = "neutral", className, children, ...rest }, ref) {
1938
+ function DropdownMenuItem2({ icon: icon7, shortcut: shortcut2, color = "neutral", className, children, ...rest }, ref) {
1910
1939
  return /* @__PURE__ */ jsxs22(RadixMenu.Item, { ref, className: cx(item5, color === "danger" && danger, className), ...rest, children: [
1911
- icon6 && /* @__PURE__ */ jsx27("span", { className: icon5, "aria-hidden": true, children: icon6 }),
1940
+ icon7 && /* @__PURE__ */ jsx27("span", { className: icon5, "aria-hidden": true, children: icon7 }),
1912
1941
  children,
1913
1942
  shortcut2 && /* @__PURE__ */ jsx27("span", { className: shortcut, "aria-hidden": true, children: shortcut2 })
1914
1943
  ] });
@@ -1999,17 +2028,17 @@ var Pagination = /* @__PURE__ */ forwardRef24(function Pagination2({
1999
2028
  }
2000
2029
  ) }),
2001
2030
  getPaginationItems(page, totalPages, siblingCount, boundaryCount).map(
2002
- (item7) => typeof item7 === "number" ? /* @__PURE__ */ jsx28("li", { children: /* @__PURE__ */ jsx28(
2031
+ (item8) => typeof item8 === "number" ? /* @__PURE__ */ jsx28("li", { children: /* @__PURE__ */ jsx28(
2003
2032
  "button",
2004
2033
  {
2005
2034
  type: "button",
2006
2035
  className: itemClass,
2007
- "aria-label": getItemLabel("page", item7),
2008
- "aria-current": item7 === page ? "page" : void 0,
2009
- onClick: () => goTo(item7),
2010
- children: item7
2036
+ "aria-label": getItemLabel("page", item8),
2037
+ "aria-current": item8 === page ? "page" : void 0,
2038
+ onClick: () => goTo(item8),
2039
+ children: item8
2011
2040
  }
2012
- ) }, item7) : /* @__PURE__ */ jsx28("li", { "aria-hidden": true, className: cx(itemClass, ellipsis), children: "\u2026" }, item7)
2041
+ ) }, item8) : /* @__PURE__ */ jsx28("li", { "aria-hidden": true, className: cx(itemClass, ellipsis), children: "\u2026" }, item8)
2013
2042
  ),
2014
2043
  /* @__PURE__ */ jsx28("li", { children: /* @__PURE__ */ jsx28(
2015
2044
  "button",
@@ -2229,12 +2258,125 @@ var RadioGroup = /* @__PURE__ */ forwardRef27(function RadioGroup2(props, ref) {
2229
2258
  ] });
2230
2259
  });
2231
2260
 
2261
+ // src/components/SegmentedControl/SegmentedControl.tsx
2262
+ import { forwardRef as forwardRef28, useId as useId9, useRef as useRef11, useState as useState9 } from "react";
2263
+
2264
+ // src/components/SegmentedControl/SegmentedControl.css.ts
2265
+ import { createRuntimeFn as _7a46817 } from "@vanilla-extract/recipes/createRuntimeFn";
2266
+ var icon6 = "_1h65mmo7";
2267
+ var item7 = /* @__PURE__ */ _7a46817({ defaultClassName: "_1h65mmo2", variantClassNames: { size: { sm: "_1h65mmo3", md: "_1h65mmo4", lg: "_1h65mmo5" }, fullWidth: { true: "_1h65mmo6" } }, defaultVariants: { size: "md" }, compoundVariants: [] });
2268
+ var root8 = /* @__PURE__ */ _7a46817({ defaultClassName: "_1h65mmo0", variantClassNames: { fullWidth: { true: "_1h65mmo1" } }, defaultVariants: {}, compoundVariants: [] });
2269
+
2270
+ // src/components/SegmentedControl/SegmentedControl.tsx
2271
+ import { jsx as jsx32, jsxs as jsxs26 } from "react/jsx-runtime";
2272
+ var NEXT_KEYS = { ArrowRight: 1, ArrowDown: 1, ArrowLeft: -1, ArrowUp: -1 };
2273
+ var SegmentedControl = /* @__PURE__ */ forwardRef28(
2274
+ function SegmentedControl2(props, ref) {
2275
+ const {
2276
+ options,
2277
+ value: value4,
2278
+ defaultValue,
2279
+ onValueChange,
2280
+ label: label6,
2281
+ "aria-label": ariaLabel,
2282
+ size,
2283
+ fullWidth,
2284
+ disabled,
2285
+ name,
2286
+ id,
2287
+ className
2288
+ } = props;
2289
+ const isControlled = "value" in props;
2290
+ const [innerValue, setInnerValue] = useState9(defaultValue ?? "");
2291
+ const current2 = isControlled ? value4 ?? "" : innerValue;
2292
+ const generatedId = useId9();
2293
+ const labelId = label6 ? `${id ?? generatedId}-label` : void 0;
2294
+ const itemRefs = useRef11([]);
2295
+ const isEnabled = (index) => !disabled && !options[index]?.disabled;
2296
+ const select = (index) => {
2297
+ const next = options[index].value;
2298
+ if (next === current2) return;
2299
+ if (!isControlled) setInnerValue(next);
2300
+ onValueChange?.(next);
2301
+ };
2302
+ const checkedIndex = options.findIndex((option2) => option2.value === current2);
2303
+ const tabStop = checkedIndex >= 0 && isEnabled(checkedIndex) ? checkedIndex : options.findIndex((_, i) => isEnabled(i));
2304
+ const handleKeyDown = (event, index) => {
2305
+ let target = -1;
2306
+ const step = NEXT_KEYS[event.key];
2307
+ if (step) {
2308
+ for (let i = 1; i <= options.length; i++) {
2309
+ const candidate = (index + step * i + options.length) % options.length;
2310
+ if (isEnabled(candidate)) {
2311
+ target = candidate;
2312
+ break;
2313
+ }
2314
+ }
2315
+ } else if (event.key === "Home") {
2316
+ target = options.findIndex((_, i) => isEnabled(i));
2317
+ } else if (event.key === "End") {
2318
+ for (let i = options.length - 1; i >= 0 && target < 0; i--) if (isEnabled(i)) target = i;
2319
+ }
2320
+ if (target < 0) return;
2321
+ event.preventDefault();
2322
+ itemRefs.current[target]?.focus();
2323
+ select(target);
2324
+ };
2325
+ const group = /* @__PURE__ */ jsxs26(
2326
+ "div",
2327
+ {
2328
+ ref,
2329
+ id,
2330
+ role: "radiogroup",
2331
+ "aria-labelledby": labelId,
2332
+ "aria-label": label6 ? void 0 : ariaLabel,
2333
+ "aria-disabled": disabled || void 0,
2334
+ className: cx(root8({ fullWidth }), !label6 && className),
2335
+ children: [
2336
+ options.map((option2, index) => {
2337
+ const checked = index === checkedIndex;
2338
+ return /* @__PURE__ */ jsxs26(
2339
+ "button",
2340
+ {
2341
+ ref: (node) => {
2342
+ itemRefs.current[index] = node;
2343
+ },
2344
+ type: "button",
2345
+ role: "radio",
2346
+ "aria-checked": checked,
2347
+ tabIndex: index === tabStop ? 0 : -1,
2348
+ disabled: !isEnabled(index),
2349
+ "data-state": checked ? "checked" : "unchecked",
2350
+ "data-disabled": isEnabled(index) ? void 0 : "",
2351
+ className: item7({ size, fullWidth }),
2352
+ onClick: () => select(index),
2353
+ onKeyDown: (event) => handleKeyDown(event, index),
2354
+ children: [
2355
+ option2.icon && /* @__PURE__ */ jsx32("span", { "aria-hidden": true, className: icon6, children: option2.icon }),
2356
+ option2.label
2357
+ ]
2358
+ },
2359
+ option2.value
2360
+ );
2361
+ }),
2362
+ name && /* @__PURE__ */ jsx32("input", { type: "hidden", name, value: current2 })
2363
+ ]
2364
+ }
2365
+ );
2366
+ if (!label6) return group;
2367
+ return /* @__PURE__ */ jsxs26("div", { className: cx(field, className), children: [
2368
+ /* @__PURE__ */ jsx32("span", { id: labelId, className: label, children: label6 }),
2369
+ group
2370
+ ] });
2371
+ }
2372
+ );
2373
+
2232
2374
  // src/components/Select/Select.tsx
2233
2375
  import * as RadixSelect from "@radix-ui/react-select";
2234
- import { forwardRef as forwardRef28, useId as useId9 } from "react";
2376
+ import { forwardRef as forwardRef29, useId as useId10 } from "react";
2235
2377
  import { CheckIcon as CheckIcon2, ChevronDownIcon as ChevronDownIcon4 } from "@bestow-ui/icons";
2236
- import { jsx as jsx32, jsxs as jsxs26 } from "react/jsx-runtime";
2237
- var Select = /* @__PURE__ */ forwardRef28(function Select2(props, ref) {
2378
+ import { jsx as jsx33, jsxs as jsxs27 } from "react/jsx-runtime";
2379
+ var Select = /* @__PURE__ */ forwardRef29(function Select2(props, ref) {
2238
2380
  const {
2239
2381
  options,
2240
2382
  value: value4,
@@ -2254,16 +2396,16 @@ var Select = /* @__PURE__ */ forwardRef28(function Select2(props, ref) {
2254
2396
  className
2255
2397
  } = props;
2256
2398
  const isControlled = "value" in props;
2257
- const generatedId = useId9();
2399
+ const generatedId = useId10();
2258
2400
  const triggerId = id ?? generatedId;
2259
2401
  const helperId = helperText3 ? `${triggerId}-helper` : void 0;
2260
2402
  const portal2 = usePortalProps();
2261
- return /* @__PURE__ */ jsxs26("div", { className: cx(field, fullWidth && fieldFullWidth), children: [
2262
- label6 && /* @__PURE__ */ jsxs26("label", { htmlFor: triggerId, className: label, children: [
2403
+ return /* @__PURE__ */ jsxs27("div", { className: cx(field, fullWidth && fieldFullWidth), children: [
2404
+ label6 && /* @__PURE__ */ jsxs27("label", { htmlFor: triggerId, className: label, children: [
2263
2405
  label6,
2264
- required && /* @__PURE__ */ jsx32("span", { className: requiredMark, "aria-hidden": true, children: "*" })
2406
+ required && /* @__PURE__ */ jsx33("span", { className: requiredMark, "aria-hidden": true, children: "*" })
2265
2407
  ] }),
2266
- /* @__PURE__ */ jsxs26(
2408
+ /* @__PURE__ */ jsxs27(
2267
2409
  RadixSelect.Root,
2268
2410
  {
2269
2411
  value: isControlled ? value4 ?? "" : void 0,
@@ -2273,7 +2415,7 @@ var Select = /* @__PURE__ */ forwardRef28(function Select2(props, ref) {
2273
2415
  required,
2274
2416
  name,
2275
2417
  children: [
2276
- /* @__PURE__ */ jsxs26(
2418
+ /* @__PURE__ */ jsxs27(
2277
2419
  RadixSelect.Trigger,
2278
2420
  {
2279
2421
  ref,
@@ -2284,12 +2426,12 @@ var Select = /* @__PURE__ */ forwardRef28(function Select2(props, ref) {
2284
2426
  "data-invalid": error || void 0,
2285
2427
  className: cx(root3({ size, fullWidth }), trigger2, className),
2286
2428
  children: [
2287
- /* @__PURE__ */ jsx32("span", { className: value, children: /* @__PURE__ */ jsx32(RadixSelect.Value, { placeholder }) }),
2288
- /* @__PURE__ */ jsx32(RadixSelect.Icon, { className: icon4, children: /* @__PURE__ */ jsx32(ChevronDownIcon4, { size: 16 }) })
2429
+ /* @__PURE__ */ jsx33("span", { className: value, children: /* @__PURE__ */ jsx33(RadixSelect.Value, { placeholder }) }),
2430
+ /* @__PURE__ */ jsx33(RadixSelect.Icon, { className: icon4, children: /* @__PURE__ */ jsx33(ChevronDownIcon4, { size: 16 }) })
2289
2431
  ]
2290
2432
  }
2291
2433
  ),
2292
- /* @__PURE__ */ jsx32(RadixSelect.Portal, { children: /* @__PURE__ */ jsx32(
2434
+ /* @__PURE__ */ jsx33(RadixSelect.Portal, { children: /* @__PURE__ */ jsx33(
2293
2435
  RadixSelect.Content,
2294
2436
  {
2295
2437
  position: "popper",
@@ -2297,15 +2439,15 @@ var Select = /* @__PURE__ */ forwardRef28(function Select2(props, ref) {
2297
2439
  collisionPadding: 8,
2298
2440
  className: cx(portal2.className, content5),
2299
2441
  style: portal2.style,
2300
- children: /* @__PURE__ */ jsx32(RadixSelect.Viewport, { className: viewport, children: options.map((option2) => /* @__PURE__ */ jsxs26(
2442
+ children: /* @__PURE__ */ jsx33(RadixSelect.Viewport, { className: viewport, children: options.map((option2) => /* @__PURE__ */ jsxs27(
2301
2443
  RadixSelect.Item,
2302
2444
  {
2303
2445
  value: option2.value,
2304
2446
  disabled: option2.disabled,
2305
2447
  className: item4,
2306
2448
  children: [
2307
- /* @__PURE__ */ jsx32(RadixSelect.ItemText, { children: option2.label }),
2308
- /* @__PURE__ */ jsx32(RadixSelect.ItemIndicator, { className: itemIndicator, children: /* @__PURE__ */ jsx32(CheckIcon2, { size: 16 }) })
2449
+ /* @__PURE__ */ jsx33(RadixSelect.ItemText, { children: option2.label }),
2450
+ /* @__PURE__ */ jsx33(RadixSelect.ItemIndicator, { className: itemIndicator, children: /* @__PURE__ */ jsx33(CheckIcon2, { size: 16 }) })
2309
2451
  ]
2310
2452
  },
2311
2453
  option2.value
@@ -2315,29 +2457,29 @@ var Select = /* @__PURE__ */ forwardRef28(function Select2(props, ref) {
2315
2457
  ]
2316
2458
  }
2317
2459
  ),
2318
- helperText3 && /* @__PURE__ */ jsx32("p", { id: helperId, className: helperText({ error }), children: helperText3 })
2460
+ helperText3 && /* @__PURE__ */ jsx33("p", { id: helperId, className: helperText({ error }), children: helperText3 })
2319
2461
  ] });
2320
2462
  });
2321
2463
 
2322
2464
  // src/components/Skeleton/Skeleton.tsx
2323
2465
  import { assignInlineVars } from "@vanilla-extract/dynamic";
2324
- import { forwardRef as forwardRef29 } from "react";
2466
+ import { forwardRef as forwardRef30 } from "react";
2325
2467
 
2326
2468
  // src/components/Skeleton/Skeleton.css.ts
2327
- import { createRuntimeFn as _7a46817 } from "@vanilla-extract/recipes/createRuntimeFn";
2469
+ import { createRuntimeFn as _7a46818 } from "@vanilla-extract/recipes/createRuntimeFn";
2328
2470
  var height = "var(--_1s8datd1)";
2329
2471
  var lines = "_1s8datd6";
2330
- var skeleton = /* @__PURE__ */ _7a46817({ defaultClassName: "_1s8datd2", variantClassNames: { variant: { text: "_1s8datd3", rect: "_1s8datd4", circle: "_1s8datd5" } }, defaultVariants: { variant: "text" }, compoundVariants: [] });
2472
+ var skeleton = /* @__PURE__ */ _7a46818({ defaultClassName: "_1s8datd2", variantClassNames: { variant: { text: "_1s8datd3", rect: "_1s8datd4", circle: "_1s8datd5" } }, defaultVariants: { variant: "text" }, compoundVariants: [] });
2331
2473
  var width = "var(--_1s8datd0)";
2332
2474
 
2333
2475
  // src/components/Skeleton/Skeleton.tsx
2334
- import { jsx as jsx33 } from "react/jsx-runtime";
2476
+ import { jsx as jsx34 } from "react/jsx-runtime";
2335
2477
  var toCss = (value4) => typeof value4 === "number" ? `${value4}px` : value4;
2336
- var Skeleton = /* @__PURE__ */ forwardRef29(function Skeleton2({ variant = "text", width: width2, height: height2, lines: lines2 = 1, className, style, ...rest }, ref) {
2478
+ var Skeleton = /* @__PURE__ */ forwardRef30(function Skeleton2({ variant = "text", width: width2, height: height2, lines: lines2 = 1, className, style, ...rest }, ref) {
2337
2479
  const w = toCss(width2 ?? (variant === "circle" ? 40 : "100%"));
2338
2480
  const h = toCss(height2 ?? (variant === "circle" ? w : variant === "rect" ? 100 : "1em"));
2339
2481
  if (variant === "text" && lines2 > 1) {
2340
- return /* @__PURE__ */ jsx33(
2482
+ return /* @__PURE__ */ jsx34(
2341
2483
  "span",
2342
2484
  {
2343
2485
  ref,
@@ -2345,7 +2487,7 @@ var Skeleton = /* @__PURE__ */ forwardRef29(function Skeleton2({ variant = "text
2345
2487
  className: cx(lines, className),
2346
2488
  style: { ...assignInlineVars({ [width]: w }), ...style },
2347
2489
  ...rest,
2348
- children: Array.from({ length: lines2 }, (_, i) => /* @__PURE__ */ jsx33(
2490
+ children: Array.from({ length: lines2 }, (_, i) => /* @__PURE__ */ jsx34(
2349
2491
  "span",
2350
2492
  {
2351
2493
  className: skeleton({ variant }),
@@ -2356,7 +2498,7 @@ var Skeleton = /* @__PURE__ */ forwardRef29(function Skeleton2({ variant = "text
2356
2498
  }
2357
2499
  );
2358
2500
  }
2359
- return /* @__PURE__ */ jsx33(
2501
+ return /* @__PURE__ */ jsx34(
2360
2502
  "span",
2361
2503
  {
2362
2504
  ref,
@@ -2368,25 +2510,48 @@ var Skeleton = /* @__PURE__ */ forwardRef29(function Skeleton2({ variant = "text
2368
2510
  );
2369
2511
  });
2370
2512
 
2513
+ // src/components/SkipLink/SkipLink.tsx
2514
+ import { forwardRef as forwardRef31 } from "react";
2515
+
2516
+ // src/components/SkipLink/SkipLink.css.ts
2517
+ var skipLink = "_1t9jaar0";
2518
+
2519
+ // src/components/SkipLink/SkipLink.tsx
2520
+ import { jsx as jsx35 } from "react/jsx-runtime";
2521
+ var SkipLink = /* @__PURE__ */ forwardRef31(function SkipLink2({ href = "#main", className, children, onClick, ...rest }, ref) {
2522
+ const m = useMessages();
2523
+ const handleClick = (event) => {
2524
+ onClick?.(event);
2525
+ if (event.defaultPrevented || !href.startsWith("#")) return;
2526
+ const target = document.getElementById(decodeURIComponent(href.slice(1)));
2527
+ if (!target) return;
2528
+ event.preventDefault();
2529
+ if (!target.hasAttribute("tabindex")) target.setAttribute("tabindex", "-1");
2530
+ target.focus();
2531
+ target.scrollIntoView?.({ block: "start" });
2532
+ };
2533
+ return /* @__PURE__ */ jsx35("a", { ref, href, className: cx(skipLink, className), onClick: handleClick, ...rest, children: children ?? m.skipToContent ?? "\uBCF8\uBB38 \uBC14\uB85C\uAC00\uAE30" });
2534
+ });
2535
+
2371
2536
  // src/components/Slider/Slider.tsx
2372
2537
  import * as RadixSlider from "@radix-ui/react-slider";
2373
- import { forwardRef as forwardRef30, useId as useId10, useState as useState9 } from "react";
2538
+ import { forwardRef as forwardRef32, useId as useId11, useState as useState10 } from "react";
2374
2539
 
2375
2540
  // src/components/Slider/Slider.css.ts
2376
- import { createRuntimeFn as _7a46818 } from "@vanilla-extract/recipes/createRuntimeFn";
2541
+ import { createRuntimeFn as _7a46819 } from "@vanilla-extract/recipes/createRuntimeFn";
2377
2542
  var field2 = "_126mzjm0";
2378
2543
  var header8 = "_126mzjm1";
2379
2544
  var helperText2 = "_126mzjm4";
2380
2545
  var label4 = "_126mzjm2";
2381
2546
  var range2 = "_126mzjmb";
2382
- var root8 = /* @__PURE__ */ _7a46818({ defaultClassName: "_126mzjm5", variantClassNames: { size: { sm: "_126mzjm6", md: "_126mzjm7" } }, defaultVariants: { size: "md" }, compoundVariants: [] });
2383
- var thumb = /* @__PURE__ */ _7a46818({ defaultClassName: "_126mzjmc", variantClassNames: { size: { sm: "_126mzjmd", md: "_126mzjme" } }, defaultVariants: { size: "md" }, compoundVariants: [] });
2384
- var track2 = /* @__PURE__ */ _7a46818({ defaultClassName: "_126mzjm8", variantClassNames: { size: { sm: "_126mzjm9", md: "_126mzjma" } }, defaultVariants: { size: "md" }, compoundVariants: [] });
2547
+ var root9 = /* @__PURE__ */ _7a46819({ defaultClassName: "_126mzjm5", variantClassNames: { size: { sm: "_126mzjm6", md: "_126mzjm7" } }, defaultVariants: { size: "md" }, compoundVariants: [] });
2548
+ var thumb = /* @__PURE__ */ _7a46819({ defaultClassName: "_126mzjmc", variantClassNames: { size: { sm: "_126mzjmd", md: "_126mzjme" } }, defaultVariants: { size: "md" }, compoundVariants: [] });
2549
+ var track2 = /* @__PURE__ */ _7a46819({ defaultClassName: "_126mzjm8", variantClassNames: { size: { sm: "_126mzjm9", md: "_126mzjma" } }, defaultVariants: { size: "md" }, compoundVariants: [] });
2385
2550
  var value3 = "_126mzjm3";
2386
2551
 
2387
2552
  // src/components/Slider/Slider.tsx
2388
- import { jsx as jsx34, jsxs as jsxs27 } from "react/jsx-runtime";
2389
- var Slider = /* @__PURE__ */ forwardRef30(function Slider2(props, ref) {
2553
+ import { jsx as jsx36, jsxs as jsxs28 } from "react/jsx-runtime";
2554
+ var Slider = /* @__PURE__ */ forwardRef32(function Slider2(props, ref) {
2390
2555
  const {
2391
2556
  value: value4,
2392
2557
  defaultValue,
@@ -2407,12 +2572,12 @@ var Slider = /* @__PURE__ */ forwardRef30(function Slider2(props, ref) {
2407
2572
  } = props;
2408
2573
  const m = useMessages();
2409
2574
  const thumbLabels = thumbLabelsProp ?? [m.rangeStart ?? "\uCD5C\uC18C", m.rangeEnd ?? "\uCD5C\uB300"];
2410
- const generatedId = useId10();
2575
+ const generatedId = useId11();
2411
2576
  const baseId = id ?? generatedId;
2412
2577
  const labelId = `${baseId}-label`;
2413
2578
  const helperId = `${baseId}-helper`;
2414
2579
  const isControlled = "value" in props;
2415
- const [innerValue, setInnerValue] = useState9(defaultValue ?? [min]);
2580
+ const [innerValue, setInnerValue] = useState10(defaultValue ?? [min]);
2416
2581
  const current2 = isControlled ? value4 ?? [min] : innerValue;
2417
2582
  const isRange = current2.length > 1;
2418
2583
  const handleChange = (next) => {
@@ -2420,12 +2585,12 @@ var Slider = /* @__PURE__ */ forwardRef30(function Slider2(props, ref) {
2420
2585
  onValueChange?.(next);
2421
2586
  };
2422
2587
  const valueText = current2.map(formatValue).join(" \u2013 ");
2423
- return /* @__PURE__ */ jsxs27("div", { className: cx(field2, className), children: [
2424
- (label6 || showValue) && /* @__PURE__ */ jsxs27("div", { className: header8, children: [
2425
- label6 && /* @__PURE__ */ jsx34("span", { id: labelId, className: label4, children: label6 }),
2426
- showValue && /* @__PURE__ */ jsx34("span", { className: value3, "aria-hidden": true, children: valueText })
2588
+ return /* @__PURE__ */ jsxs28("div", { className: cx(field2, className), children: [
2589
+ (label6 || showValue) && /* @__PURE__ */ jsxs28("div", { className: header8, children: [
2590
+ label6 && /* @__PURE__ */ jsx36("span", { id: labelId, className: label4, children: label6 }),
2591
+ showValue && /* @__PURE__ */ jsx36("span", { className: value3, "aria-hidden": true, children: valueText })
2427
2592
  ] }),
2428
- /* @__PURE__ */ jsxs27(
2593
+ /* @__PURE__ */ jsxs28(
2429
2594
  RadixSlider.Root,
2430
2595
  {
2431
2596
  ref,
@@ -2435,13 +2600,13 @@ var Slider = /* @__PURE__ */ forwardRef30(function Slider2(props, ref) {
2435
2600
  disabled,
2436
2601
  value: current2,
2437
2602
  onValueChange: handleChange,
2438
- className: root8({ size }),
2603
+ className: root9({ size }),
2439
2604
  ...rest,
2440
2605
  children: [
2441
- /* @__PURE__ */ jsx34(RadixSlider.Track, { className: track2({ size }), children: /* @__PURE__ */ jsx34(RadixSlider.Range, { className: range2 }) }),
2606
+ /* @__PURE__ */ jsx36(RadixSlider.Track, { className: track2({ size }), children: /* @__PURE__ */ jsx36(RadixSlider.Range, { className: range2 }) }),
2442
2607
  current2.map((thumbValue, index) => {
2443
2608
  const thumbLabelId = `${baseId}-thumb-${index}`;
2444
- return /* @__PURE__ */ jsx34(
2609
+ return /* @__PURE__ */ jsx36(
2445
2610
  RadixSlider.Thumb,
2446
2611
  {
2447
2612
  className: thumb({ size }),
@@ -2456,45 +2621,45 @@ var Slider = /* @__PURE__ */ forwardRef30(function Slider2(props, ref) {
2456
2621
  ]
2457
2622
  }
2458
2623
  ),
2459
- isRange && current2.map((_, index) => /* @__PURE__ */ jsxs27("span", { id: `${baseId}-thumb-${index}`, hidden: true, children: [
2624
+ isRange && current2.map((_, index) => /* @__PURE__ */ jsxs28("span", { id: `${baseId}-thumb-${index}`, hidden: true, children: [
2460
2625
  label6 ? "" : ariaLabel ? `${ariaLabel} ` : "",
2461
2626
  thumbLabels[index] ?? `${index + 1}`
2462
2627
  ] }, index)),
2463
- helperText3 && /* @__PURE__ */ jsx34("span", { id: helperId, className: helperText2, children: helperText3 })
2628
+ helperText3 && /* @__PURE__ */ jsx36("span", { id: helperId, className: helperText2, children: helperText3 })
2464
2629
  ] });
2465
2630
  });
2466
2631
 
2467
2632
  // src/components/Stack/Stack.tsx
2468
- import { forwardRef as forwardRef31 } from "react";
2633
+ import { forwardRef as forwardRef33 } from "react";
2469
2634
 
2470
2635
  // src/components/Stack/Stack.css.ts
2471
- import { createRuntimeFn as _7a46819 } from "@vanilla-extract/recipes/createRuntimeFn";
2472
- var stack = /* @__PURE__ */ _7a46819({ defaultClassName: "_1jz9hj90", variantClassNames: { direction: { row: "_1jz9hj91", column: "_1jz9hj92", "row-reverse": "_1jz9hj93", "column-reverse": "_1jz9hj94" }, gap: { "0": "_1jz9hj95", "1": "_1jz9hj96", "2": "_1jz9hj97", "3": "_1jz9hj98", "4": "_1jz9hj99", "5": "_1jz9hj9a", "6": "_1jz9hj9b", "8": "_1jz9hj9c", "10": "_1jz9hj9d", "12": "_1jz9hj9e", "16": "_1jz9hj9f" }, align: { start: "_1jz9hj9g", center: "_1jz9hj9h", end: "_1jz9hj9i", stretch: "_1jz9hj9j", baseline: "_1jz9hj9k" }, justify: { start: "_1jz9hj9l", center: "_1jz9hj9m", end: "_1jz9hj9n", between: "_1jz9hj9o", around: "_1jz9hj9p", evenly: "_1jz9hj9q" }, wrap: { true: "_1jz9hj9r" } }, defaultVariants: { direction: "column" }, compoundVariants: [] });
2636
+ import { createRuntimeFn as _7a46820 } from "@vanilla-extract/recipes/createRuntimeFn";
2637
+ var stack = /* @__PURE__ */ _7a46820({ defaultClassName: "_1jz9hj90", variantClassNames: { direction: { row: "_1jz9hj91", column: "_1jz9hj92", "row-reverse": "_1jz9hj93", "column-reverse": "_1jz9hj94" }, gap: { "0": "_1jz9hj95", "1": "_1jz9hj96", "2": "_1jz9hj97", "3": "_1jz9hj98", "4": "_1jz9hj99", "5": "_1jz9hj9a", "6": "_1jz9hj9b", "8": "_1jz9hj9c", "10": "_1jz9hj9d", "12": "_1jz9hj9e", "16": "_1jz9hj9f" }, align: { start: "_1jz9hj9g", center: "_1jz9hj9h", end: "_1jz9hj9i", stretch: "_1jz9hj9j", baseline: "_1jz9hj9k" }, justify: { start: "_1jz9hj9l", center: "_1jz9hj9m", end: "_1jz9hj9n", between: "_1jz9hj9o", around: "_1jz9hj9p", evenly: "_1jz9hj9q" }, wrap: { true: "_1jz9hj9r" } }, defaultVariants: { direction: "column" }, compoundVariants: [] });
2473
2638
 
2474
2639
  // src/components/Stack/Stack.tsx
2475
- import { jsx as jsx35 } from "react/jsx-runtime";
2476
- var Stack = /* @__PURE__ */ forwardRef31(function Stack2({ as: Component = "div", direction, gap, align, justify, wrap, className, ...rest }, ref) {
2477
- return /* @__PURE__ */ jsx35(Component, { ref, className: cx(stack({ direction, gap, align, justify, wrap }), className), ...rest });
2640
+ import { jsx as jsx37 } from "react/jsx-runtime";
2641
+ var Stack = /* @__PURE__ */ forwardRef33(function Stack2({ as: Component = "div", direction, gap, align, justify, wrap, className, ...rest }, ref) {
2642
+ return /* @__PURE__ */ jsx37(Component, { ref, className: cx(stack({ direction, gap, align, justify, wrap }), className), ...rest });
2478
2643
  });
2479
2644
 
2480
2645
  // src/components/Switch/Switch.tsx
2481
2646
  import * as RadixSwitch from "@radix-ui/react-switch";
2482
- import { forwardRef as forwardRef32, useId as useId11 } from "react";
2647
+ import { forwardRef as forwardRef34, useId as useId12 } from "react";
2483
2648
 
2484
2649
  // src/components/Switch/Switch.css.ts
2485
- import { createRuntimeFn as _7a46820 } from "@vanilla-extract/recipes/createRuntimeFn";
2650
+ import { createRuntimeFn as _7a46821 } from "@vanilla-extract/recipes/createRuntimeFn";
2486
2651
  var label5 = "o33ul29";
2487
- var root9 = /* @__PURE__ */ _7a46820({ defaultClassName: "o33ul20", variantClassNames: { size: { sm: "o33ul21", md: "o33ul22" } }, defaultVariants: { size: "md" }, compoundVariants: [] });
2488
- var thumb2 = /* @__PURE__ */ _7a46820({ defaultClassName: "o33ul26", variantClassNames: { size: { sm: "o33ul27", md: "o33ul28" } }, defaultVariants: { size: "md" }, compoundVariants: [] });
2489
- var track3 = /* @__PURE__ */ _7a46820({ defaultClassName: "o33ul23", variantClassNames: { size: { sm: "o33ul24", md: "o33ul25" } }, defaultVariants: { size: "md" }, compoundVariants: [] });
2652
+ var root10 = /* @__PURE__ */ _7a46821({ defaultClassName: "o33ul20", variantClassNames: { size: { sm: "o33ul21", md: "o33ul22" } }, defaultVariants: { size: "md" }, compoundVariants: [] });
2653
+ var thumb2 = /* @__PURE__ */ _7a46821({ defaultClassName: "o33ul26", variantClassNames: { size: { sm: "o33ul27", md: "o33ul28" } }, defaultVariants: { size: "md" }, compoundVariants: [] });
2654
+ var track3 = /* @__PURE__ */ _7a46821({ defaultClassName: "o33ul23", variantClassNames: { size: { sm: "o33ul24", md: "o33ul25" } }, defaultVariants: { size: "md" }, compoundVariants: [] });
2490
2655
 
2491
2656
  // src/components/Switch/Switch.tsx
2492
- import { jsx as jsx36, jsxs as jsxs28 } from "react/jsx-runtime";
2493
- var Switch = /* @__PURE__ */ forwardRef32(function Switch2({ label: label6, size, id, className, disabled, "aria-label": ariaLabel, ...rest }, ref) {
2494
- const generatedId = useId11();
2657
+ import { jsx as jsx38, jsxs as jsxs29 } from "react/jsx-runtime";
2658
+ var Switch = /* @__PURE__ */ forwardRef34(function Switch2({ label: label6, size, id, className, disabled, "aria-label": ariaLabel, ...rest }, ref) {
2659
+ const generatedId = useId12();
2495
2660
  const switchId = id ?? generatedId;
2496
- return /* @__PURE__ */ jsxs28("span", { className: cx(root9({ size }), className), "data-disabled": disabled || void 0, children: [
2497
- /* @__PURE__ */ jsx36(
2661
+ return /* @__PURE__ */ jsxs29("span", { className: cx(root10({ size }), className), "data-disabled": disabled || void 0, children: [
2662
+ /* @__PURE__ */ jsx38(
2498
2663
  RadixSwitch.Root,
2499
2664
  {
2500
2665
  ref,
@@ -2503,27 +2668,27 @@ var Switch = /* @__PURE__ */ forwardRef32(function Switch2({ label: label6, size
2503
2668
  "aria-label": ariaLabel,
2504
2669
  className: track3({ size }),
2505
2670
  ...rest,
2506
- children: /* @__PURE__ */ jsx36(RadixSwitch.Thumb, { className: thumb2({ size }) })
2671
+ children: /* @__PURE__ */ jsx38(RadixSwitch.Thumb, { className: thumb2({ size }) })
2507
2672
  }
2508
2673
  ),
2509
- label6 && /* @__PURE__ */ jsx36("label", { htmlFor: switchId, className: label5, children: label6 })
2674
+ label6 && /* @__PURE__ */ jsx38("label", { htmlFor: switchId, className: label5, children: label6 })
2510
2675
  ] });
2511
2676
  });
2512
2677
 
2513
2678
  // src/components/Table/Table.tsx
2514
2679
  import {
2515
2680
  createContext as createContext3,
2516
- forwardRef as forwardRef33,
2681
+ forwardRef as forwardRef35,
2517
2682
  useContext as useContext3,
2518
- useId as useId12
2683
+ useId as useId13
2519
2684
  } from "react";
2520
2685
  import { ArrowDownIcon, ArrowUpIcon } from "@bestow-ui/icons";
2521
2686
 
2522
2687
  // src/components/Table/Table.css.ts
2523
- import { createRuntimeFn as _7a46821 } from "@vanilla-extract/recipes/createRuntimeFn";
2688
+ import { createRuntimeFn as _7a46822 } from "@vanilla-extract/recipes/createRuntimeFn";
2524
2689
  var body4 = "l3ploy5";
2525
2690
  var caption = "l3ploy2";
2526
- var cell2 = /* @__PURE__ */ _7a46821({ defaultClassName: "l3ploy9", variantClassNames: { size: { sm: "l3ploya", md: "l3ployb" }, align: { left: "l3ployc", center: "l3ployd", right: "l3ploye" } }, defaultVariants: { size: "md", align: "left" }, compoundVariants: [] });
2691
+ var cell2 = /* @__PURE__ */ _7a46822({ defaultClassName: "l3ploy9", variantClassNames: { size: { sm: "l3ploya", md: "l3ployb" }, align: { left: "l3ployc", center: "l3ployd", right: "l3ploye" } }, defaultVariants: { size: "md", align: "left" }, compoundVariants: [] });
2527
2692
  var container = "l3ploy0";
2528
2693
  var footer4 = "l3ploy7";
2529
2694
  var footerCell = "l3ployg";
@@ -2537,10 +2702,10 @@ var striped = "l3ploy6";
2537
2702
  var table = "l3ploy1";
2538
2703
 
2539
2704
  // src/components/Table/Table.tsx
2540
- import { jsx as jsx37, jsxs as jsxs29 } from "react/jsx-runtime";
2705
+ import { jsx as jsx39, jsxs as jsxs30 } from "react/jsx-runtime";
2541
2706
  var TableSizeContext = /* @__PURE__ */ createContext3("md");
2542
2707
  var TableSectionContext = /* @__PURE__ */ createContext3("body");
2543
- var Table = /* @__PURE__ */ forwardRef33(function Table2({
2708
+ var Table = /* @__PURE__ */ forwardRef35(function Table2({
2544
2709
  size = "md",
2545
2710
  striped: striped2,
2546
2711
  stickyHeader: stickyHeader2,
@@ -2552,8 +2717,8 @@ var Table = /* @__PURE__ */ forwardRef33(function Table2({
2552
2717
  children,
2553
2718
  ...rest
2554
2719
  }, ref) {
2555
- const captionId = useId12();
2556
- return /* @__PURE__ */ jsx37(TableSizeContext.Provider, { value: size, children: /* @__PURE__ */ jsx37(
2720
+ const captionId = useId13();
2721
+ return /* @__PURE__ */ jsx39(TableSizeContext.Provider, { value: size, children: /* @__PURE__ */ jsx39(
2557
2722
  "div",
2558
2723
  {
2559
2724
  className: cx(container, containerClassName),
@@ -2562,7 +2727,7 @@ var Table = /* @__PURE__ */ forwardRef33(function Table2({
2562
2727
  role: "region",
2563
2728
  "aria-labelledby": caption2 ? captionId : void 0,
2564
2729
  "aria-label": caption2 ? void 0 : ariaLabel,
2565
- children: /* @__PURE__ */ jsxs29(
2730
+ children: /* @__PURE__ */ jsxs30(
2566
2731
  "table",
2567
2732
  {
2568
2733
  ref,
@@ -2570,7 +2735,7 @@ var Table = /* @__PURE__ */ forwardRef33(function Table2({
2570
2735
  "aria-label": caption2 ? void 0 : ariaLabel,
2571
2736
  ...rest,
2572
2737
  children: [
2573
- caption2 && /* @__PURE__ */ jsx37("caption", { id: captionId, className: caption, children: caption2 }),
2738
+ caption2 && /* @__PURE__ */ jsx39("caption", { id: captionId, className: caption, children: caption2 }),
2574
2739
  children
2575
2740
  ]
2576
2741
  }
@@ -2578,31 +2743,31 @@ var Table = /* @__PURE__ */ forwardRef33(function Table2({
2578
2743
  }
2579
2744
  ) });
2580
2745
  });
2581
- var TableHeader = /* @__PURE__ */ forwardRef33(
2746
+ var TableHeader = /* @__PURE__ */ forwardRef35(
2582
2747
  function TableHeader2({ className, ...rest }, ref) {
2583
- return /* @__PURE__ */ jsx37(TableSectionContext.Provider, { value: "header", children: /* @__PURE__ */ jsx37("thead", { ref, className: cx(header9, className), ...rest }) });
2748
+ return /* @__PURE__ */ jsx39(TableSectionContext.Provider, { value: "header", children: /* @__PURE__ */ jsx39("thead", { ref, className: cx(header9, className), ...rest }) });
2584
2749
  }
2585
2750
  );
2586
- var TableBody = /* @__PURE__ */ forwardRef33(
2751
+ var TableBody = /* @__PURE__ */ forwardRef35(
2587
2752
  function TableBody2({ className, ...rest }, ref) {
2588
- return /* @__PURE__ */ jsx37(TableSectionContext.Provider, { value: "body", children: /* @__PURE__ */ jsx37("tbody", { ref, className: cx(body4, className), ...rest }) });
2753
+ return /* @__PURE__ */ jsx39(TableSectionContext.Provider, { value: "body", children: /* @__PURE__ */ jsx39("tbody", { ref, className: cx(body4, className), ...rest }) });
2589
2754
  }
2590
2755
  );
2591
- var TableFooter = /* @__PURE__ */ forwardRef33(
2756
+ var TableFooter = /* @__PURE__ */ forwardRef35(
2592
2757
  function TableFooter2({ className, ...rest }, ref) {
2593
- return /* @__PURE__ */ jsx37(TableSectionContext.Provider, { value: "footer", children: /* @__PURE__ */ jsx37("tfoot", { ref, className: cx(footer4, className), ...rest }) });
2758
+ return /* @__PURE__ */ jsx39(TableSectionContext.Provider, { value: "footer", children: /* @__PURE__ */ jsx39("tfoot", { ref, className: cx(footer4, className), ...rest }) });
2594
2759
  }
2595
2760
  );
2596
- var TableRow = /* @__PURE__ */ forwardRef33(function TableRow2({ selected, className, ...rest }, ref) {
2597
- return /* @__PURE__ */ jsx37("tr", { ref, className: cx(row3, className), "data-state": selected ? "selected" : void 0, ...rest });
2761
+ var TableRow = /* @__PURE__ */ forwardRef35(function TableRow2({ selected, className, ...rest }, ref) {
2762
+ return /* @__PURE__ */ jsx39("tr", { ref, className: cx(row3, className), "data-state": selected ? "selected" : void 0, ...rest });
2598
2763
  });
2599
- var TableHead = /* @__PURE__ */ forwardRef33(function TableHead2({ align, sortDirection, onSort, scope, className, children, ...rest }, ref) {
2764
+ var TableHead = /* @__PURE__ */ forwardRef35(function TableHead2({ align, sortDirection, onSort, scope, className, children, ...rest }, ref) {
2600
2765
  const size = useContext3(TableSizeContext);
2601
2766
  const section = useContext3(TableSectionContext);
2602
2767
  const sortable = onSort !== void 0;
2603
2768
  const direction = sortDirection ?? "none";
2604
2769
  const SortIcon = direction === "descending" ? ArrowDownIcon : ArrowUpIcon;
2605
- return /* @__PURE__ */ jsx37(
2770
+ return /* @__PURE__ */ jsx39(
2606
2771
  "th",
2607
2772
  {
2608
2773
  ref,
@@ -2614,17 +2779,17 @@ var TableHead = /* @__PURE__ */ forwardRef33(function TableHead2({ align, sortDi
2614
2779
  className
2615
2780
  ),
2616
2781
  ...rest,
2617
- children: sortable ? /* @__PURE__ */ jsxs29("button", { type: "button", className: sortButton, onClick: onSort, children: [
2782
+ children: sortable ? /* @__PURE__ */ jsxs30("button", { type: "button", className: sortButton, onClick: onSort, children: [
2618
2783
  children,
2619
- /* @__PURE__ */ jsx37(SortIcon, { size: 14, className: sortIcon, "data-active": direction !== "none", "aria-hidden": true })
2784
+ /* @__PURE__ */ jsx39(SortIcon, { size: 14, className: sortIcon, "data-active": direction !== "none", "aria-hidden": true })
2620
2785
  ] }) : children
2621
2786
  }
2622
2787
  );
2623
2788
  });
2624
- var TableCell = /* @__PURE__ */ forwardRef33(function TableCell2({ align, className, ...rest }, ref) {
2789
+ var TableCell = /* @__PURE__ */ forwardRef35(function TableCell2({ align, className, ...rest }, ref) {
2625
2790
  const size = useContext3(TableSizeContext);
2626
2791
  const section = useContext3(TableSectionContext);
2627
- return /* @__PURE__ */ jsx37(
2792
+ return /* @__PURE__ */ jsx39(
2628
2793
  "td",
2629
2794
  {
2630
2795
  ref,
@@ -2636,53 +2801,53 @@ var TableCell = /* @__PURE__ */ forwardRef33(function TableCell2({ align, classN
2636
2801
 
2637
2802
  // src/components/Tabs/Tabs.tsx
2638
2803
  import * as RadixTabs from "@radix-ui/react-tabs";
2639
- import { createContext as createContext4, forwardRef as forwardRef34, useContext as useContext4 } from "react";
2804
+ import { createContext as createContext4, forwardRef as forwardRef36, useContext as useContext4 } from "react";
2640
2805
 
2641
2806
  // src/components/Tabs/Tabs.css.ts
2642
- import { createRuntimeFn as _7a46822 } from "@vanilla-extract/recipes/createRuntimeFn";
2807
+ import { createRuntimeFn as _7a46823 } from "@vanilla-extract/recipes/createRuntimeFn";
2643
2808
  var content10 = "fvhbtda";
2644
- var list4 = /* @__PURE__ */ _7a46822({ defaultClassName: "fvhbtd0", variantClassNames: { variant: { line: "fvhbtd1", soft: "fvhbtd2" } }, defaultVariants: { variant: "line" }, compoundVariants: [] });
2645
- var trigger3 = /* @__PURE__ */ _7a46822({ defaultClassName: "fvhbtd3", variantClassNames: { variant: { line: "fvhbtd4", soft: "fvhbtd5" }, size: { sm: "fvhbtd6", md: "fvhbtd7" } }, defaultVariants: { variant: "line", size: "md" }, compoundVariants: [[{ variant: "soft", size: "sm" }, "fvhbtd8"], [{ variant: "soft", size: "md" }, "fvhbtd9"]] });
2809
+ var list4 = /* @__PURE__ */ _7a46823({ defaultClassName: "fvhbtd0", variantClassNames: { variant: { line: "fvhbtd1", soft: "fvhbtd2" } }, defaultVariants: { variant: "line" }, compoundVariants: [] });
2810
+ var trigger3 = /* @__PURE__ */ _7a46823({ defaultClassName: "fvhbtd3", variantClassNames: { variant: { line: "fvhbtd4", soft: "fvhbtd5" }, size: { sm: "fvhbtd6", md: "fvhbtd7" } }, defaultVariants: { variant: "line", size: "md" }, compoundVariants: [[{ variant: "soft", size: "sm" }, "fvhbtd8"], [{ variant: "soft", size: "md" }, "fvhbtd9"]] });
2646
2811
 
2647
2812
  // src/components/Tabs/Tabs.tsx
2648
- import { jsx as jsx38 } from "react/jsx-runtime";
2813
+ import { jsx as jsx40 } from "react/jsx-runtime";
2649
2814
  var TabsStyleContext = /* @__PURE__ */ createContext4({ variant: "line", size: "md" });
2650
- var Tabs = /* @__PURE__ */ forwardRef34(function Tabs2({ variant = "line", size = "md", ...props }, ref) {
2815
+ var Tabs = /* @__PURE__ */ forwardRef36(function Tabs2({ variant = "line", size = "md", ...props }, ref) {
2651
2816
  const controlled = "value" in props ? { value: props.value ?? "" } : {};
2652
- return /* @__PURE__ */ jsx38(TabsStyleContext.Provider, { value: { variant, size }, children: /* @__PURE__ */ jsx38(RadixTabs.Root, { ref, ...props, ...controlled }) });
2817
+ return /* @__PURE__ */ jsx40(TabsStyleContext.Provider, { value: { variant, size }, children: /* @__PURE__ */ jsx40(RadixTabs.Root, { ref, ...props, ...controlled }) });
2653
2818
  });
2654
- var TabsList = /* @__PURE__ */ forwardRef34(function TabsList2({ className, ...rest }, ref) {
2819
+ var TabsList = /* @__PURE__ */ forwardRef36(function TabsList2({ className, ...rest }, ref) {
2655
2820
  const { variant } = useContext4(TabsStyleContext);
2656
- return /* @__PURE__ */ jsx38(RadixTabs.List, { ref, className: cx(list4({ variant }), className), ...rest });
2821
+ return /* @__PURE__ */ jsx40(RadixTabs.List, { ref, className: cx(list4({ variant }), className), ...rest });
2657
2822
  });
2658
- var TabsTrigger = /* @__PURE__ */ forwardRef34(function TabsTrigger2({ className, ...rest }, ref) {
2823
+ var TabsTrigger = /* @__PURE__ */ forwardRef36(function TabsTrigger2({ className, ...rest }, ref) {
2659
2824
  const { variant, size } = useContext4(TabsStyleContext);
2660
- return /* @__PURE__ */ jsx38(RadixTabs.Trigger, { ref, className: cx(trigger3({ variant, size }), className), ...rest });
2825
+ return /* @__PURE__ */ jsx40(RadixTabs.Trigger, { ref, className: cx(trigger3({ variant, size }), className), ...rest });
2661
2826
  });
2662
- var TabsContent = /* @__PURE__ */ forwardRef34(function TabsContent2({ className, ...rest }, ref) {
2663
- return /* @__PURE__ */ jsx38(RadixTabs.Content, { ref, className: cx(content10, className), ...rest });
2827
+ var TabsContent = /* @__PURE__ */ forwardRef36(function TabsContent2({ className, ...rest }, ref) {
2828
+ return /* @__PURE__ */ jsx40(RadixTabs.Content, { ref, className: cx(content10, className), ...rest });
2664
2829
  });
2665
2830
 
2666
2831
  // src/components/Textarea/Textarea.tsx
2667
2832
  import {
2668
- forwardRef as forwardRef35,
2833
+ forwardRef as forwardRef37,
2669
2834
  useCallback,
2670
- useId as useId13,
2671
- useRef as useRef11,
2672
- useState as useState10
2835
+ useId as useId14,
2836
+ useRef as useRef12,
2837
+ useState as useState11
2673
2838
  } from "react";
2674
2839
 
2675
2840
  // src/components/Textarea/Textarea.css.ts
2676
- import { createRuntimeFn as _7a46823 } from "@vanilla-extract/recipes/createRuntimeFn";
2841
+ import { createRuntimeFn as _7a46824 } from "@vanilla-extract/recipes/createRuntimeFn";
2677
2842
  var count = "_1koawa9";
2678
2843
  var countOver = "_1koawaa";
2679
2844
  var defaultWidth = "_1koawa7";
2680
2845
  var footer5 = "_1koawa8";
2681
- var textarea = /* @__PURE__ */ _7a46823({ defaultClassName: "_1koawa0", variantClassNames: { size: { sm: "_1koawa1", md: "_1koawa2", lg: "_1koawa3" }, resize: { none: "_1koawa4", vertical: "_1koawa5", both: "_1koawa6" } }, defaultVariants: { size: "md", resize: "vertical" }, compoundVariants: [] });
2846
+ var textarea = /* @__PURE__ */ _7a46824({ defaultClassName: "_1koawa0", variantClassNames: { size: { sm: "_1koawa1", md: "_1koawa2", lg: "_1koawa3" }, resize: { none: "_1koawa4", vertical: "_1koawa5", both: "_1koawa6" } }, defaultVariants: { size: "md", resize: "vertical" }, compoundVariants: [] });
2682
2847
 
2683
2848
  // src/components/Textarea/Textarea.tsx
2684
- import { jsx as jsx39, jsxs as jsxs30 } from "react/jsx-runtime";
2685
- var Textarea = /* @__PURE__ */ forwardRef35(function Textarea2({
2849
+ import { jsx as jsx41, jsxs as jsxs31 } from "react/jsx-runtime";
2850
+ var Textarea = /* @__PURE__ */ forwardRef37(function Textarea2({
2686
2851
  label: label6,
2687
2852
  helperText: helperText3,
2688
2853
  error,
@@ -2703,11 +2868,11 @@ var Textarea = /* @__PURE__ */ forwardRef35(function Textarea2({
2703
2868
  "aria-describedby": ariaDescribedBy,
2704
2869
  ...rest
2705
2870
  }, ref) {
2706
- const generatedId = useId13();
2871
+ const generatedId = useId14();
2707
2872
  const textareaId = id ?? generatedId;
2708
2873
  const helperId = helperText3 ? `${textareaId}-helper` : void 0;
2709
- const innerRef = useRef11(null);
2710
- const [uncontrolledLength, setUncontrolledLength] = useState10(() => String(defaultValue ?? "").length);
2874
+ const innerRef = useRef12(null);
2875
+ const [uncontrolledLength, setUncontrolledLength] = useState11(() => String(defaultValue ?? "").length);
2711
2876
  const length = value4 !== void 0 ? String(value4).length : uncontrolledLength;
2712
2877
  const fitHeight = useCallback(() => {
2713
2878
  const el = innerRef.current;
@@ -2722,12 +2887,12 @@ var Textarea = /* @__PURE__ */ forwardRef35(function Textarea2({
2722
2887
  fitHeight();
2723
2888
  onChange?.(event);
2724
2889
  };
2725
- return /* @__PURE__ */ jsxs30("div", { className: cx(field, fullWidth && fieldFullWidth), children: [
2726
- label6 && /* @__PURE__ */ jsxs30("label", { htmlFor: textareaId, className: label, children: [
2890
+ return /* @__PURE__ */ jsxs31("div", { className: cx(field, fullWidth && fieldFullWidth), children: [
2891
+ label6 && /* @__PURE__ */ jsxs31("label", { htmlFor: textareaId, className: label, children: [
2727
2892
  label6,
2728
- required && /* @__PURE__ */ jsx39("span", { className: requiredMark, "aria-hidden": true, children: "*" })
2893
+ required && /* @__PURE__ */ jsx41("span", { className: requiredMark, "aria-hidden": true, children: "*" })
2729
2894
  ] }),
2730
- /* @__PURE__ */ jsx39(
2895
+ /* @__PURE__ */ jsx41(
2731
2896
  "textarea",
2732
2897
  {
2733
2898
  ref: mergeRefs(innerRef, ref),
@@ -2749,36 +2914,36 @@ var Textarea = /* @__PURE__ */ forwardRef35(function Textarea2({
2749
2914
  ...rest
2750
2915
  }
2751
2916
  ),
2752
- (helperText3 || showCount) && /* @__PURE__ */ jsxs30("div", { className: footer5, children: [
2753
- helperText3 && /* @__PURE__ */ jsx39("p", { id: helperId, className: helperText({ error }), children: helperText3 }),
2754
- showCount && /* @__PURE__ */ jsx39("span", { className: cx(count, maxLength !== void 0 && length >= maxLength && countOver), children: maxLength !== void 0 ? `${length}/${maxLength}` : length })
2917
+ (helperText3 || showCount) && /* @__PURE__ */ jsxs31("div", { className: footer5, children: [
2918
+ helperText3 && /* @__PURE__ */ jsx41("p", { id: helperId, className: helperText({ error }), children: helperText3 }),
2919
+ showCount && /* @__PURE__ */ jsx41("span", { className: cx(count, maxLength !== void 0 && length >= maxLength && countOver), children: maxLength !== void 0 ? `${length}/${maxLength}` : length })
2755
2920
  ] })
2756
2921
  ] });
2757
2922
  });
2758
2923
 
2759
2924
  // src/components/Toast/Toast.tsx
2760
2925
  import * as RadixToast from "@radix-ui/react-toast";
2761
- import { createContext as createContext5, useCallback as useCallback2, useContext as useContext5, useMemo as useMemo4, useRef as useRef12, useState as useState11 } from "react";
2762
- import { XIcon as XIcon5 } from "@bestow-ui/icons";
2926
+ import { createContext as createContext5, useCallback as useCallback2, useContext as useContext5, useMemo as useMemo4, useRef as useRef13, useState as useState12 } from "react";
2927
+ import { XIcon as XIcon6 } from "@bestow-ui/icons";
2763
2928
 
2764
2929
  // src/components/Toast/Toast.css.ts
2765
- import { createRuntimeFn as _7a46824 } from "@vanilla-extract/recipes/createRuntimeFn";
2930
+ import { createRuntimeFn as _7a46825 } from "@vanilla-extract/recipes/createRuntimeFn";
2766
2931
  var action2 = "_1g11zvx9";
2767
2932
  var close = "_1g11zvxa";
2768
2933
  var description5 = "_1g11zvx8";
2769
2934
  var title5 = "_1g11zvx7";
2770
- var toast = /* @__PURE__ */ _7a46824({ defaultClassName: "_1g11zvx1", variantClassNames: { color: { primary: "_1g11zvx2", neutral: "_1g11zvx3", success: "_1g11zvx4", warning: "_1g11zvx5", danger: "_1g11zvx6" } }, defaultVariants: { color: "neutral" }, compoundVariants: [] });
2935
+ var toast = /* @__PURE__ */ _7a46825({ defaultClassName: "_1g11zvx1", variantClassNames: { color: { primary: "_1g11zvx2", neutral: "_1g11zvx3", success: "_1g11zvx4", warning: "_1g11zvx5", danger: "_1g11zvx6" } }, defaultVariants: { color: "neutral" }, compoundVariants: [] });
2771
2936
  var viewport2 = "_1g11zvx0";
2772
2937
 
2773
2938
  // src/components/Toast/Toast.tsx
2774
- import { jsx as jsx40, jsxs as jsxs31 } from "react/jsx-runtime";
2939
+ import { jsx as jsx42, jsxs as jsxs32 } from "react/jsx-runtime";
2775
2940
  var REMOVE_DELAY = 500;
2776
2941
  var ToastContext = /* @__PURE__ */ createContext5(null);
2777
2942
  function ToastProvider({ children, duration = 5e3, label: labelProp }) {
2778
2943
  const m = useMessages();
2779
2944
  const label6 = labelProp ?? m.notifications ?? "\uC54C\uB9BC";
2780
- const [toasts, setToasts] = useState11([]);
2781
- const nextId = useRef12(0);
2945
+ const [toasts, setToasts] = useState12([]);
2946
+ const nextId = useRef13(0);
2782
2947
  const portal2 = usePortalProps();
2783
2948
  const toast2 = useCallback2((options) => {
2784
2949
  const id = nextId.current++;
@@ -2791,9 +2956,9 @@ function ToastProvider({ children, duration = 5e3, label: labelProp }) {
2791
2956
  setTimeout(() => setToasts((prev) => prev.filter((t) => t.open || !isTarget(t))), REMOVE_DELAY);
2792
2957
  }, []);
2793
2958
  const value4 = useMemo4(() => ({ toast: toast2, dismiss }), [toast2, dismiss]);
2794
- return /* @__PURE__ */ jsx40(ToastContext.Provider, { value: value4, children: /* @__PURE__ */ jsxs31(RadixToast.Provider, { duration, label: label6, swipeDirection: "right", children: [
2959
+ return /* @__PURE__ */ jsx42(ToastContext.Provider, { value: value4, children: /* @__PURE__ */ jsxs32(RadixToast.Provider, { duration, label: label6, swipeDirection: "right", children: [
2795
2960
  children,
2796
- toasts.map(({ id, open, title: title6, description: description6, color, duration: itemDuration, action: action3 }) => /* @__PURE__ */ jsxs31(
2961
+ toasts.map(({ id, open, title: title6, description: description6, color, duration: itemDuration, action: action3 }) => /* @__PURE__ */ jsxs32(
2797
2962
  RadixToast.Root,
2798
2963
  {
2799
2964
  open,
@@ -2803,15 +2968,15 @@ function ToastProvider({ children, duration = 5e3, label: labelProp }) {
2803
2968
  },
2804
2969
  className: toast({ color }),
2805
2970
  children: [
2806
- /* @__PURE__ */ jsx40(RadixToast.Title, { className: title5, children: title6 }),
2807
- description6 && /* @__PURE__ */ jsx40(RadixToast.Description, { className: description5, children: description6 }),
2808
- action3 && /* @__PURE__ */ jsx40(RadixToast.Action, { asChild: true, altText: action3.altText ?? action3.label, className: action2, children: /* @__PURE__ */ jsx40(Button, { size: "sm", variant: "soft", color: "neutral", onClick: action3.onClick, children: action3.label }) }),
2809
- /* @__PURE__ */ jsx40(RadixToast.Close, { className: close, "aria-label": m.close ?? "\uB2EB\uAE30", children: /* @__PURE__ */ jsx40(XIcon5, { size: 16 }) })
2971
+ /* @__PURE__ */ jsx42(RadixToast.Title, { className: title5, children: title6 }),
2972
+ description6 && /* @__PURE__ */ jsx42(RadixToast.Description, { className: description5, children: description6 }),
2973
+ action3 && /* @__PURE__ */ jsx42(RadixToast.Action, { asChild: true, altText: action3.altText ?? action3.label, className: action2, children: /* @__PURE__ */ jsx42(Button, { size: "sm", variant: "soft", color: "neutral", onClick: action3.onClick, children: action3.label }) }),
2974
+ /* @__PURE__ */ jsx42(RadixToast.Close, { className: close, "aria-label": m.close ?? "\uB2EB\uAE30", children: /* @__PURE__ */ jsx42(XIcon6, { size: 16 }) })
2810
2975
  ]
2811
2976
  },
2812
2977
  id
2813
2978
  )),
2814
- /* @__PURE__ */ jsx40(RadixToast.Viewport, { className: cx(portal2.className, viewport2), style: portal2.style })
2979
+ /* @__PURE__ */ jsx42(RadixToast.Viewport, { className: cx(portal2.className, viewport2), style: portal2.style })
2815
2980
  ] }) });
2816
2981
  }
2817
2982
  function useToast() {
@@ -2828,7 +2993,7 @@ var arrow2 = "z7rufs1";
2828
2993
  var content11 = "z7rufs0";
2829
2994
 
2830
2995
  // src/components/Tooltip/Tooltip.tsx
2831
- import { jsx as jsx41, jsxs as jsxs32 } from "react/jsx-runtime";
2996
+ import { jsx as jsx43, jsxs as jsxs33 } from "react/jsx-runtime";
2832
2997
  function Tooltip({
2833
2998
  content: content12,
2834
2999
  children,
@@ -2843,9 +3008,9 @@ function Tooltip({
2843
3008
  }) {
2844
3009
  const portal2 = usePortalProps();
2845
3010
  if (disabled || content12 == null || content12 === "") return children;
2846
- return /* @__PURE__ */ jsx41(RadixTooltip.Provider, { delayDuration: delay, children: /* @__PURE__ */ jsxs32(RadixTooltip.Root, { open, defaultOpen, onOpenChange, children: [
2847
- /* @__PURE__ */ jsx41(RadixTooltip.Trigger, { asChild: true, children }),
2848
- /* @__PURE__ */ jsx41(RadixTooltip.Portal, { children: /* @__PURE__ */ jsxs32(
3011
+ return /* @__PURE__ */ jsx43(RadixTooltip.Provider, { delayDuration: delay, children: /* @__PURE__ */ jsxs33(RadixTooltip.Root, { open, defaultOpen, onOpenChange, children: [
3012
+ /* @__PURE__ */ jsx43(RadixTooltip.Trigger, { asChild: true, children }),
3013
+ /* @__PURE__ */ jsx43(RadixTooltip.Portal, { children: /* @__PURE__ */ jsxs33(
2849
3014
  RadixTooltip.Content,
2850
3015
  {
2851
3016
  side,
@@ -2856,7 +3021,7 @@ function Tooltip({
2856
3021
  style: portal2.style,
2857
3022
  children: [
2858
3023
  content12,
2859
- /* @__PURE__ */ jsx41(RadixTooltip.Arrow, { className: arrow2, width: 10, height: 5 })
3024
+ /* @__PURE__ */ jsx43(RadixTooltip.Arrow, { className: arrow2, width: 10, height: 5 })
2860
3025
  ]
2861
3026
  }
2862
3027
  ) })
@@ -2864,14 +3029,14 @@ function Tooltip({
2864
3029
  }
2865
3030
 
2866
3031
  // src/components/Typography/Typography.tsx
2867
- import { forwardRef as forwardRef36 } from "react";
3032
+ import { forwardRef as forwardRef38 } from "react";
2868
3033
 
2869
3034
  // src/components/Typography/Typography.css.ts
2870
- import { createRuntimeFn as _7a46825 } from "@vanilla-extract/recipes/createRuntimeFn";
2871
- var typography = /* @__PURE__ */ _7a46825({ defaultClassName: "kiolio0", variantClassNames: { variant: { display: "kiolio1", h1: "kiolio2", h2: "kiolio3", h3: "kiolio4", h4: "kiolio5", "body-lg": "kiolio6", body: "kiolio7", "body-sm": "kiolio8", caption: "kiolio9" }, color: { "default": "kiolioa", muted: "kioliob", subtle: "kiolioc", primary: "kioliod", danger: "kiolioe", success: "kioliof", warning: "kioliog", inherit: "kiolioh" }, weight: { regular: "kiolioi", medium: "kiolioj", semibold: "kioliok", bold: "kioliol" }, align: { start: "kioliom", center: "kiolion", end: "kiolioo" }, truncate: { true: "kioliop" } }, defaultVariants: { variant: "body", color: "default" }, compoundVariants: [] });
3035
+ import { createRuntimeFn as _7a46826 } from "@vanilla-extract/recipes/createRuntimeFn";
3036
+ var typography = /* @__PURE__ */ _7a46826({ defaultClassName: "kiolio0", variantClassNames: { variant: { display: "kiolio1", h1: "kiolio2", h2: "kiolio3", h3: "kiolio4", h4: "kiolio5", "body-lg": "kiolio6", body: "kiolio7", "body-sm": "kiolio8", caption: "kiolio9" }, color: { "default": "kiolioa", muted: "kioliob", subtle: "kiolioc", primary: "kioliod", danger: "kiolioe", success: "kioliof", warning: "kioliog", inherit: "kiolioh" }, weight: { regular: "kiolioi", medium: "kiolioj", semibold: "kioliok", bold: "kioliol" }, align: { start: "kioliom", center: "kiolion", end: "kiolioo" }, truncate: { true: "kioliop" } }, defaultVariants: { variant: "body", color: "default" }, compoundVariants: [] });
2872
3037
 
2873
3038
  // src/components/Typography/Typography.tsx
2874
- import { jsx as jsx42 } from "react/jsx-runtime";
3039
+ import { jsx as jsx44 } from "react/jsx-runtime";
2875
3040
  var defaultElement = {
2876
3041
  display: "h1",
2877
3042
  h1: "h1",
@@ -2883,9 +3048,9 @@ var defaultElement = {
2883
3048
  "body-sm": "p",
2884
3049
  caption: "span"
2885
3050
  };
2886
- var Typography = /* @__PURE__ */ forwardRef36(function Typography2({ variant = "body", as, color, weight, align, truncate, className, ...rest }, ref) {
3051
+ var Typography = /* @__PURE__ */ forwardRef38(function Typography2({ variant = "body", as, color, weight, align, truncate, className, ...rest }, ref) {
2887
3052
  const Component = as ?? defaultElement[variant];
2888
- return /* @__PURE__ */ jsx42(
3053
+ return /* @__PURE__ */ jsx44(
2889
3054
  Component,
2890
3055
  {
2891
3056
  ref,
@@ -2896,7 +3061,7 @@ var Typography = /* @__PURE__ */ forwardRef36(function Typography2({ variant = "
2896
3061
  });
2897
3062
 
2898
3063
  // src/components/VerificationCodeInput/VerificationCodeInput.tsx
2899
- import { forwardRef as forwardRef37, useEffect as useEffect7, useId as useId14, useRef as useRef13, useState as useState12 } from "react";
3064
+ import { forwardRef as forwardRef39, useEffect as useEffect7, useId as useId15, useRef as useRef14, useState as useState13 } from "react";
2900
3065
 
2901
3066
  // src/components/VerificationCodeInput/VerificationCodeInput.css.ts
2902
3067
  var input4 = "ea01812";
@@ -2906,9 +3071,9 @@ var slots = "ea01811";
2906
3071
  var timer = "ea01814";
2907
3072
 
2908
3073
  // src/components/VerificationCodeInput/VerificationCodeInput.tsx
2909
- import { jsx as jsx43, jsxs as jsxs33 } from "react/jsx-runtime";
3074
+ import { jsx as jsx45, jsxs as jsxs34 } from "react/jsx-runtime";
2910
3075
  var formatTime = (seconds) => `${String(Math.floor(seconds / 60)).padStart(2, "0")}:${String(seconds % 60).padStart(2, "0")}`;
2911
- var VerificationCodeInput = /* @__PURE__ */ forwardRef37(
3076
+ var VerificationCodeInput = /* @__PURE__ */ forwardRef39(
2912
3077
  function VerificationCodeInput2(props, ref) {
2913
3078
  const {
2914
3079
  length = 6,
@@ -2935,19 +3100,19 @@ var VerificationCodeInput = /* @__PURE__ */ forwardRef37(
2935
3100
  const label6 = labelProp ?? m.verificationCode ?? "\uC778\uC99D\uBC88\uD638";
2936
3101
  const resendText = resendTextProp ?? m.resend ?? "\uC7AC\uC804\uC1A1";
2937
3102
  const expiredText = expiredTextProp ?? m.verificationExpired ?? "\uC778\uC99D \uC2DC\uAC04\uC774 \uC9C0\uB0AC\uC5B4\uC694. \uC7AC\uC804\uC1A1\uD574 \uC8FC\uC138\uC694.";
2938
- const generatedId = useId14();
3103
+ const generatedId = useId15();
2939
3104
  const inputId = id ?? generatedId;
2940
3105
  const helperId = `${inputId}-helper`;
2941
3106
  const statusId = `${inputId}-status`;
2942
- const inputRef = useRef13(null);
3107
+ const inputRef = useRef14(null);
2943
3108
  const isControlled = "value" in props;
2944
- const [innerValue, setInnerValue] = useState12(defaultValue ?? "");
3109
+ const [innerValue, setInnerValue] = useState13(defaultValue ?? "");
2945
3110
  const code = (isControlled ? value4 ?? "" : innerValue).slice(0, length);
2946
- const [focused, setFocused] = useState12(false);
2947
- const [endAt, setEndAt] = useState12(() => expiresIn ? Date.now() + expiresIn * 1e3 : null);
2948
- const [remaining, setRemaining] = useState12(expiresIn ?? 0);
3111
+ const [focused, setFocused] = useState13(false);
3112
+ const [endAt, setEndAt] = useState13(() => expiresIn ? Date.now() + expiresIn * 1e3 : null);
3113
+ const [remaining, setRemaining] = useState13(expiresIn ?? 0);
2949
3114
  const expired = expiresIn !== void 0 && remaining <= 0;
2950
- const onExpireRef = useRef13(onExpire);
3115
+ const onExpireRef = useRef14(onExpire);
2951
3116
  useEffect7(() => {
2952
3117
  onExpireRef.current = onExpire;
2953
3118
  });
@@ -2986,17 +3151,17 @@ var VerificationCodeInput = /* @__PURE__ */ forwardRef37(
2986
3151
  };
2987
3152
  const description6 = helperText3 ?? m.verificationCodeHint?.(length, type) ?? `${length}\uC790\uB9AC ${type === "numeric" ? "\uC22B\uC790" : "\uBB38\uC790"}\uB97C \uC785\uB825\uD558\uC138\uC694.`;
2988
3153
  const activeIndex = Math.min(code.length, length - 1);
2989
- return /* @__PURE__ */ jsxs33(
3154
+ return /* @__PURE__ */ jsxs34(
2990
3155
  "div",
2991
3156
  {
2992
3157
  className: cx(field, className),
2993
3158
  "data-invalid": error || void 0,
2994
3159
  "data-disabled": disabled || void 0,
2995
3160
  children: [
2996
- /* @__PURE__ */ jsx43("label", { htmlFor: inputId, className: label, children: label6 }),
2997
- /* @__PURE__ */ jsxs33("div", { className: row4, children: [
2998
- /* @__PURE__ */ jsxs33("div", { className: slots, children: [
2999
- /* @__PURE__ */ jsx43(
3161
+ /* @__PURE__ */ jsx45("label", { htmlFor: inputId, className: label, children: label6 }),
3162
+ /* @__PURE__ */ jsxs34("div", { className: row4, children: [
3163
+ /* @__PURE__ */ jsxs34("div", { className: slots, children: [
3164
+ /* @__PURE__ */ jsx45(
3000
3165
  "input",
3001
3166
  {
3002
3167
  ref: mergeRefs(ref, inputRef),
@@ -3016,7 +3181,7 @@ var VerificationCodeInput = /* @__PURE__ */ forwardRef37(
3016
3181
  className: input4
3017
3182
  }
3018
3183
  ),
3019
- Array.from({ length }, (_, index) => /* @__PURE__ */ jsx43(
3184
+ Array.from({ length }, (_, index) => /* @__PURE__ */ jsx45(
3020
3185
  "div",
3021
3186
  {
3022
3187
  className: slot,
@@ -3027,12 +3192,12 @@ var VerificationCodeInput = /* @__PURE__ */ forwardRef37(
3027
3192
  index
3028
3193
  ))
3029
3194
  ] }),
3030
- expiresIn !== void 0 && /* @__PURE__ */ jsx43("span", { role: "timer", className: timer, children: formatTime(remaining) }),
3031
- onResend && /* @__PURE__ */ jsx43(Button, { size: "sm", variant: "outline", color: "neutral", onClick: resend, disabled, children: resendText })
3195
+ expiresIn !== void 0 && /* @__PURE__ */ jsx45("span", { role: "timer", className: timer, children: formatTime(remaining) }),
3196
+ onResend && /* @__PURE__ */ jsx45(Button, { size: "sm", variant: "outline", color: "neutral", onClick: resend, disabled, children: resendText })
3032
3197
  ] }),
3033
- /* @__PURE__ */ jsx43("p", { id: helperId, className: helperText({ error }), children: description6 }),
3034
- /* @__PURE__ */ jsx43("p", { id: statusId, role: "status", className: helperText({ error: true }), children: expired ? expiredText : "" }),
3035
- name && /* @__PURE__ */ jsx43("input", { type: "hidden", name, value: code })
3198
+ /* @__PURE__ */ jsx45("p", { id: helperId, className: helperText({ error }), children: description6 }),
3199
+ /* @__PURE__ */ jsx45("p", { id: statusId, role: "status", className: helperText({ error: true }), children: expired ? expiredText : "" }),
3200
+ name && /* @__PURE__ */ jsx45("input", { type: "hidden", name, value: code })
3036
3201
  ]
3037
3202
  }
3038
3203
  );
@@ -3080,8 +3245,10 @@ export {
3080
3245
  PopoverClose,
3081
3246
  Progress,
3082
3247
  RadioGroup,
3248
+ SegmentedControl,
3083
3249
  Select,
3084
3250
  Skeleton,
3251
+ SkipLink,
3085
3252
  Slider,
3086
3253
  Spinner,
3087
3254
  Stack,