@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
|
@@ -1,28 +1,19 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
4
|
exports.__esModule = true;
|
|
6
5
|
exports.CompWithGlobalContext = CompWithGlobalContext;
|
|
7
6
|
exports.GlobalContext = exports.ContextLayout = void 0;
|
|
8
7
|
exports.default = ContextProvider;
|
|
9
8
|
exports.defaultContext = void 0;
|
|
10
|
-
|
|
11
9
|
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
12
|
-
|
|
13
10
|
var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose"));
|
|
14
|
-
|
|
15
11
|
var _react = _interopRequireWildcard(require("react"));
|
|
16
|
-
|
|
17
12
|
var _mobileUtils = require("@arco-design/mobile-utils");
|
|
18
|
-
|
|
19
13
|
var _excluded = ["children", "useDarkMode", "isDarkMode", "darkModeSelector", "theme", "locale", "onDarkModeChange"],
|
|
20
|
-
|
|
21
|
-
|
|
14
|
+
_excluded2 = ["context"];
|
|
22
15
|
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); }
|
|
23
|
-
|
|
24
16
|
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; }
|
|
25
|
-
|
|
26
17
|
var DEFAULT_DARK_MODE_SELECTOR = 'arco-theme-dark';
|
|
27
18
|
var defaultContext = {
|
|
28
19
|
prefixCls: 'arco',
|
|
@@ -35,7 +26,6 @@ var defaultContext = {
|
|
|
35
26
|
exports.defaultContext = defaultContext;
|
|
36
27
|
var GlobalContext = /*#__PURE__*/(0, _react.createContext)(defaultContext);
|
|
37
28
|
exports.GlobalContext = GlobalContext;
|
|
38
|
-
|
|
39
29
|
/**
|
|
40
30
|
* 全局数据控制组件,用于替换全局数据。
|
|
41
31
|
* @en Global data control component, used to replace global data.
|
|
@@ -46,53 +36,44 @@ exports.GlobalContext = GlobalContext;
|
|
|
46
36
|
*/
|
|
47
37
|
function ContextProvider(props) {
|
|
48
38
|
var children = props.children,
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
39
|
+
useDarkMode = props.useDarkMode,
|
|
40
|
+
userSetIsDarkMode = props.isDarkMode,
|
|
41
|
+
_props$darkModeSelect = props.darkModeSelector,
|
|
42
|
+
darkModeSelector = _props$darkModeSelect === void 0 ? DEFAULT_DARK_MODE_SELECTOR : _props$darkModeSelect,
|
|
43
|
+
theme = props.theme,
|
|
44
|
+
_props$locale = props.locale,
|
|
45
|
+
locale = _props$locale === void 0 ? _mobileUtils.defaultLocale : _props$locale,
|
|
46
|
+
onDarkModeChange = props.onDarkModeChange,
|
|
47
|
+
restProps = (0, _objectWithoutPropertiesLoose2.default)(props, _excluded);
|
|
59
48
|
var _useState = (0, _react.useState)(function () {
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
setIsDarkModeState = _useState[1];
|
|
68
|
-
|
|
49
|
+
if (typeof window !== 'undefined' && useDarkMode) {
|
|
50
|
+
return window.matchMedia('(prefers-color-scheme: dark)').matches;
|
|
51
|
+
}
|
|
52
|
+
return false;
|
|
53
|
+
}),
|
|
54
|
+
isDarkModeState = _useState[0],
|
|
55
|
+
setIsDarkModeState = _useState[1];
|
|
69
56
|
var mountedRef = (0, _react.useRef)(false);
|
|
70
|
-
|
|
71
57
|
var setDarkModeState = function setDarkModeState(isDark, needChange) {
|
|
72
58
|
if (needChange === void 0) {
|
|
73
59
|
needChange = true;
|
|
74
60
|
}
|
|
75
|
-
|
|
76
61
|
setIsDarkModeState(isDark);
|
|
77
62
|
needChange && onDarkModeChange && onDarkModeChange(isDark);
|
|
78
63
|
};
|
|
79
|
-
|
|
80
64
|
var isDarkMode = (0, _react.useMemo)(function () {
|
|
81
65
|
// 如果未开启暗黑模式则不对body做操作
|
|
82
66
|
// @en If dark mode is not turned on, no operation will be performed on the body
|
|
83
67
|
if (userSetIsDarkMode === void 0 && !useDarkMode) {
|
|
84
68
|
return false;
|
|
85
69
|
}
|
|
86
|
-
|
|
87
70
|
var value = Boolean(userSetIsDarkMode !== void 0 ? userSetIsDarkMode : isDarkModeState);
|
|
88
71
|
var needUpdateBody = darkModeSelector && typeof document !== 'undefined';
|
|
89
|
-
|
|
90
72
|
if (value) {
|
|
91
73
|
needUpdateBody && document.body.classList.add(darkModeSelector);
|
|
92
74
|
} else {
|
|
93
75
|
needUpdateBody && document.body.classList.remove(darkModeSelector);
|
|
94
76
|
}
|
|
95
|
-
|
|
96
77
|
return value;
|
|
97
78
|
}, [userSetIsDarkMode, isDarkModeState, darkModeSelector, useDarkMode]);
|
|
98
79
|
var changeDarkMode = (0, _react.useCallback)(function (res) {
|
|
@@ -100,18 +81,15 @@ function ContextProvider(props) {
|
|
|
100
81
|
}, []);
|
|
101
82
|
(0, _react.useEffect)(function () {
|
|
102
83
|
var matchMedia = window.matchMedia('(prefers-color-scheme: dark)');
|
|
103
|
-
|
|
104
84
|
if (useDarkMode) {
|
|
105
85
|
var dark = matchMedia.matches;
|
|
106
86
|
setDarkModeState(dark, mountedRef.current);
|
|
107
|
-
|
|
108
87
|
if (typeof matchMedia.addEventListener === 'function') {
|
|
109
88
|
matchMedia.addEventListener('change', changeDarkMode);
|
|
110
89
|
} else if (typeof matchMedia.addListener === 'function') {
|
|
111
90
|
matchMedia.addListener(changeDarkMode);
|
|
112
91
|
}
|
|
113
92
|
}
|
|
114
|
-
|
|
115
93
|
mountedRef.current = true;
|
|
116
94
|
return function () {
|
|
117
95
|
if (useDarkMode) {
|
|
@@ -127,7 +105,6 @@ function ContextProvider(props) {
|
|
|
127
105
|
if (!theme) {
|
|
128
106
|
return;
|
|
129
107
|
}
|
|
130
|
-
|
|
131
108
|
(0, _mobileUtils.addCssRules)('arcoCustomTheme', theme);
|
|
132
109
|
return function () {
|
|
133
110
|
(0, _mobileUtils.removeCssStyleDom)('arcoCustomTheme');
|
|
@@ -141,14 +118,12 @@ function ContextProvider(props) {
|
|
|
141
118
|
})
|
|
142
119
|
}, children);
|
|
143
120
|
}
|
|
144
|
-
|
|
145
121
|
var ContextLayout = GlobalContext.Consumer;
|
|
146
122
|
exports.ContextLayout = ContextLayout;
|
|
147
|
-
|
|
148
123
|
function CompWithGlobalContext(Component) {
|
|
149
124
|
return function (props) {
|
|
150
125
|
var propsContext = props.context,
|
|
151
|
-
|
|
126
|
+
others = (0, _objectWithoutPropertiesLoose2.default)(props, _excluded2);
|
|
152
127
|
return /*#__PURE__*/_react.default.createElement(ContextLayout, null, function (context) {
|
|
153
128
|
return /*#__PURE__*/_react.default.createElement(ContextProvider, (0, _extends2.default)({}, context, propsContext), /*#__PURE__*/_react.default.createElement(Component, others));
|
|
154
129
|
});
|
package/cjs/count-down/hooks.js
CHANGED
|
@@ -2,109 +2,88 @@
|
|
|
2
2
|
|
|
3
3
|
exports.__esModule = true;
|
|
4
4
|
exports.useCountDown = void 0;
|
|
5
|
-
|
|
6
5
|
var _react = require("react");
|
|
7
|
-
|
|
8
6
|
var _helpers = require("../_helpers");
|
|
9
|
-
|
|
10
7
|
var _singleton = require("./singleton");
|
|
11
|
-
|
|
12
8
|
var _util = require("./util");
|
|
13
|
-
|
|
14
9
|
var useCountDown = function useCountDown(options) {
|
|
15
10
|
var taskIdRef = (0, _react.useRef)(0);
|
|
16
11
|
var endTimeRef = (0, _react.useRef)(undefined);
|
|
17
12
|
var countingRef = (0, _react.useRef)(undefined);
|
|
18
|
-
|
|
19
13
|
var _useRefState = (0, _helpers.useRefState)(options.time),
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
14
|
+
remain = _useRefState[0],
|
|
15
|
+
remainRef = _useRefState[1],
|
|
16
|
+
setRemain = _useRefState[2];
|
|
24
17
|
var _useState = (0, _react.useState)((0, _util.parseTime)(options.time)),
|
|
25
|
-
|
|
26
|
-
|
|
18
|
+
current = _useState[0],
|
|
19
|
+
setCurrent = _useState[1];
|
|
20
|
+
var taskType = options.millisecond ? 'micro' : 'macro';
|
|
27
21
|
|
|
28
|
-
|
|
22
|
+
// 暂停
|
|
29
23
|
// @en Pause
|
|
30
|
-
|
|
31
24
|
var pause = function pause() {
|
|
32
25
|
countingRef.current = false;
|
|
33
26
|
(0, _singleton.stopTask)(taskType, taskIdRef.current);
|
|
34
|
-
};
|
|
27
|
+
};
|
|
28
|
+
// 计算当前剩余时间,以毫秒为单位
|
|
35
29
|
// @en Calculate the current remaining time in milliseconds
|
|
36
|
-
|
|
37
|
-
|
|
38
30
|
var getCurrentRemain = function getCurrentRemain() {
|
|
39
31
|
var leftTime = Math.max(endTimeRef.current - Date.now(), 0);
|
|
40
|
-
|
|
41
32
|
if (options.millisecond) {
|
|
42
33
|
return leftTime;
|
|
43
34
|
}
|
|
44
|
-
|
|
45
35
|
return Math.round(leftTime / 1000) * 1000;
|
|
46
36
|
};
|
|
47
|
-
|
|
48
37
|
var setRemainCallback = function setRemainCallback(value) {
|
|
49
38
|
setRemain(value);
|
|
50
39
|
var time = (0, _util.parseTime)(value);
|
|
51
|
-
|
|
52
40
|
if (options.onChange && value !== options.time) {
|
|
53
41
|
options.onChange(time, value);
|
|
54
42
|
}
|
|
55
|
-
|
|
56
43
|
if (value === 0) {
|
|
57
44
|
setCurrent(time);
|
|
58
45
|
pause();
|
|
59
46
|
options.onFinish == null ? void 0 : options.onFinish();
|
|
60
47
|
}
|
|
61
|
-
};
|
|
48
|
+
};
|
|
49
|
+
// 开启任务
|
|
62
50
|
// @en start tasks
|
|
63
|
-
|
|
64
|
-
|
|
65
51
|
var tick = function tick() {
|
|
66
52
|
taskIdRef.current = (0, _singleton.startTask)(taskType, function () {
|
|
67
53
|
if (countingRef.current) {
|
|
68
54
|
setRemainCallback(getCurrentRemain());
|
|
69
55
|
return remainRef.current > 0;
|
|
70
56
|
}
|
|
71
|
-
|
|
72
57
|
return false;
|
|
73
58
|
});
|
|
74
|
-
};
|
|
59
|
+
};
|
|
60
|
+
// 开始
|
|
75
61
|
// @en Start
|
|
76
|
-
|
|
77
|
-
|
|
78
62
|
var start = function start(reStart) {
|
|
79
63
|
if (reStart === void 0) {
|
|
80
64
|
reStart = false;
|
|
81
65
|
}
|
|
82
|
-
|
|
83
66
|
if (!countingRef.current) {
|
|
84
67
|
if (reStart) {
|
|
85
68
|
endTimeRef.current = Date.now() + options.time;
|
|
86
69
|
} else {
|
|
87
70
|
endTimeRef.current = Date.now() + remainRef.current;
|
|
88
71
|
}
|
|
89
|
-
|
|
90
72
|
countingRef.current = true;
|
|
91
73
|
tick();
|
|
92
74
|
}
|
|
93
|
-
};
|
|
75
|
+
};
|
|
76
|
+
// 重置
|
|
94
77
|
// @en Reset
|
|
95
|
-
|
|
96
|
-
|
|
97
78
|
var reset = function reset() {
|
|
98
79
|
var totalTime = options.time;
|
|
99
80
|
endTimeRef.current = Date.now() + totalTime;
|
|
100
81
|
pause();
|
|
101
82
|
setRemainCallback(totalTime);
|
|
102
|
-
|
|
103
83
|
if (options.autoStart) {
|
|
104
84
|
start(true);
|
|
105
85
|
}
|
|
106
86
|
};
|
|
107
|
-
|
|
108
87
|
(0, _react.useEffect)(function () {
|
|
109
88
|
// ummounted时如果正在运行倒计时则暂停
|
|
110
89
|
// @en Pause if the countdown is running when ummounted
|
|
@@ -113,21 +92,24 @@ var useCountDown = function useCountDown(options) {
|
|
|
113
92
|
pause();
|
|
114
93
|
}
|
|
115
94
|
};
|
|
116
|
-
}, []);
|
|
117
|
-
// @en Set to start automatically when the countdown starts automatically
|
|
95
|
+
}, []);
|
|
118
96
|
|
|
97
|
+
// 设置自动开始倒计时时自动启动
|
|
98
|
+
// @en Set to start automatically when the countdown starts automatically
|
|
119
99
|
(0, _react.useEffect)(function () {
|
|
120
100
|
if (options.autoStart) {
|
|
121
101
|
start();
|
|
122
102
|
}
|
|
123
|
-
}, [options.autoStart]);
|
|
124
|
-
// @en Re-time when countdown settings change
|
|
103
|
+
}, [options.autoStart]);
|
|
125
104
|
|
|
105
|
+
// 倒计时设置变化时重新计时
|
|
106
|
+
// @en Re-time when countdown settings change
|
|
126
107
|
(0, _react.useEffect)(function () {
|
|
127
108
|
reset();
|
|
128
|
-
}, [options.time]);
|
|
129
|
-
// @en Synchronize current when remain changes, that is, convert milliseconds to TimeDataType
|
|
109
|
+
}, [options.time]);
|
|
130
110
|
|
|
111
|
+
// remain变化时同步current 即把毫秒转化为TimeDataType类型
|
|
112
|
+
// @en Synchronize current when remain changes, that is, convert milliseconds to TimeDataType
|
|
131
113
|
(0, _react.useEffect)(function () {
|
|
132
114
|
setCurrent((0, _util.parseTime)(remain));
|
|
133
115
|
}, [remain]);
|
|
@@ -138,5 +120,4 @@ var useCountDown = function useCountDown(options) {
|
|
|
138
120
|
current: current
|
|
139
121
|
};
|
|
140
122
|
};
|
|
141
|
-
|
|
142
123
|
exports.useCountDown = useCountDown;
|
package/cjs/count-down/index.js
CHANGED
|
@@ -3,28 +3,19 @@
|
|
|
3
3
|
exports.__esModule = true;
|
|
4
4
|
var _exportNames = {};
|
|
5
5
|
exports.default = void 0;
|
|
6
|
-
|
|
7
6
|
var _react = _interopRequireWildcard(require("react"));
|
|
8
|
-
|
|
9
7
|
var _util = require("./util");
|
|
10
|
-
|
|
11
8
|
var _hooks = require("./hooks");
|
|
12
|
-
|
|
13
9
|
var _contextProvider = require("../context-provider");
|
|
14
|
-
|
|
15
10
|
var _type = require("./type");
|
|
16
|
-
|
|
17
11
|
Object.keys(_type).forEach(function (key) {
|
|
18
12
|
if (key === "default" || key === "__esModule") return;
|
|
19
13
|
if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
|
|
20
14
|
if (key in exports && exports[key] === _type[key]) return;
|
|
21
15
|
exports[key] = _type[key];
|
|
22
16
|
});
|
|
23
|
-
|
|
24
17
|
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
|
-
|
|
26
18
|
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
|
-
|
|
28
19
|
/**
|
|
29
20
|
* 倒计时组件
|
|
30
21
|
* @en Countdown Component
|
|
@@ -35,37 +26,38 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj &&
|
|
|
35
26
|
*/
|
|
36
27
|
var CountDown = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
37
28
|
var _props$className = props.className,
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
var domRef = (0, _react.useRef)(null);
|
|
53
|
-
// @en get start, pause, reset methods and the current remaining time —— current (TimeDataType format) by inputing variables such as countdown
|
|
29
|
+
className = _props$className === void 0 ? '' : _props$className,
|
|
30
|
+
_props$style = props.style,
|
|
31
|
+
style = _props$style === void 0 ? {} : _props$style,
|
|
32
|
+
_props$time = props.time,
|
|
33
|
+
time = _props$time === void 0 ? 0 : _props$time,
|
|
34
|
+
_props$format = props.format,
|
|
35
|
+
format = _props$format === void 0 ? 'HH:mm:ss' : _props$format,
|
|
36
|
+
_props$autoStart = props.autoStart,
|
|
37
|
+
autoStart = _props$autoStart === void 0 ? true : _props$autoStart,
|
|
38
|
+
_props$millisecond = props.millisecond,
|
|
39
|
+
millisecond = _props$millisecond === void 0 ? false : _props$millisecond,
|
|
40
|
+
onFinish = props.onFinish,
|
|
41
|
+
onChange = props.onChange,
|
|
42
|
+
renderChild = props.renderChild;
|
|
43
|
+
var domRef = (0, _react.useRef)(null);
|
|
54
44
|
|
|
45
|
+
// 传入倒计时等变量得到开始暂停启动三个方法以及目前所剩时间current(TimeDataType格式)
|
|
46
|
+
// @en get start, pause, reset methods and the current remaining time —— current (TimeDataType format) by inputing variables such as countdown
|
|
55
47
|
var _useCountDown = (0, _hooks.useCountDown)({
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
// @en Export dom and three methods of start, pause and reset
|
|
67
|
-
|
|
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;
|
|
68
58
|
|
|
59
|
+
// 导出dom以及start,pause,reset三个方法
|
|
60
|
+
// @en Export dom and three methods of start, pause and reset
|
|
69
61
|
(0, _react.useImperativeHandle)(ref, function () {
|
|
70
62
|
return {
|
|
71
63
|
dom: domRef.current,
|
|
@@ -7,9 +7,7 @@ exports.execTask = execTask;
|
|
|
7
7
|
exports.startTask = startTask;
|
|
8
8
|
exports.stopTask = stopTask;
|
|
9
9
|
exports.taskQueue = exports.taskCount = void 0;
|
|
10
|
-
|
|
11
10
|
var _util = require("./util");
|
|
12
|
-
|
|
13
11
|
var timeoutId = null;
|
|
14
12
|
var rafId = null;
|
|
15
13
|
var taskCount = {
|
|
@@ -22,21 +20,18 @@ var taskQueue = {
|
|
|
22
20
|
macro: []
|
|
23
21
|
};
|
|
24
22
|
exports.taskQueue = taskQueue;
|
|
25
|
-
|
|
26
23
|
function startTask(type, callback) {
|
|
27
24
|
taskCount[type] += 1;
|
|
28
25
|
taskQueue[type].push({
|
|
29
26
|
id: taskCount[type],
|
|
30
27
|
callback: callback
|
|
31
|
-
});
|
|
32
|
-
|
|
28
|
+
});
|
|
29
|
+
// 超过1个任务说明定时任务已建,执行时取最新queue即可
|
|
33
30
|
if (taskQueue[type].length <= 1) {
|
|
34
31
|
type === 'micro' ? execMicroTask() : execMacroTask();
|
|
35
32
|
}
|
|
36
|
-
|
|
37
33
|
return taskCount[type];
|
|
38
34
|
}
|
|
39
|
-
|
|
40
35
|
function execMicroTask() {
|
|
41
36
|
rafId && (0, _util.cancelRaf)(rafId);
|
|
42
37
|
rafId = (0, _util.raf)(function () {
|
|
@@ -44,7 +39,6 @@ function execMicroTask() {
|
|
|
44
39
|
taskQueue.micro.length && execMicroTask();
|
|
45
40
|
});
|
|
46
41
|
}
|
|
47
|
-
|
|
48
42
|
function execMacroTask() {
|
|
49
43
|
timeoutId && clearTimeout(timeoutId);
|
|
50
44
|
timeoutId = window.setTimeout(function () {
|
|
@@ -52,23 +46,19 @@ function execMacroTask() {
|
|
|
52
46
|
taskQueue.macro.length && execMacroTask();
|
|
53
47
|
}, 1000);
|
|
54
48
|
}
|
|
55
|
-
|
|
56
49
|
function execTask(type) {
|
|
57
50
|
taskQueue[type].forEach(function (item) {
|
|
58
51
|
var needContinue = item.callback();
|
|
59
|
-
|
|
60
52
|
if (!needContinue) {
|
|
61
53
|
stopTask(type, item.id);
|
|
62
54
|
}
|
|
63
55
|
});
|
|
64
56
|
}
|
|
65
|
-
|
|
66
57
|
function stopTask(type, id) {
|
|
67
58
|
var queue = taskQueue[type];
|
|
68
59
|
var index = queue.findIndex(function (val) {
|
|
69
60
|
return val.id === id;
|
|
70
61
|
});
|
|
71
|
-
|
|
72
62
|
if (index >= 0) {
|
|
73
63
|
taskQueue[type].splice(index, 1);
|
|
74
64
|
}
|
package/cjs/count-down/util.js
CHANGED
|
@@ -13,9 +13,10 @@ 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
|
-
// @en Parse milliseconds into TimeDataType format
|
|
16
|
+
var DAY = 24 * HOUR;
|
|
18
17
|
|
|
18
|
+
// 把毫秒解析成TimeDataType格式
|
|
19
|
+
// @en Parse milliseconds into TimeDataType format
|
|
19
20
|
function parseTime(time) {
|
|
20
21
|
var days = Math.floor(time / DAY);
|
|
21
22
|
var hours = Math.floor(time % DAY / HOUR);
|
|
@@ -29,112 +30,97 @@ function parseTime(time) {
|
|
|
29
30
|
seconds: seconds,
|
|
30
31
|
milliseconds: milliseconds
|
|
31
32
|
};
|
|
32
|
-
}
|
|
33
|
+
}
|
|
34
|
+
// 把TimeDataType解析成毫秒
|
|
33
35
|
// @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
|
-
}
|
|
48
|
+
}
|
|
49
|
+
// 判断是否在浏览器中运行
|
|
49
50
|
// @en Determine if it is running in the browser
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
var inBrowser = typeof window !== 'undefined'; // 判断根元素
|
|
51
|
+
var inBrowser = typeof window !== 'undefined';
|
|
52
|
+
// 判断根元素
|
|
53
53
|
// @en Determine the root element
|
|
54
|
-
|
|
55
54
|
exports.inBrowser = inBrowser;
|
|
56
|
-
var root = inBrowser ? window : global;
|
|
55
|
+
var root = inBrowser ? window : global;
|
|
56
|
+
// 根据id清除对应的animationFrame
|
|
57
57
|
// @en Clear the corresponding animationFrame according to the id
|
|
58
|
-
|
|
59
58
|
function cancelRaf(id) {
|
|
60
59
|
var cancelAnimationFrame = root.cancelAnimationFrame || root.clearTimeout;
|
|
61
60
|
cancelAnimationFrame.call(root, id);
|
|
62
|
-
}
|
|
61
|
+
}
|
|
62
|
+
// 计算现在时间
|
|
63
63
|
// @en Calculate the current time
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
var prev = Date.now(); // requestAnimationFrame不存在时用setTimeout代替,得出id
|
|
64
|
+
var prev = Date.now();
|
|
65
|
+
// requestAnimationFrame不存在时用setTimeout代替,得出id
|
|
67
66
|
// @en When requestAnimationFrame does not exist, use setTimeout instead to get the id
|
|
68
|
-
|
|
69
67
|
function rafPolyfill(fn) {
|
|
70
68
|
var curr = Date.now();
|
|
71
69
|
var ms = Math.max(0, 16 - (curr - prev));
|
|
72
70
|
var id = setTimeout(fn, ms);
|
|
73
71
|
prev = curr + ms;
|
|
74
72
|
return id;
|
|
75
|
-
}
|
|
73
|
+
}
|
|
74
|
+
// 得到animationFrame的id
|
|
76
75
|
// @en Get the id of animationFrame
|
|
77
|
-
|
|
78
|
-
|
|
79
76
|
function raf(fn) {
|
|
80
77
|
var requestAnimationFrame = root.requestAnimationFrame || rafPolyfill;
|
|
81
78
|
return requestAnimationFrame.call(root, fn);
|
|
82
|
-
}
|
|
79
|
+
}
|
|
80
|
+
// 补0成需要的格式
|
|
83
81
|
// @en Fill 0 into the required format
|
|
84
|
-
|
|
85
|
-
|
|
86
82
|
function padZero(num, targetLength) {
|
|
87
83
|
if (targetLength === void 0) {
|
|
88
84
|
targetLength = 2;
|
|
89
85
|
}
|
|
90
|
-
|
|
91
86
|
var str = "" + num;
|
|
92
|
-
|
|
93
87
|
while (str.length < targetLength) {
|
|
94
88
|
str = "0" + str;
|
|
95
89
|
}
|
|
96
|
-
|
|
97
90
|
return str;
|
|
98
|
-
}
|
|
91
|
+
}
|
|
92
|
+
// 根据传入的格式解析时间成特定格式
|
|
99
93
|
// @en Parse the time into a specific format according to the inputing format
|
|
100
|
-
|
|
101
|
-
|
|
102
94
|
function parseFormat(formatArg, currentTime) {
|
|
103
95
|
var days = currentTime.days;
|
|
104
96
|
var format = formatArg;
|
|
105
97
|
var hours = currentTime.hours,
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
98
|
+
minutes = currentTime.minutes,
|
|
99
|
+
seconds = currentTime.seconds,
|
|
100
|
+
milliseconds = currentTime.milliseconds;
|
|
110
101
|
if (format.includes('D')) {
|
|
111
102
|
format = format.replace('DD', padZero(days)).replace('D', "" + days);
|
|
112
103
|
} else {
|
|
113
104
|
hours += days * 24;
|
|
114
105
|
}
|
|
115
|
-
|
|
116
106
|
if (format.includes('H')) {
|
|
117
107
|
format = format.replace('HH', padZero(hours)).replace('H', "" + hours);
|
|
118
108
|
} else {
|
|
119
109
|
minutes += hours * 60;
|
|
120
110
|
}
|
|
121
|
-
|
|
122
111
|
if (format.includes('m')) {
|
|
123
112
|
format = format.replace('mm', padZero(minutes)).replace('m', "" + minutes);
|
|
124
113
|
} else {
|
|
125
114
|
seconds += minutes * 60;
|
|
126
115
|
}
|
|
127
|
-
|
|
128
116
|
if (format.includes('s')) {
|
|
129
117
|
format = format.replace('ss', padZero(seconds)).replace('s', "" + seconds);
|
|
130
118
|
} else {
|
|
131
119
|
milliseconds += seconds * 1000;
|
|
132
120
|
}
|
|
133
|
-
|
|
134
121
|
if (format.includes('S')) {
|
|
135
122
|
var ms = padZero(milliseconds, 3);
|
|
136
123
|
format = format.replace(/S{3}/, ms).replace(/S{2}/, ms.slice(0, 2)).replace(/S{1}/, ms.charAt(0));
|
|
137
124
|
}
|
|
138
|
-
|
|
139
125
|
return format;
|
|
140
126
|
}
|