@arco-design/mobile-react 2.24.1 → 2.25.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 +29 -0
- package/README.en-US.md +2 -2
- package/README.md +2 -2
- package/cjs/_helpers/hooks.js +42 -120
- package/cjs/_helpers/index.js +2 -13
- package/cjs/_helpers/react-dom.js +0 -12
- package/cjs/_helpers/render.js +0 -12
- package/cjs/action-sheet/index.js +10 -30
- package/cjs/action-sheet/methods.js +0 -2
- package/cjs/action-sheet/style/css/index.css +1 -1
- 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 +51 -77
- 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.css +3 -2
- 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/demo/style/css/mobile.css +12 -0
- package/cjs/carousel/demo/style/mobile.less +8 -0
- package/cjs/carousel/index.d.ts +1 -1
- package/cjs/carousel/index.js +159 -275
- 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 +14 -23
- 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.d.ts +4 -1
- package/cjs/checkbox/index.js +5 -10
- 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 +27 -56
- 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 +10 -28
- 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.d.ts +3 -2
- package/cjs/date-picker/index.js +52 -114
- package/cjs/date-picker/style/css/index.js +0 -2
- package/cjs/date-picker/style/index.js +0 -2
- package/cjs/dialog/index.js +28 -54
- package/cjs/dialog/methods.js +9 -22
- package/cjs/dialog/style/css/index.css +2 -1
- package/cjs/dialog/style/css/index.js +0 -2
- package/cjs/dialog/style/index.js +0 -2
- 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 +6 -27
- 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 +35 -71
- package/cjs/ellipsis/components/native-ellipsis.js +9 -15
- package/cjs/ellipsis/index.js +19 -32
- package/cjs/ellipsis/style/css/index.css +3 -0
- package/cjs/ellipsis/style/css/index.js +0 -1
- package/cjs/ellipsis/style/index.js +0 -1
- package/cjs/ellipsis/style/index.less +4 -0
- package/cjs/ellipsis/utils/dom.js +0 -8
- package/cjs/ellipsis/utils/is.js +1 -5
- package/cjs/form/form-item-context.d.ts +3 -0
- package/cjs/form/form-item-context.js +12 -0
- package/cjs/form/form-item.d.ts +4 -0
- package/cjs/form/form-item.js +313 -0
- package/cjs/form/index.d.ts +16 -0
- package/cjs/form/index.js +96 -0
- package/cjs/form/style/css/index.css +92 -0
- package/cjs/form/style/css/index.d.ts +2 -0
- package/cjs/form/style/css/index.js +4 -0
- package/cjs/form/style/index.d.ts +2 -0
- package/cjs/form/style/index.js +4 -0
- package/cjs/form/style/index.less +91 -0
- package/cjs/form/type.d.ts +371 -0
- package/cjs/form/type.js +30 -0
- package/cjs/form/useForm.d.ts +18 -0
- package/cjs/form/useForm.js +225 -0
- package/cjs/form/utils.d.ts +6 -0
- package/cjs/form/utils.js +36 -0
- package/cjs/grid/index.js +21 -41
- 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/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/IconGift/index.js +5 -12
- package/cjs/icon/IconHeart/index.js +5 -12
- package/cjs/icon/IconHome/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 -111
- package/cjs/image/index.js +53 -92
- 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.d.ts +3 -2
- package/cjs/image-picker/index.js +62 -103
- package/cjs/image-picker/style/css/index.js +0 -2
- package/cjs/image-picker/style/index.js +0 -2
- package/cjs/image-preview/demo/style/css/mobile.css +10 -0
- package/cjs/image-preview/demo/style/mobile.less +11 -0
- package/cjs/image-preview/index.d.ts +5 -0
- package/cjs/image-preview/index.js +124 -239
- package/cjs/image-preview/methods.js +5 -18
- package/cjs/image-preview/style/css/index.css +1 -0
- package/cjs/image-preview/style/css/index.js +0 -4
- package/cjs/image-preview/style/index.js +0 -4
- package/cjs/image-preview/style/index.less +1 -1
- package/cjs/index.d.ts +7 -6
- package/cjs/index.js +15 -120
- package/cjs/input/hooks.js +42 -75
- package/cjs/input/index.d.ts +3 -2
- package/cjs/input/index.js +36 -47
- package/cjs/input/style/css/index.css +1 -1
- package/cjs/input/style/css/index.js +0 -1
- package/cjs/input/style/index.js +0 -1
- package/cjs/load-more/index.js +29 -56
- 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 +46 -79
- package/cjs/masking/methods.js +4 -19
- package/cjs/masking/style/css/index.js +0 -2
- package/cjs/masking/style/index.js +0 -2
- package/cjs/nav-bar/back-icon.js +1 -5
- package/cjs/nav-bar/index.js +36 -60
- 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 +31 -54
- package/cjs/notice-bar/style/css/index.js +0 -1
- package/cjs/notice-bar/style/index.js +0 -1
- package/cjs/notify/index.d.ts +8 -8
- package/cjs/notify/index.js +20 -49
- package/cjs/notify/methods.js +2 -17
- package/cjs/notify/style/css/index.css +2 -2
- 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.d.ts +3 -2
- package/cjs/picker/index.js +50 -89
- package/cjs/picker/style/css/index.js +0 -3
- package/cjs/picker/style/index.js +0 -3
- package/cjs/picker-view/components/cascader.js +14 -31
- package/cjs/picker-view/components/multi-picker.js +6 -20
- package/cjs/picker-view/components/picker-cell.js +45 -97
- package/cjs/picker-view/index.d.ts +3 -2
- package/cjs/picker-view/index.js +36 -77
- 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 +94 -151
- package/cjs/popover/index.js +1 -8
- package/cjs/popover/menu.js +32 -51
- package/cjs/popover/popover-inner.js +30 -47
- 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 +38 -80
- 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 +58 -100
- package/cjs/pull-refresh/hooks.js +11 -32
- package/cjs/pull-refresh/index.d.ts +9 -3
- package/cjs/pull-refresh/index.js +5 -15
- package/cjs/pull-refresh/ios-pull-refresh.js +53 -80
- 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.d.ts +4 -1
- package/cjs/radio/index.js +5 -10
- 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.d.ts +3 -2
- package/cjs/rate/index.js +34 -57
- 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 +34 -93
- package/cjs/show-monitor/style/css/index.js +0 -1
- package/cjs/show-monitor/style/index.js +0 -1
- package/cjs/slider/hooks/index.js +0 -13
- package/cjs/slider/hooks/useSliderEvents.js +26 -55
- package/cjs/slider/hooks/useSliderIcon.js +6 -20
- package/cjs/slider/hooks/useSliderInit.js +32 -52
- package/cjs/slider/hooks/useSliderStyle.js +12 -24
- package/cjs/slider/index.d.ts +3 -2
- package/cjs/slider/index.js +56 -80
- package/cjs/slider/marks.js +12 -26
- 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 +8 -23
- package/cjs/stepper/hooks/useButtonClick.js +19 -28
- package/cjs/stepper/hooks/useInputEvent.js +9 -18
- package/cjs/stepper/hooks/useValue.js +9 -14
- package/cjs/stepper/index.d.ts +3 -2
- package/cjs/stepper/index.js +92 -103
- package/cjs/stepper/style/css/index.js +0 -1
- package/cjs/stepper/style/index.js +0 -1
- package/cjs/steps/index.js +22 -40
- package/cjs/steps/step.js +10 -27
- package/cjs/steps/style/css/index.css +2 -2
- package/cjs/steps/style/css/index.js +0 -1
- package/cjs/steps/style/index.js +0 -1
- package/cjs/sticky/index.js +37 -66
- package/cjs/sticky/style/css/index.js +0 -1
- package/cjs/sticky/style/index.js +0 -1
- package/cjs/style.d.ts +7 -6
- package/cjs/style.js +7 -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 +55 -83
- package/cjs/swipe-load/style/css/index.js +0 -1
- package/cjs/swipe-load/style/index.js +0 -1
- package/cjs/switch/index.d.ts +3 -2
- package/cjs/switch/index.js +37 -54
- 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 +15 -31
- package/cjs/tabs/index.js +129 -192
- package/cjs/tabs/style/css/index.js +0 -1
- package/cjs/tabs/style/index.js +0 -1
- package/cjs/tabs/tab-cell-underline.js +25 -64
- package/cjs/tabs/tab-cell.js +66 -108
- package/cjs/tabs/tab-pane.js +49 -94
- 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.d.ts +3 -2
- package/cjs/textarea/index.js +45 -63
- package/cjs/textarea/style/css/index.css +1 -1
- package/cjs/textarea/style/css/index.js +0 -2
- package/cjs/textarea/style/index.js +0 -2
- package/cjs/toast/index.d.ts +12 -12
- 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 +10 -18
- package/cjs/transition/style/css/index.js +0 -1
- package/cjs/transition/style/index.js +0 -1
- package/dist/index.js +21033 -20542
- package/dist/index.min.js +12 -3
- package/dist/style.css +826 -740
- package/dist/style.min.css +1 -1
- package/esm/_helpers/hooks.js +41 -99
- package/esm/_helpers/index.js +2 -3
- package/esm/_helpers/react-dom.js +0 -10
- package/esm/_helpers/render.js +0 -7
- package/esm/action-sheet/index.js +10 -16
- package/esm/action-sheet/style/css/index.css +1 -1
- package/esm/avatar/group.js +12 -16
- package/esm/avatar/index.js +51 -62
- package/esm/badge/index.js +18 -22
- package/esm/badge/style/css/index.css +3 -2
- package/esm/button/hooks.js +15 -18
- package/esm/button/index.js +46 -57
- package/esm/carousel/demo/style/css/mobile.css +12 -0
- package/esm/carousel/demo/style/mobile.less +8 -0
- package/esm/carousel/index.d.ts +1 -1
- package/esm/carousel/index.js +159 -267
- package/esm/cell/cell.js +14 -14
- 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.d.ts +4 -1
- package/esm/checkbox/index.js +5 -3
- package/esm/checkbox/type.js +0 -1
- package/esm/circle-progress/index.js +37 -49
- package/esm/collapse/collapse.js +27 -46
- 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 +10 -18
- 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.d.ts +3 -2
- package/esm/date-picker/index.js +53 -103
- package/esm/dialog/index.js +28 -39
- package/esm/dialog/methods.js +9 -11
- package/esm/dialog/style/css/index.css +2 -1
- 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 +6 -16
- package/esm/dropdown-menu/index.js +1 -1
- package/esm/ellipsis/components/js-ellipsis.js +35 -62
- package/esm/ellipsis/components/native-ellipsis.js +9 -11
- package/esm/ellipsis/index.js +20 -21
- package/esm/ellipsis/style/css/index.css +3 -0
- package/esm/ellipsis/style/index.less +4 -0
- package/esm/ellipsis/utils/dom.js +0 -7
- package/esm/ellipsis/utils/is.js +1 -1
- package/esm/form/form-item-context.d.ts +3 -0
- package/esm/form/form-item-context.js +6 -0
- package/esm/form/form-item.d.ts +4 -0
- package/esm/form/form-item.js +306 -0
- package/esm/form/index.d.ts +16 -0
- package/esm/form/index.js +79 -0
- package/esm/form/style/css/index.css +92 -0
- package/esm/form/style/css/index.d.ts +2 -0
- package/esm/form/style/css/index.js +2 -0
- package/esm/form/style/index.d.ts +2 -0
- package/esm/form/style/index.js +2 -0
- package/esm/form/style/index.less +91 -0
- package/esm/form/type.d.ts +371 -0
- package/esm/form/type.js +24 -0
- package/esm/form/useForm.d.ts +18 -0
- package/esm/form/useForm.js +217 -0
- package/esm/form/utils.d.ts +6 -0
- package/esm/form/utils.js +30 -0
- package/esm/grid/index.js +21 -34
- 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/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/IconGift/index.js +5 -6
- package/esm/icon/IconHeart/index.js +5 -6
- package/esm/icon/IconHome/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 -83
- package/esm/image-picker/index.d.ts +3 -2
- package/esm/image-picker/index.js +63 -90
- package/esm/image-preview/demo/style/css/mobile.css +10 -0
- package/esm/image-preview/demo/style/mobile.less +11 -0
- package/esm/image-preview/index.d.ts +5 -0
- package/esm/image-preview/index.js +124 -218
- package/esm/image-preview/methods.js +4 -14
- package/esm/image-preview/style/css/index.css +1 -0
- package/esm/image-preview/style/index.less +1 -1
- package/esm/index.d.ts +7 -6
- package/esm/index.js +7 -6
- package/esm/input/hooks.js +42 -67
- package/esm/input/index.d.ts +3 -2
- package/esm/input/index.js +37 -40
- package/esm/input/style/css/index.css +1 -1
- package/esm/load-more/index.js +29 -48
- package/esm/loading/index.js +19 -40
- package/esm/masking/index.js +46 -64
- package/esm/masking/methods.js +4 -15
- package/esm/nav-bar/back-icon.js +1 -3
- package/esm/nav-bar/index.js +36 -51
- package/esm/notice-bar/index.js +31 -47
- package/esm/notify/index.d.ts +8 -8
- package/esm/notify/index.js +20 -33
- package/esm/notify/methods.js +2 -13
- package/esm/notify/style/css/index.css +2 -2
- package/esm/pagination/index.js +27 -50
- package/esm/picker/index.d.ts +3 -2
- package/esm/picker/index.js +51 -76
- package/esm/picker-view/components/cascader.js +14 -23
- package/esm/picker-view/components/multi-picker.js +6 -16
- package/esm/picker-view/components/picker-cell.js +45 -89
- package/esm/picker-view/index.d.ts +3 -2
- package/esm/picker-view/index.js +36 -63
- package/esm/popover/hooks/useEvent.js +26 -41
- package/esm/popover/hooks/usePosition.js +94 -144
- package/esm/popover/index.js +2 -2
- package/esm/popover/menu.js +32 -41
- package/esm/popover/popover-inner.js +30 -38
- package/esm/popover/popover.js +69 -90
- package/esm/popup/index.js +22 -25
- package/esm/popup-swiper/index.js +38 -64
- package/esm/portal/index.js +3 -5
- package/esm/progress/index.js +27 -36
- package/esm/pull-refresh/android-pull-refresh.js +58 -90
- package/esm/pull-refresh/hooks.js +11 -23
- package/esm/pull-refresh/index.d.ts +9 -3
- package/esm/pull-refresh/index.js +5 -6
- 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.d.ts +4 -1
- package/esm/radio/index.js +5 -3
- package/esm/rate/index.d.ts +3 -2
- package/esm/rate/index.js +35 -49
- 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 +34 -85
- package/esm/slider/hooks/useSliderEvents.js +26 -51
- package/esm/slider/hooks/useSliderIcon.js +6 -13
- package/esm/slider/hooks/useSliderInit.js +32 -46
- package/esm/slider/hooks/useSliderStyle.js +12 -20
- package/esm/slider/index.d.ts +3 -2
- package/esm/slider/index.js +57 -72
- package/esm/slider/marks.js +12 -18
- package/esm/slider/popover.js +4 -6
- package/esm/slider/thumb.js +8 -15
- package/esm/stepper/hooks/useButtonClick.js +19 -27
- package/esm/stepper/hooks/useInputEvent.js +9 -16
- package/esm/stepper/hooks/useValue.js +9 -12
- package/esm/stepper/index.d.ts +3 -2
- package/esm/stepper/index.js +93 -92
- package/esm/steps/index.js +22 -27
- package/esm/steps/step.js +10 -19
- package/esm/steps/style/css/index.css +2 -2
- package/esm/sticky/index.js +37 -57
- package/esm/style.d.ts +7 -6
- package/esm/style.js +7 -6
- package/esm/swipe-action/index.js +40 -80
- package/esm/swipe-action/item.js +9 -12
- package/esm/swipe-load/index.js +56 -75
- package/esm/switch/index.d.ts +3 -2
- package/esm/switch/index.js +38 -49
- package/esm/tab-bar/index.js +0 -1
- package/esm/tab-bar/item.js +6 -13
- package/esm/tab-bar/tab-bar.js +15 -21
- package/esm/tabs/index.js +130 -180
- package/esm/tabs/tab-cell-underline.js +25 -56
- package/esm/tabs/tab-cell.js +66 -98
- package/esm/tabs/tab-pane.js +49 -85
- 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.d.ts +3 -2
- package/esm/textarea/index.js +46 -56
- package/esm/textarea/style/css/index.css +1 -1
- package/esm/toast/index.d.ts +12 -12
- package/esm/toast/index.js +26 -42
- package/esm/toast/methods.js +2 -12
- package/esm/transition/index.js +10 -12
- package/package.json +3 -4
- package/style/css/public.css +1 -0
- package/tokens/app/arcodesign/default/css-variables.less +17 -7
- package/tokens/app/arcodesign/default/index.d.ts +10 -0
- package/tokens/app/arcodesign/default/index.js +18 -10
- package/tokens/app/arcodesign/default/index.json +139 -23
- package/tokens/app/arcodesign/default/index.less +17 -7
- package/umd/_helpers/hooks.js +42 -117
- package/umd/_helpers/index.js +2 -6
- package/umd/_helpers/react-dom.js +0 -11
- package/umd/_helpers/render.js +0 -9
- package/umd/action-sheet/index.js +10 -22
- package/umd/action-sheet/methods.js +0 -1
- package/umd/action-sheet/style/css/index.css +1 -1
- package/umd/avatar/group.js +12 -20
- package/umd/avatar/index.js +51 -68
- package/umd/badge/index.js +18 -25
- package/umd/badge/style/css/index.css +3 -2
- package/umd/button/hooks.js +15 -19
- package/umd/button/index.js +46 -60
- package/umd/carousel/demo/style/css/mobile.css +12 -0
- package/umd/carousel/demo/style/mobile.less +8 -0
- package/umd/carousel/index.d.ts +1 -1
- package/umd/carousel/index.js +159 -270
- package/umd/cell/arrow.js +0 -2
- package/umd/cell/cell.js +14 -18
- 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.d.ts +4 -1
- package/umd/checkbox/index.js +5 -5
- package/umd/checkbox/type.js +0 -2
- package/umd/circle-progress/index.js +37 -52
- package/umd/collapse/collapse.js +27 -50
- 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 +10 -23
- 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.d.ts +3 -2
- package/umd/date-picker/index.js +52 -105
- package/umd/dialog/index.js +28 -44
- package/umd/dialog/methods.js +9 -18
- package/umd/dialog/style/css/index.css +2 -1
- 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 +6 -25
- package/umd/dropdown-menu/index.js +0 -2
- package/umd/ellipsis/components/js-ellipsis.js +35 -68
- package/umd/ellipsis/components/native-ellipsis.js +9 -13
- package/umd/ellipsis/index.js +19 -24
- package/umd/ellipsis/style/css/index.css +3 -0
- package/umd/ellipsis/style/index.less +4 -0
- package/umd/ellipsis/utils/dom.js +0 -8
- package/umd/ellipsis/utils/is.js +1 -5
- package/umd/form/form-item-context.d.ts +3 -0
- package/umd/form/form-item-context.js +25 -0
- package/umd/form/form-item.d.ts +4 -0
- package/umd/form/form-item.js +322 -0
- package/umd/form/index.d.ts +16 -0
- package/umd/form/index.js +106 -0
- package/umd/form/style/css/index.css +92 -0
- package/umd/form/style/css/index.d.ts +2 -0
- package/umd/form/style/css/index.js +15 -0
- package/umd/form/style/index.d.ts +2 -0
- package/umd/form/style/index.js +15 -0
- package/umd/form/style/index.less +91 -0
- package/umd/form/type.d.ts +371 -0
- package/umd/form/type.js +44 -0
- package/umd/form/useForm.d.ts +18 -0
- package/umd/form/useForm.js +238 -0
- package/umd/form/utils.d.ts +6 -0
- package/umd/form/utils.js +50 -0
- package/umd/grid/index.js +21 -37
- 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/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/IconGift/index.js +5 -7
- package/umd/icon/IconHeart/index.js +5 -7
- package/umd/icon/IconHome/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 -86
- package/umd/image-picker/add-icon.js +0 -2
- package/umd/image-picker/index.d.ts +3 -2
- package/umd/image-picker/index.js +62 -92
- package/umd/image-preview/demo/style/css/mobile.css +10 -0
- package/umd/image-preview/demo/style/mobile.less +11 -0
- package/umd/image-preview/index.d.ts +5 -0
- package/umd/image-preview/index.js +124 -224
- package/umd/image-preview/methods.js +5 -15
- package/umd/image-preview/style/css/index.css +1 -0
- package/umd/image-preview/style/index.less +1 -1
- package/umd/index.d.ts +7 -6
- package/umd/index.js +19 -18
- package/umd/input/hooks.js +42 -71
- package/umd/input/index.d.ts +3 -2
- package/umd/input/index.js +36 -42
- package/umd/input/style/css/index.css +1 -1
- package/umd/load-more/index.js +29 -51
- package/umd/loading/index.js +19 -43
- package/umd/masking/index.js +46 -71
- package/umd/masking/methods.js +4 -16
- package/umd/nav-bar/back-icon.js +1 -4
- package/umd/nav-bar/index.js +36 -54
- package/umd/notice-bar/index.js +31 -50
- package/umd/notify/index.d.ts +8 -8
- package/umd/notify/index.js +20 -40
- package/umd/notify/methods.js +2 -14
- package/umd/notify/style/css/index.css +2 -2
- package/umd/pagination/arrow.js +0 -2
- package/umd/pagination/index.js +27 -53
- package/umd/picker/index.d.ts +3 -2
- package/umd/picker/index.js +50 -78
- package/umd/picker-view/components/cascader.js +14 -27
- package/umd/picker-view/components/multi-picker.js +6 -19
- package/umd/picker-view/components/picker-cell.js +45 -93
- package/umd/picker-view/index.d.ts +3 -2
- package/umd/picker-view/index.js +39 -69
- package/umd/popover/hooks/useEvent.js +25 -44
- package/umd/popover/hooks/usePosition.js +94 -145
- package/umd/popover/index.js +1 -3
- package/umd/popover/menu.js +32 -45
- package/umd/popover/popover-inner.js +30 -42
- 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 +38 -71
- 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 +58 -93
- package/umd/pull-refresh/hooks.js +11 -29
- package/umd/pull-refresh/index.d.ts +9 -3
- package/umd/pull-refresh/index.js +5 -8
- 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.d.ts +4 -1
- package/umd/radio/index.js +5 -5
- package/umd/radio/radio.js +0 -5
- package/umd/rate/index.d.ts +3 -2
- package/umd/rate/index.js +34 -51
- 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 +34 -89
- package/umd/slider/hooks/index.js +0 -4
- package/umd/slider/hooks/useSliderEvents.js +26 -52
- package/umd/slider/hooks/useSliderIcon.js +6 -17
- package/umd/slider/hooks/useSliderInit.js +32 -50
- package/umd/slider/hooks/useSliderStyle.js +12 -22
- package/umd/slider/index.d.ts +3 -2
- package/umd/slider/index.js +56 -73
- package/umd/slider/marks.js +12 -21
- package/umd/slider/popover.js +4 -10
- package/umd/slider/thumb.js +8 -18
- package/umd/stepper/hooks/useButtonClick.js +19 -27
- package/umd/stepper/hooks/useInputEvent.js +9 -17
- package/umd/stepper/hooks/useValue.js +9 -13
- package/umd/stepper/index.d.ts +3 -2
- package/umd/stepper/index.js +92 -94
- package/umd/steps/index.js +22 -32
- package/umd/steps/step.js +10 -22
- package/umd/steps/style/css/index.css +2 -2
- package/umd/sticky/index.js +37 -60
- package/umd/style.d.ts +7 -6
- package/umd/style.js +4 -4
- package/umd/swipe-action/index.js +40 -84
- package/umd/swipe-action/item.js +9 -14
- package/umd/swipe-load/index.js +55 -77
- package/umd/switch/index.d.ts +3 -2
- package/umd/switch/index.js +37 -50
- package/umd/tab-bar/index.js +0 -2
- package/umd/tab-bar/item.js +6 -19
- package/umd/tab-bar/tab-bar.js +15 -26
- package/umd/tabs/index.js +129 -183
- package/umd/tabs/tab-cell-underline.js +25 -60
- package/umd/tabs/tab-cell.js +66 -103
- package/umd/tabs/tab-pane.js +49 -89
- 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.d.ts +3 -2
- package/umd/textarea/index.js +45 -58
- package/umd/textarea/style/css/index.css +1 -1
- package/umd/toast/index.d.ts +12 -12
- package/umd/toast/index.js +26 -49
- package/umd/toast/methods.js +2 -13
- package/umd/transition/index.js +10 -12
@@ -12,93 +12,87 @@ var defaultPosition = {
|
|
12
12
|
height: null,
|
13
13
|
arrowLeft: 0
|
14
14
|
};
|
15
|
+
|
15
16
|
/**
|
16
17
|
* 安全边界距离默认值
|
17
18
|
* @en Default safe boundary distance
|
18
19
|
*/
|
19
|
-
|
20
20
|
var defaultEdgeOffsetValue = 14;
|
21
|
+
|
21
22
|
/**
|
22
23
|
* 安全距离默认值
|
23
24
|
* @en Default safe distance
|
24
25
|
*/
|
25
|
-
|
26
26
|
var defaultEdgeOffset = {
|
27
27
|
top: defaultEdgeOffsetValue,
|
28
28
|
right: defaultEdgeOffsetValue,
|
29
29
|
bottom: defaultEdgeOffsetValue,
|
30
30
|
left: defaultEdgeOffsetValue
|
31
31
|
};
|
32
|
+
|
32
33
|
/**
|
33
34
|
* 自适应默认值
|
34
35
|
* @en Default autoDirection
|
35
36
|
*/
|
36
|
-
|
37
37
|
export var defaultAutoDirection = true;
|
38
38
|
export var usePosition = function usePosition(props, popoverRef, childRef, wrapperRef) {
|
39
39
|
var _props$direction = props.direction,
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
40
|
+
direction = _props$direction === void 0 ? 'topRight' : _props$direction,
|
41
|
+
_props$verticalOffset = props.verticalOffset,
|
42
|
+
verticalOffset = _props$verticalOffset === void 0 ? 10 : _props$verticalOffset,
|
43
|
+
_props$horizontalOffs = props.horizontalOffset,
|
44
|
+
horizontalOffset = _props$horizontalOffs === void 0 ? 8 : _props$horizontalOffs,
|
45
|
+
_props$edgeOffset = props.edgeOffset,
|
46
|
+
edgeOffset = _props$edgeOffset === void 0 ? defaultEdgeOffsetValue : _props$edgeOffset,
|
47
|
+
_props$arrowWidth = props.arrowWidth,
|
48
|
+
arrowWidth = _props$arrowWidth === void 0 ? 9 : _props$arrowWidth,
|
49
|
+
_props$mode = props.mode,
|
50
|
+
mode = _props$mode === void 0 ? 'follow' : _props$mode,
|
51
|
+
_props$useAutoDirecti = props.useAutoDirection,
|
52
|
+
useAutoDirection = _props$useAutoDirecti === void 0 ? defaultAutoDirection : _props$useAutoDirecti;
|
53
|
+
|
53
54
|
/**
|
54
55
|
* 气泡的位置信息
|
55
56
|
* @en Position information of the bubbles
|
56
57
|
*/
|
57
|
-
|
58
58
|
var _useState = useState(defaultPosition),
|
59
|
-
|
60
|
-
|
59
|
+
position = _useState[0],
|
60
|
+
setPosition = _useState[1];
|
61
|
+
|
61
62
|
/**
|
62
63
|
* 是否在计算气泡位置
|
63
64
|
* @en Whether to calculate the bubble position
|
64
65
|
*/
|
65
|
-
|
66
|
-
|
67
66
|
var isCalcPosition = useMemo(function () {
|
68
67
|
var top = position.top,
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
|
68
|
+
bottom = position.bottom,
|
69
|
+
height = position.height,
|
70
|
+
left = position.left,
|
71
|
+
width = position.width;
|
74
72
|
if (left || width || top || height || bottom) {
|
75
73
|
return false;
|
76
74
|
}
|
77
|
-
|
78
75
|
return true;
|
79
76
|
}, [position]);
|
77
|
+
|
80
78
|
/**
|
81
79
|
* 缩放动画中心,尖角的顶部
|
82
80
|
* @en Scale animation center, top of sharp corners
|
83
81
|
*/
|
84
|
-
|
85
82
|
var _useState2 = useState({
|
86
|
-
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
|
83
|
+
x: '0',
|
84
|
+
y: '0'
|
85
|
+
}),
|
86
|
+
transformOrigin = _useState2[0],
|
87
|
+
setTransformOrigin = _useState2[1];
|
91
88
|
/**
|
92
89
|
* 气泡方向,可以会自适应变化
|
93
90
|
* @en Bubble direction, can be adaptively changed
|
94
91
|
*/
|
95
|
-
|
96
|
-
|
97
92
|
var _useRefState = useRefState(direction),
|
98
|
-
|
99
|
-
|
100
|
-
|
101
|
-
|
93
|
+
directionState = _useRefState[0],
|
94
|
+
directionStateRef = _useRefState[1],
|
95
|
+
setDirectionState = _useRefState[2];
|
102
96
|
var getOffset = useCallback(function (dir) {
|
103
97
|
return getDefaultValue(isObject(edgeOffset) ? edgeOffset[dir] : edgeOffset, defaultEdgeOffset[dir]);
|
104
98
|
}, [edgeOffset]);
|
@@ -108,108 +102,95 @@ export var usePosition = function usePosition(props, popoverRef, childRef, wrapp
|
|
108
102
|
useEffect(function () {
|
109
103
|
setDirectionState(direction);
|
110
104
|
}, [direction]);
|
105
|
+
|
111
106
|
/**
|
112
107
|
* 调整尖角图标的位置
|
113
108
|
* @en Adjust the position of the sharp corner icon
|
114
109
|
*/
|
115
|
-
|
116
110
|
function adjustArrow(_ref) {
|
117
111
|
var childRect = _ref.childRect,
|
118
|
-
|
119
|
-
|
112
|
+
config = _ref.config;
|
120
113
|
if (directionState.indexOf('Left') !== -1 || directionState.indexOf('Right') !== -1) {
|
121
114
|
return (childRect.width - arrowWidth) / 2 + horizontalOffset;
|
122
115
|
}
|
123
|
-
|
124
116
|
return (config.width - arrowWidth) / 2;
|
125
117
|
}
|
118
|
+
|
126
119
|
/**
|
127
120
|
* 如果提示框超出屏幕,则向屏幕中间调整一下
|
128
121
|
* @en If the prompt box is beyond the screen, adjust it to the middle of the screen
|
129
122
|
*/
|
130
|
-
|
131
|
-
|
132
123
|
function adjustEdge(_ref2) {
|
133
124
|
var childRect = _ref2.childRect,
|
134
|
-
|
135
|
-
|
125
|
+
config = _ref2.config;
|
136
126
|
var newConfig = _extends({}, config, {
|
137
127
|
adjustOffset: 0
|
138
128
|
});
|
139
|
-
|
140
129
|
newConfig.arrowLeft = adjustArrow({
|
141
130
|
childRect: childRect,
|
142
131
|
config: config
|
143
132
|
});
|
144
133
|
var screenWidth = screen.availWidth;
|
145
134
|
var _ref3 = [getOffset('top'), getOffset('right'), getOffset('bottom'), getOffset('left')],
|
146
|
-
|
147
|
-
|
148
|
-
|
149
|
-
|
135
|
+
topOffset = _ref3[0],
|
136
|
+
rightOffset = _ref3[1],
|
137
|
+
bottomOffset = _ref3[2],
|
138
|
+
leftOffset = _ref3[3];
|
150
139
|
var _ref4 = [getAutoDirection('vertical'), getAutoDirection('horizontal')],
|
151
|
-
|
152
|
-
|
153
|
-
// @en Automatic adjustment of safety distance in horizontal direction
|
140
|
+
verticalAuto = _ref4[0],
|
141
|
+
horizontalAuto = _ref4[1];
|
154
142
|
|
143
|
+
// 水平方向安全距离自动调整
|
144
|
+
// @en Automatic adjustment of safety distance in horizontal direction
|
155
145
|
if (horizontalAuto) {
|
156
146
|
if (directionState.indexOf('Right') !== -1) {
|
157
|
-
var overflow = Number(config.width) - childRect.left - childRect.width;
|
147
|
+
var overflow = Number(config.width) - childRect.left - childRect.width;
|
148
|
+
// 左边是否溢出,向右平移安全距离
|
158
149
|
// @en Whether the left overflows, pan to the right by a safe distance
|
159
|
-
|
160
150
|
if (overflow > 0) {
|
161
151
|
var adjustOffset = overflow + leftOffset;
|
162
152
|
newConfig.left = Number(newConfig.left) + adjustOffset;
|
163
153
|
newConfig.arrowLeft += adjustOffset;
|
164
154
|
newConfig.adjustOffset = adjustOffset;
|
165
|
-
}
|
155
|
+
}
|
156
|
+
// 右边是否溢出,向左平移
|
166
157
|
// @en Whether to overflow on the right, pan to the left
|
167
|
-
|
168
|
-
|
169
158
|
if (screenWidth - childRect.right < rightOffset) {
|
170
159
|
overflow = rightOffset;
|
171
|
-
|
172
160
|
var _adjustOffset = -(overflow - (screenWidth - childRect.right));
|
173
|
-
|
174
161
|
newConfig.left = Number(newConfig.left) + _adjustOffset;
|
175
162
|
newConfig.adjustOffset = _adjustOffset;
|
176
163
|
}
|
177
164
|
} else if (directionState.indexOf('Center') !== -1) {
|
178
165
|
var beyondChildEdge = (Number(config.width) - childRect.width) / 2;
|
179
166
|
var rightOverflow = beyondChildEdge - (screenWidth - childRect.right);
|
180
|
-
var leftOverflow = beyondChildEdge - childRect.left;
|
167
|
+
var leftOverflow = beyondChildEdge - childRect.left;
|
168
|
+
// 右边是否溢出
|
181
169
|
// @en Whether to overflow on the right
|
182
|
-
|
183
170
|
if (rightOverflow > 0) {
|
184
171
|
var _adjustOffset2 = -(rightOverflow + rightOffset);
|
185
|
-
|
186
172
|
newConfig.left = Number(newConfig.left) + _adjustOffset2;
|
187
173
|
newConfig.arrowLeft -= _adjustOffset2;
|
188
174
|
newConfig.adjustOffset = _adjustOffset2;
|
189
|
-
}
|
175
|
+
}
|
176
|
+
// 左边是否溢出
|
190
177
|
// @en Whether the left overflow
|
191
|
-
|
192
|
-
|
193
178
|
if (leftOverflow > 0) {
|
194
179
|
var _adjustOffset3 = leftOverflow + leftOffset;
|
195
|
-
|
196
180
|
newConfig.left = Number(newConfig.left) + _adjustOffset3;
|
197
181
|
newConfig.arrowLeft -= _adjustOffset3;
|
198
182
|
newConfig.adjustOffset = _adjustOffset3;
|
199
183
|
}
|
200
184
|
} else if (directionState.indexOf('Left') !== -1) {
|
201
|
-
var _overflow = Number(config.width) - childRect.width - (screenWidth - childRect.right);
|
185
|
+
var _overflow = Number(config.width) - childRect.width - (screenWidth - childRect.right);
|
186
|
+
// 右边是否溢出
|
202
187
|
// @en Whether to overflow on the right
|
203
|
-
|
204
|
-
|
205
188
|
if (_overflow > 0) {
|
206
189
|
var _adjustOffset4 = -(_overflow + rightOffset);
|
207
|
-
|
208
190
|
newConfig.left = Number(newConfig.left) + _adjustOffset4;
|
209
191
|
newConfig.arrowLeft -= _adjustOffset4;
|
210
192
|
newConfig.adjustOffset = _adjustOffset4;
|
211
193
|
}
|
212
|
-
|
213
194
|
if (childRect.left < leftOffset) {
|
214
195
|
// 左边是否不够
|
215
196
|
// @en Whether the left is not enough
|
@@ -218,15 +199,16 @@ export var usePosition = function usePosition(props, popoverRef, childRef, wrapp
|
|
218
199
|
newConfig.adjustOffset = leftOffset;
|
219
200
|
}
|
220
201
|
}
|
221
|
-
}
|
222
|
-
// @en Vertical safety distance adjustment
|
223
|
-
|
202
|
+
}
|
224
203
|
|
204
|
+
// 垂直方向安全距离调整
|
205
|
+
// @en Vertical safety distance adjustment
|
225
206
|
if (verticalAuto) {
|
226
207
|
var popoverTop = childRect.bottom - (newConfig.bottom && newConfig.height ? newConfig.bottom + newConfig.height : 0);
|
227
|
-
var popoverBottom = childRect.top + (newConfig.top && newConfig.height ? newConfig.top + newConfig.height : 0);
|
228
|
-
// @en The top safety distance is not enough, adjust to the bottom
|
208
|
+
var popoverBottom = childRect.top + (newConfig.top && newConfig.height ? newConfig.top + newConfig.height : 0);
|
229
209
|
|
210
|
+
// 顶部安全距离不够,调整到底部
|
211
|
+
// @en The top safety distance is not enough, adjust to the bottom
|
230
212
|
if (directionState.indexOf('top') !== -1 && popoverTop < topOffset) {
|
231
213
|
newConfig.top = verticalOffset + childRect.height;
|
232
214
|
newConfig.bottom = null;
|
@@ -238,35 +220,30 @@ export var usePosition = function usePosition(props, popoverRef, childRef, wrapp
|
|
238
220
|
newConfig.bottom = verticalOffset + childRect.height;
|
239
221
|
onAdjustDirection('top');
|
240
222
|
}
|
241
|
-
}
|
242
|
-
// @en Bubble mounted in the global needs to calculate the position relative to the screen
|
243
|
-
|
223
|
+
}
|
244
224
|
|
225
|
+
// 挂载在全局的气泡需要计算相对屏幕的位置
|
226
|
+
// @en Bubble mounted in the global needs to calculate the position relative to the screen
|
245
227
|
if (mode === 'global') {
|
246
228
|
var wrapperEl = wrapperRef.current;
|
247
229
|
if (!wrapperEl) return newConfig;
|
248
|
-
|
249
230
|
var _wrapperEl$getBoundin = wrapperEl.getBoundingClientRect(),
|
250
|
-
|
251
|
-
|
252
|
-
|
253
|
-
|
231
|
+
top = _wrapperEl$getBoundin.top,
|
232
|
+
left = _wrapperEl$getBoundin.left,
|
233
|
+
bottom = _wrapperEl$getBoundin.bottom;
|
254
234
|
if (newConfig.left !== null) newConfig.left += left;
|
255
235
|
if (newConfig.top !== null) newConfig.top += top;
|
256
|
-
|
257
236
|
if (newConfig.bottom !== null) {
|
258
237
|
var windowInnerHeight = window.innerHeight || document.documentElement.clientHeight;
|
259
238
|
newConfig.bottom = windowInnerHeight - (bottom - newConfig.bottom);
|
260
239
|
}
|
261
240
|
}
|
262
|
-
|
263
241
|
return newConfig;
|
264
242
|
}
|
243
|
+
|
265
244
|
/**
|
266
245
|
* 计算缩放动画中心尖角顶部的位置
|
267
246
|
*/
|
268
|
-
|
269
|
-
|
270
247
|
function getOrigin(config, adjustOffset) {
|
271
248
|
var arrowLeft = config.arrowLeft;
|
272
249
|
var width = config.width || 0;
|
@@ -274,7 +251,6 @@ export var usePosition = function usePosition(props, popoverRef, childRef, wrapp
|
|
274
251
|
var halfArrowWidth = arrowWidth / 2;
|
275
252
|
var x = width / 2 + "px";
|
276
253
|
var y = directionStateRef.current.indexOf('top') > -1 ? halfArrowWidth + height + "px" : "-" + halfArrowWidth + "px";
|
277
|
-
|
278
254
|
if (directionStateRef.current.indexOf('Left') > -1) {
|
279
255
|
x = arrowLeft + halfArrowWidth + "px";
|
280
256
|
} else if (directionStateRef.current.indexOf('Right') > -1) {
|
@@ -282,37 +258,33 @@ export var usePosition = function usePosition(props, popoverRef, childRef, wrapp
|
|
282
258
|
} else {
|
283
259
|
x = width / 2 - adjustOffset + "px";
|
284
260
|
}
|
285
|
-
|
286
261
|
return {
|
287
262
|
x: x,
|
288
263
|
y: y
|
289
264
|
};
|
290
265
|
}
|
266
|
+
|
291
267
|
/**
|
292
268
|
* 调整边界并更新气泡位置
|
293
269
|
* @en Adjust bounds and update bubble position
|
294
270
|
*/
|
295
|
-
|
296
|
-
|
297
271
|
function judgeAndUpdatePosition(childRect, config) {
|
298
272
|
var _adjustEdge = adjustEdge({
|
299
|
-
|
300
|
-
|
301
|
-
|
302
|
-
|
303
|
-
|
304
|
-
|
273
|
+
childRect: childRect,
|
274
|
+
config: config
|
275
|
+
}),
|
276
|
+
adjustOffset = _adjustEdge.adjustOffset,
|
277
|
+
newConfig = _objectWithoutPropertiesLoose(_adjustEdge, _excluded);
|
305
278
|
var newTransformOrigin = getOrigin(newConfig, adjustOffset);
|
306
279
|
setTransformOrigin(newTransformOrigin);
|
307
280
|
setPosition(newConfig);
|
308
281
|
}
|
309
|
-
/* eslint-disable react-hooks/exhaustive-deps */
|
310
|
-
|
311
282
|
|
283
|
+
/* eslint-disable react-hooks/exhaustive-deps */
|
312
284
|
var setTopRightOffset = function setTopRightOffset(_ref5) {
|
313
285
|
var popoverWidth = _ref5.popoverWidth,
|
314
|
-
|
315
|
-
|
286
|
+
popoverHeight = _ref5.popoverHeight,
|
287
|
+
childRect = _ref5.childRect;
|
316
288
|
var left = -(popoverWidth - childRect.width - horizontalOffset);
|
317
289
|
var bottom = verticalOffset + childRect.height;
|
318
290
|
var config = {
|
@@ -325,11 +297,10 @@ export var usePosition = function usePosition(props, popoverRef, childRef, wrapp
|
|
325
297
|
};
|
326
298
|
judgeAndUpdatePosition(childRect, config);
|
327
299
|
};
|
328
|
-
|
329
300
|
var setTopCenterOffset = function setTopCenterOffset(_ref6) {
|
330
301
|
var popoverWidth = _ref6.popoverWidth,
|
331
|
-
|
332
|
-
|
302
|
+
popoverHeight = _ref6.popoverHeight,
|
303
|
+
childRect = _ref6.childRect;
|
333
304
|
var left = -(popoverWidth - childRect.width) / 2;
|
334
305
|
var bottom = verticalOffset + childRect.height;
|
335
306
|
var config = {
|
@@ -342,11 +313,10 @@ export var usePosition = function usePosition(props, popoverRef, childRef, wrapp
|
|
342
313
|
};
|
343
314
|
judgeAndUpdatePosition(childRect, config);
|
344
315
|
};
|
345
|
-
|
346
316
|
var setTopLeftOffset = function setTopLeftOffset(_ref7) {
|
347
317
|
var popoverWidth = _ref7.popoverWidth,
|
348
|
-
|
349
|
-
|
318
|
+
popoverHeight = _ref7.popoverHeight,
|
319
|
+
childRect = _ref7.childRect;
|
350
320
|
var left = -horizontalOffset;
|
351
321
|
var bottom = verticalOffset + childRect.height;
|
352
322
|
var config = {
|
@@ -359,11 +329,10 @@ export var usePosition = function usePosition(props, popoverRef, childRef, wrapp
|
|
359
329
|
};
|
360
330
|
judgeAndUpdatePosition(childRect, config);
|
361
331
|
};
|
362
|
-
|
363
332
|
var setBottomRightOffset = function setBottomRightOffset(_ref8) {
|
364
333
|
var popoverWidth = _ref8.popoverWidth,
|
365
|
-
|
366
|
-
|
334
|
+
popoverHeight = _ref8.popoverHeight,
|
335
|
+
childRect = _ref8.childRect;
|
367
336
|
var left = -(popoverWidth - childRect.width - horizontalOffset);
|
368
337
|
var top = verticalOffset + childRect.height;
|
369
338
|
var config = {
|
@@ -376,11 +345,10 @@ export var usePosition = function usePosition(props, popoverRef, childRef, wrapp
|
|
376
345
|
};
|
377
346
|
judgeAndUpdatePosition(childRect, config);
|
378
347
|
};
|
379
|
-
|
380
348
|
var setBottomCenterOffset = function setBottomCenterOffset(_ref9) {
|
381
349
|
var popoverWidth = _ref9.popoverWidth,
|
382
|
-
|
383
|
-
|
350
|
+
popoverHeight = _ref9.popoverHeight,
|
351
|
+
childRect = _ref9.childRect;
|
384
352
|
var left = -(popoverWidth - childRect.width) / 2;
|
385
353
|
var top = verticalOffset + childRect.height;
|
386
354
|
var config = {
|
@@ -393,11 +361,10 @@ export var usePosition = function usePosition(props, popoverRef, childRef, wrapp
|
|
393
361
|
};
|
394
362
|
judgeAndUpdatePosition(childRect, config);
|
395
363
|
};
|
396
|
-
|
397
364
|
var setBottomLeftOffset = function setBottomLeftOffset(_ref10) {
|
398
365
|
var popoverWidth = _ref10.popoverWidth,
|
399
|
-
|
400
|
-
|
366
|
+
popoverHeight = _ref10.popoverHeight,
|
367
|
+
childRect = _ref10.childRect;
|
401
368
|
var left = -horizontalOffset;
|
402
369
|
var top = verticalOffset + childRect.height;
|
403
370
|
var config = {
|
@@ -410,73 +377,60 @@ export var usePosition = function usePosition(props, popoverRef, childRef, wrapp
|
|
410
377
|
};
|
411
378
|
judgeAndUpdatePosition(childRect, config);
|
412
379
|
};
|
380
|
+
|
413
381
|
/**
|
414
382
|
* 计算气泡内容的位置
|
415
383
|
* @en Calculate the position of the content of the bubble
|
416
384
|
*/
|
417
|
-
|
418
|
-
|
419
385
|
var computedChildAndPopoverOffset = useCallback(function () {
|
420
386
|
var _popoverRef$current;
|
421
|
-
|
422
387
|
var popoverEle = (_popoverRef$current = popoverRef.current) == null ? void 0 : _popoverRef$current.content;
|
423
388
|
if (!popoverEle) return;
|
424
389
|
var popoverWidth = popoverEle.offsetWidth;
|
425
390
|
var popoverHeight = popoverEle.offsetHeight;
|
426
391
|
if (popoverWidth === 0 || popoverHeight === 0) return;
|
427
392
|
var childEle = childRef.current;
|
428
|
-
|
429
393
|
if (!childEle) {
|
430
394
|
return;
|
431
395
|
}
|
432
|
-
|
433
396
|
var childRect = childEle.getBoundingClientRect();
|
434
397
|
var config = {
|
435
398
|
popoverWidth: popoverWidth,
|
436
399
|
popoverHeight: popoverHeight,
|
437
400
|
childRect: childRect
|
438
401
|
};
|
439
|
-
|
440
402
|
switch (directionState) {
|
441
403
|
case 'topRight':
|
442
404
|
setTopRightOffset(config);
|
443
405
|
break;
|
444
|
-
|
445
406
|
case 'topCenter':
|
446
407
|
setTopCenterOffset(config);
|
447
408
|
break;
|
448
|
-
|
449
409
|
case 'topLeft':
|
450
410
|
setTopLeftOffset(config);
|
451
411
|
break;
|
452
|
-
|
453
412
|
case 'bottomRight':
|
454
413
|
setBottomRightOffset(config);
|
455
414
|
break;
|
456
|
-
|
457
415
|
case 'bottomCenter':
|
458
416
|
setBottomCenterOffset(config);
|
459
417
|
break;
|
460
|
-
|
461
418
|
case 'bottomLeft':
|
462
419
|
setBottomLeftOffset(config);
|
463
420
|
break;
|
464
|
-
|
465
421
|
default:
|
466
422
|
break;
|
467
423
|
}
|
468
424
|
}, [childRef, directionState, popoverRef, setTopRightOffset, setTopCenterOffset, setTopLeftOffset, setBottomRightOffset, setBottomCenterOffset, setBottomLeftOffset]);
|
469
|
-
|
470
425
|
var resetPosition = function resetPosition() {
|
471
426
|
setPosition(defaultPosition);
|
472
427
|
setDirectionState(direction);
|
473
428
|
};
|
429
|
+
|
474
430
|
/**
|
475
431
|
* 调整气泡垂直方向回调
|
476
432
|
* @en Callback when adjusting the vertical direction of the bubble
|
477
433
|
*/
|
478
|
-
|
479
|
-
|
480
434
|
var onAdjustDirection = function onAdjustDirection(vertical) {
|
481
435
|
if (directionState.indexOf(vertical) === -1) {
|
482
436
|
var newDirection = directionState.replace(/top|bottom/, vertical);
|
@@ -484,28 +438,24 @@ export var usePosition = function usePosition(props, popoverRef, childRef, wrapp
|
|
484
438
|
directionStateRef.current = newDirection;
|
485
439
|
}
|
486
440
|
};
|
441
|
+
|
487
442
|
/**
|
488
443
|
* 判断垂直方向是否需要调整
|
489
444
|
* @en Determine whether the vertical direction needs to be adjusted
|
490
445
|
*/
|
491
|
-
|
492
|
-
|
493
446
|
var adjustVerticalDirection = useCallback(function () {
|
494
447
|
var popover = popoverRef.current;
|
495
|
-
|
496
448
|
if (!popover) {
|
497
449
|
return;
|
498
450
|
}
|
499
|
-
|
500
451
|
var popoverEle = popover.content;
|
501
452
|
if (!popoverEle) return;
|
502
|
-
|
503
453
|
var _popoverEle$getBoundi = popoverEle.getBoundingClientRect(),
|
504
|
-
|
505
|
-
|
506
|
-
// @en The top safety distance is not enough, adjust to the bottom
|
507
|
-
|
454
|
+
top = _popoverEle$getBoundi.top,
|
455
|
+
bottom = _popoverEle$getBoundi.bottom;
|
508
456
|
|
457
|
+
// 顶部安全距离不够,调整到底部
|
458
|
+
// @en The top safety distance is not enough, adjust to the bottom
|
509
459
|
if (directionState.indexOf('top') !== -1 && top < getOffset('top') || directionState.indexOf('bottom') !== -1 && bottom + getOffset('bottom') > window.innerHeight) {
|
510
460
|
computedChildAndPopoverOffset();
|
511
461
|
}
|
package/esm/popover/index.js
CHANGED
@@ -2,12 +2,13 @@ import { componentWrapper } from '@arco-design/mobile-utils';
|
|
2
2
|
import { componentGenerator } from './menu';
|
3
3
|
import { Popover } from './popover';
|
4
4
|
export * from './type';
|
5
|
+
|
5
6
|
/**
|
6
7
|
* 气泡菜单
|
7
8
|
* @en Bubble menu
|
8
9
|
*/
|
9
|
-
|
10
10
|
var Menu = componentGenerator(Popover);
|
11
|
+
|
11
12
|
/**
|
12
13
|
* 气泡卡片,支持六个方向,小箭头在各个方向均基于挂载的子元素居中放置,支持受控和非受控模式。
|
13
14
|
* @en Bubble card, supports six directions, small arrows are centered in each direction based on the mounted sub-elements, and supports controlled and uncontrolled modes.
|
@@ -16,7 +17,6 @@ var Menu = componentGenerator(Popover);
|
|
16
17
|
* @type 信息展示
|
17
18
|
* @type_en Data Display
|
18
19
|
*/
|
19
|
-
|
20
20
|
export default componentWrapper(Popover, {
|
21
21
|
Menu: Menu
|
22
22
|
});
|