@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
@@ -1,745 +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 a } from "./time-field-DrhiCtUl.js";
5
- import { createControllable as o } from "@slotted/core/state";
6
- import { createContext as s, useCallback as c, useContext as ee, useEffect as l, useId as te, useImperativeHandle as ne, useMemo as u, useRef as d, useState as f } from "react";
7
- import { Fragment as re, jsx as p, jsxs as m } from "react/jsx-runtime";
8
- import { createPresence as ie } from "@slotted/core/presence";
9
- import { createPortalRoot as ae } from "@slotted/core/portal";
10
- import { createDismissableLayer as oe } from "@slotted/core/dismissable-layer";
11
- import { createPositioner as se } from "@slotted/core/positioner";
12
- import { createTypeahead as ce, isPrintable as le } from "@slotted/core/typeahead";
13
- import { createPortal as ue } from "react-dom";
14
- import { timeRangePickerMessages as de } from "@slotted/core/i18n";
15
- import { compareTime as h, createTimeFormat as fe, durationLabel as pe, firstUnavailableIndex as me, hourJump as he, isSameTime as g, isTruncated as ge, nearestIndex as _e, nowIn as ve, openingIndex as ye, runRefusal as be, secondsOfDay as xe, timeList as Se, timeRangeProblems as Ce, timeRangeSeconds as we, toISOTime as Te } from "@slotted/core/date";
16
- //#region src/time-range-picker/time-range-picker-defaults.tsx
17
- var Ee = 900, De = 1440;
18
- function Oe(e, t) {
19
- return pe(e, t);
20
- }
21
- var ke = s({
22
- closeOnSelect: "auto",
23
- granularity: "minute",
24
- hourCycle: void 0,
25
- lengthLabel: Oe,
26
- maxOptions: De,
27
- placement: "bottom-start",
28
- size: "md",
29
- step: 900,
30
- timeZone: void 0,
31
- unavailableOptions: "disable",
32
- variant: "outline"
33
- });
34
- function Ae() {
35
- return ee(ke);
36
- }
37
- function je({ children: e, ...t }) {
38
- let n = Ae();
39
- return /* @__PURE__ */ p(ke.Provider, {
40
- value: {
41
- closeOnSelect: t.closeOnSelect ?? n.closeOnSelect,
42
- granularity: t.granularity ?? n.granularity,
43
- hourCycle: t.hourCycle ?? n.hourCycle,
44
- lengthLabel: t.lengthLabel ?? n.lengthLabel,
45
- maxOptions: t.maxOptions ?? n.maxOptions,
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/time-range-picker/time-range-picker.tsx
58
- var Me = "(max-width: 480px) and (pointer: coarse)", Ne = {
59
- hour: 12,
60
- minute: 0,
61
- second: 0
62
- }, Pe = {
63
- start: null,
64
- end: null
65
- }, Fe = {
66
- start: null,
67
- end: null
68
- }, Ie = s(null);
69
- function Le(e) {
70
- return e === null || e.start === null && e.end === null ? null : e;
71
- }
72
- function _(e, t) {
73
- return e === null || t === null ? e === t : g(e.start, t.start) && g(e.end, t.end);
74
- }
75
- function Re(e, t, n) {
76
- let r = e.getBoundingClientRect(), i = t.getBoundingClientRect();
77
- if (r.height === 0 || i.height === 0) return;
78
- let a = i.top - r.top;
79
- n ? e.scrollTop += a - (r.height - i.height) / 2 : a < 0 ? e.scrollTop += a : i.bottom > r.bottom && (e.scrollTop += i.bottom - r.bottom);
80
- }
81
- function v(e) {
82
- return e === "start" ? "end" : "start";
83
- }
84
- function ze({ className: s, clearable: ee = !1, closeOnSelect: pe, contiguous: Ee = !0, defaultHighlighted: De, defaultOpen: Oe = !1, defaultPosition: ke = "start", defaultValue: je, disabled: ze, endName: Ve, footer: He, granularity: Ue, highlighted: We, hourCycle: Ge, invalid: Ke, isTimeUnavailable: y, lengthLabel: qe, locale: Je, max: b, maxLength: x, maxOptions: Ye, messages: Xe, min: S, minLength: C, onHighlightedChange: Ze, onKeyDown: Qe, onOpenChange: $e, onPositionChange: et, onValueChange: tt, open: nt, options: rt, placement: it, position: at, presets: ot, readOnly: st, ref: ct, referenceTime: lt, relative: ut, render: dt, renderOption: ft, required: pt, size: mt, startName: ht, step: gt, style: _t, timeZone: vt, unavailableOptions: yt, value: bt, variant: xt, ...St }) {
85
- let w = i(), T = Ae(), Ct = n(), E = r(de, Xe), D = d(null), O = d(null), wt = d(null), Tt = d(null), Et = d(null), Dt = d({
86
- start: null,
87
- end: null
88
- }), k = te(), [A, Ot] = f(null), [kt, At] = f(null), [jt, Mt] = f("unmounted"), [Nt, Pt] = f(!1), [Ft, It] = f(!1), [Lt, Rt] = f(Oe), j = nt ?? Lt, [zt, Bt] = f(Le(je ?? null)), M = bt === void 0 ? zt : Le(bt), [Vt, Ht] = f(ke), N = at ?? Vt, [Ut, Wt] = f(De ?? Fe), P = We ?? Ut, [F, I] = f(M ?? Pe), [Gt, Kt] = f(null), [qt, Jt] = f(!1), L = Je ?? Ct, Yt = vt ?? T.timeZone, R = Ue ?? T.granularity, z = Ge ?? T.hourCycle, Xt = mt ?? w?.size ?? T.size, Zt = xt ?? T.variant, Qt = it ?? T.placement, $t = pe ?? T.closeOnSelect, en = gt ?? T.step, tn = Ye ?? T.maxOptions, nn = yt ?? T.unavailableOptions, rn = qe ?? T.lengthLabel, B = c((e) => rn(e, L), [rn, L]), an = (e) => E(e), on = ze ?? w?.disabled, sn = st ?? w?.readOnly, cn = pt ?? w?.required, V = on !== !0 && sn !== !0, H = u(() => fe({
89
- granularity: R,
90
- hourCycle: z,
91
- locale: L
92
- }), [
93
- R,
94
- z,
95
- L
96
- ]), [ln, un] = f(() => Ne);
97
- l(() => un(ve(Yt)), [Yt]);
98
- let dn = lt ?? ln, U = M?.start ?? null, W = M?.end ?? null, fn = U !== null && W !== null && h(U, W) <= 0, pn = u(() => Ce(M, {
99
- max: b,
100
- maxLength: x,
101
- min: S,
102
- minLength: C,
103
- unavailable: y
104
- }), [
105
- M,
106
- y,
107
- b,
108
- x,
109
- S,
110
- C
111
- ]), mn = Ke ?? (pn.length > 0 || w?.invalid), G = c((e, t, n) => {
112
- o({
113
- controlled: nt,
114
- initial: j,
115
- onRequest: (e) => $e?.(e.value, e)
116
- }).request(e, t, n) && Rt(e);
117
- }, [
118
- j,
119
- $e,
120
- nt
121
- ]), K = c((e, t, n) => {
122
- let r = Le(e);
123
- o({
124
- controlled: bt === void 0 ? void 0 : M,
125
- initial: M,
126
- equals: _,
127
- onRequest: (e) => tt?.(e.value, e)
128
- }).request(r, t, n) && Bt(r);
129
- }, [
130
- M,
131
- tt,
132
- bt
133
- ]), q = c((e, t, n) => {
134
- o({
135
- controlled: at,
136
- initial: N,
137
- onRequest: (e) => et?.(e.value, e)
138
- }).request(e, t, n) && Ht(e);
139
- }, [
140
- N,
141
- et,
142
- at
143
- ]), hn = c((e, t, n) => {
144
- o({
145
- controlled: We,
146
- initial: P,
147
- equals: (e, t) => g(e.start, t.start) && g(e.end, t.end),
148
- onRequest: (e) => Ze?.(e.value, e)
149
- }).request(e, t, n) && Wt(e);
150
- }, [
151
- P,
152
- We,
153
- Ze
154
- ]), gn = d(!1);
155
- l(() => {
156
- if (j && !gn.current) {
157
- I(M ?? Pe), Kt(null);
158
- let e = M?.start == null ? "start" : M.end === null ? "end" : null;
159
- e !== null && e !== N && q(e, "programmatic", void 0);
160
- }
161
- gn.current = j;
162
- }, [
163
- N,
164
- M,
165
- j,
166
- q
167
- ]);
168
- let _n = u(() => ({
169
- isTimeUnavailable: y,
170
- max: b,
171
- maxOptions: tn,
172
- min: S,
173
- options: rt,
174
- step: en
175
- }), [
176
- y,
177
- b,
178
- S,
179
- rt,
180
- tn,
181
- en
182
- ]), vn = u(() => Se(_n), [_n]), yn = u(() => ge(_n), [_n]), bn = c((e) => {
183
- let t = F[v(e)], n = () => !1;
184
- if (t !== null) {
185
- let r = e === "end" ? 1 : -1, i = xe(t), a = _e(vn, t), o = Ee ? me(vn, a, r) : -1;
186
- n = (e, t) => be(i, xe(e.time), r, {
187
- maxLength: x,
188
- minLength: C
189
- }) || o >= 0 && (r === 1 ? t >= o : t <= o);
190
- }
191
- let r = vn.map((e, t) => e.unavailable || !n(e, t) ? e : {
192
- ...e,
193
- unavailable: !0
194
- });
195
- return nn === "hide" ? r.filter((e) => !e.unavailable) : r;
196
- }, [
197
- vn,
198
- Ee,
199
- x,
200
- C,
201
- nn,
202
- F
203
- ]), J = u(() => ({
204
- start: bn("start"),
205
- end: bn("end")
206
- }), [bn]), xn = u(() => ({
207
- start: J.start.map((e) => H.format(e.time)),
208
- end: J.end.map((e) => H.format(e.time))
209
- }), [H, J]), Sn = c((e, t) => {
210
- let n = F[v(e)];
211
- if (n === null || t.unavailable) return null;
212
- let r = e === "end" ? we(n, t.time) : we(t.time, n);
213
- return B(r);
214
- }, [B, F]), Cn = c((e) => {
215
- let t = F[v(e)];
216
- return ye(J[e], F[e] ?? t ?? dn, t, e);
217
- }, [
218
- dn,
219
- J,
220
- F
221
- ]), Y = c((e) => {
222
- let t = P[e];
223
- return t === null ? -1 : J[e].findIndex((e) => g(e.time, t));
224
- }, [P, J]), X = c((e, t, n) => {
225
- let r = J[e], i = r[Math.max(0, Math.min(r.length - 1, t))];
226
- i !== void 0 && hn({
227
- ...P,
228
- [e]: i.time
229
- }, "keyboard", n);
230
- }, [
231
- P,
232
- J,
233
- hn
234
- ]);
235
- l(() => {
236
- if (!j) return;
237
- let e = { ...P };
238
- for (let t of ["start", "end"]) {
239
- let n = Cn(t);
240
- e[t] = n < 0 ? null : J[t][n]?.time ?? null;
241
- }
242
- (!g(e.start, P.start) || !g(e.end, P.end)) && hn(e, "programmatic", void 0);
243
- }, [j, J]);
244
- let wn = d(!1);
245
- l(() => {
246
- if (!j || A === null) {
247
- wn.current = !1;
248
- return;
249
- }
250
- let e = !wn.current;
251
- wn.current = !0;
252
- let t = Et.current, n = Y(N), r = t?.querySelectorAll("[data-part=\"option\"]")[n];
253
- n < 0 || t === null || r === void 0 || Re(t, r, e);
254
- }, [
255
- N,
256
- Y,
257
- j,
258
- A
259
- ]);
260
- let Tn = d({
261
- start: ce({ locale: () => L }),
262
- end: ce({ locale: () => L })
263
- });
264
- l(() => {
265
- let e = Tn.current;
266
- return () => {
267
- e.start.destroy(), e.end.destroy();
268
- };
269
- }, []);
270
- let En = d(null);
271
- l(() => {
272
- let e = ie({
273
- present: j,
274
- onStatusChange: Mt
275
- });
276
- return En.current = e, Mt(e.status), () => {
277
- e.destroy(), En.current = null;
278
- };
279
- }, []), l(() => En.current?.sync(j), [j]), l(() => En.current?.setNode(A), [A]);
280
- let Dn = jt !== "unmounted";
281
- l(() => {
282
- if (!Dn) {
283
- At(null);
284
- return;
285
- }
286
- let e = ae({
287
- origin: O.current,
288
- disabled: !1
289
- });
290
- return At(e.container), () => e.release();
291
- }, [Dn]), l(() => {
292
- if (typeof window > "u" || typeof window.matchMedia != "function") return;
293
- let e = window.matchMedia(Me), t = () => It(e.matches);
294
- return t(), e.addEventListener("change", t), () => e.removeEventListener("change", t);
295
- }, []), l(() => {
296
- if (A === null || D.current === null || Ft) return;
297
- let e = !0, t = D.current.querySelector("[data-part=\"control\"]") ?? D.current, [n, r = "center"] = Qt.split("-"), i = se(t, A, {
298
- align: r,
299
- side: n
300
- });
301
- return i.update().then(() => {
302
- e && Pt(!0);
303
- }), () => {
304
- e = !1, i.destroy(), Pt(!1);
305
- };
306
- }, [
307
- A,
308
- Qt,
309
- Ft
310
- ]), l(() => {
311
- if (A === null || !j) return;
312
- let e = O.current === null ? [] : [O.current], t = oe(A, {
313
- branches: e,
314
- escape: !0,
315
- focusOutside: !1,
316
- modal: !1,
317
- outsidePress: !0,
318
- scrollLock: !1,
319
- onDismiss: (e) => {
320
- (e.reason !== "escape" || A.querySelector("[data-ui=\"time-field\"][data-relative]") === null) && (G(!1, e.reason === "escape" ? "escape" : "outsidePress", e.source), e.reason === "escape" && O.current?.focus({ preventScroll: !0 }));
321
- }
322
- });
323
- return () => t.destroy();
324
- }, [
325
- j,
326
- A,
327
- G
328
- ]);
329
- let Z = c((e) => {
330
- Et.current?.querySelectorAll("[data-part=\"option\"]")[e]?.focus();
331
- }, []), On = c(() => {
332
- let e = Tt.current;
333
- if (e !== null && getComputedStyle(e).display === "none") {
334
- Z(Math.max(0, Y(N)));
335
- return;
336
- }
337
- wt.current?.focus();
338
- }, [
339
- N,
340
- Z,
341
- Y
342
- ]), kn = c((e, t) => {
343
- let n = Y(e), r = n >= 0 ? n : Cn(e);
344
- if (e !== N && q(e, "select", t), r < 0) {
345
- requestAnimationFrame(() => wt.current?.focus());
346
- return;
347
- }
348
- X(e, r, t), requestAnimationFrame(() => Z(r));
349
- }, [
350
- N,
351
- Z,
352
- Y,
353
- X,
354
- Cn,
355
- q
356
- ]), Q = d(null);
357
- l(() => {
358
- if (!j || A === null || Q.current === null) return;
359
- let e = Q.current;
360
- if (Q.current = null, e === "list") {
361
- kn(N, void 0);
362
- return;
363
- }
364
- requestAnimationFrame(On);
365
- }, [
366
- N,
367
- kn,
368
- On,
369
- j,
370
- A
371
- ]), ne(ct, () => ({
372
- focus: () => O.current?.focus(),
373
- open: () => G(!0, "keyboard", void 0),
374
- close: () => G(!1, "keyboard", void 0)
375
- }), [G]);
376
- let An = (e, t) => {
377
- ($t === "always" || $t === "auto" && e) && (G(!1, "select", t), O.current?.focus({ preventScroll: !0 }));
378
- }, jn = (e, t, n) => {
379
- let r = F.start !== null && F.end !== null, i = {
380
- ...F,
381
- [e]: t
382
- };
383
- if (I(i), hn({
384
- ...P,
385
- [e]: t
386
- }, "pointer", n), i.start !== null && i.end !== null) {
387
- K(i, "select", n), q(e, "select", n), An(!r, n);
388
- return;
389
- }
390
- kn(v(e), n);
391
- }, Mn = (e, t, n) => {
392
- !t.unavailable && V && jn(e, t.time, n);
393
- }, Nn = (e) => {
394
- F.start !== null && F.end !== null && !_(F, M) && K(F, "select", e), G(!1, "pointer", e), O.current?.focus({ preventScroll: !0 });
395
- }, Pn = (e, t) => {
396
- I(e), K(e, "select", t), q("start", "select", t), An(!0, t);
397
- }, Fn = (e, t) => {
398
- let n = {
399
- ...F,
400
- [N]: e
401
- };
402
- I(n), K(n, t.reason, t.source);
403
- }, In = (e) => Dt.current[e]?.focus({ preventScroll: !0 }), Ln = (e) => {
404
- if (Qe?.(e), e.defaultPrevented) return;
405
- let t = e.key === "ArrowRight" || e.key === "End" ? "end" : e.key === "ArrowLeft" || e.key === "Home" ? "start" : null;
406
- t !== null && (e.preventDefault(), t !== N && q(t, "keyboard", e), In(t));
407
- }, Rn = (e) => {
408
- if (Qe?.(e), !e.defaultPrevented && V) {
409
- if (e.key === "ArrowDown" || e.key === "ArrowUp") {
410
- e.preventDefault(), Q.current = "list", j ? kn(N, e) : G(!0, "keyboard", e);
411
- return;
412
- }
413
- (e.key === "Enter" || e.key === " ") && (e.preventDefault(), Q.current = "field", G(!j, "keyboard", e));
414
- }
415
- }, zn = (e) => (t) => {
416
- if (Qe?.(t), t.defaultPrevented) return;
417
- let n = J[e], r = Y(e), i = r >= 0 ? r : 0;
418
- switch (t.key) {
419
- case "ArrowDown":
420
- t.preventDefault(), X(e, i + 1, t), Z(Math.min(n.length - 1, i + 1));
421
- return;
422
- case "ArrowUp":
423
- t.preventDefault(), X(e, i - 1, t), Z(Math.max(0, i - 1));
424
- return;
425
- case "Home":
426
- t.preventDefault(), X(e, 0, t), Z(0);
427
- return;
428
- case "End":
429
- t.preventDefault(), X(e, n.length - 1, t), Z(n.length - 1);
430
- return;
431
- case "PageDown": {
432
- t.preventDefault();
433
- let r = he(n, i, 1);
434
- X(e, r, t), Z(r);
435
- return;
436
- }
437
- case "PageUp": {
438
- t.preventDefault();
439
- let r = he(n, i, -1);
440
- X(e, r, t), Z(r);
441
- return;
442
- }
443
- case "Enter":
444
- case " ": {
445
- t.preventDefault();
446
- let r = n[i];
447
- r !== void 0 && Mn(e, r, t);
448
- return;
449
- }
450
- }
451
- let a = Tn.current[e];
452
- if (le(t.key, a.query.length > 0)) {
453
- let n = a.match(t.key, xn[e], i);
454
- if (n < 0) return;
455
- t.preventDefault(), X(e, n, t), Z(n);
456
- }
457
- }, Bn = Gt ?? (qt ? Be(N, P) : null), Vn = Bn === null ? null : {
458
- ...F,
459
- [Bn.position]: Bn.time
460
- }, Hn = ((e) => e.start !== null && e.end !== null ? B(we(e.start, e.end)) : "")(Vn === null ? F : Vn), Un = C !== void 0 && x !== void 0 ? E("limit.between", {
461
- min: B(C),
462
- max: B(x)
463
- }) : C === void 0 ? x === void 0 ? null : E("limit.atMost", { max: B(x) }) : E("limit.atLeast", { min: B(C) }), Wn = F.start !== null && F.end !== null ? Ce(F, {
464
- max: b,
465
- maxLength: x,
466
- min: S,
467
- minLength: C,
468
- unavailable: y
469
- }) : [], $ = Wn[0], Gn = F[N] === null ? E("chooseTime", { end: an(N) }) : $ === void 0 ? "" : E($ === "min" || $ === "max" ? "bounds" : $), Kn = `${k}-hint`, qn = U !== null && W !== null ? fn ? E("change", {
470
- start: H.describe(U),
471
- end: H.describe(W),
472
- length: B(we(U, W))
473
- }) : E("changeReversed", {
474
- start: H.describe(U),
475
- end: H.describe(W)
476
- }) : E("choose"), Jn = M === null ? null : `${U === null ? "" : H.format(U)} – ${W === null ? "" : H.format(W)}`.trim(), Yn = F.start !== null && F.end !== null && h(F.start, F.end) <= 0, Xn = Yn && (b === void 0 || h(F.end, b) < 0) ? F.end : b, Zn = Yn && (S === void 0 || h(F.start, S) > 0) ? F.start : S, Qn = {
477
- disabled: on,
478
- granularity: R,
479
- isTimeUnavailable: y,
480
- locale: L,
481
- readOnly: sn,
482
- required: cn,
483
- size: "sm",
484
- timeZone: Yt,
485
- variant: "plain",
486
- ...z === void 0 ? {} : { hourCycle: z },
487
- ...lt === void 0 ? {} : { referenceTime: lt },
488
- ...ut === void 0 ? {} : { relative: ut }
489
- }, $n = (e) => `${k}-tab-${e}`, er = (e) => {
490
- let t = F[e], n = N === e;
491
- return /* @__PURE__ */ m("button", {
492
- "aria-controls": `${k}-panel`,
493
- "aria-selected": n,
494
- "data-part": "tab",
495
- "data-position": e,
496
- disabled: !V,
497
- id: $n(e),
498
- onClick: (t) => {
499
- n || q(e, "pointer", t);
500
- },
501
- onKeyDown: Ln,
502
- ref: (t) => {
503
- Dt.current[e] = t;
504
- },
505
- role: "tab",
506
- tabIndex: n ? 0 : -1,
507
- type: "button",
508
- ...n ? { "data-current": "" } : {},
509
- ...t === null ? { "data-placeholder": "" } : {},
510
- children: [/* @__PURE__ */ p("span", {
511
- "data-part": "tab-label",
512
- children: an(e)
513
- }), /* @__PURE__ */ p("span", {
514
- "data-part": "tab-value",
515
- children: t === null ? "—" : H.format(t)
516
- })]
517
- });
518
- }, tr = () => {
519
- let e = N, t = J[e], n = Y(e), r = F[e];
520
- return /* @__PURE__ */ p("div", {
521
- "data-part": "panel",
522
- "data-position": e,
523
- id: `${k}-panel`,
524
- children: t.length === 0 ? /* @__PURE__ */ p("div", {
525
- "data-part": "empty",
526
- children: E("empty")
527
- }) : /* @__PURE__ */ p("div", {
528
- "aria-describedby": Gn === "" ? void 0 : Kn,
529
- "aria-labelledby": $n(e),
530
- "data-part": "list",
531
- onBlur: (e) => {
532
- e.currentTarget.contains(e.relatedTarget) || Jt(!1);
533
- },
534
- onFocus: () => Jt(!0),
535
- onKeyDown: zn(e),
536
- onPointerLeave: () => Kt(null),
537
- ref: Et,
538
- role: "listbox",
539
- ...yn ? {
540
- "aria-description": E("truncated"),
541
- "data-truncated": ""
542
- } : {},
543
- children: t.map((t, i) => {
544
- let a = xn[e][i] ?? "", o = g(t.time, r), s = i === n, c = Sn(e, t);
545
- return /* @__PURE__ */ p("div", {
546
- "aria-disabled": t.unavailable ? !0 : void 0,
547
- "aria-selected": o,
548
- "data-part": "option",
549
- onClick: (n) => Mn(e, t, n),
550
- onPointerEnter: () => Kt(t.unavailable ? null : {
551
- position: e,
552
- time: t.time
553
- }),
554
- role: "option",
555
- tabIndex: s ? 0 : -1,
556
- ...t.unavailable ? { "data-disabled": "" } : {},
557
- ...o ? { "data-selected": "" } : {},
558
- ...s ? { "data-current": "" } : {},
559
- children: ft === void 0 ? /* @__PURE__ */ m(re, { children: [a, c === null ? null : /* @__PURE__ */ p("span", {
560
- "data-part": "option-duration",
561
- children: c
562
- })] }) : ft({
563
- current: s,
564
- duration: c,
565
- label: a,
566
- position: e,
567
- selected: o,
568
- time: t.time,
569
- unavailable: t.unavailable
570
- })
571
- }, Te(t.time));
572
- })
573
- })
574
- });
575
- }, nr = {
576
- held: M,
577
- choose: Pn
578
- }, rr = Dn ? /* @__PURE__ */ p("div", {
579
- "data-part": "positioner",
580
- "data-presentation": Ft ? "sheet" : "popover",
581
- "data-ui": "time-range-picker",
582
- ref: Ot,
583
- ...j ? { "data-open": "" } : {},
584
- ...Nt ? { "data-positioned": "" } : {},
585
- children: /* @__PURE__ */ m("div", {
586
- "aria-label": qn,
587
- "data-part": "content",
588
- id: k,
589
- role: "dialog",
590
- children: [
591
- /* @__PURE__ */ m("div", {
592
- "data-part": "head",
593
- children: [
594
- /* @__PURE__ */ m("div", {
595
- "data-part": "tabs",
596
- role: "tablist",
597
- children: [er("start"), er("end")]
598
- }),
599
- /* @__PURE__ */ p("div", {
600
- "data-part": "field",
601
- "data-position": N,
602
- ref: Tt,
603
- children: /* @__PURE__ */ p(a, {
604
- ...Qn,
605
- "aria-describedby": Gn === "" ? void 0 : Kn,
606
- "aria-label": an(N),
607
- invalid: N === "end" && Wn.includes("order") ? !0 : void 0,
608
- max: N === "start" ? Xn : b,
609
- min: N === "end" ? Zn : S,
610
- onValueChange: Fn,
611
- ref: wt,
612
- value: F[N]
613
- })
614
- }),
615
- /* @__PURE__ */ p("button", {
616
- "data-part": "now",
617
- disabled: !V,
618
- onClick: (e) => jn(N, dn, e),
619
- type: "button",
620
- children: E("now")
621
- }),
622
- /* @__PURE__ */ p("span", {
623
- "data-part": "hint",
624
- id: Kn,
625
- ...$ === void 0 ? {} : { "data-invalid": "" },
626
- children: Gn
627
- }),
628
- /* @__PURE__ */ p("span", {
629
- "aria-live": "polite",
630
- "data-part": "length",
631
- ...Vn === null ? {} : { "data-pending": "" },
632
- children: Hn
633
- }),
634
- Un === null ? null : /* @__PURE__ */ p("span", {
635
- "data-part": "limit",
636
- children: Un
637
- })
638
- ]
639
- }),
640
- ot === void 0 ? null : /* @__PURE__ */ p(Ie.Provider, {
641
- value: nr,
642
- children: /* @__PURE__ */ p("div", {
643
- "data-part": "presets",
644
- children: ot
645
- })
646
- }),
647
- tr(),
648
- /* @__PURE__ */ m("div", {
649
- "data-part": "footer",
650
- children: [He, /* @__PURE__ */ p("button", {
651
- "data-part": "done",
652
- onClick: Nn,
653
- type: "button",
654
- children: E("done")
655
- })]
656
- })
657
- ]
658
- })
659
- }) : null, ir = /* @__PURE__ */ m(re, { children: [/* @__PURE__ */ m("div", {
660
- "data-part": "control",
661
- children: [
662
- /* @__PURE__ */ m("button", {
663
- "aria-controls": j ? k : void 0,
664
- "aria-expanded": j,
665
- "aria-haspopup": "dialog",
666
- "aria-label": qn,
667
- "data-part": "trigger",
668
- disabled: !V,
669
- onClick: (e) => {
670
- Q.current = "field", G(!j, "pointer", e);
671
- },
672
- onKeyDown: Rn,
673
- ref: O,
674
- type: "button",
675
- children: [/* @__PURE__ */ p("span", {
676
- "data-part": "summary",
677
- ...Jn === null ? { "data-placeholder": "" } : {},
678
- children: Jn ?? E("choose")
679
- }), /* @__PURE__ */ p(t, { children: /* @__PURE__ */ p(e, { name: "clock" }) })]
680
- }),
681
- ee && M !== null ? /* @__PURE__ */ p("button", {
682
- "aria-label": E("clear"),
683
- "data-part": "clear",
684
- disabled: !V,
685
- onClick: (e) => {
686
- I(Pe), K(null, "clear", e), q("start", "clear", e), O.current?.focus();
687
- },
688
- type: "button",
689
- children: /* @__PURE__ */ p(t, { children: /* @__PURE__ */ p(e, { name: "x" }) })
690
- }) : null,
691
- /* @__PURE__ */ p("input", {
692
- "data-part": "hidden-input",
693
- name: ht,
694
- type: "hidden",
695
- value: U === null ? "" : Te(U)
696
- }),
697
- /* @__PURE__ */ p("input", {
698
- "data-part": "hidden-input",
699
- name: Ve,
700
- type: "hidden",
701
- value: W === null ? "" : Te(W)
702
- })
703
- ]
704
- }), kt === null ? rr : null] }), ar = {
705
- ...St,
706
- children: ir,
707
- className: s,
708
- style: _t,
709
- ...on === !0 ? { "data-disabled": "" } : {},
710
- ...mn === !0 ? { "data-invalid": "" } : {},
711
- ...sn === !0 ? { "data-readonly": "" } : {},
712
- ...cn === !0 ? { "data-required": "" } : {},
713
- ...j ? { "data-open": "" } : {},
714
- "data-granularity": R,
715
- "data-part": "root",
716
- "data-size": Xt,
717
- "data-ui": "time-range-picker",
718
- "data-variant": Zt,
719
- ref: D
720
- };
721
- return /* @__PURE__ */ m(re, { children: [dt === void 0 ? /* @__PURE__ */ p("div", { ...ar }) : dt(ar), kt === null ? null : ue(rr, kt)] });
722
- }
723
- function Be(e, t) {
724
- let n = t[e];
725
- return n === null ? null : {
726
- position: e,
727
- time: n
728
- };
729
- }
730
- function Ve({ children: e, onClick: t, ref: n, render: r, value: i, ...a }) {
731
- let o = ee(Ie), s = typeof i == "function" ? i() : i, c = o !== null && _(o.held, s), l = {
732
- ...a,
733
- children: e,
734
- "data-part": "preset",
735
- ...c ? { "data-selected": "" } : {},
736
- onClick: (e) => {
737
- t?.(e), !e.defaultPrevented && o?.choose(typeof i == "function" ? i() : i, e);
738
- },
739
- ref: n,
740
- type: "button"
741
- };
742
- return r === void 0 ? /* @__PURE__ */ p("button", { ...l }) : r(l);
743
- }
744
- //#endregion
745
- export { Ee as a, Ae as c, De as i, Ve as n, je as o, _ as r, Oe as s, ze as t };