@iamfiro/design 0.3.2 → 0.3.5

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 (163) hide show
  1. package/agents/INDEX.md +1 -1
  2. package/agents/app-shell/AGENTS.md +99 -1
  3. package/agents/brand-icon/AGENTS.md +1 -1
  4. package/agents/social-login-button/AGENTS.md +4 -3
  5. package/lib/components/Accordion/Accordion2.js +74 -74
  6. package/lib/components/ActionBar/ActionBar2.js +44 -42
  7. package/lib/components/Alert/Alert2.js +67 -67
  8. package/lib/components/AppShell/AppShell2.js +72 -66
  9. package/lib/components/AreaChart/AreaChart.js +45 -45
  10. package/lib/components/BarChart/BarChart2.js +128 -128
  11. package/lib/components/BarList/BarList2.js +105 -105
  12. package/lib/components/Breadcrumb/Breadcrumb2.js +63 -64
  13. package/lib/components/Calendar/Calendar2.js +197 -197
  14. package/lib/components/Calendar/DatePicker2.js +100 -100
  15. package/lib/components/Calendar/date.js +47 -70
  16. package/lib/components/Card/Card2.js +101 -74
  17. package/lib/components/CardFrame/CardFrame2.js +52 -56
  18. package/lib/components/Chart/ChartParts.js +88 -88
  19. package/lib/components/Chart/chart2.js +63 -63
  20. package/lib/components/Chart/useChartInteraction.js +43 -43
  21. package/lib/components/ChatBubble/ChatBubble2.js +111 -111
  22. package/lib/components/ChatBubble/formatChatTime.js +38 -43
  23. package/lib/components/ChatComposer/ChatComposer2.js +96 -96
  24. package/lib/components/CodeBlock/CodeBlock2.js +65 -65
  25. package/lib/components/CodeBlock/highlight.js +84 -84
  26. package/lib/components/ColorPicker/ColorPicker2.js +263 -263
  27. package/lib/components/ColorPicker/color.js +92 -92
  28. package/lib/components/ColorPicker/presets.js +35 -39
  29. package/lib/components/Combobox/Combobox2.js +134 -134
  30. package/lib/components/CommandMenu/CommandMenu.js +130 -131
  31. package/lib/components/Comment/Comment2.js +64 -63
  32. package/lib/components/ContextMenu/ContextMenu2.js +84 -84
  33. package/lib/components/DataGrid/DataGrid2.js +1182 -1180
  34. package/lib/components/DataGrid/GridPopover.js +84 -84
  35. package/lib/components/DataGrid/anchor.js +29 -28
  36. package/lib/components/DataGrid/model.js +308 -307
  37. package/lib/components/DataGrid/panels.js +398 -399
  38. package/lib/components/DataGrid/typeMeta.js +41 -40
  39. package/lib/components/DataGrid/types.js +39 -40
  40. package/lib/components/DescriptionList/DescriptionList2.js +105 -105
  41. package/lib/components/Dialog/AlertDialog.js +90 -89
  42. package/lib/components/Dialog/Dialog2.js +71 -72
  43. package/lib/components/Dialog/modal.js +62 -60
  44. package/lib/components/Drawer/Drawer2.js +167 -166
  45. package/lib/components/DropdownMenu/DropdownMenu2.js +260 -258
  46. package/lib/components/DropdownMenu/menuCore.js +29 -28
  47. package/lib/components/Dropzone/Dropzone2.js +78 -77
  48. package/lib/components/EmptyState/EmptyState2.js +57 -57
  49. package/lib/components/FileChip/FileChip2.js +53 -77
  50. package/lib/components/FileUpload/FileUpload.js +168 -167
  51. package/lib/components/FilterChips/FilterChips2.js +60 -60
  52. package/lib/components/FunnelChart/FunnelChart2.js +174 -174
  53. package/lib/components/FunnelChart/funnel.js +44 -42
  54. package/lib/components/Highlight/Highlight2.js +55 -55
  55. package/lib/components/HoverCard/HoverCard.js +71 -96
  56. package/lib/components/InlineDiff/InlineDiff2.js +128 -129
  57. package/lib/components/InlineDiff/diff.js +79 -79
  58. package/lib/components/InlineDiff/useDiffReview.js +61 -62
  59. package/lib/components/Kanban/Kanban2.js +387 -389
  60. package/lib/components/Kanban/KanbanCard.js +84 -84
  61. package/lib/components/Kanban/move.js +32 -25
  62. package/lib/components/LineChart/LineChart2.js +228 -228
  63. package/lib/components/List/List2.js +62 -62
  64. package/lib/components/Listbox/Listbox2.js +92 -92
  65. package/lib/components/Marker/Marker2.js +50 -56
  66. package/lib/components/Menubar/Menubar2.js +117 -116
  67. package/lib/components/MultiSelect/MultiSelect2.js +111 -111
  68. package/lib/components/NavigationMenu/NavigationMenu2.js +231 -231
  69. package/lib/components/NoticeStack/NoticeStack2.js +99 -99
  70. package/lib/components/NumberStepper/NumberStepper2.js +60 -60
  71. package/lib/components/OtpInput/OtpInput2.js +90 -89
  72. package/lib/components/Pagination/Pagination2.js +105 -105
  73. package/lib/components/Pagination/paginationRange.js +37 -37
  74. package/lib/components/PhoneInput/PhoneInput.js +75 -76
  75. package/lib/components/PieChart/PieChart2.js +166 -166
  76. package/lib/components/PieChart/arc.js +71 -69
  77. package/lib/components/PieChart/useArcTween.js +60 -62
  78. package/lib/components/Popover/Popover2.js +85 -86
  79. package/lib/components/ProgressTracker/ProgressTracker2.js +134 -134
  80. package/lib/components/Rating/Rating2.js +90 -89
  81. package/lib/components/Resizable/Resizable2.js +128 -129
  82. package/lib/components/Resizable/layout.js +51 -51
  83. package/lib/components/ScaledPreview/ScaledPreview2.js +49 -48
  84. package/lib/components/ScatterChart/ScatterChart2.js +214 -213
  85. package/lib/components/ScatterChart/scatter.js +49 -52
  86. package/lib/components/ScrollArea/ScrollArea2.js +115 -117
  87. package/lib/components/Select/Select2.js +82 -82
  88. package/lib/components/Sidebar/Sidebar2.js +91 -85
  89. package/lib/components/Sidebar/rail.js +43 -0
  90. package/lib/components/Skeleton/Skeleton2.js +63 -64
  91. package/lib/components/Slider/Slider2.js +65 -66
  92. package/lib/components/SocialLoginButton/SocialLoginButton.js +76 -69
  93. package/lib/components/SparkChart/SparkChart2.js +126 -127
  94. package/lib/components/SparkChart/spark.js +66 -42
  95. package/lib/components/Sparkbar/Sparkbar2.js +60 -60
  96. package/lib/components/SplitView/SplitView2.js +51 -51
  97. package/lib/components/Stat/Stat2.js +79 -79
  98. package/lib/components/StepList/StepList2.js +75 -75
  99. package/lib/components/Table/Table2.js +71 -71
  100. package/lib/components/Tabs/Tabs2.js +74 -74
  101. package/lib/components/TagInput/TagInput2.js +223 -221
  102. package/lib/components/TimePicker/TimePicker2.js +197 -195
  103. package/lib/components/TimePicker/time.js +59 -56
  104. package/lib/components/Timeline/Timeline2.js +195 -195
  105. package/lib/components/Timeline/scale.js +64 -66
  106. package/lib/components/Toast/Toaster.js +139 -139
  107. package/lib/components/Toast/store.js +72 -76
  108. package/lib/components/ToggleGroup/ToggleGroup2.js +79 -79
  109. package/lib/components/Toolbar/Toolbar2.js +165 -164
  110. package/lib/components/Tracker/Tracker2.js +72 -72
  111. package/lib/components/TreeDiagram/TreeDiagram2.js +96 -97
  112. package/lib/components/TreeView/TreeView2.js +152 -151
  113. package/lib/hooks/timing.js +34 -36
  114. package/lib/hooks/useControllableState.js +29 -30
  115. package/lib/hooks/useCountdown.js +51 -53
  116. package/lib/hooks/useDigitInput.js +81 -55
  117. package/lib/hooks/useDismiss.js +53 -56
  118. package/lib/hooks/useElapsed.js +48 -49
  119. package/lib/hooks/useFloating.js +36 -36
  120. package/lib/hooks/useFocusTrap.js +32 -32
  121. package/lib/hooks/usePresence.js +49 -49
  122. package/lib/hooks/usePressToOpen.js +40 -40
  123. package/lib/hooks/useScrollLock.js +50 -49
  124. package/lib/hooks/useSelection.js +42 -47
  125. package/lib/index.js +138 -139
  126. package/lib/primitives/AspectRatio2.js +58 -57
  127. package/lib/primitives/BrandIcon.js +210 -179
  128. package/lib/primitives/ColorDot2.js +42 -41
  129. package/lib/primitives/CopyButton2.js +59 -58
  130. package/lib/primitives/CountBadge2.js +58 -63
  131. package/lib/primitives/Countdown2.js +38 -37
  132. package/lib/primitives/Delta2.js +37 -37
  133. package/lib/primitives/Elapsed.js +42 -40
  134. package/lib/primitives/FileIcon2.js +102 -102
  135. package/lib/primitives/Flag2.js +124 -124
  136. package/lib/primitives/IconStack2.js +45 -23
  137. package/lib/primitives/IconTile2.js +45 -41
  138. package/lib/primitives/Kbd2.js +48 -48
  139. package/lib/primitives/Layout2.js +71 -71
  140. package/lib/primitives/Link2.js +40 -42
  141. package/lib/primitives/MaskedText2.js +50 -50
  142. package/lib/primitives/Progress2.js +78 -77
  143. package/lib/primitives/RelativeTime.js +55 -58
  144. package/lib/primitives/SearchInput2.js +72 -68
  145. package/lib/primitives/SelectorButton2.js +60 -61
  146. package/lib/primitives/Spinner2.js +48 -49
  147. package/lib/primitives/StatusIcon2.js +69 -69
  148. package/lib/primitives/Swatch2.js +65 -69
  149. package/lib/primitives/Tooltip2.js +92 -92
  150. package/lib/primitives/Typography2.js +37 -37
  151. package/lib/primitives/formatCountdown.js +38 -38
  152. package/lib/primitives/formatElapsed.js +43 -45
  153. package/lib/primitives/formatRelativeTime.js +54 -54
  154. package/lib/primitives/hotkey.js +77 -77
  155. package/lib/primitives/index.js +162 -161
  156. package/lib/primitives/maskValue.js +54 -51
  157. package/lib/style.css +1 -1
  158. package/lib/types/components/AppShell/AppShell.d.ts +9 -2
  159. package/lib/types/components/Sidebar/rail.d.ts +4 -0
  160. package/lib/types/components/SocialLoginButton/SocialLoginButton.d.ts +1 -1
  161. package/lib/types/components/index.d.ts +1 -0
  162. package/lib/types/primitives/BrandIcon.d.ts +1 -1
  163. package/package.json +1 -1
