@povio/ui 6.0.0-rc.2 → 6.0.0-rc.3

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 (59) hide show
  1. package/dist/{Autocomplete.bound-e5WbxlBm.js → Autocomplete.bound-DTKSW9Sb.js} +1 -1
  2. package/dist/{Calendar-ChmIflXX.js → Calendar-u-UcoZhB.js} +6 -156
  3. package/dist/Calendar.lazy-B9YqgHbn.js +131 -0
  4. package/dist/{DatePicker-Bc_E4UZ1.js → DatePicker-BaLQOOJJ.js} +7 -5
  5. package/dist/{DatePicker.bound-CtBL5w-8.js → DatePicker.bound-NquZAtFK.js} +1 -1
  6. package/dist/{DatePickerInput-TND0rEMc.js → DatePickerInput-B0e_huQt.js} +6 -250
  7. package/dist/{DateRangePicker-BNMTOQ2N.js → DateRangePicker-4CrjSCAx.js} +25 -287
  8. package/dist/{DateRangePicker.bound-GeRw9Iuj.js → DateRangePicker.bound-D530tUJL.js} +1 -1
  9. package/dist/{DateTimePicker-B3YjV4uj.js → DateTimePicker-CtU096IU.js} +7 -5
  10. package/dist/{DateTimePicker.bound-ByjHsAnf.js → DateTimePicker.bound-BJzw56_u.js} +1 -1
  11. package/dist/{Input.bound-CnqI-L-b.js → Input.bound-DCTT5J62.js} +1 -1
  12. package/dist/{NumberField.bound-DiDYEZM4.js → NumberField.bound-CQcKgZ--.js} +1 -1
  13. package/dist/{NumberRangeInput.bound-B0e7yUDI.js → NumberRangeInput.bound-D-Lj5_KL.js} +1 -1
  14. package/dist/{PasswordInput.bound-Bj3WO1zC.js → PasswordInput.bound-WJ_VYQpn.js} +1 -1
  15. package/dist/RangeCalendar-CXLwzK5Z.js +291 -0
  16. package/dist/{RichTextEditor-qoxzWBFP.js → RichTextEditor-DDGSNZyF.js} +3 -3
  17. package/dist/{Select-BAlYMh4h.js → Select-DbZOJ-0u.js} +33 -360
  18. package/dist/{Select.bound-CQPG2sWV.js → Select.bound-B9c9mP8o.js} +1 -1
  19. package/dist/SelectListBox-CFOH3brT.js +362 -0
  20. package/dist/{TimePicker-CmBGkxDC.js → TimePicker-BjWuzBv_.js} +4 -3
  21. package/dist/{TimePicker.bound-3i1DJgrU.js → TimePicker.bound-DBovZwLJ.js} +1 -1
  22. package/dist/{datePickerValue.utils-BxHR_BQZ.js → TimePickerForm-BReCXELG.js} +2 -5
  23. package/dist/components/autocomplete.js +1 -1
  24. package/dist/components/date-picker.js +1 -1
  25. package/dist/components/date-range-picker.js +1 -1
  26. package/dist/components/date-time-picker.js +1 -1
  27. package/dist/components/input.js +1 -1
  28. package/dist/components/number-field.js +1 -1
  29. package/dist/components/number-range-input.js +1 -1
  30. package/dist/components/pagination.js +1 -1
  31. package/dist/components/password-input.js +1 -1
  32. package/dist/components/select.js +1 -1
  33. package/dist/components/style-definitions.js +3 -3
  34. package/dist/components/time-picker.js +1 -1
  35. package/dist/datePickerValue.utils-CkmPaD6I.js +4 -0
  36. package/dist/import-DflE4Gl2.js +251 -0
  37. package/dist/index.js +20 -20
  38. package/dist/rich-text-editor.js +1 -1
  39. package/dist/tanstack/autocomplete.js +1 -1
  40. package/dist/tanstack/date-picker.js +1 -1
  41. package/dist/tanstack/date-range-picker.js +1 -1
  42. package/dist/tanstack/date-time-picker.js +1 -1
  43. package/dist/tanstack/input.js +1 -1
  44. package/dist/tanstack/number-field.js +1 -1
  45. package/dist/tanstack/number-range-input.js +1 -1
  46. package/dist/tanstack/password-input.js +1 -1
  47. package/dist/tanstack/rich-text-editor.js +1 -1
  48. package/dist/tanstack/select.js +1 -1
  49. package/dist/tanstack/table.js +1 -1
  50. package/dist/tanstack/time-picker.js +1 -1
  51. package/dist/tanstack.js +20 -20
  52. package/dist/useScrollableListBox-BfCLMZgv.js +47 -0
  53. package/package.json +1 -1
  54. package/dist/{Autocomplete-DSwAc7jF.js → Autocomplete-DuCidYx5.js} +1 -1
  55. package/dist/{Input-BdCci6BF.js → Input-CPPDOg7b.js} +1 -1
  56. package/dist/{NumberField-BLAwsjns.js → NumberField-BbeePjH2.js} +1 -1
  57. package/dist/{NumberRangeInput-al32ZeSy.js → NumberRangeInput-Cpqrom84.js} +1 -1
  58. package/dist/{staticDateTimeSegments-CA_lwN-O.js → staticDateTimeSegments-FE-F61iH.js} +2 -2
  59. package/dist/{useTableColumnConfig-DoTYVxqG.js → useTableColumnConfig-CGtkUBG8.js} +2 -2
