@qsxy/element-plus-react 1.0.3 → 2.0.0
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/dist/Affix/Affix.d.ts +4 -0
- package/dist/Affix/Affix.js +301 -0
- package/dist/Affix/index.d.ts +2 -0
- package/dist/Affix/index.js +1 -0
- package/dist/Affix/typings.d.ts +50 -0
- package/dist/Affix/typings.js +1 -0
- package/dist/Alert/typings.d.ts +1 -1
- package/dist/Anchor/Anchor.d.ts +6 -0
- package/dist/Anchor/Anchor.js +258 -0
- package/dist/Anchor/AnchorLink.d.ts +4 -0
- package/dist/Anchor/AnchorLink.js +77 -0
- package/dist/Anchor/element.d.ts +4 -0
- package/dist/Anchor/element.js +17 -0
- package/dist/Anchor/index.d.ts +3 -0
- package/dist/Anchor/index.js +2 -0
- package/dist/Anchor/typings.d.ts +101 -0
- package/dist/Anchor/typings.js +1 -0
- package/dist/Backtop/Backtop.d.ts +7 -0
- package/dist/Backtop/Backtop.js +153 -0
- package/dist/Backtop/index.d.ts +2 -0
- package/dist/Backtop/index.js +1 -0
- package/dist/Backtop/typings.d.ts +31 -0
- package/dist/Backtop/typings.js +1 -0
- package/dist/Button/Button.d.ts +2 -11
- package/dist/Button/Button.js +2 -6
- package/dist/Button/index.d.ts +1 -1
- package/dist/Calendar/Calendar.js +12 -8
- package/dist/Calendar/YearRangePanel.js +1 -1
- package/dist/Carousel/typings.d.ts +1 -1
- package/dist/Cascader/Cascader.d.ts +3 -3
- package/dist/Cascader/Cascader.js +238 -166
- package/dist/Cascader/CascaderContext.d.ts +9 -3
- package/dist/Cascader/CascaderContext.js +3 -1
- package/dist/Cascader/CascaderDropdown.d.ts +4 -3
- package/dist/Cascader/CascaderDropdown.js +21 -10
- package/dist/Cascader/CascaderMenu.d.ts +2 -2
- package/dist/Cascader/CascaderMenu.js +56 -14
- package/dist/Cascader/CascaderPanel.d.ts +4 -0
- package/dist/Cascader/CascaderPanel.js +11 -0
- package/dist/Cascader/index.d.ts +4 -1
- package/dist/Cascader/index.js +2 -1
- package/dist/Cascader/typings.d.ts +45 -31
- package/dist/Cascader/useCascader.d.ts +14 -13
- package/dist/Cascader/useCascader.js +120 -27
- package/dist/CheckboxGroup/CheckboxGroup.d.ts +11 -1
- package/dist/CheckboxGroup/CheckboxGroup.js +78 -19
- package/dist/Collapse/Collapse.d.ts +3 -3
- package/dist/Collapse/Collapse.js +71 -16
- package/dist/Collapse/CollapseContext.d.ts +3 -6
- package/dist/Collapse/CollapseContext.js +2 -4
- package/dist/Collapse/CollapseItem.d.ts +3 -3
- package/dist/Collapse/CollapseItem.js +93 -51
- package/dist/Collapse/CollapseTransition.js +11 -7
- package/dist/Collapse/index.d.ts +1 -1
- package/dist/Collapse/typings.d.ts +20 -5
- package/dist/ColorPicker/typings.d.ts +1 -1
- package/dist/Countdown/Countdown.d.ts +4 -0
- package/dist/Countdown/Countdown.js +121 -0
- package/dist/Countdown/index.d.ts +2 -0
- package/dist/Countdown/index.js +1 -0
- package/dist/Countdown/typings.d.ts +52 -0
- package/dist/Countdown/typings.js +1 -0
- package/dist/Countdown/util.d.ts +14 -0
- package/dist/Countdown/util.js +58 -0
- package/dist/DatePicker/DatePicker.js +9 -6
- package/dist/DatePicker/DateRangePicker.js +7 -6
- package/dist/DatePicker/typings.d.ts +0 -13
- package/dist/DateTimePicker/DateTimePicker.js +29 -19
- package/dist/Dialog/Dialog.d.ts +2 -13
- package/dist/Dialog/Dialog.js +139 -149
- package/dist/Dialog/DialogBody.js +3 -38
- package/dist/Dialog/DialogContext.d.ts +0 -7
- package/dist/Dialog/DialogContext.js +1 -5
- package/dist/Dialog/DialogHeader.js +2 -2
- package/dist/Dialog/typings.d.ts +43 -28
- package/dist/Dialog/useDraggable.d.ts +2 -1
- package/dist/Dialog/useDraggable.js +34 -9
- package/dist/Drawer/Drawer.d.ts +2 -13
- package/dist/Drawer/Drawer.js +115 -137
- package/dist/Drawer/DrawerBody.js +7 -8
- package/dist/Drawer/DrawerFooter.js +7 -7
- package/dist/Drawer/DrawerHeader.js +11 -8
- package/dist/Drawer/typings.d.ts +22 -6
- package/dist/Dropdown/Dropdown.js +5 -3
- package/dist/Dropdown/typings.d.ts +2 -1
- package/dist/Empty/Empty.js +16 -4
- package/dist/Form/Form.d.ts +4 -21
- package/dist/Form/Form.js +53 -25
- package/dist/Form/FormItem.d.ts +4 -52
- package/dist/Form/FormItem.js +633 -650
- package/dist/Form/FormItemContext.d.ts +10 -1
- package/dist/Form/FormItemContext.js +9 -1
- package/dist/Form/FormLabelWrap.d.ts +8 -0
- package/dist/Form/FormLabelWrap.js +103 -0
- package/dist/Form/{FieldContext.d.ts → InternalFormContext.d.ts} +2 -2
- package/dist/Form/{FieldContext.js → InternalFormContext.js} +5 -2
- package/dist/Form/List.d.ts +3 -3
- package/dist/Form/List.js +4 -4
- package/dist/Form/index.d.ts +4 -2
- package/dist/Form/index.js +4 -1
- package/dist/Form/typings.d.ts +61 -9
- package/dist/Form/typings.js +15 -1
- package/dist/Form/useForm.js +3 -3
- package/dist/Form/useWatch.js +1 -1
- package/dist/Input/Input.d.ts +2 -14
- package/dist/Input/Input.js +122 -100
- package/dist/Input/InputGroup.js +1 -1
- package/dist/Input/InputRange.js +7 -11
- package/dist/Input/TextArea.d.ts +1 -1
- package/dist/Input/TextArea.js +84 -29
- package/dist/Input/index.d.ts +1 -0
- package/dist/Input/index.js +2 -1
- package/dist/Input/typings.d.ts +3 -25
- package/dist/InputNumber/InputNumber.js +74 -23
- package/dist/InputNumber/typings.d.ts +0 -4
- package/dist/Menu/Menu.js +1 -1
- package/dist/Menu/typings.d.ts +3 -13
- package/dist/Message/index.js +5 -3
- package/dist/MessageBox/MessageBox.js +29 -33
- package/dist/MessageBox/typings.d.ts +0 -1
- package/dist/Notification/typings.d.ts +1 -1
- package/dist/PageHeader/PageHeader.d.ts +8 -0
- package/dist/PageHeader/PageHeader.js +91 -0
- package/dist/PageHeader/index.d.ts +2 -0
- package/dist/PageHeader/index.js +1 -0
- package/dist/PageHeader/typings.d.ts +34 -0
- package/dist/PageHeader/typings.js +1 -0
- package/dist/Pagination/typings.d.ts +1 -1
- package/dist/Popover/Popover.js +7 -7
- package/dist/Popover/typings.d.ts +3 -3
- package/dist/Popper/Popper.js +49 -28
- package/dist/Popper/popperOptions.js +1 -0
- package/dist/Popper/typings.d.ts +2 -0
- package/dist/Radio/Radio.d.ts +2 -12
- package/dist/Radio/Radio.js +2 -6
- package/dist/Radio/RadioButton.d.ts +1 -1
- package/dist/Radio/RadioButton.js +4 -4
- package/dist/Radio/index.d.ts +1 -0
- package/dist/Radio/index.js +2 -1
- package/dist/Radio/typings.d.ts +1 -1
- package/dist/RadioGroup/RadioGroup.js +44 -16
- package/dist/RadioGroup/typings.d.ts +10 -0
- package/dist/Segmented/Segmented.d.ts +4 -0
- package/dist/Segmented/Segmented.js +208 -0
- package/dist/Segmented/index.d.ts +2 -0
- package/dist/Segmented/index.js +1 -0
- package/dist/Segmented/typings.d.ts +20 -0
- package/dist/Segmented/typings.js +5 -0
- package/dist/Select/SelectCore.js +52 -9
- package/dist/Select/typings.d.ts +13 -8
- package/dist/Select/useSelect.d.ts +23 -9
- package/dist/Select/useSelect.js +55 -8
- package/dist/Skeleton/typings.d.ts +1 -1
- package/dist/Slider/Button.d.ts +4 -0
- package/dist/Slider/Button.js +96 -0
- package/dist/Slider/Marker.d.ts +4 -0
- package/dist/Slider/Marker.js +31 -0
- package/dist/Slider/Slider.d.ts +4 -0
- package/dist/Slider/Slider.js +263 -0
- package/dist/Slider/SliderContext.d.ts +3 -0
- package/dist/Slider/SliderContext.js +2 -0
- package/dist/Slider/hooks/index.d.ts +5 -0
- package/dist/Slider/hooks/index.js +5 -0
- package/dist/Slider/hooks/useLifecycle.d.ts +5 -0
- package/dist/Slider/hooks/useLifecycle.js +50 -0
- package/dist/Slider/hooks/useMarks.d.ts +2 -0
- package/dist/Slider/hooks/useMarks.js +49 -0
- package/dist/Slider/hooks/useSlider.d.ts +38 -0
- package/dist/Slider/hooks/useSlider.js +227 -0
- package/dist/Slider/hooks/useSliderButton.d.ts +28 -0
- package/dist/Slider/hooks/useSliderButton.js +454 -0
- package/dist/Slider/hooks/useStops.d.ts +6 -0
- package/dist/Slider/hooks/useStops.js +47 -0
- package/dist/Slider/hooks/useWatch.d.ts +3 -0
- package/dist/Slider/hooks/useWatch.js +119 -0
- package/dist/Slider/index.d.ts +2 -0
- package/dist/Slider/index.js +1 -0
- package/dist/Slider/style/css.d.ts +1 -0
- package/dist/Slider/style/css.js +1 -0
- package/dist/Slider/style/index.d.ts +1 -0
- package/dist/Slider/style/index.js +1 -0
- package/dist/Slider/typings.d.ts +122 -0
- package/dist/Slider/typings.js +1 -0
- package/dist/Space/Space.js +9 -12
- package/dist/Space/useSpace.js +2 -1
- package/dist/Statistic/Statistic.js +1 -2
- package/dist/Steps/Step.d.ts +4 -0
- package/dist/Steps/Step.js +247 -0
- package/dist/Steps/Steps.d.ts +5 -0
- package/dist/Steps/Steps.js +116 -0
- package/dist/Steps/index.d.ts +3 -0
- package/dist/Steps/index.js +2 -0
- package/dist/Steps/typings.d.ts +119 -0
- package/dist/Steps/typings.js +1 -0
- package/dist/Switch/typings.d.ts +0 -1
- package/dist/Table/Table.js +14 -14
- package/dist/Table/TableBody.js +4 -4
- package/dist/Table/TableCell.js +53 -28
- package/dist/Table/TableColumn.d.ts +2 -2
- package/dist/Table/TableHeader.js +2 -2
- package/dist/Table/TableHeaderCell.js +2 -2
- package/dist/Table/hooks/useResize.js +0 -2
- package/dist/Table/hooks/useTable.d.ts +1 -1
- package/dist/Table/hooks/useTable.js +15 -10
- package/dist/Table/typings.d.ts +26 -12
- package/dist/Table/util.d.ts +1 -1
- package/dist/Table/util.js +8 -65
- package/dist/TableV2/index.d.ts +10 -0
- package/dist/TableV2/index.js +7 -0
- package/dist/TableV2/src/auto-resizer.d.ts +14 -0
- package/dist/TableV2/src/auto-resizer.js +1 -0
- package/dist/TableV2/src/cell.d.ts +21 -0
- package/dist/TableV2/src/cell.js +1 -0
- package/dist/TableV2/src/components/auto-resizer.d.ts +4 -0
- package/dist/TableV2/src/components/auto-resizer.js +32 -0
- package/dist/TableV2/src/components/cell.d.ts +4 -0
- package/dist/TableV2/src/components/cell.js +22 -0
- package/dist/TableV2/src/components/expand-icon.d.ts +12 -0
- package/dist/TableV2/src/components/expand-icon.js +29 -0
- package/dist/TableV2/src/components/header-cell.d.ts +4 -0
- package/dist/TableV2/src/components/header-cell.js +23 -0
- package/dist/TableV2/src/components/header-row.d.ts +17 -0
- package/dist/TableV2/src/components/header-row.js +41 -0
- package/dist/TableV2/src/components/header.d.ts +20 -0
- package/dist/TableV2/src/components/header.js +103 -0
- package/dist/TableV2/src/components/index.d.ts +10 -0
- package/dist/TableV2/src/components/index.js +7 -0
- package/dist/TableV2/src/components/row.d.ts +19 -0
- package/dist/TableV2/src/components/row.js +206 -0
- package/dist/TableV2/src/components/sort-icon.d.ts +9 -0
- package/dist/TableV2/src/components/sort-icon.js +14 -0
- package/dist/TableV2/src/composables/index.d.ts +6 -0
- package/dist/TableV2/src/composables/index.js +6 -0
- package/dist/TableV2/src/composables/use-auto-resize.d.ts +7 -0
- package/dist/TableV2/src/composables/use-auto-resize.js +55 -0
- package/dist/TableV2/src/composables/use-columns.d.ts +21 -0
- package/dist/TableV2/src/composables/use-columns.js +119 -0
- package/dist/TableV2/src/composables/use-data.d.ts +15 -0
- package/dist/TableV2/src/composables/use-data.js +62 -0
- package/dist/TableV2/src/composables/use-row.d.ts +34 -0
- package/dist/TableV2/src/composables/use-row.js +191 -0
- package/dist/TableV2/src/composables/use-scrollbar.d.ts +25 -0
- package/dist/TableV2/src/composables/use-scrollbar.js +117 -0
- package/dist/TableV2/src/composables/use-styles.d.ts +23 -0
- package/dist/TableV2/src/composables/use-styles.js +90 -0
- package/dist/TableV2/src/composables/utils.d.ts +3 -0
- package/dist/TableV2/src/composables/utils.js +29 -0
- package/dist/TableV2/src/constants.d.ts +18 -0
- package/dist/TableV2/src/constants.js +22 -0
- package/dist/TableV2/src/grid.d.ts +52 -0
- package/dist/TableV2/src/grid.js +1 -0
- package/dist/TableV2/src/header-cell.d.ts +13 -0
- package/dist/TableV2/src/header-cell.js +1 -0
- package/dist/TableV2/src/header-row.d.ts +10 -0
- package/dist/TableV2/src/header-row.js +1 -0
- package/dist/TableV2/src/header.d.ts +15 -0
- package/dist/TableV2/src/header.js +1 -0
- package/dist/TableV2/src/private.d.ts +1 -0
- package/dist/TableV2/src/private.js +1 -0
- package/dist/TableV2/src/renderers/cell.d.ts +14 -0
- package/dist/TableV2/src/renderers/cell.js +120 -0
- package/dist/TableV2/src/renderers/empty.d.ts +7 -0
- package/dist/TableV2/src/renderers/empty.js +11 -0
- package/dist/TableV2/src/renderers/footer.d.ts +7 -0
- package/dist/TableV2/src/renderers/footer.js +9 -0
- package/dist/TableV2/src/renderers/header-cell.d.ts +13 -0
- package/dist/TableV2/src/renderers/header-cell.js +92 -0
- package/dist/TableV2/src/renderers/header.d.ts +9 -0
- package/dist/TableV2/src/renderers/header.js +39 -0
- package/dist/TableV2/src/renderers/left-table.d.ts +32 -0
- package/dist/TableV2/src/renderers/left-table.js +15 -0
- package/dist/TableV2/src/renderers/main-table.d.ts +31 -0
- package/dist/TableV2/src/renderers/main-table.js +12 -0
- package/dist/TableV2/src/renderers/overlay.d.ts +3 -0
- package/dist/TableV2/src/renderers/overlay.js +9 -0
- package/dist/TableV2/src/renderers/right-table.d.ts +31 -0
- package/dist/TableV2/src/renderers/right-table.js +15 -0
- package/dist/TableV2/src/renderers/row.d.ts +11 -0
- package/dist/TableV2/src/renderers/row.js +96 -0
- package/dist/TableV2/src/row.d.ts +51 -0
- package/dist/TableV2/src/row.js +1 -0
- package/dist/TableV2/src/table-grid.d.ts +43 -0
- package/dist/TableV2/src/table-grid.js +283 -0
- package/dist/TableV2/src/table-v2.d.ts +31 -0
- package/dist/TableV2/src/table-v2.js +311 -0
- package/dist/TableV2/src/table.d.ts +196 -0
- package/dist/TableV2/src/table.js +1 -0
- package/dist/TableV2/src/tokens.d.ts +11 -0
- package/dist/TableV2/src/tokens.js +6 -0
- package/dist/TableV2/src/types.d.ts +94 -0
- package/dist/TableV2/src/types.js +1 -0
- package/dist/TableV2/src/use-table.d.ts +48 -0
- package/dist/TableV2/src/use-table.js +197 -0
- package/dist/TableV2/src/utils.d.ts +5 -0
- package/dist/TableV2/src/utils.js +47 -0
- package/dist/Tabs/Tabs.js +1 -1
- package/dist/Tabs/typings.d.ts +1 -3
- package/dist/Tag/Tag.js +1 -1
- package/dist/TimePicker/TimePicker.js +6 -7
- package/dist/TimePicker/TimePickerPanel.js +12 -2
- package/dist/TimePicker/TimePickerRange.js +19 -8
- package/dist/Tooltip/Tooltip.js +31 -8
- package/dist/Tooltip/typings.d.ts +4 -0
- package/dist/Tour/Content.d.ts +9 -0
- package/dist/Tour/Content.js +81 -0
- package/dist/Tour/Mask.d.ts +12 -0
- package/dist/Tour/Mask.js +100 -0
- package/dist/Tour/Step.d.ts +7 -0
- package/dist/Tour/Step.js +119 -0
- package/dist/Tour/Tour.d.ts +6 -0
- package/dist/Tour/Tour.js +237 -0
- package/dist/Tour/context.d.ts +4 -0
- package/dist/Tour/context.js +9 -0
- package/dist/Tour/helper.d.ts +39 -0
- package/dist/Tour/helper.js +286 -0
- package/dist/Tour/index.d.ts +3 -0
- package/dist/Tour/index.js +2 -0
- package/dist/Tour/typings.d.ts +318 -0
- package/dist/Tour/typings.js +38 -0
- package/dist/Transfer/List.js +58 -59
- package/dist/Transfer/ListItem.d.ts +2 -2
- package/dist/Transfer/Transfer.d.ts +2 -2
- package/dist/Transfer/Transfer.js +84 -70
- package/dist/Transfer/index.d.ts +1 -1
- package/dist/Transfer/operation.js +8 -10
- package/dist/Transfer/typings/index.d.ts +49 -38
- package/dist/Transfer/typings/list.d.ts +11 -11
- package/dist/Transfer/typings/listBody.d.ts +2 -2
- package/dist/Transition/Transition.d.ts +1 -0
- package/dist/Transition/Transition.js +8 -7
- package/dist/Tree/Tree.js +1 -0
- package/dist/Tree/model/tree-store.js +4 -4
- package/dist/Tree/typings.d.ts +3 -1
- package/dist/TreeSelect/typings.d.ts +1 -1
- package/dist/TreeSelect/useSelect.d.ts +38 -85
- package/dist/TreeSelect/useSelect.js +1 -1
- package/dist/TreeSelect/useTree.d.ts +47 -52
- package/dist/TreeSelect/useTree.js +2 -2
- package/dist/Upload/UploadContent.js +1 -1
- package/dist/Upload/typings.d.ts +1 -1
- package/dist/Util/PopupManager.js +1 -1
- package/dist/Util/aria.d.ts +1 -1
- package/dist/Util/base.d.ts +33 -8
- package/dist/Util/base.js +44 -16
- package/dist/Util/easings.d.ts +1 -0
- package/dist/Util/easings.js +8 -0
- package/dist/Util/error.d.ts +3 -0
- package/dist/Util/error.js +39 -0
- package/dist/Util/icons.d.ts +2 -0
- package/dist/Util/icons.js +15 -0
- package/dist/Util/index.d.ts +6 -2
- package/dist/Util/index.js +6 -2
- package/dist/Util/position.d.ts +9 -0
- package/dist/Util/position.js +53 -0
- package/dist/Util/raf.d.ts +4 -0
- package/dist/Util/raf.js +10 -0
- package/dist/Util/scroll.d.ts +9 -0
- package/dist/Util/scroll.js +72 -0
- package/dist/Util/throttleByRaf.d.ts +4 -0
- package/dist/Util/throttleByRaf.js +21 -0
- package/dist/VirtualList/builders/build-grid.d.ts +5 -0
- package/dist/VirtualList/builders/build-grid.js +561 -0
- package/dist/VirtualList/builders/build-list.d.ts +7 -0
- package/dist/VirtualList/builders/build-list.js +408 -0
- package/dist/VirtualList/components/dynamic-size-grid.d.ts +15 -0
- package/dist/VirtualList/components/dynamic-size-grid.js +242 -0
- package/dist/VirtualList/components/dynamic-size-list.d.ts +7 -0
- package/dist/VirtualList/components/dynamic-size-list.js +186 -0
- package/dist/VirtualList/components/fixed-size-grid.d.ts +4 -0
- package/dist/VirtualList/components/fixed-size-grid.js +161 -0
- package/dist/VirtualList/components/fixed-size-list.d.ts +7 -0
- package/dist/VirtualList/components/fixed-size-list.js +103 -0
- package/dist/VirtualList/components/scrollbar.d.ts +5 -0
- package/dist/VirtualList/components/scrollbar.js +272 -0
- package/dist/VirtualList/defaults.d.ts +26 -0
- package/dist/VirtualList/defaults.js +24 -0
- package/dist/VirtualList/hooks/use-cache.d.ts +1 -0
- package/dist/VirtualList/hooks/use-cache.js +16 -0
- package/dist/VirtualList/hooks/use-grid-touch.d.ts +8 -0
- package/dist/VirtualList/hooks/use-grid-touch.js +58 -0
- package/dist/VirtualList/hooks/use-grid-wheel.d.ts +12 -0
- package/dist/VirtualList/hooks/use-grid-wheel.js +48 -0
- package/dist/VirtualList/hooks/use-wheel.d.ts +12 -0
- package/dist/VirtualList/hooks/use-wheel.js +41 -0
- package/dist/VirtualList/index.d.ts +9 -0
- package/dist/VirtualList/index.js +6 -0
- package/dist/VirtualList/props.d.ts +95 -0
- package/dist/VirtualList/props.js +42 -0
- package/dist/VirtualList/types.d.ts +151 -0
- package/dist/VirtualList/types.js +1 -0
- package/dist/VirtualList/utils.d.ts +11 -0
- package/dist/VirtualList/utils.js +56 -0
- package/dist/Watermark/Watermark.d.ts +4 -0
- package/dist/Watermark/Watermark.js +257 -0
- package/dist/Watermark/helper.d.ts +50 -0
- package/dist/Watermark/helper.js +253 -0
- package/dist/Watermark/index.d.ts +2 -0
- package/dist/Watermark/index.js +1 -0
- package/dist/Watermark/typings.d.ts +93 -0
- package/dist/Watermark/typings.js +1 -0
- package/dist/hooks/index.d.ts +1 -0
- package/dist/hooks/useClassNames.d.ts +1 -0
- package/dist/hooks/useClickOutside.js +25 -9
- package/dist/hooks/useCommonProps.d.ts +4 -0
- package/dist/hooks/useCommonProps.js +12 -3
- package/dist/hooks/useLockscreen.d.ts +6 -0
- package/dist/hooks/useLockscreen.js +45 -0
- package/dist/hooks/useResizeObserver.d.ts +1 -1
- package/dist/hooks/useResizeObserver.js +1 -1
- package/dist/index.css +1 -1
- package/dist/index.d.ts +33 -12
- package/dist/index.js +17 -6
- package/dist/locale/en.d.ts +4 -1
- package/dist/locale/en.js +4 -1
- package/dist/locale/zhCn.d.ts +4 -1
- package/dist/locale/zhCn.js +4 -1
- package/package.json +5 -3
- package/theme-chalk/affix.scss +7 -0
- package/theme-chalk/alert.scss +115 -115
- package/theme-chalk/anchor-link.scss +45 -0
- package/theme-chalk/anchor.scss +93 -0
- package/theme-chalk/backtop.scss +29 -0
- package/theme-chalk/breadcrumb-item.scss +58 -0
- package/theme-chalk/breadcrumb.scss +5 -61
- package/theme-chalk/cascader-panel.scss +57 -82
- package/theme-chalk/cascader.scss +206 -160
- package/theme-chalk/checkbox.scss +4 -0
- package/theme-chalk/collapse-item.scss +72 -0
- package/theme-chalk/collapse.scss +21 -76
- package/theme-chalk/common/popup.scss +47 -0
- package/theme-chalk/common/var.scss +62 -6
- package/theme-chalk/dialog.scss +145 -137
- package/theme-chalk/drawer.scss +252 -247
- package/theme-chalk/form-item.scss +437 -0
- package/theme-chalk/form.scss +23 -361
- package/theme-chalk/index.scss +17 -1
- package/theme-chalk/input/input.scss +19 -0
- package/theme-chalk/input-number.scss +179 -192
- package/theme-chalk/message-box.scss +160 -133
- package/theme-chalk/message.scss +104 -104
- package/theme-chalk/mixins/mixins.scss +148 -151
- package/theme-chalk/notification.scss +109 -109
- package/theme-chalk/overlay.scss +17 -0
- package/theme-chalk/page-header.scss +60 -0
- package/theme-chalk/popper.scss +1 -1
- package/theme-chalk/radio.scss +3 -3
- package/theme-chalk/segmented.scss +186 -0
- package/theme-chalk/slider.scss +212 -0
- package/theme-chalk/space.scss +20 -20
- package/theme-chalk/statistic.scss +35 -35
- package/theme-chalk/step.scss +320 -0
- package/theme-chalk/steps.scss +22 -0
- package/theme-chalk/table-v2.scss +237 -0
- package/theme-chalk/table.scss +461 -482
- package/theme-chalk/time-range-picker.scss +1 -1
- package/theme-chalk/tooltip.scss +2 -2
- package/theme-chalk/tour.scss +170 -0
- package/theme-chalk/transfer.scss +38 -12
- package/theme-chalk/tree-select.scss +41 -41
- package/theme-chalk/virtual-list.scss +40 -0
- package/theme-chalk/button/_mixins.scss +0 -317
- package/theme-chalk/button/button-group.scss +0 -83
- package/theme-chalk/button/button.scss +0 -382
- package/theme-chalk/button/index.scss +0 -2
- package/theme-chalk/button--bak/_mixins.scss +0 -317
- package/theme-chalk/button--bak/button-group.scss +0 -83
- package/theme-chalk/button--bak/button.scss +0 -382
- package/theme-chalk/button--bak/index.scss +0 -2
- package/theme-chalk/calendar/date-table.scss--bak +0 -156
- package/theme-chalk/input/input.scss--bak +0 -578
- package/theme-chalk/input-number.bak +0 -172
- package/theme-chalk/link.scss--bak +0 -99
- package/theme-chalk/notification.bak +0 -156
- package/theme-chalk/popper.scss--bak +0 -86
- package/theme-chalk/radio-button.scss--bak +0 -128
- package/theme-chalk/select/index.scss--bak +0 -247
- package/theme-chalk/switch.scss--bak +0 -273
- package/theme-chalk/tag.scss--bak +0 -203
- package/theme-chalk/tree/_directory.scss +0 -73
- package/theme-chalk/tree/_tree.scss +0 -401
- package/theme-chalk/tree/index.scss +0 -2
- /package/dist/TreeSelect/{utils.d.ts → Utils.d.ts} +0 -0
- /package/dist/TreeSelect/{utils.js → Utils.js} +0 -0
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
|
|
2
|
+
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
3
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
4
|
+
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
5
|
+
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
|
|
6
|
+
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
|
7
|
+
import { VERTICAL } from "./defaults";
|
|
8
|
+
var mutable = function mutable(data) {
|
|
9
|
+
return data;
|
|
10
|
+
};
|
|
11
|
+
export var defaultVirtualizedProps = {
|
|
12
|
+
className: '',
|
|
13
|
+
containerElement: 'div',
|
|
14
|
+
data: mutable([]),
|
|
15
|
+
direction: 'ltr',
|
|
16
|
+
innerElement: 'div',
|
|
17
|
+
innerProps: {},
|
|
18
|
+
perfMode: true
|
|
19
|
+
};
|
|
20
|
+
export var defaultVirtualizedListProps = _objectSpread({
|
|
21
|
+
cache: 2,
|
|
22
|
+
layout: VERTICAL,
|
|
23
|
+
initScrollOffset: 0
|
|
24
|
+
}, defaultVirtualizedProps);
|
|
25
|
+
export var defaultVirtualizedGridProps = _objectSpread({
|
|
26
|
+
columnCache: 2,
|
|
27
|
+
itemKey: function itemKey(_ref) {
|
|
28
|
+
var columnIndex = _ref.columnIndex,
|
|
29
|
+
rowIndex = _ref.rowIndex;
|
|
30
|
+
return "".concat(rowIndex, ":").concat(columnIndex);
|
|
31
|
+
},
|
|
32
|
+
rowCache: 2,
|
|
33
|
+
hScrollbarSize: 6,
|
|
34
|
+
vScrollbarSize: 6,
|
|
35
|
+
scrollbarStartGap: 0,
|
|
36
|
+
scrollbarEndGap: 2
|
|
37
|
+
}, defaultVirtualizedProps);
|
|
38
|
+
export var defaultVirtualizedScrollbarProps = {
|
|
39
|
+
scrollbarSize: 6,
|
|
40
|
+
startGap: 0,
|
|
41
|
+
endGap: 2
|
|
42
|
+
};
|
|
@@ -0,0 +1,151 @@
|
|
|
1
|
+
import type { CSSProperties, MutableRefObject, Ref } from 'react';
|
|
2
|
+
import { BACKWARD, FORWARD } from './defaults';
|
|
3
|
+
export type Alignment = 'auto' | 'smart' | 'center' | 'start' | 'end';
|
|
4
|
+
export type ItemSize = (idx: number) => number;
|
|
5
|
+
export type Direction = 'ltr' | 'rtl';
|
|
6
|
+
export type LayoutDirection = 'horizontal' | 'vertical';
|
|
7
|
+
export type RTLOffsetType = 'negative' | 'positive-descending' | 'positive-ascending';
|
|
8
|
+
export type ItemProps<T> = {
|
|
9
|
+
data: T;
|
|
10
|
+
style: CSSProperties;
|
|
11
|
+
scrolling?: boolean;
|
|
12
|
+
index: number;
|
|
13
|
+
};
|
|
14
|
+
export type ListItem = {
|
|
15
|
+
offset: number;
|
|
16
|
+
size: number;
|
|
17
|
+
};
|
|
18
|
+
export type ListCache = {
|
|
19
|
+
items: Record<string, ListItem>;
|
|
20
|
+
estimatedItemSize: number;
|
|
21
|
+
lastVisitedIndex: number;
|
|
22
|
+
clearCacheAfterIndex: (idx: number, forceUpdate?: boolean) => void;
|
|
23
|
+
};
|
|
24
|
+
export type GridCache = {
|
|
25
|
+
column: Record<string, ListItem>;
|
|
26
|
+
row: Record<string, ListItem>;
|
|
27
|
+
estimatedColumnWidth: number;
|
|
28
|
+
estimatedRowHeight: number;
|
|
29
|
+
lastVisitedColumnIndex: number;
|
|
30
|
+
lastVisitedRowIndex: number;
|
|
31
|
+
};
|
|
32
|
+
export type ScrollDir = 'forwards' | 'backwards';
|
|
33
|
+
export type GetEstimatedTotalSize<T, P extends InitCacheFunc<T, GridCache | ListCache>> = (props: T, cache: ReturnType<P>) => number;
|
|
34
|
+
export type GetOffset<T, P extends InitListCacheFunc<T>> = (props: T, idx: number, alignment: Alignment, offset: number, cache: ReturnType<P>) => number;
|
|
35
|
+
export type GetStartIndexForOffset<T, P extends InitCacheFunc<T, GridCache | ListCache>> = (props: T, offset: number, cache: ReturnType<P>) => number;
|
|
36
|
+
export type GetStopIndexForStartIndex<T, P extends InitCacheFunc<T, GridCache | ListCache>> = (props: T, startIndex: number, scrollOffset: number, cache: ReturnType<P>) => number;
|
|
37
|
+
export type PropValidator<T> = (props: T) => void;
|
|
38
|
+
export type InitCacheFunc<T, P> = (props: T) => P;
|
|
39
|
+
export type InitListCacheFunc<T> = InitCacheFunc<T, ListCache>;
|
|
40
|
+
export type InitGridCacheFunc<T> = InitCacheFunc<T, GridCache>;
|
|
41
|
+
export type ListConstructorProps<T, P extends InitListCacheFunc<T> = InitListCacheFunc<T>> = {
|
|
42
|
+
name?: string;
|
|
43
|
+
getItemOffset: ListItemSizer<T, P>;
|
|
44
|
+
getEstimatedTotalSize: GetEstimatedTotalSize<T, P>;
|
|
45
|
+
getItemSize: ListItemSizer<T, P>;
|
|
46
|
+
getOffset: GetOffset<T, P>;
|
|
47
|
+
getStartIndexForOffset: GetStartIndexForOffset<T, P>;
|
|
48
|
+
getStopIndexForStartIndex: GetStopIndexForStartIndex<T, P>;
|
|
49
|
+
initCache: P;
|
|
50
|
+
clearCache: boolean;
|
|
51
|
+
validateProps: PropValidator<T>;
|
|
52
|
+
};
|
|
53
|
+
export type ExposesStates = {
|
|
54
|
+
isScrolling: boolean;
|
|
55
|
+
updateRequested: boolean;
|
|
56
|
+
};
|
|
57
|
+
export type SharedExposes = {
|
|
58
|
+
windowRef: Ref<HTMLElement | null>;
|
|
59
|
+
innerRef: Ref<HTMLElement | null>;
|
|
60
|
+
getItemStyleCache: (_: any, __: any, ___: any) => CSSProperties;
|
|
61
|
+
};
|
|
62
|
+
export type ListExposes = {
|
|
63
|
+
scrollTo: (offset: number) => void;
|
|
64
|
+
scrollToItem: (idx: number, alignment?: Alignment) => void;
|
|
65
|
+
states: {
|
|
66
|
+
scrollDir: Dir;
|
|
67
|
+
scrollOffset: number;
|
|
68
|
+
} & ExposesStates;
|
|
69
|
+
} & SharedExposes;
|
|
70
|
+
export type GridExposes = {
|
|
71
|
+
states: {
|
|
72
|
+
scrollLeft: number;
|
|
73
|
+
scrollTop: number;
|
|
74
|
+
xAxisScrollDir: Dir;
|
|
75
|
+
yAxisScrollDir: Dir;
|
|
76
|
+
} & ExposesStates;
|
|
77
|
+
touchStartX: Ref<number>;
|
|
78
|
+
touchStartY: Ref<number>;
|
|
79
|
+
handleTouchStart: (e: TouchEvent) => void;
|
|
80
|
+
handleTouchMove: (e: TouchEvent) => void;
|
|
81
|
+
scrollTo: (scrollOptions: GridScrollOptions) => void;
|
|
82
|
+
scrollToItem: (columnIndex?: number, rowIndex?: number, alignment?: Alignment) => void;
|
|
83
|
+
} & SharedExposes;
|
|
84
|
+
export type ScrollbarExpose = {
|
|
85
|
+
onMouseUp: () => void;
|
|
86
|
+
};
|
|
87
|
+
export type GetGridOffset<T, P extends InitGridCacheFunc<T>> = (props: T, index: number, alignment: Alignment, offset: number, cache: ReturnType<P>, scrollbarWidth: number) => number;
|
|
88
|
+
export type GetPosition<T, P extends InitGridCacheFunc<T>> = (props: T, index: number, cache: ReturnType<P>) => [number, number];
|
|
89
|
+
export type GridConstructorProps<T, P extends InitGridCacheFunc<T> = InitGridCacheFunc<T>> = {
|
|
90
|
+
name?: string;
|
|
91
|
+
getColumnOffset: GetGridOffset<T, P>;
|
|
92
|
+
getColumnPosition: GetPosition<T, P>;
|
|
93
|
+
getColumnStartIndexForOffset: GetStartIndexForOffset<T, P>;
|
|
94
|
+
getColumnStopIndexForStartIndex: GetStopIndexForStartIndex<T, P>;
|
|
95
|
+
getEstimatedTotalHeight: GetEstimatedTotalSize<T, P>;
|
|
96
|
+
getEstimatedTotalWidth: GetEstimatedTotalSize<T, P>;
|
|
97
|
+
getRowOffset: GetGridOffset<T, P>;
|
|
98
|
+
getRowPosition: GetPosition<T, P>;
|
|
99
|
+
getRowStartIndexForOffset: GetStartIndexForOffset<T, P>;
|
|
100
|
+
getRowStopIndexForStartIndex: GetStopIndexForStartIndex<T, P>;
|
|
101
|
+
initCache: P;
|
|
102
|
+
injectToInstance?: (cache: MutableRefObject<ReturnType<P>>) => void;
|
|
103
|
+
clearCache: boolean;
|
|
104
|
+
validateProps: PropValidator<T>;
|
|
105
|
+
};
|
|
106
|
+
/**
|
|
107
|
+
* Instance methods and emits
|
|
108
|
+
*/
|
|
109
|
+
export type GridDefaultSlotParams = {
|
|
110
|
+
columnIndex: number;
|
|
111
|
+
rowIndex: number;
|
|
112
|
+
data: any;
|
|
113
|
+
key: number | string;
|
|
114
|
+
isScrolling?: boolean;
|
|
115
|
+
style: CSSProperties;
|
|
116
|
+
};
|
|
117
|
+
export type GridItemRenderedEvtParams = {
|
|
118
|
+
columnCacheStart: number;
|
|
119
|
+
columnCacheEnd: number;
|
|
120
|
+
rowCacheStart: number;
|
|
121
|
+
rowCacheEnd: number;
|
|
122
|
+
columnVisibleStart: number;
|
|
123
|
+
columnVisibleEnd: number;
|
|
124
|
+
rowVisibleStart: number;
|
|
125
|
+
rowVisibleEnd: number;
|
|
126
|
+
};
|
|
127
|
+
export type GridScrollOptions = {
|
|
128
|
+
scrollLeft?: number;
|
|
129
|
+
scrollTop?: number;
|
|
130
|
+
};
|
|
131
|
+
export type GridItemKeyGetter = <T extends {
|
|
132
|
+
[key: string | number]: any;
|
|
133
|
+
}>(args: {
|
|
134
|
+
columnIndex: number;
|
|
135
|
+
data: T;
|
|
136
|
+
rowIndex: number;
|
|
137
|
+
}) => string | number;
|
|
138
|
+
export type Dir = typeof FORWARD | typeof BACKWARD;
|
|
139
|
+
export interface GridStates {
|
|
140
|
+
isScrolling: boolean;
|
|
141
|
+
scrollLeft: number;
|
|
142
|
+
scrollTop: number;
|
|
143
|
+
updateRequested: boolean;
|
|
144
|
+
xAxisScrollDir: Dir;
|
|
145
|
+
yAxisScrollDir: Dir;
|
|
146
|
+
}
|
|
147
|
+
export type ListItemSizer<T, P extends InitListCacheFunc<T>> = (props: T, index: number, cache: ReturnType<P>) => number;
|
|
148
|
+
export type Indices = {
|
|
149
|
+
columnIndex?: number;
|
|
150
|
+
rowIndex?: number;
|
|
151
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { CSSProperties } from 'react';
|
|
2
|
+
import type { Direction, RTLOffsetType } from './types';
|
|
3
|
+
export declare const getScrollDir: (prev: number, cur: number) => "backward" | "forward";
|
|
4
|
+
export declare const isHorizontal: (dir: string) => boolean;
|
|
5
|
+
export declare const isRTL: (dir: Direction) => boolean;
|
|
6
|
+
export declare function getRTLOffsetType(recalculate?: boolean): RTLOffsetType;
|
|
7
|
+
export declare function renderThumbStyle({ move, size, bar }: {
|
|
8
|
+
move: any;
|
|
9
|
+
size: any;
|
|
10
|
+
bar: any;
|
|
11
|
+
}, layout: string): CSSProperties;
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { BACKWARD, FORWARD, HORIZONTAL, LTR, RTL, RTL_OFFSET_NAG, RTL_OFFSET_POS_ASC, RTL_OFFSET_POS_DESC } from "./defaults";
|
|
2
|
+
export var getScrollDir = function getScrollDir(prev, cur) {
|
|
3
|
+
return prev < cur ? FORWARD : BACKWARD;
|
|
4
|
+
};
|
|
5
|
+
export var isHorizontal = function isHorizontal(dir) {
|
|
6
|
+
return dir === LTR || dir === RTL || dir === HORIZONTAL;
|
|
7
|
+
};
|
|
8
|
+
export var isRTL = function isRTL(dir) {
|
|
9
|
+
return dir === RTL;
|
|
10
|
+
};
|
|
11
|
+
var cachedRTLResult = null;
|
|
12
|
+
export function getRTLOffsetType() {
|
|
13
|
+
var recalculate = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
|
|
14
|
+
if (cachedRTLResult === null || recalculate) {
|
|
15
|
+
var outerDiv = document.createElement('div');
|
|
16
|
+
var outerStyle = outerDiv.style;
|
|
17
|
+
outerStyle.width = '50px';
|
|
18
|
+
outerStyle.height = '50px';
|
|
19
|
+
outerStyle.overflow = 'scroll';
|
|
20
|
+
outerStyle.direction = 'rtl';
|
|
21
|
+
var innerDiv = document.createElement('div');
|
|
22
|
+
var innerStyle = innerDiv.style;
|
|
23
|
+
innerStyle.width = '100px';
|
|
24
|
+
innerStyle.height = '100px';
|
|
25
|
+
outerDiv.appendChild(innerDiv);
|
|
26
|
+
document.body.appendChild(outerDiv);
|
|
27
|
+
if (outerDiv.scrollLeft > 0) {
|
|
28
|
+
cachedRTLResult = RTL_OFFSET_POS_DESC;
|
|
29
|
+
} else {
|
|
30
|
+
outerDiv.scrollLeft = 1;
|
|
31
|
+
if (outerDiv.scrollLeft === 0) {
|
|
32
|
+
cachedRTLResult = RTL_OFFSET_NAG;
|
|
33
|
+
} else {
|
|
34
|
+
cachedRTLResult = RTL_OFFSET_POS_ASC;
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
document.body.removeChild(outerDiv);
|
|
38
|
+
return cachedRTLResult;
|
|
39
|
+
}
|
|
40
|
+
return cachedRTLResult;
|
|
41
|
+
}
|
|
42
|
+
export function renderThumbStyle(_ref, layout) {
|
|
43
|
+
var move = _ref.move,
|
|
44
|
+
size = _ref.size,
|
|
45
|
+
bar = _ref.bar;
|
|
46
|
+
var style = {};
|
|
47
|
+
var translate = "translate".concat(bar.axis, "(").concat(move, "px)");
|
|
48
|
+
style[bar.size] = size;
|
|
49
|
+
style.transform = translate;
|
|
50
|
+
if (layout === 'horizontal') {
|
|
51
|
+
style.height = '100%';
|
|
52
|
+
} else {
|
|
53
|
+
style.width = '100%';
|
|
54
|
+
}
|
|
55
|
+
return style;
|
|
56
|
+
}
|
|
@@ -0,0 +1,257 @@
|
|
|
1
|
+
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
|
|
2
|
+
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
3
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
4
|
+
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
5
|
+
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
|
|
6
|
+
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
|
7
|
+
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
|
8
|
+
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
9
|
+
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
10
|
+
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
|
|
11
|
+
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
|
|
12
|
+
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
13
|
+
import React, { forwardRef, memo, useCallback, useEffect, useMemo, useRef, useState } from 'react';
|
|
14
|
+
import { getClips, getMarkSize, getPixelRatio, getStyleStr, reRendering } from "./helper";
|
|
15
|
+
/**
|
|
16
|
+
* @description 获取字体样式的默认值,返回必填字段的字体配置
|
|
17
|
+
* @param font - 可选的字体配置
|
|
18
|
+
* @returns 填充默认值后的完整字体配置
|
|
19
|
+
*/
|
|
20
|
+
function getFontConfig(font) {
|
|
21
|
+
var _font$color, _font$fontSize, _font$fontWeight, _font$fontStyle, _font$fontFamily, _font$fontGap, _font$textAlign, _font$textBaseline;
|
|
22
|
+
return {
|
|
23
|
+
color: (_font$color = font === null || font === void 0 ? void 0 : font.color) !== null && _font$color !== void 0 ? _font$color : 'rgba(0,0,0,.15)',
|
|
24
|
+
fontSize: (_font$fontSize = font === null || font === void 0 ? void 0 : font.fontSize) !== null && _font$fontSize !== void 0 ? _font$fontSize : 16,
|
|
25
|
+
fontWeight: (_font$fontWeight = font === null || font === void 0 ? void 0 : font.fontWeight) !== null && _font$fontWeight !== void 0 ? _font$fontWeight : 'normal',
|
|
26
|
+
fontStyle: (_font$fontStyle = font === null || font === void 0 ? void 0 : font.fontStyle) !== null && _font$fontStyle !== void 0 ? _font$fontStyle : 'normal',
|
|
27
|
+
fontFamily: (_font$fontFamily = font === null || font === void 0 ? void 0 : font.fontFamily) !== null && _font$fontFamily !== void 0 ? _font$fontFamily : 'sans-serif',
|
|
28
|
+
fontGap: (_font$fontGap = font === null || font === void 0 ? void 0 : font.fontGap) !== null && _font$fontGap !== void 0 ? _font$fontGap : 3,
|
|
29
|
+
textAlign: (_font$textAlign = font === null || font === void 0 ? void 0 : font.textAlign) !== null && _font$textAlign !== void 0 ? _font$textAlign : 'center',
|
|
30
|
+
textBaseline: (_font$textBaseline = font === null || font === void 0 ? void 0 : font.textBaseline) !== null && _font$textBaseline !== void 0 ? _font$textBaseline : 'hanging'
|
|
31
|
+
};
|
|
32
|
+
}
|
|
33
|
+
var Watermark = /*#__PURE__*/memo( /*#__PURE__*/forwardRef(function (props, _ref3) {
|
|
34
|
+
var _props$zIndex = props.zIndex,
|
|
35
|
+
zIndex = _props$zIndex === void 0 ? 9 : _props$zIndex,
|
|
36
|
+
_props$rotate = props.rotate,
|
|
37
|
+
rotate = _props$rotate === void 0 ? -22 : _props$rotate,
|
|
38
|
+
_props$content = props.content,
|
|
39
|
+
content = _props$content === void 0 ? 'Element Plus' : _props$content,
|
|
40
|
+
width = props.width,
|
|
41
|
+
height = props.height,
|
|
42
|
+
image = props.image,
|
|
43
|
+
font = props.font,
|
|
44
|
+
_props$gap = props.gap,
|
|
45
|
+
gap = _props$gap === void 0 ? [100, 100] : _props$gap,
|
|
46
|
+
offset = props.offset,
|
|
47
|
+
className = props.className,
|
|
48
|
+
style = props.style,
|
|
49
|
+
children = props.children;
|
|
50
|
+
var fontConfig = useMemo(function () {
|
|
51
|
+
return getFontConfig(font);
|
|
52
|
+
}, [font]);
|
|
53
|
+
var gapX = useMemo(function () {
|
|
54
|
+
return gap[0];
|
|
55
|
+
}, [gap]);
|
|
56
|
+
var gapY = useMemo(function () {
|
|
57
|
+
return gap[1];
|
|
58
|
+
}, [gap]);
|
|
59
|
+
var gapXCenter = useMemo(function () {
|
|
60
|
+
return gapX / 2;
|
|
61
|
+
}, [gapX]);
|
|
62
|
+
var gapYCenter = useMemo(function () {
|
|
63
|
+
return gapY / 2;
|
|
64
|
+
}, [gapY]);
|
|
65
|
+
var offsetLeft = useMemo(function () {
|
|
66
|
+
var _ref, _offset$;
|
|
67
|
+
return (_ref = (_offset$ = offset === null || offset === void 0 ? void 0 : offset[0]) !== null && _offset$ !== void 0 ? _offset$ : gap === null || gap === void 0 ? void 0 : gap[0]) !== null && _ref !== void 0 ? _ref : gapXCenter;
|
|
68
|
+
}, [offset, gap, gapXCenter]);
|
|
69
|
+
var offsetTop = useMemo(function () {
|
|
70
|
+
var _ref2, _offset$2;
|
|
71
|
+
return (_ref2 = (_offset$2 = offset === null || offset === void 0 ? void 0 : offset[1]) !== null && _offset$2 !== void 0 ? _offset$2 : gap === null || gap === void 0 ? void 0 : gap[1]) !== null && _ref2 !== void 0 ? _ref2 : gapYCenter;
|
|
72
|
+
}, [offset, gap, gapYCenter]);
|
|
73
|
+
|
|
74
|
+
/**
|
|
75
|
+
* @description 计算水印元素的定位样式
|
|
76
|
+
* @returns 水印元素的 CSS 属性对象
|
|
77
|
+
*/
|
|
78
|
+
var getMarkStyle = useCallback(function () {
|
|
79
|
+
var markStyle = {
|
|
80
|
+
zIndex: zIndex,
|
|
81
|
+
position: 'absolute',
|
|
82
|
+
left: 0,
|
|
83
|
+
top: 0,
|
|
84
|
+
width: '100%',
|
|
85
|
+
height: '100%',
|
|
86
|
+
pointerEvents: 'none',
|
|
87
|
+
backgroundRepeat: 'repeat'
|
|
88
|
+
};
|
|
89
|
+
var positionLeft = offsetLeft - gapXCenter;
|
|
90
|
+
var positionTop = offsetTop - gapYCenter;
|
|
91
|
+
if (positionLeft > 0) {
|
|
92
|
+
markStyle.left = "".concat(positionLeft, "px");
|
|
93
|
+
markStyle.width = "calc(100% - ".concat(positionLeft, "px)");
|
|
94
|
+
positionLeft = 0;
|
|
95
|
+
}
|
|
96
|
+
if (positionTop > 0) {
|
|
97
|
+
markStyle.top = "".concat(positionTop, "px");
|
|
98
|
+
markStyle.height = "calc(100% - ".concat(positionTop, "px)");
|
|
99
|
+
positionTop = 0;
|
|
100
|
+
}
|
|
101
|
+
markStyle.backgroundPosition = "".concat(positionLeft, "px ").concat(positionTop, "px");
|
|
102
|
+
return markStyle;
|
|
103
|
+
}, [zIndex, offsetLeft, offsetTop, gapXCenter, gapYCenter]);
|
|
104
|
+
var containerRef = useRef(null);
|
|
105
|
+
var watermarkRef = useRef();
|
|
106
|
+
var _useState = useState(false),
|
|
107
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
108
|
+
stopObservation = _useState2[0],
|
|
109
|
+
setStopObservation = _useState2[1];
|
|
110
|
+
|
|
111
|
+
/**
|
|
112
|
+
* @description 销毁水印 DOM 元素
|
|
113
|
+
*/
|
|
114
|
+
var destroyWatermark = useCallback(function () {
|
|
115
|
+
if (watermarkRef.current) {
|
|
116
|
+
watermarkRef.current.remove();
|
|
117
|
+
watermarkRef.current = undefined;
|
|
118
|
+
}
|
|
119
|
+
}, []);
|
|
120
|
+
|
|
121
|
+
/**
|
|
122
|
+
* @description 将水印 base64 图片追加到容器中
|
|
123
|
+
* @param base64Url - Canvas 导出的 base64 数据 URL
|
|
124
|
+
* @param markWidth - 水印图案的宽度
|
|
125
|
+
*/
|
|
126
|
+
var appendWatermark = useCallback(function (base64Url, markWidth) {
|
|
127
|
+
if (containerRef.current && watermarkRef.current) {
|
|
128
|
+
setStopObservation(true);
|
|
129
|
+
watermarkRef.current.setAttribute('style', getStyleStr(_objectSpread(_objectSpread({}, getMarkStyle()), {}, {
|
|
130
|
+
backgroundImage: "url('".concat(base64Url, "')"),
|
|
131
|
+
backgroundSize: "".concat(Math.floor(markWidth), "px")
|
|
132
|
+
})));
|
|
133
|
+
containerRef.current.appendChild(watermarkRef.current);
|
|
134
|
+
setTimeout(function () {
|
|
135
|
+
setStopObservation(false);
|
|
136
|
+
});
|
|
137
|
+
}
|
|
138
|
+
}, [getMarkStyle, setStopObservation]);
|
|
139
|
+
|
|
140
|
+
/**
|
|
141
|
+
* @description 渲染水印到 Canvas 并插入 DOM
|
|
142
|
+
*/
|
|
143
|
+
var renderWatermark = useCallback(function () {
|
|
144
|
+
var canvas = document.createElement('canvas');
|
|
145
|
+
var ctx = canvas.getContext('2d');
|
|
146
|
+
if (ctx) {
|
|
147
|
+
if (!watermarkRef.current) {
|
|
148
|
+
watermarkRef.current = document.createElement('div');
|
|
149
|
+
}
|
|
150
|
+
var ratio = getPixelRatio();
|
|
151
|
+
var _getMarkSize = getMarkSize({
|
|
152
|
+
image: image,
|
|
153
|
+
content: content,
|
|
154
|
+
width: width,
|
|
155
|
+
height: height,
|
|
156
|
+
rotate: rotate,
|
|
157
|
+
font: fontConfig
|
|
158
|
+
}, ctx),
|
|
159
|
+
_getMarkSize2 = _slicedToArray(_getMarkSize, 3),
|
|
160
|
+
markWidth = _getMarkSize2[0],
|
|
161
|
+
markHeight = _getMarkSize2[1],
|
|
162
|
+
space = _getMarkSize2[2];
|
|
163
|
+
|
|
164
|
+
/**
|
|
165
|
+
* @description 在 Canvas 上绘制水印内容并追加到 DOM
|
|
166
|
+
* @param drawContent - 要绘制的内容(文本或图片元素),如果为 undefined 则使用 props.content
|
|
167
|
+
*/
|
|
168
|
+
var drawCanvas = function drawCanvas(drawContent) {
|
|
169
|
+
var currentContent = drawContent !== null && drawContent !== void 0 ? drawContent : content;
|
|
170
|
+
var _getClips = getClips(currentContent || '', rotate, ratio, markWidth, markHeight, fontConfig, gapX, gapY, space),
|
|
171
|
+
_getClips2 = _slicedToArray(_getClips, 2),
|
|
172
|
+
textClips = _getClips2[0],
|
|
173
|
+
clipWidth = _getClips2[1];
|
|
174
|
+
appendWatermark(textClips, clipWidth);
|
|
175
|
+
};
|
|
176
|
+
if (image) {
|
|
177
|
+
var img = new Image();
|
|
178
|
+
img.onload = function () {
|
|
179
|
+
drawCanvas(img);
|
|
180
|
+
};
|
|
181
|
+
img.onerror = function () {
|
|
182
|
+
drawCanvas(content);
|
|
183
|
+
};
|
|
184
|
+
img.crossOrigin = 'anonymous';
|
|
185
|
+
img.referrerPolicy = 'no-referrer';
|
|
186
|
+
img.src = image;
|
|
187
|
+
} else {
|
|
188
|
+
drawCanvas(content);
|
|
189
|
+
}
|
|
190
|
+
}
|
|
191
|
+
}, [image, content, width, height, rotate, fontConfig, gapX, gapY, appendWatermark]);
|
|
192
|
+
|
|
193
|
+
/**
|
|
194
|
+
* @description 组件挂载时渲染水印,卸载时销毁水印
|
|
195
|
+
*/
|
|
196
|
+
useEffect(function () {
|
|
197
|
+
renderWatermark();
|
|
198
|
+
return function () {
|
|
199
|
+
destroyWatermark();
|
|
200
|
+
};
|
|
201
|
+
}, []); // eslint-disable-line react-hooks/exhaustive-deps
|
|
202
|
+
|
|
203
|
+
/**
|
|
204
|
+
* @description 当 props 变化时重新渲染水印
|
|
205
|
+
*/
|
|
206
|
+
useEffect(function () {
|
|
207
|
+
renderWatermark();
|
|
208
|
+
}, [props]);
|
|
209
|
+
|
|
210
|
+
/**
|
|
211
|
+
* @description 使用 MutationObserver 监听 DOM 变化,防止水印被篡改
|
|
212
|
+
*/
|
|
213
|
+
useEffect(function () {
|
|
214
|
+
var container = containerRef.current;
|
|
215
|
+
if (!container) {
|
|
216
|
+
return;
|
|
217
|
+
}
|
|
218
|
+
var observer = new MutationObserver(function (mutations) {
|
|
219
|
+
if (stopObservation) {
|
|
220
|
+
return;
|
|
221
|
+
}
|
|
222
|
+
mutations.forEach(function (mutation) {
|
|
223
|
+
if (reRendering(mutation, watermarkRef.current)) {
|
|
224
|
+
destroyWatermark();
|
|
225
|
+
renderWatermark();
|
|
226
|
+
}
|
|
227
|
+
});
|
|
228
|
+
});
|
|
229
|
+
observer.observe(container, {
|
|
230
|
+
attributes: true,
|
|
231
|
+
subtree: true,
|
|
232
|
+
childList: true
|
|
233
|
+
});
|
|
234
|
+
return function () {
|
|
235
|
+
observer.disconnect();
|
|
236
|
+
};
|
|
237
|
+
}, [stopObservation, destroyWatermark, renderWatermark]);
|
|
238
|
+
var containerStyle = useMemo(function () {
|
|
239
|
+
return _objectSpread({
|
|
240
|
+
position: 'relative'
|
|
241
|
+
}, style);
|
|
242
|
+
}, [style]);
|
|
243
|
+
return /*#__PURE__*/React.createElement("div", {
|
|
244
|
+
ref: function ref(node) {
|
|
245
|
+
containerRef.current = node;
|
|
246
|
+
if (typeof _ref3 === 'function') {
|
|
247
|
+
_ref3(node);
|
|
248
|
+
} else if (_ref3) {
|
|
249
|
+
_ref3.current = node;
|
|
250
|
+
}
|
|
251
|
+
},
|
|
252
|
+
className: className,
|
|
253
|
+
style: containerStyle
|
|
254
|
+
}, children);
|
|
255
|
+
}));
|
|
256
|
+
Watermark.displayName = 'ElWatermark';
|
|
257
|
+
export default Watermark;
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import type { CSSProperties } from 'react';
|
|
2
|
+
import type { WatermarkFontType, WatermarkProps } from './typings';
|
|
3
|
+
/**
|
|
4
|
+
* @description 将 CSSProperties 对象转换为内联样式字符串
|
|
5
|
+
* @param style - CSS 属性对象
|
|
6
|
+
* @returns 内联样式字符串
|
|
7
|
+
*/
|
|
8
|
+
export declare function getStyleStr(style: CSSProperties): string;
|
|
9
|
+
/**
|
|
10
|
+
* @description 返回设备物理像素分辨率与 CSS 像素分辨率的比率
|
|
11
|
+
* @returns 设备像素比
|
|
12
|
+
*/
|
|
13
|
+
export declare function getPixelRatio(): number;
|
|
14
|
+
/**
|
|
15
|
+
* @description 判断是否需要重新渲染水印
|
|
16
|
+
* @param mutation - MutationRecord 对象
|
|
17
|
+
* @param watermarkElement - 水印 DOM 元素(可选)
|
|
18
|
+
* @returns 是否需要重新渲染
|
|
19
|
+
*/
|
|
20
|
+
export declare const reRendering: (mutation: MutationRecord, watermarkElement?: HTMLElement) => boolean;
|
|
21
|
+
/**
|
|
22
|
+
* @description 获取水印内容的 Canvas 剪辑(clips)
|
|
23
|
+
* 生成包含旋转和填充的水印图案 data URL
|
|
24
|
+
* @param content - 水印内容(文本或图片元素)
|
|
25
|
+
* @param rotate - 旋转角度
|
|
26
|
+
* @param ratio - 像素比率
|
|
27
|
+
* @param width - 内容宽度
|
|
28
|
+
* @param height - 内容高度
|
|
29
|
+
* @param font - 字体样式配置(必填)
|
|
30
|
+
* @param gapX - 水平间距
|
|
31
|
+
* @param gapY - 垂直间距
|
|
32
|
+
* @param space - 旋转后的额外空间
|
|
33
|
+
* @returns [dataURL, 最终宽度, 最终高度]
|
|
34
|
+
*/
|
|
35
|
+
export declare function getClips(content: NonNullable<WatermarkProps['content']> | HTMLImageElement, rotate: number, ratio: number, width: number, height: number, font: Required<NonNullable<WatermarkFontType>>, gapX: number, gapY: number, space: number): [dataURL: string, finalWidth: number, finalHeight: number];
|
|
36
|
+
/**
|
|
37
|
+
* @description 获取水印的宽度和高度
|
|
38
|
+
* 默认值:图片 [120, 64];文本内容:根据内容计算
|
|
39
|
+
* @param props - 水印组件属性
|
|
40
|
+
* @param ctx - Canvas 2D 渲染上下文
|
|
41
|
+
* @returns [宽度, 高度, 额外空间]
|
|
42
|
+
*/
|
|
43
|
+
export declare function getMarkSize(props: {
|
|
44
|
+
image?: string;
|
|
45
|
+
content?: string | string[];
|
|
46
|
+
width?: number;
|
|
47
|
+
height?: number;
|
|
48
|
+
rotate?: number;
|
|
49
|
+
font?: WatermarkFontType;
|
|
50
|
+
}, ctx: CanvasRenderingContext2D): readonly [number, number, number];
|