@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,83 +1,65 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
4
|
exports.__esModule = true;
|
|
6
5
|
exports.componentGenerator = componentGenerator;
|
|
7
|
-
|
|
8
6
|
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
9
|
-
|
|
10
7
|
var _react = _interopRequireWildcard(require("react"));
|
|
11
|
-
|
|
12
8
|
var _mobileUtils = require("@arco-design/mobile-utils");
|
|
13
|
-
|
|
14
9
|
var _contextProvider = require("../context-provider");
|
|
15
|
-
|
|
16
10
|
var _helper = require("./helper");
|
|
17
|
-
|
|
18
11
|
var _IconTriDown = _interopRequireDefault(require("../icon/IconTriDown"));
|
|
19
|
-
|
|
20
12
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
21
|
-
|
|
22
13
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
23
|
-
|
|
24
14
|
function componentGenerator(Comp) {
|
|
25
15
|
return /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
26
16
|
var _props$className = props.className,
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
17
|
+
className = _props$className === void 0 ? '' : _props$className,
|
|
18
|
+
_props$style = props.style,
|
|
19
|
+
style = _props$style === void 0 ? {} : _props$style,
|
|
20
|
+
_props$options = props.options,
|
|
21
|
+
options = _props$options === void 0 ? [] : _props$options,
|
|
22
|
+
_props$disabled = props.disabled,
|
|
23
|
+
disabled = _props$disabled === void 0 ? [] : _props$disabled,
|
|
24
|
+
_props$selectTips = props.selectTips,
|
|
25
|
+
selectTips = _props$selectTips === void 0 ? [] : _props$selectTips,
|
|
26
|
+
values = props.values,
|
|
27
|
+
_props$defaultValues = props.defaultValues,
|
|
28
|
+
defaultValues = _props$defaultValues === void 0 ? [] : _props$defaultValues,
|
|
29
|
+
icon = props.icon,
|
|
30
|
+
_props$chooseAndClose = props.chooseAndClose,
|
|
31
|
+
chooseAndClose = _props$chooseAndClose === void 0 ? true : _props$chooseAndClose,
|
|
32
|
+
selectIndex = props.selectIndex,
|
|
33
|
+
_props$defaultSelectI = props.defaultSelectIndex,
|
|
34
|
+
defaultSelectIndex = _props$defaultSelectI === void 0 ? 0 : _props$defaultSelectI,
|
|
35
|
+
showDropdown = props.showDropdown,
|
|
36
|
+
_props$defaultShowDro = props.defaultShowDropdown,
|
|
37
|
+
defaultShowDropdown = _props$defaultShowDro === void 0 ? false : _props$defaultShowDro,
|
|
38
|
+
onValuesChange = props.onValuesChange,
|
|
39
|
+
onSelectChange = props.onSelectChange,
|
|
40
|
+
onDropdownChange = props.onDropdownChange,
|
|
41
|
+
_props$getFormattedOp = props.getFormattedOptions,
|
|
42
|
+
getFormattedOptions = _props$getFormattedOp === void 0 ? _helper.getFormattedOptions : _props$getFormattedOp,
|
|
43
|
+
getContainer = props.getContainer,
|
|
44
|
+
children = props.children,
|
|
45
|
+
extraForDropdown = props.extraForDropdown;
|
|
57
46
|
var _useContext = (0, _react.useContext)(_contextProvider.GlobalContext),
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
47
|
+
prefixCls = _useContext.prefixCls,
|
|
48
|
+
locale = _useContext.locale;
|
|
61
49
|
var _useState = (0, _react.useState)(defaultValues),
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
50
|
+
innerValues = _useState[0],
|
|
51
|
+
setInnerValues = _useState[1];
|
|
65
52
|
var _useState2 = (0, _react.useState)(0),
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
53
|
+
defaultTop = _useState2[0],
|
|
54
|
+
setDefaultTop = _useState2[1];
|
|
69
55
|
var currentValues = values !== void 0 ? values : innerValues;
|
|
70
|
-
|
|
71
56
|
var _useState3 = (0, _react.useState)(defaultShowDropdown),
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
57
|
+
innerShowDropdown = _useState3[0],
|
|
58
|
+
setInnerShowDropdown = _useState3[1];
|
|
75
59
|
var dropdownShown = showDropdown !== void 0 ? showDropdown : innerShowDropdown;
|
|
76
|
-
|
|
77
60
|
var _useState4 = (0, _react.useState)(defaultSelectIndex),
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
61
|
+
innerSelectedIndex = _useState4[0],
|
|
62
|
+
setInnerSelectedIndex = _useState4[1];
|
|
81
63
|
var selectedIndex = selectIndex !== void 0 ? selectIndex : innerSelectedIndex;
|
|
82
64
|
var selectWrapper = (0, _react.useRef)(null);
|
|
83
65
|
var domRef = (0, _react.useRef)(null);
|
|
@@ -85,70 +67,62 @@ function componentGenerator(Comp) {
|
|
|
85
67
|
label: locale == null ? void 0 : locale.DropdownMenu.select,
|
|
86
68
|
value: -1
|
|
87
69
|
};
|
|
70
|
+
|
|
88
71
|
/**
|
|
89
72
|
* 更新选项数组和选择情况
|
|
90
73
|
* @en Update options list and selection
|
|
91
74
|
*/
|
|
92
|
-
|
|
93
75
|
var _useMemo = (0, _react.useMemo)(function () {
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
76
|
+
return getFormattedOptions(options, currentValues);
|
|
77
|
+
}, [options, currentValues]),
|
|
78
|
+
formattedOptions = _useMemo.formattedOptions;
|
|
98
79
|
var selectedOptions = (0, _react.useMemo)(function () {
|
|
99
80
|
return formattedOptions.map(function (ops, index) {
|
|
100
81
|
if (props.multiple) {
|
|
101
82
|
var _value = currentValues[index] || [];
|
|
102
|
-
|
|
103
83
|
var opItems = ops.reduce(function (acc, op) {
|
|
104
84
|
return [].concat(acc, _value.includes(op.value) ? [op] : []);
|
|
105
85
|
}, []);
|
|
106
86
|
return opItems.length ? opItems : [defaultOpItem];
|
|
107
87
|
}
|
|
108
|
-
|
|
109
88
|
var value = currentValues[index];
|
|
110
89
|
return ops.find(function (op) {
|
|
111
90
|
return op.value === value;
|
|
112
91
|
}) || ops[0];
|
|
113
92
|
});
|
|
114
93
|
}, [formattedOptions, currentValues, props.multiple]);
|
|
94
|
+
|
|
115
95
|
/**
|
|
116
96
|
* 当下拉框的状态变化
|
|
117
97
|
* @en When the state of the dropdown box changes
|
|
118
98
|
*/
|
|
119
|
-
|
|
120
99
|
var handleShowDropdownChange = function handleShowDropdownChange(show, index) {
|
|
121
100
|
onDropdownChange && onDropdownChange(show, index);
|
|
122
101
|
setInnerShowDropdown(show);
|
|
123
102
|
};
|
|
124
|
-
|
|
125
103
|
var handleSelectedIndexChange = function handleSelectedIndexChange(idx) {
|
|
126
104
|
setInnerSelectedIndex(idx);
|
|
127
105
|
onSelectChange == null ? void 0 : onSelectChange(idx);
|
|
128
106
|
};
|
|
129
|
-
|
|
130
107
|
var handleValuesChange = function handleValuesChange(val) {
|
|
131
|
-
var newValue = [].concat(currentValues);
|
|
108
|
+
var newValue = [].concat(currentValues);
|
|
109
|
+
// 级联情况下 selectedIndex 之后的选项值重置
|
|
132
110
|
// @en Option values are reset after selectedIndex in case of cascade
|
|
133
|
-
|
|
134
111
|
if ((0, _helper.isCascadeArray)(options)) {
|
|
135
112
|
newValue = newValue.slice(0, selectedIndex);
|
|
136
113
|
}
|
|
137
|
-
|
|
138
114
|
newValue[selectedIndex] = val;
|
|
139
115
|
newValue = getFormattedOptions(options, newValue).formattedValue;
|
|
140
116
|
setInnerValues(newValue);
|
|
141
117
|
onValuesChange == null ? void 0 : onValuesChange(newValue);
|
|
142
118
|
};
|
|
119
|
+
|
|
143
120
|
/**
|
|
144
121
|
* 处理选择框的点击事件
|
|
145
122
|
* @en Handle click event of dropdown box
|
|
146
123
|
*/
|
|
147
|
-
|
|
148
|
-
|
|
149
124
|
var handleSelectClick = function handleSelectClick(idx) {
|
|
150
125
|
if (disabled[idx]) return;
|
|
151
|
-
|
|
152
126
|
if (Number(idx) === selectedIndex) {
|
|
153
127
|
handleShowDropdownChange(!dropdownShown, idx);
|
|
154
128
|
} else {
|
|
@@ -156,19 +130,16 @@ function componentGenerator(Comp) {
|
|
|
156
130
|
if (!dropdownShown) handleShowDropdownChange(true, idx);
|
|
157
131
|
}
|
|
158
132
|
};
|
|
133
|
+
|
|
159
134
|
/**
|
|
160
135
|
* 判断是否为当前实例下的选择框
|
|
161
136
|
* @en Determine whether it is the dropdown box under the current instance
|
|
162
137
|
*/
|
|
163
|
-
|
|
164
|
-
|
|
165
138
|
var isCurrentSelectEl = function isCurrentSelectEl(target) {
|
|
166
139
|
var _ref = extraForDropdown || {},
|
|
167
|
-
|
|
168
|
-
|
|
140
|
+
isStopTouchEl = _ref.isStopTouchEl;
|
|
169
141
|
return (0, _helper.isRefDom)(target, selectWrapper) && (0, _helper.isClassNameDom)(target, 'select-item') || (isStopTouchEl == null ? void 0 : isStopTouchEl(target)) || false;
|
|
170
142
|
};
|
|
171
|
-
|
|
172
143
|
(0, _react.useImperativeHandle)(ref, function () {
|
|
173
144
|
return {
|
|
174
145
|
dom: domRef.current
|
|
@@ -179,11 +150,9 @@ function componentGenerator(Comp) {
|
|
|
179
150
|
var container = getContainer ? getContainer() || defaultContainer : defaultContainer;
|
|
180
151
|
setDefaultTop((container == null ? void 0 : container.getBoundingClientRect().bottom) || 0);
|
|
181
152
|
}, [getContainer, dropdownShown]);
|
|
182
|
-
|
|
183
153
|
var onCancel = props.onCancel || function () {
|
|
184
154
|
return handleShowDropdownChange(false);
|
|
185
155
|
};
|
|
186
|
-
|
|
187
156
|
var dropdownCommonProps = (0, _extends2.default)({
|
|
188
157
|
showDropdown: dropdownShown,
|
|
189
158
|
top: (extraForDropdown == null ? void 0 : extraForDropdown.top) || defaultTop,
|
|
@@ -191,7 +160,6 @@ function componentGenerator(Comp) {
|
|
|
191
160
|
}, extraForDropdown || {}, {
|
|
192
161
|
isStopTouchEl: isCurrentSelectEl
|
|
193
162
|
});
|
|
194
|
-
|
|
195
163
|
var renderSelectedLabel = function renderSelectedLabel(op, index) {
|
|
196
164
|
if (props.multiple === true) {
|
|
197
165
|
var multipleOp = op || [];
|
|
@@ -201,13 +169,11 @@ function componentGenerator(Comp) {
|
|
|
201
169
|
return item.label;
|
|
202
170
|
}).join(','));
|
|
203
171
|
}
|
|
204
|
-
|
|
205
172
|
var singleOp = op || [];
|
|
206
173
|
return props.renderSelectLabel ? props.renderSelectLabel(singleOp, index) : /*#__PURE__*/_react.default.createElement("div", {
|
|
207
174
|
className: (0, _mobileUtils.cls)(prefixCls + "-select-item-label-text")
|
|
208
175
|
}, singleOp.label);
|
|
209
176
|
};
|
|
210
|
-
|
|
211
177
|
return /*#__PURE__*/_react.default.createElement("div", {
|
|
212
178
|
ref: domRef,
|
|
213
179
|
className: (0, _mobileUtils.cls)(prefixCls + "-dropdown-menu all-border-box", className, {
|
|
@@ -257,7 +223,6 @@ function componentGenerator(Comp) {
|
|
|
257
223
|
selectedValue: currentValues[selectedIndex] || 0,
|
|
258
224
|
onOptionClick: function onOptionClick(val, op) {
|
|
259
225
|
props.onOptionClick == null ? void 0 : props.onOptionClick(val, op, selectedIndex);
|
|
260
|
-
|
|
261
226
|
if (chooseAndClose) {
|
|
262
227
|
handleShowDropdownChange(false, selectedIndex);
|
|
263
228
|
}
|
|
@@ -1,17 +1,13 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
4
|
exports.__esModule = true;
|
|
6
5
|
exports.getFormattedOptions = void 0;
|
|
7
6
|
exports.isCascadeArray = isCascadeArray;
|
|
8
7
|
exports.isRefDom = exports.isClassNameDom = void 0;
|
|
9
8
|
exports.isStringArray = isStringArray;
|
|
10
|
-
|
|
11
9
|
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
12
|
-
|
|
13
10
|
var _mobileUtils = require("@arco-design/mobile-utils");
|
|
14
|
-
|
|
15
11
|
/**
|
|
16
12
|
* 判断是否为string数组
|
|
17
13
|
* @en Determine whether it is a string array
|
|
@@ -19,15 +15,15 @@ var _mobileUtils = require("@arco-design/mobile-utils");
|
|
|
19
15
|
function isStringArray(options) {
|
|
20
16
|
return typeof options[0] === 'string';
|
|
21
17
|
}
|
|
18
|
+
|
|
22
19
|
/**
|
|
23
20
|
* 判断是否为嵌套数组
|
|
24
21
|
* @en Determine if it is a nested array
|
|
25
22
|
* */
|
|
26
|
-
|
|
27
|
-
|
|
28
23
|
function isCascadeArray(options) {
|
|
29
24
|
return typeof options[0] === 'object' && !(0, _mobileUtils.isArray)(options[0]);
|
|
30
25
|
}
|
|
26
|
+
|
|
31
27
|
/**
|
|
32
28
|
* 格式化传入的数组
|
|
33
29
|
* @en format the input array
|
|
@@ -35,12 +31,9 @@ function isCascadeArray(options) {
|
|
|
35
31
|
* @param {OptionsItem[][] | string[] | CascadeOptions[]} options {en} Array of options from the upper layer
|
|
36
32
|
* @param {ValueType} currentValues Current selected value
|
|
37
33
|
* */
|
|
38
|
-
|
|
39
|
-
|
|
40
34
|
var getFormattedOptions = function getFormattedOptions(options, currentValues) {
|
|
41
35
|
var values = [].concat(currentValues);
|
|
42
36
|
var formattedOptions = [];
|
|
43
|
-
|
|
44
37
|
if (isStringArray(options)) {
|
|
45
38
|
/**
|
|
46
39
|
* 如果传入的是简单的字符串数组
|
|
@@ -56,7 +49,6 @@ var getFormattedOptions = function getFormattedOptions(options, currentValues) {
|
|
|
56
49
|
} else if (isCascadeArray(options)) {
|
|
57
50
|
var ops = options;
|
|
58
51
|
var i = 0;
|
|
59
|
-
|
|
60
52
|
var _loop = function _loop() {
|
|
61
53
|
formattedOptions.push(ops.map(function (item) {
|
|
62
54
|
return (0, _extends2.default)({}, item, {
|
|
@@ -68,64 +60,52 @@ var getFormattedOptions = function getFormattedOptions(options, currentValues) {
|
|
|
68
60
|
var valIndex = ops.findIndex(function (op) {
|
|
69
61
|
return op.value === val;
|
|
70
62
|
});
|
|
71
|
-
|
|
72
63
|
if (valIndex > -1) {
|
|
73
64
|
temp = ops[valIndex].children;
|
|
74
65
|
} else {
|
|
75
66
|
temp = ops[0].children;
|
|
76
67
|
values[i] = ops[0].value;
|
|
77
68
|
}
|
|
78
|
-
|
|
79
69
|
i++;
|
|
80
70
|
ops = temp;
|
|
81
71
|
};
|
|
82
|
-
|
|
83
72
|
while (ops) {
|
|
84
73
|
_loop();
|
|
85
74
|
}
|
|
86
75
|
} else {
|
|
87
76
|
formattedOptions.push.apply(formattedOptions, options);
|
|
88
77
|
}
|
|
89
|
-
|
|
90
78
|
return {
|
|
91
79
|
formattedOptions: formattedOptions,
|
|
92
80
|
formattedValue: values
|
|
93
81
|
};
|
|
94
82
|
};
|
|
83
|
+
|
|
95
84
|
/**
|
|
96
85
|
* 判断是否为指定ref内的元素
|
|
97
86
|
* @en Determine whether it is an element within the specified ref
|
|
98
87
|
*/
|
|
99
|
-
|
|
100
|
-
|
|
101
88
|
exports.getFormattedOptions = getFormattedOptions;
|
|
102
|
-
|
|
103
89
|
var isRefDom = function isRefDom(dom, ref) {
|
|
104
90
|
var refDom = ref.current;
|
|
105
91
|
if (!refDom || !dom) return false;
|
|
106
92
|
return refDom.contains(dom);
|
|
107
93
|
};
|
|
94
|
+
|
|
108
95
|
/**
|
|
109
96
|
* 判断是否为指定类名下的元素
|
|
110
97
|
* @en Determine whether it is an element under the specified classname
|
|
111
98
|
*/
|
|
112
|
-
|
|
113
|
-
|
|
114
99
|
exports.isRefDom = isRefDom;
|
|
115
|
-
|
|
116
100
|
var isClassNameDom = function isClassNameDom(dom, className) {
|
|
117
101
|
if (!dom) return false;
|
|
118
102
|
var tempEl = dom;
|
|
119
|
-
|
|
120
103
|
while (tempEl) {
|
|
121
104
|
if (tempEl.classList.value.indexOf(className) > -1) {
|
|
122
105
|
return true;
|
|
123
106
|
}
|
|
124
|
-
|
|
125
107
|
tempEl = tempEl.parentNode;
|
|
126
108
|
}
|
|
127
|
-
|
|
128
109
|
return false;
|
|
129
110
|
};
|
|
130
|
-
|
|
131
111
|
exports.isClassNameDom = isClassNameDom;
|
|
@@ -1,24 +1,18 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
4
|
exports.__esModule = true;
|
|
6
5
|
var _exportNames = {};
|
|
7
6
|
exports.default = void 0;
|
|
8
|
-
|
|
9
7
|
var _dropdownMenu = require("./dropdown-menu");
|
|
10
|
-
|
|
11
8
|
var _dropdown = _interopRequireDefault(require("../dropdown"));
|
|
12
|
-
|
|
13
9
|
var _type = require("./type");
|
|
14
|
-
|
|
15
10
|
Object.keys(_type).forEach(function (key) {
|
|
16
11
|
if (key === "default" || key === "__esModule") return;
|
|
17
12
|
if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
|
|
18
13
|
if (key in exports && exports[key] === _type[key]) return;
|
|
19
14
|
exports[key] = _type[key];
|
|
20
15
|
});
|
|
21
|
-
|
|
22
16
|
/**
|
|
23
17
|
* 下拉选择组件,点击选择器(select)展开下拉框(dropdown),展示选择项(options),兼容多个选择器的情况。
|
|
24
18
|
* @en Dropdown component, click the selector (select) to expand the dropdown box (dropdown), display the options (options), compatible with multiple selectors.
|
|
@@ -1,37 +1,29 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
4
|
exports.__esModule = true;
|
|
6
5
|
exports.default = void 0;
|
|
7
|
-
|
|
8
6
|
var _react = _interopRequireWildcard(require("react"));
|
|
9
|
-
|
|
10
7
|
var _resizeObserverPolyfill = _interopRequireDefault(require("resize-observer-polyfill"));
|
|
11
|
-
|
|
12
8
|
var _dom = require("../utils/dom");
|
|
13
|
-
|
|
14
9
|
var _helpers = require("../../_helpers");
|
|
15
|
-
|
|
16
10
|
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); }
|
|
17
|
-
|
|
18
11
|
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; }
|
|
19
|
-
|
|
20
12
|
var JsEllipsis = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
21
13
|
var prefixCls = props.prefixCls,
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
14
|
+
text = props.text,
|
|
15
|
+
ellipsis = props.ellipsis,
|
|
16
|
+
dangerouslyUseInnerHTML = props.dangerouslyUseInnerHTML,
|
|
17
|
+
_props$maxLine = props.maxLine,
|
|
18
|
+
maxLine = _props$maxLine === void 0 ? 1 : _props$maxLine,
|
|
19
|
+
maxHeight = props.maxHeight,
|
|
20
|
+
ellipsisNode = props.ellipsisNode,
|
|
21
|
+
collapseNode = props.collapseNode,
|
|
22
|
+
endExcludes = props.endExcludes,
|
|
23
|
+
reflowOnResize = props.reflowOnResize,
|
|
24
|
+
onReflow = props.onReflow,
|
|
25
|
+
onEllipsisNodeClick = props.onEllipsisNodeClick,
|
|
26
|
+
onCollapseNodeClick = props.onCollapseNodeClick;
|
|
35
27
|
var truncating = (0, _react.useRef)(false);
|
|
36
28
|
var domRef = (0, _react.useRef)(null);
|
|
37
29
|
var textRef = (0, _react.useRef)(null);
|
|
@@ -46,93 +38,77 @@ var JsEllipsis = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
|
46
38
|
(0, _react.useEffect)(function () {
|
|
47
39
|
setCurLineHeight();
|
|
48
40
|
}, []);
|
|
49
|
-
|
|
50
41
|
function handleOnReflow(isEllipsis, result) {
|
|
51
42
|
if (onReflow && typeof onReflow === 'function') {
|
|
52
43
|
onReflow(isEllipsis, result);
|
|
53
44
|
}
|
|
54
45
|
}
|
|
55
|
-
|
|
56
46
|
function getActualHeight(container) {
|
|
57
47
|
var _container$getBoundin = container.getBoundingClientRect(),
|
|
58
|
-
|
|
59
|
-
|
|
48
|
+
height = _container$getBoundin.height;
|
|
60
49
|
return Math.round(height);
|
|
61
50
|
}
|
|
62
|
-
|
|
63
51
|
function truncateText(container, textContainer, max) {
|
|
64
52
|
var content = textContainer.textContent || '';
|
|
65
53
|
var currentText = '';
|
|
66
54
|
var l = 0;
|
|
67
|
-
var r = content.length - 1;
|
|
68
|
-
|
|
55
|
+
var r = content.length - 1;
|
|
56
|
+
// Binary truncate text until get the max limit fragment of text.
|
|
69
57
|
while (l < r) {
|
|
70
58
|
var m = Math.floor((l + r) / 2);
|
|
71
|
-
|
|
72
59
|
if (l === m) {
|
|
73
60
|
break;
|
|
74
61
|
}
|
|
75
|
-
|
|
76
62
|
var temp = content.slice(l, m);
|
|
77
63
|
textContainer.innerText = currentText + temp;
|
|
78
64
|
var actualHeight = getActualHeight(container);
|
|
79
|
-
|
|
80
65
|
if (actualHeight > max) {
|
|
81
66
|
r = m;
|
|
82
67
|
} else {
|
|
83
68
|
currentText += temp;
|
|
84
69
|
l = m;
|
|
85
70
|
}
|
|
86
|
-
}
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
71
|
+
}
|
|
72
|
+
// Remove the last character if it is orphaned high-surrogate characters (indicative of incomplete emoji).
|
|
73
|
+
currentText = currentText.replace(/[\uD800-\uDBFF]+$/, '');
|
|
74
|
+
// Remove the exclude char at the end of the content.
|
|
91
75
|
while (endExcludes && endExcludes.includes(currentText[currentText.length - 1])) {
|
|
92
76
|
currentText = currentText.slice(0, -1);
|
|
93
|
-
}
|
|
94
|
-
|
|
95
|
-
|
|
77
|
+
}
|
|
78
|
+
// Callback after reflow.
|
|
96
79
|
handleOnReflow(true, currentText);
|
|
97
80
|
textContainer.innerText = currentText;
|
|
98
81
|
}
|
|
99
|
-
|
|
100
82
|
function truncateHTML(container, textContainer, max) {
|
|
101
83
|
// only enter this function when container overflow.
|
|
102
84
|
var children = textContainer.childNodes;
|
|
103
|
-
|
|
104
85
|
if (children.length === 1) {
|
|
105
86
|
var node = children[0];
|
|
106
|
-
|
|
107
87
|
if (node.nodeType === Node.TEXT_NODE) {
|
|
108
88
|
truncateText(container, textContainer, max);
|
|
109
89
|
} else {
|
|
110
|
-
var html = node.innerHTML;
|
|
111
|
-
|
|
90
|
+
var html = node.innerHTML;
|
|
91
|
+
// clear content to determine whether the empty node can be placed.
|
|
112
92
|
node.innerHTML = '';
|
|
113
93
|
var actualHeight = getActualHeight(container);
|
|
114
|
-
|
|
115
94
|
if (actualHeight > max) {
|
|
116
95
|
// return after remove the node, if overflow with empty node.
|
|
117
96
|
textContainer.removeChild(node);
|
|
118
97
|
handleOnReflow(true, textContainer.innerHTML);
|
|
119
98
|
return;
|
|
120
99
|
}
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
100
|
+
node.innerHTML = html;
|
|
101
|
+
// recursive truncate node
|
|
124
102
|
truncateHTML(container, node, max);
|
|
125
103
|
}
|
|
126
104
|
} else {
|
|
127
105
|
var nodes = [].slice.call(children);
|
|
128
106
|
textContainer.innerHTML = '';
|
|
129
|
-
var i = 0;
|
|
130
|
-
|
|
107
|
+
var i = 0;
|
|
108
|
+
// find the critical node
|
|
131
109
|
while (i < nodes.length) {
|
|
132
110
|
textContainer.appendChild(nodes[i]);
|
|
133
|
-
|
|
134
111
|
var _actualHeight = getActualHeight(container);
|
|
135
|
-
|
|
136
112
|
if (_actualHeight > max) {
|
|
137
113
|
if (nodes[i].childNodes && nodes[i].childNodes.length) {
|
|
138
114
|
break;
|
|
@@ -142,48 +118,38 @@ var JsEllipsis = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
|
142
118
|
return;
|
|
143
119
|
}
|
|
144
120
|
}
|
|
145
|
-
|
|
146
121
|
i++;
|
|
147
122
|
}
|
|
148
|
-
|
|
149
123
|
if (textContainer.childNodes[i]) {
|
|
150
124
|
// truncate the critical node
|
|
151
125
|
truncateHTML(container, textContainer.childNodes[i], max);
|
|
152
126
|
}
|
|
153
127
|
}
|
|
154
|
-
}
|
|
155
|
-
|
|
156
|
-
|
|
128
|
+
}
|
|
129
|
+
// reflow when the main props change.
|
|
157
130
|
var reflow = (0, _react.useCallback)(function () {
|
|
158
131
|
if (!domRef.current || !textRef.current || !ellipsisRef.current || truncating.current) {
|
|
159
132
|
return;
|
|
160
133
|
}
|
|
161
|
-
|
|
162
134
|
ellipsisRef.current.style.display = 'none';
|
|
163
|
-
|
|
164
135
|
if (dangerouslyUseInnerHTML) {
|
|
165
136
|
textRef.current.innerHTML = text;
|
|
166
137
|
textRef.current.classList.add(prefixCls + "-js-content-text-pre");
|
|
167
138
|
} else {
|
|
168
139
|
textRef.current.innerText = text;
|
|
169
140
|
}
|
|
170
|
-
|
|
171
141
|
if (!ellipsisValueRef.current) {
|
|
172
142
|
return;
|
|
173
143
|
}
|
|
174
|
-
|
|
175
144
|
textRef.current.classList.remove(prefixCls + "-js-content-text-pre");
|
|
176
145
|
var actualHeight = getActualHeight(domRef.current);
|
|
177
146
|
var max = isNaN(Number(maxHeight)) ? lineHeightRef.current * maxLine : Number(maxHeight);
|
|
178
|
-
|
|
179
147
|
if (actualHeight <= max) {
|
|
180
148
|
handleOnReflow(false, text);
|
|
181
149
|
return;
|
|
182
150
|
}
|
|
183
|
-
|
|
184
151
|
truncating.current = true;
|
|
185
152
|
ellipsisRef.current.style.display = 'inline';
|
|
186
|
-
|
|
187
153
|
if (dangerouslyUseInnerHTML) {
|
|
188
154
|
// wrap the text children node with span element.
|
|
189
155
|
(0, _dom.wrapTextChildNodesWithSpan)(textRef.current, prefixCls + "-js-content-text");
|
|
@@ -191,14 +157,13 @@ var JsEllipsis = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
|
191
157
|
} else {
|
|
192
158
|
truncateText(domRef.current, textRef.current, max);
|
|
193
159
|
}
|
|
194
|
-
|
|
195
160
|
truncating.current = false;
|
|
196
161
|
}, [text, ellipsis, dangerouslyUseInnerHTML, maxLine, maxHeight, ellipsisNode, endExcludes]);
|
|
197
162
|
(0, _react.useEffect)(function () {
|
|
198
163
|
reflow();
|
|
199
164
|
}, [reflow]);
|
|
200
|
-
var observerRef = (0, _react.useRef)(null);
|
|
201
|
-
|
|
165
|
+
var observerRef = (0, _react.useRef)(null);
|
|
166
|
+
// Observe resize event of container if reflowOnResize is true.
|
|
202
167
|
(0, _react.useEffect)(function () {
|
|
203
168
|
if (domRef.current && reflowOnResize) {
|
|
204
169
|
if (!observerRef.current && ellipsis) {
|
|
@@ -206,7 +171,6 @@ var JsEllipsis = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
|
206
171
|
observerRef.current.observe(domRef.current);
|
|
207
172
|
}
|
|
208
173
|
}
|
|
209
|
-
|
|
210
174
|
return function () {
|
|
211
175
|
// Remove observer when component unmounted.
|
|
212
176
|
if (observerRef.current && domRef.current) {
|
|
@@ -249,7 +213,5 @@ var JsEllipsis = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
|
249
213
|
onClick: onCollapseNodeClick
|
|
250
214
|
}, collapseNode));
|
|
251
215
|
});
|
|
252
|
-
|
|
253
216
|
var _default = /*#__PURE__*/_react.default.memo(JsEllipsis);
|
|
254
|
-
|
|
255
217
|
exports.default = _default;
|