@@ -0,0 +1,362 @@
1
+ import { t as Check } from "./check-DYMBkp_Z.js";
2
+ import { t as CheckboxCheckmark } from "./CheckboxCheckmark-C4yFclkZ.js";
3
+ import { c as LoadingItemId, o as SelectContext } from "./Select-DbZOJ-0u.js";
4
+ import { t as clsx } from "./clsx-CnD0nOiA.js";
5
+ import { t as UIOverrides } from "./uiOverrides.context-BTCH9y5a.js";
6
+ import { m as $263ab7fc0f95ccdb$export$4feb769f8ddf26c5, p as $263ab7fc0f95ccdb$export$2dbbd341daed716d } from "./Dialog-lFYX-7Ax.js";
7
+ import { i as $928221da08ecbc62$export$a11e76429ed99b4, t as $928221da08ecbc62$export$41f133550aa26f48 } from "./ListBox-CoUk0kkt.js";
8
+ import { n as $a3be900807531178$re_export$ListLayout, r as $a3be900807531178$re_export$Rect } from "./exports-BNrTn8Tj.js";
9
+ import { t as Spinner } from "./Spinner-CFj5Iu77.js";
10
+ import "./i18n-BjNKHh_D.js";
11
+ import { t as selectListBoxItemDefinition } from "./selectItem.cva-Ch6oK4jP.js";
12
+ import { t as useIntersectionObserver } from "./useIntersectionObserver-DYfHnGGU.js";
13
+ import $ahdqC$react, { createContext, useCallback, useContext, useLayoutEffect, useMemo, useRef } from "react";
14
+ import { jsx, jsxs } from "react/jsx-runtime";
15
+ import { useVirtualizerState } from "react-stately/useVirtualizerState";
16
+ import { useScrollView } from "react-aria/private/virtualizer/ScrollView";
17
+ import { VirtualizerItem } from "react-aria/private/virtualizer/VirtualizerItem";
18
+ import { useTranslation } from "react-i18next";
19
+ //#region ../../node_modules/.bun/react-aria-components@1.22.1+67f6792bdf102c28/node_modules/react-aria-components/dist/private/Virtualizer.mjs
20
+ const $143fb904d86051ce$var$VirtualizerContext = /*#__PURE__*/ createContext(null);
21
+ const $143fb904d86051ce$var$VirtualizerOptionsContext = /*#__PURE__*/ createContext(null);
22
+ function $143fb904d86051ce$export$89be5a243e59c4b2(props) {
23
+ let { children, layout: layoutProp, layoutOptions, shouldObserveItemSize } = props;
24
+ let layout = useMemo(() => typeof layoutProp === "function" ? new layoutProp() : layoutProp, [layoutProp]);
25
+ let renderer = useMemo(() => ({
26
+ isVirtualized: true,
27
+ layoutDelegate: layout,
28
+ dropTargetDelegate: layout.getDropTargetFromPoint ? layout : void 0,
29
+ CollectionRoot: $143fb904d86051ce$var$CollectionRoot,
30
+ CollectionBranch: $143fb904d86051ce$var$CollectionBranch
31
+ }), [layout]);
32
+ return /*#__PURE__*/ $ahdqC$react.createElement($263ab7fc0f95ccdb$export$4feb769f8ddf26c5.Provider, { value: renderer }, /*#__PURE__*/ $ahdqC$react.createElement($143fb904d86051ce$var$VirtualizerOptionsContext.Provider, { value: {
33
+ layout,
34
+ layoutOptions,
35
+ shouldObserveItemSize
36
+ } }, children));
37
+ }
38
+ function $143fb904d86051ce$var$CollectionRoot({ collection, persistedKeys, scrollRef, renderDropIndicator }) {
39
+ let { layout, layoutOptions, shouldObserveItemSize } = useContext($143fb904d86051ce$var$VirtualizerOptionsContext);
40
+ let layoutOptions2 = layout.useLayoutOptions?.();
41
+ let state = useVirtualizerState({
42
+ allowsWindowScrolling: true,
43
+ layout,
44
+ collection,
45
+ renderView: (type, item) => {
46
+ return item?.render?.(item);
47
+ },
48
+ onVisibleRectChange(rect) {
49
+ let element = scrollRef?.current;
50
+ if (element) {
51
+ element.scrollLeft = rect.x;
52
+ element.scrollTop = rect.y;
53
+ }
54
+ },
55
+ persistedKeys,
56
+ layoutOptions: useMemo(() => layoutOptions && layoutOptions2 ? {
57
+ ...layoutOptions,
58
+ ...layoutOptions2
59
+ } : layoutOptions || layoutOptions2, [layoutOptions, layoutOptions2])
60
+ });
61
+ let { contentProps } = useScrollView({
62
+ onVisibleRectChange: state.setVisibleRect,
63
+ onSizeChange: state.setSize,
64
+ contentSize: state.contentSize,
65
+ onScrollStart: state.startScrolling,
66
+ onScrollEnd: state.endScrolling,
67
+ allowsWindowScrolling: true
68
+ }, scrollRef);
69
+ return /*#__PURE__*/ $ahdqC$react.createElement("div", contentProps, /*#__PURE__*/ $ahdqC$react.createElement($143fb904d86051ce$var$VirtualizerContext.Provider, { value: state }, $143fb904d86051ce$var$renderChildren(null, state.visibleViews, renderDropIndicator, shouldObserveItemSize)));
70
+ }
71
+ function $143fb904d86051ce$var$CollectionBranch({ parent, renderDropIndicator }) {
72
+ let parentView = useContext($143fb904d86051ce$var$VirtualizerContext).virtualizer.getVisibleView(parent.key);
73
+ let { shouldObserveItemSize } = useContext($143fb904d86051ce$var$VirtualizerOptionsContext);
74
+ return $143fb904d86051ce$var$renderChildren(parentView, Array.from(parentView.children), renderDropIndicator, shouldObserveItemSize);
75
+ }
76
+ function $143fb904d86051ce$var$renderChildren(parent, children, renderDropIndicator, shouldObserveItemSize) {
77
+ return children.map((view) => $143fb904d86051ce$var$renderWrapper(parent, view, renderDropIndicator, shouldObserveItemSize));
78
+ }
79
+ function $143fb904d86051ce$var$renderWrapper(parent, reusableView, renderDropIndicator, shouldObserveItemSize) {
80
+ let rendered = /*#__PURE__*/ $ahdqC$react.createElement(VirtualizerItem, {
81
+ key: reusableView.key,
82
+ layoutInfo: reusableView.layoutInfo,
83
+ virtualizer: reusableView.virtualizer,
84
+ parent: parent?.layoutInfo,
85
+ shouldObserveItemSize
86
+ }, reusableView.rendered);
87
+ let { collection, layout } = reusableView.virtualizer;
88
+ let node = reusableView.content;
89
+ if (node?.type === "item" && renderDropIndicator && layout.getDropTargetLayoutInfo) rendered = /*#__PURE__*/ $ahdqC$react.createElement($ahdqC$react.Fragment, { key: reusableView.key }, $143fb904d86051ce$var$renderDropIndicatorWrapper(parent, reusableView, {
90
+ type: "item",
91
+ key: reusableView.content.key,
92
+ dropPosition: "before"
93
+ }, renderDropIndicator), rendered, $263ab7fc0f95ccdb$export$2dbbd341daed716d(collection, node, (target) => $143fb904d86051ce$var$renderDropIndicatorWrapper(parent, reusableView, target, renderDropIndicator)));
94
+ return rendered;
95
+ }
96
+ function $143fb904d86051ce$var$renderDropIndicatorWrapper(parent, reusableView, target, renderDropIndicator) {
97
+ let indicator = renderDropIndicator(target);
98
+ if (indicator) {
99
+ let layoutInfo = reusableView.virtualizer.layout.getDropTargetLayoutInfo(target);
100
+ indicator = /*#__PURE__*/ $ahdqC$react.createElement(VirtualizerItem, {
101
+ layoutInfo,
102
+ virtualizer: reusableView.virtualizer,
103
+ parent: parent?.layoutInfo
104
+ }, indicator);
105
+ }
106
+ return indicator;
107
+ }
108
+ //#endregion
109
+ //#region src/components/inputs/Selection/shared/SelectListBoxItem.tsx
110
+ const SelectListBoxItem = ({ isSearchable, isNewItem, newItemRender, id, label, content, isDisabled }) => {
111
+ const selectListItemCva = UIOverrides.useCva("select.listBoxItemCva", selectListBoxItemDefinition);
112
+ const ref = useRef(null);
113
+ const { t } = useTranslation("ui");
114
+ const { selectedIds, isMultiple } = SelectContext.useSelect();
115
+ const itemContent = useMemo(() => {
116
+ if (isNewItem) return newItemRender?.(label) ?? `${t(($) => $.ui.autocomplete.createNewBtn)} '${label}'`;
117
+ return content ?? label;
118
+ }, [
119
+ isNewItem,
120
+ newItemRender,
121
+ label,
122
+ content,
123
+ t
124
+ ]);
125
+ return /* @__PURE__ */ jsxs($928221da08ecbc62$export$a11e76429ed99b4, {
126
+ ref,
127
+ id,
128
+ textValue: label,
129
+ isDisabled,
130
+ className: selectListItemCva({
131
+ isSingle: !isMultiple,
132
+ isNewItem
133
+ }),
134
+ children: [
135
+ isMultiple && !isSearchable && /* @__PURE__ */ jsx(CheckboxCheckmark, {
136
+ variant: "default",
137
+ className: "group-focus-visible:outline-none!"
138
+ }),
139
+ isMultiple && isSearchable && /* @__PURE__ */ jsx("div", {
140
+ className: "group",
141
+ "data-rac": "",
142
+ "data-selected": selectedIds.includes(id) || void 0,
143
+ children: /* @__PURE__ */ jsx(CheckboxCheckmark, {
144
+ variant: "default",
145
+ className: "group-focus-visible:outline-none!"
146
+ })
147
+ }),
148
+ itemContent,
149
+ !isMultiple && /* @__PURE__ */ jsx("span", {
150
+ "aria-hidden": true,
151
+ className: "pointer-events-none absolute right-2 flex size-3.5 items-center justify-center opacity-0 group-selected:opacity-100",
152
+ children: /* @__PURE__ */ jsx(Check, { className: "size-4" })
153
+ })
154
+ ]
155
+ });
156
+ };
157
+ //#endregion
158
+ //#region src/components/inputs/Selection/shared/SelectListBoxItemSelectAll.tsx
159
+ const SelectListBoxItemSelectAll = ({ id, label, isDisabled }) => {
160
+ const selectListItemCva = UIOverrides.useCva("select.listBoxItemCva", selectListBoxItemDefinition);
161
+ const ref = useRef(null);
162
+ const { t } = useTranslation("ui");
163
+ const { selectableListItems, selectedIds } = SelectContext.useSelect();
164
+ return /* @__PURE__ */ jsxs($928221da08ecbc62$export$a11e76429ed99b4, {
165
+ ref,
166
+ id,
167
+ textValue: label || t(($) => $.ui.select.allOption),
168
+ isDisabled,
169
+ className: selectListItemCva({}),
170
+ children: [/* @__PURE__ */ jsx("div", {
171
+ className: "group",
172
+ "data-rac": "",
173
+ "data-selected": selectedIds.length === selectableListItems.length || void 0,
174
+ "data-indeterminate": selectedIds.length > 0 && selectedIds.length < selectableListItems.length || void 0,
175
+ children: /* @__PURE__ */ jsx(CheckboxCheckmark, {
176
+ variant: "default",
177
+ className: "group-focus-visible:outline-none!"
178
+ })
179
+ }), t(($) => $.ui.select.allOption)]
180
+ });
181
+ };
182
+ //#endregion
183
+ //#region src/components/inputs/Selection/shared/SelectListBoxLoadingItem.tsx
184
+ const SelectListBoxLoadingItem = ({ id, label, onLoadMore }) => {
185
+ const selectListItemCva = UIOverrides.useCva("select.listBoxItemCva", selectListBoxItemDefinition);
186
+ const { t } = useTranslation("ui");
187
+ const { isDebouncing, isLoading, hasLoadMore } = SelectContext.useSelect();
188
+ const onIntersection = useCallback(() => {
189
+ if (!isDebouncing && !isLoading && hasLoadMore) onLoadMore?.();
190
+ }, [
191
+ isDebouncing,
192
+ isLoading,
193
+ hasLoadMore,
194
+ onLoadMore
195
+ ]);
196
+ const { ref } = useIntersectionObserver({
197
+ onIntersection,
198
+ rootMargin: "40px"
199
+ });
200
+ return /* @__PURE__ */ jsx($928221da08ecbc62$export$a11e76429ed99b4, {
201
+ id,
202
+ textValue: label || t(($) => $.ui.loadingState.text),
203
+ isDisabled: true,
204
+ className: selectListItemCva({}),
205
+ children: /* @__PURE__ */ jsx("div", {
206
+ ref,
207
+ className: "flex flex-1 justify-center text-muted-foreground",
208
+ children: /* @__PURE__ */ jsx(Spinner, {})
209
+ })
210
+ });
211
+ };
212
+ //#endregion
213
+ //#region src/components/inputs/Selection/shared/SelectListBox.tsx
214
+ var ReversedListLayout = class extends $a3be900807531178$re_export$ListLayout {
215
+ reverseLayoutInfo(layoutInfo) {
216
+ const reversedLayoutInfo = layoutInfo.copy();
217
+ reversedLayoutInfo.rect.y = this.getContentSize().height - reversedLayoutInfo.rect.maxY;
218
+ return reversedLayoutInfo;
219
+ }
220
+ getLayoutInfo(key) {
221
+ const layoutInfo = super.getLayoutInfo(key);
222
+ return layoutInfo ? this.reverseLayoutInfo(layoutInfo) : null;
223
+ }
224
+ getVisibleLayoutInfos(rect) {
225
+ const mirroredRect = new $a3be900807531178$re_export$Rect(rect.x, Math.max(0, this.getContentSize().height - rect.maxY), rect.width, rect.height);
226
+ return super.getVisibleLayoutInfos(mirroredRect).map((layoutInfo) => this.reverseLayoutInfo(layoutInfo));
227
+ }
228
+ };
229
+ const SelectListBox = ({ label, selectionMode, isSearchable, isScrollable = true, isReversed = false, virtualizerOptions, totalItems, newItemRender, onLoadMore, className, onClose, ...props }) => {
230
+ const { fieldState, onChange, listItems, selectableListItems, selectedIds, isMultiple, onClear, onSelectAll, hasLoadMore, isLoading } = SelectContext.useSelect();
231
+ const listBoxRef = useRef(null);
232
+ const hasRequestedAtTopRef = useRef(false);
233
+ const isReverseScrollAnchoredRef = useRef(!isReversed);
234
+ const reverseScrollBottomOffsetRef = useRef(0);
235
+ const previousLoadedItemIdsRef = useRef([]);
236
+ const shouldVirtualize = !!virtualizerOptions || (totalItems ?? listItems.length) > 100 || hasLoadMore;
237
+ const usesReversedLayout = isReversed && isSearchable && shouldVirtualize;
238
+ const displayedListItems = isReversed && !usesReversedLayout ? listItems.toReversed() : listItems;
239
+ const loadedItemIds = useMemo(() => listItems.filter((item) => item.id !== LoadingItemId).map((item) => item.id), [listItems]);
240
+ const loadMoreResetKey = loadedItemIds.join("\0");
241
+ useLayoutEffect(() => {
242
+ hasRequestedAtTopRef.current = false;
243
+ }, [loadMoreResetKey]);
244
+ useLayoutEffect(() => {
245
+ const previousLoadedItemIds = previousLoadedItemIdsRef.current;
246
+ const preservesExistingItems = previousLoadedItemIds.length > 0 && previousLoadedItemIds.every((itemId, index) => loadedItemIds[index] === itemId);
247
+ previousLoadedItemIdsRef.current = loadedItemIds;
248
+ if (!preservesExistingItems) reverseScrollBottomOffsetRef.current = 0;
249
+ const listBox = listBoxRef.current;
250
+ if (!listBox) {
251
+ isReverseScrollAnchoredRef.current = true;
252
+ return;
253
+ }
254
+ if (!isReversed) {
255
+ listBox.scrollTop = 0;
256
+ isReverseScrollAnchoredRef.current = true;
257
+ return;
258
+ }
259
+ isReverseScrollAnchoredRef.current = false;
260
+ const finishAnchoring = () => {
261
+ if (listBox.scrollHeight <= listBox.clientHeight) return false;
262
+ listBox.scrollTop = listBox.scrollHeight - listBox.clientHeight - reverseScrollBottomOffsetRef.current;
263
+ isReverseScrollAnchoredRef.current = true;
264
+ return true;
265
+ };
266
+ let scrollFrame = requestAnimationFrame(() => {
267
+ scrollFrame = requestAnimationFrame(() => {
268
+ if (!finishAnchoring()) isReverseScrollAnchoredRef.current = true;
269
+ });
270
+ });
271
+ return () => {
272
+ cancelAnimationFrame(scrollFrame);
273
+ reverseScrollBottomOffsetRef.current = listBox.scrollHeight - listBox.clientHeight - listBox.scrollTop;
274
+ };
275
+ }, [
276
+ isReversed,
277
+ loadMoreResetKey,
278
+ loadedItemIds
279
+ ]);
280
+ const onSelectionChange = (value) => {
281
+ const ids = Array.from(value);
282
+ if (!isMultiple && ids.length === 0) {
283
+ if (fieldState.value) {
284
+ onClose?.();
285
+ onChange(fieldState.value);
286
+ }
287
+ return;
288
+ }
289
+ if (isMultiple && ids.includes("all-item-id")) {
290
+ if (ids.length > selectableListItems.length) onClear();
291
+ else onSelectAll();
292
+ return;
293
+ }
294
+ if (isMultiple) onChange(ids);
295
+ else {
296
+ onClose?.();
297
+ onChange(ids[0]);
298
+ }
299
+ };
300
+ const requestLoadMore = useCallback(() => {
301
+ if (isLoading) return;
302
+ if (isReversed && (!isReverseScrollAnchoredRef.current || (listBoxRef.current?.scrollTop ?? 0) > 1 || hasRequestedAtTopRef.current)) return;
303
+ if (isReversed) hasRequestedAtTopRef.current = true;
304
+ onLoadMore?.();
305
+ }, [
306
+ isLoading,
307
+ isReversed,
308
+ onLoadMore
309
+ ]);
310
+ const onScroll = (event) => {
311
+ if (!isReversed || !hasLoadMore || !isReverseScrollAnchoredRef.current) return;
312
+ if (event.currentTarget.scrollTop > 48) hasRequestedAtTopRef.current = false;
313
+ else requestLoadMore();
314
+ };
315
+ const renderItem = (item) => {
316
+ if (item.isSelectAllItem) return /* @__PURE__ */ jsx(SelectListBoxItemSelectAll, { ...item }, item.id);
317
+ if (item.isLoadingItem) return /* @__PURE__ */ jsx(SelectListBoxLoadingItem, {
318
+ ...item,
319
+ onLoadMore: requestLoadMore
320
+ }, item.id);
321
+ return /* @__PURE__ */ jsx(SelectListBoxItem, {
322
+ ...item,
323
+ isSearchable,
324
+ isNewItem: item.isNewItem,
325
+ newItemRender
326
+ }, item.id);
327
+ };
328
+ if (shouldVirtualize) return /* @__PURE__ */ jsx($143fb904d86051ce$export$89be5a243e59c4b2, {
329
+ layout: usesReversedLayout ? ReversedListLayout : $a3be900807531178$re_export$ListLayout,
330
+ layoutOptions: virtualizerOptions,
331
+ children: /* @__PURE__ */ jsx($928221da08ecbc62$export$41f133550aa26f48, {
332
+ ref: listBoxRef,
333
+ ...props,
334
+ "aria-label": label,
335
+ selectionMode,
336
+ className: clsx("flex-1 p-1 outline-none", isScrollable ? "max-h-full overflow-y-auto overflow-x-hidden" : "overflow-hidden", className),
337
+ items: displayedListItems,
338
+ selectedKeys: selectedIds,
339
+ onSelectionChange,
340
+ onScroll,
341
+ escapeKeyBehavior: "none",
342
+ shouldSelectOnPressUp: true,
343
+ children: renderItem
344
+ })
345
+ });
346
+ return /* @__PURE__ */ jsx($928221da08ecbc62$export$41f133550aa26f48, {
347
+ ref: listBoxRef,
348
+ ...props,
349
+ "aria-label": label,
350
+ selectionMode,
351
+ className: clsx("flex-1 p-1 outline-none", isScrollable ? "max-h-full overflow-y-auto overflow-x-hidden" : "overflow-hidden", className),
352
+ items: displayedListItems,
353
+ selectedKeys: selectedIds,
354
+ onSelectionChange,
355
+ onScroll,
356
+ escapeKeyBehavior: "none",
357
+ shouldSelectOnPressUp: true,
358
+ children: renderItem
359
+ });
360
+ };
361
+ //#endregion
362
+ export { SelectListBox };
@@ -9,13 +9,14 @@ import { t as useFieldAccessibility } from "./useFieldAccessibility-eZIMECmG.js"
9
9
  import { n as FormFieldLabel, t as FormField } from "./FormField-DyqEbqx3.js";
