@slotted/react 0.1.0-beta.4 → 0.1.0-beta.6

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 (185) hide show
  1. package/README.md +16 -1
  2. package/dist/{action-bar-OACchRZw.js → action-bar-ti3e6FK1.js} +1 -1
  3. package/dist/action-bar.js +1 -1
  4. package/dist/{app-shell-CmYvnu_7.js → app-shell-nnSP44OO.js} +271 -267
  5. package/dist/app-shell.js +1 -1
  6. package/dist/bin/slotted-agent-docs.mjs +297 -0
  7. package/dist/{cascader-D1AhTyBL.js → cascader-Cn2Acpcv.js} +227 -210
  8. package/dist/cascader.js +1 -1
  9. package/dist/chart-04i6NZQA.js +968 -0
  10. package/dist/chart.js +1 -1
  11. package/dist/{checkbox-DfxFHZaU.js → checkbox-B4Sb1eXj.js} +3 -3
  12. package/dist/{checkbox-group-9sDgrV5Z.js → checkbox-group-LpGMuq9w.js} +2 -2
  13. package/dist/checkbox-group.js +1 -1
  14. package/dist/checkbox.js +1 -1
  15. package/dist/{code-block-CFHf8uTm.js → code-block-CTNiyt0U.js} +1 -1
  16. package/dist/code-block.js +1 -1
  17. package/dist/{color-picker-CwbWzCKg.js → color-picker-BcRCeISx.js} +4 -4
  18. package/dist/color-picker.js +1 -1
  19. package/dist/{column-manager-CTtizVhm.js → column-manager-BtkYLs5G.js} +4 -4
  20. package/dist/column-manager.js +1 -1
  21. package/dist/{combobox-BVMI9lg8.js → combobox-C1D5doWM.js} +227 -198
  22. package/dist/combobox.js +1 -1
  23. package/dist/{context-menu-BuST6W94.js → context-menu-B00UIBVC.js} +1 -1
  24. package/dist/context-menu.js +1 -1
  25. package/dist/{currency-field-DD9A5U3D.js → currency-field-Dti9JFu0.js} +1 -1
  26. package/dist/currency-field.js +1 -1
  27. package/dist/{dashboard-grid-CBMP_-JV.js → dashboard-grid-CoLKLvYL.js} +1 -1
  28. package/dist/dashboard-grid.js +1 -1
  29. package/dist/{data-grid-Eb-a4jg3.js → data-grid-DX95Y7mY.js} +18 -18
  30. package/dist/data-grid.js +1 -1
  31. package/dist/{data-list-oICmxGkA.js → data-list-CWYTPNm-.js} +2 -2
  32. package/dist/data-list.js +1 -1
  33. package/dist/{date-field-Hr-OCU-H.js → date-field-BxEpqAPg.js} +1 -1
  34. package/dist/date-field.js +1 -1
  35. package/dist/date-picker-DRk9SZp1.js +308 -0
  36. package/dist/date-picker.js +1 -1
  37. package/dist/date-range-picker-6Yz7avTS.js +483 -0
  38. package/dist/date-range-picker.js +1 -1
  39. package/dist/{datetime-field-B8TrmsDK.js → datetime-field-D2f9u6im.js} +1 -1
  40. package/dist/datetime-field.js +1 -1
  41. package/dist/datetime-picker-STqSWMkH.js +645 -0
  42. package/dist/datetime-picker.js +1 -1
  43. package/dist/datetime-range-picker-DQNQwr3K.js +1000 -0
  44. package/dist/datetime-range-picker.js +1 -1
  45. package/dist/{detail-panel-CW53lUjp.js → detail-panel-z6WGleP4.js} +1 -1
  46. package/dist/detail-panel.js +1 -1
  47. package/dist/docs/AGENTS.snippet.md +2 -0
  48. package/dist/docs/app-shell.examples.md +1 -1
  49. package/dist/docs/app-shell.json +4 -4
  50. package/dist/docs/app-shell.md +2 -2
  51. package/dist/docs/guidelines/README.md +2 -2
  52. package/dist/docs/guidelines/index.md +1 -1
  53. package/dist/docs/guidelines/own-elements.md +1 -1
  54. package/dist/docs/page-header.json +1 -0
  55. package/dist/docs/page-header.md +1 -1
  56. package/dist/docs/segmented-control.json +7 -11
  57. package/dist/docs/segmented-control.md +1 -1
  58. package/dist/docs/skills/build-own-element/SKILL.md +6 -6
  59. package/dist/docs/skills/compose-screen/SKILL.md +6 -6
  60. package/dist/docs/skills/review-screen/SKILL.md +6 -6
  61. package/dist/docs/skills/theme-app/SKILL.md +1 -1
  62. package/dist/docs/skills/waiting-states/SKILL.md +2 -2
  63. package/dist/docs/tabs.json +16 -3
  64. package/dist/docs/tabs.md +3 -2
  65. package/dist/{entity-picker-Dn1T7JCq.js → entity-picker-BdySwW8F.js} +274 -256
  66. package/dist/entity-picker.js +1 -1
  67. package/dist/{event-calendar-CnF3iIZD.js → event-calendar-CiphPXdV.js} +4 -4
  68. package/dist/event-calendar.js +1 -1
  69. package/dist/{field-NJaCxl2h.js → field-BxQFpOXS.js} +1 -1
  70. package/dist/{field-group-hAzVa2O9.js → field-group-DcN_hiZN.js} +1 -1
  71. package/dist/field-group.js +1 -1
  72. package/dist/field.js +1 -1
  73. package/dist/{filter-bar-CHyy1o--.js → filter-bar-C_dXljI_.js} +10 -10
  74. package/dist/filter-bar.js +1 -1
  75. package/dist/{hover-card-BJE5dtaQ.js → hover-card-DpVzwvDJ.js} +1 -1
  76. package/dist/hover-card.js +1 -1
  77. package/dist/{import-export-center-jF37b909.js → import-export-center-BQnMJz4g.js} +3 -3
  78. package/dist/import-export-center.js +1 -1
  79. package/dist/index.js +63 -63
  80. package/dist/{listbox-Dv856z9I.js → listbox-D0MJcAMm.js} +1 -1
  81. package/dist/listbox.js +1 -1
  82. package/dist/{markdown-CeG8mUbI.js → markdown-IiVoh6yi.js} +2 -2
  83. package/dist/markdown.js +1 -1
  84. package/dist/menu-parts-D6v_mz6O.js +809 -0
  85. package/dist/menu.js +1 -1
  86. package/dist/{menubar-b2CruimJ.js → menubar-DApIg1eR.js} +1 -1
  87. package/dist/menubar.js +1 -1
  88. package/dist/{multi-select-DQ5ds0fX.js → multi-select-B8z6ApgW.js} +286 -257
  89. package/dist/multi-select.js +1 -1
  90. package/dist/{notification-center-C1iWWl5Y.js → notification-center-CGEEHcRA.js} +2 -2
  91. package/dist/notification-center.js +1 -1
  92. package/dist/{number-field-BFIAmv-z.js → number-field-DXk1TAXA.js} +1 -1
  93. package/dist/number-field.js +1 -1
  94. package/dist/{otp-input-BNQhuKaT.js → otp-input-CI-kdNgx.js} +1 -1
  95. package/dist/otp-input.js +1 -1
  96. package/dist/{popover-Be7JWbGJ.js → popover-DEp8Bf3e.js} +186 -166
  97. package/dist/popover.js +1 -1
  98. package/dist/{prompt-composer-BxpdkTpZ.js → prompt-composer-DdcU3S3L.js} +1 -1
  99. package/dist/prompt-composer.js +1 -1
  100. package/dist/{radio-group-BaVIP9UH.js → radio-group-D8csBZ8Z.js} +2 -2
  101. package/dist/radio-group.js +1 -1
  102. package/dist/{rating-DYBQBzwB.js → rating-rI3b5zII.js} +1 -1
  103. package/dist/rating.js +1 -1
  104. package/dist/{saved-views-DlE_--Z9.js → saved-views-B3brBTD9.js} +4 -4
  105. package/dist/saved-views.js +1 -1
  106. package/dist/scroll-area-DQ_ansLu.js +112 -0
  107. package/dist/scroll-area.js +1 -1
  108. package/dist/{segmented-control-DmuOGiu6.js → segmented-control-C-PzkTtg.js} +2 -2
  109. package/dist/segmented-control.js +1 -1
  110. package/dist/{select-M7Io4UL9.js → select-BUylPwpb.js} +241 -203
  111. package/dist/select.js +1 -1
  112. package/dist/{side-navigation-CBLtCzuJ.js → side-navigation-Bm-BZma1.js} +156 -140
  113. package/dist/side-navigation.js +1 -1
  114. package/dist/{slider-DTes4HLF.js → slider-fp7kyg-6.js} +1 -1
  115. package/dist/slider.js +1 -1
  116. package/dist/{split-button-CPgHiy9G.js → split-button-DKRm0j5c.js} +1 -1
  117. package/dist/split-button.js +1 -1
  118. package/dist/styles.css +1 -1
  119. package/dist/{switch-DQzuIhPX.js → switch-aVoc4C2F.js} +1 -1
  120. package/dist/switch.js +1 -1
  121. package/dist/{table-U9eJYCuB.js → table-BYEvFr4P.js} +276 -275
  122. package/dist/table.js +1 -1
  123. package/dist/{tabs-BtHmjlnM.js → tabs-HWmvOKM4.js} +109 -102
  124. package/dist/tabs.js +1 -1
  125. package/dist/{tags-input-CcOkm0AW.js → tags-input-pbv6x1Pi.js} +1 -1
  126. package/dist/tags-input.js +1 -1
  127. package/dist/{text-field-DLfIZ0fk.js → text-field-CbQ6UCAP.js} +1 -1
  128. package/dist/text-field.js +1 -1
  129. package/dist/{textarea-CBJBJBi6.js → textarea-DJSfhrXH.js} +1 -1
  130. package/dist/textarea.js +1 -1
  131. package/dist/{time-field-DrhiCtUl.js → time-field-BI9n607q.js} +1 -1
  132. package/dist/time-field.js +1 -1
  133. package/dist/time-picker-D6SlQWNF.js +402 -0
  134. package/dist/time-picker.js +1 -1
  135. package/dist/time-range-picker-CcV3_45h.js +751 -0
  136. package/dist/time-range-picker.js +1 -1
  137. package/dist/{toggle-group-7iBR9Rn1.js → toggle-group-i7JPO8BM.js} +1 -1
  138. package/dist/toggle-group.js +1 -1
  139. package/dist/{toolbar-DDZpEftQ.js → toolbar-B9knmgHA.js} +1 -1
  140. package/dist/toolbar.js +1 -1
  141. package/dist/tooltip-CgjIROUy.js +410 -0
  142. package/dist/tooltip.js +1 -1
  143. package/dist/{top-navigation-e-tWMGNr.js → top-navigation-DiG2PF5W.js} +2 -2
  144. package/dist/top-navigation.js +1 -1
  145. package/dist/{transfer-CqZOTLMP.js → transfer--UOQVeKE.js} +5 -5
  146. package/dist/transfer.js +1 -1
  147. package/dist/types/app-shell/app-shell-parts.d.ts +6 -4
  148. package/dist/types/app-shell/app-shell-parts.d.ts.map +1 -1
  149. package/dist/types/app-shell/app-shell.d.ts.map +1 -1
  150. package/dist/types/cascader/cascader.d.ts.map +1 -1
  151. package/dist/types/chart/chart.d.ts.map +1 -1
  152. package/dist/types/combobox/combobox-parts.d.ts.map +1 -1
  153. package/dist/types/date-picker/date-picker.d.ts.map +1 -1
  154. package/dist/types/date-range-picker/date-range-picker.d.ts.map +1 -1
  155. package/dist/types/datetime-picker/datetime-picker.d.ts.map +1 -1
  156. package/dist/types/datetime-range-picker/datetime-range-picker.d.ts.map +1 -1
  157. package/dist/types/entity-picker/entity-picker-popup.d.ts.map +1 -1
  158. package/dist/types/menu/menu-parts.d.ts.map +1 -1
  159. package/dist/types/multi-select/multi-select-parts.d.ts.map +1 -1
  160. package/dist/types/popover/popover-parts.d.ts.map +1 -1
  161. package/dist/types/scroll-area/scroll-area.d.ts.map +1 -1
  162. package/dist/types/select/select-parts.d.ts.map +1 -1
  163. package/dist/types/side-navigation/side-navigation-parts.d.ts.map +1 -1
  164. package/dist/types/stat-card/stat-card.types.d.ts +2 -2
  165. package/dist/types/stat-card/stat-card.types.d.ts.map +1 -1
  166. package/dist/types/table/table-content.d.ts.map +1 -1
  167. package/dist/types/tabs/tabs-parts.d.ts +2 -4
  168. package/dist/types/tabs/tabs-parts.d.ts.map +1 -1
  169. package/dist/types/tabs/tabs.d.ts.map +1 -1
  170. package/dist/types/time-picker/time-picker.d.ts.map +1 -1
  171. package/dist/types/time-range-picker/time-range-picker.d.ts.map +1 -1
  172. package/dist/types/tooltip/tooltip-parts.d.ts.map +1 -1
  173. package/dist/{upload-DjnlVR8y.js → upload-CLX5cURk.js} +1 -1
  174. package/dist/upload.js +1 -1
  175. package/package.json +10 -7
  176. package/dist/chart-O0ZhkzJe.js +0 -966
  177. package/dist/date-picker-D3-y2Jxw.js +0 -295
  178. package/dist/date-range-picker-y3b82Wmf.js +0 -471
  179. package/dist/datetime-picker-CIRHVLQp.js +0 -629
  180. package/dist/datetime-range-picker-DM-1m98z.js +0 -994
  181. package/dist/menu-parts-W58pVNUt.js +0 -786
  182. package/dist/scroll-area-BriwmvYY.js +0 -111
  183. package/dist/time-picker-CRQsMJbQ.js +0 -396
  184. package/dist/time-range-picker-DlZJsj1e.js +0 -745
  185. package/dist/tooltip-DbKTPe_i.js +0 -392
