@lobehub/ui 6.0.0-beta.1 → 6.0.0-beta.10
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.
- package/README.md +3 -1
- package/es/Accordion/Accordion.mjs +3 -3
- package/es/Accordion/Accordion.mjs.map +1 -1
- package/es/Accordion/atoms.mjs +2 -2
- package/es/Accordion/atoms.mjs.map +1 -1
- package/es/Accordion/style.d.mts +1 -1
- package/es/ActionIcon/ActionIcon.mjs +2 -2
- package/es/ActionIcon/ActionIcon.mjs.map +1 -1
- package/es/ActionIcon/style.mjs +1 -1
- package/es/ActionIcon/style.mjs.map +1 -1
- package/es/ActionIcon/type.d.mts +1 -0
- package/es/Alert/Alert.mjs +5 -5
- package/es/Alert/Alert.mjs.map +1 -1
- package/es/Alert/type.d.mts +1 -0
- package/es/Anchor/Anchor.mjs +2 -2
- package/es/Anchor/Anchor.mjs.map +1 -1
- package/es/AutoComplete/AutoComplete.mjs +5 -5
- package/es/AutoComplete/AutoComplete.mjs.map +1 -1
- package/es/AutoComplete/style.d.mts +1 -0
- package/es/AutoComplete/style.mjs +2 -2
- package/es/AutoComplete/style.mjs.map +1 -1
- package/es/AutoComplete/type.d.mts +1 -0
- package/es/Avatar/Avatar.mjs +2 -2
- package/es/Avatar/Avatar.mjs.map +1 -1
- package/es/Avatar/AvatarGroup/index.mjs +2 -2
- package/es/Avatar/AvatarGroup/index.mjs.map +1 -1
- package/es/Breadcrumb/Breadcrumb.mjs +2 -2
- package/es/Breadcrumb/Breadcrumb.mjs.map +1 -1
- package/es/Button/Button.mjs +1 -1
- package/es/Button/Button.mjs.map +1 -1
- package/es/Button/style.d.mts +8 -1
- package/es/Button/style.mjs +41 -18
- package/es/Button/style.mjs.map +1 -1
- package/es/Button/type.d.mts +1 -0
- package/es/Carousel/Carousel.mjs +1 -1
- package/es/Carousel/Carousel.mjs.map +1 -1
- package/es/Checkbox/Checkbox.mjs +3 -3
- package/es/Checkbox/Checkbox.mjs.map +1 -1
- package/es/Checkbox/type.d.mts +1 -0
- package/es/CodeDiff/CodeDiff.mjs.map +1 -1
- package/es/CodeDiff/DiffPanel.mjs +4 -4
- package/es/CodeDiff/DiffPanel.mjs.map +1 -1
- package/es/CodeDiff/PatchDiff.mjs.map +1 -1
- package/es/CodeDiff/theme.mjs.map +1 -1
- package/es/CodeDiff/type.d.mts +2 -2
- package/es/CodeEditor/CodeEditor.mjs +5 -5
- package/es/CodeEditor/CodeEditor.mjs.map +1 -1
- package/es/ColorPicker/ColorInputs.mjs +136 -0
- package/es/ColorPicker/ColorInputs.mjs.map +1 -0
- package/es/ColorPicker/ColorPanel.mjs +145 -0
- package/es/ColorPicker/ColorPanel.mjs.map +1 -0
- package/es/ColorPicker/ColorPicker.mjs +63 -200
- package/es/ColorPicker/ColorPicker.mjs.map +1 -1
- package/es/ColorPicker/SaturationArea.mjs +2 -1
- package/es/ColorPicker/SaturationArea.mjs.map +1 -1
- package/es/ColorPicker/Swatch.mjs +24 -0
- package/es/ColorPicker/Swatch.mjs.map +1 -0
- package/es/ColorPicker/Swatches.mjs +66 -0
- package/es/ColorPicker/Swatches.mjs.map +1 -0
- package/es/ColorPicker/Trigger.mjs +112 -0
- package/es/ColorPicker/Trigger.mjs.map +1 -0
- package/es/ColorPicker/color.mjs +25 -1
- package/es/ColorPicker/color.mjs.map +1 -1
- package/es/ColorPicker/recent.mjs +25 -0
- package/es/ColorPicker/recent.mjs.map +1 -0
- package/es/ColorPicker/style.mjs +269 -70
- package/es/ColorPicker/style.mjs.map +1 -1
- package/es/ColorPicker/type.d.mts +15 -0
- package/es/ColorSwatches/ColorSwatches.mjs +18 -23
- package/es/ColorSwatches/ColorSwatches.mjs.map +1 -1
- package/es/ColorSwatches/CustomPicker.mjs +101 -0
- package/es/ColorSwatches/CustomPicker.mjs.map +1 -0
- package/es/ColorSwatches/index.d.mts +2 -2
- package/es/ColorSwatches/marker.stylex.mjs +9 -0
- package/es/ColorSwatches/marker.stylex.mjs.map +1 -0
- package/es/ColorSwatches/style.mjs +36 -0
- package/es/ColorSwatches/style.mjs.map +1 -1
- package/es/ColorSwatches/type.d.mts +12 -2
- package/es/ConfigProvider/cdnAssets.mjs +6 -0
- package/es/ConfigProvider/cdnAssets.mjs.map +1 -0
- package/es/ConfigProvider/index.mjs +2 -1
- package/es/ConfigProvider/index.mjs.map +1 -1
- package/es/ContextMenu/ContextMenuHost.mjs +2 -2
- package/es/ContextMenu/ContextMenuHost.mjs.map +1 -1
- package/es/ContextMenu/ContextMenuTrigger.mjs +2 -2
- package/es/ContextMenu/ContextMenuTrigger.mjs.map +1 -1
- package/es/ContextMenu/renderItems.mjs +3 -3
- package/es/ContextMenu/renderItems.mjs.map +1 -1
- package/es/ContextMenu/store.d.mts +0 -1
- package/es/ContextMenu/store.mjs.map +1 -1
- package/es/DatePicker/DatePicker.d.mts +9 -2
- package/es/DatePicker/DatePicker.mjs +15 -85
- package/es/DatePicker/DatePicker.mjs.map +1 -1
- package/es/DatePicker/DateRangePicker.d.mts +3 -2
- package/es/DatePicker/DateRangePicker.mjs +3 -125
- package/es/DatePicker/DateRangePicker.mjs.map +1 -1
- package/es/DatePicker/DayjsDatePicker.d.mts +12 -0
- package/es/DatePicker/DayjsDatePicker.mjs +19 -0
- package/es/DatePicker/DayjsDatePicker.mjs.map +1 -0
- package/es/DatePicker/DayjsDateRangePicker.d.mts +7 -0
- package/es/DatePicker/DayjsDateRangePicker.mjs +8 -0
- package/es/DatePicker/DayjsDateRangePicker.mjs.map +1 -0
- package/es/DatePicker/PurePanel.mjs +65 -0
- package/es/DatePicker/PurePanel.mjs.map +1 -0
- package/es/DatePicker/RangePicker.mjs +121 -0
- package/es/DatePicker/RangePicker.mjs.map +1 -0
- package/es/DatePicker/SinglePicker.mjs +134 -0
- package/es/DatePicker/SinglePicker.mjs.map +1 -0
- package/es/DatePicker/core/PickerInput/Popup/Footer.mjs +57 -0
- package/es/DatePicker/core/PickerInput/Popup/Footer.mjs.map +1 -0
- package/es/DatePicker/core/PickerInput/Popup/PopupPanel.mjs +57 -0
- package/es/DatePicker/core/PickerInput/Popup/PopupPanel.mjs.map +1 -0
- package/es/DatePicker/core/PickerInput/Popup/PresetPanel.mjs +29 -0
- package/es/DatePicker/core/PickerInput/Popup/PresetPanel.mjs.map +1 -0
- package/es/DatePicker/core/PickerInput/Popup/index.mjs +133 -0
- package/es/DatePicker/core/PickerInput/Popup/index.mjs.map +1 -0
- package/es/DatePicker/core/PickerInput/RangePicker.d.mts +51 -0
- package/es/DatePicker/core/PickerInput/RangePicker.mjs +343 -0
- package/es/DatePicker/core/PickerInput/RangePicker.mjs.map +1 -0
- package/es/DatePicker/core/PickerInput/Selector/ClearIcon.mjs +27 -0
- package/es/DatePicker/core/PickerInput/Selector/ClearIcon.mjs.map +1 -0
- package/es/DatePicker/core/PickerInput/Selector/Icon.mjs +19 -0
- package/es/DatePicker/core/PickerInput/Selector/Icon.mjs.map +1 -0
- package/es/DatePicker/core/PickerInput/Selector/Input.mjs +237 -0
- package/es/DatePicker/core/PickerInput/Selector/Input.mjs.map +1 -0
- package/es/DatePicker/core/PickerInput/Selector/MaskFormat.mjs +70 -0
- package/es/DatePicker/core/PickerInput/Selector/MaskFormat.mjs.map +1 -0
- package/es/DatePicker/core/PickerInput/Selector/RangeSelector.d.mts +8 -0
- package/es/DatePicker/core/PickerInput/Selector/RangeSelector.mjs +136 -0
- package/es/DatePicker/core/PickerInput/Selector/RangeSelector.mjs.map +1 -0
- package/es/DatePicker/core/PickerInput/Selector/SingleSelector/HoverSelector.mjs +28 -0
- package/es/DatePicker/core/PickerInput/Selector/SingleSelector/HoverSelector.mjs.map +1 -0
- package/es/DatePicker/core/PickerInput/Selector/SingleSelector/MultipleDates.mjs +69 -0
- package/es/DatePicker/core/PickerInput/Selector/SingleSelector/MultipleDates.mjs.map +1 -0
- package/es/DatePicker/core/PickerInput/Selector/SingleSelector/index.mjs +111 -0
- package/es/DatePicker/core/PickerInput/Selector/SingleSelector/index.mjs.map +1 -0
- package/es/DatePicker/core/PickerInput/Selector/hooks/useClearIcon.mjs +18 -0
- package/es/DatePicker/core/PickerInput/Selector/hooks/useClearIcon.mjs.map +1 -0
- package/es/DatePicker/core/PickerInput/Selector/hooks/useInputProps.mjs +108 -0
- package/es/DatePicker/core/PickerInput/Selector/hooks/useInputProps.mjs.map +1 -0
- package/es/DatePicker/core/PickerInput/Selector/hooks/useRootProps.mjs +11 -0
- package/es/DatePicker/core/PickerInput/Selector/hooks/useRootProps.mjs.map +1 -0
- package/es/DatePicker/core/PickerInput/Selector/util.mjs +20 -0
- package/es/DatePicker/core/PickerInput/Selector/util.mjs.map +1 -0
- package/es/DatePicker/core/PickerInput/SinglePicker.d.mts +55 -0
- package/es/DatePicker/core/PickerInput/SinglePicker.mjs +318 -0
- package/es/DatePicker/core/PickerInput/SinglePicker.mjs.map +1 -0
- package/es/DatePicker/core/PickerInput/context.mjs +7 -0
- package/es/DatePicker/core/PickerInput/context.mjs.map +1 -0
- package/es/DatePicker/core/PickerInput/hooks/useCellRender.mjs +30 -0
- package/es/DatePicker/core/PickerInput/hooks/useCellRender.mjs.map +1 -0
- package/es/DatePicker/core/PickerInput/hooks/useDelayState.mjs +37 -0
- package/es/DatePicker/core/PickerInput/hooks/useDelayState.mjs.map +1 -0
- package/es/DatePicker/core/PickerInput/hooks/useDisabledBoundary.mjs +18 -0
- package/es/DatePicker/core/PickerInput/hooks/useDisabledBoundary.mjs.map +1 -0
- package/es/DatePicker/core/PickerInput/hooks/useFieldFormat.mjs +20 -0
- package/es/DatePicker/core/PickerInput/hooks/useFieldFormat.mjs.map +1 -0
- package/es/DatePicker/core/PickerInput/hooks/useFieldsInvalidate.mjs +31 -0
- package/es/DatePicker/core/PickerInput/hooks/useFieldsInvalidate.mjs.map +1 -0
- package/es/DatePicker/core/PickerInput/hooks/useFilledProps.mjs +98 -0
- package/es/DatePicker/core/PickerInput/hooks/useFilledProps.mjs.map +1 -0
- package/es/DatePicker/core/PickerInput/hooks/useFocusEvents.mjs +41 -0
- package/es/DatePicker/core/PickerInput/hooks/useFocusEvents.mjs.map +1 -0
- package/es/DatePicker/core/PickerInput/hooks/useFocusLock.mjs +34 -0
- package/es/DatePicker/core/PickerInput/hooks/useFocusLock.mjs.map +1 -0
- package/es/DatePicker/core/PickerInput/hooks/useHoverStore.mjs +35 -0
- package/es/DatePicker/core/PickerInput/hooks/useHoverStore.mjs.map +1 -0
- package/es/DatePicker/core/PickerInput/hooks/useInputReadOnly.mjs +9 -0
- package/es/DatePicker/core/PickerInput/hooks/useInputReadOnly.mjs.map +1 -0
- package/es/DatePicker/core/PickerInput/hooks/useInvalidate.mjs +36 -0
- package/es/DatePicker/core/PickerInput/hooks/useInvalidate.mjs.map +1 -0
- package/es/DatePicker/core/PickerInput/hooks/useLockEffect.mjs +27 -0
- package/es/DatePicker/core/PickerInput/hooks/useLockEffect.mjs.map +1 -0
- package/es/DatePicker/core/PickerInput/hooks/useOpen.mjs +18 -0
- package/es/DatePicker/core/PickerInput/hooks/useOpen.mjs.map +1 -0
- package/es/DatePicker/core/PickerInput/hooks/usePickerRef.mjs +19 -0
- package/es/DatePicker/core/PickerInput/hooks/usePickerRef.mjs.map +1 -0
- package/es/DatePicker/core/PickerInput/hooks/usePresets.mjs +20 -0
- package/es/DatePicker/core/PickerInput/hooks/usePresets.mjs.map +1 -0
- package/es/DatePicker/core/PickerInput/hooks/useRangeDisabledDate.mjs +24 -0
- package/es/DatePicker/core/PickerInput/hooks/useRangeDisabledDate.mjs.map +1 -0
- package/es/DatePicker/core/PickerInput/hooks/useRangePickerValue.mjs +107 -0
- package/es/DatePicker/core/PickerInput/hooks/useRangePickerValue.mjs.map +1 -0
- package/es/DatePicker/core/PickerInput/hooks/useRangeValue.mjs +144 -0
- package/es/DatePicker/core/PickerInput/hooks/useRangeValue.mjs.map +1 -0
- package/es/DatePicker/core/PickerInput/hooks/useRangeValueChange.mjs +219 -0
- package/es/DatePicker/core/PickerInput/hooks/useRangeValueChange.mjs.map +1 -0
- package/es/DatePicker/core/PickerInput/hooks/useShowNow.mjs +11 -0
- package/es/DatePicker/core/PickerInput/hooks/useShowNow.mjs.map +1 -0
- package/es/DatePicker/core/PickerPanel/DatePanel/index.mjs +131 -0
- package/es/DatePicker/core/PickerPanel/DatePanel/index.mjs.map +1 -0
- package/es/DatePicker/core/PickerPanel/DateTimePanel/index.mjs +35 -0
- package/es/DatePicker/core/PickerPanel/DateTimePanel/index.mjs.map +1 -0
- package/es/DatePicker/core/PickerPanel/DecadePanel/index.mjs +84 -0
- package/es/DatePicker/core/PickerPanel/DecadePanel/index.mjs.map +1 -0
- package/es/DatePicker/core/PickerPanel/MonthPanel/index.mjs +73 -0
- package/es/DatePicker/core/PickerPanel/MonthPanel/index.mjs.map +1 -0
- package/es/DatePicker/core/PickerPanel/PanelBody.mjs +95 -0
- package/es/DatePicker/core/PickerPanel/PanelBody.mjs.map +1 -0
- package/es/DatePicker/core/PickerPanel/PanelHeader.mjs +130 -0
- package/es/DatePicker/core/PickerPanel/PanelHeader.mjs.map +1 -0
- package/es/DatePicker/core/PickerPanel/QuarterPanel/index.mjs +64 -0
- package/es/DatePicker/core/PickerPanel/QuarterPanel/index.mjs.map +1 -0
- package/es/DatePicker/core/PickerPanel/TimePanel/TimeClock/ClockDial.mjs +108 -0
- package/es/DatePicker/core/PickerPanel/TimePanel/TimeClock/ClockDial.mjs.map +1 -0
- package/es/DatePicker/core/PickerPanel/TimePanel/TimeClock/geometry.mjs +44 -0
- package/es/DatePicker/core/PickerPanel/TimePanel/TimeClock/geometry.mjs.map +1 -0
- package/es/DatePicker/core/PickerPanel/TimePanel/TimeClock/index.mjs +157 -0
- package/es/DatePicker/core/PickerPanel/TimePanel/TimeClock/index.mjs.map +1 -0
- package/es/DatePicker/core/PickerPanel/TimePanel/TimePanelBody/TimeColumn.mjs +100 -0
- package/es/DatePicker/core/PickerPanel/TimePanel/TimePanelBody/TimeColumn.mjs.map +1 -0
- package/es/DatePicker/core/PickerPanel/TimePanel/TimePanelBody/index.mjs +71 -0
- package/es/DatePicker/core/PickerPanel/TimePanel/TimePanelBody/index.mjs.map +1 -0
- package/es/DatePicker/core/PickerPanel/TimePanel/TimePanelBody/useScrollTo.mjs +62 -0
- package/es/DatePicker/core/PickerPanel/TimePanel/TimePanelBody/useScrollTo.mjs.map +1 -0
- package/es/DatePicker/core/PickerPanel/TimePanel/TimePanelBody/useTimeState.mjs +200 -0
- package/es/DatePicker/core/PickerPanel/TimePanel/TimePanelBody/useTimeState.mjs.map +1 -0
- package/es/DatePicker/core/PickerPanel/TimePanel/TimePanelBody/util.mjs +25 -0
- package/es/DatePicker/core/PickerPanel/TimePanel/TimePanelBody/util.mjs.map +1 -0
- package/es/DatePicker/core/PickerPanel/TimePanel/index.mjs +31 -0
- package/es/DatePicker/core/PickerPanel/TimePanel/index.mjs.map +1 -0
- package/es/DatePicker/core/PickerPanel/WeekPanel/index.mjs +34 -0
- package/es/DatePicker/core/PickerPanel/WeekPanel/index.mjs.map +1 -0
- package/es/DatePicker/core/PickerPanel/YearPanel/index.mjs +92 -0
- package/es/DatePicker/core/PickerPanel/YearPanel/index.mjs.map +1 -0
- package/es/DatePicker/core/PickerPanel/context.mjs +48 -0
- package/es/DatePicker/core/PickerPanel/context.mjs.map +1 -0
- package/es/DatePicker/core/PickerPanel/index.d.mts +1 -0
- package/es/DatePicker/core/PickerPanel/index.mjs +175 -0
- package/es/DatePicker/core/PickerPanel/index.mjs.map +1 -0
- package/es/DatePicker/core/PickerPopup.mjs +118 -0
- package/es/DatePicker/core/PickerPopup.mjs.map +1 -0
- package/es/DatePicker/core/generate/dayjs.mjs +109 -0
- package/es/DatePicker/core/generate/dayjs.mjs.map +1 -0
- package/es/DatePicker/core/generate/index.d.mts +40 -0
- package/es/DatePicker/core/hooks/react.mjs +58 -0
- package/es/DatePicker/core/hooks/react.mjs.map +1 -0
- package/es/DatePicker/core/hooks/useLocale.mjs +51 -0
- package/es/DatePicker/core/hooks/useLocale.mjs.map +1 -0
- package/es/DatePicker/core/hooks/useSemantic.mjs +20 -0
- package/es/DatePicker/core/hooks/useSemantic.mjs.map +1 -0
- package/es/DatePicker/core/hooks/useSyncState.mjs +25 -0
- package/es/DatePicker/core/hooks/useSyncState.mjs.map +1 -0
- package/es/DatePicker/core/hooks/useTimeConfig.mjs +173 -0
- package/es/DatePicker/core/hooks/useTimeConfig.mjs.map +1 -0
- package/es/DatePicker/core/hooks/useTimeInfo.mjs +110 -0
- package/es/DatePicker/core/hooks/useTimeInfo.mjs.map +1 -0
- package/es/DatePicker/core/hooks/useToggleDates.mjs +21 -0
- package/es/DatePicker/core/hooks/useToggleDates.mjs.map +1 -0
- package/es/DatePicker/core/index.d.mts +5 -0
- package/es/DatePicker/core/index.mjs +9 -0
- package/es/DatePicker/core/index.mjs.map +1 -0
- package/es/DatePicker/core/interface.d.mts +325 -0
- package/es/DatePicker/core/locale/common.mjs +11 -0
- package/es/DatePicker/core/locale/common.mjs.map +1 -0
- package/es/DatePicker/core/locale/en_US.mjs +39 -0
- package/es/DatePicker/core/locale/en_US.mjs.map +1 -0
- package/es/DatePicker/core/utils/common.mjs +73 -0
- package/es/DatePicker/core/utils/common.mjs.map +1 -0
- package/es/DatePicker/core/utils/dateUtil.mjs +106 -0
- package/es/DatePicker/core/utils/dateUtil.mjs.map +1 -0
- package/es/DatePicker/core/utils/miscUtil.mjs +46 -0
- package/es/DatePicker/core/utils/miscUtil.mjs.map +1 -0
- package/es/DatePicker/core/utils/uiUtil.mjs +9 -0
- package/es/DatePicker/core/utils/uiUtil.mjs.map +1 -0
- package/es/DatePicker/dateGenerateConfig.mjs +52 -0
- package/es/DatePicker/dateGenerateConfig.mjs.map +1 -0
- package/es/DatePicker/generateConfig.mjs +12 -0
- package/es/DatePicker/generateConfig.mjs.map +1 -0
- package/es/DatePicker/generatePicker.d.mts +12 -0
- package/es/DatePicker/generatePicker.mjs +22 -0
- package/es/DatePicker/generatePicker.mjs.map +1 -0
- package/es/DatePicker/index.d.mts +8 -3
- package/es/DatePicker/index.mjs +5 -1
- package/es/DatePicker/legacyDate.mjs +58 -0
- package/es/DatePicker/legacyDate.mjs.map +1 -0
- package/es/DatePicker/locale.d.mts +15 -0
- package/es/DatePicker/locale.mjs +143 -0
- package/es/DatePicker/locale.mjs.map +1 -0
- package/es/DatePicker/semantic.mjs +29 -0
- package/es/DatePicker/semantic.mjs.map +1 -0
- package/es/DatePicker/style.mjs +3 -155
- package/es/DatePicker/style.mjs.map +1 -1
- package/es/DatePicker/type.d.mts +294 -27
- package/es/DatePicker/usePanelKeyboard.mjs +230 -0
- package/es/DatePicker/usePanelKeyboard.mjs.map +1 -0
- package/es/DatePicker/usePickerShared.mjs +106 -0
- package/es/DatePicker/usePickerShared.mjs.map +1 -0
- package/es/DatePicker/usePresetActive.mjs +49 -0
- package/es/DatePicker/usePresetActive.mjs.map +1 -0
- package/es/DraggablePanel/atoms.mjs +6 -6
- package/es/DraggablePanel/atoms.mjs.map +1 -1
- package/es/DraggableSideNav/DraggableSideNav.mjs +5 -5
- package/es/DraggableSideNav/DraggableSideNav.mjs.map +1 -1
- package/es/Drawer/Drawer.mjs +2 -2
- package/es/Drawer/Drawer.mjs.map +1 -1
- package/es/Drawer/atoms.d.mts +1 -0
- package/es/Drawer/atoms.mjs +7 -7
- package/es/Drawer/atoms.mjs.map +1 -1
- package/es/Drawer/constants.d.mts +1 -0
- package/es/Drawer/style.mjs.map +1 -1
- package/es/DropdownMenu/atoms.mjs +23 -23
- package/es/DropdownMenu/atoms.mjs.map +1 -1
- package/es/DropdownMenu/sharedStyle.mjs +2 -2
- package/es/DropdownMenu/sharedStyle.mjs.map +1 -1
- package/es/EditableText/ControlInput.mjs +42 -29
- package/es/EditableText/ControlInput.mjs.map +1 -1
- package/es/EditableText/EditableText.mjs +2 -2
- package/es/EditableText/EditableText.mjs.map +1 -1
- package/es/EditorSlashMenu/atoms.mjs +12 -12
- package/es/EditorSlashMenu/atoms.mjs.map +1 -1
- package/es/EmojiPicker/EmojiPicker.mjs +10 -16
- package/es/EmojiPicker/EmojiPicker.mjs.map +1 -1
- package/es/EmojiPicker/loadEmojiData.mjs +6 -0
- package/es/EmojiPicker/loadEmojiData.mjs.map +1 -0
- package/es/EmojiPicker/useEmojiMartI18n.mjs +37 -0
- package/es/EmojiPicker/useEmojiMartI18n.mjs.map +1 -0
- package/es/FileTypeIcon/type.d.mts +1 -0
- package/es/FloatingPanel/FloatingPanel.mjs +2 -2
- package/es/FloatingPanel/FloatingPanel.mjs.map +1 -1
- package/es/FloatingPanel/style.mjs +3 -2
- package/es/FloatingPanel/style.mjs.map +1 -1
- package/es/Form/type.d.mts +1 -0
- package/es/FormKit/List.mjs +2 -2
- package/es/FormKit/List.mjs.map +1 -1
- package/es/FormKit/engine/tanstack.mjs +1 -1
- package/es/FormKit/engine/tanstack.mjs.map +1 -1
- package/es/Grid/style.mjs +1 -1
- package/es/Grid/style.mjs.map +1 -1
- package/es/GroupAvatar/type.d.mts +1 -0
- package/es/Highlighter/FullFeatured.mjs +2 -2
- package/es/Highlighter/FullFeatured.mjs.map +1 -1
- package/es/Highlighter/SyntaxHighlighter/StreamRenderer.mjs +2 -2
- package/es/Highlighter/SyntaxHighlighter/StreamRenderer.mjs.map +1 -1
- package/es/Highlighter/SyntaxHighlighter/index.mjs +4 -4
- package/es/Highlighter/SyntaxHighlighter/index.mjs.map +1 -1
- package/es/Highlighter/const.d.mts +1 -0
- package/es/Highlighter/style.mjs +2 -2
- package/es/Highlighter/style.mjs.map +1 -1
- package/es/HotkeyInput/HotkeyInput.mjs +1 -1
- package/es/HotkeyInput/HotkeyInput.mjs.map +1 -1
- package/es/HtmlPreview/HtmlPreview.mjs +2 -2
- package/es/HtmlPreview/HtmlPreview.mjs.map +1 -1
- package/es/Icon/Icon.mjs +2 -2
- package/es/Icon/Icon.mjs.map +1 -1
- package/es/Image/type.d.mts +1 -0
- package/es/Image/viewer/ImageViewer.mjs +2 -1
- package/es/Image/viewer/ImageViewer.mjs.map +1 -1
- package/es/Image/viewer/Toolbar.mjs +19 -6
- package/es/Image/viewer/Toolbar.mjs.map +1 -1
- package/es/Image/viewer/ViewerChrome.mjs.map +1 -1
- package/es/ImageSelect/ImageSelect.mjs +1 -1
- package/es/ImageSelect/ImageSelect.mjs.map +1 -1
- package/es/Input/Input.mjs +7 -5
- package/es/Input/Input.mjs.map +1 -1
- package/es/Input/TextArea.mjs +1 -1
- package/es/Input/TextArea.mjs.map +1 -1
- package/es/Input/style.d.mts +1 -0
- package/es/Input/style.mjs +3 -3
- package/es/Input/style.mjs.map +1 -1
- package/es/Input/type.d.mts +1 -0
- package/es/List/ListRow.mjs +3 -3
- package/es/List/ListRow.mjs.map +1 -1
- package/es/Markdown/Markdown.mjs +2 -2
- package/es/Markdown/Markdown.mjs.map +1 -1
- package/es/Markdown/Typography.mjs +2 -2
- package/es/Markdown/Typography.mjs.map +1 -1
- package/es/Markdown/plugins/remarkColor.d.mts +1 -0
- package/es/Markdown/plugins/remarkGfmPlus.d.mts +1 -0
- package/es/Markdown/plugins/remarkVideo.d.mts +1 -0
- package/es/Mermaid/FullFeatured.mjs +2 -2
- package/es/Mermaid/FullFeatured.mjs.map +1 -1
- package/es/Mermaid/SyntaxMermaid/index.mjs +4 -4
- package/es/Mermaid/SyntaxMermaid/index.mjs.map +1 -1
- package/es/Mermaid/const.d.mts +1 -0
- package/es/Modal/atoms.d.mts +1 -0
- package/es/Modal/atoms.mjs +8 -8
- package/es/Modal/atoms.mjs.map +1 -1
- package/es/Modal/constants.d.mts +1 -0
- package/es/Modal/type.d.mts +1 -0
- package/es/Pagination/Pagination.mjs +182 -42
- package/es/Pagination/Pagination.mjs.map +1 -1
- package/es/Pagination/helpers.mjs +3 -3
- package/es/Pagination/helpers.mjs.map +1 -1
- package/es/Pagination/index.d.mts +2 -2
- package/es/Pagination/marker.stylex.mjs +9 -0
- package/es/Pagination/marker.stylex.mjs.map +1 -0
- package/es/Pagination/style.mjs +74 -4
- package/es/Pagination/style.mjs.map +1 -1
- package/es/Pagination/type.d.mts +41 -3
- package/es/Popover/PopoverInGroup.mjs +3 -3
- package/es/Popover/PopoverInGroup.mjs.map +1 -1
- package/es/Popover/atoms.mjs +7 -7
- package/es/Popover/atoms.mjs.map +1 -1
- package/es/Popover/style.mjs +1 -1
- package/es/Popover/style.mjs.map +1 -1
- package/es/ProTable/ProTable.d.mts +11 -0
- package/es/ProTable/ProTable.mjs +208 -0
- package/es/ProTable/ProTable.mjs.map +1 -0
- package/es/ProTable/hooks/useColumnRequest.mjs +55 -0
- package/es/ProTable/hooks/useColumnRequest.mjs.map +1 -0
- package/es/ProTable/hooks/useColumnsState.mjs +37 -0
- package/es/ProTable/hooks/useColumnsState.mjs.map +1 -0
- package/es/ProTable/hooks/useDelayedFlag.mjs +18 -0
- package/es/ProTable/hooks/useDelayedFlag.mjs.map +1 -0
- package/es/ProTable/hooks/useDensity.mjs +15 -0
- package/es/ProTable/hooks/useDensity.mjs.map +1 -0
- package/es/ProTable/hooks/useFetchData.mjs +97 -0
- package/es/ProTable/hooks/useFetchData.mjs.map +1 -0
- package/es/ProTable/hooks/useFullscreen.mjs +22 -0
- package/es/ProTable/hooks/useFullscreen.mjs.map +1 -0
- package/es/ProTable/hooks/usePageInfo.mjs +35 -0
- package/es/ProTable/hooks/usePageInfo.mjs.map +1 -0
- package/es/ProTable/hooks/useProColumns.mjs +123 -0
- package/es/ProTable/hooks/useProColumns.mjs.map +1 -0
- package/es/ProTable/hooks/useProLoading.mjs +19 -0
- package/es/ProTable/hooks/useProLoading.mjs.map +1 -0
- package/es/ProTable/hooks/useProLocale.mjs +22 -0
- package/es/ProTable/hooks/useProLocale.mjs.map +1 -0
- package/es/ProTable/hooks/useProRequest.mjs +137 -0
- package/es/ProTable/hooks/useProRequest.mjs.map +1 -0
- package/es/ProTable/hooks/useRowCache.mjs +11 -0
- package/es/ProTable/hooks/useRowCache.mjs.map +1 -0
- package/es/ProTable/hooks/useSearchForm.mjs +141 -0
- package/es/ProTable/hooks/useSearchForm.mjs.map +1 -0
- package/es/ProTable/hooks/useTableBindings.mjs +39 -0
- package/es/ProTable/hooks/useTableBindings.mjs.map +1 -0
- package/es/ProTable/hooks/useTableSelection.mjs +14 -0
- package/es/ProTable/hooks/useTableSelection.mjs.map +1 -0
- package/es/ProTable/index.d.mts +4 -0
- package/es/ProTable/index.d.ts +1 -0
- package/es/ProTable/index.js +1 -0
- package/es/ProTable/index.mjs +3 -0
- package/es/ProTable/locale.d.mts +15 -0
- package/es/ProTable/locale.mjs +66 -0
- package/es/ProTable/locale.mjs.map +1 -0
- package/es/ProTable/parts/ColumnSetting.mjs +155 -0
- package/es/ProTable/parts/ColumnSetting.mjs.map +1 -0
- package/es/ProTable/parts/FieldControl.mjs +117 -0
- package/es/ProTable/parts/FieldControl.mjs.map +1 -0
- package/es/ProTable/parts/KeywordInput.mjs +19 -0
- package/es/ProTable/parts/KeywordInput.mjs.map +1 -0
- package/es/ProTable/parts/LightFilter.mjs +70 -0
- package/es/ProTable/parts/LightFilter.mjs.map +1 -0
- package/es/ProTable/parts/OptionPopover.mjs +17 -0
- package/es/ProTable/parts/OptionPopover.mjs.map +1 -0
- package/es/ProTable/parts/SearchForm.mjs +180 -0
- package/es/ProTable/parts/SearchForm.mjs.map +1 -0
- package/es/ProTable/parts/SearchSection.mjs +33 -0
- package/es/ProTable/parts/SearchSection.mjs.map +1 -0
- package/es/ProTable/parts/TableAlert.mjs +38 -0
- package/es/ProTable/parts/TableAlert.mjs.map +1 -0
- package/es/ProTable/parts/Toolbar.mjs +50 -0
- package/es/ProTable/parts/Toolbar.mjs.map +1 -0
- package/es/ProTable/parts/ToolbarOptions.mjs +103 -0
- package/es/ProTable/parts/ToolbarOptions.mjs.map +1 -0
- package/es/ProTable/parts/renderValue.mjs +118 -0
- package/es/ProTable/parts/renderValue.mjs.map +1 -0
- package/es/ProTable/style.mjs +278 -0
- package/es/ProTable/style.mjs.map +1 -0
- package/es/ProTable/type.d.mts +397 -0
- package/es/ProTable/utils.mjs +152 -0
- package/es/ProTable/utils.mjs.map +1 -0
- package/es/Radio/Radio.mjs +3 -3
- package/es/Radio/Radio.mjs.map +1 -1
- package/es/Radio/type.d.mts +1 -0
- package/es/Rate/Rate.mjs +1 -1
- package/es/Rate/Rate.mjs.map +1 -1
- package/es/ScrollArea/atoms.mjs +4 -4
- package/es/ScrollArea/atoms.mjs.map +1 -1
- package/es/ScrollShadow/ScrollShadow.mjs +1 -1
- package/es/ScrollShadow/ScrollShadow.mjs.map +1 -1
- package/es/SearchBar/SearchBar.mjs +31 -25
- package/es/SearchBar/SearchBar.mjs.map +1 -1
- package/es/Segmented/Segmented.mjs +4 -4
- package/es/Segmented/Segmented.mjs.map +1 -1
- package/es/Segmented/atoms.d.mts +1 -0
- package/es/Segmented/atoms.mjs +2 -2
- package/es/Segmented/atoms.mjs.map +1 -1
- package/es/Select/Select.mjs +22 -13
- package/es/Select/Select.mjs.map +1 -1
- package/es/Select/atoms.mjs +5 -5
- package/es/Select/atoms.mjs.map +1 -1
- package/es/Select/helpers.mjs +8 -1
- package/es/Select/helpers.mjs.map +1 -1
- package/es/Select/hooks.mjs +8 -4
- package/es/Select/hooks.mjs.map +1 -1
- package/es/Select/renderOptions.mjs +2 -2
- package/es/Select/renderOptions.mjs.map +1 -1
- package/es/Select/type.d.mts +7 -0
- package/es/Slider/type.d.mts +1 -0
- package/es/Switch/Switch.mjs +2 -2
- package/es/Switch/Switch.mjs.map +1 -1
- package/es/Switch/atoms.d.mts +1 -0
- package/es/Switch/atoms.mjs +3 -3
- package/es/Switch/atoms.mjs.map +1 -1
- package/es/Table/Column.d.mts +8 -0
- package/es/Table/Column.mjs +6 -0
- package/es/Table/Column.mjs.map +1 -0
- package/es/Table/ColumnGroup.d.mts +11 -0
- package/es/Table/ColumnGroup.mjs +6 -0
- package/es/Table/ColumnGroup.mjs.map +1 -0
- package/es/Table/Table.d.mts +16 -2
- package/es/Table/Table.mjs +149 -118
- package/es/Table/Table.mjs.map +1 -1
- package/es/Table/atoms/cells.d.mts +42 -0
- package/es/Table/atoms/cells.mjs +72 -0
- package/es/Table/atoms/cells.mjs.map +1 -0
- package/es/Table/atoms/index.d.mts +3 -0
- package/es/Table/atoms/layout.d.mts +44 -0
- package/es/Table/atoms/layout.mjs +62 -0
- package/es/Table/atoms/layout.mjs.map +1 -0
- package/es/Table/constants.mjs +16 -0
- package/es/Table/constants.mjs.map +1 -0
- package/es/Table/engine/fixed.d.mts +1 -0
- package/es/Table/engine/fixed.mjs +53 -0
- package/es/Table/engine/fixed.mjs.map +1 -0
- package/es/Table/engine/types.d.mts +1 -0
- package/es/Table/engine/useTableEngine.mjs +180 -0
- package/es/Table/engine/useTableEngine.mjs.map +1 -0
- package/es/Table/index.d.mts +7 -2
- package/es/Table/index.mjs +4 -1
- package/es/Table/internal.d.mts +3 -0
- package/es/Table/pipeline/columnUtils.d.mts +5 -0
- package/es/Table/pipeline/columnUtils.mjs +58 -0
- package/es/Table/pipeline/columnUtils.mjs.map +1 -0
- package/es/Table/pipeline/convertChildrenToColumns.mjs +24 -0
- package/es/Table/pipeline/convertChildrenToColumns.mjs.map +1 -0
- package/es/Table/pipeline/normalizeColumns.mjs +140 -0
- package/es/Table/pipeline/normalizeColumns.mjs.map +1 -0
- package/es/Table/pipeline/selectionUtils.d.mts +9 -0
- package/es/Table/pipeline/selectionUtils.mjs +115 -0
- package/es/Table/pipeline/selectionUtils.mjs.map +1 -0
- package/es/Table/pipeline/useBreakpoint.mjs +36 -0
- package/es/Table/pipeline/useBreakpoint.mjs.map +1 -0
- package/es/Table/pipeline/useExpandable.mjs +45 -0
- package/es/Table/pipeline/useExpandable.mjs.map +1 -0
- package/es/Table/pipeline/useFilter.mjs +52 -0
- package/es/Table/pipeline/useFilter.mjs.map +1 -0
- package/es/Table/pipeline/useSelection.mjs +302 -0
- package/es/Table/pipeline/useSelection.mjs.map +1 -0
- package/es/Table/pipeline/useSorter.mjs +146 -0
- package/es/Table/pipeline/useSorter.mjs.map +1 -0
- package/es/Table/pipeline/useTableLocale.mjs +30 -0
- package/es/Table/pipeline/useTableLocale.mjs.map +1 -0
- package/es/Table/pipeline/useTableState.mjs +118 -0
- package/es/Table/pipeline/useTableState.mjs.map +1 -0
- package/es/Table/pipeline/useVirtualLayout.mjs +80 -0
- package/es/Table/pipeline/useVirtualLayout.mjs.map +1 -0
- package/es/Table/render/Body.mjs +150 -0
- package/es/Table/render/Body.mjs.map +1 -0
- package/es/Table/render/BodyCell.mjs +87 -0
- package/es/Table/render/BodyCell.mjs.map +1 -0
- package/es/Table/render/CellShell.mjs +84 -0
- package/es/Table/render/CellShell.mjs.map +1 -0
- package/es/Table/render/ExpandIcon.mjs +28 -0
- package/es/Table/render/ExpandIcon.mjs.map +1 -0
- package/es/Table/render/FilterDropdown.mjs +139 -0
- package/es/Table/render/FilterDropdown.mjs.map +1 -0
- package/es/Table/render/FilterPanel.mjs +152 -0
- package/es/Table/render/FilterPanel.mjs.map +1 -0
- package/es/Table/render/FixedFrost.mjs +113 -0
- package/es/Table/render/FixedFrost.mjs.map +1 -0
- package/es/Table/render/FixedHolder.mjs +51 -0
- package/es/Table/render/FixedHolder.mjs.map +1 -0
- package/es/Table/render/Header.mjs +184 -0
- package/es/Table/render/Header.mjs.map +1 -0
- package/es/Table/render/LoadingSkeleton.mjs +78 -0
- package/es/Table/render/LoadingSkeleton.mjs.map +1 -0
- package/es/Table/render/PaginationBar.mjs +71 -0
- package/es/Table/render/PaginationBar.mjs.map +1 -0
- package/es/Table/render/SelectionCells.mjs +111 -0
- package/es/Table/render/SelectionCells.mjs.map +1 -0
- package/es/Table/render/StickyScrollBar.mjs +99 -0
- package/es/Table/render/StickyScrollBar.mjs.map +1 -0
- package/es/Table/render/Summary.d.mts +16 -0
- package/es/Table/render/Summary.mjs +58 -0
- package/es/Table/render/Summary.mjs.map +1 -0
- package/es/Table/render/TableView.mjs +215 -0
- package/es/Table/render/TableView.mjs.map +1 -0
- package/es/Table/render/VirtualBody.mjs +101 -0
- package/es/Table/render/VirtualBody.mjs.map +1 -0
- package/es/Table/render/context.mjs +15 -0
- package/es/Table/render/context.mjs.map +1 -0
- package/es/Table/render/filterUtils.mjs +22 -0
- package/es/Table/render/filterUtils.mjs.map +1 -0
- package/es/Table/render/tableHelpers.mjs +27 -0
- package/es/Table/render/tableHelpers.mjs.map +1 -0
- package/es/Table/render/useColGroups.mjs +23 -0
- package/es/Table/render/useColGroups.mjs.map +1 -0
- package/es/Table/render/useScrollSync.mjs +104 -0
- package/es/Table/render/useScrollSync.mjs.map +1 -0
- package/es/Table/render/useViewContexts.mjs +134 -0
- package/es/Table/render/useViewContexts.mjs.map +1 -0
- package/es/Table/semantic.mjs +45 -0
- package/es/Table/semantic.mjs.map +1 -0
- package/es/Table/store/createTableStore.d.mts +1 -0
- package/es/Table/store/createTableStore.mjs +40 -0
- package/es/Table/store/createTableStore.mjs.map +1 -0
- package/es/Table/store/hooks.mjs +24 -0
- package/es/Table/store/hooks.mjs.map +1 -0
- package/es/Table/style.mjs +175 -90
- package/es/Table/style.mjs.map +1 -1
- package/es/Table/type.d.mts +467 -37
- package/es/Table/useTableController.mjs +293 -0
- package/es/Table/useTableController.mjs.map +1 -0
- package/es/Tabs/Tabs.mjs +37 -23
- package/es/Tabs/Tabs.mjs.map +1 -1
- package/es/Tabs/atoms.mjs +2 -2
- package/es/Tabs/atoms.mjs.map +1 -1
- package/es/Tag/Tag.mjs +2 -2
- package/es/Tag/Tag.mjs.map +1 -1
- package/es/Text/Text.mjs +2 -2
- package/es/Text/Text.mjs.map +1 -1
- package/es/Text/style.d.mts +4 -3
- package/es/Text/style.mjs +3 -3
- package/es/Text/style.mjs.map +1 -1
- package/es/Toast/dodge.mjs +0 -1
- package/es/Toast/dodge.mjs.map +1 -1
- package/es/Toast/dodge.stylex.mjs +1 -4
- package/es/Toast/dodge.stylex.mjs.map +1 -1
- package/es/Toast/style.mjs +1 -1
- package/es/Toast/style.mjs.map +1 -1
- package/es/ToggleGroup/ToggleGroup.mjs +4 -4
- package/es/ToggleGroup/ToggleGroup.mjs.map +1 -1
- package/es/ToggleGroup/atoms.d.mts +1 -0
- package/es/ToggleGroup/atoms.mjs +2 -2
- package/es/ToggleGroup/atoms.mjs.map +1 -1
- package/es/Tooltip/TooltipGroup.mjs +3 -3
- package/es/Tooltip/TooltipGroup.mjs.map +1 -1
- package/es/Tooltip/TooltipInGroup.mjs +1 -1
- package/es/Tooltip/TooltipInGroup.mjs.map +1 -1
- package/es/Tooltip/TooltipStandalone.mjs +4 -4
- package/es/Tooltip/TooltipStandalone.mjs.map +1 -1
- package/es/Tooltip/style.mjs +2 -2
- package/es/Tooltip/style.mjs.map +1 -1
- package/es/Tree/Tree.mjs +3 -3
- package/es/Tree/Tree.mjs.map +1 -1
- package/es/Tree/TreeNode.mjs +2 -2
- package/es/Tree/TreeNode.mjs.map +1 -1
- package/es/Video/Video.mjs +46 -0
- package/es/Video/Video.mjs.map +1 -0
- package/es/Video/context.mjs +14 -0
- package/es/Video/context.mjs.map +1 -0
- package/es/Video/index.d.mts +23 -39
- package/es/Video/index.mjs +21 -111
- package/es/Video/index.mjs.map +1 -1
- package/es/Video/parts/Caption.d.mts +9 -0
- package/es/Video/parts/Caption.mjs +37 -0
- package/es/Video/parts/Caption.mjs.map +1 -0
- package/es/Video/parts/CenterPlay.d.mts +8 -0
- package/es/Video/parts/CenterPlay.mjs +34 -0
- package/es/Video/parts/CenterPlay.mjs.map +1 -0
- package/es/Video/parts/Controls.d.mts +9 -0
- package/es/Video/parts/Controls.mjs +128 -0
- package/es/Video/parts/Controls.mjs.map +1 -0
- package/es/Video/parts/Frame.d.mts +9 -0
- package/es/Video/parts/Frame.mjs +101 -0
- package/es/Video/parts/Frame.mjs.map +1 -0
- package/es/Video/parts/HoverPreview.mjs +93 -0
- package/es/Video/parts/HoverPreview.mjs.map +1 -0
- package/es/Video/parts/LoadError.d.mts +8 -0
- package/es/Video/parts/LoadError.mjs +47 -0
- package/es/Video/parts/LoadError.mjs.map +1 -0
- package/es/Video/parts/PlayPauseIcon.mjs +48 -0
- package/es/Video/parts/PlayPauseIcon.mjs.map +1 -0
- package/es/Video/parts/RateMenu.mjs +48 -0
- package/es/Video/parts/RateMenu.mjs.map +1 -0
- package/es/Video/parts/Root.d.mts +9 -0
- package/es/Video/parts/Root.mjs +110 -0
- package/es/Video/parts/Root.mjs.map +1 -0
- package/es/Video/parts/SectionList.d.mts +9 -0
- package/es/Video/parts/SectionList.mjs +32 -0
- package/es/Video/parts/SectionList.mjs.map +1 -0
- package/es/Video/parts/SectionMenu.mjs +63 -0
- package/es/Video/parts/SectionMenu.mjs.map +1 -0
- package/es/Video/parts/Timeline.d.mts +9 -0
- package/es/Video/parts/Timeline.mjs +169 -0
- package/es/Video/parts/Timeline.mjs.map +1 -0
- package/es/Video/store.mjs +241 -0
- package/es/Video/store.mjs.map +1 -0
- package/es/Video/style.mjs +393 -23
- package/es/Video/style.mjs.map +1 -1
- package/es/Video/time.mjs +60 -0
- package/es/Video/time.mjs.map +1 -0
- package/es/Video/type.d.mts +125 -0
- package/es/Video/useControlsIdle.mjs +39 -0
- package/es/Video/useControlsIdle.mjs.map +1 -0
- package/es/Video/useFullscreen.mjs +17 -0
- package/es/Video/useFullscreen.mjs.map +1 -0
- package/es/Video/useKeyboard.mjs +60 -0
- package/es/Video/useKeyboard.mjs.map +1 -0
- package/es/Video/useVideo.d.mts +9 -0
- package/es/Video/useVideo.mjs +17 -0
- package/es/Video/useVideo.mjs.map +1 -0
- package/es/awesome/Features/FeatureItem.mjs +2 -2
- package/es/awesome/Features/FeatureItem.mjs.map +1 -1
- package/es/awesome/Giscus/style.mjs +9 -9
- package/es/awesome/Giscus/style.mjs.map +1 -1
- package/es/awesome/Grainient/Grainient.d.mts +11 -0
- package/es/awesome/Grainient/Grainient.mjs +314 -0
- package/es/awesome/Grainient/Grainient.mjs.map +1 -0
- package/es/awesome/Grainient/index.d.mts +3 -0
- package/es/awesome/Grainient/style.mjs +23 -0
- package/es/awesome/Grainient/style.mjs.map +1 -0
- package/es/awesome/Grainient/type.d.mts +121 -0
- package/es/awesome/GridBackground/GridBackground.mjs +1 -1
- package/es/awesome/GridBackground/GridBackground.mjs.map +1 -1
- package/es/awesome/GridBackground/GridShowcase.mjs +4 -4
- package/es/awesome/GridBackground/GridShowcase.mjs.map +1 -1
- package/es/awesome/Hero/Hero.mjs +3 -3
- package/es/awesome/Hero/Hero.mjs.map +1 -1
- package/es/awesome/InstallBanner/InstallBanner.mjs +2 -2
- package/es/awesome/InstallBanner/InstallBanner.mjs.map +1 -1
- package/es/awesome/LandingHero/LandingHero.mjs +3 -3
- package/es/awesome/LandingHero/LandingHero.mjs.map +1 -1
- package/es/awesome/LogoMarquee/LogoMarquee.mjs +2 -2
- package/es/awesome/LogoMarquee/LogoMarquee.mjs.map +1 -1
- package/es/awesome/Spline/ParentSize.mjs +1 -1
- package/es/awesome/Spline/ParentSize.mjs.map +1 -1
- package/es/awesome/TypewriterEffect/TypewriterEffect.mjs +4 -4
- package/es/awesome/TypewriterEffect/TypewriterEffect.mjs.map +1 -1
- package/es/awesome/index.d.mts +4 -1
- package/es/awesome/index.mjs +2 -1
- package/es/awesome/landingActions.mjs +2 -2
- package/es/awesome/landingActions.mjs.map +1 -1
- package/es/chat/BackBottom/BackBottom.mjs +1 -1
- package/es/chat/BackBottom/BackBottom.mjs.map +1 -1
- package/es/chat/BackBottom/type.d.mts +2 -2
- package/es/chat/ChatItem/ChatItem.mjs +2 -2
- package/es/chat/ChatItem/ChatItem.mjs.map +1 -1
- package/es/chat/EditableMessage/EditableMessage.mjs +4 -4
- package/es/chat/EditableMessage/EditableMessage.mjs.map +1 -1
- package/es/chat/EditableMessageList/EditableMessageList.mjs +2 -2
- package/es/chat/EditableMessageList/EditableMessageList.mjs.map +1 -1
- package/es/chat/EditableMessageList/messageReducer.mjs +30 -23
- package/es/chat/EditableMessageList/messageReducer.mjs.map +1 -1
- package/es/chat/MessageInput/MessageInput.mjs +3 -3
- package/es/chat/MessageInput/MessageInput.mjs.map +1 -1
- package/es/chat/MessageModal/MessageModal.mjs +1 -1
- package/es/chat/MessageModal/MessageModal.mjs.map +1 -1
- package/es/chat/TokenTag/TokenTag.mjs +2 -3
- package/es/chat/TokenTag/TokenTag.mjs.map +1 -1
- package/es/color/status/error.mjs +67 -0
- package/es/color/status/error.mjs.map +1 -0
- package/es/color/status/index.mjs +15 -0
- package/es/color/status/index.mjs.map +1 -0
- package/es/color/status/info.mjs +67 -0
- package/es/color/status/info.mjs.map +1 -0
- package/es/color/status/success.mjs +67 -0
- package/es/color/status/success.mjs.map +1 -0
- package/es/color/status/warning.mjs +67 -0
- package/es/color/status/warning.mjs.map +1 -0
- package/es/color/types.d.mts +1 -0
- package/es/dashboard/AuthLayout/Aside.d.mts +10 -0
- package/es/dashboard/AuthLayout/Aside.mjs +31 -0
- package/es/dashboard/AuthLayout/Aside.mjs.map +1 -0
- package/es/dashboard/AuthLayout/AuthLayout.d.mts +3 -1
- package/es/dashboard/AuthLayout/AuthLayout.mjs +97 -37
- package/es/dashboard/AuthLayout/AuthLayout.mjs.map +1 -1
- package/es/dashboard/AuthLayout/index.d.mts +3 -2
- package/es/dashboard/AuthLayout/style.mjs +109 -1
- package/es/dashboard/AuthLayout/style.mjs.map +1 -1
- package/es/dashboard/AuthLayout/type.d.mts +38 -2
- package/es/dashboard/AuthTools/AuthLocaleSwitch.d.mts +10 -0
- package/es/dashboard/AuthTools/AuthLocaleSwitch.mjs +33 -0
- package/es/dashboard/AuthTools/AuthLocaleSwitch.mjs.map +1 -0
- package/es/dashboard/AuthTools/AuthThemeSwitch.d.mts +10 -0
- package/es/dashboard/AuthTools/AuthThemeSwitch.mjs +59 -0
- package/es/dashboard/AuthTools/AuthThemeSwitch.mjs.map +1 -0
- package/es/dashboard/AuthTools/index.d.mts +4 -0
- package/es/dashboard/AuthTools/style.mjs +27 -0
- package/es/dashboard/AuthTools/style.mjs.map +1 -0
- package/es/dashboard/AuthTools/type.d.mts +29 -0
- package/es/dashboard/ChartGrid/ChartGrid.d.mts +10 -0
- package/es/dashboard/ChartGrid/ChartGrid.mjs +19 -0
- package/es/dashboard/ChartGrid/ChartGrid.mjs.map +1 -0
- package/es/dashboard/ChartGrid/index.d.mts +3 -0
- package/es/dashboard/ChartGrid/style.mjs +18 -0
- package/es/dashboard/ChartGrid/style.mjs.map +1 -0
- package/es/dashboard/ChartGrid/type.d.mts +8 -0
- package/es/dashboard/ConsoleNav/ConsoleNav.mjs +3 -3
- package/es/dashboard/ConsoleNav/ConsoleNav.mjs.map +1 -1
- package/es/dashboard/ConsoleNav/Skeleton.d.mts +15 -0
- package/es/dashboard/ConsoleNav/Skeleton.mjs +82 -0
- package/es/dashboard/ConsoleNav/Skeleton.mjs.map +1 -0
- package/es/dashboard/ConsoleNav/index.d.mts +3 -2
- package/es/dashboard/ConsoleNav/style.mjs +20 -2
- package/es/dashboard/ConsoleNav/style.mjs.map +1 -1
- package/es/dashboard/ConsoleNav/type.d.mts +13 -0
- package/es/dashboard/ConsoleShell/ConsoleShell.d.mts +1 -1
- package/es/dashboard/ConsoleShell/ConsoleShell.mjs +26 -6
- package/es/dashboard/ConsoleShell/ConsoleShell.mjs.map +1 -1
- package/es/dashboard/ConsoleShell/style.mjs +11 -1
- package/es/dashboard/ConsoleShell/style.mjs.map +1 -1
- package/es/dashboard/ConsoleShell/type.d.mts +11 -0
- package/es/dashboard/FilterSidebar/FilterSidebar.mjs +18 -17
- package/es/dashboard/FilterSidebar/FilterSidebar.mjs.map +1 -1
- package/es/dashboard/FilterSidebar/style.mjs +2 -2
- package/es/dashboard/FilterSidebar/style.mjs.map +1 -1
- package/es/dashboard/FilterStrip/FilterStrip.d.mts +11 -0
- package/es/dashboard/FilterStrip/FilterStrip.mjs +55 -0
- package/es/dashboard/FilterStrip/FilterStrip.mjs.map +1 -0
- package/es/dashboard/FilterStrip/index.d.mts +3 -0
- package/es/dashboard/FilterStrip/style.mjs +78 -0
- package/es/dashboard/FilterStrip/style.mjs.map +1 -0
- package/es/dashboard/FilterStrip/type.d.mts +25 -0
- package/es/dashboard/LabelWithKey/LabelWithKey.d.mts +10 -0
- package/es/dashboard/LabelWithKey/LabelWithKey.mjs +18 -0
- package/es/dashboard/LabelWithKey/LabelWithKey.mjs.map +1 -0
- package/es/dashboard/LabelWithKey/index.d.mts +3 -0
- package/es/dashboard/LabelWithKey/type.d.mts +11 -0
- package/es/dashboard/MetricStrip/MetricCell.mjs +92 -0
- package/es/dashboard/MetricStrip/MetricCell.mjs.map +1 -0
- package/es/dashboard/MetricStrip/MetricStrip.d.mts +13 -0
- package/es/dashboard/MetricStrip/MetricStrip.mjs +47 -0
- package/es/dashboard/MetricStrip/MetricStrip.mjs.map +1 -0
- package/es/dashboard/MetricStrip/index.d.mts +3 -0
- package/es/dashboard/MetricStrip/style.mjs +169 -0
- package/es/dashboard/MetricStrip/style.mjs.map +1 -0
- package/es/dashboard/MetricStrip/type.d.mts +38 -0
- package/es/dashboard/PageSkeleton/PageSkeleton.mjs +20 -18
- package/es/dashboard/PageSkeleton/PageSkeleton.mjs.map +1 -1
- package/es/dashboard/PageSkeleton/style.mjs +2 -1
- package/es/dashboard/PageSkeleton/style.mjs.map +1 -1
- package/es/dashboard/PageToolbar/PageToolbar.d.mts +10 -0
- package/es/dashboard/PageToolbar/PageToolbar.mjs +22 -0
- package/es/dashboard/PageToolbar/PageToolbar.mjs.map +1 -0
- package/es/dashboard/PageToolbar/index.d.mts +3 -0
- package/es/dashboard/PageToolbar/style.mjs +36 -0
- package/es/dashboard/PageToolbar/style.mjs.map +1 -0
- package/es/dashboard/PageToolbar/type.d.mts +11 -0
- package/es/dashboard/PanelSurface/PanelSurface.d.mts +10 -0
- package/es/dashboard/PanelSurface/PanelSurface.mjs +40 -0
- package/es/dashboard/PanelSurface/PanelSurface.mjs.map +1 -0
- package/es/dashboard/PanelSurface/index.d.mts +3 -0
- package/es/dashboard/PanelSurface/style.mjs +25 -0
- package/es/dashboard/PanelSurface/style.mjs.map +1 -0
- package/es/dashboard/PanelSurface/type.d.mts +17 -0
- package/es/dashboard/Section/Section.d.mts +10 -0
- package/es/dashboard/Section/Section.mjs +81 -0
- package/es/dashboard/Section/Section.mjs.map +1 -0
- package/es/dashboard/Section/index.d.mts +3 -0
- package/es/dashboard/Section/style.mjs +31 -0
- package/es/dashboard/Section/style.mjs.map +1 -0
- package/es/dashboard/Section/type.d.mts +23 -0
- package/es/dashboard/StatCard/StatCard.d.mts +2 -1
- package/es/dashboard/StatCard/StatCard.mjs +29 -91
- package/es/dashboard/StatCard/StatCard.mjs.map +1 -1
- package/es/dashboard/StatCard/type.d.mts +18 -5
- package/es/dashboard/Surface/Surface.d.mts +4 -3
- package/es/dashboard/Surface/Surface.mjs +90 -8
- package/es/dashboard/Surface/Surface.mjs.map +1 -1
- package/es/dashboard/Surface/index.d.mts +3 -2
- package/es/dashboard/Surface/link.d.mts +16 -0
- package/es/dashboard/Surface/link.mjs +40 -0
- package/es/dashboard/Surface/link.mjs.map +1 -0
- package/es/dashboard/Surface/marker.stylex.mjs +9 -0
- package/es/dashboard/Surface/marker.stylex.mjs.map +1 -0
- package/es/dashboard/Surface/style.d.mts +2 -0
- package/es/dashboard/Surface/style.mjs +156 -14
- package/es/dashboard/Surface/style.mjs.map +1 -1
- package/es/dashboard/Surface/type.d.mts +29 -1
- package/es/dashboard/TableIconActions/TableIconActions.d.mts +17 -0
- package/es/dashboard/TableIconActions/TableIconActions.mjs +39 -0
- package/es/dashboard/TableIconActions/TableIconActions.mjs.map +1 -0
- package/es/dashboard/TableIconActions/index.d.mts +3 -0
- package/es/dashboard/TableIconActions/type.d.mts +17 -0
- package/es/dashboard/TitleWithTips/TitleWithTips.d.mts +10 -0
- package/es/dashboard/TitleWithTips/TitleWithTips.mjs +28 -0
- package/es/dashboard/TitleWithTips/TitleWithTips.mjs.map +1 -0
- package/es/dashboard/TitleWithTips/index.d.mts +3 -0
- package/es/dashboard/TitleWithTips/type.d.mts +10 -0
- package/es/dashboard/index.d.mts +38 -4
- package/es/dashboard/index.mjs +18 -4
- package/es/eslint/noBaseUiSubpath.mjs +2 -1
- package/es/eslint/noBaseUiSubpath.mjs.map +1 -1
- package/es/hooks/useControlledState.mjs +20 -0
- package/es/hooks/useControlledState.mjs.map +1 -0
- package/es/hooks/useHighlight.mjs +2 -2
- package/es/hooks/useHighlight.mjs.map +1 -1
- package/es/hooks/useHover.mjs +22 -0
- package/es/hooks/useHover.mjs.map +1 -0
- package/es/hooks/useMarkdown/utils.d.mts +1 -0
- package/es/hooks/useScroll.d.mts +8 -0
- package/es/hooks/useScroll.mjs +33 -0
- package/es/hooks/useScroll.mjs.map +1 -0
- package/es/hooks/useSize.mjs +26 -0
- package/es/hooks/useSize.mjs.map +1 -0
- package/es/i18n/resources/en/colorPicker.d.mts +5 -0
- package/es/i18n/resources/en/colorPicker.mjs +5 -0
- package/es/i18n/resources/en/colorPicker.mjs.map +1 -1
- package/es/i18n/resources/en/datePicker.d.mts +54 -0
- package/es/i18n/resources/en/datePicker.mjs +55 -1
- package/es/i18n/resources/en/datePicker.mjs.map +1 -1
- package/es/i18n/resources/en/index.d.mts +4 -2
- package/es/i18n/resources/en/index.mjs +6 -2
- package/es/i18n/resources/en/index.mjs.map +1 -1
- package/es/i18n/resources/en/table.d.mts +23 -0
- package/es/i18n/resources/en/table.mjs +24 -0
- package/es/i18n/resources/en/table.mjs.map +1 -0
- package/es/i18n/resources/en/video.d.mts +23 -0
- package/es/i18n/resources/en/video.mjs +24 -0
- package/es/i18n/resources/en/video.mjs.map +1 -0
- package/es/i18n/resources/zhCn/colorPicker.d.mts +5 -0
- package/es/i18n/resources/zhCn/colorPicker.mjs +5 -0
- package/es/i18n/resources/zhCn/colorPicker.mjs.map +1 -1
- package/es/i18n/resources/zhCn/datePicker.d.mts +54 -0
- package/es/i18n/resources/zhCn/datePicker.mjs +55 -1
- package/es/i18n/resources/zhCn/datePicker.mjs.map +1 -1
- package/es/i18n/resources/zhCn/index.d.mts +4 -2
- package/es/i18n/resources/zhCn/index.mjs +7 -3
- package/es/i18n/resources/zhCn/index.mjs.map +1 -1
- package/es/i18n/resources/zhCn/table.d.mts +23 -0
- package/es/i18n/resources/zhCn/table.mjs +24 -0
- package/es/i18n/resources/zhCn/table.mjs.map +1 -0
- package/es/i18n/resources/zhCn/video.d.mts +23 -0
- package/es/i18n/resources/zhCn/video.mjs +24 -0
- package/es/i18n/resources/zhCn/video.mjs.map +1 -0
- package/es/i18n/types.d.mts +4 -1
- package/es/index.d.mts +20 -8
- package/es/index.mjs +17 -9
- package/es/internal/menu/itemInterface.d.mts +1 -0
- package/es/internal/menu/renderUtils.d.mts +1 -0
- package/es/internal/overflow/OverflowList.mjs +71 -0
- package/es/internal/overflow/OverflowList.mjs.map +1 -0
- package/es/internal/virtual/VirtualScrollArea.mjs +1 -1
- package/es/internal/virtual/VirtualScrollArea.mjs.map +1 -1
- package/es/mdx/Callout/index.mjs +2 -2
- package/es/mdx/Callout/index.mjs.map +1 -1
- package/es/mdx/Cards/Card.mjs +2 -2
- package/es/mdx/Cards/Card.mjs.map +1 -1
- package/es/mdx/Cards/index.mjs +2 -2
- package/es/mdx/Cards/index.mjs.map +1 -1
- package/es/mdx/Mdx/index.mjs +2 -2
- package/es/mdx/Mdx/index.mjs.map +1 -1
- package/es/mdx/Steps/index.mjs +2 -2
- package/es/mdx/Steps/index.mjs.map +1 -1
- package/es/mdx/mdxComponents/Pre.mjs +5 -5
- package/es/mdx/mdxComponents/Pre.mjs.map +1 -1
- package/es/mdx/mdxComponents/Video.d.mts +2 -1
- package/es/mdx/mdxComponents/Video.mjs +5 -3
- package/es/mdx/mdxComponents/Video.mjs.map +1 -1
- package/es/mobile/ChatInputArea/ChatInputArea.mjs +1 -1
- package/es/mobile/ChatInputArea/ChatInputArea.mjs.map +1 -1
- package/es/mobile/TabBar/TabBar.mjs +1 -1
- package/es/mobile/TabBar/TabBar.mjs.map +1 -1
- package/es/node_modules/.pnpm/@eslint_core@1.2.1/node_modules/@eslint/core/dist/esm/types.d.mts +2 -46
- package/es/node_modules/.pnpm/@eslint_plugin-kit@0.7.3/node_modules/@eslint/plugin-kit/dist/cjs/index.d.mts +1 -1
- package/es/node_modules/.pnpm/@types_estree@1.0.9/node_modules/@types/estree/index.d.mts +1 -4
- package/es/node_modules/.pnpm/@types_mdx@2.0.14/node_modules/@types/mdx/types.d.mts +1 -0
- package/es/node_modules/.pnpm/eslint@10.12.0_jiti@2.6.1_supports-color@10.2.2/node_modules/eslint/lib/types/index.d.mts +2 -1
- package/es/storybook/StoryBook/style.mjs +2 -0
- package/es/storybook/StoryBook/style.mjs.map +1 -1
- package/es/style.css +3534 -978
- package/es/styles/createGlobalStyle.d.mts +1 -0
- package/es/styles/createGlobalStyle.mjs +1 -1
- package/es/styles/index.d.mts +3 -2
- package/es/styles/index.mjs +5 -4
- package/es/styles/stylex/cssVar.stylex.mjs +3 -0
- package/es/styles/stylex/cssVar.stylex.mjs.map +1 -1
- package/es/styles/stylex/props.mjs +2 -2
- package/es/styles/stylex/props.mjs.map +1 -1
- package/es/styles/theme/createLobeToken.d.mts +10 -6
- package/es/styles/theme/createLobeToken.mjs.map +1 -1
- package/es/styles/theme/customPrimary.d.mts +7 -0
- package/es/styles/theme/customPrimary.mjs +66 -0
- package/es/styles/theme/customPrimary.mjs.map +1 -0
- package/es/styles/theme/generateColorPalette.d.mts +1 -0
- package/es/styles/theme/scope.d.mts +5 -3
- package/es/styles/theme/scope.mjs +30 -8
- package/es/styles/theme/scope.mjs.map +1 -1
- package/es/styles/theme/themeCss.d.mts +2 -0
- package/es/styles/theme/themeCss.mjs +24 -2
- package/es/styles/theme/themeCss.mjs.map +1 -1
- package/es/styles/theme/token/legacy.mjs +12 -12
- package/es/styles/theme/token/legacy.mjs.map +1 -1
- package/es/styles/theme/token/neutral.mjs +17 -9
- package/es/styles/theme/token/neutral.mjs.map +1 -1
- package/es/styles/theme/token/neutralText.mjs +91 -0
- package/es/styles/theme/token/neutralText.mjs.map +1 -0
- package/es/styles/theme/token/palette.mjs +16 -41
- package/es/styles/theme/token/palette.mjs.map +1 -1
- package/es/styles/theme/token/primary.mjs +6 -2
- package/es/styles/theme/token/primary.mjs.map +1 -1
- package/es/styles/theme/token/static.mjs +3 -0
- package/es/styles/theme/token/static.mjs.map +1 -1
- package/es/theme.css +301 -290
- package/es/types/customToken.d.mts +1 -0
- package/es/utils/colorMath.mjs +52 -0
- package/es/utils/colorMath.mjs.map +1 -0
- package/es/utils/formatNumber.mjs +7 -0
- package/es/utils/formatNumber.mjs.map +1 -0
- package/es/utils/genCdnUrl.mjs +6 -3
- package/es/utils/genCdnUrl.mjs.map +1 -1
- package/es/utils/hashString.mjs +19 -0
- package/es/utils/hashString.mjs.map +1 -0
- package/es/utils/mergeRefs.mjs +20 -0
- package/es/utils/mergeRefs.mjs.map +1 -0
- package/es/utils/placement.d.mts +5 -5
- package/es/utils/placement.mjs.map +1 -1
- package/package.json +25 -46
- package/es/DatePicker/CalendarPanel.mjs +0 -189
- package/es/DatePicker/CalendarPanel.mjs.map +0 -1
- package/es/DatePicker/PickerShell.mjs +0 -43
- package/es/DatePicker/PickerShell.mjs.map +0 -1
- package/es/DatePicker/calendar.d.mts +0 -4
- package/es/DatePicker/calendar.mjs +0 -46
- package/es/DatePicker/calendar.mjs.map +0 -1
- package/es/Table/FilterMenu.mjs +0 -45
- package/es/Table/FilterMenu.mjs.map +0 -1
- package/es/Table/TableBody.mjs +0 -67
- package/es/Table/TableBody.mjs.map +0 -1
- package/es/Table/TableHead.mjs +0 -58
- package/es/Table/TableHead.mjs.map +0 -1
- package/es/Table/features.mjs +0 -12
- package/es/Table/features.mjs.map +0 -1
- package/es/Table/fixedOffsets.mjs +0 -29
- package/es/Table/fixedOffsets.mjs.map +0 -1
- package/es/Table/marker.stylex.mjs +0 -9
- package/es/Table/marker.stylex.mjs.map +0 -1
- package/es/Table/toColumnDefs.mjs +0 -26
- package/es/Table/toColumnDefs.mjs.map +0 -1
- package/es/Table/useTableState.mjs +0 -99
- package/es/Table/useTableState.mjs.map +0 -1
- package/es/Video/marker.stylex.mjs +0 -9
- package/es/Video/marker.stylex.mjs.map +0 -1
- package/es/dashboard/StatCard/style.mjs +0 -105
- package/es/dashboard/StatCard/style.mjs.map +0 -1
package/es/DatePicker/type.d.mts
CHANGED
|
@@ -1,35 +1,302 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
1
|
+
import { GenerateConfig } from "./core/generate/index.mjs";
|
|
2
|
+
import { BaseInfo, CellRender, CellRenderInfo, Components, Locale, PanelMode, PickerMode, PickerRef, RangePickerRef, SharedPanelProps, ValueDate } from "./core/interface.mjs";
|
|
3
|
+
import { RangePickerProps as RangePickerProps$1 } from "./core/PickerInput/RangePicker.mjs";
|
|
4
|
+
import { PickerProps as PickerProps$1 } from "./core/PickerInput/SinglePicker.mjs";
|
|
5
|
+
import "./core/index.mjs";
|
|
6
|
+
import { CSSProperties, ComponentType, FocusEvent, MouseEvent, ReactNode, Ref } from "react";
|
|
7
|
+
import { Dayjs } from "dayjs";
|
|
4
8
|
//#region src/DatePicker/type.d.ts
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
9
|
+
/** rc-picker's locale (texts and formats) plus antd's per-`picker` placeholders. */
|
|
10
|
+
export interface PickerLocaleLang extends Locale {
|
|
11
|
+
monthPlaceholder?: string;
|
|
12
|
+
placeholder?: string;
|
|
13
|
+
quarterPlaceholder?: string;
|
|
14
|
+
rangeMonthPlaceholder?: [string, string];
|
|
15
|
+
rangePlaceholder?: [string, string];
|
|
16
|
+
rangeQuarterPlaceholder?: [string, string];
|
|
17
|
+
rangeWeekPlaceholder?: [string, string];
|
|
18
|
+
rangeYearPlaceholder?: [string, string];
|
|
19
|
+
weekPlaceholder?: string;
|
|
20
|
+
yearPlaceholder?: string;
|
|
21
|
+
}
|
|
22
|
+
/** Placeholders of `picker="time"`. */
|
|
23
|
+
export interface TimePickerLocale {
|
|
24
|
+
placeholder?: string;
|
|
25
|
+
rangePlaceholder?: [string, string];
|
|
26
|
+
}
|
|
27
|
+
/** antd's `PickerLocale`, the shape of the `locale` prop. */
|
|
28
|
+
export interface PickerLocale {
|
|
29
|
+
/** @deprecated Kept for antd parity; use `lang.fieldDateFormat`. */
|
|
30
|
+
dateFormat?: string;
|
|
31
|
+
/** @deprecated Kept for antd parity; use `lang.fieldDateTimeFormat`. */
|
|
32
|
+
dateTimeFormat?: string;
|
|
33
|
+
lang: PickerLocaleLang;
|
|
34
|
+
/** @deprecated Kept for antd parity; use `lang.fieldMonthFormat`. */
|
|
35
|
+
monthFormat?: string;
|
|
36
|
+
timePickerLocale: TimePickerLocale;
|
|
37
|
+
/** @deprecated Kept for antd parity; use `lang.fieldWeekFormat`. */
|
|
38
|
+
weekFormat?: string;
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* The `locale` prop: a full `PickerLocale` (e.g. a spread of an exported default locale) or
|
|
42
|
+
* only the fields to change — `lang` and `timePickerLocale` are merged field by field over the
|
|
43
|
+
* default locale generated from `@lobehub/ui/i18n`.
|
|
44
|
+
*/
|
|
45
|
+
export type PickerLocaleInput = Omit<Partial<PickerLocale>, 'lang' | 'timePickerLocale'> & {
|
|
46
|
+
lang?: Partial<PickerLocaleLang>;
|
|
47
|
+
timePickerLocale?: TimePickerLocale;
|
|
48
|
+
};
|
|
49
|
+
/** A `presets` entry: `value` may be a function, evaluated when the preset is hovered or picked. */
|
|
50
|
+
export type PresetDate<T = Date> = ValueDate<T>;
|
|
51
|
+
/** `components`: replace a panel (`date` / `week` / … / `time`), the `input` or the OK `button`. */
|
|
52
|
+
export type PickerComponents = Components<Date>;
|
|
53
|
+
/** Props a custom panel in `components` receives (`value`, `onSelect`, `onHover`, …). */
|
|
54
|
+
export type PickerPanelProps<DateType extends object = Date> = SharedPanelProps<DateType>;
|
|
55
|
+
export type PickerSize = 'large' | 'medium' | 'small';
|
|
56
|
+
export type PickerVariant = 'outlined' | 'borderless' | 'filled' | 'underlined';
|
|
57
|
+
export type PickerStatus = 'error' | 'warning';
|
|
58
|
+
export type PickerPlacement = 'bottomLeft' | 'bottomRight' | 'topLeft' | 'topRight';
|
|
59
|
+
/** @deprecated Use `PickerMode` (the `picker` prop) instead. */
|
|
60
|
+
export type CalendarMode = 'date' | 'month' | 'year';
|
|
61
|
+
/** Semantic parts of the input box (Semantic DOM). */
|
|
62
|
+
export type PickerSemanticName = 'root' | 'prefix' | 'input' | 'suffix';
|
|
63
|
+
/** Semantic parts of the popup (Semantic DOM, `classNames.popup` / `styles.popup`). */
|
|
64
|
+
export type PickerPopupSemanticName = 'root' | 'container' | 'header' | 'body' | 'content' | 'item' | 'footer';
|
|
65
|
+
export interface PickerSemanticClassNames extends Partial<Record<PickerSemanticName, string>> {
|
|
66
|
+
/** A string is the popup `root` class. */
|
|
67
|
+
popup?: string | Partial<Record<PickerPopupSemanticName, string>>;
|
|
68
|
+
}
|
|
69
|
+
export interface PickerSemanticStyles extends Partial<Record<PickerSemanticName, CSSProperties>> {
|
|
70
|
+
popup?: Partial<Record<PickerPopupSemanticName, CSSProperties>>;
|
|
71
|
+
}
|
|
72
|
+
/** `classNames`: an object, or a function of `{ props }` returning one. */
|
|
73
|
+
export type PickerClassNames<P = any> = PickerSemanticClassNames | ((info: {
|
|
74
|
+
props: P;
|
|
75
|
+
}) => PickerSemanticClassNames);
|
|
76
|
+
/** `styles`: an object, or a function of `{ props }` returning one. */
|
|
77
|
+
export type PickerStyles<P = any> = PickerSemanticStyles | ((info: {
|
|
78
|
+
props: P;
|
|
79
|
+
}) => PickerSemanticStyles);
|
|
80
|
+
/** Props rc-picker owns internally or that lobe wires up itself. */
|
|
81
|
+
type InternalRcProps = 'classNames' | 'generateConfig' | 'inlinePopup' | 'locale' | 'prefixCls' | 'styles';
|
|
82
|
+
type MultipleRcProps = 'maxTagCount' | 'multiple' | 'removeIcon' | 'tagRender';
|
|
83
|
+
type ValueRcProps = 'changeOnBlur' | 'defaultValue' | 'onCalendarChange' | 'onChange' | 'onOk' | 'placeholder' | 'placement' | 'size' | 'value';
|
|
84
|
+
interface LobePickerProps {
|
|
85
|
+
/**
|
|
86
|
+
* @deprecated Use `needConfirm={false}` instead: the value is committed when the popup
|
|
87
|
+
* closes, without the OK button. Ignored when `needConfirm` is set.
|
|
88
|
+
*/
|
|
89
|
+
changeOnBlur?: boolean;
|
|
90
|
+
/** @deprecated Use `classNames.popup.root` instead. */
|
|
91
|
+
dropdownClassName?: string;
|
|
92
|
+
/**
|
|
93
|
+
* Popup position relative to the input.
|
|
94
|
+
* @default 'bottomLeft' ('bottomRight' when `direction="rtl"`)
|
|
95
|
+
*/
|
|
96
|
+
placement?: PickerPlacement;
|
|
97
|
+
/** @deprecated Use `classNames.popup.root` instead. */
|
|
98
|
+
popupClassName?: string;
|
|
99
|
+
/** @deprecated Use `styles.popup.root` instead. */
|
|
100
|
+
popupStyle?: CSSProperties;
|
|
101
|
+
/** Lobe look: drop shadow under the input box. */
|
|
13
102
|
shadow?: boolean;
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
103
|
+
/** @default 'medium' */
|
|
104
|
+
size?: PickerSize;
|
|
105
|
+
status?: PickerStatus;
|
|
106
|
+
/** @default 'outlined' (light) / 'filled' (dark) */
|
|
107
|
+
variant?: PickerVariant;
|
|
108
|
+
}
|
|
109
|
+
/** Props `tagRender` receives for each picked date in `multiple` mode. */
|
|
110
|
+
export interface PickerTagProps<DateType extends object = Date> {
|
|
111
|
+
closable: boolean;
|
|
112
|
+
disabled: boolean;
|
|
113
|
+
/** The date formatted with `format`. */
|
|
114
|
+
label: ReactNode;
|
|
115
|
+
/** Removes the date from the value. */
|
|
116
|
+
onClose: (event?: MouseEvent<HTMLElement>) => void;
|
|
117
|
+
value: DateType;
|
|
118
|
+
}
|
|
119
|
+
/** `dateString` of a value: a string per date in `multiple` mode. */
|
|
120
|
+
export type PickerDateStrings<ValueType> = ValueType extends readonly unknown[] ? string[] : string | null;
|
|
121
|
+
/**
|
|
122
|
+
* Date inputs the previous lobe DatePicker took (native `Date`), plus date strings and
|
|
123
|
+
* timestamps. On the dayjs pickers they are converted to `Dayjs`; callbacks always get `Dayjs`.
|
|
124
|
+
*/
|
|
125
|
+
export type LegacyDateInput = Date | string | number;
|
|
126
|
+
/** A date prop value: `Dayjs` or a `LegacyDateInput` on the dayjs pickers, else `DateType`. */
|
|
127
|
+
export type PickerDateInput<DateType> = DateType extends Dayjs ? Dayjs | LegacyDateInput : DateType extends Date ? Dayjs | LegacyDateInput : DateType;
|
|
128
|
+
/** Range `onChange` dates: never `null` on the default (native `Date`) picker, as before. */
|
|
129
|
+
export type RangeChangeDates<DateType extends object> = DateType extends Date ? DateRangeValue<DateType> : DateRangeValue<DateType> | null;
|
|
130
|
+
export type RangeChangeStrings<DateType extends object> = DateType extends Date ? [string, string] : [string, string] | null;
|
|
131
|
+
/** `PickerDateInput` for a single value or each date of a `multiple` array. */
|
|
132
|
+
export type PickerValueInput<ValueType> = ValueType extends readonly (infer D)[] ? PickerDateInput<D>[] : PickerDateInput<ValueType>;
|
|
133
|
+
/**
|
|
134
|
+
* antd's `PickerPropsWithMultiple`: `InnerPickerProps` with the value props typed by
|
|
135
|
+
* `ValueType` — `DateType` for one date, `DateType[]` with `multiple`.
|
|
136
|
+
*/
|
|
137
|
+
export type PickerPropsWithMultiple<DateType, InnerPickerProps, ValueType = DateType> = Omit<InnerPickerProps, 'defaultValue' | 'onCalendarChange' | 'onChange' | 'onOk' | 'value'> & {
|
|
138
|
+
/** Also takes a native `Date`, date string or timestamp (converted to `Dayjs`). */
|
|
139
|
+
defaultValue?: PickerValueInput<ValueType> | null;
|
|
140
|
+
onCalendarChange?(date: ValueType | null, dateString: PickerDateStrings<ValueType>, info: BaseInfo): void;
|
|
141
|
+
/** Cleared: `null` for one date, `[]` with `multiple`. */
|
|
142
|
+
onChange?(date: ValueType | null, dateString: PickerDateStrings<ValueType>): void;
|
|
143
|
+
onOk?(date?: ValueType | null): void;
|
|
144
|
+
/** Also takes a native `Date`, date string or timestamp (converted to `Dayjs`). */
|
|
145
|
+
value?: PickerValueInput<ValueType> | null;
|
|
146
|
+
};
|
|
147
|
+
/**
|
|
148
|
+
* DatePicker props other than the value ones, which `PickerPropsWithMultiple` adds.
|
|
149
|
+
* `DateType` is the date library's type (`Dayjs`, or another one with `generatePicker`).
|
|
150
|
+
*/
|
|
151
|
+
export interface DatePickerBaseProps<DateType extends object = Date> extends Omit<PickerProps$1<DateType>, InternalRcProps | MultipleRcProps | ValueRcProps>, LobePickerProps {
|
|
152
|
+
/** Semantic DOM class names: `root` / `prefix` / `input` / `suffix` and `popup.*`. */
|
|
153
|
+
classNames?: PickerClassNames<DatePickerBaseProps<DateType>>;
|
|
154
|
+
/**
|
|
155
|
+
* antd `PickerLocale`: `lang` texts and formats (`fieldDateFormat`, `yearFormat`,
|
|
156
|
+
* `shortWeekDays`, …) and `timePickerLocale`. Defaults to the locale generated from the
|
|
157
|
+
* `@lobehub/ui/i18n` resources in context.
|
|
158
|
+
*/
|
|
159
|
+
locale?: PickerLocaleInput;
|
|
160
|
+
/**
|
|
161
|
+
* `multiple`: at most this many tags; `'responsive'` fits as many as the width allows.
|
|
162
|
+
* The rest collapse into a `+ N ...` tag.
|
|
163
|
+
*/
|
|
164
|
+
maxTagCount?: number | 'responsive';
|
|
165
|
+
/**
|
|
166
|
+
* Pick several dates, shown as tags; clicking a picked cell again removes it. Works on
|
|
167
|
+
* every `picker` except with `showTime`. Values are `Dayjs[]`, sorted unless
|
|
168
|
+
* `order={false}`. No OK button (`needConfirm` defaults to `false`): `onCalendarChange`
|
|
169
|
+
* fires on each click and `onChange` once the popup closes.
|
|
170
|
+
*/
|
|
171
|
+
multiple?: boolean;
|
|
172
|
+
/**
|
|
173
|
+
* `multiple`: sort the picked dates; `false` keeps them in picking order.
|
|
174
|
+
* @default true
|
|
175
|
+
*/
|
|
176
|
+
order?: boolean;
|
|
23
177
|
placeholder?: string;
|
|
24
|
-
|
|
178
|
+
ref?: Ref<PickerRef>;
|
|
179
|
+
/** `multiple`: the remove icon of each tag. */
|
|
180
|
+
removeIcon?: ReactNode;
|
|
181
|
+
/** Semantic DOM styles: `root` / `prefix` / `input` / `suffix` and `popup.*`. */
|
|
182
|
+
styles?: PickerStyles<DatePickerBaseProps<DateType>>;
|
|
183
|
+
/** `multiple`: render each picked date's tag, e.g. with base-ui `Tag`. */
|
|
184
|
+
tagRender?: (props: PickerTagProps<DateType>) => ReactNode;
|
|
185
|
+
}
|
|
186
|
+
/**
|
|
187
|
+
* `ValueType` is `Dayjs` (default) or `Dayjs[]` with `multiple`; `<DatePicker multiple>`
|
|
188
|
+
* infers `Dayjs[]` by itself.
|
|
189
|
+
*/
|
|
190
|
+
export type DatePickerProps<ValueType = Date> = PickerPropsWithMultiple<Date, DatePickerBaseProps, ValueType>;
|
|
191
|
+
export type DateRangeValue<DateType extends object = Date> = [DateType | null, DateType | null];
|
|
192
|
+
/** Which end of a range an event belongs to. */
|
|
193
|
+
export interface RangeInfo {
|
|
194
|
+
range: 'start' | 'end';
|
|
25
195
|
}
|
|
26
|
-
|
|
27
|
-
export
|
|
28
|
-
|
|
29
|
-
|
|
196
|
+
/** `info.from` is the end picked first in the current range selection. */
|
|
197
|
+
export type RangeDisabledDate<DateType extends object = Date> = (current: DateType, info: {
|
|
198
|
+
from?: DateType;
|
|
199
|
+
type: PanelMode;
|
|
200
|
+
}) => boolean;
|
|
201
|
+
type RangeRcProps = 'allowEmpty' | 'disabled' | 'disabledDate' | 'id' | 'onBlur' | 'onFocus' | 'order';
|
|
202
|
+
export interface DateRangePickerProps<DateType extends object = Date> extends Omit<RangePickerProps$1<DateType>, InternalRcProps | RangeRcProps | ValueRcProps>, LobePickerProps {
|
|
203
|
+
/**
|
|
204
|
+
* Allow leaving the start / end empty; `true` applies to both ends.
|
|
205
|
+
* @default [false, false]
|
|
206
|
+
*/
|
|
207
|
+
allowEmpty?: boolean | [boolean, boolean];
|
|
208
|
+
/** Semantic DOM class names, see `DatePickerProps['classNames']`. */
|
|
209
|
+
classNames?: PickerClassNames<DateRangePickerProps<DateType>>;
|
|
210
|
+
/** Each end also takes a native `Date`, date string or timestamp (converted to `Dayjs`). */
|
|
211
|
+
defaultValue?: [PickerDateInput<DateType> | null | undefined, PickerDateInput<DateType> | null | undefined];
|
|
212
|
+
/** Disable the whole picker, or each end separately with `[start, end]`. */
|
|
213
|
+
disabled?: boolean | [boolean, boolean];
|
|
214
|
+
/** Receives `info.from` once one end is picked, e.g. to limit the range length. */
|
|
215
|
+
disabledDate?: RangeDisabledDate<DateType>;
|
|
216
|
+
/** Ids of the start and end inputs. */
|
|
217
|
+
id?: {
|
|
218
|
+
end?: string;
|
|
219
|
+
start?: string;
|
|
220
|
+
};
|
|
221
|
+
/** antd `PickerLocale`, see `DatePickerProps['locale']`. */
|
|
222
|
+
locale?: PickerLocaleInput;
|
|
223
|
+
onBlur?: (event: FocusEvent<HTMLElement>, info: RangeInfo) => void;
|
|
224
|
+
onCalendarChange?(dates: DateRangeValue<DateType>, dateStrings: [string, string], info: RangeInfo): void;
|
|
225
|
+
/** Cleared: `null` (antd). */
|
|
226
|
+
/** Cleared: `[null, null]` on the default (native `Date`) picker, `null` on the dayjs one (antd). */
|
|
227
|
+
onChange?(dates: RangeChangeDates<DateType>, dateStrings: RangeChangeStrings<DateType>): void;
|
|
228
|
+
onFocus?: (event: FocusEvent<HTMLElement>, info: RangeInfo) => void;
|
|
229
|
+
onOk?(dates: DateRangeValue<DateType>): void;
|
|
230
|
+
/**
|
|
231
|
+
* Swap the ends when the end is earlier than the start; `false` keeps them as entered.
|
|
232
|
+
* @default true
|
|
233
|
+
*/
|
|
234
|
+
order?: boolean;
|
|
30
235
|
placeholder?: [string, string];
|
|
31
|
-
|
|
236
|
+
/** `focus(index)` / `focus({ index })` focuses the start (`0`) or end (`1`) input. */
|
|
237
|
+
ref?: Ref<RangePickerRef>;
|
|
238
|
+
/** Semantic DOM styles, see `DatePickerProps['styles']`. */
|
|
239
|
+
styles?: PickerStyles<DateRangePickerProps<DateType>>;
|
|
240
|
+
/** Each end also takes a native `Date`, date string or timestamp (converted to `Dayjs`). */
|
|
241
|
+
value?: [PickerDateInput<DateType> | null | undefined, PickerDateInput<DateType> | null | undefined] | null;
|
|
242
|
+
}
|
|
243
|
+
/** antd `PickerProps<DateType>`: DatePicker props over any date library's type. */
|
|
244
|
+
export type PickerProps<DateType extends object = Date, ValueType = DateType> = PickerPropsWithMultiple<DateType, DatePickerBaseProps<DateType>, ValueType>;
|
|
245
|
+
/** Props of `DatePicker.WeekPicker` / `MonthPicker` / … : `picker` is fixed. */
|
|
246
|
+
export type PresetPickerProps<DateType extends object = Date, ValueType = DateType> = Omit<PickerProps<DateType, ValueType>, 'picker'>;
|
|
247
|
+
export type WeekPickerProps<ValueType = Date> = PresetPickerProps<Date, ValueType>;
|
|
248
|
+
export type MonthPickerProps<ValueType = Date> = PresetPickerProps<Date, ValueType>;
|
|
249
|
+
export type YearPickerProps<ValueType = Date> = PresetPickerProps<Date, ValueType>;
|
|
250
|
+
export type QuarterPickerProps<ValueType = Date> = PresetPickerProps<Date, ValueType>;
|
|
251
|
+
/** antd `GenericTimePickerProps`: `DatePicker.TimePicker` has no `picker` / `showTime`. */
|
|
252
|
+
export type GenericTimePickerProps<DateType extends object = Date, ValueType = DateType> = Omit<PickerProps<DateType, ValueType>, 'picker' | 'showTime'>;
|
|
253
|
+
export type TimePickerProps<ValueType = Date> = GenericTimePickerProps<Date, ValueType>;
|
|
254
|
+
/** antd-style alias of `DateRangePickerProps`. */
|
|
255
|
+
export type RangePickerProps<DateType extends object = Date> = DateRangePickerProps<DateType>;
|
|
256
|
+
/** antd `DatePickerSemanticType`: the Semantic DOM `classNames` / `styles` shapes. */
|
|
257
|
+
export interface DatePickerSemanticType {
|
|
258
|
+
classNames?: PickerSemanticClassNames;
|
|
259
|
+
styles?: PickerSemanticStyles;
|
|
260
|
+
}
|
|
261
|
+
/**
|
|
262
|
+
* A single-date picker component: `multiple` (as `IsMultiple`) picks `DateType[]` values,
|
|
263
|
+
* otherwise `DateType`; a `value` / `defaultValue` infers `ValueType` directly.
|
|
264
|
+
*/
|
|
265
|
+
export interface SinglePickerComponent<DateType extends object, InnerProps = DatePickerBaseProps<DateType>> {
|
|
266
|
+
<IsMultiple extends boolean = false, ValueType = IsMultiple extends true ? DateType[] : DateType>(props: PickerPropsWithMultiple<DateType, InnerProps, ValueType> & {
|
|
267
|
+
multiple?: IsMultiple;
|
|
268
|
+
}): ReactNode;
|
|
269
|
+
displayName?: string;
|
|
270
|
+
}
|
|
271
|
+
export interface RangePickerComponent<DateType extends object> {
|
|
272
|
+
(props: DateRangePickerProps<DateType>): ReactNode;
|
|
273
|
+
displayName?: string;
|
|
274
|
+
}
|
|
275
|
+
/** What `generatePicker(generateConfig)` returns: DatePicker with its static pickers. */
|
|
276
|
+
export interface GeneratedDatePicker<DateType extends object> extends SinglePickerComponent<DateType> {
|
|
277
|
+
MonthPicker: SinglePickerComponent<DateType, Omit<DatePickerBaseProps<DateType>, 'picker'>>;
|
|
278
|
+
QuarterPicker: SinglePickerComponent<DateType, Omit<DatePickerBaseProps<DateType>, 'picker'>>;
|
|
279
|
+
RangePicker: RangePickerComponent<DateType>;
|
|
280
|
+
TimePicker: SinglePickerComponent<DateType, Omit<DatePickerBaseProps<DateType>, 'picker' | 'showTime'>>;
|
|
281
|
+
WeekPicker: SinglePickerComponent<DateType, Omit<DatePickerBaseProps<DateType>, 'picker'>>;
|
|
282
|
+
YearPicker: SinglePickerComponent<DateType, Omit<DatePickerBaseProps<DateType>, 'picker'>>;
|
|
283
|
+
}
|
|
284
|
+
/** The default `DatePicker` (native `Date`) or `DayjsDatePicker`, with antd's pure panels and `generatePicker`. */
|
|
285
|
+
export interface DatePickerType<D extends object = Date> extends GeneratedDatePicker<D> {
|
|
286
|
+
/** Debug only: the popup panel rendered inline, always open (antd `render-panel`). */
|
|
287
|
+
_InternalPanelDoNotUseOrYouWillBeFired: ComponentType<PickerPropsWithMultiple<D, DatePickerBaseProps<D>, any>>;
|
|
288
|
+
/** Debug only: the RangePicker popup panel rendered inline, always open. */
|
|
289
|
+
_InternalRangePanelDoNotUseOrYouWillBeFired: ComponentType<DateRangePickerProps<D>>;
|
|
290
|
+
generatePicker: <DateType extends object>(generateConfig: GenerateConfig<DateType>) => GeneratedDatePicker<DateType>;
|
|
32
291
|
}
|
|
292
|
+
/** `DayjsDatePicker`: the antd-aligned DatePicker over `Dayjs`. */
|
|
293
|
+
export type DayjsDatePickerType = DatePickerType<Dayjs>;
|
|
294
|
+
/** `DayjsDatePicker` props: values and callbacks use `Dayjs` (`Dayjs[]` with `multiple`). */
|
|
295
|
+
export type DayjsDatePickerProps<ValueType = Dayjs> = PickerPropsWithMultiple<Dayjs, DatePickerBaseProps<Dayjs>, ValueType>;
|
|
296
|
+
/** `DayjsDateRangePicker` props. */
|
|
297
|
+
export type DayjsDateRangePickerProps = DateRangePickerProps<Dayjs>;
|
|
298
|
+
/** `DayjsDateRangePicker` value: `[Dayjs | null, Dayjs | null]`. */
|
|
299
|
+
export type DayjsDateRangeValue = DateRangeValue<Dayjs>;
|
|
33
300
|
//#endregion
|
|
34
|
-
export type {
|
|
301
|
+
export type { CellRender, CellRenderInfo, GenerateConfig, PanelMode, PickerMode, PickerRef, RangePickerRef };
|
|
35
302
|
//# sourceMappingURL=type.d.mts.map
|
|
@@ -0,0 +1,230 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import generateConfig from "./generateConfig.mjs";
|
|
3
|
+
import { PREFIX_CLS } from "./style.mjs";
|
|
4
|
+
import { useCallback, useEffect, useId, useRef, useState } from "react";
|
|
5
|
+
import { Fragment as Fragment$1, jsx, jsxs } from "react/jsx-runtime";
|
|
6
|
+
//#region src/DatePicker/usePanelKeyboard.tsx
|
|
7
|
+
const isGridMode = (mode) => mode === "month" || mode === "quarter" || mode === "year" || mode === "decade";
|
|
8
|
+
/** Cell steps per panel: one cell (←/→), one row (↑/↓) and one page (PageUp/PageDown). */
|
|
9
|
+
const GRID = {
|
|
10
|
+
decade: {
|
|
11
|
+
col: 10,
|
|
12
|
+
page: 100,
|
|
13
|
+
row: 30,
|
|
14
|
+
unit: "year"
|
|
15
|
+
},
|
|
16
|
+
month: {
|
|
17
|
+
col: 1,
|
|
18
|
+
page: 12,
|
|
19
|
+
row: 3,
|
|
20
|
+
unit: "month"
|
|
21
|
+
},
|
|
22
|
+
quarter: {
|
|
23
|
+
col: 3,
|
|
24
|
+
page: 12,
|
|
25
|
+
row: 12,
|
|
26
|
+
unit: "month"
|
|
27
|
+
},
|
|
28
|
+
year: {
|
|
29
|
+
col: 1,
|
|
30
|
+
page: 10,
|
|
31
|
+
row: 3,
|
|
32
|
+
unit: "year"
|
|
33
|
+
}
|
|
34
|
+
};
|
|
35
|
+
const defaultConfig = generateConfig;
|
|
36
|
+
/** Months since year 0, to compare tiles by position. */
|
|
37
|
+
const monthIndex = (date, config) => config.getYear(date) * 12 + config.getMonth(date);
|
|
38
|
+
/** First cell of the page `date` is on: Jan / Q1 of its year, first year of its decade… */
|
|
39
|
+
const getPageStart = (date, mode, config = defaultConfig) => {
|
|
40
|
+
const year = config.getYear(date);
|
|
41
|
+
const startYear = mode === "year" ? Math.floor(year / 10) * 10 : mode === "decade" ? Math.floor(year / 100) * 100 : year;
|
|
42
|
+
const start = config.setDate(config.setMonth(config.setYear(date, startYear), 0), 1);
|
|
43
|
+
return config.setHour(config.setMinute(config.setSecond(config.setMillisecond(start, 0), 0), 0), 0);
|
|
44
|
+
};
|
|
45
|
+
const getPageEnd = (date, mode, config) => {
|
|
46
|
+
const start = getPageStart(date, mode, config);
|
|
47
|
+
if (mode === "month") return config.setMonth(start, 11);
|
|
48
|
+
if (mode === "quarter") return config.setMonth(start, 9);
|
|
49
|
+
return config.addYear(start, mode === "year" ? 9 : 90);
|
|
50
|
+
};
|
|
51
|
+
/** Whether `a` and `b` fall in the same tile of a `mode` panel. */
|
|
52
|
+
const isSameCell = (a, b, mode, config = defaultConfig) => {
|
|
53
|
+
const yearA = config.getYear(a);
|
|
54
|
+
const yearB = config.getYear(b);
|
|
55
|
+
if (mode === "decade") return Math.floor(yearA / 10) === Math.floor(yearB / 10);
|
|
56
|
+
if (mode === "year") return yearA === yearB;
|
|
57
|
+
if (mode === "quarter") return yearA === yearB && Math.floor(config.getMonth(a) / 3) === Math.floor(config.getMonth(b) / 3);
|
|
58
|
+
return yearA === yearB && config.getMonth(a) === config.getMonth(b);
|
|
59
|
+
};
|
|
60
|
+
/**
|
|
61
|
+
* Where `key` moves the active tile of a `mode` panel, or `undefined` for other keys.
|
|
62
|
+
* `rtl` mirrors ←/→.
|
|
63
|
+
*/
|
|
64
|
+
const moveGridCell = (date, key, mode, rtl = false, config = defaultConfig) => {
|
|
65
|
+
const { col, page, row, unit } = GRID[mode];
|
|
66
|
+
const add = (diff) => unit === "year" ? config.addYear(date, diff) : config.addMonth(date, diff);
|
|
67
|
+
switch (key) {
|
|
68
|
+
case "ArrowLeft": return add(rtl ? col : -col);
|
|
69
|
+
case "ArrowRight": return add(rtl ? -col : col);
|
|
70
|
+
case "ArrowUp": return add(-row);
|
|
71
|
+
case "ArrowDown": return add(row);
|
|
72
|
+
case "PageUp": return add(-page);
|
|
73
|
+
case "PageDown": return add(page);
|
|
74
|
+
case "Home": return getPageStart(date, mode, config);
|
|
75
|
+
case "End": return getPageEnd(date, mode, config);
|
|
76
|
+
}
|
|
77
|
+
};
|
|
78
|
+
const ACTIVE_CLS = `${PREFIX_CLS}-cell-keyboard-active`;
|
|
79
|
+
const toPair = (value) => Array.isArray(value) ? [value[0] ?? void 0, value[1] ?? void 0] : [value ?? void 0, void 0];
|
|
80
|
+
/** The selection the keys start from; with `multiple`, the last picked date. */
|
|
81
|
+
const toValuePair = (value, range) => !range && Array.isArray(value) ? toPair(value.at(-1)) : toPair(value);
|
|
82
|
+
/**
|
|
83
|
+
* lobe enhancement over rc-picker (ADR §8 step 6): arrow keys, PageUp / PageDown and
|
|
84
|
+
* Home / End move an active tile on the month, quarter, year and decade panels while
|
|
85
|
+
* focus stays in the input, and Enter picks it — as a click on that tile would.
|
|
86
|
+
*
|
|
87
|
+
* rc-picker has no grid navigation of its own, so this is layered on top: a capture
|
|
88
|
+
* listener reads the keys before rc-picker's input handlers, the active tile is marked
|
|
89
|
+
* through `cellRender`, and `pickerValue` is driven so the active tile stays on screen.
|
|
90
|
+
* The date and week panels keep the input's text-editing keys, as in antd.
|
|
91
|
+
*/
|
|
92
|
+
const usePanelKeyboard = ({ cellRender, dateRender, defaultOpen, defaultPickerValue, defaultValue, direction, generateConfig: config = defaultConfig, mode, monthCellRender, onChange, onFocus, onOpenChange, onPanelChange, onPickerValueChange, open, picker = "date", pickerValue, range, value }) => {
|
|
93
|
+
const scopeId = useId();
|
|
94
|
+
const scopeClassName = `${PREFIX_CLS}-kb-${scopeId.replaceAll(/[^\w-]/g, "")}`;
|
|
95
|
+
const [innerOpen, setInnerOpen] = useState(!!defaultOpen);
|
|
96
|
+
const mergedOpen = open ?? innerOpen;
|
|
97
|
+
const [activeIndex, setActiveIndex] = useState(0);
|
|
98
|
+
const [innerMode, setInnerMode] = useState(picker);
|
|
99
|
+
const [innerPickerValue, setInnerPickerValue] = useState([void 0, void 0]);
|
|
100
|
+
const [activeCell, setActiveCell] = useState();
|
|
101
|
+
const [innerValue, setInnerValue] = useState();
|
|
102
|
+
const panelMode = (Array.isArray(mode) ? mode[activeIndex] : mode) ?? innerMode;
|
|
103
|
+
const resetKey = `${mergedOpen}|${activeIndex}|${picker}`;
|
|
104
|
+
const [prevResetKey, setPrevResetKey] = useState(resetKey);
|
|
105
|
+
if (prevResetKey !== resetKey) {
|
|
106
|
+
setPrevResetKey(resetKey);
|
|
107
|
+
setInnerMode(picker);
|
|
108
|
+
setActiveCell(void 0);
|
|
109
|
+
}
|
|
110
|
+
const [prevPanelMode, setPrevPanelMode] = useState(panelMode);
|
|
111
|
+
if (prevPanelMode !== panelMode) {
|
|
112
|
+
setPrevPanelMode(panelMode);
|
|
113
|
+
setActiveCell(void 0);
|
|
114
|
+
}
|
|
115
|
+
const mergedPickerValue = pickerValue === void 0 ? innerPickerValue : toPair(pickerValue);
|
|
116
|
+
const state = {
|
|
117
|
+
activeCell,
|
|
118
|
+
activeIndex,
|
|
119
|
+
config,
|
|
120
|
+
defaultPickerValue: toPair(defaultPickerValue),
|
|
121
|
+
direction,
|
|
122
|
+
mergedPickerValue,
|
|
123
|
+
onPickerValueChange,
|
|
124
|
+
panelMode,
|
|
125
|
+
picker,
|
|
126
|
+
range,
|
|
127
|
+
value: value === void 0 ? innerValue ?? toValuePair(defaultValue, range) : toValuePair(value, range)
|
|
128
|
+
};
|
|
129
|
+
const stateRef = useRef(state);
|
|
130
|
+
stateRef.current = state;
|
|
131
|
+
const commitPickerValue = useCallback((next) => {
|
|
132
|
+
const { activeIndex, mergedPickerValue, onPickerValueChange, panelMode, range } = stateRef.current;
|
|
133
|
+
const nextPair = [...mergedPickerValue];
|
|
134
|
+
nextPair[activeIndex] = next;
|
|
135
|
+
setInnerPickerValue(nextPair);
|
|
136
|
+
if (range) onPickerValueChange?.(nextPair, {
|
|
137
|
+
mode: [panelMode, panelMode],
|
|
138
|
+
range: activeIndex === 1 ? "end" : "start",
|
|
139
|
+
source: "panel"
|
|
140
|
+
});
|
|
141
|
+
else onPickerValueChange?.(next, {
|
|
142
|
+
mode: panelMode,
|
|
143
|
+
source: "panel"
|
|
144
|
+
});
|
|
145
|
+
}, []);
|
|
146
|
+
useEffect(() => {
|
|
147
|
+
if (!mergedOpen) return;
|
|
148
|
+
const onKeyDown = (event) => {
|
|
149
|
+
const { activeCell, activeIndex, config, defaultPickerValue, direction, mergedPickerValue, panelMode, picker, range, value } = stateRef.current;
|
|
150
|
+
if (!isGridMode(panelMode) || event.altKey || event.ctrlKey || event.metaKey) return;
|
|
151
|
+
if (!(event.target instanceof Element) || !event.target.closest(`.${scopeClassName}`)) return;
|
|
152
|
+
if (event.key === "Enter") {
|
|
153
|
+
if (!activeCell) return;
|
|
154
|
+
const cells = [...document.querySelectorAll(`.${scopeClassName} .${ACTIVE_CLS}`)].map((node) => node.closest("td")).filter((node) => !!node);
|
|
155
|
+
const cell = cells.find((node) => node.classList.contains(`${PREFIX_CLS}-cell-in-view`));
|
|
156
|
+
event.preventDefault();
|
|
157
|
+
event.stopPropagation();
|
|
158
|
+
(cell ?? cells[0])?.click();
|
|
159
|
+
return;
|
|
160
|
+
}
|
|
161
|
+
const pageDate = mergedPickerValue[activeIndex] ?? defaultPickerValue[activeIndex] ?? value[activeIndex] ?? config.getNow();
|
|
162
|
+
const rtl = direction === "rtl";
|
|
163
|
+
const pages = range && panelMode === picker ? 2 : 1;
|
|
164
|
+
const pageIndex = (date) => monthIndex(getPageStart(date, panelMode, config), config);
|
|
165
|
+
const firstPage = pageIndex(pageDate);
|
|
166
|
+
const lastPage = pageIndex(moveGridCell(pageDate, "PageDown", panelMode, rtl, config));
|
|
167
|
+
const isVisible = (date) => {
|
|
168
|
+
const page = pageIndex(date);
|
|
169
|
+
return page === firstPage || pages === 2 && page === lastPage;
|
|
170
|
+
};
|
|
171
|
+
const selected = value[activeIndex];
|
|
172
|
+
const base = activeCell && isVisible(activeCell) ? activeCell : selected && isVisible(selected) ? selected : void 0;
|
|
173
|
+
const next = base ? moveGridCell(base, event.key, panelMode, rtl, config) : moveGridCell(pageDate, event.key, panelMode, rtl, config) && pageDate;
|
|
174
|
+
if (!next) return;
|
|
175
|
+
event.preventDefault();
|
|
176
|
+
event.stopPropagation();
|
|
177
|
+
setActiveCell(next);
|
|
178
|
+
if (pageIndex(next) < firstPage) commitPickerValue(next);
|
|
179
|
+
else if (!isVisible(next)) commitPickerValue(pages === 2 ? moveGridCell(next, "PageUp", panelMode, rtl, config) : next);
|
|
180
|
+
};
|
|
181
|
+
document.addEventListener("keydown", onKeyDown, true);
|
|
182
|
+
return () => document.removeEventListener("keydown", onKeyDown, true);
|
|
183
|
+
}, [
|
|
184
|
+
mergedOpen,
|
|
185
|
+
scopeClassName,
|
|
186
|
+
commitPickerValue
|
|
187
|
+
]);
|
|
188
|
+
const mergedCellRender = (current, info) => {
|
|
189
|
+
let node = info.originNode;
|
|
190
|
+
if (cellRender) node = cellRender(current, info);
|
|
191
|
+
else if (dateRender && info.type === "date") node = dateRender(current, info.today);
|
|
192
|
+
else if (monthCellRender && info.type === "month") node = monthCellRender(current, info.locale);
|
|
193
|
+
if (!activeCell || info.type !== panelMode || !isGridMode(info.type)) return node;
|
|
194
|
+
if (!isSameCell(current, activeCell, info.type, config)) return node;
|
|
195
|
+
return /* @__PURE__ */ jsxs(Fragment$1, { children: [node, /* @__PURE__ */ jsx("span", {
|
|
196
|
+
"aria-hidden": true,
|
|
197
|
+
className: ACTIVE_CLS
|
|
198
|
+
})] });
|
|
199
|
+
};
|
|
200
|
+
return {
|
|
201
|
+
cellRender: mergedCellRender,
|
|
202
|
+
onChange: (date, dateString) => {
|
|
203
|
+
setInnerValue(toValuePair(date, range));
|
|
204
|
+
onChange?.(date, dateString);
|
|
205
|
+
},
|
|
206
|
+
onFocus: (event, info) => {
|
|
207
|
+
if (range && info?.range) setActiveIndex(info.range === "end" ? 1 : 0);
|
|
208
|
+
onFocus?.(event, info);
|
|
209
|
+
},
|
|
210
|
+
onOpenChange: (next) => {
|
|
211
|
+
setInnerOpen(next);
|
|
212
|
+
onOpenChange?.(next);
|
|
213
|
+
},
|
|
214
|
+
onPanelChange: (date, nextMode) => {
|
|
215
|
+
setInnerMode(Array.isArray(nextMode) ? nextMode[stateRef.current.activeIndex] : nextMode);
|
|
216
|
+
onPanelChange?.(date, nextMode);
|
|
217
|
+
},
|
|
218
|
+
onPickerValueChange: (date, info) => {
|
|
219
|
+
setInnerPickerValue(toPair(date));
|
|
220
|
+
onPickerValueChange?.(date, info);
|
|
221
|
+
},
|
|
222
|
+
/** Controlled once known, so a key can move the visible page. */
|
|
223
|
+
pickerValue: pickerValue !== void 0 || innerPickerValue.some(Boolean) ? range ? mergedPickerValue : mergedPickerValue[0] : void 0,
|
|
224
|
+
scopeClassName
|
|
225
|
+
};
|
|
226
|
+
};
|
|
227
|
+
//#endregion
|
|
228
|
+
export { getPageStart, isSameCell, moveGridCell, usePanelKeyboard };
|
|
229
|
+
|
|
230
|
+
//# sourceMappingURL=usePanelKeyboard.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"usePanelKeyboard.mjs","names":["dayjsGenerateConfig"],"sources":["../../src/DatePicker/usePanelKeyboard.tsx"],"sourcesContent":["'use client';\n\nimport { useCallback, useEffect, useId, useRef, useState } from 'react';\n\nimport type { GenerateConfig } from './core/generate';\nimport type { CellRender, PanelMode, PickerMode } from './core/interface';\nimport dayjsGenerateConfig from './generateConfig';\nimport { PREFIX_CLS } from './style';\n\n/** Panels with a fixed grid of month / quarter / year / decade tiles. */\nexport type GridPanelMode = 'decade' | 'month' | 'quarter' | 'year';\n\nconst isGridMode = (mode?: PanelMode): mode is GridPanelMode =>\n mode === 'month' || mode === 'quarter' || mode === 'year' || mode === 'decade';\n\n/** Cell steps per panel: one cell (←/→), one row (↑/↓) and one page (PageUp/PageDown). */\nconst GRID: Record<\n GridPanelMode,\n { col: number; page: number; row: number; unit: 'month' | 'year' }\n> = {\n decade: { col: 10, page: 100, row: 30, unit: 'year' },\n month: { col: 1, page: 12, row: 3, unit: 'month' },\n quarter: { col: 3, page: 12, row: 12, unit: 'month' },\n year: { col: 1, page: 10, row: 3, unit: 'year' },\n};\n\n// Date math goes through rc-picker's `generateConfig`, so `generatePicker` works with any\n// date library; the default is the Dayjs one.\nconst defaultConfig = dayjsGenerateConfig as GenerateConfig<any>;\n\n/** Months since year 0, to compare tiles by position. */\nconst monthIndex = <D,>(date: D, config: GenerateConfig<D>) =>\n config.getYear(date) * 12 + config.getMonth(date);\n\n/** First cell of the page `date` is on: Jan / Q1 of its year, first year of its decade… */\nexport const getPageStart = <D,>(\n date: D,\n mode: GridPanelMode,\n config: GenerateConfig<D> = defaultConfig,\n) => {\n const year = config.getYear(date);\n const startYear =\n mode === 'year'\n ? Math.floor(year / 10) * 10\n : mode === 'decade'\n ? Math.floor(year / 100) * 100\n : year;\n const start = config.setDate(config.setMonth(config.setYear(date, startYear), 0), 1);\n return config.setHour(\n config.setMinute(config.setSecond(config.setMillisecond(start, 0), 0), 0),\n 0,\n );\n};\n\nconst getPageEnd = <D,>(date: D, mode: GridPanelMode, config: GenerateConfig<D>) => {\n const start = getPageStart(date, mode, config);\n if (mode === 'month') return config.setMonth(start, 11);\n if (mode === 'quarter') return config.setMonth(start, 9);\n return config.addYear(start, mode === 'year' ? 9 : 90);\n};\n\n/** Whether `a` and `b` fall in the same tile of a `mode` panel. */\nexport const isSameCell = <D,>(\n a: D,\n b: D,\n mode: GridPanelMode,\n config: GenerateConfig<D> = defaultConfig,\n) => {\n const yearA = config.getYear(a);\n const yearB = config.getYear(b);\n if (mode === 'decade') return Math.floor(yearA / 10) === Math.floor(yearB / 10);\n if (mode === 'year') return yearA === yearB;\n if (mode === 'quarter') {\n return (\n yearA === yearB && Math.floor(config.getMonth(a) / 3) === Math.floor(config.getMonth(b) / 3)\n );\n }\n return yearA === yearB && config.getMonth(a) === config.getMonth(b);\n};\n\n/**\n * Where `key` moves the active tile of a `mode` panel, or `undefined` for other keys.\n * `rtl` mirrors ←/→.\n */\nexport const moveGridCell = <D,>(\n date: D,\n key: string,\n mode: GridPanelMode,\n rtl = false,\n config: GenerateConfig<D> = defaultConfig,\n) => {\n const { col, page, row, unit } = GRID[mode];\n const add = (diff: number) =>\n unit === 'year' ? config.addYear(date, diff) : config.addMonth(date, diff);\n switch (key) {\n case 'ArrowLeft': {\n return add(rtl ? col : -col);\n }\n case 'ArrowRight': {\n return add(rtl ? -col : col);\n }\n case 'ArrowUp': {\n return add(-row);\n }\n case 'ArrowDown': {\n return add(row);\n }\n case 'PageUp': {\n return add(-page);\n }\n case 'PageDown': {\n return add(page);\n }\n case 'Home': {\n return getPageStart(date, mode, config);\n }\n case 'End': {\n return getPageEnd(date, mode, config);\n }\n }\n};\n\nconst ACTIVE_CLS = `${PREFIX_CLS}-cell-keyboard-active`;\n\n/** A date of the picker's library (`Dayjs` by default). */\ntype DateValue = object;\ntype Pair = [DateValue | undefined, DateValue | undefined];\ntype MaybePair<T> = T | [T, T] | null | undefined;\n\nconst toPair = (value: MaybePair<DateValue | null | undefined>): Pair =>\n Array.isArray(value)\n ? [value[0] ?? undefined, value[1] ?? undefined]\n : [value ?? undefined, undefined];\n\n/** The selection the keys start from; with `multiple`, the last picked date. */\nconst toValuePair = (\n value: MaybePair<DateValue | null | undefined> | DateValue[],\n range?: boolean,\n) =>\n !range && Array.isArray(value) ? toPair(value.at(-1)) : toPair(value as MaybePair<DateValue>);\n\nexport interface PanelKeyboardOptions {\n cellRender?: CellRender<any>;\n dateRender?: (currentDate: any, today: any) => React.ReactNode;\n defaultOpen?: boolean;\n defaultPickerValue?: MaybePair<DateValue | null | undefined>;\n /** An array with DatePicker `multiple`. */\n defaultValue?: MaybePair<DateValue | null | undefined> | DateValue[];\n direction?: 'ltr' | 'rtl';\n generateConfig?: GenerateConfig<any>;\n mode?: MaybePair<PanelMode>;\n monthCellRender?: (currentDate: any, locale: any) => React.ReactNode;\n onChange?: (...args: any[]) => void;\n onFocus?: (...args: any[]) => void;\n onOpenChange?: (open: boolean) => void;\n onPanelChange?: (...args: any[]) => void;\n onPickerValueChange?: (...args: any[]) => void;\n open?: boolean;\n picker?: PickerMode;\n pickerValue?: MaybePair<DateValue | null | undefined>;\n /** RangePicker: values, panel modes and picker values are `[start, end]` tuples. */\n range?: boolean;\n value?: MaybePair<DateValue | null | undefined> | DateValue[];\n}\n\n/**\n * lobe enhancement over rc-picker (ADR §8 step 6): arrow keys, PageUp / PageDown and\n * Home / End move an active tile on the month, quarter, year and decade panels while\n * focus stays in the input, and Enter picks it — as a click on that tile would.\n *\n * rc-picker has no grid navigation of its own, so this is layered on top: a capture\n * listener reads the keys before rc-picker's input handlers, the active tile is marked\n * through `cellRender`, and `pickerValue` is driven so the active tile stays on screen.\n * The date and week panels keep the input's text-editing keys, as in antd.\n */\nexport const usePanelKeyboard = ({\n cellRender,\n dateRender,\n defaultOpen,\n defaultPickerValue,\n defaultValue,\n direction,\n generateConfig: config = defaultConfig,\n mode,\n monthCellRender,\n onChange,\n onFocus,\n onOpenChange,\n onPanelChange,\n onPickerValueChange,\n open,\n picker = 'date',\n pickerValue,\n range,\n value,\n}: PanelKeyboardOptions) => {\n const scopeId = useId();\n const scopeClassName = `${PREFIX_CLS}-kb-${scopeId.replaceAll(/[^\\w-]/g, '')}`;\n\n const [innerOpen, setInnerOpen] = useState(!!defaultOpen);\n const mergedOpen = open ?? innerOpen;\n const [activeIndex, setActiveIndex] = useState<0 | 1>(0);\n const [innerMode, setInnerMode] = useState<PanelMode>(picker);\n const [innerPickerValue, setInnerPickerValue] = useState<Pair>([undefined, undefined]);\n const [activeCell, setActiveCell] = useState<DateValue>();\n // Uncontrolled: the last committed value, so the first key starts from it.\n const [innerValue, setInnerValue] = useState<Pair>();\n\n const controlledMode = Array.isArray(mode) ? mode[activeIndex] : mode;\n const panelMode = controlledMode ?? innerMode;\n\n // rc-picker resets the panel to `picker` on every opening and field switch; a new\n // panel starts without a highlighted tile.\n const resetKey = `${mergedOpen}|${activeIndex}|${picker}`;\n const [prevResetKey, setPrevResetKey] = useState(resetKey);\n if (prevResetKey !== resetKey) {\n setPrevResetKey(resetKey);\n setInnerMode(picker);\n setActiveCell(undefined);\n }\n const [prevPanelMode, setPrevPanelMode] = useState(panelMode);\n if (prevPanelMode !== panelMode) {\n setPrevPanelMode(panelMode);\n setActiveCell(undefined);\n }\n\n const mergedPickerValue: Pair =\n pickerValue === undefined ? innerPickerValue : toPair(pickerValue);\n\n const state = {\n activeCell,\n activeIndex,\n config,\n defaultPickerValue: toPair(defaultPickerValue),\n direction,\n mergedPickerValue,\n onPickerValueChange,\n panelMode,\n picker,\n range,\n value:\n value === undefined\n ? (innerValue ?? toValuePair(defaultValue, range))\n : toValuePair(value, range),\n };\n const stateRef = useRef(state);\n stateRef.current = state;\n\n const commitPickerValue = useCallback((next: DateValue) => {\n const { activeIndex, mergedPickerValue, onPickerValueChange, panelMode, range } =\n stateRef.current;\n const nextPair: Pair = [...mergedPickerValue];\n nextPair[activeIndex] = next;\n setInnerPickerValue(nextPair);\n if (range) {\n onPickerValueChange?.(nextPair, {\n mode: [panelMode, panelMode],\n range: activeIndex === 1 ? 'end' : 'start',\n source: 'panel',\n });\n } else {\n onPickerValueChange?.(next, { mode: panelMode, source: 'panel' });\n }\n }, []);\n\n useEffect(() => {\n if (!mergedOpen) return;\n\n const onKeyDown = (event: KeyboardEvent) => {\n const {\n activeCell,\n activeIndex,\n config,\n defaultPickerValue,\n direction,\n mergedPickerValue,\n panelMode,\n picker,\n range,\n value,\n } = stateRef.current;\n if (!isGridMode(panelMode) || event.altKey || event.ctrlKey || event.metaKey) return;\n if (!(event.target instanceof Element) || !event.target.closest(`.${scopeClassName}`)) return;\n\n if (event.key === 'Enter') {\n if (!activeCell) return;\n const cells = [...document.querySelectorAll(`.${scopeClassName} .${ACTIVE_CLS}`)]\n .map((node) => node.closest('td'))\n .filter((node): node is HTMLTableCellElement => !!node);\n const cell = cells.find((node) => node.classList.contains(`${PREFIX_CLS}-cell-in-view`));\n event.preventDefault();\n event.stopPropagation();\n (cell ?? cells[0])?.click();\n return;\n }\n\n // Until rc-picker reports a change, its panel date is the same fallback chain.\n const pageDate =\n mergedPickerValue[activeIndex] ??\n defaultPickerValue[activeIndex] ??\n value[activeIndex] ??\n config.getNow();\n const rtl = direction === 'rtl';\n // Two side-by-side pages on a RangePicker showing its own `picker` panel.\n const pages = range && panelMode === picker ? 2 : 1;\n const pageIndex = (date: DateValue) =>\n monthIndex(getPageStart(date, panelMode, config), config);\n const firstPage = pageIndex(pageDate);\n const lastPage = pageIndex(moveGridCell(pageDate, 'PageDown', panelMode, rtl, config)!);\n const isVisible = (date: DateValue) => {\n const page = pageIndex(date);\n return page === firstPage || (pages === 2 && page === lastPage);\n };\n\n // The first key starts from the selected tile when on screen, otherwise from the page.\n const selected = value[activeIndex];\n const base =\n activeCell && isVisible(activeCell)\n ? activeCell\n : selected && isVisible(selected)\n ? selected\n : undefined;\n const next = base\n ? moveGridCell(base, event.key, panelMode, rtl, config)\n : moveGridCell(pageDate, event.key, panelMode, rtl, config) && pageDate;\n if (!next) return;\n\n event.preventDefault();\n event.stopPropagation();\n setActiveCell(next);\n\n if (pageIndex(next) < firstPage) {\n commitPickerValue(next);\n } else if (!isVisible(next)) {\n commitPickerValue(\n pages === 2 ? moveGridCell(next, 'PageUp', panelMode, rtl, config)! : next,\n );\n }\n };\n\n document.addEventListener('keydown', onKeyDown, true);\n return () => document.removeEventListener('keydown', onKeyDown, true);\n }, [mergedOpen, scopeClassName, commitPickerValue]);\n\n const mergedCellRender: CellRender<any> = (current, info) => {\n let node: React.ReactNode = info.originNode;\n if (cellRender) node = cellRender(current, info);\n // rc-picker's legacy aliases: only date / month cells, which always get a date.\n else if (dateRender && info.type === 'date') node = dateRender(current, info.today);\n else if (monthCellRender && info.type === 'month') {\n node = monthCellRender(current, info.locale);\n }\n\n if (!activeCell || info.type !== panelMode || !isGridMode(info.type)) return node;\n if (!isSameCell(current as DateValue, activeCell, info.type, config)) return node;\n return (\n <>\n {node}\n <span aria-hidden className={ACTIVE_CLS} />\n </>\n );\n };\n\n const hasPickerValue = pickerValue !== undefined || innerPickerValue.some(Boolean);\n\n return {\n cellRender: mergedCellRender,\n onChange: (date: any, dateString: any) => {\n setInnerValue(toValuePair(date, range));\n onChange?.(date, dateString);\n },\n onFocus: (event: any, info?: { range?: 'end' | 'start' }) => {\n if (range && info?.range) setActiveIndex(info.range === 'end' ? 1 : 0);\n onFocus?.(event, info);\n },\n onOpenChange: (next: boolean) => {\n setInnerOpen(next);\n onOpenChange?.(next);\n },\n onPanelChange: (date: any, nextMode: any) => {\n setInnerMode(Array.isArray(nextMode) ? nextMode[stateRef.current.activeIndex] : nextMode);\n onPanelChange?.(date, nextMode);\n },\n onPickerValueChange: (date: any, info: any) => {\n setInnerPickerValue(toPair(date));\n onPickerValueChange?.(date, info);\n },\n /** Controlled once known, so a key can move the visible page. */\n pickerValue: hasPickerValue\n ? range\n ? (mergedPickerValue as any)\n : mergedPickerValue[0]\n : undefined,\n scopeClassName,\n };\n};\n"],"mappings":"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"}
|