10
10
  import { a as inputSizeDefinition, t as inputBaseDefinition } from "./input.cva-AHLI_M3K.js";
11
11
  import { t as $3e6197669829fe11$export$40bfa8c7b0832715 } from "./useControlledState-CuU1VIh1.js";
12
- import { a as getStaticTimeSegments, c as useFirefoxDateSegmentSelectionGuard, d as $8e7461aabf74661f$export$60e84778edff6d26, i as getStaticDateTimeFocusTarget, l as DateSegmentItem, o as DateTimeDialogFooter, s as DateTimeDialog } from "./staticDateTimeSegments-CA_lwN-O.js";
13
- import { n as useStaticInputHandoff } from "./useStaticInputHandoff-DyYxfwv6.js";
14
- import { n as TimePickerForm, t as normalizeDatePickerValue } from "./datePickerValue.utils-BxHR_BQZ.js";
12
+ import { a as getStaticTimeSegments, c as useFirefoxDateSegmentSelectionGuard, d as $8e7461aabf74661f$export$60e84778edff6d26, i as getStaticDateTimeFocusTarget, l as DateSegmentItem, o as DateTimeDialogFooter, s as DateTimeDialog } from "./staticDateTimeSegments-FE-F61iH.js";
15
13
  import { t as DateTimeUtils } from "./date-time.utils-0F9qduim.js";
