@iamfiro/design 0.3.0 → 0.3.2

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