@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
|
@@ -4,66 +4,68 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.default = void 0;
|
|
7
|
-
|
|
7
|
+
var _isObject2 = _interopRequireDefault(require("lodash/isObject"));
|
|
8
|
+
var _isFunction2 = _interopRequireDefault(require("lodash/isFunction"));
|
|
8
9
|
var _includes2 = _interopRequireDefault(require("lodash/includes"));
|
|
9
|
-
|
|
10
10
|
var _isNumber2 = _interopRequireDefault(require("lodash/isNumber"));
|
|
11
|
-
|
|
12
11
|
var _isEmpty2 = _interopRequireDefault(require("lodash/isEmpty"));
|
|
13
|
-
|
|
14
|
-
var _cloneDeep2 = _interopRequireDefault(require("lodash/cloneDeep"));
|
|
15
|
-
|
|
16
12
|
var _assign2 = _interopRequireDefault(require("lodash/assign"));
|
|
17
|
-
|
|
18
13
|
var _isUndefined2 = _interopRequireDefault(require("lodash/isUndefined"));
|
|
19
|
-
|
|
20
14
|
var _difference2 = _interopRequireDefault(require("lodash/difference"));
|
|
21
|
-
|
|
22
15
|
var _get2 = _interopRequireDefault(require("lodash/get"));
|
|
23
|
-
|
|
24
16
|
var _isEqual2 = _interopRequireDefault(require("lodash/isEqual"));
|
|
25
|
-
|
|
26
17
|
var _foundation = _interopRequireDefault(require("../base/foundation"));
|
|
27
|
-
|
|
28
18
|
var _treeUtil = require("../tree/treeUtil");
|
|
29
|
-
|
|
30
19
|
var _util = require("./util");
|
|
31
|
-
|
|
32
20
|
var _constants = require("./constants");
|
|
33
|
-
|
|
34
21
|
var _isEnterPress = _interopRequireDefault(require("../utils/isEnterPress"));
|
|
35
|
-
|
|
36
22
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
37
|
-
|
|
38
|
-
// eslint-disable-next-line max-len
|
|
39
23
|
class CascaderFoundation extends _foundation.default {
|
|
40
24
|
constructor(adapter) {
|
|
41
25
|
super(Object.assign({}, adapter));
|
|
42
|
-
|
|
43
26
|
this.updateSearching = isSearching => {
|
|
44
27
|
this._adapter.updateStates({
|
|
45
28
|
isSearching: false
|
|
46
29
|
});
|
|
47
30
|
};
|
|
31
|
+
this.handleTagRemoveByKey = key => {
|
|
32
|
+
var _a, _b;
|
|
33
|
+
const {
|
|
34
|
+
keyEntities
|
|
35
|
+
} = this.getStates();
|
|
36
|
+
const {
|
|
37
|
+
disabled
|
|
38
|
+
} = this.getProps();
|
|
39
|
+
if (disabled) {
|
|
40
|
+
/* istanbul ignore next */
|
|
41
|
+
return;
|
|
42
|
+
}
|
|
43
|
+
const removedItem = (_a = keyEntities[key]) !== null && _a !== void 0 ? _a : {};
|
|
44
|
+
!((_b = removedItem === null || removedItem === void 0 ? void 0 : removedItem.data) === null || _b === void 0 ? void 0 : _b.disable) && this._handleMultipleSelect(removedItem);
|
|
45
|
+
};
|
|
46
|
+
this.handleTagRemoveInTrigger = pos => {
|
|
47
|
+
const {
|
|
48
|
+
treeData
|
|
49
|
+
} = this.getStates();
|
|
50
|
+
const key = (0, _util.getKeyByPos)(pos, treeData);
|
|
51
|
+
this.handleTagRemoveByKey(key);
|
|
52
|
+
};
|
|
48
53
|
}
|
|
49
|
-
|
|
50
54
|
init() {
|
|
51
55
|
const isOpen = this.getProp('open') || this.getProp('defaultOpen');
|
|
52
56
|
this.collectOptions(true);
|
|
53
|
-
|
|
57
|
+
this._adapter.updateLoadingKeyRefValue(new Set());
|
|
58
|
+
this._adapter.updateLoadedKeyRefValue(new Set());
|
|
54
59
|
if (isOpen && !this._isDisabled()) {
|
|
55
60
|
this.open();
|
|
56
61
|
}
|
|
57
62
|
}
|
|
58
|
-
|
|
59
63
|
destroy() {
|
|
60
64
|
this._adapter.unregisterClickOutsideHandler();
|
|
61
65
|
}
|
|
62
|
-
|
|
63
66
|
_isDisabled() {
|
|
64
67
|
return this.getProp('disabled');
|
|
65
68
|
}
|
|
66
|
-
|
|
67
69
|
_isFilterable() {
|
|
68
70
|
return Boolean(this.getProp('filterTreeNode')); // filter can be boolean or function
|
|
69
71
|
}
|
|
@@ -74,78 +76,57 @@ class CascaderFoundation extends _foundation.default {
|
|
|
74
76
|
multiple
|
|
75
77
|
} = this.getProps();
|
|
76
78
|
const valueProp = onChangeWithObject ? [] : 'value';
|
|
77
|
-
|
|
78
79
|
if (multiple) {
|
|
79
|
-
const valuePath = [];
|
|
80
|
-
// @ts-ignore
|
|
81
|
-
|
|
80
|
+
const valuePath = [];
|
|
81
|
+
// @ts-ignore
|
|
82
82
|
item.forEach(checkedKey => {
|
|
83
83
|
const valuePathItem = this.getItemPropPath(checkedKey, valueProp);
|
|
84
84
|
valuePath.push(valuePathItem);
|
|
85
85
|
});
|
|
86
|
-
|
|
87
86
|
this._adapter.notifyChange(valuePath);
|
|
88
87
|
} else {
|
|
89
88
|
const valuePath = (0, _isUndefined2.default)(item) || !('key' in item) ? [] : this.getItemPropPath(item.key, valueProp);
|
|
90
|
-
|
|
91
89
|
this._adapter.notifyChange(valuePath);
|
|
92
90
|
}
|
|
93
91
|
}
|
|
94
|
-
|
|
95
92
|
_isLeaf(item) {
|
|
96
93
|
if (this.getProp('loadData')) {
|
|
97
94
|
return Boolean(item.isLeaf);
|
|
98
95
|
}
|
|
99
|
-
|
|
100
96
|
return !item.children || !item.children.length;
|
|
101
97
|
}
|
|
102
|
-
|
|
103
98
|
_clearInput() {
|
|
104
99
|
this._adapter.updateInputValue('');
|
|
105
|
-
}
|
|
100
|
+
}
|
|
101
|
+
// Scenes that may trigger blur:
|
|
106
102
|
// 1、clickOutSide
|
|
107
|
-
|
|
108
|
-
|
|
109
103
|
_notifyBlur(e) {
|
|
110
104
|
this._adapter.notifyBlur(e);
|
|
111
|
-
}
|
|
105
|
+
}
|
|
106
|
+
// Scenes that may trigger focus:
|
|
112
107
|
// 1、click selection
|
|
113
|
-
|
|
114
|
-
|
|
115
108
|
_notifyFocus(e) {
|
|
116
109
|
this._adapter.notifyFocus(e);
|
|
117
110
|
}
|
|
118
|
-
|
|
119
111
|
_isOptionDisabled(key, keyEntities) {
|
|
120
112
|
const isDisabled = (0, _treeUtil.findAncestorKeys)([key], keyEntities, true).some(item => keyEntities[item].data.disabled);
|
|
121
113
|
return isDisabled;
|
|
122
114
|
}
|
|
123
|
-
|
|
124
|
-
getCopyFromState(items) {
|
|
125
|
-
const res = {};
|
|
126
|
-
(0, _util.normalizedArr)(items).forEach(key => {
|
|
127
|
-
res[key] = (0, _cloneDeep2.default)(this.getState(key));
|
|
128
|
-
});
|
|
129
|
-
return res;
|
|
130
|
-
} // prop: is array, return all data
|
|
131
|
-
|
|
132
|
-
|
|
115
|
+
// prop: is array, return all data
|
|
133
116
|
getItemPropPath(selectedKey, prop, keyEntities) {
|
|
134
117
|
const searchMap = keyEntities || this.getState('keyEntities');
|
|
135
118
|
const selectedItem = searchMap[selectedKey];
|
|
136
119
|
let path = [];
|
|
137
|
-
|
|
138
|
-
|
|
120
|
+
if (!selectedItem) {
|
|
121
|
+
// do nothing
|
|
139
122
|
} else if (selectedItem._notExist) {
|
|
140
123
|
path = selectedItem.path;
|
|
141
124
|
} else {
|
|
142
125
|
const keyPath = selectedItem.path;
|
|
143
126
|
path = Array.isArray(prop) ? keyPath.map(key => searchMap[key].data) : keyPath.map(key => searchMap[key].data[prop]);
|
|
144
127
|
}
|
|
145
|
-
|
|
146
128
|
return path;
|
|
147
129
|
}
|
|
148
|
-
|
|
149
130
|
_getCacheValue(keyEntities) {
|
|
150
131
|
const {
|
|
151
132
|
selectedKeys
|
|
@@ -153,13 +134,10 @@ class CascaderFoundation extends _foundation.default {
|
|
|
153
134
|
const selectedKey = Array.from(selectedKeys)[0];
|
|
154
135
|
let cacheValue;
|
|
155
136
|
/* selectedKeys does not match keyEntities */
|
|
156
|
-
|
|
157
137
|
if ((0, _isEmpty2.default)(keyEntities[selectedKey])) {
|
|
158
138
|
if ((0, _includes2.default)(selectedKey, 'not-exist-')) {
|
|
159
139
|
/* Get the value behind not-exist- */
|
|
160
|
-
|
|
161
|
-
const targetValue = selectedKey.match(/not-exist-(\S*)/)[1]; // eslint-disable-next-line max-depth
|
|
162
|
-
|
|
140
|
+
const targetValue = selectedKey.match(/not-exist-(\S*)/)[1];
|
|
163
141
|
if ((0, _isEmpty2.default)(keyEntities[targetValue])) {
|
|
164
142
|
cacheValue = targetValue;
|
|
165
143
|
} else {
|
|
@@ -171,7 +149,6 @@ class CascaderFoundation extends _foundation.default {
|
|
|
171
149
|
* 中存在,则 selectedKeys=Set('0-0'),此时输入框显示 0-0 的 label。 这个地
|
|
172
150
|
* 方做的操作就是,为了例子中第二次更新后 0-0 label 能够正常显示。
|
|
173
151
|
*/
|
|
174
|
-
|
|
175
152
|
/**
|
|
176
153
|
* The typical scenario is: suppose we select the 0-0 node, at this time
|
|
177
154
|
* selectedKeys=Set('0-0'), the input box will display a 0-0 label. When
|
|
@@ -189,15 +166,12 @@ class CascaderFoundation extends _foundation.default {
|
|
|
189
166
|
cacheValue = selectedKey;
|
|
190
167
|
}
|
|
191
168
|
/* selectedKeys match keyEntities */
|
|
192
|
-
|
|
193
169
|
} else {
|
|
194
170
|
/* selectedKeys match keyEntities */
|
|
195
171
|
cacheValue = keyEntities[selectedKey].valuePath;
|
|
196
172
|
}
|
|
197
|
-
|
|
198
173
|
return cacheValue;
|
|
199
174
|
}
|
|
200
|
-
|
|
201
175
|
collectOptions() {
|
|
202
176
|
let init = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
|
|
203
177
|
const {
|
|
@@ -206,20 +180,15 @@ class CascaderFoundation extends _foundation.default {
|
|
|
206
180
|
defaultValue
|
|
207
181
|
} = this.getProps();
|
|
208
182
|
const keyEntities = (0, _util.convertDataToEntities)(treeData);
|
|
209
|
-
|
|
210
183
|
this._adapter.rePositionDropdown();
|
|
211
|
-
|
|
212
184
|
let cacheValue;
|
|
213
185
|
/* when mount */
|
|
214
|
-
|
|
215
186
|
if (init) {
|
|
216
187
|
cacheValue = defaultValue;
|
|
217
188
|
} else if (!(0, _isEmpty2.default)(keyEntities)) {
|
|
218
189
|
cacheValue = this._getCacheValue(keyEntities);
|
|
219
190
|
}
|
|
220
|
-
|
|
221
191
|
const selectedValue = !this._isControlledComponent() ? cacheValue : value;
|
|
222
|
-
|
|
223
192
|
if ((0, _util.isValid)(selectedValue)) {
|
|
224
193
|
this.updateSelectedKey(selectedValue, keyEntities);
|
|
225
194
|
} else {
|
|
@@ -227,9 +196,8 @@ class CascaderFoundation extends _foundation.default {
|
|
|
227
196
|
keyEntities
|
|
228
197
|
});
|
|
229
198
|
}
|
|
230
|
-
}
|
|
231
|
-
|
|
232
|
-
|
|
199
|
+
}
|
|
200
|
+
// call when props.value change
|
|
233
201
|
handleValueChange(value) {
|
|
234
202
|
const {
|
|
235
203
|
keyEntities
|
|
@@ -243,8 +211,6 @@ class CascaderFoundation extends _foundation.default {
|
|
|
243
211
|
* When single selection, the clear objects of
|
|
244
212
|
* selectedKeys, activeKeys, filteredKeys, input, etc.
|
|
245
213
|
*/
|
|
246
|
-
|
|
247
|
-
|
|
248
214
|
_getClearSelectedKey(filterable) {
|
|
249
215
|
const updateStates = {};
|
|
250
216
|
const {
|
|
@@ -255,15 +221,12 @@ class CascaderFoundation extends _foundation.default {
|
|
|
255
221
|
updateStates.selectedKeys = new Set([]);
|
|
256
222
|
updateStates.activeKeys = new Set([]);
|
|
257
223
|
updateStates.filteredKeys = new Set([]);
|
|
258
|
-
|
|
259
224
|
if (filterable && !multiple) {
|
|
260
225
|
updateStates.inputPlaceHolder = searchPlaceholder || placeholder || '';
|
|
261
226
|
updateStates.inputValue = '';
|
|
262
227
|
}
|
|
263
|
-
|
|
264
228
|
return updateStates;
|
|
265
229
|
}
|
|
266
|
-
|
|
267
230
|
updateSelectedKey(value, keyEntities) {
|
|
268
231
|
const {
|
|
269
232
|
changeOnSelect,
|
|
@@ -272,38 +235,37 @@ class CascaderFoundation extends _foundation.default {
|
|
|
272
235
|
} = this.getProps();
|
|
273
236
|
const {
|
|
274
237
|
activeKeys,
|
|
275
|
-
loadingKeys,
|
|
276
238
|
loading,
|
|
277
239
|
keyEntities: keyEntityState,
|
|
278
240
|
selectedKeys: selectedKeysState
|
|
279
241
|
} = this.getStates();
|
|
280
|
-
|
|
242
|
+
const loadingKeys = this._adapter.getLoadingKeyRefValue();
|
|
281
243
|
const filterable = this._isFilterable();
|
|
282
|
-
|
|
283
244
|
const loadingActive = [...activeKeys].filter(i => loadingKeys.has(i));
|
|
284
|
-
const
|
|
285
|
-
const
|
|
245
|
+
const normalizedValue = (0, _util.normalizedArr)(value);
|
|
246
|
+
const valuePath = onChangeWithObject && (0, _isObject2.default)(normalizedValue[0]) ? normalizedValue.map(i => i.value) : normalizedValue;
|
|
247
|
+
const selectedKeys = (0, _util.getKeysByValuePath)(valuePath);
|
|
286
248
|
let updateStates = {};
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
const selectedItem = keyEntities[selectedKey];
|
|
249
|
+
const selectedKey = selectedKeys.length > 0 ? selectedKeys[0] : undefined;
|
|
250
|
+
const selectedItem = selectedKey ? keyEntities[selectedKey] : undefined;
|
|
251
|
+
if (selectedItem) {
|
|
291
252
|
/**
|
|
292
253
|
* When changeOnSelect is turned on, or the target option is a leaf option,
|
|
293
254
|
* the option is considered to be selected, even if the option is disabled
|
|
294
255
|
*/
|
|
295
|
-
|
|
296
256
|
if (changeOnSelect || this._isLeaf(selectedItem.data)) {
|
|
297
257
|
updateStates.selectedKeys = new Set([selectedKey]);
|
|
298
|
-
|
|
299
258
|
if (!loadingActive.length) {
|
|
300
259
|
updateStates.activeKeys = new Set(selectedItem.path);
|
|
301
260
|
}
|
|
302
|
-
|
|
303
261
|
if (filterable && !multiple) {
|
|
304
262
|
const displayText = this.renderDisplayText(selectedKey, keyEntities);
|
|
305
263
|
updateStates.inputPlaceHolder = displayText;
|
|
306
|
-
|
|
264
|
+
/*
|
|
265
|
+
* displayText should not be assign to inputValue,
|
|
266
|
+
* cause inputValue should only change by user enter
|
|
267
|
+
*/
|
|
268
|
+
// updateStates.inputValue = displayText;
|
|
307
269
|
}
|
|
308
270
|
/**
|
|
309
271
|
* If selectedKeys does not meet the update conditions,
|
|
@@ -315,13 +277,12 @@ class CascaderFoundation extends _foundation.default {
|
|
|
315
277
|
* is a non-leaf node. At this point, selectedKeys should
|
|
316
278
|
* be cleared.
|
|
317
279
|
*/
|
|
318
|
-
|
|
319
280
|
} else if ((0, _isEqual2.default)(selectedKeys, Array.from(selectedKeysState))) {
|
|
320
281
|
updateStates = this._getClearSelectedKey(filterable);
|
|
321
282
|
}
|
|
322
283
|
} else if (value && value.length) {
|
|
323
284
|
const val = valuePath[valuePath.length - 1];
|
|
324
|
-
const key =
|
|
285
|
+
const key = `not-exist-${val}`;
|
|
325
286
|
const optionNotExist = {
|
|
326
287
|
data: {
|
|
327
288
|
label: val,
|
|
@@ -332,56 +293,46 @@ class CascaderFoundation extends _foundation.default {
|
|
|
332
293
|
_notExist: true
|
|
333
294
|
};
|
|
334
295
|
updateStates.selectedKeys = new Set([key]);
|
|
335
|
-
|
|
336
296
|
if (filterable && !multiple) {
|
|
337
297
|
const displayText = this._defaultRenderText(valuePath);
|
|
338
|
-
|
|
339
298
|
updateStates.inputPlaceHolder = displayText;
|
|
340
|
-
|
|
299
|
+
/*
|
|
300
|
+
* displayText should not be assign to inputValue,
|
|
301
|
+
* cause inputValue should only change by user enter
|
|
302
|
+
*/
|
|
303
|
+
// updateStates.inputValue = displayText;
|
|
341
304
|
}
|
|
342
305
|
|
|
343
|
-
keyEntities[key] = optionNotExist;
|
|
306
|
+
keyEntities[key] = optionNotExist;
|
|
307
|
+
// Fix: 1155, if the data is loaded asynchronously to update treeData, the emptying operation should not be done when entering the updateSelectedKey method
|
|
344
308
|
} else if (loading) {
|
|
345
309
|
// Use assign to avoid overwriting the'not-exist- * 'property of keyEntities after asynchronous loading
|
|
346
310
|
// Overwriting'not-exist- * 'will cause selectionContent to be emptied unexpectedly when clicking on a dropDown item
|
|
347
311
|
updateStates.keyEntities = (0, _assign2.default)(keyEntityState, keyEntities);
|
|
348
|
-
|
|
349
312
|
this._adapter.updateStates(updateStates);
|
|
350
|
-
|
|
351
313
|
return;
|
|
352
314
|
} else {
|
|
353
315
|
updateStates = this._getClearSelectedKey(filterable);
|
|
354
316
|
}
|
|
355
|
-
|
|
356
317
|
updateStates.keyEntities = keyEntities;
|
|
357
|
-
|
|
358
318
|
this._adapter.updateStates(updateStates);
|
|
359
319
|
}
|
|
360
|
-
|
|
361
320
|
open() {
|
|
362
321
|
const filterable = this._isFilterable();
|
|
363
|
-
|
|
364
322
|
const {
|
|
365
323
|
multiple
|
|
366
324
|
} = this.getProps();
|
|
367
|
-
|
|
368
325
|
this._adapter.openMenu();
|
|
369
|
-
|
|
370
326
|
if (filterable) {
|
|
371
327
|
this._clearInput();
|
|
372
|
-
|
|
373
328
|
!multiple && this.toggle2SearchInput(true);
|
|
374
329
|
}
|
|
375
|
-
|
|
376
330
|
if (this._isControlledComponent()) {
|
|
377
331
|
this.reCalcActiveKeys();
|
|
378
332
|
}
|
|
379
|
-
|
|
380
333
|
this._adapter.notifyDropdownVisibleChange(true);
|
|
381
|
-
|
|
382
334
|
this._adapter.registerClickOutsideHandler(e => this.close(e));
|
|
383
335
|
}
|
|
384
|
-
|
|
385
336
|
reCalcActiveKeys() {
|
|
386
337
|
const {
|
|
387
338
|
selectedKeys,
|
|
@@ -390,91 +341,82 @@ class CascaderFoundation extends _foundation.default {
|
|
|
390
341
|
} = this.getStates();
|
|
391
342
|
const selectedKey = [...selectedKeys][0];
|
|
392
343
|
const selectedItem = keyEntities[selectedKey];
|
|
393
|
-
|
|
394
344
|
if (!selectedItem) {
|
|
395
345
|
return;
|
|
396
346
|
}
|
|
397
|
-
|
|
398
347
|
const newActiveKeys = new Set(selectedItem.path);
|
|
399
|
-
|
|
400
348
|
if (!(0, _isEqual2.default)(newActiveKeys, activeKeys)) {
|
|
401
349
|
this._adapter.updateStates({
|
|
402
350
|
activeKeys: newActiveKeys
|
|
403
351
|
});
|
|
404
352
|
}
|
|
405
353
|
}
|
|
406
|
-
|
|
407
354
|
close(e, key) {
|
|
408
355
|
const {
|
|
409
356
|
multiple
|
|
410
357
|
} = this.getProps();
|
|
411
|
-
|
|
412
358
|
this._adapter.closeMenu();
|
|
413
|
-
|
|
414
359
|
this._adapter.notifyDropdownVisibleChange(false);
|
|
415
|
-
|
|
416
360
|
this._adapter.unregisterClickOutsideHandler();
|
|
417
|
-
|
|
418
361
|
if (this._isFilterable()) {
|
|
419
362
|
const {
|
|
420
363
|
selectedKeys,
|
|
421
364
|
isSearching
|
|
422
365
|
} = this.getStates();
|
|
423
366
|
let inputValue = '';
|
|
424
|
-
|
|
425
367
|
if (key && !multiple) {
|
|
426
368
|
inputValue = this.renderDisplayText(key);
|
|
427
369
|
} else if (selectedKeys.size && !multiple) {
|
|
428
370
|
inputValue = this.renderDisplayText([...selectedKeys][0]);
|
|
429
371
|
}
|
|
430
|
-
|
|
431
372
|
this._adapter.updateStates({
|
|
432
373
|
inputValue
|
|
433
374
|
});
|
|
434
|
-
|
|
435
375
|
!multiple && this.toggle2SearchInput(false);
|
|
436
376
|
!multiple && this._adapter.updateFocusState(false);
|
|
437
377
|
}
|
|
438
|
-
|
|
439
378
|
this._notifyBlur(e);
|
|
440
379
|
}
|
|
441
|
-
|
|
380
|
+
focus() {
|
|
381
|
+
const {
|
|
382
|
+
filterTreeNode
|
|
383
|
+
} = this.getProps();
|
|
384
|
+
if (filterTreeNode) {
|
|
385
|
+
this._adapter.focusInput();
|
|
386
|
+
}
|
|
387
|
+
this._adapter.updateFocusState(true);
|
|
388
|
+
}
|
|
389
|
+
blur() {
|
|
390
|
+
const {
|
|
391
|
+
filterTreeNode
|
|
392
|
+
} = this.getProps();
|
|
393
|
+
if (filterTreeNode) {
|
|
394
|
+
this._adapter.blurInput();
|
|
395
|
+
}
|
|
396
|
+
this._adapter.updateFocusState(false);
|
|
397
|
+
}
|
|
442
398
|
toggle2SearchInput(isShow) {
|
|
443
399
|
if (isShow) {
|
|
444
|
-
this._adapter.toggleInputShow(isShow, () => this.
|
|
400
|
+
this._adapter.toggleInputShow(isShow, () => this.focus());
|
|
445
401
|
} else {
|
|
446
402
|
this._adapter.toggleInputShow(isShow, () => undefined);
|
|
447
403
|
}
|
|
448
404
|
}
|
|
449
|
-
|
|
450
|
-
focusInput() {
|
|
451
|
-
this._adapter.focusInput();
|
|
452
|
-
|
|
453
|
-
this._adapter.updateFocusState(true);
|
|
454
|
-
}
|
|
455
|
-
|
|
456
405
|
handleItemClick(e, item) {
|
|
457
406
|
const isDisabled = this._isDisabled();
|
|
458
|
-
|
|
459
407
|
if (isDisabled) {
|
|
460
408
|
return;
|
|
461
409
|
}
|
|
462
|
-
|
|
463
410
|
this.handleSingleSelect(e, item);
|
|
464
|
-
|
|
465
411
|
this._adapter.rePositionDropdown();
|
|
466
412
|
}
|
|
467
|
-
|
|
468
413
|
handleItemHover(e, item) {
|
|
469
414
|
const isDisabled = this._isDisabled();
|
|
470
|
-
|
|
471
415
|
if (isDisabled) {
|
|
472
416
|
return;
|
|
473
417
|
}
|
|
474
|
-
|
|
475
418
|
this.handleShowNextByHover(item);
|
|
476
419
|
}
|
|
477
|
-
|
|
478
420
|
handleShowNextByHover(item) {
|
|
479
421
|
const {
|
|
480
422
|
keyEntities
|
|
@@ -483,46 +425,33 @@ class CascaderFoundation extends _foundation.default {
|
|
|
483
425
|
data,
|
|
484
426
|
key
|
|
485
427
|
} = item;
|
|
486
|
-
|
|
487
428
|
const isLeaf = this._isLeaf(data);
|
|
488
|
-
|
|
489
429
|
const activeKeys = keyEntities[key].path;
|
|
490
|
-
|
|
491
430
|
this._adapter.updateStates({
|
|
492
431
|
activeKeys: new Set(activeKeys)
|
|
493
432
|
});
|
|
494
|
-
|
|
495
433
|
if (!isLeaf) {
|
|
496
434
|
this.notifyIfLoadData(item);
|
|
497
435
|
}
|
|
498
436
|
}
|
|
499
|
-
|
|
500
437
|
onItemCheckboxClick(item) {
|
|
501
438
|
const isDisabled = this._isDisabled();
|
|
502
|
-
|
|
503
439
|
if (isDisabled) {
|
|
504
440
|
return;
|
|
505
441
|
}
|
|
506
|
-
|
|
507
442
|
this._handleMultipleSelect(item);
|
|
508
|
-
|
|
509
443
|
this._adapter.rePositionDropdown();
|
|
510
444
|
}
|
|
511
|
-
|
|
512
445
|
handleClick(e) {
|
|
513
446
|
const isDisabled = this._isDisabled();
|
|
514
|
-
|
|
515
447
|
const isFilterable = this._isFilterable();
|
|
516
|
-
|
|
517
448
|
const {
|
|
518
449
|
isOpen
|
|
519
450
|
} = this.getStates();
|
|
520
|
-
|
|
521
451
|
if (isDisabled) {
|
|
522
452
|
return;
|
|
523
453
|
} else if (!isOpen) {
|
|
524
454
|
this.open();
|
|
525
|
-
|
|
526
455
|
this._notifyFocus(e);
|
|
527
456
|
} else if (isOpen && !isFilterable) {
|
|
528
457
|
this.close(e);
|
|
@@ -531,94 +460,77 @@ class CascaderFoundation extends _foundation.default {
|
|
|
531
460
|
/**
|
|
532
461
|
* A11y: simulate selection click
|
|
533
462
|
*/
|
|
534
|
-
|
|
535
463
|
/* istanbul ignore next */
|
|
536
|
-
|
|
537
|
-
|
|
538
464
|
handleSelectionEnterPress(keyboardEvent) {
|
|
539
465
|
if ((0, _isEnterPress.default)(keyboardEvent)) {
|
|
540
466
|
this.handleClick(keyboardEvent);
|
|
541
467
|
}
|
|
542
468
|
}
|
|
543
|
-
|
|
544
469
|
toggleHoverState(bool) {
|
|
545
470
|
this._adapter.toggleHovering(bool);
|
|
546
471
|
}
|
|
547
|
-
|
|
548
472
|
_defaultRenderText(path, displayRender) {
|
|
549
473
|
const separator = this.getProp('separator');
|
|
550
|
-
|
|
551
474
|
if (displayRender && typeof displayRender === 'function') {
|
|
552
475
|
return displayRender(path);
|
|
553
476
|
} else {
|
|
554
477
|
return path.join(separator);
|
|
555
478
|
}
|
|
556
479
|
}
|
|
557
|
-
|
|
558
480
|
renderDisplayText(targetKey, keyEntities) {
|
|
559
481
|
const renderFunc = this.getProp('displayRender');
|
|
560
482
|
const displayProp = this.getProp('displayProp');
|
|
561
483
|
const displayPath = this.getItemPropPath(targetKey, displayProp, keyEntities);
|
|
562
484
|
return this._defaultRenderText(displayPath, renderFunc);
|
|
563
485
|
}
|
|
564
|
-
|
|
565
486
|
handleNodeLoad(item) {
|
|
566
487
|
const {
|
|
567
488
|
data,
|
|
568
489
|
key
|
|
569
490
|
} = item;
|
|
570
|
-
const
|
|
571
|
-
|
|
572
|
-
loadingKeys: prevLoadingKeys
|
|
573
|
-
} = this.getCopyFromState(['loadedKeys', 'loadingKeys']);
|
|
491
|
+
const prevLoadingKeys = new Set(this._adapter.getLoadingKeyRefValue());
|
|
492
|
+
const prevLoadedKeys = new Set(this._adapter.getLoadedKeyRefValue());
|
|
574
493
|
const newLoadedKeys = prevLoadedKeys.add(key);
|
|
575
494
|
const newLoadingKeys = new Set([...prevLoadingKeys]);
|
|
576
|
-
newLoadingKeys.delete(key);
|
|
577
|
-
|
|
495
|
+
newLoadingKeys.delete(key);
|
|
496
|
+
// onLoad should trigger before internal setState to avoid `loadData` trigger twice.
|
|
578
497
|
this._adapter.notifyOnLoad(newLoadedKeys, data);
|
|
579
|
-
|
|
498
|
+
this._adapter.updateLoadingKeyRefValue(newLoadingKeys);
|
|
499
|
+
this._adapter.updateLoadedKeyRefValue(newLoadedKeys);
|
|
580
500
|
this._adapter.updateStates({
|
|
581
|
-
loadingKeys: newLoadingKeys
|
|
501
|
+
loadingKeys: newLoadingKeys,
|
|
502
|
+
loadedKeys: newLoadedKeys
|
|
582
503
|
});
|
|
583
504
|
}
|
|
584
|
-
|
|
585
505
|
notifyIfLoadData(item) {
|
|
586
506
|
const {
|
|
587
507
|
data,
|
|
588
508
|
key
|
|
589
509
|
} = item;
|
|
590
|
-
|
|
591
510
|
this._adapter.updateStates({
|
|
592
511
|
loading: false
|
|
593
512
|
});
|
|
594
|
-
|
|
595
513
|
if (!data.isLeaf && !data.children && this.getProp('loadData')) {
|
|
596
|
-
const
|
|
597
|
-
|
|
598
|
-
loadingKeys
|
|
599
|
-
} = this.getCopyFromState(['loadedKeys', 'loadingKeys']);
|
|
600
|
-
|
|
514
|
+
const loadedKeys = this._adapter.getLoadedKeyRefValue();
|
|
515
|
+
const loadingKeys = new Set(this._adapter.getLoadingKeyRefValue());
|
|
601
516
|
if (loadedKeys.has(key) || loadingKeys.has(key)) {
|
|
602
517
|
return;
|
|
603
518
|
}
|
|
604
|
-
|
|
605
519
|
this._adapter.updateStates({
|
|
606
520
|
loading: true
|
|
607
521
|
});
|
|
608
|
-
|
|
609
522
|
const {
|
|
610
523
|
keyEntities
|
|
611
524
|
} = this.getStates();
|
|
612
525
|
const optionPath = this.getItemPropPath(key, [], keyEntities);
|
|
613
|
-
|
|
526
|
+
const newLoadingKeys = loadingKeys.add(key);
|
|
527
|
+
this._adapter.updateLoadingKeyRefValue(newLoadingKeys);
|
|
614
528
|
this._adapter.updateStates({
|
|
615
|
-
loadingKeys:
|
|
529
|
+
loadingKeys: newLoadingKeys
|
|
616
530
|
});
|
|
617
|
-
|
|
618
531
|
this._adapter.notifyLoadData(optionPath, this.handleNodeLoad.bind(this, item));
|
|
619
532
|
}
|
|
620
533
|
}
|
|
621
|
-
|
|
622
534
|
handleSingleSelect(e, item) {
|
|
623
535
|
const {
|
|
624
536
|
changeOnSelect: allowChange,
|
|
@@ -631,68 +543,51 @@ class CascaderFoundation extends _foundation.default {
|
|
|
631
543
|
selectedKeys,
|
|
632
544
|
isSearching
|
|
633
545
|
} = this.getStates();
|
|
634
|
-
|
|
635
546
|
const filterable = this._isFilterable();
|
|
636
|
-
|
|
637
547
|
const {
|
|
638
548
|
data,
|
|
639
549
|
key
|
|
640
550
|
} = item;
|
|
641
|
-
|
|
642
551
|
const isLeaf = this._isLeaf(data);
|
|
643
|
-
|
|
644
552
|
const activeKeys = keyEntities[key].path;
|
|
645
553
|
const selectedKey = [key];
|
|
646
554
|
const hasChanged = key !== [...selectedKeys][0];
|
|
647
|
-
|
|
648
555
|
if (!isLeaf && !allowChange && !isSearching) {
|
|
649
556
|
this._adapter.updateStates({
|
|
650
557
|
activeKeys: new Set(activeKeys)
|
|
651
558
|
});
|
|
652
|
-
|
|
653
559
|
this.notifyIfLoadData(item);
|
|
654
560
|
return;
|
|
655
561
|
}
|
|
656
|
-
|
|
657
562
|
if (multiple) {
|
|
658
563
|
this._adapter.updateStates({
|
|
659
564
|
activeKeys: new Set(activeKeys)
|
|
660
565
|
});
|
|
661
|
-
|
|
662
566
|
if (isLeaf && enableLeafClick) {
|
|
663
567
|
this.onItemCheckboxClick(item);
|
|
664
568
|
}
|
|
665
569
|
} else {
|
|
666
570
|
this._adapter.notifySelect(data.value);
|
|
667
|
-
|
|
668
571
|
if (hasChanged) {
|
|
669
572
|
this._notifyChange(item);
|
|
670
|
-
|
|
671
573
|
this.notifyIfLoadData(item);
|
|
672
|
-
|
|
673
574
|
if (this._isControlledComponent()) {
|
|
674
575
|
this._adapter.updateStates({
|
|
675
576
|
activeKeys: new Set(activeKeys)
|
|
676
577
|
});
|
|
677
|
-
|
|
678
578
|
if (isLeaf) {
|
|
679
579
|
this.close(e);
|
|
680
580
|
}
|
|
681
|
-
|
|
682
581
|
return;
|
|
683
582
|
}
|
|
684
|
-
|
|
685
583
|
this._adapter.updateStates({
|
|
686
584
|
activeKeys: new Set(activeKeys),
|
|
687
585
|
selectedKeys: new Set(selectedKey)
|
|
688
586
|
});
|
|
689
|
-
|
|
690
587
|
const displayText = this.renderDisplayText(key);
|
|
691
|
-
|
|
692
588
|
if (filterable) {
|
|
693
589
|
this._adapter.updateInputPlaceHolder(displayText);
|
|
694
590
|
}
|
|
695
|
-
|
|
696
591
|
if (isLeaf) {
|
|
697
592
|
this.close(e, key);
|
|
698
593
|
} else if (!filterLeafOnly && isSearching) {
|
|
@@ -703,7 +598,6 @@ class CascaderFoundation extends _foundation.default {
|
|
|
703
598
|
}
|
|
704
599
|
}
|
|
705
600
|
}
|
|
706
|
-
|
|
707
601
|
_handleMultipleSelect(item) {
|
|
708
602
|
const {
|
|
709
603
|
key
|
|
@@ -718,12 +612,12 @@ class CascaderFoundation extends _foundation.default {
|
|
|
718
612
|
max,
|
|
719
613
|
disableStrictly,
|
|
720
614
|
leafOnly
|
|
721
|
-
} = this.getProps();
|
|
722
|
-
|
|
723
|
-
const prevCheckedStatus = checkedKeys.has(key);
|
|
724
|
-
|
|
725
|
-
const curCheckedStatus = disableStrictly ? this.calcCheckedStatus(!prevCheckedStatus, key) : !prevCheckedStatus;
|
|
726
|
-
|
|
615
|
+
} = this.getProps();
|
|
616
|
+
// prev checked status
|
|
617
|
+
const prevCheckedStatus = checkedKeys.has(key);
|
|
618
|
+
// next checked status
|
|
619
|
+
const curCheckedStatus = disableStrictly ? this.calcCheckedStatus(!prevCheckedStatus, key) : !prevCheckedStatus;
|
|
620
|
+
// calculate all key of nodes that are checked or half checked
|
|
727
621
|
const {
|
|
728
622
|
checkedKeys: curCheckedKeys,
|
|
729
623
|
halfCheckedKeys: curHalfCheckedKeys
|
|
@@ -733,7 +627,6 @@ class CascaderFoundation extends _foundation.default {
|
|
|
733
627
|
const isNoneMerge = mergeType === _constants.strings.NONE_MERGE_TYPE;
|
|
734
628
|
const curResolvedCheckedKeys = new Set((0, _treeUtil.normalizeKeyList)(curCheckedKeys, keyEntities, isLeafOnlyMerge));
|
|
735
629
|
const curRealCheckedKeys = isNoneMerge ? curCheckedKeys : curResolvedCheckedKeys;
|
|
736
|
-
|
|
737
630
|
if ((0, _isNumber2.default)(max)) {
|
|
738
631
|
if (!isNoneMerge) {
|
|
739
632
|
// When it exceeds max, the quantity is allowed to be reduced, and no further increase is allowed
|
|
@@ -742,9 +635,7 @@ class CascaderFoundation extends _foundation.default {
|
|
|
742
635
|
curResolvedCheckedKeys.forEach(itemKey => {
|
|
743
636
|
checkedEntities.push(keyEntities[itemKey]);
|
|
744
637
|
});
|
|
745
|
-
|
|
746
638
|
this._adapter.notifyOnExceed(checkedEntities);
|
|
747
|
-
|
|
748
639
|
return;
|
|
749
640
|
}
|
|
750
641
|
} else {
|
|
@@ -754,60 +645,47 @@ class CascaderFoundation extends _foundation.default {
|
|
|
754
645
|
curCheckedKeys.forEach(itemKey => {
|
|
755
646
|
checkedEntities.push(keyEntities[itemKey]);
|
|
756
647
|
});
|
|
757
|
-
|
|
758
648
|
this._adapter.notifyOnExceed(checkedEntities);
|
|
759
|
-
|
|
760
649
|
return;
|
|
761
650
|
}
|
|
762
651
|
}
|
|
763
652
|
}
|
|
764
|
-
|
|
765
653
|
if (!this._isControlledComponent()) {
|
|
766
654
|
this._adapter.updateStates({
|
|
767
655
|
checkedKeys: curCheckedKeys,
|
|
768
656
|
halfCheckedKeys: curHalfCheckedKeys,
|
|
769
657
|
resolvedCheckedKeys: curResolvedCheckedKeys
|
|
770
658
|
});
|
|
771
|
-
}
|
|
659
|
+
}
|
|
660
|
+
// The click event during multiple selection will definitely cause the checked state of node to change,
|
|
772
661
|
// so there is no need to judge the value to change.
|
|
773
|
-
|
|
774
|
-
|
|
775
662
|
this._notifyChange(curRealCheckedKeys);
|
|
776
|
-
|
|
777
663
|
if (curCheckedStatus) {
|
|
778
664
|
this._notifySelect(curRealCheckedKeys);
|
|
779
665
|
}
|
|
780
|
-
|
|
781
666
|
this._adapter.updateStates({
|
|
782
667
|
inputValue: ''
|
|
783
668
|
});
|
|
784
669
|
}
|
|
785
|
-
|
|
786
670
|
calcNonDisabledCheckedKeys(eventKey, targetStatus) {
|
|
787
671
|
const {
|
|
788
672
|
keyEntities,
|
|
789
673
|
disabledKeys
|
|
790
674
|
} = this.getStates();
|
|
791
|
-
const
|
|
792
|
-
checkedKeys
|
|
793
|
-
} = this.getCopyFromState(['checkedKeys']);
|
|
675
|
+
const checkedKeys = new Set(this.getState('checkedKeys'));
|
|
794
676
|
const descendantKeys = (0, _treeUtil.normalizeKeyList)((0, _treeUtil.findDescendantKeys)([eventKey], keyEntities, false), keyEntities, true);
|
|
795
677
|
const hasDisabled = descendantKeys.some(key => disabledKeys.has(key));
|
|
796
|
-
|
|
797
678
|
if (!hasDisabled) {
|
|
798
679
|
return this.calcCheckedKeys(eventKey, targetStatus);
|
|
799
680
|
}
|
|
800
|
-
|
|
801
681
|
const nonDisabled = descendantKeys.filter(key => !disabledKeys.has(key));
|
|
802
682
|
const newCheckedKeys = targetStatus ? [...nonDisabled, ...checkedKeys] : (0, _difference2.default)((0, _treeUtil.normalizeKeyList)([...checkedKeys], keyEntities, true), nonDisabled);
|
|
803
683
|
return (0, _treeUtil.calcCheckedKeys)(newCheckedKeys, keyEntities);
|
|
804
684
|
}
|
|
805
|
-
|
|
806
685
|
calcCheckedStatus(targetStatus, eventKey) {
|
|
807
686
|
if (!targetStatus) {
|
|
808
687
|
return targetStatus;
|
|
809
688
|
}
|
|
810
|
-
|
|
811
689
|
const {
|
|
812
690
|
checkedKeys,
|
|
813
691
|
keyEntities,
|
|
@@ -815,29 +693,24 @@ class CascaderFoundation extends _foundation.default {
|
|
|
815
693
|
} = this.getStates();
|
|
816
694
|
const descendantKeys = (0, _treeUtil.normalizeKeyList)((0, _treeUtil.findDescendantKeys)([eventKey], keyEntities, false), keyEntities, true);
|
|
817
695
|
const hasDisabled = descendantKeys.some(key => disabledKeys.has(key));
|
|
818
|
-
|
|
819
696
|
if (!hasDisabled) {
|
|
820
697
|
return targetStatus;
|
|
821
698
|
}
|
|
822
|
-
|
|
823
699
|
const nonDisabledKeys = descendantKeys.filter(key => !disabledKeys.has(key));
|
|
824
700
|
const allChecked = nonDisabledKeys.every(key => checkedKeys.has(key));
|
|
825
701
|
return !allChecked;
|
|
826
702
|
}
|
|
827
|
-
|
|
828
703
|
_notifySelect(keys) {
|
|
829
704
|
const {
|
|
830
705
|
keyEntities
|
|
831
706
|
} = this.getStates();
|
|
832
707
|
const values = [];
|
|
833
708
|
keys.forEach(key => {
|
|
834
|
-
|
|
835
|
-
|
|
836
|
-
|
|
837
|
-
}
|
|
709
|
+
var _a, _b;
|
|
710
|
+
const valueItem = (_b = (_a = keyEntities[key]) === null || _a === void 0 ? void 0 : _a.data) === null || _b === void 0 ? void 0 : _b.value;
|
|
711
|
+
valueItem !== undefined && values.push(valueItem);
|
|
838
712
|
});
|
|
839
713
|
const formatValue = values.length === 1 ? values[0] : values;
|
|
840
|
-
|
|
841
714
|
this._adapter.notifySelect(formatValue);
|
|
842
715
|
}
|
|
843
716
|
/**
|
|
@@ -845,22 +718,16 @@ class CascaderFoundation extends _foundation.default {
|
|
|
845
718
|
* @param {string} key key of node
|
|
846
719
|
* @param {boolean} curCheckedStatus checked status of node
|
|
847
720
|
*/
|
|
848
|
-
|
|
849
|
-
|
|
850
721
|
calcCheckedKeys(key, curCheckedStatus) {
|
|
851
722
|
const {
|
|
852
723
|
keyEntities
|
|
853
724
|
} = this.getStates();
|
|
854
|
-
const
|
|
855
|
-
|
|
856
|
-
halfCheckedKeys
|
|
857
|
-
} = this.getCopyFromState(['checkedKeys', 'halfCheckedKeys']);
|
|
725
|
+
const checkedKeys = new Set(this.getState('checkedKeys'));
|
|
726
|
+
const halfCheckedKeys = new Set(this.getState('halfCheckedKeys'));
|
|
858
727
|
return curCheckedStatus ? (0, _treeUtil.calcCheckedKeysForChecked)(key, keyEntities, checkedKeys, halfCheckedKeys) : (0, _treeUtil.calcCheckedKeysForUnchecked)(key, keyEntities, checkedKeys, halfCheckedKeys);
|
|
859
728
|
}
|
|
860
|
-
|
|
861
729
|
handleInputChange(sugInput) {
|
|
862
730
|
this._adapter.updateInputValue(sugInput);
|
|
863
|
-
|
|
864
731
|
const {
|
|
865
732
|
keyEntities
|
|
866
733
|
} = this.getStates();
|
|
@@ -870,31 +737,26 @@ class CascaderFoundation extends _foundation.default {
|
|
|
870
737
|
filterLeafOnly
|
|
871
738
|
} = this.getProps();
|
|
872
739
|
let filteredKeys = [];
|
|
873
|
-
|
|
874
740
|
if (sugInput) {
|
|
875
741
|
filteredKeys = Object.values(keyEntities).filter(item => {
|
|
876
742
|
const {
|
|
877
743
|
key,
|
|
878
|
-
_notExist
|
|
744
|
+
_notExist,
|
|
745
|
+
data
|
|
879
746
|
} = item;
|
|
880
|
-
|
|
881
747
|
if (_notExist) {
|
|
882
748
|
return false;
|
|
883
749
|
}
|
|
884
|
-
|
|
885
|
-
|
|
886
|
-
return (0, _treeUtil.filter)(sugInput, filteredPath, filterTreeNode, false);
|
|
750
|
+
const filteredPath = this.getItemPropPath(key, treeNodeFilterProp);
|
|
751
|
+
return (0, _util.filter)(sugInput, data, filterTreeNode, filteredPath);
|
|
887
752
|
}).filter(item => filterTreeNode && !filterLeafOnly || this._isLeaf(item)).map(item => item.key);
|
|
888
753
|
}
|
|
889
|
-
|
|
890
754
|
this._adapter.updateStates({
|
|
891
755
|
isSearching: Boolean(sugInput),
|
|
892
756
|
filteredKeys: new Set(filteredKeys)
|
|
893
757
|
});
|
|
894
|
-
|
|
895
758
|
this._adapter.notifyOnSearch(sugInput);
|
|
896
759
|
}
|
|
897
|
-
|
|
898
760
|
handleClear() {
|
|
899
761
|
const {
|
|
900
762
|
isSearching
|
|
@@ -904,121 +766,101 @@ class CascaderFoundation extends _foundation.default {
|
|
|
904
766
|
placeholder,
|
|
905
767
|
multiple
|
|
906
768
|
} = this.getProps();
|
|
907
|
-
|
|
908
769
|
const isFilterable = this._isFilterable();
|
|
909
|
-
|
|
910
770
|
const isControlled = this._isControlledComponent();
|
|
911
|
-
|
|
912
771
|
const newState = {};
|
|
913
|
-
|
|
914
772
|
if (multiple) {
|
|
773
|
+
newState.isSearching = false;
|
|
915
774
|
this._adapter.updateInputValue('');
|
|
916
|
-
|
|
917
775
|
this._adapter.notifyOnSearch('');
|
|
918
|
-
|
|
919
776
|
newState.checkedKeys = new Set([]);
|
|
920
777
|
newState.halfCheckedKeys = new Set([]);
|
|
921
778
|
newState.selectedKeys = new Set([]);
|
|
922
779
|
newState.activeKeys = new Set([]);
|
|
923
780
|
newState.resolvedCheckedKeys = new Set([]);
|
|
924
|
-
|
|
925
781
|
this._adapter.notifyChange([]);
|
|
926
782
|
} else {
|
|
927
783
|
// if click clearBtn when not searching, clear selected and active values as well
|
|
928
784
|
if (isFilterable && isSearching) {
|
|
929
785
|
newState.isSearching = false;
|
|
930
|
-
|
|
931
786
|
this._adapter.updateInputValue('');
|
|
932
|
-
|
|
933
787
|
this._adapter.notifyOnSearch('');
|
|
934
788
|
} else {
|
|
935
789
|
if (isFilterable) {
|
|
936
790
|
newState.inputValue = '';
|
|
937
791
|
newState.inputPlaceHolder = searchPlaceholder || placeholder || '';
|
|
938
|
-
|
|
939
792
|
this._adapter.updateInputValue('');
|
|
940
|
-
|
|
941
793
|
this._adapter.notifyOnSearch('');
|
|
942
794
|
}
|
|
943
|
-
|
|
944
795
|
if (!isControlled) {
|
|
945
796
|
newState.selectedKeys = new Set([]);
|
|
946
797
|
}
|
|
947
|
-
|
|
948
798
|
newState.activeKeys = new Set([]);
|
|
949
799
|
newState.filteredKeys = new Set([]);
|
|
950
|
-
|
|
951
800
|
this._adapter.notifyChange([]);
|
|
952
801
|
}
|
|
953
802
|
}
|
|
954
|
-
|
|
955
803
|
this._adapter.updateStates(newState);
|
|
956
|
-
|
|
957
804
|
this._adapter.notifyClear();
|
|
958
|
-
|
|
959
805
|
this._adapter.rePositionDropdown();
|
|
960
806
|
}
|
|
961
807
|
/**
|
|
962
808
|
* A11y: simulate clear button click
|
|
963
809
|
*/
|
|
964
|
-
|
|
965
810
|
/* istanbul ignore next */
|
|
966
|
-
|
|
967
|
-
|
|
968
811
|
handleClearEnterPress(keyboardEvent) {
|
|
969
812
|
if ((0, _isEnterPress.default)(keyboardEvent)) {
|
|
970
813
|
this.handleClear();
|
|
971
814
|
}
|
|
972
815
|
}
|
|
973
|
-
|
|
974
816
|
getRenderData() {
|
|
975
817
|
const {
|
|
976
818
|
keyEntities,
|
|
977
819
|
isSearching
|
|
978
820
|
} = this.getStates();
|
|
979
|
-
|
|
980
821
|
const isFilterable = this._isFilterable();
|
|
981
|
-
|
|
982
822
|
if (isSearching && isFilterable) {
|
|
983
823
|
return this.getFilteredData();
|
|
984
824
|
}
|
|
985
|
-
|
|
986
|
-
return Object.values(keyEntities).filter(item => item.parentKey === null && !item._notExist) // eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
825
|
+
return Object.values(keyEntities).filter(item => item.parentKey === null && !item._notExist)
|
|
987
826
|
// @ts-ignore
|
|
988
827
|
.sort((a, b) => parseInt(a.ind, 10) - parseInt(b.ind, 10));
|
|
989
828
|
}
|
|
990
|
-
|
|
991
829
|
getFilteredData() {
|
|
992
830
|
const {
|
|
993
|
-
treeNodeFilterProp
|
|
831
|
+
treeNodeFilterProp,
|
|
832
|
+
filterSorter
|
|
994
833
|
} = this.getProps();
|
|
995
834
|
const {
|
|
996
835
|
filteredKeys,
|
|
997
|
-
keyEntities
|
|
836
|
+
keyEntities,
|
|
837
|
+
inputValue
|
|
998
838
|
} = this.getStates();
|
|
999
839
|
const filteredList = [];
|
|
1000
840
|
const filteredKeyArr = [...filteredKeys];
|
|
1001
841
|
filteredKeyArr.forEach(key => {
|
|
1002
842
|
const item = keyEntities[key];
|
|
1003
|
-
|
|
1004
843
|
if (!item) {
|
|
1005
844
|
return;
|
|
1006
845
|
}
|
|
1007
|
-
|
|
1008
|
-
const itemSearchPath =
|
|
1009
|
-
|
|
846
|
+
const pathData = this.getItemPropPath(key, []);
|
|
847
|
+
const itemSearchPath = pathData.map(item => item[treeNodeFilterProp]);
|
|
1010
848
|
const isDisabled = this._isOptionDisabled(key, keyEntities);
|
|
1011
|
-
|
|
1012
849
|
filteredList.push({
|
|
1013
850
|
data: item.data,
|
|
851
|
+
pathData,
|
|
1014
852
|
key,
|
|
1015
853
|
disabled: isDisabled,
|
|
1016
854
|
searchText: itemSearchPath
|
|
1017
855
|
});
|
|
1018
856
|
});
|
|
857
|
+
if ((0, _isFunction2.default)(filterSorter)) {
|
|
858
|
+
filteredList.sort((a, b) => {
|
|
859
|
+
return filterSorter(a.pathData, b.pathData, inputValue);
|
|
860
|
+
});
|
|
861
|
+
}
|
|
1019
862
|
return filteredList;
|
|
1020
863
|
}
|
|
1021
|
-
|
|
1022
864
|
handleListScroll(e, ind) {
|
|
1023
865
|
const {
|
|
1024
866
|
activeKeys,
|
|
@@ -1026,30 +868,10 @@ class CascaderFoundation extends _foundation.default {
|
|
|
1026
868
|
} = this.getStates();
|
|
1027
869
|
const lastActiveKey = [...activeKeys][activeKeys.size - 1];
|
|
1028
870
|
const data = lastActiveKey ? (0, _get2.default)(keyEntities, [lastActiveKey, 'data'], null) : null;
|
|
1029
|
-
|
|
1030
871
|
this._adapter.notifyListScroll(e, {
|
|
1031
872
|
panelIndex: ind,
|
|
1032
873
|
activeNode: data
|
|
1033
874
|
});
|
|
1034
875
|
}
|
|
1035
|
-
|
|
1036
|
-
handleTagRemove(e, tagValuePath) {
|
|
1037
|
-
const {
|
|
1038
|
-
keyEntities
|
|
1039
|
-
} = this.getStates();
|
|
1040
|
-
const {
|
|
1041
|
-
disabled
|
|
1042
|
-
} = this.getProps();
|
|
1043
|
-
|
|
1044
|
-
if (disabled) {
|
|
1045
|
-
/* istanbul ignore next */
|
|
1046
|
-
return;
|
|
1047
|
-
}
|
|
1048
|
-
|
|
1049
|
-
const removedItem = Object.values(keyEntities).filter(item => (0, _isEqual2.default)(item.valuePath, tagValuePath))[0];
|
|
1050
|
-
!(0, _isEmpty2.default)(removedItem) && !removedItem.data.disabled && this._handleMultipleSelect(removedItem);
|
|
1051
|
-
}
|
|
1052
|
-
|
|
1053
876
|
}
|
|
1054
|
-
|
|
1055
877
|
exports.default = CascaderFoundation;
|