16
14
  import { t as datePickerInputContentRowDefinition } from "./datePickerInput.cva--gCeAsRx.js";
17
15
  import { n as InputClear, t as TooltipWrapper } from "./TooltipWrapper-BrftXInI.js";
16
+ import { t as normalizeDatePickerValue } from "./datePickerValue.utils-CkmPaD6I.js";
17
+ import { n as useStaticInputHandoff } from "./useStaticInputHandoff-DyYxfwv6.js";
18
18
  import { InputFrame } from "./components/input-frame.js";
19
+ import { t as TimePickerForm } from "./TimePickerForm-BReCXELG.js";
19
20
  import { memo, useCallback, useEffect, useMemo, useRef, useState } from "react";
20
21
  import { jsx, jsxs } from "react/jsx-runtime";
21
22
  import { GregorianCalendar, Time, getLocalTimeZone, now, toCalendarDateTime, toTime, toZoned, today } from "@internationalized/date";
@@ -1,6 +1,6 @@
1
1
  import { r as $a8ea2faf2ebe4d2f$re_export$mergeRefs } from "./import-D_3dPATF.js";
2
2
  import { t as FieldController } from "./form.binding-B-2id68q.js";
3
- import { n as TimePickerInner } from "./TimePicker-CmBGkxDC.js";
3
+ import { n as TimePickerInner } from "./TimePicker-BjWuzBv_.js";
4
4
  import { memo } from "react";
