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