@@ -1,28 +1,28 @@
1
1
  "use client";
2
2
  function e(t, n) {
3
- t -= 217;
4
- let r = y(), i = r[t];
5
- e.KhrHfu === void 0 && (e.HuYImu = function(e) {
3
+ t -= 219;
4
+ let r = p(), i = r[t];
5
+ e.Jxiqpd === void 0 && (e.bPvqkZ = function(e) {
6
6
  let t = "", n = "";
7
7
  for (let n = 0, r, i, a = 0; i = e.charAt(a++); ~i && (r = n % 4 ? r * 64 + i : i, n++ % 4) && (t += String.fromCharCode(255 & r >> (-2 * n & 6)))) i = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=".indexOf(i);
8
8
  for (let e = 0, r = t.length; e < r; e++) n += "%" + ("00" + t.charCodeAt(e).toString(16)).slice(-2);
9
9
  return decodeURIComponent(n);
10
- }, e.LNpMAp = {}, e.KhrHfu = !0);
10
+ }, e.mKJgiz = {}, e.Jxiqpd = !0);
11
11
  let a = r[0];
12
- e.LvKzrZ !== a && (e.LNpMAp = {}, e.LvKzrZ = a);
13
- let o = e.LNpMAp[t];
14
- return o === void 0 ? (i = e.HuYImu(i), e.LNpMAp[t] = i) : i = o, i;
12
+ e.zEfzCO !== a && (e.mKJgiz = {}, e.zEfzCO = a);
13
+ let o = e.mKJgiz[t];
14
+ return o === void 0 ? (i = e.bPvqkZ(i), e.mKJgiz[t] = i) : i = o, i;
15
15
  }