5
5
  import { jsx } from "react/jsx-runtime";
6
6
  //#region src/components/inputs/DateTime/TimePicker/TimePicker.bound.tsx
@@ -4,7 +4,7 @@ import { t as clsx } from "./clsx-CnD0nOiA.js";
4
4
  import { t as Typography } from "./Typography-Ba5l4rmj.js";
5
5
  import { IconButton } from "./components/icon-button.js";
6
6
  import { t as useBreakpoint } from "./useBreakpoint-DOUmXVZ2.js";
7
- import { u as getPlaceholder } from "./staticDateTimeSegments-CA_lwN-O.js";
7
+ import { u as getPlaceholder } from "./staticDateTimeSegments-FE-F61iH.js";
8
8
  import "./i18n-BjNKHh_D.js";
9
9
  import { useEffect, useRef } from "react";
10
10
  import { c } from "react/compiler-runtime";
@@ -223,7 +223,4 @@ const TimeSegmentButton = ({ segment, state, type }) => {
223
223
  };
224
224
  const showSegmentText = (text) => !/[\u2066\u2069]/.test(text);
225
225
  //#endregion
226
- //#region src/components/inputs/DateTime/shared/datePickerValue.utils.ts
227
- const normalizeDatePickerValue = (value) => value ?? null;
228
- //#endregion
229
- export { TimePickerForm as n, useLongPressRepeat as r, normalizeDatePickerValue as t };
226
+ export { useLongPressRepeat as n, TimePickerForm as t };
@@ -1,2 +1,2 @@
1
- import { t as Autocomplete } from "../Autocomplete-DSwAc7jF.js";
1
+ import { t as Autocomplete } from "../Autocomplete-DuCidYx5.js";
2
2
  export { Autocomplete };
