@douyinfe/semi-ui 2.19.0-alpha.8 → 2.19.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/_utils/index.ts +9 -5
- package/anchor/index.tsx +39 -7
- package/anchor/link.tsx +11 -2
- package/avatar/index.tsx +3 -1
- package/calendar/_story/calendar.stories.js +20 -3
- package/checkbox/checkbox.tsx +3 -1
- package/dist/css/semi.css +7 -17
- package/dist/css/semi.min.css +1 -1
- package/dist/umd/semi-ui.js +2987 -12956
- 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/index.tsx +5 -1
- package/form/interface.ts +1 -1
- package/getBabelConfig.js +1 -13
- package/lib/cjs/_base/base.css +1 -0
- package/lib/cjs/_base/base.js +1 -3
- package/lib/cjs/_base/baseComponent.js +4 -9
- package/lib/cjs/_base/reactUtils.js +4 -9
- package/lib/cjs/_portal/index.js +4 -9
- package/lib/cjs/_utils/hooks/usePrevFocus.js +3 -6
- package/lib/cjs/_utils/index.js +13 -25
- package/lib/cjs/anchor/anchor-context.js +3 -6
- package/lib/cjs/anchor/index.d.ts +4 -0
- package/lib/cjs/anchor/index.js +50 -36
- package/lib/cjs/anchor/link.d.ts +2 -0
- package/lib/cjs/anchor/link.js +15 -18
- package/lib/cjs/autoComplete/index.js +13 -30
- package/lib/cjs/autoComplete/option.js +12 -25
- package/lib/cjs/avatar/avatarGroup.js +18 -49
- package/lib/cjs/avatar/index.d.ts +1 -0
- package/lib/cjs/avatar/index.js +25 -48
- package/lib/cjs/avatar/interface.js +1 -3
- package/lib/cjs/backtop/index.js +8 -17
- package/lib/cjs/badge/index.js +14 -31
- package/lib/cjs/banner/index.js +5 -14
- package/lib/cjs/breadcrumb/bread-context.js +3 -6
- package/lib/cjs/breadcrumb/index.js +13 -34
- package/lib/cjs/breadcrumb/item.js +8 -21
- package/lib/cjs/button/Button.js +13 -32
- package/lib/cjs/button/buttonGroup.js +12 -41
- package/lib/cjs/button/index.js +7 -12
- package/lib/cjs/button/splitButtonGroup.js +3 -6
- package/lib/cjs/calendar/dayCalendar.js +20 -37
- package/lib/cjs/calendar/dayCol.js +10 -25
- package/lib/cjs/calendar/index.js +9 -25
- package/lib/cjs/calendar/interface.js +1 -3
- package/lib/cjs/calendar/monthCalendar.js +20 -45
- package/lib/cjs/calendar/rangeCalendar.js +19 -44
- package/lib/cjs/calendar/timeCol.js +10 -25
- package/lib/cjs/calendar/weekCalendar.js +19 -44
- package/lib/cjs/card/cardGroup.js +9 -22
- package/lib/cjs/card/index.js +12 -33
- package/lib/cjs/card/meta.js +9 -22
- package/lib/cjs/carousel/CarouselArrow.js +8 -17
- package/lib/cjs/carousel/CarouselIndicator.js +11 -26
- package/lib/cjs/carousel/index.js +10 -29
- package/lib/cjs/carousel/interface.js +1 -3
- package/lib/cjs/cascader/index.js +37 -68
- package/lib/cjs/cascader/item.js +24 -49
- package/lib/cjs/checkbox/checkbox.d.ts +1 -0
- package/lib/cjs/checkbox/checkbox.js +9 -17
- package/lib/cjs/checkbox/checkboxGroup.js +13 -34
- package/lib/cjs/checkbox/checkboxInner.js +6 -15
- package/lib/cjs/checkbox/context.js +3 -6
- package/lib/cjs/checkbox/index.js +4 -8
- package/lib/cjs/collapse/collapse-context.js +3 -6
- package/lib/cjs/collapse/index.js +12 -29
- package/lib/cjs/collapse/item.js +9 -22
- package/lib/cjs/collapsible/index.js +7 -16
- package/lib/cjs/configProvider/context.js +3 -6
- package/lib/cjs/configProvider/index.js +7 -16
- package/lib/cjs/datePicker/dateInput.js +15 -34
- package/lib/cjs/datePicker/datePicker.js +22 -45
- package/lib/cjs/datePicker/footer.js +3 -6
- package/lib/cjs/datePicker/index.js +9 -20
- package/lib/cjs/datePicker/insetInput.js +4 -9
- package/lib/cjs/datePicker/month.js +15 -26
- package/lib/cjs/datePicker/monthsGrid.js +13 -32
- package/lib/cjs/datePicker/navigation.js +5 -12
- package/lib/cjs/datePicker/quickControl.js +18 -31
- package/lib/cjs/datePicker/yearAndMonth.js +13 -30
- package/lib/cjs/descriptions/descriptions-context.js +3 -6
- package/lib/cjs/descriptions/index.js +8 -23
- package/lib/cjs/descriptions/item.js +7 -18
- package/lib/cjs/divider/index.js +9 -22
- package/lib/cjs/dropdown/context.js +3 -6
- package/lib/cjs/dropdown/dropdownDivider.js +3 -6
- package/lib/cjs/dropdown/dropdownItem.js +8 -21
- package/lib/cjs/dropdown/dropdownMenu.js +8 -17
- package/lib/cjs/dropdown/dropdownTitle.js +5 -12
- package/lib/cjs/dropdown/index.js +17 -26
- package/lib/cjs/empty/index.js +5 -14
- package/lib/cjs/form/arrayField.js +28 -57
- package/lib/cjs/form/baseForm.d.ts +1 -1
- package/lib/cjs/form/baseForm.js +18 -43
- package/lib/cjs/form/context.js +3 -6
- package/lib/cjs/form/errorMessage.js +7 -18
- package/lib/cjs/form/field.d.ts +1 -1
- package/lib/cjs/form/field.js +3 -6
- package/lib/cjs/form/group.js +16 -31
- package/lib/cjs/form/hoc/withField.js +26 -53
- package/lib/cjs/form/hoc/withFormApi.js +4 -9
- package/lib/cjs/form/hoc/withFormState.js +4 -9
- package/lib/cjs/form/hooks/index.js +11 -20
- package/lib/cjs/form/hooks/useArrayFieldState.js +1 -4
- package/lib/cjs/form/hooks/useFieldApi.js +3 -6
- package/lib/cjs/form/hooks/useFieldState.js +6 -15
- package/lib/cjs/form/hooks/useFormApi.js +1 -4
- package/lib/cjs/form/hooks/useFormState.js +1 -4
- package/lib/cjs/form/hooks/useFormUpdater.js +1 -4
- package/lib/cjs/form/hooks/useStateWithGetter.js +1 -4
- package/lib/cjs/form/index.js +15 -34
- package/lib/cjs/form/interface.d.ts +1 -1
- package/lib/cjs/form/interface.js +3 -10
- package/lib/cjs/form/label.js +5 -12
- package/lib/cjs/form/section.js +5 -12
- package/lib/cjs/form/slot.js +18 -35
- package/lib/cjs/grid/col.js +20 -37
- package/lib/cjs/grid/index.js +6 -10
- package/lib/cjs/grid/row.js +18 -45
- package/lib/cjs/iconButton/index.js +13 -30
- package/lib/cjs/icons/index.js +3 -6
- package/lib/cjs/index.js +94 -189
- package/lib/cjs/input/index.js +13 -26
- package/lib/cjs/input/inputGroup.js +11 -32
- package/lib/cjs/input/textarea.js +11 -24
- package/lib/cjs/inputNumber/index.js +12 -29
- package/lib/cjs/layout/Sider.js +11 -36
- package/lib/cjs/layout/index.js +13 -32
- package/lib/cjs/layout/layout-context.js +3 -6
- package/lib/cjs/list/index.js +9 -25
- package/lib/cjs/list/item.js +10 -27
- package/lib/cjs/list/list-context.js +3 -6
- package/lib/cjs/locale/context.js +3 -6
- package/lib/cjs/locale/interface.js +1 -3
- package/lib/cjs/locale/localeConsumer.js +5 -12
- package/lib/cjs/locale/localeProvider.js +5 -12
- package/lib/cjs/locale/source/ar.js +1 -4
- package/lib/cjs/locale/source/de.js +1 -4
- package/lib/cjs/locale/source/en_GB.js +1 -4
- package/lib/cjs/locale/source/en_US.js +1 -4
- package/lib/cjs/locale/source/es.js +1 -4
- package/lib/cjs/locale/source/fr.js +1 -4
- package/lib/cjs/locale/source/id_ID.js +1 -4
- package/lib/cjs/locale/source/it.js +1 -4
- package/lib/cjs/locale/source/ja_JP.js +1 -4
- package/lib/cjs/locale/source/ko_KR.js +1 -4
- package/lib/cjs/locale/source/ms_MY.js +1 -4
- package/lib/cjs/locale/source/pt_BR.js +1 -4
- package/lib/cjs/locale/source/ru_RU.js +1 -4
- package/lib/cjs/locale/source/th_TH.js +1 -4
- package/lib/cjs/locale/source/tr_TR.js +1 -4
- package/lib/cjs/locale/source/vi_VN.js +1 -4
- package/lib/cjs/locale/source/zh_CN.js +1 -4
- package/lib/cjs/locale/source/zh_TW.js +1 -4
- package/lib/cjs/modal/ConfirmModal.js +11 -28
- package/lib/cjs/modal/Modal.js +14 -33
- package/lib/cjs/modal/ModalContent.js +14 -35
- package/lib/cjs/modal/confirm.js +15 -21
- package/lib/cjs/modal/index.js +3 -6
- package/lib/cjs/modal/useModal/HookModal.js +10 -19
- package/lib/cjs/modal/useModal/index.js +4 -9
- package/lib/cjs/motions/Rotate.js +7 -18
- package/lib/cjs/navigation/CollapseButton.js +4 -9
- package/lib/cjs/navigation/Footer.js +6 -15
- package/lib/cjs/navigation/Header.js +6 -15
- package/lib/cjs/navigation/Item.js +9 -28
- package/lib/cjs/navigation/OpenIconTransition.js +6 -15
- package/lib/cjs/navigation/SubNav.js +10 -29
- package/lib/cjs/navigation/SubNavTransition.js +5 -12
- package/lib/cjs/navigation/index.js +25 -46
- package/lib/cjs/navigation/nav-context.js +3 -6
- package/lib/cjs/notification/NoticeTransition.js +4 -9
- package/lib/cjs/notification/index.js +24 -51
- package/lib/cjs/notification/notice.js +13 -30
- package/lib/cjs/notification/useNotification/HookNotice.js +9 -22
- package/lib/cjs/notification/useNotification/index.js +18 -41
- package/lib/cjs/overflowList/index.js +13 -28
- package/lib/cjs/overflowList/intersectionObserver.js +7 -18
- package/lib/cjs/pagination/index.js +15 -38
- package/lib/cjs/popconfirm/index.js +16 -25
- package/lib/cjs/popover/Arrow.js +10 -19
- package/lib/cjs/popover/index.js +8 -17
- package/lib/cjs/progress/index.js +7 -20
- package/lib/cjs/radio/context.js +3 -6
- package/lib/cjs/radio/index.js +4 -8
- package/lib/cjs/radio/radio.d.ts +1 -0
- package/lib/cjs/radio/radio.js +11 -19
- package/lib/cjs/radio/radioGroup.js +11 -26
- package/lib/cjs/radio/radioInner.js +7 -16
- package/lib/cjs/rating/index.js +10 -27
- package/lib/cjs/rating/item.js +10 -19
- package/lib/cjs/resizeObserver/index.js +3 -6
- package/lib/cjs/scrollList/index.js +3 -6
- package/lib/cjs/scrollList/scrollItem.js +13 -26
- package/lib/cjs/select/index.js +46 -91
- package/lib/cjs/select/option.js +12 -25
- package/lib/cjs/select/optionGroup.js +3 -6
- package/lib/cjs/select/utils.js +12 -29
- package/lib/cjs/select/virtualRow.js +1 -4
- package/lib/cjs/sideSheet/SideSheetContent.js +9 -22
- package/lib/cjs/sideSheet/SideSheetTransition.js +4 -9
- package/lib/cjs/sideSheet/index.js +15 -28
- package/lib/cjs/skeleton/index.js +9 -22
- package/lib/cjs/skeleton/item.js +13 -34
- package/lib/cjs/slider/index.js +18 -48
- package/lib/cjs/space/index.js +7 -20
- package/lib/cjs/space/utils.js +9 -24
- package/lib/cjs/spin/icon.js +7 -16
- package/lib/cjs/spin/index.js +5 -14
- package/lib/cjs/steps/basicStep.js +4 -11
- package/lib/cjs/steps/basicSteps.js +12 -29
- package/lib/cjs/steps/context.js +3 -6
- package/lib/cjs/steps/fillStep.js +4 -11
- package/lib/cjs/steps/fillSteps.js +12 -28
- package/lib/cjs/steps/index.js +11 -24
- package/lib/cjs/steps/navStep.js +3 -6
- package/lib/cjs/steps/navSteps.js +12 -28
- package/lib/cjs/steps/step.js +8 -17
- package/lib/cjs/switch/index.js +5 -10
- package/lib/cjs/table/Body/BaseRow.js +14 -27
- package/lib/cjs/table/Body/ExpandedRow.js +10 -23
- package/lib/cjs/table/Body/SectionRow.js +15 -36
- package/lib/cjs/table/Body/index.js +39 -64
- package/lib/cjs/table/ColGroup.js +4 -11
- package/lib/cjs/table/Column.js +4 -9
- package/lib/cjs/table/ColumnFilter.js +18 -41
- package/lib/cjs/table/ColumnSelection.js +6 -11
- package/lib/cjs/table/ColumnShape.js +3 -6
- package/lib/cjs/table/ColumnSorter.js +6 -15
- package/lib/cjs/table/CustomExpandIcon.js +5 -12
- package/lib/cjs/table/HeadTable.js +7 -14
- package/lib/cjs/table/ResizableHeaderCell.js +9 -22
- package/lib/cjs/table/ResizableTable.js +23 -40
- package/lib/cjs/table/Table.js +63 -96
- package/lib/cjs/table/TableCell.js +13 -26
- package/lib/cjs/table/TableContextProvider.js +5 -12
- package/lib/cjs/table/TableHeader.js +10 -27
- package/lib/cjs/table/TableHeaderRow.js +18 -33
- package/lib/cjs/table/TablePagination.js +6 -15
- package/lib/cjs/table/getColumns.js +8 -17
- package/lib/cjs/table/index.js +8 -20
- package/lib/cjs/table/interface.js +1 -3
- package/lib/cjs/table/table-context.js +3 -6
- package/lib/cjs/table/utils.js +5 -16
- package/lib/cjs/tabs/TabBar.js +21 -44
- package/lib/cjs/tabs/TabPane.js +14 -31
- package/lib/cjs/tabs/TabPaneTransition.js +5 -10
- package/lib/cjs/tabs/index.js +32 -73
- package/lib/cjs/tabs/interface.d.ts +3 -2
- package/lib/cjs/tabs/interface.js +1 -3
- package/lib/cjs/tabs/tabs-context.js +3 -6
- package/lib/cjs/tag/group.d.ts +1 -15
- package/lib/cjs/tag/group.js +23 -34
- package/lib/cjs/tag/index.d.ts +1 -1
- package/lib/cjs/tag/index.js +20 -48
- package/lib/cjs/tag/interface.d.ts +6 -3
- package/lib/cjs/tag/interface.js +1 -3
- package/lib/cjs/tagInput/index.js +13 -30
- package/lib/cjs/timePicker/Combobox.js +19 -40
- package/lib/cjs/timePicker/PanelShape.js +3 -6
- package/lib/cjs/timePicker/TimeInput.js +9 -20
- package/lib/cjs/timePicker/TimePicker.js +21 -38
- package/lib/cjs/timePicker/TimeShape.js +3 -6
- package/lib/cjs/timePicker/index.js +4 -9
- package/lib/cjs/timeline/index.js +21 -48
- package/lib/cjs/timeline/item.js +7 -20
- package/lib/cjs/toast/ToastTransition.js +4 -9
- package/lib/cjs/toast/index.js +20 -45
- package/lib/cjs/toast/toast.js +9 -20
- package/lib/cjs/toast/useToast/HookToast.js +9 -22
- package/lib/cjs/toast/useToast/index.js +14 -27
- package/lib/cjs/tooltip/ArrowBoundingShape.js +3 -6
- package/lib/cjs/tooltip/TooltipStyledTransition.js +4 -9
- package/lib/cjs/tooltip/TriangleArrow.js +7 -16
- package/lib/cjs/tooltip/TriangleArrowVertical.js +7 -16
- package/lib/cjs/tooltip/index.js +27 -48
- package/lib/cjs/transfer/index.js +30 -63
- package/lib/cjs/tree/autoSizer.js +7 -16
- package/lib/cjs/tree/collapse.js +7 -16
- package/lib/cjs/tree/index.js +46 -70
- package/lib/cjs/tree/interface.js +1 -3
- package/lib/cjs/tree/nodeList.js +11 -28
- package/lib/cjs/tree/treeContext.js +3 -6
- package/lib/cjs/tree/treeNode.js +20 -39
- package/lib/cjs/tree/treeUtil.js +3 -6
- package/lib/cjs/treeSelect/index.js +51 -80
- package/lib/cjs/trigger/index.js +7 -16
- package/lib/cjs/typography/base.js +24 -49
- package/lib/cjs/typography/copyable.js +5 -12
- package/lib/cjs/typography/index.js +5 -15
- package/lib/cjs/typography/interface.js +1 -3
- package/lib/cjs/typography/paragraph.js +6 -15
- package/lib/cjs/typography/text.js +6 -15
- package/lib/cjs/typography/title.d.ts +1 -1
- package/lib/cjs/typography/title.js +10 -25
- package/lib/cjs/typography/typography.js +9 -22
- package/lib/cjs/typography/util.js +8 -21
- package/lib/cjs/upload/fileCard.js +8 -17
- package/lib/cjs/upload/index.js +14 -25
- package/lib/cjs/upload/interface.js +1 -3
- package/lib/es/_base/base.css +1 -0
- package/lib/es/_base/baseComponent.js +1 -3
- package/lib/es/_portal/index.js +1 -2
- package/lib/es/_utils/index.js +9 -15
- package/lib/es/anchor/index.d.ts +4 -0
- package/lib/es/anchor/index.js +46 -31
- package/lib/es/anchor/link.d.ts +2 -0
- package/lib/es/anchor/link.js +12 -10
- package/lib/es/autoComplete/index.js +10 -21
- package/lib/es/autoComplete/option.js +7 -10
- package/lib/es/avatar/avatarGroup.js +13 -33
- package/lib/es/avatar/index.d.ts +1 -0
- package/lib/es/avatar/index.js +20 -31
- package/lib/es/backtop/index.js +5 -9
- package/lib/es/badge/index.js +7 -13
- package/lib/es/banner/index.js +2 -7
- package/lib/es/breadcrumb/index.js +10 -27
- package/lib/es/breadcrumb/item.js +3 -7
- package/lib/es/button/Button.js +8 -16
- package/lib/es/button/buttonGroup.js +7 -22
- package/lib/es/button/index.js +4 -6
- package/lib/es/calendar/dayCalendar.js +15 -30
- package/lib/es/calendar/dayCol.js +5 -16
- package/lib/es/calendar/index.js +4 -8
- package/lib/es/calendar/monthCalendar.js +15 -35
- package/lib/es/calendar/rangeCalendar.js +14 -36
- package/lib/es/calendar/timeCol.js +3 -12
- package/lib/es/calendar/weekCalendar.js +14 -36
- package/lib/es/card/cardGroup.js +4 -8
- package/lib/es/card/index.js +7 -15
- package/lib/es/card/meta.js +4 -8
- package/lib/es/carousel/CarouselArrow.js +5 -9
- package/lib/es/carousel/CarouselIndicator.js +8 -17
- package/lib/es/carousel/index.js +5 -13
- package/lib/es/cascader/index.js +30 -55
- package/lib/es/cascader/item.js +17 -33
- package/lib/es/checkbox/checkbox.d.ts +1 -0
- package/lib/es/checkbox/checkbox.js +4 -8
- package/lib/es/checkbox/checkboxGroup.js +8 -23
- package/lib/es/checkbox/checkboxInner.js +1 -2
- package/lib/es/collapse/index.js +9 -17
- package/lib/es/collapse/item.js +4 -8
- package/lib/es/collapsible/index.js +2 -4
- package/lib/es/configProvider/index.js +4 -8
- package/lib/es/datePicker/dateInput.js +12 -27
- package/lib/es/datePicker/datePicker.js +17 -35
- package/lib/es/datePicker/index.js +4 -10
- package/lib/es/datePicker/insetInput.js +1 -2
- package/lib/es/datePicker/month.js +12 -18
- package/lib/es/datePicker/monthsGrid.js +10 -26
- package/lib/es/datePicker/quickControl.js +13 -18
- package/lib/es/datePicker/yearAndMonth.js +10 -22
- package/lib/es/descriptions/index.js +3 -8
- package/lib/es/descriptions/item.js +2 -5
- package/lib/es/divider/index.js +6 -13
- package/lib/es/dropdown/dropdownItem.js +3 -10
- package/lib/es/dropdown/dropdownMenu.js +5 -9
- package/lib/es/dropdown/index.js +16 -17
- package/lib/es/empty/index.js +2 -6
- package/lib/es/form/arrayField.js +20 -42
- package/lib/es/form/baseForm.d.ts +1 -1
- package/lib/es/form/baseForm.js +11 -28
- package/lib/es/form/errorMessage.js +2 -6
- package/lib/es/form/field.d.ts +1 -1
- package/lib/es/form/group.js +7 -16
- package/lib/es/form/hoc/withField.js +21 -41
- package/lib/es/form/hoc/withFormApi.js +1 -2
- package/lib/es/form/hoc/withFormState.js +1 -2
- package/lib/es/form/hooks/useFieldState.js +1 -2
- package/lib/es/form/interface.d.ts +1 -1
- package/lib/es/form/slot.js +11 -18
- package/lib/es/grid/col.js +17 -29
- package/lib/es/grid/row.js +15 -36
- package/lib/es/iconButton/index.js +8 -14
- package/lib/es/input/index.js +10 -17
- package/lib/es/input/inputGroup.js +8 -20
- package/lib/es/input/textarea.js +8 -15
- package/lib/es/inputNumber/index.js +9 -18
- package/lib/es/layout/Sider.js +8 -26
- package/lib/es/layout/index.js +10 -22
- package/lib/es/list/index.js +5 -18
- package/lib/es/list/item.js +5 -11
- package/lib/es/modal/ConfirmModal.js +6 -13
- package/lib/es/modal/Modal.js +9 -16
- package/lib/es/modal/ModalContent.js +9 -21
- package/lib/es/modal/confirm.js +11 -15
- package/lib/es/modal/useModal/HookModal.js +7 -10
- package/lib/es/modal/useModal/index.js +1 -2
- package/lib/es/motions/Rotate.js +2 -4
- package/lib/es/navigation/CollapseButton.js +1 -2
- package/lib/es/navigation/Footer.js +1 -2
- package/lib/es/navigation/Header.js +1 -2
- package/lib/es/navigation/Item.js +6 -19
- package/lib/es/navigation/OpenIconTransition.js +1 -2
- package/lib/es/navigation/SubNav.js +7 -20
- package/lib/es/navigation/index.js +20 -35
- package/lib/es/notification/NoticeTransition.js +1 -2
- package/lib/es/notification/index.js +19 -40
- package/lib/es/notification/notice.js +8 -17
- package/lib/es/notification/useNotification/HookNotice.js +4 -8
- package/lib/es/notification/useNotification/index.js +13 -26
- package/lib/es/overflowList/index.js +10 -18
- package/lib/es/overflowList/intersectionObserver.js +4 -10
- package/lib/es/pagination/index.js +10 -28
- package/lib/es/popconfirm/index.js +13 -16
- package/lib/es/popover/Arrow.js +7 -11
- package/lib/es/popover/index.js +5 -8
- package/lib/es/progress/index.js +2 -8
- package/lib/es/radio/radio.d.ts +1 -0
- package/lib/es/radio/radio.js +6 -9
- package/lib/es/radio/radioGroup.js +6 -15
- package/lib/es/radio/radioInner.js +2 -6
- package/lib/es/rating/index.js +5 -18
- package/lib/es/rating/item.js +7 -11
- package/lib/es/scrollList/scrollItem.js +8 -14
- package/lib/es/select/index.js +38 -76
- package/lib/es/select/option.js +7 -10
- package/lib/es/select/utils.js +9 -22
- package/lib/es/sideSheet/SideSheetContent.js +6 -12
- package/lib/es/sideSheet/SideSheetTransition.js +1 -2
- package/lib/es/sideSheet/index.js +10 -18
- package/lib/es/skeleton/index.js +4 -8
- package/lib/es/skeleton/item.js +8 -18
- package/lib/es/slider/index.js +15 -36
- package/lib/es/space/index.js +2 -8
- package/lib/es/space/utils.js +4 -11
- package/lib/es/spin/icon.js +4 -8
- package/lib/es/spin/index.js +2 -6
- package/lib/es/steps/basicStep.js +1 -4
- package/lib/es/steps/basicSteps.js +6 -17
- package/lib/es/steps/fillStep.js +1 -4
- package/lib/es/steps/fillSteps.js +5 -17
- package/lib/es/steps/index.js +6 -9
- package/lib/es/steps/navSteps.js +5 -17
- package/lib/es/steps/step.js +3 -4
- package/lib/es/switch/index.js +2 -3
- package/lib/es/table/Body/BaseRow.js +9 -14
- package/lib/es/table/Body/ExpandedRow.js +5 -8
- package/lib/es/table/Body/SectionRow.js +10 -18
- package/lib/es/table/Body/index.js +34 -56
- package/lib/es/table/ColGroup.js +1 -5
- package/lib/es/table/Column.js +1 -2
- package/lib/es/table/ColumnFilter.js +13 -30
- package/lib/es/table/ColumnSelection.js +3 -4
- package/lib/es/table/ColumnSorter.js +1 -2
- package/lib/es/table/HeadTable.js +4 -6
- package/lib/es/table/ResizableHeaderCell.js +6 -13
- package/lib/es/table/ResizableTable.js +18 -36
- package/lib/es/table/Table.js +56 -76
- package/lib/es/table/TableCell.js +8 -13
- package/lib/es/table/TableHeader.js +7 -18
- package/lib/es/table/TableHeaderRow.js +13 -21
- package/lib/es/table/TablePagination.js +1 -2
- package/lib/es/table/getColumns.js +3 -10
- package/lib/es/table/index.js +3 -4
- package/lib/es/table/utils.js +1 -7
- package/lib/es/tabs/TabBar.js +18 -36
- package/lib/es/tabs/TabPane.js +9 -18
- package/lib/es/tabs/TabPaneTransition.js +2 -3
- package/lib/es/tabs/index.js +22 -48
- package/lib/es/tabs/interface.d.ts +3 -2
- package/lib/es/tag/group.d.ts +1 -15
- package/lib/es/tag/group.js +18 -24
- package/lib/es/tag/index.d.ts +1 -1
- package/lib/es/tag/index.js +13 -24
- package/lib/es/tag/interface.d.ts +6 -3
- package/lib/es/tagInput/index.js +10 -21
- package/lib/es/timePicker/Combobox.js +14 -23
- package/lib/es/timePicker/TimeInput.js +6 -10
- package/lib/es/timePicker/TimePicker.js +16 -27
- package/lib/es/timePicker/index.js +1 -2
- package/lib/es/timeline/index.js +14 -32
- package/lib/es/timeline/item.js +2 -6
- package/lib/es/toast/ToastTransition.js +1 -2
- package/lib/es/toast/index.js +17 -37
- package/lib/es/toast/toast.js +4 -10
- package/lib/es/toast/useToast/HookToast.js +4 -8
- package/lib/es/toast/useToast/index.js +11 -18
- package/lib/es/tooltip/TooltipStyledTransition.js +1 -3
- package/lib/es/tooltip/TriangleArrow.js +4 -8
- package/lib/es/tooltip/TriangleArrowVertical.js +4 -8
- package/lib/es/tooltip/index.js +20 -31
- package/lib/es/transfer/index.js +24 -47
- package/lib/es/tree/autoSizer.js +2 -3
- package/lib/es/tree/collapse.js +2 -5
- package/lib/es/tree/index.js +41 -48
- package/lib/es/tree/nodeList.js +6 -17
- package/lib/es/tree/treeNode.js +15 -23
- package/lib/es/treeSelect/index.js +44 -62
- package/lib/es/trigger/index.js +4 -8
- package/lib/es/typography/base.js +19 -34
- package/lib/es/typography/copyable.js +2 -4
- package/lib/es/typography/paragraph.js +1 -2
- package/lib/es/typography/text.js +1 -2
- package/lib/es/typography/title.d.ts +1 -1
- package/lib/es/typography/title.js +5 -11
- package/lib/es/typography/typography.js +4 -8
- package/lib/es/typography/util.js +5 -15
- package/lib/es/upload/fileCard.js +3 -4
- package/lib/es/upload/index.js +11 -16
- package/package.json +7 -8
- package/popconfirm/_story/popconfirm.stories.js +1 -1
- package/popconfirm/index.tsx +6 -6
- package/radio/radio.tsx +2 -0
- package/tabs/_story/Demo.tsx +14 -5
- package/tabs/interface.ts +3 -2
- package/tag/_story/tag.stories.js +51 -1
- package/tag/group.tsx +14 -27
- package/tag/index.tsx +1 -1
- package/tag/interface.ts +9 -5
- package/tooltip/index.tsx +2 -1
- package/transfer/_story/transfer.stories.js +2 -2
- package/treeSelect/_story/treeSelect.stories.js +3 -0
package/dropdown/index.tsx
CHANGED
|
@@ -247,7 +247,11 @@ class Dropdown extends BaseComponent<DropdownProps, DropdownState> {
|
|
|
247
247
|
}),
|
|
248
248
|
'aria-haspopup': true,
|
|
249
249
|
'aria-expanded': popVisible,
|
|
250
|
-
onKeyDown: e =>
|
|
250
|
+
onKeyDown: e => {
|
|
251
|
+
this.foundation.handleKeyDown(e);
|
|
252
|
+
const childrenKeyDown = get(children, 'props.onKeyDown');
|
|
253
|
+
childrenKeyDown && childrenKeyDown();
|
|
254
|
+
}
|
|
251
255
|
}) :
|
|
252
256
|
children}
|
|
253
257
|
</Tooltip>
|
package/form/interface.ts
CHANGED
|
@@ -102,7 +102,7 @@ interface setValuesConfig {
|
|
|
102
102
|
isOverride: boolean;
|
|
103
103
|
}
|
|
104
104
|
|
|
105
|
-
export interface BaseFormProps {
|
|
105
|
+
export interface BaseFormProps extends Omit<React.FormHTMLAttributes<HTMLFormElement>, 'children' | 'onChange'> {
|
|
106
106
|
'aria-label'?: React.AriaAttributes['aria-label'];
|
|
107
107
|
onSubmit?: (values: Record<string, any>) => void;
|
|
108
108
|
onSubmitFail?: (errors: Record<string, FieldError>, values: any) => void;
|
package/getBabelConfig.js
CHANGED
|
@@ -19,19 +19,7 @@ module.exports = ({ isESM }) => {
|
|
|
19
19
|
],
|
|
20
20
|
],
|
|
21
21
|
plugins: [
|
|
22
|
-
'lodash'
|
|
23
|
-
[
|
|
24
|
-
'@babel/plugin-transform-runtime',
|
|
25
|
-
{
|
|
26
|
-
corejs: 3
|
|
27
|
-
},
|
|
28
|
-
],
|
|
29
|
-
[
|
|
30
|
-
'@babel/plugin-proposal-decorators',
|
|
31
|
-
{
|
|
32
|
-
legacy: true,
|
|
33
|
-
},
|
|
34
|
-
],
|
|
22
|
+
'lodash'
|
|
35
23
|
]
|
|
36
24
|
};
|
|
37
25
|
};
|
package/lib/cjs/_base/base.css
CHANGED
|
@@ -14,6 +14,7 @@ body {
|
|
|
14
14
|
--semi-transition_function-easeIn:ease-in;
|
|
15
15
|
--semi-transition_function-easeOut:ease-out;
|
|
16
16
|
--semi-transition_function-easeInIOut:ease-in-out;
|
|
17
|
+
--semi-transition_delay-none: 0ms;
|
|
17
18
|
--semi-transition_delay-slowest:0ms;
|
|
18
19
|
--semi-transition_delay-slower:0ms;
|
|
19
20
|
--semi-transition_delay-slow:0ms;
|
package/lib/cjs/_base/base.js
CHANGED
|
@@ -1,21 +1,16 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
|
|
6
|
-
|
|
7
|
-
_Object$defineProperty(exports, "__esModule", {
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
8
4
|
value: true
|
|
9
5
|
});
|
|
10
|
-
|
|
11
6
|
exports.default = void 0;
|
|
12
7
|
|
|
13
|
-
var _assign = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/object/assign"));
|
|
14
|
-
|
|
15
8
|
var _react = require("react");
|
|
16
9
|
|
|
17
10
|
var _log = _interopRequireDefault(require("@douyinfe/semi-foundation/lib/cjs/utils/log"));
|
|
18
11
|
|
|
12
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
13
|
+
|
|
19
14
|
/**
|
|
20
15
|
* The Semi Foundation / Adapter architecture split was inspired by Material Component For Web. (https://github.com/material-components/material-components-web)
|
|
21
16
|
* We re-implemented our own code based on the principle and added more functions we need according to actual needs.
|
|
@@ -56,7 +51,7 @@ class BaseComponent extends _react.Component {
|
|
|
56
51
|
getProps: () => this.props,
|
|
57
52
|
getState: key => this.state[key],
|
|
58
53
|
getStates: () => this.state,
|
|
59
|
-
setState: (states, cb) => this.setState(
|
|
54
|
+
setState: (states, cb) => this.setState(Object.assign({}, states), cb),
|
|
60
55
|
getCache: key => key && this.cache[key],
|
|
61
56
|
getCaches: () => this.cache,
|
|
62
57
|
setCache: (key, value) => key && (this.cache[key] = value),
|
|
@@ -1,32 +1,27 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
|
|
6
|
-
|
|
7
|
-
_Object$defineProperty(exports, "__esModule", {
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
8
4
|
value: true
|
|
9
5
|
});
|
|
10
|
-
|
|
11
6
|
exports.isClassComponent = isClassComponent;
|
|
12
7
|
exports.isCompositeTypeElement = isCompositeTypeElement;
|
|
13
8
|
exports.isElement = isElement;
|
|
14
9
|
exports.isEmptyChildren = isEmptyChildren;
|
|
15
10
|
exports.isFunctionalComponent = isFunctionalComponent;
|
|
16
|
-
|
|
17
|
-
_Object$defineProperty(exports, "isHTMLElement", {
|
|
11
|
+
Object.defineProperty(exports, "isHTMLElement", {
|
|
18
12
|
enumerable: true,
|
|
19
13
|
get: function () {
|
|
20
14
|
return _dom.isHTMLElement;
|
|
21
15
|
}
|
|
22
16
|
});
|
|
23
|
-
|
|
24
17
|
exports.isReactComponent = isReactComponent;
|
|
25
18
|
|
|
26
19
|
var _react = _interopRequireDefault(require("react"));
|
|
27
20
|
|
|
28
21
|
var _dom = require("@douyinfe/semi-foundation/lib/cjs/utils/dom");
|
|
29
22
|
|
|
23
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
24
|
+
|
|
30
25
|
// https://stackoverflow.com/questions/33199959/how-to-detect-a-react-component-vs-a-react-element
|
|
31
26
|
function isClassComponent(component) {
|
|
32
27
|
return typeof component === 'function' && Boolean(component.prototype.isReactComponent);
|
package/lib/cjs/_portal/index.js
CHANGED
|
@@ -1,17 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
|
|
6
|
-
|
|
7
|
-
_Object$defineProperty(exports, "__esModule", {
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
8
4
|
value: true
|
|
9
5
|
});
|
|
10
|
-
|
|
11
6
|
exports.default = void 0;
|
|
12
7
|
|
|
13
|
-
var _keys = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/object/keys"));
|
|
14
|
-
|
|
15
8
|
var _react = require("react");
|
|
16
9
|
|
|
17
10
|
var _reactDom = require("react-dom");
|
|
@@ -26,6 +19,8 @@ var _context = _interopRequireDefault(require("../configProvider/context"));
|
|
|
26
19
|
|
|
27
20
|
require("@douyinfe/semi-foundation/lib/cjs/_portal/portal.css");
|
|
28
21
|
|
|
22
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
23
|
+
|
|
29
24
|
const defaultGetContainer = () => document.body;
|
|
30
25
|
|
|
31
26
|
class Portal extends _react.PureComponent {
|
|
@@ -39,7 +34,7 @@ class Portal extends _react.PureComponent {
|
|
|
39
34
|
let style = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
40
35
|
|
|
41
36
|
if (_this.el) {
|
|
42
|
-
for (const key of
|
|
37
|
+
for (const key of Object.keys(style)) {
|
|
43
38
|
_this.el.style[key] = style[key];
|
|
44
39
|
}
|
|
45
40
|
}
|
|
@@ -1,13 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
|
|
6
|
-
|
|
7
|
-
_Object$defineProperty(exports, "__esModule", {
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
8
4
|
value: true
|
|
9
5
|
});
|
|
10
|
-
|
|
11
6
|
exports.usePrevFocus = usePrevFocus;
|
|
12
7
|
|
|
13
8
|
var _isFunction2 = _interopRequireDefault(require("lodash/isFunction"));
|
|
@@ -18,6 +13,8 @@ var _react = require("react");
|
|
|
18
13
|
|
|
19
14
|
var _index = require("../index");
|
|
20
15
|
|
|
16
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
17
|
+
|
|
21
18
|
/* istanbul ignore next */
|
|
22
19
|
function usePrevFocus() {
|
|
23
20
|
const [prevFocusElement, setPrevFocus] = (0, _react.useState)((0, _index.getActiveElement)());
|
package/lib/cjs/_utils/index.js
CHANGED
|
@@ -1,13 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
|
|
6
|
-
|
|
7
|
-
_Object$defineProperty(exports, "__esModule", {
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
8
4
|
value: true
|
|
9
5
|
});
|
|
10
|
-
|
|
11
6
|
exports.cloneDeep = cloneDeep;
|
|
12
7
|
exports.getActiveElement = getActiveElement;
|
|
13
8
|
exports.getFocusableElements = getFocusableElements;
|
|
@@ -16,18 +11,6 @@ exports.isNodeContainsFocus = isNodeContainsFocus;
|
|
|
16
11
|
exports.registerMediaQuery = exports.isSemiIcon = void 0;
|
|
17
12
|
exports.stopPropagation = stopPropagation;
|
|
18
13
|
|
|
19
|
-
var _isArray = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/array/is-array"));
|
|
20
|
-
|
|
21
|
-
var _keys = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/object/keys"));
|
|
22
|
-
|
|
23
|
-
var _forEach = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/for-each"));
|
|
24
|
-
|
|
25
|
-
var _assign = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/object/assign"));
|
|
26
|
-
|
|
27
|
-
var _map = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/map"));
|
|
28
|
-
|
|
29
|
-
var _from = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/array/from"));
|
|
30
|
-
|
|
31
14
|
var _get2 = _interopRequireDefault(require("lodash/get"));
|
|
32
15
|
|
|
33
16
|
var _set2 = _interopRequireDefault(require("lodash/set"));
|
|
@@ -42,6 +25,8 @@ var _getHighlight = require("@douyinfe/semi-foundation/lib/cjs/utils/getHighligh
|
|
|
42
25
|
|
|
43
26
|
var _dom = require("@douyinfe/semi-foundation/lib/cjs/utils/dom");
|
|
44
27
|
|
|
28
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
29
|
+
|
|
45
30
|
/* eslint-disable max-len */
|
|
46
31
|
|
|
47
32
|
/* argus-disable unPkgSensitiveInfo */
|
|
@@ -84,16 +69,19 @@ function cloneDeep(value, customizer) {
|
|
|
84
69
|
return v;
|
|
85
70
|
}
|
|
86
71
|
|
|
87
|
-
if (
|
|
88
|
-
const keys =
|
|
72
|
+
if (Array.isArray(v) && v.length === 0) {
|
|
73
|
+
const keys = Object.keys(v);
|
|
89
74
|
|
|
90
75
|
if (keys.length) {
|
|
91
76
|
const newArray = [];
|
|
92
|
-
|
|
77
|
+
keys.forEach(key => {
|
|
93
78
|
(0, _set2.default)(newArray, key, v[key]);
|
|
94
79
|
}); // internal-issues:887
|
|
95
80
|
|
|
96
|
-
|
|
81
|
+
try {
|
|
82
|
+
(0, _warning.default)((0, _get2.default)(process, 'env.NODE_ENV') !== 'production', "[Semi] You may use an out-of-bounds array. In some cases, your program may not behave as expected.\n The maximum length of an array is 4294967295.\n Please check whether the array subscript in your data exceeds the maximum value of the JS array subscript");
|
|
83
|
+
} catch (e) {}
|
|
84
|
+
|
|
97
85
|
return newArray;
|
|
98
86
|
} else {
|
|
99
87
|
return undefined;
|
|
@@ -127,14 +115,14 @@ const getHighLightTextHTML = _ref => {
|
|
|
127
115
|
caseSensitive: false
|
|
128
116
|
}
|
|
129
117
|
} = _ref;
|
|
130
|
-
const chunks = (0, _getHighlight.findAll)(
|
|
118
|
+
const chunks = (0, _getHighlight.findAll)(Object.assign({
|
|
131
119
|
sourceString,
|
|
132
120
|
searchWords
|
|
133
121
|
}, option));
|
|
134
122
|
const markEle = option.highlightTag || 'mark';
|
|
135
123
|
const highlightClassName = option.highlightClassName || '';
|
|
136
124
|
const highlightStyle = option.highlightStyle || {};
|
|
137
|
-
return
|
|
125
|
+
return chunks.map((chunk, index) => {
|
|
138
126
|
const {
|
|
139
127
|
end,
|
|
140
128
|
start,
|
|
@@ -224,6 +212,6 @@ function getFocusableElements(node) {
|
|
|
224
212
|
const focusableSelectorsList = ["input:not([disabled]):not([tabindex='-1'])", "textarea:not([disabled]):not([tabindex='-1'])", "button:not([disabled]):not([tabindex='-1'])", "a[href]:not([tabindex='-1'])", "select:not([disabled]):not([tabindex='-1'])", "area[href]:not([tabindex='-1'])", "iframe:not([tabindex='-1'])", "object:not([tabindex='-1'])", "*[tabindex]:not([tabindex='-1'])", "*[contenteditable]:not([tabindex='-1'])"];
|
|
225
213
|
const focusableSelectorsStr = focusableSelectorsList.join(','); // we are not filtered elements which are invisible
|
|
226
214
|
|
|
227
|
-
const focusableElements =
|
|
215
|
+
const focusableElements = Array.from(node.querySelectorAll(focusableSelectorsStr));
|
|
228
216
|
return focusableElements;
|
|
229
217
|
}
|
|
@@ -1,17 +1,14 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
|
|
6
|
-
|
|
7
|
-
_Object$defineProperty(exports, "__esModule", {
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
8
4
|
value: true
|
|
9
5
|
});
|
|
10
|
-
|
|
11
6
|
exports.default = void 0;
|
|
12
7
|
|
|
13
8
|
var _react = _interopRequireDefault(require("react"));
|
|
14
9
|
|
|
10
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
11
|
+
|
|
15
12
|
const AnchorContext = /*#__PURE__*/_react.default.createContext(null);
|
|
16
13
|
|
|
17
14
|
var _default = AnchorContext;
|
|
@@ -6,6 +6,7 @@ import BaseComponent from '../_base/baseComponent';
|
|
|
6
6
|
import Link from './link';
|
|
7
7
|
import '@douyinfe/semi-foundation/lib/cjs/anchor/anchor.css';
|
|
8
8
|
import { ArrayElement } from '../_base/base';
|
|
9
|
+
import { ContextValue } from '../configProvider/context';
|
|
9
10
|
export { LinkProps } from './link';
|
|
10
11
|
export interface AnchorProps {
|
|
11
12
|
autoCollapse?: boolean;
|
|
@@ -35,6 +36,7 @@ export interface AnchorState {
|
|
|
35
36
|
slideBarTop: string;
|
|
36
37
|
}
|
|
37
38
|
declare class Anchor extends BaseComponent<AnchorProps, AnchorState> {
|
|
39
|
+
static contextType: React.Context<ContextValue>;
|
|
38
40
|
static Link: typeof Link;
|
|
39
41
|
static PropTypes: {
|
|
40
42
|
size: PropTypes.Requireable<"default" | "small">;
|
|
@@ -77,6 +79,7 @@ declare class Anchor extends BaseComponent<AnchorProps, AnchorState> {
|
|
|
77
79
|
childMap: Record<string, Set<string>>;
|
|
78
80
|
handler: () => void;
|
|
79
81
|
clickHandler: () => void;
|
|
82
|
+
context: ContextValue;
|
|
80
83
|
constructor(props: AnchorProps);
|
|
81
84
|
get adapter(): AnchorAdapter<AnchorProps, AnchorState>;
|
|
82
85
|
addLink: (link: string) => void;
|
|
@@ -88,6 +91,7 @@ declare class Anchor extends BaseComponent<AnchorProps, AnchorState> {
|
|
|
88
91
|
setScrollHeight: () => void;
|
|
89
92
|
updateScrollHeight: (prevState: AnchorState, state: AnchorState) => void;
|
|
90
93
|
updateChildMap: (prevState: AnchorState, state: AnchorState) => void;
|
|
94
|
+
renderChildren: () => any;
|
|
91
95
|
componentDidMount(): void;
|
|
92
96
|
componentDidUpdate(prevProps: AnchorProps, prevState: AnchorState): void;
|
|
93
97
|
componentWillUnmount(): void;
|
package/lib/cjs/anchor/index.js
CHANGED
|
@@ -1,27 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
|
|
6
|
-
|
|
7
|
-
_Object$defineProperty(exports, "__esModule", {
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
8
4
|
value: true
|
|
9
5
|
});
|
|
10
|
-
|
|
11
6
|
exports.default = void 0;
|
|
12
7
|
|
|
13
|
-
var _assign = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/object/assign"));
|
|
14
|
-
|
|
15
|
-
var _slice = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/slice"));
|
|
16
|
-
|
|
17
|
-
var _indexOf = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/index-of"));
|
|
18
|
-
|
|
19
|
-
var _splice = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/splice"));
|
|
20
|
-
|
|
21
|
-
var _map = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/map"));
|
|
22
|
-
|
|
23
|
-
var _concat = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/concat"));
|
|
24
|
-
|
|
25
8
|
var _throttle2 = _interopRequireDefault(require("lodash/throttle"));
|
|
26
9
|
|
|
27
10
|
var _debounce2 = _interopRequireDefault(require("lodash/debounce"));
|
|
@@ -48,11 +31,18 @@ require("@douyinfe/semi-foundation/lib/cjs/anchor/anchor.css");
|
|
|
48
31
|
|
|
49
32
|
var _uuid = _interopRequireDefault(require("@douyinfe/semi-foundation/lib/cjs/utils/uuid"));
|
|
50
33
|
|
|
34
|
+
var _context = _interopRequireDefault(require("../configProvider/context"));
|
|
35
|
+
|
|
36
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
37
|
+
|
|
51
38
|
const prefixCls = _constants.cssClasses.PREFIX;
|
|
52
39
|
|
|
53
40
|
class Anchor extends _baseComponent.default {
|
|
54
41
|
constructor(props) {
|
|
42
|
+
var _this;
|
|
43
|
+
|
|
55
44
|
super(props);
|
|
45
|
+
_this = this;
|
|
56
46
|
|
|
57
47
|
this.addLink = link => {
|
|
58
48
|
this.foundation.addLink(link);
|
|
@@ -91,6 +81,35 @@ class Anchor extends _baseComponent.default {
|
|
|
91
81
|
this.foundation.updateChildMap(prevState, state);
|
|
92
82
|
};
|
|
93
83
|
|
|
84
|
+
this.renderChildren = () => {
|
|
85
|
+
const loop = function (children) {
|
|
86
|
+
let level = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 1;
|
|
87
|
+
return _react.default.Children.map(children, child => {
|
|
88
|
+
if ( /*#__PURE__*/_react.default.isValidElement(child)) {
|
|
89
|
+
const childProps = {
|
|
90
|
+
direction: _this.context.direction,
|
|
91
|
+
level,
|
|
92
|
+
children: []
|
|
93
|
+
};
|
|
94
|
+
const {
|
|
95
|
+
children
|
|
96
|
+
} = child.props;
|
|
97
|
+
const hasChildren = children && _react.default.Children.count(children) > 0;
|
|
98
|
+
|
|
99
|
+
if (hasChildren) {
|
|
100
|
+
childProps.children = loop(children, level + 1);
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
return /*#__PURE__*/_react.default.cloneElement(child, childProps);
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
return null;
|
|
107
|
+
});
|
|
108
|
+
};
|
|
109
|
+
|
|
110
|
+
return loop(this.props.children);
|
|
111
|
+
};
|
|
112
|
+
|
|
94
113
|
this.state = {
|
|
95
114
|
activeLink: '',
|
|
96
115
|
links: [],
|
|
@@ -103,7 +122,7 @@ class Anchor extends _baseComponent.default {
|
|
|
103
122
|
}
|
|
104
123
|
|
|
105
124
|
get adapter() {
|
|
106
|
-
return
|
|
125
|
+
return Object.assign(Object.assign({}, super.adapter), {
|
|
107
126
|
addLink: value => {
|
|
108
127
|
this.setState(prevState => ({
|
|
109
128
|
links: [...prevState.links, value]
|
|
@@ -111,13 +130,11 @@ class Anchor extends _baseComponent.default {
|
|
|
111
130
|
},
|
|
112
131
|
removeLink: link => {
|
|
113
132
|
this.setState(prevState => {
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
const links = (0, _slice.default)(_context = prevState.links).call(_context);
|
|
117
|
-
const index = (0, _indexOf.default)(links).call(links, link);
|
|
133
|
+
const links = prevState.links.slice();
|
|
134
|
+
const index = links.indexOf(link);
|
|
118
135
|
|
|
119
136
|
if (index !== -1) {
|
|
120
|
-
|
|
137
|
+
links.splice(index, 1);
|
|
121
138
|
return {
|
|
122
139
|
links
|
|
123
140
|
};
|
|
@@ -182,7 +199,7 @@ class Anchor extends _baseComponent.default {
|
|
|
182
199
|
offsetTop
|
|
183
200
|
} = this.props;
|
|
184
201
|
const containerTop = this.adapter.getContainerBoundingTop();
|
|
185
|
-
const elTop =
|
|
202
|
+
const elTop = links.map(link => {
|
|
186
203
|
let node = null;
|
|
187
204
|
|
|
188
205
|
try {
|
|
@@ -195,9 +212,7 @@ class Anchor extends _baseComponent.default {
|
|
|
195
212
|
return elTop;
|
|
196
213
|
},
|
|
197
214
|
getAnchorNode: selector => {
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
const selectors = (0, _concat.default)(_context2 = "#".concat(this.anchorID, " ")).call(_context2, selector);
|
|
215
|
+
const selectors = "#".concat(this.anchorID, " ").concat(selector);
|
|
201
216
|
return document.querySelector(selectors);
|
|
202
217
|
},
|
|
203
218
|
getContentNode: selector => document.querySelector(selector),
|
|
@@ -233,8 +248,6 @@ class Anchor extends _baseComponent.default {
|
|
|
233
248
|
}
|
|
234
249
|
|
|
235
250
|
render() {
|
|
236
|
-
var _context3, _context4, _context5, _context6;
|
|
237
|
-
|
|
238
251
|
const {
|
|
239
252
|
size,
|
|
240
253
|
railTheme,
|
|
@@ -254,16 +267,16 @@ class Anchor extends _baseComponent.default {
|
|
|
254
267
|
slideBarTop
|
|
255
268
|
} = this.state;
|
|
256
269
|
const wrapperCls = (0, _classnames.default)(prefixCls, className, {
|
|
257
|
-
[
|
|
270
|
+
["".concat(prefixCls, "-size-").concat(size)]: size
|
|
258
271
|
});
|
|
259
|
-
const slideCls = (0, _classnames.default)("".concat(prefixCls, "-slide"),
|
|
272
|
+
const slideCls = (0, _classnames.default)("".concat(prefixCls, "-slide"), "".concat(prefixCls, "-slide-").concat(railTheme));
|
|
260
273
|
const slideBarCls = (0, _classnames.default)("".concat(prefixCls, "-slide-bar"), {
|
|
261
|
-
[
|
|
262
|
-
[
|
|
274
|
+
["".concat(prefixCls, "-slide-bar-").concat(size)]: size,
|
|
275
|
+
["".concat(prefixCls, "-slide-bar-").concat(railTheme)]: railTheme,
|
|
263
276
|
["".concat(prefixCls, "-slide-bar-active")]: activeLink
|
|
264
277
|
});
|
|
265
278
|
const anchorWrapper = "".concat(prefixCls, "-link-wrapper");
|
|
266
|
-
const wrapperStyle =
|
|
279
|
+
const wrapperStyle = Object.assign(Object.assign({}, style), {
|
|
267
280
|
maxWidth,
|
|
268
281
|
maxHeight
|
|
269
282
|
});
|
|
@@ -299,11 +312,12 @@ class Anchor extends _baseComponent.default {
|
|
|
299
312
|
})), /*#__PURE__*/_react.default.createElement("div", {
|
|
300
313
|
className: anchorWrapper,
|
|
301
314
|
role: "list"
|
|
302
|
-
},
|
|
315
|
+
}, this.renderChildren())));
|
|
303
316
|
}
|
|
304
317
|
|
|
305
318
|
}
|
|
306
319
|
|
|
320
|
+
Anchor.contextType = _context.default;
|
|
307
321
|
Anchor.Link = _link.default;
|
|
308
322
|
Anchor.PropTypes = {
|
|
309
323
|
size: _propTypes.default.oneOf(_constants.strings.SIZE),
|
package/lib/cjs/anchor/link.d.ts
CHANGED
package/lib/cjs/anchor/link.js
CHANGED
|
@@ -1,19 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
|
|
6
|
-
|
|
7
|
-
_Object$defineProperty(exports, "__esModule", {
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
8
4
|
value: true
|
|
9
5
|
});
|
|
10
|
-
|
|
11
6
|
exports.default = void 0;
|
|
12
7
|
|
|
13
|
-
var _assign = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/object/assign"));
|
|
14
|
-
|
|
15
|
-
var _bind = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/bind"));
|
|
16
|
-
|
|
17
8
|
var _react = _interopRequireDefault(require("react"));
|
|
18
9
|
|
|
19
10
|
var _classnames = _interopRequireDefault(require("classnames"));
|
|
@@ -30,12 +21,12 @@ var _anchorContext = _interopRequireDefault(require("./anchor-context"));
|
|
|
30
21
|
|
|
31
22
|
var _index = _interopRequireDefault(require("../typography/index"));
|
|
32
23
|
|
|
24
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
25
|
+
|
|
33
26
|
const prefixCls = _constants.cssClasses.PREFIX; // eslint-disable-next-line @typescript-eslint/ban-types
|
|
34
27
|
|
|
35
28
|
class Link extends _baseComponent.default {
|
|
36
29
|
constructor(props) {
|
|
37
|
-
var _context;
|
|
38
|
-
|
|
39
30
|
super(props);
|
|
40
31
|
|
|
41
32
|
this.renderTitle = () => {
|
|
@@ -65,7 +56,7 @@ class Link extends _baseComponent.default {
|
|
|
65
56
|
size: size === 'default' ? 'normal' : 'small',
|
|
66
57
|
ellipsis: {
|
|
67
58
|
showTooltip: {
|
|
68
|
-
opts:
|
|
59
|
+
opts: Object.assign({}, toolTipOpt)
|
|
69
60
|
}
|
|
70
61
|
},
|
|
71
62
|
type: 'tertiary',
|
|
@@ -98,11 +89,11 @@ class Link extends _baseComponent.default {
|
|
|
98
89
|
};
|
|
99
90
|
|
|
100
91
|
this.foundation = new _linkFoundation.default(this.adapter);
|
|
101
|
-
this.handleClick =
|
|
92
|
+
this.handleClick = this.handleClick.bind(this);
|
|
102
93
|
}
|
|
103
94
|
|
|
104
95
|
get adapter() {
|
|
105
|
-
return
|
|
96
|
+
return Object.assign(Object.assign({}, super.adapter), {
|
|
106
97
|
addLink: href => {
|
|
107
98
|
this.context.addLink(href);
|
|
108
99
|
},
|
|
@@ -157,7 +148,9 @@ class Link extends _baseComponent.default {
|
|
|
157
148
|
className,
|
|
158
149
|
style,
|
|
159
150
|
disabled = false,
|
|
160
|
-
title
|
|
151
|
+
title,
|
|
152
|
+
level,
|
|
153
|
+
direction
|
|
161
154
|
} = this.props;
|
|
162
155
|
const {
|
|
163
156
|
activeLink,
|
|
@@ -169,8 +162,12 @@ class Link extends _baseComponent.default {
|
|
|
169
162
|
["".concat(prefixCls, "-link-title-active")]: active,
|
|
170
163
|
["".concat(prefixCls, "-link-title-disabled")]: disabled
|
|
171
164
|
});
|
|
165
|
+
const paddingAttributeKey = direction === 'rtl' ? 'paddingRight' : 'paddingLeft';
|
|
172
166
|
const ariaProps = {
|
|
173
|
-
'aria-disabled': disabled
|
|
167
|
+
'aria-disabled': disabled,
|
|
168
|
+
style: {
|
|
169
|
+
[paddingAttributeKey]: 8 * level
|
|
170
|
+
}
|
|
174
171
|
};
|
|
175
172
|
|
|
176
173
|
if (active) {
|
|
@@ -185,7 +182,7 @@ class Link extends _baseComponent.default {
|
|
|
185
182
|
className: linkCls,
|
|
186
183
|
style: style,
|
|
187
184
|
role: "listitem"
|
|
188
|
-
}, /*#__PURE__*/_react.default.createElement("div",
|
|
185
|
+
}, /*#__PURE__*/_react.default.createElement("div", Object.assign({
|
|
189
186
|
role: "link",
|
|
190
187
|
tabIndex: 0
|
|
191
188
|
}, ariaProps, {
|