16
16
  const t = e;
17
17
  (function(t, n) {
18
18
  let r = e, i = t();
19
19
  for (;;) try {
20
- if (-parseInt(r(265)) / 1 + parseInt(r(267)) / 2 + parseInt(r(249)) / 3 + parseInt(r(220)) / 4 * (parseInt(r(230)) / 5) + parseInt(r(284)) / 6 * (parseInt(r(232)) / 7) + parseInt(r(245)) / 8 * (parseInt(r(238)) / 9) + -parseInt(r(280)) / 10 == n) break;
20
+ if (parseInt(r(265)) / 1 + -parseInt(r(293)) / 2 + parseInt(r(268)) / 3 + -parseInt(r(234)) / 4 * (-parseInt(r(250)) / 5) + parseInt(r(261)) / 6 * (parseInt(r(270)) / 7) + parseInt(r(240)) / 8 * (parseInt(r(259)) / 9) + -parseInt(r(277)) / 10 * (parseInt(r(246)) / 11) == n) break;
21
21
  i.push(i.shift());
22
22
  } catch {
23
23
  i.push(i.shift());
24
24
  }
25
- })(y, 392814);
25
+ })(p, 983887);
26
26
  import { usePresence as n } from "../../hooks/usePresence.js";
27
27
  import { Inline as r, Stack as i } from "../../primitives/Layout2.js";
28
28
  import { useControllableState as a } from "../../hooks/useControllableState.js";
@@ -30,214 +30,215 @@ import { Button as o, cx as s } from "../../primitives/index.js";
30
30
  import { useDismiss as c } from "../../hooks/useDismiss.js";
31
31
  import { Listbox as l, ListboxPopover as u, nextEnabled as d, optionId as f } from "../Listbox/Listbox2.js";
32
32
  /* empty css */