@@ -1,2 +1,2 @@
1
- import { t as DatePicker } from "../DatePicker-Bc_E4UZ1.js";
1
+ import { t as DatePicker } from "../DatePicker-BaLQOOJJ.js";
2
2
  export { DatePicker };
@@ -1,2 +1,2 @@
1
- import { a as hydrateRelativeDateRangeValue, c as isStoredRelativeDateRangeValue, i as getDateRangePreset, l as resolveDateRangePreset, o as isDateRangePresetValue, r as dateRangePresetValues, s as isRelativeDateRangeValue, t as DateRangePicker } from "../DateRangePicker-BNMTOQ2N.js";
1
+ import { a as hydrateRelativeDateRangeValue, c as isStoredRelativeDateRangeValue, i as getDateRangePreset, l as resolveDateRangePreset, o as isDateRangePresetValue, r as dateRangePresetValues, s as isRelativeDateRangeValue, t as DateRangePicker } from "../DateRangePicker-4CrjSCAx.js";
2
2
  export { DateRangePicker, dateRangePresetValues, getDateRangePreset, hydrateRelativeDateRangeValue, isDateRangePresetValue, isRelativeDateRangeValue, isStoredRelativeDateRangeValue, resolveDateRangePreset };
@@ -1,2 +1,2 @@
1
- import { t as DateTimePicker } from "../DateTimePicker-B3YjV4uj.js";
1
+ import { t as DateTimePicker } from "../DateTimePicker-CtU096IU.js";
2
2
  export { DateTimePicker };
