@arco-design/mobile-react 2.25.3 → 2.26.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +33 -0
- package/README.en-US.md +2 -2
- package/README.md +2 -2
- package/cjs/_helpers/hooks.js +124 -43
- package/cjs/_helpers/index.js +13 -2
- package/cjs/_helpers/react-dom.js +12 -0
- package/cjs/_helpers/render.js +12 -0
- package/cjs/action-sheet/index.d.ts +2 -2
- package/cjs/action-sheet/index.js +30 -10
- package/cjs/action-sheet/methods.js +2 -0
- package/cjs/action-sheet/style/css/index.js +2 -0
- package/cjs/action-sheet/style/index.js +2 -0
- package/cjs/avatar/group.js +24 -12
- package/cjs/avatar/index.js +77 -51
- package/cjs/avatar/style/css/index.js +2 -0
- package/cjs/avatar/style/index.js +2 -0
- package/cjs/badge/index.js +29 -18
- package/cjs/badge/style/css/index.js +1 -0
- package/cjs/badge/style/index.js +1 -0
- package/cjs/button/hooks.js +20 -15
- package/cjs/button/index.js +67 -46
- package/cjs/button/style/css/index.js +2 -0
- package/cjs/button/style/index.js +2 -0
- package/cjs/carousel/index.d.ts +6 -0
- package/cjs/carousel/index.js +342 -184
- package/cjs/carousel/style/css/index.css +50 -15
- package/cjs/carousel/style/css/index.js +1 -0
- package/cjs/carousel/style/index.js +1 -0
- package/cjs/carousel/style/index.less +19 -14
- package/cjs/cell/arrow.js +3 -0
- package/cjs/cell/cell.js +23 -14
- package/cjs/cell/demo/style/css/mobile.css +8 -0
- package/cjs/cell/demo/style/mobile.less +2 -2
- package/cjs/cell/group.js +21 -9
- package/cjs/cell/index.js +7 -1
- package/cjs/cell/style/css/index.css +16 -0
- package/cjs/cell/style/css/index.js +1 -0
- package/cjs/cell/style/index.js +1 -0
- package/cjs/cell/style/index.less +6 -4
- package/cjs/checkbox/checkbox.js +57 -31
- package/cjs/checkbox/group.js +38 -24
- package/cjs/checkbox/hooks/index.js +2 -0
- package/cjs/checkbox/hooks/useMergeProps.js +14 -7
- package/cjs/checkbox/index.js +8 -1
- package/cjs/checkbox/style/css/index.js +1 -0
- package/cjs/checkbox/style/index.js +1 -0
- package/cjs/checkbox/type.js +2 -0
- package/cjs/circle-progress/index.js +57 -37
- package/cjs/circle-progress/style/css/index.js +1 -0
- package/cjs/circle-progress/style/index.js +1 -0
- package/cjs/collapse/collapse.js +56 -27
- package/cjs/collapse/group.js +44 -20
- package/cjs/collapse/index.js +9 -0
- package/cjs/collapse/style/css/index.js +1 -0
- package/cjs/collapse/style/index.js +1 -0
- package/cjs/collapse/utils.js +7 -0
- package/cjs/context-provider/index.d.ts +6 -0
- package/cjs/context-provider/index.js +30 -11
- package/cjs/context-provider/style/css/index.js +1 -0
- package/cjs/context-provider/style/index.js +1 -0
- package/cjs/count-down/hooks.js +43 -24
- package/cjs/count-down/index.js +37 -29
- package/cjs/count-down/singleton.js +12 -2
- package/cjs/count-down/style/css/index.js +1 -0
- package/cjs/count-down/style/index.js +1 -0
- package/cjs/count-down/util.js +47 -33
- package/cjs/date-picker/helper.js +14 -7
- package/cjs/date-picker/index.js +106 -42
- package/cjs/date-picker/style/css/index.js +2 -0
- package/cjs/date-picker/style/index.js +2 -0
- package/cjs/dialog/index.d.ts +2 -2
- package/cjs/dialog/index.js +54 -28
- package/cjs/dialog/methods.js +22 -9
- package/cjs/dialog/style/css/index.js +2 -0
- package/cjs/dialog/style/index.js +2 -0
- package/cjs/divider/demo/style/css/mobile.css +7 -0
- package/cjs/divider/demo/style/mobile.less +12 -0
- package/cjs/divider/index.d.ts +49 -0
- package/cjs/divider/index.js +65 -0
- package/cjs/divider/style/css/index.css +69 -0
- package/cjs/divider/style/css/index.d.ts +2 -0
- package/cjs/divider/style/css/index.js +5 -0
- package/cjs/divider/style/index.d.ts +2 -0
- package/cjs/divider/style/index.js +5 -0
- package/cjs/divider/style/index.less +66 -0
- package/cjs/dropdown/dropdown.js +113 -74
- package/cjs/dropdown/index.js +8 -1
- package/cjs/dropdown/options.js +28 -12
- package/cjs/dropdown/style/css/index.js +1 -0
- package/cjs/dropdown/style/index.js +1 -0
- package/cjs/dropdown-menu/dropdown-menu.js +84 -49
- package/cjs/dropdown-menu/helper.js +27 -6
- package/cjs/dropdown-menu/index.js +6 -0
- package/cjs/dropdown-menu/style/css/index.js +2 -0
- package/cjs/dropdown-menu/style/index.js +2 -0
- package/cjs/ellipsis/components/js-ellipsis.js +72 -33
- package/cjs/ellipsis/components/native-ellipsis.js +15 -9
- package/cjs/ellipsis/index.js +32 -19
- package/cjs/ellipsis/style/css/index.js +1 -0
- package/cjs/ellipsis/style/index.js +1 -0
- package/cjs/ellipsis/type.d.ts +3 -3
- package/cjs/ellipsis/utils/dom.js +8 -0
- package/cjs/ellipsis/utils/is.js +5 -1
- package/cjs/form/form-item-context.js +5 -0
- package/cjs/form/form-item.js +124 -42
- package/cjs/form/index.js +35 -17
- package/cjs/form/style/css/index.js +1 -0
- package/cjs/form/style/index.js +1 -0
- package/cjs/form/type.js +3 -0
- package/cjs/form/useForm.js +76 -18
- package/cjs/form/utils.js +10 -3
- package/cjs/grid/index.js +41 -21
- package/cjs/grid/style/css/index.js +1 -0
- package/cjs/grid/style/index.js +1 -0
- package/cjs/icon/IconAdd/index.js +12 -5
- package/cjs/icon/IconArrowBack/index.js +12 -5
- package/cjs/icon/IconArrowDown/index.js +12 -5
- package/cjs/icon/IconArrowIn/index.js +12 -5
- package/cjs/icon/IconArrowUp/index.js +12 -5
- package/cjs/icon/IconCheck/index.js +12 -5
- package/cjs/icon/IconCheckBold/index.js +12 -5
- package/cjs/icon/IconCircleChecked/index.js +12 -5
- package/cjs/icon/IconCircleDisabled/index.js +12 -5
- package/cjs/icon/IconCircleUnchecked/index.js +12 -5
- package/cjs/icon/IconClear/index.js +12 -5
- package/cjs/icon/IconClose/index.js +12 -5
- package/cjs/icon/IconCloseBold/index.js +12 -5
- package/cjs/icon/IconDelete/index.js +12 -5
- package/cjs/icon/IconEdit/index.js +12 -5
- package/cjs/icon/IconErrorCircle/index.js +12 -5
- package/cjs/icon/IconEyeInvisible/index.js +12 -5
- package/cjs/icon/IconEyeVisible/index.js +12 -5
- package/cjs/icon/IconEyelashInvisible/index.js +12 -5
- package/cjs/icon/IconGift/index.js +12 -5
- package/cjs/icon/IconHeart/index.js +12 -5
- package/cjs/icon/IconHome/index.js +12 -5
- package/cjs/icon/IconLikeCircle/index.js +12 -5
- package/cjs/icon/IconMinus/index.js +12 -5
- package/cjs/icon/IconMore/index.js +12 -5
- package/cjs/icon/IconNotice/index.js +12 -5
- package/cjs/icon/IconNoticeOff/index.js +12 -5
- package/cjs/icon/IconPicture/index.js +12 -5
- package/cjs/icon/IconPlay/index.js +12 -5
- package/cjs/icon/IconQuestionCircle/index.js +12 -5
- package/cjs/icon/IconRefresh/index.js +12 -5
- package/cjs/icon/IconSad/index.js +12 -5
- package/cjs/icon/IconScan/index.js +12 -5
- package/cjs/icon/IconSearch/index.js +12 -5
- package/cjs/icon/IconSetting/index.js +12 -5
- package/cjs/icon/IconShop/index.js +12 -5
- package/cjs/icon/IconShopping/index.js +12 -5
- package/cjs/icon/IconSmileFill/index.js +12 -5
- package/cjs/icon/IconSound/index.js +12 -5
- package/cjs/icon/IconSquareChecked/index.js +12 -5
- package/cjs/icon/IconSquareDisabled/index.js +12 -5
- package/cjs/icon/IconSquareUnchecked/index.js +12 -5
- package/cjs/icon/IconStar/index.js +12 -5
- package/cjs/icon/IconStarFill/index.js +12 -5
- package/cjs/icon/IconStarHalf/index.js +12 -5
- package/cjs/icon/IconSubway/index.js +12 -5
- package/cjs/icon/IconSuccessCircle/index.js +12 -5
- package/cjs/icon/IconTriDown/index.js +12 -5
- package/cjs/icon/IconTriUp/index.js +12 -5
- package/cjs/icon/IconUpload/index.js +12 -5
- package/cjs/icon/IconUser/index.js +12 -5
- package/cjs/icon/IconUserFill/index.js +12 -5
- package/cjs/icon/IconWarnCircle/index.js +12 -5
- package/cjs/icon/IconWarnCircleFill/index.js +12 -5
- package/cjs/icon/index.js +111 -0
- package/cjs/image/index.js +92 -56
- package/cjs/image/style/css/index.css +1 -0
- package/cjs/image/style/css/index.js +2 -0
- package/cjs/image/style/index.js +2 -0
- package/cjs/image/style/index.less +1 -0
- package/cjs/image-picker/add-icon.js +3 -0
- package/cjs/image-picker/index.js +96 -52
- package/cjs/image-picker/style/css/index.js +2 -0
- package/cjs/image-picker/style/index.js +2 -0
- package/cjs/image-preview/index.d.ts +2 -2
- package/cjs/image-preview/index.js +239 -119
- package/cjs/image-preview/methods.js +18 -5
- package/cjs/image-preview/style/css/index.js +4 -0
- package/cjs/image-preview/style/index.js +4 -0
- package/cjs/index.d.ts +10 -9
- package/cjs/index.js +132 -19
- package/cjs/input/demo/style/css/mobile.css +5 -1
- package/cjs/input/demo/style/mobile.less +2 -2
- package/cjs/input/hooks.js +104 -42
- package/cjs/input/index.js +40 -26
- package/cjs/input/props.d.ts +6 -0
- package/cjs/input/style/css/index.css +9 -0
- package/cjs/input/style/css/index.js +1 -0
- package/cjs/input/style/index.js +1 -0
- package/cjs/input/style/index.less +2 -2
- package/cjs/load-more/index.js +56 -29
- package/cjs/load-more/style/css/index.js +1 -0
- package/cjs/load-more/style/index.js +1 -0
- package/cjs/loading/index.js +48 -19
- package/cjs/loading/style/css/index.js +1 -0
- package/cjs/loading/style/index.js +1 -0
- package/cjs/masking/index.d.ts +2 -2
- package/cjs/masking/index.js +79 -46
- package/cjs/masking/methods.js +19 -4
- package/cjs/masking/style/css/index.js +2 -0
- package/cjs/masking/style/index.js +2 -0
- package/cjs/nav-bar/back-icon.js +5 -1
- package/cjs/nav-bar/index.js +61 -37
- package/cjs/nav-bar/style/css/index.js +1 -0
- package/cjs/nav-bar/style/index.js +1 -0
- package/cjs/notice-bar/index.js +61 -33
- package/cjs/notice-bar/style/css/index.css +33 -0
- package/cjs/notice-bar/style/css/index.js +1 -0
- package/cjs/notice-bar/style/index.js +1 -0
- package/cjs/notice-bar/style/index.less +16 -3
- package/cjs/notify/index.d.ts +8 -8
- package/cjs/notify/index.js +49 -20
- package/cjs/notify/methods.js +17 -2
- package/cjs/notify/style/css/index.js +1 -0
- package/cjs/notify/style/index.js +1 -0
- package/cjs/pagination/arrow.js +3 -0
- package/cjs/pagination/index.js +58 -27
- package/cjs/pagination/style/css/index.js +1 -0
- package/cjs/pagination/style/index.js +1 -0
- package/cjs/picker/index.js +81 -40
- package/cjs/picker/style/css/index.js +3 -0
- package/cjs/picker/style/index.js +3 -0
- package/cjs/picker-view/components/cascader.js +31 -14
- package/cjs/picker-view/components/multi-picker.js +20 -6
- package/cjs/picker-view/components/picker-cell.js +97 -45
- package/cjs/picker-view/index.js +71 -25
- package/cjs/picker-view/style/css/index.js +1 -0
- package/cjs/picker-view/style/index.js +1 -0
- package/cjs/popover/hooks/index.js +4 -0
- package/cjs/popover/hooks/useEvent.js +49 -25
- package/cjs/popover/hooks/usePosition.js +151 -94
- package/cjs/popover/index.js +8 -1
- package/cjs/popover/menu.js +51 -32
- package/cjs/popover/popover-inner.js +47 -30
- package/cjs/popover/popover.js +101 -69
- package/cjs/popover/style/css/index.js +2 -0
- package/cjs/popover/style/index.js +2 -0
- package/cjs/popup/index.d.ts +2 -2
- package/cjs/popup/index.js +39 -22
- package/cjs/popup/methods.js +2 -0
- package/cjs/popup/style/css/index.js +2 -0
- package/cjs/popup/style/index.js +2 -0
- package/cjs/popup-swiper/index.d.ts +2 -2
- package/cjs/popup-swiper/index.js +80 -38
- package/cjs/popup-swiper/methods.js +2 -0
- package/cjs/popup-swiper/style/css/index.js +2 -0
- package/cjs/popup-swiper/style/index.js +2 -0
- package/cjs/portal/index.js +8 -3
- package/cjs/portal/style/css/index.js +1 -0
- package/cjs/portal/style/index.js +1 -0
- package/cjs/progress/index.js +44 -27
- package/cjs/progress/style/css/index.js +1 -0
- package/cjs/progress/style/index.js +1 -0
- package/cjs/pull-refresh/android-pull-refresh.js +100 -58
- package/cjs/pull-refresh/hooks.js +32 -11
- package/cjs/pull-refresh/index.js +14 -3
- package/cjs/pull-refresh/ios-pull-refresh.js +80 -53
- package/cjs/pull-refresh/model.js +1 -0
- package/cjs/pull-refresh/style/css/index.js +2 -0
- package/cjs/pull-refresh/style/index.js +2 -0
- package/cjs/radio/group.js +34 -20
- package/cjs/radio/index.js +8 -1
- package/cjs/radio/radio.js +10 -0
- package/cjs/radio/style/css/index.js +1 -0
- package/cjs/radio/style/index.js +1 -0
- package/cjs/rate/index.js +50 -24
- package/cjs/rate/style/css/index.js +1 -0
- package/cjs/rate/style/index.js +1 -0
- package/cjs/search-bar/association.js +32 -14
- package/cjs/search-bar/cancel-button.js +16 -8
- package/cjs/search-bar/highlight.js +25 -14
- package/cjs/search-bar/index.js +97 -77
- package/cjs/search-bar/style/css/index.css +1 -0
- package/cjs/search-bar/style/css/index.js +1 -0
- package/cjs/search-bar/style/index.js +1 -0
- package/cjs/search-bar/style/index.less +1 -0
- package/cjs/show-monitor/index.js +93 -34
- package/cjs/show-monitor/style/css/index.js +1 -0
- package/cjs/show-monitor/style/index.js +1 -0
- package/cjs/slider/hooks/index.js +13 -0
- package/cjs/slider/hooks/useSliderEvents.js +55 -26
- package/cjs/slider/hooks/useSliderIcon.js +20 -6
- package/cjs/slider/hooks/useSliderInit.js +52 -32
- package/cjs/slider/hooks/useSliderStyle.js +24 -12
- package/cjs/slider/index.js +72 -46
- package/cjs/slider/marks.js +26 -12
- package/cjs/slider/popover.js +13 -4
- package/cjs/slider/style/css/index.js +2 -0
- package/cjs/slider/style/index.js +2 -0
- package/cjs/slider/thumb.js +23 -8
- package/cjs/stepper/hooks/useButtonClick.js +28 -19
- package/cjs/stepper/hooks/useInputEvent.js +18 -9
- package/cjs/stepper/hooks/useValue.js +14 -9
- package/cjs/stepper/index.js +96 -82
- package/cjs/stepper/style/css/index.js +1 -0
- package/cjs/stepper/style/index.js +1 -0
- package/cjs/steps/index.js +40 -22
- package/cjs/steps/step.js +27 -10
- package/cjs/steps/style/css/index.js +1 -0
- package/cjs/steps/style/index.js +1 -0
- package/cjs/sticky/index.js +65 -36
- package/cjs/sticky/style/css/index.js +1 -0
- package/cjs/sticky/style/index.js +1 -0
- package/cjs/style.d.ts +9 -8
- package/cjs/style.js +64 -8
- package/cjs/swipe-action/index.js +92 -40
- package/cjs/swipe-action/item.js +17 -9
- package/cjs/swipe-action/style/css/index.js +1 -0
- package/cjs/swipe-action/style/index.js +1 -0
- package/cjs/swipe-load/index.js +83 -55
- package/cjs/swipe-load/style/css/index.js +1 -0
- package/cjs/swipe-load/style/index.js +1 -0
- package/cjs/switch/index.js +47 -27
- package/cjs/switch/style/css/index.js +1 -0
- package/cjs/switch/style/index.js +1 -0
- package/cjs/tab-bar/index.js +7 -0
- package/cjs/tab-bar/item.js +24 -6
- package/cjs/tab-bar/style/css/index.js +1 -0
- package/cjs/tab-bar/style/index.js +1 -0
- package/cjs/tab-bar/tab-bar.js +31 -15
- package/cjs/tabs/index.js +195 -129
- package/cjs/tabs/style/css/index.js +1 -0
- package/cjs/tabs/style/index.js +1 -0
- package/cjs/tabs/tab-cell-underline.js +111 -38
- package/cjs/tabs/tab-cell.js +124 -70
- package/cjs/tabs/tab-pane.js +94 -49
- package/cjs/tabs/type.d.ts +18 -2
- package/cjs/tag/index.js +8 -1
- package/cjs/tag/list.js +26 -11
- package/cjs/tag/style/css/index.js +1 -0
- package/cjs/tag/style/index.js +1 -0
- package/cjs/tag/tag.js +32 -20
- package/cjs/textarea/index.js +56 -35
- package/cjs/textarea/style/css/index.js +2 -0
- package/cjs/textarea/style/index.js +2 -0
- package/cjs/toast/index.d.ts +12 -12
- package/cjs/toast/index.js +61 -26
- package/cjs/toast/methods.js +16 -2
- package/cjs/toast/style/css/index.js +3 -0
- package/cjs/toast/style/index.js +3 -0
- package/cjs/transition/index.js +18 -10
- package/cjs/transition/style/css/index.js +1 -0
- package/cjs/transition/style/index.js +1 -0
- package/dist/index.js +21588 -19198
- package/dist/index.min.js +4 -4
- package/dist/style.css +3766 -3629
- package/dist/style.min.css +1 -1
- package/esm/_helpers/hooks.js +103 -42
- package/esm/_helpers/index.js +3 -2
- package/esm/_helpers/react-dom.js +10 -0
- package/esm/_helpers/render.js +7 -0
- package/esm/action-sheet/index.d.ts +2 -2
- package/esm/action-sheet/index.js +16 -10
- package/esm/avatar/group.js +16 -12
- package/esm/avatar/index.js +62 -51
- package/esm/badge/index.js +22 -18
- package/esm/button/hooks.js +18 -15
- package/esm/button/index.js +57 -46
- package/esm/carousel/index.d.ts +6 -0
- package/esm/carousel/index.js +336 -186
- package/esm/carousel/style/css/index.css +50 -15
- package/esm/carousel/style/index.less +19 -14
- package/esm/cell/cell.js +14 -14
- package/esm/cell/demo/style/css/mobile.css +8 -0
- package/esm/cell/demo/style/mobile.less +2 -2
- package/esm/cell/group.js +11 -9
- package/esm/cell/index.js +1 -1
- package/esm/cell/style/css/index.css +16 -0
- package/esm/cell/style/index.less +6 -4
- package/esm/checkbox/checkbox.js +42 -31
- package/esm/checkbox/group.js +28 -24
- package/esm/checkbox/hooks/useMergeProps.js +9 -7
- package/esm/checkbox/index.js +2 -2
- package/esm/checkbox/type.js +1 -0
- package/esm/circle-progress/index.js +49 -37
- package/esm/collapse/collapse.js +46 -27
- package/esm/collapse/group.js +34 -20
- package/esm/collapse/index.js +1 -1
- package/esm/collapse/utils.js +1 -0
- package/esm/context-provider/index.d.ts +6 -0
- package/esm/context-provider/index.js +20 -11
- package/esm/count-down/hooks.js +37 -24
- package/esm/count-down/index.js +29 -30
- package/esm/count-down/singleton.js +5 -2
- package/esm/count-down/util.js +42 -33
- package/esm/date-picker/helper.js +9 -7
- package/esm/date-picker/index.js +93 -42
- package/esm/dialog/index.d.ts +2 -2
- package/esm/dialog/index.js +39 -28
- package/esm/dialog/methods.js +11 -9
- package/esm/divider/demo/style/css/mobile.css +7 -0
- package/esm/divider/demo/style/mobile.less +12 -0
- package/esm/divider/index.d.ts +49 -0
- package/esm/divider/index.js +49 -0
- package/esm/divider/style/css/index.css +69 -0
- package/esm/divider/style/css/index.d.ts +2 -0
- package/esm/divider/style/css/index.js +2 -0
- package/esm/divider/style/index.d.ts +2 -0
- package/esm/divider/style/index.js +2 -0
- package/esm/divider/style/index.less +66 -0
- package/esm/dropdown/dropdown.js +102 -74
- package/esm/dropdown/index.js +1 -1
- package/esm/dropdown/options.js +20 -12
- package/esm/dropdown-menu/dropdown-menu.js +74 -49
- package/esm/dropdown-menu/helper.js +16 -6
- package/esm/dropdown-menu/index.js +1 -1
- package/esm/ellipsis/components/js-ellipsis.js +63 -33
- package/esm/ellipsis/components/native-ellipsis.js +11 -9
- package/esm/ellipsis/index.js +21 -20
- package/esm/ellipsis/type.d.ts +3 -3
- package/esm/ellipsis/utils/dom.js +7 -0
- package/esm/ellipsis/utils/is.js +1 -1
- package/esm/form/form-item.js +110 -42
- package/esm/form/index.js +20 -17
- package/esm/form/type.js +3 -0
- package/esm/form/useForm.js +71 -17
- package/esm/form/utils.js +6 -3
- package/esm/grid/index.js +34 -21
- package/esm/icon/IconAdd/index.js +6 -5
- package/esm/icon/IconArrowBack/index.js +6 -5
- package/esm/icon/IconArrowDown/index.js +6 -5
- package/esm/icon/IconArrowIn/index.js +6 -5
- package/esm/icon/IconArrowUp/index.js +6 -5
- package/esm/icon/IconCheck/index.js +6 -5
- package/esm/icon/IconCheckBold/index.js +6 -5
- package/esm/icon/IconCircleChecked/index.js +6 -5
- package/esm/icon/IconCircleDisabled/index.js +6 -5
- package/esm/icon/IconCircleUnchecked/index.js +6 -5
- package/esm/icon/IconClear/index.js +6 -5
- package/esm/icon/IconClose/index.js +6 -5
- package/esm/icon/IconCloseBold/index.js +6 -5
- package/esm/icon/IconDelete/index.js +6 -5
- package/esm/icon/IconEdit/index.js +6 -5
- package/esm/icon/IconErrorCircle/index.js +6 -5
- package/esm/icon/IconEyeInvisible/index.js +6 -5
- package/esm/icon/IconEyeVisible/index.js +6 -5
- package/esm/icon/IconEyelashInvisible/index.js +6 -5
- package/esm/icon/IconGift/index.js +6 -5
- package/esm/icon/IconHeart/index.js +6 -5
- package/esm/icon/IconHome/index.js +6 -5
- package/esm/icon/IconLikeCircle/index.js +6 -5
- package/esm/icon/IconMinus/index.js +6 -5
- package/esm/icon/IconMore/index.js +6 -5
- package/esm/icon/IconNotice/index.js +6 -5
- package/esm/icon/IconNoticeOff/index.js +6 -5
- package/esm/icon/IconPicture/index.js +6 -5
- package/esm/icon/IconPlay/index.js +6 -5
- package/esm/icon/IconQuestionCircle/index.js +6 -5
- package/esm/icon/IconRefresh/index.js +6 -5
- package/esm/icon/IconSad/index.js +6 -5
- package/esm/icon/IconScan/index.js +6 -5
- package/esm/icon/IconSearch/index.js +6 -5
- package/esm/icon/IconSetting/index.js +6 -5
- package/esm/icon/IconShop/index.js +6 -5
- package/esm/icon/IconShopping/index.js +6 -5
- package/esm/icon/IconSmileFill/index.js +6 -5
- package/esm/icon/IconSound/index.js +6 -5
- package/esm/icon/IconSquareChecked/index.js +6 -5
- package/esm/icon/IconSquareDisabled/index.js +6 -5
- package/esm/icon/IconSquareUnchecked/index.js +6 -5
- package/esm/icon/IconStar/index.js +6 -5
- package/esm/icon/IconStarFill/index.js +6 -5
- package/esm/icon/IconStarHalf/index.js +6 -5
- package/esm/icon/IconSubway/index.js +6 -5
- package/esm/icon/IconSuccessCircle/index.js +6 -5
- package/esm/icon/IconTriDown/index.js +6 -5
- package/esm/icon/IconTriUp/index.js +6 -5
- package/esm/icon/IconUpload/index.js +6 -5
- package/esm/icon/IconUser/index.js +6 -5
- package/esm/icon/IconUserFill/index.js +6 -5
- package/esm/icon/IconWarnCircle/index.js +6 -5
- package/esm/icon/IconWarnCircleFill/index.js +6 -5
- package/esm/image/index.js +84 -57
- package/esm/image/style/css/index.css +1 -0
- package/esm/image/style/index.less +1 -0
- package/esm/image-picker/index.js +80 -52
- package/esm/image-preview/index.d.ts +2 -2
- package/esm/image-preview/index.js +217 -119
- package/esm/image-preview/methods.js +14 -4
- package/esm/index.d.ts +10 -9
- package/esm/index.js +10 -9
- package/esm/input/demo/style/css/mobile.css +5 -1
- package/esm/input/demo/style/mobile.less +2 -2
- package/esm/input/hooks.js +96 -42
- package/esm/input/index.js +30 -26
- package/esm/input/props.d.ts +6 -0
- package/esm/input/style/css/index.css +9 -0
- package/esm/input/style/index.less +2 -2
- package/esm/load-more/index.js +48 -29
- package/esm/loading/index.js +40 -19
- package/esm/masking/index.d.ts +2 -2
- package/esm/masking/index.js +64 -46
- package/esm/masking/methods.js +15 -4
- package/esm/nav-bar/back-icon.js +3 -1
- package/esm/nav-bar/index.js +52 -37
- package/esm/notice-bar/index.js +56 -35
- package/esm/notice-bar/style/css/index.css +33 -0
- package/esm/notice-bar/style/index.less +16 -3
- package/esm/notify/index.d.ts +8 -8
- package/esm/notify/index.js +33 -20
- package/esm/notify/methods.js +13 -2
- package/esm/pagination/index.js +50 -27
- package/esm/picker/index.js +66 -40
- package/esm/picker-view/components/cascader.js +23 -14
- package/esm/picker-view/components/multi-picker.js +16 -6
- package/esm/picker-view/components/picker-cell.js +89 -45
- package/esm/picker-view/index.js +54 -25
- package/esm/popover/hooks/useEvent.js +41 -26
- package/esm/popover/hooks/usePosition.js +144 -94
- package/esm/popover/index.js +2 -2
- package/esm/popover/menu.js +41 -32
- package/esm/popover/popover-inner.js +38 -30
- package/esm/popover/popover.js +90 -69
- package/esm/popup/index.d.ts +2 -2
- package/esm/popup/index.js +25 -22
- package/esm/popup-swiper/index.d.ts +2 -2
- package/esm/popup-swiper/index.js +64 -38
- package/esm/portal/index.js +5 -3
- package/esm/progress/index.js +36 -27
- package/esm/pull-refresh/android-pull-refresh.js +90 -58
- package/esm/pull-refresh/hooks.js +23 -11
- package/esm/pull-refresh/index.js +5 -3
- package/esm/pull-refresh/ios-pull-refresh.js +68 -53
- package/esm/pull-refresh/model.js +1 -0
- package/esm/radio/group.js +24 -20
- package/esm/radio/index.js +2 -2
- package/esm/rate/index.js +39 -24
- package/esm/search-bar/association.js +27 -14
- package/esm/search-bar/cancel-button.js +11 -8
- package/esm/search-bar/highlight.js +20 -14
- package/esm/search-bar/index.js +86 -77
- package/esm/search-bar/style/css/index.css +1 -0
- package/esm/search-bar/style/index.less +1 -0
- package/esm/show-monitor/index.js +85 -34
- package/esm/slider/hooks/useSliderEvents.js +51 -26
- package/esm/slider/hooks/useSliderIcon.js +13 -6
- package/esm/slider/hooks/useSliderInit.js +46 -32
- package/esm/slider/hooks/useSliderStyle.js +20 -12
- package/esm/slider/index.js +62 -46
- package/esm/slider/marks.js +18 -12
- package/esm/slider/popover.js +6 -4
- package/esm/slider/thumb.js +15 -8
- package/esm/stepper/hooks/useButtonClick.js +27 -19
- package/esm/stepper/hooks/useInputEvent.js +16 -9
- package/esm/stepper/hooks/useValue.js +12 -9
- package/esm/stepper/index.js +82 -82
- package/esm/steps/index.js +27 -22
- package/esm/steps/step.js +19 -10
- package/esm/sticky/index.js +56 -36
- package/esm/style.d.ts +9 -8
- package/esm/style.js +9 -8
- package/esm/swipe-action/index.js +80 -40
- package/esm/swipe-action/item.js +12 -9
- package/esm/swipe-load/index.js +75 -56
- package/esm/switch/index.js +39 -27
- package/esm/tab-bar/index.js +1 -0
- package/esm/tab-bar/item.js +13 -6
- package/esm/tab-bar/tab-bar.js +21 -15
- package/esm/tabs/index.js +183 -130
- package/esm/tabs/tab-cell-underline.js +103 -38
- package/esm/tabs/tab-cell.js +114 -70
- package/esm/tabs/tab-pane.js +85 -49
- package/esm/tabs/type.d.ts +18 -2
- package/esm/tag/index.js +2 -2
- package/esm/tag/list.js +16 -11
- package/esm/tag/tag.js +22 -20
- package/esm/textarea/index.js +46 -35
- package/esm/toast/index.d.ts +12 -12
- package/esm/toast/index.js +42 -26
- package/esm/toast/methods.js +12 -2
- package/esm/transition/index.js +12 -10
- package/package.json +3 -3
- package/tokens/app/arcodesign/default/css-variables.less +22 -0
- package/tokens/app/arcodesign/default/index.d.ts +22 -0
- package/tokens/app/arcodesign/default/index.js +25 -1
- package/tokens/app/arcodesign/default/index.json +262 -0
- package/tokens/app/arcodesign/default/index.less +22 -0
- package/tokens/mixin/index.less +19 -1
- package/umd/_helpers/hooks.js +121 -43
- package/umd/_helpers/index.js +6 -2
- package/umd/_helpers/react-dom.js +11 -0
- package/umd/_helpers/render.js +9 -0
- package/umd/action-sheet/index.d.ts +2 -2
- package/umd/action-sheet/index.js +22 -10
- package/umd/action-sheet/methods.js +1 -0
- package/umd/avatar/group.js +20 -12
- package/umd/avatar/index.js +68 -51
- package/umd/badge/index.js +25 -18
- package/umd/button/hooks.js +19 -15
- package/umd/button/index.js +60 -46
- package/umd/carousel/index.d.ts +6 -0
- package/umd/carousel/index.js +337 -184
- package/umd/carousel/style/css/index.css +50 -15
- package/umd/carousel/style/index.less +19 -14
- package/umd/cell/arrow.js +2 -0
- package/umd/cell/cell.js +18 -14
- package/umd/cell/demo/style/css/mobile.css +8 -0
- package/umd/cell/demo/style/mobile.less +2 -2
- package/umd/cell/group.js +17 -9
- package/umd/cell/index.js +2 -1
- package/umd/cell/style/css/index.css +16 -0
- package/umd/cell/style/index.less +6 -4
- package/umd/checkbox/checkbox.js +45 -31
- package/umd/checkbox/group.js +34 -24
- package/umd/checkbox/hooks/useMergeProps.js +12 -7
- package/umd/checkbox/index.js +3 -1
- package/umd/checkbox/type.js +2 -0
- package/umd/circle-progress/index.js +52 -37
- package/umd/collapse/collapse.js +50 -27
- package/umd/collapse/group.js +38 -20
- package/umd/collapse/index.js +3 -0
- package/umd/collapse/utils.js +5 -0
- package/umd/context-provider/index.d.ts +6 -0
- package/umd/context-provider/index.js +25 -11
- package/umd/count-down/hooks.js +39 -24
- package/umd/count-down/index.js +31 -29
- package/umd/count-down/singleton.js +10 -2
- package/umd/count-down/util.js +47 -33
- package/umd/date-picker/helper.js +13 -7
- package/umd/date-picker/index.js +97 -42
- package/umd/dialog/index.d.ts +2 -2
- package/umd/dialog/index.js +44 -28
- package/umd/dialog/methods.js +18 -9
- package/umd/divider/demo/style/css/mobile.css +7 -0
- package/umd/divider/demo/style/mobile.less +12 -0
- package/umd/divider/index.d.ts +49 -0
- package/umd/divider/index.js +71 -0
- package/umd/divider/style/css/index.css +69 -0
- package/umd/divider/style/css/index.d.ts +2 -0
- package/umd/divider/style/css/index.js +15 -0
- package/umd/divider/style/index.d.ts +2 -0
- package/umd/divider/style/index.js +15 -0
- package/umd/divider/style/index.less +66 -0
- package/umd/dropdown/dropdown.js +106 -74
- package/umd/dropdown/index.js +3 -1
- package/umd/dropdown/options.js +24 -12
- package/umd/dropdown-menu/dropdown-menu.js +78 -49
- package/umd/dropdown-menu/helper.js +25 -6
- package/umd/dropdown-menu/index.js +2 -0
- package/umd/ellipsis/components/js-ellipsis.js +69 -33
- package/umd/ellipsis/components/native-ellipsis.js +13 -9
- package/umd/ellipsis/index.js +24 -19
- package/umd/ellipsis/type.d.ts +3 -3
- package/umd/ellipsis/utils/dom.js +8 -0
- package/umd/ellipsis/utils/is.js +5 -1
- package/umd/form/form-item-context.js +3 -0
- package/umd/form/form-item.js +114 -42
- package/umd/form/index.js +25 -17
- package/umd/form/type.js +3 -0
- package/umd/form/useForm.js +72 -18
- package/umd/form/utils.js +10 -3
- package/umd/grid/index.js +37 -21
- package/umd/icon/IconAdd/index.js +7 -5
- package/umd/icon/IconArrowBack/index.js +7 -5
- package/umd/icon/IconArrowDown/index.js +7 -5
- package/umd/icon/IconArrowIn/index.js +7 -5
- package/umd/icon/IconArrowUp/index.js +7 -5
- package/umd/icon/IconCheck/index.js +7 -5
- package/umd/icon/IconCheckBold/index.js +7 -5
- package/umd/icon/IconCircleChecked/index.js +7 -5
- package/umd/icon/IconCircleDisabled/index.js +7 -5
- package/umd/icon/IconCircleUnchecked/index.js +7 -5
- package/umd/icon/IconClear/index.js +7 -5
- package/umd/icon/IconClose/index.js +7 -5
- package/umd/icon/IconCloseBold/index.js +7 -5
- package/umd/icon/IconDelete/index.js +7 -5
- package/umd/icon/IconEdit/index.js +7 -5
- package/umd/icon/IconErrorCircle/index.js +7 -5
- package/umd/icon/IconEyeInvisible/index.js +7 -5
- package/umd/icon/IconEyeVisible/index.js +7 -5
- package/umd/icon/IconEyelashInvisible/index.js +7 -5
- package/umd/icon/IconGift/index.js +7 -5
- package/umd/icon/IconHeart/index.js +7 -5
- package/umd/icon/IconHome/index.js +7 -5
- package/umd/icon/IconLikeCircle/index.js +7 -5
- package/umd/icon/IconMinus/index.js +7 -5
- package/umd/icon/IconMore/index.js +7 -5
- package/umd/icon/IconNotice/index.js +7 -5
- package/umd/icon/IconNoticeOff/index.js +7 -5
- package/umd/icon/IconPicture/index.js +7 -5
- package/umd/icon/IconPlay/index.js +7 -5
- package/umd/icon/IconQuestionCircle/index.js +7 -5
- package/umd/icon/IconRefresh/index.js +7 -5
- package/umd/icon/IconSad/index.js +7 -5
- package/umd/icon/IconScan/index.js +7 -5
- package/umd/icon/IconSearch/index.js +7 -5
- package/umd/icon/IconSetting/index.js +7 -5
- package/umd/icon/IconShop/index.js +7 -5
- package/umd/icon/IconShopping/index.js +7 -5
- package/umd/icon/IconSmileFill/index.js +7 -5
- package/umd/icon/IconSound/index.js +7 -5
- package/umd/icon/IconSquareChecked/index.js +7 -5
- package/umd/icon/IconSquareDisabled/index.js +7 -5
- package/umd/icon/IconSquareUnchecked/index.js +7 -5
- package/umd/icon/IconStar/index.js +7 -5
- package/umd/icon/IconStarFill/index.js +7 -5
- package/umd/icon/IconStarHalf/index.js +7 -5
- package/umd/icon/IconSubway/index.js +7 -5
- package/umd/icon/IconSuccessCircle/index.js +7 -5
- package/umd/icon/IconTriDown/index.js +7 -5
- package/umd/icon/IconTriUp/index.js +7 -5
- package/umd/icon/IconUpload/index.js +7 -5
- package/umd/icon/IconUser/index.js +7 -5
- package/umd/icon/IconUserFill/index.js +7 -5
- package/umd/icon/IconWarnCircle/index.js +7 -5
- package/umd/icon/IconWarnCircleFill/index.js +7 -5
- package/umd/icon/index.js +1 -0
- package/umd/image/index.js +86 -56
- package/umd/image/style/css/index.css +1 -0
- package/umd/image/style/index.less +1 -0
- package/umd/image-picker/add-icon.js +2 -0
- package/umd/image-picker/index.js +85 -52
- package/umd/image-preview/index.d.ts +2 -2
- package/umd/image-preview/index.js +224 -119
- package/umd/image-preview/methods.js +15 -5
- package/umd/index.d.ts +10 -9
- package/umd/index.js +26 -23
- package/umd/input/demo/style/css/mobile.css +5 -1
- package/umd/input/demo/style/mobile.less +2 -2
- package/umd/input/hooks.js +100 -42
- package/umd/input/index.js +35 -26
- package/umd/input/props.d.ts +6 -0
- package/umd/input/style/css/index.css +9 -0
- package/umd/input/style/index.less +2 -2
- package/umd/load-more/index.js +51 -29
- package/umd/loading/index.js +43 -19
- package/umd/masking/index.d.ts +2 -2
- package/umd/masking/index.js +71 -46
- package/umd/masking/methods.js +16 -4
- package/umd/nav-bar/back-icon.js +4 -1
- package/umd/nav-bar/index.js +55 -37
- package/umd/notice-bar/index.js +57 -33
- package/umd/notice-bar/style/css/index.css +33 -0
- package/umd/notice-bar/style/index.less +16 -3
- package/umd/notify/index.d.ts +8 -8
- package/umd/notify/index.js +40 -20
- package/umd/notify/methods.js +14 -2
- package/umd/pagination/arrow.js +2 -0
- package/umd/pagination/index.js +53 -27
- package/umd/picker/index.js +70 -40
- package/umd/picker-view/components/cascader.js +27 -14
- package/umd/picker-view/components/multi-picker.js +19 -6
- package/umd/picker-view/components/picker-cell.js +93 -45
- package/umd/picker-view/index.js +58 -25
- package/umd/popover/hooks/useEvent.js +44 -25
- package/umd/popover/hooks/usePosition.js +145 -94
- package/umd/popover/index.js +3 -1
- package/umd/popover/menu.js +45 -32
- package/umd/popover/popover-inner.js +42 -30
- package/umd/popover/popover.js +94 -69
- package/umd/popup/index.d.ts +2 -2
- package/umd/popup/index.js +31 -22
- package/umd/popup/methods.js +1 -0
- package/umd/popup-swiper/index.d.ts +2 -2
- package/umd/popup-swiper/index.js +71 -38
- package/umd/popup-swiper/methods.js +1 -0
- package/umd/portal/index.js +6 -3
- package/umd/progress/index.js +39 -27
- package/umd/pull-refresh/android-pull-refresh.js +93 -58
- package/umd/pull-refresh/hooks.js +29 -11
- package/umd/pull-refresh/index.js +7 -3
- package/umd/pull-refresh/ios-pull-refresh.js +72 -53
- package/umd/pull-refresh/model.js +1 -0
- package/umd/radio/group.js +30 -20
- package/umd/radio/index.js +3 -1
- package/umd/radio/radio.js +5 -0
- package/umd/rate/index.js +44 -24
- package/umd/search-bar/association.js +29 -14
- package/umd/search-bar/cancel-button.js +14 -8
- package/umd/search-bar/highlight.js +21 -14
- package/umd/search-bar/index.js +87 -77
- package/umd/search-bar/style/css/index.css +1 -0
- package/umd/search-bar/style/index.less +1 -0
- package/umd/show-monitor/index.js +89 -34
- package/umd/slider/hooks/index.js +4 -0
- package/umd/slider/hooks/useSliderEvents.js +52 -26
- package/umd/slider/hooks/useSliderIcon.js +17 -6
- package/umd/slider/hooks/useSliderInit.js +50 -32
- package/umd/slider/hooks/useSliderStyle.js +22 -12
- package/umd/slider/index.js +65 -46
- package/umd/slider/marks.js +21 -12
- package/umd/slider/popover.js +10 -4
- package/umd/slider/thumb.js +18 -8
- package/umd/stepper/hooks/useButtonClick.js +27 -19
- package/umd/stepper/hooks/useInputEvent.js +17 -9
- package/umd/stepper/hooks/useValue.js +13 -9
- package/umd/stepper/index.js +87 -82
- package/umd/steps/index.js +32 -22
- package/umd/steps/step.js +22 -10
- package/umd/sticky/index.js +59 -36
- package/umd/style.d.ts +9 -8
- package/umd/style.js +4 -4
- package/umd/swipe-action/index.js +84 -40
- package/umd/swipe-action/item.js +14 -9
- package/umd/swipe-load/index.js +77 -55
- package/umd/switch/index.js +43 -27
- package/umd/tab-bar/index.js +2 -0
- package/umd/tab-bar/item.js +19 -6
- package/umd/tab-bar/tab-bar.js +26 -15
- package/umd/tabs/index.js +186 -129
- package/umd/tabs/tab-cell-underline.js +107 -38
- package/umd/tabs/tab-cell.js +119 -70
- package/umd/tabs/tab-pane.js +89 -49
- package/umd/tabs/type.d.ts +18 -2
- package/umd/tag/index.js +3 -1
- package/umd/tag/list.js +20 -11
- package/umd/tag/tag.js +26 -20
- package/umd/textarea/index.js +51 -35
- package/umd/toast/index.d.ts +12 -12
- package/umd/toast/index.js +49 -26
- package/umd/toast/methods.js +13 -2
- package/umd/transition/index.js +12 -10
package/cjs/count-down/hooks.js
CHANGED
@@ -2,88 +2,109 @@
|
|
2
2
|
|
3
3
|
exports.__esModule = true;
|
4
4
|
exports.useCountDown = void 0;
|
5
|
+
|
5
6
|
var _react = require("react");
|
7
|
+
|
6
8
|
var _helpers = require("../_helpers");
|
9
|
+
|
7
10
|
var _singleton = require("./singleton");
|
11
|
+
|
8
12
|
var _util = require("./util");
|
13
|
+
|
9
14
|
var useCountDown = function useCountDown(options) {
|
10
15
|
var taskIdRef = (0, _react.useRef)(0);
|
11
16
|
var endTimeRef = (0, _react.useRef)();
|
12
17
|
var countingRef = (0, _react.useRef)();
|
18
|
+
|
13
19
|
var _useRefState = (0, _helpers.useRefState)(options.time),
|
14
|
-
|
15
|
-
|
16
|
-
|
20
|
+
remain = _useRefState[0],
|
21
|
+
remainRef = _useRefState[1],
|
22
|
+
setRemain = _useRefState[2];
|
23
|
+
|
17
24
|
var _useState = (0, _react.useState)((0, _util.parseTime)(options.time)),
|
18
|
-
|
19
|
-
|
20
|
-
var taskType = options.millisecond ? 'micro' : 'macro';
|
25
|
+
current = _useState[0],
|
26
|
+
setCurrent = _useState[1];
|
21
27
|
|
22
|
-
// 暂停
|
28
|
+
var taskType = options.millisecond ? 'micro' : 'macro'; // 暂停
|
23
29
|
// @en Pause
|
30
|
+
|
24
31
|
var pause = function pause() {
|
25
32
|
countingRef.current = false;
|
26
33
|
(0, _singleton.stopTask)(taskType, taskIdRef.current);
|
27
|
-
};
|
28
|
-
// 计算当前剩余时间,以毫秒为单位
|
34
|
+
}; // 计算当前剩余时间,以毫秒为单位
|
29
35
|
// @en Calculate the current remaining time in milliseconds
|
36
|
+
|
37
|
+
|
30
38
|
var getCurrentRemain = function getCurrentRemain() {
|
31
39
|
var leftTime = Math.max(endTimeRef.current - Date.now(), 0);
|
40
|
+
|
32
41
|
if (options.millisecond) {
|
33
42
|
return leftTime;
|
34
43
|
}
|
44
|
+
|
35
45
|
return Math.round(leftTime / 1000) * 1000;
|
36
46
|
};
|
47
|
+
|
37
48
|
var setRemainCallback = function setRemainCallback(value) {
|
38
49
|
setRemain(value);
|
39
50
|
var time = (0, _util.parseTime)(value);
|
51
|
+
|
40
52
|
if (options.onChange && value !== options.time) {
|
41
53
|
options.onChange(time, value);
|
42
54
|
}
|
55
|
+
|
43
56
|
if (value === 0) {
|
44
57
|
setCurrent(time);
|
45
58
|
pause();
|
46
59
|
options.onFinish == null ? void 0 : options.onFinish();
|
47
60
|
}
|
48
|
-
};
|
49
|
-
// 开启任务
|
61
|
+
}; // 开启任务
|
50
62
|
// @en start tasks
|
63
|
+
|
64
|
+
|
51
65
|
var tick = function tick() {
|
52
66
|
taskIdRef.current = (0, _singleton.startTask)(taskType, function () {
|
53
67
|
if (countingRef.current) {
|
54
68
|
setRemainCallback(getCurrentRemain());
|
55
69
|
return remainRef.current > 0;
|
56
70
|
}
|
71
|
+
|
57
72
|
return false;
|
58
73
|
});
|
59
|
-
};
|
60
|
-
// 开始
|
74
|
+
}; // 开始
|
61
75
|
// @en Start
|
76
|
+
|
77
|
+
|
62
78
|
var start = function start(reStart) {
|
63
79
|
if (reStart === void 0) {
|
64
80
|
reStart = false;
|
65
81
|
}
|
82
|
+
|
66
83
|
if (!countingRef.current) {
|
67
84
|
if (reStart) {
|
68
85
|
endTimeRef.current = Date.now() + options.time;
|
69
86
|
} else {
|
70
87
|
endTimeRef.current = Date.now() + remainRef.current;
|
71
88
|
}
|
89
|
+
|
72
90
|
countingRef.current = true;
|
73
91
|
tick();
|
74
92
|
}
|
75
|
-
};
|
76
|
-
// 重置
|
93
|
+
}; // 重置
|
77
94
|
// @en Reset
|
95
|
+
|
96
|
+
|
78
97
|
var reset = function reset() {
|
79
98
|
var totalTime = options.time;
|
80
99
|
endTimeRef.current = Date.now() + totalTime;
|
81
100
|
pause();
|
82
101
|
setRemainCallback(totalTime);
|
102
|
+
|
83
103
|
if (options.autoStart) {
|
84
104
|
start(true);
|
85
105
|
}
|
86
106
|
};
|
107
|
+
|
87
108
|
(0, _react.useEffect)(function () {
|
88
109
|
// ummounted时如果正在运行倒计时则暂停
|
89
110
|
// @en Pause if the countdown is running when ummounted
|
@@ -92,24 +113,21 @@ var useCountDown = function useCountDown(options) {
|
|
92
113
|
pause();
|
93
114
|
}
|
94
115
|
};
|
95
|
-
}, []);
|
96
|
-
|
97
|
-
// 设置自动开始倒计时时自动启动
|
116
|
+
}, []); // 设置自动开始倒计时时自动启动
|
98
117
|
// @en Set to start automatically when the countdown starts automatically
|
118
|
+
|
99
119
|
(0, _react.useEffect)(function () {
|
100
120
|
if (options.autoStart) {
|
101
121
|
start();
|
102
122
|
}
|
103
|
-
}, [options.autoStart]);
|
104
|
-
|
105
|
-
// 倒计时设置变化时重新计时
|
123
|
+
}, [options.autoStart]); // 倒计时设置变化时重新计时
|
106
124
|
// @en Re-time when countdown settings change
|
125
|
+
|
107
126
|
(0, _react.useEffect)(function () {
|
108
127
|
reset();
|
109
|
-
}, [options.time]);
|
110
|
-
|
111
|
-
// remain变化时同步current 即把毫秒转化为TimeDataType类型
|
128
|
+
}, [options.time]); // remain变化时同步current 即把毫秒转化为TimeDataType类型
|
112
129
|
// @en Synchronize current when remain changes, that is, convert milliseconds to TimeDataType
|
130
|
+
|
113
131
|
(0, _react.useEffect)(function () {
|
114
132
|
setCurrent((0, _util.parseTime)(remain));
|
115
133
|
}, [remain]);
|
@@ -120,4 +138,5 @@ var useCountDown = function useCountDown(options) {
|
|
120
138
|
current: current
|
121
139
|
};
|
122
140
|
};
|
141
|
+
|
123
142
|
exports.useCountDown = useCountDown;
|
package/cjs/count-down/index.js
CHANGED
@@ -3,19 +3,28 @@
|
|
3
3
|
exports.__esModule = true;
|
4
4
|
var _exportNames = {};
|
5
5
|
exports.default = void 0;
|
6
|
+
|
6
7
|
var _react = _interopRequireWildcard(require("react"));
|
8
|
+
|
7
9
|
var _util = require("./util");
|
10
|
+
|
8
11
|
var _hooks = require("./hooks");
|
12
|
+
|
9
13
|
var _contextProvider = require("../context-provider");
|
14
|
+
|
10
15
|
var _type = require("./type");
|
16
|
+
|
11
17
|
Object.keys(_type).forEach(function (key) {
|
12
18
|
if (key === "default" || key === "__esModule") return;
|
13
19
|
if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
|
14
20
|
if (key in exports && exports[key] === _type[key]) return;
|
15
21
|
exports[key] = _type[key];
|
16
22
|
});
|
23
|
+
|
17
24
|
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); }
|
25
|
+
|
18
26
|
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; }
|
27
|
+
|
19
28
|
/**
|
20
29
|
* 倒计时组件
|
21
30
|
* @en Countdown Component
|
@@ -26,38 +35,37 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj &&
|
|
26
35
|
*/
|
27
36
|
var CountDown = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
28
37
|
var _props$className = props.className,
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
var domRef = (0, _react.useRef)(null);
|
44
|
-
|
45
|
-
// 传入倒计时等变量得到开始暂停启动三个方法以及目前所剩时间current(TimeDataType格式)
|
38
|
+
className = _props$className === void 0 ? '' : _props$className,
|
39
|
+
_props$style = props.style,
|
40
|
+
style = _props$style === void 0 ? {} : _props$style,
|
41
|
+
_props$time = props.time,
|
42
|
+
time = _props$time === void 0 ? 0 : _props$time,
|
43
|
+
_props$format = props.format,
|
44
|
+
format = _props$format === void 0 ? 'HH:mm:ss' : _props$format,
|
45
|
+
_props$autoStart = props.autoStart,
|
46
|
+
autoStart = _props$autoStart === void 0 ? true : _props$autoStart,
|
47
|
+
_props$millisecond = props.millisecond,
|
48
|
+
millisecond = _props$millisecond === void 0 ? false : _props$millisecond,
|
49
|
+
onFinish = props.onFinish,
|
50
|
+
onChange = props.onChange,
|
51
|
+
renderChild = props.renderChild;
|
52
|
+
var domRef = (0, _react.useRef)(null); // 传入倒计时等变量得到开始暂停启动三个方法以及目前所剩时间current(TimeDataType格式)
|
46
53
|
// @en get start, pause, reset methods and the current remaining time —— current (TimeDataType format) by inputing variables such as countdown
|
47
|
-
var _useCountDown = (0, _hooks.useCountDown)({
|
48
|
-
time: typeof time === 'number' ? time : (0, _util.unParseTime)(time),
|
49
|
-
millisecond: millisecond,
|
50
|
-
onChange: onChange,
|
51
|
-
onFinish: onFinish,
|
52
|
-
autoStart: autoStart
|
53
|
-
}),
|
54
|
-
start = _useCountDown.start,
|
55
|
-
pause = _useCountDown.pause,
|
56
|
-
reset = _useCountDown.reset,
|
57
|
-
current = _useCountDown.current;
|
58
54
|
|
59
|
-
|
55
|
+
var _useCountDown = (0, _hooks.useCountDown)({
|
56
|
+
time: typeof time === 'number' ? time : (0, _util.unParseTime)(time),
|
57
|
+
millisecond: millisecond,
|
58
|
+
onChange: onChange,
|
59
|
+
onFinish: onFinish,
|
60
|
+
autoStart: autoStart
|
61
|
+
}),
|
62
|
+
start = _useCountDown.start,
|
63
|
+
pause = _useCountDown.pause,
|
64
|
+
reset = _useCountDown.reset,
|
65
|
+
current = _useCountDown.current; // 导出dom以及start,pause,reset三个方法
|
60
66
|
// @en Export dom and three methods of start, pause and reset
|
67
|
+
|
68
|
+
|
61
69
|
(0, _react.useImperativeHandle)(ref, function () {
|
62
70
|
return {
|
63
71
|
dom: domRef.current,
|
@@ -7,7 +7,9 @@ exports.execTask = execTask;
|
|
7
7
|
exports.startTask = startTask;
|
8
8
|
exports.stopTask = stopTask;
|
9
9
|
exports.taskQueue = exports.taskCount = void 0;
|
10
|
+
|
10
11
|
var _util = require("./util");
|
12
|
+
|
11
13
|
var timeoutId = null;
|
12
14
|
var rafId = null;
|
13
15
|
var taskCount = {
|
@@ -20,18 +22,21 @@ var taskQueue = {
|
|
20
22
|
macro: []
|
21
23
|
};
|
22
24
|
exports.taskQueue = taskQueue;
|
25
|
+
|
23
26
|
function startTask(type, callback) {
|
24
27
|
taskCount[type] += 1;
|
25
28
|
taskQueue[type].push({
|
26
29
|
id: taskCount[type],
|
27
30
|
callback: callback
|
28
|
-
});
|
29
|
-
|
31
|
+
}); // 超过1个任务说明定时任务已建,执行时取最新queue即可
|
32
|
+
|
30
33
|
if (taskQueue[type].length <= 1) {
|
31
34
|
type === 'micro' ? execMicroTask() : execMacroTask();
|
32
35
|
}
|
36
|
+
|
33
37
|
return taskCount[type];
|
34
38
|
}
|
39
|
+
|
35
40
|
function execMicroTask() {
|
36
41
|
rafId && (0, _util.cancelRaf)(rafId);
|
37
42
|
rafId = (0, _util.raf)(function () {
|
@@ -39,6 +44,7 @@ function execMicroTask() {
|
|
39
44
|
taskQueue.micro.length && execMicroTask();
|
40
45
|
});
|
41
46
|
}
|
47
|
+
|
42
48
|
function execMacroTask() {
|
43
49
|
timeoutId && clearTimeout(timeoutId);
|
44
50
|
timeoutId = window.setTimeout(function () {
|
@@ -46,19 +52,23 @@ function execMacroTask() {
|
|
46
52
|
taskQueue.macro.length && execMacroTask();
|
47
53
|
}, 1000);
|
48
54
|
}
|
55
|
+
|
49
56
|
function execTask(type) {
|
50
57
|
taskQueue[type].forEach(function (item) {
|
51
58
|
var needContinue = item.callback();
|
59
|
+
|
52
60
|
if (!needContinue) {
|
53
61
|
stopTask(type, item.id);
|
54
62
|
}
|
55
63
|
});
|
56
64
|
}
|
65
|
+
|
57
66
|
function stopTask(type, id) {
|
58
67
|
var queue = taskQueue[type];
|
59
68
|
var index = queue.findIndex(function (val) {
|
60
69
|
return val.id === id;
|
61
70
|
});
|
71
|
+
|
62
72
|
if (index >= 0) {
|
63
73
|
taskQueue[type].splice(index, 1);
|
64
74
|
}
|
package/cjs/count-down/util.js
CHANGED
@@ -13,10 +13,9 @@ exports.unParseTime = unParseTime;
|
|
13
13
|
var SECOND = 1000;
|
14
14
|
var MINUTE = 60 * SECOND;
|
15
15
|
var HOUR = 60 * MINUTE;
|
16
|
-
var DAY = 24 * HOUR;
|
17
|
-
|
18
|
-
// 把毫秒解析成TimeDataType格式
|
16
|
+
var DAY = 24 * HOUR; // 把毫秒解析成TimeDataType格式
|
19
17
|
// @en Parse milliseconds into TimeDataType format
|
18
|
+
|
20
19
|
function parseTime(time) {
|
21
20
|
var days = Math.floor(time / DAY);
|
22
21
|
var hours = Math.floor(time % DAY / HOUR);
|
@@ -30,97 +29,112 @@ function parseTime(time) {
|
|
30
29
|
seconds: seconds,
|
31
30
|
milliseconds: milliseconds
|
32
31
|
};
|
33
|
-
}
|
34
|
-
// 把TimeDataType解析成毫秒
|
32
|
+
} // 把TimeDataType解析成毫秒
|
35
33
|
// @en Parse TimeDataType into milliseconds
|
34
|
+
|
35
|
+
|
36
36
|
function unParseTime(time) {
|
37
37
|
var _time$days = time.days,
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
38
|
+
days = _time$days === void 0 ? 0 : _time$days,
|
39
|
+
_time$hours = time.hours,
|
40
|
+
hours = _time$hours === void 0 ? 0 : _time$hours,
|
41
|
+
_time$minutes = time.minutes,
|
42
|
+
minutes = _time$minutes === void 0 ? 0 : _time$minutes,
|
43
|
+
_time$seconds = time.seconds,
|
44
|
+
seconds = _time$seconds === void 0 ? 0 : _time$seconds,
|
45
|
+
_time$milliseconds = time.milliseconds,
|
46
|
+
milliseconds = _time$milliseconds === void 0 ? 0 : _time$milliseconds;
|
47
47
|
return days * DAY + hours * HOUR + minutes * MINUTE + seconds * SECOND + milliseconds;
|
48
|
-
}
|
49
|
-
// 判断是否在浏览器中运行
|
48
|
+
} // 判断是否在浏览器中运行
|
50
49
|
// @en Determine if it is running in the browser
|
51
|
-
|
52
|
-
|
50
|
+
|
51
|
+
|
52
|
+
var inBrowser = typeof window !== 'undefined'; // 判断根元素
|
53
53
|
// @en Determine the root element
|
54
|
+
|
54
55
|
exports.inBrowser = inBrowser;
|
55
|
-
var root = inBrowser ? window : global;
|
56
|
-
// 根据id清除对应的animationFrame
|
56
|
+
var root = inBrowser ? window : global; // 根据id清除对应的animationFrame
|
57
57
|
// @en Clear the corresponding animationFrame according to the id
|
58
|
+
|
58
59
|
function cancelRaf(id) {
|
59
60
|
var cancelAnimationFrame = root.cancelAnimationFrame || root.clearTimeout;
|
60
61
|
cancelAnimationFrame.call(root, id);
|
61
|
-
}
|
62
|
-
// 计算现在时间
|
62
|
+
} // 计算现在时间
|
63
63
|
// @en Calculate the current time
|
64
|
-
|
65
|
-
|
64
|
+
|
65
|
+
|
66
|
+
var prev = Date.now(); // requestAnimationFrame不存在时用setTimeout代替,得出id
|
66
67
|
// @en When requestAnimationFrame does not exist, use setTimeout instead to get the id
|
68
|
+
|
67
69
|
function rafPolyfill(fn) {
|
68
70
|
var curr = Date.now();
|
69
71
|
var ms = Math.max(0, 16 - (curr - prev));
|
70
72
|
var id = setTimeout(fn, ms);
|
71
73
|
prev = curr + ms;
|
72
74
|
return id;
|
73
|
-
}
|
74
|
-
// 得到animationFrame的id
|
75
|
+
} // 得到animationFrame的id
|
75
76
|
// @en Get the id of animationFrame
|
77
|
+
|
78
|
+
|
76
79
|
function raf(fn) {
|
77
80
|
var requestAnimationFrame = root.requestAnimationFrame || rafPolyfill;
|
78
81
|
return requestAnimationFrame.call(root, fn);
|
79
|
-
}
|
80
|
-
// 补0成需要的格式
|
82
|
+
} // 补0成需要的格式
|
81
83
|
// @en Fill 0 into the required format
|
84
|
+
|
85
|
+
|
82
86
|
function padZero(num, targetLength) {
|
83
87
|
if (targetLength === void 0) {
|
84
88
|
targetLength = 2;
|
85
89
|
}
|
90
|
+
|
86
91
|
var str = "" + num;
|
92
|
+
|
87
93
|
while (str.length < targetLength) {
|
88
94
|
str = "0" + str;
|
89
95
|
}
|
96
|
+
|
90
97
|
return str;
|
91
|
-
}
|
92
|
-
// 根据传入的格式解析时间成特定格式
|
98
|
+
} // 根据传入的格式解析时间成特定格式
|
93
99
|
// @en Parse the time into a specific format according to the inputing format
|
100
|
+
|
101
|
+
|
94
102
|
function parseFormat(formatArg, currentTime) {
|
95
103
|
var days = currentTime.days;
|
96
104
|
var format = formatArg;
|
97
105
|
var hours = currentTime.hours,
|
98
|
-
|
99
|
-
|
100
|
-
|
106
|
+
minutes = currentTime.minutes,
|
107
|
+
seconds = currentTime.seconds,
|
108
|
+
milliseconds = currentTime.milliseconds;
|
109
|
+
|
101
110
|
if (format.includes('D')) {
|
102
111
|
format = format.replace('DD', padZero(days)).replace('D', "" + days);
|
103
112
|
} else {
|
104
113
|
hours += days * 24;
|
105
114
|
}
|
115
|
+
|
106
116
|
if (format.includes('H')) {
|
107
117
|
format = format.replace('HH', padZero(hours)).replace('H', "" + hours);
|
108
118
|
} else {
|
109
119
|
minutes += hours * 60;
|
110
120
|
}
|
121
|
+
|
111
122
|
if (format.includes('m')) {
|
112
123
|
format = format.replace('mm', padZero(minutes)).replace('m', "" + minutes);
|
113
124
|
} else {
|
114
125
|
seconds += minutes * 60;
|
115
126
|
}
|
127
|
+
|
116
128
|
if (format.includes('s')) {
|
117
129
|
format = format.replace('ss', padZero(seconds)).replace('s', "" + seconds);
|
118
130
|
} else {
|
119
131
|
milliseconds += seconds * 1000;
|
120
132
|
}
|
133
|
+
|
121
134
|
if (format.includes('S')) {
|
122
135
|
var ms = padZero(milliseconds, 3);
|
123
136
|
format = format.replace(/S{3}/, ms).replace(/S{2}/, ms.slice(0, 2)).replace(/S{1}/, ms.charAt(0));
|
124
137
|
}
|
138
|
+
|
125
139
|
return format;
|
126
140
|
}
|
@@ -5,7 +5,9 @@ exports.convertObjToTs = convertObjToTs;
|
|
5
5
|
exports.convertTsToDateObj = convertTsToDateObj;
|
6
6
|
exports.judgeObj = judgeObj;
|
7
7
|
exports.oneOf = oneOf;
|
8
|
+
|
8
9
|
var _mobileUtils = require("@arco-design/mobile-utils");
|
10
|
+
|
9
11
|
function convertTsToDateObj(ts, utc) {
|
10
12
|
var date = new _mobileUtils.DateWithUTC(ts, utc);
|
11
13
|
return {
|
@@ -17,37 +19,42 @@ function convertTsToDateObj(ts, utc) {
|
|
17
19
|
second: date.getSeconds()
|
18
20
|
};
|
19
21
|
}
|
22
|
+
|
20
23
|
function convertObjToTs(obj, defaultTs, utc) {
|
21
24
|
if (obj === void 0) {
|
22
25
|
obj = {};
|
23
26
|
}
|
27
|
+
|
24
28
|
var date = new _mobileUtils.DateWithUTC(defaultTs, utc);
|
25
29
|
var defaultDate = date.getDate();
|
26
|
-
!isNaN(obj.year) && date.setFullYear(obj.year);
|
27
|
-
// bugfix: setMonth后如果日期超限则会自动顺延到下月,此时返回月份就不准了,因此先设置date为1再设置month
|
30
|
+
!isNaN(obj.year) && date.setFullYear(obj.year); // bugfix: setMonth后如果日期超限则会自动顺延到下月,此时返回月份就不准了,因此先设置date为1再设置month
|
28
31
|
// @en bugfix: After setMonth, if the date exceeds the limit, it will be automatically extended to the next month. At this time, the return month is not allowed, so first set date to 1 and then set month
|
32
|
+
|
29
33
|
if (!isNaN(obj.month)) {
|
30
34
|
date.setDate(1);
|
31
35
|
date.setMonth(obj.month - 1);
|
32
|
-
}
|
33
|
-
// date的值可能被修改,需要被还原
|
36
|
+
} // date的值可能被修改,需要被还原
|
34
37
|
// @en The value of date may be modified and needs to be restored
|
38
|
+
|
39
|
+
|
35
40
|
date.setDate(isNaN(obj.date) ? defaultDate : obj.date);
|
36
41
|
!isNaN(obj.hour) && date.setHours(obj.hour);
|
37
42
|
!isNaN(obj.minute) && date.setMinutes(obj.minute);
|
38
43
|
!isNaN(obj.second) && date.setSeconds(obj.second);
|
39
44
|
return date.getTime();
|
40
45
|
}
|
46
|
+
|
41
47
|
function oneOf(value, validList) {
|
42
48
|
return validList.indexOf(value) !== -1;
|
43
|
-
}
|
44
|
-
|
45
|
-
// 查看两个obj中的keys里的各个值是否都一致
|
49
|
+
} // 查看两个obj中的keys里的各个值是否都一致
|
46
50
|
// @en Check whether the values in the keys in the two obj are consistent
|
51
|
+
|
52
|
+
|
47
53
|
function judgeObj(dateObj1, dateObj2, keys) {
|
48
54
|
if (keys === void 0) {
|
49
55
|
keys = [];
|
50
56
|
}
|
57
|
+
|
51
58
|
return !keys.some(function (key) {
|
52
59
|
return dateObj1[key] !== dateObj2[key];
|
53
60
|
});
|