@unicom-cloud/ui 0.8.44 → 0.8.46
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/Affix.js +54 -51
- package/Alert.js +46 -43
- package/Anchor.js +5 -4
- package/AutoComplete.js +60 -55
- package/Avatar.js +10 -155
- package/BackTop.js +41 -38
- package/Badge.js +63 -93
- package/Breadcrumb.js +63 -118
- package/Button.js +105 -109
- package/Calendar.js +139 -536
- package/Card.js +65 -101
- package/Carousel.js +169 -270
- package/Cascader.js +9 -8
- package/Checkbox.js +4 -3
- package/Collapse.js +4 -3
- package/ColorPicker.js +95 -546
- package/Comment.js +14 -12
- package/ConfigProvider.js +6 -5
- package/Copy.js +33 -31
- package/DatePicker.js +35 -1993
- package/Descriptions.js +30 -28
- package/Divider.js +8 -6
- package/Draggable.js +28 -85
- package/Drawer.js +5 -4
- package/Dropdown.js +107 -167
- package/Empty.js +28 -8
- package/Form.js +30 -1418
- package/Grid.js +13 -250
- package/Icon.js +19 -45
- package/IconHover.js +39 -6
- package/Image.js +3 -3
- package/Input.js +4 -4
- package/InputNumber.js +213 -17
- package/InputTag.js +5 -4
- package/Layout.js +35 -48
- package/Link.js +16 -14
- package/List.js +191 -228
- package/Loading.js +18 -17
- package/Mentions.js +99 -115
- package/Menu.js +8 -7
- package/Message.js +147 -10
- package/Modal.js +5 -4
- package/Notice.js +196 -13
- package/Notification.js +136 -11
- package/NotificationBase.js +5 -4
- package/OverflowEllipsis.js +48 -71
- package/PageHeader.js +52 -52
- package/Pagination.js +12 -11
- package/Picker.js +6 -4
- package/Popconfirm.js +47 -44
- package/Popover.js +25 -23
- package/Portal.js +12 -32
- package/Progress.js +65 -328
- package/Radio.js +6 -5
- package/Rate.js +48 -45
- package/ResizeBox.js +127 -505
- package/Result.js +60 -1417
- package/Select.js +9 -8
- package/SelectView.js +49 -328
- package/Skeleton.js +41 -78
- package/Slider.js +228 -702
- package/Space.js +53 -57
- package/Spin.js +57 -72
- package/Statistic.js +84 -153
- package/Steps.js +64 -123
- package/SuspenseFallbackTest.js +4 -3
- package/Switch.js +41 -38
- package/Table.js +20 -1999
- package/Tabs.js +9 -8
- package/Tag.js +24 -21
- package/TimePicker.js +19 -272
- package/Timeline.js +4 -3
- package/Tooltip.js +79 -72
- package/Transfer.js +138 -402
- package/Tree.js +5 -4
- package/TreeSelect.js +8 -7
- package/Trigger.js +407 -571
- package/Typography.js +11 -722
- package/Upload.js +9 -8
- package/VerificationCode.js +6 -5
- package/Version.js +1 -1
- package/VirtualList.js +4 -3
- package/Watermark.js +3 -2
- package/anchor/Anchor.js +193 -0
- package/anchor/Link.js +54 -0
- package/anchor/context.js +14 -0
- package/anchor/util.js +41 -0
- package/avatar/Avatar.js +85 -0
- package/avatar/Group.js +84 -0
- package/avatar/context.js +5 -0
- package/badge/Count.js +35 -0
- package/breadcrumb/Item.js +67 -0
- package/button/Group.js +15 -0
- package/calendar/Month.js +142 -0
- package/calendar/WeekList.js +24 -0
- package/calendar/Year.js +75 -0
- package/calendar/header/Panel.js +57 -0
- package/calendar/header/index.js +118 -0
- package/calendar/hook/useCellClassName.js +41 -0
- package/card/Grid.js +27 -0
- package/card/Meta.js +32 -0
- package/carousel/Arrow.js +57 -0
- package/carousel/Indicator.js +68 -0
- package/cascader/Cascader.js +300 -0
- package/cascader/base/node.js +142 -0
- package/cascader/base/store.js +93 -0
- package/cascader/hook/useRefCurrent.js +12 -0
- package/cascader/panel/List.js +275 -0
- package/cascader/panel/Option.js +35 -0
- package/cascader/panel/Search.js +171 -0
- package/cascader/util.js +66 -0
- package/checkbox/Checkbox.js +111 -0
- package/checkbox/Group.js +97 -0
- package/checkbox/useCheckbox.js +45 -0
- package/collapse/Collapse.js +90 -0
- package/collapse/Item.js +165 -0
- package/color-picker/ControlBar.js +64 -0
- package/color-picker/InputAlpha.js +24 -0
- package/color-picker/InputHex.js +59 -0
- package/color-picker/InputRgb.js +66 -0
- package/color-picker/Palette.js +36 -0
- package/color-picker/Panel.js +165 -0
- package/color-picker/colors.js +37 -0
- package/color-picker/hooks/useColorPicker.js +63 -0
- package/color-picker/hooks/useControlBlock.js +40 -0
- package/config-provider/ConfigProvider.js +94 -0
- package/config-provider/context.js +24 -0
- package/date-picker/Picker.js +399 -0
- package/date-picker/PickerRange.js +568 -0
- package/date-picker/context.js +5 -0
- package/date-picker/hook/useCellClassName.js +58 -0
- package/date-picker/panel/Body.js +78 -0
- package/date-picker/panel/Footer.js +71 -0
- package/date-picker/panel/Header.js +74 -0
- package/date-picker/panel/Shortcut.js +45 -0
- package/date-picker/panel/WeekList.js +19 -0
- package/date-picker/panel/date/index.js +194 -0
- package/date-picker/panel/month/index.js +113 -0
- package/date-picker/panel/quarter/index.js +93 -0
- package/date-picker/panel/range/index.js +251 -0
- package/date-picker/panel/week/index.js +35 -0
- package/date-picker/panel/year/index.js +74 -0
- package/date-picker/util.js +69 -0
- package/draggable/Item.js +66 -0
- package/drawer/Drawer.js +226 -0
- package/dropdown/Button.js +91 -0
- package/form/Control.js +264 -0
- package/form/Form.js +156 -0
- package/form/FormItem.js +241 -0
- package/form/FormLabel.js +54 -0
- package/form/FormList.js +96 -0
- package/form/FormProvider.js +48 -0
- package/form/IconSymbol.js +20 -0
- package/form/context.js +43 -0
- package/form/hook/useContext.js +32 -0
- package/form/hook/useState.js +31 -0
- package/form/hook/useWatch.js +36 -0
- package/form/interface.js +11 -0
- package/form/promisify.js +23 -0
- package/form/store.js +354 -0
- package/form/useForm.js +53 -0
- package/form/util.js +72 -0
- package/grid/Col.js +87 -0
- package/grid/Row.js +88 -0
- package/grid/context.js +9 -0
- package/grid/grid-item.js +77 -0
- package/grid/grid.js +104 -0
- package/grid/hook/useResponsiveState.js +38 -0
- package/grid/util.js +51 -0
- package/{chunk/I4RV9SKZ.js → hooks/factory/createHTMLMediaHook.js} +35 -43
- package/hooks/index.js +246 -4
- package/{chunk/BdYAMaw9.js → hooks/misc/hookState.js} +1 -1
- package/hooks/misc/parseTimeRanges.js +12 -0
- package/{chunk/TXCrI0jN.js → hooks/misc/util.js} +6 -6
- package/hooks/use-watermark/utils.js +8 -0
- package/hooks/use-watermark.js +71 -76
- package/hooks/useAudio.js +3 -3
- package/hooks/useBeforeUnload.js +2 -2
- package/hooks/useClickAway.js +10 -10
- package/hooks/useCounter.js +1 -1
- package/hooks/useCreation.js +2 -4
- package/hooks/useDrop.js +12 -12
- package/hooks/useDropArea.js +5 -5
- package/hooks/useEvent.js +6 -6
- package/hooks/useEventListener.js +2 -4
- package/hooks/useFavicon.js +1 -2
- package/hooks/useFullscreen.js +11 -13
- package/hooks/useGetSet.js +5 -5
- package/hooks/useHash.js +6 -6
- package/hooks/useHover.js +6 -6
- package/hooks/useHoverDirty.js +7 -7
- package/hooks/useIdle.js +17 -17
- package/hooks/useIsomorphicLayoutEffect2.js +3 -3
- package/hooks/useKey.js +5 -5
- package/hooks/useList.js +1 -1
- package/hooks/useLocalStorage.js +2 -3
- package/hooks/useLocation.js +1 -1
- package/hooks/useLockBodyScroll.js +13 -14
- package/hooks/useLongPress.js +7 -7
- package/hooks/useMeasure.js +3 -3
- package/hooks/useMedia.js +4 -4
- package/hooks/useMediaDevices.js +10 -10
- package/hooks/useMotion.js +11 -11
- package/hooks/useMouse.js +9 -9
- package/hooks/useMouseWheel.js +7 -7
- package/hooks/useNetworkState.js +7 -7
- package/hooks/useOrientation.js +10 -11
- package/hooks/useOverrideRef.js +14 -0
- package/hooks/usePageLeave.js +4 -4
- package/hooks/usePermission.js +9 -9
- package/hooks/usePersistCallback.js +15 -0
- package/hooks/useScroll.js +6 -6
- package/hooks/useScrolling.js +7 -7
- package/hooks/useSearchParam.js +5 -5
- package/hooks/useSessionStorage.js +9 -9
- package/hooks/useSize.js +1 -1
- package/hooks/useSlider.js +6 -6
- package/hooks/useStartTyping.js +4 -4
- package/hooks/useStateList.js +4 -5
- package/hooks/useStateWithHistory.js +1 -1
- package/hooks/useTimeout.js +1 -2
- package/hooks/useVibrate.js +5 -5
- package/hooks/useVideo.js +3 -3
- package/hooks/useWindowScroll.js +13 -13
- package/hooks/useWindowSize.js +6 -6
- package/icon/addFromIconFontCn.js +33 -0
- package/image/Image.js +189 -0
- package/image/ImageFooter.js +45 -0
- package/image/ImagePreview.js +473 -0
- package/image/ImagePreviewArrow.js +40 -0
- package/image/ImagePreviewGroup.js +125 -0
- package/image/ImagePreviewToolbar.js +98 -0
- package/image/TriggerForToolbar.js +10 -0
- package/image/previewGroupContext.js +17 -0
- package/image/util/getFixTranslate.js +7 -0
- package/image/util/getScale.js +72 -0
- package/image/util/hook/useImageStatus.js +16 -0
- package/image/util/hook/useShowFooter.js +7 -0
- package/index.js +440 -398
- package/input/Group.js +20 -0
- package/input/Input.js +185 -0
- package/input/InputElement.js +233 -0
- package/input/Number.js +4 -0
- package/input/Password.js +72 -0
- package/input/Search.js +80 -0
- package/input/Tag.js +7 -0
- package/input/Textarea.js +168 -0
- package/input/autoSizeTextAreaHeight.js +65 -0
- package/input/useComposition.js +39 -0
- package/input-number/decimal.js +154 -0
- package/input-number/useSelectionRange.js +26 -0
- package/input-number/util.js +57 -0
- package/input-tag/InputTag.js +381 -0
- package/layout/Content.js +15 -0
- package/layout/Footer.js +15 -0
- package/layout/Header.js +15 -0
- package/{chunk/B9asjXwm.js → layout/Sider.js} +23 -22
- package/list/Item.js +46 -0
- package/list/Meta.js +21 -0
- package/loading/style/index.module.less.js +4 -0
- package/mentions/util.js +26 -0
- package/menu/Indent.js +17 -0
- package/menu/Item.js +125 -0
- package/menu/ItemGroup.js +39 -0
- package/menu/Menu.js +181 -0
- package/menu/OverflowWrap.js +85 -0
- package/menu/context.js +5 -0
- package/menu/sub-menu/Inline.js +111 -0
- package/menu/sub-menu/Pop.js +126 -0
- package/menu/sub-menu/index.js +17 -0
- package/menu/util.js +80 -0
- package/message/useMessage.js +53 -0
- package/modal/Confirm.js +98 -0
- package/modal/Modal.js +419 -0
- package/modal/config.js +25 -0
- package/modal/use-modal/Hook.js +55 -0
- package/modal/use-modal/index.js +68 -0
- package/notification/useNotification.js +55 -0
- package/overflow-ellipsis/OverflowItem.js +34 -0
- package/package.json +1 -1
- package/pagination/PageItem.js +121 -0
- package/pagination/PageJumper.js +64 -0
- package/pagination/PageOption.js +55 -0
- package/pagination/Pagination.js +245 -0
- package/picker/Input.js +124 -0
- package/picker/InputRange.js +155 -0
- package/portal/Portal.js +25 -0
- package/progress/CircleProgress.js +117 -0
- package/progress/LineProgess.js +103 -0
- package/progress/StepProgress.js +74 -0
- package/radio/Group.js +91 -0
- package/radio/Radio.js +90 -0
- package/resize-box/ResizeTrigger.js +78 -0
- package/resize-box/Split.js +132 -0
- package/resize-box/SplitGroup.js +204 -0
- package/result/403.js +695 -0
- package/result/404.js +513 -0
- package/result/500.js +166 -0
- package/select/OptGroup.js +20 -0
- package/select/Option.js +97 -0
- package/select/Select.js +544 -0
- package/select/util.js +140 -0
- package/select-view/Core.js +309 -0
- package/skeleton/Image.js +24 -0
- package/skeleton/Text.js +27 -0
- package/slider/Button.js +159 -0
- package/slider/Dot.js +43 -0
- package/slider/Input.js +75 -0
- package/slider/Mark.js +28 -0
- package/slider/Tick.js +44 -0
- package/slider/hook/useInterval.js +73 -0
- package/slider/hook/useLegalValue.js +70 -0
- package/slider/util.js +63 -0
- package/space/toArray.js +11 -0
- package/spin/DotLoading.js +26 -0
- package/statistic/Countdown.js +57 -0
- package/statistic/util.js +33 -0
- package/steps/Step.js +68 -0
- package/style.css +1 -1
- package/table/ColGroup.js +59 -0
- package/table/Table.js +634 -0
- package/table/constant.js +5 -0
- package/table/hook/useColumns.js +141 -0
- package/table/hook/useComponent.js +64 -0
- package/table/hook/useExpand.js +36 -0
- package/table/hook/useRowSelection.js +92 -0
- package/table/hook/useSorter.js +54 -0
- package/table/hook/useStickyClassNames.js +30 -0
- package/table/hook/useStickyOffsets.js +30 -0
- package/table/summary/Cell.js +10 -0
- package/table/summary/Row.js +26 -0
- package/table/summary/context.js +5 -0
- package/table/summary/index.js +10 -0
- package/table/tbody/Td.js +168 -0
- package/table/tbody/Tr.js +168 -0
- package/table/tbody/index.js +156 -0
- package/table/tfoot/index.js +16 -0
- package/table/thead/Column.js +250 -0
- package/table/thead/index.js +131 -0
- package/table/util.js +121 -0
- package/tabs/Tab.js +170 -0
- package/tabs/TabContent.js +54 -0
- package/tabs/TabPane.js +26 -0
- package/tabs/hook/useDomSize.js +17 -0
- package/tabs/hook/useHeaderScroll.js +64 -0
- package/tabs/tab-header/DropdownIcon.js +71 -0
- package/tabs/tab-header/TabInk.js +65 -0
- package/tabs/tab-header/TabNavIcon.js +65 -0
- package/tabs/tab-header/TabTitle.js +78 -0
- package/tabs/tab-header/index.js +335 -0
- package/tabs/util.js +22 -0
- package/time-picker/Picker.js +221 -0
- package/time-picker/RangePicker.js +56 -0
- package/time-picker/TimeColumn.js +65 -0
- package/time-picker/TimePicker.js +242 -0
- package/time-picker/context.js +5 -0
- package/time-picker/util.js +43 -0
- package/timeline/Item.js +94 -0
- package/timeline/Timeline.js +80 -0
- package/transfer/Item.js +107 -0
- package/transfer/List.js +192 -0
- package/tree/Animation.js +104 -0
- package/tree/Context.js +5 -0
- package/tree/Node.js +215 -0
- package/tree/NodeList.js +84 -0
- package/tree/Tree.js +549 -0
- package/tree/util.js +76 -0
- package/tree-select/List.js +127 -0
- package/tree-select/Select.js +260 -0
- package/tree-select/hook/useKeyCache.js +56 -0
- package/tree-select/hook/useStateValue.js +98 -0
- package/tree-select/hook/useTreeData.js +13 -0
- package/tree-select/interface.js +13 -0
- package/tree-select/util.js +9 -0
- package/trigger/Portal.js +14 -0
- package/trigger/getPopupStyle.js +190 -0
- package/types/badge/Count.d.ts +2 -1
- package/types/badge/index.d.ts +2 -2
- package/types/button/index.d.ts +2 -2
- package/types/carousel/index.d.ts +1 -1
- package/types/color-picker/colors.d.ts +1 -1
- package/types/color-picker/style/index.d.ts +1 -1
- package/types/drawer/Drawer.d.ts +1 -1
- package/types/dropdown/interface.d.ts +1 -0
- package/types/hooks/index.d.ts +122 -0
- package/types/hooks/use-verification-code/interface.d.ts +1 -1
- package/types/hooks/useAsync.d.ts +1 -1
- package/types/hooks/useDropArea.d.ts +1 -0
- package/types/hooks/useOverrideRef.d.ts +5 -0
- package/types/hooks/usePersistCallback.d.ts +1 -0
- package/types/hooks/useUpsert.d.ts +1 -1
- package/types/icon-hover/index.d.ts +5 -3
- package/types/index.d.ts +2 -120
- package/types/input-tag/InputTag.d.ts +1 -1
- package/types/link/interface.d.ts +1 -1
- package/types/list/index.d.ts +1 -1
- package/types/modal/interface.d.ts +1 -0
- package/types/notice/index.d.ts +3 -0
- package/types/notification/index.d.ts +1 -1
- package/types/page-header/index.d.ts +1 -1
- package/types/select/Select.d.ts +1 -1
- package/types/select-view/Core.d.ts +3 -2
- package/types/select-view/index.d.ts +1 -0
- package/types/statistic/index.d.ts +1 -1
- package/types/switch/index.d.ts +1 -1
- package/types/switch/interface.d.ts +1 -1
- package/types/table/interface.d.ts +2 -1
- package/types/tooltip/index.d.ts +1 -1
- package/types/trigger/index.d.ts +12 -8
- package/types/trigger/interface.d.ts +1 -0
- package/types/typography/Base.d.ts +8 -7
- package/types/typography/EditContent.d.ts +3 -2
- package/types/typography/Paragraph.d.ts +2 -5
- package/types/typography/Text.d.ts +1 -5
- package/types/typography/Title.d.ts +2 -5
- package/types/upload/TriggerNode.d.ts +5 -3
- package/types/upload/list/PictureItem.d.ts +3 -3
- package/types/upload/list/TextItem.d.ts +3 -3
- package/types/utils/CSSTransition.d.ts +2 -0
- package/types/utils/constant.d.ts +1 -1
- package/types/utils/is.d.ts +4 -0
- package/types/utils/reactDOM.d.ts +3 -1
- package/types/utils/warning.d.ts +1 -1
- package/types/version/index.d.ts +1 -1
- package/typography/Base.js +184 -0
- package/typography/EditContent.js +49 -0
- package/typography/Ellipsis.js +293 -0
- package/typography/Operations.js +78 -0
- package/typography/Paragraph.js +26 -0
- package/typography/Text.js +11 -0
- package/typography/Title.js +12 -0
- package/typography/Typography.js +15 -0
- package/typography/useCssEllipsis.js +37 -0
- package/typography/useEllipsis.js +150 -0
- package/upload/TriggerNode.js +118 -0
- package/upload/Upload.js +205 -0
- package/upload/Uploader.js +205 -0
- package/upload/interface.js +9 -0
- package/upload/list/PictureItem.js +91 -0
- package/upload/list/TextItem.js +99 -0
- package/upload/list/UploadProgress.js +97 -0
- package/upload/list/index.js +120 -0
- package/upload/request.js +51 -0
- package/upload/util.js +61 -0
- package/utils/CSSTransition.js +27 -0
- package/utils/contextHolder.js +29 -4
- package/utils/getHighlightText.js +1 -2
- package/utils/is.js +81 -68
- package/utils/reactDOM.js +33 -22
- package/utils/style.js +1 -2
- package/utils/warning.js +7 -3
- package/verification-code/VerificationCode.js +83 -0
- package/virtual-list/Filler.js +31 -0
- package/virtual-list/VirtualList.js +378 -0
- package/virtual-list/util/algorithm.js +32 -0
- package/virtual-list/util/item.js +99 -0
- package/{chunk/BCEX3Acw.js → watermark/Watermark.js} +13 -11
- package/chunk/B1P8u7kB.js +0 -798
- package/chunk/B2ufZjjd.js +0 -1000
- package/chunk/B7QOJqps.js +0 -162
- package/chunk/BBz3S3zo.js +0 -966
- package/chunk/BGzBxiWE.js +0 -517
- package/chunk/BNRfcEHj.js +0 -984
- package/chunk/BSs6uXmc.js +0 -946
- package/chunk/BTjUAV8T.js +0 -277
- package/chunk/BYQeEcKe.js +0 -375
- package/chunk/Ba4UXIST.js +0 -605
- package/chunk/BfaXVcik.js +0 -271
- package/chunk/Bs11tCU6.js +0 -240
- package/chunk/C7FC7dzS.js +0 -516
- package/chunk/CLzbve11.js +0 -694
- package/chunk/CN4zXU4b.js +0 -877
- package/chunk/CYTPZUHD.js +0 -769
- package/chunk/CcCo_dK0.js +0 -335
- package/chunk/CoCXcpQd.js +0 -261
- package/chunk/D4yH4UKK.js +0 -80
- package/chunk/DiSLYN2-.js +0 -167
- package/chunk/Dr0iXIXO.js +0 -736
- package/chunk/G3-2uJao.js +0 -229
- package/chunk/RnTpOC5-.js +0 -1
- package/chunk/Z-mtdHUQ.js +0 -226
- package/chunk/ZISxNnaR.js +0 -165
- package/chunk/aPJXnDSb.js +0 -450
- package/chunk/i605JRmI.js +0 -232
- package/chunk/l0sNRNKZ.js +0 -1
- package/types/form/FormItemTip.d.ts +0 -8
- /package/{chunk/C6Kfwj0f.js → loading/style/index.less.js} +0 -0
- /package/{chunk/DP2rzg_V.js → suspense-fallback-test/style/index.less.js} +0 -0
- /package/{chunk/K6Dvbx-E.js → virtual-list/style/index.less.js} +0 -0
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
import { jsx as m } from "react/jsx-runtime";
|
|
2
|
+
import $ from "lodash/isEqualWith";
|
|
3
|
+
import { useRef as l, useEffect as y } from "react";
|
|
4
|
+
import { getRectDiff as g } from "../util.js";
|
|
5
|
+
import k from "@unicom-cloud/utils/class-name";
|
|
6
|
+
import R from "../../utils/throttleByRaf.js";
|
|
7
|
+
const w = (t, e, c) => {
|
|
8
|
+
let r = { left: "", width: "", top: "", height: "" };
|
|
9
|
+
if (e) {
|
|
10
|
+
const n = g(e, c);
|
|
11
|
+
t === "vertical" ? r = {
|
|
12
|
+
top: `${n.top}px`,
|
|
13
|
+
height: `${e.offsetHeight}px`,
|
|
14
|
+
left: "",
|
|
15
|
+
width: ""
|
|
16
|
+
} : r = {
|
|
17
|
+
left: `${n.left}px`,
|
|
18
|
+
width: `${e.offsetWidth}px`,
|
|
19
|
+
top: "",
|
|
20
|
+
height: ""
|
|
21
|
+
};
|
|
22
|
+
}
|
|
23
|
+
return r;
|
|
24
|
+
}, W = ({
|
|
25
|
+
prefixCls: t,
|
|
26
|
+
animation: e,
|
|
27
|
+
disabled: c,
|
|
28
|
+
direction: r,
|
|
29
|
+
getTitleRef: n,
|
|
30
|
+
activeTab: p,
|
|
31
|
+
getHeaderRef: u,
|
|
32
|
+
inkBarSize: s
|
|
33
|
+
}) => {
|
|
34
|
+
const a = l(), h = l();
|
|
35
|
+
return y(() => {
|
|
36
|
+
const f = R(() => {
|
|
37
|
+
const i = n(p), o = w(
|
|
38
|
+
r,
|
|
39
|
+
i,
|
|
40
|
+
u("headerRef").current
|
|
41
|
+
);
|
|
42
|
+
o && !$(h.current, o) && (h.current = o, a.current && Object.keys(o).forEach((d) => {
|
|
43
|
+
a.current.style[d] = o[d];
|
|
44
|
+
}));
|
|
45
|
+
});
|
|
46
|
+
return f(), () => {
|
|
47
|
+
var i;
|
|
48
|
+
(i = f.cancel) == null || i.call(f);
|
|
49
|
+
};
|
|
50
|
+
}), /* @__PURE__ */ m(
|
|
51
|
+
"div",
|
|
52
|
+
{
|
|
53
|
+
className: k(`${t}-header-ink`, {
|
|
54
|
+
[`${t}-header-ink-no-animation`]: !e,
|
|
55
|
+
[`${t}-header-ink-disabled`]: c,
|
|
56
|
+
[`${t}-header-ink-custom`]: s
|
|
57
|
+
}),
|
|
58
|
+
ref: a,
|
|
59
|
+
children: s && /* @__PURE__ */ m("div", { style: s, className: `${t}-header-ink-inner` })
|
|
60
|
+
}
|
|
61
|
+
);
|
|
62
|
+
};
|
|
63
|
+
export {
|
|
64
|
+
W as default
|
|
65
|
+
};
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
import { jsx as o } from "react/jsx-runtime";
|
|
2
|
+
import P from "@unicom-cloud/icons/IconUiDown";
|
|
3
|
+
import I from "@unicom-cloud/icons/IconUiLeft";
|
|
4
|
+
import O from "@unicom-cloud/icons/IconUiRight";
|
|
5
|
+
import S from "@unicom-cloud/icons/IconUiUp";
|
|
6
|
+
import j from "lodash/isNull";
|
|
7
|
+
import { useMemo as p } from "react";
|
|
8
|
+
import L from "../../IconHover.js";
|
|
9
|
+
import R from "@unicom-cloud/utils/class-name";
|
|
10
|
+
const T = {
|
|
11
|
+
prev: "left",
|
|
12
|
+
next: "right"
|
|
13
|
+
}, V = {
|
|
14
|
+
prev: "up",
|
|
15
|
+
next: "down"
|
|
16
|
+
}, Q = (n) => {
|
|
17
|
+
const {
|
|
18
|
+
direction: c,
|
|
19
|
+
headerSize: N,
|
|
20
|
+
headerWrapperSize: b,
|
|
21
|
+
prefixCls: s,
|
|
22
|
+
iconPos: h,
|
|
23
|
+
currentOffset: e,
|
|
24
|
+
align: l,
|
|
25
|
+
rtl: v,
|
|
26
|
+
icon: g
|
|
27
|
+
} = n, { height: d, width: a } = b, { height: x, width: z } = N, m = x - d, f = z - a, H = {
|
|
28
|
+
up: /* @__PURE__ */ o(S, {}),
|
|
29
|
+
down: /* @__PURE__ */ o(P, {}),
|
|
30
|
+
left: v ? /* @__PURE__ */ o(O, {}) : /* @__PURE__ */ o(I, {}),
|
|
31
|
+
right: v ? /* @__PURE__ */ o(I, {}) : /* @__PURE__ */ o(O, {})
|
|
32
|
+
}, w = (t) => {
|
|
33
|
+
var r;
|
|
34
|
+
t !== n.currentOffset && ((r = n == null ? void 0 : n.onChange) == null || r.call(n, t));
|
|
35
|
+
}, U = (t, r) => {
|
|
36
|
+
t.preventDefault();
|
|
37
|
+
let i;
|
|
38
|
+
l === "left" ? i = r === "left" ? e - a : e + a : i = r === "left" ? e + a : e - a, w(i);
|
|
39
|
+
}, k = (t, r) => {
|
|
40
|
+
t.preventDefault();
|
|
41
|
+
let i;
|
|
42
|
+
if (r === "up")
|
|
43
|
+
i = e - d;
|
|
44
|
+
else if (i = e + d, i >= x) return;
|
|
45
|
+
w(i);
|
|
46
|
+
}, D = p(() => l === "left" ? e <= 0 : c === "vertical" ? e >= m : e >= f, [l, c, e, f, e]), W = p(() => l === "left" ? c === "vertical" ? e >= m : e >= f : e <= 0, [l, c, m, f, e]);
|
|
47
|
+
if (j(g))
|
|
48
|
+
return null;
|
|
49
|
+
const u = c === "horizontal" ? T[h] : V[h], C = h === "prev" ? D : W, $ = R(`${s}-${u}-icon`, {
|
|
50
|
+
[`${s}-nav-icon-disabled`]: C
|
|
51
|
+
}), M = c === "vertical" ? k : U;
|
|
52
|
+
return /* @__PURE__ */ o(
|
|
53
|
+
L,
|
|
54
|
+
{
|
|
55
|
+
disabled: C,
|
|
56
|
+
className: $,
|
|
57
|
+
prefix: s,
|
|
58
|
+
onClick: (t) => M(t, u),
|
|
59
|
+
children: g || H[u]
|
|
60
|
+
}
|
|
61
|
+
);
|
|
62
|
+
};
|
|
63
|
+
export {
|
|
64
|
+
Q as default
|
|
65
|
+
};
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
import { jsxs as y, jsx as r } from "react/jsx-runtime";
|
|
2
|
+
import v from "@unicom-cloud/icons/IconUiClose";
|
|
3
|
+
import T from "lodash/isFunction";
|
|
4
|
+
import N from "react";
|
|
5
|
+
import w from "../../IconHover.js";
|
|
6
|
+
import { getKeyDownEvent as D } from "../util.js";
|
|
7
|
+
import E from "@unicom-cloud/utils/class-name";
|
|
8
|
+
import { Enter as H } from "../../utils/keyCode.js";
|
|
9
|
+
const I = ({
|
|
10
|
+
prefixCls: t,
|
|
11
|
+
onDeleteTab: h,
|
|
12
|
+
tabKey: c,
|
|
13
|
+
isActive: a,
|
|
14
|
+
onClickTab: f,
|
|
15
|
+
disabled: e = !1,
|
|
16
|
+
title: p,
|
|
17
|
+
editable: n,
|
|
18
|
+
renderTitle: i,
|
|
19
|
+
deleteIcon: k,
|
|
20
|
+
deleteButton: u,
|
|
21
|
+
getIdPrefix: m,
|
|
22
|
+
index: l
|
|
23
|
+
}, $) => {
|
|
24
|
+
const b = T(i) ? i : (o) => o, s = (o) => {
|
|
25
|
+
o.stopPropagation(), !e && h();
|
|
26
|
+
}, d = (o) => {
|
|
27
|
+
e || f(o);
|
|
28
|
+
};
|
|
29
|
+
return b(
|
|
30
|
+
/* @__PURE__ */ y(
|
|
31
|
+
"div",
|
|
32
|
+
{
|
|
33
|
+
ref: $,
|
|
34
|
+
className: E(`${t}-header-title`, {
|
|
35
|
+
[`${t}-header-title-active`]: a,
|
|
36
|
+
[`${t}-header-title-editable`]: n,
|
|
37
|
+
[`${t}-header-title-disabled`]: e
|
|
38
|
+
}),
|
|
39
|
+
role: "tab",
|
|
40
|
+
"aria-selected": a,
|
|
41
|
+
tabIndex: e ? -1 : 0,
|
|
42
|
+
"aria-disabled": e || void 0,
|
|
43
|
+
id: m(l).tab,
|
|
44
|
+
"aria-controls": m(l).tabpane,
|
|
45
|
+
onClick: d,
|
|
46
|
+
onKeyDown: (o) => {
|
|
47
|
+
o.key === H.key && d(o);
|
|
48
|
+
},
|
|
49
|
+
children: [
|
|
50
|
+
/* @__PURE__ */ r("span", { className: `${t}-header-title-text`, children: p }),
|
|
51
|
+
n && /* @__PURE__ */ r(
|
|
52
|
+
"span",
|
|
53
|
+
{
|
|
54
|
+
role: "button",
|
|
55
|
+
"aria-label": "remove tab",
|
|
56
|
+
"aria-disabled": e || void 0,
|
|
57
|
+
tabIndex: e ? -1 : 0,
|
|
58
|
+
className: `${t}-close-icon`,
|
|
59
|
+
...D({ onPressEnter: s }),
|
|
60
|
+
onClick: s,
|
|
61
|
+
children: u || /* @__PURE__ */ r(w, { prefix: t, children: k || /* @__PURE__ */ r(v, {}) })
|
|
62
|
+
}
|
|
63
|
+
)
|
|
64
|
+
]
|
|
65
|
+
},
|
|
66
|
+
c
|
|
67
|
+
),
|
|
68
|
+
{
|
|
69
|
+
key: c,
|
|
70
|
+
isActive: a,
|
|
71
|
+
disabled: e,
|
|
72
|
+
editable: n
|
|
73
|
+
}
|
|
74
|
+
);
|
|
75
|
+
}, B = N.forwardRef(I);
|
|
76
|
+
export {
|
|
77
|
+
B as default
|
|
78
|
+
};
|
|
@@ -0,0 +1,335 @@
|
|
|
1
|
+
import { jsx as s, jsxs as G } from "react/jsx-runtime";
|
|
2
|
+
import jt from "@unicom-cloud/icons/IconUiPlus";
|
|
3
|
+
import rt from "lodash/isNumber";
|
|
4
|
+
import Gt from "lodash/isPlainObject";
|
|
5
|
+
import Kt from "lodash/throttle";
|
|
6
|
+
import Vt, { useContext as ht, useRef as Xt, useState as mt, useMemo as Ft, useCallback as Ot, useEffect as P } from "react";
|
|
7
|
+
/* empty css */
|
|
8
|
+
import "../../config-provider/ConfigProvider.js";
|
|
9
|
+
import Ut from "../../IconHover.js";
|
|
10
|
+
import { TabsContext as Yt } from "../Tab.js";
|
|
11
|
+
import L from "../hook/useDomSize.js";
|
|
12
|
+
import qt from "../hook/useHeaderScroll.js";
|
|
13
|
+
import { updateScrollOffset as Jt, getRectDiff as St, getKeyDownEvent as Qt } from "../util.js";
|
|
14
|
+
import nt from "@unicom-cloud/utils/class-name";
|
|
15
|
+
import { setTransformStyle as Zt } from "../../utils/style.js";
|
|
16
|
+
import zt from "./DropdownIcon.js";
|
|
17
|
+
import te from "./TabInk.js";
|
|
18
|
+
import pt from "./TabNavIcon.js";
|
|
19
|
+
import ee from "./TabTitle.js";
|
|
20
|
+
import { ConfigContext as re } from "../../config-provider/context.js";
|
|
21
|
+
const ot = "vertical", K = "right", V = "left", gt = {
|
|
22
|
+
delete: !0,
|
|
23
|
+
add: !0
|
|
24
|
+
}, ne = ({
|
|
25
|
+
direction: C,
|
|
26
|
+
align: W = V,
|
|
27
|
+
headerOffset: S
|
|
28
|
+
}) => {
|
|
29
|
+
let u = `translateX(${-S}px)`;
|
|
30
|
+
return W === K && (u = `translateX(${S}px)`), C === ot && (u = `translateY(${-S}px)`), Zt(u);
|
|
31
|
+
}, oe = ({
|
|
32
|
+
direction: C,
|
|
33
|
+
align: W = V,
|
|
34
|
+
headerDom: S,
|
|
35
|
+
headerWrapperDom: u
|
|
36
|
+
}) => {
|
|
37
|
+
const a = St(S, u);
|
|
38
|
+
return C === ot ? -a.top : W === K ? a.right : -a.left;
|
|
39
|
+
}, ae = Vt.forwardRef((C, W) => {
|
|
40
|
+
const S = ht(Yt), { rtl: u } = ht(re), a = { ...C, ...S }, [f, y, xt] = L(), [x, h, Tt] = L(), [X, F, wt] = L(), [b, O, $t] = L(), [k, U, Ct] = L(), B = Xt({}), [N, at] = mt(0), [yt, Y] = mt(!0), {
|
|
41
|
+
paneChildren: q,
|
|
42
|
+
editable: bt,
|
|
43
|
+
prefixCls: n,
|
|
44
|
+
onAddTab: J,
|
|
45
|
+
direction: c,
|
|
46
|
+
type: T = "line",
|
|
47
|
+
overflow: ct = "scroll",
|
|
48
|
+
activeTab: M,
|
|
49
|
+
showAddButton: kt,
|
|
50
|
+
size: Nt = "default",
|
|
51
|
+
style: It,
|
|
52
|
+
tabPosition: Ht,
|
|
53
|
+
className: vt,
|
|
54
|
+
extra: lt,
|
|
55
|
+
animation: Dt,
|
|
56
|
+
icons: l,
|
|
57
|
+
deleteButton: Rt,
|
|
58
|
+
addButton: At,
|
|
59
|
+
renderTabTitle: Pt,
|
|
60
|
+
scrollAfterEdit: ft,
|
|
61
|
+
scrollPosition: m = "auto",
|
|
62
|
+
inkBarSize: Wt
|
|
63
|
+
} = a, it = Gt(ft) ? { ...gt, ...ft } : gt, [Mt, Et] = u ? [K, V] : [V, K], I = T === "capsule" ? Et : Mt, w = Ft(() => {
|
|
64
|
+
const t = F.height - O.height - U.height, e = F.width - O.width - U.width;
|
|
65
|
+
return a.direction === "vertical" ? t < h.height : e < h.width;
|
|
66
|
+
}, [
|
|
67
|
+
a.direction,
|
|
68
|
+
F,
|
|
69
|
+
O,
|
|
70
|
+
h,
|
|
71
|
+
U
|
|
72
|
+
]), Lt = () => {
|
|
73
|
+
if (X.current) {
|
|
74
|
+
const t = X.current;
|
|
75
|
+
wt({
|
|
76
|
+
height: t.offsetHeight,
|
|
77
|
+
width: t.offsetWidth
|
|
78
|
+
});
|
|
79
|
+
}
|
|
80
|
+
}, _ = (t) => Kt((e) => {
|
|
81
|
+
Lt();
|
|
82
|
+
const r = e[0] && e[0].target;
|
|
83
|
+
r && t({
|
|
84
|
+
height: r.offsetHeight,
|
|
85
|
+
width: r.offsetWidth,
|
|
86
|
+
domRect: r.getBoundingClientRect()
|
|
87
|
+
});
|
|
88
|
+
}, 200), H = _(xt), v = _(Tt), D = _($t), R = _(Ct), Q = Ot(
|
|
89
|
+
(t) => {
|
|
90
|
+
const e = c === ot ? h.height - y.height : h.width - y.width;
|
|
91
|
+
let r = t;
|
|
92
|
+
return r = Math.min(e, r), r = Math.max(r, 0), r;
|
|
93
|
+
},
|
|
94
|
+
[c, h, y]
|
|
95
|
+
), Z = (t) => {
|
|
96
|
+
const e = Q(t);
|
|
97
|
+
e !== N && at(e);
|
|
98
|
+
};
|
|
99
|
+
P(() => () => {
|
|
100
|
+
var t, e, r, o;
|
|
101
|
+
(t = v == null ? void 0 : v.cancel) == null || t.call(v), (e = H == null ? void 0 : H.cancel) == null || e.call(H), (r = D == null ? void 0 : D.cancel) == null || r.call(D), (o = R == null ? void 0 : R.cancel) == null || o.call(R);
|
|
102
|
+
}, []), P(() => {
|
|
103
|
+
if (!yt) {
|
|
104
|
+
Y(!0);
|
|
105
|
+
return;
|
|
106
|
+
}
|
|
107
|
+
const t = () => {
|
|
108
|
+
const r = B.current[M];
|
|
109
|
+
if (!r || !w)
|
|
110
|
+
return 0;
|
|
111
|
+
const o = St(r, f.current), p = oe({
|
|
112
|
+
direction: c,
|
|
113
|
+
align: I,
|
|
114
|
+
headerDom: x.current,
|
|
115
|
+
headerWrapperDom: f.current
|
|
116
|
+
});
|
|
117
|
+
if (c === "vertical") {
|
|
118
|
+
let g = p, i = m;
|
|
119
|
+
const d = p + o.top, $ = p + o.bottom;
|
|
120
|
+
return i === "auto" && (i = o.top < 0 ? "start" : o.bottom > 0 ? "end" : m), i === "start" ? g = d : i === "end" ? g = $ : i === "center" ? g = d - (o.top - o.bottom) / 2 : rt(i) && (g = Math.max(d - i, $)), g;
|
|
121
|
+
}
|
|
122
|
+
if (I === "right") {
|
|
123
|
+
const g = p - o.left, i = p - o.right;
|
|
124
|
+
let d = m, $ = p;
|
|
125
|
+
return m === "auto" && (d = o.left < 0 ? "start" : o.right > 0 ? "end" : m), d === "start" ? $ = g : d === "end" ? $ = i : d === "center" ? $ = g + (o.left - o.right) / 2 : rt(d) && ($ = Math.min(g + d, i)), $;
|
|
126
|
+
}
|
|
127
|
+
let E = p, A = m;
|
|
128
|
+
const et = p + o.left, ut = p + o.right;
|
|
129
|
+
return m === "auto" && (A = o.left < 0 ? "start" : o.right > 0 ? "end" : m), A === "start" ? E = et : A === "end" ? E = ut : A === "center" ? E = et - (o.left - o.right) / 2 : rt(A) && (E = Math.max(et - A, ut)), E;
|
|
130
|
+
};
|
|
131
|
+
Jt(f.current, c);
|
|
132
|
+
let e = t();
|
|
133
|
+
e = Q(e), at(e);
|
|
134
|
+
}, [
|
|
135
|
+
M,
|
|
136
|
+
c,
|
|
137
|
+
ct,
|
|
138
|
+
w,
|
|
139
|
+
T,
|
|
140
|
+
Q,
|
|
141
|
+
m
|
|
142
|
+
]);
|
|
143
|
+
const Bt = ne({
|
|
144
|
+
direction: c,
|
|
145
|
+
align: I,
|
|
146
|
+
headerOffset: N
|
|
147
|
+
}), z = w && ct === "dropdown" && c !== "vertical", tt = w && !z, j = bt && (T === "card" || T === "card-gutter" || T === "line"), _t = (t) => {
|
|
148
|
+
var e;
|
|
149
|
+
(e = a.onDeleteTab) == null || e.call(a, t.key), Y(it.delete);
|
|
150
|
+
}, dt = () => {
|
|
151
|
+
J == null || J(), Y(it.add);
|
|
152
|
+
};
|
|
153
|
+
P(() => {
|
|
154
|
+
let t;
|
|
155
|
+
return k.current && (t = new ResizeObserver(R), t.observe(k.current)), () => {
|
|
156
|
+
var e, r;
|
|
157
|
+
k.current && ((e = t == null ? void 0 : t.unobserve) == null || e.call(t, k.current)), (r = t == null ? void 0 : t.disconnect) == null || r.call(t), t = null;
|
|
158
|
+
};
|
|
159
|
+
}, [k.current]), P(() => {
|
|
160
|
+
let t;
|
|
161
|
+
return f.current && (t = new ResizeObserver(H), t.observe(f.current)), () => {
|
|
162
|
+
var e, r;
|
|
163
|
+
f.current && ((e = t == null ? void 0 : t.unobserve) == null || e.call(t, f.current)), (r = t == null ? void 0 : t.disconnect) == null || r.call(t), t = null;
|
|
164
|
+
};
|
|
165
|
+
}, [f.current]), P(() => {
|
|
166
|
+
let t;
|
|
167
|
+
return x.current && (t = new ResizeObserver(v), t.observe(x.current)), () => {
|
|
168
|
+
var e, r;
|
|
169
|
+
x.current && ((e = t == null ? void 0 : t.unobserve) == null || e.call(t, x.current)), (r = t == null ? void 0 : t.disconnect) == null || r.call(t), t = null;
|
|
170
|
+
};
|
|
171
|
+
}, [x.current]), P(() => {
|
|
172
|
+
let t;
|
|
173
|
+
return b.current && (t = new ResizeObserver(D), t.observe(b.current)), () => {
|
|
174
|
+
var e, r;
|
|
175
|
+
b.current && ((e = t == null ? void 0 : t.unobserve) == null || e.call(t, b.current)), (r = t == null ? void 0 : t.disconnect) == null || r.call(t), t = null;
|
|
176
|
+
};
|
|
177
|
+
}, [b.current]);
|
|
178
|
+
const st = (t) => t && kt && /* @__PURE__ */ s(
|
|
179
|
+
"div",
|
|
180
|
+
{
|
|
181
|
+
className: `${n}-add-icon`,
|
|
182
|
+
"aria-label": "add tab",
|
|
183
|
+
tabIndex: 0,
|
|
184
|
+
role: "button",
|
|
185
|
+
ref: k,
|
|
186
|
+
onClick: dt,
|
|
187
|
+
...Qt({ onPressEnter: dt }),
|
|
188
|
+
children: At || /* @__PURE__ */ s(Ut, { prefix: `${n}-add`, children: /* @__PURE__ */ s("span", { className: `${n}-add`, children: (l == null ? void 0 : l.add) || /* @__PURE__ */ s(jt, {}) }) })
|
|
189
|
+
}
|
|
190
|
+
);
|
|
191
|
+
return qt({
|
|
192
|
+
headerWrapperRef: f,
|
|
193
|
+
headerOffset: N,
|
|
194
|
+
align: I,
|
|
195
|
+
direction: c,
|
|
196
|
+
isScrollable: w,
|
|
197
|
+
onScroll(t) {
|
|
198
|
+
Z(t);
|
|
199
|
+
}
|
|
200
|
+
}), /* @__PURE__ */ s(
|
|
201
|
+
"div",
|
|
202
|
+
{
|
|
203
|
+
className: nt(
|
|
204
|
+
`${n}-header-nav`,
|
|
205
|
+
`${n}-header-nav-${c}`,
|
|
206
|
+
`${n}-header-nav-${Ht}`,
|
|
207
|
+
`${n}-header-size-${Nt}`,
|
|
208
|
+
`${n}-header-nav-${T}`,
|
|
209
|
+
{ [`${n}-header-nav-sticky`]: a.headerSticky },
|
|
210
|
+
// 潘启宝添加
|
|
211
|
+
vt
|
|
212
|
+
),
|
|
213
|
+
style: { ...It, ...a.headerSticky },
|
|
214
|
+
ref: W,
|
|
215
|
+
children: /* @__PURE__ */ G(
|
|
216
|
+
"div",
|
|
217
|
+
{
|
|
218
|
+
className: nt(`${n}-header-scroll`, {
|
|
219
|
+
[`${n}-header-overflow-scroll`]: tt,
|
|
220
|
+
[`${n}-header-overflow-dropdown`]: z
|
|
221
|
+
}),
|
|
222
|
+
ref: X,
|
|
223
|
+
children: [
|
|
224
|
+
tt && /* @__PURE__ */ s(
|
|
225
|
+
pt,
|
|
226
|
+
{
|
|
227
|
+
iconPos: "prev",
|
|
228
|
+
rtl: u,
|
|
229
|
+
icon: l == null ? void 0 : l.prev,
|
|
230
|
+
prefixCls: n,
|
|
231
|
+
currentOffset: N,
|
|
232
|
+
headerSize: h,
|
|
233
|
+
headerWrapperSize: y,
|
|
234
|
+
direction: c,
|
|
235
|
+
align: I,
|
|
236
|
+
onChange: Z
|
|
237
|
+
}
|
|
238
|
+
),
|
|
239
|
+
/* @__PURE__ */ G("div", { className: `${n}-header-wrapper`, ref: f, children: [
|
|
240
|
+
/* @__PURE__ */ G(
|
|
241
|
+
"div",
|
|
242
|
+
{
|
|
243
|
+
className: nt(`${n}-header`, {
|
|
244
|
+
[`${n}-header-no-padding`]: !C.headerPadding && c === "horizontal" && ["line", "text"].indexOf(T) > -1
|
|
245
|
+
}),
|
|
246
|
+
ref: x,
|
|
247
|
+
style: Bt,
|
|
248
|
+
children: [
|
|
249
|
+
q.map((t, e) => /* @__PURE__ */ s(
|
|
250
|
+
ee,
|
|
251
|
+
{
|
|
252
|
+
ref: (r) => {
|
|
253
|
+
B.current[t.key] = r;
|
|
254
|
+
},
|
|
255
|
+
tabKey: t.key,
|
|
256
|
+
...t.props,
|
|
257
|
+
prefixCls: n,
|
|
258
|
+
onDeleteTab: () => _t(t),
|
|
259
|
+
renderTitle: C.children || Pt,
|
|
260
|
+
onClickTab: () => {
|
|
261
|
+
var r;
|
|
262
|
+
(r = a.onClickTab) == null || r.call(a, t.key);
|
|
263
|
+
},
|
|
264
|
+
isActive: M === t.key,
|
|
265
|
+
editable: j && t.props.closable !== !1,
|
|
266
|
+
deleteIcon: l == null ? void 0 : l.delete,
|
|
267
|
+
deleteButton: Rt,
|
|
268
|
+
getIdPrefix: S.getIdPrefix,
|
|
269
|
+
index: e
|
|
270
|
+
},
|
|
271
|
+
e
|
|
272
|
+
)),
|
|
273
|
+
T === "line" && /* @__PURE__ */ s(
|
|
274
|
+
te,
|
|
275
|
+
{
|
|
276
|
+
disabled: !!q.find(
|
|
277
|
+
(t) => t && t.props && t.props.disabled && t.key === M
|
|
278
|
+
),
|
|
279
|
+
prefixCls: n,
|
|
280
|
+
animation: Dt,
|
|
281
|
+
direction: c,
|
|
282
|
+
getTitleRef: (t) => B.current[t],
|
|
283
|
+
activeTab: M,
|
|
284
|
+
getHeaderRef: () => x,
|
|
285
|
+
inkBarSize: Wt
|
|
286
|
+
}
|
|
287
|
+
)
|
|
288
|
+
]
|
|
289
|
+
}
|
|
290
|
+
),
|
|
291
|
+
!w && st(j)
|
|
292
|
+
] }),
|
|
293
|
+
tt && /* @__PURE__ */ s(
|
|
294
|
+
pt,
|
|
295
|
+
{
|
|
296
|
+
prefixCls: n,
|
|
297
|
+
rtl: u,
|
|
298
|
+
iconPos: "next",
|
|
299
|
+
icon: l == null ? void 0 : l.next,
|
|
300
|
+
currentOffset: N,
|
|
301
|
+
headerSize: h,
|
|
302
|
+
headerWrapperSize: y,
|
|
303
|
+
direction: c,
|
|
304
|
+
align: I,
|
|
305
|
+
onChange: Z
|
|
306
|
+
}
|
|
307
|
+
),
|
|
308
|
+
z && /* @__PURE__ */ s(
|
|
309
|
+
zt,
|
|
310
|
+
{
|
|
311
|
+
onClickTab: a.onClickTab,
|
|
312
|
+
paneChildren: q,
|
|
313
|
+
prefixCls: n,
|
|
314
|
+
currentOffset: N,
|
|
315
|
+
headerSize: h,
|
|
316
|
+
icon: l == null ? void 0 : l.dropdown,
|
|
317
|
+
headerWrapperSize: y,
|
|
318
|
+
getTitleRef: (t) => B.current[t],
|
|
319
|
+
direction: c
|
|
320
|
+
}
|
|
321
|
+
),
|
|
322
|
+
(j && w || lt) && /* @__PURE__ */ G("div", { className: `${n}-header-extra`, ref: b, children: [
|
|
323
|
+
w && st(j),
|
|
324
|
+
lt
|
|
325
|
+
] })
|
|
326
|
+
]
|
|
327
|
+
}
|
|
328
|
+
)
|
|
329
|
+
}
|
|
330
|
+
);
|
|
331
|
+
});
|
|
332
|
+
ae.displayName = "TabHeader";
|
|
333
|
+
export {
|
|
334
|
+
ae as default
|
|
335
|
+
};
|
package/tabs/util.js
ADDED
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { Enter as n } from "../utils/keyCode.js";
|
|
2
|
+
const i = (e, t) => {
|
|
3
|
+
const c = e.getBoundingClientRect(), o = t.getBoundingClientRect(), l = t.offsetWidth / o.width, s = t.offsetHeight / o.height;
|
|
4
|
+
return {
|
|
5
|
+
left: (c.left - o.left) * l,
|
|
6
|
+
top: (c.top - o.top) * s,
|
|
7
|
+
right: (c.right - o.right) * l,
|
|
8
|
+
bottom: (c.bottom - o.bottom) * s
|
|
9
|
+
};
|
|
10
|
+
}, r = (e, t) => {
|
|
11
|
+
const c = e.scrollLeft, o = e.scrollTop;
|
|
12
|
+
t === "horizontal" && c && e.scrollTo({ left: -1 * c }), t === "vertical" && o && e.scrollTo({ top: -1 * o });
|
|
13
|
+
}, g = ({ onPressEnter: e }) => ({
|
|
14
|
+
onKeyDown: (t) => {
|
|
15
|
+
t.key === n.key && e(t);
|
|
16
|
+
}
|
|
17
|
+
});
|
|
18
|
+
export {
|
|
19
|
+
g as getKeyDownEvent,
|
|
20
|
+
i as getRectDiff,
|
|
21
|
+
r as updateScrollOffset
|
|
22
|
+
};
|