tdesign-react 0.38.0 → 0.38.1-alpha.1
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/tdesign.css.map +1 -1
- package/dist/tdesign.js +208 -186
- package/dist/tdesign.js.map +1 -1
- package/dist/tdesign.min.css +1 -1
- package/dist/tdesign.min.css.map +1 -1
- package/dist/tdesign.min.js +3 -3
- package/dist/tdesign.min.js.map +1 -1
- package/{esm/_chunks/dep-2f69a481.js → es/_chunks/dep-00108819.js} +4 -4
- package/es/_chunks/{dep-2f69a481.js.map → dep-00108819.js.map} +1 -1
- package/es/_chunks/{dep-c78fa1d4.js → dep-20c46ad6.js} +2 -2
- package/{esm/_chunks/dep-c78fa1d4.js.map → es/_chunks/dep-20c46ad6.js.map} +1 -1
- package/es/_chunks/{dep-050ca478.js → dep-2ba06928.js} +1 -1
- package/{esm/_chunks/dep-050ca478.js.map → es/_chunks/dep-2ba06928.js.map} +1 -1
- package/es/_chunks/{dep-72b21344.js → dep-3a4ac6db.js} +1 -1
- package/{esm/_chunks/dep-72b21344.js.map → es/_chunks/dep-3a4ac6db.js.map} +1 -1
- package/es/_chunks/{dep-277e0a93.js → dep-41b57136.js} +2 -2
- package/es/_chunks/{dep-277e0a93.js.map → dep-41b57136.js.map} +1 -1
- package/es/_chunks/{dep-c39cc2c0.js → dep-4cfdebea.js} +2 -2
- package/es/_chunks/{dep-c39cc2c0.js.map → dep-4cfdebea.js.map} +1 -1
- package/{esm/_chunks/dep-573a33ff.js → es/_chunks/dep-5058c0d0.js} +2 -2
- package/es/_chunks/{dep-573a33ff.js.map → dep-5058c0d0.js.map} +1 -1
- package/es/_chunks/{dep-b3507a34.js → dep-5b6b8383.js} +3 -3
- package/es/_chunks/{dep-b3507a34.js.map → dep-5b6b8383.js.map} +1 -1
- package/es/_chunks/{dep-2efb7f62.js → dep-66e12e99.js} +4 -2
- package/es/_chunks/dep-66e12e99.js.map +1 -0
- package/es/_chunks/{dep-6fcd2524.js → dep-aa33e5ab.js} +5 -5
- package/es/_chunks/{dep-6fcd2524.js.map → dep-aa33e5ab.js.map} +1 -1
- package/es/_chunks/{dep-26d2756b.js → dep-bf108228.js} +5 -5
- package/{esm/_chunks/dep-26d2756b.js.map → es/_chunks/dep-bf108228.js.map} +1 -1
- package/es/_chunks/{dep-17664157.js → dep-db59527d.js} +4 -4
- package/{esm/_chunks/dep-17664157.js.map → es/_chunks/dep-db59527d.js.map} +1 -1
- package/es/_chunks/{dep-8f1a3b80.js → dep-ddf6a99c.js} +3 -3
- package/{esm/_chunks/dep-8f1a3b80.js.map → es/_chunks/dep-ddf6a99c.js.map} +1 -1
- package/{esm/_chunks/dep-a7d6324b.js → es/_chunks/dep-f98ead44.js} +1 -1
- package/{esm/_chunks/dep-a7d6324b.js.map → es/_chunks/dep-f98ead44.js.map} +1 -1
- package/es/_chunks/{dep-3865e171.js → dep-fe32e6e6.js} +1 -1
- package/{esm/_chunks/dep-3865e171.js.map → es/_chunks/dep-fe32e6e6.js.map} +1 -1
- package/es/_common/js/color-picker/gradient.js.map +1 -1
- package/es/_common/js/tabs/base.js.map +1 -1
- package/es/_common/js/time-picker/utils.js.map +1 -1
- package/es/_common/js/tree/tree-node-model.js +7 -7
- package/es/_common/js/tree/tree-node.js +7 -7
- package/es/_common/js/tree/tree-store.js +7 -7
- package/es/_common/js/upload/utils.js.map +1 -1
- package/es/_common/js/utils/observe.js.map +1 -1
- package/es/_util/useAnimation.js +4 -4
- package/es/_util/useAnimation.js.map +1 -1
- package/es/_util/useClickOutside.js +4 -4
- package/es/_util/useCommonClassName.js +4 -4
- package/es/_util/useCommonClassName.js.map +1 -1
- package/es/_util/useDragSorter.js.map +1 -1
- package/es/_util/useRipple.js +4 -4
- package/es/_util/useRipple.js.map +1 -1
- package/es/_util/useWindowSize.js.map +1 -1
- package/es/affix/Affix.js +4 -4
- package/es/affix/index.js +4 -4
- package/es/alert/Alert.js +4 -4
- package/es/alert/index.js +4 -4
- package/es/anchor/Anchor.js +9 -7
- package/es/anchor/Anchor.js.map +1 -1
- package/es/anchor/AnchorItem.js +4 -4
- package/es/anchor/AnchorItem.js.map +1 -1
- package/es/anchor/AnchorTarget.js +4 -4
- package/es/anchor/index.js +6 -6
- package/es/avatar/AvararGroup.js +5 -5
- package/es/avatar/Avatar.js +5 -5
- package/es/avatar/index.js +5 -5
- package/es/badge/Badge.js +4 -4
- package/es/badge/Badge.js.map +1 -1
- package/es/badge/index.js +4 -4
- package/es/breadcrumb/Breadcrumb.js +4 -4
- package/es/breadcrumb/Breadcrumb.js.map +1 -1
- package/es/breadcrumb/BreadcrumbItem.js +4 -4
- package/es/breadcrumb/BreadcrumbItem.js.map +1 -1
- package/es/breadcrumb/index.js +4 -4
- package/es/button/Button.js +4 -4
- package/es/button/Button.js.map +1 -1
- package/es/button/index.js +4 -4
- package/es/calendar/Calendar.js +5 -5
- package/es/calendar/Calendar.js.map +1 -1
- package/es/calendar/CalendarCellComp.js +4 -4
- package/es/calendar/CalendarCellComp.js.map +1 -1
- package/es/calendar/hooks/usePrefixClass.js +4 -4
- package/es/calendar/hooks/usePrefixClass.js.map +1 -1
- package/es/calendar/index.js +5 -5
- package/es/card/Card.js +4 -4
- package/es/card/index.js +4 -4
- package/es/cascader/Cascader.js +12 -12
- package/es/cascader/Cascader.js.map +1 -1
- package/es/cascader/CascaderPanel.js +12 -12
- package/es/cascader/components/Item.js +7 -7
- package/es/cascader/components/Item.js.map +1 -1
- package/es/cascader/components/Panel.js +10 -10
- package/es/cascader/components/Panel.js.map +1 -1
- package/es/cascader/core/effect.js +7 -7
- package/es/cascader/core/effect.js.map +1 -1
- package/es/cascader/core/helper.js +3 -3
- package/es/cascader/hooks.js +10 -10
- package/es/cascader/hooks.js.map +1 -1
- package/es/cascader/index.js +12 -12
- package/es/cascader/interface.js +7 -7
- package/es/checkbox/Checkbox.js +5 -5
- package/es/checkbox/CheckboxGroup.js +5 -5
- package/es/checkbox/index.js +5 -5
- package/es/collapse/Collapse.js +4 -4
- package/es/collapse/Collapse.js.map +1 -1
- package/es/collapse/CollapsePanel.js +4 -4
- package/es/collapse/CollapsePanel.js.map +1 -1
- package/es/collapse/index.js +4 -4
- package/es/color-picker/ColorPicker.js +9 -9
- package/es/color-picker/ColorPicker.js.map +1 -1
- package/es/color-picker/ColorPickerPanel.js +9 -9
- package/es/color-picker/components/panel/format/index.js +4 -4
- package/es/color-picker/components/panel/format/inputs.js +4 -4
- package/es/color-picker/components/panel/header.js +5 -5
- package/es/color-picker/components/panel/index.js +9 -9
- package/es/color-picker/components/panel/index.js.map +1 -1
- package/es/color-picker/components/panel/linear-gradient.js +8 -8
- package/es/color-picker/components/panel/linear-gradient.js.map +1 -1
- package/es/color-picker/components/panel/saturation.js.map +1 -1
- package/es/color-picker/components/panel/swatches.js +4 -4
- package/es/color-picker/components/panel/swatches.js.map +1 -1
- package/es/color-picker/components/trigger.js +4 -4
- package/es/color-picker/hooks/useClassname.js +4 -4
- package/es/color-picker/index.js +9 -9
- package/es/comment/Comment.js +4 -4
- package/es/comment/index.js +4 -4
- package/es/common/Check.js +4 -4
- package/es/common/FakeArrow.js +4 -4
- package/es/common/FakeArrow.js.map +1 -1
- package/es/common/Portal.js +4 -4
- package/es/config-provider/ConfigContext.js +4 -4
- package/es/config-provider/ConfigProvider.js +4 -4
- package/es/config-provider/index.js +4 -4
- package/es/date-picker/DatePicker.js +6 -4
- package/es/date-picker/DatePicker.js.map +1 -1
- package/es/date-picker/DatePickerPanel.js +6 -4
- package/es/date-picker/DatePickerPanel.js.map +1 -1
- package/es/date-picker/DateRangePicker.js +7 -5
- package/es/date-picker/DateRangePicker.js.map +1 -1
- package/es/date-picker/DateRangePickerPanel.js +7 -5
- package/es/date-picker/DateRangePickerPanel.js.map +1 -1
- package/es/date-picker/base/Cell.js +4 -4
- package/es/date-picker/base/Footer.js +4 -4
- package/es/date-picker/base/Footer.js.map +1 -1
- package/es/date-picker/base/Header.js +4 -4
- package/es/date-picker/base/Header.js.map +1 -1
- package/es/date-picker/base/Table.js +6 -4
- package/es/date-picker/base/Table.js.map +1 -1
- package/es/date-picker/hooks/useFormat.js +4 -2
- package/es/date-picker/hooks/useFormat.js.map +1 -1
- package/es/date-picker/hooks/useRange.js +6 -4
- package/es/date-picker/hooks/useRange.js.map +1 -1
- package/es/date-picker/hooks/useRangeValue.js +6 -4
- package/es/date-picker/hooks/useRangeValue.js.map +1 -1
- package/es/date-picker/hooks/useSingle.js +6 -4
- package/es/date-picker/hooks/useSingle.js.map +1 -1
- package/es/date-picker/hooks/useSingleValue.js +4 -2
- package/es/date-picker/hooks/useSingleValue.js.map +1 -1
- package/es/date-picker/hooks/useTableData.js +4 -4
- package/es/date-picker/index.js +6 -4
- package/es/date-picker/index.js.map +1 -1
- package/es/date-picker/panel/ExtraContent.js +4 -4
- package/es/date-picker/panel/PanelContent.js +6 -4
- package/es/date-picker/panel/PanelContent.js.map +1 -1
- package/es/date-picker/panel/RangePanel.js +6 -4
- package/es/date-picker/panel/RangePanel.js.map +1 -1
- package/es/date-picker/panel/SinglePanel.js +6 -4
- package/es/date-picker/panel/SinglePanel.js.map +1 -1
- package/es/dialog/Dialog.js +4 -4
- package/es/dialog/RenderDialog.js +4 -4
- package/es/dialog/RenderDialog.js.map +1 -1
- package/es/dialog/index.js +6 -4
- package/es/dialog/index.js.map +1 -1
- package/es/dialog/plugin.js +7 -5
- package/es/dialog/plugin.js.map +1 -1
- package/es/divider/Divider.js +4 -4
- package/es/divider/index.js +4 -4
- package/es/drawer/Drawer.js +4 -4
- package/es/drawer/Drawer.js.map +1 -1
- package/es/drawer/DrawerWrapper.js +4 -4
- package/es/drawer/index.js +4 -4
- package/es/dropdown/Dropdown.js +8 -8
- package/es/dropdown/DropdownItem.js +4 -4
- package/es/dropdown/DropdownMenu.js +4 -4
- package/es/dropdown/DropdownMenu.js.map +1 -1
- package/es/dropdown/index.js +8 -8
- package/es/form/Form.js +13 -12
- package/es/form/Form.js.map +1 -1
- package/es/form/FormItem.js +13 -12
- package/es/form/FormItem.js.map +1 -1
- package/es/form/FormList.js +3 -1
- package/es/form/FormList.js.map +1 -1
- package/es/form/formModel.js +3 -3
- package/es/form/hooks/useFormItemStyle.js +4 -4
- package/es/form/hooks/useInstance.js +9 -7
- package/es/form/hooks/useInstance.js.map +1 -1
- package/es/form/index.js +13 -12
- package/es/form/index.js.map +1 -1
- package/es/form/useInitialData.js +13 -12
- package/es/form/useInitialData.js.map +1 -1
- package/es/grid/Col.js +4 -4
- package/es/grid/Col.js.map +1 -1
- package/es/grid/Row.js +4 -4
- package/es/grid/Row.js.map +1 -1
- package/es/grid/index.js +4 -4
- package/es/hooks/useCommonClassName.js +4 -4
- package/es/hooks/useConfig.js +4 -4
- package/es/hooks/useGlobalIcon.js +4 -4
- package/es/index.js +15 -15
- package/es/input/Input.js +4 -4
- package/es/input/Input.js.map +1 -1
- package/es/input/InputGroup.js +4 -4
- package/es/input/index.js +4 -4
- package/es/input-adornment/InputAdornment.js +4 -4
- package/es/input-adornment/index.js +4 -4
- package/es/input-number/InputNumber.js +4 -4
- package/es/input-number/InputNumber.js.map +1 -1
- package/es/input-number/StepHandler.js +4 -4
- package/es/input-number/index.js +4 -4
- package/es/jumper/Jumper.js +4 -4
- package/es/jumper/index.js +4 -4
- package/es/layout/Aside.js +4 -4
- package/es/layout/Layout.js +4 -4
- package/es/layout/Layout.js.map +1 -1
- package/es/layout/index.js +4 -4
- package/es/list/List.js +4 -4
- package/es/list/List.js.map +1 -1
- package/es/list/ListItem.js +4 -4
- package/es/list/ListItemMeta.js +4 -4
- package/es/list/index.js +4 -4
- package/es/loading/Loading.js +4 -4
- package/es/loading/Loading.js.map +1 -1
- package/es/loading/gradient.js +4 -4
- package/es/loading/index.js +4 -4
- package/es/loading/plugin.js +4 -4
- package/es/locale/LocalReceiver.js +4 -4
- package/es/menu/HeadMenu.js +4 -4
- package/es/menu/Menu.js +4 -4
- package/es/menu/Menu.js.map +1 -1
- package/es/menu/MenuGroup.js +4 -4
- package/es/menu/MenuItem.js +4 -4
- package/es/menu/SubMenu.js +4 -4
- package/es/menu/SubMenu.js.map +1 -1
- package/es/menu/_util/checkSubMenuActive.js.map +1 -1
- package/es/menu/index.js +4 -4
- package/es/message/Message.js +4 -4
- package/es/message/Message.js.map +1 -1
- package/es/message/MessageClose.js +4 -4
- package/es/message/MessageComponent.js +4 -4
- package/es/message/MessageComponent.js.map +1 -1
- package/es/message/MessageIcon.js +4 -4
- package/es/message/index.js +4 -4
- package/es/message/useMessageClass.js +4 -4
- package/es/notification/Notification.js +5 -5
- package/es/notification/NotificationList.js +5 -5
- package/es/notification/NotificationPlugin.js +5 -5
- package/es/notification/index.js +5 -5
- package/es/pagination/Pagination.js +8 -8
- package/es/pagination/Pagination.js.map +1 -1
- package/es/pagination/hooks/useBoundaryJumper.js +4 -4
- package/es/pagination/hooks/usePageNumber.js +4 -4
- package/es/pagination/hooks/usePrevNextJumper.js +4 -4
- package/es/pagination/hooks/useTotal.js +4 -4
- package/es/pagination/index.js +8 -8
- package/es/popconfirm/Popconfirm.js +4 -4
- package/es/popconfirm/Popcontent.js +4 -4
- package/es/popconfirm/index.js +4 -4
- package/es/popup/Popup.js +4 -4
- package/es/popup/Popup.js.map +1 -1
- package/es/popup/hooks/useTriggerProps.js +4 -4
- package/es/popup/index.js +4 -4
- package/es/progress/Progress.js +4 -4
- package/es/progress/index.js +4 -4
- package/es/radio/Radio.js +5 -5
- package/es/radio/RadioGroup.js +5 -5
- package/es/radio/index.js +5 -5
- package/es/range-input/RangeInput.js +10 -10
- package/es/range-input/RangeInput.js.map +1 -1
- package/es/range-input/RangeInputPopup.js +4 -4
- package/es/range-input/index.js +4 -4
- package/es/rate/Rate.js +4 -4
- package/es/rate/index.js +4 -4
- package/es/select/base/Option.js +4 -4
- package/es/select/base/OptionGroup.js +4 -4
- package/es/select/base/PopupContent.js +4 -4
- package/es/select/base/Select.js +4 -4
- package/es/select/base/Select.js.map +1 -1
- package/es/select/index.js +4 -4
- package/es/select/util/helper.js +4 -4
- package/es/select-input/SelectInput.js +4 -4
- package/es/select-input/index.js +4 -4
- package/es/select-input/useMultiple.js +4 -4
- package/es/select-input/useSingle.js +4 -4
- package/es/skeleton/Skeleton.js +4 -4
- package/es/skeleton/index.js +4 -4
- package/es/slider/Slider.js +4 -4
- package/es/slider/SliderHandleButton.js +4 -4
- package/es/slider/index.js +4 -4
- package/es/space/Space.js +4 -4
- package/es/space/index.js +4 -4
- package/es/steps/StepItem.js +4 -4
- package/es/steps/Steps.js +4 -4
- package/es/steps/Steps.js.map +1 -1
- package/es/steps/index.js +4 -4
- package/es/swiper/Swiper.js +4 -4
- package/es/swiper/Swiper.js.map +1 -1
- package/es/swiper/SwiperItem.js +4 -4
- package/es/swiper/index.js +4 -4
- package/es/switch/Switch.js +7 -5
- package/es/switch/Switch.js.map +1 -1
- package/es/switch/index.js +6 -4
- package/es/switch/index.js.map +1 -1
- package/es/table/BaseTable.js +8 -8
- package/es/table/BaseTable.js.map +1 -1
- package/es/table/EditableCell.js +6 -6
- package/es/table/EditableCell.js.map +1 -1
- package/es/table/Ellipsis.js +4 -4
- package/es/table/EnhancedTable.js +12 -12
- package/es/table/FilterController.js +11 -9
- package/es/table/FilterController.js.map +1 -1
- package/es/table/PrimaryTable.js +11 -11
- package/es/table/PrimaryTable.js.map +1 -1
- package/es/table/SorterButton.js +4 -4
- package/es/table/TBody.js +4 -4
- package/es/table/TFoot.js +4 -4
- package/es/table/TFoot.js.map +1 -1
- package/es/table/THead.js +4 -4
- package/es/table/TR.js +4 -4
- package/es/table/TR.js.map +1 -1
- package/es/table/hooks/tree-store.js.map +1 -1
- package/es/table/hooks/useAffix.js.map +1 -1
- package/es/table/hooks/useAsyncLoading.js +4 -4
- package/es/table/hooks/useClassName.js +4 -4
- package/es/table/hooks/useColumnController.js +7 -5
- package/es/table/hooks/useColumnController.js.map +1 -1
- package/es/table/hooks/useDragSort.js +5 -5
- package/es/table/hooks/useDragSort.js.map +1 -1
- package/es/table/hooks/useEditableRow.js +3 -3
- package/es/table/hooks/useEditableRow.js.map +1 -1
- package/es/table/hooks/useFilter.js +10 -8
- package/es/table/hooks/useFilter.js.map +1 -1
- package/es/table/hooks/useFixed.js.map +1 -1
- package/es/table/hooks/usePagination.js +8 -8
- package/es/table/hooks/usePagination.js.map +1 -1
- package/es/table/hooks/useRowExpand.js +4 -4
- package/es/table/hooks/useRowSelect.js +6 -6
- package/es/table/hooks/useRowSelect.js.map +1 -1
- package/es/table/hooks/useSorter.js +4 -4
- package/es/table/hooks/useStyle.js +4 -4
- package/es/table/hooks/useStyle.js.map +1 -1
- package/es/table/hooks/useTableHeader.js +4 -4
- package/es/table/hooks/useTreeData.js +8 -8
- package/es/table/hooks/useTreeData.js.map +1 -1
- package/es/table/hooks/useTreeSelect.js.map +1 -1
- package/es/table/index.js +12 -12
- package/es/tabs/TabBar.js +7 -5
- package/es/tabs/TabBar.js.map +1 -1
- package/es/tabs/TabNav.js +4 -4
- package/es/tabs/TabNav.js.map +1 -1
- package/es/tabs/TabNavItem.js +4 -4
- package/es/tabs/TabNavItem.js.map +1 -1
- package/es/tabs/TabPanel.js +4 -4
- package/es/tabs/Tabs.js +4 -4
- package/es/tabs/Tabs.js.map +1 -1
- package/es/tabs/index.js +4 -4
- package/es/tabs/useTabClass.js +4 -4
- package/es/tag/CheckTag.js +4 -4
- package/es/tag/CheckTag.js.map +1 -1
- package/es/tag/Tag.js +4 -4
- package/es/tag/Tag.js.map +1 -1
- package/es/tag/index.js +4 -4
- package/es/tag-input/TagInput.js +4 -4
- package/es/tag-input/index.js +4 -4
- package/es/tag-input/useTagList.js +4 -4
- package/es/tag-input/useTagList.js.map +1 -1
- package/es/textarea/Textarea.js +4 -4
- package/es/textarea/Textarea.js.map +1 -1
- package/es/textarea/index.js +4 -4
- package/es/time-picker/TimePicker.js +4 -4
- package/es/time-picker/TimePicker.js.map +1 -1
- package/es/time-picker/TimeRangePicker.js +4 -4
- package/es/time-picker/hooks/useTimePickerTextConfig.js +4 -4
- package/es/time-picker/index.js +4 -4
- package/es/time-picker/panel/SinglePanel.js +4 -4
- package/es/time-picker/panel/SinglePanel.js.map +1 -1
- package/es/time-picker/panel/TimePickerPanel.js +4 -4
- package/es/tooltip/Tooltip.js +4 -4
- package/es/tooltip/Tooltip.js.map +1 -1
- package/es/tooltip/index.js +4 -4
- package/es/transfer/Transfer.js +10 -10
- package/es/transfer/TransferList.js +10 -10
- package/es/transfer/index.js +10 -10
- package/es/transfer/utils.js +3 -3
- package/es/tree/Tree.js +10 -10
- package/es/tree/Tree.js.map +1 -1
- package/es/tree/TreeItem.js +5 -5
- package/es/tree/TreeItem.js.map +1 -1
- package/es/tree/index.js +10 -10
- package/es/tree/useStore.js +8 -8
- package/es/tree/useTreeConfig.js +4 -4
- package/es/tree-select/SelectArrow.js +4 -4
- package/es/tree-select/TreeSelect.js +10 -10
- package/es/tree-select/TreeSelect.js.map +1 -1
- package/es/tree-select/index.js +10 -10
- package/es/tree-select/useTreeSelectLocale.js +4 -4
- package/es/tree-select/useTreeSelectUtils.js +7 -7
- package/es/upload/dragger.js +4 -4
- package/es/upload/dragger.js.map +1 -1
- package/es/upload/hooks/useSizeLimit.js +4 -4
- package/es/upload/index.js +10 -8
- package/es/upload/index.js.map +1 -1
- package/es/upload/themes/dragger-progress.js +4 -4
- package/es/upload/themes/flow-list/file-list.js +4 -4
- package/es/upload/themes/flow-list/img-list.js +4 -4
- package/es/upload/themes/flow-list/index.js +4 -4
- package/es/upload/themes/flow-list/index.js.map +1 -1
- package/es/upload/themes/image-card.js +6 -4
- package/es/upload/themes/image-card.js.map +1 -1
- package/es/upload/themes/single-file.js +4 -4
- package/es/upload/themes/single-file.js.map +1 -1
- package/es/upload/tips.js +4 -4
- package/es/upload/tips.js.map +1 -1
- package/es/upload/upload-trigger.js +4 -4
- package/es/upload/upload.js +14 -12
- package/es/upload/upload.js.map +1 -1
- package/es/watermark/Watermark.js +4 -4
- package/es/watermark/Watermark.js.map +1 -1
- package/es/watermark/index.js +4 -4
- package/{es/_chunks/dep-2f69a481.js → esm/_chunks/dep-00108819.js} +4 -4
- package/esm/_chunks/{dep-2f69a481.js.map → dep-00108819.js.map} +1 -1
- package/esm/_chunks/{dep-c78fa1d4.js → dep-20c46ad6.js} +2 -2
- package/{es/_chunks/dep-c78fa1d4.js.map → esm/_chunks/dep-20c46ad6.js.map} +1 -1
- package/esm/_chunks/{dep-050ca478.js → dep-2ba06928.js} +1 -1
- package/{es/_chunks/dep-050ca478.js.map → esm/_chunks/dep-2ba06928.js.map} +1 -1
- package/esm/_chunks/{dep-72b21344.js → dep-3a4ac6db.js} +1 -1
- package/{es/_chunks/dep-72b21344.js.map → esm/_chunks/dep-3a4ac6db.js.map} +1 -1
- package/esm/_chunks/{dep-277e0a93.js → dep-41b57136.js} +2 -2
- package/esm/_chunks/{dep-277e0a93.js.map → dep-41b57136.js.map} +1 -1
- package/esm/_chunks/{dep-c39cc2c0.js → dep-4cfdebea.js} +2 -2
- package/esm/_chunks/{dep-c39cc2c0.js.map → dep-4cfdebea.js.map} +1 -1
- package/{es/_chunks/dep-573a33ff.js → esm/_chunks/dep-5058c0d0.js} +2 -2
- package/esm/_chunks/{dep-573a33ff.js.map → dep-5058c0d0.js.map} +1 -1
- package/esm/_chunks/{dep-b3507a34.js → dep-5b6b8383.js} +3 -3
- package/esm/_chunks/{dep-b3507a34.js.map → dep-5b6b8383.js.map} +1 -1
- package/esm/_chunks/{dep-2efb7f62.js → dep-66e12e99.js} +4 -2
- package/esm/_chunks/dep-66e12e99.js.map +1 -0
- package/esm/_chunks/{dep-6fcd2524.js → dep-aa33e5ab.js} +5 -5
- package/esm/_chunks/{dep-6fcd2524.js.map → dep-aa33e5ab.js.map} +1 -1
- package/esm/_chunks/{dep-26d2756b.js → dep-bf108228.js} +5 -5
- package/{es/_chunks/dep-26d2756b.js.map → esm/_chunks/dep-bf108228.js.map} +1 -1
- package/esm/_chunks/{dep-17664157.js → dep-db59527d.js} +4 -4
- package/{es/_chunks/dep-17664157.js.map → esm/_chunks/dep-db59527d.js.map} +1 -1
- package/esm/_chunks/{dep-8f1a3b80.js → dep-ddf6a99c.js} +3 -3
- package/{es/_chunks/dep-8f1a3b80.js.map → esm/_chunks/dep-ddf6a99c.js.map} +1 -1
- package/{es/_chunks/dep-a7d6324b.js → esm/_chunks/dep-f98ead44.js} +1 -1
- package/{es/_chunks/dep-a7d6324b.js.map → esm/_chunks/dep-f98ead44.js.map} +1 -1
- package/esm/_chunks/{dep-3865e171.js → dep-fe32e6e6.js} +1 -1
- package/{es/_chunks/dep-3865e171.js.map → esm/_chunks/dep-fe32e6e6.js.map} +1 -1
- package/esm/_common/js/color-picker/gradient.js.map +1 -1
- package/esm/_common/js/tabs/base.js.map +1 -1
- package/esm/_common/js/time-picker/utils.js.map +1 -1
- package/esm/_common/js/tree/tree-node-model.js +7 -7
- package/esm/_common/js/tree/tree-node.js +7 -7
- package/esm/_common/js/tree/tree-store.js +7 -7
- package/esm/_common/js/upload/utils.js.map +1 -1
- package/esm/_common/js/utils/observe.js.map +1 -1
- package/esm/_util/useAnimation.js +4 -4
- package/esm/_util/useAnimation.js.map +1 -1
- package/esm/_util/useClickOutside.js +4 -4
- package/esm/_util/useCommonClassName.js +4 -4
- package/esm/_util/useCommonClassName.js.map +1 -1
- package/esm/_util/useDragSorter.js.map +1 -1
- package/esm/_util/useRipple.js +4 -4
- package/esm/_util/useRipple.js.map +1 -1
- package/esm/_util/useWindowSize.js.map +1 -1
- package/esm/affix/Affix.js +4 -4
- package/esm/affix/index.js +4 -4
- package/esm/alert/Alert.js +4 -4
- package/esm/alert/index.js +4 -4
- package/esm/anchor/Anchor.js +9 -7
- package/esm/anchor/Anchor.js.map +1 -1
- package/esm/anchor/AnchorItem.js +4 -4
- package/esm/anchor/AnchorItem.js.map +1 -1
- package/esm/anchor/AnchorTarget.js +4 -4
- package/esm/anchor/index.js +6 -6
- package/esm/avatar/AvararGroup.js +5 -5
- package/esm/avatar/Avatar.js +5 -5
- package/esm/avatar/index.js +5 -5
- package/esm/badge/Badge.js +4 -4
- package/esm/badge/Badge.js.map +1 -1
- package/esm/badge/index.js +4 -4
- package/esm/breadcrumb/Breadcrumb.js +4 -4
- package/esm/breadcrumb/Breadcrumb.js.map +1 -1
- package/esm/breadcrumb/BreadcrumbItem.js +4 -4
- package/esm/breadcrumb/BreadcrumbItem.js.map +1 -1
- package/esm/breadcrumb/index.js +4 -4
- package/esm/button/Button.js +4 -4
- package/esm/button/Button.js.map +1 -1
- package/esm/button/index.js +4 -4
- package/esm/calendar/Calendar.js +5 -5
- package/esm/calendar/Calendar.js.map +1 -1
- package/esm/calendar/CalendarCellComp.js +4 -4
- package/esm/calendar/CalendarCellComp.js.map +1 -1
- package/esm/calendar/hooks/usePrefixClass.js +4 -4
- package/esm/calendar/hooks/usePrefixClass.js.map +1 -1
- package/esm/calendar/index.js +5 -5
- package/esm/card/Card.js +4 -4
- package/esm/card/index.js +4 -4
- package/esm/cascader/Cascader.js +12 -12
- package/esm/cascader/Cascader.js.map +1 -1
- package/esm/cascader/CascaderPanel.js +12 -12
- package/esm/cascader/components/Item.js +7 -7
- package/esm/cascader/components/Item.js.map +1 -1
- package/esm/cascader/components/Panel.js +10 -10
- package/esm/cascader/components/Panel.js.map +1 -1
- package/esm/cascader/core/effect.js +7 -7
- package/esm/cascader/core/effect.js.map +1 -1
- package/esm/cascader/core/helper.js +3 -3
- package/esm/cascader/hooks.js +10 -10
- package/esm/cascader/hooks.js.map +1 -1
- package/esm/cascader/index.js +12 -12
- package/esm/cascader/interface.js +7 -7
- package/esm/checkbox/Checkbox.js +5 -5
- package/esm/checkbox/CheckboxGroup.js +5 -5
- package/esm/checkbox/index.js +5 -5
- package/esm/collapse/Collapse.js +4 -4
- package/esm/collapse/Collapse.js.map +1 -1
- package/esm/collapse/CollapsePanel.js +4 -4
- package/esm/collapse/CollapsePanel.js.map +1 -1
- package/esm/collapse/index.js +4 -4
- package/esm/color-picker/ColorPicker.js +9 -9
- package/esm/color-picker/ColorPicker.js.map +1 -1
- package/esm/color-picker/ColorPickerPanel.js +9 -9
- package/esm/color-picker/components/panel/format/index.js +4 -4
- package/esm/color-picker/components/panel/format/inputs.js +4 -4
- package/esm/color-picker/components/panel/header.js +5 -5
- package/esm/color-picker/components/panel/index.js +9 -9
- package/esm/color-picker/components/panel/index.js.map +1 -1
- package/esm/color-picker/components/panel/linear-gradient.js +8 -8
- package/esm/color-picker/components/panel/linear-gradient.js.map +1 -1
- package/esm/color-picker/components/panel/saturation.js.map +1 -1
- package/esm/color-picker/components/panel/swatches.js +4 -4
- package/esm/color-picker/components/panel/swatches.js.map +1 -1
- package/esm/color-picker/components/trigger.js +4 -4
- package/esm/color-picker/hooks/useClassname.js +4 -4
- package/esm/color-picker/index.js +9 -9
- package/esm/comment/Comment.js +4 -4
- package/esm/comment/index.js +4 -4
- package/esm/common/Check.js +4 -4
- package/esm/common/FakeArrow.js +4 -4
- package/esm/common/FakeArrow.js.map +1 -1
- package/esm/common/Portal.js +4 -4
- package/esm/config-provider/ConfigContext.js +4 -4
- package/esm/config-provider/ConfigProvider.js +4 -4
- package/esm/config-provider/index.js +4 -4
- package/esm/date-picker/DatePicker.js +6 -4
- package/esm/date-picker/DatePicker.js.map +1 -1
- package/esm/date-picker/DatePickerPanel.js +6 -4
- package/esm/date-picker/DatePickerPanel.js.map +1 -1
- package/esm/date-picker/DateRangePicker.js +7 -5
- package/esm/date-picker/DateRangePicker.js.map +1 -1
- package/esm/date-picker/DateRangePickerPanel.js +7 -5
- package/esm/date-picker/DateRangePickerPanel.js.map +1 -1
- package/esm/date-picker/base/Cell.js +4 -4
- package/esm/date-picker/base/Footer.js +4 -4
- package/esm/date-picker/base/Footer.js.map +1 -1
- package/esm/date-picker/base/Header.js +4 -4
- package/esm/date-picker/base/Header.js.map +1 -1
- package/esm/date-picker/base/Table.js +6 -4
- package/esm/date-picker/base/Table.js.map +1 -1
- package/esm/date-picker/hooks/useFormat.js +4 -2
- package/esm/date-picker/hooks/useFormat.js.map +1 -1
- package/esm/date-picker/hooks/useRange.js +6 -4
- package/esm/date-picker/hooks/useRange.js.map +1 -1
- package/esm/date-picker/hooks/useRangeValue.js +6 -4
- package/esm/date-picker/hooks/useRangeValue.js.map +1 -1
- package/esm/date-picker/hooks/useSingle.js +6 -4
- package/esm/date-picker/hooks/useSingle.js.map +1 -1
- package/esm/date-picker/hooks/useSingleValue.js +4 -2
- package/esm/date-picker/hooks/useSingleValue.js.map +1 -1
- package/esm/date-picker/hooks/useTableData.js +4 -4
- package/esm/date-picker/index.js +6 -4
- package/esm/date-picker/index.js.map +1 -1
- package/esm/date-picker/panel/ExtraContent.js +4 -4
- package/esm/date-picker/panel/PanelContent.js +6 -4
- package/esm/date-picker/panel/PanelContent.js.map +1 -1
- package/esm/date-picker/panel/RangePanel.js +6 -4
- package/esm/date-picker/panel/RangePanel.js.map +1 -1
- package/esm/date-picker/panel/SinglePanel.js +6 -4
- package/esm/date-picker/panel/SinglePanel.js.map +1 -1
- package/esm/dialog/Dialog.js +4 -4
- package/esm/dialog/RenderDialog.js +4 -4
- package/esm/dialog/RenderDialog.js.map +1 -1
- package/esm/dialog/index.js +6 -4
- package/esm/dialog/index.js.map +1 -1
- package/esm/dialog/plugin.js +7 -5
- package/esm/dialog/plugin.js.map +1 -1
- package/esm/divider/Divider.js +4 -4
- package/esm/divider/index.js +4 -4
- package/esm/drawer/Drawer.js +4 -4
- package/esm/drawer/Drawer.js.map +1 -1
- package/esm/drawer/DrawerWrapper.js +4 -4
- package/esm/drawer/index.js +4 -4
- package/esm/dropdown/Dropdown.js +8 -8
- package/esm/dropdown/DropdownItem.js +4 -4
- package/esm/dropdown/DropdownMenu.js +4 -4
- package/esm/dropdown/DropdownMenu.js.map +1 -1
- package/esm/dropdown/index.js +8 -8
- package/esm/form/Form.js +13 -12
- package/esm/form/Form.js.map +1 -1
- package/esm/form/FormItem.js +13 -12
- package/esm/form/FormItem.js.map +1 -1
- package/esm/form/FormList.js +3 -1
- package/esm/form/FormList.js.map +1 -1
- package/esm/form/formModel.js +3 -3
- package/esm/form/hooks/useFormItemStyle.js +4 -4
- package/esm/form/hooks/useInstance.js +9 -7
- package/esm/form/hooks/useInstance.js.map +1 -1
- package/esm/form/index.js +13 -12
- package/esm/form/index.js.map +1 -1
- package/esm/form/useInitialData.js +13 -12
- package/esm/form/useInitialData.js.map +1 -1
- package/esm/grid/Col.js +4 -4
- package/esm/grid/Col.js.map +1 -1
- package/esm/grid/Row.js +4 -4
- package/esm/grid/Row.js.map +1 -1
- package/esm/grid/index.js +4 -4
- package/esm/hooks/useCommonClassName.js +4 -4
- package/esm/hooks/useConfig.js +4 -4
- package/esm/hooks/useGlobalIcon.js +4 -4
- package/esm/index.js +15 -15
- package/esm/input/Input.js +4 -4
- package/esm/input/Input.js.map +1 -1
- package/esm/input/InputGroup.js +4 -4
- package/esm/input/index.js +4 -4
- package/esm/input-adornment/InputAdornment.js +4 -4
- package/esm/input-adornment/index.js +4 -4
- package/esm/input-number/InputNumber.js +4 -4
- package/esm/input-number/InputNumber.js.map +1 -1
- package/esm/input-number/StepHandler.js +4 -4
- package/esm/input-number/index.js +4 -4
- package/esm/jumper/Jumper.js +4 -4
- package/esm/jumper/index.js +4 -4
- package/esm/layout/Aside.js +4 -4
- package/esm/layout/Layout.js +4 -4
- package/esm/layout/Layout.js.map +1 -1
- package/esm/layout/index.js +4 -4
- package/esm/list/List.js +4 -4
- package/esm/list/List.js.map +1 -1
- package/esm/list/ListItem.js +4 -4
- package/esm/list/ListItemMeta.js +4 -4
- package/esm/list/index.js +4 -4
- package/esm/loading/Loading.js +4 -4
- package/esm/loading/Loading.js.map +1 -1
- package/esm/loading/gradient.js +4 -4
- package/esm/loading/index.js +4 -4
- package/esm/loading/plugin.js +4 -4
- package/esm/locale/LocalReceiver.js +4 -4
- package/esm/menu/HeadMenu.js +4 -4
- package/esm/menu/Menu.js +4 -4
- package/esm/menu/Menu.js.map +1 -1
- package/esm/menu/MenuGroup.js +4 -4
- package/esm/menu/MenuItem.js +4 -4
- package/esm/menu/SubMenu.js +4 -4
- package/esm/menu/SubMenu.js.map +1 -1
- package/esm/menu/_util/checkSubMenuActive.js.map +1 -1
- package/esm/menu/index.js +4 -4
- package/esm/message/Message.js +4 -4
- package/esm/message/Message.js.map +1 -1
- package/esm/message/MessageClose.js +4 -4
- package/esm/message/MessageComponent.js +4 -4
- package/esm/message/MessageComponent.js.map +1 -1
- package/esm/message/MessageIcon.js +4 -4
- package/esm/message/index.js +4 -4
- package/esm/message/useMessageClass.js +4 -4
- package/esm/notification/Notification.js +5 -5
- package/esm/notification/NotificationList.js +5 -5
- package/esm/notification/NotificationPlugin.js +5 -5
- package/esm/notification/index.js +5 -5
- package/esm/pagination/Pagination.js +8 -8
- package/esm/pagination/Pagination.js.map +1 -1
- package/esm/pagination/hooks/useBoundaryJumper.js +4 -4
- package/esm/pagination/hooks/usePageNumber.js +4 -4
- package/esm/pagination/hooks/usePrevNextJumper.js +4 -4
- package/esm/pagination/hooks/useTotal.js +4 -4
- package/esm/pagination/index.js +8 -8
- package/esm/popconfirm/Popconfirm.js +4 -4
- package/esm/popconfirm/Popcontent.js +4 -4
- package/esm/popconfirm/index.js +4 -4
- package/esm/popup/Popup.js +4 -4
- package/esm/popup/Popup.js.map +1 -1
- package/esm/popup/hooks/useTriggerProps.js +4 -4
- package/esm/popup/index.js +4 -4
- package/esm/progress/Progress.js +4 -4
- package/esm/progress/index.js +4 -4
- package/esm/radio/Radio.js +5 -5
- package/esm/radio/RadioGroup.js +5 -5
- package/esm/radio/index.js +5 -5
- package/esm/range-input/RangeInput.js +10 -10
- package/esm/range-input/RangeInput.js.map +1 -1
- package/esm/range-input/RangeInputPopup.js +4 -4
- package/esm/range-input/index.js +4 -4
- package/esm/rate/Rate.js +4 -4
- package/esm/rate/index.js +4 -4
- package/esm/select/base/Option.js +4 -4
- package/esm/select/base/OptionGroup.js +4 -4
- package/esm/select/base/PopupContent.js +4 -4
- package/esm/select/base/Select.js +4 -4
- package/esm/select/base/Select.js.map +1 -1
- package/esm/select/index.js +4 -4
- package/esm/select/util/helper.js +4 -4
- package/esm/select-input/SelectInput.js +4 -4
- package/esm/select-input/index.js +4 -4
- package/esm/select-input/useMultiple.js +4 -4
- package/esm/select-input/useSingle.js +4 -4
- package/esm/skeleton/Skeleton.js +4 -4
- package/esm/skeleton/index.js +4 -4
- package/esm/slider/Slider.js +4 -4
- package/esm/slider/SliderHandleButton.js +4 -4
- package/esm/slider/index.js +4 -4
- package/esm/space/Space.js +4 -4
- package/esm/space/index.js +4 -4
- package/esm/steps/StepItem.js +4 -4
- package/esm/steps/Steps.js +4 -4
- package/esm/steps/Steps.js.map +1 -1
- package/esm/steps/index.js +4 -4
- package/esm/swiper/Swiper.js +4 -4
- package/esm/swiper/Swiper.js.map +1 -1
- package/esm/swiper/SwiperItem.js +4 -4
- package/esm/swiper/index.js +4 -4
- package/esm/switch/Switch.js +7 -5
- package/esm/switch/Switch.js.map +1 -1
- package/esm/switch/index.js +6 -4
- package/esm/switch/index.js.map +1 -1
- package/esm/table/BaseTable.js +8 -8
- package/esm/table/BaseTable.js.map +1 -1
- package/esm/table/EditableCell.js +6 -6
- package/esm/table/EditableCell.js.map +1 -1
- package/esm/table/Ellipsis.js +4 -4
- package/esm/table/EnhancedTable.js +12 -12
- package/esm/table/FilterController.js +11 -9
- package/esm/table/FilterController.js.map +1 -1
- package/esm/table/PrimaryTable.js +11 -11
- package/esm/table/PrimaryTable.js.map +1 -1
- package/esm/table/SorterButton.js +4 -4
- package/esm/table/TBody.js +4 -4
- package/esm/table/TFoot.js +4 -4
- package/esm/table/TFoot.js.map +1 -1
- package/esm/table/THead.js +4 -4
- package/esm/table/TR.js +4 -4
- package/esm/table/TR.js.map +1 -1
- package/esm/table/hooks/tree-store.js.map +1 -1
- package/esm/table/hooks/useAffix.js.map +1 -1
- package/esm/table/hooks/useAsyncLoading.js +4 -4
- package/esm/table/hooks/useClassName.js +4 -4
- package/esm/table/hooks/useColumnController.js +7 -5
- package/esm/table/hooks/useColumnController.js.map +1 -1
- package/esm/table/hooks/useDragSort.js +5 -5
- package/esm/table/hooks/useDragSort.js.map +1 -1
- package/esm/table/hooks/useEditableRow.js +3 -3
- package/esm/table/hooks/useEditableRow.js.map +1 -1
- package/esm/table/hooks/useFilter.js +10 -8
- package/esm/table/hooks/useFilter.js.map +1 -1
- package/esm/table/hooks/useFixed.js.map +1 -1
- package/esm/table/hooks/usePagination.js +8 -8
- package/esm/table/hooks/usePagination.js.map +1 -1
- package/esm/table/hooks/useRowExpand.js +4 -4
- package/esm/table/hooks/useRowSelect.js +6 -6
- package/esm/table/hooks/useRowSelect.js.map +1 -1
- package/esm/table/hooks/useSorter.js +4 -4
- package/esm/table/hooks/useStyle.js +4 -4
- package/esm/table/hooks/useStyle.js.map +1 -1
- package/esm/table/hooks/useTableHeader.js +4 -4
- package/esm/table/hooks/useTreeData.js +8 -8
- package/esm/table/hooks/useTreeData.js.map +1 -1
- package/esm/table/hooks/useTreeSelect.js.map +1 -1
- package/esm/table/index.js +12 -12
- package/esm/tabs/TabBar.js +7 -5
- package/esm/tabs/TabBar.js.map +1 -1
- package/esm/tabs/TabNav.js +4 -4
- package/esm/tabs/TabNav.js.map +1 -1
- package/esm/tabs/TabNavItem.js +4 -4
- package/esm/tabs/TabNavItem.js.map +1 -1
- package/esm/tabs/TabPanel.js +4 -4
- package/esm/tabs/Tabs.js +4 -4
- package/esm/tabs/Tabs.js.map +1 -1
- package/esm/tabs/index.js +4 -4
- package/esm/tabs/useTabClass.js +4 -4
- package/esm/tag/CheckTag.js +4 -4
- package/esm/tag/CheckTag.js.map +1 -1
- package/esm/tag/Tag.js +4 -4
- package/esm/tag/Tag.js.map +1 -1
- package/esm/tag/index.js +4 -4
- package/esm/tag-input/TagInput.js +4 -4
- package/esm/tag-input/index.js +4 -4
- package/esm/tag-input/useTagList.js +4 -4
- package/esm/tag-input/useTagList.js.map +1 -1
- package/esm/textarea/Textarea.js +4 -4
- package/esm/textarea/Textarea.js.map +1 -1
- package/esm/textarea/index.js +4 -4
- package/esm/time-picker/TimePicker.js +4 -4
- package/esm/time-picker/TimePicker.js.map +1 -1
- package/esm/time-picker/TimeRangePicker.js +4 -4
- package/esm/time-picker/hooks/useTimePickerTextConfig.js +4 -4
- package/esm/time-picker/index.js +4 -4
- package/esm/time-picker/panel/SinglePanel.js +4 -4
- package/esm/time-picker/panel/SinglePanel.js.map +1 -1
- package/esm/time-picker/panel/TimePickerPanel.js +4 -4
- package/esm/tooltip/Tooltip.js +4 -4
- package/esm/tooltip/Tooltip.js.map +1 -1
- package/esm/tooltip/index.js +4 -4
- package/esm/transfer/Transfer.js +10 -10
- package/esm/transfer/TransferList.js +10 -10
- package/esm/transfer/index.js +10 -10
- package/esm/transfer/utils.js +3 -3
- package/esm/tree/Tree.js +10 -10
- package/esm/tree/Tree.js.map +1 -1
- package/esm/tree/TreeItem.js +5 -5
- package/esm/tree/TreeItem.js.map +1 -1
- package/esm/tree/index.js +10 -10
- package/esm/tree/useStore.js +8 -8
- package/esm/tree/useTreeConfig.js +4 -4
- package/esm/tree-select/SelectArrow.js +4 -4
- package/esm/tree-select/TreeSelect.js +10 -10
- package/esm/tree-select/TreeSelect.js.map +1 -1
- package/esm/tree-select/index.js +10 -10
- package/esm/tree-select/useTreeSelectLocale.js +4 -4
- package/esm/tree-select/useTreeSelectUtils.js +7 -7
- package/esm/upload/dragger.js +4 -4
- package/esm/upload/dragger.js.map +1 -1
- package/esm/upload/hooks/useSizeLimit.js +4 -4
- package/esm/upload/index.js +10 -8
- package/esm/upload/index.js.map +1 -1
- package/esm/upload/themes/dragger-progress.js +4 -4
- package/esm/upload/themes/flow-list/file-list.js +4 -4
- package/esm/upload/themes/flow-list/img-list.js +4 -4
- package/esm/upload/themes/flow-list/index.js +4 -4
- package/esm/upload/themes/flow-list/index.js.map +1 -1
- package/esm/upload/themes/image-card.js +6 -4
- package/esm/upload/themes/image-card.js.map +1 -1
- package/esm/upload/themes/single-file.js +4 -4
- package/esm/upload/themes/single-file.js.map +1 -1
- package/esm/upload/tips.js +4 -4
- package/esm/upload/tips.js.map +1 -1
- package/esm/upload/upload-trigger.js +4 -4
- package/esm/upload/upload.js +14 -12
- package/esm/upload/upload.js.map +1 -1
- package/esm/watermark/Watermark.js +4 -4
- package/esm/watermark/Watermark.js.map +1 -1
- package/esm/watermark/index.js +4 -4
- package/lib/_chunks/{dep-5c079948.js → dep-456a93e6.js} +2 -2
- package/lib/_chunks/{dep-5c079948.js.map → dep-456a93e6.js.map} +1 -1
- package/lib/_chunks/{dep-2f1558ed.js → dep-4a3cfeb8.js} +3 -3
- package/lib/_chunks/{dep-2f1558ed.js.map → dep-4a3cfeb8.js.map} +1 -1
- package/lib/_chunks/{dep-ae616cf2.js → dep-4af01376.js} +2 -2
- package/lib/_chunks/{dep-ae616cf2.js.map → dep-4af01376.js.map} +1 -1
- package/lib/_chunks/{dep-a5fb0cc9.js → dep-78f45ac5.js} +1 -1
- package/lib/_chunks/{dep-a5fb0cc9.js.map → dep-78f45ac5.js.map} +1 -1
- package/lib/_chunks/{dep-80ea65ed.js → dep-805babf2.js} +1 -1
- package/lib/_chunks/{dep-80ea65ed.js.map → dep-805babf2.js.map} +1 -1
- package/lib/_chunks/{dep-092c0f86.js → dep-898e88d6.js} +4 -4
- package/lib/_chunks/{dep-092c0f86.js.map → dep-898e88d6.js.map} +1 -1
- package/lib/_chunks/{dep-bc83c007.js → dep-89c88c26.js} +1 -1
- package/lib/_chunks/{dep-bc83c007.js.map → dep-89c88c26.js.map} +1 -1
- package/lib/_chunks/{dep-1624d851.js → dep-92c358fc.js} +2 -2
- package/lib/_chunks/{dep-1624d851.js.map → dep-92c358fc.js.map} +1 -1
- package/lib/_chunks/{dep-0bbb71cc.js → dep-9bacfdb4.js} +5 -5
- package/lib/_chunks/{dep-0bbb71cc.js.map → dep-9bacfdb4.js.map} +1 -1
- package/lib/_chunks/{dep-3aab229c.js → dep-beaebeed.js} +4 -2
- package/lib/_chunks/dep-beaebeed.js.map +1 -0
- package/lib/_chunks/{dep-3f9bc677.js → dep-c4c13c9b.js} +1 -1
- package/lib/_chunks/{dep-3f9bc677.js.map → dep-c4c13c9b.js.map} +1 -1
- package/lib/_chunks/{dep-ae830703.js → dep-da4d0177.js} +5 -5
- package/lib/_chunks/{dep-ae830703.js.map → dep-da4d0177.js.map} +1 -1
- package/lib/_chunks/{dep-7f9668d7.js → dep-e27cf0fe.js} +4 -4
- package/lib/_chunks/{dep-7f9668d7.js.map → dep-e27cf0fe.js.map} +1 -1
- package/lib/_chunks/{dep-e772464e.js → dep-f104d8e0.js} +2 -2
- package/lib/_chunks/{dep-e772464e.js.map → dep-f104d8e0.js.map} +1 -1
- package/lib/_chunks/{dep-79723f71.js → dep-ff3c4eed.js} +3 -3
- package/lib/_chunks/{dep-79723f71.js.map → dep-ff3c4eed.js.map} +1 -1
- package/lib/_common/js/color-picker/gradient.js.map +1 -1
- package/lib/_common/js/tabs/base.js.map +1 -1
- package/lib/_common/js/time-picker/utils.js.map +1 -1
- package/lib/_common/js/tree/tree-node-model.js +7 -7
- package/lib/_common/js/tree/tree-node.js +7 -7
- package/lib/_common/js/tree/tree-store.js +7 -7
- package/lib/_common/js/upload/utils.js.map +1 -1
- package/lib/_common/js/utils/observe.js.map +1 -1
- package/lib/_util/useAnimation.js +4 -4
- package/lib/_util/useAnimation.js.map +1 -1
- package/lib/_util/useClickOutside.js +4 -4
- package/lib/_util/useCommonClassName.js +4 -4
- package/lib/_util/useCommonClassName.js.map +1 -1
- package/lib/_util/useDragSorter.js.map +1 -1
- package/lib/_util/useRipple.js +4 -4
- package/lib/_util/useRipple.js.map +1 -1
- package/lib/_util/useWindowSize.js.map +1 -1
- package/lib/affix/Affix.js +4 -4
- package/lib/affix/index.js +4 -4
- package/lib/alert/Alert.js +4 -4
- package/lib/alert/index.js +4 -4
- package/lib/anchor/Anchor.js +9 -7
- package/lib/anchor/Anchor.js.map +1 -1
- package/lib/anchor/AnchorItem.js +4 -4
- package/lib/anchor/AnchorItem.js.map +1 -1
- package/lib/anchor/AnchorTarget.js +4 -4
- package/lib/anchor/index.js +6 -6
- package/lib/avatar/AvararGroup.js +5 -5
- package/lib/avatar/Avatar.js +5 -5
- package/lib/avatar/index.js +5 -5
- package/lib/badge/Badge.js +4 -4
- package/lib/badge/Badge.js.map +1 -1
- package/lib/badge/index.js +4 -4
- package/lib/breadcrumb/Breadcrumb.js +4 -4
- package/lib/breadcrumb/Breadcrumb.js.map +1 -1
- package/lib/breadcrumb/BreadcrumbItem.js +4 -4
- package/lib/breadcrumb/BreadcrumbItem.js.map +1 -1
- package/lib/breadcrumb/index.js +4 -4
- package/lib/button/Button.js +4 -4
- package/lib/button/Button.js.map +1 -1
- package/lib/button/index.js +4 -4
- package/lib/calendar/Calendar.js +5 -5
- package/lib/calendar/Calendar.js.map +1 -1
- package/lib/calendar/CalendarCellComp.js +4 -4
- package/lib/calendar/CalendarCellComp.js.map +1 -1
- package/lib/calendar/hooks/usePrefixClass.js +4 -4
- package/lib/calendar/hooks/usePrefixClass.js.map +1 -1
- package/lib/calendar/index.js +5 -5
- package/lib/card/Card.js +4 -4
- package/lib/card/index.js +4 -4
- package/lib/cascader/Cascader.js +12 -12
- package/lib/cascader/Cascader.js.map +1 -1
- package/lib/cascader/CascaderPanel.js +12 -12
- package/lib/cascader/components/Item.js +7 -7
- package/lib/cascader/components/Item.js.map +1 -1
- package/lib/cascader/components/Panel.js +10 -10
- package/lib/cascader/components/Panel.js.map +1 -1
- package/lib/cascader/core/effect.js +7 -7
- package/lib/cascader/core/effect.js.map +1 -1
- package/lib/cascader/core/helper.js +3 -3
- package/lib/cascader/hooks.js +10 -10
- package/lib/cascader/hooks.js.map +1 -1
- package/lib/cascader/index.js +12 -12
- package/lib/cascader/interface.js +7 -7
- package/lib/checkbox/Checkbox.js +5 -5
- package/lib/checkbox/CheckboxGroup.js +5 -5
- package/lib/checkbox/index.js +5 -5
- package/lib/collapse/Collapse.js +4 -4
- package/lib/collapse/Collapse.js.map +1 -1
- package/lib/collapse/CollapsePanel.js +4 -4
- package/lib/collapse/CollapsePanel.js.map +1 -1
- package/lib/collapse/index.js +4 -4
- package/lib/color-picker/ColorPicker.js +9 -9
- package/lib/color-picker/ColorPicker.js.map +1 -1
- package/lib/color-picker/ColorPickerPanel.js +9 -9
- package/lib/color-picker/components/panel/format/index.js +4 -4
- package/lib/color-picker/components/panel/format/inputs.js +4 -4
- package/lib/color-picker/components/panel/header.js +5 -5
- package/lib/color-picker/components/panel/index.js +9 -9
- package/lib/color-picker/components/panel/index.js.map +1 -1
- package/lib/color-picker/components/panel/linear-gradient.js +8 -8
- package/lib/color-picker/components/panel/linear-gradient.js.map +1 -1
- package/lib/color-picker/components/panel/saturation.js.map +1 -1
- package/lib/color-picker/components/panel/swatches.js +4 -4
- package/lib/color-picker/components/panel/swatches.js.map +1 -1
- package/lib/color-picker/components/trigger.js +4 -4
- package/lib/color-picker/hooks/useClassname.js +4 -4
- package/lib/color-picker/index.js +9 -9
- package/lib/comment/Comment.js +4 -4
- package/lib/comment/index.js +4 -4
- package/lib/common/Check.js +4 -4
- package/lib/common/FakeArrow.js +4 -4
- package/lib/common/FakeArrow.js.map +1 -1
- package/lib/common/Portal.js +4 -4
- package/lib/config-provider/ConfigContext.js +4 -4
- package/lib/config-provider/ConfigProvider.js +4 -4
- package/lib/config-provider/index.js +4 -4
- package/lib/date-picker/DatePicker.js +5 -4
- package/lib/date-picker/DatePicker.js.map +1 -1
- package/lib/date-picker/DatePickerPanel.js +5 -4
- package/lib/date-picker/DatePickerPanel.js.map +1 -1
- package/lib/date-picker/DateRangePicker.js +6 -5
- package/lib/date-picker/DateRangePicker.js.map +1 -1
- package/lib/date-picker/DateRangePickerPanel.js +6 -5
- package/lib/date-picker/DateRangePickerPanel.js.map +1 -1
- package/lib/date-picker/base/Cell.js +4 -4
- package/lib/date-picker/base/Footer.js +4 -4
- package/lib/date-picker/base/Footer.js.map +1 -1
- package/lib/date-picker/base/Header.js +4 -4
- package/lib/date-picker/base/Header.js.map +1 -1
- package/lib/date-picker/base/Table.js +5 -4
- package/lib/date-picker/base/Table.js.map +1 -1
- package/lib/date-picker/hooks/useFormat.js +3 -2
- package/lib/date-picker/hooks/useFormat.js.map +1 -1
- package/lib/date-picker/hooks/useRange.js +5 -4
- package/lib/date-picker/hooks/useRange.js.map +1 -1
- package/lib/date-picker/hooks/useRangeValue.js +5 -4
- package/lib/date-picker/hooks/useRangeValue.js.map +1 -1
- package/lib/date-picker/hooks/useSingle.js +5 -4
- package/lib/date-picker/hooks/useSingle.js.map +1 -1
- package/lib/date-picker/hooks/useSingleValue.js +3 -2
- package/lib/date-picker/hooks/useSingleValue.js.map +1 -1
- package/lib/date-picker/hooks/useTableData.js +4 -4
- package/lib/date-picker/index.js +5 -4
- package/lib/date-picker/index.js.map +1 -1
- package/lib/date-picker/panel/ExtraContent.js +4 -4
- package/lib/date-picker/panel/PanelContent.js +5 -4
- package/lib/date-picker/panel/PanelContent.js.map +1 -1
- package/lib/date-picker/panel/RangePanel.js +5 -4
- package/lib/date-picker/panel/RangePanel.js.map +1 -1
- package/lib/date-picker/panel/SinglePanel.js +5 -4
- package/lib/date-picker/panel/SinglePanel.js.map +1 -1
- package/lib/dialog/Dialog.js +4 -4
- package/lib/dialog/RenderDialog.js +4 -4
- package/lib/dialog/RenderDialog.js.map +1 -1
- package/lib/dialog/index.js +5 -4
- package/lib/dialog/index.js.map +1 -1
- package/lib/dialog/plugin.js +6 -5
- package/lib/dialog/plugin.js.map +1 -1
- package/lib/divider/Divider.js +4 -4
- package/lib/divider/index.js +4 -4
- package/lib/drawer/Drawer.js +4 -4
- package/lib/drawer/Drawer.js.map +1 -1
- package/lib/drawer/DrawerWrapper.js +4 -4
- package/lib/drawer/index.js +4 -4
- package/lib/dropdown/Dropdown.js +8 -8
- package/lib/dropdown/DropdownItem.js +4 -4
- package/lib/dropdown/DropdownMenu.js +4 -4
- package/lib/dropdown/DropdownMenu.js.map +1 -1
- package/lib/dropdown/index.js +8 -8
- package/lib/form/Form.js +12 -12
- package/lib/form/Form.js.map +1 -1
- package/lib/form/FormItem.js +12 -12
- package/lib/form/FormItem.js.map +1 -1
- package/lib/form/FormList.js +2 -1
- package/lib/form/FormList.js.map +1 -1
- package/lib/form/formModel.js +3 -3
- package/lib/form/hooks/useFormItemStyle.js +4 -4
- package/lib/form/hooks/useInstance.js +9 -7
- package/lib/form/hooks/useInstance.js.map +1 -1
- package/lib/form/index.js +12 -12
- package/lib/form/useInitialData.js +12 -12
- package/lib/grid/Col.js +4 -4
- package/lib/grid/Col.js.map +1 -1
- package/lib/grid/Row.js +4 -4
- package/lib/grid/Row.js.map +1 -1
- package/lib/grid/index.js +4 -4
- package/lib/hooks/useCommonClassName.js +4 -4
- package/lib/hooks/useConfig.js +4 -4
- package/lib/hooks/useGlobalIcon.js +4 -4
- package/lib/index-lib.js +15 -15
- package/lib/index.js +15 -15
- package/lib/input/Input.js +4 -4
- package/lib/input/Input.js.map +1 -1
- package/lib/input/InputGroup.js +4 -4
- package/lib/input/index.js +4 -4
- package/lib/input-adornment/InputAdornment.js +4 -4
- package/lib/input-adornment/index.js +4 -4
- package/lib/input-number/InputNumber.js +4 -4
- package/lib/input-number/InputNumber.js.map +1 -1
- package/lib/input-number/StepHandler.js +4 -4
- package/lib/input-number/index.js +4 -4
- package/lib/jumper/Jumper.js +4 -4
- package/lib/jumper/index.js +4 -4
- package/lib/layout/Aside.js +4 -4
- package/lib/layout/Layout.js +4 -4
- package/lib/layout/Layout.js.map +1 -1
- package/lib/layout/index.js +4 -4
- package/lib/list/List.js +4 -4
- package/lib/list/List.js.map +1 -1
- package/lib/list/ListItem.js +4 -4
- package/lib/list/ListItemMeta.js +4 -4
- package/lib/list/index.js +4 -4
- package/lib/loading/Loading.js +4 -4
- package/lib/loading/Loading.js.map +1 -1
- package/lib/loading/gradient.js +4 -4
- package/lib/loading/index.js +4 -4
- package/lib/loading/plugin.js +4 -4
- package/lib/locale/LocalReceiver.js +4 -4
- package/lib/menu/HeadMenu.js +4 -4
- package/lib/menu/Menu.js +4 -4
- package/lib/menu/Menu.js.map +1 -1
- package/lib/menu/MenuGroup.js +4 -4
- package/lib/menu/MenuItem.js +4 -4
- package/lib/menu/SubMenu.js +4 -4
- package/lib/menu/SubMenu.js.map +1 -1
- package/lib/menu/_util/checkSubMenuActive.js.map +1 -1
- package/lib/menu/index.js +4 -4
- package/lib/message/Message.js +4 -4
- package/lib/message/Message.js.map +1 -1
- package/lib/message/MessageClose.js +4 -4
- package/lib/message/MessageComponent.js +4 -4
- package/lib/message/MessageComponent.js.map +1 -1
- package/lib/message/MessageIcon.js +4 -4
- package/lib/message/index.js +4 -4
- package/lib/message/useMessageClass.js +4 -4
- package/lib/notification/Notification.js +5 -5
- package/lib/notification/NotificationList.js +5 -5
- package/lib/notification/NotificationPlugin.js +5 -5
- package/lib/notification/index.js +5 -5
- package/lib/pagination/Pagination.js +8 -8
- package/lib/pagination/Pagination.js.map +1 -1
- package/lib/pagination/hooks/useBoundaryJumper.js +4 -4
- package/lib/pagination/hooks/usePageNumber.js +4 -4
- package/lib/pagination/hooks/usePrevNextJumper.js +4 -4
- package/lib/pagination/hooks/useTotal.js +4 -4
- package/lib/pagination/index.js +8 -8
- package/lib/popconfirm/Popconfirm.js +4 -4
- package/lib/popconfirm/Popcontent.js +4 -4
- package/lib/popconfirm/index.js +4 -4
- package/lib/popup/Popup.js +4 -4
- package/lib/popup/Popup.js.map +1 -1
- package/lib/popup/hooks/useTriggerProps.js +4 -4
- package/lib/popup/index.js +4 -4
- package/lib/progress/Progress.js +4 -4
- package/lib/progress/index.js +4 -4
- package/lib/radio/Radio.js +5 -5
- package/lib/radio/RadioGroup.js +5 -5
- package/lib/radio/index.js +5 -5
- package/lib/range-input/RangeInput.js +10 -10
- package/lib/range-input/RangeInput.js.map +1 -1
- package/lib/range-input/RangeInputPopup.js +4 -4
- package/lib/range-input/index.js +4 -4
- package/lib/rate/Rate.js +4 -4
- package/lib/rate/index.js +4 -4
- package/lib/select/base/Option.js +4 -4
- package/lib/select/base/OptionGroup.js +4 -4
- package/lib/select/base/PopupContent.js +4 -4
- package/lib/select/base/Select.js +4 -4
- package/lib/select/base/Select.js.map +1 -1
- package/lib/select/index.js +4 -4
- package/lib/select/util/helper.js +4 -4
- package/lib/select-input/SelectInput.js +4 -4
- package/lib/select-input/index.js +4 -4
- package/lib/select-input/useMultiple.js +4 -4
- package/lib/select-input/useSingle.js +4 -4
- package/lib/skeleton/Skeleton.js +4 -4
- package/lib/skeleton/index.js +4 -4
- package/lib/slider/Slider.js +4 -4
- package/lib/slider/SliderHandleButton.js +4 -4
- package/lib/slider/index.js +4 -4
- package/lib/space/Space.js +4 -4
- package/lib/space/index.js +4 -4
- package/lib/steps/StepItem.js +4 -4
- package/lib/steps/Steps.js +4 -4
- package/lib/steps/Steps.js.map +1 -1
- package/lib/steps/index.js +4 -4
- package/lib/swiper/Swiper.js +4 -4
- package/lib/swiper/Swiper.js.map +1 -1
- package/lib/swiper/SwiperItem.js +4 -4
- package/lib/swiper/index.js +4 -4
- package/lib/switch/Switch.js +6 -5
- package/lib/switch/Switch.js.map +1 -1
- package/lib/switch/index.js +5 -4
- package/lib/switch/index.js.map +1 -1
- package/lib/table/BaseTable.js +8 -8
- package/lib/table/BaseTable.js.map +1 -1
- package/lib/table/EditableCell.js +6 -6
- package/lib/table/EditableCell.js.map +1 -1
- package/lib/table/Ellipsis.js +4 -4
- package/lib/table/EnhancedTable.js +12 -12
- package/lib/table/FilterController.js +10 -9
- package/lib/table/FilterController.js.map +1 -1
- package/lib/table/PrimaryTable.js +11 -11
- package/lib/table/PrimaryTable.js.map +1 -1
- package/lib/table/SorterButton.js +4 -4
- package/lib/table/TBody.js +4 -4
- package/lib/table/TFoot.js +4 -4
- package/lib/table/TFoot.js.map +1 -1
- package/lib/table/THead.js +4 -4
- package/lib/table/TR.js +4 -4
- package/lib/table/TR.js.map +1 -1
- package/lib/table/hooks/tree-store.js.map +1 -1
- package/lib/table/hooks/useAffix.js.map +1 -1
- package/lib/table/hooks/useAsyncLoading.js +4 -4
- package/lib/table/hooks/useClassName.js +4 -4
- package/lib/table/hooks/useColumnController.js +6 -5
- package/lib/table/hooks/useColumnController.js.map +1 -1
- package/lib/table/hooks/useDragSort.js +5 -5
- package/lib/table/hooks/useDragSort.js.map +1 -1
- package/lib/table/hooks/useEditableRow.js +3 -3
- package/lib/table/hooks/useEditableRow.js.map +1 -1
- package/lib/table/hooks/useFilter.js +9 -8
- package/lib/table/hooks/useFilter.js.map +1 -1
- package/lib/table/hooks/useFixed.js.map +1 -1
- package/lib/table/hooks/usePagination.js +8 -8
- package/lib/table/hooks/usePagination.js.map +1 -1
- package/lib/table/hooks/useRowExpand.js +4 -4
- package/lib/table/hooks/useRowSelect.js +6 -6
- package/lib/table/hooks/useRowSelect.js.map +1 -1
- package/lib/table/hooks/useSorter.js +4 -4
- package/lib/table/hooks/useStyle.js +4 -4
- package/lib/table/hooks/useStyle.js.map +1 -1
- package/lib/table/hooks/useTableHeader.js +4 -4
- package/lib/table/hooks/useTreeData.js +8 -8
- package/lib/table/hooks/useTreeData.js.map +1 -1
- package/lib/table/hooks/useTreeSelect.js.map +1 -1
- package/lib/table/index.js +12 -12
- package/lib/tabs/TabBar.js +7 -5
- package/lib/tabs/TabBar.js.map +1 -1
- package/lib/tabs/TabNav.js +4 -4
- package/lib/tabs/TabNav.js.map +1 -1
- package/lib/tabs/TabNavItem.js +4 -4
- package/lib/tabs/TabNavItem.js.map +1 -1
- package/lib/tabs/TabPanel.js +4 -4
- package/lib/tabs/Tabs.js +4 -4
- package/lib/tabs/Tabs.js.map +1 -1
- package/lib/tabs/index.js +4 -4
- package/lib/tabs/useTabClass.js +4 -4
- package/lib/tag/CheckTag.js +4 -4
- package/lib/tag/CheckTag.js.map +1 -1
- package/lib/tag/Tag.js +4 -4
- package/lib/tag/Tag.js.map +1 -1
- package/lib/tag/index.js +4 -4
- package/lib/tag-input/TagInput.js +4 -4
- package/lib/tag-input/index.js +4 -4
- package/lib/tag-input/useTagList.js +4 -4
- package/lib/tag-input/useTagList.js.map +1 -1
- package/lib/textarea/Textarea.js +4 -4
- package/lib/textarea/Textarea.js.map +1 -1
- package/lib/textarea/index.js +4 -4
- package/lib/time-picker/TimePicker.js +4 -4
- package/lib/time-picker/TimePicker.js.map +1 -1
- package/lib/time-picker/TimeRangePicker.js +4 -4
- package/lib/time-picker/hooks/useTimePickerTextConfig.js +4 -4
- package/lib/time-picker/index.js +4 -4
- package/lib/time-picker/panel/SinglePanel.js +4 -4
- package/lib/time-picker/panel/SinglePanel.js.map +1 -1
- package/lib/time-picker/panel/TimePickerPanel.js +4 -4
- package/lib/tooltip/Tooltip.js +4 -4
- package/lib/tooltip/Tooltip.js.map +1 -1
- package/lib/tooltip/index.js +4 -4
- package/lib/transfer/Transfer.js +10 -10
- package/lib/transfer/TransferList.js +10 -10
- package/lib/transfer/index.js +10 -10
- package/lib/transfer/utils.js +3 -3
- package/lib/tree/Tree.js +10 -10
- package/lib/tree/Tree.js.map +1 -1
- package/lib/tree/TreeItem.js +5 -5
- package/lib/tree/TreeItem.js.map +1 -1
- package/lib/tree/index.js +10 -10
- package/lib/tree/useStore.js +8 -8
- package/lib/tree/useTreeConfig.js +4 -4
- package/lib/tree-select/SelectArrow.js +4 -4
- package/lib/tree-select/TreeSelect.js +10 -10
- package/lib/tree-select/TreeSelect.js.map +1 -1
- package/lib/tree-select/index.js +10 -10
- package/lib/tree-select/useTreeSelectLocale.js +4 -4
- package/lib/tree-select/useTreeSelectUtils.js +7 -7
- package/lib/upload/dragger.js +4 -4
- package/lib/upload/dragger.js.map +1 -1
- package/lib/upload/hooks/useSizeLimit.js +4 -4
- package/lib/upload/index.js +9 -8
- package/lib/upload/index.js.map +1 -1
- package/lib/upload/themes/dragger-progress.js +4 -4
- package/lib/upload/themes/flow-list/file-list.js +4 -4
- package/lib/upload/themes/flow-list/img-list.js +4 -4
- package/lib/upload/themes/flow-list/index.js +4 -4
- package/lib/upload/themes/flow-list/index.js.map +1 -1
- package/lib/upload/themes/image-card.js +5 -4
- package/lib/upload/themes/image-card.js.map +1 -1
- package/lib/upload/themes/single-file.js +4 -4
- package/lib/upload/themes/single-file.js.map +1 -1
- package/lib/upload/tips.js +4 -4
- package/lib/upload/tips.js.map +1 -1
- package/lib/upload/upload-trigger.js +4 -4
- package/lib/upload/upload.js +13 -12
- package/lib/upload/upload.js.map +1 -1
- package/lib/watermark/Watermark.js +4 -4
- package/lib/watermark/Watermark.js.map +1 -1
- package/lib/watermark/index.js +4 -4
- package/package.json +1 -1
- package/es/_chunks/dep-2efb7f62.js.map +0 -1
- package/esm/_chunks/dep-2efb7f62.js.map +0 -1
- package/lib/_chunks/dep-3aab229c.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tree-store.js","sources":["../../../src/table/hooks/tree-store.ts"],"sourcesContent":["/* eslint-disable class-methods-use-this */\n/* eslint-disable no-param-reassign */\nimport get from 'lodash/get';\nimport { isRowSelectedDisabled } from '../utils';\nimport { PrimaryTableCol, TableRowState, TableRowValue, TableRowData } from '../type';\nimport log from '../../_common/js/log';\n\nexport type TableTreeDataMap = Map<string | number, TableRowState>;\n\nexport interface TableRowModel<T> extends TableRowState<T> {\n setData?: (key: string | number, data: T) => void;\n}\n\nexport interface KeysType {\n rowKey: string;\n childrenKey: string;\n}\n\nexport interface SwapParams<T> {\n current: T;\n target: T;\n currentIndex: number;\n targetIndex: number;\n}\n\nexport const TABLE_TREE_ERROR_CODE_NOT_SAME_LEVEL = {\n code: 1001,\n reason: 'The same level of rows can not be swapped.',\n};\n\n/**\n * 表格树形结构处理器\n * Vue 和 React 可以通用\n * 关键函数有以下几个\n * @toggleExpandData 处理树形结构展开收起\n * @setData 更新当行数据\n * @getData 获取单行数据\n * @remove 移除行数据,及其子节点\n * @appendTo 追加子节点到末尾\n */\nclass TableTreeStore<T extends TableRowData = TableRowData> {\n /** 树形结构 Map 存储 */\n treeDataMap: TableTreeDataMap = new Map();\n\n expandAllRowIndex: 0;\n\n constructor() {\n this.treeDataMap = new Map();\n }\n\n /**\n * 初始化 treeDataMap,不会改变 dataSource\n * @param dataSource 树形数据源\n * @param columns 列配置\n * @param keys 字段别名\n */\n initialTreeStore(dataSource: T[], columns: PrimaryTableCol[], keys: KeysType) {\n this.treeDataMap?.clear();\n this.initialTreeDataMap(this.treeDataMap, dataSource, columns[0], keys);\n }\n\n /**\n * 获取所有节点的唯一标识\n */\n getAllUniqueKeys(data: T[], keys: KeysType, arr: T[] = []) {\n for (let i = 0, len = data.length; i < len; i++) {\n const item = data[i];\n arr.push(get(item, keys.rowKey));\n const children = get(item, keys.childrenKey);\n if (children?.length) {\n this.getAllUniqueKeys(children, keys, arr);\n }\n }\n return arr;\n }\n\n toggleExpandData(p: { rowIndex: number; row: T }, dataSource: T[], keys: KeysType) {\n if (!p) {\n log.error('EnhancedTable', 'the node you want to toggleExpand doest not exist in `data`');\n return dataSource;\n }\n const rowValue = get(p.row, keys.rowKey);\n if (rowValue === undefined) {\n log.error('EnhancedTable', '`rowKey` could be wrong, can not get rowValue from `data` by `rowKey`.');\n return [];\n }\n const childrenNodes = get(p.row, keys.childrenKey);\n // childrenNodes = true,表示懒加载,直接返回,暂时不做展开处理\n if (childrenNodes === true) return dataSource;\n const r = this.treeDataMap.get(rowValue);\n r.rowIndex = p.rowIndex;\n r.expanded = !r.expanded;\n this.treeDataMap.set(rowValue, r);\n return this.updateExpandRow(r, dataSource, keys);\n }\n\n updateExpandRow(changeRow: TableRowState, dataSource: T[], keys: KeysType) {\n const { row, rowIndex, expanded } = changeRow;\n const { treeDataMap } = this;\n const childrenNodes = get(row, keys.childrenKey);\n if (!row || !childrenNodes) return;\n if (expanded) {\n updateChildrenRowState(treeDataMap, changeRow, expanded, keys);\n updateRowExpandLength(treeDataMap, row, childrenNodes.length, 'expand', keys);\n // eslint-disable-next-line prefer-spread\n dataSource.splice.apply(dataSource, [rowIndex + 1, 0].concat(childrenNodes));\n } else {\n updateChildrenRowState<T>(treeDataMap, changeRow, expanded, keys);\n const len = changeRow.expandChildrenLength || childrenNodes.length;\n updateRowExpandLength(treeDataMap, row, -1 * len, 'fold', keys);\n dataSource.splice(rowIndex + 1, len);\n }\n // 展开或收起后,会影响后续节点的 rowIndex,需同步更新\n updateRowIndex(treeDataMap, dataSource, {\n rowKey: keys.rowKey,\n minRowIndex: rowIndex + 1,\n });\n return dataSource;\n }\n\n /**\n * 获取当前行全部数据\n * @param key 行唯一标识\n * @returns {TableRowState} 当前行数据\n */\n getData(key: TableRowValue): TableRowState {\n return this.treeDataMap.get(key);\n }\n\n /**\n * 更新当前行数据,并返回当前行下标\n * @param rowValue 当前行唯一标识值\n * @param newRowData 新行数据\n * @returns {number} rowIndex 设置的行下标\n */\n updateData(rowValue: TableRowValue, newRowData: T, dataSource: T[], keys: KeysType): number {\n const newRowValue = get(newRowData, keys.rowKey);\n const rowState = this.treeDataMap.get(rowValue);\n // Map 没有查询到,或者查询到的 rowIndex 值为 -1,均表示当前数据不在 dataSource 列表中,未显示在页面中\n if (!rowState || rowState.rowIndex === -1) {\n updateRowData(dataSource, rowValue, newRowData, {\n rowKey: keys.rowKey,\n childrenKey: keys.childrenKey,\n });\n return;\n }\n const currentRowIndex = rowState.rowIndex;\n rowState.row = newRowData;\n rowState.id = newRowValue;\n\n // 更新父元素中存储的当前元素值\n if (rowState.parent) {\n // 更新直接子元素数组\n const siblings = get(rowState.parent.row, keys.childrenKey);\n const index = siblings.findIndex((item: T) => get(item, keys.rowKey) === rowValue);\n siblings[index] = newRowData;\n }\n\n this.treeDataMap.set(newRowValue, rowState);\n // rowValue 也发生了变化,需移除 旧 rowValue 数据\n if (rowValue !== newRowValue) {\n this.treeDataMap.delete(rowValue);\n }\n return currentRowIndex;\n }\n\n /**\n * 移除指定节点\n * @param key 行唯一标识\n */\n remove(key: TableRowValue, dataSource: T[], keys: KeysType): T[] {\n const r = this.treeDataMap.get(key);\n if (r && r.rowIndex >= 0) {\n // 移除当前节点时,展开的节点的子节点需同步移除\n const removeNumber = (r.expandChildrenLength || 0) + 1;\n dataSource.splice(r.rowIndex, removeNumber);\n\n if (r.parent) {\n const siblings = get(r.parent.row, keys.childrenKey);\n const index = siblings.findIndex((item: TableRowData) => get(item, keys.rowKey) === key);\n siblings.splice(index, 1);\n updateRowExpandLength(this.treeDataMap, r.parent.row, -1 * removeNumber, 'delete', keys);\n }\n\n this.treeDataMap.delete(key);\n\n // 更新 rowIndex 之后的下标\n updateRowIndex(this.treeDataMap, dataSource, {\n minRowIndex: r.rowIndex,\n rowKey: keys.rowKey,\n type: 'remove',\n });\n } else {\n console.warn('TDesign Table Warn: Do not remove this node, which is not appeared.');\n }\n return dataSource;\n }\n\n /**\n * 为当前节点添加子节点,默认添加到最后一个节点。允许添加单个或多个\n * @param rowValue 当前节点唯一标识\n * @param newData 待添加的新节点\n */\n appendTo(rowValue: string | number, newData: T | T[], dataSource: T[], keys: KeysType): T[] {\n const state = this.treeDataMap.get(rowValue);\n if (!this.validateDataExist(state, rowValue)) return dataSource;\n const children: T[] = get(state.row, keys.childrenKey);\n // 子节点不存在,则表示为叶子节点\n const isShowNewNode = state.expanded || !children?.length;\n // 添加多个子节点时,需去除重复子节点\n const tmpData = newData instanceof Array ? newData : [newData];\n const newChildrenData: T[] = [];\n const newChildrenStates: TableRowState[] = [];\n let firstNewChildrenIndex = -1;\n for (let i = 0, len = tmpData.length; i < len; i++) {\n const oneData = tmpData[i];\n const newRowValue = get(oneData, keys.rowKey);\n const mapState = this.treeDataMap.get(newRowValue);\n if (!this.validateDataDoubleExist(mapState, newRowValue)) {\n log.warn('Table', `Duplicated Data \\`${newRowValue}\\` has been removed.`);\n } else {\n const rowIndex = isShowNewNode ? state.rowIndex + (state.expandChildrenLength || 0) + (i + 1) : -1;\n if (i === 0) {\n firstNewChildrenIndex = rowIndex;\n }\n const newState = {\n id: newRowValue,\n row: oneData,\n rowIndex,\n level: state.level + 1,\n expanded: false,\n expandChildrenLength: 0,\n disabled: false,\n path: [...state.path],\n parent: state,\n };\n newState.path = newState.path.concat(newState);\n newChildrenData.push(oneData);\n newChildrenStates.push(newState);\n this.treeDataMap.set(newRowValue, newState);\n }\n }\n if (!newChildrenData.length) return dataSource;\n\n if (children?.length) {\n state.row[keys.childrenKey] = state.row[keys.childrenKey].concat(newChildrenData);\n } else {\n state.row[keys.childrenKey] = newChildrenData;\n state.expanded = true;\n }\n\n // 如果当前节点为展开状态,则需要继续处理\n if (isShowNewNode) {\n dataSource.splice(firstNewChildrenIndex, 0, ...newChildrenData);\n // 更新父元素及祖先元素展开子节点的数量\n const newChildrenCount = newChildrenData.length || 1;\n updateRowExpandLength(this.treeDataMap, state.row, newChildrenCount, 'insert', {\n rowKey: keys.rowKey,\n childrenKey: keys.childrenKey,\n });\n // 更新 rowIndex 之后的下标\n updateRowIndex(this.treeDataMap, dataSource, {\n minRowIndex: firstNewChildrenIndex + newChildrenData.length - 1,\n rowKey: keys.rowKey,\n type: 'add',\n count: 1,\n });\n }\n\n return dataSource;\n }\n\n appendToRoot(newData: T | T[], dataSource: T[], keys: KeysType) {\n const newDataSource = dataSource.concat(newData);\n const tmpNewData = newData instanceof Array ? newData : [newData];\n const dataSourceLen = dataSource.length;\n for (let i = 0, len = tmpNewData.length; i < len; i++) {\n const rowValue = get(tmpNewData[i], keys.rowKey);\n if (!rowValue) {\n log.error('Table', '`rowKey` could be wrong, can not get rowValue from `data` by `rowKey`.');\n continue;\n }\n const state: TableRowState = {\n id: rowValue,\n row: tmpNewData[i],\n rowIndex: dataSourceLen + i,\n level: 0,\n expanded: false,\n expandChildrenLength: 0,\n disabled: false,\n };\n state.path = [state];\n this.treeDataMap.set(rowValue, state);\n }\n return newDataSource;\n }\n\n /**\n * 在当前节点后,插入一个兄弟节点\n * @param rowValue 当前节点唯一标识\n * @param newData 待添加的新节点\n */\n insertAfter(rowValue: string | number, newData: T, dataSource: T[], keys: KeysType): T[] {\n return this.insert(rowValue, newData, dataSource, keys, 'after');\n }\n\n /**\n * 在当前节点前,插入一个兄弟节点\n * @param rowValue 当前节点唯一标识\n * @param newData 待添加的新节点\n */\n insertBefore(rowValue: string | number, newData: T, dataSource: T[], keys: KeysType): T[] {\n return this.insert(rowValue, newData, dataSource, keys, 'before');\n }\n\n insert(rowValue: string | number, newData: T, dataSource: T[], keys: KeysType, type: 'before' | 'after') {\n const state = this.treeDataMap.get(rowValue);\n if (!this.validateDataExist(state, rowValue)) return dataSource;\n const newRowValue = get(newData, keys.rowKey);\n const mapState = this.treeDataMap.get(newRowValue);\n if (!this.validateDataDoubleExist(mapState, newRowValue)) return dataSource;\n const rowIndex = type === 'after' ? state.rowIndex + 1 : state.rowIndex;\n const newState = {\n id: newRowValue,\n row: newData,\n rowIndex,\n level: state.level,\n expanded: false,\n expandChildrenLength: 0,\n disabled: false,\n path: state.path.slice(0, -1),\n parent: state.parent,\n };\n newState.path = newState.path.concat(newState);\n const dataIndex = type === 'after' ? state.rowIndex + (state.expandChildrenLength + 1) : state.rowIndex;\n dataSource.splice(dataIndex, 0, newData);\n const distance = type === 'after' ? 1 : 0;\n if (state.parent) {\n const childrenIndex = state.parent.row[keys.childrenKey].findIndex(\n (t: TableRowData) => rowValue === get(t, keys.rowKey),\n );\n state.parent.row[keys.childrenKey].splice(childrenIndex + distance, 0, newData);\n updateRowExpandLength(this.treeDataMap, state.parent.row, 1, 'insert', keys);\n }\n this.treeDataMap.set(newRowValue, newState);\n\n // 更新 rowIndex 之后的下标\n updateRowIndex(this.treeDataMap, dataSource, {\n rowKey: keys.rowKey,\n minRowIndex: state.rowIndex + 1,\n type: 'add',\n });\n\n return dataSource;\n }\n\n /**\n * 交换数据行\n * @returns 交换失败返回 false\n */\n swapData(\n dataSource: T[],\n params: SwapParams<T>,\n keys: KeysType,\n ): { dataSource: T[]; result: boolean; code?: number; reason?: string } {\n const startIndex = params.currentIndex;\n const endIndex = params.targetIndex;\n if (startIndex === endIndex) return { dataSource, result: true };\n const startRowValue = get(params.current, keys.rowKey);\n const endRowValue = get(params.target, keys.rowKey);\n const startState = this.treeDataMap.get(startRowValue);\n const endState = this.treeDataMap.get(endRowValue);\n if (startState.level !== endState.level) {\n return {\n dataSource,\n result: false,\n code: TABLE_TREE_ERROR_CODE_NOT_SAME_LEVEL.code,\n reason: TABLE_TREE_ERROR_CODE_NOT_SAME_LEVEL.reason,\n };\n }\n const startLastIndex = startIndex + startState.expandChildrenLength + 1;\n const endLastIndex = endIndex + endState.expandChildrenLength + 1;\n const startRowList = dataSource.slice(startIndex, startLastIndex);\n const endRowList = dataSource.slice(endIndex, endLastIndex);\n if (startIndex > endIndex) {\n const middleRowList = dataSource.slice(endLastIndex, startIndex);\n const allSwapList = startRowList.concat(endRowList, middleRowList);\n dataSource.splice(endIndex, allSwapList.length);\n dataSource.splice(endIndex, 0, ...allSwapList);\n updateRowIndex(this.treeDataMap, dataSource, {\n rowKey: keys.rowKey,\n minRowIndex: endIndex,\n maxRowIndex: startLastIndex,\n });\n } else {\n const middleRowList = dataSource.slice(startLastIndex, endIndex);\n const allSwapList = middleRowList.concat(endRowList, startRowList);\n dataSource.splice(startIndex, allSwapList.length);\n dataSource.splice(startIndex, 0, ...allSwapList);\n updateRowIndex(this.treeDataMap, dataSource, {\n rowKey: keys.rowKey,\n minRowIndex: startIndex,\n maxRowIndex: endLastIndex,\n });\n }\n\n // 交换父元素中的两个元素位置\n if (startState.parent) {\n const children = startState.parent.row[keys.childrenKey];\n let count = 0;\n let targetIndex = -1;\n let currentIndex = -1;\n for (let i = 0, len = children.length; i < len; i++) {\n if (get(children[i], keys.rowKey) === startRowValue) {\n targetIndex = i;\n count += 1;\n }\n if (get(children[i], keys.rowKey) === endRowValue) {\n currentIndex = i;\n count += 1;\n }\n if (count >= 2) break;\n }\n children[targetIndex] = params.target;\n children[currentIndex] = params.current;\n }\n\n return { dataSource, result: true };\n }\n\n /**\n * 展开所有节点\n */\n expandAll(dataSource: T[], keys: KeysType) {\n this.expandAllRowIndex = 0;\n const expandLoop = (\n dataSource: T[],\n keys: KeysType,\n newData: T[] = [],\n parentExpanded = false,\n parent: TableRowState = null,\n ) => {\n for (let i = 0, len = dataSource.length; i < len; i++) {\n const item = dataSource[i];\n const rowValue = get(item, keys.rowKey);\n const state = this.treeDataMap.get(rowValue);\n const children = get(item, keys.childrenKey);\n const originalExpanded = state.expanded;\n state.rowIndex = this.expandAllRowIndex;\n state.expanded = true;\n state.expandChildrenLength = children?.length || 0;\n this.expandAllRowIndex += 1;\n if (!parentExpanded) {\n newData.push(item);\n }\n this.treeDataMap.set(rowValue, state);\n if (children?.length && !originalExpanded) {\n // 同步更新父元素的展开数量\n let tmpParent = parent;\n while (tmpParent?.row) {\n tmpParent.expandChildrenLength += children.length;\n this.treeDataMap.set(tmpParent.id, tmpParent);\n tmpParent = tmpParent.parent;\n }\n // 继续子元素\n expandLoop(children, keys, newData, originalExpanded, state);\n }\n }\n return newData;\n };\n return expandLoop(dataSource, keys);\n }\n\n /**\n * 收起所有节点\n */\n foldAll(dataSource: T[], keys: KeysType) {\n const newData: T[] = [];\n for (let i = 0, len = dataSource.length; i < len; i++) {\n const item = dataSource[i];\n const rowValue = get(item, keys.rowKey);\n const state = this.treeDataMap.get(rowValue);\n state.rowIndex = state.level === 0 ? i : -1;\n state.expanded = false;\n state.expandChildrenLength = 0;\n if (state.level === 0) {\n newData.push(item);\n }\n const children = get(item, keys.childrenKey);\n if (children?.length) {\n this.foldAll(children, keys);\n }\n }\n return newData;\n }\n\n /** 获取整个树形结构 */\n getTreeNode(dataSource: T[], keys: KeysType): T[] {\n // let isStarted = false;\n const treeData: T[] = [];\n for (let i = 0, len = dataSource.length; i < len; i++) {\n const item = dataSource[i];\n const rowValue = get(item, keys.rowKey);\n const state = this.treeDataMap.get(rowValue);\n // 只需要压入第一层数据\n if (state.level === 0) {\n treeData.push(item);\n }\n }\n return treeData;\n }\n\n /**\n * 初始化树形结构 Map\n * @param treeDataMap 树形结构 Map\n * @param dataSource 数据源\n * @param column 树形结构列\n * @param keys 字段映射关系\n * @param level 层级\n * @param parent 父元素\n * @returns void\n */\n initialTreeDataMap(\n treeDataMap: TableTreeDataMap,\n dataSource: T[],\n column: PrimaryTableCol,\n keys: KeysType,\n level = 0,\n parent: TableRowState = null,\n ) {\n for (let i = 0, len = dataSource.length; i < len; i++) {\n const item = dataSource[i];\n const rowValue = get(item, keys.rowKey);\n if (rowValue === undefined) {\n log.error('EnhancedTable', '`rowKey` could be wrong, can not get rowValue from `data` by `rowKey`.');\n return;\n }\n const children = get(item, keys.childrenKey);\n const state: TableRowState = {\n id: rowValue,\n row: item,\n rowIndex: level === 0 ? i : -1,\n level,\n expanded: false,\n expandChildrenLength: 0,\n disabled: isRowSelectedDisabled(column, item, i),\n parent,\n };\n state.path = parent ? parent.path.concat(state) : [state];\n treeDataMap.set(rowValue, state);\n if (children?.length) {\n this.initialTreeDataMap(treeDataMap, children, column, keys, level + 1, state);\n }\n }\n }\n\n // column.checkProps 和 column.disabled 会影响行的禁用状态,因此当列发生变化时,需要重置禁用状态\n updateDisabledState(dataSource: T[], column: PrimaryTableCol, keys: KeysType) {\n for (let i = 0, len = dataSource.length; i < len; i++) {\n const item = dataSource[i];\n const rowValue = get(item, keys.rowKey);\n if (rowValue === undefined) {\n log.error('EnhancedTable', '`rowKey` could be wrong, can not get rowValue from `data` by `rowKey`.');\n return;\n }\n const state = this.treeDataMap.get(rowValue);\n state.disabled = isRowSelectedDisabled(column, item, i);\n this.treeDataMap.set(rowValue, state);\n const children = get(item, keys.childrenKey);\n if (children?.length) {\n this.updateDisabledState(children, column, keys);\n }\n }\n }\n\n /**\n * 校验数据合法性\n */\n validateDataExist(state: TableRowState, rowValue: string | number) {\n if (!state) {\n console.warn(`TDesign Table Warn: ${rowValue} does not exist.`);\n return false;\n }\n return true;\n }\n\n /**\n * 校验数据是否已存在\n */\n validateDataDoubleExist(state: TableRowState, rowValue: string | number) {\n if (state) {\n console.warn(`TDesign Table Warn: Duplicated Key. ${rowValue} already exists.`);\n return false;\n }\n return true;\n }\n}\n\nexport default TableTreeStore;\n\n/**\n * 更新展开的子节点数量\n * @param rowSate 行数据和状态\n * @param distance 需要调整的展开子节点长度数量,展开时增加,收起时减少。值为负数,表示减\n * @param expanded 展开/收起\n */\nexport function updateRowExpandLength(\n treeDataMap: TableTreeDataMap,\n row: TableRowData,\n distance: number,\n type: 'expand' | 'fold' | 'delete' | 'insert',\n keys: KeysType,\n) {\n let tmp = row;\n while (tmp) {\n const state = treeDataMap.get(get(tmp, keys.rowKey));\n const expandLen = (state.expandChildrenLength || 0) + distance;\n state.expandChildrenLength = Math.max(0, expandLen);\n tmp = state?.parent?.row;\n }\n // 如果是收起状态,子节点需全部收起,清空子节点展开行数量,设置 expandChildrenLength 为 0\n if (type === 'fold') {\n clearRowExpandLength(treeDataMap, row, keys);\n }\n}\n\nexport function clearRowExpandLength<T>(treeDataMap: TableTreeDataMap, row: T, keys: KeysType) {\n const children = get(row, keys.childrenKey);\n if (children?.length) {\n children.forEach((item: T[]) => {\n const state = treeDataMap.get(get(item, keys.rowKey));\n if (!state) return;\n state.expandChildrenLength = 0;\n clearRowExpandLength(treeDataMap, state.row, keys);\n });\n }\n}\n\n/**\n * 更新子节点行状态,行数据、父节点、层级、路径等数据\n * @param rowState 行状态数据\n * @param expanded 展开或收起\n * @param keys\n */\nexport function updateChildrenRowState<T>(\n treeDataMap: TableTreeDataMap,\n rowState: TableRowState,\n expanded: boolean,\n keys: KeysType,\n) {\n const { row, rowIndex } = rowState;\n const childrenNodes = get(row, keys.childrenKey);\n childrenNodes.forEach((item: T, kidRowIndex: number) => {\n const rowValue = get(item, keys.rowKey);\n const index = expanded ? rowIndex + 1 + kidRowIndex : -1;\n const curState = treeDataMap.get(rowValue);\n const newState: TableRowState = {\n ...curState,\n row: item,\n rowIndex: index,\n expanded: false,\n parent: rowState,\n };\n treeDataMap.set(rowValue, newState);\n // 父节点展开,子节点不一定展开;父节点收起,则所有子节点收起\n if (!expanded) {\n const children = get(item, keys.childrenKey);\n if (children?.length) {\n updateChildrenRowState(\n treeDataMap,\n {\n ...newState,\n rowIndex: -1,\n expanded: false,\n } as any,\n expanded,\n keys,\n );\n }\n }\n });\n}\n\nexport function updateRowData<T extends TableRowData = TableRowData>(\n data: T[],\n key: string | number,\n newData: T,\n keys: KeysType,\n) {\n for (let i = 0, len = data.length; i < len; i++) {\n const item = data[i];\n if (get(item, keys.rowKey) === key) {\n // eslint-disable-next-line no-param-reassign\n data[i] = newData;\n return;\n }\n const children: T[] = get(item, keys.childrenKey) || [];\n if (children?.length) {\n updateRowData(children, key, newData, keys);\n }\n }\n}\n\nexport function updateRowIndex<T>(\n treeDataMap: TableTreeDataMap,\n dataSource: T[],\n extra: {\n rowKey: string;\n minRowIndex?: number;\n maxRowIndex?: number;\n type?: 'add' | 'remove';\n count?: number;\n },\n) {\n const start = extra.minRowIndex || 0;\n const end = extra.maxRowIndex || dataSource.length;\n for (let rowIndex = start; rowIndex < end; rowIndex++) {\n const item = dataSource[rowIndex];\n const state = treeDataMap.get(get(item, extra.rowKey));\n if (!state) {\n log.warn('Table', 'tree map went wrong');\n }\n state.rowIndex = rowIndex + (extra?.count || 1) - 1;\n }\n}\n"],"names":["TABLE_TREE_ERROR_CODE_NOT_SAME_LEVEL","code","reason","TableTreeStore","Map","treeDataMap","dataSource","columns","keys","clear","initialTreeDataMap","data","arr","i","len","length","item","push","get","rowKey","children","childrenKey","getAllUniqueKeys","p","log","error","rowValue","row","childrenNodes","r","rowIndex","expanded","set","updateExpandRow","changeRow","updateChildrenRowState","updateRowExpandLength","splice","apply","concat","expandChildrenLength","updateRowIndex","minRowIndex","key","newRowData","newRowValue","rowState","updateRowData","currentRowIndex","id","parent","siblings","index","findIndex","removeNumber","type","console","warn","newData","state","validateDataExist","isShowNewNode","tmpData","Array","newChildrenData","newChildrenStates","firstNewChildrenIndex","oneData","mapState","validateDataDoubleExist","newState","level","disabled","path","newChildrenCount","count","newDataSource","tmpNewData","dataSourceLen","insert","slice","dataIndex","distance","childrenIndex","t","params","startIndex","currentIndex","endIndex","targetIndex","result","startRowValue","current","endRowValue","target","startState","endState","startLastIndex","endLastIndex","startRowList","endRowList","middleRowList","allSwapList","maxRowIndex","expandAllRowIndex","expandLoop","dataSource2","keys2","parentExpanded","originalExpanded","tmpParent","foldAll","treeData","column","isRowSelectedDisabled","updateDisabledState","tmp","expandLen","Math","max","clearRowExpandLength","forEach","kidRowIndex","curState","extra","start","end"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"tree-store.js","sources":["../../../src/table/hooks/tree-store.ts"],"sourcesContent":["/* eslint-disable class-methods-use-this */\n/* eslint-disable no-param-reassign */\nimport get from 'lodash/get';\nimport { isRowSelectedDisabled } from '../utils';\nimport { PrimaryTableCol, TableRowState, TableRowValue, TableRowData } from '../type';\nimport log from '../../_common/js/log';\n\nexport type TableTreeDataMap = Map<string | number, TableRowState>;\n\nexport interface TableRowModel<T> extends TableRowState<T> {\n setData?: (key: string | number, data: T) => void;\n}\n\nexport interface KeysType {\n rowKey: string;\n childrenKey: string;\n}\n\nexport interface SwapParams<T> {\n current: T;\n target: T;\n currentIndex: number;\n targetIndex: number;\n}\n\nexport const TABLE_TREE_ERROR_CODE_NOT_SAME_LEVEL = {\n code: 1001,\n reason: 'The same level of rows can not be swapped.',\n};\n\n/**\n * 表格树形结构处理器\n * Vue 和 React 可以通用\n * 关键函数有以下几个\n * @toggleExpandData 处理树形结构展开收起\n * @setData 更新当行数据\n * @getData 获取单行数据\n * @remove 移除行数据,及其子节点\n * @appendTo 追加子节点到末尾\n */\nclass TableTreeStore<T extends TableRowData = TableRowData> {\n /** 树形结构 Map 存储 */\n treeDataMap: TableTreeDataMap = new Map();\n\n expandAllRowIndex: 0;\n\n constructor() {\n this.treeDataMap = new Map();\n }\n\n /**\n * 初始化 treeDataMap,不会改变 dataSource\n * @param dataSource 树形数据源\n * @param columns 列配置\n * @param keys 字段别名\n */\n initialTreeStore(dataSource: T[], columns: PrimaryTableCol[], keys: KeysType) {\n this.treeDataMap?.clear();\n this.initialTreeDataMap(this.treeDataMap, dataSource, columns[0], keys);\n }\n\n /**\n * 获取所有节点的唯一标识\n */\n getAllUniqueKeys(data: T[], keys: KeysType, arr: T[] = []) {\n for (let i = 0, len = data.length; i < len; i++) {\n const item = data[i];\n arr.push(get(item, keys.rowKey));\n const children = get(item, keys.childrenKey);\n if (children?.length) {\n this.getAllUniqueKeys(children, keys, arr);\n }\n }\n return arr;\n }\n\n toggleExpandData(p: { rowIndex: number; row: T }, dataSource: T[], keys: KeysType) {\n if (!p) {\n log.error('EnhancedTable', 'the node you want to toggleExpand doest not exist in `data`');\n return dataSource;\n }\n const rowValue = get(p.row, keys.rowKey);\n if (rowValue === undefined) {\n log.error('EnhancedTable', '`rowKey` could be wrong, can not get rowValue from `data` by `rowKey`.');\n return [];\n }\n const childrenNodes = get(p.row, keys.childrenKey);\n // childrenNodes = true,表示懒加载,直接返回,暂时不做展开处理\n if (childrenNodes === true) return dataSource;\n const r = this.treeDataMap.get(rowValue);\n r.rowIndex = p.rowIndex;\n r.expanded = !r.expanded;\n this.treeDataMap.set(rowValue, r);\n return this.updateExpandRow(r, dataSource, keys);\n }\n\n updateExpandRow(changeRow: TableRowState, dataSource: T[], keys: KeysType) {\n const { row, rowIndex, expanded } = changeRow;\n const { treeDataMap } = this;\n const childrenNodes = get(row, keys.childrenKey);\n if (!row || !childrenNodes) return;\n if (expanded) {\n updateChildrenRowState(treeDataMap, changeRow, expanded, keys);\n updateRowExpandLength(treeDataMap, row, childrenNodes.length, 'expand', keys);\n // eslint-disable-next-line prefer-spread\n dataSource.splice.apply(dataSource, [rowIndex + 1, 0].concat(childrenNodes));\n } else {\n updateChildrenRowState<T>(treeDataMap, changeRow, expanded, keys);\n const len = changeRow.expandChildrenLength || childrenNodes.length;\n updateRowExpandLength(treeDataMap, row, -1 * len, 'fold', keys);\n dataSource.splice(rowIndex + 1, len);\n }\n // 展开或收起后,会影响后续节点的 rowIndex,需同步更新\n updateRowIndex(treeDataMap, dataSource, {\n rowKey: keys.rowKey,\n minRowIndex: rowIndex + 1,\n });\n return dataSource;\n }\n\n /**\n * 获取当前行全部数据\n * @param key 行唯一标识\n * @returns {TableRowState} 当前行数据\n */\n getData(key: TableRowValue): TableRowState {\n return this.treeDataMap.get(key);\n }\n\n /**\n * 更新当前行数据,并返回当前行下标\n * @param rowValue 当前行唯一标识值\n * @param newRowData 新行数据\n * @returns {number} rowIndex 设置的行下标\n */\n updateData(rowValue: TableRowValue, newRowData: T, dataSource: T[], keys: KeysType): number {\n const newRowValue = get(newRowData, keys.rowKey);\n const rowState = this.treeDataMap.get(rowValue);\n // Map 没有查询到,或者查询到的 rowIndex 值为 -1,均表示当前数据不在 dataSource 列表中,未显示在页面中\n if (!rowState || rowState.rowIndex === -1) {\n updateRowData(dataSource, rowValue, newRowData, {\n rowKey: keys.rowKey,\n childrenKey: keys.childrenKey,\n });\n return;\n }\n const currentRowIndex = rowState.rowIndex;\n rowState.row = newRowData;\n rowState.id = newRowValue;\n\n // 更新父元素中存储的当前元素值\n if (rowState.parent) {\n // 更新直接子元素数组\n const siblings = get(rowState.parent.row, keys.childrenKey);\n const index = siblings.findIndex((item: T) => get(item, keys.rowKey) === rowValue);\n siblings[index] = newRowData;\n }\n\n this.treeDataMap.set(newRowValue, rowState);\n // rowValue 也发生了变化,需移除 旧 rowValue 数据\n if (rowValue !== newRowValue) {\n this.treeDataMap.delete(rowValue);\n }\n return currentRowIndex;\n }\n\n /**\n * 移除指定节点\n * @param key 行唯一标识\n */\n remove(key: TableRowValue, dataSource: T[], keys: KeysType): T[] {\n const r = this.treeDataMap.get(key);\n if (r && r.rowIndex >= 0) {\n // 移除当前节点时,展开的节点的子节点需同步移除\n const removeNumber = (r.expandChildrenLength || 0) + 1;\n dataSource.splice(r.rowIndex, removeNumber);\n\n if (r.parent) {\n const siblings = get(r.parent.row, keys.childrenKey);\n const index = siblings.findIndex((item: TableRowData) => get(item, keys.rowKey) === key);\n siblings.splice(index, 1);\n updateRowExpandLength(this.treeDataMap, r.parent.row, -1 * removeNumber, 'delete', keys);\n }\n\n this.treeDataMap.delete(key);\n\n // 更新 rowIndex 之后的下标\n updateRowIndex(this.treeDataMap, dataSource, {\n minRowIndex: r.rowIndex,\n rowKey: keys.rowKey,\n type: 'remove',\n });\n } else {\n console.warn('TDesign Table Warn: Do not remove this node, which is not appeared.');\n }\n return dataSource;\n }\n\n /**\n * 为当前节点添加子节点,默认添加到最后一个节点。允许添加单个或多个\n * @param rowValue 当前节点唯一标识\n * @param newData 待添加的新节点\n */\n appendTo(rowValue: string | number, newData: T | T[], dataSource: T[], keys: KeysType): T[] {\n const state = this.treeDataMap.get(rowValue);\n if (!this.validateDataExist(state, rowValue)) return dataSource;\n const children: T[] = get(state.row, keys.childrenKey);\n // 子节点不存在,则表示为叶子节点\n const isShowNewNode = state.expanded || !children?.length;\n // 添加多个子节点时,需去除重复子节点\n const tmpData = newData instanceof Array ? newData : [newData];\n const newChildrenData: T[] = [];\n const newChildrenStates: TableRowState[] = [];\n let firstNewChildrenIndex = -1;\n for (let i = 0, len = tmpData.length; i < len; i++) {\n const oneData = tmpData[i];\n const newRowValue = get(oneData, keys.rowKey);\n const mapState = this.treeDataMap.get(newRowValue);\n if (!this.validateDataDoubleExist(mapState, newRowValue)) {\n log.warn('Table', `Duplicated Data \\`${newRowValue}\\` has been removed.`);\n } else {\n const rowIndex = isShowNewNode ? state.rowIndex + (state.expandChildrenLength || 0) + (i + 1) : -1;\n if (i === 0) {\n firstNewChildrenIndex = rowIndex;\n }\n const newState = {\n id: newRowValue,\n row: oneData,\n rowIndex,\n level: state.level + 1,\n expanded: false,\n expandChildrenLength: 0,\n disabled: false,\n path: [...state.path],\n parent: state,\n };\n newState.path = newState.path.concat(newState);\n newChildrenData.push(oneData);\n newChildrenStates.push(newState);\n this.treeDataMap.set(newRowValue, newState);\n }\n }\n if (!newChildrenData.length) return dataSource;\n\n if (children?.length) {\n state.row[keys.childrenKey] = state.row[keys.childrenKey].concat(newChildrenData);\n } else {\n state.row[keys.childrenKey] = newChildrenData;\n state.expanded = true;\n }\n\n // 如果当前节点为展开状态,则需要继续处理\n if (isShowNewNode) {\n dataSource.splice(firstNewChildrenIndex, 0, ...newChildrenData);\n // 更新父元素及祖先元素展开子节点的数量\n const newChildrenCount = newChildrenData.length || 1;\n updateRowExpandLength(this.treeDataMap, state.row, newChildrenCount, 'insert', {\n rowKey: keys.rowKey,\n childrenKey: keys.childrenKey,\n });\n // 更新 rowIndex 之后的下标\n updateRowIndex(this.treeDataMap, dataSource, {\n minRowIndex: firstNewChildrenIndex + newChildrenData.length - 1,\n rowKey: keys.rowKey,\n type: 'add',\n count: 1,\n });\n }\n\n return dataSource;\n }\n\n appendToRoot(newData: T | T[], dataSource: T[], keys: KeysType) {\n const newDataSource = dataSource.concat(newData);\n const tmpNewData = newData instanceof Array ? newData : [newData];\n const dataSourceLen = dataSource.length;\n for (let i = 0, len = tmpNewData.length; i < len; i++) {\n const rowValue = get(tmpNewData[i], keys.rowKey);\n if (!rowValue) {\n log.error('Table', '`rowKey` could be wrong, can not get rowValue from `data` by `rowKey`.');\n continue;\n }\n const state: TableRowState = {\n id: rowValue,\n row: tmpNewData[i],\n rowIndex: dataSourceLen + i,\n level: 0,\n expanded: false,\n expandChildrenLength: 0,\n disabled: false,\n };\n state.path = [state];\n this.treeDataMap.set(rowValue, state);\n }\n return newDataSource;\n }\n\n /**\n * 在当前节点后,插入一个兄弟节点\n * @param rowValue 当前节点唯一标识\n * @param newData 待添加的新节点\n */\n insertAfter(rowValue: string | number, newData: T, dataSource: T[], keys: KeysType): T[] {\n return this.insert(rowValue, newData, dataSource, keys, 'after');\n }\n\n /**\n * 在当前节点前,插入一个兄弟节点\n * @param rowValue 当前节点唯一标识\n * @param newData 待添加的新节点\n */\n insertBefore(rowValue: string | number, newData: T, dataSource: T[], keys: KeysType): T[] {\n return this.insert(rowValue, newData, dataSource, keys, 'before');\n }\n\n insert(rowValue: string | number, newData: T, dataSource: T[], keys: KeysType, type: 'before' | 'after') {\n const state = this.treeDataMap.get(rowValue);\n if (!this.validateDataExist(state, rowValue)) return dataSource;\n const newRowValue = get(newData, keys.rowKey);\n const mapState = this.treeDataMap.get(newRowValue);\n if (!this.validateDataDoubleExist(mapState, newRowValue)) return dataSource;\n const rowIndex = type === 'after' ? state.rowIndex + 1 : state.rowIndex;\n const newState = {\n id: newRowValue,\n row: newData,\n rowIndex,\n level: state.level,\n expanded: false,\n expandChildrenLength: 0,\n disabled: false,\n path: state.path.slice(0, -1),\n parent: state.parent,\n };\n newState.path = newState.path.concat(newState);\n const dataIndex = type === 'after' ? state.rowIndex + (state.expandChildrenLength + 1) : state.rowIndex;\n dataSource.splice(dataIndex, 0, newData);\n const distance = type === 'after' ? 1 : 0;\n if (state.parent) {\n const childrenIndex = state.parent.row[keys.childrenKey].findIndex(\n (t: TableRowData) => rowValue === get(t, keys.rowKey),\n );\n state.parent.row[keys.childrenKey].splice(childrenIndex + distance, 0, newData);\n updateRowExpandLength(this.treeDataMap, state.parent.row, 1, 'insert', keys);\n }\n this.treeDataMap.set(newRowValue, newState);\n\n // 更新 rowIndex 之后的下标\n updateRowIndex(this.treeDataMap, dataSource, {\n rowKey: keys.rowKey,\n minRowIndex: state.rowIndex + 1,\n type: 'add',\n });\n\n return dataSource;\n }\n\n /**\n * 交换数据行\n * @returns 交换失败返回 false\n */\n swapData(\n dataSource: T[],\n params: SwapParams<T>,\n keys: KeysType,\n ): { dataSource: T[]; result: boolean; code?: number; reason?: string } {\n const startIndex = params.currentIndex;\n const endIndex = params.targetIndex;\n if (startIndex === endIndex) return { dataSource, result: true };\n const startRowValue = get(params.current, keys.rowKey);\n const endRowValue = get(params.target, keys.rowKey);\n const startState = this.treeDataMap.get(startRowValue);\n const endState = this.treeDataMap.get(endRowValue);\n if (startState.level !== endState.level) {\n return {\n dataSource,\n result: false,\n code: TABLE_TREE_ERROR_CODE_NOT_SAME_LEVEL.code,\n reason: TABLE_TREE_ERROR_CODE_NOT_SAME_LEVEL.reason,\n };\n }\n const startLastIndex = startIndex + startState.expandChildrenLength + 1;\n const endLastIndex = endIndex + endState.expandChildrenLength + 1;\n const startRowList = dataSource.slice(startIndex, startLastIndex);\n const endRowList = dataSource.slice(endIndex, endLastIndex);\n if (startIndex > endIndex) {\n const middleRowList = dataSource.slice(endLastIndex, startIndex);\n const allSwapList = startRowList.concat(endRowList, middleRowList);\n dataSource.splice(endIndex, allSwapList.length);\n dataSource.splice(endIndex, 0, ...allSwapList);\n updateRowIndex(this.treeDataMap, dataSource, {\n rowKey: keys.rowKey,\n minRowIndex: endIndex,\n maxRowIndex: startLastIndex,\n });\n } else {\n const middleRowList = dataSource.slice(startLastIndex, endIndex);\n const allSwapList = middleRowList.concat(endRowList, startRowList);\n dataSource.splice(startIndex, allSwapList.length);\n dataSource.splice(startIndex, 0, ...allSwapList);\n updateRowIndex(this.treeDataMap, dataSource, {\n rowKey: keys.rowKey,\n minRowIndex: startIndex,\n maxRowIndex: endLastIndex,\n });\n }\n\n // 交换父元素中的两个元素位置\n if (startState.parent) {\n const children = startState.parent.row[keys.childrenKey];\n let count = 0;\n let targetIndex = -1;\n let currentIndex = -1;\n for (let i = 0, len = children.length; i < len; i++) {\n if (get(children[i], keys.rowKey) === startRowValue) {\n targetIndex = i;\n count += 1;\n }\n if (get(children[i], keys.rowKey) === endRowValue) {\n currentIndex = i;\n count += 1;\n }\n if (count >= 2) break;\n }\n children[targetIndex] = params.target;\n children[currentIndex] = params.current;\n }\n\n return { dataSource, result: true };\n }\n\n /**\n * 展开所有节点\n */\n expandAll(dataSource: T[], keys: KeysType) {\n this.expandAllRowIndex = 0;\n const expandLoop = (\n dataSource: T[],\n keys: KeysType,\n newData: T[] = [],\n parentExpanded = false,\n parent: TableRowState = null,\n ) => {\n for (let i = 0, len = dataSource.length; i < len; i++) {\n const item = dataSource[i];\n const rowValue = get(item, keys.rowKey);\n const state = this.treeDataMap.get(rowValue);\n const children = get(item, keys.childrenKey);\n const originalExpanded = state.expanded;\n state.rowIndex = this.expandAllRowIndex;\n state.expanded = true;\n state.expandChildrenLength = children?.length || 0;\n this.expandAllRowIndex += 1;\n if (!parentExpanded) {\n newData.push(item);\n }\n this.treeDataMap.set(rowValue, state);\n if (children?.length && !originalExpanded) {\n // 同步更新父元素的展开数量\n let tmpParent = parent;\n while (tmpParent?.row) {\n tmpParent.expandChildrenLength += children.length;\n this.treeDataMap.set(tmpParent.id, tmpParent);\n tmpParent = tmpParent.parent;\n }\n // 继续子元素\n expandLoop(children, keys, newData, originalExpanded, state);\n }\n }\n return newData;\n };\n return expandLoop(dataSource, keys);\n }\n\n /**\n * 收起所有节点\n */\n foldAll(dataSource: T[], keys: KeysType) {\n const newData: T[] = [];\n for (let i = 0, len = dataSource.length; i < len; i++) {\n const item = dataSource[i];\n const rowValue = get(item, keys.rowKey);\n const state = this.treeDataMap.get(rowValue);\n state.rowIndex = state.level === 0 ? i : -1;\n state.expanded = false;\n state.expandChildrenLength = 0;\n if (state.level === 0) {\n newData.push(item);\n }\n const children = get(item, keys.childrenKey);\n if (children?.length) {\n this.foldAll(children, keys);\n }\n }\n return newData;\n }\n\n /** 获取整个树形结构 */\n getTreeNode(dataSource: T[], keys: KeysType): T[] {\n // let isStarted = false;\n const treeData: T[] = [];\n for (let i = 0, len = dataSource.length; i < len; i++) {\n const item = dataSource[i];\n const rowValue = get(item, keys.rowKey);\n const state = this.treeDataMap.get(rowValue);\n // 只需要压入第一层数据\n if (state.level === 0) {\n treeData.push(item);\n }\n }\n return treeData;\n }\n\n /**\n * 初始化树形结构 Map\n * @param treeDataMap 树形结构 Map\n * @param dataSource 数据源\n * @param column 树形结构列\n * @param keys 字段映射关系\n * @param level 层级\n * @param parent 父元素\n * @returns void\n */\n initialTreeDataMap(\n treeDataMap: TableTreeDataMap,\n dataSource: T[],\n column: PrimaryTableCol,\n keys: KeysType,\n level = 0,\n parent: TableRowState = null,\n ) {\n for (let i = 0, len = dataSource.length; i < len; i++) {\n const item = dataSource[i];\n const rowValue = get(item, keys.rowKey);\n if (rowValue === undefined) {\n log.error('EnhancedTable', '`rowKey` could be wrong, can not get rowValue from `data` by `rowKey`.');\n return;\n }\n const children = get(item, keys.childrenKey);\n const state: TableRowState = {\n id: rowValue,\n row: item,\n rowIndex: level === 0 ? i : -1,\n level,\n expanded: false,\n expandChildrenLength: 0,\n disabled: isRowSelectedDisabled(column, item, i),\n parent,\n };\n state.path = parent ? parent.path.concat(state) : [state];\n treeDataMap.set(rowValue, state);\n if (children?.length) {\n this.initialTreeDataMap(treeDataMap, children, column, keys, level + 1, state);\n }\n }\n }\n\n // column.checkProps 和 column.disabled 会影响行的禁用状态,因此当列发生变化时,需要重置禁用状态\n updateDisabledState(dataSource: T[], column: PrimaryTableCol, keys: KeysType) {\n for (let i = 0, len = dataSource.length; i < len; i++) {\n const item = dataSource[i];\n const rowValue = get(item, keys.rowKey);\n if (rowValue === undefined) {\n log.error('EnhancedTable', '`rowKey` could be wrong, can not get rowValue from `data` by `rowKey`.');\n return;\n }\n const state = this.treeDataMap.get(rowValue);\n state.disabled = isRowSelectedDisabled(column, item, i);\n this.treeDataMap.set(rowValue, state);\n const children = get(item, keys.childrenKey);\n if (children?.length) {\n this.updateDisabledState(children, column, keys);\n }\n }\n }\n\n /**\n * 校验数据合法性\n */\n validateDataExist(state: TableRowState, rowValue: string | number) {\n if (!state) {\n console.warn(`TDesign Table Warn: ${rowValue} does not exist.`);\n return false;\n }\n return true;\n }\n\n /**\n * 校验数据是否已存在\n */\n validateDataDoubleExist(state: TableRowState, rowValue: string | number) {\n if (state) {\n console.warn(`TDesign Table Warn: Duplicated Key. ${rowValue} already exists.`);\n return false;\n }\n return true;\n }\n}\n\nexport default TableTreeStore;\n\n/**\n * 更新展开的子节点数量\n * @param rowSate 行数据和状态\n * @param distance 需要调整的展开子节点长度数量,展开时增加,收起时减少。值为负数,表示减\n * @param expanded 展开/收起\n */\nexport function updateRowExpandLength(\n treeDataMap: TableTreeDataMap,\n row: TableRowData,\n distance: number,\n type: 'expand' | 'fold' | 'delete' | 'insert',\n keys: KeysType,\n) {\n let tmp = row;\n while (tmp) {\n const state = treeDataMap.get(get(tmp, keys.rowKey));\n const expandLen = (state.expandChildrenLength || 0) + distance;\n state.expandChildrenLength = Math.max(0, expandLen);\n tmp = state?.parent?.row;\n }\n // 如果是收起状态,子节点需全部收起,清空子节点展开行数量,设置 expandChildrenLength 为 0\n if (type === 'fold') {\n clearRowExpandLength(treeDataMap, row, keys);\n }\n}\n\nexport function clearRowExpandLength<T>(treeDataMap: TableTreeDataMap, row: T, keys: KeysType) {\n const children = get(row, keys.childrenKey);\n if (children?.length) {\n children.forEach((item: T[]) => {\n const state = treeDataMap.get(get(item, keys.rowKey));\n if (!state) return;\n state.expandChildrenLength = 0;\n clearRowExpandLength(treeDataMap, state.row, keys);\n });\n }\n}\n\n/**\n * 更新子节点行状态,行数据、父节点、层级、路径等数据\n * @param rowState 行状态数据\n * @param expanded 展开或收起\n * @param keys\n */\nexport function updateChildrenRowState<T>(\n treeDataMap: TableTreeDataMap,\n rowState: TableRowState,\n expanded: boolean,\n keys: KeysType,\n) {\n const { row, rowIndex } = rowState;\n const childrenNodes = get(row, keys.childrenKey);\n childrenNodes.forEach((item: T, kidRowIndex: number) => {\n const rowValue = get(item, keys.rowKey);\n const index = expanded ? rowIndex + 1 + kidRowIndex : -1;\n const curState = treeDataMap.get(rowValue);\n const newState: TableRowState = {\n ...curState,\n row: item,\n rowIndex: index,\n expanded: false,\n parent: rowState,\n };\n treeDataMap.set(rowValue, newState);\n // 父节点展开,子节点不一定展开;父节点收起,则所有子节点收起\n if (!expanded) {\n const children = get(item, keys.childrenKey);\n if (children?.length) {\n updateChildrenRowState(\n treeDataMap,\n {\n ...newState,\n rowIndex: -1,\n expanded: false,\n } as any,\n expanded,\n keys,\n );\n }\n }\n });\n}\n\nexport function updateRowData<T extends TableRowData = TableRowData>(\n data: T[],\n key: string | number,\n newData: T,\n keys: KeysType,\n) {\n for (let i = 0, len = data.length; i < len; i++) {\n const item = data[i];\n if (get(item, keys.rowKey) === key) {\n // eslint-disable-next-line no-param-reassign\n data[i] = newData;\n return;\n }\n const children: T[] = get(item, keys.childrenKey) || [];\n if (children?.length) {\n updateRowData(children, key, newData, keys);\n }\n }\n}\n\nexport function updateRowIndex<T>(\n treeDataMap: TableTreeDataMap,\n dataSource: T[],\n extra: {\n rowKey: string;\n minRowIndex?: number;\n maxRowIndex?: number;\n type?: 'add' | 'remove';\n count?: number;\n },\n) {\n const start = extra.minRowIndex || 0;\n const end = extra.maxRowIndex || dataSource.length;\n for (let rowIndex = start; rowIndex < end; rowIndex++) {\n const item = dataSource[rowIndex];\n const state = treeDataMap.get(get(item, extra.rowKey));\n if (!state) {\n log.warn('Table', 'tree map went wrong');\n }\n state.rowIndex = rowIndex + (extra?.count || 1) - 1;\n }\n}\n"],"names":["TABLE_TREE_ERROR_CODE_NOT_SAME_LEVEL","code","reason","TableTreeStore","Map","treeDataMap","dataSource","columns","keys","clear","initialTreeDataMap","data","arr","i","len","length","item","push","get","rowKey","children","childrenKey","getAllUniqueKeys","p","log","error","rowValue","row","childrenNodes","r","rowIndex","expanded","set","updateExpandRow","changeRow","updateChildrenRowState","updateRowExpandLength","splice","apply","concat","expandChildrenLength","updateRowIndex","minRowIndex","key","newRowData","newRowValue","rowState","updateRowData","currentRowIndex","id","parent","siblings","index","findIndex","removeNumber","type","console","warn","newData","state","validateDataExist","isShowNewNode","tmpData","Array","newChildrenData","newChildrenStates","firstNewChildrenIndex","oneData","mapState","validateDataDoubleExist","newState","level","disabled","path","newChildrenCount","count","newDataSource","tmpNewData","dataSourceLen","insert","slice","dataIndex","distance","childrenIndex","t","params","startIndex","currentIndex","endIndex","targetIndex","result","startRowValue","current","endRowValue","target","startState","endState","startLastIndex","endLastIndex","startRowList","endRowList","middleRowList","allSwapList","maxRowIndex","expandAllRowIndex","expandLoop","dataSource2","keys2","parentExpanded","originalExpanded","tmpParent","foldAll","treeData","column","isRowSelectedDisabled","updateDisabledState","tmp","expandLen","Math","max","clearRowExpandLength","forEach","kidRowIndex","curState","extra","start","end"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useAffix.js","sources":["../../../src/table/hooks/useAffix.ts"],"sourcesContent":["import { useState, useRef, useMemo, useEffect } from 'react';\nimport { TdBaseTableProps } from '../type';\nimport { on, off } from '../../_util/dom';\nimport { AffixProps } from '../../affix';\n\n/**\n * 1. 表头吸顶(普通表头吸顶 和 虚拟滚动表头吸顶)\n * 2. 表尾吸底\n * 3. 底部滚动条吸底\n * 4. 分页器吸底\n */\nexport default function useAffix(props: TdBaseTableProps) {\n const tableContentRef = useRef<HTMLDivElement>();\n // 吸顶表头\n const affixHeaderRef = useRef<HTMLDivElement>();\n // 吸底表尾\n const affixFooterRef = useRef<HTMLDivElement>();\n // 吸底滚动条\n const horizontalScrollbarRef = useRef<HTMLDivElement>();\n // 吸底分页器\n const paginationRef = useRef<HTMLDivElement>();\n // 当表格完全滚动消失在视野时,需要隐藏吸顶表头\n const [showAffixHeader, setShowAffixHeader] = useState(true);\n // 当表格完全滚动消失在视野时,需要隐藏吸底尾部\n const [showAffixFooter, setShowAffixFooter] = useState(true);\n // 当表格完全滚动消失在视野时,需要隐藏吸底分页器\n const [showAffixPagination, setShowAffixPagination] = useState(true);\n\n const isVirtualScroll = useMemo(\n () => props.scroll && props.scroll.type === 'virtual' && (props.scroll.threshold || 100) < props.data.length,\n [props.data.length, props.scroll],\n );\n\n const isAffixed = useMemo(\n () => !!(props.headerAffixedTop || props.footerAffixedBottom || props.horizontalScrollAffixedBottom),\n [props.footerAffixedBottom, props.headerAffixedTop, props.horizontalScrollAffixedBottom],\n );\n\n let lastScrollLeft = 0;\n const onHorizontalScroll = (scrollElement?: HTMLElement) => {\n if (!isAffixed && !isVirtualScroll) return;\n let target = scrollElement;\n if (!target && tableContentRef.current) {\n lastScrollLeft = 0;\n target = tableContentRef.current;\n }\n if (!target) return;\n const left = target.scrollLeft;\n // 如果 lastScrollLeft 等于 left,说明不是横向滚动,不需要更新横向滚动距离\n if (lastScrollLeft === left) return;\n lastScrollLeft = left;\n // 表格内容、吸顶表头、吸底表尾、吸底横向滚动更新\n const toUpdateScrollElement = [\n tableContentRef.current,\n affixHeaderRef.current,\n affixFooterRef.current,\n horizontalScrollbarRef.current,\n ];\n for (let i = 0, len = toUpdateScrollElement.length; i < len; i++) {\n if (toUpdateScrollElement[i] && scrollElement !== toUpdateScrollElement[i]) {\n toUpdateScrollElement[i].scrollLeft = left;\n }\n }\n };\n\n // 吸底的元素(footer、横向滚动条、分页器)是否显示\n const isAffixedBottomElementShow = (elementRect: DOMRect, tableRect: DOMRect, headerHeight: number) =>\n tableRect.top + headerHeight < elementRect.top && elementRect.top > elementRect.height;\n\n const getOffsetTop = (props: boolean | AffixProps) => {\n if (typeof props === 'boolean') return 0;\n return props.offsetTop || 0;\n };\n\n const updateAffixHeaderOrFooter = () => {\n if (!isAffixed && !isVirtualScroll) return;\n const pos = tableContentRef.current?.getBoundingClientRect();\n const headerRect = tableContentRef.current?.querySelector('thead')?.getBoundingClientRect();\n const headerHeight = headerRect.height || 0;\n const footerRect = affixFooterRef.current?.getBoundingClientRect();\n if ((props.headerAffixedTop || isVirtualScroll) && affixHeaderRef.current) {\n const offsetTop = getOffsetTop(props.headerAffixProps || props.headerAffixedTop);\n const footerHeight = footerRect?.height || 0;\n let r = Math.abs(pos.top) < pos.height - headerHeight - offsetTop - footerHeight;\n // 如果是虚拟滚动的表头,只要表头在可视区域内,一律永久显示(虚拟滚动表头 和 吸顶表头可能同时存在)\n if (isVirtualScroll) {\n r = pos.top > -1 * headerRect.height;\n }\n setShowAffixHeader(r);\n }\n // 底部内容吸底 和 底部滚动条吸底,不可能同时存在,二选一即可\n if (props.footerAffixedBottom && affixFooterRef.current) {\n const show = isAffixedBottomElementShow(footerRect, pos, headerHeight);\n setShowAffixFooter(show);\n } else if (props.horizontalScrollAffixedBottom && horizontalScrollbarRef.current) {\n const horizontalScrollbarRect = horizontalScrollbarRef.current.getBoundingClientRect();\n const show = isAffixedBottomElementShow(horizontalScrollbarRect, pos, headerHeight);\n setShowAffixFooter(show);\n }\n if (props.paginationAffixedBottom && paginationRef.current) {\n const pageRect = paginationRef.current.getBoundingClientRect();\n const show = isAffixedBottomElementShow(pageRect, pos, headerHeight);\n setShowAffixPagination(show);\n }\n };\n\n const onDocumentScroll = () => {\n updateAffixHeaderOrFooter();\n };\n\n const onFootScroll = () => {\n onHorizontalScroll(affixFooterRef.current);\n };\n\n const onHeaderScroll = () => {\n onHorizontalScroll(affixHeaderRef.current);\n };\n\n const horizontalScrollbarScroll = () => {\n onHorizontalScroll(horizontalScrollbarRef.current);\n };\n\n const onTableContentScroll = () => {\n onHorizontalScroll(tableContentRef.current);\n };\n\n const onFootMouseEnter = () => {\n on(affixFooterRef.current, 'scroll', onFootScroll);\n };\n\n const onFootMouseLeave = () => {\n off(affixFooterRef.current, 'scroll', onFootScroll);\n };\n\n const onHeaderMouseEnter = () => {\n on(affixHeaderRef.current, 'scroll', onHeaderScroll);\n };\n\n const onHeaderMouseLeave = () => {\n off(affixHeaderRef.current, 'scroll', onHeaderScroll);\n };\n\n const onScrollbarMouseEnter = () => {\n on(horizontalScrollbarRef.current, 'scroll', horizontalScrollbarScroll);\n };\n\n const onScrollbarMouseLeave = () => {\n off(horizontalScrollbarRef.current, 'scroll', horizontalScrollbarScroll);\n };\n\n const onTableContentMouseEnter = () => {\n on(tableContentRef.current, 'scroll', onTableContentScroll);\n };\n\n const onTableContentMouseLeave = () => {\n off(tableContentRef.current, 'scroll', onTableContentScroll);\n };\n\n const addHorizontalScrollListeners = () => {\n if (affixHeaderRef.current) {\n on(affixHeaderRef.current, 'mouseenter', onHeaderMouseEnter);\n on(affixHeaderRef.current, 'mouseleave', onHeaderMouseLeave);\n }\n\n if (props.footerAffixedBottom && affixFooterRef.current) {\n on(affixFooterRef.current, 'mouseenter', onFootMouseEnter);\n on(affixFooterRef.current, 'mouseleave', onFootMouseLeave);\n }\n\n if (props.horizontalScrollAffixedBottom && horizontalScrollbarRef.current) {\n on(horizontalScrollbarRef.current, 'mouseenter', onScrollbarMouseEnter);\n on(horizontalScrollbarRef.current, 'mouseleave', onScrollbarMouseLeave);\n }\n\n if ((isAffixed || isVirtualScroll) && tableContentRef.current) {\n on(tableContentRef.current, 'mouseenter', onTableContentMouseEnter);\n on(tableContentRef.current, 'mouseleave', onTableContentMouseLeave);\n }\n };\n\n const removeHorizontalScrollListeners = () => {\n if (affixHeaderRef.current) {\n off(affixHeaderRef.current, 'mouseenter', onHeaderMouseEnter);\n off(affixHeaderRef.current, 'mouseleave', onHeaderMouseLeave);\n }\n if (affixFooterRef.current) {\n off(affixFooterRef.current, 'mouseenter', onFootMouseEnter);\n off(affixFooterRef.current, 'mouseleave', onFootMouseLeave);\n }\n if (tableContentRef.current) {\n off(tableContentRef.current, 'mouseenter', onTableContentMouseEnter);\n off(tableContentRef.current, 'mouseleave', onTableContentMouseLeave);\n }\n if (horizontalScrollbarRef.current) {\n off(horizontalScrollbarRef.current, 'mouseenter', onScrollbarMouseEnter);\n off(horizontalScrollbarRef.current, 'mouseleave', onScrollbarMouseLeave);\n }\n };\n\n const addVerticalScrollListener = () => {\n if (!isAffixed && !props.paginationAffixedBottom) return;\n const timer = setTimeout(() => {\n if (isAffixed || props.paginationAffixedBottom) {\n on(document, 'scroll', onDocumentScroll);\n } else {\n off(document, 'scroll', onDocumentScroll);\n }\n clearTimeout(timer);\n });\n };\n\n useEffect(() => {\n const timer = setTimeout(() => {\n addHorizontalScrollListeners();\n onHorizontalScroll();\n updateAffixHeaderOrFooter();\n clearTimeout(timer);\n });\n\n return removeHorizontalScrollListeners;\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [affixHeaderRef, affixFooterRef, horizontalScrollbarRef, tableContentRef]);\n\n useEffect(() => {\n addVerticalScrollListener();\n return () => {\n off(document, 'scroll', onDocumentScroll);\n };\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [isAffixed]);\n\n useEffect(() => {\n addHorizontalScrollListeners();\n onHorizontalScroll();\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [\n props.data,\n props.columns,\n props.headerAffixedTop,\n props.footerAffixedBottom,\n props.horizontalScrollAffixedBottom,\n ]);\n\n const setTableContentRef = (tableContent: HTMLDivElement) => {\n tableContentRef.current = tableContent;\n addVerticalScrollListener();\n };\n\n return {\n showAffixHeader,\n showAffixFooter,\n showAffixPagination,\n affixHeaderRef,\n affixFooterRef,\n horizontalScrollbarRef,\n paginationRef,\n onHorizontalScroll,\n setTableContentRef,\n updateAffixHeaderOrFooter,\n };\n}\n"],"names":["useAffix","props","tableContentRef","useRef","affixHeaderRef","affixFooterRef","horizontalScrollbarRef","paginationRef","useState","showAffixHeader","setShowAffixHeader","showAffixFooter","setShowAffixFooter","showAffixPagination","setShowAffixPagination","isVirtualScroll","useMemo","scroll","type","threshold","data","length","isAffixed","headerAffixedTop","footerAffixedBottom","horizontalScrollAffixedBottom","lastScrollLeft","onHorizontalScroll","scrollElement","target","current","left","scrollLeft","toUpdateScrollElement","i","len","isAffixedBottomElementShow","elementRect","tableRect","headerHeight","top","height","getOffsetTop","props2","offsetTop","updateAffixHeaderOrFooter","pos","getBoundingClientRect","headerRect","querySelector","footerRect","headerAffixProps","footerHeight","r","Math","abs","show","horizontalScrollbarRect","paginationAffixedBottom","pageRect","onDocumentScroll","onFootScroll","onHeaderScroll","horizontalScrollbarScroll","onTableContentScroll","onFootMouseEnter","on","onFootMouseLeave","off","onHeaderMouseEnter","onHeaderMouseLeave","onScrollbarMouseEnter","onScrollbarMouseLeave","onTableContentMouseEnter","onTableContentMouseLeave","addHorizontalScrollListeners","removeHorizontalScrollListeners","addVerticalScrollListener","timer","setTimeout","document","clearTimeout","useEffect","columns","setTableContentRef","tableContent"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"useAffix.js","sources":["../../../src/table/hooks/useAffix.ts"],"sourcesContent":["import { useState, useRef, useMemo, useEffect } from 'react';\nimport { TdBaseTableProps } from '../type';\nimport { on, off } from '../../_util/dom';\nimport { AffixProps } from '../../affix';\n\n/**\n * 1. 表头吸顶(普通表头吸顶 和 虚拟滚动表头吸顶)\n * 2. 表尾吸底\n * 3. 底部滚动条吸底\n * 4. 分页器吸底\n */\nexport default function useAffix(props: TdBaseTableProps) {\n const tableContentRef = useRef<HTMLDivElement>();\n // 吸顶表头\n const affixHeaderRef = useRef<HTMLDivElement>();\n // 吸底表尾\n const affixFooterRef = useRef<HTMLDivElement>();\n // 吸底滚动条\n const horizontalScrollbarRef = useRef<HTMLDivElement>();\n // 吸底分页器\n const paginationRef = useRef<HTMLDivElement>();\n // 当表格完全滚动消失在视野时,需要隐藏吸顶表头\n const [showAffixHeader, setShowAffixHeader] = useState(true);\n // 当表格完全滚动消失在视野时,需要隐藏吸底尾部\n const [showAffixFooter, setShowAffixFooter] = useState(true);\n // 当表格完全滚动消失在视野时,需要隐藏吸底分页器\n const [showAffixPagination, setShowAffixPagination] = useState(true);\n\n const isVirtualScroll = useMemo(\n () => props.scroll && props.scroll.type === 'virtual' && (props.scroll.threshold || 100) < props.data.length,\n [props.data.length, props.scroll],\n );\n\n const isAffixed = useMemo(\n () => !!(props.headerAffixedTop || props.footerAffixedBottom || props.horizontalScrollAffixedBottom),\n [props.footerAffixedBottom, props.headerAffixedTop, props.horizontalScrollAffixedBottom],\n );\n\n let lastScrollLeft = 0;\n const onHorizontalScroll = (scrollElement?: HTMLElement) => {\n if (!isAffixed && !isVirtualScroll) return;\n let target = scrollElement;\n if (!target && tableContentRef.current) {\n lastScrollLeft = 0;\n target = tableContentRef.current;\n }\n if (!target) return;\n const left = target.scrollLeft;\n // 如果 lastScrollLeft 等于 left,说明不是横向滚动,不需要更新横向滚动距离\n if (lastScrollLeft === left) return;\n lastScrollLeft = left;\n // 表格内容、吸顶表头、吸底表尾、吸底横向滚动更新\n const toUpdateScrollElement = [\n tableContentRef.current,\n affixHeaderRef.current,\n affixFooterRef.current,\n horizontalScrollbarRef.current,\n ];\n for (let i = 0, len = toUpdateScrollElement.length; i < len; i++) {\n if (toUpdateScrollElement[i] && scrollElement !== toUpdateScrollElement[i]) {\n toUpdateScrollElement[i].scrollLeft = left;\n }\n }\n };\n\n // 吸底的元素(footer、横向滚动条、分页器)是否显示\n const isAffixedBottomElementShow = (elementRect: DOMRect, tableRect: DOMRect, headerHeight: number) =>\n tableRect.top + headerHeight < elementRect.top && elementRect.top > elementRect.height;\n\n const getOffsetTop = (props: boolean | AffixProps) => {\n if (typeof props === 'boolean') return 0;\n return props.offsetTop || 0;\n };\n\n const updateAffixHeaderOrFooter = () => {\n if (!isAffixed && !isVirtualScroll) return;\n const pos = tableContentRef.current?.getBoundingClientRect();\n const headerRect = tableContentRef.current?.querySelector('thead')?.getBoundingClientRect();\n const headerHeight = headerRect.height || 0;\n const footerRect = affixFooterRef.current?.getBoundingClientRect();\n if ((props.headerAffixedTop || isVirtualScroll) && affixHeaderRef.current) {\n const offsetTop = getOffsetTop(props.headerAffixProps || props.headerAffixedTop);\n const footerHeight = footerRect?.height || 0;\n let r = Math.abs(pos.top) < pos.height - headerHeight - offsetTop - footerHeight;\n // 如果是虚拟滚动的表头,只要表头在可视区域内,一律永久显示(虚拟滚动表头 和 吸顶表头可能同时存在)\n if (isVirtualScroll) {\n r = pos.top > -1 * headerRect.height;\n }\n setShowAffixHeader(r);\n }\n // 底部内容吸底 和 底部滚动条吸底,不可能同时存在,二选一即可\n if (props.footerAffixedBottom && affixFooterRef.current) {\n const show = isAffixedBottomElementShow(footerRect, pos, headerHeight);\n setShowAffixFooter(show);\n } else if (props.horizontalScrollAffixedBottom && horizontalScrollbarRef.current) {\n const horizontalScrollbarRect = horizontalScrollbarRef.current.getBoundingClientRect();\n const show = isAffixedBottomElementShow(horizontalScrollbarRect, pos, headerHeight);\n setShowAffixFooter(show);\n }\n if (props.paginationAffixedBottom && paginationRef.current) {\n const pageRect = paginationRef.current.getBoundingClientRect();\n const show = isAffixedBottomElementShow(pageRect, pos, headerHeight);\n setShowAffixPagination(show);\n }\n };\n\n const onDocumentScroll = () => {\n updateAffixHeaderOrFooter();\n };\n\n const onFootScroll = () => {\n onHorizontalScroll(affixFooterRef.current);\n };\n\n const onHeaderScroll = () => {\n onHorizontalScroll(affixHeaderRef.current);\n };\n\n const horizontalScrollbarScroll = () => {\n onHorizontalScroll(horizontalScrollbarRef.current);\n };\n\n const onTableContentScroll = () => {\n onHorizontalScroll(tableContentRef.current);\n };\n\n const onFootMouseEnter = () => {\n on(affixFooterRef.current, 'scroll', onFootScroll);\n };\n\n const onFootMouseLeave = () => {\n off(affixFooterRef.current, 'scroll', onFootScroll);\n };\n\n const onHeaderMouseEnter = () => {\n on(affixHeaderRef.current, 'scroll', onHeaderScroll);\n };\n\n const onHeaderMouseLeave = () => {\n off(affixHeaderRef.current, 'scroll', onHeaderScroll);\n };\n\n const onScrollbarMouseEnter = () => {\n on(horizontalScrollbarRef.current, 'scroll', horizontalScrollbarScroll);\n };\n\n const onScrollbarMouseLeave = () => {\n off(horizontalScrollbarRef.current, 'scroll', horizontalScrollbarScroll);\n };\n\n const onTableContentMouseEnter = () => {\n on(tableContentRef.current, 'scroll', onTableContentScroll);\n };\n\n const onTableContentMouseLeave = () => {\n off(tableContentRef.current, 'scroll', onTableContentScroll);\n };\n\n const addHorizontalScrollListeners = () => {\n if (affixHeaderRef.current) {\n on(affixHeaderRef.current, 'mouseenter', onHeaderMouseEnter);\n on(affixHeaderRef.current, 'mouseleave', onHeaderMouseLeave);\n }\n\n if (props.footerAffixedBottom && affixFooterRef.current) {\n on(affixFooterRef.current, 'mouseenter', onFootMouseEnter);\n on(affixFooterRef.current, 'mouseleave', onFootMouseLeave);\n }\n\n if (props.horizontalScrollAffixedBottom && horizontalScrollbarRef.current) {\n on(horizontalScrollbarRef.current, 'mouseenter', onScrollbarMouseEnter);\n on(horizontalScrollbarRef.current, 'mouseleave', onScrollbarMouseLeave);\n }\n\n if ((isAffixed || isVirtualScroll) && tableContentRef.current) {\n on(tableContentRef.current, 'mouseenter', onTableContentMouseEnter);\n on(tableContentRef.current, 'mouseleave', onTableContentMouseLeave);\n }\n };\n\n const removeHorizontalScrollListeners = () => {\n if (affixHeaderRef.current) {\n off(affixHeaderRef.current, 'mouseenter', onHeaderMouseEnter);\n off(affixHeaderRef.current, 'mouseleave', onHeaderMouseLeave);\n }\n if (affixFooterRef.current) {\n off(affixFooterRef.current, 'mouseenter', onFootMouseEnter);\n off(affixFooterRef.current, 'mouseleave', onFootMouseLeave);\n }\n if (tableContentRef.current) {\n off(tableContentRef.current, 'mouseenter', onTableContentMouseEnter);\n off(tableContentRef.current, 'mouseleave', onTableContentMouseLeave);\n }\n if (horizontalScrollbarRef.current) {\n off(horizontalScrollbarRef.current, 'mouseenter', onScrollbarMouseEnter);\n off(horizontalScrollbarRef.current, 'mouseleave', onScrollbarMouseLeave);\n }\n };\n\n const addVerticalScrollListener = () => {\n if (!isAffixed && !props.paginationAffixedBottom) return;\n const timer = setTimeout(() => {\n if (isAffixed || props.paginationAffixedBottom) {\n on(document, 'scroll', onDocumentScroll);\n } else {\n off(document, 'scroll', onDocumentScroll);\n }\n clearTimeout(timer);\n });\n };\n\n useEffect(() => {\n const timer = setTimeout(() => {\n addHorizontalScrollListeners();\n onHorizontalScroll();\n updateAffixHeaderOrFooter();\n clearTimeout(timer);\n });\n\n return removeHorizontalScrollListeners;\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [affixHeaderRef, affixFooterRef, horizontalScrollbarRef, tableContentRef]);\n\n useEffect(() => {\n addVerticalScrollListener();\n return () => {\n off(document, 'scroll', onDocumentScroll);\n };\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [isAffixed]);\n\n useEffect(() => {\n addHorizontalScrollListeners();\n onHorizontalScroll();\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [\n props.data,\n props.columns,\n props.headerAffixedTop,\n props.footerAffixedBottom,\n props.horizontalScrollAffixedBottom,\n ]);\n\n const setTableContentRef = (tableContent: HTMLDivElement) => {\n tableContentRef.current = tableContent;\n addVerticalScrollListener();\n };\n\n return {\n showAffixHeader,\n showAffixFooter,\n showAffixPagination,\n affixHeaderRef,\n affixFooterRef,\n horizontalScrollbarRef,\n paginationRef,\n onHorizontalScroll,\n setTableContentRef,\n updateAffixHeaderOrFooter,\n };\n}\n"],"names":["useAffix","props","tableContentRef","useRef","affixHeaderRef","affixFooterRef","horizontalScrollbarRef","paginationRef","useState","showAffixHeader","setShowAffixHeader","showAffixFooter","setShowAffixFooter","showAffixPagination","setShowAffixPagination","isVirtualScroll","useMemo","scroll","type","threshold","data","length","isAffixed","headerAffixedTop","footerAffixedBottom","horizontalScrollAffixedBottom","lastScrollLeft","onHorizontalScroll","scrollElement","target","current","left","scrollLeft","toUpdateScrollElement","i","len","isAffixedBottomElementShow","elementRect","tableRect","headerHeight","top","height","getOffsetTop","props2","offsetTop","updateAffixHeaderOrFooter","pos","getBoundingClientRect","headerRect","querySelector","footerRect","headerAffixProps","footerHeight","r","Math","abs","show","horizontalScrollbarRect","paginationAffixedBottom","pageRect","onDocumentScroll","onFootScroll","onHeaderScroll","horizontalScrollbarScroll","onTableContentScroll","onFootMouseEnter","on","onFootMouseLeave","off","onHeaderMouseEnter","onHeaderMouseLeave","onScrollbarMouseEnter","onScrollbarMouseLeave","onTableContentMouseEnter","onTableContentMouseLeave","addHorizontalScrollListeners","removeHorizontalScrollListeners","addVerticalScrollListener","timer","setTimeout","document","clearTimeout","useEffect","columns","setTableContentRef","tableContent"],"mappings":"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"}
|
|
@@ -23,8 +23,8 @@ import '../../_util/dom.js';
|
|
|
23
23
|
import 'raf';
|
|
24
24
|
import '../../_util/easing.js';
|
|
25
25
|
import '../../hooks/useConfig.js';
|
|
26
|
-
import '../../_chunks/dep-
|
|
27
|
-
import '../../_chunks/dep-
|
|
26
|
+
import '../../_chunks/dep-db59527d.js';
|
|
27
|
+
import '../../_chunks/dep-20c46ad6.js';
|
|
28
28
|
import '../../_chunks/dep-2abb30e6.js';
|
|
29
29
|
import '../../_chunks/dep-6f56c2e3.js';
|
|
30
30
|
import '../../_chunks/dep-138723ac.js';
|
|
@@ -32,7 +32,7 @@ import '../../_chunks/dep-b4c1eed9.js';
|
|
|
32
32
|
import '../../_chunks/dep-a519f89e.js';
|
|
33
33
|
import '../../_chunks/dep-b07bc0a7.js';
|
|
34
34
|
import '../../_chunks/dep-61cf30b4.js';
|
|
35
|
-
import '../../_chunks/dep-
|
|
35
|
+
import '../../_chunks/dep-2ba06928.js';
|
|
36
36
|
import '../../_chunks/dep-975a79fe.js';
|
|
37
37
|
import '../../_chunks/dep-e2c9c61c.js';
|
|
38
38
|
import '../../_chunks/dep-fc5b6ba2.js';
|
|
@@ -42,7 +42,7 @@ import '../../_chunks/dep-ec8ca5d8.js';
|
|
|
42
42
|
import '../../_chunks/dep-b41a9359.js';
|
|
43
43
|
import '../../_chunks/dep-9a46859c.js';
|
|
44
44
|
import '../../_chunks/dep-e08dae1d.js';
|
|
45
|
-
import '../../_chunks/dep-
|
|
45
|
+
import '../../_chunks/dep-41b57136.js';
|
|
46
46
|
import '../../_chunks/dep-e7caf5cd.js';
|
|
47
47
|
import '../../locale/zh_CN.js';
|
|
48
48
|
import '../../_common/js/global-config/locale/zh_CN.js';
|
|
@@ -6,10 +6,10 @@
|
|
|
6
6
|
|
|
7
7
|
import useConfig from '../../hooks/useConfig.js';
|
|
8
8
|
import 'react';
|
|
9
|
-
import '../../_chunks/dep-
|
|
9
|
+
import '../../_chunks/dep-db59527d.js';
|
|
10
10
|
import '../../_chunks/dep-e90dc7f8.js';
|
|
11
11
|
import '../../_chunks/dep-baa5a06f.js';
|
|
12
|
-
import '../../_chunks/dep-
|
|
12
|
+
import '../../_chunks/dep-20c46ad6.js';
|
|
13
13
|
import '../../_chunks/dep-2abb30e6.js';
|
|
14
14
|
import '../../_chunks/dep-6f56c2e3.js';
|
|
15
15
|
import '../../_chunks/dep-138723ac.js';
|
|
@@ -19,7 +19,7 @@ import '../../_chunks/dep-b4c1eed9.js';
|
|
|
19
19
|
import '../../_chunks/dep-a519f89e.js';
|
|
20
20
|
import '../../_chunks/dep-b07bc0a7.js';
|
|
21
21
|
import '../../_chunks/dep-61cf30b4.js';
|
|
22
|
-
import '../../_chunks/dep-
|
|
22
|
+
import '../../_chunks/dep-2ba06928.js';
|
|
23
23
|
import '../../_chunks/dep-975a79fe.js';
|
|
24
24
|
import '../../_chunks/dep-a7905597.js';
|
|
25
25
|
import '../../_chunks/dep-e2c9c61c.js';
|
|
@@ -31,7 +31,7 @@ import '../../_chunks/dep-ec8ca5d8.js';
|
|
|
31
31
|
import '../../_chunks/dep-b41a9359.js';
|
|
32
32
|
import '../../_chunks/dep-9a46859c.js';
|
|
33
33
|
import '../../_chunks/dep-e08dae1d.js';
|
|
34
|
-
import '../../_chunks/dep-
|
|
34
|
+
import '../../_chunks/dep-41b57136.js';
|
|
35
35
|
import '../../_chunks/dep-e7caf5cd.js';
|
|
36
36
|
import '../../locale/zh_CN.js';
|
|
37
37
|
import '../../_common/js/global-config/locale/zh_CN.js';
|
|
@@ -42,7 +42,7 @@ import '../../_chunks/dep-b41a9359.js';
|
|
|
42
42
|
import '../../_chunks/dep-975a79fe.js';
|
|
43
43
|
import '../../_chunks/dep-e08dae1d.js';
|
|
44
44
|
import '../../_chunks/dep-127416c7.js';
|
|
45
|
-
import '../../_chunks/dep-
|
|
45
|
+
import '../../_chunks/dep-3a4ac6db.js';
|
|
46
46
|
import '../../_util/forwardRefWithStatics.js';
|
|
47
47
|
import 'hoist-non-react-statics';
|
|
48
48
|
import '../../common/Check.js';
|
|
@@ -52,13 +52,13 @@ import '../../_chunks/dep-0916ac7d.js';
|
|
|
52
52
|
import '../../_chunks/dep-316fca15.js';
|
|
53
53
|
import '../../_chunks/dep-8c94f81b.js';
|
|
54
54
|
import '../../_chunks/dep-e0495f06.js';
|
|
55
|
-
import '../../_chunks/dep-
|
|
56
|
-
import '../../_chunks/dep-
|
|
57
|
-
import '../../_chunks/dep-
|
|
55
|
+
import '../../_chunks/dep-db59527d.js';
|
|
56
|
+
import '../../_chunks/dep-20c46ad6.js';
|
|
57
|
+
import '../../_chunks/dep-2ba06928.js';
|
|
58
58
|
import '../../_chunks/dep-fc5b6ba2.js';
|
|
59
59
|
import '../../_chunks/dep-596c9907.js';
|
|
60
60
|
import '../../_chunks/dep-ec8ca5d8.js';
|
|
61
|
-
import '../../_chunks/dep-
|
|
61
|
+
import '../../_chunks/dep-41b57136.js';
|
|
62
62
|
import '../../_chunks/dep-e7caf5cd.js';
|
|
63
63
|
import '../../locale/zh_CN.js';
|
|
64
64
|
import '../../_common/js/global-config/locale/zh_CN.js';
|
|
@@ -101,6 +101,8 @@ import '../../loading/type.js';
|
|
|
101
101
|
import '../../button/defaultProps.js';
|
|
102
102
|
import '../../button/style/css.js';
|
|
103
103
|
import '../../button/type.js';
|
|
104
|
+
import '../../_common/js/log/index.js';
|
|
105
|
+
import '../../_common/js/log/log.js';
|
|
104
106
|
import './useMultiHeader.js';
|
|
105
107
|
import './useClassName.js';
|
|
106
108
|
import '../Ellipsis.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useColumnController.js","sources":["../../../src/table/hooks/useColumnController.tsx"],"sourcesContent":["/**\n * 自定义显示列控制器,即列配置\n */\nimport React, { useEffect, ChangeEvent, useRef } from 'react';\nimport { SettingIcon as TdSettingIcon } from 'tdesign-icons-react';\nimport intersection from 'lodash/intersection';\nimport classNames from 'classnames';\nimport Checkbox, { CheckboxGroupValue, CheckboxOptionObj, CheckboxGroupChangeContext } from '../../checkbox';\nimport { DialogPlugin } from '../../dialog/plugin';\nimport { renderTitle } from './useTableHeader';\nimport { PrimaryTableCol, TdPrimaryTableProps } from '../type';\nimport useConfig from '../../hooks/useConfig';\nimport useGlobalIcon from '../../hooks/useGlobalIcon';\nimport useControlled from '../../hooks/useControlled';\nimport { getCurrentRowByKey } from '../utils';\nimport { DialogInstance } from '../../dialog';\nimport TButton from '../../button';\n\nconst CheckboxGroup = Checkbox.Group;\n\nexport function getColumnKeys(columns: PrimaryTableCol[], keys = new Set<string>()) {\n for (let i = 0, len = columns.length; i < len; i++) {\n const col = columns[i];\n col.colKey && keys.add(col.colKey);\n if (col.children?.length) {\n getColumnKeys(col.children, keys);\n }\n }\n return keys;\n}\n\nexport default function useColumnController(props: TdPrimaryTableProps) {\n const { classPrefix, table } = useConfig();\n const { SettingIcon } = useGlobalIcon({ SettingIcon: TdSettingIcon });\n const { columns, columnController, displayColumns, columnControllerVisible } = props;\n const dialogInstance = useRef<DialogInstance>();\n\n const enabledColKeys = (() => {\n const arr = (columnController?.fields || [...getColumnKeys(columns)] || []).filter((v) => v);\n return new Set(arr);\n })();\n\n const keys = [...getColumnKeys(columns)];\n\n // 确认后的列配置\n const [tDisplayColumns, setTDisplayColumns] = useControlled(props, 'displayColumns', props.onDisplayColumnsChange);\n // 弹框内的多选\n const defaultColumnCheckboxKeys = displayColumns || props.defaultDisplayColumns || keys;\n // 内部选中的列配置,确认前\n const columnCheckboxKeys = useRef<CheckboxGroupValue>(defaultColumnCheckboxKeys);\n\n useEffect(() => {\n columnCheckboxKeys.current = [...(displayColumns || props.defaultDisplayColumns || keys)];\n dialogInstance.current?.update({ body: getDialogContent() });\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [displayColumns]);\n\n function getCheckboxOptions(columns: PrimaryTableCol[], arr: CheckboxOptionObj[] = []) {\n // 减少循环次数\n for (let i = 0, len = columns.length; i < len; i++) {\n const item = columns[i];\n if (item.colKey) {\n arr.push({\n label: renderTitle(item, i),\n value: item.colKey,\n disabled: !enabledColKeys.has(item.colKey),\n });\n }\n if (item.children?.length) {\n getCheckboxOptions(item.children, arr);\n }\n }\n return arr;\n }\n\n const handleCheckChange = (val: CheckboxGroupValue, ctx: CheckboxGroupChangeContext) => {\n columnCheckboxKeys.current = val;\n const params = {\n columns: val,\n type: ctx.type,\n currentColumn: getCurrentRowByKey(columns, String(ctx.current)),\n e: ctx.e,\n };\n props.onColumnChange?.(params);\n dialogInstance.current.update({ body: getDialogContent() });\n };\n\n const handleClickAllShowColumns = (checked: boolean, ctx: { e: ChangeEvent<HTMLDivElement> }) => {\n if (checked) {\n const checkboxOptions = getCheckboxOptions(columns);\n const newData = checkboxOptions?.map((t) => t.value) || [];\n columnCheckboxKeys.current = newData;\n props.onColumnChange?.({ type: 'check', columns: newData, e: ctx.e });\n } else {\n const disabledColKeys = getCheckboxOptions(columns)\n .filter((t) => t.disabled)\n .map((t) => t.value);\n columnCheckboxKeys.current = disabledColKeys;\n props.onColumnChange?.({ type: 'uncheck', columns: disabledColKeys, e: ctx.e });\n }\n dialogInstance.current.update({ body: getDialogContent() });\n };\n\n function getDialogContent() {\n const checkboxOptions = getCheckboxOptions(columns);\n const intersectionChecked = intersection(columnCheckboxKeys.current, [...enabledColKeys]);\n const widthMode = columnController?.displayType === 'fixed-width' ? 'fixed' : 'auto';\n const checkedLength = intersectionChecked.length;\n const isCheckedAll = checkedLength === enabledColKeys.size;\n const isIndeterminate = checkedLength > 0 && checkedLength < enabledColKeys.size;\n return (\n <div\n className={classNames([\n `${classPrefix}-table__column-controller`,\n `${classPrefix}-table__column-controller--${widthMode}`,\n ])}\n >\n <div className={`${classPrefix}-table__column-controller-body`}>\n {/* 请选择需要在表格中显示的数据列 */}\n <p className={`${classPrefix}-table__column-controller-desc`}>{table.columnConfigDescriptionText}</p>\n <div className={`${classPrefix}-table__column-controller-block`}>\n <Checkbox indeterminate={isIndeterminate} checked={isCheckedAll} onChange={handleClickAllShowColumns}>\n {table.selectAllText}\n </Checkbox>\n </div>\n <div className={`${classPrefix}-table__column-controller-block`}>\n <CheckboxGroup\n options={checkboxOptions}\n {...(columnController?.checkboxProps || {})}\n value={columnCheckboxKeys.current}\n onChange={handleCheckChange}\n />\n </div>\n </div>\n </div>\n );\n }\n\n const handleToggleColumnController = () => {\n dialogInstance.current = DialogPlugin.confirm({\n header: table.columnConfigTitleText,\n body: getDialogContent(),\n confirmBtn: table.confirmText,\n cancelBtn: table.cancelText,\n width: 612,\n onConfirm: () => {\n setTDisplayColumns([...columnCheckboxKeys.current]);\n // 此处逻辑不要随意改动,涉及到 内置列配置按钮 和 不包含列配置按钮等场景\n if (columnControllerVisible === undefined) {\n dialogInstance.current.hide();\n } else {\n props.onColumnControllerVisibleChange?.(false, { trigger: 'cancel' });\n }\n },\n onClose: () => {\n // 此处逻辑不要随意改动,涉及到 内置列配置按钮 和 不包含列配置按钮等场景\n if (columnControllerVisible === undefined) {\n dialogInstance.current.hide();\n } else {\n props.onColumnControllerVisibleChange?.(false, { trigger: 'confirm' });\n }\n },\n ...(columnController?.dialogProps || {}),\n });\n };\n\n // columnControllerVisible 一般应用于不包含列配置按钮的场景,有外部直接控制弹框的显示或隐藏\n useEffect(\n () => {\n if (columnControllerVisible === undefined) return;\n if (dialogInstance.current) {\n columnControllerVisible ? dialogInstance.current.show() : dialogInstance.current.hide();\n } else {\n columnControllerVisible && handleToggleColumnController();\n }\n },\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [columnControllerVisible, dialogInstance],\n );\n\n const renderColumnController = () => {\n const isColumnController = !!(columnController && Object.keys(columnController).length);\n const placement = isColumnController ? columnController.placement || 'top-right' : '';\n if (isColumnController && columnController.hideTriggerButton) return null;\n const classes = [\n `${classPrefix}-table__column-controller-trigger`,\n { [`${classPrefix}-align-${placement}`]: !!placement },\n ];\n return (\n <div className={classNames(classes)}>\n <TButton\n theme=\"default\"\n variant=\"outline\"\n onClick={handleToggleColumnController}\n content={table.columnConfigButtonText}\n icon={<SettingIcon />}\n {...props.columnController?.buttonProps}\n ></TButton>\n </div>\n );\n };\n\n return {\n tDisplayColumns,\n renderColumnController,\n };\n}\n"],"names":["CheckboxGroup","Checkbox","Group","getColumnKeys","columns","keys","Set","i","len","length","col","colKey","add","children","useColumnController","props","useConfig","classPrefix","table","useGlobalIcon","SettingIcon","TdSettingIcon","columnController","displayColumns","columnControllerVisible","dialogInstance","useRef","enabledColKeys","arr","fields","filter","v","useControlled","onDisplayColumnsChange","tDisplayColumns","setTDisplayColumns","defaultColumnCheckboxKeys","defaultDisplayColumns","columnCheckboxKeys","useEffect","current","update","body","getDialogContent","getCheckboxOptions","columns2","item","push","label","renderTitle","value","disabled","has","handleCheckChange","val","ctx","params","type","currentColumn","getCurrentRowByKey","String","e","onColumnChange","handleClickAllShowColumns","checked","checkboxOptions","newData","map","t","disabledColKeys","intersectionChecked","intersection","widthMode","displayType","checkedLength","isCheckedAll","size","isIndeterminate","React","createElement","className","classNames","columnConfigDescriptionText","indeterminate","onChange","selectAllText","options","checkboxProps","handleToggleColumnController","DialogPlugin","confirm","header","columnConfigTitleText","confirmBtn","confirmText","cancelBtn","cancelText","width","onConfirm","hide","onColumnControllerVisibleChange","trigger","onClose","dialogProps","show","renderColumnController","isColumnController","Object","placement","hideTriggerButton","classes","TButton","theme","variant","onClick","content","columnConfigButtonText","icon","buttonProps"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"useColumnController.js","sources":["../../../src/table/hooks/useColumnController.tsx"],"sourcesContent":["/**\n * 自定义显示列控制器,即列配置\n */\nimport React, { useEffect, ChangeEvent, useRef } from 'react';\nimport { SettingIcon as TdSettingIcon } from 'tdesign-icons-react';\nimport intersection from 'lodash/intersection';\nimport classNames from 'classnames';\nimport Checkbox, { CheckboxGroupValue, CheckboxOptionObj, CheckboxGroupChangeContext } from '../../checkbox';\nimport { DialogPlugin } from '../../dialog/plugin';\nimport { renderTitle } from './useTableHeader';\nimport { PrimaryTableCol, TdPrimaryTableProps } from '../type';\nimport useConfig from '../../hooks/useConfig';\nimport useGlobalIcon from '../../hooks/useGlobalIcon';\nimport useControlled from '../../hooks/useControlled';\nimport { getCurrentRowByKey } from '../utils';\nimport { DialogInstance } from '../../dialog';\nimport TButton from '../../button';\n\nconst CheckboxGroup = Checkbox.Group;\n\nexport function getColumnKeys(columns: PrimaryTableCol[], keys = new Set<string>()) {\n for (let i = 0, len = columns.length; i < len; i++) {\n const col = columns[i];\n col.colKey && keys.add(col.colKey);\n if (col.children?.length) {\n getColumnKeys(col.children, keys);\n }\n }\n return keys;\n}\n\nexport default function useColumnController(props: TdPrimaryTableProps) {\n const { classPrefix, table } = useConfig();\n const { SettingIcon } = useGlobalIcon({ SettingIcon: TdSettingIcon });\n const { columns, columnController, displayColumns, columnControllerVisible } = props;\n const dialogInstance = useRef<DialogInstance>();\n\n const enabledColKeys = (() => {\n const arr = (columnController?.fields || [...getColumnKeys(columns)] || []).filter((v) => v);\n return new Set(arr);\n })();\n\n const keys = [...getColumnKeys(columns)];\n\n // 确认后的列配置\n const [tDisplayColumns, setTDisplayColumns] = useControlled(props, 'displayColumns', props.onDisplayColumnsChange);\n // 弹框内的多选\n const defaultColumnCheckboxKeys = displayColumns || props.defaultDisplayColumns || keys;\n // 内部选中的列配置,确认前\n const columnCheckboxKeys = useRef<CheckboxGroupValue>(defaultColumnCheckboxKeys);\n\n useEffect(() => {\n columnCheckboxKeys.current = [...(displayColumns || props.defaultDisplayColumns || keys)];\n dialogInstance.current?.update({ body: getDialogContent() });\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [displayColumns]);\n\n function getCheckboxOptions(columns: PrimaryTableCol[], arr: CheckboxOptionObj[] = []) {\n // 减少循环次数\n for (let i = 0, len = columns.length; i < len; i++) {\n const item = columns[i];\n if (item.colKey) {\n arr.push({\n label: renderTitle(item, i),\n value: item.colKey,\n disabled: !enabledColKeys.has(item.colKey),\n });\n }\n if (item.children?.length) {\n getCheckboxOptions(item.children, arr);\n }\n }\n return arr;\n }\n\n const handleCheckChange = (val: CheckboxGroupValue, ctx: CheckboxGroupChangeContext) => {\n columnCheckboxKeys.current = val;\n const params = {\n columns: val,\n type: ctx.type,\n currentColumn: getCurrentRowByKey(columns, String(ctx.current)),\n e: ctx.e,\n };\n props.onColumnChange?.(params);\n dialogInstance.current.update({ body: getDialogContent() });\n };\n\n const handleClickAllShowColumns = (checked: boolean, ctx: { e: ChangeEvent<HTMLDivElement> }) => {\n if (checked) {\n const checkboxOptions = getCheckboxOptions(columns);\n const newData = checkboxOptions?.map((t) => t.value) || [];\n columnCheckboxKeys.current = newData;\n props.onColumnChange?.({ type: 'check', columns: newData, e: ctx.e });\n } else {\n const disabledColKeys = getCheckboxOptions(columns)\n .filter((t) => t.disabled)\n .map((t) => t.value);\n columnCheckboxKeys.current = disabledColKeys;\n props.onColumnChange?.({ type: 'uncheck', columns: disabledColKeys, e: ctx.e });\n }\n dialogInstance.current.update({ body: getDialogContent() });\n };\n\n function getDialogContent() {\n const checkboxOptions = getCheckboxOptions(columns);\n const intersectionChecked = intersection(columnCheckboxKeys.current, [...enabledColKeys]);\n const widthMode = columnController?.displayType === 'fixed-width' ? 'fixed' : 'auto';\n const checkedLength = intersectionChecked.length;\n const isCheckedAll = checkedLength === enabledColKeys.size;\n const isIndeterminate = checkedLength > 0 && checkedLength < enabledColKeys.size;\n return (\n <div\n className={classNames([\n `${classPrefix}-table__column-controller`,\n `${classPrefix}-table__column-controller--${widthMode}`,\n ])}\n >\n <div className={`${classPrefix}-table__column-controller-body`}>\n {/* 请选择需要在表格中显示的数据列 */}\n <p className={`${classPrefix}-table__column-controller-desc`}>{table.columnConfigDescriptionText}</p>\n <div className={`${classPrefix}-table__column-controller-block`}>\n <Checkbox indeterminate={isIndeterminate} checked={isCheckedAll} onChange={handleClickAllShowColumns}>\n {table.selectAllText}\n </Checkbox>\n </div>\n <div className={`${classPrefix}-table__column-controller-block`}>\n <CheckboxGroup\n options={checkboxOptions}\n {...(columnController?.checkboxProps || {})}\n value={columnCheckboxKeys.current}\n onChange={handleCheckChange}\n />\n </div>\n </div>\n </div>\n );\n }\n\n const handleToggleColumnController = () => {\n dialogInstance.current = DialogPlugin.confirm({\n header: table.columnConfigTitleText,\n body: getDialogContent(),\n confirmBtn: table.confirmText,\n cancelBtn: table.cancelText,\n width: 612,\n onConfirm: () => {\n setTDisplayColumns([...columnCheckboxKeys.current]);\n // 此处逻辑不要随意改动,涉及到 内置列配置按钮 和 不包含列配置按钮等场景\n if (columnControllerVisible === undefined) {\n dialogInstance.current.hide();\n } else {\n props.onColumnControllerVisibleChange?.(false, { trigger: 'cancel' });\n }\n },\n onClose: () => {\n // 此处逻辑不要随意改动,涉及到 内置列配置按钮 和 不包含列配置按钮等场景\n if (columnControllerVisible === undefined) {\n dialogInstance.current.hide();\n } else {\n props.onColumnControllerVisibleChange?.(false, { trigger: 'confirm' });\n }\n },\n ...(columnController?.dialogProps || {}),\n });\n };\n\n // columnControllerVisible 一般应用于不包含列配置按钮的场景,有外部直接控制弹框的显示或隐藏\n useEffect(\n () => {\n if (columnControllerVisible === undefined) return;\n if (dialogInstance.current) {\n columnControllerVisible ? dialogInstance.current.show() : dialogInstance.current.hide();\n } else {\n columnControllerVisible && handleToggleColumnController();\n }\n },\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [columnControllerVisible, dialogInstance],\n );\n\n const renderColumnController = () => {\n const isColumnController = !!(columnController && Object.keys(columnController).length);\n const placement = isColumnController ? columnController.placement || 'top-right' : '';\n if (isColumnController && columnController.hideTriggerButton) return null;\n const classes = [\n `${classPrefix}-table__column-controller-trigger`,\n { [`${classPrefix}-align-${placement}`]: !!placement },\n ];\n return (\n <div className={classNames(classes)}>\n <TButton\n theme=\"default\"\n variant=\"outline\"\n onClick={handleToggleColumnController}\n content={table.columnConfigButtonText}\n icon={<SettingIcon />}\n {...props.columnController?.buttonProps}\n ></TButton>\n </div>\n );\n };\n\n return {\n tDisplayColumns,\n renderColumnController,\n };\n}\n"],"names":["CheckboxGroup","Checkbox","Group","getColumnKeys","columns","keys","Set","i","len","length","col","colKey","add","children","useColumnController","props","useConfig","classPrefix","table","useGlobalIcon","SettingIcon","TdSettingIcon","columnController","displayColumns","columnControllerVisible","dialogInstance","useRef","enabledColKeys","arr","fields","filter","v","useControlled","onDisplayColumnsChange","tDisplayColumns","setTDisplayColumns","defaultColumnCheckboxKeys","defaultDisplayColumns","columnCheckboxKeys","useEffect","current","update","body","getDialogContent","getCheckboxOptions","columns2","item","push","label","renderTitle","value","disabled","has","handleCheckChange","val","ctx","params","type","currentColumn","getCurrentRowByKey","String","e","onColumnChange","handleClickAllShowColumns","checked","checkboxOptions","newData","map","t","disabledColKeys","intersectionChecked","intersection","widthMode","displayType","checkedLength","isCheckedAll","size","isIndeterminate","React","createElement","className","classNames","columnConfigDescriptionText","indeterminate","onChange","selectAllText","options","checkboxProps","handleToggleColumnController","DialogPlugin","confirm","header","columnConfigTitleText","confirmBtn","confirmText","cancelBtn","cancelText","width","onConfirm","hide","onColumnControllerVisibleChange","trigger","onClose","dialogProps","show","renderColumnController","isColumnController","Object","placement","hideTriggerButton","classes","TButton","theme","variant","onClick","content","columnConfigButtonText","icon","buttonProps"],"mappings":"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"}
|
|
@@ -32,9 +32,9 @@ import '../../_chunks/dep-b07bc0a7.js';
|
|
|
32
32
|
import '../../_chunks/dep-61cf30b4.js';
|
|
33
33
|
import '../../_chunks/dep-42107d1d.js';
|
|
34
34
|
import '../../hooks/useConfig.js';
|
|
35
|
-
import '../../_chunks/dep-
|
|
36
|
-
import '../../_chunks/dep-
|
|
37
|
-
import '../../_chunks/dep-
|
|
35
|
+
import '../../_chunks/dep-db59527d.js';
|
|
36
|
+
import '../../_chunks/dep-20c46ad6.js';
|
|
37
|
+
import '../../_chunks/dep-2ba06928.js';
|
|
38
38
|
import '../../_chunks/dep-975a79fe.js';
|
|
39
39
|
import '../../_chunks/dep-e2c9c61c.js';
|
|
40
40
|
import '../../_chunks/dep-fc5b6ba2.js';
|
|
@@ -44,7 +44,7 @@ import '../../_chunks/dep-ec8ca5d8.js';
|
|
|
44
44
|
import '../../_chunks/dep-b41a9359.js';
|
|
45
45
|
import '../../_chunks/dep-9a46859c.js';
|
|
46
46
|
import '../../_chunks/dep-e08dae1d.js';
|
|
47
|
-
import '../../_chunks/dep-
|
|
47
|
+
import '../../_chunks/dep-41b57136.js';
|
|
48
48
|
import '../../_chunks/dep-e7caf5cd.js';
|
|
49
49
|
import '../../locale/zh_CN.js';
|
|
50
50
|
import '../../_common/js/global-config/locale/zh_CN.js';
|
|
@@ -118,7 +118,7 @@ function useDragSort(props, primaryTableRef) {
|
|
|
118
118
|
var dragContainer = element === null || element === void 0 ? void 0 : element.querySelector("tbody");
|
|
119
119
|
|
|
120
120
|
if (!dragContainer) {
|
|
121
|
-
|
|
121
|
+
log.error("Table", "tbody does not exist.");
|
|
122
122
|
return null;
|
|
123
123
|
}
|
|
124
124
|
|