@lobehub/ui 6.0.0-beta.1 → 6.0.0-beta.11
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 +6 -4
- 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 +6 -6
- 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/Form.mjs +6 -2
- package/es/Form/Form.mjs.map +1 -1
- package/es/Form/style.mjs +3 -3
- package/es/Form/style.mjs.map +1 -1
- package/es/Form/type.d.mts +8 -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 +134 -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 +287 -0
- package/es/ProTable/style.mjs.map +1 -0
- package/es/ProTable/type.d.mts +400 -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 +9 -2
- package/es/Switch/Switch.mjs.map +1 -1
- package/es/Switch/atoms.d.mts +8 -1
- package/es/Switch/atoms.mjs +23 -7
- package/es/Switch/atoms.mjs.map +1 -1
- package/es/Switch/style.mjs +33 -2
- package/es/Switch/style.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 +158 -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 +122 -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 +179 -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/Tabs/style.d.mts +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 +1 -0
- 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/index.d.mts +2 -1
- package/es/color/index.mjs +2 -1
- package/es/color/status/error.mjs +67 -0
- package/es/color/status/error.mjs.map +1 -0
- package/es/color/status/index.d.mts +11 -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 +21 -8
- package/es/index.mjs +18 -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 +3643 -996
- package/es/styles/createGlobalStyle.d.mts +1 -0
- package/es/styles/createGlobalStyle.mjs +1 -1
- package/es/styles/index.d.mts +4 -2
- package/es/styles/index.mjs +6 -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 +12 -7
- package/es/styles/theme/createLobeToken.mjs +3 -2
- package/es/styles/theme/createLobeToken.mjs.map +1 -1
- package/es/styles/theme/customPalette.d.mts +6 -0
- package/es/styles/theme/customPalette.mjs +28 -0
- package/es/styles/theme/customPalette.mjs.map +1 -0
- package/es/styles/theme/customPrimary.d.mts +7 -0
- package/es/styles/theme/customPrimary.mjs +101 -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 +9 -5
- package/es/styles/theme/scope.mjs +73 -18
- package/es/styles/theme/scope.mjs.map +1 -1
- package/es/styles/theme/themeCss.d.mts +3 -0
- package/es/styles/theme/themeCss.mjs +39 -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
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
import { useCallback, useEffect, useRef, useState } from "react";
|
|
2
|
+
//#region src/ProTable/hooks/useFetchData.ts
|
|
3
|
+
const useFetchData = (options) => {
|
|
4
|
+
const [data, setData] = useState(options.defaultData ?? []);
|
|
5
|
+
const [loading, setLoading] = useState(false);
|
|
6
|
+
const latest = useRef(options);
|
|
7
|
+
latest.current = options;
|
|
8
|
+
const requestId = useRef(0);
|
|
9
|
+
const [enabled, setEnabled] = useState(!options.manual);
|
|
10
|
+
const [token, setToken] = useState(0);
|
|
11
|
+
const pending = useRef([]);
|
|
12
|
+
const updateLoading = (next) => {
|
|
13
|
+
setLoading(next);
|
|
14
|
+
latest.current.onLoadingChange?.(next);
|
|
15
|
+
};
|
|
16
|
+
const run = useCallback(async () => {
|
|
17
|
+
const opts = latest.current;
|
|
18
|
+
if (!opts.request) return;
|
|
19
|
+
const id = ++requestId.current;
|
|
20
|
+
updateLoading(true);
|
|
21
|
+
try {
|
|
22
|
+
const params = { ...opts.getParams() };
|
|
23
|
+
if (opts.paginated) {
|
|
24
|
+
params.current = opts.pageInfo.current;
|
|
25
|
+
params.pageSize = opts.pageInfo.pageSize;
|
|
26
|
+
}
|
|
27
|
+
const response = await opts.request(params, opts.sort, opts.filter) ?? { data: [] };
|
|
28
|
+
if (id !== requestId.current) return;
|
|
29
|
+
if (response.success === false) return;
|
|
30
|
+
const raw = response.data ?? [];
|
|
31
|
+
const next = opts.postData ? opts.postData(raw) : raw;
|
|
32
|
+
setData(next);
|
|
33
|
+
opts.setTotal(response.total ?? next.length);
|
|
34
|
+
opts.onLoad?.(next);
|
|
35
|
+
opts.onDataSourceChange?.(next);
|
|
36
|
+
} catch (error) {
|
|
37
|
+
if (id !== requestId.current) return;
|
|
38
|
+
if (opts.onRequestError) opts.onRequestError(error);
|
|
39
|
+
else console.error(error);
|
|
40
|
+
} finally {
|
|
41
|
+
if (id === requestId.current) updateLoading(false);
|
|
42
|
+
const resolvers = pending.current;
|
|
43
|
+
pending.current = [];
|
|
44
|
+
resolvers.forEach((resolve) => resolve());
|
|
45
|
+
}
|
|
46
|
+
}, []);
|
|
47
|
+
const { current, pageSize } = options.pageInfo;
|
|
48
|
+
useEffect(() => {
|
|
49
|
+
if (!enabled || !latest.current.request) return;
|
|
50
|
+
const delay = latest.current.debounceTime;
|
|
51
|
+
if (delay <= 0) {
|
|
52
|
+
run();
|
|
53
|
+
return;
|
|
54
|
+
}
|
|
55
|
+
const timer = setTimeout(() => void run(), delay);
|
|
56
|
+
return () => clearTimeout(timer);
|
|
57
|
+
}, [
|
|
58
|
+
enabled,
|
|
59
|
+
token,
|
|
60
|
+
options.depsKey,
|
|
61
|
+
current,
|
|
62
|
+
pageSize,
|
|
63
|
+
run
|
|
64
|
+
]);
|
|
65
|
+
useEffect(() => {
|
|
66
|
+
const { polling } = latest.current;
|
|
67
|
+
if (!polling || loading || !enabled) return;
|
|
68
|
+
const interval = typeof polling === "function" ? polling(data) : polling;
|
|
69
|
+
if (!interval) return;
|
|
70
|
+
const timer = setTimeout(() => void run(), Math.max(interval, 2e3));
|
|
71
|
+
return () => clearTimeout(timer);
|
|
72
|
+
}, [
|
|
73
|
+
data,
|
|
74
|
+
loading,
|
|
75
|
+
enabled,
|
|
76
|
+
options.polling,
|
|
77
|
+
run
|
|
78
|
+
]);
|
|
79
|
+
return {
|
|
80
|
+
data,
|
|
81
|
+
loading,
|
|
82
|
+
reload: useCallback(() => new Promise((resolve) => {
|
|
83
|
+
if (!latest.current.request) {
|
|
84
|
+
resolve();
|
|
85
|
+
return;
|
|
86
|
+
}
|
|
87
|
+
pending.current.push(resolve);
|
|
88
|
+
setEnabled(true);
|
|
89
|
+
setToken((value) => value + 1);
|
|
90
|
+
}), []),
|
|
91
|
+
setData
|
|
92
|
+
};
|
|
93
|
+
};
|
|
94
|
+
//#endregion
|
|
95
|
+
export { useFetchData };
|
|
96
|
+
|
|
97
|
+
//# sourceMappingURL=useFetchData.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useFetchData.mjs","names":[],"sources":["../../../src/ProTable/hooks/useFetchData.ts"],"sourcesContent":["import { useCallback, useEffect, useRef, useState } from 'react';\n\nimport type { SortOrder } from '@/Table/type';\n\nimport type {\n ProTablePageInfo,\n ProTableRequest,\n ProTableRequestData,\n ProTableRequestFilter,\n} from '../type';\n\ntype Filter = Record<string, (string | number | boolean)[] | null>;\n\nexport interface UseFetchDataOptions<T> {\n debounceTime: number;\n defaultData?: T[];\n depsKey: string;\n filter: Filter;\n getParams: () => Record<string, any>;\n manual: boolean;\n onDataSourceChange?: (data: T[]) => void;\n onLoad?: (data: T[]) => void;\n onLoadingChange?: (loading: boolean) => void;\n onRequestError?: (error: Error) => void;\n pageInfo: ProTablePageInfo;\n paginated: boolean;\n polling?: number | ((data: T[]) => number);\n postData?: (data: T[]) => T[];\n request?: ProTableRequest<T, any>;\n setTotal: (total: number) => void;\n sort: Record<string, SortOrder>;\n}\n\nexport const useFetchData = <T>(options: UseFetchDataOptions<T>) => {\n const [data, setData] = useState<T[]>(options.defaultData ?? []);\n const [loading, setLoading] = useState(false);\n const latest = useRef(options);\n latest.current = options;\n const requestId = useRef(0);\n const [enabled, setEnabled] = useState(!options.manual);\n const [token, setToken] = useState(0);\n const pending = useRef<(() => void)[]>([]);\n\n const updateLoading = (next: boolean) => {\n setLoading(next);\n latest.current.onLoadingChange?.(next);\n };\n\n const run = useCallback(async () => {\n const opts = latest.current;\n if (!opts.request) return;\n const id = ++requestId.current;\n updateLoading(true);\n try {\n const params: Record<string, any> = { ...opts.getParams() };\n if (opts.paginated) {\n params.current = opts.pageInfo.current;\n params.pageSize = opts.pageInfo.pageSize;\n }\n // A `request` resolving `null` / `undefined` (e.g. an empty API body) is treated as empty data.\n const response: Partial<ProTableRequestData<T>> = (await opts.request(\n params as any,\n opts.sort,\n opts.filter as ProTableRequestFilter,\n )) ?? { data: [] };\n if (id !== requestId.current) return;\n if (response.success === false) {\n // Pro keeps the previous data when the request reports failure.\n return;\n }\n const raw = response.data ?? [];\n const next = opts.postData ? opts.postData(raw) : raw;\n setData(next);\n opts.setTotal(response.total ?? next.length);\n opts.onLoad?.(next);\n opts.onDataSourceChange?.(next);\n } catch (error) {\n if (id !== requestId.current) return;\n if (opts.onRequestError) opts.onRequestError(error as Error);\n else console.error(error);\n } finally {\n if (id === requestId.current) updateLoading(false);\n const resolvers = pending.current;\n pending.current = [];\n resolvers.forEach((resolve) => resolve());\n }\n }, []);\n\n const { current, pageSize } = options.pageInfo;\n useEffect(() => {\n if (!enabled || !latest.current.request) return;\n const delay = latest.current.debounceTime;\n if (delay <= 0) {\n void run();\n return;\n }\n const timer = setTimeout(() => void run(), delay);\n return () => clearTimeout(timer);\n }, [enabled, token, options.depsKey, current, pageSize, run]);\n\n useEffect(() => {\n const { polling } = latest.current;\n if (!polling || loading || !enabled) return;\n const interval = typeof polling === 'function' ? polling(data) : polling;\n if (!interval) return;\n const timer = setTimeout(() => void run(), Math.max(interval, 2000));\n return () => clearTimeout(timer);\n }, [data, loading, enabled, options.polling, run]);\n\n const reload = useCallback(\n () =>\n new Promise<void>((resolve) => {\n if (!latest.current.request) {\n resolve();\n return;\n }\n pending.current.push(resolve);\n setEnabled(true);\n setToken((value) => value + 1);\n }),\n [],\n );\n\n return { data, loading, reload, setData };\n};\n"],"mappings":";;AAiCA,MAAa,gBAAmB,YAAoC;CAClE,MAAM,CAAC,MAAM,WAAW,SAAc,QAAQ,eAAe,CAAC,CAAC;CAC/D,MAAM,CAAC,SAAS,cAAc,SAAS,KAAK;CAC5C,MAAM,SAAS,OAAO,OAAO;CAC7B,OAAO,UAAU;CACjB,MAAM,YAAY,OAAO,CAAC;CAC1B,MAAM,CAAC,SAAS,cAAc,SAAS,CAAC,QAAQ,MAAM;CACtD,MAAM,CAAC,OAAO,YAAY,SAAS,CAAC;CACpC,MAAM,UAAU,OAAuB,CAAC,CAAC;CAEzC,MAAM,iBAAiB,SAAkB;EACvC,WAAW,IAAI;EACf,OAAO,QAAQ,kBAAkB,IAAI;CACvC;CAEA,MAAM,MAAM,YAAY,YAAY;EAClC,MAAM,OAAO,OAAO;EACpB,IAAI,CAAC,KAAK,SAAS;EACnB,MAAM,KAAK,EAAE,UAAU;EACvB,cAAc,IAAI;EAClB,IAAI;GACF,MAAM,SAA8B,EAAE,GAAG,KAAK,UAAU,EAAE;GAC1D,IAAI,KAAK,WAAW;IAClB,OAAO,UAAU,KAAK,SAAS;IAC/B,OAAO,WAAW,KAAK,SAAS;GAClC;GAEA,MAAM,WAA6C,MAAM,KAAK,QAC5D,QACA,KAAK,MACL,KAAK,MACP,KAAM,EAAE,MAAM,CAAC,EAAE;GACjB,IAAI,OAAO,UAAU,SAAS;GAC9B,IAAI,SAAS,YAAY,OAEvB;GAEF,MAAM,MAAM,SAAS,QAAQ,CAAC;GAC9B,MAAM,OAAO,KAAK,WAAW,KAAK,SAAS,GAAG,IAAI;GAClD,QAAQ,IAAI;GACZ,KAAK,SAAS,SAAS,SAAS,KAAK,MAAM;GAC3C,KAAK,SAAS,IAAI;GAClB,KAAK,qBAAqB,IAAI;EAChC,SAAS,OAAO;GACd,IAAI,OAAO,UAAU,SAAS;GAC9B,IAAI,KAAK,gBAAgB,KAAK,eAAe,KAAc;QACtD,QAAQ,MAAM,KAAK;EAC1B,UAAU;GACR,IAAI,OAAO,UAAU,SAAS,cAAc,KAAK;GACjD,MAAM,YAAY,QAAQ;GAC1B,QAAQ,UAAU,CAAC;GACnB,UAAU,SAAS,YAAY,QAAQ,CAAC;EAC1C;CACF,GAAG,CAAC,CAAC;CAEL,MAAM,EAAE,SAAS,aAAa,QAAQ;CACtC,gBAAgB;EACd,IAAI,CAAC,WAAW,CAAC,OAAO,QAAQ,SAAS;EACzC,MAAM,QAAQ,OAAO,QAAQ;EAC7B,IAAI,SAAS,GAAG;GACd,IAAS;GACT;EACF;EACA,MAAM,QAAQ,iBAAiB,KAAK,IAAI,GAAG,KAAK;EAChD,aAAa,aAAa,KAAK;CACjC,GAAG;EAAC;EAAS;EAAO,QAAQ;EAAS;EAAS;EAAU;CAAG,CAAC;CAE5D,gBAAgB;EACd,MAAM,EAAE,YAAY,OAAO;EAC3B,IAAI,CAAC,WAAW,WAAW,CAAC,SAAS;EACrC,MAAM,WAAW,OAAO,YAAY,aAAa,QAAQ,IAAI,IAAI;EACjE,IAAI,CAAC,UAAU;EACf,MAAM,QAAQ,iBAAiB,KAAK,IAAI,GAAG,KAAK,IAAI,UAAU,GAAI,CAAC;EACnE,aAAa,aAAa,KAAK;CACjC,GAAG;EAAC;EAAM;EAAS;EAAS,QAAQ;EAAS;CAAG,CAAC;CAgBjD,OAAO;EAAE;EAAM;EAAS,QAdT,kBAEX,IAAI,SAAe,YAAY;GAC7B,IAAI,CAAC,OAAO,QAAQ,SAAS;IAC3B,QAAQ;IACR;GACF;GACA,QAAQ,QAAQ,KAAK,OAAO;GAC5B,WAAW,IAAI;GACf,UAAU,UAAU,QAAQ,CAAC;EAC/B,CAAC,GACH,CAAC,CAG0B;EAAG;CAAQ;AAC1C"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { useEventCallback } from "../../hooks/useEventCallback.mjs";
|
|
2
|
+
import { useEffect, useState } from "react";
|
|
3
|
+
//#region src/ProTable/hooks/useFullscreen.ts
|
|
4
|
+
const useFullscreen = (rootRef) => {
|
|
5
|
+
const [fullscreen, setFullscreen] = useState(false);
|
|
6
|
+
useEffect(() => {
|
|
7
|
+
if (typeof document === "undefined") return;
|
|
8
|
+
const sync = () => setFullscreen(document.fullscreenElement === rootRef.current);
|
|
9
|
+
document.addEventListener("fullscreenchange", sync);
|
|
10
|
+
return () => document.removeEventListener("fullscreenchange", sync);
|
|
11
|
+
}, [rootRef]);
|
|
12
|
+
return [fullscreen, useEventCallback(() => {
|
|
13
|
+
const node = rootRef.current;
|
|
14
|
+
if (!node || typeof document === "undefined") return;
|
|
15
|
+
if (document.fullscreenElement) document.exitFullscreen?.();
|
|
16
|
+
else node.requestFullscreen?.();
|
|
17
|
+
})];
|
|
18
|
+
};
|
|
19
|
+
//#endregion
|
|
20
|
+
export { useFullscreen };
|
|
21
|
+
|
|
22
|
+
//# sourceMappingURL=useFullscreen.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useFullscreen.mjs","names":[],"sources":["../../../src/ProTable/hooks/useFullscreen.ts"],"sourcesContent":["import { type RefObject, useEffect, useState } from 'react';\n\nimport { useEventCallback } from '@/hooks/useEventCallback';\n\nexport const useFullscreen = (rootRef: RefObject<HTMLDivElement | null>) => {\n const [fullscreen, setFullscreen] = useState(false);\n useEffect(() => {\n if (typeof document === 'undefined') return;\n const sync = () => setFullscreen(document.fullscreenElement === rootRef.current);\n document.addEventListener('fullscreenchange', sync);\n return () => document.removeEventListener('fullscreenchange', sync);\n }, [rootRef]);\n const toggle = useEventCallback(() => {\n const node = rootRef.current;\n if (!node || typeof document === 'undefined') return;\n if (document.fullscreenElement) void document.exitFullscreen?.();\n else void node.requestFullscreen?.();\n });\n return [fullscreen, toggle] as const;\n};\n"],"mappings":";;;AAIA,MAAa,iBAAiB,YAA8C;CAC1E,MAAM,CAAC,YAAY,iBAAiB,SAAS,KAAK;CAClD,gBAAgB;EACd,IAAI,OAAO,aAAa,aAAa;EACrC,MAAM,aAAa,cAAc,SAAS,sBAAsB,QAAQ,OAAO;EAC/E,SAAS,iBAAiB,oBAAoB,IAAI;EAClD,aAAa,SAAS,oBAAoB,oBAAoB,IAAI;CACpE,GAAG,CAAC,OAAO,CAAC;CAOZ,OAAO,CAAC,YANO,uBAAuB;EACpC,MAAM,OAAO,QAAQ;EACrB,IAAI,CAAC,QAAQ,OAAO,aAAa,aAAa;EAC9C,IAAI,SAAS,mBAAmB,SAAc,iBAAiB;OAC1D,KAAU,oBAAoB;CACrC,CACyB,CAAC;AAC5B"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { useEventCallback } from "../../hooks/useEventCallback.mjs";
|
|
2
|
+
import { useMemo, useState } from "react";
|
|
3
|
+
//#region src/ProTable/hooks/usePageInfo.ts
|
|
4
|
+
const usePageInfo = (pagination) => {
|
|
5
|
+
const config = useMemo(() => pagination === false ? false : pagination ?? {}, [pagination]);
|
|
6
|
+
const [pageInfo, setPageInfoState] = useState(() => ({
|
|
7
|
+
current: config && (config.current ?? config.defaultCurrent) || 1,
|
|
8
|
+
pageSize: config && (config.pageSize ?? config.defaultPageSize) || 10,
|
|
9
|
+
total: 0
|
|
10
|
+
}));
|
|
11
|
+
const controlledCurrent = config ? config.current : void 0;
|
|
12
|
+
const controlledPageSize = config ? config.pageSize : void 0;
|
|
13
|
+
return {
|
|
14
|
+
config,
|
|
15
|
+
pageInfo: useMemo(() => ({
|
|
16
|
+
...pageInfo,
|
|
17
|
+
...controlledCurrent !== void 0 && { current: controlledCurrent },
|
|
18
|
+
...controlledPageSize !== void 0 && { pageSize: controlledPageSize }
|
|
19
|
+
}), [
|
|
20
|
+
pageInfo,
|
|
21
|
+
controlledCurrent,
|
|
22
|
+
controlledPageSize
|
|
23
|
+
]),
|
|
24
|
+
setPageInfo: useEventCallback((next) => setPageInfoState((prev) => {
|
|
25
|
+
return Object.entries(next).some(([key, value]) => prev[key] !== value) ? {
|
|
26
|
+
...prev,
|
|
27
|
+
...next
|
|
28
|
+
} : prev;
|
|
29
|
+
}))
|
|
30
|
+
};
|
|
31
|
+
};
|
|
32
|
+
//#endregion
|
|
33
|
+
export { usePageInfo };
|
|
34
|
+
|
|
35
|
+
//# sourceMappingURL=usePageInfo.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"usePageInfo.mjs","names":[],"sources":["../../../src/ProTable/hooks/usePageInfo.ts"],"sourcesContent":["import { useMemo, useState } from 'react';\n\nimport { useEventCallback } from '@/hooks/useEventCallback';\nimport type { TablePaginationConfig } from '@/Table/type';\n\nimport type { ProTablePageInfo } from '../type';\n\nexport const usePageInfo = (pagination: false | TablePaginationConfig | undefined) => {\n const config = useMemo(\n (): TablePaginationConfig | false => (pagination === false ? false : (pagination ?? {})),\n [pagination],\n );\n const [pageInfo, setPageInfoState] = useState<ProTablePageInfo>(() => ({\n current: (config && (config.current ?? config.defaultCurrent)) || 1,\n pageSize: (config && (config.pageSize ?? config.defaultPageSize)) || 10,\n total: 0,\n }));\n const controlledCurrent = config ? config.current : undefined;\n const controlledPageSize = config ? config.pageSize : undefined;\n const merged = useMemo(\n (): ProTablePageInfo => ({\n ...pageInfo,\n ...(controlledCurrent !== undefined && { current: controlledCurrent }),\n ...(controlledPageSize !== undefined && { pageSize: controlledPageSize }),\n }),\n [pageInfo, controlledCurrent, controlledPageSize],\n );\n const setPageInfo = useEventCallback((next: Partial<ProTablePageInfo>) =>\n setPageInfoState((prev) => {\n const changed = Object.entries(next).some(\n ([key, value]) => prev[key as keyof ProTablePageInfo] !== value,\n );\n return changed ? { ...prev, ...next } : prev;\n }),\n );\n return { config, pageInfo: merged, setPageInfo };\n};\n"],"mappings":";;;AAOA,MAAa,eAAe,eAA0D;CACpF,MAAM,SAAS,cACyB,eAAe,QAAQ,QAAS,cAAc,CAAC,GACrF,CAAC,UAAU,CACb;CACA,MAAM,CAAC,UAAU,oBAAoB,gBAAkC;EACrE,SAAU,WAAW,OAAO,WAAW,OAAO,mBAAoB;EAClE,UAAW,WAAW,OAAO,YAAY,OAAO,oBAAqB;EACrE,OAAO;CACT,EAAE;CACF,MAAM,oBAAoB,SAAS,OAAO,UAAU,KAAA;CACpD,MAAM,qBAAqB,SAAS,OAAO,WAAW,KAAA;CAiBtD,OAAO;EAAE;EAAQ,UAhBF,eACY;GACvB,GAAG;GACH,GAAI,sBAAsB,KAAA,KAAa,EAAE,SAAS,kBAAkB;GACpE,GAAI,uBAAuB,KAAA,KAAa,EAAE,UAAU,mBAAmB;EACzE,IACA;GAAC;GAAU;GAAmB;EAAkB,CAUlB;EAAG,aARf,kBAAkB,SACpC,kBAAkB,SAAS;GAIzB,OAHgB,OAAO,QAAQ,IAAI,CAAC,CAAC,MAClC,CAAC,KAAK,WAAW,KAAK,SAAmC,KAE/C,IAAI;IAAE,GAAG;IAAM,GAAG;GAAK,IAAI;EAC1C,CAAC,CAE0C;CAAE;AACjD"}
|
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
import ActionIcon from "../../ActionIcon/ActionIcon.mjs";
|
|
2
|
+
import { getByPath, getProColumnKey, isEmptyValue, resolveValueEnum, resolveValueType, valueEnumToList } from "../utils.mjs";
|
|
3
|
+
import { styles } from "../style.mjs";
|
|
4
|
+
import { CopyableText, renderValue } from "../parts/renderValue.mjs";
|
|
5
|
+
import { useMemo } from "react";
|
|
6
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
7
|
+
import { CircleHelp } from "lucide-react";
|
|
8
|
+
//#region src/ProTable/hooks/useProColumns.tsx
|
|
9
|
+
const orderOf = (state, key, index) => state[key]?.order ?? index;
|
|
10
|
+
const sortedEntries = (columns, state) => columns.map((column, index) => ({
|
|
11
|
+
column,
|
|
12
|
+
index,
|
|
13
|
+
key: getProColumnKey(column, index)
|
|
14
|
+
})).sort((a, b) => orderOf(state, a.key, a.index) - orderOf(state, b.key, b.index));
|
|
15
|
+
const useProColumns = ({ actionRef, columnEmptyText, columns, copyLabel, current, pageSize, state }) => {
|
|
16
|
+
const tableColumns = useMemo(() => {
|
|
17
|
+
const offset = (current - 1) * pageSize;
|
|
18
|
+
const convert = (column, index, top) => {
|
|
19
|
+
const key = getProColumnKey(column, index);
|
|
20
|
+
const columnState = top ? state[key] : void 0;
|
|
21
|
+
if (column.hideInTable || columnState?.show === false) return null;
|
|
22
|
+
const { children, colSize: _colSize, copyable, disable: _disable, fieldProps, filters, formItemProps: _formItemProps, hideInForm: _hideInForm, hideInSearch: _hideInSearch, hideInSetting: _hideInSetting, hideInTable: _hideInTable, initialValue: _initialValue, onFilter, order: _order, render, renderFormItem: _renderFormItem, renderText, search: _search, sorter, title, tooltip: columnTooltip, valueEnum: _valueEnum, valueType: _valueType, ...rest } = column;
|
|
23
|
+
const titleNode = columnTooltip ? /* @__PURE__ */ jsxs("span", {
|
|
24
|
+
className: styles.titleTooltip,
|
|
25
|
+
children: [title, /* @__PURE__ */ jsx(ActionIcon, {
|
|
26
|
+
icon: CircleHelp,
|
|
27
|
+
size: "small",
|
|
28
|
+
title: columnTooltip
|
|
29
|
+
})]
|
|
30
|
+
}) : title;
|
|
31
|
+
if (children?.length) {
|
|
32
|
+
const childColumns = children.map((child, childIndex) => convert(child, childIndex, false)).filter((child) => child !== null);
|
|
33
|
+
return {
|
|
34
|
+
...rest,
|
|
35
|
+
children: childColumns,
|
|
36
|
+
key,
|
|
37
|
+
title: titleNode
|
|
38
|
+
};
|
|
39
|
+
}
|
|
40
|
+
const valueType = resolveValueType(column);
|
|
41
|
+
const staticEnum = typeof column.valueEnum === "function" ? void 0 : column.valueEnum;
|
|
42
|
+
const fixed = columnState?.fixed ?? rest.fixed;
|
|
43
|
+
return {
|
|
44
|
+
...rest,
|
|
45
|
+
...valueType === "option" && rest.align === void 0 && { align: "end" },
|
|
46
|
+
...(valueType === "index" || valueType === "indexBorder") && rest.width === void 0 && { width: 56 },
|
|
47
|
+
filters: filters === true ? valueEnumToList(staticEnum).map((item) => ({
|
|
48
|
+
text: item.text,
|
|
49
|
+
value: item.value
|
|
50
|
+
})) : filters || void 0,
|
|
51
|
+
fixed: fixed === "left" ? "start" : fixed === "right" ? "end" : fixed,
|
|
52
|
+
key,
|
|
53
|
+
onFilter: onFilter === true ? (value, record) => String(getByPath(record, column.dataIndex)) === String(value) : onFilter || void 0,
|
|
54
|
+
sorter: typeof sorter === "string" ? true : sorter,
|
|
55
|
+
title: titleNode,
|
|
56
|
+
render: (value, record, rowIndex) => {
|
|
57
|
+
const action = actionRef.current;
|
|
58
|
+
const text = renderText ? renderText(value, record, rowIndex, action) : value;
|
|
59
|
+
let dom = renderValue(text, {
|
|
60
|
+
emptyText: columnEmptyText === false ? null : columnEmptyText,
|
|
61
|
+
fieldProps,
|
|
62
|
+
rowIndex: offset + rowIndex,
|
|
63
|
+
valueEnum: resolveValueEnum(column, record),
|
|
64
|
+
valueType: resolveValueType(column, record)
|
|
65
|
+
});
|
|
66
|
+
if (copyable && !isEmptyValue(text)) dom = /* @__PURE__ */ jsx(CopyableText, {
|
|
67
|
+
label: copyLabel,
|
|
68
|
+
text: String(text),
|
|
69
|
+
children: dom
|
|
70
|
+
});
|
|
71
|
+
if (!render) return dom;
|
|
72
|
+
const result = render(dom, record, rowIndex, action, column);
|
|
73
|
+
if (valueType === "option" && Array.isArray(result)) return /* @__PURE__ */ jsx("div", {
|
|
74
|
+
className: styles.optionCell,
|
|
75
|
+
children: result
|
|
76
|
+
});
|
|
77
|
+
return result;
|
|
78
|
+
}
|
|
79
|
+
};
|
|
80
|
+
};
|
|
81
|
+
return sortedEntries(columns, state).map(({ column, index }) => convert(column, index, true)).filter((column) => column !== null);
|
|
82
|
+
}, [
|
|
83
|
+
actionRef,
|
|
84
|
+
columnEmptyText,
|
|
85
|
+
columns,
|
|
86
|
+
copyLabel,
|
|
87
|
+
current,
|
|
88
|
+
pageSize,
|
|
89
|
+
state
|
|
90
|
+
]);
|
|
91
|
+
return {
|
|
92
|
+
settingColumns: useMemo(() => {
|
|
93
|
+
const list = [];
|
|
94
|
+
sortedEntries(columns, state).forEach(({ column, key }) => {
|
|
95
|
+
if (column.hideInTable || column.hideInSetting) return;
|
|
96
|
+
const disable = state[key]?.disable ?? (typeof column.disable === "object" ? column.disable.checkbox : column.disable);
|
|
97
|
+
list.push({
|
|
98
|
+
disabled: !!disable,
|
|
99
|
+
key,
|
|
100
|
+
title: column.title ?? key
|
|
101
|
+
});
|
|
102
|
+
});
|
|
103
|
+
return list;
|
|
104
|
+
}, [columns, state]),
|
|
105
|
+
sortFieldOf: useMemo(() => {
|
|
106
|
+
const map = /* @__PURE__ */ new Map();
|
|
107
|
+
const walk = (list) => list.forEach((column, index) => {
|
|
108
|
+
if (column.children?.length) walk(column.children);
|
|
109
|
+
const key = getProColumnKey(column, index);
|
|
110
|
+
if (typeof column.sorter === "string") map.set(key, column.sorter);
|
|
111
|
+
else if (Array.isArray(column.dataIndex)) map.set(key, column.dataIndex.join("."));
|
|
112
|
+
else if (column.dataIndex !== void 0) map.set(key, String(column.dataIndex));
|
|
113
|
+
});
|
|
114
|
+
walk(columns);
|
|
115
|
+
return map;
|
|
116
|
+
}, [columns]),
|
|
117
|
+
tableColumns
|
|
118
|
+
};
|
|
119
|
+
};
|
|
120
|
+
//#endregion
|
|
121
|
+
export { useProColumns };
|
|
122
|
+
|
|
123
|
+
//# sourceMappingURL=useProColumns.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useProColumns.mjs","names":[],"sources":["../../../src/ProTable/hooks/useProColumns.tsx"],"sourcesContent":["import { CircleHelp } from 'lucide-react';\nimport { type ReactNode, type RefObject, useMemo } from 'react';\n\nimport ActionIcon from '@/ActionIcon';\nimport type { TableColumn } from '@/Table/type';\n\nimport type { SettingColumn } from '../parts/ColumnSetting';\nimport { CopyableText, renderValue } from '../parts/renderValue';\nimport { styles } from '../style';\nimport type { ProColumnType, ProTableActionType, ProTableColumnsStateMap } from '../type';\nimport {\n getByPath,\n getProColumnKey,\n isEmptyValue,\n resolveValueEnum,\n resolveValueType,\n valueEnumToList,\n} from '../utils';\n\ninterface ProColumnsOptions<T> {\n actionRef: RefObject<ProTableActionType | undefined>;\n columnEmptyText: ReactNode | false;\n columns: ProColumnType<T>[];\n copyLabel: string;\n current: number;\n pageSize: number;\n state: ProTableColumnsStateMap;\n}\n\nconst orderOf = (state: ProTableColumnsStateMap, key: string, index: number) =>\n state[key]?.order ?? index;\n\nconst sortedEntries = <T,>(columns: ProColumnType<T>[], state: ProTableColumnsStateMap) =>\n columns\n .map((column, index) => ({ column, index, key: getProColumnKey(column, index) }))\n .sort((a, b) => orderOf(state, a.key, a.index) - orderOf(state, b.key, b.index));\n\nexport const useProColumns = <T,>({\n actionRef,\n columnEmptyText,\n columns,\n copyLabel,\n current,\n pageSize,\n state,\n}: ProColumnsOptions<T>) => {\n const tableColumns = useMemo(() => {\n const offset = (current - 1) * pageSize;\n\n const convert = (\n column: ProColumnType<T>,\n index: number,\n top: boolean,\n ): TableColumn<T> | null => {\n const key = getProColumnKey(column, index);\n const columnState = top ? state[key] : undefined;\n if (column.hideInTable || columnState?.show === false) return null;\n\n const {\n children,\n colSize: _colSize,\n copyable,\n disable: _disable,\n fieldProps,\n filters,\n formItemProps: _formItemProps,\n hideInForm: _hideInForm,\n hideInSearch: _hideInSearch,\n hideInSetting: _hideInSetting,\n hideInTable: _hideInTable,\n initialValue: _initialValue,\n onFilter,\n order: _order,\n render,\n renderFormItem: _renderFormItem,\n renderText,\n search: _search,\n sorter,\n title,\n tooltip: columnTooltip,\n valueEnum: _valueEnum,\n valueType: _valueType,\n ...rest\n } = column;\n\n const titleNode: ReactNode = columnTooltip ? (\n <span className={styles.titleTooltip}>\n {title}\n <ActionIcon icon={CircleHelp} size=\"small\" title={columnTooltip} />\n </span>\n ) : (\n title\n );\n\n if (children?.length) {\n const childColumns = children\n .map((child, childIndex) => convert(child, childIndex, false))\n .filter((child): child is TableColumn<T> => child !== null);\n return { ...(rest as any), children: childColumns, key, title: titleNode };\n }\n\n const valueType = resolveValueType(column);\n const staticEnum = typeof column.valueEnum === 'function' ? undefined : column.valueEnum;\n const fixed = columnState?.fixed ?? rest.fixed;\n return {\n ...(rest as any),\n ...(valueType === 'option' && rest.align === undefined && { align: 'end' }),\n ...((valueType === 'index' || valueType === 'indexBorder') &&\n rest.width === undefined && { width: 56 }),\n filters:\n filters === true\n ? valueEnumToList(staticEnum).map((item) => ({ text: item.text, value: item.value }))\n : filters || undefined,\n fixed: fixed === 'left' ? 'start' : fixed === 'right' ? 'end' : fixed,\n key,\n onFilter:\n onFilter === true\n ? (value: unknown, record: T) =>\n String(getByPath(record, column.dataIndex)) === String(value)\n : onFilter || undefined,\n sorter: typeof sorter === 'string' ? true : sorter,\n title: titleNode,\n render: (value: any, record: T, rowIndex: number) => {\n const action = actionRef.current;\n const text = renderText ? renderText(value, record, rowIndex, action) : value;\n let dom: ReactNode = renderValue(text, {\n emptyText: columnEmptyText === false ? null : columnEmptyText,\n fieldProps,\n rowIndex: offset + rowIndex,\n valueEnum: resolveValueEnum(column, record),\n valueType: resolveValueType(column, record),\n });\n if (copyable && !isEmptyValue(text)) {\n dom = (\n <CopyableText label={copyLabel} text={String(text)}>\n {dom}\n </CopyableText>\n );\n }\n if (!render) return dom;\n const result = render(dom, record, rowIndex, action, column);\n if (valueType === 'option' && Array.isArray(result)) {\n return <div className={styles.optionCell}>{result}</div>;\n }\n return result;\n },\n } as TableColumn<T>;\n };\n\n return sortedEntries(columns, state)\n .map(({ column, index }) => convert(column, index, true))\n .filter((column): column is TableColumn<T> => column !== null);\n }, [actionRef, columnEmptyText, columns, copyLabel, current, pageSize, state]);\n\n const settingColumns = useMemo(() => {\n const list: SettingColumn[] = [];\n sortedEntries(columns, state).forEach(({ column, key }) => {\n if (column.hideInTable || column.hideInSetting) return;\n const disable =\n state[key]?.disable ??\n (typeof column.disable === 'object' ? column.disable.checkbox : column.disable);\n list.push({ disabled: !!disable, key, title: column.title ?? key });\n });\n return list;\n }, [columns, state]);\n\n const sortFieldOf = useMemo(() => {\n const map = new Map<string, string>();\n const walk = (list: ProColumnType<T>[]) =>\n list.forEach((column, index) => {\n if (column.children?.length) walk(column.children);\n const key = getProColumnKey(column, index);\n if (typeof column.sorter === 'string') map.set(key, column.sorter);\n else if (Array.isArray(column.dataIndex)) map.set(key, column.dataIndex.join('.'));\n else if (column.dataIndex !== undefined) map.set(key, String(column.dataIndex));\n });\n walk(columns);\n return map;\n }, [columns]);\n\n return { settingColumns, sortFieldOf, tableColumns };\n};\n"],"mappings":"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"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { useDelayedFlag } from "./useDelayedFlag.mjs";
|
|
2
|
+
//#region src/ProTable/hooks/useProLoading.ts
|
|
3
|
+
const useProLoading = (loadingProp, fetching, hasRequest) => {
|
|
4
|
+
const config = typeof loadingProp === "object" ? loadingProp : void 0;
|
|
5
|
+
const { delay, ...spin } = config ?? {};
|
|
6
|
+
const raw = config === void 0 ? loadingProp ?? fetching : config.spinning ?? (hasRequest ? fetching : true);
|
|
7
|
+
const loading = useDelayedFlag(raw, delay);
|
|
8
|
+
return {
|
|
9
|
+
loading,
|
|
10
|
+
tableLoading: config ? {
|
|
11
|
+
...spin,
|
|
12
|
+
spinning: loading
|
|
13
|
+
} : loading
|
|
14
|
+
};
|
|
15
|
+
};
|
|
16
|
+
//#endregion
|
|
17
|
+
export { useProLoading };
|
|
18
|
+
|
|
19
|
+
//# sourceMappingURL=useProLoading.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useProLoading.mjs","names":[],"sources":["../../../src/ProTable/hooks/useProLoading.ts"],"sourcesContent":["import type { TableLoadingConfig } from '@/Table/type';\n\nimport type { ProTableProps } from '../type';\nimport { useDelayedFlag } from './useDelayedFlag';\n\nexport const useProLoading = (\n loadingProp: ProTableProps['loading'],\n fetching: boolean,\n hasRequest: boolean,\n) => {\n const config = typeof loadingProp === 'object' ? loadingProp : undefined;\n const { delay, ...spin } = config ?? {};\n const raw =\n config === undefined\n ? ((loadingProp as boolean | undefined) ?? fetching)\n : (config.spinning ?? (hasRequest ? fetching : true));\n const loading = useDelayedFlag(raw, delay);\n const tableLoading: boolean | TableLoadingConfig = config\n ? { ...spin, spinning: loading }\n : loading;\n return { loading, tableLoading };\n};\n"],"mappings":";;AAKA,MAAa,iBACX,aACA,UACA,eACG;CACH,MAAM,SAAS,OAAO,gBAAgB,WAAW,cAAc,KAAA;CAC/D,MAAM,EAAE,OAAO,GAAG,SAAS,UAAU,CAAC;CACtC,MAAM,MACJ,WAAW,KAAA,IACL,eAAuC,WACxC,OAAO,aAAa,aAAa,WAAW;CACnD,MAAM,UAAU,eAAe,KAAK,KAAK;CAIzC,OAAO;EAAE;EAAS,cAHiC,SAC/C;GAAE,GAAG;GAAM,UAAU;EAAQ,IAC7B;CAC2B;AACjC"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { useI18n } from "../../ConfigProvider/index.mjs";
|
|
2
|
+
import { PRO_TABLE_LOCALE_EN_US, resolveProTableLocale } from "../locale.mjs";
|
|
3
|
+
import { useMemo } from "react";
|
|
4
|
+
//#region src/ProTable/hooks/useProLocale.ts
|
|
5
|
+
const useProLocale = (localeProp) => {
|
|
6
|
+
const i18n = useI18n();
|
|
7
|
+
return {
|
|
8
|
+
locale: useMemo(() => ({
|
|
9
|
+
...resolveProTableLocale(i18n?.locale),
|
|
10
|
+
...localeProp
|
|
11
|
+
}), [i18n?.locale, localeProp]),
|
|
12
|
+
tableLocale: useMemo(() => {
|
|
13
|
+
if (!localeProp) return void 0;
|
|
14
|
+
const entries = Object.entries(localeProp).filter(([key]) => !(key in PRO_TABLE_LOCALE_EN_US));
|
|
15
|
+
return entries.length > 0 ? Object.fromEntries(entries) : void 0;
|
|
16
|
+
}, [localeProp])
|
|
17
|
+
};
|
|
18
|
+
};
|
|
19
|
+
//#endregion
|
|
20
|
+
export { useProLocale };
|
|
21
|
+
|
|
22
|
+
//# sourceMappingURL=useProLocale.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useProLocale.mjs","names":[],"sources":["../../../src/ProTable/hooks/useProLocale.ts"],"sourcesContent":["import { useMemo } from 'react';\n\nimport { useI18n } from '@/ConfigProvider';\nimport type { TableLocale } from '@/Table/type';\n\nimport { PRO_TABLE_LOCALE_EN_US, resolveProTableLocale } from '../locale';\nimport type { ProTableProps } from '../type';\n\nexport const useProLocale = (localeProp: ProTableProps['locale']) => {\n const i18n = useI18n();\n const locale = useMemo(\n () => ({ ...resolveProTableLocale(i18n?.locale), ...localeProp }),\n [i18n?.locale, localeProp],\n );\n const tableLocale = useMemo(() => {\n if (!localeProp) return undefined;\n const entries = Object.entries(localeProp).filter(([key]) => !(key in PRO_TABLE_LOCALE_EN_US));\n return entries.length > 0 ? (Object.fromEntries(entries) as TableLocale) : undefined;\n }, [localeProp]);\n return { locale, tableLocale };\n};\n"],"mappings":";;;;AAQA,MAAa,gBAAgB,eAAwC;CACnE,MAAM,OAAO,QAAQ;CAUrB,OAAO;EAAE,QATM,eACN;GAAE,GAAG,sBAAsB,MAAM,MAAM;GAAG,GAAG;EAAW,IAC/D,CAAC,MAAM,QAAQ,UAAU,CAOb;EAAG,aALG,cAAc;GAChC,IAAI,CAAC,YAAY,OAAO,KAAA;GACxB,MAAM,UAAU,OAAO,QAAQ,UAAU,CAAC,CAAC,QAAQ,CAAC,SAAS,EAAE,OAAO,uBAAuB;GAC7F,OAAO,QAAQ,SAAS,IAAK,OAAO,YAAY,OAAO,IAAoB,KAAA;EAC7E,GAAG,CAAC,UAAU,CACa;CAAE;AAC/B"}
|
|
@@ -0,0 +1,137 @@
|
|
|
1
|
+
import { useEventCallback } from "../../hooks/useEventCallback.mjs";
|
|
2
|
+
import { useFetchData } from "./useFetchData.mjs";
|
|
3
|
+
import { getSearchFields, useSearchForm } from "./useSearchForm.mjs";
|
|
4
|
+
import { useEffect, useImperativeHandle, useMemo, useRef, useState } from "react";
|
|
5
|
+
//#region src/ProTable/hooks/useProRequest.ts
|
|
6
|
+
const stableKey = (value) => {
|
|
7
|
+
try {
|
|
8
|
+
return JSON.stringify(value, (_key, item) => item instanceof Date ? item.toISOString() : item);
|
|
9
|
+
} catch {
|
|
10
|
+
return String(Math.random());
|
|
11
|
+
}
|
|
12
|
+
};
|
|
13
|
+
const useProRequest = ({ pageInfo, paginated, props, setPageInfo, sortFieldOf }) => {
|
|
14
|
+
const { beforeSearchSubmit, columns = [], dateFormatter = "string", debounceTime = 10, defaultData, form: formConfig, formRef, manualRequest = false, onChange, onDataSourceChange, onLoad, onLoadingChange, onRequestError, onReset, onSubmit, options, params, polling, postData, request } = props;
|
|
15
|
+
const [sort, setSort] = useState({});
|
|
16
|
+
const [filter, setFilter] = useState({});
|
|
17
|
+
const searchFields = useMemo(() => getSearchFields(columns), [columns]);
|
|
18
|
+
const [formParams, setFormParams] = useState({});
|
|
19
|
+
const [keyword, setKeyword] = useState(void 0);
|
|
20
|
+
const formReadyRef = useRef(false);
|
|
21
|
+
const applyFormValues = (formatted) => {
|
|
22
|
+
const next = beforeSearchSubmit ? beforeSearchSubmit(formatted) : formatted;
|
|
23
|
+
formReadyRef.current = true;
|
|
24
|
+
setFormParams(next);
|
|
25
|
+
setPageInfo({ current: 1 });
|
|
26
|
+
return next;
|
|
27
|
+
};
|
|
28
|
+
const handleSubmit = useEventCallback((formatted) => {
|
|
29
|
+
const next = applyFormValues(formatted);
|
|
30
|
+
onSubmit?.(next);
|
|
31
|
+
fetcher.reload();
|
|
32
|
+
});
|
|
33
|
+
const { form } = useSearchForm({
|
|
34
|
+
dateFormatter,
|
|
35
|
+
fields: searchFields,
|
|
36
|
+
initialValues: formConfig?.initialValues,
|
|
37
|
+
onSubmit: handleSubmit,
|
|
38
|
+
onValuesChange: formConfig?.onValuesChange,
|
|
39
|
+
validateOn: formConfig?.validateOn
|
|
40
|
+
});
|
|
41
|
+
const initialFormParams = useMemo(() => form.getFieldsFormatValue(), [form]);
|
|
42
|
+
const effectiveFormParams = formReadyRef.current ? formParams : initialFormParams;
|
|
43
|
+
useImperativeHandle(formRef, () => form, [form]);
|
|
44
|
+
const keywordName = options && typeof options.search === "object" ? options.search.name ?? "keyword" : "keyword";
|
|
45
|
+
const fetcher = useFetchData({
|
|
46
|
+
debounceTime,
|
|
47
|
+
defaultData,
|
|
48
|
+
depsKey: stableKey([
|
|
49
|
+
effectiveFormParams,
|
|
50
|
+
params,
|
|
51
|
+
keyword,
|
|
52
|
+
sort,
|
|
53
|
+
filter
|
|
54
|
+
]),
|
|
55
|
+
filter,
|
|
56
|
+
getParams: () => ({
|
|
57
|
+
...effectiveFormParams,
|
|
58
|
+
...params,
|
|
59
|
+
...keyword !== void 0 && keyword !== "" && { [keywordName]: keyword }
|
|
60
|
+
}),
|
|
61
|
+
manual: manualRequest,
|
|
62
|
+
onDataSourceChange,
|
|
63
|
+
onLoad,
|
|
64
|
+
onLoadingChange,
|
|
65
|
+
onRequestError,
|
|
66
|
+
pageInfo,
|
|
67
|
+
paginated,
|
|
68
|
+
polling,
|
|
69
|
+
postData,
|
|
70
|
+
request,
|
|
71
|
+
setTotal: (total) => setPageInfo({ total }),
|
|
72
|
+
sort
|
|
73
|
+
});
|
|
74
|
+
const paramsKey = stableKey(params);
|
|
75
|
+
const firstParamsRef = useRef(true);
|
|
76
|
+
useEffect(() => {
|
|
77
|
+
if (firstParamsRef.current) {
|
|
78
|
+
firstParamsRef.current = false;
|
|
79
|
+
return;
|
|
80
|
+
}
|
|
81
|
+
setPageInfo({ current: 1 });
|
|
82
|
+
}, [paramsKey, setPageInfo]);
|
|
83
|
+
const reload = useEventCallback(async (resetPageIndex) => {
|
|
84
|
+
if (resetPageIndex) setPageInfo({ current: 1 });
|
|
85
|
+
await fetcher.reload();
|
|
86
|
+
});
|
|
87
|
+
const reset = useEventCallback(() => {
|
|
88
|
+
form.resetFields();
|
|
89
|
+
applyFormValues(form.getFieldsFormatValue());
|
|
90
|
+
fetcher.reload();
|
|
91
|
+
});
|
|
92
|
+
const handleReset = useEventCallback(() => {
|
|
93
|
+
reset();
|
|
94
|
+
onReset?.();
|
|
95
|
+
});
|
|
96
|
+
const searchKeyword = useEventCallback((value) => {
|
|
97
|
+
setKeyword(value);
|
|
98
|
+
setPageInfo({ current: 1 });
|
|
99
|
+
});
|
|
100
|
+
const handleTableChange = useEventCallback((pagination, filters, sorter, extra) => {
|
|
101
|
+
if (extra.action === "sort") {
|
|
102
|
+
const next = {};
|
|
103
|
+
(Array.isArray(sorter) ? sorter : [sorter]).forEach((item) => {
|
|
104
|
+
if (!item.order || item.columnKey === void 0) return;
|
|
105
|
+
const columnKey = String(item.columnKey);
|
|
106
|
+
next[sortFieldOf.get(columnKey) ?? columnKey] = item.order;
|
|
107
|
+
});
|
|
108
|
+
setSort(next);
|
|
109
|
+
}
|
|
110
|
+
if (extra.action === "filter") {
|
|
111
|
+
const next = {};
|
|
112
|
+
Object.entries(filters).forEach(([columnKey, value]) => {
|
|
113
|
+
next[sortFieldOf.get(columnKey) ?? columnKey] = value;
|
|
114
|
+
});
|
|
115
|
+
setFilter(next);
|
|
116
|
+
}
|
|
117
|
+
onChange?.(pagination, filters, sorter, extra);
|
|
118
|
+
});
|
|
119
|
+
return {
|
|
120
|
+
fetcher,
|
|
121
|
+
form,
|
|
122
|
+
getSortFilter: useEventCallback(() => ({
|
|
123
|
+
filter,
|
|
124
|
+
sort
|
|
125
|
+
})),
|
|
126
|
+
handleReset,
|
|
127
|
+
handleTableChange,
|
|
128
|
+
reload,
|
|
129
|
+
reset,
|
|
130
|
+
searchFields,
|
|
131
|
+
searchKeyword
|
|
132
|
+
};
|
|
133
|
+
};
|
|
134
|
+
//#endregion
|
|
135
|
+
export { useProRequest };
|
|
136
|
+
|
|
137
|
+
//# sourceMappingURL=useProRequest.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useProRequest.mjs","names":[],"sources":["../../../src/ProTable/hooks/useProRequest.ts"],"sourcesContent":["import { type Ref, useEffect, useImperativeHandle, useMemo, useRef, useState } from 'react';\n\nimport { useEventCallback } from '@/hooks/useEventCallback';\nimport type {\n SortOrder,\n TableFilters,\n TablePaginationConfig,\n TableSorterResult,\n} from '@/Table/type';\n\nimport type { ProTableFormInstance, ProTablePageInfo, ProTableProps } from '../type';\nimport { useFetchData } from './useFetchData';\nimport { getSearchFields, useSearchForm } from './useSearchForm';\n\ntype Filter = Record<string, (string | number | boolean)[] | null>;\n\nconst stableKey = (value: unknown) => {\n try {\n return JSON.stringify(value, (_key, item) =>\n item instanceof Date ? item.toISOString() : item,\n );\n } catch {\n return String(Math.random());\n }\n};\n\ninterface ProRequestOptions<T> {\n pageInfo: ProTablePageInfo;\n paginated: boolean;\n props: ProTableProps<T, any>;\n setPageInfo: (next: Partial<ProTablePageInfo>) => void;\n sortFieldOf: Map<string, string>;\n}\n\nexport const useProRequest = <T>({\n pageInfo,\n paginated,\n props,\n setPageInfo,\n sortFieldOf,\n}: ProRequestOptions<T>) => {\n const {\n beforeSearchSubmit,\n columns = [],\n dateFormatter = 'string',\n debounceTime = 10,\n defaultData,\n form: formConfig,\n formRef,\n manualRequest = false,\n onChange,\n onDataSourceChange,\n onLoad,\n onLoadingChange,\n onRequestError,\n onReset,\n onSubmit,\n options,\n params,\n polling,\n postData,\n request,\n } = props;\n\n const [sort, setSort] = useState<Record<string, SortOrder>>({});\n const [filter, setFilter] = useState<Filter>({});\n const searchFields = useMemo(() => getSearchFields(columns), [columns]);\n const [formParams, setFormParams] = useState<Record<string, any>>({});\n const [keyword, setKeyword] = useState<string | undefined>(undefined);\n const formReadyRef = useRef(false);\n\n const applyFormValues = (formatted: Record<string, any>) => {\n const next = beforeSearchSubmit ? beforeSearchSubmit(formatted) : formatted;\n formReadyRef.current = true;\n setFormParams(next);\n setPageInfo({ current: 1 });\n return next;\n };\n\n const handleSubmit = useEventCallback((formatted: Record<string, any>) => {\n const next = applyFormValues(formatted);\n onSubmit?.(next);\n void fetcher.reload();\n });\n\n const { form } = useSearchForm({\n dateFormatter,\n fields: searchFields,\n initialValues: formConfig?.initialValues,\n onSubmit: handleSubmit,\n onValuesChange: formConfig?.onValuesChange,\n validateOn: formConfig?.validateOn,\n });\n const initialFormParams = useMemo(() => form.getFieldsFormatValue(), [form]);\n const effectiveFormParams = formReadyRef.current ? formParams : initialFormParams;\n useImperativeHandle(formRef as Ref<ProTableFormInstance>, () => form, [form]);\n\n const keywordName =\n options && typeof options.search === 'object' ? (options.search.name ?? 'keyword') : 'keyword';\n\n const fetcher = useFetchData<T>({\n debounceTime,\n defaultData,\n depsKey: stableKey([effectiveFormParams, params, keyword, sort, filter]),\n filter,\n getParams: () => ({\n ...effectiveFormParams,\n ...params,\n ...(keyword !== undefined && keyword !== '' && { [keywordName]: keyword }),\n }),\n manual: manualRequest,\n onDataSourceChange,\n onLoad,\n onLoadingChange,\n onRequestError,\n pageInfo,\n paginated,\n polling,\n postData,\n request,\n setTotal: (total) => setPageInfo({ total }),\n sort,\n });\n\n const paramsKey = stableKey(params);\n const firstParamsRef = useRef(true);\n useEffect(() => {\n if (firstParamsRef.current) {\n firstParamsRef.current = false;\n return;\n }\n setPageInfo({ current: 1 });\n }, [paramsKey, setPageInfo]);\n\n const reload = useEventCallback(async (resetPageIndex?: boolean) => {\n if (resetPageIndex) setPageInfo({ current: 1 });\n await fetcher.reload();\n });\n\n const reset = useEventCallback(() => {\n form.resetFields();\n applyFormValues(form.getFieldsFormatValue());\n void fetcher.reload();\n });\n\n const handleReset = useEventCallback(() => {\n reset();\n onReset?.();\n });\n\n const searchKeyword = useEventCallback((value: string | undefined) => {\n setKeyword(value);\n setPageInfo({ current: 1 });\n });\n\n const handleTableChange = useEventCallback(\n (\n pagination: TablePaginationConfig,\n filters: TableFilters,\n sorter: TableSorterResult<T> | TableSorterResult<T>[],\n extra: Parameters<NonNullable<ProTableProps<T>['onChange']>>[3],\n ) => {\n if (extra.action === 'sort') {\n const next: Record<string, SortOrder> = {};\n (Array.isArray(sorter) ? sorter : [sorter]).forEach((item) => {\n if (!item.order || item.columnKey === undefined) return;\n const columnKey = String(item.columnKey);\n next[sortFieldOf.get(columnKey) ?? columnKey] = item.order;\n });\n setSort(next);\n }\n if (extra.action === 'filter') {\n const next: Filter = {};\n Object.entries(filters).forEach(([columnKey, value]) => {\n next[sortFieldOf.get(columnKey) ?? columnKey] = value;\n });\n setFilter(next);\n }\n onChange?.(pagination, filters, sorter, extra);\n },\n );\n\n const getSortFilter = useEventCallback(() => ({ filter, sort }));\n\n return {\n fetcher,\n form,\n getSortFilter,\n handleReset,\n handleTableChange,\n reload,\n reset,\n searchFields,\n searchKeyword,\n };\n};\n"],"mappings":";;;;;AAgBA,MAAM,aAAa,UAAmB;CACpC,IAAI;EACF,OAAO,KAAK,UAAU,QAAQ,MAAM,SAClC,gBAAgB,OAAO,KAAK,YAAY,IAAI,IAC9C;CACF,QAAQ;EACN,OAAO,OAAO,KAAK,OAAO,CAAC;CAC7B;AACF;AAUA,MAAa,iBAAoB,EAC/B,UACA,WACA,OACA,aACA,kBAC0B;CAC1B,MAAM,EACJ,oBACA,UAAU,CAAC,GACX,gBAAgB,UAChB,eAAe,IACf,aACA,MAAM,YACN,SACA,gBAAgB,OAChB,UACA,oBACA,QACA,iBACA,gBACA,SACA,UACA,SACA,QACA,SACA,UACA,YACE;CAEJ,MAAM,CAAC,MAAM,WAAW,SAAoC,CAAC,CAAC;CAC9D,MAAM,CAAC,QAAQ,aAAa,SAAiB,CAAC,CAAC;CAC/C,MAAM,eAAe,cAAc,gBAAgB,OAAO,GAAG,CAAC,OAAO,CAAC;CACtE,MAAM,CAAC,YAAY,iBAAiB,SAA8B,CAAC,CAAC;CACpE,MAAM,CAAC,SAAS,cAAc,SAA6B,KAAA,CAAS;CACpE,MAAM,eAAe,OAAO,KAAK;CAEjC,MAAM,mBAAmB,cAAmC;EAC1D,MAAM,OAAO,qBAAqB,mBAAmB,SAAS,IAAI;EAClE,aAAa,UAAU;EACvB,cAAc,IAAI;EAClB,YAAY,EAAE,SAAS,EAAE,CAAC;EAC1B,OAAO;CACT;CAEA,MAAM,eAAe,kBAAkB,cAAmC;EACxE,MAAM,OAAO,gBAAgB,SAAS;EACtC,WAAW,IAAI;EACf,QAAa,OAAO;CACtB,CAAC;CAED,MAAM,EAAE,SAAS,cAAc;EAC7B;EACA,QAAQ;EACR,eAAe,YAAY;EAC3B,UAAU;EACV,gBAAgB,YAAY;EAC5B,YAAY,YAAY;CAC1B,CAAC;CACD,MAAM,oBAAoB,cAAc,KAAK,qBAAqB,GAAG,CAAC,IAAI,CAAC;CAC3E,MAAM,sBAAsB,aAAa,UAAU,aAAa;CAChE,oBAAoB,eAA4C,MAAM,CAAC,IAAI,CAAC;CAE5E,MAAM,cACJ,WAAW,OAAO,QAAQ,WAAW,WAAY,QAAQ,OAAO,QAAQ,YAAa;CAEvF,MAAM,UAAU,aAAgB;EAC9B;EACA;EACA,SAAS,UAAU;GAAC;GAAqB;GAAQ;GAAS;GAAM;EAAM,CAAC;EACvE;EACA,kBAAkB;GAChB,GAAG;GACH,GAAG;GACH,GAAI,YAAY,KAAA,KAAa,YAAY,MAAM,GAAG,cAAc,QAAQ;EAC1E;EACA,QAAQ;EACR;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA,WAAW,UAAU,YAAY,EAAE,MAAM,CAAC;EAC1C;CACF,CAAC;CAED,MAAM,YAAY,UAAU,MAAM;CAClC,MAAM,iBAAiB,OAAO,IAAI;CAClC,gBAAgB;EACd,IAAI,eAAe,SAAS;GAC1B,eAAe,UAAU;GACzB;EACF;EACA,YAAY,EAAE,SAAS,EAAE,CAAC;CAC5B,GAAG,CAAC,WAAW,WAAW,CAAC;CAE3B,MAAM,SAAS,iBAAiB,OAAO,mBAA6B;EAClE,IAAI,gBAAgB,YAAY,EAAE,SAAS,EAAE,CAAC;EAC9C,MAAM,QAAQ,OAAO;CACvB,CAAC;CAED,MAAM,QAAQ,uBAAuB;EACnC,KAAK,YAAY;EACjB,gBAAgB,KAAK,qBAAqB,CAAC;EAC3C,QAAa,OAAO;CACtB,CAAC;CAED,MAAM,cAAc,uBAAuB;EACzC,MAAM;EACN,UAAU;CACZ,CAAC;CAED,MAAM,gBAAgB,kBAAkB,UAA8B;EACpE,WAAW,KAAK;EAChB,YAAY,EAAE,SAAS,EAAE,CAAC;CAC5B,CAAC;CAED,MAAM,oBAAoB,kBAEtB,YACA,SACA,QACA,UACG;EACH,IAAI,MAAM,WAAW,QAAQ;GAC3B,MAAM,OAAkC,CAAC;GACzC,CAAC,MAAM,QAAQ,MAAM,IAAI,SAAS,CAAC,MAAM,EAAA,CAAG,SAAS,SAAS;IAC5D,IAAI,CAAC,KAAK,SAAS,KAAK,cAAc,KAAA,GAAW;IACjD,MAAM,YAAY,OAAO,KAAK,SAAS;IACvC,KAAK,YAAY,IAAI,SAAS,KAAK,aAAa,KAAK;GACvD,CAAC;GACD,QAAQ,IAAI;EACd;EACA,IAAI,MAAM,WAAW,UAAU;GAC7B,MAAM,OAAe,CAAC;GACtB,OAAO,QAAQ,OAAO,CAAC,CAAC,SAAS,CAAC,WAAW,WAAW;IACtD,KAAK,YAAY,IAAI,SAAS,KAAK,aAAa;GAClD,CAAC;GACD,UAAU,IAAI;EAChB;EACA,WAAW,YAAY,SAAS,QAAQ,KAAK;CAC/C,CACF;CAIA,OAAO;EACL;EACA;EACA,eALoB,wBAAwB;GAAE;GAAQ;EAAK,EAK/C;EACZ;EACA;EACA;EACA;EACA;EACA;CACF;AACF"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { useCallback, useRef } from "react";
|
|
2
|
+
//#region src/ProTable/hooks/useRowCache.ts
|
|
3
|
+
const useRowCache = (rows, rowKey) => {
|
|
4
|
+
const cacheRef = useRef(/* @__PURE__ */ new Map());
|
|
5
|
+
rows.forEach((record, index) => cacheRef.current.set(typeof rowKey === "function" ? rowKey(record, index) : record[rowKey], record));
|
|
6
|
+
return useCallback((key) => cacheRef.current.get(key), []);
|
|
7
|
+
};
|
|
8
|
+
//#endregion
|
|
9
|
+
export { useRowCache };
|
|
10
|
+
|
|
11
|
+
//# sourceMappingURL=useRowCache.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useRowCache.mjs","names":[],"sources":["../../../src/ProTable/hooks/useRowCache.ts"],"sourcesContent":["import { type Key, useCallback, useRef } from 'react';\n\nexport const useRowCache = <T extends Record<string, any>>(\n rows: readonly T[],\n rowKey: string | ((record: T, index?: number) => Key),\n) => {\n const cacheRef = useRef(new Map<Key, T>());\n rows.forEach((record, index) =>\n cacheRef.current.set(\n typeof rowKey === 'function' ? rowKey(record, index) : record[rowKey],\n record,\n ),\n );\n return useCallback((key: Key) => cacheRef.current.get(key), []);\n};\n"],"mappings":";;AAEA,MAAa,eACX,MACA,WACG;CACH,MAAM,WAAW,uBAAO,IAAI,IAAY,CAAC;CACzC,KAAK,SAAS,QAAQ,UACpB,SAAS,QAAQ,IACf,OAAO,WAAW,aAAa,OAAO,QAAQ,KAAK,IAAI,OAAO,SAC9D,MACF,CACF;CACA,OAAO,aAAa,QAAa,SAAS,QAAQ,IAAI,GAAG,GAAG,CAAC,CAAC;AAChE"}
|