@@ -1,2 +1,2 @@
1
- import { n as InputComponent, t as Input } from "../Input-BdCci6BF.js";
1
+ import { n as InputComponent, t as Input } from "../Input-CPPDOg7b.js";
2
2
  export { Input, InputComponent };
@@ -1,2 +1,2 @@
1
- import { n as NumberFieldComponent, t as NumberField } from "../NumberField-BLAwsjns.js";
1
+ import { n as NumberFieldComponent, t as NumberField } from "../NumberField-BbeePjH2.js";
2
2
  export { NumberField, NumberFieldComponent };
@@ -1,2 +1,2 @@
1
- import { t as NumberRangeInput } from "../NumberRangeInput-al32ZeSy.js";
1
+ import { t as NumberRangeInput } from "../NumberRangeInput-Cpqrom84.js";
2
2
  export { NumberRangeInput };
@@ -2,7 +2,7 @@ import { t as PaginationList } from "../PaginationList-vfqgyTIP.js";
2
2
  import { t as clsx } from "../clsx-CnD0nOiA.js";
3
3
  import { t as Typography } from "../Typography-Ba5l4rmj.js";
4
4
  import "../i18n-BjNKHh_D.js";
5
- import { t as NumberField } from "../NumberField-BLAwsjns.js";
5
+ import { t as NumberField } from "../NumberField-BbeePjH2.js";
6
6
  import { c } from "react/compiler-runtime";
