@douyinfe/semi-foundation 2.24.2 → 2.25.0-alpha.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/anchor/anchor.scss +6 -0
- package/anchor/foundation.ts +7 -6
- package/anchor/linkFoundation.ts +0 -1
- package/anchor/variables.scss +4 -0
- package/autoComplete/autoComplete.scss +2 -0
- package/autoComplete/foundation.ts +23 -20
- package/autoComplete/optionFoundation.ts +0 -2
- package/avatar/animation.scss +19 -0
- package/avatar/avatar.scss +314 -1
- package/avatar/constants.ts +21 -4
- package/avatar/foundation.ts +21 -4
- package/avatar/variables.scss +66 -10
- package/badge/badge.scss +13 -0
- package/badge/constants.ts +1 -1
- package/badge/variables.scss +4 -0
- package/base/foundation.ts +2 -3
- package/breadcrumb/breadcrumb.scss +10 -4
- package/breadcrumb/foundation.ts +0 -1
- package/breadcrumb/variables.scss +4 -0
- package/button/button.scss +88 -21
- package/button/iconButton.scss +1 -0
- package/button/splitButtonGroup.scss +10 -9
- package/button/variables.scss +13 -0
- package/calendar/calendar.scss +1 -1
- package/calendar/eventUtil.ts +14 -10
- package/calendar/foundation.ts +9 -9
- package/carousel/carousel.scss +4 -0
- package/carousel/foundation.ts +12 -7
- package/cascader/cascader.scss +66 -23
- package/cascader/constants.ts +5 -1
- package/cascader/foundation.ts +111 -63
- package/cascader/util.ts +64 -10
- package/cascader/variables.scss +5 -1
- package/checkbox/checkbox.scss +0 -1
- package/checkbox/checkboxFoundation.ts +1 -2
- package/checkbox/checkboxGroupFoundation.ts +0 -1
- package/collapse/foundation.ts +1 -0
- package/datePicker/_utils/getDefaultFormatToken.ts +1 -0
- package/datePicker/_utils/getInsetInputFormatToken.ts +1 -0
- package/datePicker/_utils/getInsetInputValueFromInsetInputStr.ts +1 -0
- package/datePicker/_utils/getYears.ts +8 -4
- package/datePicker/_utils/isValidTimeZone.ts +3 -0
- package/datePicker/constants.ts +1 -1
- package/datePicker/datePicker.scss +170 -21
- package/datePicker/foundation.ts +175 -150
- package/datePicker/inputFoundation.ts +34 -16
- package/datePicker/monthFoundation.ts +0 -1
- package/datePicker/monthsGridFoundation.ts +52 -32
- package/datePicker/variables.scss +13 -4
- package/datePicker/yearAndMonthFoundation.ts +68 -21
- package/descriptions/constants.ts +2 -1
- package/descriptions/descriptions.scss +20 -0
- package/descriptions/foundation.ts +36 -0
- package/descriptions/variables.scss +10 -0
- package/dropdown/constants.ts +1 -1
- package/dropdown/dropdown.scss +5 -0
- package/dropdown/foundation.ts +4 -3
- package/dropdown/menuFoundation.ts +3 -3
- package/form/constants.ts +2 -1
- package/form/form.scss +5 -2
- package/form/foundation.ts +12 -10
- package/form/interface.ts +5 -6
- package/form/utils.ts +39 -16
- package/form/variables.scss +3 -0
- package/grid/grid.scss +1 -1
- package/image/constants.ts +5 -1
- package/image/image.scss +9 -5
- package/image/previewFooterFoundation.ts +1 -4
- package/image/previewFoundation.ts +1 -1
- package/image/previewImageFoundation.ts +61 -70
- package/image/previewInnerFoundation.ts +93 -47
- package/image/utils.ts +18 -20
- package/image/variables.scss +1 -1
- package/input/foundation.ts +2 -4
- package/input/input.scss +48 -3
- package/input/textarea.scss +34 -0
- package/input/textareaFoundation.ts +42 -18
- package/input/variables.scss +7 -0
- package/inputNumber/foundation.ts +0 -5
- package/inputNumber/inputNumber.scss +9 -0
- package/lib/cjs/anchor/anchor.css +5 -0
- package/lib/cjs/anchor/anchor.scss +6 -0
- package/lib/cjs/anchor/constants.js +1 -3
- package/lib/cjs/anchor/foundation.js +20 -80
- package/lib/cjs/anchor/linkFoundation.js +3 -16
- package/lib/cjs/anchor/variables.scss +4 -0
- package/lib/cjs/autoComplete/autoComplete.css +1 -0
- package/lib/cjs/autoComplete/autoComplete.scss +2 -0
- package/lib/cjs/autoComplete/constants.js +3 -6
- package/lib/cjs/autoComplete/foundation.d.ts +3 -1
- package/lib/cjs/autoComplete/foundation.js +37 -149
- package/lib/cjs/autoComplete/optionFoundation.js +2 -14
- package/lib/cjs/avatar/animation.scss +19 -0
- package/lib/cjs/avatar/avatar.css +261 -0
- package/lib/cjs/avatar/avatar.scss +314 -1
- package/lib/cjs/avatar/constants.js +1 -4
- package/lib/cjs/avatar/foundation.d.ts +3 -0
- package/lib/cjs/avatar/foundation.js +21 -19
- package/lib/cjs/avatar/variables.scss +66 -10
- package/lib/cjs/backtop/constants.js +1 -3
- package/lib/cjs/backtop/foundation.d.ts +2 -2
- package/lib/cjs/backtop/foundation.js +0 -21
- package/lib/cjs/badge/badge.css +10 -0
- package/lib/cjs/badge/badge.scss +13 -0
- package/lib/cjs/badge/constants.js +2 -4
- package/lib/cjs/badge/variables.scss +4 -0
- package/lib/cjs/banner/constants.js +1 -3
- package/lib/cjs/banner/foundation.js +0 -7
- package/lib/cjs/base/constants.js +2 -4
- package/lib/cjs/base/foundation.d.ts +3 -3
- package/lib/cjs/base/foundation.js +12 -46
- package/lib/cjs/base/index.js +0 -3
- package/lib/cjs/breadcrumb/breadcrumb.css +5 -3
- package/lib/cjs/breadcrumb/breadcrumb.scss +10 -4
- package/lib/cjs/breadcrumb/constants.js +1 -3
- package/lib/cjs/breadcrumb/foundation.js +0 -13
- package/lib/cjs/breadcrumb/itemFoundation.js +0 -7
- package/lib/cjs/breadcrumb/variables.scss +4 -0
- package/lib/cjs/button/button.css +32 -5
- package/lib/cjs/button/button.scss +88 -21
- package/lib/cjs/button/constants.js +1 -3
- package/lib/cjs/button/iconButton.css +1 -0
- package/lib/cjs/button/iconButton.scss +1 -0
- package/lib/cjs/button/splitButtonGroup.scss +10 -9
- package/lib/cjs/button/variables.scss +13 -0
- package/lib/cjs/calendar/calendar.css +2 -2
- package/lib/cjs/calendar/calendar.scss +1 -1
- package/lib/cjs/calendar/constants.js +1 -3
- package/lib/cjs/calendar/eventUtil.d.ts +7 -6
- package/lib/cjs/calendar/eventUtil.js +15 -83
- package/lib/cjs/calendar/foundation.d.ts +4 -4
- package/lib/cjs/calendar/foundation.js +32 -128
- package/lib/cjs/card/constants.js +1 -3
- package/lib/cjs/carousel/carousel.css +4 -0
- package/lib/cjs/carousel/carousel.scss +4 -0
- package/lib/cjs/carousel/constants.js +9 -11
- package/lib/cjs/carousel/foundation.d.ts +2 -0
- package/lib/cjs/carousel/foundation.js +7 -52
- package/lib/cjs/cascader/cascader.css +45 -4
- package/lib/cjs/cascader/cascader.scss +66 -23
- package/lib/cjs/cascader/constants.d.ts +3 -0
- package/lib/cjs/cascader/constants.js +9 -8
- package/lib/cjs/cascader/foundation.d.ts +27 -8
- package/lib/cjs/cascader/foundation.js +122 -300
- package/lib/cjs/cascader/util.d.ts +9 -1
- package/lib/cjs/cascader/util.js +69 -33
- package/lib/cjs/cascader/variables.scss +5 -1
- package/lib/cjs/checkbox/checkbox.css +0 -1
- package/lib/cjs/checkbox/checkbox.scss +0 -1
- package/lib/cjs/checkbox/checkboxFoundation.js +1 -38
- package/lib/cjs/checkbox/checkboxGroupFoundation.js +1 -23
- package/lib/cjs/checkbox/constants.js +13 -15
- package/lib/cjs/collapse/constants.js +1 -3
- package/lib/cjs/collapse/foundation.d.ts +2 -1
- package/lib/cjs/collapse/foundation.js +2 -13
- package/lib/cjs/collapsible/constants.js +1 -3
- package/lib/cjs/collapsible/foundation.js +0 -9
- package/lib/cjs/datePicker/_utils/formatter.js +4 -10
- package/lib/cjs/datePicker/_utils/getDayOfWeek.d.ts +1 -1
- package/lib/cjs/datePicker/_utils/getDayOfWeek.js +0 -4
- package/lib/cjs/datePicker/_utils/getDefaultFormatToken.d.ts +1 -0
- package/lib/cjs/datePicker/_utils/getDefaultFormatToken.js +2 -6
- package/lib/cjs/datePicker/_utils/getDefaultPickerDate.d.ts +1 -1
- package/lib/cjs/datePicker/_utils/getDefaultPickerDate.js +0 -15
- package/lib/cjs/datePicker/_utils/getFullDateOffset.js +0 -7
- package/lib/cjs/datePicker/_utils/getInsetInputFormatToken.js +2 -6
- package/lib/cjs/datePicker/_utils/getInsetInputValueFromInsetInputStr.js +1 -6
- package/lib/cjs/datePicker/_utils/getMonthTable.d.ts +1 -1
- package/lib/cjs/datePicker/_utils/getMonthTable.js +7 -18
- package/lib/cjs/datePicker/_utils/getMonthsInYear.js +1 -3
- package/lib/cjs/datePicker/_utils/getYears.d.ts +1 -1
- package/lib/cjs/datePicker/_utils/getYears.js +9 -7
- package/lib/cjs/datePicker/_utils/index.js +0 -13
- package/lib/cjs/datePicker/_utils/isAfter.js +0 -4
- package/lib/cjs/datePicker/_utils/isBefore.js +0 -4
- package/lib/cjs/datePicker/_utils/isBetween.js +0 -4
- package/lib/cjs/datePicker/_utils/isDate.js +0 -1
- package/lib/cjs/datePicker/_utils/isSameDay.js +0 -4
- package/lib/cjs/datePicker/_utils/isTimestamp.js +0 -4
- package/lib/cjs/datePicker/_utils/isUnixTimestamp.js +0 -4
- package/lib/cjs/datePicker/_utils/isValidDate.js +0 -1
- package/lib/cjs/datePicker/_utils/isValidTimeZone.d.ts +1 -0
- package/lib/cjs/datePicker/_utils/isValidTimeZone.js +9 -0
- package/lib/cjs/datePicker/_utils/isWithinInterval.js +0 -4
- package/lib/cjs/datePicker/_utils/parser.js +0 -10
- package/lib/cjs/datePicker/constants.d.ts +1 -1
- package/lib/cjs/datePicker/constants.js +28 -31
- package/lib/cjs/datePicker/datePicker.css +88 -13
- package/lib/cjs/datePicker/datePicker.scss +170 -21
- package/lib/cjs/datePicker/foundation.d.ts +79 -50
- package/lib/cjs/datePicker/foundation.js +173 -441
- package/lib/cjs/datePicker/inputFoundation.d.ts +15 -6
- package/lib/cjs/datePicker/inputFoundation.js +35 -98
- package/lib/cjs/datePicker/monthFoundation.d.ts +1 -1
- package/lib/cjs/datePicker/monthFoundation.js +2 -28
- package/lib/cjs/datePicker/monthsGridFoundation.d.ts +18 -13
- package/lib/cjs/datePicker/monthsGridFoundation.js +70 -247
- package/lib/cjs/datePicker/variables.scss +13 -4
- package/lib/cjs/datePicker/yearAndMonthFoundation.d.ts +68 -13
- package/lib/cjs/datePicker/yearAndMonthFoundation.js +55 -42
- package/lib/cjs/descriptions/constants.d.ts +1 -0
- package/lib/cjs/descriptions/constants.js +3 -4
- package/lib/cjs/descriptions/descriptions.css +15 -0
- package/lib/cjs/descriptions/descriptions.scss +20 -0
- package/lib/cjs/descriptions/foundation.d.ts +7 -0
- package/lib/cjs/descriptions/foundation.js +45 -0
- package/lib/cjs/descriptions/variables.scss +10 -0
- package/lib/cjs/divider/constants.js +1 -3
- package/lib/cjs/dropdown/constants.js +4 -7
- package/lib/cjs/dropdown/dropdown.css +4 -0
- package/lib/cjs/dropdown/dropdown.scss +5 -0
- package/lib/cjs/dropdown/foundation.js +9 -25
- package/lib/cjs/dropdown/menuFoundation.js +9 -28
- package/lib/cjs/empty/constants.js +1 -3
- package/lib/cjs/form/constants.d.ts +1 -0
- package/lib/cjs/form/constants.js +3 -4
- package/lib/cjs/form/form.css +4 -0
- package/lib/cjs/form/form.scss +5 -2
- package/lib/cjs/form/foundation.d.ts +4 -4
- package/lib/cjs/form/foundation.js +84 -214
- package/lib/cjs/form/interface.d.ts +10 -10
- package/lib/cjs/form/utils.d.ts +10 -1
- package/lib/cjs/form/utils.js +85 -93
- package/lib/cjs/form/variables.scss +3 -0
- package/lib/cjs/grid/constants.js +1 -3
- package/lib/cjs/grid/grid.css +1 -1
- package/lib/cjs/grid/grid.scss +1 -1
- package/lib/cjs/highlight/constants.js +1 -3
- package/lib/cjs/icons/constants.js +1 -3
- package/lib/cjs/image/constants.d.ts +4 -1
- package/lib/cjs/image/constants.js +7 -5
- package/lib/cjs/image/image.css +4 -2
- package/lib/cjs/image/image.scss +9 -5
- package/lib/cjs/image/imageFoundation.js +4 -18
- package/lib/cjs/image/previewFooterFoundation.d.ts +0 -1
- package/lib/cjs/image/previewFooterFoundation.js +0 -14
- package/lib/cjs/image/previewFoundation.js +0 -11
- package/lib/cjs/image/previewImageFoundation.d.ts +9 -24
- package/lib/cjs/image/previewImageFoundation.js +79 -164
- package/lib/cjs/image/previewInnerFoundation.d.ts +19 -15
- package/lib/cjs/image/previewInnerFoundation.js +108 -114
- package/lib/cjs/image/utils.d.ts +1 -1
- package/lib/cjs/image/utils.js +46 -35
- package/lib/cjs/image/variables.scss +1 -1
- package/lib/cjs/input/constants.js +1 -3
- package/lib/cjs/input/foundation.js +19 -104
- package/lib/cjs/input/input.css +45 -1
- package/lib/cjs/input/input.scss +48 -3
- package/lib/cjs/input/textarea.css +20 -0
- package/lib/cjs/input/textarea.scss +34 -0
- package/lib/cjs/input/textareaFoundation.d.ts +1 -1
- package/lib/cjs/input/textareaFoundation.js +58 -101
- package/lib/cjs/input/util/calculateNodeHeight.js +6 -18
- package/lib/cjs/input/util/getSizingData.js +7 -11
- package/lib/cjs/input/variables.scss +7 -0
- package/lib/cjs/inputNumber/constants.js +0 -2
- package/lib/cjs/inputNumber/foundation.js +28 -197
- package/lib/cjs/inputNumber/inputNumber.css +4 -0
- package/lib/cjs/inputNumber/inputNumber.scss +9 -0
- package/lib/cjs/layout/constants.js +1 -3
- package/lib/cjs/list/constants.js +1 -3
- package/lib/cjs/modal/constants.js +1 -3
- package/lib/cjs/modal/modal.css +8 -0
- package/lib/cjs/modal/modal.scss +10 -1
- package/lib/cjs/modal/modalContentFoundation.js +0 -20
- package/lib/cjs/modal/modalFoundation.d.ts +8 -4
- package/lib/cjs/modal/modalFoundation.js +40 -15
- package/lib/cjs/modal/variables.scss +6 -1
- package/lib/cjs/navigation/NavItem.js +0 -12
- package/lib/cjs/navigation/constants.js +1 -4
- package/lib/cjs/navigation/foundation.js +3 -70
- package/lib/cjs/navigation/itemFoundation.js +3 -22
- package/lib/cjs/navigation/subNavFoundation.js +7 -42
- package/lib/cjs/notification/constants.js +3 -6
- package/lib/cjs/notification/notification.css +18 -0
- package/lib/cjs/notification/notification.scss +21 -1
- package/lib/cjs/notification/notificationFoundation.d.ts +6 -6
- package/lib/cjs/notification/notificationFoundation.js +0 -16
- package/lib/cjs/notification/notificationListFoundation.d.ts +4 -1
- package/lib/cjs/notification/notificationListFoundation.js +15 -18
- package/lib/cjs/overflowList/constants.d.ts +6 -4
- package/lib/cjs/overflowList/constants.js +3 -3
- package/lib/cjs/overflowList/foundation.d.ts +3 -1
- package/lib/cjs/overflowList/foundation.js +59 -68
- package/lib/cjs/pagination/constants.js +1 -3
- package/lib/cjs/pagination/foundation.d.ts +5 -3
- package/lib/cjs/pagination/foundation.js +36 -93
- package/lib/cjs/pagination/pagination.css +23 -0
- package/lib/cjs/pagination/pagination.scss +29 -0
- package/lib/cjs/pagination/variables.scss +1 -0
- package/lib/cjs/popconfirm/constants.js +2 -4
- package/lib/cjs/popconfirm/popconfirm.css +4 -24
- package/lib/cjs/popconfirm/popconfirm.scss +4 -16
- package/lib/cjs/popconfirm/popconfirmFoundation.d.ts +4 -0
- package/lib/cjs/popconfirm/popconfirmFoundation.js +17 -19
- package/lib/cjs/popconfirm/rtl.scss +0 -13
- package/lib/cjs/popconfirm/variables.scss +0 -4
- package/lib/cjs/popover/constants.d.ts +1 -1
- package/lib/cjs/popover/constants.js +3 -6
- package/lib/cjs/popover/popover.css +2 -0
- package/lib/cjs/popover/popover.scss +2 -0
- package/lib/cjs/progress/constants.js +1 -3
- package/lib/cjs/progress/generates.d.ts +2 -2
- package/lib/cjs/progress/generates.js +33 -74
- package/lib/cjs/radio/constants.js +13 -15
- package/lib/cjs/radio/radio.css +3 -0
- package/lib/cjs/radio/radio.scss +6 -3
- package/lib/cjs/radio/radioFoundation.js +0 -14
- package/lib/cjs/radio/radioGroupFoundation.js +3 -23
- package/lib/cjs/radio/radioInnerFoundation.js +1 -19
- package/lib/cjs/radio/variables.scss +4 -0
- package/lib/cjs/rating/constants.js +1 -3
- package/lib/cjs/rating/foundation.js +10 -62
- package/lib/cjs/scrollList/constants.js +2 -4
- package/lib/cjs/scrollList/foundation.js +0 -4
- package/lib/cjs/scrollList/itemFoundation.js +8 -61
- package/lib/cjs/scrollList/scrollTo.js +2 -5
- package/lib/cjs/select/constants.js +3 -6
- package/lib/cjs/select/foundation.d.ts +8 -6
- package/lib/cjs/select/foundation.js +172 -434
- package/lib/cjs/select/option.scss +1 -1
- package/lib/cjs/select/optionFoundation.js +2 -14
- package/lib/cjs/select/select.css +50 -0
- package/lib/cjs/select/select.scss +74 -5
- package/lib/cjs/select/variables.scss +9 -6
- package/lib/cjs/sideSheet/constants.js +2 -4
- package/lib/cjs/sideSheet/sideSheet.css +30 -0
- package/lib/cjs/sideSheet/sideSheet.scss +38 -0
- package/lib/cjs/sideSheet/sideSheetFoundation.d.ts +1 -0
- package/lib/cjs/sideSheet/sideSheetFoundation.js +0 -18
- package/lib/cjs/sideSheet/variables.scss +7 -0
- package/lib/cjs/skeleton/constants.js +1 -3
- package/lib/cjs/skeleton/skeleton.css +3 -2
- package/lib/cjs/skeleton/skeleton.scss +1 -0
- package/lib/cjs/skeleton/variables.scss +2 -2
- package/lib/cjs/slider/constants.d.ts +1 -0
- package/lib/cjs/slider/constants.js +8 -9
- package/lib/cjs/slider/foundation.d.ts +13 -2
- package/lib/cjs/slider/foundation.js +30 -226
- package/lib/cjs/slider/slider.css +25 -11
- package/lib/cjs/slider/slider.scss +16 -1
- package/lib/cjs/slider/variables.scss +15 -9
- package/lib/cjs/space/constants.js +1 -3
- package/lib/cjs/spin/constants.js +1 -3
- package/lib/cjs/spin/foundation.js +3 -13
- package/lib/cjs/spin/spin.css +3 -0
- package/lib/cjs/spin/spin.scss +3 -0
- package/lib/cjs/steps/bacisSteps.scss +10 -3
- package/lib/cjs/steps/constants.js +2 -4
- package/lib/cjs/steps/fillSteps.scss +7 -7
- package/lib/cjs/steps/steps.css +27 -22
- package/lib/cjs/steps/variables.scss +3 -3
- package/lib/cjs/switch/constants.js +13 -15
- package/lib/cjs/switch/foundation.js +1 -21
- package/lib/cjs/switch/switch.css +10 -0
- package/lib/cjs/switch/switch.scss +13 -2
- package/lib/cjs/table/bodyFoundation.js +1 -34
- package/lib/cjs/table/cellFoundation.js +0 -5
- package/lib/cjs/table/constants.d.ts +0 -1
- package/lib/cjs/table/constants.js +13 -18
- package/lib/cjs/table/foundation.d.ts +26 -16
- package/lib/cjs/table/foundation.js +79 -308
- package/lib/cjs/table/rtl.scss +33 -2
- package/lib/cjs/table/table.css +100 -64
- package/lib/cjs/table/table.scss +66 -8
- package/lib/cjs/table/tableRowFoundation.js +0 -12
- package/lib/cjs/table/tableSelectionCellFoundation.js +0 -6
- package/lib/cjs/table/utils.d.ts +6 -4
- package/lib/cjs/table/utils.js +27 -160
- package/lib/cjs/table/variables.scss +6 -3
- package/lib/cjs/tabs/constants.js +21 -23
- package/lib/cjs/tabs/foundation.js +2 -40
- package/lib/cjs/tabs/tabs.css +207 -7
- package/lib/cjs/tabs/tabs.scss +339 -24
- package/lib/cjs/tag/constants.js +1 -4
- package/lib/cjs/tag/tag.css +34 -1
- package/lib/cjs/tag/tag.scss +43 -4
- package/lib/cjs/tag/variables.scss +5 -0
- package/lib/cjs/tagInput/constants.js +1 -3
- package/lib/cjs/tagInput/foundation.d.ts +7 -4
- package/lib/cjs/tagInput/foundation.js +64 -88
- package/lib/cjs/tagInput/tagInput.css +35 -9
- package/lib/cjs/tagInput/tagInput.scss +41 -12
- package/lib/cjs/tagInput/utils/getSplitedArray.js +0 -11
- package/lib/cjs/tagInput/variables.scss +2 -0
- package/lib/cjs/timePicker/ComboxFoundation.js +6 -41
- package/lib/cjs/timePicker/constants.js +3 -6
- package/lib/cjs/timePicker/foundation.d.ts +2 -2
- package/lib/cjs/timePicker/foundation.js +28 -107
- package/lib/cjs/timePicker/inputFoundation.js +4 -25
- package/lib/cjs/timePicker/timePicker.css +15 -0
- package/lib/cjs/timePicker/timePicker.scss +22 -1
- package/lib/cjs/timePicker/utils/index.js +12 -51
- package/lib/cjs/timePicker/utils/localeDate.js +0 -10
- package/lib/cjs/timeline/constants.js +2 -4
- package/lib/cjs/toast/animation.scss +3 -0
- package/lib/cjs/toast/constants.js +3 -6
- package/lib/cjs/toast/toast.css +35 -3
- package/lib/cjs/toast/toast.scss +43 -3
- package/lib/cjs/toast/toastFoundation.d.ts +5 -4
- package/lib/cjs/toast/toastFoundation.js +0 -14
- package/lib/cjs/toast/toastListFoundation.d.ts +5 -0
- package/lib/cjs/toast/toastListFoundation.js +10 -22
- package/lib/cjs/toast/variables.scss +14 -0
- package/lib/cjs/tooltip/constants.d.ts +1 -1
- package/lib/cjs/tooltip/constants.js +2 -4
- package/lib/cjs/tooltip/foundation.d.ts +5 -2
- package/lib/cjs/tooltip/foundation.js +143 -336
- package/lib/cjs/tooltip/tooltip.css +7 -0
- package/lib/cjs/tooltip/tooltip.scss +9 -0
- package/lib/cjs/transfer/constants.js +1 -3
- package/lib/cjs/transfer/foundation.d.ts +1 -1
- package/lib/cjs/transfer/foundation.js +4 -69
- package/lib/cjs/transfer/transfer.css +4 -0
- package/lib/cjs/transfer/transfer.scss +7 -0
- package/lib/cjs/transfer/transferUtils.js +5 -27
- package/lib/cjs/tree/constants.js +2 -4
- package/lib/cjs/tree/foundation.d.ts +14 -9
- package/lib/cjs/tree/foundation.js +60 -183
- package/lib/cjs/tree/rtl.scss +19 -11
- package/lib/cjs/tree/tree.css +147 -65
- package/lib/cjs/tree/tree.scss +112 -17
- package/lib/cjs/tree/treeUtil.d.ts +17 -8
- package/lib/cjs/tree/treeUtil.js +102 -195
- package/lib/cjs/tree/variables.scss +3 -2
- package/lib/cjs/treeSelect/constants.js +3 -5
- package/lib/cjs/treeSelect/foundation.d.ts +26 -13
- package/lib/cjs/treeSelect/foundation.js +153 -248
- package/lib/cjs/treeSelect/treeSelect.css +55 -10
- package/lib/cjs/treeSelect/treeSelect.scss +76 -20
- package/lib/cjs/treeSelect/variables.scss +4 -2
- package/lib/cjs/typography/constants.d.ts +1 -0
- package/lib/cjs/typography/constants.js +2 -3
- package/lib/cjs/typography/formatNumeral.d.ts +3 -3
- package/lib/cjs/typography/formatNumeral.js +22 -43
- package/lib/cjs/typography/typography.css +135 -2
- package/lib/cjs/typography/typography.scss +151 -8
- package/lib/cjs/typography/variables.scss +52 -0
- package/lib/cjs/upload/constants.js +2 -4
- package/lib/cjs/upload/fileCardFoundation.d.ts +9 -0
- package/lib/cjs/upload/fileCardFoundation.js +18 -0
- package/lib/cjs/upload/foundation.d.ts +14 -5
- package/lib/cjs/upload/foundation.js +107 -247
- package/lib/cjs/upload/upload.css +9 -0
- package/lib/cjs/upload/upload.scss +8 -0
- package/lib/cjs/upload/utils.js +14 -33
- package/lib/cjs/utils/Event.js +1 -21
- package/lib/cjs/utils/FocusHandle.d.ts +1 -1
- package/lib/cjs/utils/FocusHandle.js +6 -35
- package/lib/cjs/utils/Logger.js +0 -21
- package/lib/cjs/utils/Store.js +0 -10
- package/lib/cjs/utils/a11y.js +18 -43
- package/lib/cjs/utils/array.d.ts +2 -2
- package/lib/cjs/utils/array.js +2 -9
- package/lib/cjs/utils/arrayMove.js +0 -1
- package/lib/cjs/utils/classnames.js +0 -12
- package/lib/cjs/utils/date-fns-extra.d.ts +28 -17
- package/lib/cjs/utils/date-fns-extra.js +82 -51
- package/lib/cjs/utils/dom.d.ts +1 -1
- package/lib/cjs/utils/dom.js +0 -13
- package/lib/cjs/utils/function.js +0 -2
- package/lib/cjs/utils/getDataAttr.js +1 -3
- package/lib/cjs/utils/getHighlight.js +5 -26
- package/lib/cjs/utils/getMotionObjFromProps.js +4 -16
- package/lib/cjs/utils/index.js +0 -4
- package/lib/cjs/utils/isBothNaN.js +0 -2
- package/lib/cjs/utils/isElement.js +0 -1
- package/lib/cjs/utils/isEnterPress.js +0 -5
- package/lib/cjs/utils/isEscPress.js +0 -5
- package/lib/cjs/utils/isNullOrUndefined.js +0 -1
- package/lib/cjs/utils/isNumber.js +0 -1
- package/lib/cjs/utils/isObject.js +0 -1
- package/lib/cjs/utils/isPromise.js +0 -3
- package/lib/cjs/utils/isString.js +0 -1
- package/lib/cjs/utils/keyCode.js +0 -105
- package/lib/cjs/utils/log.js +0 -5
- package/lib/cjs/utils/number.js +0 -2
- package/lib/cjs/utils/object.d.ts +4 -4
- package/lib/cjs/utils/object.js +10 -36
- package/lib/cjs/utils/set.js +0 -8
- package/lib/cjs/utils/shallowEqualObjects.js +0 -7
- package/lib/cjs/utils/touchPolyfill.js +1 -8
- package/lib/cjs/utils/type.d.ts +3 -3
- package/lib/cjs/utils/uuid.js +4 -11
- package/lib/cjs/utils/warning.js +1 -2
- package/lib/es/anchor/anchor.css +5 -0
- package/lib/es/anchor/anchor.scss +6 -0
- package/lib/es/anchor/constants.js +1 -1
- package/lib/es/anchor/foundation.js +20 -73
- package/lib/es/anchor/linkFoundation.js +3 -12
- package/lib/es/anchor/variables.scss +4 -0
- package/lib/es/autoComplete/autoComplete.css +1 -0
- package/lib/es/autoComplete/autoComplete.scss +2 -0
- package/lib/es/autoComplete/constants.js +3 -3
- package/lib/es/autoComplete/foundation.d.ts +3 -1
- package/lib/es/autoComplete/foundation.js +37 -142
- package/lib/es/autoComplete/optionFoundation.js +2 -10
- package/lib/es/avatar/animation.scss +19 -0
- package/lib/es/avatar/avatar.css +261 -0
- package/lib/es/avatar/avatar.scss +314 -1
- package/lib/es/avatar/constants.js +1 -2
- package/lib/es/avatar/foundation.d.ts +3 -0
- package/lib/es/avatar/foundation.js +21 -14
- package/lib/es/avatar/variables.scss +66 -10
- package/lib/es/backtop/constants.js +1 -1
- package/lib/es/backtop/foundation.d.ts +2 -2
- package/lib/es/backtop/foundation.js +0 -16
- package/lib/es/badge/badge.css +10 -0
- package/lib/es/badge/badge.scss +13 -0
- package/lib/es/badge/constants.js +2 -2
- package/lib/es/badge/variables.scss +4 -0
- package/lib/es/banner/constants.js +1 -1
- package/lib/es/banner/foundation.js +0 -3
- package/lib/es/base/constants.js +2 -2
- package/lib/es/base/foundation.d.ts +3 -3
- package/lib/es/base/foundation.js +11 -44
- package/lib/es/breadcrumb/breadcrumb.css +5 -3
- package/lib/es/breadcrumb/breadcrumb.scss +10 -4
- package/lib/es/breadcrumb/constants.js +1 -1
- package/lib/es/breadcrumb/foundation.js +0 -8
- package/lib/es/breadcrumb/itemFoundation.js +0 -3
- package/lib/es/breadcrumb/variables.scss +4 -0
- package/lib/es/button/button.css +32 -5
- package/lib/es/button/button.scss +88 -21
- package/lib/es/button/constants.js +1 -1
- package/lib/es/button/iconButton.css +1 -0
- package/lib/es/button/iconButton.scss +1 -0
- package/lib/es/button/splitButtonGroup.scss +10 -9
- package/lib/es/button/variables.scss +13 -0
- package/lib/es/calendar/calendar.css +2 -2
- package/lib/es/calendar/calendar.scss +1 -1
- package/lib/es/calendar/constants.js +1 -1
- package/lib/es/calendar/eventUtil.d.ts +7 -6
- package/lib/es/calendar/eventUtil.js +15 -45
- package/lib/es/calendar/foundation.d.ts +4 -4
- package/lib/es/calendar/foundation.js +32 -122
- package/lib/es/card/constants.js +1 -1
- package/lib/es/carousel/carousel.css +4 -0
- package/lib/es/carousel/carousel.scss +4 -0
- package/lib/es/carousel/constants.js +9 -9
- package/lib/es/carousel/foundation.d.ts +2 -0
- package/lib/es/carousel/foundation.js +7 -47
- package/lib/es/cascader/cascader.css +45 -4
- package/lib/es/cascader/cascader.scss +66 -23
- package/lib/es/cascader/constants.d.ts +3 -0
- package/lib/es/cascader/constants.js +7 -5
- package/lib/es/cascader/foundation.d.ts +27 -8
- package/lib/es/cascader/foundation.js +125 -286
- package/lib/es/cascader/util.d.ts +9 -1
- package/lib/es/cascader/util.js +65 -24
- package/lib/es/cascader/variables.scss +5 -1
- package/lib/es/checkbox/checkbox.css +0 -1
- package/lib/es/checkbox/checkbox.scss +0 -1
- package/lib/es/checkbox/checkboxFoundation.js +1 -34
- package/lib/es/checkbox/checkboxGroupFoundation.js +1 -20
- package/lib/es/checkbox/constants.js +13 -13
- package/lib/es/collapse/constants.js +1 -1
- package/lib/es/collapse/foundation.d.ts +2 -1
- package/lib/es/collapse/foundation.js +2 -9
- package/lib/es/collapsible/constants.js +1 -1
- package/lib/es/collapsible/foundation.js +0 -7
- package/lib/es/datePicker/_utils/formatter.js +4 -8
- package/lib/es/datePicker/_utils/getDayOfWeek.d.ts +1 -1
- package/lib/es/datePicker/_utils/getDayOfWeek.js +0 -3
- package/lib/es/datePicker/_utils/getDefaultFormatToken.d.ts +1 -0
- package/lib/es/datePicker/_utils/getDefaultFormatToken.js +2 -3
- package/lib/es/datePicker/_utils/getDefaultPickerDate.d.ts +1 -1
- package/lib/es/datePicker/_utils/getDefaultPickerDate.js +0 -10
- package/lib/es/datePicker/_utils/getFullDateOffset.js +0 -3
- package/lib/es/datePicker/_utils/getInsetInputFormatToken.js +2 -5
- package/lib/es/datePicker/_utils/getInsetInputValueFromInsetInputStr.js +1 -5
- package/lib/es/datePicker/_utils/getMonthTable.d.ts +1 -1
- package/lib/es/datePicker/_utils/getMonthTable.js +8 -18
- package/lib/es/datePicker/_utils/getMonthsInYear.js +1 -2
- package/lib/es/datePicker/_utils/getYears.d.ts +1 -1
- package/lib/es/datePicker/_utils/getYears.js +9 -6
- package/lib/es/datePicker/_utils/isBetween.js +0 -1
- package/lib/es/datePicker/_utils/isValidTimeZone.d.ts +1 -0
- package/lib/es/datePicker/_utils/isValidTimeZone.js +3 -0
- package/lib/es/datePicker/_utils/parser.js +0 -8
- package/lib/es/datePicker/constants.d.ts +1 -1
- package/lib/es/datePicker/constants.js +28 -28
- package/lib/es/datePicker/datePicker.css +88 -13
- package/lib/es/datePicker/datePicker.scss +170 -21
- package/lib/es/datePicker/foundation.d.ts +79 -50
- package/lib/es/datePicker/foundation.js +173 -426
- package/lib/es/datePicker/inputFoundation.d.ts +15 -6
- package/lib/es/datePicker/inputFoundation.js +35 -85
- package/lib/es/datePicker/monthFoundation.d.ts +1 -1
- package/lib/es/datePicker/monthFoundation.js +3 -22
- package/lib/es/datePicker/monthsGridFoundation.d.ts +18 -13
- package/lib/es/datePicker/monthsGridFoundation.js +70 -231
- package/lib/es/datePicker/variables.scss +13 -4
- package/lib/es/datePicker/yearAndMonthFoundation.d.ts +68 -13
- package/lib/es/datePicker/yearAndMonthFoundation.js +55 -37
- package/lib/es/descriptions/constants.d.ts +1 -0
- package/lib/es/descriptions/constants.js +3 -2
- package/lib/es/descriptions/descriptions.css +15 -0
- package/lib/es/descriptions/descriptions.scss +20 -0
- package/lib/es/descriptions/foundation.d.ts +7 -0
- package/lib/es/descriptions/foundation.js +37 -0
- package/lib/es/descriptions/variables.scss +10 -0
- package/lib/es/divider/constants.js +1 -1
- package/lib/es/dropdown/constants.js +4 -4
- package/lib/es/dropdown/dropdown.css +4 -0
- package/lib/es/dropdown/dropdown.scss +5 -0
- package/lib/es/dropdown/foundation.js +9 -20
- package/lib/es/dropdown/menuFoundation.js +9 -23
- package/lib/es/empty/constants.js +1 -1
- package/lib/es/form/constants.d.ts +1 -0
- package/lib/es/form/constants.js +3 -2
- package/lib/es/form/form.css +4 -0
- package/lib/es/form/form.scss +5 -2
- package/lib/es/form/foundation.d.ts +4 -4
- package/lib/es/form/foundation.js +84 -203
- package/lib/es/form/interface.d.ts +10 -10
- package/lib/es/form/utils.d.ts +10 -1
- package/lib/es/form/utils.js +83 -86
- package/lib/es/form/variables.scss +3 -0
- package/lib/es/grid/constants.js +1 -1
- package/lib/es/grid/grid.css +1 -1
- package/lib/es/grid/grid.scss +1 -1
- package/lib/es/highlight/constants.js +1 -1
- package/lib/es/icons/constants.js +1 -1
- package/lib/es/image/constants.d.ts +4 -1
- package/lib/es/image/constants.js +5 -2
- package/lib/es/image/image.css +4 -2
- package/lib/es/image/image.scss +9 -5
- package/lib/es/image/imageFoundation.js +4 -13
- package/lib/es/image/previewFooterFoundation.d.ts +0 -1
- package/lib/es/image/previewFooterFoundation.js +0 -10
- package/lib/es/image/previewFoundation.js +0 -7
- package/lib/es/image/previewImageFoundation.d.ts +9 -24
- package/lib/es/image/previewImageFoundation.js +79 -156
- package/lib/es/image/previewInnerFoundation.d.ts +19 -15
- package/lib/es/image/previewInnerFoundation.js +108 -107
- package/lib/es/image/utils.d.ts +1 -1
- package/lib/es/image/utils.js +46 -27
- package/lib/es/image/variables.scss +1 -1
- package/lib/es/input/constants.js +1 -1
- package/lib/es/input/foundation.js +19 -96
- package/lib/es/input/input.css +45 -1
- package/lib/es/input/input.scss +48 -3
- package/lib/es/input/textarea.css +20 -0
- package/lib/es/input/textarea.scss +34 -0
- package/lib/es/input/textareaFoundation.d.ts +1 -1
- package/lib/es/input/textareaFoundation.js +58 -91
- package/lib/es/input/util/calculateNodeHeight.js +6 -18
- package/lib/es/input/util/getSizingData.js +7 -11
- package/lib/es/input/variables.scss +7 -0
- package/lib/es/inputNumber/foundation.js +28 -188
- package/lib/es/inputNumber/inputNumber.css +4 -0
- package/lib/es/inputNumber/inputNumber.scss +9 -0
- package/lib/es/layout/constants.js +1 -1
- package/lib/es/list/constants.js +1 -1
- package/lib/es/modal/constants.js +1 -1
- package/lib/es/modal/modal.css +8 -0
- package/lib/es/modal/modal.scss +10 -1
- package/lib/es/modal/modalContentFoundation.js +0 -15
- package/lib/es/modal/modalFoundation.d.ts +8 -4
- package/lib/es/modal/modalFoundation.js +40 -11
- package/lib/es/modal/variables.scss +6 -1
- package/lib/es/navigation/NavItem.js +0 -8
- package/lib/es/navigation/constants.js +2 -2
- package/lib/es/navigation/foundation.js +3 -63
- package/lib/es/navigation/itemFoundation.js +3 -19
- package/lib/es/navigation/subNavFoundation.js +7 -38
- package/lib/es/notification/constants.js +4 -4
- package/lib/es/notification/notification.css +18 -0
- package/lib/es/notification/notification.scss +21 -1
- package/lib/es/notification/notificationFoundation.d.ts +6 -6
- package/lib/es/notification/notificationFoundation.js +0 -11
- package/lib/es/notification/notificationListFoundation.d.ts +4 -1
- package/lib/es/notification/notificationListFoundation.js +15 -14
- package/lib/es/overflowList/constants.d.ts +6 -4
- package/lib/es/overflowList/constants.js +3 -1
- package/lib/es/overflowList/foundation.d.ts +3 -1
- package/lib/es/overflowList/foundation.js +59 -64
- package/lib/es/pagination/constants.js +1 -1
- package/lib/es/pagination/foundation.d.ts +5 -3
- package/lib/es/pagination/foundation.js +36 -90
- package/lib/es/pagination/pagination.css +23 -0
- package/lib/es/pagination/pagination.scss +29 -0
- package/lib/es/pagination/variables.scss +1 -0
- package/lib/es/popconfirm/constants.js +2 -2
- package/lib/es/popconfirm/popconfirm.css +4 -24
- package/lib/es/popconfirm/popconfirm.scss +4 -16
- package/lib/es/popconfirm/popconfirmFoundation.d.ts +4 -0
- package/lib/es/popconfirm/popconfirmFoundation.js +17 -14
- package/lib/es/popconfirm/rtl.scss +0 -13
- package/lib/es/popconfirm/variables.scss +0 -4
- package/lib/es/popover/constants.d.ts +1 -1
- package/lib/es/popover/constants.js +3 -3
- package/lib/es/popover/popover.css +2 -0
- package/lib/es/popover/popover.scss +2 -0
- package/lib/es/progress/constants.js +1 -1
- package/lib/es/progress/generates.d.ts +2 -2
- package/lib/es/progress/generates.js +33 -73
- package/lib/es/radio/constants.js +13 -13
- package/lib/es/radio/radio.css +3 -0
- package/lib/es/radio/radio.scss +6 -3
- package/lib/es/radio/radioFoundation.js +0 -9
- package/lib/es/radio/radioGroupFoundation.js +3 -19
- package/lib/es/radio/radioInnerFoundation.js +1 -15
- package/lib/es/radio/variables.scss +4 -0
- package/lib/es/rating/constants.js +1 -1
- package/lib/es/rating/foundation.js +10 -55
- package/lib/es/scrollList/constants.js +2 -2
- package/lib/es/scrollList/itemFoundation.js +8 -60
- package/lib/es/scrollList/scrollTo.js +2 -4
- package/lib/es/select/constants.js +3 -3
- package/lib/es/select/foundation.d.ts +8 -6
- package/lib/es/select/foundation.js +172 -420
- package/lib/es/select/option.scss +1 -1
- package/lib/es/select/optionFoundation.js +2 -10
- package/lib/es/select/select.css +50 -0
- package/lib/es/select/select.scss +74 -5
- package/lib/es/select/variables.scss +9 -6
- package/lib/es/sideSheet/constants.js +2 -2
- package/lib/es/sideSheet/sideSheet.css +30 -0
- package/lib/es/sideSheet/sideSheet.scss +38 -0
- package/lib/es/sideSheet/sideSheetFoundation.d.ts +1 -0
- package/lib/es/sideSheet/sideSheetFoundation.js +0 -12
- package/lib/es/sideSheet/variables.scss +7 -0
- package/lib/es/skeleton/constants.js +1 -1
- package/lib/es/skeleton/skeleton.css +3 -2
- package/lib/es/skeleton/skeleton.scss +1 -0
- package/lib/es/skeleton/variables.scss +2 -2
- package/lib/es/slider/constants.d.ts +1 -0
- package/lib/es/slider/constants.js +8 -7
- package/lib/es/slider/foundation.d.ts +13 -2
- package/lib/es/slider/foundation.js +30 -219
- package/lib/es/slider/slider.css +25 -11
- package/lib/es/slider/slider.scss +16 -1
- package/lib/es/slider/variables.scss +15 -9
- package/lib/es/space/constants.js +1 -1
- package/lib/es/spin/constants.js +1 -1
- package/lib/es/spin/foundation.js +3 -11
- package/lib/es/spin/spin.css +3 -0
- package/lib/es/spin/spin.scss +3 -0
- package/lib/es/steps/bacisSteps.scss +10 -3
- package/lib/es/steps/constants.js +2 -2
- package/lib/es/steps/fillSteps.scss +7 -7
- package/lib/es/steps/steps.css +27 -22
- package/lib/es/steps/variables.scss +3 -3
- package/lib/es/switch/constants.js +13 -13
- package/lib/es/switch/foundation.js +1 -16
- package/lib/es/switch/switch.css +10 -0
- package/lib/es/switch/switch.scss +13 -2
- package/lib/es/table/bodyFoundation.js +1 -25
- package/lib/es/table/cellFoundation.js +0 -1
- package/lib/es/table/constants.d.ts +0 -1
- package/lib/es/table/constants.js +13 -16
- package/lib/es/table/foundation.d.ts +26 -16
- package/lib/es/table/foundation.js +79 -313
- package/lib/es/table/rtl.scss +33 -2
- package/lib/es/table/table.css +100 -64
- package/lib/es/table/table.scss +66 -8
- package/lib/es/table/tableRowFoundation.js +1 -9
- package/lib/es/table/tableSelectionCellFoundation.js +0 -2
- package/lib/es/table/utils.d.ts +6 -4
- package/lib/es/table/utils.js +25 -119
- package/lib/es/table/variables.scss +6 -3
- package/lib/es/tabs/constants.js +21 -21
- package/lib/es/tabs/foundation.js +2 -35
- package/lib/es/tabs/tabs.css +207 -7
- package/lib/es/tabs/tabs.scss +339 -24
- package/lib/es/tag/constants.js +1 -2
- package/lib/es/tag/tag.css +34 -1
- package/lib/es/tag/tag.scss +43 -4
- package/lib/es/tag/variables.scss +5 -0
- package/lib/es/tagInput/constants.js +1 -1
- package/lib/es/tagInput/foundation.d.ts +7 -4
- package/lib/es/tagInput/foundation.js +64 -78
- package/lib/es/tagInput/tagInput.css +35 -9
- package/lib/es/tagInput/tagInput.scss +41 -12
- package/lib/es/tagInput/utils/getSplitedArray.js +0 -7
- package/lib/es/tagInput/variables.scss +2 -0
- package/lib/es/timePicker/ComboxFoundation.js +6 -32
- package/lib/es/timePicker/constants.js +3 -3
- package/lib/es/timePicker/foundation.d.ts +2 -2
- package/lib/es/timePicker/foundation.js +30 -101
- package/lib/es/timePicker/inputFoundation.js +4 -22
- package/lib/es/timePicker/timePicker.css +15 -0
- package/lib/es/timePicker/timePicker.scss +22 -1
- package/lib/es/timePicker/utils/index.js +12 -30
- package/lib/es/timePicker/utils/localeDate.js +0 -8
- package/lib/es/timeline/constants.js +2 -2
- package/lib/es/toast/animation.scss +3 -0
- package/lib/es/toast/constants.js +4 -4
- package/lib/es/toast/toast.css +35 -3
- package/lib/es/toast/toast.scss +43 -3
- package/lib/es/toast/toastFoundation.d.ts +5 -4
- package/lib/es/toast/toastFoundation.js +0 -9
- package/lib/es/toast/toastListFoundation.d.ts +5 -0
- package/lib/es/toast/toastListFoundation.js +10 -18
- package/lib/es/toast/variables.scss +14 -0
- package/lib/es/tooltip/constants.d.ts +1 -1
- package/lib/es/tooltip/constants.js +2 -2
- package/lib/es/tooltip/foundation.d.ts +5 -2
- package/lib/es/tooltip/foundation.js +143 -332
- package/lib/es/tooltip/tooltip.css +7 -0
- package/lib/es/tooltip/tooltip.scss +9 -0
- package/lib/es/transfer/constants.js +1 -1
- package/lib/es/transfer/foundation.d.ts +1 -1
- package/lib/es/transfer/foundation.js +5 -62
- package/lib/es/transfer/transfer.css +4 -0
- package/lib/es/transfer/transfer.scss +7 -0
- package/lib/es/transfer/transferUtils.js +5 -21
- package/lib/es/tree/constants.js +2 -2
- package/lib/es/tree/foundation.d.ts +14 -9
- package/lib/es/tree/foundation.js +60 -176
- package/lib/es/tree/rtl.scss +19 -11
- package/lib/es/tree/tree.css +147 -65
- package/lib/es/tree/tree.scss +112 -17
- package/lib/es/tree/treeUtil.d.ts +17 -8
- package/lib/es/tree/treeUtil.js +102 -161
- package/lib/es/tree/variables.scss +3 -2
- package/lib/es/treeSelect/constants.js +3 -3
- package/lib/es/treeSelect/foundation.d.ts +26 -13
- package/lib/es/treeSelect/foundation.js +155 -235
- package/lib/es/treeSelect/treeSelect.css +55 -10
- package/lib/es/treeSelect/treeSelect.scss +76 -20
- package/lib/es/treeSelect/variables.scss +4 -2
- package/lib/es/typography/constants.d.ts +1 -0
- package/lib/es/typography/constants.js +2 -1
- package/lib/es/typography/formatNumeral.d.ts +3 -3
- package/lib/es/typography/formatNumeral.js +22 -40
- package/lib/es/typography/typography.css +135 -2
- package/lib/es/typography/typography.scss +151 -8
- package/lib/es/typography/variables.scss +52 -0
- package/lib/es/upload/constants.js +2 -2
- package/lib/es/upload/fileCardFoundation.d.ts +9 -0
- package/lib/es/upload/fileCardFoundation.js +10 -0
- package/lib/es/upload/foundation.d.ts +14 -5
- package/lib/es/upload/foundation.js +107 -240
- package/lib/es/upload/upload.css +9 -0
- package/lib/es/upload/upload.scss +8 -0
- package/lib/es/upload/utils.js +14 -28
- package/lib/es/utils/Event.js +1 -17
- package/lib/es/utils/FocusHandle.d.ts +1 -1
- package/lib/es/utils/FocusHandle.js +6 -32
- package/lib/es/utils/Logger.js +0 -20
- package/lib/es/utils/Store.js +0 -9
- package/lib/es/utils/a11y.js +18 -31
- package/lib/es/utils/array.d.ts +2 -2
- package/lib/es/utils/array.js +2 -7
- package/lib/es/utils/classnames.js +0 -10
- package/lib/es/utils/date-fns-extra.d.ts +28 -17
- package/lib/es/utils/date-fns-extra.js +78 -40
- package/lib/es/utils/dom.d.ts +1 -1
- package/lib/es/utils/dom.js +0 -9
- package/lib/es/utils/function.js +0 -1
- package/lib/es/utils/getDataAttr.js +1 -2
- package/lib/es/utils/getHighlight.js +5 -26
- package/lib/es/utils/getMotionObjFromProps.js +4 -12
- package/lib/es/utils/isBothNaN.js +0 -1
- package/lib/es/utils/isEnterPress.js +0 -2
- package/lib/es/utils/isEscPress.js +0 -2
- package/lib/es/utils/keyCode.js +0 -104
- package/lib/es/utils/log.js +0 -3
- package/lib/es/utils/object.d.ts +4 -4
- package/lib/es/utils/object.js +10 -29
- package/lib/es/utils/set.js +0 -5
- package/lib/es/utils/shallowEqualObjects.js +0 -6
- package/lib/es/utils/touchPolyfill.js +1 -6
- package/lib/es/utils/type.d.ts +3 -3
- package/lib/es/utils/uuid.js +4 -10
- package/lib/es/utils/warning.js +1 -1
- package/modal/modal.scss +10 -1
- package/modal/modalContentFoundation.ts +3 -3
- package/modal/modalFoundation.ts +32 -7
- package/modal/variables.scss +6 -1
- package/navigation/NavItem.ts +0 -2
- package/navigation/foundation.ts +1 -3
- package/navigation/itemFoundation.ts +0 -1
- package/navigation/subNavFoundation.ts +3 -2
- package/notification/notification.scss +21 -1
- package/notification/notificationFoundation.ts +3 -3
- package/notification/notificationListFoundation.ts +14 -4
- package/overflowList/constants.ts +4 -2
- package/overflowList/foundation.ts +51 -33
- package/package.json +6 -5
- package/pagination/foundation.ts +13 -3
- package/pagination/pagination.scss +29 -0
- package/pagination/variables.scss +1 -0
- package/popconfirm/popconfirm.scss +4 -16
- package/popconfirm/popconfirmFoundation.ts +20 -2
- package/popconfirm/rtl.scss +0 -13
- package/popconfirm/variables.scss +0 -4
- package/popover/constants.ts +1 -1
- package/popover/popover.scss +2 -0
- package/radio/radio.scss +6 -3
- package/radio/radioFoundation.ts +1 -1
- package/radio/radioGroupFoundation.ts +0 -1
- package/radio/radioInnerFoundation.ts +0 -1
- package/radio/variables.scss +4 -0
- package/rating/foundation.ts +0 -1
- package/select/foundation.ts +70 -32
- package/select/option.scss +1 -1
- package/select/optionFoundation.ts +0 -2
- package/select/select.scss +74 -5
- package/select/variables.scss +9 -6
- package/sideSheet/sideSheet.scss +38 -0
- package/sideSheet/sideSheetFoundation.ts +3 -2
- package/sideSheet/variables.scss +7 -0
- package/skeleton/skeleton.scss +1 -0
- package/skeleton/variables.scss +2 -2
- package/slider/constants.ts +1 -0
- package/slider/foundation.ts +25 -29
- package/slider/slider.scss +16 -1
- package/slider/variables.scss +15 -9
- package/spin/spin.scss +3 -0
- package/steps/bacisSteps.scss +10 -3
- package/steps/fillSteps.scss +7 -7
- package/steps/variables.scss +3 -3
- package/switch/foundation.ts +2 -4
- package/switch/switch.scss +13 -2
- package/table/bodyFoundation.ts +0 -1
- package/table/constants.ts +0 -3
- package/table/foundation.ts +33 -31
- package/table/rtl.scss +33 -2
- package/table/table.scss +66 -8
- package/table/tableRowFoundation.ts +0 -1
- package/table/utils.ts +23 -43
- package/table/variables.scss +6 -3
- package/tabs/foundation.ts +2 -2
- package/tabs/tabs.scss +339 -24
- package/tag/constants.ts +19 -2
- package/tag/tag.scss +43 -4
- package/tag/variables.scss +5 -0
- package/tagInput/foundation.ts +57 -3
- package/tagInput/tagInput.scss +41 -12
- package/tagInput/variables.scss +2 -0
- package/timePicker/foundation.ts +27 -18
- package/timePicker/inputFoundation.ts +0 -2
- package/timePicker/timePicker.scss +22 -1
- package/timePicker/utils/index.ts +3 -2
- package/toast/animation.scss +3 -0
- package/toast/toast.scss +43 -3
- package/toast/toastFoundation.ts +4 -6
- package/toast/toastListFoundation.ts +13 -3
- package/toast/variables.scss +14 -0
- package/tooltip/constants.ts +1 -1
- package/tooltip/foundation.ts +96 -58
- package/tooltip/tooltip.scss +9 -0
- package/transfer/foundation.ts +0 -1
- package/transfer/transfer.scss +7 -0
- package/tree/foundation.ts +38 -33
- package/tree/rtl.scss +19 -11
- package/tree/tree.scss +112 -17
- package/tree/treeUtil.ts +64 -32
- package/tree/variables.scss +3 -2
- package/treeSelect/foundation.ts +132 -70
- package/treeSelect/treeSelect.scss +76 -20
- package/treeSelect/variables.scss +4 -2
- package/typography/constants.ts +1 -0
- package/typography/formatNumeral.ts +2 -5
- package/typography/typography.scss +151 -8
- package/typography/variables.scss +52 -0
- package/upload/fileCardFoundation.ts +17 -0
- package/upload/foundation.ts +85 -10
- package/upload/upload.scss +8 -0
- package/utils/Event.ts +0 -1
- package/utils/a11y.ts +6 -6
- package/utils/array.ts +4 -4
- package/utils/date-fns-extra.ts +83 -22
- package/utils/function.ts +0 -1
- package/utils/getDataAttr.ts +1 -1
- package/utils/getMotionObjFromProps.ts +3 -2
- package/utils/object.ts +0 -3
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import _difference from "lodash/difference";
|
|
2
2
|
import _isEmpty from "lodash/isEmpty";
|
|
3
|
-
import _cloneDeep from "lodash/cloneDeep";
|
|
4
3
|
import _isString from "lodash/isString";
|
|
5
4
|
import _isUndefined from "lodash/isUndefined";
|
|
6
5
|
import _get from "lodash/get";
|
|
@@ -8,14 +7,24 @@ import _isFunction from "lodash/isFunction";
|
|
|
8
7
|
import _isNumber from "lodash/isNumber";
|
|
9
8
|
import { strings } from '../treeSelect/constants';
|
|
10
9
|
import BaseFoundation from '../base/foundation';
|
|
11
|
-
import { flattenTreeData, findDescendantKeys, findAncestorKeys, filter,
|
|
12
|
-
import isEnterPress from '../utils/isEnterPress';
|
|
13
|
-
|
|
10
|
+
import { flattenTreeData, findDescendantKeys, findAncestorKeys, filter, normalizeKeyList, getMotionKeys, calcCheckedKeysForChecked, calcCheckedKeys, calcCheckedKeysForUnchecked, getValueOrKey } from '../tree/treeUtil';
|
|
11
|
+
import isEnterPress from '../utils/isEnterPress';
|
|
14
12
|
export default class TreeSelectFoundation extends BaseFoundation {
|
|
15
13
|
constructor(adapter) {
|
|
16
14
|
super(Object.assign({}, adapter));
|
|
15
|
+
this._registerClickOutsideHandler = e => {
|
|
16
|
+
this._adapter.registerClickOutsideHandler(e => {
|
|
17
|
+
this.handlerTriggerBlur(e);
|
|
18
|
+
this.close(e);
|
|
19
|
+
});
|
|
20
|
+
};
|
|
21
|
+
this.clearInputValue = () => {
|
|
22
|
+
const {
|
|
23
|
+
inputValue
|
|
24
|
+
} = this.getStates();
|
|
25
|
+
inputValue && this._adapter.updateInputValue('');
|
|
26
|
+
};
|
|
17
27
|
}
|
|
18
|
-
|
|
19
28
|
init() {
|
|
20
29
|
const {
|
|
21
30
|
searchAutoFocus,
|
|
@@ -24,28 +33,25 @@ export default class TreeSelectFoundation extends BaseFoundation {
|
|
|
24
33
|
} = this.getProps();
|
|
25
34
|
const triggerSearch = searchPosition === strings.SEARCH_POSITION_TRIGGER && filterTreeNode;
|
|
26
35
|
const triggerSearchAutoFocus = searchAutoFocus && triggerSearch;
|
|
27
|
-
|
|
28
36
|
this._setDropdownWidth();
|
|
29
|
-
|
|
30
37
|
const isOpen = (this.getProp('defaultOpen') || triggerSearchAutoFocus) && !this._isDisabled();
|
|
31
|
-
|
|
32
38
|
if (isOpen) {
|
|
33
39
|
this.open();
|
|
34
40
|
}
|
|
41
|
+
if (triggerSearchAutoFocus) {
|
|
42
|
+
this.handleTriggerFocus(null);
|
|
43
|
+
}
|
|
35
44
|
}
|
|
36
|
-
|
|
37
45
|
destroy() {
|
|
38
46
|
// Ensure that event monitoring will be uninstalled, and the user may not trigger closePanel
|
|
39
47
|
this._adapter.unregisterClickOutsideHandler();
|
|
40
48
|
}
|
|
41
|
-
|
|
42
49
|
_setDropdownWidth() {
|
|
43
50
|
const {
|
|
44
51
|
style,
|
|
45
52
|
dropdownMatchSelectWidth
|
|
46
53
|
} = this.getProps();
|
|
47
54
|
let width;
|
|
48
|
-
|
|
49
55
|
if (dropdownMatchSelectWidth) {
|
|
50
56
|
if (style && _isNumber(style.width)) {
|
|
51
57
|
width = style.width;
|
|
@@ -54,36 +60,28 @@ export default class TreeSelectFoundation extends BaseFoundation {
|
|
|
54
60
|
} else {
|
|
55
61
|
width = this._adapter.getTriggerWidth();
|
|
56
62
|
}
|
|
57
|
-
|
|
58
63
|
this._adapter.setOptionWrapperWidth(width);
|
|
59
64
|
}
|
|
60
65
|
}
|
|
61
|
-
|
|
62
66
|
_isMultiple() {
|
|
63
67
|
return this.getProp('multiple');
|
|
64
68
|
}
|
|
65
|
-
|
|
66
69
|
_isAnimated() {
|
|
67
70
|
return this.getProp('motionExpand');
|
|
68
71
|
}
|
|
69
|
-
|
|
70
72
|
_isDisabled() {
|
|
71
73
|
let treeNode = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
72
74
|
return this.getProp('disabled') || treeNode.disabled;
|
|
73
75
|
}
|
|
74
|
-
|
|
75
76
|
_isExpandControlled() {
|
|
76
77
|
return this.getProp('expandedKeys');
|
|
77
78
|
}
|
|
78
|
-
|
|
79
79
|
_isSelectToClose() {
|
|
80
80
|
return !this.getProp('expandAction');
|
|
81
81
|
}
|
|
82
|
-
|
|
83
82
|
_isLoadControlled() {
|
|
84
83
|
return this.getProp('loadedKeys');
|
|
85
84
|
}
|
|
86
|
-
|
|
87
85
|
_showFilteredOnly() {
|
|
88
86
|
const {
|
|
89
87
|
inputValue
|
|
@@ -93,15 +91,46 @@ export default class TreeSelectFoundation extends BaseFoundation {
|
|
|
93
91
|
} = this.getProps();
|
|
94
92
|
return Boolean(inputValue) && showFilteredOnly;
|
|
95
93
|
}
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
94
|
+
findDataForValue(findValue) {
|
|
95
|
+
const {
|
|
96
|
+
value,
|
|
97
|
+
defaultValue,
|
|
98
|
+
keyMaps
|
|
99
|
+
} = this.getProps();
|
|
100
|
+
const realValueName = _get(keyMaps, 'value', 'value');
|
|
101
|
+
const realKeyName = _get(keyMaps, 'key', 'key');
|
|
102
|
+
let valueArr = [];
|
|
103
|
+
if (value) {
|
|
104
|
+
valueArr = Array.isArray(value) ? value : [value];
|
|
105
|
+
} else if (defaultValue) {
|
|
106
|
+
valueArr = Array.isArray(defaultValue) ? defaultValue : [defaultValue];
|
|
107
|
+
}
|
|
108
|
+
return valueArr.find(item => {
|
|
109
|
+
return item[realValueName] === findValue || item[realKeyName] === findValue;
|
|
101
110
|
});
|
|
102
|
-
return res;
|
|
103
111
|
}
|
|
104
|
-
|
|
112
|
+
constructDataForValue(value) {
|
|
113
|
+
const {
|
|
114
|
+
treeNodeLabelProp,
|
|
115
|
+
keyMaps
|
|
116
|
+
} = this.getProps();
|
|
117
|
+
const keyName = _get(keyMaps, 'key', 'key');
|
|
118
|
+
const labelName = _get(keyMaps, 'label', treeNodeLabelProp);
|
|
119
|
+
return {
|
|
120
|
+
[keyName]: value,
|
|
121
|
+
[labelName]: value
|
|
122
|
+
};
|
|
123
|
+
}
|
|
124
|
+
getDataForKeyNotInKeyEntities(value) {
|
|
125
|
+
const {
|
|
126
|
+
onChangeWithObject
|
|
127
|
+
} = this.getProps();
|
|
128
|
+
if (onChangeWithObject) {
|
|
129
|
+
return this.findDataForValue(value);
|
|
130
|
+
} else {
|
|
131
|
+
return this.constructDataForValue(value);
|
|
132
|
+
}
|
|
133
|
+
}
|
|
105
134
|
getTreeNodeProps(key) {
|
|
106
135
|
const {
|
|
107
136
|
expandedKeys = new Set([]),
|
|
@@ -123,15 +152,12 @@ export default class TreeSelectFoundation extends BaseFoundation {
|
|
|
123
152
|
} = this.getProps();
|
|
124
153
|
const entity = keyEntities[key];
|
|
125
154
|
const notExist = !entity;
|
|
126
|
-
|
|
127
155
|
if (notExist) {
|
|
128
156
|
return null;
|
|
129
|
-
}
|
|
130
|
-
|
|
131
|
-
|
|
157
|
+
}
|
|
158
|
+
// if checkRelation is invalid, the checked status of node will be false
|
|
132
159
|
let realChecked = false;
|
|
133
160
|
let realHalfChecked = false;
|
|
134
|
-
|
|
135
161
|
if (checkRelation === 'related') {
|
|
136
162
|
realChecked = checkedKeys.has(key);
|
|
137
163
|
realHalfChecked = halfCheckedKeys.has(key);
|
|
@@ -139,11 +165,10 @@ export default class TreeSelectFoundation extends BaseFoundation {
|
|
|
139
165
|
realChecked = realCheckedKeys.has(key);
|
|
140
166
|
realHalfChecked = false;
|
|
141
167
|
}
|
|
142
|
-
|
|
143
168
|
const isSearching = Boolean(inputValue);
|
|
144
169
|
const treeNodeProps = {
|
|
145
170
|
eventKey: key,
|
|
146
|
-
expanded: isSearching
|
|
171
|
+
expanded: isSearching ? filteredExpandedKeys.has(key) : expandedKeys.has(key),
|
|
147
172
|
selected: selectedKeys.includes(key),
|
|
148
173
|
checked: realChecked,
|
|
149
174
|
halfChecked: realHalfChecked,
|
|
@@ -155,14 +180,11 @@ export default class TreeSelectFoundation extends BaseFoundation {
|
|
|
155
180
|
loading: loadingKeys.has(key) && !loadedKeys.has(key),
|
|
156
181
|
loaded: loadedKeys.has(key)
|
|
157
182
|
};
|
|
158
|
-
|
|
159
183
|
if (this.getProp('disableStrictly') && disabledKeys.has(key)) {
|
|
160
184
|
treeNodeProps.disabled = true;
|
|
161
185
|
}
|
|
162
|
-
|
|
163
186
|
return treeNodeProps;
|
|
164
187
|
}
|
|
165
|
-
|
|
166
188
|
handleNodeLoad(loadedKeys, loadingKeys, data, resolve) {
|
|
167
189
|
const {
|
|
168
190
|
loadData
|
|
@@ -170,32 +192,24 @@ export default class TreeSelectFoundation extends BaseFoundation {
|
|
|
170
192
|
const {
|
|
171
193
|
key
|
|
172
194
|
} = data;
|
|
173
|
-
|
|
174
195
|
if (!loadData || loadedKeys.has(key) || loadingKeys.has(key)) {
|
|
175
196
|
return {};
|
|
176
197
|
}
|
|
177
|
-
|
|
178
198
|
loadData(data).then(() => {
|
|
179
|
-
const
|
|
180
|
-
|
|
181
|
-
loadingKeys: prevLoadingKeys
|
|
182
|
-
} = this.getCopyFromState(['loadedKeys', 'loadingKeys']);
|
|
199
|
+
const prevLoadedKeys = new Set(this.getState('loadedKeys'));
|
|
200
|
+
const prevLoadingKeys = new Set(this.getState('loadingKeys'));
|
|
183
201
|
const newLoadedKeys = prevLoadedKeys.add(key);
|
|
184
202
|
const newLoadingKeys = new Set([...prevLoadingKeys]);
|
|
185
203
|
newLoadingKeys.delete(key);
|
|
186
|
-
|
|
187
204
|
this._adapter.notifyLoad(newLoadedKeys, data);
|
|
188
|
-
|
|
189
205
|
if (!this._isLoadControlled()) {
|
|
190
206
|
this._adapter.updateState({
|
|
191
207
|
loadedKeys: newLoadedKeys
|
|
192
208
|
});
|
|
193
209
|
}
|
|
194
|
-
|
|
195
210
|
this._adapter.setState({
|
|
196
211
|
loadingKeys: newLoadingKeys
|
|
197
212
|
});
|
|
198
|
-
|
|
199
213
|
resolve();
|
|
200
214
|
});
|
|
201
215
|
return {
|
|
@@ -203,138 +217,124 @@ export default class TreeSelectFoundation extends BaseFoundation {
|
|
|
203
217
|
};
|
|
204
218
|
}
|
|
205
219
|
/* istanbul ignore next */
|
|
206
|
-
|
|
207
|
-
|
|
208
220
|
focusInput(bool) {
|
|
209
221
|
this._adapter.updateInputFocus(bool);
|
|
210
222
|
}
|
|
211
|
-
|
|
212
223
|
_notifyMultipleChange(key, e) {
|
|
213
224
|
const {
|
|
214
225
|
keyEntities
|
|
215
226
|
} = this.getStates();
|
|
216
227
|
const {
|
|
217
228
|
leafOnly,
|
|
218
|
-
checkRelation
|
|
229
|
+
checkRelation,
|
|
230
|
+
keyMaps
|
|
219
231
|
} = this.getProps();
|
|
220
232
|
let keyList = [];
|
|
221
|
-
|
|
222
233
|
if (checkRelation === 'related') {
|
|
223
|
-
keyList = normalizeKeyList(key, keyEntities, leafOnly);
|
|
234
|
+
keyList = normalizeKeyList(key, keyEntities, leafOnly, true);
|
|
224
235
|
} else if (checkRelation === 'unRelated') {
|
|
225
236
|
keyList = key;
|
|
226
237
|
}
|
|
227
|
-
|
|
228
|
-
const nodes = keyList.map(i => keyEntities[i].data);
|
|
229
|
-
|
|
238
|
+
const nodes = keyList.map(key => keyEntities[key] && keyEntities[key].key === key ? keyEntities[key].data : this.getDataForKeyNotInKeyEntities(key));
|
|
230
239
|
if (this.getProp('onChangeWithObject')) {
|
|
231
240
|
this._adapter.notifyChangeWithObject(nodes, e);
|
|
232
241
|
} else {
|
|
233
|
-
const value = getValueOrKey(nodes);
|
|
234
|
-
|
|
242
|
+
const value = getValueOrKey(nodes, keyMaps);
|
|
235
243
|
this._adapter.notifyChange(value, nodes, e);
|
|
236
244
|
}
|
|
237
245
|
}
|
|
238
|
-
|
|
239
246
|
_notifyChange(key, e) {
|
|
240
247
|
const {
|
|
241
248
|
keyEntities
|
|
242
249
|
} = this.getStates();
|
|
243
|
-
|
|
250
|
+
const {
|
|
251
|
+
keyMaps
|
|
252
|
+
} = this.getProps();
|
|
244
253
|
if (this._isMultiple() && Array.isArray(key)) {
|
|
245
254
|
this._notifyMultipleChange(key, e);
|
|
246
255
|
} else {
|
|
247
256
|
const nodes = _isUndefined(key) ? key : keyEntities[key].data;
|
|
248
|
-
const value = _isUndefined(key) ? key : getValueOrKey(nodes);
|
|
249
|
-
|
|
257
|
+
const value = _isUndefined(key) ? key : getValueOrKey(nodes, keyMaps);
|
|
250
258
|
if (this.getProp('onChangeWithObject')) {
|
|
251
259
|
this._adapter.notifyChangeWithObject(nodes, e);
|
|
252
260
|
} else {
|
|
253
261
|
this._adapter.notifyChange(value, nodes, e);
|
|
254
262
|
}
|
|
255
263
|
}
|
|
256
|
-
}
|
|
264
|
+
}
|
|
265
|
+
// Scenes that may trigger focus:
|
|
257
266
|
// 1、click selection
|
|
258
|
-
|
|
259
|
-
|
|
260
267
|
_notifyFocus(e) {
|
|
261
268
|
this._adapter.notifyFocus(e);
|
|
262
|
-
}
|
|
269
|
+
}
|
|
270
|
+
handleTriggerFocus(e) {
|
|
271
|
+
this._adapter.updateIsFocus(true);
|
|
272
|
+
this._notifyFocus(e);
|
|
273
|
+
this._registerClickOutsideHandler(e);
|
|
274
|
+
}
|
|
275
|
+
// Scenes that may trigger blur
|
|
263
276
|
// 1、clickOutSide
|
|
264
277
|
// 2、click option / press enter, and then select complete(when multiple is false
|
|
265
278
|
// 3、press esc when dropdown list open
|
|
266
|
-
|
|
267
|
-
|
|
268
279
|
_notifyBlur(e) {
|
|
269
280
|
this._adapter.notifyBlur(e);
|
|
270
281
|
}
|
|
271
|
-
|
|
282
|
+
handlerTriggerBlur(e) {
|
|
283
|
+
this._adapter.updateIsFocus(false);
|
|
284
|
+
this._notifyBlur(e);
|
|
285
|
+
this._adapter.unregisterClickOutsideHandler();
|
|
286
|
+
}
|
|
272
287
|
toggleHoverState(bool) {
|
|
273
288
|
this._adapter.toggleHovering(bool);
|
|
274
289
|
}
|
|
275
|
-
|
|
276
290
|
open() {
|
|
277
291
|
this._adapter.openMenu();
|
|
278
|
-
|
|
279
292
|
this._setDropdownWidth();
|
|
280
|
-
|
|
281
|
-
this._adapter.registerClickOutsideHandler(e => {
|
|
282
|
-
this.close(e);
|
|
283
|
-
});
|
|
284
293
|
}
|
|
285
|
-
|
|
286
294
|
close(e) {
|
|
287
295
|
this._adapter.closeMenu();
|
|
288
|
-
|
|
289
|
-
this._adapter.unregisterClickOutsideHandler();
|
|
290
|
-
|
|
291
|
-
this._notifyBlur(e);
|
|
292
|
-
|
|
293
296
|
if (this.getProp('motionExpand')) {
|
|
294
297
|
this._adapter.updateState({
|
|
295
298
|
motionKeys: new Set([])
|
|
296
299
|
});
|
|
297
300
|
}
|
|
298
301
|
}
|
|
299
|
-
|
|
300
302
|
handleClick(e) {
|
|
301
303
|
const isDisabled = this._isDisabled();
|
|
302
|
-
|
|
303
304
|
const {
|
|
304
305
|
isOpen,
|
|
305
|
-
inputValue
|
|
306
|
+
inputValue,
|
|
307
|
+
isFocus
|
|
306
308
|
} = this.getStates();
|
|
307
309
|
const {
|
|
308
|
-
searchPosition
|
|
310
|
+
searchPosition,
|
|
311
|
+
clickTriggerToHide
|
|
309
312
|
} = this.getProps();
|
|
310
|
-
|
|
311
313
|
if (isDisabled) {
|
|
312
314
|
return;
|
|
313
|
-
} else
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
315
|
+
} else {
|
|
316
|
+
if (!isFocus) {
|
|
317
|
+
this.handleTriggerFocus(e);
|
|
318
|
+
}
|
|
319
|
+
if (isOpen) {
|
|
320
|
+
if (searchPosition === 'trigger' && inputValue) {
|
|
321
|
+
return;
|
|
322
|
+
}
|
|
323
|
+
clickTriggerToHide && this.close(e);
|
|
324
|
+
} else {
|
|
325
|
+
this.open();
|
|
320
326
|
}
|
|
321
|
-
|
|
322
|
-
this.close(e);
|
|
323
327
|
}
|
|
324
328
|
}
|
|
325
329
|
/**
|
|
326
330
|
* A11y: simulate selection click
|
|
327
331
|
*/
|
|
328
|
-
|
|
329
332
|
/* istanbul ignore next */
|
|
330
|
-
|
|
331
|
-
|
|
332
333
|
handleSelectionEnterPress(e) {
|
|
333
334
|
if (isEnterPress(e)) {
|
|
334
335
|
this.handleClick(e);
|
|
335
336
|
}
|
|
336
337
|
}
|
|
337
|
-
|
|
338
338
|
handleClear(e) {
|
|
339
339
|
const {
|
|
340
340
|
searchPosition,
|
|
@@ -344,28 +344,21 @@ export default class TreeSelectFoundation extends BaseFoundation {
|
|
|
344
344
|
inputValue,
|
|
345
345
|
selectedKeys
|
|
346
346
|
} = this.getStates();
|
|
347
|
-
|
|
348
347
|
const isMultiple = this._isMultiple();
|
|
349
|
-
|
|
350
348
|
const isControlled = this._isControlledComponent();
|
|
351
|
-
|
|
352
349
|
const value = isMultiple ? [] : undefined;
|
|
353
|
-
|
|
354
350
|
this._notifyChange(value, e);
|
|
355
|
-
|
|
356
351
|
if (!isControlled) {
|
|
357
352
|
// reposition dropdown when selected values change
|
|
358
353
|
this._adapter.rePositionDropdown();
|
|
359
|
-
|
|
360
354
|
this._adapter.updateState({
|
|
361
355
|
selectedKeys: [],
|
|
362
356
|
checkedKeys: new Set(),
|
|
363
357
|
halfCheckedKeys: new Set(),
|
|
364
358
|
realCheckedKeys: new Set([])
|
|
365
359
|
});
|
|
366
|
-
}
|
|
367
|
-
|
|
368
|
-
|
|
360
|
+
}
|
|
361
|
+
// When triggerSearch, clicking the clear button will trigger to clear Input
|
|
369
362
|
if (filterTreeNode && searchPosition === strings.SEARCH_POSITION_TRIGGER) {
|
|
370
363
|
if (inputValue !== '') {
|
|
371
364
|
if (_isEmpty(selectedKeys)) {
|
|
@@ -375,47 +368,41 @@ export default class TreeSelectFoundation extends BaseFoundation {
|
|
|
375
368
|
}
|
|
376
369
|
}
|
|
377
370
|
}
|
|
371
|
+
this._adapter.notifyClear(e);
|
|
378
372
|
}
|
|
379
373
|
/**
|
|
380
374
|
* A11y: simulate clear button click
|
|
381
375
|
*/
|
|
382
|
-
|
|
383
376
|
/* istanbul ignore next */
|
|
384
|
-
|
|
385
|
-
|
|
386
377
|
handleClearEnterPress(e) {
|
|
387
378
|
if (isEnterPress(e)) {
|
|
388
379
|
this.handleClear(e);
|
|
389
380
|
}
|
|
390
381
|
}
|
|
391
|
-
|
|
392
382
|
removeTag(eventKey) {
|
|
393
383
|
const {
|
|
394
384
|
disableStrictly,
|
|
395
|
-
checkRelation
|
|
385
|
+
checkRelation,
|
|
386
|
+
keyMaps
|
|
396
387
|
} = this.getProps();
|
|
397
388
|
const {
|
|
398
389
|
keyEntities,
|
|
399
390
|
disabledKeys,
|
|
400
391
|
realCheckedKeys
|
|
401
392
|
} = this.getStates();
|
|
402
|
-
const item = keyEntities[eventKey].data;
|
|
403
|
-
|
|
404
|
-
if (item
|
|
393
|
+
const item = keyEntities[eventKey] && keyEntities[eventKey].key === eventKey ? keyEntities[eventKey].data : this.getDataForKeyNotInKeyEntities(eventKey);
|
|
394
|
+
const disabledName = _get(keyMaps, 'disabled', 'disabled');
|
|
395
|
+
if (item[disabledName] || disableStrictly && disabledKeys.has(eventKey)) {
|
|
405
396
|
return;
|
|
406
397
|
}
|
|
407
|
-
|
|
408
398
|
if (checkRelation === 'unRelated') {
|
|
409
399
|
const newRealCheckedKeys = new Set(realCheckedKeys);
|
|
410
400
|
newRealCheckedKeys.delete(eventKey);
|
|
411
|
-
|
|
412
401
|
this._notifyChange([...newRealCheckedKeys], null);
|
|
413
|
-
|
|
414
402
|
if (!this._isControlledComponent()) {
|
|
415
403
|
this._adapter.updateState({
|
|
416
404
|
realCheckedKeys: newRealCheckedKeys
|
|
417
405
|
});
|
|
418
|
-
|
|
419
406
|
this._adapter.rePositionDropdown();
|
|
420
407
|
}
|
|
421
408
|
} else if (checkRelation === 'related') {
|
|
@@ -423,25 +410,19 @@ export default class TreeSelectFoundation extends BaseFoundation {
|
|
|
423
410
|
checkedKeys,
|
|
424
411
|
halfCheckedKeys
|
|
425
412
|
} = this.calcCheckedKeys(eventKey, false);
|
|
426
|
-
|
|
427
413
|
this._notifyChange([...checkedKeys], null);
|
|
428
|
-
|
|
429
414
|
if (!this._isControlledComponent()) {
|
|
430
415
|
this._adapter.updateState({
|
|
431
416
|
checkedKeys,
|
|
432
417
|
halfCheckedKeys
|
|
433
418
|
});
|
|
434
|
-
|
|
435
419
|
this._adapter.rePositionDropdown();
|
|
436
420
|
}
|
|
437
421
|
}
|
|
438
|
-
|
|
439
|
-
|
|
440
|
-
|
|
441
|
-
|
|
422
|
+
this._adapter.notifySelect(eventKey, false, item);
|
|
423
|
+
// reposition dropdown when selected values change
|
|
442
424
|
this._adapter.rePositionDropdown();
|
|
443
425
|
}
|
|
444
|
-
|
|
445
426
|
clearInput() {
|
|
446
427
|
const {
|
|
447
428
|
flattenNodes,
|
|
@@ -450,17 +431,17 @@ export default class TreeSelectFoundation extends BaseFoundation {
|
|
|
450
431
|
keyEntities,
|
|
451
432
|
treeData
|
|
452
433
|
} = this.getStates();
|
|
434
|
+
const {
|
|
435
|
+
keyMaps
|
|
436
|
+
} = this.getProps();
|
|
453
437
|
const newExpandedKeys = new Set(expandedKeys);
|
|
454
|
-
|
|
455
438
|
const isExpandControlled = this._isExpandControlled();
|
|
456
|
-
|
|
457
439
|
const expandedOptsKeys = findAncestorKeys(selectedKeys, keyEntities);
|
|
458
440
|
expandedOptsKeys.forEach(item => newExpandedKeys.add(item));
|
|
459
|
-
const newFlattenNodes = flattenTreeData(treeData, newExpandedKeys);
|
|
460
|
-
|
|
441
|
+
const newFlattenNodes = flattenTreeData(treeData, newExpandedKeys, keyMaps);
|
|
461
442
|
this._adapter.updateState({
|
|
462
|
-
expandedKeys:
|
|
463
|
-
flattenNodes:
|
|
443
|
+
expandedKeys: newExpandedKeys,
|
|
444
|
+
flattenNodes: newFlattenNodes,
|
|
464
445
|
inputValue: '',
|
|
465
446
|
motionKeys: new Set([]),
|
|
466
447
|
filteredKeys: new Set([]),
|
|
@@ -468,11 +449,9 @@ export default class TreeSelectFoundation extends BaseFoundation {
|
|
|
468
449
|
filteredShownKeys: new Set([])
|
|
469
450
|
});
|
|
470
451
|
}
|
|
471
|
-
|
|
472
452
|
handleInputChange(sugInput) {
|
|
473
453
|
// Input is used as controlled component
|
|
474
454
|
this._adapter.updateInputValue(sugInput);
|
|
475
|
-
|
|
476
455
|
const {
|
|
477
456
|
flattenNodes,
|
|
478
457
|
expandedKeys,
|
|
@@ -483,63 +462,55 @@ export default class TreeSelectFoundation extends BaseFoundation {
|
|
|
483
462
|
const {
|
|
484
463
|
showFilteredOnly,
|
|
485
464
|
filterTreeNode,
|
|
486
|
-
treeNodeFilterProp
|
|
465
|
+
treeNodeFilterProp,
|
|
466
|
+
keyMaps
|
|
487
467
|
} = this.getProps();
|
|
468
|
+
const realFilterProp = treeNodeFilterProp !== 'label' ? treeNodeFilterProp : _get(keyMaps, 'label', 'label');
|
|
488
469
|
const newExpandedKeys = new Set(expandedKeys);
|
|
489
470
|
let filteredOptsKeys = [];
|
|
490
471
|
let expandedOptsKeys = [];
|
|
491
472
|
let newFlattenNodes = [];
|
|
492
473
|
let filteredShownKeys = new Set([]);
|
|
493
|
-
|
|
494
474
|
if (!sugInput) {
|
|
495
475
|
expandedOptsKeys = findAncestorKeys(selectedKeys, keyEntities);
|
|
496
476
|
expandedOptsKeys.forEach(item => newExpandedKeys.add(item));
|
|
497
|
-
newFlattenNodes = flattenTreeData(treeData, newExpandedKeys);
|
|
477
|
+
newFlattenNodes = flattenTreeData(treeData, newExpandedKeys, keyMaps);
|
|
498
478
|
} else {
|
|
499
479
|
filteredOptsKeys = Object.values(keyEntities).filter(item => {
|
|
500
480
|
const {
|
|
501
481
|
data
|
|
502
482
|
} = item;
|
|
503
|
-
return filter(sugInput, data, filterTreeNode,
|
|
483
|
+
return filter(sugInput, data, filterTreeNode, realFilterProp);
|
|
504
484
|
}).map(item => item.key);
|
|
505
485
|
expandedOptsKeys = findAncestorKeys(filteredOptsKeys, keyEntities, false);
|
|
506
486
|
const shownChildKeys = findDescendantKeys(filteredOptsKeys, keyEntities, true);
|
|
507
487
|
filteredShownKeys = new Set([...shownChildKeys, ...expandedOptsKeys]);
|
|
508
|
-
newFlattenNodes = flattenTreeData(treeData, new Set(expandedOptsKeys), showFilteredOnly && filteredShownKeys);
|
|
488
|
+
newFlattenNodes = flattenTreeData(treeData, new Set(expandedOptsKeys), keyMaps, showFilteredOnly && filteredShownKeys);
|
|
509
489
|
}
|
|
510
|
-
|
|
511
490
|
const newFilteredExpandedKeys = new Set(expandedOptsKeys);
|
|
512
|
-
|
|
513
491
|
this._adapter.notifySearch(sugInput, Array.from(newFilteredExpandedKeys));
|
|
514
|
-
|
|
515
492
|
this._adapter.updateState({
|
|
516
|
-
expandedKeys:
|
|
517
|
-
flattenNodes:
|
|
493
|
+
expandedKeys: newExpandedKeys,
|
|
494
|
+
flattenNodes: newFlattenNodes,
|
|
518
495
|
motionKeys: new Set([]),
|
|
519
496
|
filteredKeys: new Set(filteredOptsKeys),
|
|
520
497
|
filteredExpandedKeys: newFilteredExpandedKeys,
|
|
521
498
|
filteredShownKeys
|
|
522
499
|
});
|
|
523
500
|
}
|
|
524
|
-
|
|
525
501
|
handleNodeSelect(e, treeNode) {
|
|
526
502
|
const isDisabled = this._isDisabled(treeNode);
|
|
527
|
-
|
|
528
503
|
if (isDisabled) {
|
|
529
504
|
return;
|
|
530
505
|
}
|
|
531
|
-
|
|
532
506
|
if (!this._isMultiple()) {
|
|
533
507
|
this.handleSingleSelect(e, treeNode);
|
|
534
508
|
} else {
|
|
535
509
|
this.handleMultipleSelect(e, treeNode);
|
|
536
510
|
}
|
|
537
511
|
}
|
|
538
|
-
|
|
539
512
|
handleSingleSelect(e, treeNode) {
|
|
540
|
-
let
|
|
541
|
-
selectedKeys
|
|
542
|
-
} = this.getCopyFromState('selectedKeys');
|
|
513
|
+
let selectedKeys = [...this.getState('selectedKeys')];
|
|
543
514
|
const {
|
|
544
515
|
clickToHide
|
|
545
516
|
} = this.getProps();
|
|
@@ -548,42 +519,33 @@ export default class TreeSelectFoundation extends BaseFoundation {
|
|
|
548
519
|
eventKey,
|
|
549
520
|
data
|
|
550
521
|
} = treeNode;
|
|
551
|
-
|
|
552
522
|
this._adapter.notifySelect(eventKey, true, data);
|
|
553
|
-
|
|
554
523
|
if (!selectedKeys.includes(eventKey) && !selected) {
|
|
555
524
|
selectedKeys = [eventKey];
|
|
556
|
-
|
|
557
525
|
this._notifyChange(eventKey, e);
|
|
558
|
-
|
|
559
526
|
if (!this._isControlledComponent()) {
|
|
560
527
|
this._adapter.updateState({
|
|
561
528
|
selectedKeys
|
|
562
529
|
});
|
|
563
530
|
}
|
|
564
531
|
}
|
|
565
|
-
|
|
566
532
|
if (clickToHide && (this._isSelectToClose() || !data.children)) {
|
|
567
533
|
this.close(e);
|
|
534
|
+
this.handlerTriggerBlur(e);
|
|
568
535
|
}
|
|
569
536
|
}
|
|
570
|
-
|
|
571
537
|
calcCheckedKeys(eventKey, targetStatus) {
|
|
572
538
|
const {
|
|
573
539
|
keyEntities
|
|
574
540
|
} = this.getStates();
|
|
575
|
-
const
|
|
576
|
-
|
|
577
|
-
halfCheckedKeys
|
|
578
|
-
} = this.getCopyFromState(['checkedKeys', 'halfCheckedKeys']);
|
|
579
|
-
|
|
541
|
+
const checkedKeys = new Set(this.getState('checkedKeys'));
|
|
542
|
+
const halfCheckedKeys = new Set(this.getState('halfCheckedKeys'));
|
|
580
543
|
if (targetStatus) {
|
|
581
544
|
return calcCheckedKeysForChecked(eventKey, keyEntities, checkedKeys, halfCheckedKeys);
|
|
582
545
|
} else {
|
|
583
546
|
return calcCheckedKeysForUnchecked(eventKey, keyEntities, checkedKeys, halfCheckedKeys);
|
|
584
547
|
}
|
|
585
548
|
}
|
|
586
|
-
|
|
587
549
|
handleMultipleSelect(e, treeNode) {
|
|
588
550
|
const {
|
|
589
551
|
searchPosition,
|
|
@@ -599,30 +561,24 @@ export default class TreeSelectFoundation extends BaseFoundation {
|
|
|
599
561
|
eventKey,
|
|
600
562
|
data
|
|
601
563
|
} = treeNode;
|
|
602
|
-
|
|
603
564
|
if (checkRelation === 'related') {
|
|
604
565
|
const targetStatus = disableStrictly ? this.calcCheckedStatus(!checked, eventKey) : !checked;
|
|
605
566
|
const {
|
|
606
567
|
checkedKeys,
|
|
607
568
|
halfCheckedKeys
|
|
608
569
|
} = disableStrictly ? this.calcNonDisabledCheckedKeys(eventKey, targetStatus) : this.calcCheckedKeys(eventKey, targetStatus);
|
|
609
|
-
|
|
610
570
|
this._adapter.notifySelect(eventKey, targetStatus, data);
|
|
611
|
-
|
|
612
571
|
this._notifyChange([...checkedKeys], e);
|
|
613
|
-
|
|
614
572
|
if (!this._isControlledComponent()) {
|
|
615
573
|
this._adapter.updateState({
|
|
616
574
|
checkedKeys,
|
|
617
575
|
halfCheckedKeys
|
|
618
576
|
});
|
|
619
|
-
|
|
620
577
|
this._adapter.rePositionDropdown();
|
|
621
578
|
}
|
|
622
579
|
} else if (checkRelation === 'unRelated') {
|
|
623
580
|
const newRealCheckedKeys = new Set(realCheckedKeys);
|
|
624
581
|
let targetStatus;
|
|
625
|
-
|
|
626
582
|
if (realCheckedKeys.has(eventKey)) {
|
|
627
583
|
newRealCheckedKeys.delete(eventKey);
|
|
628
584
|
targetStatus = false;
|
|
@@ -630,52 +586,40 @@ export default class TreeSelectFoundation extends BaseFoundation {
|
|
|
630
586
|
newRealCheckedKeys.add(eventKey);
|
|
631
587
|
targetStatus = true;
|
|
632
588
|
}
|
|
633
|
-
|
|
634
589
|
this._adapter.notifySelect(eventKey, targetStatus, data);
|
|
635
|
-
|
|
636
590
|
this._notifyChange([...newRealCheckedKeys], e);
|
|
637
|
-
|
|
638
591
|
if (!this._isControlledComponent()) {
|
|
639
592
|
this._adapter.updateState({
|
|
640
593
|
realCheckedKeys: newRealCheckedKeys
|
|
641
594
|
});
|
|
642
|
-
|
|
643
595
|
this._adapter.rePositionDropdown();
|
|
644
596
|
}
|
|
645
597
|
}
|
|
646
|
-
|
|
647
598
|
if (searchPosition === strings.SEARCH_POSITION_TRIGGER && inputValue !== '') {
|
|
648
599
|
this._adapter.updateState({
|
|
649
600
|
inputValue: ''
|
|
650
601
|
});
|
|
651
602
|
}
|
|
652
603
|
}
|
|
653
|
-
|
|
654
604
|
calcNonDisabledCheckedKeys(eventKey, targetStatus) {
|
|
655
605
|
const {
|
|
656
606
|
keyEntities,
|
|
657
607
|
disabledKeys
|
|
658
608
|
} = this.getStates();
|
|
659
|
-
const
|
|
660
|
-
checkedKeys
|
|
661
|
-
} = this.getCopyFromState(['checkedKeys']);
|
|
609
|
+
const checkedKeys = new Set(this.getState('checkedKeys'));
|
|
662
610
|
const descendantKeys = normalizeKeyList(findDescendantKeys([eventKey], keyEntities, false), keyEntities, true);
|
|
663
611
|
const hasDisabled = descendantKeys.some(key => disabledKeys.has(key));
|
|
664
|
-
|
|
665
612
|
if (!hasDisabled) {
|
|
666
613
|
return this.calcCheckedKeys(eventKey, targetStatus);
|
|
667
614
|
}
|
|
668
|
-
|
|
669
615
|
const nonDisabled = descendantKeys.filter(key => !disabledKeys.has(key));
|
|
670
|
-
const newCheckedKeys = targetStatus ? [...nonDisabled, ...checkedKeys] : _difference(normalizeKeyList([...checkedKeys], keyEntities, true), nonDisabled);
|
|
616
|
+
const newCheckedKeys = targetStatus ? [...nonDisabled, ...checkedKeys] : _difference(normalizeKeyList([...checkedKeys], keyEntities, true, true), nonDisabled);
|
|
671
617
|
return calcCheckedKeys(newCheckedKeys, keyEntities);
|
|
672
618
|
}
|
|
673
|
-
|
|
674
619
|
calcCheckedStatus(targetStatus, eventKey) {
|
|
675
620
|
if (!targetStatus) {
|
|
676
621
|
return targetStatus;
|
|
677
622
|
}
|
|
678
|
-
|
|
679
623
|
const {
|
|
680
624
|
checkedKeys,
|
|
681
625
|
keyEntities,
|
|
@@ -683,49 +627,41 @@ export default class TreeSelectFoundation extends BaseFoundation {
|
|
|
683
627
|
} = this.getStates();
|
|
684
628
|
const descendantKeys = normalizeKeyList(findDescendantKeys([eventKey], keyEntities, false), keyEntities, true);
|
|
685
629
|
const hasDisabled = descendantKeys.some(key => disabledKeys.has(key));
|
|
686
|
-
|
|
687
630
|
if (!hasDisabled) {
|
|
688
631
|
return targetStatus;
|
|
689
632
|
}
|
|
690
|
-
|
|
691
633
|
const nonDisabledKeys = descendantKeys.filter(key => !disabledKeys.has(key));
|
|
692
634
|
const allChecked = nonDisabledKeys.every(key => checkedKeys.has(key));
|
|
693
635
|
return !allChecked;
|
|
694
636
|
}
|
|
695
|
-
|
|
696
637
|
handleNodeExpandInSearch(e, treeNode) {
|
|
697
638
|
const {
|
|
698
639
|
treeData,
|
|
699
640
|
filteredShownKeys,
|
|
700
|
-
keyEntities
|
|
641
|
+
keyEntities,
|
|
642
|
+
keyMaps
|
|
701
643
|
} = this.getStates();
|
|
702
|
-
|
|
703
|
-
|
|
704
|
-
|
|
705
|
-
|
|
706
|
-
const {
|
|
707
|
-
filteredExpandedKeys
|
|
708
|
-
} = this.getCopyFromState('filteredExpandedKeys');
|
|
644
|
+
const showFilteredOnly = this._showFilteredOnly();
|
|
645
|
+
// clone otherwise will be modified unexpectedly
|
|
646
|
+
const filteredExpandedKeys = new Set(this.getState('filteredExpandedKeys'));
|
|
709
647
|
let motionType = 'show';
|
|
710
648
|
const {
|
|
711
649
|
eventKey,
|
|
712
650
|
expanded,
|
|
713
651
|
data
|
|
714
|
-
} = treeNode;
|
|
715
|
-
|
|
652
|
+
} = treeNode;
|
|
653
|
+
// debugger;
|
|
716
654
|
if (!expanded) {
|
|
717
655
|
filteredExpandedKeys.add(eventKey);
|
|
718
656
|
} else if (filteredExpandedKeys.has(eventKey)) {
|
|
719
657
|
filteredExpandedKeys.delete(eventKey);
|
|
720
658
|
motionType = 'hide';
|
|
721
|
-
}
|
|
722
|
-
|
|
723
|
-
|
|
659
|
+
}
|
|
660
|
+
// cache prev flattenNodes, otherwise the calculation will remove hidden items
|
|
724
661
|
this._adapter.cacheFlattenNodes(motionType === 'hide' && this._isAnimated());
|
|
725
|
-
|
|
726
662
|
if (!this._isExpandControlled()) {
|
|
727
663
|
// debugger;
|
|
728
|
-
const flattenNodes = flattenTreeData(treeData, filteredExpandedKeys, showFilteredOnly && filteredShownKeys);
|
|
664
|
+
const flattenNodes = flattenTreeData(treeData, filteredExpandedKeys, keyMaps, showFilteredOnly && filteredShownKeys);
|
|
729
665
|
const motionKeys = this._isAnimated() ? getMotionKeys(eventKey, filteredExpandedKeys, keyEntities) : [];
|
|
730
666
|
const newState = {
|
|
731
667
|
filteredExpandedKeys,
|
|
@@ -733,64 +669,53 @@ export default class TreeSelectFoundation extends BaseFoundation {
|
|
|
733
669
|
motionKeys: new Set(motionKeys),
|
|
734
670
|
motionType
|
|
735
671
|
};
|
|
736
|
-
|
|
737
672
|
this._adapter.updateState(newState);
|
|
738
673
|
}
|
|
739
|
-
|
|
740
674
|
this._adapter.notifyExpand(filteredExpandedKeys, {
|
|
741
675
|
expanded: !expanded,
|
|
742
676
|
node: data
|
|
743
677
|
});
|
|
744
678
|
}
|
|
745
|
-
|
|
746
679
|
handleNodeExpand(e, treeNode) {
|
|
747
680
|
// debugger;
|
|
748
681
|
const {
|
|
749
|
-
loadData
|
|
682
|
+
loadData,
|
|
683
|
+
keyMaps
|
|
750
684
|
} = this.getProps();
|
|
751
685
|
const {
|
|
752
686
|
inputValue,
|
|
753
687
|
keyEntities
|
|
754
688
|
} = this.getStates();
|
|
755
689
|
const isSearching = Boolean(inputValue);
|
|
756
|
-
|
|
757
690
|
if (!loadData && (!treeNode.children || !treeNode.children.length)) {
|
|
758
691
|
return;
|
|
759
692
|
}
|
|
760
|
-
|
|
761
693
|
const isExpandControlled = this._isExpandControlled();
|
|
762
|
-
|
|
763
|
-
if (isSearching && !isExpandControlled) {
|
|
694
|
+
if (isSearching) {
|
|
764
695
|
this.handleNodeExpandInSearch(e, treeNode);
|
|
765
696
|
return;
|
|
766
697
|
}
|
|
767
|
-
|
|
768
698
|
const {
|
|
769
699
|
treeData
|
|
770
|
-
} = this.getStates();
|
|
771
|
-
|
|
772
|
-
const
|
|
773
|
-
expandedKeys
|
|
774
|
-
} = this.getCopyFromState('expandedKeys');
|
|
700
|
+
} = this.getStates();
|
|
701
|
+
// clone otherwise will be modified unexpectedly
|
|
702
|
+
const expandedKeys = new Set(this.getState('expandedKeys'));
|
|
775
703
|
let motionType = 'show';
|
|
776
704
|
const {
|
|
777
705
|
eventKey,
|
|
778
706
|
expanded,
|
|
779
707
|
data
|
|
780
708
|
} = treeNode;
|
|
781
|
-
|
|
782
709
|
if (!expanded) {
|
|
783
710
|
expandedKeys.add(eventKey);
|
|
784
711
|
} else if (expandedKeys.has(eventKey)) {
|
|
785
712
|
expandedKeys.delete(eventKey);
|
|
786
713
|
motionType = 'hide';
|
|
787
714
|
}
|
|
788
|
-
|
|
789
715
|
this._adapter.cacheFlattenNodes(motionType === 'hide' && this._isAnimated());
|
|
790
|
-
|
|
791
716
|
if (!isExpandControlled) {
|
|
792
717
|
// debugger;
|
|
793
|
-
const flattenNodes = flattenTreeData(treeData, expandedKeys);
|
|
718
|
+
const flattenNodes = flattenTreeData(treeData, expandedKeys, keyMaps);
|
|
794
719
|
const motionKeys = this._isAnimated() ? getMotionKeys(eventKey, expandedKeys, keyEntities) : [];
|
|
795
720
|
const newState = {
|
|
796
721
|
expandedKeys,
|
|
@@ -798,10 +723,8 @@ export default class TreeSelectFoundation extends BaseFoundation {
|
|
|
798
723
|
motionKeys: new Set(motionKeys),
|
|
799
724
|
motionType
|
|
800
725
|
};
|
|
801
|
-
|
|
802
726
|
this._adapter.updateState(newState);
|
|
803
727
|
}
|
|
804
|
-
|
|
805
728
|
this._adapter.notifyExpand(expandedKeys, {
|
|
806
729
|
expanded: !expanded,
|
|
807
730
|
node: data
|
|
@@ -810,27 +733,29 @@ export default class TreeSelectFoundation extends BaseFoundation {
|
|
|
810
733
|
/**
|
|
811
734
|
* The selected items that need to be displayed in the search box when obtaining a single selection
|
|
812
735
|
*/
|
|
813
|
-
|
|
814
|
-
|
|
815
736
|
getRenderTextInSingle() {
|
|
816
737
|
const {
|
|
817
738
|
renderSelectedItem: propRenderSelectedItem,
|
|
818
|
-
treeNodeLabelProp
|
|
739
|
+
treeNodeLabelProp,
|
|
740
|
+
keyMaps
|
|
819
741
|
} = this.getProps();
|
|
820
742
|
const {
|
|
821
743
|
selectedKeys,
|
|
822
744
|
keyEntities
|
|
823
745
|
} = this.getStates();
|
|
824
|
-
const
|
|
825
|
-
const
|
|
826
|
-
|
|
746
|
+
const realLabelName = _get(keyMaps, 'label', treeNodeLabelProp);
|
|
747
|
+
const renderSelectedItem = _isFunction(propRenderSelectedItem) ? propRenderSelectedItem : item => _get(item, realLabelName, null);
|
|
748
|
+
let item;
|
|
749
|
+
if (selectedKeys.length) {
|
|
750
|
+
const key = selectedKeys[0];
|
|
751
|
+
item = keyEntities[key] && keyEntities[key].key === key ? keyEntities[key].data : this.getDataForKeyNotInKeyEntities(key);
|
|
752
|
+
}
|
|
753
|
+
const renderText = item ? renderSelectedItem(item) : null;
|
|
827
754
|
return renderText;
|
|
828
755
|
}
|
|
829
756
|
/**
|
|
830
757
|
* When the search box is on the trigger, the blur event handling method
|
|
831
758
|
*/
|
|
832
|
-
|
|
833
|
-
|
|
834
759
|
handleInputTriggerBlur() {
|
|
835
760
|
this._adapter.updateState({
|
|
836
761
|
inputTriggerFocus: false
|
|
@@ -839,18 +764,13 @@ export default class TreeSelectFoundation extends BaseFoundation {
|
|
|
839
764
|
/**
|
|
840
765
|
* When the search box is on the trigger, the focus event processing method
|
|
841
766
|
*/
|
|
842
|
-
|
|
843
|
-
|
|
844
767
|
handleInputTriggerFocus() {
|
|
845
768
|
this.clearInput();
|
|
846
|
-
|
|
847
769
|
this._adapter.updateState({
|
|
848
770
|
inputTriggerFocus: true
|
|
849
771
|
});
|
|
850
772
|
}
|
|
851
|
-
|
|
852
773
|
setLoadKeys(data, resolve) {
|
|
853
774
|
this._adapter.updateLoadKeys(data, resolve);
|
|
854
775
|
}
|
|
855
|
-
|
|
856
776
|
}
|