@@ -0,0 +1,402 @@
1
+ import { n as e, t } from "./icon-T9Yt4tnm.js";
2
+ import { n, r } from "./i18n-DpW8lqJ1.js";
3
+ import { b as i } from "./field-BxQFpOXS.js";
4
+ import { t as ee } from "./time-field-BI9n607q.js";
5
+ import { createControllable as a } from "@slotted/core/state";
6
+ import { createContext as te, useCallback as o, useContext as ne, useEffect as s, useId as re, useImperativeHandle as ie, useLayoutEffect as ae, useMemo as c, useRef as l, useState as u } from "react";
7
+ import { Fragment as oe, jsx as d, jsxs as f } from "react/jsx-runtime";
8
+ import { createPresence as se } from "@slotted/core/presence";
9
+ import { createPortalRoot as ce } from "@slotted/core/portal";
10
+ import { createDismissableLayer as le } from "@slotted/core/dismissable-layer";
11
+ import { createPositioner as ue } from "@slotted/core/positioner";
12
+ import { createTypeahead as de, isPrintable as fe } from "@slotted/core/typeahead";
13
+ import { createPortal as pe } from "react-dom";
14
+ import { timePickerMessages as me } from "@slotted/core/i18n";
15
+ import { createTimeFormat as he, hourJump as ge, isSameTime as p, isTimeInRange as _e, isTruncated as ve, nearestIndex as ye, nowIn as be, timeList as xe, toISOTime as Se } from "@slotted/core/date";
16
+ //#region src/time-picker/time-picker-defaults.tsx
17
+ var Ce = 900, m = 1440, h = te({
18
+ closeOnSelect: "auto",
19
+ granularity: "minute",
20
+ hourCycle: void 0,
21
+ maxOptions: m,
22
+ placement: "bottom-start",
23
+ size: "md",
24
+ step: 900,
25
+ timeZone: void 0,
26
+ unavailableOptions: "disable",
27
+ variant: "outline"
28
+ });
29
+ function g() {
30
+ return ne(h);
31
+ }
32
+ function we({ children: e, ...t }) {
33
+ let n = g();
34
+ return /* @__PURE__ */ d(h.Provider, {
35
+ value: {
36
+ closeOnSelect: t.closeOnSelect ?? n.closeOnSelect,
37
+ granularity: t.granularity ?? n.granularity,
38
+ hourCycle: t.hourCycle ?? n.hourCycle,
39
+ maxOptions: t.maxOptions ?? n.maxOptions,
40
+ placement: t.placement ?? n.placement,
41
+ size: t.size ?? n.size,
42
+ step: t.step ?? n.step,
43
+ timeZone: t.timeZone ?? n.timeZone,
44
+ unavailableOptions: t.unavailableOptions ?? n.unavailableOptions,
45
+ variant: t.variant ?? n.variant
46
+ },
47
+ children: e
48
+ });
49
+ }
50
+ //#endregion
51
+ //#region src/time-picker/time-picker.tsx
52
+ var Te = "(max-width: 480px) and (pointer: coarse)", Ee = {
53
+ hour: 12,
54
+ minute: 0,
55
+ second: 0
56
+ };
57
+ function De({ className: te, clearable: ne = !1, closeOnSelect: Ce, defaultHighlightedValue: m, defaultOpen: h = !1, defaultValue: we, disabled: De, footer: Oe, granularity: ke, highlightedValue: _, hourCycle: Ae, invalid: je, isTimeUnavailable: v, locale: Me, max: y, maxOptions: Ne, messages: Pe, min: b, name: Fe, onHighlightedValueChange: Ie, onKeyDown: x, onOpenChange: Le, onValueChange: Re, open: S, options: ze, placement: Be, presets: Ve, readOnly: He, ref: Ue, referenceTime: We, relative: Ge, render: Ke, renderOption: qe, required: Je, size: Ye, step: Xe, style: Ze, timeZone: Qe, unavailableOptions: $e, value: et, variant: tt, ...nt }) {
58
+ let C = i(), w = g(), rt = n(), T = r(me, Pe), E = l(null), it = l(null), D = l(null), O = l(null), at = re(), [k, ot] = u(null), [A, st] = u(null), [ct, lt] = u("unmounted"), [j, ut] = u(!1), [M, dt] = u(!1), [ft, pt] = u(h), N = S ?? ft, [mt, ht] = u(we ?? null), P = et ?? mt, F = Me ?? rt, gt = Qe ?? w.timeZone, I = ke ?? w.granularity, L = Ae ?? w.hourCycle, _t = Ye ?? C?.size ?? w.size, vt = tt ?? w.variant, yt = Be ?? w.placement, bt = Ce ?? w.closeOnSelect, xt = Xe ?? w.step, St = Ne ?? w.maxOptions, Ct = $e ?? w.unavailableOptions, R = De ?? C?.disabled, z = He ?? C?.readOnly, wt = Je ?? C?.required, B = R !== !0 && z !== !0, V = c(() => he({
59
+ granularity: I,
60
+ hourCycle: L,
61
+ locale: F
62
+ }), [
63
+ I,
64
+ L,
65
+ F
66
+ ]), [Tt, Et] = u(() => Ee);
67
+ s(() => Et(be(gt)), [gt]);
68
+ let H = We ?? Tt, Dt = P !== null && (!_e(P, b, y) || v?.(P) === !0), Ot = je ?? (Dt ? !0 : C?.invalid), U = c(() => ({
69
+ isTimeUnavailable: v,
70
+ max: y,
71
+ maxOptions: St,
72
+ min: b,
73
+ options: ze,
74
+ step: xt
75
+ }), [
76
+ v,
77
+ y,
78
+ b,
79
+ ze,
80
+ St,
81
+ xt
82
+ ]), W = c(() => {
83
+ let e = xe(U);
84
+ return Ct === "hide" ? e.filter((e) => !e.unavailable) : e;
85
+ }, [U, Ct]), kt = c(() => ve(U), [U]), At = c(() => W.map((e) => V.format(e.time)), [V, W]), G = o(() => {
86
+ if (W.length === 0) return -1;
87
+ let e = ye(W, P ?? H);
88
+ if (e >= 0 && W[e]?.unavailable !== !0) return e;
89
+ let t = W.findIndex((e) => !e.unavailable);
90
+ return t >= 0 ? t : 0;
91
+ }, [
92
+ H,
93
+ P,
94
+ W
95
+ ]), [jt, Mt] = u(m ?? null), K = _ ?? jt, q = c(() => K === null ? -1 : W.findIndex((e) => p(e.time, K)), [K, W]), J = o((e, t, n) => {
96
+ a({
97
+ controlled: _,
98
+ initial: K,
99
+ equals: p,
100
+ onRequest: (e) => Ie?.(e.value, e)
101
+ }).request(e, t, n) && Mt(e);
102
+ }, [
103
+ K,
104
+ _,
105
+ Ie
106
+ ]), Y = o((e, t) => {
107
+ let n = W[Math.max(0, Math.min(W.length - 1, e))];
108
+ n !== void 0 && J(n.time, "keyboard", t);
109
+ }, [W, J]), X = o((e, t, n) => {
110
+ a({
111
+ controlled: S,
112
+ initial: N,
113
+ onRequest: (e) => Le?.(e.value, e)
114
+ }).request(e, t, n) && pt(e);
115
+ }, [
116
+ N,
117
+ Le,
118
+ S
119
+ ]), Z = o((e, t) => {
120
+ a({
121
+ controlled: et,
122
+ initial: P,
123
+ equals: p,
124
+ onRequest: (e) => Re?.(e.value, e)
125
+ }).request(e, t.reason, t.source) && ht(e);
126
+ }, [
127
+ P,
128
+ Re,
129
+ et
130
+ ]), Q = l(null);
131
+ s(() => {
132
+ let e = se({
133
+ present: N,
134
+ onStatusChange: lt
135
+ });
136
+ return Q.current = e, lt(e.status), () => {
137
+ e.destroy(), Q.current = null;
138
+ };
139
+ }, []), s(() => Q.current?.sync(N), [N]), s(() => Q.current?.setNode(k), [k]);
140
+ let Nt = N || ct !== "unmounted";
141
+ s(() => {
142
+ let e = E.current;
143
+ if (e === null || j) return;
144
+ let t = () => ut(!0);
145
+ return e.addEventListener("focusin", t), e.addEventListener("pointerdown", t), () => {
146
+ e.removeEventListener("focusin", t), e.removeEventListener("pointerdown", t);
147
+ };
148
+ }, [j]);
149
+ let Pt = Nt || j;
150
+ ae(() => {
151
+ if (!Pt) {
152
+ st(null);
153
+ return;
154
+ }
155
+ let e = ce({
156
+ origin: D.current,
157
+ disabled: !1
158
+ });
159
+ return st(e.container), () => e.release();
160
+ }, [Pt]), s(() => {
161
+ if (typeof window > "u" || typeof window.matchMedia != "function") return;
162
+ let e = window.matchMedia(Te), t = () => dt(e.matches);
163
+ return t(), e.addEventListener("change", t), () => e.removeEventListener("change", t);
164
+ }, []), ae(() => {
165
+ if (k === null || E.current === null || M) return;
166
+ let e = E.current.querySelector("[data-part=\"control\"]") ?? E.current, [t, n = "center"] = yt.split("-"), r = ue(e, k, {
167
+ align: n,
168
+ side: t
169
+ });
170
+ return r.update(), () => {
171
+ r.destroy(), k.removeAttribute("data-positioned");
172
+ };
173
+ }, [
174
+ k,
175
+ yt,
176
+ M
177
+ ]), s(() => {
178
+ if (k === null || !N) return;
179
+ let e = D.current === null ? [] : [D.current], t = le(k, {
180
+ branches: e,
181
+ escape: !0,
182
+ focusOutside: !1,
183
+ modal: !1,
184
+ outsidePress: !0,
185
+ scrollLock: !1,
186
+ onDismiss: (e) => {
187
+ X(!1, e.reason === "escape" ? "escape" : "outsidePress", e.source), e.reason === "escape" && D.current?.focus({ preventScroll: !0 });
188
+ }
189
+ });
190
+ return () => t.destroy();
191
+ }, [
192
+ N,
193
+ k,
194
+ X
195
+ ]), s(() => {
196
+ if (!N) return;
197
+ let e = G();
198
+ e < 0 || J(W[e]?.time ?? null, "programmatic", void 0);
199
+ }, [N, W]), s(() => {
200
+ !N || q < 0 || (O.current?.querySelectorAll("[data-part=\"option\"]")[q])?.scrollIntoView?.({ block: "nearest" });
201
+ }, [q, N]);
202
+ let Ft = l(de({ locale: () => F }));
203
+ s(() => {
204
+ let e = Ft.current;
205
+ return () => e.destroy();
206
+ }, []), ie(Ue, () => ({
207
+ focus: () => it.current?.focus(),
208
+ open: () => X(!0, "keyboard", void 0),
209
+ close: () => X(!1, "keyboard", void 0)
210
+ }), [X]);
211
+ let It = P === null ? T("choose") : T("change", { time: V.describe(P) }), Lt = bt !== "never", Rt = o((e, t) => {
212
+ !e.unavailable && B && (Z(e.time, {
213
+ reason: "select",
214
+ source: t
215
+ }), J(e.time, "pointer", t), Lt && (X(!1, "select", t), D.current?.focus({ preventScroll: !0 })));
216
+ }, [
217
+ Lt,
218
+ B,
219
+ J,
220
+ Z,
221
+ X
222
+ ]), $ = o((e) => {
223
+ O.current?.querySelectorAll("[data-part=\"option\"]")[e]?.focus();
224
+ }, []), zt = o((e) => {
225
+ let t = q >= 0 ? q : G();
226
+ t < 0 || (Y(t, e), requestAnimationFrame(() => $(t)));
227
+ }, [
228
+ $,
229
+ q,
230
+ Y,
231
+ G
232
+ ]), Bt = (e) => {
233
+ x?.(e), !e.defaultPrevented && B && (e.key === "ArrowDown" || e.key === "ArrowUp") && (e.preventDefault(), N || X(!0, "keyboard", e), zt(e));
234
+ }, Vt = (e) => {
235
+ if (x?.(e), e.defaultPrevented) return;
236
+ let t = q >= 0 ? q : 0;
237
+ switch (e.key) {
238
+ case "ArrowDown":
239
+ e.preventDefault(), Y(t + 1, e), $(Math.min(W.length - 1, t + 1));
240
+ return;
241
+ case "ArrowUp":
242
+ e.preventDefault(), Y(t - 1, e), $(Math.max(0, t - 1));
243
+ return;
244
+ case "Home":
245
+ e.preventDefault(), Y(0, e), $(0);
246
+ return;
247
+ case "End":
248
+ e.preventDefault(), Y(W.length - 1, e), $(W.length - 1);
249
+ return;
250
+ case "PageDown": {
251
+ e.preventDefault();
252
+ let n = ge(W, t, 1);
253
+ Y(n, e), $(n);
254
+ return;
255
+ }
256
+ case "PageUp": {
257
+ e.preventDefault();
258
+ let n = ge(W, t, -1);
259
+ Y(n, e), $(n);
260
+ return;
261
+ }
262
+ case "Enter":
263
+ case " ": {
264
+ e.preventDefault();
265
+ let n = W[t];
266
+ n !== void 0 && Rt(n, e);
267
+ return;
268
+ }
269
+ }
270
+ if (fe(e.key, Ft.current.query.length > 0)) {
271
+ let n = Ft.current.match(e.key, At, t);
272
+ if (n < 0) return;
273
+ e.preventDefault(), Y(n, e), $(n);
274
+ }
275
+ }, Ht = (e) => {
276
+ x?.(e), !e.defaultPrevented && B && e.altKey && e.key === "ArrowDown" && (e.preventDefault(), X(!0, "keyboard", e));
277
+ }, Ut = Nt ? /* @__PURE__ */ d("div", {
278
+ "data-part": "positioner",
279
+ "data-presentation": M ? "sheet" : "popover",
280
+ "data-ui": "time-picker",
281
+ ref: ot,
282
+ ...N ? { "data-open": "" } : {},
283
+ children: /* @__PURE__ */ f("div", {
284
+ "aria-label": It,
285
+ "data-part": "content",
286
+ id: at,
287
+ role: "listbox",
288
+ ...kt ? { "aria-description": T("truncated") } : {},
289
+ children: [
290
+ Ve === void 0 ? null : /* @__PURE__ */ d("div", {
291
+ "data-part": "presets",
292
+ children: Ve
293
+ }),
294
+ /* @__PURE__ */ d("div", {
295
+ "data-part": "head",
296
+ children: /* @__PURE__ */ d("button", {
297
+ "data-part": "now",
298
+ onClick: (e) => Z(H, {
299
+ reason: "select",
300
+ source: e
301
+ }),
302
+ type: "button",
303
+ children: T("now")
304
+ })
305
+ }),
306
+ W.length === 0 ? /* @__PURE__ */ d("div", {
307
+ "data-part": "empty",
308
+ children: T("empty")
309
+ }) : /* @__PURE__ */ d("div", {
310
+ "data-part": "list",
311
+ onKeyDown: Vt,
312
+ ref: O,
313
+ ...kt ? { "data-truncated": "" } : {},
314
+ children: W.map((e, t) => {
315
+ let n = At[t] ?? "", r = p(e.time, P), i = t === q;
316
+ return /* @__PURE__ */ d("div", {
317
+ "aria-disabled": e.unavailable ? !0 : void 0,
318
+ "aria-selected": r,
319
+ "data-part": "option",
320
+ onClick: (t) => Rt(e, t),
321
+ role: "option",
322
+ tabIndex: i ? 0 : -1,
323
+ ...e.unavailable ? { "data-disabled": "" } : {},
324
+ ...r ? { "data-selected": "" } : {},
325
+ ...i ? { "data-current": "" } : {},
326
+ children: qe === void 0 ? n : qe({
327
+ current: i,
328
+ label: n,
329
+ selected: r,
330
+ time: e.time,
331
+ unavailable: e.unavailable
332
+ })
333
+ }, Se(e.time));
334
+ })
335
+ }),
336
+ Oe === void 0 ? null : /* @__PURE__ */ d("div", {
337
+ "data-part": "footer",
338
+ children: Oe
339
+ })
340
+ ]
341
+ })
342
+ }) : null, Wt = /* @__PURE__ */ f(oe, { children: [/* @__PURE__ */ d("div", {
343
+ "data-part": "control",
344
+ onKeyDown: Ht,
345
+ children: /* @__PURE__ */ d(ee, {
346
+ clearable: ne,
347
+ disabled: R,
348
+ end: /* @__PURE__ */ d("button", {
349
+ "aria-controls": N ? at : void 0,
350
+ "aria-expanded": N,
351
+ "aria-haspopup": "listbox",
352
+ "aria-label": It,
353
+ "data-part": "trigger",
354
+ disabled: !B,
355
+ onClick: (e) => {
356
+ X(!N, "pointer", e), N || zt(e);
357
+ },
358
+ onKeyDown: Bt,
359
+ ref: D,
360
+ type: "button",
361
+ children: /* @__PURE__ */ d(t, { children: /* @__PURE__ */ d(e, { name: "clock" }) })
362
+ }),
363
+ granularity: I,
364
+ invalid: Ot,
365
+ isTimeUnavailable: v,
366
+ locale: F,
367
+ max: y,
368
+ min: b,
369
+ name: Fe,
370
+ onValueChange: (e, t) => Z(e, t),
371
+ readOnly: z,
372
+ ref: it,
373
+ required: wt,
374
+ size: _t,
375
+ timeZone: gt,
376
+ value: P,
377
+ variant: vt,
378
+ ...L === void 0 ? {} : { hourCycle: L },
379
+ ...We === void 0 ? {} : { referenceTime: We },
380
+ ...Ge === void 0 ? {} : { relative: Ge }
381
+ })
382
+ }), A === null ? Ut : null] }), Gt = {
383
+ ...nt,
384
+ children: Wt,
385
+ className: te,
386
+ style: Ze,
387
+ ...R === !0 ? { "data-disabled": "" } : {},
388
+ ...Ot === !0 ? { "data-invalid": "" } : {},
389
+ ...z === !0 ? { "data-readonly": "" } : {},
390
+ ...wt === !0 ? { "data-required": "" } : {},
391
+ ...N ? { "data-open": "" } : {},
392
+ "data-granularity": I,
393
+ "data-part": "root",
394
+ "data-size": _t,
395
+ "data-ui": "time-picker",
396
+ "data-variant": vt,
397
+ ref: E
398
+ };
399
+ return /* @__PURE__ */ f(oe, { children: [Ke === void 0 ? /* @__PURE__ */ d("div", { ...Gt }) : Ke(Gt), A === null ? null : pe(Ut, A)] });
400
+ }
401
+ //#endregion
402
+ export { g as a, we as i, m as n, Ce as r, De as t };
@@ -1,2 +1,2 @@
1
- import { a as e, i as t, n, r, t as i } from "./time-picker-CRQsMJbQ.js";
1
+ import { a as e, i as t, n, r, t as i } from "./time-picker-D6SlQWNF.js";
2
2
  export { n as TIME_PICKER_MAX_OPTIONS, r as TIME_PICKER_STEP, i as TimePicker, t as TimePickerDefaultsProvider, e as useTimePickerDefaults };