33
- import { Popover as p } from "../Popover/Popover2.js";
34
- /* empty css */
35
- import { formatDuration as m, formatTime as h, minutesToTime as g, parseTimeInput as _, timeToMinutes as v } from "./time.js";
36
- function y() {
37
- let e = /* @__PURE__ */ "BgLZDa.yxv0BW.ChvZAa.zhmTy29UDhjVBa.qxjYB3DeB3DU.y29SDw1UCW.mJCZmtjwAeDSr2O.zNjVBq.zgLHBg9N.C29YDa.BwLU.rxnJyxbL.z2v0sg91CNm.w3jVBgu9iMXPC3rIB3GIxq.BgfIzwW.7iUC6RceioYNGoYASoQ4Sa.mtb1EKTXB2K.w2rHDgeTA2v5psi.mty0otqXn0rKDuHQEG.B3b0Aw9U.C2nYB2XSvg8.AxrLBxm.zhmTDgLTzwnVBf9FAxrLBq.CgLJAW.nJy2mdu4nxfJtunPuW.y3vYCMvUDfrHCMDLDa.zhmTDgLTzwzPzwXK.BgvUz3rO.z2HVC3q.C2vSzwn0zwq.vgfI.oe5tv3nwyG.Aw5JBhvKzxm.zhmTDgLTzwnVBhm.Aw5WDxq.ntq3mZCXAejYsLf4.zMXVB3i.CgfYzw50rwXLBwvUDa.C29Tzq.zhmTC2vSzwn0lxrYAwDNzxjFx2LJB24GzhmTzgf0zwzPzwXKx19Py29U.qxjYB3DsAwDODa.rw50zxi.C3bHBG.A2v5.qxjYB3DvCa.lwXPC3q.y29TyM9IB3G.A2v5CW.zhmTC2vSzwn0lxrYAwDNzxiTlq.CxvLCNLtzwXLy3rVCG.zgLZywjSzwq.mZyYmte2tvfZCufO.C21VB3rO.mtu2otiWnNvPwgP2qq.y3vYCMvUDa.zgL2.DMfSDwu.zMLUzeLUzgv4.sg9Tzq.BgLZDgjVEa.CxvLCNLtzwXLy3rVCKfSBa.yMv0D2vLBG.ChjLDMvUDerLzMf1Bhq.B2zMC2v0vg9W.zMLUza.C2vSzwn0.mtiWmtq4mJbWrLzQwhK.zhmTDgLTzwnVBa.7iUC6RceioYEHEUGPsdRMjdRIPqG7isG7yoD.zM9JDxm.nKjvwxjlAG.yNv0Dg9U.y2vPBa.C3rVCfbYB3bHz2f0Aw9U.zhmTC2vSzwn0lxrYAwDNzxi.DgfYz2v0.BwfW.zhmTC2vSzwn0lxrYAwDNzxjFx2nSzwfY.zhmTzgf0zwzPzwXKx19PBNb1Da.AxndB21WB3nPBMC.ChjPBwfYEq".split(".");
38
- return y = function() {
33
+ function p() {
34
+ let e = /* @__PURE__ */ "C29YDa.7iUC6RceioYeOo2dNq.qxjYB3DeB3DU.y2vPBa.zhmTC2vSzwn0lxrYAwDNzxjFx2nSzwfY.yxv0BW.mJG2mtaXntbXu2XVy3e.Aw5WDxq.A2v5.zgLZywjSzwq.7jIK7kcel+YyPo2BHa.zgL2.DgfYz2v0.A2v5CW.CxvLCNLtzwXLy3rVCG.CgLJAW.yMv0D2vLBG.ChvZAa.BwfW.AxndB21WB3nPBMC.qxjYB3DsAwDODa.A2v5q29Kzq.mtC4mtm5ngjjBgfyra.y2XVC2LUzW.zMLUza.C3rHCNq.AxrLBxm.DhjPBq.BgfIzwW.BgLZDa.C3rVCfbYB3bHz2f0Aw9U.C29Tzq.ChjLDMvUDerLzMf1Bhq.B2zMC2v0vg9W.6RoG66w8ioYiMcdSNOJRIPqG7iUC6Rce7j20ioYxHUYwToYALa.B3b0Aw9U.zhmTDgLTzwnVBhm.CgfKu3rHCNq.ng56tgXkCW.z2v0sg91CNm.C2vSzwn0zwq.zhmTC2vSzwn0lxrYAwDNzxi.C3bHBG.CgfYzw50rwXLBwvUDa.ohbOuKjPvG.BgLZDgjVEa.rxnJyxbL.zhmTC2vSzwn0lxrYAwDNzxiTlq.sg9Tzq.CxvLCNLtzwXLy3rVCKfSBa.mtf4vfvHtMe.zhmTzgf0zwzPzwXK.zM9JDxm.7iUC6RceioYNGoYASoQ4Sa.otmWote4nwPfAwvnzW.zNjVBq.zMXVB3i.B2zM.C2nYB2XSvg8.w3jVBgu9iMXPC3rIB3GIxq.DMfSDwu.y3vYCMvUDa.rw50zxi.nJu3otK5owzyDNrLBW.qxjYB3DvCa.nJzgywHxrMS.C2vSzwn0.zMLUzeLUzgv4.y29SDw1UCW.mte1nZm5nuPAsLjXtW.ChjPBwfYEq.zgLHBg9N.mtmXmZqYnePJAKrzwG.BwLU.mZq4mZC2ze9rAhLP".split(".");
35
+ return p = function() {
39
36
  return e;
40
- }, y();
37
+ }, p();
41
38
  }
39
+ import { Popover as m } from "../Popover/Popover2.js";
40
+ /* empty css */
41
+ import { formatDuration as ee, formatTime as h, minutesToTime as g, parseTimeInput as _, timeToMinutes as v } from "./time.js";
42
42
  /* empty css */
43
- import { useEffect as b, useId as x, useMemo as S, useRef as C, useState as w } from "react";
44
- import { Clock as ee, X as te } from "lucide-react";
45
- import { Fragment as ne, jsx as T, jsxs as E } from "react/jsx-runtime";
46
- var re = (t) => {
47
- let n = e, r = /* @__PURE__ */ new Date(), i = r[n(226)]() * 60 + r.getMinutes();
48
- return Math[n(224)](Math[n(286)](i / t) * t, 1440 - t);
43
+ import { useEffect as y, useId as b, useMemo as x, useRef as S, useState as C } from "react";
44
+ import { Clock as te, X as ne } from "lucide-react";
45
+ import { Fragment as re, jsx as w, jsxs as T } from "react/jsx-runtime";
46
+ var ie = (t) => {
47
+ let n = e, r = /* @__PURE__ */ new Date(), i = r[n(235)]() * 60 + r.getMinutes();
48
+ return Math[n(269)](Math[n(274)](i / t) * t, 1440 - t);
49
49
  };
50
- function D({ value: e, defaultValue: r = null, onValueChange: i, hourCycle: o = 12, mode: y = t(219), minuteStep: b = y === t(295) ? 30 : 5, min: D, max: O, isTimeDisabled: k, durationFrom: A, formatValue: j = (e) => h(e, o), placeholder: ae = t(282), clearable: oe = !0, size: se = "md", disabled: M, invalid: ce, align: le = "start", name: ue, id: de, className: fe, maxHeight: pe, "aria-label": me }) {
51
- let N = t, P = x() + N(259), [F, I] = a(e, r, i), [L, R] = w(!1), [z, B] = w(null), [he, ge] = w(0), [V, H] = w(null), [_e, U] = w(!1), [W, G] = w(-1), K = C(null), q = C(null), ve = C(null), ye = C(null), J = D ? v(D) : 0, Y = O ? v(O) : 1439, X = (e) => e < J || e > Y || !!k?.(g(e)), be = (e) => {
52
- for (let t = 0; t < 1440; t += b) {
50
+ function E({ value: r, defaultValue: i = null, onValueChange: o, hourCycle: p = 12, mode: y = t(264), minuteStep: E = y === t(225) ? 30 : 5, min: D, max: O, isTimeDisabled: k, durationFrom: A, formatValue: j = (e) => h(e, p), placeholder: oe = "시간 입력 또는 선택", clearable: se = !0, size: ce = "md", disabled: M, invalid: le, align: ue = t(221), name: de, id: fe, className: pe, maxHeight: me, "aria-label": he }) {
51
+ let N = t, P = b() + "-list", [F, I] = a(r, i, o), [L, R] = C(!1), [z, B] = C(null), [ge, _e] = C(0), [V, H] = C(null), [ve, U] = C(!1), [W, G] = C(-1), K = S(null), q = S(null), ye = S(null), be = S(null), J = D ? v(D) : 0, Y = O ? v(O) : 1439, X = (e) => e < J || e > Y || !!k?.(g(e)), xe = (e) => {
52
+ for (let t = 0; t < 1440; t += E) {
53
53
  let n = (e + t) % 1440;
54
54
  if (!X(n)) return n;
55
55
  }
56
56
  return e;
57
- }, Z = S(() => {
58
- let e = N;
59
- if (y !== e(295)) return [];
60
- let t = [], n = A ? v(A) : null;
61
- for (let r = Math[e(286)](J / b) * b; r <= Y; r += b) {
62
- let i = g(r);
63
- t[e(297)]({
57
+ }, Z = x(() => {
58
+ let t = e;
59
+ if (y !== t(225)) return [];
60
+ let n = [], r = A ? v(A) : null;
61
+ for (let e = Math[t(274)](J / E) * E; e <= Y; e += E) {
62
+ let i = g(e);
63
+ n[t(288)]({
64
64
  value: i,
65
65
  label: j(i),
66
- description: n !== null && r > n ? m(r - n) : void 0,
67
- disabled: !!k?.(i) || n !== null && r <= n
66
+ description: r !== null && e > r ? ee(e - r) : void 0,
67
+ disabled: !!k?.(i) || r !== null && e <= r
68
68
  });
69
69
  }
70
- return t;
70
+ return n;
71
71
  }, [
72
72
  y,
73
73
  J,
74
74
  Y,
75
- b,
75
+ E,
76
76
  A,
77
77
  k,
78
78
  j
79
- ]), xe = (e) => {
79
+ ]), Se = (e) => {
80
80
  let t = _(e);
81
81
  return t && !X(v(t)) ? t : null;
82
82
  }, Q = () => {
83
- let e = N;
83
+ let t = e;
84
84
  if (M || L) return;
85
- let t = be(re(b));
86
- if (ge(t), B(F), y === "list") {
87
- let n = F ?? g(t), r = Z[e(271)]((t) => t.value >= n && !t[e(264)]);
85
+ let n = xe(ie(E));
86
+ if (_e(n), B(F), y === t(225)) {
87
+ let e = F ?? g(n), r = Z[t(263)]((n) => n[t(256)] >= e && !n[t(280)]);
88
88
  G(r >= 0 ? r : d(Z, -1, 1));
89
89
  }
90
90
  R(!0);
91
91
  }, $ = (e, t = z) => {
92
92
  e && t !== null && t !== F && I(t), R(!1);
93
- }, Se = () => {
93
+ }, Ce = () => {
94
+ let t = e;
94
95
  if (V === null) return !0;
95
- if (!V.trim()) I(null);
96
+ if (!V[t(223)]()) I(null);
96
97
  else {
97
- let e = xe(V);
98
+ let e = Se(V);
98
99
  if (!e) return U(!0), !1;
99
100
  I(e), B(e);
100
101
  }
101
102
  return H(null), U(!1), !0;
102
- }, Ce = () => requestAnimationFrame(() => ve[N(268)]?.[N(263)](N(227))?.[N(283)]({ preventScroll: !0 })), we = (e) => {
103
+ }, we = () => requestAnimationFrame(() => ye[N(257)]?.querySelector(N(255))?.focus({ preventScroll: !0 })), Te = (e) => {
103
104
  let t = N;
104
- e.disabled || (I(e[t(270)]), H(null), U(!1), R(!1));
105
+ e.disabled || (I(e[t(256)]), H(null), U(!1), R(!1));
105
106
  };
106
- c(L && y === "list", [K, ye], () => R(!1));
107
- let Te = n(L && y === N(295)), Ee = (e) => {
107
+ c(L && y === N(225), [K, be], () => R(!1));
108
+ let Ee = n(L && y === "list"), De = (e) => {
108
109
  let t = N;
109
- if (!(e.nativeEvent[t(293)] || e.keyCode === 229)) {
110
- if (y === t(295) && (e[t(257)] === t(218) || e[t(257)] === t(258))) e[t(276)](), L ? G(d(Z, W, e[t(257)] === t(218) ? 1 : -1)) : Q();
111
- else switch (e[t(257)]) {
112
- case "Enter":
113
- e[t(276)](), V === null ? y === t(295) && L && Z[W] ? we(Z[W]) : L && $(!0) : Se() && R(!1);
110
+ if (!(e.nativeEvent[t(290)] || e[t(292)] === 229)) {
111
+ if (y === "list" && (e[t(279)] === "ArrowDown" || e[t(279)] === t(260))) e[t(228)](), L ? G(d(Z, W, e[t(279)] === "ArrowDown" ? 1 : -1)) : Q();
112
+ else switch (e[t(279)]) {
113
+ case t(258):
114
+ e[t(228)](), V === null ? y === "list" && L && Z[W] ? Te(Z[W]) : L && $(!0) : Ce() && R(!1);
114
115
  break;
115
- case t(218):
116
- e[t(276)](), Q(), Ce();
116
+ case "ArrowDown":
117
+ e[t(228)](), Q(), we();
117
118
  break;
118
- case t(225):
119
- L ? (e.preventDefault(), $(!1)) : V !== null && (H(null), U(!1));
119
+ case t(242):
120
+ L ? (e[t(228)](), $(!1)) : V !== null && (H(null), U(!1));
120
121
  break;
121
- case t(244): L && y === t(295) && R(!1);
122
+ case "Tab": L && y === t(225) && R(!1);
122
123
  }
123
124
  }
124
- }, De = L && y === "columns" ? z ?? F : F, Oe = E(N(269), {
125
+ }, Oe = L && y === N(264) ? z ?? F : F, ke = T(N(282), {
125
126
  ref: K,
126
- className: s(N(217), N(288), "ds-datefield", N(240), se !== "md" && N(262) + se, fe),
127
+ className: s("ds-control", N(237), N(247), "ds-timefield", ce !== "md" && N(243) + ce, pe),
127
128
  "data-open": L || void 0,
128
- "data-invalid": ce || _e || void 0,
129
+ "data-invalid": le || ve || void 0,
129
130
  "data-disabled": M || void 0,
130
131
  onPointerDown: (e) => {
131
132
  let t = N;
132
- M || e[t(289)] === q[t(268)] || (e[t(276)](), q.current?.[t(283)](), Q());
133
+ M || e[t(283)] === q[t(257)] || (e.preventDefault(), q[t(257)]?.focus(), Q());
133
134
  },
134
135
  children: [
135
- T(N(248), {
136
+ w(N(278), {
136
137
  ref: q,
137
- id: de,
138
- className: N(292),
139
- value: V ?? (De ? j(De) : ""),
140
- placeholder: ae,
138
+ id: fe,
139
+ className: "ds-datefield__input",
140
+ value: V ?? (Oe ? j(Oe) : ""),
141
+ placeholder: oe,
141
142
  disabled: M,
142
- role: y === N(295) ? N(260) : void 0,
143
- "aria-label": me,
144
- "aria-invalid": ce || _e || void 0,
145
- "aria-haspopup": y === N(295) ? N(273) : N(222),
143
+ role: y === N(225) ? "combobox" : void 0,
144
+ "aria-label": he,
145
+ "aria-invalid": le || ve || void 0,
146
+ "aria-haspopup": y === N(225) ? N(241) : N(267),
146
147
  "aria-expanded": L,
147
- "aria-controls": y === N(295) && L ? P : void 0,
148
- "aria-activedescendant": y === "list" && L && W >= 0 ? f(P, W) : void 0,
149
- autoComplete: "off",
148
+ "aria-controls": y === N(225) && L ? P : void 0,
149
+ "aria-activedescendant": y === N(225) && L && W >= 0 ? f(P, W) : void 0,
150
+ autoComplete: N(253),
150
151
  onClick: Q,
151
- onFocus: (e) => e[N(289)][N(279)](),
152
+ onFocus: (e) => e[N(283)][N(262)](),
152
153
  onChange: (e) => {
153
- let t = N, n = e.target[t(270)];
154
+ let t = N, n = e.target[t(256)];
154
155
  H(n), U(!1);
155
- let r = xe(n);
156
- if (r && (B(r), y === t(295))) {
157
- let e = Z.findIndex((e) => e[t(270)] >= r && !e[t(264)]);
156
+ let r = Se(n);
157
+ if (r && (B(r), y === "list")) {
158
+ let e = Z[t(263)]((e) => e[t(256)] >= r && !e.disabled);
158
159
  e >= 0 && G(e);
159
160
  }
160
161
  L || Q();
161
162
  },
162
- onKeyDown: Ee,
163
+ onKeyDown: De,
163
164
  onBlur: () => {
164
- !Se() && (H(null), U(!1));
165
+ !Ce() && (H(null), U(!1));
165
166
  }
166
167
  }),
167
- T(N(256), {
168
- className: N(253),
168
+ w(N(238), {
169
+ className: "ds-select-trigger__icon ds-datefield__icon",
169
170
  "aria-hidden": !0,
170
- children: T(ee, {})
171
+ children: w(te, {})
171
172
  }),
172
- oe && F && !M && V === null && T("span", {
173
- role: N(285),
173
+ se && F && !M && V === null && w(N(238), {
174
+ role: "button",
174
175
  tabIndex: -1,
175
- "aria-label": N(229),
176
- className: N(291),
177
- onPointerDown: (e) => e[N(287)](),
176
+ "aria-label": N(249),
177
+ className: N(275),
178
+ onPointerDown: (e) => e[N(226)](),
178
179
  onClick: () => {
179
180
  let e = N;
180
- I(null), B(null), q[e(268)]?.[e(283)]();
181
+ I(null), B(null), q[e(257)]?.[e(248)]();
181
182
  },
182
- children: T(te, {})
183
+ children: w(ne, {})
183
184
  }),
184
- ue && T(N(248), {
185
+ de && w(N(278), {
185
186
  type: "hidden",
186
- name: ue,
187
+ name: de,
187
188
  value: F ?? ""
188
189
  })
189
190
  ]
190
191
  });
191
- return y === N(295) ? E(ne, { children: [Oe, Te.mounted && T(u, {
192
- ref: ye,
193
- closing: Te.closing,
192
+ return y === N(225) ? T(re, { children: [ke, Ee.mounted && w(u, {
193
+ ref: be,
194
+ closing: Ee[N(219)],
194
195
  anchorRef: K,
195
- maxHeight: pe ?? 280,
196
- children: T(l, {
196
+ maxHeight: me ?? 280,
197
+ children: w(l, {
197
198
  id: P,
198
199
  options: Z,
199
200
  activeIndex: W,
200
201
  isSelected: (e) => e === F,
201
- onSelect: we,
202
+ onSelect: Te,
202
203
  onActiveChange: G,
203
- "aria-label": me ?? "시간",
204
- emptyText: "고를 수 있는 시간이 없어요"
204
+ "aria-label": he ?? "시간",
205
+ emptyText: N(230)
205
206
  })
206
- })] }) : T(p, {
207
+ })] }) : w(m, {
207
208
  open: L,
208
209
  onOpenChange: (e) => e ? Q() : $(!0),
209
210
  openOn: "manual",
210
- align: le,
211
+ align: ue,
211
212
  padding: "sm",
212
213
  autoFocus: !1,
213
- "aria-label": "시간 선택",
214
- trigger: Oe,
215
- children: T(ie, {
216
- ref: ve,
214
+ "aria-label": N(272),
215
+ trigger: ke,
216
+ children: w(ae, {
217
+ ref: ye,
217
218
  time: z,
218
- base: he,
219
- hourCycle: o,
220
- minuteStep: b,
219
+ base: ge,
220
+ hourCycle: p,
221
+ minuteStep: E,
221
222
  blocked: X,
222
223
  onChange: (e) => {
223
224
  B(e), H(null), U(!1);
224
225
  },
225
226
  onCommit: (e) => $(!0, e),
226
227
  onCancel: () => $(!1),
227
- onNow: () => B(g(be(re(b))))
228
+ onNow: () => B(g(xe(ie(E))))
228
229
  })
229
230
  });
230
231
  }
231
- var O = (e) => String(e).padStart(2, "0");
232
- function ie({ ref: e, time: n, base: a, hourCycle: s, minuteStep: c, blocked: l, onChange: u, onCommit: d, onCancel: f, onNow: p }) {
233
- let m = t, h = n ? v(n) : a, _ = Math[m(250)](h / 60), y = h % 60, b = _ < 12 ? "am" : "pm", x = Array.from({ length: Math[m(286)](60 / c) }, (e, t) => t * c);
234
- !x[m(246)](y) && (x[m(297)](y), x[m(223)]((e, t) => e - t));
235
- let S = (e) => {
232
+ var D = (e) => String(e)[t(233)](2, "0");
233
+ function ae({ ref: e, time: n, base: a, hourCycle: s, minuteStep: c, blocked: l, onChange: u, onCommit: d, onCancel: f, onNow: p }) {
234
+ let m = t, ee = n ? v(n) : a, h = Math[m(252)](ee / 60), _ = ee % 60, y = h < 12 ? "am" : "pm", b = Array[m(251)]({ length: Math[m(274)](60 / c) }, (e, t) => t * c);
235
+ !b.includes(_) && (b.push(_), b[m(271)]((e, t) => e - t));
236
+ let x = (e) => {
236
237
  let t = m;
237
- if (!l(e * 60 + y)) return e * 60 + y;
238
- let n = x[t(278)]((t) => !l(e * 60 + t));
239
- return e * 60 + (n ?? y);
240
- }, C = (e) => x[m(252)]((t) => !l(e * 60 + t)), w = (s === 12 ? [
238
+ if (!l(e * 60 + _)) return e * 60 + _;
239
+ let n = b[t(220)]((t) => !l(e * 60 + t));
240
+ return e * 60 + (n ?? _);
241
+ }, S = (e) => b[m(227)]((t) => !l(e * 60 + t)), C = (s === 12 ? [
241
242
  0,
242
243
  1,
243
244
  2,
@@ -250,73 +251,74 @@ function ie({ ref: e, time: n, base: a, hourCycle: s, minuteStep: c, blocked: l,
250
251
  9,
251
252
  10,
252
253
  11
253
- ][m(290)]((e) => b === "pm" ? e + 12 : e) : [...Array(24)[m(261)]()])[m(290)]((e) => ({
254
+ ][m(289)]((e) => y === "pm" ? e + 12 : e) : [...Array(24)[m(284)]()]).map((e) => ({
254
255
  key: String(e),
255
- label: s === 12 ? String(e % 12 == 0 ? 12 : e % 12) : O(e),
256
- disabled: !C(e),
257
- pick: () => S(e)
258
- })), ee = x.map((e) => ({
256
+ label: s === 12 ? String(e % 12 == 0 ? 12 : e % 12) : D(e),
257
+ disabled: !S(e),
258
+ pick: () => x(e)
259
+ })), te = b[m(289)]((e) => ({
259
260
  key: String(e),
260
- label: O(e),
261
- disabled: l(_ * 60 + e),
262
- pick: () => _ * 60 + e
263
- })), te = ["am", "pm"][m(290)]((e) => {
264
- let t = m, n = e === "am" ? 0 : 12, r = _ % 12 + n;
261
+ label: D(e),
262
+ disabled: l(h * 60 + e),
263
+ pick: () => h * 60 + e
264
+ })), ne = ["am", "pm"][m(289)]((e) => {
265
+ let t = m, n = e === "am" ? 0 : 12, r = h % 12 + n;
265
266
  return {
266
267
  key: e,
267
268
  label: e === "am" ? "오전" : "오후",
268
- disabled: !Array[t(221)]({ length: 12 }, (e, t) => n + t)[t(252)](C),
269
+ disabled: !Array[t(251)]({ length: 12 }, (e, t) => n + t)[t(227)](S),
269
270
  pick: () => {
270
- if (C(r)) return S(r);
271
- let e = Array.from({ length: 12 }, (e, t) => n + t).find(C) ?? r;
272
- return S(e);
271
+ let e = t;
272
+ if (S(r)) return x(r);
273
+ let i = Array[e(251)]({ length: 12 }, (e, t) => n + t)[e(220)](S) ?? r;
274
+ return x(i);
273
275
  }
274
276
  };
275
- }), ne = [
277
+ }), re = [
276
278
  ...s === 12 ? [{
277
- label: "오전/오후",
278
- items: te,
279
- selected: b
279
+ label: m(281),
280
+ items: ne,
281
+ selected: y
280
282
  }] : [],
281
283
  {
282
284
  label: "시",
283
- items: w,
284
- selected: String(_)
285
+ items: C,
286
+ selected: String(h)
285
287
  },
286
288
  {
287
289
  label: "분",
288
- items: ee,
289
- selected: String(y)
290
+ items: te,
291
+ selected: String(_)
290
292
  }
291
293
  ];
292
- return E(i, {
294
+ return T(i, {
293
295
  gap: 2,
294
- children: [T(m(269), {
296
+ children: [w(m(282), {
295
297
  ref: e,
296
- className: m(247),
297
- children: ne[m(290)]((e, t) => T(k, {
298
- label: e.label,
299
- items: e[m(235)],
300
- selectedKey: n ? e[m(243)] : null,
301
- focusKey: e[m(243)],
302
- onPick: (e) => u(g(e[m(237)]())),
303
- onCommit: (e) => d(e ? g(e.pick()) : void 0),
298
+ className: m(232),
299
+ children: re[m(289)]((e, t) => w(O, {
300
+ label: e[m(224)],
301
+ items: e[m(222)],
302
+ selectedKey: n ? e[m(236)] : null,
303
+ focusKey: e[m(236)],
304
+ onPick: (e) => u(g(e[m(286)]())),
305
+ onCommit: (e) => d(e ? g(e[m(286)]()) : void 0),
304
306
  onCancel: f,
305
307
  onMoveColumn: (e, n) => {
306
308
  let r = m;
307
- (n[r(251)]?.[r(274)](r(227)))?.[t + e]?.[r(283)]({ preventScroll: !0 });
309
+ (n[r(239)]?.[r(245)](r(255)))?.[t + e]?.[r(248)]({ preventScroll: !0 });
308
310
  }
309
- }, e.label))
310
- }), E(r, {
311
- justify: m(275),
311
+ }, e[m(224)]))
312
+ }), T(r, {
313
+ justify: m(287),
312
314
  gap: 2,
313
- children: [T(o, {
314
- variant: m(242),
315
+ children: [w(o, {
316
+ variant: "ghost",
315
317
  size: "sm",
316
318
  onClick: p,
317
319
  children: "지금"
318
- }), T(o, {
319
- variant: m(294),
320
+ }), w(o, {
321
+ variant: m(266),
320
322
  size: "sm",
321
323
  onClick: () => d(),
322
324
  disabled: !n,
@@ -325,63 +327,63 @@ function ie({ ref: e, time: n, base: a, hourCycle: s, minuteStep: c, blocked: l,
325
327
  })]
326
328
  });
327
329
  }
328
- function k({ label: e, items: n, selectedKey: r, focusKey: i, onPick: a, onCommit: o, onCancel: s, onMoveColumn: c }) {
329
- let l = t, u = x(), f = C(null), p = C(!1), m = n[l(271)]((e) => e.key === i);
330
- return b(() => {
331
- let e = l, t = f.current, n = t?.[e(263)](e(231) + i + "\"]");
332
- t && n && (t[e(234)]({
333
- top: n[e(277)] - 4,
334
- behavior: p[e(268)] ? e(266) : e(296)
335
- }), p[e(268)] = !0);
336
- }, [i]), T("div", {
330
+ function O({ label: e, items: n, selectedKey: r, focusKey: i, onPick: a, onCommit: o, onCancel: s, onMoveColumn: c }) {
331
+ let l = t, u = b(), f = S(null), p = S(!1), m = n[l(263)]((e) => e[l(279)] === i);
332
+ return y(() => {
333
+ let e = l, t = f.current, n = t?.[e(285)]("[data-key=\"" + i + "\"]");
334
+ t && n && (t[e(254)]({
335
+ top: n[e(229)] - 4,
336
+ behavior: p.current ? "smooth" : e(276)
337
+ }), p[e(257)] = !0);
338
+ }, [i]), w(l(282), {
337
339
  ref: f,
338
- role: l(273),
340
+ role: l(241),
339
341
  tabIndex: 0,
340
342
  "aria-label": e,
341
343
  "aria-activedescendant": m >= 0 ? u + "-" + m : void 0,
342
- className: l(281),
344
+ className: "ds-timecol",
343
345
  onKeyDown: (e) => {
344
346
  let t = l;
345
- switch (e[t(257)]) {
346
- case t(218):
347
- case t(258): {
348
- e[t(276)]();
349
- let i = r === null && m >= 0 && !n[m].disabled ? m : d(n, m, e[t(257)] === "ArrowDown" ? 1 : -1);
347
+ switch (e[t(279)]) {
348
+ case t(273):
349
+ case t(260): {
350
+ e[t(228)]();
351
+ let i = r === null && m >= 0 && !n[m][t(280)] ? m : d(n, m, e[t(279)] === t(273) ? 1 : -1);
350
352
  i >= 0 && a(n[i]);
351
353
  break;
352
354
  }
353
- case t(272):
355
+ case t(244):
354
356
  case "End": {
355
- e.preventDefault();
356
- let r = e[t(257)] === t(272) ? d(n, -1, 1) : d(n, n[t(241)], -1);
357
+ e[t(228)]();
358
+ let r = e[t(279)] === t(244) ? d(n, -1, 1) : d(n, n.length, -1);
357
359
  r >= 0 && a(n[r]);
358
360
  break;
359
361
  }
360
362
  case "ArrowLeft":
361
- case t(254):
362
- e[t(276)](), c(e[t(257)] === "ArrowRight" ? 1 : -1, e[t(239)]);
363
+ case t(291):
364
+ e[t(228)](), c(e[t(279)] === t(291) ? 1 : -1, e.currentTarget);
363
365
  break;
364
- case t(255):
366
+ case t(258):
365
367
  case " ": {
366
368
  e.preventDefault();
367
- let i = r === null && m >= 0 && !n[m].disabled ? n[m] : void 0;
368
- i && a(i), e[t(257)] === t(255) && o(i);
369
+ let i = r === null && m >= 0 && !n[m][t(280)] ? n[m] : void 0;
370
+ i && a(i), e[t(279)] === t(258) && o(i);
369
371
  break;
370
372
  }
371
- case t(225): e[t(276)](), s();
373
+ case t(242): e[t(228)](), s();
372
374
  }
373
375
  },
374
- children: n[l(290)]((e, t) => T(l(269), {
376
+ children: n.map((e, t) => w(l(282), {
375
377
  id: u + "-" + t,
376
- "data-key": e[l(257)],
377
- role: l(233),
378
- "aria-selected": e[l(257)] === r,
379
- "aria-disabled": e.disabled || void 0,
378
+ "data-key": e[l(279)],
379
+ role: l(231),
380
+ "aria-selected": e.key === r,
381
+ "aria-disabled": e[l(280)] || void 0,
380
382
  "data-focus": t === m || void 0,
381
- className: l(236),
382
- onClick: () => !e[l(264)] && a(e),
383
- children: e[l(228)]
384
- }, e[l(257)]))
383
+ className: "ds-timecol__item",
384
+ onClick: () => !e[l(280)] && a(e),
385
+ children: e[l(224)]
386
+ }, e[l(279)]))
385
387
  });
386
388
  }
387
- export { D as TimePicker };
389
+ export { E as TimePicker };