7
7
  import { jsx, jsxs } from "react/jsx-runtime";
8
8
  import { useTranslation } from "react-i18next";
@@ -1,6 +1,6 @@
1
1
  import { n as EyeOff, t as Eye } from "../eye-BA4nRlMX.js";
2
2
  import "../i18n-BjNKHh_D.js";
3
- import { t as Input } from "../Input-BdCci6BF.js";
3
+ import { t as Input } from "../Input-CPPDOg7b.js";
4
4
  import { memo, useState } from "react";
5
5
  import { jsx } from "react/jsx-runtime";
6
6
  import { useTranslation } from "react-i18next";
@@ -1,2 +1,2 @@
1
- import { t as Select } from "../Select-BAlYMh4h.js";
1
+ import { t as Select } from "../Select-DbZOJ-0u.js";
2
2
  export { Select };
@@ -12,13 +12,13 @@ import { a as inputSizeDefinition, i as inputSideDefinition, n as inputClearClas
12
12
  import { t as datePickerInputContentRowDefinition } from "../datePickerInput.cva--gCeAsRx.js";
13
13
  import { t as popoverDefinition } from "../popover.cva-Ciu9Ro5G.js";
14
14
  import { n as switchDefinition } from "../switch.cva-C9bO_QI-.js";
15
- import { t as tagDefinition } from "../tag.cva-BVa0EWBU.js";
16
- import { n as selectInputTagsContentWrapperDefinition, t as selectPopoverDefinition } from "../selectDesktop.cva-CGBkscBY.js";
17
- import { t as selectListBoxItemDefinition } from "../selectItem.cva-Ch6oK4jP.js";
18
15
  import { a as progressValueDefinition, i as progressTrackWrapperDefinition, n as progressFillDefinition, r as progressTrackDefinition, t as progressDefinition } from "../progress.cva-D0PKV_ET.js";
19
16
  import { t as fileUploadDropZoneDefinition } from "../fileUpload.cva-DVJcCCYz.js";
20
17
  import { t as textAreaWrapperDefinition } from "../TextArea.cva-Bb73hriz.js";
21
18
  import { i as radioDefinition, n as radioContentRowDefinition, r as radioContentWrapperDefinition } from "../radio.cva-Dn2Auqxw.js";
19
+ import { t as selectListBoxItemDefinition } from "../selectItem.cva-Ch6oK4jP.js";
20
+ import { t as tagDefinition } from "../tag.cva-BVa0EWBU.js";
21
+ import { n as selectInputTagsContentWrapperDefinition, t as selectPopoverDefinition } from "../selectDesktop.cva-CGBkscBY.js";
22
22
  import { a as accordionHeadingTitleDefinition, c as accordionPanelContentDefinition, i as accordionHeadingSubtitleDefinition, l as accordionPanelDefinition, n as accordionDefinition, o as accordionIconDefinition, r as accordionHeadingDefinition, s as accordionItemDefinition, t as accordionChevronDefinition, u as accordionTriggerDefinition } from "../accordion.cva-C-gUiXk5.js";
23
23
  import { a as stepperSeparatorDefinition, i as stepperNumberDefinition, n as stepperIconDefinition, o as stepperSubtextDefinition, r as stepperItemDefinition, s as stepperTitleDefinition, t as stepperDefinition } from "../stepper.cva-CQGechUm.js";
24
24
  import { i as dialogOverlayDefinition, n as dialogMainDefinition, t as dialogContentDefinition } from "../dialog.cva-DzJlaK5a.js";
@@ -1,2 +1,2 @@
1
- import { t as TimePicker } from "../TimePicker-CmBGkxDC.js";
1
+ import { t as TimePicker } from "../TimePicker-BjWuzBv_.js";
2
2
  export { TimePicker };
@@ -0,0 +1,4 @@
1
+ //#region src/components/inputs/DateTime/shared/datePickerValue.utils.ts
2
+ const normalizeDatePickerValue = (value) => value ?? null;
3
+ //#endregion
4
+ export { normalizeDatePickerValue as t };