@arco-design/mobile-react 2.38.4 → 2.39.1
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/CHANGELOG.md +24 -0
- package/README.en-US.md +2 -2
- package/README.md +2 -2
- package/cjs/_helpers/hooks.js +59 -141
- package/cjs/_helpers/index.js +2 -18
- package/cjs/_helpers/react-dom.js +0 -14
- package/cjs/_helpers/render.js +5 -21
- package/cjs/action-sheet/index.js +10 -30
- package/cjs/action-sheet/methods.js +0 -2
- package/cjs/action-sheet/style/css/index.js +0 -2
- package/cjs/action-sheet/style/index.js +0 -2
- package/cjs/avatar/group.js +12 -24
- package/cjs/avatar/index.js +53 -79
- package/cjs/avatar/style/css/index.js +0 -2
- package/cjs/avatar/style/index.js +0 -2
- package/cjs/badge/index.js +18 -29
- package/cjs/badge/style/css/index.js +0 -1
- package/cjs/badge/style/index.js +0 -1
- package/cjs/button/hooks.js +15 -20
- package/cjs/button/index.js +46 -67
- package/cjs/button/style/css/index.js +0 -2
- package/cjs/button/style/index.js +0 -2
- package/cjs/carousel/index.js +153 -288
- package/cjs/carousel/style/css/index.js +0 -1
- package/cjs/carousel/style/index.js +0 -1
- package/cjs/cell/arrow.js +0 -3
- package/cjs/cell/cell.js +18 -34
- package/cjs/cell/group.js +9 -21
- package/cjs/cell/index.js +1 -7
- package/cjs/cell/style/css/index.js +0 -1
- package/cjs/cell/style/index.js +0 -1
- package/cjs/checkbox/checkbox.js +31 -57
- package/cjs/checkbox/group.js +24 -38
- package/cjs/checkbox/hooks/index.js +0 -2
- package/cjs/checkbox/hooks/useMergeProps.js +7 -14
- package/cjs/checkbox/index.js +1 -8
- package/cjs/checkbox/style/css/index.js +0 -1
- package/cjs/checkbox/style/index.js +0 -1
- package/cjs/checkbox/type.js +0 -2
- package/cjs/circle-progress/index.js +37 -57
- package/cjs/circle-progress/style/css/index.js +0 -1
- package/cjs/circle-progress/style/index.js +0 -1
- package/cjs/collapse/collapse.js +30 -61
- package/cjs/collapse/group.js +20 -44
- package/cjs/collapse/index.js +0 -9
- package/cjs/collapse/style/css/index.js +0 -1
- package/cjs/collapse/style/index.js +0 -1
- package/cjs/collapse/utils.js +0 -7
- package/cjs/context-provider/index.js +18 -43
- package/cjs/context-provider/style/css/index.js +0 -1
- package/cjs/context-provider/style/index.js +0 -1
- package/cjs/count-down/hooks.js +24 -43
- package/cjs/count-down/index.js +29 -37
- package/cjs/count-down/singleton.js +2 -12
- package/cjs/count-down/style/css/index.js +0 -1
- package/cjs/count-down/style/index.js +0 -1
- package/cjs/count-down/util.js +33 -47
- package/cjs/date-picker/helper.js +7 -14
- package/cjs/date-picker/index.js +66 -167
- package/cjs/date-picker/style/css/index.js +0 -2
- package/cjs/date-picker/style/index.js +0 -2
- package/cjs/dialog/index.js +31 -57
- package/cjs/dialog/methods.js +9 -22
- package/cjs/dialog/style/css/index.js +0 -2
- package/cjs/dialog/style/index.js +0 -2
- package/cjs/divider/index.js +8 -20
- package/cjs/divider/style/css/index.js +0 -1
- package/cjs/divider/style/index.js +0 -1
- package/cjs/dropdown/dropdown.js +74 -113
- package/cjs/dropdown/index.js +1 -8
- package/cjs/dropdown/options.js +12 -28
- package/cjs/dropdown/style/css/index.js +0 -1
- package/cjs/dropdown/style/index.js +0 -1
- package/cjs/dropdown-menu/dropdown-menu.js +49 -84
- package/cjs/dropdown-menu/helper.js +4 -24
- package/cjs/dropdown-menu/index.js +0 -6
- package/cjs/dropdown-menu/style/css/index.js +0 -2
- package/cjs/dropdown-menu/style/index.js +0 -2
- package/cjs/ellipsis/components/js-ellipsis.js +32 -70
- package/cjs/ellipsis/components/native-ellipsis.js +9 -14
- package/cjs/ellipsis/index.js +19 -32
- package/cjs/ellipsis/style/css/index.js +0 -1
- package/cjs/ellipsis/style/index.js +0 -1
- package/cjs/ellipsis/utils/dom.js +0 -8
- package/cjs/ellipsis/utils/is.js +1 -5
- package/cjs/form/form-item-context.js +0 -5
- package/cjs/form/form-item.js +74 -163
- package/cjs/form/index.js +18 -38
- package/cjs/form/linked-container.js +5 -24
- package/cjs/form/style/css/index.js +0 -1
- package/cjs/form/style/index.js +0 -1
- package/cjs/form/type.d.ts +11 -1
- package/cjs/form/type.js +0 -5
- package/cjs/form/useForm.js +10 -79
- package/cjs/form/utils.js +4 -22
- package/cjs/grid/index.js +22 -45
- package/cjs/grid/style/css/index.js +0 -1
- package/cjs/grid/style/index.js +0 -1
- package/cjs/icon/IconAdd/index.js +5 -12
- package/cjs/icon/IconArrowBack/index.js +5 -12
- package/cjs/icon/IconArrowDown/index.js +5 -12
- package/cjs/icon/IconArrowIn/index.js +5 -12
- package/cjs/icon/IconArrowUp/index.js +5 -12
- package/cjs/icon/IconCheck/index.js +5 -12
- package/cjs/icon/IconCheckBold/index.js +5 -12
- package/cjs/icon/IconCircleChecked/index.js +5 -12
- package/cjs/icon/IconCircleDisabled/index.js +5 -12
- package/cjs/icon/IconCircleUnchecked/index.js +5 -12
- package/cjs/icon/IconClear/index.js +5 -12
- package/cjs/icon/IconClose/index.js +5 -12
- package/cjs/icon/IconCloseBold/index.js +5 -12
- package/cjs/icon/IconDelete/index.js +5 -12
- package/cjs/icon/IconDownload/index.js +5 -12
- package/cjs/icon/IconEdit/index.js +5 -12
- package/cjs/icon/IconErrorCircle/index.js +5 -12
- package/cjs/icon/IconEyeInvisible/index.js +5 -12
- package/cjs/icon/IconEyeVisible/index.js +5 -12
- package/cjs/icon/IconEyelashInvisible/index.js +5 -12
- package/cjs/icon/IconFile/index.js +5 -12
- package/cjs/icon/IconGift/index.js +5 -12
- package/cjs/icon/IconHeart/index.js +5 -12
- package/cjs/icon/IconHome/index.js +5 -12
- package/cjs/icon/IconKeyboard/index.js +5 -12
- package/cjs/icon/IconKeyboardDelete/index.js +5 -12
- package/cjs/icon/IconLikeCircle/index.js +5 -12
- package/cjs/icon/IconMinus/index.js +5 -12
- package/cjs/icon/IconMore/index.js +5 -12
- package/cjs/icon/IconNotice/index.js +5 -12
- package/cjs/icon/IconNoticeOff/index.js +5 -12
- package/cjs/icon/IconPicture/index.js +5 -12
- package/cjs/icon/IconPlay/index.js +5 -12
- package/cjs/icon/IconQuestionCircle/index.js +5 -12
- package/cjs/icon/IconRefresh/index.js +5 -12
- package/cjs/icon/IconSad/index.js +5 -12
- package/cjs/icon/IconScan/index.js +5 -12
- package/cjs/icon/IconSearch/index.js +5 -12
- package/cjs/icon/IconSetting/index.js +5 -12
- package/cjs/icon/IconShop/index.js +5 -12
- package/cjs/icon/IconShopping/index.js +5 -12
- package/cjs/icon/IconSmileFill/index.js +5 -12
- package/cjs/icon/IconSound/index.js +5 -12
- package/cjs/icon/IconSquareChecked/index.js +5 -12
- package/cjs/icon/IconSquareDisabled/index.js +5 -12
- package/cjs/icon/IconSquareUnchecked/index.js +5 -12
- package/cjs/icon/IconStar/index.js +5 -12
- package/cjs/icon/IconStarFill/index.js +5 -12
- package/cjs/icon/IconStarHalf/index.js +5 -12
- package/cjs/icon/IconSubway/index.js +5 -12
- package/cjs/icon/IconSuccessCircle/index.js +5 -12
- package/cjs/icon/IconTriDown/index.js +5 -12
- package/cjs/icon/IconTriUp/index.js +5 -12
- package/cjs/icon/IconUpload/index.js +5 -12
- package/cjs/icon/IconUser/index.js +5 -12
- package/cjs/icon/IconUserFill/index.js +5 -12
- package/cjs/icon/IconWarnCircle/index.js +5 -12
- package/cjs/icon/IconWarnCircleFill/index.js +5 -12
- package/cjs/icon/index.js +0 -119
- package/cjs/image/index.js +53 -94
- package/cjs/image/style/css/index.js +0 -2
- package/cjs/image/style/index.js +0 -2
- package/cjs/image-picker/add-icon.js +0 -3
- package/cjs/image-picker/index.js +32 -59
- package/cjs/image-picker/style/css/index.js +0 -3
- package/cjs/image-picker/style/index.js +0 -3
- package/cjs/image-preview/index.js +129 -254
- package/cjs/image-preview/methods.js +5 -18
- package/cjs/image-preview/style/css/index.js +0 -4
- package/cjs/image-preview/style/index.js +0 -4
- package/cjs/index-bar/context.js +0 -2
- package/cjs/index-bar/group.js +16 -35
- package/cjs/index-bar/index.js +55 -87
- package/cjs/index-bar/side-bar.js +15 -34
- package/cjs/index-bar/style/css/index.js +0 -2
- package/cjs/index-bar/style/index.js +0 -2
- package/cjs/index-bar/utils.js +3 -17
- package/cjs/index.js +0 -119
- package/cjs/input/hooks.js +45 -84
- package/cjs/input/index.js +26 -40
- package/cjs/input/style/css/index.js +0 -1
- package/cjs/input/style/index.js +0 -1
- package/cjs/keyboard/index.js +37 -73
- package/cjs/keyboard/style/css/index.js +0 -2
- package/cjs/keyboard/style/index.js +0 -2
- package/cjs/load-more/index.js +33 -65
- package/cjs/load-more/style/css/index.js +0 -1
- package/cjs/load-more/style/index.js +0 -1
- package/cjs/loading/index.js +19 -48
- package/cjs/loading/style/css/index.js +0 -1
- package/cjs/loading/style/index.js +0 -1
- package/cjs/masking/index.js +47 -80
- package/cjs/masking/methods.js +5 -21
- package/cjs/masking/style/css/index.js +0 -2
- package/cjs/masking/style/index.js +0 -2
- package/cjs/nav-bar/back-icon.js +2 -8
- package/cjs/nav-bar/index.js +37 -61
- package/cjs/nav-bar/style/css/index.js +0 -1
- package/cjs/nav-bar/style/index.js +0 -1
- package/cjs/notice-bar/index.js +34 -60
- package/cjs/notice-bar/style/css/index.js +0 -1
- package/cjs/notice-bar/style/index.js +0 -1
- package/cjs/notify/index.js +20 -49
- package/cjs/notify/methods.js +2 -17
- package/cjs/notify/style/css/index.js +0 -1
- package/cjs/notify/style/index.js +0 -1
- package/cjs/pagination/arrow.js +0 -3
- package/cjs/pagination/index.js +27 -58
- package/cjs/pagination/style/css/index.js +0 -1
- package/cjs/pagination/style/index.js +0 -1
- package/cjs/picker/index.js +48 -84
- package/cjs/picker/style/css/index.js +0 -3
- package/cjs/picker/style/index.js +0 -3
- package/cjs/picker-view/components/cascader.js +13 -32
- package/cjs/picker-view/components/multi-picker.js +8 -17
- package/cjs/picker-view/components/picker-cell.js +45 -101
- package/cjs/picker-view/index.js +30 -76
- package/cjs/picker-view/style/css/index.js +0 -1
- package/cjs/picker-view/style/index.js +0 -1
- package/cjs/popover/hooks/index.js +0 -4
- package/cjs/popover/hooks/useEvent.js +25 -49
- package/cjs/popover/hooks/usePosition.js +100 -159
- package/cjs/popover/index.js +1 -8
- package/cjs/popover/menu.js +32 -52
- package/cjs/popover/popover-inner.js +30 -48
- package/cjs/popover/popover.js +69 -101
- package/cjs/popover/style/css/index.js +0 -2
- package/cjs/popover/style/index.js +0 -2
- package/cjs/popup/index.js +22 -39
- package/cjs/popup/methods.js +0 -2
- package/cjs/popup/style/css/index.js +0 -2
- package/cjs/popup/style/index.js +0 -2
- package/cjs/popup-swiper/index.js +50 -92
- package/cjs/popup-swiper/methods.js +0 -2
- package/cjs/popup-swiper/style/css/index.js +0 -2
- package/cjs/popup-swiper/style/index.js +0 -2
- package/cjs/portal/index.js +3 -8
- package/cjs/portal/style/css/index.js +0 -1
- package/cjs/portal/style/index.js +0 -1
- package/cjs/progress/index.js +27 -44
- package/cjs/progress/style/css/index.js +0 -1
- package/cjs/progress/style/index.js +0 -1
- package/cjs/pull-refresh/android-pull-refresh.js +56 -95
- package/cjs/pull-refresh/hooks.js +11 -32
- package/cjs/pull-refresh/index.js +3 -14
- package/cjs/pull-refresh/ios-pull-refresh.js +53 -81
- package/cjs/pull-refresh/model.js +0 -1
- package/cjs/pull-refresh/style/css/index.js +0 -2
- package/cjs/pull-refresh/style/index.js +0 -2
- package/cjs/radio/group.js +20 -34
- package/cjs/radio/index.js +1 -8
- package/cjs/radio/radio.js +0 -10
- package/cjs/radio/style/css/index.js +0 -1
- package/cjs/radio/style/index.js +0 -1
- package/cjs/rate/index.js +28 -54
- package/cjs/rate/style/css/index.js +0 -1
- package/cjs/rate/style/index.js +0 -1
- package/cjs/search-bar/association.js +14 -32
- package/cjs/search-bar/cancel-button.js +8 -16
- package/cjs/search-bar/highlight.js +14 -25
- package/cjs/search-bar/index.js +77 -97
- package/cjs/search-bar/style/css/index.js +0 -1
- package/cjs/search-bar/style/index.js +0 -1
- package/cjs/show-monitor/index.js +40 -108
- package/cjs/show-monitor/style/css/index.js +0 -1
- package/cjs/show-monitor/style/index.js +0 -1
- package/cjs/skeleton/elements.js +47 -84
- package/cjs/skeleton/index.js +18 -36
- package/cjs/skeleton/skeleton-context.js +0 -4
- package/cjs/skeleton/style/css/index.js +0 -2
- package/cjs/skeleton/style/index.js +0 -2
- package/cjs/slider/hooks/index.js +0 -13
- package/cjs/slider/hooks/useSliderEvents.js +27 -59
- package/cjs/slider/hooks/useSliderIcon.js +6 -20
- package/cjs/slider/hooks/useSliderInit.js +32 -52
- package/cjs/slider/hooks/useSliderStyle.js +13 -27
- package/cjs/slider/index.js +47 -73
- package/cjs/slider/marks.js +13 -27
- package/cjs/slider/popover.js +4 -13
- package/cjs/slider/style/css/index.js +0 -2
- package/cjs/slider/style/index.js +0 -2
- package/cjs/slider/thumb.js +11 -22
- package/cjs/stepper/hooks/useButtonClick.js +15 -25
- package/cjs/stepper/hooks/useInputEvent.js +10 -19
- package/cjs/stepper/hooks/useValue.js +9 -15
- package/cjs/stepper/index.js +84 -98
- package/cjs/stepper/style/css/index.js +0 -1
- package/cjs/stepper/style/index.js +0 -1
- package/cjs/steps/index.js +25 -43
- package/cjs/steps/step.js +10 -27
- package/cjs/steps/style/css/index.js +0 -1
- package/cjs/steps/style/index.js +0 -1
- package/cjs/sticky/index.js +40 -74
- package/cjs/sticky/style/css/index.js +0 -1
- package/cjs/sticky/style/index.js +0 -1
- package/cjs/style.js +0 -59
- package/cjs/swipe-action/index.js +40 -92
- package/cjs/swipe-action/item.js +9 -17
- package/cjs/swipe-action/style/css/index.js +0 -1
- package/cjs/swipe-action/style/index.js +0 -1
- package/cjs/swipe-load/index.js +78 -113
- package/cjs/swipe-load/style/css/index.js +0 -1
- package/cjs/swipe-load/style/index.js +0 -1
- package/cjs/switch/index.js +28 -49
- package/cjs/switch/style/css/index.js +0 -1
- package/cjs/switch/style/index.js +0 -1
- package/cjs/tab-bar/index.js +0 -7
- package/cjs/tab-bar/item.js +6 -24
- package/cjs/tab-bar/style/css/index.js +0 -1
- package/cjs/tab-bar/style/index.js +0 -1
- package/cjs/tab-bar/tab-bar.js +16 -32
- package/cjs/tabs/index.js +136 -206
- package/cjs/tabs/style/css/index.js +0 -1
- package/cjs/tabs/style/index.js +0 -1
- package/cjs/tabs/tab-cell-underline.js +28 -76
- package/cjs/tabs/tab-cell.js +73 -128
- package/cjs/tabs/tab-pane.js +53 -103
- package/cjs/tag/index.js +1 -8
- package/cjs/tag/list.js +11 -26
- package/cjs/tag/style/css/index.js +0 -1
- package/cjs/tag/style/index.js +0 -1
- package/cjs/tag/tag.js +20 -32
- package/cjs/textarea/index.js +35 -56
- package/cjs/textarea/style/css/index.js +0 -2
- package/cjs/textarea/style/index.js +0 -2
- package/cjs/toast/index.js +26 -61
- package/cjs/toast/methods.js +2 -16
- package/cjs/toast/style/css/index.js +0 -3
- package/cjs/toast/style/index.js +0 -3
- package/cjs/transition/index.js +17 -29
- package/cjs/transition/style/css/index.js +0 -1
- package/cjs/transition/style/index.js +0 -1
- package/cjs/uploader/index.d.ts +1 -1
- package/cjs/uploader/index.js +28 -49
- package/cjs/uploader/style/css/index.js +0 -3
- package/cjs/uploader/style/index.js +0 -3
- package/cjs/uploader/upload/index.js +0 -4
- package/cjs/uploader/upload/upload.js +9 -45
- package/dist/index.js +3838 -6455
- package/dist/index.min.js +2 -2
- package/esm/_helpers/hooks.js +59 -123
- package/esm/_helpers/index.js +4 -6
- package/esm/_helpers/react-dom.js +0 -11
- package/esm/_helpers/render.js +5 -15
- package/esm/action-sheet/index.js +10 -16
- package/esm/avatar/group.js +12 -16
- package/esm/avatar/index.js +53 -64
- package/esm/badge/index.js +18 -22
- package/esm/button/hooks.js +15 -18
- package/esm/button/index.js +46 -57
- package/esm/carousel/index.js +153 -280
- package/esm/cell/cell.js +18 -25
- package/esm/cell/group.js +9 -11
- package/esm/cell/index.js +1 -1
- package/esm/checkbox/checkbox.js +31 -42
- package/esm/checkbox/group.js +24 -28
- package/esm/checkbox/hooks/useMergeProps.js +7 -9
- package/esm/checkbox/index.js +2 -2
- package/esm/checkbox/type.js +0 -1
- package/esm/circle-progress/index.js +37 -49
- package/esm/collapse/collapse.js +30 -51
- package/esm/collapse/group.js +20 -34
- package/esm/collapse/index.js +1 -1
- package/esm/collapse/utils.js +0 -1
- package/esm/context-provider/index.js +18 -33
- package/esm/count-down/hooks.js +24 -37
- package/esm/count-down/index.js +30 -29
- package/esm/count-down/singleton.js +2 -5
- package/esm/count-down/util.js +33 -42
- package/esm/date-picker/helper.js +7 -9
- package/esm/date-picker/index.js +66 -155
- package/esm/dialog/index.js +31 -42
- package/esm/dialog/methods.js +9 -11
- package/esm/divider/index.js +8 -12
- package/esm/dropdown/dropdown.js +74 -102
- package/esm/dropdown/index.js +1 -1
- package/esm/dropdown/options.js +12 -20
- package/esm/dropdown-menu/dropdown-menu.js +49 -74
- package/esm/dropdown-menu/helper.js +4 -14
- package/esm/dropdown-menu/index.js +1 -1
- package/esm/ellipsis/components/js-ellipsis.js +32 -60
- package/esm/ellipsis/components/native-ellipsis.js +9 -11
- package/esm/ellipsis/index.js +20 -21
- package/esm/ellipsis/utils/dom.js +0 -7
- package/esm/ellipsis/utils/is.js +1 -1
- package/esm/form/form-item.js +74 -147
- package/esm/form/index.js +18 -23
- package/esm/form/linked-container.js +5 -14
- package/esm/form/type.d.ts +11 -1
- package/esm/form/type.js +0 -5
- package/esm/form/useForm.js +10 -74
- package/esm/form/utils.js +4 -11
- package/esm/grid/index.js +22 -38
- package/esm/icon/IconAdd/index.js +5 -6
- package/esm/icon/IconArrowBack/index.js +5 -6
- package/esm/icon/IconArrowDown/index.js +5 -6
- package/esm/icon/IconArrowIn/index.js +5 -6
- package/esm/icon/IconArrowUp/index.js +5 -6
- package/esm/icon/IconCheck/index.js +5 -6
- package/esm/icon/IconCheckBold/index.js +5 -6
- package/esm/icon/IconCircleChecked/index.js +5 -6
- package/esm/icon/IconCircleDisabled/index.js +5 -6
- package/esm/icon/IconCircleUnchecked/index.js +5 -6
- package/esm/icon/IconClear/index.js +5 -6
- package/esm/icon/IconClose/index.js +5 -6
- package/esm/icon/IconCloseBold/index.js +5 -6
- package/esm/icon/IconDelete/index.js +5 -6
- package/esm/icon/IconDownload/index.js +5 -6
- package/esm/icon/IconEdit/index.js +5 -6
- package/esm/icon/IconErrorCircle/index.js +5 -6
- package/esm/icon/IconEyeInvisible/index.js +5 -6
- package/esm/icon/IconEyeVisible/index.js +5 -6
- package/esm/icon/IconEyelashInvisible/index.js +5 -6
- package/esm/icon/IconFile/index.js +5 -6
- package/esm/icon/IconGift/index.js +5 -6
- package/esm/icon/IconHeart/index.js +5 -6
- package/esm/icon/IconHome/index.js +5 -6
- package/esm/icon/IconKeyboard/index.js +5 -6
- package/esm/icon/IconKeyboardDelete/index.js +5 -6
- package/esm/icon/IconLikeCircle/index.js +5 -6
- package/esm/icon/IconMinus/index.js +5 -6
- package/esm/icon/IconMore/index.js +5 -6
- package/esm/icon/IconNotice/index.js +5 -6
- package/esm/icon/IconNoticeOff/index.js +5 -6
- package/esm/icon/IconPicture/index.js +5 -6
- package/esm/icon/IconPlay/index.js +5 -6
- package/esm/icon/IconQuestionCircle/index.js +5 -6
- package/esm/icon/IconRefresh/index.js +5 -6
- package/esm/icon/IconSad/index.js +5 -6
- package/esm/icon/IconScan/index.js +5 -6
- package/esm/icon/IconSearch/index.js +5 -6
- package/esm/icon/IconSetting/index.js +5 -6
- package/esm/icon/IconShop/index.js +5 -6
- package/esm/icon/IconShopping/index.js +5 -6
- package/esm/icon/IconSmileFill/index.js +5 -6
- package/esm/icon/IconSound/index.js +5 -6
- package/esm/icon/IconSquareChecked/index.js +5 -6
- package/esm/icon/IconSquareDisabled/index.js +5 -6
- package/esm/icon/IconSquareUnchecked/index.js +5 -6
- package/esm/icon/IconStar/index.js +5 -6
- package/esm/icon/IconStarFill/index.js +5 -6
- package/esm/icon/IconStarHalf/index.js +5 -6
- package/esm/icon/IconSubway/index.js +5 -6
- package/esm/icon/IconSuccessCircle/index.js +5 -6
- package/esm/icon/IconTriDown/index.js +5 -6
- package/esm/icon/IconTriUp/index.js +5 -6
- package/esm/icon/IconUpload/index.js +5 -6
- package/esm/icon/IconUser/index.js +5 -6
- package/esm/icon/IconUserFill/index.js +5 -6
- package/esm/icon/IconWarnCircle/index.js +5 -6
- package/esm/icon/IconWarnCircleFill/index.js +5 -6
- package/esm/image/index.js +53 -85
- package/esm/image-picker/index.js +32 -42
- package/esm/image-preview/index.js +129 -232
- package/esm/image-preview/methods.js +5 -14
- package/esm/index-bar/group.js +16 -25
- package/esm/index-bar/index.js +55 -74
- package/esm/index-bar/side-bar.js +15 -28
- package/esm/index-bar/utils.js +3 -10
- package/esm/input/hooks.js +45 -75
- package/esm/input/index.js +26 -30
- package/esm/keyboard/index.js +40 -63
- package/esm/load-more/index.js +33 -57
- package/esm/loading/index.js +19 -40
- package/esm/masking/index.js +47 -65
- package/esm/masking/methods.js +5 -16
- package/esm/nav-bar/back-icon.js +2 -4
- package/esm/nav-bar/index.js +37 -52
- package/esm/notice-bar/index.js +34 -53
- package/esm/notify/index.js +20 -33
- package/esm/notify/methods.js +2 -13
- package/esm/pagination/index.js +27 -50
- package/esm/picker/index.js +48 -69
- package/esm/picker-view/components/cascader.js +13 -24
- package/esm/picker-view/components/multi-picker.js +8 -14
- package/esm/picker-view/components/picker-cell.js +45 -93
- package/esm/picker-view/index.js +30 -60
- package/esm/popover/hooks/useEvent.js +26 -41
- package/esm/popover/hooks/usePosition.js +100 -152
- package/esm/popover/index.js +2 -2
- package/esm/popover/menu.js +32 -41
- package/esm/popover/popover-inner.js +30 -39
- package/esm/popover/popover.js +69 -90
- package/esm/popup/index.js +22 -25
- package/esm/popup-swiper/index.js +50 -76
- package/esm/portal/index.js +3 -5
- package/esm/progress/index.js +27 -36
- package/esm/pull-refresh/android-pull-refresh.js +56 -83
- package/esm/pull-refresh/hooks.js +11 -23
- package/esm/pull-refresh/index.js +3 -5
- package/esm/pull-refresh/ios-pull-refresh.js +53 -68
- package/esm/pull-refresh/model.js +0 -1
- package/esm/radio/group.js +20 -24
- package/esm/radio/index.js +2 -2
- package/esm/rate/index.js +28 -43
- package/esm/search-bar/association.js +14 -27
- package/esm/search-bar/cancel-button.js +8 -11
- package/esm/search-bar/highlight.js +14 -20
- package/esm/search-bar/index.js +77 -86
- package/esm/show-monitor/index.js +40 -100
- package/esm/skeleton/elements.js +47 -75
- package/esm/skeleton/index.js +18 -24
- package/esm/slider/hooks/useSliderEvents.js +27 -54
- package/esm/slider/hooks/useSliderIcon.js +6 -13
- package/esm/slider/hooks/useSliderInit.js +32 -46
- package/esm/slider/hooks/useSliderStyle.js +13 -22
- package/esm/slider/index.js +47 -63
- package/esm/slider/marks.js +13 -19
- package/esm/slider/popover.js +4 -6
- package/esm/slider/thumb.js +11 -16
- package/esm/stepper/hooks/useButtonClick.js +15 -24
- package/esm/stepper/hooks/useInputEvent.js +10 -17
- package/esm/stepper/hooks/useValue.js +9 -12
- package/esm/stepper/index.js +84 -84
- package/esm/steps/index.js +25 -30
- package/esm/steps/step.js +10 -19
- package/esm/sticky/index.js +40 -65
- package/esm/swipe-action/index.js +40 -80
- package/esm/swipe-action/item.js +9 -12
- package/esm/swipe-load/index.js +79 -104
- package/esm/switch/index.js +28 -41
- package/esm/tab-bar/index.js +0 -1
- package/esm/tab-bar/item.js +6 -13
- package/esm/tab-bar/tab-bar.js +16 -22
- package/esm/tabs/index.js +137 -194
- package/esm/tabs/tab-cell-underline.js +28 -67
- package/esm/tabs/tab-cell.js +73 -118
- package/esm/tabs/tab-pane.js +53 -95
- package/esm/tag/index.js +2 -2
- package/esm/tag/list.js +11 -16
- package/esm/tag/tag.js +20 -22
- package/esm/textarea/index.js +35 -46
- package/esm/toast/index.js +26 -42
- package/esm/toast/methods.js +2 -12
- package/esm/transition/index.js +17 -20
- package/esm/uploader/index.d.ts +1 -1
- package/esm/uploader/index.js +28 -34
- package/esm/uploader/upload/upload.js +9 -38
- package/esnext/form/form-item.js +12 -7
- package/esnext/form/type.d.ts +11 -1
- package/esnext/uploader/index.d.ts +1 -1
- package/esnext/uploader/index.js +1 -1
- package/esnext/uploader/upload/upload.js +1 -1
- package/package.json +5 -3
- package/tokens/app/arcodesign/default/index.js +0 -2
- package/umd/_helpers/hooks.js +59 -138
- package/umd/_helpers/index.js +2 -9
- package/umd/_helpers/react-dom.js +0 -13
- package/umd/_helpers/render.js +5 -17
- package/umd/action-sheet/index.js +10 -22
- package/umd/action-sheet/methods.js +0 -1
- package/umd/avatar/group.js +12 -20
- package/umd/avatar/index.js +53 -70
- package/umd/badge/index.js +18 -25
- package/umd/button/hooks.js +15 -19
- package/umd/button/index.js +46 -60
- package/umd/carousel/index.js +153 -283
- package/umd/cell/arrow.js +0 -2
- package/umd/cell/cell.js +18 -29
- package/umd/cell/group.js +9 -17
- package/umd/cell/index.js +1 -2
- package/umd/checkbox/checkbox.js +31 -45
- package/umd/checkbox/group.js +24 -34
- package/umd/checkbox/hooks/useMergeProps.js +7 -12
- package/umd/checkbox/index.js +1 -3
- package/umd/checkbox/type.js +0 -2
- package/umd/circle-progress/index.js +37 -52
- package/umd/collapse/collapse.js +30 -55
- package/umd/collapse/group.js +20 -38
- package/umd/collapse/index.js +0 -3
- package/umd/collapse/utils.js +0 -5
- package/umd/context-provider/index.js +18 -38
- package/umd/count-down/hooks.js +24 -39
- package/umd/count-down/index.js +29 -31
- package/umd/count-down/singleton.js +2 -10
- package/umd/count-down/util.js +33 -47
- package/umd/date-picker/helper.js +7 -13
- package/umd/date-picker/index.js +66 -158
- package/umd/dialog/index.js +31 -47
- package/umd/dialog/methods.js +9 -18
- package/umd/divider/index.js +8 -15
- package/umd/dropdown/dropdown.js +74 -106
- package/umd/dropdown/index.js +1 -3
- package/umd/dropdown/options.js +12 -24
- package/umd/dropdown-menu/dropdown-menu.js +49 -78
- package/umd/dropdown-menu/helper.js +4 -22
- package/umd/dropdown-menu/index.js +0 -2
- package/umd/ellipsis/components/js-ellipsis.js +32 -66
- package/umd/ellipsis/components/native-ellipsis.js +9 -12
- package/umd/ellipsis/index.js +19 -24
- package/umd/ellipsis/utils/dom.js +0 -8
- package/umd/ellipsis/utils/is.js +1 -5
- package/umd/form/form-item-context.js +0 -3
- package/umd/form/form-item.js +74 -151
- package/umd/form/index.js +18 -28
- package/umd/form/linked-container.js +5 -19
- package/umd/form/type.d.ts +11 -1
- package/umd/form/type.js +0 -5
- package/umd/form/useForm.js +10 -74
- package/umd/form/utils.js +4 -19
- package/umd/grid/index.js +22 -41
- package/umd/icon/IconAdd/index.js +5 -7
- package/umd/icon/IconArrowBack/index.js +5 -7
- package/umd/icon/IconArrowDown/index.js +5 -7
- package/umd/icon/IconArrowIn/index.js +5 -7
- package/umd/icon/IconArrowUp/index.js +5 -7
- package/umd/icon/IconCheck/index.js +5 -7
- package/umd/icon/IconCheckBold/index.js +5 -7
- package/umd/icon/IconCircleChecked/index.js +5 -7
- package/umd/icon/IconCircleDisabled/index.js +5 -7
- package/umd/icon/IconCircleUnchecked/index.js +5 -7
- package/umd/icon/IconClear/index.js +5 -7
- package/umd/icon/IconClose/index.js +5 -7
- package/umd/icon/IconCloseBold/index.js +5 -7
- package/umd/icon/IconDelete/index.js +5 -7
- package/umd/icon/IconDownload/index.js +5 -7
- package/umd/icon/IconEdit/index.js +5 -7
- package/umd/icon/IconErrorCircle/index.js +5 -7
- package/umd/icon/IconEyeInvisible/index.js +5 -7
- package/umd/icon/IconEyeVisible/index.js +5 -7
- package/umd/icon/IconEyelashInvisible/index.js +5 -7
- package/umd/icon/IconFile/index.js +5 -7
- package/umd/icon/IconGift/index.js +5 -7
- package/umd/icon/IconHeart/index.js +5 -7
- package/umd/icon/IconHome/index.js +5 -7
- package/umd/icon/IconKeyboard/index.js +5 -7
- package/umd/icon/IconKeyboardDelete/index.js +5 -7
- package/umd/icon/IconLikeCircle/index.js +5 -7
- package/umd/icon/IconMinus/index.js +5 -7
- package/umd/icon/IconMore/index.js +5 -7
- package/umd/icon/IconNotice/index.js +5 -7
- package/umd/icon/IconNoticeOff/index.js +5 -7
- package/umd/icon/IconPicture/index.js +5 -7
- package/umd/icon/IconPlay/index.js +5 -7
- package/umd/icon/IconQuestionCircle/index.js +5 -7
- package/umd/icon/IconRefresh/index.js +5 -7
- package/umd/icon/IconSad/index.js +5 -7
- package/umd/icon/IconScan/index.js +5 -7
- package/umd/icon/IconSearch/index.js +5 -7
- package/umd/icon/IconSetting/index.js +5 -7
- package/umd/icon/IconShop/index.js +5 -7
- package/umd/icon/IconShopping/index.js +5 -7
- package/umd/icon/IconSmileFill/index.js +5 -7
- package/umd/icon/IconSound/index.js +5 -7
- package/umd/icon/IconSquareChecked/index.js +5 -7
- package/umd/icon/IconSquareDisabled/index.js +5 -7
- package/umd/icon/IconSquareUnchecked/index.js +5 -7
- package/umd/icon/IconStar/index.js +5 -7
- package/umd/icon/IconStarFill/index.js +5 -7
- package/umd/icon/IconStarHalf/index.js +5 -7
- package/umd/icon/IconSubway/index.js +5 -7
- package/umd/icon/IconSuccessCircle/index.js +5 -7
- package/umd/icon/IconTriDown/index.js +5 -7
- package/umd/icon/IconTriUp/index.js +5 -7
- package/umd/icon/IconUpload/index.js +5 -7
- package/umd/icon/IconUser/index.js +5 -7
- package/umd/icon/IconUserFill/index.js +5 -7
- package/umd/icon/IconWarnCircle/index.js +5 -7
- package/umd/icon/IconWarnCircleFill/index.js +5 -7
- package/umd/icon/index.js +0 -1
- package/umd/image/index.js +53 -88
- package/umd/image-picker/add-icon.js +0 -2
- package/umd/image-picker/index.js +32 -47
- package/umd/image-preview/index.js +129 -239
- package/umd/image-preview/methods.js +5 -15
- package/umd/index-bar/group.js +16 -30
- package/umd/index-bar/index.js +55 -79
- package/umd/index-bar/side-bar.js +15 -32
- package/umd/index-bar/utils.js +3 -16
- package/umd/index.js +0 -1
- package/umd/input/hooks.js +45 -79
- package/umd/input/index.js +26 -35
- package/umd/keyboard/index.js +37 -64
- package/umd/load-more/index.js +33 -60
- package/umd/loading/index.js +19 -43
- package/umd/masking/index.js +47 -72
- package/umd/masking/methods.js +5 -18
- package/umd/nav-bar/back-icon.js +2 -5
- package/umd/nav-bar/index.js +37 -55
- package/umd/notice-bar/index.js +34 -56
- package/umd/notify/index.js +20 -40
- package/umd/notify/methods.js +2 -14
- package/umd/pagination/arrow.js +0 -2
- package/umd/pagination/index.js +27 -53
- package/umd/picker/index.js +48 -73
- package/umd/picker-view/components/cascader.js +13 -28
- package/umd/picker-view/components/multi-picker.js +8 -16
- package/umd/picker-view/components/picker-cell.js +45 -97
- package/umd/picker-view/index.js +30 -63
- package/umd/popover/hooks/useEvent.js +25 -44
- package/umd/popover/hooks/usePosition.js +100 -153
- package/umd/popover/index.js +1 -3
- package/umd/popover/menu.js +32 -45
- package/umd/popover/popover-inner.js +30 -43
- package/umd/popover/popover.js +69 -94
- package/umd/popup/index.js +22 -31
- package/umd/popup/methods.js +0 -1
- package/umd/popup-swiper/index.js +50 -83
- package/umd/popup-swiper/methods.js +0 -1
- package/umd/portal/index.js +3 -6
- package/umd/progress/index.js +27 -39
- package/umd/pull-refresh/android-pull-refresh.js +56 -86
- package/umd/pull-refresh/hooks.js +11 -29
- package/umd/pull-refresh/index.js +3 -7
- package/umd/pull-refresh/ios-pull-refresh.js +53 -72
- package/umd/pull-refresh/model.js +0 -1
- package/umd/radio/group.js +20 -30
- package/umd/radio/index.js +1 -3
- package/umd/radio/radio.js +0 -5
- package/umd/rate/index.js +28 -48
- package/umd/search-bar/association.js +14 -29
- package/umd/search-bar/cancel-button.js +8 -14
- package/umd/search-bar/highlight.js +14 -21
- package/umd/search-bar/index.js +77 -87
- package/umd/show-monitor/index.js +40 -104
- package/umd/skeleton/elements.js +47 -78
- package/umd/skeleton/index.js +18 -28
- package/umd/skeleton/skeleton-context.js +0 -3
- package/umd/slider/hooks/index.js +0 -4
- package/umd/slider/hooks/useSliderEvents.js +27 -55
- package/umd/slider/hooks/useSliderIcon.js +6 -17
- package/umd/slider/hooks/useSliderInit.js +32 -50
- package/umd/slider/hooks/useSliderStyle.js +13 -24
- package/umd/slider/index.js +47 -66
- package/umd/slider/marks.js +13 -22
- package/umd/slider/popover.js +4 -10
- package/umd/slider/thumb.js +11 -18
- package/umd/stepper/hooks/useButtonClick.js +15 -24
- package/umd/stepper/hooks/useInputEvent.js +10 -18
- package/umd/stepper/hooks/useValue.js +9 -13
- package/umd/stepper/index.js +84 -89
- package/umd/steps/index.js +25 -35
- package/umd/steps/step.js +10 -22
- package/umd/sticky/index.js +40 -68
- package/umd/style.js +1 -1
- package/umd/swipe-action/index.js +40 -84
- package/umd/swipe-action/item.js +9 -14
- package/umd/swipe-load/index.js +78 -106
- package/umd/switch/index.js +28 -45
- package/umd/tab-bar/index.js +0 -2
- package/umd/tab-bar/item.js +6 -19
- package/umd/tab-bar/tab-bar.js +16 -27
- package/umd/tabs/index.js +136 -197
- package/umd/tabs/tab-cell-underline.js +28 -71
- package/umd/tabs/tab-cell.js +73 -122
- package/umd/tabs/tab-pane.js +53 -98
- package/umd/tag/index.js +1 -3
- package/umd/tag/list.js +11 -20
- package/umd/tag/tag.js +20 -26
- package/umd/textarea/index.js +35 -51
- package/umd/toast/index.js +26 -49
- package/umd/toast/methods.js +2 -13
- package/umd/transition/index.js +16 -22
- package/umd/uploader/index.d.ts +1 -1
- package/umd/uploader/index.js +28 -39
- package/umd/uploader/upload/upload.js +9 -43
package/cjs/tabs/style/index.js
CHANGED
|
@@ -1,63 +1,49 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
4
|
exports.__esModule = true;
|
|
6
5
|
exports.default = void 0;
|
|
7
|
-
|
|
8
6
|
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
9
|
-
|
|
10
7
|
var _react = _interopRequireWildcard(require("react"));
|
|
11
|
-
|
|
12
8
|
var _mobileUtils = require("@arco-design/mobile-utils");
|
|
13
|
-
|
|
14
9
|
var _helpers = require("../_helpers");
|
|
15
|
-
|
|
16
10
|
var _contextProvider = require("../context-provider");
|
|
17
|
-
|
|
18
11
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
19
|
-
|
|
20
12
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
21
|
-
|
|
22
13
|
var TabCellUnderline = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
23
14
|
var prefix = props.prefix,
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
15
|
+
useCaterpillar = props.useCaterpillar,
|
|
16
|
+
distance = props.distance,
|
|
17
|
+
tabDirection = props.tabDirection,
|
|
18
|
+
underlineInnerStyle = props.underlineInnerStyle,
|
|
19
|
+
duration = props.duration,
|
|
20
|
+
cellTrans = props.cellTrans,
|
|
21
|
+
showLine = props.showLine,
|
|
22
|
+
activeIndex = props.activeIndex,
|
|
23
|
+
wrapWidth = props.wrapWidth,
|
|
24
|
+
wrapHeight = props.wrapHeight,
|
|
25
|
+
jumpingDis = props.jumpingDis,
|
|
26
|
+
translateZ = props.translateZ,
|
|
27
|
+
caterpillarMaxScale = props.caterpillarMaxScale,
|
|
28
|
+
caterpillarProperty = props.caterpillarProperty,
|
|
29
|
+
underlineSize = props.underlineSize,
|
|
30
|
+
underlineThick = props.underlineThick,
|
|
31
|
+
underlineAdaptive = props.underlineAdaptive,
|
|
32
|
+
renderUnderline = props.renderUnderline,
|
|
33
|
+
getTabRect = props.getTabRect,
|
|
34
|
+
getTabCenterLeft = props.getTabCenterLeft;
|
|
45
35
|
var _useContext = (0, _react.useContext)(_contextProvider.GlobalContext),
|
|
46
|
-
|
|
47
|
-
|
|
36
|
+
useRtl = _useContext.useRtl;
|
|
48
37
|
var _useState = (0, _react.useState)({}),
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
38
|
+
underlineStyle = _useState[0],
|
|
39
|
+
setUnderlineStyle = _useState[1];
|
|
52
40
|
var _useRefState = (0, _helpers.useRefState)(false),
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
41
|
+
caterpillar = _useRefState[0],
|
|
42
|
+
caterpillarRef = _useRefState[1],
|
|
43
|
+
setCaterpillar = _useRefState[2];
|
|
57
44
|
var _useState2 = (0, _react.useState)(0),
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
45
|
+
caterpillarDelay = _useState2[0],
|
|
46
|
+
setCaterpillarDelay = _useState2[1];
|
|
61
47
|
var lineRef = (0, _react.useRef)(null);
|
|
62
48
|
var timeRef = (0, _react.useRef)(0);
|
|
63
49
|
var system = (0, _helpers.useSystem)();
|
|
@@ -75,30 +61,24 @@ var TabCellUnderline = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref)
|
|
|
75
61
|
if (!useCaterpillar) {
|
|
76
62
|
return '';
|
|
77
63
|
}
|
|
78
|
-
|
|
79
64
|
if (caterpillarProperty === 'size') {
|
|
80
65
|
return "tabsCaterpillar" + (isVertical ? 'W' : 'H') + maxScaleWithDefault;
|
|
81
66
|
}
|
|
82
|
-
|
|
83
67
|
if (caterpillarMaxScale) {
|
|
84
68
|
return "tabsCaterpillar" + (isVertical ? 'X' : 'Y') + caterpillarMaxScale;
|
|
85
69
|
}
|
|
86
|
-
|
|
87
70
|
return '';
|
|
88
71
|
}, [useCaterpillar, isVertical, caterpillarMaxScale, caterpillarProperty]);
|
|
89
72
|
(0, _react.useEffect)(function () {
|
|
90
73
|
if (!animationKey) {
|
|
91
74
|
return;
|
|
92
75
|
}
|
|
93
|
-
|
|
94
76
|
var dir = isVertical ? 'X' : 'Y';
|
|
95
|
-
|
|
96
77
|
if (caterpillarProperty === 'size') {
|
|
97
78
|
var attr = isVertical ? 'width' : 'height';
|
|
98
79
|
(0, _mobileUtils.addCssKeyframes)(animationKey, "{\n 0% {\n " + attr + ": 100%;\n }\n 50% {\n " + attr + ": " + 100 * maxScaleWithDefault + "%;\n }\n 100% {\n " + attr + ": 100%;\n }\n }");
|
|
99
80
|
return;
|
|
100
81
|
}
|
|
101
|
-
|
|
102
82
|
(0, _mobileUtils.addCssKeyframes)(animationKey, "{\n 0% {\n transform: scale" + dir + "(1)" + translateZStr + ";\n -webkit-transform: scale" + dir + "(1)" + translateZStr + ";\n }\n 50% {\n transform: scale" + dir + "(" + caterpillarMaxScale + ")" + translateZStr + ";\n -webkit-transform: scale" + dir + "(" + caterpillarMaxScale + ")" + translateZStr + ";\n }\n 100% {\n transform: scale" + dir + "(1)" + translateZStr + ";\n -webkit-transform: scale" + dir + "(1)" + translateZStr + ";\n }\n }");
|
|
103
83
|
return function () {
|
|
104
84
|
(0, _mobileUtils.removeCssStyleDom)(animationKey);
|
|
@@ -113,54 +93,41 @@ var TabCellUnderline = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref)
|
|
|
113
93
|
(0, _react.useEffect)(function () {
|
|
114
94
|
resetUnderlineStyle();
|
|
115
95
|
}, [useCaterpillar, caterpillar, cellTrans, duration, tabDirection, wrapWidth, wrapHeight, distance, animationKey, caterpillarDelay, underlineSize, underlineThick, underlineAdaptive]);
|
|
116
|
-
|
|
117
96
|
function getLineWidth(index) {
|
|
118
97
|
var _lineRef$current, _lineRef$current2;
|
|
119
|
-
|
|
120
98
|
if (underlineAdaptive) {
|
|
121
99
|
return getTabRect(index).width;
|
|
122
100
|
}
|
|
123
|
-
|
|
124
101
|
var offsetSize = isVertical ? (_lineRef$current = lineRef.current) == null ? void 0 : _lineRef$current.offsetWidth : (_lineRef$current2 = lineRef.current) == null ? void 0 : _lineRef$current2.offsetHeight;
|
|
125
102
|
var lineWidth = offsetSize || 0;
|
|
126
103
|
return lineWidth;
|
|
127
104
|
}
|
|
128
|
-
|
|
129
105
|
function getLineLeft(index) {
|
|
130
106
|
if (underlineAdaptive) {
|
|
131
107
|
return getTabRect(index).left;
|
|
132
108
|
}
|
|
133
|
-
|
|
134
109
|
var lineWidth = getLineWidth(index);
|
|
135
110
|
return getTabCenterLeft(index) - lineWidth / 2;
|
|
136
111
|
}
|
|
137
|
-
|
|
138
112
|
function getDescIndex() {
|
|
139
113
|
var comparedDis = distance * rtlRatio;
|
|
140
|
-
|
|
141
114
|
if (comparedDis > 0) {
|
|
142
115
|
return activeIndex - 1;
|
|
143
116
|
}
|
|
144
|
-
|
|
145
117
|
if (comparedDis < 0) {
|
|
146
118
|
return activeIndex + 1;
|
|
147
119
|
}
|
|
148
|
-
|
|
149
120
|
return activeIndex;
|
|
150
121
|
}
|
|
151
|
-
|
|
152
122
|
function getLineScale(ratio) {
|
|
153
123
|
var absRatio = Math.abs(ratio);
|
|
154
124
|
return absRatio > 0.5 ? (1 - absRatio) * 2 * (maxScaleWithDefault - 1) + 1 : absRatio * 2 * (maxScaleWithDefault - 1) + 1;
|
|
155
125
|
}
|
|
156
|
-
|
|
157
126
|
function getLineStyle() {
|
|
158
127
|
var _ref;
|
|
159
|
-
|
|
160
128
|
if (!lineRef.current) {
|
|
161
129
|
return {};
|
|
162
130
|
}
|
|
163
|
-
|
|
164
131
|
var currentLeft = getLineLeft(activeIndex);
|
|
165
132
|
var descIndex = getDescIndex();
|
|
166
133
|
var descLeft = getLineLeft(descIndex);
|
|
@@ -173,10 +140,8 @@ var TabCellUnderline = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref)
|
|
|
173
140
|
} : {};
|
|
174
141
|
var adaptiveStyle = {};
|
|
175
142
|
var adaptiveOuterStyle = {};
|
|
176
|
-
|
|
177
143
|
if (underlineAdaptive) {
|
|
178
144
|
var _adaptiveStyle;
|
|
179
|
-
|
|
180
145
|
var currentWidth = getLineWidth(activeIndex);
|
|
181
146
|
var descWidth = getLineWidth(descIndex);
|
|
182
147
|
var widthOffset = moveRatio * (currentWidth - descWidth);
|
|
@@ -187,7 +152,6 @@ var TabCellUnderline = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref)
|
|
|
187
152
|
height: 'auto'
|
|
188
153
|
};
|
|
189
154
|
}
|
|
190
|
-
|
|
191
155
|
var outerSize = isVertical ? {
|
|
192
156
|
width: underlineSize,
|
|
193
157
|
height: underlineThick
|
|
@@ -202,24 +166,19 @@ var TabCellUnderline = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref)
|
|
|
202
166
|
inner: (0, _extends2.default)({}, transStyle, adaptiveStyle)
|
|
203
167
|
};
|
|
204
168
|
}
|
|
205
|
-
|
|
206
169
|
function getUnderlineStyle() {
|
|
207
170
|
var transStyle = {};
|
|
208
|
-
|
|
209
171
|
if (!underlineAdaptive) {
|
|
210
172
|
if (useCaterpillar) {
|
|
211
173
|
transStyle.animationDuration = duration + "ms";
|
|
212
174
|
}
|
|
213
|
-
|
|
214
175
|
if (caterpillarRef.current && animationKey) {
|
|
215
176
|
transStyle.animationName = animationKey;
|
|
216
177
|
}
|
|
217
|
-
|
|
218
178
|
if (caterpillarDelay) {
|
|
219
179
|
transStyle.animationDelay = "-" + caterpillarDelay + "ms";
|
|
220
180
|
}
|
|
221
181
|
}
|
|
222
|
-
|
|
223
182
|
var lineStyle = getLineStyle();
|
|
224
183
|
return {
|
|
225
184
|
outer: (0, _helpers.getStyleWithVendor)((0, _extends2.default)({
|
|
@@ -228,36 +187,29 @@ var TabCellUnderline = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref)
|
|
|
228
187
|
inner: (0, _helpers.getStyleWithVendor)((0, _extends2.default)({}, transStyle, lineStyle.inner || {}))
|
|
229
188
|
};
|
|
230
189
|
}
|
|
231
|
-
|
|
232
190
|
function resetUnderlineStyle() {
|
|
233
191
|
setUnderlineStyle(getUnderlineStyle());
|
|
234
192
|
}
|
|
235
|
-
|
|
236
193
|
function setCaterpillarAnimate(movedRatio) {
|
|
237
194
|
if (movedRatio === void 0) {
|
|
238
195
|
movedRatio = 0;
|
|
239
196
|
}
|
|
240
|
-
|
|
241
197
|
if (!duration) {
|
|
242
198
|
return;
|
|
243
199
|
}
|
|
244
|
-
|
|
245
200
|
var movedTime = (duration || 0) * Math.abs(movedRatio);
|
|
246
201
|
setCaterpillarDelay(movedTime);
|
|
247
202
|
(0, _mobileUtils.nextTick)(function () {
|
|
248
203
|
setCaterpillar(true);
|
|
249
204
|
});
|
|
250
|
-
|
|
251
205
|
if (timeRef.current) {
|
|
252
206
|
clearTimeout(timeRef.current);
|
|
253
207
|
}
|
|
254
|
-
|
|
255
208
|
timeRef.current = window.setTimeout(function () {
|
|
256
209
|
setCaterpillar(false);
|
|
257
210
|
setCaterpillarDelay(0);
|
|
258
211
|
}, (duration || 0) - movedTime + 20);
|
|
259
212
|
}
|
|
260
|
-
|
|
261
213
|
return renderUnderline ? /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, renderUnderline(underlineStyle, showLine, lineRef)) : /*#__PURE__*/_react.default.createElement("div", {
|
|
262
214
|
className: (0, _mobileUtils.cls)(prefix + "-underline", {
|
|
263
215
|
show: showLine
|
package/cjs/tabs/tab-cell.js
CHANGED
|
@@ -1,109 +1,91 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
4
|
exports.__esModule = true;
|
|
6
5
|
exports.default = void 0;
|
|
7
|
-
|
|
8
6
|
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
9
|
-
|
|
10
7
|
var _react = _interopRequireWildcard(require("react"));
|
|
11
|
-
|
|
12
8
|
var _mobileUtils = require("@arco-design/mobile-utils");
|
|
13
|
-
|
|
14
9
|
var _helpers = require("../_helpers");
|
|
15
|
-
|
|
16
10
|
var _tabCellUnderline = _interopRequireDefault(require("./tab-cell-underline"));
|
|
17
|
-
|
|
18
11
|
var _contextProvider = require("../context-provider");
|
|
19
|
-
|
|
20
12
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
21
|
-
|
|
22
13
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
23
|
-
|
|
24
14
|
var TabCell = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
25
15
|
var tabs = props.tabs,
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
16
|
+
prefixCls = props.prefixCls,
|
|
17
|
+
activeIndex = props.activeIndex,
|
|
18
|
+
activeIndexRef = props.activeIndexRef,
|
|
19
|
+
tabDirection = props.tabDirection,
|
|
20
|
+
type = props.type,
|
|
21
|
+
onTabClick = props.onTabClick,
|
|
22
|
+
changeIndex = props.changeIndex,
|
|
23
|
+
tabBarPosition = props.tabBarPosition,
|
|
24
|
+
tabBarArrange = props.tabBarArrange,
|
|
25
|
+
tabBarScroll = props.tabBarScroll,
|
|
26
|
+
tabBarFixed = props.tabBarFixed,
|
|
27
|
+
renderUnderline = props.renderUnderline,
|
|
28
|
+
duration = props.duration,
|
|
29
|
+
transitionDuration = props.transitionDuration,
|
|
30
|
+
useCaterpillar = props.useCaterpillar,
|
|
31
|
+
wrapWidth = props.wrapWidth,
|
|
32
|
+
wrapHeight = props.wrapHeight,
|
|
33
|
+
cellTrans = props.cellTrans,
|
|
34
|
+
distance = props.distance,
|
|
35
|
+
jumpingDis = props.jumpingDis,
|
|
36
|
+
tabBarExtra = props.tabBarExtra,
|
|
37
|
+
onTabBarOverflowChange = props.onTabBarOverflowChange,
|
|
38
|
+
tabBarGutter = props.tabBarGutter,
|
|
39
|
+
tabBarPadding = props.tabBarPadding,
|
|
40
|
+
underlineSize = props.underlineSize,
|
|
41
|
+
underlineThick = props.underlineThick,
|
|
42
|
+
underlineInnerStyle = props.underlineInnerStyle,
|
|
43
|
+
caterpillarMaxScale = props.caterpillarMaxScale,
|
|
44
|
+
caterpillarProperty = props.caterpillarProperty,
|
|
45
|
+
onTabBarScroll = props.onTabBarScroll,
|
|
46
|
+
hideTabBarBeforeMounted = props.hideTabBarBeforeMounted,
|
|
47
|
+
_props$overflowThresh = props.overflowThreshold,
|
|
48
|
+
overflowThreshold = _props$overflowThresh === void 0 ? 5 : _props$overflowThresh,
|
|
49
|
+
tabBarScrollBezier = props.tabBarScrollBezier,
|
|
50
|
+
tabBarScrollDuration = props.tabBarScrollDuration,
|
|
51
|
+
tabBarScrollChance = props.tabBarScrollChance,
|
|
52
|
+
tabBarHasDivider = props.tabBarHasDivider,
|
|
53
|
+
showUnderline = props.showUnderline,
|
|
54
|
+
underlineAdaptive = props.underlineAdaptive,
|
|
55
|
+
disabled = props.disabled,
|
|
56
|
+
renderTabBarItem = props.renderTabBarItem,
|
|
57
|
+
renderTabBarInner = props.renderTabBarInner,
|
|
58
|
+
tabBarStyle = props.tabBarStyle,
|
|
59
|
+
tabBarClass = props.tabBarClass,
|
|
60
|
+
translateZ = props.translateZ,
|
|
61
|
+
tabBarStopPropagation = props.tabBarStopPropagation,
|
|
62
|
+
onUnderlineFirstShow = props.onUnderlineFirstShow;
|
|
73
63
|
var prefix = prefixCls + "-tab-cell";
|
|
74
|
-
|
|
75
64
|
var _useContext = (0, _react.useContext)(_contextProvider.GlobalContext),
|
|
76
|
-
|
|
77
|
-
|
|
65
|
+
useRtl = _useContext.useRtl;
|
|
78
66
|
var domRef = (0, _react.useRef)(null);
|
|
79
67
|
var underlineRef = (0, _react.useRef)(null);
|
|
80
68
|
var allCellRectRef = (0, _react.useRef)([]);
|
|
81
|
-
|
|
82
69
|
var _useState = (0, _react.useState)(false),
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
70
|
+
showLine = _useState[0],
|
|
71
|
+
setShowLine = _useState[1];
|
|
86
72
|
var _useState2 = (0, _react.useState)(false),
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
73
|
+
hasOverflow = _useState2[0],
|
|
74
|
+
setHasOverflow = _useState2[1];
|
|
90
75
|
var _useState3 = (0, _react.useState)(function () {
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
76
|
+
return tabs.length < overflowThreshold ? tabBarArrange : 'start';
|
|
77
|
+
}),
|
|
78
|
+
originArrange = _useState3[0],
|
|
79
|
+
setOriginArrange = _useState3[1];
|
|
96
80
|
var _useState4 = (0, _react.useState)(false),
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
81
|
+
forceUpdate = _useState4[0],
|
|
82
|
+
setForceUpdate = _useState4[1];
|
|
83
|
+
// 默认tab小于overflowThreshold个时不开启加载前隐藏,大于overflowThreshold个时开启
|
|
101
84
|
var _useState5 = (0, _react.useState)(function () {
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
85
|
+
return hideTabBarBeforeMounted === void 0 ? tabs.length < overflowThreshold || activeIndex === 0 : !hideTabBarBeforeMounted;
|
|
86
|
+
}),
|
|
87
|
+
showTab = _useState5[0],
|
|
88
|
+
setShowTab = _useState5[1];
|
|
107
89
|
var isVertical = tabDirection === 'vertical';
|
|
108
90
|
var isLine = (type || '').indexOf('line') !== -1;
|
|
109
91
|
var isCard = type === 'card';
|
|
@@ -111,13 +93,11 @@ var TabCell = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
|
111
93
|
* 非card类型才有间隙和两侧留白
|
|
112
94
|
* @en Non-card types have gaps and blank on both sides
|
|
113
95
|
*/
|
|
114
|
-
|
|
115
96
|
var cellPadding = isCard ? void 0 : tabBarPadding;
|
|
116
97
|
var cellGutter = isCard ? void 0 : tabBarGutter;
|
|
117
98
|
var hasDivider = tabBarHasDivider === void 0 ? isLine : tabBarHasDivider;
|
|
118
99
|
var wrapSize = isVertical ? wrapWidth : wrapHeight;
|
|
119
100
|
var system = (0, _helpers.useSystem)();
|
|
120
|
-
|
|
121
101
|
var updateScrollPosition = function updateScrollPosition() {
|
|
122
102
|
if (wrapSize && tabBarScrollChance !== 'none') {
|
|
123
103
|
setTimeout(function () {
|
|
@@ -125,15 +105,14 @@ var TabCell = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
|
125
105
|
}, tabBarScrollChance === 'after-jump' ? Math.max(transitionDuration || 0, duration || 0) : 0);
|
|
126
106
|
}
|
|
127
107
|
};
|
|
128
|
-
|
|
129
108
|
(0, _react.useEffect)(function () {
|
|
130
109
|
(0, _mobileUtils.nextTick)(function () {
|
|
131
|
-
setCellOverflow();
|
|
110
|
+
setCellOverflow();
|
|
111
|
+
// dom出来之后originArrange置空,交由tabBarArrange控制
|
|
132
112
|
// @en After the dom comes out, originArrange is left empty and controlled by tabBarArrange
|
|
133
|
-
|
|
134
|
-
|
|
113
|
+
setOriginArrange(void 0);
|
|
114
|
+
// dom出来了才知道布局,计算完成后展示出来防止跳动的情况
|
|
135
115
|
// @en The layout is determined only when the dom comes out. It is displayed to prevent the jumping after the calculation is completed
|
|
136
|
-
|
|
137
116
|
setShowTab(true);
|
|
138
117
|
setShowLine(true);
|
|
139
118
|
});
|
|
@@ -141,7 +120,6 @@ var TabCell = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
|
141
120
|
(0, _react.useEffect)(function () {
|
|
142
121
|
(0, _mobileUtils.nextTick)(function () {
|
|
143
122
|
var _underlineRef$current;
|
|
144
|
-
|
|
145
123
|
(_underlineRef$current = underlineRef.current) == null ? void 0 : _underlineRef$current.resetUnderlineStyle();
|
|
146
124
|
});
|
|
147
125
|
}, [activeIndex, tabs, getCellPadding('left'), getCellPadding('right'), tabBarGutter, tabDirection]);
|
|
@@ -157,24 +135,21 @@ var TabCell = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
|
157
135
|
}, [showLine]);
|
|
158
136
|
(0, _helpers.useUpdateEffect)(function () {
|
|
159
137
|
var _underlineRef$current2;
|
|
160
|
-
|
|
161
138
|
setCellOverflow();
|
|
162
139
|
(_underlineRef$current2 = underlineRef.current) == null ? void 0 : _underlineRef$current2.resetUnderlineStyle();
|
|
163
140
|
updateScrollPosition();
|
|
164
141
|
}, [forceUpdate]);
|
|
165
142
|
(0, _react.useEffect)(function () {
|
|
166
|
-
tabBarScrollChance !== 'none' && scrollToCenter(true);
|
|
143
|
+
tabBarScrollChance !== 'none' && scrollToCenter(true);
|
|
144
|
+
// TabCell左右可滚动时,防止触发父级touchmove事件导致滚不动
|
|
167
145
|
// @en When the TabCell can be scrolled left and right, prevent the parent touchmove event from being triggered which result in inability to scroll
|
|
168
|
-
|
|
169
146
|
var stopFunc = function stopFunc(e) {
|
|
170
147
|
return e.stopPropagation();
|
|
171
148
|
};
|
|
172
|
-
|
|
173
149
|
if (isVertical && hasOverflow && domRef.current && tabBarStopPropagation) {
|
|
174
150
|
domRef.current.addEventListener('touchstart', stopFunc);
|
|
175
151
|
domRef.current.addEventListener('touchmove', stopFunc);
|
|
176
152
|
}
|
|
177
|
-
|
|
178
153
|
return function () {
|
|
179
154
|
if (isVertical && hasOverflow && domRef.current && tabBarStopPropagation) {
|
|
180
155
|
domRef.current.removeEventListener('touchstart', stopFunc);
|
|
@@ -182,43 +157,35 @@ var TabCell = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
|
182
157
|
}
|
|
183
158
|
};
|
|
184
159
|
}, [hasOverflow]);
|
|
185
|
-
|
|
186
160
|
function setCellOverflow() {
|
|
187
161
|
var overflow = false;
|
|
188
|
-
|
|
189
162
|
if (domRef.current) {
|
|
190
163
|
overflow = isVertical ? domRef.current.scrollWidth > domRef.current.offsetWidth : domRef.current.scrollHeight > domRef.current.offsetHeight;
|
|
191
164
|
}
|
|
192
|
-
|
|
193
165
|
if (overflow !== hasOverflow) {
|
|
194
166
|
onTabBarOverflowChange && onTabBarOverflowChange(overflow);
|
|
195
167
|
}
|
|
196
|
-
|
|
197
168
|
setHasOverflow(overflow);
|
|
198
169
|
}
|
|
199
|
-
|
|
200
170
|
function scrollToCenter(rightNow) {
|
|
201
171
|
if (!wrapSize || !hasOverflow) {
|
|
202
172
|
return;
|
|
203
173
|
}
|
|
204
|
-
|
|
205
174
|
var currentTabLeft = getTabCenterLeft(activeIndexRef.current);
|
|
206
175
|
var newLeft = currentTabLeft - wrapSize / 2;
|
|
207
176
|
scrollTo(newLeft, rightNow);
|
|
208
177
|
}
|
|
209
|
-
|
|
210
178
|
function scrollTo(position, rightNow) {
|
|
211
179
|
if (!domRef.current) {
|
|
212
180
|
return;
|
|
213
181
|
}
|
|
214
|
-
|
|
215
|
-
|
|
182
|
+
var needRafScroll = false;
|
|
183
|
+
// 部分安卓机在动画和raf同时执行时会卡顿
|
|
216
184
|
// @en Some Android machines will freeze when animation and raf are executed at the same time
|
|
217
185
|
// 如果是安卓机,且对滚动的时长和变化曲线无要求时,优先用原生顺滑滚动
|
|
218
186
|
// @en If it is an Android device, and there is no requirement for the scrolling duration and change curve, the native smooth scrolling is preferred
|
|
219
187
|
// 当浏览器不支持原生顺滑滚动,或对上述滚动参数有要求时,用raf滚动兜底
|
|
220
188
|
// @en When the browser does not support native smooth scrolling, or there are requirements for the above scrolling parameters, use raf to scroll the bottom line
|
|
221
|
-
|
|
222
189
|
if (system === 'android' && tabBarScrollBezier === void 0 && tabBarScrollDuration === void 0) {
|
|
223
190
|
try {
|
|
224
191
|
var disObj = isVertical ? {
|
|
@@ -235,7 +202,6 @@ var TabCell = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
|
235
202
|
} else {
|
|
236
203
|
needRafScroll = true;
|
|
237
204
|
}
|
|
238
|
-
|
|
239
205
|
if (needRafScroll) {
|
|
240
206
|
(0, _mobileUtils.scrollWithAnimation)(isVertical ? domRef.current.scrollLeft : domRef.current.scrollTop, position, function (top) {
|
|
241
207
|
if (domRef.current) {
|
|
@@ -248,7 +214,6 @@ var TabCell = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
|
248
214
|
}, rightNow ? 0 : tabBarScrollDuration, tabBarScrollBezier);
|
|
249
215
|
}
|
|
250
216
|
}
|
|
251
|
-
|
|
252
217
|
function getTabRect(index) {
|
|
253
218
|
var currentTab = allCellRectRef.current[index] || {};
|
|
254
219
|
return {
|
|
@@ -256,57 +221,43 @@ var TabCell = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
|
256
221
|
width: (isVertical ? currentTab.width : currentTab.height) || 0
|
|
257
222
|
};
|
|
258
223
|
}
|
|
259
|
-
|
|
260
224
|
function getTabCenterLeft(index) {
|
|
261
225
|
var _getTabRect = getTabRect(index),
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
226
|
+
currentTabLeft = _getTabRect.left,
|
|
227
|
+
currentTabWidth = _getTabRect.width;
|
|
265
228
|
return currentTabLeft + currentTabWidth / 2;
|
|
266
229
|
}
|
|
267
|
-
|
|
268
230
|
function getCellPadding(pType) {
|
|
269
231
|
if (typeof cellPadding === 'object') {
|
|
270
232
|
return cellPadding[pType];
|
|
271
233
|
}
|
|
272
|
-
|
|
273
234
|
return cellPadding;
|
|
274
235
|
}
|
|
275
|
-
|
|
276
236
|
function getCellStyle(index) {
|
|
277
237
|
var _ref2;
|
|
278
|
-
|
|
279
238
|
if (!isVertical) {
|
|
280
239
|
return {};
|
|
281
240
|
}
|
|
282
|
-
|
|
283
241
|
var marginStart = useRtl ? 'marginRight' : 'marginLeft';
|
|
284
242
|
var marginEnd = useRtl ? 'marginLeft' : 'marginRight';
|
|
285
|
-
|
|
286
243
|
if (index === 0) {
|
|
287
244
|
var _ref;
|
|
288
|
-
|
|
289
245
|
return _ref = {}, _ref[marginEnd] = cellGutter, _ref[marginStart] = getCellPadding('left'), _ref;
|
|
290
246
|
}
|
|
291
|
-
|
|
292
247
|
return _ref2 = {}, _ref2[marginEnd] = index === tabs.length - 1 ? void 0 : cellGutter, _ref2;
|
|
293
248
|
}
|
|
294
|
-
|
|
295
249
|
function renderBarItem(tab, index) {
|
|
296
250
|
if (renderTabBarItem) {
|
|
297
251
|
return renderTabBarItem(tab, index, {
|
|
298
252
|
active: index === activeIndex
|
|
299
253
|
});
|
|
300
254
|
}
|
|
301
|
-
|
|
302
255
|
return typeof tab === 'string' ? tab : tab.title;
|
|
303
256
|
}
|
|
304
|
-
|
|
305
257
|
var renderTabUnderline = function renderTabUnderline() {
|
|
306
258
|
if (!showUnderline || !isLine) {
|
|
307
259
|
return null;
|
|
308
260
|
}
|
|
309
|
-
|
|
310
261
|
var lineProps = {
|
|
311
262
|
prefix: prefix,
|
|
312
263
|
showLine: showLine,
|
|
@@ -334,7 +285,6 @@ var TabCell = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
|
334
285
|
getTabRect: getTabRect
|
|
335
286
|
}, lineProps));
|
|
336
287
|
};
|
|
337
|
-
|
|
338
288
|
var cellInner = /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, tabs.map(function (tab, index) {
|
|
339
289
|
return /*#__PURE__*/_react.default.createElement("div", {
|
|
340
290
|
key: index,
|
|
@@ -352,7 +302,6 @@ var TabCell = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
|
352
302
|
if (disabled) {
|
|
353
303
|
return;
|
|
354
304
|
}
|
|
355
|
-
|
|
356
305
|
changeIndex(index, 'click');
|
|
357
306
|
onTabClick && onTabClick(tab, index, e);
|
|
358
307
|
},
|
|
@@ -375,13 +324,11 @@ var TabCell = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
|
375
324
|
height: '100%'
|
|
376
325
|
}
|
|
377
326
|
}) : null);
|
|
378
|
-
|
|
379
327
|
var _updateLayout = function updateLayout() {
|
|
380
328
|
setForceUpdate(function (val) {
|
|
381
329
|
return !val;
|
|
382
330
|
});
|
|
383
331
|
};
|
|
384
|
-
|
|
385
332
|
(0, _react.useImperativeHandle)(ref, function () {
|
|
386
333
|
return {
|
|
387
334
|
dom: domRef.current,
|
|
@@ -390,12 +337,10 @@ var TabCell = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
|
390
337
|
hasOverflow: hasOverflow,
|
|
391
338
|
setCaterpillarAnimate: function setCaterpillarAnimate(ratio) {
|
|
392
339
|
var _underlineRef$current3;
|
|
393
|
-
|
|
394
340
|
return (_underlineRef$current3 = underlineRef.current) == null ? void 0 : _underlineRef$current3.setCaterpillarAnimate(ratio);
|
|
395
341
|
},
|
|
396
342
|
resetUnderlineStyle: function resetUnderlineStyle() {
|
|
397
343
|
var _underlineRef$current4;
|
|
398
|
-
|
|
399
344
|
return (_underlineRef$current4 = underlineRef.current) == null ? void 0 : _underlineRef$current4.resetUnderlineStyle();
|
|
400
345
|
},
|
|
401
346
|
updateLayout: function updateLayout() {
|