@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
@@ -0,0 +1,645 @@
1
+ import { n as e, t } from "./icon-T9Yt4tnm.js";
2
+ import { n, r } from "./i18n-DpW8lqJ1.js";
3
+ import { t as i } from "./calendar-BZ6PP7Ke.js";
4
+ import { b as ee } from "./field-BxQFpOXS.js";
5
+ import { t as te } from "./datetime-field-D2f9u6im.js";
6
+ import { tabbables as ne } from "@slotted/core/focus";
7
+ import { createControllable as re } from "@slotted/core/state";
8
+ import { createContext as ie, useCallback as a, useContext as ae, useEffect as o, useId as oe, useImperativeHandle as se, useLayoutEffect as ce, useMemo as s, useRef as c, useState as l } from "react";
9
+ import { Fragment as le, jsx as u, jsxs as d } from "react/jsx-runtime";
10
+ import { createPresence as ue } from "@slotted/core/presence";
11
+ import { createPortalRoot as de } from "@slotted/core/portal";
12
+ import { createDismissableLayer as fe } from "@slotted/core/dismissable-layer";
13
+ import { createPositioner as pe } from "@slotted/core/positioner";
14
+ import { createTypeahead as me, isPrintable as he } from "@slotted/core/typeahead";
15
+ import { createPortal as ge } from "react-dom";
16
+ import { datetimePickerMessages as _e } from "@slotted/core/i18n";
17
+ import { createDateTimeFormat as ve, dateBoundsOf as ye, dayWindow as be, hourJump as xe, isDateTimeInRange as Se, isSameDate as Ce, isSameDateTime as we, isSameTime as f, isTruncated as Te, nearestIndex as Ee, nowDateTimeIn as De, timeList as Oe, toISOTime as ke } from "@slotted/core/date";
18
+ //#region src/datetime-picker/datetime-picker-defaults.tsx
19
+ var Ae = 1440, je = ie({
20
+ calendar: "gregory",
21
+ closeOnSelect: "auto",
22
+ granularity: "minute",
23
+ hourCycle: void 0,
24
+ maxOptions: Ae,
25
+ openTo: "date",
26
+ placement: "bottom-start",
27
+ size: "md",
28
+ step: 900,
29
+ timeZone: void 0,
30
+ unavailableOptions: "disable",
31
+ variant: "outline"
32
+ });
33
+ function Me() {
34
+ return ae(je);
35
+ }
36
+ function Ne({ children: e, ...t }) {
37
+ let n = Me();
38
+ return /* @__PURE__ */ u(je.Provider, {
39
+ value: {
40
+ calendar: t.calendar ?? n.calendar,
41
+ closeOnSelect: t.closeOnSelect ?? n.closeOnSelect,
42
+ granularity: t.granularity ?? n.granularity,
43
+ hourCycle: t.hourCycle ?? n.hourCycle,
44
+ maxOptions: t.maxOptions ?? n.maxOptions,
45
+ openTo: t.openTo ?? n.openTo,
46
+ placement: t.placement ?? n.placement,
47
+ size: t.size ?? n.size,
48
+ step: t.step ?? n.step,
49
+ timeZone: t.timeZone ?? n.timeZone,
50
+ unavailableOptions: t.unavailableOptions ?? n.unavailableOptions,
51
+ variant: t.variant ?? n.variant
52
+ },
53
+ children: e
54
+ });
55
+ }
56
+ //#endregion
57
+ //#region src/datetime-picker/datetime-picker.tsx
58
+ var Pe = "(max-width: 480px) and (pointer: coarse)", Fe = {
59
+ date: {
60
+ year: 2e3,
61
+ month: 1,
62
+ day: 1
63
+ },
64
+ time: {
65
+ hour: 12,
66
+ minute: 0,
67
+ second: 0
68
+ }
69
+ };
70
+ function Ie({ calendar: ie, className: ae, clearable: Ae = !1, closeOnSelect: je, defaultHighlighted: Ne, defaultOpen: Ie = !1, defaultValue: Re, disabled: ze, firstDayOfWeek: p, footer: Be, granularity: Ve, highlighted: m, hourCycle: He, invalid: Ue, isDateUnavailable: h, isTimeUnavailable: g, locale: We, max: _, messages: Ge, maxOptions: Ke, maxTime: qe, min: v, minTime: Je, months: Ye, name: Xe, onHighlightedChange: Ze, onKeyDown: Qe, onOpenChange: $e, onValueChange: et, open: tt, openTo: nt, options: rt, placement: it, presets: at, readOnly: ot, ref: st, referenceDateTime: y, relative: ct, render: lt, renderOption: ut, required: dt, size: ft, step: pt, style: mt, timeZone: ht, unavailableOptions: gt, value: _t, variant: vt, weekNumbers: yt, ...bt }) {
71
+ let b = ee(), x = Me(), xt = n(), S = r(_e, Ge), C = c(null), St = c(null), Ct = c(null), w = c(null), wt = c(null), Tt = c(null), Et = oe(), Dt = `${Et}-time`, [T, Ot] = l(null), [E, kt] = l(null), [At, jt] = l("unmounted"), [Mt, Nt] = l(!1), [Pt, Ft] = l(!1), [It, Lt] = l("day"), [Rt, zt] = l(Ie), D = c(!1), O = tt ?? Rt, [Bt, Vt] = l(Re ?? null), k = _t ?? Bt, [A, j] = l(null), [M, N] = l(null), P = c(null), F = We ?? xt, I = ht ?? x.timeZone, L = Ve ?? x.granularity, R = He ?? x.hourCycle, Ht = ie ?? x.calendar, Ut = ft ?? b?.size ?? x.size, Wt = vt ?? x.variant, Gt = it ?? x.placement, Kt = nt ?? x.openTo, qt = je ?? x.closeOnSelect, Jt = pt ?? x.step, Yt = Ke ?? x.maxOptions, Xt = gt ?? x.unavailableOptions, Zt = ze ?? b?.disabled, z = ot ?? b?.readOnly, Qt = dt ?? b?.required, B = Zt !== !0 && z !== !0, V = s(() => ve({
72
+ granularity: L,
73
+ hourCycle: R,
74
+ locale: F,
75
+ ...p === void 0 ? {} : { firstDayOfWeek: p }
76
+ }), [
77
+ p,
78
+ L,
79
+ R,
80
+ F
81
+ ]), [$t, en] = l(() => Fe);
82
+ o(() => en(De(I)), [I]);
83
+ let tn = y ?? $t, nn = s(() => ({
84
+ max: _,
85
+ maxTime: qe,
86
+ min: v,
87
+ minTime: Je
88
+ }), [
89
+ _,
90
+ qe,
91
+ v,
92
+ Je
93
+ ]), rn = k === null ? null : be(k.date, nn), an = k !== null && (!Se(k, v, _) || rn === null || h?.(k.date) === !0 || g?.(k.time, k.date) === !0), on = Ue ?? (an ? !0 : b?.invalid), [sn, cn] = l(() => Ne ?? {
94
+ date: (Re ?? y ?? Fe).date,
95
+ time: null
96
+ }), H = m ?? sn, ln = c(!1), U = k?.date ?? A ?? H.date, W = a((e, t, n) => {
97
+ let r = re({
98
+ controlled: m,
99
+ initial: H,
100
+ equals: (e, t) => Ce(e.date, t.date) && f(e.time ?? null, t.time ?? null),
101
+ onRequest: (e) => Ze?.(e.value, e)
102
+ });
103
+ t !== "programmatic" && (ln.current = !0), r.request(e, t, n) && cn(e);
104
+ }, [
105
+ H,
106
+ m,
107
+ Ze
108
+ ]);
109
+ o(() => {
110
+ if (ln.current || m !== void 0) return;
111
+ let e = k?.date ?? tn.date;
112
+ Ce(e, H.date) || W({
113
+ date: e,
114
+ time: H.time
115
+ }, "programmatic", void 0);
116
+ }, [tn, k]);
117
+ let G = s(() => be(U, nn), [nn, U]), un = s(() => ({
118
+ isTimeUnavailable: g === void 0 ? void 0 : (e) => g(e, U),
119
+ max: G?.latest,
120
+ maxOptions: Yt,
121
+ min: G?.earliest,
122
+ options: rt,
123
+ step: Jt
124
+ }), [
125
+ g,
126
+ U,
127
+ rt,
128
+ Yt,
129
+ Jt,
130
+ G
131
+ ]), K = s(() => {
132
+ if (G === null || h?.(U) === !0) return [];
133
+ let e = Oe(un);
134
+ return Xt === "hide" ? e.filter((e) => !e.unavailable) : e;
135
+ }, [
136
+ h,
137
+ U,
138
+ un,
139
+ Xt,
140
+ G
141
+ ]), dn = s(() => Te(un), [un]), fn = s(() => K.map((e) => V.time.format(e.time)), [V, K]), pn = a(() => {
142
+ if (K.length === 0) return -1;
143
+ let e = k?.time ?? tn.time, t = Ee(K, e);
144
+ if (t >= 0 && K[t]?.unavailable !== !0) return t;
145
+ let n = K.findIndex((e) => !e.unavailable);
146
+ return n >= 0 ? n : 0;
147
+ }, [
148
+ tn,
149
+ k,
150
+ K
151
+ ]), q = s(() => H.time === null ? -1 : K.findIndex((e) => f(e.time, H.time)), [H, K]), J = a((e, t) => {
152
+ let n = K[Math.max(0, Math.min(K.length - 1, e))];
153
+ n !== void 0 && W({
154
+ date: U,
155
+ time: n.time
156
+ }, "keyboard", t);
157
+ }, [
158
+ K,
159
+ U,
160
+ W
161
+ ]), Y = a((e, t, n, r = !0) => {
162
+ re({
163
+ controlled: tt,
164
+ initial: O,
165
+ onRequest: (e) => {
166
+ $e?.(e.value, e), D.current = r && e.value && !e.cancelled;
167
+ }
168
+ }).request(e, t, n) && zt(e);
169
+ }, [
170
+ O,
171
+ $e,
172
+ tt
173
+ ]), X = a((e, t) => {
174
+ re({
175
+ controlled: _t,
176
+ initial: k,
177
+ equals: we,
178
+ onRequest: (e) => et?.(e.value, e)
179
+ }).request(e, t.reason, t.source) && Vt(e);
180
+ }, [
181
+ k,
182
+ et,
183
+ _t
184
+ ]), [mn] = l(() => Re ?? null);
185
+ o(() => {
186
+ let e = C.current?.closest("form");
187
+ if (e == null) return;
188
+ let t = (e) => {
189
+ j(null), N(null), X(mn, {
190
+ reason: "programmatic",
191
+ source: e
192
+ });
193
+ };
194
+ return e.addEventListener("reset", t), () => e.removeEventListener("reset", t);
195
+ }, [mn, X]);
196
+ let hn = c(null);
197
+ o(() => {
198
+ let e = ue({
199
+ present: O,
200
+ onStatusChange: jt
201
+ });
202
+ return hn.current = e, jt(e.status), () => {
203
+ e.destroy(), hn.current = null;
204
+ };
205
+ }, []), o(() => hn.current?.sync(O), [O]), o(() => hn.current?.setNode(T), [T]);
206
+ let gn = O || At !== "unmounted";
207
+ o(() => {
208
+ let e = C.current;
209
+ if (e === null || Mt) return;
210
+ let t = () => Nt(!0);
211
+ return e.addEventListener("focusin", t), e.addEventListener("pointerdown", t), () => {
212
+ e.removeEventListener("focusin", t), e.removeEventListener("pointerdown", t);
213
+ };
214
+ }, [Mt]);
215
+ let _n = gn || Mt;
216
+ ce(() => {
217
+ if (!_n) {
218
+ kt(null);
219
+ return;
220
+ }
221
+ let e = de({
222
+ origin: w.current,
223
+ disabled: !1
224
+ });
225
+ return kt(e.container), () => e.release();
226
+ }, [_n]), o(() => {
227
+ if (G === void 0 || typeof globalThis.matchMedia != "function") return;
228
+ let e = globalThis.matchMedia(Pe), t = () => Ft(e.matches);
229
+ return t(), e.addEventListener("change", t), () => e.removeEventListener("change", t);
230
+ }, []), ce(() => {
231
+ if (T === null || C.current === null || Pt) return;
232
+ let e = C.current.querySelector("[data-part=\"control\"]") ?? C.current, [t, n = "center"] = Gt.split("-"), r = pe(e, T, {
233
+ align: n,
234
+ side: t
235
+ });
236
+ return r.update(), () => {
237
+ r.destroy(), T.removeAttribute("data-positioned");
238
+ };
239
+ }, [
240
+ T,
241
+ Gt,
242
+ Pt
243
+ ]);
244
+ let vn = c(It);
245
+ vn.current = It, o(() => {
246
+ if (T === null || !O) return;
247
+ let e = w.current === null ? [] : [w.current], t = fe(T, {
248
+ branches: e,
249
+ escape: !0,
250
+ focusOutside: !1,
251
+ modal: !1,
252
+ outsidePress: !0,
253
+ scrollLock: !1,
254
+ onDismiss: (e) => {
255
+ if (e.reason === "escape" && vn.current !== "day") {
256
+ Lt(vn.current === "year" ? "month" : "day");
257
+ return;
258
+ }
259
+ Y(!1, e.reason === "escape" ? "escape" : "outsidePress", e.source), e.reason === "escape" && w.current?.focus({ preventScroll: !0 });
260
+ }
261
+ });
262
+ return () => t.destroy();
263
+ }, [
264
+ O,
265
+ T,
266
+ Y
267
+ ]), o(() => {
268
+ if (!O) return;
269
+ let e = pn(), t = e < 0 ? null : K[e]?.time ?? null;
270
+ f(t, H.time ?? null) || W({
271
+ date: H.date,
272
+ time: t
273
+ }, "programmatic", void 0);
274
+ }, [O, K]);
275
+ let yn = a((e) => {
276
+ if (e === null) return;
277
+ let t = () => e.scrollIntoView?.({ block: "nearest" });
278
+ if (typeof ResizeObserver != "function") {
279
+ t();
280
+ return;
281
+ }
282
+ let n = new ResizeObserver(t);
283
+ return n.observe(e.parentElement ?? e), () => n.disconnect();
284
+ }, []), bn = c(me({ locale: () => F }));
285
+ o(() => {
286
+ let e = bn.current;
287
+ return () => e.destroy();
288
+ }, []), se(st, () => ({
289
+ focus: () => St.current?.focus(),
290
+ open: () => Y(!0, "keyboard", void 0),
291
+ close: () => Y(!1, "keyboard", void 0)
292
+ }), [Y]);
293
+ let xn = k === null ? S("choose") : S("change", { date: V.describe(k) }), Z = a((e) => {
294
+ wt.current?.querySelectorAll("[data-part=\"option\"]")[e]?.focus();
295
+ }, []), Sn = a((e) => {
296
+ let t = q >= 0 ? q : pn();
297
+ t < 0 || (J(t, e), requestAnimationFrame(() => Z(t)));
298
+ }, [
299
+ Z,
300
+ q,
301
+ J,
302
+ pn
303
+ ]), Cn = a(() => {
304
+ requestAnimationFrame(() => {
305
+ let e = Tt.current?.querySelector("[data-part=\"day\"][tabindex=\"0\"]");
306
+ e == null ? Ct.current?.focus() : e.focus();
307
+ });
308
+ }, []), Q = a((e, t) => {
309
+ e === "time" ? Sn(t) : Cn();
310
+ }, [Cn, Sn]);
311
+ o(() => {
312
+ let e = P.current;
313
+ e !== null && (P.current = null, Q(e, void 0));
314
+ }), o(() => {
315
+ O || (j(null), N(null));
316
+ }, [O]), o(() => {
317
+ if (T === null || E === null || !O || !D.current || !E.contains(T)) return;
318
+ D.current = !1;
319
+ let e = !1, t = requestAnimationFrame(() => {
320
+ e = !0, Q(Kt, void 0);
321
+ });
322
+ return () => {
323
+ e || (cancelAnimationFrame(t), D.current = !0);
324
+ };
325
+ }, [
326
+ E,
327
+ O,
328
+ T
329
+ ]);
330
+ let $ = a((e, t, n, r) => {
331
+ let i = e !== null;
332
+ if (i && !t && qt !== "never") {
333
+ Y(!1, "select", r), w.current?.focus({ preventScroll: !0 });
334
+ return;
335
+ }
336
+ if (i && t && qt === "always") {
337
+ Y(!1, "select", r), w.current?.focus({ preventScroll: !0 });
338
+ return;
339
+ }
340
+ i || Q(n === "date" ? "time" : "date", r);
341
+ }, [
342
+ Q,
343
+ qt,
344
+ Y
345
+ ]), wn = a((e, t) => {
346
+ if (!B) return;
347
+ let n = k !== null, r = k?.time ?? M;
348
+ if (r === null) {
349
+ j(e), W({
350
+ date: e,
351
+ time: null
352
+ }, "pointer", t), P.current = "time";
353
+ return;
354
+ }
355
+ let i = {
356
+ date: e,
357
+ time: r
358
+ };
359
+ j(null), N(null), X(i, {
360
+ reason: "select",
361
+ source: t
362
+ }), W({
363
+ date: e,
364
+ time: H.time
365
+ }, "pointer", t), $(i, n, "date", t);
366
+ }, [
367
+ $,
368
+ B,
369
+ k,
370
+ H,
371
+ M,
372
+ W,
373
+ X
374
+ ]), Tn = a((e, t) => {
375
+ if (e.unavailable || !B) return;
376
+ let n = k !== null, r = k?.date ?? A;
377
+ if (W({
378
+ date: U,
379
+ time: e.time
380
+ }, "pointer", t), r === null) {
381
+ N(e.time), P.current = "date";
382
+ return;
383
+ }
384
+ let i = {
385
+ date: r,
386
+ time: e.time
387
+ };
388
+ j(null), N(null), X(i, {
389
+ reason: "select",
390
+ source: t
391
+ }), $(i, n, "time", t);
392
+ }, [
393
+ $,
394
+ B,
395
+ k,
396
+ U,
397
+ A,
398
+ W,
399
+ X
400
+ ]), En = (e) => {
401
+ Qe?.(e), !e.defaultPrevented && B && (e.key === "ArrowDown" || e.key === "ArrowUp") && (e.preventDefault(), O ? Q(Kt, e) : Y(!0, "keyboard", e));
402
+ }, Dn = (e) => {
403
+ if (Qe?.(e), e.defaultPrevented) return;
404
+ let t = q >= 0 ? q : 0;
405
+ switch (e.key) {
406
+ case "ArrowDown":
407
+ e.preventDefault(), J(t + 1, e), Z(Math.min(K.length - 1, t + 1));
408
+ return;
409
+ case "ArrowUp":
410
+ e.preventDefault(), J(t - 1, e), Z(Math.max(0, t - 1));
411
+ return;
412
+ case "Home":
413
+ e.preventDefault(), J(0, e), Z(0);
414
+ return;
415
+ case "End":
416
+ e.preventDefault(), J(K.length - 1, e), Z(K.length - 1);
417
+ return;
418
+ case "PageDown": {
419
+ e.preventDefault();
420
+ let n = xe(K, t, 1);
421
+ J(n, e), Z(n);
422
+ return;
423
+ }
424
+ case "PageUp": {
425
+ e.preventDefault();
426
+ let n = xe(K, t, -1);
427
+ J(n, e), Z(n);
428
+ return;
429
+ }
430
+ case "Enter":
431
+ case " ": {
432
+ e.preventDefault();
433
+ let n = K[t];
434
+ n !== void 0 && Tn(n, e);
435
+ return;
436
+ }
437
+ }
438
+ if (he(e.key, bn.current.query.length > 0)) {
439
+ let n = bn.current.match(e.key, fn, t);
440
+ if (n < 0) return;
441
+ e.preventDefault(), J(n, e), Z(n);
442
+ }
443
+ }, On = (e) => {
444
+ Qe?.(e), !e.defaultPrevented && B && e.altKey && e.key === "ArrowDown" && (e.preventDefault(), Y(!0, "keyboard", e, !1));
445
+ }, kn = (e) => {
446
+ if (e.key !== "Tab" || e.altKey || e.ctrlKey || e.metaKey) return;
447
+ let t = ne(e.currentTarget), n = t[0], r = t[t.length - 1];
448
+ if (n === void 0 || r === void 0) return;
449
+ let i = e.currentTarget.ownerDocument.activeElement;
450
+ e.shiftKey && i === n ? (e.preventDefault(), r.focus()) : !e.shiftKey && i === r && (e.preventDefault(), n.focus());
451
+ }, An = k === null ? /* @__PURE__ */ d(le, { children: [
452
+ V.describeDate(A ?? H.date),
453
+ ", ",
454
+ M === null ? /* @__PURE__ */ u("span", {
455
+ "data-placeholder": "",
456
+ children: Le(V.granularity)
457
+ }) : V.time.format(M)
458
+ ] }) : V.describe(k), jn = gn ? /* @__PURE__ */ u("div", {
459
+ "data-part": "positioner",
460
+ "data-presentation": Pt ? "sheet" : "popover",
461
+ "data-ui": "datetime-picker",
462
+ ref: Ot,
463
+ ...O ? { "data-open": "" } : {},
464
+ children: /* @__PURE__ */ d("div", {
465
+ "aria-label": xn,
466
+ "data-granularity": L,
467
+ "data-open-to": Kt,
468
+ "data-part": "content",
469
+ id: Et,
470
+ onKeyDown: kn,
471
+ role: "dialog",
472
+ ...dn ? { "aria-description": S("truncated") } : {},
473
+ children: [
474
+ /* @__PURE__ */ d("div", {
475
+ "data-part": "head",
476
+ children: [
477
+ /* @__PURE__ */ u("span", {
478
+ "data-part": "head-value",
479
+ children: An
480
+ }),
481
+ at === void 0 ? null : /* @__PURE__ */ u("div", {
482
+ "data-part": "presets",
483
+ children: at
484
+ }),
485
+ /* @__PURE__ */ d("button", {
486
+ "data-part": "now",
487
+ onClick: (e) => {
488
+ let t = De(I), n = k !== null;
489
+ j(null), N(null), X(t, {
490
+ reason: "select",
491
+ source: e
492
+ }), W({
493
+ date: t.date,
494
+ time: t.time
495
+ }, "pointer", e), $(t, n, "time", e);
496
+ },
497
+ type: "button",
498
+ children: [/* @__PURE__ */ u(t, {
499
+ size: "sm",
500
+ children: /* @__PURE__ */ u(e, { name: "clock" })
501
+ }), S("now")]
502
+ })
503
+ ]
504
+ }),
505
+ /* @__PURE__ */ d("div", {
506
+ "data-part": "panels",
507
+ children: [/* @__PURE__ */ u("div", {
508
+ "data-part": "date-panel",
509
+ ref: Tt,
510
+ children: /* @__PURE__ */ u(i, {
511
+ focusedDate: H.date,
512
+ isDateUnavailable: h,
513
+ locale: F,
514
+ months: Ye,
515
+ onFocusedDateChange: (e, t) => W({
516
+ date: e,
517
+ time: H.time
518
+ }, t.reason === "pointer" ? "pointer" : "keyboard", t.source),
519
+ onValueChange: (e, t) => {
520
+ let n = Array.isArray(e) ? e[0] : e;
521
+ n != null && !Array.isArray(n) && wn(n, t.source);
522
+ },
523
+ onViewChange: Lt,
524
+ readOnly: z,
525
+ selectionMode: "single",
526
+ timeZone: I,
527
+ value: k?.date ?? A,
528
+ view: It,
529
+ weekNumbers: yt,
530
+ ...ye(nn),
531
+ ...p === void 0 ? {} : { firstDayOfWeek: p },
532
+ ref: Ct
533
+ })
534
+ }), /* @__PURE__ */ u("div", {
535
+ "data-part": "time-panel",
536
+ children: K.length === 0 ? /* @__PURE__ */ u("div", {
537
+ "data-part": "empty",
538
+ children: S("empty")
539
+ }) : /* @__PURE__ */ u("div", {
540
+ "aria-label": V.describeDate(U, "short"),
541
+ "data-part": "list",
542
+ id: Dt,
543
+ onKeyDown: Dn,
544
+ ref: wt,
545
+ role: "listbox",
546
+ ...dn ? { "data-truncated": "" } : {},
547
+ children: K.map((e, t) => {
548
+ let n = fn[t] ?? "", r = k === null ? f(e.time, M) : Ce(k.date, U) && f(e.time, k.time), i = t === q;
549
+ return /* @__PURE__ */ u("div", {
550
+ "aria-disabled": e.unavailable ? !0 : void 0,
551
+ "aria-selected": r,
552
+ "data-part": "option",
553
+ onClick: (t) => Tn(e, t),
554
+ ref: i ? yn : void 0,
555
+ role: "option",
556
+ tabIndex: i ? 0 : -1,
557
+ ...e.unavailable ? { "data-disabled": "" } : {},
558
+ ...r ? { "data-selected": "" } : {},
559
+ ...i ? { "data-current": "" } : {},
560
+ children: ut === void 0 ? n : ut({
561
+ current: i,
562
+ date: U,
563
+ label: n,
564
+ selected: r,
565
+ time: e.time,
566
+ unavailable: e.unavailable
567
+ })
568
+ }, ke(e.time));
569
+ })
570
+ })
571
+ })]
572
+ }),
573
+ Be === void 0 ? null : /* @__PURE__ */ u("div", {
574
+ "data-part": "footer",
575
+ children: Be
576
+ })
577
+ ]
578
+ })
579
+ }) : null, Mn = /* @__PURE__ */ d(le, { children: [/* @__PURE__ */ u("div", {
580
+ "data-part": "control",
581
+ onKeyDown: On,
582
+ children: /* @__PURE__ */ u(te, {
583
+ calendar: Ht,
584
+ clearable: Ae,
585
+ disabled: Zt,
586
+ end: /* @__PURE__ */ u("button", {
587
+ "aria-controls": O ? Et : void 0,
588
+ "aria-expanded": O,
589
+ "aria-haspopup": "dialog",
590
+ "aria-label": xn,
591
+ "data-part": "trigger",
592
+ disabled: !B,
593
+ onClick: (e) => Y(!O, "pointer", e),
594
+ onKeyDown: En,
595
+ ref: w,
596
+ type: "button",
597
+ children: /* @__PURE__ */ u(t, { children: /* @__PURE__ */ u(e, { name: "calendar" }) })
598
+ }),
599
+ granularity: L,
600
+ invalid: on,
601
+ isDateUnavailable: h,
602
+ isTimeUnavailable: g,
603
+ locale: F,
604
+ max: _,
605
+ maxTime: qe,
606
+ min: v,
607
+ minTime: Je,
608
+ name: Xe,
609
+ onValueChange: (e, t) => X(e, t),
610
+ readOnly: z,
611
+ ref: St,
612
+ required: Qt,
613
+ size: Ut,
614
+ timeZone: I,
615
+ value: k,
616
+ variant: Wt,
617
+ ...p === void 0 ? {} : { firstDayOfWeek: p },
618
+ ...R === void 0 ? {} : { hourCycle: R },
619
+ ...y === void 0 ? {} : { referenceDateTime: y },
620
+ ...ct === void 0 ? {} : { relative: ct }
621
+ })
622
+ }), E === null ? jn : null] }), Nn = {
623
+ ...bt,
624
+ children: Mn,
625
+ className: ae,
626
+ style: mt,
627
+ ...Zt === !0 ? { "data-disabled": "" } : {},
628
+ ...on === !0 ? { "data-invalid": "" } : {},
629
+ ...z === !0 ? { "data-readonly": "" } : {},
630
+ ...Qt === !0 ? { "data-required": "" } : {},
631
+ ...O ? { "data-open": "" } : {},
632
+ "data-granularity": L,
633
+ "data-part": "root",
634
+ "data-size": Ut,
635
+ "data-ui": "datetime-picker",
636
+ "data-variant": Wt,
637
+ ref: C
638
+ };
639
+ return /* @__PURE__ */ d(le, { children: [lt === void 0 ? /* @__PURE__ */ u("div", { ...Nn }) : lt(Nn), E === null ? null : ge(jn, E)] });
640
+ }
641
+ function Le(e) {
642
+ return e === "hour" ? "--" : e === "second" ? "--:--:--" : "--:--";
643
+ }
644
+ //#endregion
645
+ export { Me as i, Ae as n, Ne as r, Ie as t };
@@ -1,2 +1,2 @@
1
- import { i as e, n as t, r as n, t as r } from "./datetime-picker-HDVlUhzy.js";
1
+ import { i as e, n as t, r as n, t as r } from "./datetime-picker-STqSWMkH.js";
2
2
  export { t as DATE_TIME_PICKER_MAX_OPTIONS, r as DateTimePicker, n as DateTimePickerDefaultsProvider, e as useDateTimePickerDefaults };