@douyinfe/semi-ui 2.2.2 → 2.4.0-beta.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/_base/_story/a11y.jsx +6 -6
- package/_base/_story/a11y.scss +0 -1
- package/_base/_story/index.scss +2 -5
- package/_utils/hooks/usePrevFocus.ts +16 -0
- package/_utils/index.ts +4 -0
- package/anchor/_story/anchor.stories.js +1 -1
- package/anchor/index.tsx +5 -2
- package/anchor/link.tsx +29 -4
- package/autoComplete/index.tsx +28 -1
- package/avatar/_story/avatar.stories.js +4 -4
- package/avatar/index.tsx +6 -4
- package/banner/index.tsx +2 -1
- package/breadcrumb/_story/breadcrumb.stories.js +22 -8
- package/breadcrumb/index.tsx +8 -1
- package/breadcrumb/item.tsx +1 -1
- package/button/Button.tsx +4 -0
- package/button/__test__/button.test.js +1 -1
- package/button/_story/button.stories.js +10 -10
- package/button/buttonGroup.tsx +4 -2
- package/button/splitButtonGroup.tsx +5 -2
- package/card/_story/card.stories.js +8 -1
- package/card/_story/card.stories.tsx +3 -0
- package/card/index.tsx +5 -2
- package/cascader/index.tsx +33 -5
- package/checkbox/_story/checkbox.stories.js +19 -12
- package/checkbox/checkbox.tsx +40 -5
- package/checkbox/checkboxGroup.tsx +30 -5
- package/checkbox/checkboxInner.tsx +25 -2
- package/collapse/index.tsx +1 -1
- package/collapse/item.tsx +12 -7
- package/collapsible/index.tsx +4 -2
- package/configProvider/_story/configProvider.stories.tsx +27 -0
- package/datePicker/datePicker.tsx +19 -0
- package/dist/css/semi.css +23 -12
- package/dist/css/semi.min.css +1 -1
- package/dist/umd/semi-ui.js +2502 -1249
- package/dist/umd/semi-ui.js.map +1 -1
- package/dist/umd/semi-ui.min.js +1 -1
- package/dist/umd/semi-ui.min.js.map +1 -1
- package/dropdown/dropdownItem.tsx +1 -1
- package/dropdown/dropdownMenu.tsx +1 -1
- package/dropdown/index.tsx +11 -3
- package/empty/index.tsx +4 -4
- package/form/_story/FormApi/formApiDemo.jsx +3 -2
- package/form/_story/Validate/validateDemo.jsx +1 -1
- package/form/_story/demo.jsx +12 -3
- package/form/_story/form.stories.js +0 -7
- package/form/baseForm.tsx +2 -0
- package/form/errorMessage.tsx +13 -2
- package/form/hoc/withField.tsx +37 -8
- package/form/index.tsx +0 -2
- package/form/interface.ts +2 -0
- package/form/label.tsx +4 -2
- package/input/index.tsx +49 -4
- package/input/inputGroup.tsx +9 -4
- package/input/textarea.tsx +30 -9
- package/inputNumber/__test__/inputNumber.test.js +36 -8
- package/inputNumber/index.tsx +30 -2
- package/layout/Sider.tsx +6 -2
- package/layout/index.tsx +4 -3
- package/lib/cjs/_utils/hooks/usePrevFocus.d.ts +2 -0
- package/lib/cjs/_utils/hooks/usePrevFocus.js +30 -0
- package/lib/cjs/_utils/index.d.ts +1 -0
- package/lib/cjs/_utils/index.js +6 -1
- package/lib/cjs/anchor/index.d.ts +2 -0
- package/lib/cjs/anchor/index.js +6 -1
- package/lib/cjs/anchor/link.d.ts +4 -1
- package/lib/cjs/anchor/link.js +39 -5
- package/lib/cjs/autoComplete/index.d.ts +17 -0
- package/lib/cjs/autoComplete/index.js +21 -2
- package/lib/cjs/avatar/index.d.ts +4 -3
- package/lib/cjs/avatar/index.js +15 -11
- package/lib/cjs/banner/index.js +4 -2
- package/lib/cjs/breadcrumb/index.d.ts +3 -0
- package/lib/cjs/breadcrumb/index.js +10 -4
- package/lib/cjs/breadcrumb/item.js +2 -2
- package/lib/cjs/button/Button.d.ts +2 -0
- package/lib/cjs/button/Button.js +4 -2
- package/lib/cjs/button/buttonGroup.d.ts +3 -0
- package/lib/cjs/button/buttonGroup.js +8 -4
- package/lib/cjs/button/index.d.ts +1 -0
- package/lib/cjs/button/splitButtonGroup.d.ts +3 -0
- package/lib/cjs/button/splitButtonGroup.js +5 -2
- package/lib/cjs/card/index.d.ts +3 -0
- package/lib/cjs/card/index.js +3 -1
- package/lib/cjs/cascader/index.d.ts +14 -0
- package/lib/cjs/cascader/index.js +35 -7
- package/lib/cjs/checkbox/checkbox.d.ts +21 -1
- package/lib/cjs/checkbox/checkbox.js +51 -17
- package/lib/cjs/checkbox/checkboxGroup.d.ts +13 -1
- package/lib/cjs/checkbox/checkboxGroup.js +16 -3
- package/lib/cjs/checkbox/checkboxInner.d.ts +15 -0
- package/lib/cjs/checkbox/checkboxInner.js +20 -3
- package/lib/cjs/collapse/item.d.ts +2 -1
- package/lib/cjs/collapse/item.js +12 -2
- package/lib/cjs/collapsible/index.d.ts +1 -0
- package/lib/cjs/collapsible/index.js +4 -2
- package/lib/cjs/datePicker/datePicker.d.ts +12 -0
- package/lib/cjs/datePicker/datePicker.js +14 -1
- package/lib/cjs/dropdown/dropdownItem.js +3 -1
- package/lib/cjs/dropdown/dropdownMenu.js +4 -1
- package/lib/cjs/dropdown/index.d.ts +10 -3
- package/lib/cjs/form/baseForm.d.ts +9 -0
- package/lib/cjs/form/baseForm.js +3 -1
- package/lib/cjs/form/errorMessage.d.ts +4 -0
- package/lib/cjs/form/errorMessage.js +21 -3
- package/lib/cjs/form/field.d.ts +7 -0
- package/lib/cjs/form/hoc/withField.js +49 -16
- package/lib/cjs/form/index.d.ts +0 -1
- package/lib/cjs/form/interface.d.ts +2 -0
- package/lib/cjs/form/label.d.ts +2 -0
- package/lib/cjs/form/label.js +5 -2
- package/lib/cjs/input/index.d.ts +16 -0
- package/lib/cjs/input/index.js +51 -15
- package/lib/cjs/input/inputGroup.d.ts +2 -1
- package/lib/cjs/input/inputGroup.js +11 -1
- package/lib/cjs/input/textarea.js +16 -3
- package/lib/cjs/inputNumber/index.d.ts +8 -0
- package/lib/cjs/inputNumber/index.js +35 -4
- package/lib/cjs/layout/Sider.d.ts +4 -0
- package/lib/cjs/layout/Sider.js +4 -1
- package/lib/cjs/layout/index.js +2 -0
- package/lib/cjs/list/index.d.ts +4 -4
- package/lib/cjs/list/item.js +0 -1
- package/lib/cjs/modal/Modal.js +2 -0
- package/lib/cjs/modal/ModalContent.d.ts +3 -1
- package/lib/cjs/modal/ModalContent.js +47 -5
- package/lib/cjs/navigation/Item.d.ts +4 -2
- package/lib/cjs/navigation/Item.js +25 -5
- package/lib/cjs/navigation/SubNav.d.ts +4 -2
- package/lib/cjs/navigation/SubNav.js +8 -1
- package/lib/cjs/navigation/index.js +2 -0
- package/lib/cjs/notification/notice.d.ts +1 -1
- package/lib/cjs/notification/notice.js +32 -22
- package/lib/cjs/pagination/index.js +16 -6
- package/lib/cjs/popover/index.js +7 -3
- package/lib/cjs/progress/index.d.ts +8 -0
- package/lib/cjs/progress/index.js +42 -9
- package/lib/cjs/radio/radio.d.ts +6 -1
- package/lib/cjs/radio/radio.js +17 -5
- package/lib/cjs/radio/radioGroup.d.ts +16 -1
- package/lib/cjs/radio/radioGroup.js +18 -3
- package/lib/cjs/radio/radioInner.d.ts +6 -1
- package/lib/cjs/radio/radioInner.js +11 -3
- package/lib/cjs/rating/index.d.ts +14 -0
- package/lib/cjs/rating/index.js +14 -3
- package/lib/cjs/rating/item.d.ts +2 -0
- package/lib/cjs/rating/item.js +6 -1
- package/lib/cjs/select/index.d.ts +16 -0
- package/lib/cjs/select/index.js +65 -19
- package/lib/cjs/select/option.js +28 -22
- package/lib/cjs/sideSheet/SideSheetContent.d.ts +1 -0
- package/lib/cjs/sideSheet/SideSheetContent.js +4 -1
- package/lib/cjs/sideSheet/index.d.ts +1 -0
- package/lib/cjs/sideSheet/index.js +2 -1
- package/lib/cjs/slider/index.d.ts +2 -1
- package/lib/cjs/slider/index.js +64 -17
- package/lib/cjs/spin/icon.js +3 -4
- package/lib/cjs/steps/basicStep.d.ts +3 -0
- package/lib/cjs/steps/basicStep.js +23 -25
- package/lib/cjs/steps/basicSteps.d.ts +1 -0
- package/lib/cjs/steps/basicSteps.js +2 -1
- package/lib/cjs/steps/fillStep.d.ts +3 -0
- package/lib/cjs/steps/fillStep.js +19 -4
- package/lib/cjs/steps/fillSteps.d.ts +1 -0
- package/lib/cjs/steps/fillSteps.js +2 -1
- package/lib/cjs/steps/navStep.d.ts +3 -0
- package/lib/cjs/steps/navStep.js +22 -25
- package/lib/cjs/steps/navSteps.d.ts +1 -0
- package/lib/cjs/steps/navSteps.js +2 -1
- package/lib/cjs/switch/index.d.ts +12 -0
- package/lib/cjs/switch/index.js +19 -4
- package/lib/cjs/table/Body/BaseRow.js +35 -3
- package/lib/cjs/table/Body/index.js +9 -1
- package/lib/cjs/table/ColumnFilter.js +4 -0
- package/lib/cjs/table/ColumnSelection.d.ts +3 -0
- package/lib/cjs/table/ColumnSelection.js +6 -2
- package/lib/cjs/table/ColumnSorter.js +19 -3
- package/lib/cjs/table/CustomExpandIcon.js +7 -1
- package/lib/cjs/table/Table.d.ts +2 -0
- package/lib/cjs/table/Table.js +35 -15
- package/lib/cjs/table/TableCell.d.ts +2 -0
- package/lib/cjs/table/TableCell.js +6 -2
- package/lib/cjs/table/TableHeaderRow.js +8 -2
- package/lib/cjs/tabs/TabBar.js +11 -3
- package/lib/cjs/tabs/TabPane.js +3 -1
- package/lib/cjs/tabs/index.js +0 -1
- package/lib/cjs/tagInput/index.d.ts +4 -1
- package/lib/cjs/tagInput/index.js +29 -3
- package/lib/cjs/timePicker/TimePicker.d.ts +14 -0
- package/lib/cjs/timePicker/TimePicker.js +11 -4
- package/lib/cjs/timePicker/index.d.ts +7 -0
- package/lib/cjs/timeline/index.d.ts +1 -1
- package/lib/cjs/timeline/index.js +1 -0
- package/lib/cjs/timeline/item.js +4 -2
- package/lib/cjs/toast/toast.js +2 -0
- package/lib/cjs/tooltip/TriangleArrow.js +1 -0
- package/lib/cjs/tooltip/TriangleArrowVertical.js +1 -0
- package/lib/cjs/tooltip/index.d.ts +16 -12
- package/lib/cjs/tooltip/index.js +55 -39
- package/lib/cjs/transfer/index.js +32 -14
- package/lib/cjs/tree/index.d.ts +1 -0
- package/lib/cjs/tree/index.js +15 -6
- package/lib/cjs/tree/treeNode.d.ts +12 -4
- package/lib/cjs/tree/treeNode.js +54 -5
- package/lib/cjs/treeSelect/index.d.ts +16 -0
- package/lib/cjs/treeSelect/index.js +60 -12
- package/lib/cjs/typography/base.js +18 -7
- package/lib/cjs/typography/copyable.js +6 -1
- package/lib/cjs/upload/fileCard.js +26 -7
- package/lib/cjs/upload/index.js +19 -4
- package/lib/es/_utils/hooks/usePrevFocus.d.ts +2 -0
- package/lib/es/_utils/hooks/usePrevFocus.js +15 -0
- package/lib/es/_utils/index.d.ts +1 -0
- package/lib/es/_utils/index.js +4 -1
- package/lib/es/anchor/index.d.ts +2 -0
- package/lib/es/anchor/index.js +6 -1
- package/lib/es/anchor/link.d.ts +4 -1
- package/lib/es/anchor/link.js +38 -5
- package/lib/es/autoComplete/index.d.ts +17 -0
- package/lib/es/autoComplete/index.js +21 -2
- package/lib/es/avatar/index.d.ts +4 -3
- package/lib/es/avatar/index.js +15 -11
- package/lib/es/banner/index.js +4 -2
- package/lib/es/breadcrumb/index.d.ts +3 -0
- package/lib/es/breadcrumb/index.js +10 -4
- package/lib/es/breadcrumb/item.js +2 -2
- package/lib/es/button/Button.d.ts +2 -0
- package/lib/es/button/Button.js +4 -2
- package/lib/es/button/buttonGroup.d.ts +3 -0
- package/lib/es/button/buttonGroup.js +8 -4
- package/lib/es/button/index.d.ts +1 -0
- package/lib/es/button/splitButtonGroup.d.ts +3 -0
- package/lib/es/button/splitButtonGroup.js +5 -2
- package/lib/es/card/index.d.ts +3 -0
- package/lib/es/card/index.js +3 -1
- package/lib/es/cascader/index.d.ts +14 -0
- package/lib/es/cascader/index.js +35 -7
- package/lib/es/checkbox/checkbox.d.ts +21 -1
- package/lib/es/checkbox/checkbox.js +50 -17
- package/lib/es/checkbox/checkboxGroup.d.ts +13 -1
- package/lib/es/checkbox/checkboxGroup.js +18 -5
- package/lib/es/checkbox/checkboxInner.d.ts +15 -0
- package/lib/es/checkbox/checkboxInner.js +20 -3
- package/lib/es/collapse/item.d.ts +2 -1
- package/lib/es/collapse/item.js +11 -2
- package/lib/es/collapsible/index.d.ts +1 -0
- package/lib/es/collapsible/index.js +4 -2
- package/lib/es/datePicker/datePicker.d.ts +12 -0
- package/lib/es/datePicker/datePicker.js +14 -1
- package/lib/es/dropdown/dropdownItem.js +3 -1
- package/lib/es/dropdown/dropdownMenu.js +4 -1
- package/lib/es/dropdown/index.d.ts +10 -3
- package/lib/es/form/baseForm.d.ts +9 -0
- package/lib/es/form/baseForm.js +3 -1
- package/lib/es/form/errorMessage.d.ts +4 -0
- package/lib/es/form/errorMessage.js +21 -3
- package/lib/es/form/field.d.ts +7 -0
- package/lib/es/form/hoc/withField.js +48 -15
- package/lib/es/form/index.d.ts +0 -1
- package/lib/es/form/index.js +0 -1
- package/lib/es/form/interface.d.ts +2 -0
- package/lib/es/form/label.d.ts +2 -0
- package/lib/es/form/label.js +5 -2
- package/lib/es/input/index.d.ts +16 -0
- package/lib/es/input/index.js +51 -15
- package/lib/es/input/inputGroup.d.ts +2 -1
- package/lib/es/input/inputGroup.js +11 -1
- package/lib/es/input/textarea.js +16 -3
- package/lib/es/inputNumber/index.d.ts +8 -0
- package/lib/es/inputNumber/index.js +36 -4
- package/lib/es/layout/Sider.d.ts +4 -0
- package/lib/es/layout/Sider.js +4 -1
- package/lib/es/layout/index.js +2 -0
- package/lib/es/list/index.d.ts +4 -4
- package/lib/es/list/item.js +0 -1
- package/lib/es/modal/Modal.js +2 -0
- package/lib/es/modal/ModalContent.d.ts +3 -1
- package/lib/es/modal/ModalContent.js +46 -5
- package/lib/es/navigation/Item.d.ts +4 -2
- package/lib/es/navigation/Item.js +25 -5
- package/lib/es/navigation/SubNav.d.ts +4 -2
- package/lib/es/navigation/SubNav.js +8 -1
- package/lib/es/navigation/index.js +2 -0
- package/lib/es/notification/notice.d.ts +1 -1
- package/lib/es/notification/notice.js +33 -24
- package/lib/es/pagination/index.js +16 -6
- package/lib/es/popover/index.js +7 -3
- package/lib/es/progress/index.d.ts +8 -0
- package/lib/es/progress/index.js +42 -9
- package/lib/es/radio/radio.d.ts +6 -1
- package/lib/es/radio/radio.js +16 -5
- package/lib/es/radio/radioGroup.d.ts +16 -1
- package/lib/es/radio/radioGroup.js +18 -3
- package/lib/es/radio/radioInner.d.ts +6 -1
- package/lib/es/radio/radioInner.js +11 -3
- package/lib/es/rating/index.d.ts +14 -0
- package/lib/es/rating/index.js +14 -3
- package/lib/es/rating/item.d.ts +2 -0
- package/lib/es/rating/item.js +6 -1
- package/lib/es/select/index.d.ts +16 -0
- package/lib/es/select/index.js +63 -17
- package/lib/es/select/option.js +28 -22
- package/lib/es/sideSheet/SideSheetContent.d.ts +1 -0
- package/lib/es/sideSheet/SideSheetContent.js +4 -1
- package/lib/es/sideSheet/index.d.ts +1 -0
- package/lib/es/sideSheet/index.js +2 -1
- package/lib/es/slider/index.d.ts +2 -1
- package/lib/es/slider/index.js +63 -16
- package/lib/es/spin/icon.js +3 -4
- package/lib/es/steps/basicStep.d.ts +3 -0
- package/lib/es/steps/basicStep.js +23 -23
- package/lib/es/steps/basicSteps.d.ts +1 -0
- package/lib/es/steps/basicSteps.js +2 -1
- package/lib/es/steps/fillStep.d.ts +3 -0
- package/lib/es/steps/fillStep.js +19 -4
- package/lib/es/steps/fillSteps.d.ts +1 -0
- package/lib/es/steps/fillSteps.js +2 -1
- package/lib/es/steps/navStep.d.ts +3 -0
- package/lib/es/steps/navStep.js +22 -23
- package/lib/es/steps/navSteps.d.ts +1 -0
- package/lib/es/steps/navSteps.js +2 -1
- package/lib/es/switch/index.d.ts +12 -0
- package/lib/es/switch/index.js +19 -4
- package/lib/es/table/Body/BaseRow.js +35 -3
- package/lib/es/table/Body/index.js +9 -2
- package/lib/es/table/ColumnFilter.js +4 -0
- package/lib/es/table/ColumnSelection.d.ts +3 -0
- package/lib/es/table/ColumnSelection.js +6 -2
- package/lib/es/table/ColumnSorter.js +17 -3
- package/lib/es/table/CustomExpandIcon.js +6 -1
- package/lib/es/table/Table.d.ts +2 -0
- package/lib/es/table/Table.js +35 -15
- package/lib/es/table/TableCell.d.ts +2 -0
- package/lib/es/table/TableCell.js +6 -2
- package/lib/es/table/TableHeaderRow.js +8 -2
- package/lib/es/tabs/TabBar.js +11 -3
- package/lib/es/tabs/TabPane.js +3 -1
- package/lib/es/tabs/index.js +0 -1
- package/lib/es/tagInput/index.d.ts +4 -1
- package/lib/es/tagInput/index.js +29 -3
- package/lib/es/timePicker/TimePicker.d.ts +14 -0
- package/lib/es/timePicker/TimePicker.js +11 -4
- package/lib/es/timePicker/index.d.ts +7 -0
- package/lib/es/timeline/index.d.ts +1 -1
- package/lib/es/timeline/index.js +1 -0
- package/lib/es/timeline/item.js +4 -2
- package/lib/es/toast/toast.js +2 -0
- package/lib/es/tooltip/TriangleArrow.js +1 -0
- package/lib/es/tooltip/TriangleArrowVertical.js +1 -0
- package/lib/es/tooltip/index.d.ts +16 -12
- package/lib/es/tooltip/index.js +53 -39
- package/lib/es/transfer/index.js +32 -14
- package/lib/es/tree/index.d.ts +1 -0
- package/lib/es/tree/index.js +15 -6
- package/lib/es/tree/treeNode.d.ts +12 -4
- package/lib/es/tree/treeNode.js +53 -5
- package/lib/es/treeSelect/index.d.ts +16 -0
- package/lib/es/treeSelect/index.js +57 -10
- package/lib/es/typography/base.js +17 -7
- package/lib/es/typography/copyable.js +5 -1
- package/lib/es/upload/fileCard.js +26 -7
- package/lib/es/upload/index.js +19 -4
- package/list/index.tsx +5 -5
- package/list/item.tsx +0 -1
- package/modal/Modal.tsx +2 -0
- package/modal/ModalContent.tsx +35 -5
- package/navigation/Item.tsx +15 -0
- package/navigation/SubNav.tsx +13 -1
- package/navigation/index.tsx +1 -1
- package/notification/notice.tsx +19 -14
- package/package.json +8 -8
- package/pagination/index.tsx +9 -5
- package/popover/index.tsx +5 -0
- package/progress/_story/progress.stories.js +18 -18
- package/progress/index.tsx +58 -20
- package/radio/radio.tsx +12 -2
- package/radio/radioGroup.tsx +29 -3
- package/radio/radioInner.tsx +10 -1
- package/rating/index.tsx +19 -2
- package/rating/item.tsx +6 -0
- package/select/__test__/select.test.js +45 -0
- package/select/_story/select.stories.js +29 -0
- package/select/index.tsx +57 -4
- package/select/option.tsx +3 -0
- package/sideSheet/SideSheetContent.tsx +6 -4
- package/sideSheet/index.tsx +3 -2
- package/slider/__test__/slider.test.js +9 -0
- package/slider/_story/slider.stories.js +1 -1
- package/slider/index.tsx +44 -7
- package/spin/icon.tsx +4 -3
- package/steps/basicStep.tsx +15 -4
- package/steps/basicSteps.tsx +3 -2
- package/steps/fillStep.tsx +27 -12
- package/steps/fillSteps.tsx +2 -0
- package/steps/navStep.tsx +15 -4
- package/steps/navSteps.tsx +3 -2
- package/switch/_story/switch.stories.js +20 -19
- package/switch/_story/switch.stories.tsx +13 -13
- package/switch/index.tsx +23 -5
- package/table/Body/BaseRow.tsx +25 -1
- package/table/Body/index.tsx +7 -2
- package/table/ColumnFilter.tsx +7 -1
- package/table/ColumnSelection.tsx +4 -1
- package/table/ColumnSorter.tsx +18 -1
- package/table/CustomExpandIcon.tsx +5 -0
- package/table/Table.tsx +30 -14
- package/table/TableCell.tsx +11 -1
- package/table/TableHeaderRow.tsx +16 -2
- package/table/__test__/table.test.js +46 -0
- package/table/_story/table.stories.js +2 -0
- package/table/_story/v2/FixedColumnsChange/index.jsx +104 -0
- package/table/_story/v2/FixedZIndex/index.jsx +87 -0
- package/tabs/TabBar.tsx +8 -5
- package/tabs/TabPane.tsx +3 -1
- package/tabs/index.tsx +0 -1
- package/tagInput/__test__/tagInput.test.js +46 -0
- package/tagInput/_story/tagInput.stories.js +2 -2
- package/tagInput/index.tsx +31 -8
- package/timePicker/TimePicker.tsx +17 -2
- package/timePicker/__test__/timePicker.test.js +34 -3
- package/timePicker/_story/timepicker.stories.js +18 -0
- package/timeline/_story/timeline.stories.js +1 -1
- package/timeline/index.tsx +2 -2
- package/timeline/item.tsx +2 -1
- package/toast/toast.tsx +2 -0
- package/tooltip/TriangleArrow.tsx +1 -1
- package/tooltip/TriangleArrowVertical.tsx +1 -1
- package/tooltip/_story/tooltip.stories.js +562 -514
- package/tooltip/index.tsx +51 -33
- package/transfer/index.tsx +29 -25
- package/tree/_story/tree.stories.js +3 -3
- package/tree/index.tsx +10 -2
- package/tree/treeNode.tsx +54 -11
- package/treeSelect/__test__/treeMultiple.test.js +5 -0
- package/treeSelect/_story/treeSelect.stories.js +12 -0
- package/treeSelect/index.tsx +58 -7
- package/typography/base.tsx +7 -1
- package/typography/copyable.tsx +10 -1
- package/upload/fileCard.tsx +14 -16
- package/upload/index.tsx +10 -6
package/tagInput/index.tsx
CHANGED
|
@@ -55,8 +55,9 @@ export interface TagInputProps {
|
|
|
55
55
|
style?: React.CSSProperties;
|
|
56
56
|
suffix?: React.ReactNode;
|
|
57
57
|
validateStatus?: ValidateStatus;
|
|
58
|
-
value?: string[];
|
|
58
|
+
value?: string[] | undefined;
|
|
59
59
|
autoFocus?: boolean;
|
|
60
|
+
'aria-label'?: string;
|
|
60
61
|
}
|
|
61
62
|
|
|
62
63
|
export interface TagInputState {
|
|
@@ -102,7 +103,8 @@ class TagInput extends BaseComponent<TagInputProps, TagInputState> {
|
|
|
102
103
|
size: PropTypes.oneOf(strings.SIZE_SET),
|
|
103
104
|
validateStatus: PropTypes.oneOf(strings.STATUS),
|
|
104
105
|
prefix: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),
|
|
105
|
-
suffix: PropTypes.oneOfType([PropTypes.string, PropTypes.node])
|
|
106
|
+
suffix: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),
|
|
107
|
+
'aria-label': PropTypes.string,
|
|
106
108
|
};
|
|
107
109
|
|
|
108
110
|
static defaultProps = {
|
|
@@ -140,12 +142,18 @@ class TagInput extends BaseComponent<TagInputProps, TagInputState> {
|
|
|
140
142
|
}
|
|
141
143
|
|
|
142
144
|
static getDerivedStateFromProps(nextProps: TagInputProps, prevState: TagInputState) {
|
|
143
|
-
const {
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
145
|
+
const { value, inputValue } = nextProps;
|
|
146
|
+
const { tagsArray: prevTagsArray } = prevState;
|
|
147
|
+
let tagsArray: string[];
|
|
148
|
+
if (isArray(value)) {
|
|
149
|
+
tagsArray = value;
|
|
150
|
+
} else if ('value' in nextProps && !value) {
|
|
151
|
+
tagsArray = [];
|
|
152
|
+
} else {
|
|
153
|
+
tagsArray = prevTagsArray;
|
|
154
|
+
}
|
|
147
155
|
return {
|
|
148
|
-
tagsArray
|
|
156
|
+
tagsArray,
|
|
149
157
|
inputValue: isString(inputValue) ? inputValue : prevState.inputValue
|
|
150
158
|
};
|
|
151
159
|
}
|
|
@@ -216,6 +224,10 @@ class TagInput extends BaseComponent<TagInputProps, TagInputState> {
|
|
|
216
224
|
this.foundation.handleClearBtn(e);
|
|
217
225
|
};
|
|
218
226
|
|
|
227
|
+
handleClearEnterPress = (e: React.KeyboardEvent<HTMLDivElement>) => {
|
|
228
|
+
this.foundation.handleClearEnterPress(e);
|
|
229
|
+
};
|
|
230
|
+
|
|
219
231
|
handleTagClose = (idx: number) => {
|
|
220
232
|
this.foundation.handleTagClose(idx);
|
|
221
233
|
};
|
|
@@ -236,7 +248,14 @@ class TagInput extends BaseComponent<TagInputProps, TagInputState> {
|
|
|
236
248
|
});
|
|
237
249
|
if (showClear) {
|
|
238
250
|
return (
|
|
239
|
-
<div
|
|
251
|
+
<div
|
|
252
|
+
role="button"
|
|
253
|
+
tabIndex={0}
|
|
254
|
+
aria-label="Clear TagInput value"
|
|
255
|
+
className={clearCls}
|
|
256
|
+
onClick={e => this.handleClearBtn(e)}
|
|
257
|
+
onKeyPress={e => this.handleClearEnterPress(e)}
|
|
258
|
+
>
|
|
240
259
|
<IconClear />
|
|
241
260
|
</div>
|
|
242
261
|
);
|
|
@@ -398,6 +417,9 @@ class TagInput extends BaseComponent<TagInputProps, TagInputState> {
|
|
|
398
417
|
<div
|
|
399
418
|
style={style}
|
|
400
419
|
className={tagInputCls}
|
|
420
|
+
aria-disabled={disabled}
|
|
421
|
+
aria-label={this.props['aria-label']}
|
|
422
|
+
aria-invalid={validateStatus === 'error'}
|
|
401
423
|
onMouseEnter={e => {
|
|
402
424
|
this.handleInputMouseEnter(e);
|
|
403
425
|
}}
|
|
@@ -409,6 +431,7 @@ class TagInput extends BaseComponent<TagInputProps, TagInputState> {
|
|
|
409
431
|
<div className={wrapperCls}>
|
|
410
432
|
{this.renderTags()}
|
|
411
433
|
<Input
|
|
434
|
+
aria-label='input value'
|
|
412
435
|
ref={this.inputRef as any}
|
|
413
436
|
className={inputCls}
|
|
414
437
|
disabled={disabled}
|
|
@@ -36,6 +36,11 @@ export type BaseValueType = string | number | Date;
|
|
|
36
36
|
export type Type = 'time' | 'timeRange';
|
|
37
37
|
|
|
38
38
|
export type TimePickerProps = {
|
|
39
|
+
'aria-describedby'?: React.AriaAttributes['aria-describedby'];
|
|
40
|
+
'aria-errormessage'?: React.AriaAttributes['aria-errormessage'];
|
|
41
|
+
'aria-invalid'?: React.AriaAttributes['aria-invalid'];
|
|
42
|
+
'aria-labelledby'?: React.AriaAttributes['aria-labelledby'];
|
|
43
|
+
'aria-required'?: React.AriaAttributes['aria-required'];
|
|
39
44
|
autoAdjustOverflow?: boolean;
|
|
40
45
|
autoFocus?: boolean; // TODO: autoFocus did not take effect
|
|
41
46
|
className?: string;
|
|
@@ -56,6 +61,7 @@ export type TimePickerProps = {
|
|
|
56
61
|
inputReadOnly?: boolean;
|
|
57
62
|
inputStyle?: React.CSSProperties;
|
|
58
63
|
insetLabel?: React.ReactNode;
|
|
64
|
+
insetLabelId?: string;
|
|
59
65
|
locale?: Locale['TimePicker'];
|
|
60
66
|
localeCode?: string;
|
|
61
67
|
minuteStep?: number;
|
|
@@ -84,6 +90,7 @@ export type TimePickerProps = {
|
|
|
84
90
|
zIndex?: number | string;
|
|
85
91
|
onBlur?: React.FocusEventHandler<HTMLInputElement>;
|
|
86
92
|
onChange?: TimePickerAdapter['notifyChange'];
|
|
93
|
+
onChangeWithDateFirst?: boolean;
|
|
87
94
|
onFocus?: React.FocusEventHandler<HTMLInputElement>;
|
|
88
95
|
onOpenChange?: (open: boolean) => void;
|
|
89
96
|
};
|
|
@@ -100,10 +107,14 @@ export interface TimePickerState {
|
|
|
100
107
|
invalid: boolean;
|
|
101
108
|
}
|
|
102
109
|
|
|
103
|
-
|
|
104
110
|
export default class TimePicker extends BaseComponent<TimePickerProps, TimePickerState> {
|
|
105
111
|
static contextType = ConfigContext;
|
|
106
112
|
static propTypes = {
|
|
113
|
+
'aria-labelledby': PropTypes.string,
|
|
114
|
+
'aria-invalid': PropTypes.bool,
|
|
115
|
+
'aria-errormessage': PropTypes.string,
|
|
116
|
+
'aria-describedby': PropTypes.string,
|
|
117
|
+
'aria-required': PropTypes.bool,
|
|
107
118
|
prefixCls: PropTypes.string,
|
|
108
119
|
clearText: PropTypes.string,
|
|
109
120
|
value: TimeShape,
|
|
@@ -142,6 +153,7 @@ export default class TimePicker extends BaseComponent<TimePickerProps, TimePicke
|
|
|
142
153
|
dateFnsLocale: PropTypes.object,
|
|
143
154
|
zIndex: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),
|
|
144
155
|
insetLabel: PropTypes.node,
|
|
156
|
+
insetLabelId: PropTypes.string,
|
|
145
157
|
validateStatus: PropTypes.oneOf(strings.STATUS),
|
|
146
158
|
type: PropTypes.oneOf<TimePickerProps['type']>(strings.TYPES),
|
|
147
159
|
rangeSeparator: PropTypes.string,
|
|
@@ -176,6 +188,7 @@ export default class TimePicker extends BaseComponent<TimePickerProps, TimePicke
|
|
|
176
188
|
onFocus: noop,
|
|
177
189
|
onBlur: noop,
|
|
178
190
|
onChange: noop,
|
|
191
|
+
onChangeWithDateFirst: true,
|
|
179
192
|
use12Hours: false,
|
|
180
193
|
focusOnOpen: false,
|
|
181
194
|
onKeyDown: noop,
|
|
@@ -246,7 +259,7 @@ export default class TimePicker extends BaseComponent<TimePickerProps, TimePicke
|
|
|
246
259
|
}
|
|
247
260
|
},
|
|
248
261
|
notifyOpenChange: (...args) => this.props.onOpenChange(...args),
|
|
249
|
-
notifyChange: (
|
|
262
|
+
notifyChange: (agr1, arg2) => this.props.onChange && this.props.onChange(agr1, arg2),
|
|
250
263
|
notifyFocus: (...args) => this.props.onFocus && this.props.onFocus(...args),
|
|
251
264
|
notifyBlur: (...args) => this.props.onBlur && this.props.onBlur(...args),
|
|
252
265
|
isRangePicker: () => this.props.type === strings.TYPE_TIME_RANGE_PICKER,
|
|
@@ -429,6 +442,7 @@ export default class TimePicker extends BaseComponent<TimePickerProps, TimePicke
|
|
|
429
442
|
zIndex,
|
|
430
443
|
getPopupContainer,
|
|
431
444
|
insetLabel,
|
|
445
|
+
insetLabelId,
|
|
432
446
|
inputStyle,
|
|
433
447
|
showClear,
|
|
434
448
|
panelHeader,
|
|
@@ -473,6 +487,7 @@ export default class TimePicker extends BaseComponent<TimePickerProps, TimePicke
|
|
|
473
487
|
value: inputValue,
|
|
474
488
|
onFocus: this.handleFocus,
|
|
475
489
|
insetLabel,
|
|
490
|
+
insetLabelId,
|
|
476
491
|
format,
|
|
477
492
|
locale,
|
|
478
493
|
localeCode,
|
|
@@ -22,11 +22,13 @@ describe(`TimePicker`, () => {
|
|
|
22
22
|
const defaultMinute = 24;
|
|
23
23
|
const defaultSeconds = 18;
|
|
24
24
|
|
|
25
|
-
const
|
|
25
|
+
const onFocus = sinon.spy();
|
|
26
|
+
const onChange = sinon.spy();
|
|
26
27
|
|
|
27
28
|
const elem = mount(
|
|
28
29
|
<TimePicker
|
|
29
|
-
|
|
30
|
+
onChange={onChange}
|
|
31
|
+
onFocus={onFocus}
|
|
30
32
|
panelHeader={<strong>Select Time</strong>}
|
|
31
33
|
locale={Locale.TimePicker}
|
|
32
34
|
localeCode={Locale.code}
|
|
@@ -59,7 +61,7 @@ describe(`TimePicker`, () => {
|
|
|
59
61
|
// focus
|
|
60
62
|
elem.find(`input`).simulate('focus');
|
|
61
63
|
await sleep(200);
|
|
62
|
-
expect(
|
|
64
|
+
expect(onFocus.calledOnce).toBeTruthy();
|
|
63
65
|
|
|
64
66
|
// input value
|
|
65
67
|
const newInputHour = 10;
|
|
@@ -82,6 +84,11 @@ describe(`TimePicker`, () => {
|
|
|
82
84
|
|
|
83
85
|
await sleep(200);
|
|
84
86
|
expect(elem.state('open')).toBe(false);
|
|
87
|
+
|
|
88
|
+
expect(onChange.called).toBeTruthy();
|
|
89
|
+
const args = onChange.getCall(0).args;
|
|
90
|
+
expect(args[0] instanceof Date).toBe(true);
|
|
91
|
+
expect(typeof args[1]).toBe('string');
|
|
85
92
|
});
|
|
86
93
|
|
|
87
94
|
it(`test controlled value`, async () => {
|
|
@@ -280,4 +287,28 @@ describe(`TimePicker`, () => {
|
|
|
280
287
|
expect(args[0]).toBe(undefined);
|
|
281
288
|
expect(args[1]).toBe('');
|
|
282
289
|
});
|
|
290
|
+
|
|
291
|
+
it('test onChangeWithDateFirst=false', async () => {
|
|
292
|
+
const onChange = sinon.spy();
|
|
293
|
+
let props = {
|
|
294
|
+
defaultValue: "10:23:15",
|
|
295
|
+
onChange,
|
|
296
|
+
defaultOpen: true,
|
|
297
|
+
onChangeWithDateFirst: false,
|
|
298
|
+
autofocus: true,
|
|
299
|
+
locale: Locale.TimePicker,
|
|
300
|
+
localeCode: Locale.code
|
|
301
|
+
};
|
|
302
|
+
const elem = mount(<TimePicker {...props} />);
|
|
303
|
+
// click minute
|
|
304
|
+
const minuteUl = elem.find(`.${BASE_CLASS_PREFIX}-timepicker-panel-list-minute .${BASE_CLASS_PREFIX}-scrolllist-list-outer ul`);
|
|
305
|
+
const minuteLis = minuteUl.find(`li`);
|
|
306
|
+
|
|
307
|
+
minuteUl.simulate('click', { target: minuteLis.at(0).getDOMNode(), nativeEvent: null });
|
|
308
|
+
|
|
309
|
+
expect(onChange.called).toBeTruthy();
|
|
310
|
+
const args = onChange.getCall(0).args;
|
|
311
|
+
expect(typeof args[0]).toBe('string');
|
|
312
|
+
expect(args[1] instanceof Date).toBe(true);
|
|
313
|
+
});
|
|
283
314
|
});
|
|
@@ -262,3 +262,21 @@ export const ShowClear = () => (
|
|
|
262
262
|
/>
|
|
263
263
|
</>
|
|
264
264
|
);
|
|
265
|
+
|
|
266
|
+
|
|
267
|
+
export const TimePickerWithOnChangeWithDateFirst = () => {
|
|
268
|
+
return (
|
|
269
|
+
<div>
|
|
270
|
+
onChangeWithDateFirst=true (default)
|
|
271
|
+
<TimePicker onChange={(...val) => console.log(...val)} />
|
|
272
|
+
<br />
|
|
273
|
+
onChangeWithDateFirst=false
|
|
274
|
+
<TimePicker onChangeWithDateFirst={false} onChange={(...val) => console.log(...val)} />
|
|
275
|
+
|
|
276
|
+
</div>
|
|
277
|
+
);
|
|
278
|
+
};
|
|
279
|
+
|
|
280
|
+
TimePickerWithOnChangeWithDateFirst.story = {
|
|
281
|
+
name: 'OnChangeWithDateFirst',
|
|
282
|
+
};
|
|
@@ -10,7 +10,7 @@ export default {
|
|
|
10
10
|
|
|
11
11
|
export const DefaultTimeline = () => (
|
|
12
12
|
<div>
|
|
13
|
-
<Timeline>
|
|
13
|
+
<Timeline aria-label="xx事故处理过程时间线">
|
|
14
14
|
<Timeline.Item time="2015-09-01">创建服务现场</Timeline.Item>
|
|
15
15
|
<Timeline.Item time="2015-09-01">初步排除网络异常</Timeline.Item>
|
|
16
16
|
<Timeline.Item time="2015-09-01">技术测试异常</Timeline.Item>
|
package/timeline/index.tsx
CHANGED
|
@@ -12,7 +12,7 @@ export interface Data extends TimelineItemProps {
|
|
|
12
12
|
content: React.ReactNode;
|
|
13
13
|
}
|
|
14
14
|
|
|
15
|
-
export interface TimelineProps {
|
|
15
|
+
export interface TimelineProps extends Pick<React.AriaAttributes, 'aria-label'> {
|
|
16
16
|
mode?: 'left' | 'right' | 'center' | 'alternate';
|
|
17
17
|
className?: string;
|
|
18
18
|
style?: React.CSSProperties;
|
|
@@ -86,7 +86,7 @@ class Timeline extends PureComponent<TimelineProps> {
|
|
|
86
86
|
const items = childrenList || this.addClassName(children);
|
|
87
87
|
|
|
88
88
|
return (
|
|
89
|
-
<ul style={style} className={classString}>
|
|
89
|
+
<ul aria-label={this.props['aria-label']} style={style} className={classString}>
|
|
90
90
|
{items}
|
|
91
91
|
</ul>
|
|
92
92
|
);
|
package/timeline/item.tsx
CHANGED
|
@@ -63,9 +63,10 @@ export default class Item extends PureComponent<TimelineItemProps> {
|
|
|
63
63
|
const dotStyle = color ? { style: { backgroundColor: color } } : null;
|
|
64
64
|
return (
|
|
65
65
|
<li className={itemCls} style={style} onClick={onClick}>
|
|
66
|
-
<div className={`${prefixCls}-tail`} />
|
|
66
|
+
<div className={`${prefixCls}-tail`} aria-hidden />
|
|
67
67
|
<div
|
|
68
68
|
className={dotCls}
|
|
69
|
+
aria-hidden
|
|
69
70
|
{...dotStyle}
|
|
70
71
|
>
|
|
71
72
|
{dot}
|
package/toast/toast.tsx
CHANGED
|
@@ -118,6 +118,8 @@ class Toast extends BaseComponent<ToastReactProps, ToastState> {
|
|
|
118
118
|
const btnSize = 'small';
|
|
119
119
|
return (
|
|
120
120
|
<div
|
|
121
|
+
role='alert'
|
|
122
|
+
aria-label={`${type ? type : 'default'} type`}
|
|
121
123
|
className={toastCls}
|
|
122
124
|
style={style}
|
|
123
125
|
onMouseEnter={this.clearCloseTimer}
|
|
@@ -3,7 +3,7 @@ import React from 'react';
|
|
|
3
3
|
const TriangleArrow: React.FC<{ [key: string]: any }> = props => {
|
|
4
4
|
const { className, style, ...restProps } = props;
|
|
5
5
|
return (
|
|
6
|
-
<svg className={className} style={style} {...restProps} width="24" height="7" viewBox="0 0 24 7" fill="currentColor" xmlns="http://www.w3.org/2000/svg">
|
|
6
|
+
<svg aria-hidden className={className} style={style} {...restProps} width="24" height="7" viewBox="0 0 24 7" fill="currentColor" xmlns="http://www.w3.org/2000/svg">
|
|
7
7
|
<path d="M24 0V1C20 1 18.5 2 16.5 4C14.5 6 14 7 12 7C10 7 9.5 6 7.5 4C5.5 2 4 1 0 1V0H24Z" />
|
|
8
8
|
</svg>
|
|
9
9
|
);
|
|
@@ -3,7 +3,7 @@ import React from 'react';
|
|
|
3
3
|
const TriangleArrowVertical: React.FC<{ [key: string]: any }> = props => {
|
|
4
4
|
const { className, style, ...restProps } = props;
|
|
5
5
|
return (
|
|
6
|
-
<svg className={className} style={style} {...restProps} width="7" height="24" xmlns="http://www.w3.org/2000/svg" fill="currentColor">
|
|
6
|
+
<svg aria-hidden className={className} style={style} {...restProps} width="7" height="24" xmlns="http://www.w3.org/2000/svg" fill="currentColor">
|
|
7
7
|
<path d="M0 0L1 0C1 4, 2 5.5, 4 7.5S7,10 7,12S6 14.5, 4 16.5S1,20 1,24L0 24L0 0z" />
|
|
8
8
|
</svg>
|
|
9
9
|
);
|