tntd 3.0.35 → 3.0.36-beta.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/es/_util/context.js +13 -6
- package/es/_util/defaultRenderEmpty.js +35 -23
- package/es/_util/hooks/useFlexGapSupport.js +25 -7
- package/es/_util/hooks/useForceUpdate.js +22 -3
- package/es/_util/motion.js +31 -22
- package/es/_util/reactNode.js +17 -7
- package/es/_util/responsiveObserve.js +40 -29
- package/es/_util/styleChecker.js +21 -7
- package/es/_util/type.js +18 -2
- package/es/_util/warning.js +19 -5
- package/es/actions/index.js +29 -22
- package/es/affix/index.js +24 -4
- package/es/affix/style/index.js +4 -2
- package/es/alert/alert.js +49 -27
- package/es/alert/index.js +23 -4
- package/es/alert/style/index.js +4 -2
- package/es/anchor/index.js +24 -4
- package/es/anchor/style/index.js +5 -4
- package/es/array-input/index.js +232 -181
- package/es/auth-context/index.js +10 -2
- package/es/auto-complete/index.js +24 -4
- package/es/auto-complete/style/index.js +6 -5
- package/es/avatar/index.js +24 -4
- package/es/avatar/style/index.js +4 -2
- package/es/back-top/index.js +24 -4
- package/es/back-top/style/index.js +4 -2
- package/es/badge/index.js +24 -4
- package/es/badge/style/index.js +4 -2
- package/es/breadcrumb/index.js +24 -4
- package/es/breadcrumb/style/index.js +6 -4
- package/es/button/button.js +55 -39
- package/es/button/index.js +22 -5
- package/es/button/style/index.js +4 -2
- package/es/calendar/index.js +24 -4
- package/es/calendar/style/index.js +6 -5
- package/es/card/card.js +36 -17
- package/es/card/index.js +21 -4
- package/es/card/style/index.js +7 -6
- package/es/carousel/index.js +24 -4
- package/es/carousel/style/index.js +4 -2
- package/es/cascader/cascader.js +37 -18
- package/es/cascader/index.js +25 -5
- package/es/cascader/style/index.js +6 -5
- package/es/check-card/group.js +125 -91
- package/es/check-card/index.js +95 -84
- package/es/checkbox/checkbox.js +48 -31
- package/es/checkbox/index.js +25 -5
- package/es/checkbox/style/index.js +4 -2
- package/es/col/index.js +24 -4
- package/es/col/style/index.js +4 -4
- package/es/collapse/index.js +25 -5
- package/es/collapse/style/index.js +4 -2
- package/es/color-picker/ColorPicker.js +109 -87
- package/es/color-picker/index.js +16 -9
- package/es/columns/index.js +61 -54
- package/es/comment/index.js +24 -4
- package/es/comment/style/index.js +4 -2
- package/es/config-provider/DisabledContext.js +16 -8
- package/es/config-provider/SizeContext.js +21 -9
- package/es/config-provider/config-provider.js +13 -2
- package/es/config-provider/index.js +36 -5
- package/es/config-provider/style/index.js +3 -1
- package/es/connect/index.js +33 -18
- package/es/date-picker/DatePicker.js +92 -65
- package/es/date-picker/index.js +16 -10
- package/es/date-picker/style/index.js +7 -7
- package/es/descriptions/descriptions.js +96 -76
- package/es/descriptions/index.js +22 -5
- package/es/descriptions/style/index.js +4 -2
- package/es/development-login/LoginModal.js +66 -43
- package/es/development-login/index.js +38 -14
- package/es/divider/index.js +24 -4
- package/es/divider/style/index.js +4 -2
- package/es/drawer/drawer.js +88 -74
- package/es/drawer/index.js +23 -5
- package/es/drawer/style/index.js +5 -4
- package/es/dropdown/index.js +24 -4
- package/es/dropdown/style/index.js +5 -4
- package/es/ellipsis/Svg/CopySVG.js +23 -16
- package/es/ellipsis/Svg/TickSVG.js +18 -11
- package/es/ellipsis/index.js +103 -71
- package/es/empty/empty.js +64 -42
- package/es/empty/empty.stories.js +18 -11
- package/es/empty/index.js +22 -5
- package/es/empty/style/index.js +4 -2
- package/es/exception/exception.js +35 -27
- package/es/exception/index.js +21 -4
- package/es/form/form.js +80 -58
- package/es/form/index.js +21 -4
- package/es/form/style/index.js +5 -4
- package/es/form/style/index.less +5 -5
- package/es/grid/index.js +24 -4
- package/es/grid/style/index.js +4 -2
- package/es/grid-v4/RowContext.js +9 -3
- package/es/grid-v4/col.js +52 -55
- package/es/grid-v4/hooks/useBreakpoint.js +20 -10
- package/es/grid-v4/index.js +26 -10
- package/es/grid-v4/row.js +113 -84
- package/es/grid-v4/style/index.js +3 -2
- package/es/handle/index.js +100 -73
- package/es/handle-icon/index.js +123 -103
- package/es/icon/IconFont.js +26 -18
- package/es/icon/components/Icon.js +110 -73
- package/es/icon/components/index.js +13 -1
- package/es/icon/components/utils.js +83 -44
- package/es/icon/index.js +81 -69
- package/es/icon/style/index.js +5 -3
- package/es/icon/twoTonePrimaryColor.js +14 -6
- package/es/icon/utils.js +25 -14
- package/es/icon-list/index.js +7 -1
- package/es/icon-old/index.js +24 -4
- package/es/icon-old/style/index.js +4 -2
- package/es/img/Contain.js +35 -29
- package/es/img/Cover.js +66 -51
- package/es/img/index.js +57 -34
- package/es/index.js +734 -110
- package/es/index.js.map +1 -1
- package/es/input/index.js +22 -5
- package/es/input/input.js +72 -80
- package/es/input/style/index.js +5 -4
- package/es/input-number/index.js +25 -5
- package/es/input-number/inputNumber.js +40 -20
- package/es/input-number/style/index.js +4 -2
- package/es/label/index.js +68 -65
- package/es/layout/index.js +24 -4
- package/es/layout/style/index.js +4 -2
- package/es/list/index.js +24 -4
- package/es/list/style/index.js +8 -7
- package/es/loading-button/index.js +40 -17
- package/es/locale/default.js +12 -5
- package/es/locale/en_US.js +12 -4
- package/es/locale/index.js +38 -3
- package/es/locale/zh_CN.js +11 -4
- package/es/locale-provider/index.js +27 -7
- package/es/locale-provider/style/index.js +3 -1
- package/es/mentions/index.js +24 -4
- package/es/mentions/style/index.js +5 -4
- package/es/menu/index.js +24 -4
- package/es/menu/style/index.js +5 -5
- package/es/message/index.js +25 -5
- package/es/message/style/index.js +4 -2
- package/es/modal/index.js +21 -4
- package/es/modal/modal.js +81 -73
- package/es/modal/style/index.js +6 -5
- package/es/notification/assets/index.js +20 -2
- package/es/notification/assets/svg-error-tip.js +13 -4
- package/es/notification/assets/svg-success-tip.js +13 -4
- package/es/notification/index.js +23 -4
- package/es/notification/notification.js +73 -48
- package/es/notification/style/index.js +4 -2
- package/es/page/Box.js +37 -25
- package/es/page/index.js +96 -78
- package/es/page/utils.js +18 -8
- package/es/page-container/index.js +22 -13
- package/es/page-header/index.js +24 -4
- package/es/page-header/style/index.js +5 -4
- package/es/page-loading/index.js +23 -18
- package/es/pagination/index.js +24 -4
- package/es/pagination/style/index.js +5 -4
- package/es/popconfirm/index.js +24 -4
- package/es/popconfirm/popconfirm.js +39 -21
- package/es/popconfirm/style/index.js +6 -6
- package/es/popover/index.js +24 -4
- package/es/popover/popover.js +43 -22
- package/es/popover/style/index.js +5 -5
- package/es/prev-locale.js +22 -10
- package/es/preview-text/index.js +176 -165
- package/es/progress/index.js +24 -4
- package/es/progress/progress.js +101 -85
- package/es/progress/style/index.js +4 -2
- package/es/query-form/Field/Checkbox.js +18 -13
- package/es/query-form/Field/Checkbox.js.map +1 -1
- package/es/query-form/Field/Composition/FieldPopover.js +194 -154
- package/es/query-form/Field/Composition/FieldPopover.js.map +1 -1
- package/es/query-form/Field/Composition/Select.js +98 -63
- package/es/query-form/Field/Composition/Select.js.map +1 -1
- package/es/query-form/Field/Composition/ValueTag.js +97 -62
- package/es/query-form/Field/Composition/ValueTag.js.map +1 -1
- package/es/query-form/Field/Composition/index.js +196 -117
- package/es/query-form/Field/Composition/index.js.map +1 -1
- package/es/query-form/Field/Composition/utils.js +87 -71
- package/es/query-form/Field/Select.js +55 -34
- package/es/query-form/Field/SelectInput.js +72 -43
- package/es/query-form/Field/SelectInput.js.map +1 -1
- package/es/query-form/Field/fieldsMap.js +30 -25
- package/es/query-form/Field/fieldsMap.js.map +1 -1
- package/es/query-form/Field/index.js +122 -90
- package/es/query-form/Field/index.js.map +1 -1
- package/es/query-form/createActions.js +28 -21
- package/es/query-form/index.js +217 -345
- package/es/query-form/index.js.map +1 -1
- package/es/query-form/index.less +26 -60
- package/es/query-form/useForm.js +11 -4
- package/es/query-list-scene/List.js +267 -225
- package/es/query-list-scene/List.js.map +1 -1
- package/es/query-list-scene/QueryForm.js +140 -96
- package/es/query-list-scene/QueryForm.js.map +1 -1
- package/es/query-list-scene/QueryListScene.js +63 -34
- package/es/query-list-scene/Title.js +15 -7
- package/es/query-list-scene/Toolbar.js +22 -15
- package/es/query-list-scene/createActions.js +51 -32
- package/es/query-list-scene/index.js +27 -19
- package/es/query-list-scene/index.js.map +1 -1
- package/es/query-list-scene/useActions.js +11 -4
- package/es/radio/index.js +25 -5
- package/es/radio/radio.js +50 -32
- package/es/radio/style/index.js +4 -2
- package/es/rate/index.js +24 -4
- package/es/rate/style/index.js +5 -4
- package/es/render-empty/index.js +8 -2
- package/es/render-empty/render-empty.js +31 -22
- package/es/result/index.js +24 -4
- package/es/result/style/index.js +4 -2
- package/es/row/index.js +24 -4
- package/es/row/style/index.js +4 -4
- package/es/scroll-bar/Bar.js +67 -32
- package/es/scroll-bar/Context.js +10 -3
- package/es/scroll-bar/ScrollBar.js +49 -38
- package/es/scroll-bar/Thumb.js +54 -34
- package/es/scroll-bar/index.js +10 -3
- package/es/scroll-bar/util.js +18 -10
- package/es/segmented/index.js +52 -43
- package/es/select/index.js +23 -5
- package/es/select/select.js +49 -42
- package/es/select/style/index.js +5 -4
- package/es/skeleton/index.js +24 -4
- package/es/skeleton/style/index.js +4 -2
- package/es/slider/index.js +24 -4
- package/es/slider/style/index.js +5 -4
- package/es/spin/index.js +22 -5
- package/es/spin/spin.js +23 -15
- package/es/spin/style/index.js +4 -2
- package/es/statistic/index.js +24 -4
- package/es/statistic/style/index.js +4 -2
- package/es/steps/index.js +22 -5
- package/es/steps/steps.js +67 -50
- package/es/steps/style/index.js +4 -10
- package/es/style/index.js +3 -1
- package/es/style/v2-compatible-reset.js +3 -1
- package/es/svg-components/illustration-403.js +13 -4
- package/es/svg-components/illustration-404.js +13 -4
- package/es/svg-components/illustration-500.js +13 -4
- package/es/svg-components/illustration-empty.js +13 -4
- package/es/svg-components/illustration-failure.js +13 -4
- package/es/svg-components/illustration-no-access.js +13 -4
- package/es/svg-components/illustration-no-chart.js +13 -4
- package/es/svg-components/illustration-no-result.js +13 -4
- package/es/svg-components/illustration-offline.js +13 -4
- package/es/svg-components/illustration-success.js +13 -4
- package/es/svg-components/index.js +76 -10
- package/es/switch/index.js +23 -3
- package/es/switch/style/index.js +5 -3
- package/es/switch/switch.js +53 -31
- package/es/table/assets/image-loading-background.js +13 -4
- package/es/table/assets/image-loading.js +13 -4
- package/es/table/constants.js +7 -1
- package/es/table/context.js +8 -2
- package/es/table/hooks/index.js +27 -2
- package/es/table/hooks/use-column-setting.js +31 -8
- package/es/table/hooks/use-expand-fixed.js +77 -47
- package/es/table/index.js +23 -6
- package/es/table/resizableTable/index.js +80 -57
- package/es/table/style/index.js +10 -10
- package/es/table/table-hoc.js +19 -14
- package/es/table/table.js +139 -120
- package/es/table/table.stories.js +130 -97
- package/es/table/utils.js +22 -13
- package/es/table-container/index.js +25 -15
- package/es/tabs/index.js +22 -5
- package/es/tabs/style/index.js +4 -2
- package/es/tabs/tabs.js +58 -35
- package/es/tabs-container/index.js +22 -13
- package/es/tag/index.js +22 -5
- package/es/tag/style/index.js +4 -2
- package/es/tag/tag.js +93 -81
- package/es/time-picker/TimePicker.js +40 -21
- package/es/time-picker/index.js +13 -6
- package/es/time-picker/style/index.js +4 -2
- package/es/timeline/index.js +24 -4
- package/es/timeline/style/index.js +4 -2
- package/es/title/index.js +40 -32
- package/es/tntd-action/Action.js +87 -63
- package/es/tntd-action/index.js +61 -45
- package/es/tntd-cascader/AntdCascader/component/DisabledContext.js +16 -8
- package/es/tntd-cascader/AntdCascader/component/FormItemInputContext.js +11 -2
- package/es/tntd-cascader/AntdCascader/component/SizeContext.js +11 -2
- package/es/tntd-cascader/AntdCascader/component/context.js +13 -6
- package/es/tntd-cascader/AntdCascader/component/defaultRenderEmpty.js +30 -18
- package/es/tntd-cascader/AntdCascader/component/getIcons.js +38 -28
- package/es/tntd-cascader/AntdCascader/component/useCompactItemContext.js +25 -19
- package/es/tntd-cascader/AntdCascader/config/utils.js +24 -15
- package/es/tntd-cascader/AntdCascader/config/warning.js +15 -6
- package/es/tntd-cascader/AntdCascader/index.js +136 -128
- package/es/tntd-cascader/AntdCascader/interface.js +15 -4
- package/es/tntd-cascader/index.js +13 -1
- package/es/tntd-cascader/rc-cascader/Cascader.js +220 -171
- package/es/tntd-cascader/rc-cascader/OptionList/Checkbox.js +26 -19
- package/es/tntd-cascader/rc-cascader/OptionList/Column.js +125 -110
- package/es/tntd-cascader/rc-cascader/OptionList/index.js +140 -106
- package/es/tntd-cascader/rc-cascader/OptionList/useActive.js +32 -16
- package/es/tntd-cascader/rc-cascader/OptionList/useKeyboard.js +150 -118
- package/es/tntd-cascader/rc-cascader/context.js +12 -3
- package/es/tntd-cascader/rc-cascader/hooks/useDisplayValues.js +45 -29
- package/es/tntd-cascader/rc-cascader/hooks/useEntities.js +27 -14
- package/es/tntd-cascader/rc-cascader/hooks/useMissingValues.js +21 -10
- package/es/tntd-cascader/rc-cascader/hooks/useRefFunc.js +15 -5
- package/es/tntd-cascader/rc-cascader/hooks/useSearchConfig.js +17 -8
- package/es/tntd-cascader/rc-cascader/hooks/useSearchOptions.js +47 -24
- package/es/tntd-cascader/rc-cascader/index.js +9 -2
- package/es/tntd-cascader/rc-cascader/utils/commonUtil.js +28 -17
- package/es/tntd-cascader/rc-cascader/utils/treeUtil.js +30 -19
- package/es/tntd-cascader/rc-cascader/utils/warningPropsUtil.js +26 -19
- package/es/tntd-form/ErrorList.js +75 -58
- package/es/tntd-form/Form.js +120 -83
- package/es/tntd-form/FormItem/ItemHolder.js +96 -80
- package/es/tntd-form/FormItem/index.js +152 -115
- package/es/tntd-form/FormItemInput.js +56 -44
- package/es/tntd-form/FormItemLabel.js +58 -54
- package/es/tntd-form/FormList.js +42 -29
- package/es/tntd-form/context.js +29 -20
- package/es/tntd-form/hooks/useDebounce.js +24 -6
- package/es/tntd-form/hooks/useForm.js +55 -32
- package/es/tntd-form/hooks/useFormInstance.js +11 -6
- package/es/tntd-form/hooks/useFormItemStatus.js +16 -10
- package/es/tntd-form/hooks/useFrameState.js +34 -15
- package/es/tntd-form/hooks/useItemRef.js +19 -11
- package/es/tntd-form/index.js +26 -16
- package/es/tntd-form/interface.js +7 -2
- package/es/tntd-form/style/index.js +6 -5
- package/es/tntd-form/util.js +15 -8
- package/es/tntd-form/validateMessagesContext.js +8 -2
- package/es/tntd-icon/fonts/iconfont.js +7 -7
- package/es/tntd-icon/index.js +30 -17
- package/es/tntd-layout/ActionsContext.js +8 -2
- package/es/tntd-layout/AppList.js +107 -189
- package/es/tntd-layout/Application.js +74 -96
- package/es/tntd-layout/Avatar.js +72 -118
- package/es/tntd-layout/CompatibleLanguage.js +99 -161
- package/es/tntd-layout/EnterpriseLayout/Avatar.js +84 -132
- package/es/tntd-layout/EnterpriseLayout/Language.js +58 -70
- package/es/tntd-layout/EnterpriseLayout/Theme.js +53 -80
- package/es/tntd-layout/EnterpriseLayout/index.js +22 -15
- package/es/tntd-layout/GlobalNavigation/NavigationPopup.js +196 -221
- package/es/tntd-layout/GlobalNavigation/index.js +82 -96
- package/es/tntd-layout/Header.js +59 -120
- package/es/tntd-layout/HeaderActions.js +70 -95
- package/es/tntd-layout/HeaderNavs.js +64 -79
- package/es/tntd-layout/HeaderTabs.js +146 -249
- package/es/tntd-layout/Iconfont.js +12 -3
- package/es/tntd-layout/Language.js +55 -57
- package/es/tntd-layout/Layout.js +129 -157
- package/es/tntd-layout/Logo.js +52 -108
- package/es/tntd-layout/OrgAppList.js +107 -299
- package/es/tntd-layout/SideMenu.js +191 -375
- package/es/tntd-layout/Theme.js +64 -73
- package/es/tntd-layout/createActions.js +33 -17
- package/es/tntd-layout/images/index.js +63 -57
- package/es/tntd-layout/index.js +78 -51
- package/es/tntd-layout/paaslayout/CompactSideMenu.js +97 -165
- package/es/tntd-layout/paaslayout/Header.js +38 -58
- package/es/tntd-layout/paaslayout/Logo.js +16 -22
- package/es/tntd-layout/paaslayout/SideMenu.js +100 -135
- package/es/tntd-layout/paaslayout/index.js +137 -126
- package/es/tntd-layout/storage.js +47 -20
- package/es/tntd-modal/index.js +61 -42
- package/es/tntd-rc-select/_util/DisabledContext.js +16 -8
- package/es/tntd-rc-select/_util/FormItemInputContext.js +11 -2
- package/es/tntd-rc-select/_util/PurePanel.js +52 -28
- package/es/tntd-rc-select/_util/SizeContext.js +11 -2
- package/es/tntd-rc-select/_util/context.js +13 -6
- package/es/tntd-rc-select/_util/defaultRenderEmpty.js +35 -23
- package/es/tntd-rc-select/_util/getIcons.js +39 -29
- package/es/tntd-rc-select/_util/interface.js +15 -4
- package/es/tntd-rc-select/_util/motion.js +31 -22
- package/es/tntd-rc-select/_util/type.js +18 -2
- package/es/tntd-rc-select/_util/useCompactItemContext.js +25 -19
- package/es/tntd-rc-select/_util/warning.js +15 -6
- package/es/tntd-rc-select/index.js +98 -99
- package/es/tntd-reference/AHref/index.js +18 -13
- package/es/tntd-reference/ReferenceBatchCheck/index.js +85 -73
- package/es/tntd-reference/ReferenceBatchDrawer/index.js +78 -54
- package/es/tntd-reference/ReferenceCheck/index.js +69 -60
- package/es/tntd-reference/ReferenceDrawer/index.js +59 -35
- package/es/tntd-reference/ReferenceInfo/index.js +73 -59
- package/es/tntd-reference/index.js +19 -12
- package/es/tntd-second-page/index.js +41 -31
- package/es/tntd-select/DropDownWrap.js +86 -60
- package/es/tntd-select/index.js +418 -384
- package/es/tntd-select/index.js.map +1 -1
- package/es/tntd-virtual-tree/index.js +160 -126
- package/es/tntd-virtual-tree/index.js.map +1 -1
- package/es/tntd-virtual-tree/utils.js +155 -98
- package/es/tntd-virtual-tree-select/index.js +108 -80
- package/es/tntd-virtual-tree-select/utils.js +43 -23
- package/es/tooltip/index.js +25 -5
- package/es/tooltip/style/index.js +5 -3
- package/es/tooltip/tooltip.js +41 -21
- package/es/transfer/index.js +24 -4
- package/es/transfer/style/index.js +8 -7
- package/es/tree/index.js +24 -4
- package/es/tree/style/index.js +4 -2
- package/es/tree-select/index.js +30 -8
- package/es/tree-select/style/index.js +6 -6
- package/es/typography/index.js +24 -4
- package/es/typography/style/index.js +6 -5
- package/es/upload/index.js +129 -89
- package/es/upload/style/index.js +6 -5
- package/es/upload/svg/UploadSVG.js +19 -12
- package/es/utils/checkAuth.js +24 -14
- package/es/utils/findMenuInfoByPath.js +22 -16
- package/es/utils/index.js +93 -32
- package/es/utils/lang.js +27 -17
- package/es/version/index.js +24 -4
- package/es/version/style/index.js +3 -2
- package/es/water-mark/index.js +85 -55
- package/lib/_util/context.js +5 -1
- package/lib/_util/defaultRenderEmpty.js +39 -4
- package/lib/_util/hooks/useFlexGapSupport.js +82 -9
- package/lib/_util/hooks/useForceUpdate.js +82 -9
- package/lib/_util/reactNode.js +34 -3
- package/lib/_util/responsiveObserve.js +31 -4
- package/lib/_util/styleChecker.js +5 -1
- package/lib/_util/warning.js +34 -3
- package/lib/actions/index.js +5 -1
- package/lib/affix/index.js +34 -3
- package/lib/alert/alert.js +61 -7
- package/lib/alert/index.js +5 -1
- package/lib/anchor/index.js +34 -3
- package/lib/array-input/index.js +121 -17
- package/lib/auto-complete/index.js +34 -3
- package/lib/avatar/index.js +34 -3
- package/lib/back-top/index.js +34 -3
- package/lib/badge/index.js +34 -3
- package/lib/breadcrumb/index.js +34 -3
- package/lib/button/button.js +61 -7
- package/lib/calendar/index.js +34 -3
- package/lib/card/card.js +34 -3
- package/lib/carousel/index.js +34 -3
- package/lib/cascader/cascader.js +39 -4
- package/lib/cascader/index.js +34 -3
- package/lib/check-card/group.js +99 -14
- package/lib/check-card/index.js +109 -13
- package/lib/checkbox/checkbox.js +39 -4
- package/lib/checkbox/index.js +34 -3
- package/lib/col/index.js +34 -3
- package/lib/collapse/index.js +34 -3
- package/lib/color-picker/ColorPicker.js +109 -13
- package/lib/color-picker/index.js +5 -1
- package/lib/columns/index.js +5 -1
- package/lib/comment/index.js +34 -3
- package/lib/config-provider/DisabledContext.js +34 -3
- package/lib/config-provider/SizeContext.js +34 -3
- package/lib/config-provider/config-provider.js +5 -1
- package/lib/config-provider/index.js +34 -3
- package/lib/date-picker/DatePicker.js +39 -4
- package/lib/descriptions/descriptions.js +61 -7
- package/lib/development-login/LoginModal.js +109 -13
- package/lib/development-login/index.js +84 -11
- package/lib/divider/index.js +34 -3
- package/lib/drawer/drawer.js +61 -7
- package/lib/dropdown/index.js +34 -3
- package/lib/ellipsis/Svg/CopySVG.js +5 -1
- package/lib/ellipsis/Svg/TickSVG.js +5 -1
- package/lib/ellipsis/index.js +91 -14
- package/lib/empty/empty.js +61 -7
- package/lib/empty/empty.stories.js +12 -2
- package/lib/exception/exception.js +5 -1
- package/lib/form/form.js +61 -7
- package/lib/form/style/index.less +5 -5
- package/lib/grid/index.js +34 -3
- package/lib/grid-v4/col.js +61 -7
- package/lib/grid-v4/hooks/useBreakpoint.js +5 -1
- package/lib/grid-v4/index.js +5 -1
- package/lib/grid-v4/row.js +109 -13
- package/lib/handle/index.js +39 -5
- package/lib/handle-icon/index.js +5 -1
- package/lib/icon/IconFont.js +39 -4
- package/lib/icon/components/Icon.js +112 -16
- package/lib/icon/components/index.js +5 -1
- package/lib/icon/components/utils.js +62 -8
- package/lib/icon/index.js +85 -13
- package/lib/icon/twoTonePrimaryColor.js +5 -1
- package/lib/icon/utils.js +5 -1
- package/lib/icon-old/index.js +34 -3
- package/lib/img/Contain.js +5 -1
- package/lib/img/Cover.js +87 -10
- package/lib/img/index.js +87 -10
- package/lib/index.d.ts +1 -0
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +12 -1
- package/lib/index.js.map +1 -1
- package/lib/input/input.js +61 -7
- package/lib/input-number/index.js +34 -3
- package/lib/input-number/inputNumber.js +39 -4
- package/lib/label/index.js +61 -7
- package/lib/layout/index.js +34 -3
- package/lib/list/index.js +34 -3
- package/lib/loading-button/index.js +87 -10
- package/lib/locale/default.js +5 -1
- package/lib/locale/en_US.js +5 -1
- package/lib/locale/zh_CN.js +5 -1
- package/lib/locale-provider/index.js +34 -3
- package/lib/mentions/index.js +34 -3
- package/lib/menu/index.js +34 -3
- package/lib/message/index.js +34 -3
- package/lib/modal/modal.js +39 -4
- package/lib/notification/assets/index.js +5 -1
- package/lib/notification/assets/svg-error-tip.js +34 -3
- package/lib/notification/assets/svg-success-tip.js +34 -3
- package/lib/notification/index.js +5 -1
- package/lib/notification/notification.js +39 -4
- package/lib/page/Box.js +5 -1
- package/lib/page/index.js +60 -11
- package/lib/page-container/index.js +5 -1
- package/lib/page-header/index.js +34 -3
- package/lib/page-loading/index.js +5 -1
- package/lib/pagination/index.js +34 -3
- package/lib/popconfirm/index.js +34 -3
- package/lib/popconfirm/popconfirm.js +39 -4
- package/lib/popover/index.js +34 -3
- package/lib/popover/popover.js +39 -4
- package/lib/preview-text/index.js +39 -4
- package/lib/progress/index.js +34 -3
- package/lib/progress/progress.js +36 -5
- package/lib/query-form/Field/Checkbox.js +6 -2
- package/lib/query-form/Field/Checkbox.js.map +1 -1
- package/lib/query-form/Field/Composition/FieldPopover.js +89 -11
- package/lib/query-form/Field/Composition/FieldPopover.js.map +1 -1
- package/lib/query-form/Field/Composition/Select.d.ts.map +1 -1
- package/lib/query-form/Field/Composition/Select.js +126 -19
- package/lib/query-form/Field/Composition/Select.js.map +1 -1
- package/lib/query-form/Field/Composition/ValueTag.d.ts.map +1 -1
- package/lib/query-form/Field/Composition/ValueTag.js +89 -11
- package/lib/query-form/Field/Composition/ValueTag.js.map +1 -1
- package/lib/query-form/Field/Composition/index.js +162 -23
- package/lib/query-form/Field/Composition/index.js.map +1 -1
- package/lib/query-form/Field/Composition/utils.js +5 -1
- package/lib/query-form/Field/Select.js +109 -13
- package/lib/query-form/Field/SelectInput.d.ts.map +1 -1
- package/lib/query-form/Field/SelectInput.js +125 -19
- package/lib/query-form/Field/SelectInput.js.map +1 -1
- package/lib/query-form/Field/fieldsMap.d.ts +6 -3
- package/lib/query-form/Field/fieldsMap.d.ts.map +1 -1
- package/lib/query-form/Field/fieldsMap.js +7 -3
- package/lib/query-form/Field/fieldsMap.js.map +1 -1
- package/lib/query-form/Field/index.d.ts.map +1 -1
- package/lib/query-form/Field/index.js +120 -18
- package/lib/query-form/Field/index.js.map +1 -1
- package/lib/query-form/createActions.js +5 -1
- package/lib/query-form/index.d.ts +1 -36
- package/lib/query-form/index.d.ts.map +1 -1
- package/lib/query-form/index.js +297 -365
- package/lib/query-form/index.js.map +1 -1
- package/lib/query-form/index.less +26 -60
- package/lib/query-form/useForm.js +5 -1
- package/lib/query-list-scene/List.d.ts.map +1 -1
- package/lib/query-list-scene/List.js +124 -18
- package/lib/query-list-scene/List.js.map +1 -1
- package/lib/query-list-scene/QueryForm.d.ts +5 -4
- package/lib/query-list-scene/QueryForm.d.ts.map +1 -1
- package/lib/query-list-scene/QueryForm.js +119 -27
- package/lib/query-list-scene/QueryForm.js.map +1 -1
- package/lib/query-list-scene/QueryListScene.js +92 -15
- package/lib/query-list-scene/Title.js +5 -1
- package/lib/query-list-scene/Toolbar.js +36 -5
- package/lib/query-list-scene/createActions.js +5 -1
- package/lib/query-list-scene/index.d.ts.map +1 -1
- package/lib/query-list-scene/index.js +7 -2
- package/lib/query-list-scene/index.js.map +1 -1
- package/lib/query-list-scene/useActions.js +5 -1
- package/lib/radio/index.js +34 -3
- package/lib/radio/radio.js +39 -4
- package/lib/rate/index.js +34 -3
- package/lib/render-empty/render-empty.js +5 -1
- package/lib/result/index.js +34 -3
- package/lib/row/index.js +34 -3
- package/lib/scroll-bar/Bar.js +87 -10
- package/lib/scroll-bar/Context.js +5 -1
- package/lib/scroll-bar/ScrollBar.js +39 -4
- package/lib/scroll-bar/Thumb.js +87 -10
- package/lib/scroll-bar/index.js +5 -1
- package/lib/scroll-bar/util.js +31 -4
- package/lib/segmented/index.js +61 -7
- package/lib/select/select.js +61 -7
- package/lib/skeleton/index.js +34 -3
- package/lib/slider/index.js +34 -3
- package/lib/spin/spin.js +39 -4
- package/lib/statistic/index.js +34 -3
- package/lib/steps/steps.js +61 -7
- package/lib/svg-components/illustration-403.js +34 -3
- package/lib/svg-components/illustration-404.js +34 -3
- package/lib/svg-components/illustration-500.js +34 -3
- package/lib/svg-components/illustration-empty.js +34 -3
- package/lib/svg-components/illustration-failure.js +34 -3
- package/lib/svg-components/illustration-no-access.js +34 -3
- package/lib/svg-components/illustration-no-chart.js +34 -3
- package/lib/svg-components/illustration-no-result.js +34 -3
- package/lib/svg-components/illustration-offline.js +34 -3
- package/lib/svg-components/illustration-success.js +34 -3
- package/lib/svg-components/index.js +5 -1
- package/lib/switch/index.js +34 -3
- package/lib/switch/switch.js +34 -3
- package/lib/table/assets/image-loading-background.js +34 -3
- package/lib/table/assets/image-loading.js +34 -3
- package/lib/table/hooks/use-column-setting.js +48 -6
- package/lib/table/hooks/use-expand-fixed.js +386 -10
- package/lib/table/resizableTable/index.js +109 -13
- package/lib/table/table-hoc.js +5 -1
- package/lib/table/table.js +109 -13
- package/lib/table/table.stories.js +36 -5
- package/lib/table/utils.js +5 -1
- package/lib/table-container/index.js +5 -1
- package/lib/tabs/tabs.js +61 -7
- package/lib/tabs-container/index.js +5 -1
- package/lib/tag/tag.js +61 -7
- package/lib/time-picker/TimePicker.js +39 -4
- package/lib/time-picker/index.js +5 -1
- package/lib/timeline/index.js +34 -3
- package/lib/title/index.js +5 -1
- package/lib/tntd-action/Action.js +87 -10
- package/lib/tntd-action/index.js +87 -10
- package/lib/tntd-cascader/AntdCascader/component/DisabledContext.js +34 -3
- package/lib/tntd-cascader/AntdCascader/component/FormItemInputContext.js +34 -3
- package/lib/tntd-cascader/AntdCascader/component/SizeContext.js +34 -3
- package/lib/tntd-cascader/AntdCascader/component/context.js +5 -1
- package/lib/tntd-cascader/AntdCascader/component/defaultRenderEmpty.js +39 -4
- package/lib/tntd-cascader/AntdCascader/component/getIcons.js +39 -4
- package/lib/tntd-cascader/AntdCascader/component/useCompactItemContext.js +61 -7
- package/lib/tntd-cascader/AntdCascader/config/utils.js +36 -5
- package/lib/tntd-cascader/AntdCascader/config/warning.js +34 -3
- package/lib/tntd-cascader/AntdCascader/index.js +85 -13
- package/lib/tntd-cascader/index.js +5 -1
- package/lib/tntd-cascader/rc-cascader/Cascader.js +99 -14
- package/lib/tntd-cascader/rc-cascader/OptionList/Checkbox.js +61 -7
- package/lib/tntd-cascader/rc-cascader/OptionList/Column.js +85 -13
- package/lib/tntd-cascader/rc-cascader/OptionList/index.js +121 -17
- package/lib/tntd-cascader/rc-cascader/OptionList/useActive.js +87 -10
- package/lib/tntd-cascader/rc-cascader/OptionList/useKeyboard.js +99 -14
- package/lib/tntd-cascader/rc-cascader/context.js +34 -3
- package/lib/tntd-cascader/rc-cascader/hooks/useDisplayValues.js +58 -9
- package/lib/tntd-cascader/rc-cascader/hooks/useEntities.js +34 -3
- package/lib/tntd-cascader/rc-cascader/hooks/useMissingValues.js +34 -3
- package/lib/tntd-cascader/rc-cascader/hooks/useRefFunc.js +34 -3
- package/lib/tntd-cascader/rc-cascader/hooks/useSearchConfig.js +39 -4
- package/lib/tntd-cascader/rc-cascader/hooks/useSearchOptions.js +80 -12
- package/lib/tntd-cascader/rc-cascader/index.js +5 -1
- package/lib/tntd-cascader/rc-cascader/utils/warningPropsUtil.js +5 -1
- package/lib/tntd-form/ErrorList.js +85 -13
- package/lib/tntd-form/Form.js +109 -13
- package/lib/tntd-form/FormItem/ItemHolder.js +109 -13
- package/lib/tntd-form/FormItem/index.js +99 -14
- package/lib/tntd-form/FormItemInput.js +39 -4
- package/lib/tntd-form/FormItemLabel.js +61 -7
- package/lib/tntd-form/FormList.js +39 -4
- package/lib/tntd-form/context.js +39 -4
- package/lib/tntd-form/hooks/useDebounce.js +82 -9
- package/lib/tntd-form/hooks/useForm.js +87 -10
- package/lib/tntd-form/hooks/useFormItemStatus.js +5 -1
- package/lib/tntd-form/hooks/useFrameState.js +87 -10
- package/lib/tntd-form/hooks/useItemRef.js +34 -3
- package/lib/tntd-form/index.js +39 -4
- package/lib/tntd-icon/index.js +5 -1
- package/lib/tntd-layout/AppList.js +94 -11
- package/lib/tntd-layout/Application.js +94 -11
- package/lib/tntd-layout/Avatar.js +46 -5
- package/lib/tntd-layout/CompatibleLanguage.js +94 -11
- package/lib/tntd-layout/EnterpriseLayout/Avatar.js +46 -5
- package/lib/tntd-layout/EnterpriseLayout/Language.js +94 -11
- package/lib/tntd-layout/EnterpriseLayout/Theme.js +94 -11
- package/lib/tntd-layout/EnterpriseLayout/index.js +5 -1
- package/lib/tntd-layout/GlobalNavigation/NavigationPopup.js +94 -11
- package/lib/tntd-layout/GlobalNavigation/index.js +106 -15
- package/lib/tntd-layout/Header.js +46 -5
- package/lib/tntd-layout/HeaderActions.js +46 -5
- package/lib/tntd-layout/HeaderNavs.js +94 -11
- package/lib/tntd-layout/HeaderTabs.js +116 -14
- package/lib/tntd-layout/Iconfont.js +5 -1
- package/lib/tntd-layout/Language.js +94 -11
- package/lib/tntd-layout/Layout.js +94 -11
- package/lib/tntd-layout/Logo.js +46 -5
- package/lib/tntd-layout/OrgAppList.js +94 -11
- package/lib/tntd-layout/SideMenu.js +94 -11
- package/lib/tntd-layout/Theme.js +94 -11
- package/lib/tntd-layout/createActions.js +5 -1
- package/lib/tntd-layout/images/index.js +5 -1
- package/lib/tntd-layout/index.js +39 -4
- package/lib/tntd-layout/paaslayout/CompactSideMenu.js +94 -11
- package/lib/tntd-layout/paaslayout/Header.js +46 -5
- package/lib/tntd-layout/paaslayout/Logo.js +12 -2
- package/lib/tntd-layout/paaslayout/SideMenu.js +94 -11
- package/lib/tntd-layout/paaslayout/index.js +94 -11
- package/lib/tntd-layout/storage.js +5 -1
- package/lib/tntd-modal/index.js +109 -13
- package/lib/tntd-rc-select/_util/DisabledContext.js +34 -3
- package/lib/tntd-rc-select/_util/FormItemInputContext.js +34 -3
- package/lib/tntd-rc-select/_util/PurePanel.js +87 -10
- package/lib/tntd-rc-select/_util/SizeContext.js +34 -3
- package/lib/tntd-rc-select/_util/context.js +5 -1
- package/lib/tntd-rc-select/_util/defaultRenderEmpty.js +39 -4
- package/lib/tntd-rc-select/_util/getIcons.js +39 -4
- package/lib/tntd-rc-select/_util/useCompactItemContext.js +61 -7
- package/lib/tntd-rc-select/_util/warning.js +34 -3
- package/lib/tntd-rc-select/index.js +61 -7
- package/lib/tntd-reference/AHref/index.js +5 -1
- package/lib/tntd-reference/ReferenceBatchCheck/index.js +5 -1
- package/lib/tntd-reference/ReferenceBatchDrawer/index.js +87 -10
- package/lib/tntd-reference/ReferenceCheck/index.js +5 -1
- package/lib/tntd-reference/ReferenceDrawer/index.js +87 -10
- package/lib/tntd-reference/ReferenceInfo/index.js +5 -1
- package/lib/tntd-reference/index.js +5 -1
- package/lib/tntd-second-page/index.js +5 -1
- package/lib/tntd-select/DropDownWrap.js +104 -15
- package/lib/tntd-select/index.d.ts.map +1 -1
- package/lib/tntd-select/index.js +112 -17
- package/lib/tntd-select/index.js.map +1 -1
- package/lib/tntd-virtual-tree/index.js +105 -23
- package/lib/tntd-virtual-tree/index.js.map +1 -1
- package/lib/tntd-virtual-tree/utils.js +72 -7
- package/lib/tntd-virtual-tree-select/index.js +87 -10
- package/lib/tntd-virtual-tree-select/utils.js +24 -6
- package/lib/tooltip/index.js +34 -3
- package/lib/tooltip/tooltip.js +39 -4
- package/lib/transfer/index.js +34 -3
- package/lib/tree/index.js +34 -3
- package/lib/tree-select/index.js +34 -3
- package/lib/typography/index.js +34 -3
- package/lib/upload/index.js +135 -11
- package/lib/upload/svg/UploadSVG.js +5 -1
- package/lib/utils/checkAuth.js +5 -1
- package/lib/utils/index.js +24 -6
- package/lib/utils/lang.js +5 -1
- package/lib/version/index.js +34 -3
- package/lib/water-mark/index.js +87 -10
- package/package.json +4 -3
- package/CHANGELOG.json +0 -1034
- package/CHANGELOG.md +0 -605
- package/es/checkbox/checkbox-group.js +0 -5
- package/es/checkbox/checkbox-group.js.map +0 -1
- package/es/radio/radio-group.js +0 -5
- package/es/radio/radio-group.js.map +0 -1
- package/es/steps/stepStyle/small.less +0 -5
- package/es/table/total-shower.js +0 -10
- package/es/table/total-shower.js.map +0 -1
- package/es/utils/simple-template.js +0 -10
- package/es/utils/simple-template.js.map +0 -1
- package/lib/checkbox/checkbox-group.d.ts +0 -8
- package/lib/checkbox/checkbox-group.d.ts.map +0 -1
- package/lib/checkbox/checkbox-group.js +0 -12
- package/lib/checkbox/checkbox-group.js.map +0 -1
- package/lib/radio/radio-group.d.ts +0 -8
- package/lib/radio/radio-group.d.ts.map +0 -1
- package/lib/radio/radio-group.js +0 -12
- package/lib/radio/radio-group.js.map +0 -1
- package/lib/steps/stepStyle/small.less +0 -5
- package/lib/table/total-shower.d.ts +0 -9
- package/lib/table/total-shower.d.ts.map +0 -1
- package/lib/table/total-shower.js +0 -16
- package/lib/table/total-shower.js.map +0 -1
- package/lib/utils/simple-template.d.ts +0 -9
- package/lib/utils/simple-template.d.ts.map +0 -1
- package/lib/utils/simple-template.js +0 -19
- package/lib/utils/simple-template.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tntd-select/index.js"],"names":[],"mappings":"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","sourcesContent":["import React, { PureComponent } from 'react'\nimport { ConfigConsumer } from '../config-provider'\nimport Select from '../select'\nimport Empty from '../empty'\nimport Spin from '../spin'\nimport { capitalizeFirstLetter } from '../utils'\nimport DropDownWrap from './DropDownWrap'\nimport { getLanguage, getText } from '../prev-locale'\nimport './index.less'\n\nconst defaultPlaceholder = getText('select', getLanguage())\n// 页面实际渲染的下拉菜单数量,实际为 2 * ITEM_ELEMENT_NUMBER\nconst ITEM_ELEMENT_NUMBER = 30\n// Select size 配置\nconst ITEM_HEIGHT_CFG = {\n small: 24,\n large: 40,\n default: 32,\n}\n\nconst ARROW_CODE = {\n 40: 'down',\n 38: 'up',\n}\n\nconst DROPDOWN_HEIGHT = 224\n\nconst Option = Select.Option\n\nclass SuperSelect extends PureComponent {\n constructor(props) {\n super(props)\n\n const { mode, defaultValue, value, optionHeight, children: arr } = props\n this.isMultiple = ['tags', 'multiple'].includes(mode)\n const children = this.turnChildren(arr)\n\n // 设置默认 value\n let defaultV = this.isMultiple ? [] : ''\n defaultV = value || defaultValue || defaultV\n\n this.state = {\n children: children || [],\n filterChildren: null, // 筛选后的 options,优先显示,所以清除筛选后手动设为 null\n value: defaultV,\n maxWidth: null,\n selectWidth: null,\n }\n // 下拉菜单项行高\n this.ITEM_HEIGHT = optionHeight || ITEM_HEIGHT_CFG[props.size || 'default']\n // 可视区 dom 高度\n this.visibleDomHeight = this.ITEM_HEIGHT * ITEM_ELEMENT_NUMBER\n // 滚动时重新渲染的 scrollTop 判断值,大于 reactDelta 则刷新下拉列表\n this.reactDelta = this.visibleDomHeight / 3\n // 是否拖动滚动条快速滚动状态\n this.isStopReact = false\n // 上一次滚动的 scrollTop 值\n this.prevScrollTop = 0\n // 上一次按下方向键时 scrollTop 值\n this.prevTop = 0\n\n this.scrollTop = 0\n\n // className\n this.dropdownClassName = `dc${+new Date()}`\n\n this.id = `sid${+new Date()}`\n }\n\n componentDidMount() {\n // defaultOpens=true 时添加滚动事件\n setTimeout(() => {\n this.addEvent()\n }, 500)\n const { children: arr } = this.props\n const children = this.turnChildren(arr)\n // if (children && children.length > 0) {\n this.formulaWidth()\n // }\n }\n\n turnChildren = (children) => {\n if (!children) return []\n let arr = []\n if (children && children.props) {\n arr.push(children)\n } else {\n children.forEach((item) => {\n if (item) {\n if (item instanceof Array) {\n arr = arr.concat(item)\n } else {\n arr.push(item)\n }\n }\n })\n }\n return arr\n }\n\n formulaWidth = () => {\n // 获取dom设置宽度\n const { children: arr2, dropdownMatchSelectWidth = true, maxWidth } = this.props\n const selectDom = document.getElementById(this.id)\n let selectWidth\n if (selectDom) {\n selectWidth = selectDom.clientWidth || selectDom.offsetWidth\n }\n let arr = []\n let formulaMaxWidth = 10\n if (!dropdownMatchSelectWidth) {\n formulaMaxWidth = maxWidth || 10\n }\n if (!dropdownMatchSelectWidth && !maxWidth) {\n const children = this.turnChildren(arr2)\n for (let i = 0; i < children.length; i++) {\n const val = children[i].props.children\n const textWidth = this.getTextPixelWith(val)\n arr.push(textWidth.toFixed(2))\n }\n if (arr.length > 0) {\n formulaMaxWidth = Math.max(...arr)\n }\n }\n\n this.setState({\n selectWidth,\n maxWidth: formulaMaxWidth,\n })\n }\n\n // 获取单行文本的像素宽度\n getTextPixelWith = (text, fontStyle = '14px') => {\n let canvas = document.createElement('canvas') // 创建 canvas 画布\n let context = canvas.getContext('2d') // 获取 canvas 绘图上下文环境\n context.font = fontStyle // 设置字体样式,使用前设置好对应的 font 样式才能准确获取文字的像素长度\n let dimension = context.measureText(text) // 测量文字\n return dimension.width\n }\n\n componentDidUpdate(prevProps) {\n const { mode, defaultValue, value, children } = this.props\n let arr = this.turnChildren(children)\n if (prevProps.children !== children) {\n this.isMultiple = ['tags', 'multiple'].includes(mode)\n\n this.setState(\n {\n children: arr || [],\n filterChildren: null,\n },\n () => {\n if (arr && arr.length > 0) {\n // 设置下拉列表显示数据\n if (!value) {\n this.scrollTop = 0\n this.scrollEle && this.scrollEle.scrollTo(0, 0)\n this.setSuperDropDownMenu(true)\n }\n this.formulaWidth()\n if (!this.inputEle) {\n this.removeEvent()\n this.addEvent()\n }\n }\n }\n )\n }\n if (prevProps.value !== value) {\n // 更新时设置默认 value\n let defaultV = this.isMultiple ? [] : ''\n defaultV = value || defaultValue || defaultV\n this.setState({ value: defaultV })\n }\n }\n\n componentWillUnmount() {\n this.removeEvent()\n }\n\n getItemStyle = (i) => ({\n position: 'absolute',\n top: this.ITEM_HEIGHT * i,\n width: '100%',\n height: this.ITEM_HEIGHT,\n })\n\n preventEvent = (e) => {\n e.preventDefault()\n }\n\n addEvent = () => {\n this.scrollEle = document.querySelector(`.${this.dropdownClassName}`)\n // 下拉菜单未展开时元素不存在\n if (!this.scrollEle) return\n\n this.scrollEle.addEventListener('mousedown', this.preventEvent, false)\n this.scrollEle.addEventListener('scroll', this.onScroll, false)\n this.inputEle = document.querySelector(`#${this.id}`)\n\n if (!this.inputEle) return\n this.inputEle.addEventListener('keydown', this.onKeyDown, false)\n }\n\n // 模拟 antd select 按下 上下箭头 键时滚动列表\n onKeyDown = (e) => {\n const { keyCode } = e || {}\n\n setTimeout(() => {\n const activeItem = document.querySelector(\n `.${this.dropdownClassName} .ant-select-dropdown-menu-item-active`\n )\n if (!activeItem) return\n\n const { offsetTop } = activeItem\n const isUp = ARROW_CODE[keyCode] === 'up'\n const isDown = ARROW_CODE[keyCode] === 'down'\n\n // 在所有列表第一行按上键\n if (offsetTop - this.prevTop > DROPDOWN_HEIGHT && isUp && this.scrollEle) {\n this.scrollEle.scrollTo(0, this.allHeight - DROPDOWN_HEIGHT)\n this.prevTop = this.allHeight\n\n return\n }\n\n // 在所有列表中最后一行按下键\n if (this.prevTop > offsetTop + DROPDOWN_HEIGHT && isDown && this.scrollEle) {\n this.scrollEle.scrollTo(0, 0)\n this.prevTop = 0\n\n return\n }\n\n this.prevTop = offsetTop\n // 向下滚动到下拉框最后一行时,向下滚动一行的高度\n if (\n offsetTop > this.scrollEle.scrollTop + DROPDOWN_HEIGHT - this.ITEM_HEIGHT + 10 &&\n isDown\n ) {\n this.scrollEle.scrollTo(0, this.scrollTop + this.ITEM_HEIGHT)\n return\n }\n // 向上滚动到下拉框第一一行时,向上滚动一行的高度\n if (offsetTop < this.scrollEle.scrollTop && isUp) {\n this.scrollEle.scrollTo(0, this.scrollTop - this.ITEM_HEIGHT)\n }\n }, 100)\n }\n\n onScroll = () => this.throttleByHeight(this.onScrollReal)\n\n onScrollReal = () => {\n this.allList = this.getUseChildrenList()\n const { startIndex, endIndex } = this.getStartAndEndIndex()\n\n this.prevScrollTop = this.scrollTop\n // 重新渲染列表组件 Wrap\n const allHeight = this.allList.length * this.ITEM_HEIGHT || 100\n this.wrap.reactList(allHeight, startIndex, endIndex)\n }\n\n throttleByHeight = () => {\n this.scrollTop = this.scrollEle.scrollTop\n // 滚动的高度\n let delta = this.prevScrollTop - this.scrollTop\n delta = delta < 0 ? 0 - delta : delta\n\n delta > this.reactDelta && this.onScrollReal()\n }\n\n // 列表可展示所有 children\n getUseChildrenList = () => this.state.filterChildren || this.state.children\n\n getStartAndEndIndex = () => {\n // 滚动后显示在列表可视区中的第一个 item 的 index\n const showIndex = Number((this.scrollTop / this.ITEM_HEIGHT).toFixed(0))\n\n const startIndex = showIndex - ITEM_ELEMENT_NUMBER < 0 ? 0 : showIndex - ITEM_ELEMENT_NUMBER / 2\n const endIndex = showIndex + ITEM_ELEMENT_NUMBER\n return { startIndex, endIndex }\n }\n\n // 须使用 setTimeout 确保在 dom 加载完成之后添加事件\n setSuperDropDownMenu = (visible) => {\n if (!visible) return\n\n this.allList = this.getUseChildrenList()\n\n if (!this.eventTimer || !this.scrollEle) {\n this.eventTimer = setTimeout(() => this.addEvent(), 0)\n } else {\n const allHeight = this.allList.length * this.ITEM_HEIGHT || 100\n // 下拉列表单独重新渲染\n const { startIndex, endIndex } = this.getStartAndEndIndex()\n setTimeout(() => {\n this.wrap && this.wrap.reactList(allHeight, startIndex, endIndex)\n }, 0)\n }\n }\n\n onDropdownVisibleChange = (visible) => {\n const { onDropdownVisibleChange } = this.props\n onDropdownVisibleChange && onDropdownVisibleChange(visible)\n\n const { value, children } = this.state\n // 关闭下拉框前清空筛选条件,防止下次打开任然显示筛选后的 options\n if (!visible) {\n // 定时器确保关闭后再设置 filterChildren,防止列表刷新闪烁\n setTimeout(() => {\n this.setState({ filterChildren: null })\n this.setDefaultScrollTop(value)\n }, 100)\n // this.removeEvent();\n } else {\n // this.addEvent();\n if (value) {\n // 如果已有 value, 设置默认滚动位置\n this.setDefaultScrollTop()\n // 设置下拉列表显示数据\n this.setSuperDropDownMenu(visible)\n } else if (!value && value !== 0 && children && children.length > 0) {\n // 无数据时,下拉回归至第一个\n const val = children[0].props.value\n this.setDefaultScrollTop(val)\n }\n }\n }\n\n onDeselect = (value) => {\n const { onDeselect } = this.props\n onDeselect && onDeselect(value)\n }\n\n // 在搜索重新计算下拉滚动条高度\n onChange = (value, opt) => {\n const { showSearch, onChange, autoClearSearchValue, maxCount, mode } = this.props\n if (showSearch || this.isMultiple) {\n // 搜索模式下选择后是否需要重置搜索状态\n if (autoClearSearchValue !== false) {\n this.setState({ filterChildren: null }, () => {\n // 搜索成功后重新设置列表的总高度\n this.setSuperDropDownMenu(true)\n })\n }\n }\n\n if (mode === 'multiple') {\n if (value.length <= maxCount) {\n this.setState({ value })\n }\n } else {\n this.setState({ value })\n }\n onChange && onChange(value, opt)\n\n if (mode !== 'multiple') {\n this.select && this.select.blur()\n }\n }\n\n onSearch = (v) => {\n const { showSearch, onSearch, filterOption, children: arr } = this.props\n let children = this.turnChildren(arr)\n if (showSearch && filterOption !== false) {\n // 须根据 filterOption(如有该自定义函数)手动 filter 搜索匹配的列表\n let filterChildren = null\n if (typeof filterOption === 'function') {\n filterChildren = children.filter((item) => filterOption(v, item))\n } else if (filterOption === undefined) {\n filterChildren = children.filter((item) => this.filterOption(v, item))\n }\n\n // 搜索框有值,去除disabled=true的children\n let newFilterChild = []\n filterChildren &&\n filterChildren.forEach((item, index) => {\n if (!item.props.disabled) {\n newFilterChild.push(item)\n }\n })\n filterChildren = newFilterChild\n\n // 设置下拉列表显示数据\n this.setState({ filterChildren: v === '' ? null : filterChildren }, () => {\n setTimeout(() => {\n // 搜索后需要重置滚动位置到0,防止上次 scrollTop 位置无数据\n if (filterChildren && this.scrollEle) {\n this.scrollTop = 0\n this.scrollEle.scrollTo(0, 0)\n }\n // 搜索成功后需要重新设置列表的总高度\n this.setSuperDropDownMenu(true)\n }, 0)\n })\n }\n onSearch && onSearch(v)\n }\n\n filterOption = (v, option) => {\n // 自定义过滤对应的 option 属性配置\n const filterProps = this.props.optionFilterProp || 'value'\n return `${option.props[filterProps]}`.indexOf(v) >= 0\n }\n\n setDefaultScrollTop = (data) => {\n const { value } = this.state\n const { children: arr } = this.props\n const children = this.turnChildren(arr)\n\n let val = data || data === 0 ? data : value\n\n for (let i = 0; i < children.length; i++) {\n const item = children[i]\n const itemValue = item.props.value\n if (itemValue === val || (Array.isArray(val) && val.includes(itemValue))) {\n const targetScrollTop = i * this.ITEM_HEIGHT\n\n setTimeout(() => {\n if (!this.scrollEle) {\n this.addEvent()\n }\n this.scrollEle && this.scrollEle.scrollTo(0, targetScrollTop)\n }, 100)\n return\n }\n }\n }\n\n removeEvent = () => {\n if (!this.scrollEle) return\n this.scrollEle.removeEventListener('mousedown', this.preventEvent, false)\n this.scrollEle.removeEventListener('scroll', this.onScroll, false)\n if (!this.inputEle) return\n this.inputEle.removeEventListener('keydown', this.onKeyDown, false)\n }\n\n render() {\n const { maxWidth, selectWidth } = this.state\n let { dropdownStyle, optionLabelProp, dropdownClassName, placeholder = defaultPlaceholder, capitalize, renderEmpty, ...props } =\n this.props\n\n this.allList = this.getUseChildrenList()\n\n this.allHeight = this.allList.length * this.ITEM_HEIGHT || 100\n const { startIndex, endIndex } = this.getStartAndEndIndex()\n\n let dynamicWidth = maxWidth\n if (this.allList.length === 0 || maxWidth < selectWidth) {\n dynamicWidth = selectWidth\n }\n\n dropdownStyle = {\n maxHeight: `${DROPDOWN_HEIGHT}px`,\n ...dropdownStyle,\n overflow: 'auto',\n position: 'relative',\n maxWidth: dynamicWidth,\n }\n\n const { value } = this.state\n // 判断处于 antd Form 中时不自动设置 value\n const _props = { ...props }\n // 先删除 value,再手动赋值,防止空 value 影响 placeholder\n delete _props.value\n\n // value 为空字符会隐藏 placeholder,改为 undefined\n if (typeof value === 'string' && !value) {\n _props.value = undefined\n } else {\n _props.value = value\n }\n\n optionLabelProp = optionLabelProp || 'children'\n return (\n <Select\n {..._props}\n id={this.id}\n placeholder={capitalizeFirstLetter(placeholder, capitalize)}\n onSearch={this.onSearch}\n onChange={this.onChange}\n dropdownClassName={`${this.dropdownClassName} ${dropdownClassName || ''}`}\n optionLabelProp={optionLabelProp}\n dropdownStyle={dropdownStyle}\n onDropdownVisibleChange={this.onDropdownVisibleChange}\n onDeselect={this.onDeselect}\n ref={(ele) => (this.select = ele)}\n dropdownRender={(menu, props) => {\n if (_props.loading) {\n return <Spin size=\"small\" style={{ marginLeft: 8 }} />\n }\n if (this.allList.length === 0) {\n return (\n <div className=\"tntd-select-empty-container\">\n {renderEmpty ? renderEmpty('Select') : <Empty image={Empty.PRESENTED_IMAGE_SIMPLE} />}\n </div>\n )\n }\n\n return (\n <DropDownWrap\n {...{\n startIndex,\n endIndex,\n allHeight: this.allHeight,\n menu,\n itemHeight: this.ITEM_HEIGHT,\n }}\n ref={(ele) => {\n this.wrap = ele\n }}\n />\n )\n }}\n >\n {this.allList}\n </Select>\n )\n }\n }\n\nfunction TntdSelect(props) {\n return (<ConfigConsumer>\n {({ renderEmpty }) => {\n return <SuperSelect {...props} renderEmpty={renderEmpty} />\n }}\n </ConfigConsumer>)\n }\n\n TntdSelect.Option = Option\n\n export default TntdSelect\n"]}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tntd-select/index.js"],"names":[],"mappings":";;;;;;;;;;;AAAA,OAAO,KAAK,EAAE,EAAE,aAAa,EAAE,MAAM,OAAO,CAAA;AAC5C,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AACnD,OAAO,MAAM,MAAM,WAAW,CAAA;AAC9B,OAAO,KAAK,MAAM,UAAU,CAAA;AAC5B,OAAO,IAAI,MAAM,SAAS,CAAA;AAC1B,OAAO,EAAE,qBAAqB,EAAE,MAAM,UAAU,CAAA;AAChD,OAAO,YAAY,MAAM,gBAAgB,CAAA;AACzC,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAA;AACrD,OAAO,cAAc,CAAA;AAErB,MAAM,kBAAkB,GAAG,OAAO,CAAC,QAAQ,EAAE,WAAW,EAAE,CAAC,CAAA;AAC3D,4CAA4C;AAC5C,MAAM,mBAAmB,GAAG,EAAE,CAAA;AAC9B,iBAAiB;AACjB,MAAM,eAAe,GAAG;IACtB,KAAK,EAAE,EAAE;IACT,KAAK,EAAE,EAAE;IACT,OAAO,EAAE,EAAE;CACZ,CAAA;AAED,MAAM,UAAU,GAAG;IACjB,EAAE,EAAE,MAAM;IACV,EAAE,EAAE,IAAI;CACT,CAAA;AAED,MAAM,eAAe,GAAG,GAAG,CAAA;AAE3B,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAA;AAE5B,MAAM,WAAY,SAAQ,aAAa;IACrC,YAAY,KAAK;QACf,KAAK,CAAC,KAAK,CAAC,CAAA;QAkDd;;;;mBAAe,CAAC,QAAQ,EAAE,EAAE;gBAC1B,IAAI,CAAC,QAAQ;oBAAE,OAAO,EAAE,CAAA;gBACxB,IAAI,GAAG,GAAG,EAAE,CAAA;gBACZ,IAAI,QAAQ,IAAI,QAAQ,CAAC,KAAK,EAAE;oBAC9B,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;iBACnB;qBAAM;oBACL,QAAQ,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;wBACxB,IAAI,IAAI,EAAE;4BACR,IAAI,IAAI,YAAY,KAAK,EAAE;gCACzB,GAAG,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;6BACvB;iCAAM;gCACL,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;6BACf;yBACF;oBACH,CAAC,CAAC,CAAA;iBACH;gBACD,OAAO,GAAG,CAAA;YACZ,CAAC;WAAA;QAED;;;;mBAAe,GAAG,EAAE;gBAClB,YAAY;gBACZ,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,wBAAwB,GAAG,IAAI,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC,KAAK,CAAA;gBAChF,MAAM,SAAS,GAAG,QAAQ,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;gBAClD,IAAI,WAAW,CAAA;gBACf,IAAI,SAAS,EAAE;oBACb,WAAW,GAAG,SAAS,CAAC,WAAW,IAAI,SAAS,CAAC,WAAW,CAAA;iBAC7D;gBACD,IAAI,GAAG,GAAG,EAAE,CAAA;gBACZ,IAAI,eAAe,GAAG,EAAE,CAAA;gBACxB,IAAI,CAAC,wBAAwB,EAAE;oBAC7B,eAAe,GAAG,QAAQ,IAAI,EAAE,CAAA;iBACjC;gBACD,IAAI,CAAC,wBAAwB,IAAI,CAAC,QAAQ,EAAE;oBAC1C,MAAM,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAA;oBACxC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;wBACxC,MAAM,GAAG,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAA;wBACtC,MAAM,SAAS,GAAG,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAA;wBAC5C,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAA;qBAC/B;oBACD,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,EAAE;wBAClB,eAAe,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,CAAA;qBACnC;iBACF;gBAED,IAAI,CAAC,QAAQ,CAAC;oBACZ,WAAW;oBACX,QAAQ,EAAE,eAAe;iBAC1B,CAAC,CAAA;YACJ,CAAC;WAAA;QAED,cAAc;QACd;;;;mBAAmB,CAAC,IAAI,EAAE,SAAS,GAAG,MAAM,EAAE,EAAE;gBAC9C,IAAI,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAA,CAAC,eAAe;gBAC7D,IAAI,OAAO,GAAG,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,CAAA,CAAC,oBAAoB;gBAC1D,OAAO,CAAC,IAAI,GAAG,SAAS,CAAA,CAAC,wCAAwC;gBACjE,IAAI,SAAS,GAAG,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,CAAA,CAAC,OAAO;gBACjD,OAAO,SAAS,CAAC,KAAK,CAAA;YACxB,CAAC;WAAA;QA0CD;;;;mBAAe,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBACrB,QAAQ,EAAE,UAAU;gBACpB,GAAG,EAAE,IAAI,CAAC,WAAW,GAAG,CAAC;gBACzB,KAAK,EAAE,MAAM;gBACb,MAAM,EAAE,IAAI,CAAC,WAAW;aACzB,CAAC;WAAA;QAEF;;;;mBAAe,CAAC,CAAC,EAAE,EAAE;gBACnB,CAAC,CAAC,cAAc,EAAE,CAAA;YACpB,CAAC;WAAA;QAED;;;;mBAAW,GAAG,EAAE;gBACd,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC,aAAa,CAAC,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC,CAAA;gBACrE,gBAAgB;gBAChB,IAAI,CAAC,IAAI,CAAC,SAAS;oBAAE,OAAM;gBAE3B,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC,WAAW,EAAE,IAAI,CAAC,YAAY,EAAE,KAAK,CAAC,CAAA;gBACtE,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAA;gBAC/D,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC,aAAa,CAAC,IAAI,IAAI,CAAC,EAAE,EAAE,CAAC,CAAA;gBAErD,IAAI,CAAC,IAAI,CAAC,QAAQ;oBAAE,OAAM;gBAC1B,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,CAAA;YAClE,CAAC;WAAA;QAED,gCAAgC;QAChC;;;;mBAAY,CAAC,CAAC,EAAE,EAAE;gBAChB,MAAM,EAAE,OAAO,EAAE,GAAG,CAAC,IAAI,EAAE,CAAA;gBAE3B,UAAU,CAAC,GAAG,EAAE;oBACd,MAAM,UAAU,GAAG,QAAQ,CAAC,aAAa,CACvC,IAAI,IAAI,CAAC,iBAAiB,wCAAwC,CACnE,CAAA;oBACD,IAAI,CAAC,UAAU;wBAAE,OAAM;oBAEvB,MAAM,EAAE,SAAS,EAAE,GAAG,UAAU,CAAA;oBAChC,MAAM,IAAI,GAAG,UAAU,CAAC,OAAO,CAAC,KAAK,IAAI,CAAA;oBACzC,MAAM,MAAM,GAAG,UAAU,CAAC,OAAO,CAAC,KAAK,MAAM,CAAA;oBAE7C,cAAc;oBACd,IAAI,SAAS,GAAG,IAAI,CAAC,OAAO,GAAG,eAAe,IAAI,IAAI,IAAI,IAAI,CAAC,SAAS,EAAE;wBACxE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,EAAE,IAAI,CAAC,SAAS,GAAG,eAAe,CAAC,CAAA;wBAC5D,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,SAAS,CAAA;wBAE7B,OAAM;qBACP;oBAED,gBAAgB;oBAChB,IAAI,IAAI,CAAC,OAAO,GAAG,SAAS,GAAG,eAAe,IAAI,MAAM,IAAI,IAAI,CAAC,SAAS,EAAE;wBAC1E,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;wBAC7B,IAAI,CAAC,OAAO,GAAG,CAAC,CAAA;wBAEhB,OAAM;qBACP;oBAED,IAAI,CAAC,OAAO,GAAG,SAAS,CAAA;oBACxB,0BAA0B;oBAC1B,IACE,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,SAAS,GAAG,eAAe,GAAG,IAAI,CAAC,WAAW,GAAG,EAAE;wBAC9E,MAAM,EACN;wBACA,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,EAAE,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,WAAW,CAAC,CAAA;wBAC7D,OAAM;qBACP;oBACD,0BAA0B;oBAC1B,IAAI,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,SAAS,IAAI,IAAI,EAAE;wBAChD,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,EAAE,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,WAAW,CAAC,CAAA;qBAC9D;gBACH,CAAC,EAAE,GAAG,CAAC,CAAA;YACT,CAAC;WAAA;QAED;;;;mBAAW,GAAG,EAAE,CAAC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,YAAY,CAAC;WAAA;QAEzD;;;;mBAAe,GAAG,EAAE;gBAClB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,kBAAkB,EAAE,CAAA;gBACxC,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC,mBAAmB,EAAE,CAAA;gBAE3D,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,SAAS,CAAA;gBACnC,gBAAgB;gBAChB,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,WAAW,IAAI,GAAG,CAAA;gBAC/D,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,UAAU,EAAE,QAAQ,CAAC,CAAA;YACtD,CAAC;WAAA;QAED;;;;mBAAmB,GAAG,EAAE;gBACtB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,SAAS,CAAA;gBACzC,QAAQ;gBACR,IAAI,KAAK,GAAG,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,SAAS,CAAA;gBAC/C,KAAK,GAAG,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAA;gBAErC,KAAK,GAAG,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,YAAY,EAAE,CAAA;YAChD,CAAC;WAAA;QAED,mBAAmB;QACnB;;;;mBAAqB,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,cAAc,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ;WAAA;QAE3E;;;;mBAAsB,GAAG,EAAE;gBACzB,gCAAgC;gBAChC,MAAM,SAAS,GAAG,MAAM,CAAC,CAAC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAA;gBAExE,MAAM,UAAU,GAAG,SAAS,GAAG,mBAAmB,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,GAAG,mBAAmB,GAAG,CAAC,CAAA;gBAChG,MAAM,QAAQ,GAAG,SAAS,GAAG,mBAAmB,CAAA;gBAChD,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,CAAA;YACjC,CAAC;WAAA;QAED,oCAAoC;QACpC;;;;mBAAuB,CAAC,OAAO,EAAE,EAAE;gBACjC,IAAI,CAAC,OAAO;oBAAE,OAAM;gBAEpB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,kBAAkB,EAAE,CAAA;gBAExC,IAAI,CAAC,IAAI,CAAC,UAAU,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE;oBACvC,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAA;iBACvD;qBAAM;oBACL,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,WAAW,IAAI,GAAG,CAAA;oBAC/D,aAAa;oBACb,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC,mBAAmB,EAAE,CAAA;oBAC3D,UAAU,CAAC,GAAG,EAAE;wBACd,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,UAAU,EAAE,QAAQ,CAAC,CAAA;oBACnE,CAAC,EAAE,CAAC,CAAC,CAAA;iBACN;YACH,CAAC;WAAA;QAED;;;;mBAA0B,CAAC,OAAO,EAAE,EAAE;gBACpC,MAAM,EAAE,uBAAuB,EAAE,GAAG,IAAI,CAAC,KAAK,CAAA;gBAC9C,uBAAuB,IAAI,uBAAuB,CAAC,OAAO,CAAC,CAAA;gBAE3D,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC,KAAK,CAAA;gBACtC,sCAAsC;gBACtC,IAAI,CAAC,OAAO,EAAE;oBACZ,sCAAsC;oBACtC,UAAU,CAAC,GAAG,EAAE;wBACd,IAAI,CAAC,QAAQ,CAAC,EAAE,cAAc,EAAE,IAAI,EAAE,CAAC,CAAA;wBACvC,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAA;oBACjC,CAAC,EAAE,GAAG,CAAC,CAAA;oBACP,sBAAsB;iBACvB;qBAAM;oBACL,mBAAmB;oBACnB,IAAI,KAAK,EAAE;wBACT,uBAAuB;wBACvB,IAAI,CAAC,mBAAmB,EAAE,CAAA;wBAC1B,aAAa;wBACb,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAA;qBACnC;yBAAM,IAAI,CAAC,KAAK,IAAI,KAAK,KAAK,CAAC,IAAI,QAAQ,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE;wBACnE,gBAAgB;wBAChB,MAAM,GAAG,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAA;wBACnC,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAA;qBAC9B;iBACF;YACH,CAAC;WAAA;QAED;;;;mBAAa,CAAC,KAAK,EAAE,EAAE;gBACrB,MAAM,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC,KAAK,CAAA;gBACjC,UAAU,IAAI,UAAU,CAAC,KAAK,CAAC,CAAA;YACjC,CAAC;WAAA;QAED,iBAAiB;QACjB;;;;mBAAW,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;gBACxB,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,oBAAoB,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,KAAK,CAAA;gBACjF,IAAI,UAAU,IAAI,IAAI,CAAC,UAAU,EAAE;oBACjC,qBAAqB;oBACrB,IAAI,oBAAoB,KAAK,KAAK,EAAE;wBAClC,IAAI,CAAC,QAAQ,CAAC,EAAE,cAAc,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE;4BAC3C,kBAAkB;4BAClB,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAA;wBACjC,CAAC,CAAC,CAAA;qBACH;iBACF;gBAED,IAAI,IAAI,KAAK,UAAU,EAAE;oBACvB,IAAI,KAAK,CAAC,MAAM,IAAI,QAAQ,EAAE;wBAC5B,IAAI,CAAC,QAAQ,CAAC,EAAE,KAAK,EAAE,CAAC,CAAA;qBACzB;iBACF;qBAAM;oBACL,IAAI,CAAC,QAAQ,CAAC,EAAE,KAAK,EAAE,CAAC,CAAA;iBACzB;gBACD,QAAQ,IAAI,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC,CAAA;gBAEhC,IAAI,IAAI,KAAK,UAAU,EAAE;oBACvB,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAA;iBAClC;YACH,CAAC;WAAA;QAED;;;;mBAAW,CAAC,CAAC,EAAE,EAAE;gBACf,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,YAAY,EAAE,QAAQ,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,KAAK,CAAA;gBACxE,IAAI,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAA;gBACrC,IAAI,UAAU,IAAI,YAAY,KAAK,KAAK,EAAE;oBACxC,8CAA8C;oBAC9C,IAAI,cAAc,GAAG,IAAI,CAAA;oBACzB,IAAI,OAAO,YAAY,KAAK,UAAU,EAAE;wBACtC,cAAc,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,YAAY,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAA;qBAClE;yBAAM,IAAI,YAAY,KAAK,SAAS,EAAE;wBACrC,cAAc,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAA;qBACvE;oBAED,iCAAiC;oBACjC,IAAI,cAAc,GAAG,EAAE,CAAA;oBACvB,cAAc;wBACZ,cAAc,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;4BACrC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE;gCACxB,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;6BAC1B;wBACH,CAAC,CAAC,CAAA;oBACJ,cAAc,GAAG,cAAc,CAAA;oBAE/B,aAAa;oBACb,IAAI,CAAC,QAAQ,CAAC,EAAE,cAAc,EAAE,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,cAAc,EAAE,EAAE,GAAG,EAAE;wBACvE,UAAU,CAAC,GAAG,EAAE;4BACd,qCAAqC;4BACrC,IAAI,cAAc,IAAI,IAAI,CAAC,SAAS,EAAE;gCACpC,IAAI,CAAC,SAAS,GAAG,CAAC,CAAA;gCAClB,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;6BAC9B;4BACD,oBAAoB;4BACpB,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAA;wBACjC,CAAC,EAAE,CAAC,CAAC,CAAA;oBACP,CAAC,CAAC,CAAA;iBACH;gBACD,QAAQ,IAAI,QAAQ,CAAC,CAAC,CAAC,CAAA;YACzB,CAAC;WAAA;QAED;;;;mBAAe,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE;gBAC3B,uBAAuB;gBACvB,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,gBAAgB,IAAI,OAAO,CAAA;gBAC1D,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;YACvD,CAAC;WAAA;QAED;;;;mBAAsB,CAAC,IAAI,EAAE,EAAE;gBAC7B,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,KAAK,CAAA;gBAC5B,MAAM,EAAE,QAAQ,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,KAAK,CAAA;gBACpC,MAAM,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAA;gBAEvC,IAAI,GAAG,GAAG,IAAI,IAAI,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAA;gBAE3C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;oBACxC,MAAM,IAAI,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAA;oBACxB,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAA;oBAClC,IAAI,SAAS,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,EAAE;wBACxE,MAAM,eAAe,GAAG,CAAC,GAAG,IAAI,CAAC,WAAW,CAAA;wBAE5C,UAAU,CAAC,GAAG,EAAE;4BACd,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE;gCACnB,IAAI,CAAC,QAAQ,EAAE,CAAA;6BAChB;4BACD,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,EAAE,eAAe,CAAC,CAAA;wBAC/D,CAAC,EAAE,GAAG,CAAC,CAAA;wBACP,OAAM;qBACP;iBACF;YACH,CAAC;WAAA;QAED;;;;mBAAc,GAAG,EAAE;gBACjB,IAAI,CAAC,IAAI,CAAC,SAAS;oBAAE,OAAM;gBAC3B,IAAI,CAAC,SAAS,CAAC,mBAAmB,CAAC,WAAW,EAAE,IAAI,CAAC,YAAY,EAAE,KAAK,CAAC,CAAA;gBACzE,IAAI,CAAC,SAAS,CAAC,mBAAmB,CAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAA;gBAClE,IAAI,CAAC,IAAI,CAAC,QAAQ;oBAAE,OAAM;gBAC1B,IAAI,CAAC,QAAQ,CAAC,mBAAmB,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,CAAA;YACrE,CAAC;WAAA;QAlZC,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,GAAG,EAAE,GAAG,KAAK,CAAA;QACxE,IAAI,CAAC,UAAU,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;QACrD,MAAM,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAA;QAEvC,aAAa;QACb,IAAI,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAA;QACxC,QAAQ,GAAG,KAAK,IAAI,YAAY,IAAI,QAAQ,CAAA;QAE5C,IAAI,CAAC,KAAK,GAAG;YACX,QAAQ,EAAE,QAAQ,IAAI,EAAE;YACxB,cAAc,EAAE,IAAI;YACpB,KAAK,EAAE,QAAQ;YACf,QAAQ,EAAE,IAAI;YACd,WAAW,EAAE,IAAI;SAClB,CAAA;QACD,UAAU;QACV,IAAI,CAAC,WAAW,GAAG,YAAY,IAAI,eAAe,CAAC,KAAK,CAAC,IAAI,IAAI,SAAS,CAAC,CAAA;QAC3E,aAAa;QACb,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,WAAW,GAAG,mBAAmB,CAAA;QAC9D,+CAA+C;QAC/C,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,gBAAgB,GAAG,CAAC,CAAA;QAC3C,gBAAgB;QAChB,IAAI,CAAC,WAAW,GAAG,KAAK,CAAA;QACxB,qBAAqB;QACrB,IAAI,CAAC,aAAa,GAAG,CAAC,CAAA;QACtB,wBAAwB;QACxB,IAAI,CAAC,OAAO,GAAG,CAAC,CAAA;QAEhB,IAAI,CAAC,SAAS,GAAG,CAAC,CAAA;QAElB,YAAY;QACZ,IAAI,CAAC,iBAAiB,GAAG,KAAK,CAAC,IAAI,IAAI,EAAE,EAAE,CAAA;QAE3C,IAAI,CAAC,EAAE,GAAG,MAAM,CAAC,IAAI,IAAI,EAAE,EAAE,CAAA;IAC/B,CAAC;IAED,iBAAiB;QACf,4BAA4B;QAC5B,UAAU,CAAC,GAAG,EAAE;YACd,IAAI,CAAC,QAAQ,EAAE,CAAA;QACjB,CAAC,EAAE,GAAG,CAAC,CAAA;QACP,MAAM,EAAE,QAAQ,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,KAAK,CAAA;QACpC,MAAM,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAA;QACvC,yCAAyC;QACzC,IAAI,CAAC,YAAY,EAAE,CAAA;QACnB,IAAI;IACN,CAAC;IA6DD,kBAAkB,CAAC,SAAS;QAC1B,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC,KAAK,CAAA;QAC1D,IAAI,GAAG,GAAG,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAA;QACrC,IAAI,SAAS,CAAC,QAAQ,KAAK,QAAQ,EAAE;YACnC,IAAI,CAAC,UAAU,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;YAErD,IAAI,CAAC,QAAQ,CACX;gBACE,QAAQ,EAAE,GAAG,IAAI,EAAE;gBACnB,cAAc,EAAE,IAAI;aACrB,EACD,GAAG,EAAE;gBACH,IAAI,GAAG,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,EAAE;oBACzB,aAAa;oBACb,IAAI,CAAC,KAAK,EAAE;wBACV,IAAI,CAAC,SAAS,GAAG,CAAC,CAAA;wBAClB,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;wBAC/C,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAA;qBAChC;oBACD,IAAI,CAAC,YAAY,EAAE,CAAA;oBACnB,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;wBAClB,IAAI,CAAC,WAAW,EAAE,CAAA;wBAClB,IAAI,CAAC,QAAQ,EAAE,CAAA;qBAChB;iBACF;YACH,CAAC,CACF,CAAA;SACF;QACD,IAAI,SAAS,CAAC,KAAK,KAAK,KAAK,EAAE;YAC7B,gBAAgB;YAChB,IAAI,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAA;YACxC,QAAQ,GAAG,KAAK,IAAI,YAAY,IAAI,QAAQ,CAAA;YAC5C,IAAI,CAAC,QAAQ,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAA;SACnC;IACH,CAAC;IAED,oBAAoB;QAClB,IAAI,CAAC,WAAW,EAAE,CAAA;IACpB,CAAC;IAmQD,MAAM;QACJ,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC,KAAK,CAAA;QAC5C,IAAI,KACF,IAAI,CAAC,KAAK,EADR,EAAE,aAAa,EAAE,eAAe,EAAE,iBAAiB,EAAE,WAAW,GAAG,kBAAkB,EAAE,UAAU,EAAE,WAAW,OACtG,EAD2G,KAAK,cAAxH,qGAA0H,CAClH,CAAA;QAEZ,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,kBAAkB,EAAE,CAAA;QAExC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,WAAW,IAAI,GAAG,CAAA;QAC9D,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC,mBAAmB,EAAE,CAAA;QAE3D,IAAI,YAAY,GAAG,QAAQ,CAAA;QAC3B,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,IAAI,QAAQ,GAAG,WAAW,EAAE;YACvD,YAAY,GAAG,WAAW,CAAA;SAC3B;QAED,aAAa,iCACX,SAAS,EAAE,GAAG,eAAe,IAAI,IAC9B,aAAa,KAChB,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,UAAU,EACpB,QAAQ,EAAE,YAAY,GACvB,CAAA;QAED,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,KAAK,CAAA;QAC5B,+BAA+B;QAC/B,MAAM,MAAM,qBAAQ,KAAK,CAAE,CAAA;QAC3B,2CAA2C;QAC3C,OAAO,MAAM,CAAC,KAAK,CAAA;QAEnB,yCAAyC;QACzC,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,KAAK,EAAE;YACvC,MAAM,CAAC,KAAK,GAAG,SAAS,CAAA;SACzB;aAAM;YACL,MAAM,CAAC,KAAK,GAAG,KAAK,CAAA;SACrB;QAED,eAAe,GAAG,eAAe,IAAI,UAAU,CAAA;QAC/C,OAAO,CACL,oBAAC,MAAM,oBACD,MAAM,IACV,EAAE,EAAE,IAAI,CAAC,EAAE,EACX,WAAW,EAAE,qBAAqB,CAAC,WAAW,EAAE,UAAU,CAAC,EAC3D,QAAQ,EAAE,IAAI,CAAC,QAAQ,EACvB,QAAQ,EAAE,IAAI,CAAC,QAAQ,EACvB,iBAAiB,EAAE,GAAG,IAAI,CAAC,iBAAiB,IAAI,iBAAiB,IAAI,EAAE,EAAE,EACzE,eAAe,EAAE,eAAe,EAChC,aAAa,EAAE,aAAa,EAC5B,uBAAuB,EAAE,IAAI,CAAC,uBAAuB,EACrD,UAAU,EAAE,IAAI,CAAC,UAAU,EAC3B,GAAG,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,GAAG,GAAG,CAAC,EACjC,cAAc,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;gBAC9B,IAAI,MAAM,CAAC,OAAO,EAAE;oBAClB,OAAO,oBAAC,IAAI,IAAC,IAAI,EAAC,OAAO,EAAC,KAAK,EAAE,EAAE,UAAU,EAAE,CAAC,EAAE,GAAI,CAAA;iBACvD;gBACD,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE;oBAC7B,OAAO,CACL,6BAAK,SAAS,EAAC,6BAA6B,IACzC,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,oBAAC,KAAK,IAAC,KAAK,EAAE,KAAK,CAAC,sBAAsB,GAAI,CACjF,CACP,CAAA;iBACF;gBAED,OAAO,CACL,oBAAC,YAAY,oBACP;oBACF,UAAU;oBACV,QAAQ;oBACR,SAAS,EAAE,IAAI,CAAC,SAAS;oBACzB,IAAI;oBACJ,UAAU,EAAE,IAAI,CAAC,WAAW;iBAC7B,IACD,GAAG,EAAE,CAAC,GAAG,EAAE,EAAE;wBACX,IAAI,CAAC,IAAI,GAAG,GAAG,CAAA;oBACjB,CAAC,IACD,CACH,CAAA;YACH,CAAC,KAEA,IAAI,CAAC,OAAO,CACN,CACV,CAAA;IACH,CAAC;CACF;AAED,SAAS,UAAU,CAAC,KAAK;IACvB,OAAO,CAAC,oBAAC,cAAc,QACpB,CAAC,EAAE,WAAW,EAAE,EAAE,EAAE;QACnB,OAAO,oBAAC,WAAW,oBAAK,KAAK,IAAE,WAAW,EAAE,WAAW,IAAI,CAAA;IAC7D,CAAC,CACc,CAAC,CAAA;AACpB,CAAC;AAED,UAAU,CAAC,MAAM,GAAG,MAAM,CAAA;AAE1B,eAAe,UAAU,CAAA","sourcesContent":["import React, { PureComponent } from 'react'\nimport { ConfigConsumer } from '../config-provider'\nimport Select from '../select'\nimport Empty from '../empty'\nimport Spin from '../spin'\nimport { capitalizeFirstLetter } from '../utils'\nimport DropDownWrap from './DropDownWrap'\nimport { getLanguage, getText } from '../prev-locale'\nimport './index.less'\n\nconst defaultPlaceholder = getText('select', getLanguage())\n// 页面实际渲染的下拉菜单数量,实际为 2 * ITEM_ELEMENT_NUMBER\nconst ITEM_ELEMENT_NUMBER = 30\n// Select size 配置\nconst ITEM_HEIGHT_CFG = {\n small: 24,\n large: 40,\n default: 32,\n}\n\nconst ARROW_CODE = {\n 40: 'down',\n 38: 'up',\n}\n\nconst DROPDOWN_HEIGHT = 224\n\nconst Option = Select.Option\n\nclass SuperSelect extends PureComponent {\n constructor(props) {\n super(props)\n\n const { mode, defaultValue, value, optionHeight, children: arr } = props\n this.isMultiple = ['tags', 'multiple'].includes(mode)\n const children = this.turnChildren(arr)\n\n // 设置默认 value\n let defaultV = this.isMultiple ? [] : ''\n defaultV = value || defaultValue || defaultV\n\n this.state = {\n children: children || [],\n filterChildren: null, // 筛选后的 options,优先显示,所以清除筛选后手动设为 null\n value: defaultV,\n maxWidth: null,\n selectWidth: null,\n }\n // 下拉菜单项行高\n this.ITEM_HEIGHT = optionHeight || ITEM_HEIGHT_CFG[props.size || 'default']\n // 可视区 dom 高度\n this.visibleDomHeight = this.ITEM_HEIGHT * ITEM_ELEMENT_NUMBER\n // 滚动时重新渲染的 scrollTop 判断值,大于 reactDelta 则刷新下拉列表\n this.reactDelta = this.visibleDomHeight / 3\n // 是否拖动滚动条快速滚动状态\n this.isStopReact = false\n // 上一次滚动的 scrollTop 值\n this.prevScrollTop = 0\n // 上一次按下方向键时 scrollTop 值\n this.prevTop = 0\n\n this.scrollTop = 0\n\n // className\n this.dropdownClassName = `dc${+new Date()}`\n\n this.id = `sid${+new Date()}`\n }\n\n componentDidMount() {\n // defaultOpens=true 时添加滚动事件\n setTimeout(() => {\n this.addEvent()\n }, 500)\n const { children: arr } = this.props\n const children = this.turnChildren(arr)\n // if (children && children.length > 0) {\n this.formulaWidth()\n // }\n }\n\n turnChildren = (children) => {\n if (!children) return []\n let arr = []\n if (children && children.props) {\n arr.push(children)\n } else {\n children.forEach((item) => {\n if (item) {\n if (item instanceof Array) {\n arr = arr.concat(item)\n } else {\n arr.push(item)\n }\n }\n })\n }\n return arr\n }\n\n formulaWidth = () => {\n // 获取dom设置宽度\n const { children: arr2, dropdownMatchSelectWidth = true, maxWidth } = this.props\n const selectDom = document.getElementById(this.id)\n let selectWidth\n if (selectDom) {\n selectWidth = selectDom.clientWidth || selectDom.offsetWidth\n }\n let arr = []\n let formulaMaxWidth = 10\n if (!dropdownMatchSelectWidth) {\n formulaMaxWidth = maxWidth || 10\n }\n if (!dropdownMatchSelectWidth && !maxWidth) {\n const children = this.turnChildren(arr2)\n for (let i = 0; i < children.length; i++) {\n const val = children[i].props.children\n const textWidth = this.getTextPixelWith(val)\n arr.push(textWidth.toFixed(2))\n }\n if (arr.length > 0) {\n formulaMaxWidth = Math.max(...arr)\n }\n }\n\n this.setState({\n selectWidth,\n maxWidth: formulaMaxWidth,\n })\n }\n\n // 获取单行文本的像素宽度\n getTextPixelWith = (text, fontStyle = '14px') => {\n let canvas = document.createElement('canvas') // 创建 canvas 画布\n let context = canvas.getContext('2d') // 获取 canvas 绘图上下文环境\n context.font = fontStyle // 设置字体样式,使用前设置好对应的 font 样式才能准确获取文字的像素长度\n let dimension = context.measureText(text) // 测量文字\n return dimension.width\n }\n\n componentDidUpdate(prevProps) {\n const { mode, defaultValue, value, children } = this.props\n let arr = this.turnChildren(children)\n if (prevProps.children !== children) {\n this.isMultiple = ['tags', 'multiple'].includes(mode)\n\n this.setState(\n {\n children: arr || [],\n filterChildren: null,\n },\n () => {\n if (arr && arr.length > 0) {\n // 设置下拉列表显示数据\n if (!value) {\n this.scrollTop = 0\n this.scrollEle && this.scrollEle.scrollTo(0, 0)\n this.setSuperDropDownMenu(true)\n }\n this.formulaWidth()\n if (!this.inputEle) {\n this.removeEvent()\n this.addEvent()\n }\n }\n }\n )\n }\n if (prevProps.value !== value) {\n // 更新时设置默认 value\n let defaultV = this.isMultiple ? [] : ''\n defaultV = value || defaultValue || defaultV\n this.setState({ value: defaultV })\n }\n }\n\n componentWillUnmount() {\n this.removeEvent()\n }\n\n getItemStyle = (i) => ({\n position: 'absolute',\n top: this.ITEM_HEIGHT * i,\n width: '100%',\n height: this.ITEM_HEIGHT,\n })\n\n preventEvent = (e) => {\n e.preventDefault()\n }\n\n addEvent = () => {\n this.scrollEle = document.querySelector(`.${this.dropdownClassName}`)\n // 下拉菜单未展开时元素不存在\n if (!this.scrollEle) return\n\n this.scrollEle.addEventListener('mousedown', this.preventEvent, false)\n this.scrollEle.addEventListener('scroll', this.onScroll, false)\n this.inputEle = document.querySelector(`#${this.id}`)\n\n if (!this.inputEle) return\n this.inputEle.addEventListener('keydown', this.onKeyDown, false)\n }\n\n // 模拟 antd select 按下 上下箭头 键时滚动列表\n onKeyDown = (e) => {\n const { keyCode } = e || {}\n\n setTimeout(() => {\n const activeItem = document.querySelector(\n `.${this.dropdownClassName} .ant-select-dropdown-menu-item-active`\n )\n if (!activeItem) return\n\n const { offsetTop } = activeItem\n const isUp = ARROW_CODE[keyCode] === 'up'\n const isDown = ARROW_CODE[keyCode] === 'down'\n\n // 在所有列表第一行按上键\n if (offsetTop - this.prevTop > DROPDOWN_HEIGHT && isUp && this.scrollEle) {\n this.scrollEle.scrollTo(0, this.allHeight - DROPDOWN_HEIGHT)\n this.prevTop = this.allHeight\n\n return\n }\n\n // 在所有列表中最后一行按下键\n if (this.prevTop > offsetTop + DROPDOWN_HEIGHT && isDown && this.scrollEle) {\n this.scrollEle.scrollTo(0, 0)\n this.prevTop = 0\n\n return\n }\n\n this.prevTop = offsetTop\n // 向下滚动到下拉框最后一行时,向下滚动一行的高度\n if (\n offsetTop > this.scrollEle.scrollTop + DROPDOWN_HEIGHT - this.ITEM_HEIGHT + 10 &&\n isDown\n ) {\n this.scrollEle.scrollTo(0, this.scrollTop + this.ITEM_HEIGHT)\n return\n }\n // 向上滚动到下拉框第一一行时,向上滚动一行的高度\n if (offsetTop < this.scrollEle.scrollTop && isUp) {\n this.scrollEle.scrollTo(0, this.scrollTop - this.ITEM_HEIGHT)\n }\n }, 100)\n }\n\n onScroll = () => this.throttleByHeight(this.onScrollReal)\n\n onScrollReal = () => {\n this.allList = this.getUseChildrenList()\n const { startIndex, endIndex } = this.getStartAndEndIndex()\n\n this.prevScrollTop = this.scrollTop\n // 重新渲染列表组件 Wrap\n const allHeight = this.allList.length * this.ITEM_HEIGHT || 100\n this.wrap.reactList(allHeight, startIndex, endIndex)\n }\n\n throttleByHeight = () => {\n this.scrollTop = this.scrollEle.scrollTop\n // 滚动的高度\n let delta = this.prevScrollTop - this.scrollTop\n delta = delta < 0 ? 0 - delta : delta\n\n delta > this.reactDelta && this.onScrollReal()\n }\n\n // 列表可展示所有 children\n getUseChildrenList = () => this.state.filterChildren || this.state.children\n\n getStartAndEndIndex = () => {\n // 滚动后显示在列表可视区中的第一个 item 的 index\n const showIndex = Number((this.scrollTop / this.ITEM_HEIGHT).toFixed(0))\n\n const startIndex = showIndex - ITEM_ELEMENT_NUMBER < 0 ? 0 : showIndex - ITEM_ELEMENT_NUMBER / 2\n const endIndex = showIndex + ITEM_ELEMENT_NUMBER\n return { startIndex, endIndex }\n }\n\n // 须使用 setTimeout 确保在 dom 加载完成之后添加事件\n setSuperDropDownMenu = (visible) => {\n if (!visible) return\n\n this.allList = this.getUseChildrenList()\n\n if (!this.eventTimer || !this.scrollEle) {\n this.eventTimer = setTimeout(() => this.addEvent(), 0)\n } else {\n const allHeight = this.allList.length * this.ITEM_HEIGHT || 100\n // 下拉列表单独重新渲染\n const { startIndex, endIndex } = this.getStartAndEndIndex()\n setTimeout(() => {\n this.wrap && this.wrap.reactList(allHeight, startIndex, endIndex)\n }, 0)\n }\n }\n\n onDropdownVisibleChange = (visible) => {\n const { onDropdownVisibleChange } = this.props\n onDropdownVisibleChange && onDropdownVisibleChange(visible)\n\n const { value, children } = this.state\n // 关闭下拉框前清空筛选条件,防止下次打开任然显示筛选后的 options\n if (!visible) {\n // 定时器确保关闭后再设置 filterChildren,防止列表刷新闪烁\n setTimeout(() => {\n this.setState({ filterChildren: null })\n this.setDefaultScrollTop(value)\n }, 100)\n // this.removeEvent();\n } else {\n // this.addEvent();\n if (value) {\n // 如果已有 value, 设置默认滚动位置\n this.setDefaultScrollTop()\n // 设置下拉列表显示数据\n this.setSuperDropDownMenu(visible)\n } else if (!value && value !== 0 && children && children.length > 0) {\n // 无数据时,下拉回归至第一个\n const val = children[0].props.value\n this.setDefaultScrollTop(val)\n }\n }\n }\n\n onDeselect = (value) => {\n const { onDeselect } = this.props\n onDeselect && onDeselect(value)\n }\n\n // 在搜索重新计算下拉滚动条高度\n onChange = (value, opt) => {\n const { showSearch, onChange, autoClearSearchValue, maxCount, mode } = this.props\n if (showSearch || this.isMultiple) {\n // 搜索模式下选择后是否需要重置搜索状态\n if (autoClearSearchValue !== false) {\n this.setState({ filterChildren: null }, () => {\n // 搜索成功后重新设置列表的总高度\n this.setSuperDropDownMenu(true)\n })\n }\n }\n\n if (mode === 'multiple') {\n if (value.length <= maxCount) {\n this.setState({ value })\n }\n } else {\n this.setState({ value })\n }\n onChange && onChange(value, opt)\n\n if (mode !== 'multiple') {\n this.select && this.select.blur()\n }\n }\n\n onSearch = (v) => {\n const { showSearch, onSearch, filterOption, children: arr } = this.props\n let children = this.turnChildren(arr)\n if (showSearch && filterOption !== false) {\n // 须根据 filterOption(如有该自定义函数)手动 filter 搜索匹配的列表\n let filterChildren = null\n if (typeof filterOption === 'function') {\n filterChildren = children.filter((item) => filterOption(v, item))\n } else if (filterOption === undefined) {\n filterChildren = children.filter((item) => this.filterOption(v, item))\n }\n\n // 搜索框有值,去除disabled=true的children\n let newFilterChild = []\n filterChildren &&\n filterChildren.forEach((item, index) => {\n if (!item.props.disabled) {\n newFilterChild.push(item)\n }\n })\n filterChildren = newFilterChild\n\n // 设置下拉列表显示数据\n this.setState({ filterChildren: v === '' ? null : filterChildren }, () => {\n setTimeout(() => {\n // 搜索后需要重置滚动位置到0,防止上次 scrollTop 位置无数据\n if (filterChildren && this.scrollEle) {\n this.scrollTop = 0\n this.scrollEle.scrollTo(0, 0)\n }\n // 搜索成功后需要重新设置列表的总高度\n this.setSuperDropDownMenu(true)\n }, 0)\n })\n }\n onSearch && onSearch(v)\n }\n\n filterOption = (v, option) => {\n // 自定义过滤对应的 option 属性配置\n const filterProps = this.props.optionFilterProp || 'value'\n return `${option.props[filterProps]}`.indexOf(v) >= 0\n }\n\n setDefaultScrollTop = (data) => {\n const { value } = this.state\n const { children: arr } = this.props\n const children = this.turnChildren(arr)\n\n let val = data || data === 0 ? data : value\n\n for (let i = 0; i < children.length; i++) {\n const item = children[i]\n const itemValue = item.props.value\n if (itemValue === val || (Array.isArray(val) && val.includes(itemValue))) {\n const targetScrollTop = i * this.ITEM_HEIGHT\n\n setTimeout(() => {\n if (!this.scrollEle) {\n this.addEvent()\n }\n this.scrollEle && this.scrollEle.scrollTo(0, targetScrollTop)\n }, 100)\n return\n }\n }\n }\n\n removeEvent = () => {\n if (!this.scrollEle) return\n this.scrollEle.removeEventListener('mousedown', this.preventEvent, false)\n this.scrollEle.removeEventListener('scroll', this.onScroll, false)\n if (!this.inputEle) return\n this.inputEle.removeEventListener('keydown', this.onKeyDown, false)\n }\n\n render() {\n const { maxWidth, selectWidth } = this.state\n let { dropdownStyle, optionLabelProp, dropdownClassName, placeholder = defaultPlaceholder, capitalize, renderEmpty, ...props } =\n this.props\n\n this.allList = this.getUseChildrenList()\n\n this.allHeight = this.allList.length * this.ITEM_HEIGHT || 100\n const { startIndex, endIndex } = this.getStartAndEndIndex()\n\n let dynamicWidth = maxWidth\n if (this.allList.length === 0 || maxWidth < selectWidth) {\n dynamicWidth = selectWidth\n }\n\n dropdownStyle = {\n maxHeight: `${DROPDOWN_HEIGHT}px`,\n ...dropdownStyle,\n overflow: 'auto',\n position: 'relative',\n maxWidth: dynamicWidth,\n }\n\n const { value } = this.state\n // 判断处于 antd Form 中时不自动设置 value\n const _props = { ...props }\n // 先删除 value,再手动赋值,防止空 value 影响 placeholder\n delete _props.value\n\n // value 为空字符会隐藏 placeholder,改为 undefined\n if (typeof value === 'string' && !value) {\n _props.value = undefined\n } else {\n _props.value = value\n }\n\n optionLabelProp = optionLabelProp || 'children'\n return (\n <Select\n {..._props}\n id={this.id}\n placeholder={capitalizeFirstLetter(placeholder, capitalize)}\n onSearch={this.onSearch}\n onChange={this.onChange}\n dropdownClassName={`${this.dropdownClassName} ${dropdownClassName || ''}`}\n optionLabelProp={optionLabelProp}\n dropdownStyle={dropdownStyle}\n onDropdownVisibleChange={this.onDropdownVisibleChange}\n onDeselect={this.onDeselect}\n ref={(ele) => (this.select = ele)}\n dropdownRender={(menu, props) => {\n if (_props.loading) {\n return <Spin size=\"small\" style={{ marginLeft: 8 }} />\n }\n if (this.allList.length === 0) {\n return (\n <div className=\"tntd-select-empty-container\">\n {renderEmpty ? renderEmpty('Select') : <Empty image={Empty.PRESENTED_IMAGE_SIMPLE} />}\n </div>\n )\n }\n\n return (\n <DropDownWrap\n {...{\n startIndex,\n endIndex,\n allHeight: this.allHeight,\n menu,\n itemHeight: this.ITEM_HEIGHT,\n }}\n ref={(ele) => {\n this.wrap = ele\n }}\n />\n )\n }}\n >\n {this.allList}\n </Select>\n )\n }\n}\n\nfunction TntdSelect(props) {\n return (<ConfigConsumer>\n {({ renderEmpty }) => {\n return <SuperSelect {...props} renderEmpty={renderEmpty} />\n }}\n </ConfigConsumer>)\n}\n\nTntdSelect.Option = Option\n\nexport default TntdSelect\n"]}
|
|
@@ -1,67 +1,97 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports["default"] = void 0;
|
|
8
|
+
var _uniq2 = _interopRequireDefault(require("lodash/uniq"));
|
|
9
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
10
|
+
var _rcVirtualList = _interopRequireDefault(require("rc-virtual-list"));
|
|
11
|
+
var _icon = _interopRequireDefault(require("../icon"));
|
|
12
|
+
var _ellipsis = _interopRequireDefault(require("../ellipsis"));
|
|
13
|
+
var _empty = _interopRequireDefault(require("../empty"));
|
|
14
|
+
var _checkbox = _interopRequireDefault(require("../checkbox"));
|
|
15
|
+
var _utils = require("./utils");
|
|
16
|
+
var _prevLocale = require("../prev-locale");
|
|
17
|
+
require("./index.less");
|
|
18
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
|
|
19
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
|
|
20
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
|
|
21
|
+
function _toConsumableArray(r) { return _arrayWithoutHoles(r) || _iterableToArray(r) || _unsupportedIterableToArray(r) || _nonIterableSpread(); }
|
|
22
|
+
function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
23
|
+
function _iterableToArray(r) { if ("undefined" != typeof Symbol && null != r[Symbol.iterator] || null != r["@@iterator"]) return Array.from(r); }
|
|
24
|
+
function _arrayWithoutHoles(r) { if (Array.isArray(r)) return _arrayLikeToArray(r); }
|
|
25
|
+
function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
|
|
26
|
+
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
27
|
+
function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
|
|
28
|
+
function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
|
|
29
|
+
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
|
|
30
|
+
function _arrayWithHoles(r) { if (Array.isArray(r)) return r; } /*
|
|
3
31
|
* @Descripttion: 基于antd3 tree 部分api实现的tree,增加了虚拟滚动
|
|
4
32
|
* @Author: 郑泳健
|
|
5
33
|
* @Date: 2024-07-31 14:46:55
|
|
6
34
|
* @LastEditors: 郑泳健
|
|
7
35
|
* @LastEditTime: 2024-11-15 10:52:13
|
|
8
36
|
*/
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
onCheck,
|
|
35
|
-
onExpand,
|
|
36
|
-
onSelect
|
|
37
|
-
}) => {
|
|
38
|
-
const ref = React.useRef(null);
|
|
39
|
-
const expandChangedRef = useRef(0);
|
|
40
|
-
const checkedChangeRef = useRef(0);
|
|
37
|
+
var VirtualTree = function VirtualTree(_ref) {
|
|
38
|
+
var _ref$indent = _ref.indent,
|
|
39
|
+
indent = _ref$indent === void 0 ? 24 : _ref$indent,
|
|
40
|
+
isOrg = _ref.isOrg,
|
|
41
|
+
showPrefixIcon = _ref.showPrefixIcon,
|
|
42
|
+
value = _ref.value,
|
|
43
|
+
_ref$itemHeight = _ref.itemHeight,
|
|
44
|
+
itemHeight = _ref$itemHeight === void 0 ? 32 : _ref$itemHeight,
|
|
45
|
+
height = _ref.height,
|
|
46
|
+
filterKey = _ref.filterKey,
|
|
47
|
+
treeData = _ref.treeData,
|
|
48
|
+
checkable = _ref.checkable,
|
|
49
|
+
checkStrictly = _ref.checkStrictly,
|
|
50
|
+
checkedKeys = _ref.checkedKeys,
|
|
51
|
+
_ref$defaultExpandAll = _ref.defaultExpandAll,
|
|
52
|
+
defaultExpandAll = _ref$defaultExpandAll === void 0 ? true : _ref$defaultExpandAll,
|
|
53
|
+
expandedKeys = _ref.expandedKeys,
|
|
54
|
+
fieldNames = _ref.fieldNames,
|
|
55
|
+
titleRender = _ref.titleRender,
|
|
56
|
+
onCheck = _ref.onCheck,
|
|
57
|
+
onExpand = _ref.onExpand,
|
|
58
|
+
onSelect = _ref.onSelect;
|
|
59
|
+
var ref = _react["default"].useRef(null);
|
|
60
|
+
var expandChangedRef = (0, _react.useRef)(0);
|
|
61
|
+
var checkedChangeRef = (0, _react.useRef)(0);
|
|
41
62
|
// 展开的节点列表
|
|
42
|
-
|
|
63
|
+
var _useState = (0, _react.useState)([]),
|
|
64
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
65
|
+
expandedList = _useState2[0],
|
|
66
|
+
setExpandedList = _useState2[1];
|
|
43
67
|
// checked 节点列表
|
|
44
|
-
|
|
68
|
+
var _useState3 = (0, _react.useState)([]),
|
|
69
|
+
_useState4 = _slicedToArray(_useState3, 2),
|
|
70
|
+
checkedList = _useState4[0],
|
|
71
|
+
setCheckedList = _useState4[1];
|
|
45
72
|
// 当前被选中的节点
|
|
46
|
-
|
|
47
|
-
|
|
73
|
+
var _useState5 = (0, _react.useState)(undefined),
|
|
74
|
+
_useState6 = _slicedToArray(_useState5, 2),
|
|
75
|
+
choosedValue = _useState6[0],
|
|
76
|
+
setChoosedValue = _useState6[1];
|
|
77
|
+
(0, _react.useEffect)(function () {
|
|
48
78
|
if (!checkable) {
|
|
49
79
|
setChoosedValue(value);
|
|
50
80
|
}
|
|
51
81
|
}, [value, checkable]);
|
|
52
82
|
/** 给每个节点增加属性keys,值为其下面所有节点的集合 */
|
|
53
|
-
|
|
54
|
-
return addTreeNodeAttrs(treeData, fieldNames);
|
|
83
|
+
var treeDataWithKeys = (0, _react.useMemo)(function () {
|
|
84
|
+
return (0, _utils.addTreeNodeAttrs)(treeData, fieldNames);
|
|
55
85
|
}, [treeData, fieldNames]);
|
|
56
86
|
/** 默认是否全部展开 */
|
|
57
|
-
|
|
87
|
+
var mergeDefaultExpandAll = (0, _react.useMemo)(function () {
|
|
58
88
|
if (Array.isArray(expandedKeys)) {
|
|
59
89
|
return false;
|
|
60
90
|
}
|
|
61
91
|
return defaultExpandAll;
|
|
62
92
|
}, [defaultExpandAll, expandedKeys]);
|
|
63
93
|
/** 获取到所有选中的节点,因为checkedKeys可能传入的是最后一级 */
|
|
64
|
-
useEffect(()
|
|
94
|
+
(0, _react.useEffect)(function () {
|
|
65
95
|
// 非第一次
|
|
66
96
|
if (checkedChangeRef.current > 0) {
|
|
67
97
|
setCheckedList(checkedKeys);
|
|
@@ -70,56 +100,56 @@ const VirtualTree = ({
|
|
|
70
100
|
if (checkable) {
|
|
71
101
|
// 如果是受控
|
|
72
102
|
if (checkStrictly) {
|
|
73
|
-
setCheckedList(
|
|
103
|
+
setCheckedList((0, _uniq2["default"])(Array.isArray(checkedKeys) ? checkedKeys : []));
|
|
74
104
|
return;
|
|
75
105
|
}
|
|
76
|
-
|
|
106
|
+
var transCheckedKeys = Array.isArray(checkedKeys) ? checkedKeys.reduce(function (total, item) {
|
|
77
107
|
total.push(item);
|
|
78
|
-
|
|
79
|
-
needCheckedChildrenValues
|
|
80
|
-
|
|
81
|
-
total = [...total, ...needCheckedChildrenValues];
|
|
108
|
+
var _ref2 = (0, _utils.findNodeDetail)(treeDataWithKeys, item) || {},
|
|
109
|
+
needCheckedChildrenValues = _ref2.needCheckedChildrenValues;
|
|
110
|
+
total = [].concat(_toConsumableArray(total), _toConsumableArray(needCheckedChildrenValues));
|
|
82
111
|
return total;
|
|
83
112
|
}, []) : [];
|
|
84
|
-
|
|
85
|
-
setCheckedList(
|
|
113
|
+
var _checkedKeys = (0, _utils.getFullCheckedKeys)(treeDataWithKeys, transCheckedKeys);
|
|
114
|
+
setCheckedList((0, _uniq2["default"])(_checkedKeys));
|
|
86
115
|
}
|
|
87
116
|
}, [treeDataWithKeys, checkStrictly, checkable, checkedKeys]);
|
|
88
|
-
useEffect(()
|
|
117
|
+
(0, _react.useEffect)(function () {
|
|
89
118
|
setExpandedList(expandedKeys);
|
|
90
119
|
}, [expandedKeys]);
|
|
91
120
|
/** 初始化获取到所有展开的节点,因为初始化expandedKeys可能传入的是最后一级 */
|
|
92
|
-
useEffect(()
|
|
121
|
+
(0, _react.useEffect)(function () {
|
|
93
122
|
if (expandChangedRef.current === 0) {
|
|
94
123
|
// 展开的节点
|
|
95
|
-
|
|
96
|
-
|
|
124
|
+
var transExpandedKeys = Array.isArray(expandedKeys) ? expandedKeys : [];
|
|
125
|
+
var _expandedKeys = (0, _utils.getFullExpandedKeys)(treeDataWithKeys, transExpandedKeys, mergeDefaultExpandAll);
|
|
97
126
|
setExpandedList(_expandedKeys);
|
|
98
127
|
}
|
|
99
128
|
}, [treeDataWithKeys, expandedKeys, mergeDefaultExpandAll]);
|
|
100
129
|
/** 最终渲染的数据 */
|
|
101
|
-
|
|
102
|
-
return flatTreeData(treeDataWithKeys, filterKey, expandedList);
|
|
130
|
+
var renderData = (0, _react.useMemo)(function () {
|
|
131
|
+
return (0, _utils.flatTreeData)(treeDataWithKeys, filterKey, expandedList);
|
|
103
132
|
}, [treeDataWithKeys, filterKey, expandedList]);
|
|
104
133
|
/** 切换展开/收起 */
|
|
105
|
-
|
|
134
|
+
var handleToggle = function handleToggle(item) {
|
|
106
135
|
expandChangedRef.current++;
|
|
107
|
-
|
|
108
|
-
value
|
|
109
|
-
|
|
110
|
-
const bool = Array.isArray(expandedList) ? expandedList.includes(value) : false;
|
|
136
|
+
var _ref3 = item || {},
|
|
137
|
+
value = _ref3.value;
|
|
138
|
+
var bool = Array.isArray(expandedList) ? expandedList.includes(value) : false;
|
|
111
139
|
if (bool) {
|
|
112
|
-
|
|
140
|
+
var list = Array.isArray(expandedList) ? expandedList.filter(function (i) {
|
|
141
|
+
return i !== value;
|
|
142
|
+
}) : [];
|
|
113
143
|
if (onExpand) {
|
|
114
|
-
onExpand(
|
|
144
|
+
onExpand((0, _uniq2["default"])(list), {
|
|
115
145
|
node: item,
|
|
116
146
|
expanded: !bool
|
|
117
147
|
});
|
|
118
148
|
return;
|
|
119
149
|
}
|
|
120
|
-
setExpandedList(
|
|
150
|
+
setExpandedList((0, _uniq2["default"])(list));
|
|
121
151
|
} else {
|
|
122
|
-
|
|
152
|
+
var arr = (0, _uniq2["default"])([].concat(_toConsumableArray(expandedList), [value]));
|
|
123
153
|
if (onExpand) {
|
|
124
154
|
onExpand(arr, {
|
|
125
155
|
node: item,
|
|
@@ -130,42 +160,44 @@ const VirtualTree = ({
|
|
|
130
160
|
setExpandedList(arr);
|
|
131
161
|
}
|
|
132
162
|
};
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
disabled
|
|
138
|
-
} = item;
|
|
163
|
+
var handleCheck = function handleCheck(item, isChecked) {
|
|
164
|
+
var _value = item.value,
|
|
165
|
+
children = item.children,
|
|
166
|
+
disabled = item.disabled;
|
|
139
167
|
if (disabled) {
|
|
140
168
|
return;
|
|
141
169
|
}
|
|
142
170
|
checkedChangeRef.current++;
|
|
143
171
|
// 需要增删的子节点
|
|
144
|
-
|
|
172
|
+
var itemChildrenValues = Array.isArray(children) && !!children.length ? item.needCheckedChildrenValues : [];
|
|
145
173
|
if (isChecked) {
|
|
146
174
|
// 需要删除的父节点
|
|
147
|
-
|
|
175
|
+
var itemParentValues = Array.isArray(item.needCheckedSiblingsValue) ? item.needCheckedSiblingsValue.map(function (i) {
|
|
176
|
+
return i.key;
|
|
177
|
+
}) : [];
|
|
148
178
|
// 当前节点所有的父节点
|
|
149
|
-
|
|
150
|
-
|
|
179
|
+
var delList = checkStrictly ? [_value] : [].concat(_toConsumableArray(itemChildrenValues), _toConsumableArray(itemParentValues), [_value]);
|
|
180
|
+
var _checkedList = checkedList.filter(function (i) {
|
|
181
|
+
return !delList.includes(i);
|
|
182
|
+
});
|
|
151
183
|
if (onCheck) {
|
|
152
|
-
onCheck === null || onCheck === void 0 ? void 0 : onCheck(
|
|
184
|
+
onCheck === null || onCheck === void 0 ? void 0 : onCheck((0, _uniq2["default"])(_checkedList), item, !isChecked);
|
|
153
185
|
return;
|
|
154
186
|
}
|
|
155
|
-
setCheckedList(
|
|
187
|
+
setCheckedList((0, _uniq2["default"])(_checkedList));
|
|
156
188
|
} else {
|
|
157
189
|
// 递归循环其上级是否也要被选中
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
190
|
+
var _itemParentValues = (0, _utils.getNodeParentChoosed)(item.needCheckedSiblingsValue, [].concat(_toConsumableArray(checkedList), _toConsumableArray(itemChildrenValues), [_value]));
|
|
191
|
+
var addList = checkStrictly ? [_value] : [].concat(_toConsumableArray(itemChildrenValues), _toConsumableArray(_itemParentValues), [_value]);
|
|
192
|
+
var _checkedList2 = [].concat(_toConsumableArray(checkedList), _toConsumableArray(addList));
|
|
161
193
|
if (onCheck) {
|
|
162
|
-
onCheck === null || onCheck === void 0 ? void 0 : onCheck(
|
|
194
|
+
onCheck === null || onCheck === void 0 ? void 0 : onCheck((0, _uniq2["default"])(_checkedList2), item, !isChecked);
|
|
163
195
|
return;
|
|
164
196
|
}
|
|
165
|
-
setCheckedList(
|
|
197
|
+
setCheckedList((0, _uniq2["default"])(_checkedList2));
|
|
166
198
|
}
|
|
167
199
|
};
|
|
168
|
-
|
|
200
|
+
var handleChoosed = function handleChoosed(item) {
|
|
169
201
|
if (item.disabled) {
|
|
170
202
|
return;
|
|
171
203
|
}
|
|
@@ -174,8 +206,8 @@ const VirtualTree = ({
|
|
|
174
206
|
onSelect === null || onSelect === void 0 ? void 0 : onSelect(item.value);
|
|
175
207
|
}
|
|
176
208
|
};
|
|
177
|
-
|
|
178
|
-
|
|
209
|
+
var renderOrgItem = function renderOrgItem(item, lang) {
|
|
210
|
+
var mapResult = {
|
|
179
211
|
1: {
|
|
180
212
|
cn: '职能部门',
|
|
181
213
|
en: 'Func. Dept.',
|
|
@@ -185,32 +217,33 @@ const VirtualTree = ({
|
|
|
185
217
|
icon: 'corporation'
|
|
186
218
|
}
|
|
187
219
|
};
|
|
188
|
-
|
|
189
|
-
return
|
|
220
|
+
var result = mapResult[item === null || item === void 0 ? void 0 : item.orgAttribute] || {};
|
|
221
|
+
return _react["default"].createElement("div", {
|
|
190
222
|
className: "org-item-wrapper"
|
|
191
|
-
}, showPrefixIcon ?
|
|
223
|
+
}, showPrefixIcon ? _react["default"].createElement(_icon["default"], {
|
|
192
224
|
type: result === null || result === void 0 ? void 0 : result['icon'],
|
|
193
225
|
style: {
|
|
194
226
|
marginTop: 3,
|
|
195
227
|
marginRight: 4
|
|
196
228
|
}
|
|
197
|
-
}) : '',
|
|
229
|
+
}) : '', _react["default"].createElement(_ellipsis["default"], {
|
|
198
230
|
title: item.title,
|
|
199
231
|
widthLimit: '100%'
|
|
200
|
-
}), String(item.orgAttribute) === '1' &&
|
|
232
|
+
}), String(item.orgAttribute) === '1' && _react["default"].createElement("span", {
|
|
201
233
|
className: "org-functional-departemt-marker"
|
|
202
234
|
}, result[lang] || '职能部门'));
|
|
203
235
|
};
|
|
204
|
-
|
|
236
|
+
var defaultRenderItem = function defaultRenderItem(item) {
|
|
237
|
+
var isOrg = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
|
|
205
238
|
if (isOrg) {
|
|
206
|
-
return renderOrgItem(item, getLanguage());
|
|
239
|
+
return renderOrgItem(item, (0, _prevLocale.getLanguage)());
|
|
207
240
|
}
|
|
208
|
-
return
|
|
241
|
+
return _react["default"].createElement(_ellipsis["default"], {
|
|
209
242
|
title: item.title,
|
|
210
243
|
widthLimit: '100%'
|
|
211
244
|
});
|
|
212
245
|
};
|
|
213
|
-
|
|
246
|
+
var adjustHeight = (0, _react.useMemo)(function () {
|
|
214
247
|
if (Array.isArray(renderData)) {
|
|
215
248
|
if (renderData.length >= 10) {
|
|
216
249
|
return height;
|
|
@@ -219,61 +252,62 @@ const VirtualTree = ({
|
|
|
219
252
|
}
|
|
220
253
|
return 100;
|
|
221
254
|
}, [renderData, itemHeight, height]);
|
|
222
|
-
return
|
|
255
|
+
return _react["default"].createElement("div", {
|
|
223
256
|
className: "tntd-virtual-tree"
|
|
224
|
-
}, !Array.isArray(renderData) || !renderData.length ?
|
|
257
|
+
}, !Array.isArray(renderData) || !renderData.length ? _react["default"].createElement(_empty["default"], {
|
|
225
258
|
size: "small"
|
|
226
|
-
}) :
|
|
259
|
+
}) : _react["default"].createElement(_rcVirtualList["default"], {
|
|
227
260
|
ref: ref,
|
|
228
261
|
height: adjustHeight || 300,
|
|
229
262
|
itemHeight: itemHeight,
|
|
230
263
|
data: renderData,
|
|
231
264
|
itemKey: 'value'
|
|
232
|
-
}, item
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
} = item;
|
|
238
|
-
const bool = Array.isArray(expandedList) ? expandedList.includes(item.value) : false;
|
|
265
|
+
}, function (item) {
|
|
266
|
+
var indexLevel = item.indexLevel,
|
|
267
|
+
children = item.children,
|
|
268
|
+
disabled = item.disabled;
|
|
269
|
+
var bool = Array.isArray(expandedList) ? expandedList.includes(item.value) : false;
|
|
239
270
|
// 当前节点半选状态
|
|
240
|
-
|
|
271
|
+
var indeterminateStatus = (0, _utils.getIndeterminate)(item, checkedList);
|
|
241
272
|
// 当前节点是否被选中
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
className:
|
|
247
|
-
onChange: ()
|
|
273
|
+
var checkedBingo = Array.isArray(checkedList) ? checkedList.includes(item.value) : false;
|
|
274
|
+
var isChecked = !checkStrictly || disabled ? checkedBingo && !indeterminateStatus : checkedBingo;
|
|
275
|
+
var hasChild = Array.isArray(children) && !!children.length;
|
|
276
|
+
var checkBoxAttrs = {
|
|
277
|
+
className: "".concat(disabled ? 'tntd-virtual-tree-checkbox-disabled' : ''),
|
|
278
|
+
onChange: function onChange() {
|
|
279
|
+
return handleCheck(item, isChecked);
|
|
280
|
+
},
|
|
248
281
|
checked: isChecked,
|
|
249
|
-
disabled
|
|
282
|
+
disabled: disabled
|
|
250
283
|
};
|
|
251
284
|
// 状态没有半选模式
|
|
252
285
|
if (!checkStrictly) {
|
|
253
286
|
checkBoxAttrs.indeterminate = indeterminateStatus;
|
|
254
287
|
}
|
|
255
|
-
return
|
|
256
|
-
className:
|
|
288
|
+
return _react["default"].createElement("div", {
|
|
289
|
+
className: "tntd-virtual-tree-item ".concat(disabled ? 'tntd-virtual-tree-item_disabled' : '', " ").concat(choosedValue === item.value ? 'tntd-virtual-tree-item_active' : ''),
|
|
257
290
|
key: item.value
|
|
258
|
-
},
|
|
291
|
+
}, _react["default"].createElement("div", {
|
|
259
292
|
style: {
|
|
260
293
|
paddingLeft: indexLevel !== 0 ? indexLevel * indent - 4 : 0,
|
|
261
294
|
width: '100%'
|
|
262
295
|
}
|
|
263
|
-
},
|
|
296
|
+
}, _react["default"].createElement("div", {
|
|
264
297
|
className: "tntd-virtual-tree-item-expand-icon"
|
|
265
|
-
}, hasChild ?
|
|
298
|
+
}, hasChild ? _react["default"].createElement(_icon["default"], {
|
|
266
299
|
type: bool ? 'caret-down' : 'caret-right',
|
|
267
|
-
onClick: ()
|
|
268
|
-
|
|
300
|
+
onClick: function onClick() {
|
|
301
|
+
return handleToggle(item);
|
|
302
|
+
}
|
|
303
|
+
}) : ''), checkable ? _react["default"].createElement("div", {
|
|
269
304
|
className: "tntd-virtual-tree-item-checkbox"
|
|
270
|
-
},
|
|
271
|
-
className:
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
}
|
|
275
|
-
onClick: () => handleChoosed(item)
|
|
305
|
+
}, _react["default"].createElement(_checkbox["default"], Object.assign({}, checkBoxAttrs))) : '', _react["default"].createElement("div", {
|
|
306
|
+
className: "tntd-virtual-tree-title",
|
|
307
|
+
onClick: function onClick() {
|
|
308
|
+
return handleChoosed(item);
|
|
309
|
+
}
|
|
276
310
|
}, titleRender ? titleRender(item) : defaultRenderItem(item, isOrg))));
|
|
277
311
|
}));
|
|
278
312
|
};
|
|
279
|
-
|
|
313
|
+
var _default = exports["default"] = VirtualTree;
|