@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
|
@@ -16,14 +16,57 @@ import BaseFoundation from '../base/foundation';
|
|
|
16
16
|
import { strings, numbers } from './constants';
|
|
17
17
|
import { mergeQueries, flattenColumns, filterColumns } from './utils';
|
|
18
18
|
import { pullAll, withOrderSort } from '../utils/array';
|
|
19
|
-
|
|
20
19
|
class TableFoundation extends BaseFoundation {
|
|
20
|
+
/**
|
|
21
|
+
* update columns in place, and use default values as initial values if the sorting and filtering columns have no values
|
|
22
|
+
*/
|
|
23
|
+
static initColumnsFilteredValueAndSorterOrder(columns) {
|
|
24
|
+
columns.forEach(column => {
|
|
25
|
+
TableFoundation.initFilteredValue(column);
|
|
26
|
+
TableFoundation.initSorterOrder(column);
|
|
27
|
+
});
|
|
28
|
+
return columns;
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* init filteredValue of filtering column, use defaultFilteredValue or [] when it is undefined
|
|
32
|
+
*/
|
|
33
|
+
static initFilteredValue(column) {
|
|
34
|
+
const {
|
|
35
|
+
defaultFilteredValue,
|
|
36
|
+
filteredValue
|
|
37
|
+
} = column;
|
|
38
|
+
// There may be cases where onFilter is empty, such as server-side filtering
|
|
39
|
+
// Because filterValue affects the output of filters, it needs to be initialized here
|
|
40
|
+
if (_isUndefined(filteredValue)) {
|
|
41
|
+
if (Array.isArray(defaultFilteredValue) && defaultFilteredValue.length) {
|
|
42
|
+
column.filteredValue = defaultFilteredValue;
|
|
43
|
+
} else {
|
|
44
|
+
column.filteredValue = [];
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* init sortOrder of sorting column, use defaultSortOrder or [] when it is undefined
|
|
50
|
+
*/
|
|
51
|
+
static initSorterOrder(column) {
|
|
52
|
+
const {
|
|
53
|
+
defaultSortOrder,
|
|
54
|
+
sortOrder,
|
|
55
|
+
sorter
|
|
56
|
+
} = column;
|
|
57
|
+
if (sorter && _isUndefined(sortOrder)) {
|
|
58
|
+
if (!_isUndefined(defaultSortOrder)) {
|
|
59
|
+
column.sortOrder = defaultSortOrder;
|
|
60
|
+
} else {
|
|
61
|
+
column.sortOrder = false;
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
}
|
|
21
65
|
constructor(adapter) {
|
|
22
66
|
super(Object.assign({}, adapter));
|
|
23
67
|
/**
|
|
24
68
|
* set page number
|
|
25
69
|
*/
|
|
26
|
-
|
|
27
70
|
this.setPage = (currentPage, currentPageSize) => {
|
|
28
71
|
currentPage = currentPage || this._adapter.getCurrentPage();
|
|
29
72
|
const currentPagination = this.getState('pagination');
|
|
@@ -36,118 +79,49 @@ class TableFoundation extends BaseFoundation {
|
|
|
36
79
|
currentPage,
|
|
37
80
|
pageSize: currentPageSize
|
|
38
81
|
}));
|
|
39
|
-
|
|
40
82
|
if (!this._pagerIsControlled() && currentPage > 0) {
|
|
41
83
|
this._adapter.setDisabledRowKeys(disabledRowKeys);
|
|
42
|
-
|
|
43
84
|
this._adapter.setAllRowKeys(allRowKeys);
|
|
44
|
-
|
|
45
85
|
this._adapter.setPagination(pagination);
|
|
46
|
-
|
|
47
86
|
this._adapter.setDataSource(dataSource);
|
|
48
87
|
}
|
|
49
|
-
|
|
50
88
|
this._notifyChange(pagination);
|
|
51
89
|
};
|
|
52
90
|
/**
|
|
53
91
|
* Cache related data when initializing or updating the calculated dataSource
|
|
54
92
|
* @param {*} filteredSortedDataSource
|
|
55
93
|
*/
|
|
56
|
-
|
|
57
|
-
|
|
58
94
|
this.setCachedFilteredSortedDataSource = filteredSortedDataSource => {
|
|
59
95
|
this._adapter.setCachedFilteredSortedDataSource(filteredSortedDataSource);
|
|
60
|
-
|
|
61
96
|
const filteredSortedRowKeys = this.getAllRowKeys(filteredSortedDataSource);
|
|
62
|
-
|
|
63
97
|
this._adapter.setCachedFilteredSortedRowKeys(filteredSortedRowKeys);
|
|
64
98
|
};
|
|
65
|
-
|
|
66
99
|
this.isSortOrderValid = sortOrder => strings.SORT_DIRECTIONS.includes(sortOrder) || sortOrder === false;
|
|
67
100
|
/**
|
|
68
101
|
* memoized function list
|
|
69
102
|
*/
|
|
70
|
-
|
|
71
|
-
|
|
72
103
|
const handleColumns = this._adapter.getHandleColumns();
|
|
73
|
-
|
|
74
104
|
const mergePagination = this._adapter.getMergePagination();
|
|
75
|
-
|
|
76
105
|
this.memoizedWithFnsColumns = memoizeOne(handleColumns, _isEqual);
|
|
77
106
|
this.memoizedFilterColumns = memoizeOne(filterColumns);
|
|
78
107
|
this.memoizedFlattenFnsColumns = memoizeOne(flattenColumns);
|
|
79
108
|
this.memoizedPagination = memoizeOne(mergePagination, _isEqual);
|
|
80
109
|
}
|
|
81
|
-
/**
|
|
82
|
-
* update columns in place, and use default values as initial values if the sorting and filtering columns have no values
|
|
83
|
-
*/
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
static initColumnsFilteredValueAndSorterOrder(columns) {
|
|
87
|
-
columns.forEach(column => {
|
|
88
|
-
TableFoundation.initFilteredValue(column);
|
|
89
|
-
TableFoundation.initSorterOrder(column);
|
|
90
|
-
});
|
|
91
|
-
return columns;
|
|
92
|
-
}
|
|
93
|
-
/**
|
|
94
|
-
* init filteredValue of filtering column, use defaultFilteredValue or [] when it is undefined
|
|
95
|
-
*/
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
static initFilteredValue(column) {
|
|
99
|
-
const {
|
|
100
|
-
defaultFilteredValue,
|
|
101
|
-
filteredValue,
|
|
102
|
-
filters
|
|
103
|
-
} = column;
|
|
104
|
-
const hasFilter = Array.isArray(filters) && filters.length;
|
|
105
|
-
|
|
106
|
-
if (hasFilter && _isUndefined(filteredValue)) {
|
|
107
|
-
if (Array.isArray(defaultFilteredValue) && defaultFilteredValue.length) {
|
|
108
|
-
column.filteredValue = defaultFilteredValue;
|
|
109
|
-
} else {
|
|
110
|
-
column.filteredValue = [];
|
|
111
|
-
}
|
|
112
|
-
}
|
|
113
|
-
}
|
|
114
|
-
/**
|
|
115
|
-
* init sortOrder of sorting column, use defaultSortOrder or [] when it is undefined
|
|
116
|
-
*/
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
static initSorterOrder(column) {
|
|
120
|
-
const {
|
|
121
|
-
defaultSortOrder,
|
|
122
|
-
sortOrder,
|
|
123
|
-
sorter
|
|
124
|
-
} = column;
|
|
125
|
-
|
|
126
|
-
if (sorter && _isUndefined(sortOrder)) {
|
|
127
|
-
if (!_isUndefined(defaultSortOrder)) {
|
|
128
|
-
column.sortOrder = defaultSortOrder;
|
|
129
|
-
} else {
|
|
130
|
-
column.sortOrder = false;
|
|
131
|
-
}
|
|
132
|
-
}
|
|
133
|
-
}
|
|
134
|
-
|
|
135
110
|
init() {
|
|
136
111
|
const dataSource = [...this.getProp('dataSource')];
|
|
137
|
-
|
|
138
112
|
const {
|
|
139
113
|
queries
|
|
140
114
|
} = this._adapter.getStates();
|
|
141
|
-
|
|
142
115
|
const filteredSortedDataSource = this.getFilteredSortedDataSource(dataSource, queries);
|
|
116
|
+
const allDataDisabledRowKeys = this.getAllDisabledRowKeys(filteredSortedDataSource);
|
|
143
117
|
const pageData = this.getCurrentPageData(filteredSortedDataSource);
|
|
144
118
|
this.setAdapterPageData(pageData);
|
|
145
119
|
this.initExpandedRowKeys(pageData);
|
|
146
|
-
this.initSelectedRowKeys(pageData);
|
|
147
|
-
|
|
120
|
+
this.initSelectedRowKeys(pageData);
|
|
121
|
+
// cache dataSource after mount, and then calculate it on demand
|
|
148
122
|
this.setCachedFilteredSortedDataSource(filteredSortedDataSource);
|
|
123
|
+
this.setAllDisabledRowKeys(allDataDisabledRowKeys);
|
|
149
124
|
}
|
|
150
|
-
|
|
151
125
|
initExpandedRowKeys() {
|
|
152
126
|
let {
|
|
153
127
|
groups
|
|
@@ -162,42 +136,34 @@ class TableFoundation extends BaseFoundation {
|
|
|
162
136
|
expandAllGroupRows
|
|
163
137
|
} = this.getProps();
|
|
164
138
|
const expandedRowKeys = [];
|
|
165
|
-
|
|
166
139
|
if (defaultExpandAllRows || expandAllRows) {
|
|
167
140
|
this._addNoDuplicatedItemsToArr(expandedRowKeys, this.getAllRowKeys(dataSource), groups && _isMap(groups) && groups.size ? Array.from(groups.keys()) : []);
|
|
168
141
|
} else if (defaultExpandAllGroupRows || expandAllGroupRows) {
|
|
169
|
-
this._addNoDuplicatedItemsToArr(expandedRowKeys, groups && _isMap(groups) && groups.size ? Array.from(groups.keys()) : []);
|
|
142
|
+
this._addNoDuplicatedItemsToArr(expandedRowKeys, propExpandedRowKeys, groups && _isMap(groups) && groups.size ? Array.from(groups.keys()) : []);
|
|
170
143
|
} else if (Array.isArray(defaultExpandedRowKeys) && defaultExpandedRowKeys.length) {
|
|
171
144
|
this._addNoDuplicatedItemsToArr(expandedRowKeys, defaultExpandedRowKeys);
|
|
172
145
|
} else if (Array.isArray(propExpandedRowKeys) && propExpandedRowKeys.length) {
|
|
173
146
|
this._addNoDuplicatedItemsToArr(expandedRowKeys, propExpandedRowKeys);
|
|
174
147
|
}
|
|
175
|
-
|
|
176
148
|
this._adapter.setExpandedRowKeys(expandedRowKeys);
|
|
177
149
|
}
|
|
178
|
-
|
|
179
150
|
initSelectedRowKeys(_ref) {
|
|
180
151
|
let {
|
|
181
152
|
disabledRowKeys
|
|
182
153
|
} = _ref;
|
|
183
154
|
const rowSelection = this.getProp('rowSelection');
|
|
184
155
|
const rowKeys = [];
|
|
185
|
-
|
|
186
156
|
if (rowSelection) {
|
|
187
157
|
const selectedRowKeys = _get(rowSelection, 'selectedRowKeys');
|
|
188
|
-
|
|
189
158
|
const defaultSelectedRowKeys = _get(rowSelection, 'defaultSelectedRowKeys');
|
|
190
|
-
|
|
191
159
|
if (Array.isArray(selectedRowKeys)) {
|
|
192
160
|
this._addNoDuplicatedItemsToArr(rowKeys, selectedRowKeys);
|
|
193
161
|
} else if (Array.isArray(defaultSelectedRowKeys)) {
|
|
194
162
|
this._addNoDuplicatedItemsToArr(rowKeys, defaultSelectedRowKeys);
|
|
195
163
|
}
|
|
196
|
-
|
|
197
164
|
if (Array.isArray(disabledRowKeys) && disabledRowKeys.length) {
|
|
198
165
|
_pull(rowKeys, ...disabledRowKeys);
|
|
199
166
|
}
|
|
200
|
-
|
|
201
167
|
this._adapter.setSelectedRowKeys(rowKeys);
|
|
202
168
|
}
|
|
203
169
|
}
|
|
@@ -207,19 +173,10 @@ class TableFoundation extends BaseFoundation {
|
|
|
207
173
|
* @param {Object[]} queries
|
|
208
174
|
* @returns {Object[]} sortedDataSource
|
|
209
175
|
*/
|
|
210
|
-
|
|
211
|
-
|
|
212
176
|
getFilteredSortedDataSource(dataSource, queries) {
|
|
213
177
|
const filteredDataSource = this.filterDataSource(dataSource, queries.filter(query => {
|
|
214
|
-
/**
|
|
215
|
-
* 这里无需判断 filteredValue 是否为数组,初始化时它是 `undefined`,点击选择空时为 `[]`
|
|
216
|
-
* 初始化时我们应该用 `defaultFilteredValue`,点击后我们应该用 `filteredValue`
|
|
217
|
-
*
|
|
218
|
-
* There is no need to judge whether `filteredValue` is an array here, because it is `undefined` when initialized, and `[]` when you click to select empty
|
|
219
|
-
* When initializing we should use `defaultFilteredValue`, after clicking we should use `filteredValue`
|
|
220
|
-
*/
|
|
221
178
|
const currentFilteredValue = query.filteredValue ? query.filteredValue : query.defaultFilteredValue;
|
|
222
|
-
return _isFunction(query.onFilter) && Array.isArray(
|
|
179
|
+
return _isFunction(query.onFilter) && Array.isArray(currentFilteredValue) && currentFilteredValue.length;
|
|
223
180
|
}));
|
|
224
181
|
const sortedDataSource = this.sortDataSource(filteredDataSource, queries.filter(query => query && _isFunction(query.sorter)));
|
|
225
182
|
return sortedDataSource;
|
|
@@ -232,16 +189,12 @@ class TableFoundation extends BaseFoundation {
|
|
|
232
189
|
* @param {object} queries
|
|
233
190
|
* @returns {{dataSource: RecordType[], groups: Map<string, Set<string>>, pagination: object, disabledRowKeys: string[], queries: BaseColumnProps[], allRowKeys: string[]}}
|
|
234
191
|
*/
|
|
235
|
-
|
|
236
|
-
|
|
237
192
|
getCurrentPageData(dataSource, pagination, queries) {
|
|
238
193
|
const filteredSortedDataSource = this._adapter.getCachedFilteredSortedDataSource();
|
|
239
|
-
|
|
240
194
|
dataSource = dataSource == null ? [...filteredSortedDataSource] : dataSource;
|
|
241
195
|
pagination = pagination == null ? this.getState('pagination') && Object.assign({}, this.getState('pagination')) : pagination;
|
|
242
196
|
queries = queries == null ? [...this.getState('queries')] : queries;
|
|
243
197
|
let groups;
|
|
244
|
-
|
|
245
198
|
if (this.getProp('groupBy') != null) {
|
|
246
199
|
const {
|
|
247
200
|
groups: groupedGroups,
|
|
@@ -250,7 +203,6 @@ class TableFoundation extends BaseFoundation {
|
|
|
250
203
|
dataSource = groupedData;
|
|
251
204
|
groups = groupedGroups;
|
|
252
205
|
}
|
|
253
|
-
|
|
254
206
|
pagination = this.normalizePagination(pagination, dataSource);
|
|
255
207
|
dataSource = this.limitPageDataSource(dataSource, pagination);
|
|
256
208
|
const disabledRowKeys = this.getAllDisabledRowKeys(dataSource);
|
|
@@ -271,21 +223,16 @@ class TableFoundation extends BaseFoundation {
|
|
|
271
223
|
* @param {*[]} dataSource
|
|
272
224
|
* @param {Function|string} groupBy
|
|
273
225
|
*/
|
|
274
|
-
|
|
275
|
-
|
|
276
226
|
groupDataSource(dataSource, groupBy) {
|
|
277
227
|
groupBy = groupBy == null ? this.getProp('groupBy') : groupBy;
|
|
278
228
|
const groups = new Map();
|
|
279
229
|
const newDataSource = [];
|
|
280
|
-
|
|
281
230
|
if (groupBy != null) {
|
|
282
231
|
_each(dataSource, (record, index) => {
|
|
283
232
|
const groupKey = typeof groupBy === 'function' ? groupBy(record) : _get(record, groupBy);
|
|
284
|
-
|
|
285
233
|
if (groupKey != null && groupKey !== '') {
|
|
286
234
|
const recordKey = this.getRecordKey(record);
|
|
287
235
|
let group = groups.get(groupKey);
|
|
288
|
-
|
|
289
236
|
if (!_isSet(group)) {
|
|
290
237
|
group = new Set([recordKey]);
|
|
291
238
|
groups.set(groupKey, group);
|
|
@@ -295,7 +242,6 @@ class TableFoundation extends BaseFoundation {
|
|
|
295
242
|
}
|
|
296
243
|
});
|
|
297
244
|
}
|
|
298
|
-
|
|
299
245
|
if (groups && groups.size) {
|
|
300
246
|
groups.forEach((set, key) => {
|
|
301
247
|
if (_isSet(set)) {
|
|
@@ -307,7 +253,6 @@ class TableFoundation extends BaseFoundation {
|
|
|
307
253
|
} else {
|
|
308
254
|
newDataSource.push(...dataSource);
|
|
309
255
|
}
|
|
310
|
-
|
|
311
256
|
return {
|
|
312
257
|
groups,
|
|
313
258
|
dataSource: newDataSource
|
|
@@ -320,8 +265,6 @@ class TableFoundation extends BaseFoundation {
|
|
|
320
265
|
* @param {Array} sorters
|
|
321
266
|
* @returns {Array}
|
|
322
267
|
*/
|
|
323
|
-
|
|
324
|
-
|
|
325
268
|
sortDataSource(dataSource, sorters) {
|
|
326
269
|
_each(sorters, sorterObj => {
|
|
327
270
|
// const sorterObj = last(sorters) || {};
|
|
@@ -332,30 +275,24 @@ class TableFoundation extends BaseFoundation {
|
|
|
332
275
|
sortChildrenRecord
|
|
333
276
|
} = sorterObj;
|
|
334
277
|
const currentSortOrder = this.isSortOrderValid(sortOrder) ? sortOrder : defaultSortOrder;
|
|
335
|
-
|
|
336
278
|
if (_isFunction(sorter) && currentSortOrder && strings.SORT_DIRECTIONS.includes(currentSortOrder)) {
|
|
337
279
|
if (sortChildrenRecord) {
|
|
338
280
|
const childrenRecordName = this.getProp('childrenRecordName');
|
|
339
281
|
dataSource = dataSource && dataSource.map(record => {
|
|
340
282
|
const children = this._getRecordChildren(record);
|
|
341
|
-
|
|
342
283
|
if (Array.isArray(children) && children.length) {
|
|
343
284
|
return Object.assign(Object.assign({}, record), {
|
|
344
285
|
[childrenRecordName]: this.sortDataSource(children, [sorterObj])
|
|
345
286
|
});
|
|
346
287
|
}
|
|
347
|
-
|
|
348
288
|
return record;
|
|
349
289
|
});
|
|
350
290
|
}
|
|
351
|
-
|
|
352
291
|
dataSource.sort(withOrderSort(sorter, currentSortOrder));
|
|
353
292
|
return false;
|
|
354
293
|
}
|
|
355
|
-
|
|
356
294
|
return undefined;
|
|
357
295
|
});
|
|
358
|
-
|
|
359
296
|
return dataSource;
|
|
360
297
|
}
|
|
361
298
|
/**
|
|
@@ -365,13 +302,10 @@ class TableFoundation extends BaseFoundation {
|
|
|
365
302
|
* @param {*[]} filters
|
|
366
303
|
* @returns {*[]}
|
|
367
304
|
*/
|
|
368
|
-
|
|
369
|
-
|
|
370
305
|
filterDataSource(dataSource, filters) {
|
|
371
306
|
let filteredData = null;
|
|
372
307
|
let hasValidFilters = false;
|
|
373
308
|
const childrenRecordName = this.getProp('childrenRecordName');
|
|
374
|
-
|
|
375
309
|
_each(filters, filterObj => {
|
|
376
310
|
const {
|
|
377
311
|
onFilter,
|
|
@@ -380,40 +314,34 @@ class TableFoundation extends BaseFoundation {
|
|
|
380
314
|
defaultFilteredValue
|
|
381
315
|
} = filterObj;
|
|
382
316
|
const currentFilteredValue = Array.isArray(filteredValue) ? filteredValue : defaultFilteredValue;
|
|
383
|
-
|
|
384
317
|
if (typeof onFilter === 'function' && Array.isArray(currentFilteredValue) && currentFilteredValue.length) {
|
|
385
318
|
hasValidFilters = true;
|
|
386
|
-
|
|
387
319
|
if (filteredData === null) {
|
|
388
320
|
filteredData = new Map();
|
|
389
321
|
} else {
|
|
390
322
|
dataSource = Array.from(filteredData && filteredData.values());
|
|
391
323
|
filteredData = new Map();
|
|
392
324
|
}
|
|
393
|
-
|
|
394
325
|
_each(dataSource, record => {
|
|
395
326
|
_each(currentFilteredValue, value => {
|
|
396
327
|
const childrenRecords = _get(record, childrenRecordName);
|
|
397
|
-
|
|
398
328
|
const recordKey = this.getRecordKey(record);
|
|
399
329
|
let filteredChildren;
|
|
400
|
-
|
|
401
330
|
if (Array.isArray(childrenRecords) && childrenRecords.length && filterChildrenRecord) {
|
|
402
331
|
filteredChildren = this.filterDataSource(childrenRecords, [filterObj]);
|
|
403
332
|
}
|
|
404
|
-
|
|
405
333
|
if (Array.isArray(filteredChildren) && filteredChildren.length) {
|
|
406
334
|
if (recordKey != null) {
|
|
407
335
|
const children = _get(filteredData.get(recordKey), childrenRecordName, []);
|
|
408
|
-
|
|
409
336
|
filteredData.set(recordKey, Object.assign(Object.assign({}, record), {
|
|
410
337
|
[childrenRecordName]: filteredChildren.reduce((arr, cur) => {
|
|
411
338
|
if (arr.find(item => this.getRecordKey(item) === this.getRecordKey(cur)) == null) {
|
|
412
339
|
arr.push(cur);
|
|
413
340
|
}
|
|
414
|
-
|
|
415
341
|
return arr;
|
|
416
|
-
},
|
|
342
|
+
},
|
|
343
|
+
// @ts-ignore
|
|
344
|
+
[...children])
|
|
417
345
|
}));
|
|
418
346
|
}
|
|
419
347
|
} else if (onFilter(value, record)) {
|
|
@@ -423,21 +351,16 @@ class TableFoundation extends BaseFoundation {
|
|
|
423
351
|
});
|
|
424
352
|
}
|
|
425
353
|
});
|
|
426
|
-
|
|
427
354
|
if (hasValidFilters) {
|
|
428
355
|
dataSource = Array.from(filteredData && filteredData.values());
|
|
429
356
|
}
|
|
430
|
-
|
|
431
357
|
return dataSource;
|
|
432
358
|
}
|
|
433
|
-
|
|
434
359
|
limitPageDataSource(dataSource, pagination) {
|
|
435
360
|
dataSource = dataSource == null ? this.getProp('dataSource') : dataSource;
|
|
436
361
|
pagination = pagination == null ? this.getState('pagination') : pagination;
|
|
437
362
|
let pageData = dataSource;
|
|
438
|
-
|
|
439
363
|
const pageNo = _get(pagination, 'currentPage');
|
|
440
|
-
|
|
441
364
|
if (this.getProp('pagination') !== false && pageNo && dataSource && pagination && !this._pagerIsControlled()) {
|
|
442
365
|
const {
|
|
443
366
|
pageSize = numbers.DEFAULT_PAGE_SIZE
|
|
@@ -446,15 +369,12 @@ class TableFoundation extends BaseFoundation {
|
|
|
446
369
|
const end = pageNo * pageSize;
|
|
447
370
|
pageData = _slice(dataSource, start, end);
|
|
448
371
|
}
|
|
449
|
-
|
|
450
372
|
return pageData;
|
|
451
373
|
}
|
|
452
|
-
|
|
453
374
|
normalizePagination(pagination, dataSource) {
|
|
454
375
|
pagination = pagination == null ? this._getPagination() : pagination;
|
|
455
376
|
dataSource = dataSource == null ? this._getDataSource() : dataSource;
|
|
456
377
|
const propPagination = this.getProp('pagination');
|
|
457
|
-
|
|
458
378
|
if (pagination) {
|
|
459
379
|
pagination = typeof pagination === 'object' ? Object.assign({}, pagination) : {};
|
|
460
380
|
pagination = _merge({
|
|
@@ -463,27 +383,21 @@ class TableFoundation extends BaseFoundation {
|
|
|
463
383
|
currentPage: _get(propPagination, 'defaultCurrentPage', 1),
|
|
464
384
|
position: strings.PAGINATION_POSITIONS[0]
|
|
465
385
|
}, pagination);
|
|
466
|
-
|
|
467
386
|
if (!this._pagerIsControlled()) {
|
|
468
387
|
const total = _get(propPagination, 'total', dataSource.length);
|
|
469
|
-
|
|
470
|
-
const pageSize = _get(propPagination, 'pageSize', pagination.pageSize);
|
|
471
|
-
|
|
472
388
|
const {
|
|
473
|
-
currentPage
|
|
389
|
+
currentPage,
|
|
390
|
+
pageSize
|
|
474
391
|
} = pagination;
|
|
475
392
|
const realTotalPage = Math.ceil(total / pageSize);
|
|
476
393
|
pagination.total = total;
|
|
477
|
-
|
|
478
394
|
if (currentPage > realTotalPage) {
|
|
479
395
|
pagination.currentPage = 1;
|
|
480
396
|
}
|
|
481
397
|
}
|
|
482
398
|
}
|
|
483
|
-
|
|
484
399
|
return pagination;
|
|
485
400
|
}
|
|
486
|
-
|
|
487
401
|
setAdapterPageData() {
|
|
488
402
|
let pageData = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
489
403
|
const {
|
|
@@ -493,43 +407,30 @@ class TableFoundation extends BaseFoundation {
|
|
|
493
407
|
allRowKeys,
|
|
494
408
|
groups
|
|
495
409
|
} = pageData;
|
|
496
|
-
|
|
497
410
|
this._adapter.setDisabledRowKeys(disabledRowKeys);
|
|
498
|
-
|
|
499
411
|
this._adapter.setAllRowKeys(allRowKeys);
|
|
500
|
-
|
|
501
412
|
this._adapter.setPagination(pagination);
|
|
502
|
-
|
|
503
413
|
this._adapter.setGroups(groups);
|
|
504
|
-
|
|
505
414
|
this._adapter.setDataSource(dataSource);
|
|
506
415
|
}
|
|
507
|
-
|
|
508
416
|
destroy() {}
|
|
509
|
-
|
|
417
|
+
setAllDisabledRowKeys(disabledRowKeys) {
|
|
418
|
+
this._adapter.setAllDisabledRowKeys(disabledRowKeys);
|
|
419
|
+
}
|
|
510
420
|
handleClick(e) {}
|
|
511
|
-
|
|
512
421
|
handleMouseEnter(e) {}
|
|
513
|
-
|
|
514
422
|
handleMouseLeave(e) {}
|
|
515
|
-
|
|
516
423
|
stopPropagation(e) {
|
|
517
424
|
this._adapter.stopPropagation(e);
|
|
518
425
|
}
|
|
519
426
|
/**
|
|
520
427
|
* Add non-repeating elements to the array itself
|
|
521
|
-
* @param {Array} srcArr
|
|
522
|
-
* @param {Object} objArrs
|
|
523
428
|
*/
|
|
524
|
-
|
|
525
|
-
|
|
526
429
|
_addNoDuplicatedItemsToArr() {
|
|
527
430
|
let srcArr = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
|
|
528
|
-
|
|
529
431
|
for (var _len = arguments.length, objArrs = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
|
|
530
432
|
objArrs[_key - 1] = arguments[_key];
|
|
531
433
|
}
|
|
532
|
-
|
|
533
434
|
for (const objArr of objArrs) {
|
|
534
435
|
if (Array.isArray(objArr)) {
|
|
535
436
|
for (const item of objArr) {
|
|
@@ -539,19 +440,15 @@ class TableFoundation extends BaseFoundation {
|
|
|
539
440
|
}
|
|
540
441
|
}
|
|
541
442
|
}
|
|
542
|
-
|
|
543
443
|
return srcArr;
|
|
544
444
|
}
|
|
545
|
-
|
|
546
445
|
_notifyChange(pagination, filters, sorter, extra) {
|
|
547
446
|
pagination = pagination == null ? this._getPagination() : pagination;
|
|
548
447
|
filters = filters == null ? this._getAllFilters() : filters;
|
|
549
448
|
sorter = sorter == null ? this._getAllSorters()[0] : sorter;
|
|
550
|
-
|
|
551
449
|
if (_get(this.getProp('scroll'), 'scrollToFirstRowOnChange')) {
|
|
552
450
|
this._adapter.resetScrollY();
|
|
553
451
|
}
|
|
554
|
-
|
|
555
452
|
this._adapter.notifyChange({
|
|
556
453
|
pagination: Object.assign({}, pagination),
|
|
557
454
|
filters: [...filters],
|
|
@@ -559,15 +456,12 @@ class TableFoundation extends BaseFoundation {
|
|
|
559
456
|
extra: Object.assign({}, extra)
|
|
560
457
|
});
|
|
561
458
|
}
|
|
562
|
-
|
|
563
459
|
_rowExpansionIsControlled() {
|
|
564
460
|
return Array.isArray(this.getProp('expandedRowKeys'));
|
|
565
461
|
}
|
|
566
|
-
|
|
567
462
|
_pagerIsControlled() {
|
|
568
463
|
return _get(this.getProp('pagination'), 'currentPage') != null;
|
|
569
464
|
}
|
|
570
|
-
|
|
571
465
|
_selectionIsControlled() {
|
|
572
466
|
return Array.isArray(_get(this.getProp('rowSelection'), 'selectedRowKeys'));
|
|
573
467
|
}
|
|
@@ -577,8 +471,6 @@ class TableFoundation extends BaseFoundation {
|
|
|
577
471
|
* @param {String} dataIndex
|
|
578
472
|
* @returns {Boolean}
|
|
579
473
|
*/
|
|
580
|
-
|
|
581
|
-
|
|
582
474
|
_sorterIsControlled(dataIndex) {
|
|
583
475
|
// The basis for judgment should be props columns instead of cachedColumns fix#1141
|
|
584
476
|
const query = dataIndex && this.getQuery(dataIndex, this.getState('flattenColumns'));
|
|
@@ -590,105 +482,83 @@ class TableFoundation extends BaseFoundation {
|
|
|
590
482
|
* @param {String} dataIndex
|
|
591
483
|
* @returns {Boolean}
|
|
592
484
|
*/
|
|
593
|
-
|
|
594
|
-
|
|
595
485
|
_filterIsControlled(dataIndex) {
|
|
596
486
|
const query = dataIndex && this.getQuery(dataIndex, this.getState('flattenColumns'));
|
|
597
487
|
return Boolean(query && Array.isArray(query.filteredValue));
|
|
598
488
|
}
|
|
599
|
-
|
|
600
489
|
_filterShowIsControlled(dataIndex) {
|
|
601
490
|
const query = dataIndex && this.getQuery(dataIndex, this.getState('flattenColumns'));
|
|
602
491
|
return Boolean(query && (query.filterDropdownVisible === true || query.filterDropdownVisible === false));
|
|
603
492
|
}
|
|
604
|
-
|
|
605
493
|
_getSelectedRowKeys() {
|
|
606
494
|
const rowSelection = this.getState('rowSelection');
|
|
607
|
-
|
|
608
495
|
const selectedRowKeys = _get(rowSelection, 'selectedRowKeys', []);
|
|
609
|
-
|
|
610
496
|
return [...selectedRowKeys];
|
|
611
497
|
}
|
|
612
|
-
|
|
613
498
|
_getSelectedRowKeysSet() {
|
|
614
499
|
const rowSelection = this.getState('rowSelection');
|
|
615
|
-
|
|
616
500
|
const selectedRowKeysSet = _get(rowSelection, 'selectedRowKeysSet', new Set());
|
|
617
|
-
|
|
618
501
|
return selectedRowKeysSet;
|
|
619
502
|
}
|
|
620
|
-
|
|
621
503
|
_getDataSource() {
|
|
622
504
|
return this.getProp('dataSource') || [];
|
|
623
505
|
}
|
|
624
|
-
|
|
625
506
|
_getRecord(realKey) {
|
|
626
507
|
return _find(this.getProp('dataSource'), record => realKey != null && realKey !== '' && this.getRecordKey(record) === realKey);
|
|
627
508
|
}
|
|
628
|
-
|
|
629
509
|
_getRecordChildren(record) {
|
|
630
510
|
return _get(record, this.getProp('childrenRecordName'));
|
|
631
511
|
}
|
|
632
|
-
|
|
633
512
|
_getPagination() {
|
|
634
513
|
return this.getState('pagination') || {};
|
|
635
514
|
}
|
|
636
|
-
|
|
515
|
+
/**
|
|
516
|
+
* Filters are considered valid if filteredValue exists
|
|
517
|
+
*/
|
|
637
518
|
_getAllFilters(queries) {
|
|
638
519
|
queries = queries || this.getState('queries');
|
|
639
520
|
const filters = [];
|
|
640
|
-
|
|
641
521
|
_each(queries, query => {
|
|
642
522
|
if (Array.isArray(query.filteredValue) && (query.filteredValue.length || this._filterIsControlled(query.dataIndex))) {
|
|
643
523
|
filters.push(query);
|
|
644
524
|
}
|
|
645
525
|
});
|
|
646
|
-
|
|
647
526
|
return filters;
|
|
648
527
|
}
|
|
649
|
-
|
|
650
528
|
_getAllSorters(queries) {
|
|
651
529
|
queries = queries || this.getState('queries');
|
|
652
530
|
return _filter(queries, query => query.sorter && query.sortOrder);
|
|
653
531
|
}
|
|
654
|
-
|
|
655
532
|
_filterQueries(targetQuery, queries) {
|
|
656
533
|
let keys = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : ['dataIndex'];
|
|
657
534
|
queries = queries == null ? this.getState('queries') : queries;
|
|
658
535
|
const filteredQueries = [];
|
|
659
536
|
const filteredIndexes = [];
|
|
660
|
-
|
|
661
537
|
_each(queries, (itQuery, index) => {
|
|
662
538
|
const flag = _some(keys, k => k && targetQuery[k] != null && targetQuery[k] === itQuery[k]);
|
|
663
|
-
|
|
664
539
|
if (flag) {
|
|
665
540
|
filteredQueries.push(itQuery);
|
|
666
541
|
filteredIndexes.push(index);
|
|
667
542
|
}
|
|
668
543
|
});
|
|
669
|
-
|
|
670
544
|
return {
|
|
671
545
|
filteredQueries,
|
|
672
546
|
filteredIndexes
|
|
673
547
|
};
|
|
674
548
|
}
|
|
675
|
-
|
|
676
549
|
_mergeToQueries(query, queries) {
|
|
677
550
|
let keys = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : ['dataIndex'];
|
|
678
551
|
queries = queries == null ? this.getState('queries') : queries;
|
|
679
552
|
queries = [...queries];
|
|
680
553
|
query = Object.assign({}, query);
|
|
681
|
-
|
|
682
554
|
const {
|
|
683
555
|
filteredQueries,
|
|
684
556
|
filteredIndexes
|
|
685
557
|
} = this._filterQueries(query, queries, keys);
|
|
686
|
-
|
|
687
558
|
_each(filteredQueries, (curQuery, idx) => {
|
|
688
559
|
// assign(curQuery, query);
|
|
689
560
|
queries[filteredIndexes[idx]] = Object.assign({}, query);
|
|
690
561
|
});
|
|
691
|
-
|
|
692
562
|
return queries;
|
|
693
563
|
}
|
|
694
564
|
/**
|
|
@@ -696,53 +566,39 @@ class TableFoundation extends BaseFoundation {
|
|
|
696
566
|
* @param {RecordType} record
|
|
697
567
|
* @returns {string}
|
|
698
568
|
*/
|
|
699
|
-
|
|
700
|
-
|
|
701
569
|
getRecordKey(record) {
|
|
702
570
|
if (!record) {
|
|
703
571
|
return undefined;
|
|
704
572
|
}
|
|
705
|
-
|
|
706
573
|
const rowKey = this.getProp('rowKey');
|
|
707
574
|
return typeof rowKey === 'function' ? rowKey(record) : _get(record, rowKey);
|
|
708
575
|
}
|
|
709
|
-
|
|
710
576
|
isEmpty(dataSource) {
|
|
711
577
|
dataSource = dataSource == null ? this.getProp('dataSource') : dataSource;
|
|
712
578
|
return !(Array.isArray(dataSource) && dataSource.length > 0);
|
|
713
579
|
}
|
|
714
|
-
|
|
715
580
|
handleSelectRow(realKey, selected, e) {
|
|
716
581
|
this.stopPropagation(e);
|
|
717
|
-
|
|
718
582
|
if (typeof selected === 'boolean' && realKey != null) {
|
|
719
583
|
const selectedRowKeys = this._getSelectedRowKeys();
|
|
720
|
-
|
|
721
584
|
let foundIdx = -1;
|
|
722
585
|
const selectedRow = this.getSelectedRows(null, [realKey])[0];
|
|
723
586
|
let selectedRows;
|
|
724
|
-
|
|
725
587
|
if ((foundIdx = selectedRowKeys.indexOf(realKey)) > -1 && selected === false) {
|
|
726
588
|
selectedRowKeys.splice(foundIdx, 1);
|
|
727
589
|
selectedRows = this.getSelectedRows(null, selectedRowKeys);
|
|
728
|
-
|
|
729
590
|
if (!this._selectionIsControlled()) {
|
|
730
591
|
this._adapter.setSelectedRowKeys(selectedRowKeys);
|
|
731
592
|
}
|
|
732
|
-
|
|
733
593
|
this._adapter.notifySelect(selectedRow, selected, selectedRows, e);
|
|
734
|
-
|
|
735
594
|
this._adapter.notifySelectionChange(selectedRowKeys, selectedRows);
|
|
736
595
|
} else if (selectedRowKeys.indexOf(realKey) === -1 && selected === true) {
|
|
737
596
|
selectedRowKeys.push(realKey);
|
|
738
597
|
selectedRows = this.getSelectedRows(null, selectedRowKeys);
|
|
739
|
-
|
|
740
598
|
if (!this._selectionIsControlled()) {
|
|
741
599
|
this._adapter.setSelectedRowKeys(selectedRowKeys);
|
|
742
600
|
}
|
|
743
|
-
|
|
744
601
|
this._adapter.notifySelect(selectedRow, selected, selectedRows, e);
|
|
745
|
-
|
|
746
602
|
this._adapter.notifySelectionChange(selectedRowKeys, selectedRows);
|
|
747
603
|
}
|
|
748
604
|
}
|
|
@@ -752,46 +608,35 @@ class TableFoundation extends BaseFoundation {
|
|
|
752
608
|
* @param {*} selected The future state of the select all button
|
|
753
609
|
* @param {*} e
|
|
754
610
|
*/
|
|
755
|
-
|
|
756
|
-
|
|
757
611
|
handleSelectAllRow(selected, e) {
|
|
758
612
|
this.stopPropagation(e);
|
|
759
|
-
|
|
760
613
|
if (typeof selected === 'boolean') {
|
|
761
614
|
const curSelectedRowKeys = this._getSelectedRowKeys();
|
|
762
|
-
|
|
763
615
|
let selectedRowKeys = [...curSelectedRowKeys];
|
|
764
|
-
|
|
765
616
|
const selectedRowKeysSet = this._getSelectedRowKeysSet();
|
|
766
|
-
|
|
767
617
|
let allRowKeys = [...this._adapter.getCachedFilteredSortedRowKeys()];
|
|
768
|
-
const disabledRowKeys = this.getAllDisabledRowKeys();
|
|
769
|
-
const disabledRowKeysSet =
|
|
770
|
-
let changedRowKeys;
|
|
771
|
-
|
|
618
|
+
const disabledRowKeys = this._adapter.getAllDisabledRowKeys();
|
|
619
|
+
const disabledRowKeysSet = this._adapter.getAllDisabledRowKeysSet();
|
|
620
|
+
let changedRowKeys;
|
|
621
|
+
// Select all, if not disabled && not in selectedRowKeys
|
|
772
622
|
if (selected) {
|
|
773
623
|
for (const key of allRowKeys) {
|
|
774
624
|
if (!disabledRowKeysSet.has(key) && !selectedRowKeysSet.has(key)) {
|
|
775
625
|
selectedRowKeys.push(key);
|
|
776
626
|
}
|
|
777
627
|
}
|
|
778
|
-
|
|
779
628
|
allRowKeys = pullAll(allRowKeys, [...disabledRowKeys, ...curSelectedRowKeys]);
|
|
780
629
|
changedRowKeys = [...allRowKeys];
|
|
781
630
|
} else {
|
|
782
631
|
selectedRowKeys = pullAll(selectedRowKeys, allRowKeys);
|
|
783
632
|
changedRowKeys = [...curSelectedRowKeys];
|
|
784
633
|
}
|
|
785
|
-
|
|
786
634
|
const changedRows = this.getSelectedRows(null, changedRowKeys || []);
|
|
787
635
|
const selectedRows = this.getSelectedRows(null, selectedRowKeys || []);
|
|
788
|
-
|
|
789
636
|
if (!this._selectionIsControlled()) {
|
|
790
637
|
this._adapter.setSelectedRowKeys(selectedRowKeys);
|
|
791
638
|
}
|
|
792
|
-
|
|
793
639
|
this._adapter.notifySelectAll(selected, selectedRows, changedRows, e);
|
|
794
|
-
|
|
795
640
|
this._adapter.notifySelectionChange(selectedRowKeys, selectedRows);
|
|
796
641
|
}
|
|
797
642
|
}
|
|
@@ -801,27 +646,20 @@ class TableFoundation extends BaseFoundation {
|
|
|
801
646
|
* @param {*} selectedRowKeys
|
|
802
647
|
* @param {*} selectedRowKeysSet Recursive optimization
|
|
803
648
|
*/
|
|
804
|
-
|
|
805
|
-
|
|
806
649
|
getSelectedRows(dataSource, selectedRowKeys, selectedRowKeysSet) {
|
|
807
650
|
dataSource = dataSource == null ? this._getDataSource() : dataSource;
|
|
808
651
|
selectedRowKeys = selectedRowKeys == null ? this._getSelectedRowKeys() : selectedRowKeys;
|
|
809
|
-
|
|
810
652
|
if (!_isSet(selectedRowKeysSet)) {
|
|
811
653
|
selectedRowKeysSet = new Set(selectedRowKeys);
|
|
812
654
|
}
|
|
813
|
-
|
|
814
655
|
const childrenRecordName = this.getProp('childrenRecordName');
|
|
815
656
|
const selectedRows = [];
|
|
816
|
-
|
|
817
657
|
if (_isSet(selectedRowKeysSet) && selectedRowKeysSet.size && Array.isArray(dataSource) && dataSource.length) {
|
|
818
658
|
// Time complexity optimization, replace the includes operation of array with has of set
|
|
819
659
|
selectedRows.push(...dataSource.filter(data => selectedRowKeysSet.has(this.getRecordKey(data))));
|
|
820
|
-
|
|
821
660
|
if (selectedRows.length < selectedRowKeys.length) {
|
|
822
661
|
for (const item of dataSource) {
|
|
823
662
|
const children = _get(item, childrenRecordName);
|
|
824
|
-
|
|
825
663
|
if (Array.isArray(children) && children.length) {
|
|
826
664
|
const rows = this.getSelectedRows(children, selectedRowKeys, selectedRowKeysSet);
|
|
827
665
|
selectedRows.push(...rows);
|
|
@@ -829,55 +667,42 @@ class TableFoundation extends BaseFoundation {
|
|
|
829
667
|
}
|
|
830
668
|
}
|
|
831
669
|
}
|
|
832
|
-
|
|
833
670
|
return selectedRows;
|
|
834
671
|
}
|
|
835
|
-
|
|
836
672
|
getAllDisabledRowKeys(dataSource, getCheckboxProps) {
|
|
837
673
|
dataSource = dataSource == null ? this._getDataSource() : dataSource;
|
|
838
674
|
getCheckboxProps = getCheckboxProps == null ? _get(this.getProp('rowSelection'), 'getCheckboxProps') : getCheckboxProps;
|
|
839
675
|
const childrenRecordName = this.getProp('childrenRecordName');
|
|
840
676
|
const disabledRowKeys = [];
|
|
841
|
-
|
|
842
677
|
if (Array.isArray(dataSource) && dataSource.length && typeof getCheckboxProps === 'function') {
|
|
843
678
|
for (const record of dataSource) {
|
|
844
679
|
const props = getCheckboxProps(record);
|
|
845
|
-
|
|
846
680
|
if (props && props.disabled) {
|
|
847
681
|
disabledRowKeys.push(this.getRecordKey(record));
|
|
848
682
|
}
|
|
849
|
-
|
|
850
683
|
const children = _get(record, childrenRecordName);
|
|
851
|
-
|
|
852
684
|
if (Array.isArray(children) && children.length) {
|
|
853
685
|
const keys = this.getAllDisabledRowKeys(children, getCheckboxProps);
|
|
854
686
|
disabledRowKeys.push(...keys);
|
|
855
687
|
}
|
|
856
688
|
}
|
|
857
689
|
}
|
|
858
|
-
|
|
859
690
|
return disabledRowKeys;
|
|
860
691
|
}
|
|
861
|
-
|
|
862
692
|
getAllRowKeys(dataSource) {
|
|
863
693
|
dataSource = dataSource == null ? this._getDataSource() : dataSource;
|
|
864
694
|
const childrenRecordName = this.getProp('childrenRecordName');
|
|
865
695
|
const allRowKeys = [];
|
|
866
|
-
|
|
867
696
|
if (Array.isArray(dataSource) && dataSource.length) {
|
|
868
697
|
for (const record of dataSource) {
|
|
869
698
|
const childrenRowKeys = [];
|
|
870
|
-
|
|
871
699
|
const children = _get(record, childrenRecordName);
|
|
872
|
-
|
|
873
700
|
if (Array.isArray(children) && children.length) {
|
|
874
701
|
childrenRowKeys.push(...this.getAllRowKeys(children));
|
|
875
702
|
}
|
|
876
|
-
|
|
877
703
|
allRowKeys.push(this.getRecordKey(record), ...childrenRowKeys);
|
|
878
704
|
}
|
|
879
705
|
}
|
|
880
|
-
|
|
881
706
|
return allRowKeys;
|
|
882
707
|
}
|
|
883
708
|
/**
|
|
@@ -885,8 +710,6 @@ class TableFoundation extends BaseFoundation {
|
|
|
885
710
|
* @param {Array} selectedRowKeys
|
|
886
711
|
* @param {Set} allRowKeysSet
|
|
887
712
|
*/
|
|
888
|
-
|
|
889
|
-
|
|
890
713
|
hasRowSelected(selectedRowKeys, allRowKeysSet) {
|
|
891
714
|
return Boolean(Array.isArray(selectedRowKeys) && selectedRowKeys.length && _isSet(allRowKeysSet) && allRowKeysSet.size && selectedRowKeys.filter(key => allRowKeysSet.has(key)).length);
|
|
892
715
|
}
|
|
@@ -896,38 +719,31 @@ class TableFoundation extends BaseFoundation {
|
|
|
896
719
|
* @param {String} realKey
|
|
897
720
|
* @param {Event} domEvent
|
|
898
721
|
*/
|
|
899
|
-
|
|
900
|
-
|
|
901
722
|
handleRowExpanded(expanded, realKey, domEvent) {
|
|
902
723
|
this.stopPropagation(domEvent);
|
|
903
724
|
const expandedRowKeys = [...this.getState('expandedRowKeys')];
|
|
904
725
|
const index = expandedRowKeys.indexOf(realKey);
|
|
905
726
|
const keyIsValid = typeof realKey === 'string' || typeof realKey === 'number';
|
|
906
|
-
|
|
907
727
|
if (keyIsValid && expanded && index === -1) {
|
|
908
728
|
expandedRowKeys.push(realKey);
|
|
909
729
|
} else if (keyIsValid && !expanded && index > -1) {
|
|
910
730
|
expandedRowKeys.splice(index, 1);
|
|
911
731
|
}
|
|
912
|
-
|
|
913
732
|
if (!this._rowExpansionIsControlled()) {
|
|
914
733
|
this._adapter.setExpandedRowKeys(expandedRowKeys);
|
|
915
734
|
}
|
|
916
|
-
|
|
917
735
|
const expandedRows = this.getSelectedRows(null, expandedRowKeys);
|
|
918
|
-
let expandedRow = this.getSelectedRows(null, [realKey])[0];
|
|
919
|
-
|
|
736
|
+
let expandedRow = this.getSelectedRows(null, [realKey])[0];
|
|
737
|
+
// groups record processing
|
|
920
738
|
const groups = this._getGroups();
|
|
921
|
-
|
|
922
739
|
if (groups) {
|
|
923
740
|
// Construct group expandRow
|
|
924
741
|
if (groups.has(realKey)) {
|
|
925
742
|
expandedRow = {
|
|
926
743
|
groupKey: realKey
|
|
927
744
|
};
|
|
928
|
-
}
|
|
929
|
-
|
|
930
|
-
|
|
745
|
+
}
|
|
746
|
+
// If expandedRowKeys includes groupKey, add to expandedRows
|
|
931
747
|
for (let i = 0, len = expandedRowKeys.length; i < len; i++) {
|
|
932
748
|
if (groups.has(realKey)) {
|
|
933
749
|
expandedRows.push({
|
|
@@ -936,26 +752,19 @@ class TableFoundation extends BaseFoundation {
|
|
|
936
752
|
}
|
|
937
753
|
}
|
|
938
754
|
}
|
|
939
|
-
|
|
940
755
|
this._adapter.notifyExpand(expanded, expandedRow, domEvent);
|
|
941
|
-
|
|
942
756
|
this._adapter.notifyExpandedRowsChange(expandedRows);
|
|
943
757
|
}
|
|
944
758
|
/**
|
|
945
759
|
* get state.groups
|
|
946
760
|
* @returns {Map|Null}
|
|
947
761
|
*/
|
|
948
|
-
|
|
949
|
-
|
|
950
762
|
_getGroups() {
|
|
951
763
|
const groupBy = this._adapter.getProp('groupBy');
|
|
952
|
-
|
|
953
764
|
if (groupBy !== null) {
|
|
954
765
|
const groups = this._adapter.getState('groups');
|
|
955
|
-
|
|
956
766
|
return groups;
|
|
957
767
|
}
|
|
958
|
-
|
|
959
768
|
return null;
|
|
960
769
|
}
|
|
961
770
|
/**
|
|
@@ -964,21 +773,18 @@ class TableFoundation extends BaseFoundation {
|
|
|
964
773
|
* @param {Set} disabledRowKeysSet
|
|
965
774
|
* @param {Array} allKeys keys after sorted and filtered
|
|
966
775
|
*/
|
|
967
|
-
|
|
968
|
-
|
|
969
776
|
allIsSelected(selectedRowKeysSet, disabledRowKeysSet, allKeys) {
|
|
970
777
|
const filteredAllKeys = _filter(allKeys, key => key != null && !disabledRowKeysSet.has(key));
|
|
971
|
-
|
|
972
778
|
if (filteredAllKeys && filteredAllKeys.length) {
|
|
973
779
|
for (const key of filteredAllKeys) {
|
|
974
780
|
if (key != null && !selectedRowKeysSet.has(key)) {
|
|
975
781
|
return false;
|
|
976
782
|
}
|
|
977
783
|
}
|
|
978
|
-
|
|
979
784
|
return true;
|
|
980
785
|
} else {
|
|
981
|
-
|
|
786
|
+
const isAllSelected = allKeys.every(rowKey => selectedRowKeysSet.has(rowKey));
|
|
787
|
+
return isAllSelected || false;
|
|
982
788
|
}
|
|
983
789
|
}
|
|
984
790
|
/**
|
|
@@ -986,25 +792,19 @@ class TableFoundation extends BaseFoundation {
|
|
|
986
792
|
* @param {*} selectedRowKeys
|
|
987
793
|
* @param {*} allKeys
|
|
988
794
|
*/
|
|
989
|
-
|
|
990
|
-
|
|
991
795
|
allIsNotSelected(selectedRowKeys, allKeys) {
|
|
992
796
|
for (const key of allKeys) {
|
|
993
797
|
if (key != null && Array.isArray(selectedRowKeys) && selectedRowKeys.includes(key)) {
|
|
994
798
|
return true;
|
|
995
799
|
}
|
|
996
800
|
}
|
|
997
|
-
|
|
998
801
|
return false;
|
|
999
802
|
}
|
|
1000
|
-
|
|
1001
803
|
formatPaginationInfo() {
|
|
1002
804
|
let pagination = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
1003
805
|
let defaultPageText = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';
|
|
1004
806
|
let info = '';
|
|
1005
|
-
|
|
1006
807
|
const formatPageText = _get(this.getProp('pagination'), 'formatPageText');
|
|
1007
|
-
|
|
1008
808
|
const {
|
|
1009
809
|
total,
|
|
1010
810
|
pageSize,
|
|
@@ -1012,7 +812,6 @@ class TableFoundation extends BaseFoundation {
|
|
|
1012
812
|
} = pagination;
|
|
1013
813
|
const currentStart = Math.min((currentPage - 1) * pageSize + 1, total);
|
|
1014
814
|
const currentEnd = Math.min(currentPage * pageSize, total);
|
|
1015
|
-
|
|
1016
815
|
if (formatPageText || formatPageText !== false && defaultPageText && total > 0) {
|
|
1017
816
|
info = typeof formatPageText === 'function' ? formatPageText({
|
|
1018
817
|
currentStart,
|
|
@@ -1020,24 +819,20 @@ class TableFoundation extends BaseFoundation {
|
|
|
1020
819
|
total
|
|
1021
820
|
}) : defaultPageText.replace('${currentStart}', currentStart).replace('${currentEnd}', currentEnd).replace('${total}', total);
|
|
1022
821
|
}
|
|
1023
|
-
|
|
1024
822
|
return info;
|
|
1025
823
|
}
|
|
1026
|
-
|
|
1027
824
|
toggleShowFilter(dataIndex, visible) {
|
|
1028
825
|
let filterObj = this.getQuery(dataIndex);
|
|
1029
|
-
const filterDropdownVisible = visible;
|
|
1030
|
-
|
|
826
|
+
const filterDropdownVisible = visible;
|
|
1031
827
|
filterObj = Object.assign(Object.assign({}, filterObj), {
|
|
1032
828
|
filterDropdownVisible
|
|
1033
829
|
});
|
|
1034
|
-
|
|
1035
|
-
|
|
830
|
+
if (!this._filterShowIsControlled()) {
|
|
831
|
+
// this._adapter.setQuery({
|
|
1036
832
|
// ...filterObj,
|
|
1037
833
|
// filterDropdownVisible,
|
|
1038
834
|
// });
|
|
1039
835
|
}
|
|
1040
|
-
|
|
1041
836
|
this._adapter.notifyFilterDropdownVisibleChange(filterDropdownVisible, dataIndex);
|
|
1042
837
|
}
|
|
1043
838
|
/**
|
|
@@ -1045,8 +840,6 @@ class TableFoundation extends BaseFoundation {
|
|
|
1045
840
|
* @param {*} dataIndex
|
|
1046
841
|
* @param {*} data
|
|
1047
842
|
*/
|
|
1048
|
-
|
|
1049
|
-
|
|
1050
843
|
handleFilterSelect(dataIndex) {
|
|
1051
844
|
let data = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
1052
845
|
let query = this.getQuery(dataIndex);
|
|
@@ -1058,17 +851,12 @@ class TableFoundation extends BaseFoundation {
|
|
|
1058
851
|
filteredValue
|
|
1059
852
|
});
|
|
1060
853
|
queries = mergeQueries(query, queries);
|
|
1061
|
-
|
|
1062
854
|
const mergedQueries = this._mergeToQueries(query, null);
|
|
1063
|
-
|
|
1064
855
|
const filters = this._getAllFilters(mergedQueries);
|
|
1065
|
-
|
|
1066
856
|
if (!this._filterIsControlled(dataIndex)) {
|
|
1067
857
|
this._adapter.setQueries(queries);
|
|
1068
|
-
|
|
1069
858
|
this.handleClickFilterOrSorter(queries);
|
|
1070
859
|
}
|
|
1071
|
-
|
|
1072
860
|
this._notifyChange(null, filters);
|
|
1073
861
|
}
|
|
1074
862
|
/**
|
|
@@ -1076,8 +864,6 @@ class TableFoundation extends BaseFoundation {
|
|
|
1076
864
|
* @param {*} column
|
|
1077
865
|
* @param {*} e
|
|
1078
866
|
*/
|
|
1079
|
-
|
|
1080
|
-
|
|
1081
867
|
handleSort() {
|
|
1082
868
|
let column = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
1083
869
|
let e = arguments.length > 1 ? arguments[1] : undefined;
|
|
@@ -1088,17 +874,12 @@ class TableFoundation extends BaseFoundation {
|
|
|
1088
874
|
let queries = this.getState('queries');
|
|
1089
875
|
let curQuery = null;
|
|
1090
876
|
queries = [...queries];
|
|
1091
|
-
|
|
1092
877
|
_each(queries, (query, idx, arr) => {
|
|
1093
878
|
if (query.sorter) {
|
|
1094
879
|
const sorterObj = Object.assign({}, query);
|
|
1095
|
-
|
|
1096
880
|
const stateSortOrder = _get(sorterObj, 'sortOrder');
|
|
1097
|
-
|
|
1098
881
|
const defaultSortOrder = _get(sorterObj, 'defaultSortOrder', false);
|
|
1099
|
-
|
|
1100
882
|
let querySortOrder = this.isSortOrderValid(stateSortOrder) ? stateSortOrder : defaultSortOrder;
|
|
1101
|
-
|
|
1102
883
|
if (dataIndex && dataIndex === sorterObj.dataIndex) {
|
|
1103
884
|
if (querySortOrder === strings.SORT_DIRECTIONS[0]) {
|
|
1104
885
|
querySortOrder = strings.SORT_DIRECTIONS[1];
|
|
@@ -1111,70 +892,55 @@ class TableFoundation extends BaseFoundation {
|
|
|
1111
892
|
// This results in the current click only supports single column sorting
|
|
1112
893
|
querySortOrder = false;
|
|
1113
894
|
}
|
|
1114
|
-
|
|
1115
895
|
arr[idx] = Object.assign(Object.assign({}, sorterObj), {
|
|
1116
896
|
sortOrder: querySortOrder
|
|
1117
897
|
});
|
|
1118
|
-
|
|
1119
898
|
if (dataIndex === sorterObj.dataIndex) {
|
|
1120
899
|
curQuery = arr[idx];
|
|
1121
900
|
}
|
|
1122
901
|
}
|
|
1123
902
|
});
|
|
1124
|
-
|
|
1125
903
|
if (!this._sorterIsControlled(dataIndex)) {
|
|
1126
904
|
this._adapter.setQueries(queries);
|
|
1127
|
-
|
|
1128
905
|
this.handleClickFilterOrSorter(queries);
|
|
1129
|
-
}
|
|
1130
|
-
|
|
1131
|
-
|
|
906
|
+
}
|
|
907
|
+
// notify sort event
|
|
1132
908
|
this._notifyChange(null, null, curQuery, null);
|
|
1133
909
|
}
|
|
1134
910
|
/**
|
|
1135
911
|
* Recalculate the cached data after clicking filter or sorter
|
|
1136
912
|
* @param {*} queries
|
|
1137
913
|
*/
|
|
1138
|
-
|
|
1139
|
-
|
|
1140
914
|
handleClickFilterOrSorter(queries) {
|
|
1141
915
|
const dataSource = [...this.getProp('dataSource')];
|
|
1142
916
|
const sortedDataSource = this.getFilteredSortedDataSource(dataSource, queries);
|
|
917
|
+
const allDataDisabledRowKeys = this.getAllDisabledRowKeys(sortedDataSource);
|
|
1143
918
|
this.setCachedFilteredSortedDataSource(sortedDataSource);
|
|
919
|
+
this.setAllDisabledRowKeys(allDataDisabledRowKeys);
|
|
1144
920
|
const pageData = this.getCurrentPageData(sortedDataSource);
|
|
1145
921
|
this.setAdapterPageData(pageData);
|
|
1146
922
|
}
|
|
1147
|
-
|
|
1148
923
|
getQuery(dataIndex, queries) {
|
|
1149
924
|
queries = queries || this.getState('queries');
|
|
1150
|
-
|
|
1151
925
|
if (dataIndex != null) {
|
|
1152
926
|
return _find(queries, query => query.dataIndex === dataIndex);
|
|
1153
927
|
}
|
|
1154
|
-
|
|
1155
928
|
return undefined;
|
|
1156
929
|
}
|
|
1157
|
-
|
|
1158
930
|
getCellWidths(flattenedColumns, flattenedWidths, ignoreScrollBarKey) {
|
|
1159
931
|
return this._adapter.getCellWidths(flattenedColumns, flattenedWidths, ignoreScrollBarKey);
|
|
1160
932
|
}
|
|
1161
|
-
|
|
1162
933
|
setHeadWidths(headWidths, index) {
|
|
1163
934
|
return this._adapter.setHeadWidths(headWidths, index);
|
|
1164
935
|
}
|
|
1165
|
-
|
|
1166
936
|
getHeadWidths(index) {
|
|
1167
937
|
return this._adapter.getHeadWidths(index);
|
|
1168
938
|
}
|
|
1169
|
-
|
|
1170
939
|
mergedRowExpandable(record) {
|
|
1171
940
|
return this._adapter.mergedRowExpandable(record);
|
|
1172
941
|
}
|
|
1173
|
-
|
|
1174
942
|
setBodyHasScrollbar(bodyHasScrollbar) {
|
|
1175
943
|
this._adapter.setBodyHasScrollbar(bodyHasScrollbar);
|
|
1176
944
|
}
|
|
1177
|
-
|
|
1178
945
|
}
|
|
1179
|
-
|
|
1180
946
|
export default TableFoundation;
|