react-native-system-ui 0.0.2 → 0.0.4
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/README.md +22 -6
- package/dist/cjs/{area → components/area}/Area.js +4 -10
- package/dist/cjs/{avatar → components/avatar}/Avatar.js +3 -3
- package/dist/cjs/{avatar → components/avatar}/tokens.js +2 -1
- package/dist/cjs/{badge → components/badge}/Badge.js +30 -38
- package/dist/cjs/{button → components/button}/Button.js +13 -13
- package/dist/cjs/{button → components/button}/ButtonGroup.js +8 -8
- package/dist/cjs/{calendar → components/calendar}/Calendar.js +10 -10
- package/dist/cjs/{cascader → components/cascader}/Cascader.js +4 -4
- package/dist/cjs/{cascader → components/cascader}/useCascaderExtend.js +5 -15
- package/dist/cjs/{checkbox → components/checkbox}/CheckboxGroup.js +2 -2
- package/dist/cjs/{circle → components/circle}/Circle.js +2 -2
- package/dist/cjs/{collapse → components/collapse}/Collapse.js +13 -16
- package/dist/cjs/{config-provider → components/config-provider}/ConfigProvider.js +1 -1
- package/dist/cjs/{datetime-picker → components/datetime-picker}/DatetimePicker.js +7 -7
- package/dist/cjs/{dialog → components/dialog}/Dialog.js +4 -6
- package/dist/cjs/{dialog → components/dialog}/tokens.js +2 -1
- package/dist/cjs/{dropdown-menu → components/dropdown-menu}/DropdownItem.js +53 -52
- package/dist/cjs/{dropdown-menu → components/dropdown-menu}/DropdownMenu.js +19 -23
- package/dist/cjs/{dropdown-menu → components/dropdown-menu}/tokens.js +20 -3
- package/dist/cjs/{field → components/field}/Field.js +6 -6
- package/dist/cjs/{form → components/form}/Form.js +5 -9
- package/dist/cjs/{grid → components/grid}/Grid.js +4 -4
- package/dist/cjs/{image → components/image}/Image.js +19 -15
- package/dist/cjs/{image-preview → components/image-preview}/ImagePreview.js +62 -60
- package/dist/cjs/{image-preview → components/image-preview}/tokens.js +21 -2
- package/dist/cjs/{index-bar → components/index-bar}/IndexAnchor.js +7 -6
- package/dist/cjs/{index-bar → components/index-bar}/IndexBar.js +40 -45
- package/dist/cjs/components/index-bar/tokens.js +45 -0
- package/dist/cjs/components/index.js +854 -0
- package/dist/cjs/{input → components/input}/Input.js +7 -10
- package/dist/cjs/{nav-bar → components/nav-bar}/NavBar.js +2 -1
- package/dist/cjs/{notice-bar → components/notice-bar}/NoticeBar.js +69 -95
- package/dist/cjs/{notify → components/notify}/Notify.js +65 -49
- package/dist/cjs/{notify → components/notify}/defaults.js +2 -2
- package/dist/cjs/{notify → components/notify}/imperative.js +2 -2
- package/dist/cjs/{notify → components/notify}/tokens.js +5 -4
- package/dist/cjs/{number-keyboard → components/number-keyboard}/NumberKeyboard.js +15 -16
- package/dist/cjs/{number-keyboard → components/number-keyboard}/tokens.js +4 -2
- package/dist/cjs/{overlay → components/overlay}/useOverlayStack.js +5 -1
- package/dist/cjs/{pagination → components/pagination}/Pagination.js +2 -2
- package/dist/cjs/{password-input → components/password-input}/PasswordInput.js +35 -27
- package/dist/cjs/{picker → components/picker}/Picker.js +11 -12
- package/dist/cjs/{picker → components/picker}/WheelPicker.js +9 -9
- package/dist/cjs/{picker → components/picker}/tokens.js +4 -2
- package/dist/cjs/{popup → components/popup}/Popup.js +48 -75
- package/dist/cjs/{popup → components/popup}/tokens.js +2 -1
- package/dist/cjs/{portal → components/portal}/Portal.js +5 -0
- package/dist/cjs/{portal → components/portal}/PortalHost.js +1 -13
- package/dist/cjs/{pull-refresh → components/pull-refresh}/PullRefresh.js +46 -27
- package/dist/cjs/{radio → components/radio}/RadioGroup.js +2 -2
- package/dist/cjs/components/safe-area-view/SafeAreaView.js +63 -0
- package/dist/cjs/components/safe-area-view/index.js +12 -0
- package/dist/cjs/{search → components/search}/Search.js +52 -67
- package/dist/cjs/{search → components/search}/tokens.js +2 -1
- package/dist/cjs/{selector → components/selector}/Selector.js +3 -3
- package/dist/cjs/{share-sheet → components/share-sheet}/ShareSheet.js +64 -62
- package/dist/cjs/{share-sheet → components/share-sheet}/tokens.js +15 -2
- package/dist/cjs/{sidebar → components/sidebar}/Sidebar.js +15 -19
- package/dist/cjs/{sidebar → components/sidebar}/SidebarItem.js +0 -3
- package/dist/cjs/{skeleton → components/skeleton}/Skeleton.js +44 -56
- package/dist/cjs/{slider → components/slider}/Slider.js +55 -61
- package/dist/cjs/{stepper → components/stepper}/Stepper.js +13 -16
- package/dist/cjs/{stepper → components/stepper}/tokens.js +4 -2
- package/dist/cjs/{swiper → components/swiper}/Swiper.js +21 -42
- package/dist/cjs/{swiper → components/swiper}/useSwiperWeb.js +15 -18
- package/dist/cjs/{tabbar → components/tabbar}/Tabbar.js +10 -12
- package/dist/cjs/{tabbar → components/tabbar}/TabbarItem.js +0 -3
- package/dist/cjs/{tabs → components/tabs}/Tabs.js +33 -54
- package/dist/cjs/{tabs → components/tabs}/tokens.js +9 -1
- package/dist/cjs/{tabs → components/tabs}/useTabsScroll.js +4 -0
- package/dist/cjs/{toast → components/toast}/Toast.js +15 -16
- package/dist/cjs/{toast → components/toast}/tokens.js +5 -1
- package/dist/cjs/components/types.js +1 -0
- package/dist/cjs/{typography → components/typography}/Typography.js +17 -30
- package/dist/cjs/{uploader → components/uploader}/Uploader.js +49 -46
- package/dist/cjs/{uploader → components/uploader}/tokens.js +27 -1
- package/dist/cjs/{water-mark → components/water-mark}/WaterMark.js +16 -16
- package/dist/cjs/design-system/ThemeContext.js +19 -0
- package/dist/cjs/design-system/ThemeProvider.js +37 -0
- package/dist/cjs/design-system/createComponentTokensHook.js +30 -0
- package/dist/cjs/design-system/index.js +59 -0
- package/dist/cjs/design-system/mergeTokensOverride.js +12 -0
- package/dist/cjs/design-system/presets.js +147 -0
- package/dist/cjs/design-system/tokens.js +144 -0
- package/dist/cjs/design-system/useTheme.js +16 -0
- package/dist/cjs/hooks/aria/index.js +49 -0
- package/dist/cjs/hooks/aria/useAriaListBox.js +58 -0
- package/dist/cjs/hooks/aria/useAriaOverlay.js +50 -0
- package/dist/cjs/hooks/aria/useAriaPress.js +107 -0
- package/dist/cjs/hooks/aria/useAriaToggle.js +41 -0
- package/dist/cjs/hooks/gesture/index.js +16 -0
- package/dist/cjs/hooks/gesture/useGestureScroll.js +131 -0
- package/dist/cjs/hooks/index.js +84 -0
- package/dist/cjs/hooks/useControllableValue.js +52 -0
- package/dist/cjs/hooks/useCountDown.js +107 -0
- package/dist/cjs/hooks/useHairline.js +62 -0
- package/dist/cjs/hooks/usePresenceAnimation.js +70 -0
- package/dist/cjs/hooks/useSafeAreaPadding.js +41 -0
- package/dist/cjs/index.js +33 -499
- package/dist/cjs/platform/animation.js +14 -0
- package/dist/cjs/platform/history.js +14 -0
- package/dist/cjs/platform/index.js +60 -0
- package/dist/cjs/platform/measure.js +55 -0
- package/dist/cjs/platform/runtime.js +19 -0
- package/dist/cjs/platform/scrollLock.js +24 -0
- package/dist/cjs/utils/array.js +12 -0
- package/dist/cjs/utils/color.js +52 -0
- package/dist/cjs/utils/createPlatformShadow.js +63 -0
- package/dist/cjs/utils/date.js +75 -0
- package/dist/cjs/utils/deepMerge.js +37 -0
- package/dist/cjs/utils/hairline.js +103 -0
- package/dist/cjs/utils/index.js +115 -0
- package/dist/cjs/utils/number.js +73 -0
- package/dist/cjs/utils/promise.js +9 -0
- package/dist/cjs/utils/string.js +39 -0
- package/dist/cjs/utils/validate.js +41 -0
- package/dist/es/{area → components/area}/Area.js +5 -11
- package/dist/es/{avatar → components/avatar}/Avatar.js +3 -3
- package/dist/es/{avatar → components/avatar}/tokens.js +2 -1
- package/dist/es/{badge → components/badge}/Badge.js +31 -39
- package/dist/es/{button → components/button}/Button.js +14 -14
- package/dist/es/{button → components/button}/ButtonGroup.js +7 -7
- package/dist/es/{calendar → components/calendar}/Calendar.js +11 -11
- package/dist/es/{cascader → components/cascader}/Cascader.js +5 -5
- package/dist/es/{cascader → components/cascader}/useCascaderExtend.js +5 -9
- package/dist/es/{checkbox → components/checkbox}/CheckboxGroup.js +3 -3
- package/dist/es/{circle → components/circle}/Circle.js +3 -3
- package/dist/es/{collapse → components/collapse}/Collapse.js +14 -17
- package/dist/es/{config-provider → components/config-provider}/ConfigProvider.js +2 -2
- package/dist/es/{datetime-picker → components/datetime-picker}/DatetimePicker.js +8 -8
- package/dist/es/{dialog → components/dialog}/Dialog.js +4 -6
- package/dist/es/{dialog → components/dialog}/tokens.js +2 -1
- package/dist/es/{dropdown-menu → components/dropdown-menu}/DropdownItem.js +53 -52
- package/dist/es/{dropdown-menu → components/dropdown-menu}/DropdownMenu.js +20 -24
- package/dist/es/{dropdown-menu → components/dropdown-menu}/tokens.js +20 -3
- package/dist/es/{field → components/field}/Field.js +7 -7
- package/dist/es/{field → components/field}/index.js +1 -1
- package/dist/es/{form → components/form}/Form.js +6 -10
- package/dist/es/{grid → components/grid}/Grid.js +3 -3
- package/dist/es/{image → components/image}/Image.js +20 -16
- package/dist/es/{image-preview → components/image-preview}/ImagePreview.js +63 -61
- package/dist/es/components/image-preview/tokens.js +35 -0
- package/dist/es/{index-bar → components/index-bar}/IndexAnchor.js +7 -6
- package/dist/es/{index-bar → components/index-bar}/IndexBar.js +41 -46
- package/dist/es/components/index-bar/tokens.js +39 -0
- package/dist/es/components/index.js +123 -0
- package/dist/es/{input → components/input}/Input.js +8 -11
- package/dist/es/{nav-bar → components/nav-bar}/NavBar.js +2 -1
- package/dist/es/{notice-bar → components/notice-bar}/NoticeBar.js +70 -96
- package/dist/es/{notify → components/notify}/Notify.js +68 -52
- package/dist/es/{notify → components/notify}/defaults.js +2 -2
- package/dist/es/{notify → components/notify}/imperative.js +2 -2
- package/dist/es/{notify → components/notify}/tokens.js +5 -4
- package/dist/es/{number-keyboard → components/number-keyboard}/NumberKeyboard.js +16 -17
- package/dist/es/{number-keyboard → components/number-keyboard}/tokens.js +4 -2
- package/dist/es/{overlay → components/overlay}/useOverlayStack.js +6 -2
- package/dist/es/{pagination → components/pagination}/Pagination.js +3 -3
- package/dist/es/{password-input → components/password-input}/PasswordInput.js +36 -28
- package/dist/es/{picker → components/picker}/Picker.js +12 -13
- package/dist/es/{picker → components/picker}/WheelPicker.js +10 -10
- package/dist/es/{picker → components/picker}/tokens.js +4 -2
- package/dist/es/{popup → components/popup}/Popup.js +48 -75
- package/dist/es/{popup → components/popup}/tokens.js +2 -1
- package/dist/es/{portal → components/portal}/Portal.js +5 -0
- package/dist/es/{portal → components/portal}/PortalHost.js +1 -13
- package/dist/es/{pull-refresh → components/pull-refresh}/PullRefresh.js +47 -28
- package/dist/es/{radio → components/radio}/RadioGroup.js +3 -3
- package/dist/es/components/safe-area-view/SafeAreaView.js +43 -0
- package/dist/es/components/safe-area-view/index.js +1 -0
- package/dist/es/{search → components/search}/Search.js +53 -68
- package/dist/es/{search → components/search}/tokens.js +2 -1
- package/dist/es/{selector → components/selector}/Selector.js +4 -4
- package/dist/es/{share-sheet → components/share-sheet}/ShareSheet.js +65 -63
- package/dist/es/{share-sheet → components/share-sheet}/tokens.js +15 -2
- package/dist/es/{sidebar → components/sidebar}/Sidebar.js +14 -18
- package/dist/es/{sidebar → components/sidebar}/SidebarItem.js +0 -3
- package/dist/es/{skeleton → components/skeleton}/Skeleton.js +45 -57
- package/dist/es/{slider → components/slider}/Slider.js +56 -62
- package/dist/es/{stepper → components/stepper}/Stepper.js +14 -17
- package/dist/es/{stepper → components/stepper}/tokens.js +4 -2
- package/dist/es/{swiper → components/swiper}/Swiper.js +22 -43
- package/dist/es/{swiper → components/swiper}/useSwiperWeb.js +16 -19
- package/dist/es/{tabbar → components/tabbar}/Tabbar.js +11 -13
- package/dist/es/{tabbar → components/tabbar}/TabbarItem.js +0 -3
- package/dist/es/{tabs → components/tabs}/Tabs.js +34 -55
- package/dist/es/{tabs → components/tabs}/tokens.js +9 -1
- package/dist/es/{tabs → components/tabs}/useTabsScroll.js +4 -0
- package/dist/es/{toast → components/toast}/Toast.js +14 -15
- package/dist/es/{toast → components/toast}/tokens.js +5 -1
- package/dist/es/components/types.js +1 -0
- package/dist/es/{typography → components/typography}/Typography.js +18 -31
- package/dist/es/{uploader → components/uploader}/Uploader.js +49 -46
- package/dist/es/{uploader → components/uploader}/tokens.js +27 -1
- package/dist/es/{water-mark → components/water-mark}/WaterMark.js +17 -17
- package/dist/es/design-system/ThemeContext.js +6 -0
- package/dist/es/design-system/ThemeProvider.js +23 -0
- package/dist/es/design-system/createComponentTokensHook.js +17 -0
- package/dist/es/design-system/index.js +6 -0
- package/dist/es/design-system/mergeTokensOverride.js +5 -0
- package/dist/es/design-system/presets.js +140 -0
- package/dist/es/design-system/tokens.js +136 -0
- package/dist/es/design-system/useTheme.js +3 -0
- package/dist/es/hooks/aria/index.js +5 -0
- package/dist/es/hooks/aria/useAriaListBox.js +33 -0
- package/dist/es/hooks/aria/useAriaOverlay.js +25 -0
- package/dist/es/hooks/aria/useAriaPress.js +70 -0
- package/dist/es/hooks/aria/useAriaToggle.js +16 -0
- package/dist/es/hooks/gesture/index.js +2 -0
- package/dist/es/hooks/gesture/useGestureScroll.js +112 -0
- package/dist/es/hooks/index.js +7 -0
- package/dist/es/hooks/useControllableValue.js +40 -0
- package/dist/es/hooks/useCountDown.js +95 -0
- package/dist/es/hooks/useHairline.js +42 -0
- package/dist/es/hooks/usePresenceAnimation.js +51 -0
- package/dist/es/hooks/useSafeAreaPadding.js +23 -0
- package/dist/es/index.js +4 -73
- package/dist/es/platform/animation.js +2 -0
- package/dist/es/platform/history.js +7 -0
- package/dist/es/platform/index.js +6 -0
- package/dist/es/platform/measure.js +48 -0
- package/dist/es/platform/runtime.js +4 -0
- package/dist/es/platform/scrollLock.js +16 -0
- package/dist/es/utils/array.js +5 -0
- package/dist/es/utils/color.js +42 -0
- package/dist/es/utils/createPlatformShadow.js +50 -0
- package/dist/es/utils/date.js +63 -0
- package/dist/es/utils/deepMerge.js +31 -0
- package/dist/es/utils/hairline.js +84 -0
- package/dist/es/utils/index.js +12 -0
- package/dist/es/utils/number.js +56 -0
- package/dist/es/utils/promise.js +2 -0
- package/dist/es/utils/string.js +30 -0
- package/dist/es/utils/validate.js +15 -0
- package/dist/types/components/dialog/tokens.d.ts +1 -0
- package/dist/types/components/dropdown-menu/tokens.d.ts +17 -0
- package/dist/types/components/field/index.d.ts +1 -1
- package/dist/types/components/image-preview/tokens.d.ts +16 -0
- package/dist/types/components/index-bar/tokens.d.ts +13 -4
- package/dist/types/components/index.d.ts +104 -0
- package/dist/types/components/notify/defaults.d.ts +2 -2
- package/dist/types/components/number-keyboard/tokens.d.ts +1 -0
- package/dist/types/components/password-input/PasswordInput.d.ts +4 -0
- package/dist/types/components/picker/tokens.d.ts +2 -0
- package/dist/types/components/popup/tokens.d.ts +1 -0
- package/dist/types/components/safe-area-view/SafeAreaView.d.ts +10 -0
- package/dist/types/components/safe-area-view/index.d.ts +2 -0
- package/dist/types/components/search/tokens.d.ts +1 -0
- package/dist/types/components/share-sheet/tokens.d.ts +13 -0
- package/dist/types/components/stepper/tokens.d.ts +2 -0
- package/dist/types/components/tabs/tokens.d.ts +8 -0
- package/dist/types/components/toast/tokens.d.ts +4 -0
- package/dist/types/components/uploader/tokens.d.ts +25 -0
- package/dist/types/hooks/index.d.ts +1 -0
- package/dist/types/hooks/usePresenceAnimation.d.ts +6 -1
- package/dist/types/hooks/useSafeAreaPadding.d.ts +13 -0
- package/package.json +290 -274
- package/dist/cjs/index-bar/tokens.js +0 -36
- package/dist/cjs/safe-area/SafeAreaClipper.js +0 -114
- package/dist/cjs/safe-area/index.js +0 -63
- package/dist/es/image-preview/tokens.js +0 -16
- package/dist/es/index-bar/tokens.js +0 -30
- package/dist/es/safe-area/SafeAreaClipper.js +0 -86
- package/dist/es/safe-area/index.js +0 -25
- package/dist/types/components/safe-area/SafeAreaClipper.d.ts +0 -47
- package/dist/types/components/safe-area/index.d.ts +0 -9
- /package/dist/cjs/{action-sheet → components/action-sheet}/ActionSheet.js +0 -0
- /package/dist/cjs/{action-sheet → components/action-sheet}/index.js +0 -0
- /package/dist/cjs/{action-sheet → components/action-sheet}/tokens.js +0 -0
- /package/dist/cjs/{area → components/area}/index.js +0 -0
- /package/dist/cjs/{area → components/area}/utils.js +0 -0
- /package/dist/cjs/{avatar → components/avatar}/index.js +0 -0
- /package/dist/cjs/{badge → components/badge}/index.js +0 -0
- /package/dist/cjs/{badge → components/badge}/tokens.js +0 -0
- /package/dist/cjs/{button → components/button}/ButtonContext.js +0 -0
- /package/dist/cjs/{button → components/button}/index.js +0 -0
- /package/dist/cjs/{button → components/button}/tokens.js +0 -0
- /package/dist/cjs/{calendar → components/calendar}/index.js +0 -0
- /package/dist/cjs/{calendar → components/calendar}/tokens.js +0 -0
- /package/dist/cjs/{cascader → components/cascader}/index.js +0 -0
- /package/dist/cjs/{cascader → components/cascader}/tokens.js +0 -0
- /package/dist/cjs/{cascader → components/cascader}/utils.js +0 -0
- /package/dist/cjs/{cell → components/cell}/Cell.js +0 -0
- /package/dist/cjs/{cell → components/cell}/CellContext.js +0 -0
- /package/dist/cjs/{cell → components/cell}/CellGroup.js +0 -0
- /package/dist/cjs/{cell → components/cell}/index.js +0 -0
- /package/dist/cjs/{cell → components/cell}/tokens.js +0 -0
- /package/dist/cjs/{checkbox → components/checkbox}/Checkbox.js +0 -0
- /package/dist/cjs/{checkbox → components/checkbox}/CheckboxContext.js +0 -0
- /package/dist/cjs/{checkbox → components/checkbox}/index.js +0 -0
- /package/dist/cjs/{checkbox → components/checkbox}/tokens.js +0 -0
- /package/dist/cjs/{circle → components/circle}/index.js +0 -0
- /package/dist/cjs/{circle → components/circle}/tokens.js +0 -0
- /package/dist/cjs/{collapse → components/collapse}/index.js +0 -0
- /package/dist/cjs/{collapse → components/collapse}/tokens.js +0 -0
- /package/dist/cjs/{config-provider → components/config-provider}/LocaleContext.js +0 -0
- /package/dist/cjs/{config-provider → components/config-provider}/index.js +0 -0
- /package/dist/cjs/{config-provider → components/config-provider}/locale/base.js +0 -0
- /package/dist/cjs/{config-provider → components/config-provider}/locale/en-US.js +0 -0
- /package/dist/cjs/{config-provider → components/config-provider}/locale/zh-CN.js +0 -0
- /package/dist/cjs/{config-provider → components/config-provider}/useLocale.js +0 -0
- /package/dist/cjs/{count-down → components/count-down}/CountDown.js +0 -0
- /package/dist/cjs/{count-down → components/count-down}/index.js +0 -0
- /package/dist/cjs/{count-down → components/count-down}/tokens.js +0 -0
- /package/dist/cjs/{datetime-picker → components/datetime-picker}/index.js +0 -0
- /package/dist/cjs/{dialog → components/dialog}/imperative.js +0 -0
- /package/dist/cjs/{dialog → components/dialog}/index.js +0 -0
- /package/dist/cjs/{divider → components/divider}/Divider.js +0 -0
- /package/dist/cjs/{divider → components/divider}/index.js +0 -0
- /package/dist/cjs/{divider → components/divider}/tokens.js +0 -0
- /package/dist/cjs/{dropdown-menu → components/dropdown-menu}/DropdownMenuContext.js +0 -0
- /package/dist/cjs/{dropdown-menu → components/dropdown-menu}/index.js +0 -0
- /package/dist/cjs/{empty → components/empty}/Empty.js +0 -0
- /package/dist/cjs/{empty → components/empty}/index.js +0 -0
- /package/dist/cjs/{empty → components/empty}/tokens.js +0 -0
- /package/dist/cjs/{field → components/field}/index.js +0 -0
- /package/dist/cjs/{field → components/field}/tokens.js +0 -0
- /package/dist/cjs/{field → components/field}/utils.js +0 -0
- /package/dist/cjs/{flex → components/flex}/Flex.js +0 -0
- /package/dist/cjs/{flex → components/flex}/FlexContext.js +0 -0
- /package/dist/cjs/{flex → components/flex}/FlexItem.js +0 -0
- /package/dist/cjs/{flex → components/flex}/index.js +0 -0
- /package/dist/cjs/{flex → components/flex}/tokens.js +0 -0
- /package/dist/cjs/{form → components/form}/FormContext.js +0 -0
- /package/dist/cjs/{form → components/form}/FormItem.js +0 -0
- /package/dist/cjs/{form → components/form}/FormList.js +0 -0
- /package/dist/cjs/{form → components/form}/index.js +0 -0
- /package/dist/cjs/{form → components/form}/utils.js +0 -0
- /package/dist/cjs/{grid → components/grid}/GridContext.js +0 -0
- /package/dist/cjs/{grid → components/grid}/GridItem.js +0 -0
- /package/dist/cjs/{grid → components/grid}/index.js +0 -0
- /package/dist/cjs/{grid → components/grid}/tokens.js +0 -0
- /package/dist/cjs/{image → components/image}/index.js +0 -0
- /package/dist/cjs/{image → components/image}/tokens.js +0 -0
- /package/dist/cjs/{image-preview → components/image-preview}/imperative.js +0 -0
- /package/dist/cjs/{image-preview → components/image-preview}/index.js +0 -0
- /package/dist/cjs/{index-bar → components/index-bar}/index.js +0 -0
- /package/dist/cjs/{input → components/input}/index.js +0 -0
- /package/dist/cjs/{input → components/input}/tokens.js +0 -0
- /package/dist/cjs/{list → components/list}/List.js +0 -0
- /package/dist/cjs/{list → components/list}/index.js +0 -0
- /package/dist/cjs/{list → components/list}/tokens.js +0 -0
- /package/dist/cjs/{loading → components/loading}/Loading.js +0 -0
- /package/dist/cjs/{loading → components/loading}/index.js +0 -0
- /package/dist/cjs/{loading → components/loading}/tokens.js +0 -0
- /package/dist/cjs/{nav-bar → components/nav-bar}/index.js +0 -0
- /package/dist/cjs/{nav-bar → components/nav-bar}/tokens.js +0 -0
- /package/dist/cjs/{notice-bar → components/notice-bar}/index.js +0 -0
- /package/dist/cjs/{notice-bar → components/notice-bar}/tokens.js +0 -0
- /package/dist/cjs/{notify → components/notify}/index.js +0 -0
- /package/dist/cjs/{number-keyboard → components/number-keyboard}/index.js +0 -0
- /package/dist/cjs/{overlay → components/overlay}/Overlay.js +0 -0
- /package/dist/cjs/{overlay → components/overlay}/OverlayStackStore.js +0 -0
- /package/dist/cjs/{overlay → components/overlay}/index.js +0 -0
- /package/dist/cjs/{overlay → components/overlay}/tokens.js +0 -0
- /package/dist/cjs/{pagination → components/pagination}/index.js +0 -0
- /package/dist/cjs/{pagination → components/pagination}/tokens.js +0 -0
- /package/dist/cjs/{password-input → components/password-input}/index.js +0 -0
- /package/dist/cjs/{picker → components/picker}/index.js +0 -0
- /package/dist/cjs/{picker → components/picker}/utils.js +0 -0
- /package/dist/cjs/{popup → components/popup}/index.js +0 -0
- /package/dist/cjs/{portal → components/portal}/PortalContext.js +0 -0
- /package/dist/cjs/{portal → components/portal}/index.js +0 -0
- /package/dist/cjs/{progress → components/progress}/Progress.js +0 -0
- /package/dist/cjs/{progress → components/progress}/index.js +0 -0
- /package/dist/cjs/{progress → components/progress}/tokens.js +0 -0
- /package/dist/cjs/{pull-refresh → components/pull-refresh}/index.js +0 -0
- /package/dist/cjs/{pull-refresh → components/pull-refresh}/tokens.js +0 -0
- /package/dist/cjs/{radio → components/radio}/Radio.js +0 -0
- /package/dist/cjs/{radio → components/radio}/RadioContext.js +0 -0
- /package/dist/cjs/{radio → components/radio}/index.js +0 -0
- /package/dist/cjs/{radio → components/radio}/tokens.js +0 -0
- /package/dist/cjs/{rate → components/rate}/Rate.js +0 -0
- /package/dist/cjs/{rate → components/rate}/index.js +0 -0
- /package/dist/cjs/{rate → components/rate}/tokens.js +0 -0
- /package/dist/cjs/{search → components/search}/index.js +0 -0
- /package/dist/cjs/{selector → components/selector}/index.js +0 -0
- /package/dist/cjs/{selector → components/selector}/tokens.js +0 -0
- /package/dist/cjs/{share-sheet → components/share-sheet}/index.js +0 -0
- /package/dist/cjs/{sidebar → components/sidebar}/SidebarContext.js +0 -0
- /package/dist/cjs/{sidebar → components/sidebar}/index.js +0 -0
- /package/dist/cjs/{sidebar → components/sidebar}/tokens.js +0 -0
- /package/dist/cjs/{skeleton → components/skeleton}/index.js +0 -0
- /package/dist/cjs/{skeleton → components/skeleton}/tokens.js +0 -0
- /package/dist/cjs/{slider → components/slider}/index.js +0 -0
- /package/dist/cjs/{slider → components/slider}/tokens.js +0 -0
- /package/dist/cjs/{slider → components/slider}/utils.js +0 -0
- /package/dist/cjs/{space → components/space}/Space.js +0 -0
- /package/dist/cjs/{space → components/space}/index.js +0 -0
- /package/dist/cjs/{space → components/space}/tokens.js +0 -0
- /package/dist/cjs/{stepper → components/stepper}/index.js +0 -0
- /package/dist/cjs/{swiper → components/swiper}/SwiperItem.js +0 -0
- /package/dist/cjs/{swiper → components/swiper}/SwiperPagIndicator.js +0 -0
- /package/dist/cjs/{swiper → components/swiper}/index.js +0 -0
- /package/dist/cjs/{swiper → components/swiper}/utils.js +0 -0
- /package/dist/cjs/{switch → components/switch}/Switch.js +0 -0
- /package/dist/cjs/{switch → components/switch}/index.js +0 -0
- /package/dist/cjs/{switch → components/switch}/tokens.js +0 -0
- /package/dist/cjs/{tabbar → components/tabbar}/TabbarContext.js +0 -0
- /package/dist/cjs/{tabbar → components/tabbar}/index.js +0 -0
- /package/dist/cjs/{tabbar → components/tabbar}/tokens.js +0 -0
- /package/dist/cjs/{tabs → components/tabs}/TabPane.js +0 -0
- /package/dist/cjs/{tabs → components/tabs}/index.js +0 -0
- /package/dist/cjs/{tabs → components/tabs}/useTabsAnimation.js +0 -0
- /package/dist/cjs/{tabs → components/tabs}/utils.js +0 -0
- /package/dist/cjs/{tag → components/tag}/Tag.js +0 -0
- /package/dist/cjs/{tag → components/tag}/index.js +0 -0
- /package/dist/cjs/{tag → components/tag}/tokens.js +0 -0
- /package/dist/cjs/{toast → components/toast}/imperative.js +0 -0
- /package/dist/cjs/{toast → components/toast}/index.js +0 -0
- /package/dist/cjs/{typography → components/typography}/index.js +0 -0
- /package/dist/cjs/{typography → components/typography}/tokens.js +0 -0
- /package/dist/cjs/{uploader → components/uploader}/index.js +0 -0
- /package/dist/cjs/{uploader → components/uploader}/utils.js +0 -0
- /package/dist/cjs/{water-mark → components/water-mark}/index.js +0 -0
- /package/dist/cjs/{water-mark → components/water-mark}/tokens.js +0 -0
- /package/dist/es/{action-sheet → components/action-sheet}/ActionSheet.js +0 -0
- /package/dist/es/{action-sheet → components/action-sheet}/index.js +0 -0
- /package/dist/es/{action-sheet → components/action-sheet}/tokens.js +0 -0
- /package/dist/es/{area → components/area}/index.js +0 -0
- /package/dist/es/{area → components/area}/utils.js +0 -0
- /package/dist/es/{avatar → components/avatar}/index.js +0 -0
- /package/dist/es/{badge → components/badge}/index.js +0 -0
- /package/dist/es/{badge → components/badge}/tokens.js +0 -0
- /package/dist/es/{button → components/button}/ButtonContext.js +0 -0
- /package/dist/es/{button → components/button}/index.js +0 -0
- /package/dist/es/{button → components/button}/tokens.js +0 -0
- /package/dist/es/{calendar → components/calendar}/index.js +0 -0
- /package/dist/es/{calendar → components/calendar}/tokens.js +0 -0
- /package/dist/es/{cascader → components/cascader}/index.js +0 -0
- /package/dist/es/{cascader → components/cascader}/tokens.js +0 -0
- /package/dist/es/{cascader → components/cascader}/utils.js +0 -0
- /package/dist/es/{cell → components/cell}/Cell.js +0 -0
- /package/dist/es/{cell → components/cell}/CellContext.js +0 -0
- /package/dist/es/{cell → components/cell}/CellGroup.js +0 -0
- /package/dist/es/{cell → components/cell}/index.js +0 -0
- /package/dist/es/{cell → components/cell}/tokens.js +0 -0
- /package/dist/es/{checkbox → components/checkbox}/Checkbox.js +0 -0
- /package/dist/es/{checkbox → components/checkbox}/CheckboxContext.js +0 -0
- /package/dist/es/{checkbox → components/checkbox}/index.js +0 -0
- /package/dist/es/{checkbox → components/checkbox}/tokens.js +0 -0
- /package/dist/es/{circle → components/circle}/index.js +0 -0
- /package/dist/es/{circle → components/circle}/tokens.js +0 -0
- /package/dist/es/{collapse → components/collapse}/index.js +0 -0
- /package/dist/es/{collapse → components/collapse}/tokens.js +0 -0
- /package/dist/es/{config-provider → components/config-provider}/LocaleContext.js +0 -0
- /package/dist/es/{config-provider → components/config-provider}/index.js +0 -0
- /package/dist/es/{config-provider → components/config-provider}/locale/base.js +0 -0
- /package/dist/es/{config-provider → components/config-provider}/locale/en-US.js +0 -0
- /package/dist/es/{config-provider → components/config-provider}/locale/zh-CN.js +0 -0
- /package/dist/es/{config-provider → components/config-provider}/useLocale.js +0 -0
- /package/dist/es/{count-down → components/count-down}/CountDown.js +0 -0
- /package/dist/es/{count-down → components/count-down}/index.js +0 -0
- /package/dist/es/{count-down → components/count-down}/tokens.js +0 -0
- /package/dist/es/{datetime-picker → components/datetime-picker}/index.js +0 -0
- /package/dist/es/{dialog → components/dialog}/imperative.js +0 -0
- /package/dist/es/{dialog → components/dialog}/index.js +0 -0
- /package/dist/es/{divider → components/divider}/Divider.js +0 -0
- /package/dist/es/{divider → components/divider}/index.js +0 -0
- /package/dist/es/{divider → components/divider}/tokens.js +0 -0
- /package/dist/es/{dropdown-menu → components/dropdown-menu}/DropdownMenuContext.js +0 -0
- /package/dist/es/{dropdown-menu → components/dropdown-menu}/index.js +0 -0
- /package/dist/es/{empty → components/empty}/Empty.js +0 -0
- /package/dist/es/{empty → components/empty}/index.js +0 -0
- /package/dist/es/{empty → components/empty}/tokens.js +0 -0
- /package/dist/es/{field → components/field}/tokens.js +0 -0
- /package/dist/es/{field → components/field}/utils.js +0 -0
- /package/dist/es/{flex → components/flex}/Flex.js +0 -0
- /package/dist/es/{flex → components/flex}/FlexContext.js +0 -0
- /package/dist/es/{flex → components/flex}/FlexItem.js +0 -0
- /package/dist/es/{flex → components/flex}/index.js +0 -0
- /package/dist/es/{flex → components/flex}/tokens.js +0 -0
- /package/dist/es/{form → components/form}/FormContext.js +0 -0
- /package/dist/es/{form → components/form}/FormItem.js +0 -0
- /package/dist/es/{form → components/form}/FormList.js +0 -0
- /package/dist/es/{form → components/form}/index.js +0 -0
- /package/dist/es/{form → components/form}/utils.js +0 -0
- /package/dist/es/{grid → components/grid}/GridContext.js +0 -0
- /package/dist/es/{grid → components/grid}/GridItem.js +0 -0
- /package/dist/es/{grid → components/grid}/index.js +0 -0
- /package/dist/es/{grid → components/grid}/tokens.js +0 -0
- /package/dist/es/{image → components/image}/index.js +0 -0
- /package/dist/es/{image → components/image}/tokens.js +0 -0
- /package/dist/es/{image-preview → components/image-preview}/imperative.js +0 -0
- /package/dist/es/{image-preview → components/image-preview}/index.js +0 -0
- /package/dist/es/{index-bar → components/index-bar}/index.js +0 -0
- /package/dist/es/{input → components/input}/index.js +0 -0
- /package/dist/es/{input → components/input}/tokens.js +0 -0
- /package/dist/es/{list → components/list}/List.js +0 -0
- /package/dist/es/{list → components/list}/index.js +0 -0
- /package/dist/es/{list → components/list}/tokens.js +0 -0
- /package/dist/es/{loading → components/loading}/Loading.js +0 -0
- /package/dist/es/{loading → components/loading}/index.js +0 -0
- /package/dist/es/{loading → components/loading}/tokens.js +0 -0
- /package/dist/es/{nav-bar → components/nav-bar}/index.js +0 -0
- /package/dist/es/{nav-bar → components/nav-bar}/tokens.js +0 -0
- /package/dist/es/{notice-bar → components/notice-bar}/index.js +0 -0
- /package/dist/es/{notice-bar → components/notice-bar}/tokens.js +0 -0
- /package/dist/es/{notify → components/notify}/index.js +0 -0
- /package/dist/es/{number-keyboard → components/number-keyboard}/index.js +0 -0
- /package/dist/es/{overlay → components/overlay}/Overlay.js +0 -0
- /package/dist/es/{overlay → components/overlay}/OverlayStackStore.js +0 -0
- /package/dist/es/{overlay → components/overlay}/index.js +0 -0
- /package/dist/es/{overlay → components/overlay}/tokens.js +0 -0
- /package/dist/es/{pagination → components/pagination}/index.js +0 -0
- /package/dist/es/{pagination → components/pagination}/tokens.js +0 -0
- /package/dist/es/{password-input → components/password-input}/index.js +0 -0
- /package/dist/es/{picker → components/picker}/index.js +0 -0
- /package/dist/es/{picker → components/picker}/utils.js +0 -0
- /package/dist/es/{popup → components/popup}/index.js +0 -0
- /package/dist/es/{portal → components/portal}/PortalContext.js +0 -0
- /package/dist/es/{portal → components/portal}/index.js +0 -0
- /package/dist/es/{progress → components/progress}/Progress.js +0 -0
- /package/dist/es/{progress → components/progress}/index.js +0 -0
- /package/dist/es/{progress → components/progress}/tokens.js +0 -0
- /package/dist/es/{pull-refresh → components/pull-refresh}/index.js +0 -0
- /package/dist/es/{pull-refresh → components/pull-refresh}/tokens.js +0 -0
- /package/dist/es/{radio → components/radio}/Radio.js +0 -0
- /package/dist/es/{radio → components/radio}/RadioContext.js +0 -0
- /package/dist/es/{radio → components/radio}/index.js +0 -0
- /package/dist/es/{radio → components/radio}/tokens.js +0 -0
- /package/dist/es/{rate → components/rate}/Rate.js +0 -0
- /package/dist/es/{rate → components/rate}/index.js +0 -0
- /package/dist/es/{rate → components/rate}/tokens.js +0 -0
- /package/dist/es/{search → components/search}/index.js +0 -0
- /package/dist/es/{selector → components/selector}/index.js +0 -0
- /package/dist/es/{selector → components/selector}/tokens.js +0 -0
- /package/dist/es/{share-sheet → components/share-sheet}/index.js +0 -0
- /package/dist/es/{sidebar → components/sidebar}/SidebarContext.js +0 -0
- /package/dist/es/{sidebar → components/sidebar}/index.js +0 -0
- /package/dist/es/{sidebar → components/sidebar}/tokens.js +0 -0
- /package/dist/es/{skeleton → components/skeleton}/index.js +0 -0
- /package/dist/es/{skeleton → components/skeleton}/tokens.js +0 -0
- /package/dist/es/{slider → components/slider}/index.js +0 -0
- /package/dist/es/{slider → components/slider}/tokens.js +0 -0
- /package/dist/es/{slider → components/slider}/utils.js +0 -0
- /package/dist/es/{space → components/space}/Space.js +0 -0
- /package/dist/es/{space → components/space}/index.js +0 -0
- /package/dist/es/{space → components/space}/tokens.js +0 -0
- /package/dist/es/{stepper → components/stepper}/index.js +0 -0
- /package/dist/es/{swiper → components/swiper}/SwiperItem.js +0 -0
- /package/dist/es/{swiper → components/swiper}/SwiperPagIndicator.js +0 -0
- /package/dist/es/{swiper → components/swiper}/index.js +0 -0
- /package/dist/es/{swiper → components/swiper}/utils.js +0 -0
- /package/dist/es/{switch → components/switch}/Switch.js +0 -0
- /package/dist/es/{switch → components/switch}/index.js +0 -0
- /package/dist/es/{switch → components/switch}/tokens.js +0 -0
- /package/dist/es/{tabbar → components/tabbar}/TabbarContext.js +0 -0
- /package/dist/es/{tabbar → components/tabbar}/index.js +0 -0
- /package/dist/es/{tabbar → components/tabbar}/tokens.js +0 -0
- /package/dist/es/{tabs → components/tabs}/TabPane.js +0 -0
- /package/dist/es/{tabs → components/tabs}/index.js +0 -0
- /package/dist/es/{tabs → components/tabs}/useTabsAnimation.js +0 -0
- /package/dist/es/{tabs → components/tabs}/utils.js +0 -0
- /package/dist/es/{tag → components/tag}/Tag.js +0 -0
- /package/dist/es/{tag → components/tag}/index.js +0 -0
- /package/dist/es/{tag → components/tag}/tokens.js +0 -0
- /package/dist/es/{toast → components/toast}/imperative.js +0 -0
- /package/dist/es/{toast → components/toast}/index.js +0 -0
- /package/dist/es/{typography → components/typography}/index.js +0 -0
- /package/dist/es/{typography → components/typography}/tokens.js +0 -0
- /package/dist/es/{uploader → components/uploader}/index.js +0 -0
- /package/dist/es/{uploader → components/uploader}/utils.js +0 -0
- /package/dist/es/{water-mark → components/water-mark}/index.js +0 -0
- /package/dist/es/{water-mark → components/water-mark}/tokens.js +0 -0
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
|
|
2
|
-
import React, { useEffect
|
|
2
|
+
import React, { useEffect } from 'react';
|
|
3
3
|
import { Pressable, Text, View } from 'react-native';
|
|
4
4
|
import { usePaginationTokens } from './tokens';
|
|
5
5
|
import { useControllableValue } from '../../hooks';
|
|
@@ -39,7 +39,7 @@ const Pagination = /*#__PURE__*/React.forwardRef((props, ref) => {
|
|
|
39
39
|
const showPageSizeNumber = Number.isFinite(showPageSize) ? Math.floor(showPageSize) : 0;
|
|
40
40
|
const count = pageCountNumber > 0 ? pageCountNumber : totalItemsNumber > 0 && itemsPerPageNumber > 0 ? Math.max(1, Math.ceil(totalItemsNumber / itemsPerPageNumber)) : 1;
|
|
41
41
|
const currentPage = clamp(page, 1, count);
|
|
42
|
-
const pages =
|
|
42
|
+
const pages = (() => {
|
|
43
43
|
const items = [];
|
|
44
44
|
if (mode !== 'multi') return items;
|
|
45
45
|
const limit = Math.max(1, showPageSizeNumber);
|
|
@@ -72,7 +72,7 @@ const Pagination = /*#__PURE__*/React.forwardRef((props, ref) => {
|
|
|
72
72
|
});
|
|
73
73
|
}
|
|
74
74
|
return items;
|
|
75
|
-
}
|
|
75
|
+
})();
|
|
76
76
|
useEffect(() => {
|
|
77
77
|
if (page !== currentPage) {
|
|
78
78
|
setPage(currentPage);
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
|
|
2
|
-
import React, { useCallback, useEffect, useImperativeHandle,
|
|
2
|
+
import React, { useCallback, useEffect, useImperativeHandle, useRef, useState } from 'react';
|
|
3
3
|
import { Pressable, StyleSheet, Text, TextInput, View } from 'react-native';
|
|
4
4
|
import { createComponentTokensHook } from '../../design-system';
|
|
5
5
|
import { useControllableValue } from '../../hooks';
|
|
@@ -7,7 +7,6 @@ import { parseNumberLike } from '../../utils/number';
|
|
|
7
7
|
import { isString, isText } from '../../utils/validate';
|
|
8
8
|
const HIDDEN_INPUT_PROPS = {
|
|
9
9
|
caretHidden: true,
|
|
10
|
-
underlineColorAndroid: 'transparent',
|
|
11
10
|
autoCorrect: false,
|
|
12
11
|
spellCheck: false,
|
|
13
12
|
importantForAutofill: 'no',
|
|
@@ -21,10 +20,12 @@ const createPasswordInputTokens = foundations => ({
|
|
|
21
20
|
muted: foundations.palette.default[500],
|
|
22
21
|
error: foundations.palette.danger[500],
|
|
23
22
|
cursor: foundations.palette.default[800],
|
|
24
|
-
background: '#ffffff'
|
|
23
|
+
background: '#ffffff',
|
|
24
|
+
transparent: 'transparent'
|
|
25
25
|
},
|
|
26
26
|
radii: {
|
|
27
|
-
wrapper: foundations.radii.sm
|
|
27
|
+
wrapper: foundations.radii.sm,
|
|
28
|
+
cellGutter: foundations.radii.none
|
|
28
29
|
},
|
|
29
30
|
sizing: {
|
|
30
31
|
cellHeight: 50,
|
|
@@ -42,10 +43,12 @@ const createPasswordInputTokens = foundations => ({
|
|
|
42
43
|
infoWeight: foundations.typography.weight.regular
|
|
43
44
|
},
|
|
44
45
|
opacity: {
|
|
45
|
-
disabled: 0.6
|
|
46
|
+
disabled: 0.6,
|
|
47
|
+
hidden: 0
|
|
46
48
|
},
|
|
47
49
|
spacing: {
|
|
48
|
-
infoMarginTop: foundations.spacing.sm
|
|
50
|
+
infoMarginTop: foundations.spacing.sm,
|
|
51
|
+
none: foundations.spacing.none
|
|
49
52
|
}
|
|
50
53
|
});
|
|
51
54
|
const usePasswordInputTokens = createComponentTokensHook('passwordInput', createPasswordInputTokens);
|
|
@@ -91,8 +94,8 @@ const PasswordInput = /*#__PURE__*/React.forwardRef((props, ref) => {
|
|
|
91
94
|
const [cursorVisible, setCursorVisible] = useState(true);
|
|
92
95
|
const blinkTimer = useRef(null);
|
|
93
96
|
const [focused, setFocused] = useState(autoFocus);
|
|
94
|
-
const keyboardType =
|
|
95
|
-
const inputMode =
|
|
97
|
+
const keyboardType = type === 'number' ? 'number-pad' : 'default';
|
|
98
|
+
const inputMode = type === 'number' ? 'numeric' : 'text';
|
|
96
99
|
const [code = '', setCode] = useControllableValue(props, {
|
|
97
100
|
defaultValue: ''
|
|
98
101
|
});
|
|
@@ -106,7 +109,7 @@ const PasswordInput = /*#__PURE__*/React.forwardRef((props, ref) => {
|
|
|
106
109
|
}
|
|
107
110
|
return next;
|
|
108
111
|
}, [lengthSafe, type]);
|
|
109
|
-
const normalizedCode =
|
|
112
|
+
const normalizedCode = normalizeValue(code);
|
|
110
113
|
const updateValue = useCallback(nextValue => {
|
|
111
114
|
const normalized = normalizeValue(nextValue);
|
|
112
115
|
if (normalized === normalizedCode) return;
|
|
@@ -184,7 +187,7 @@ const PasswordInput = /*#__PURE__*/React.forwardRef((props, ref) => {
|
|
|
184
187
|
}
|
|
185
188
|
};
|
|
186
189
|
}, [disabled, focused, showCursor]);
|
|
187
|
-
const cells =
|
|
190
|
+
const cells = Array.from({
|
|
188
191
|
length: lengthSafe
|
|
189
192
|
}, (_, index) => {
|
|
190
193
|
const char = normalizedCode?.[index];
|
|
@@ -196,30 +199,35 @@ const PasswordInput = /*#__PURE__*/React.forwardRef((props, ref) => {
|
|
|
196
199
|
isFilled,
|
|
197
200
|
showBlink
|
|
198
201
|
};
|
|
199
|
-
})
|
|
200
|
-
const gutterValue =
|
|
202
|
+
});
|
|
203
|
+
const gutterValue = Math.max(0, parseNumberLike(gutter, 0) ?? 0);
|
|
201
204
|
const hasGutter = gutterValue > 0;
|
|
202
205
|
const tip = errorInfo ?? info;
|
|
203
206
|
const tipColor = errorInfo ? colors.error : colors.muted;
|
|
204
|
-
const backgroundColor = hasGutter ?
|
|
205
|
-
const
|
|
207
|
+
const backgroundColor = hasGutter ? colors.transparent : colors.background;
|
|
208
|
+
const hiddenInputProps = {
|
|
209
|
+
...HIDDEN_INPUT_PROPS,
|
|
210
|
+
underlineColorAndroid: colors.transparent
|
|
211
|
+
};
|
|
212
|
+
const cellTextBase = {
|
|
206
213
|
color: colors.text,
|
|
207
214
|
fontSize: sizing.cellTextSize,
|
|
208
215
|
fontWeight: typography.cellTextWeight,
|
|
209
216
|
fontFamily: typography.fontFamily
|
|
210
|
-
}
|
|
211
|
-
const wrapperStyle =
|
|
217
|
+
};
|
|
218
|
+
const wrapperStyle = [styles.wrapper, {
|
|
212
219
|
backgroundColor,
|
|
213
220
|
borderRadius: radii.wrapper,
|
|
221
|
+
paddingHorizontal: spacing.none,
|
|
214
222
|
opacity: disabled ? opacity.disabled : 1
|
|
215
223
|
}, !hasGutter && {
|
|
216
224
|
borderWidth: StyleSheet.hairlineWidth,
|
|
217
225
|
borderColor: colors.border
|
|
218
|
-
}]
|
|
219
|
-
const securityStyle =
|
|
226
|
+
}];
|
|
227
|
+
const securityStyle = [styles.security, {
|
|
220
228
|
borderRadius: hasGutter ? 0 : radii.wrapper,
|
|
221
229
|
backgroundColor
|
|
222
|
-
}]
|
|
230
|
+
}];
|
|
223
231
|
return /*#__PURE__*/React.createElement(View, {
|
|
224
232
|
style: style
|
|
225
233
|
}, /*#__PURE__*/React.createElement(Pressable, _extends({}, rest, {
|
|
@@ -240,7 +248,8 @@ const PasswordInput = /*#__PURE__*/React.forwardRef((props, ref) => {
|
|
|
240
248
|
}, cellStyle, item.isFilled && cellFilledStyle];
|
|
241
249
|
if (hasGutter) {
|
|
242
250
|
baseCell.push(styles.cellGutter, {
|
|
243
|
-
borderColor: colors.border
|
|
251
|
+
borderColor: colors.border,
|
|
252
|
+
borderRadius: radii.cellGutter
|
|
244
253
|
}, index > 0 && {
|
|
245
254
|
marginLeft: gutterValue
|
|
246
255
|
});
|
|
@@ -285,8 +294,10 @@ const PasswordInput = /*#__PURE__*/React.forwardRef((props, ref) => {
|
|
|
285
294
|
maxLength: lengthSafe,
|
|
286
295
|
autoFocus: false,
|
|
287
296
|
secureTextEntry: mask
|
|
288
|
-
},
|
|
289
|
-
style: styles.hiddenInput,
|
|
297
|
+
}, hiddenInputProps, {
|
|
298
|
+
style: [styles.hiddenInput, {
|
|
299
|
+
opacity: opacity.hidden
|
|
300
|
+
}],
|
|
290
301
|
onChangeText: handleChangeText,
|
|
291
302
|
onFocus: handleFocus,
|
|
292
303
|
onBlur: handleBlur,
|
|
@@ -304,8 +315,7 @@ const PasswordInput = /*#__PURE__*/React.forwardRef((props, ref) => {
|
|
|
304
315
|
export default PasswordInput;
|
|
305
316
|
const styles = StyleSheet.create({
|
|
306
317
|
wrapper: {
|
|
307
|
-
alignSelf: 'stretch'
|
|
308
|
-
paddingHorizontal: 0
|
|
318
|
+
alignSelf: 'stretch'
|
|
309
319
|
},
|
|
310
320
|
security: {
|
|
311
321
|
flexDirection: 'row',
|
|
@@ -319,16 +329,14 @@ const styles = StyleSheet.create({
|
|
|
319
329
|
alignItems: 'center'
|
|
320
330
|
},
|
|
321
331
|
cellGutter: {
|
|
322
|
-
borderWidth: StyleSheet.hairlineWidth
|
|
323
|
-
borderRadius: 0
|
|
332
|
+
borderWidth: StyleSheet.hairlineWidth
|
|
324
333
|
},
|
|
325
334
|
cursor: {
|
|
326
335
|
position: 'absolute',
|
|
327
336
|
left: '50%'
|
|
328
337
|
},
|
|
329
338
|
hiddenInput: {
|
|
330
|
-
...StyleSheet.absoluteFillObject
|
|
331
|
-
opacity: 0
|
|
339
|
+
...StyleSheet.absoluteFillObject
|
|
332
340
|
},
|
|
333
341
|
infoWrapper: {
|
|
334
342
|
alignItems: 'center'
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
|
|
2
|
-
import React, { useCallback, useEffect,
|
|
2
|
+
import React, { useCallback, useEffect, useRef, useState } from 'react';
|
|
3
3
|
import { Pressable, Text, View, Platform, StyleSheet } from 'react-native';
|
|
4
4
|
import Loading from '../loading';
|
|
5
5
|
import { withAlpha } from '../../utils/color';
|
|
@@ -15,7 +15,7 @@ export function usePickerValue({
|
|
|
15
15
|
onChange,
|
|
16
16
|
onConfirm
|
|
17
17
|
}) {
|
|
18
|
-
const preparedColumns =
|
|
18
|
+
const preparedColumns = prepareColumns(columns);
|
|
19
19
|
const isControlled = valueProp !== undefined;
|
|
20
20
|
const [innerValue, setInnerValue] = useState(() => {
|
|
21
21
|
const initial = toArrayValue(valueProp ?? defaultValue);
|
|
@@ -33,7 +33,7 @@ export function usePickerValue({
|
|
|
33
33
|
commitValue(next);
|
|
34
34
|
}
|
|
35
35
|
}, [commitValue, isControlled, valueProp]);
|
|
36
|
-
const normalized =
|
|
36
|
+
const normalized = normalizePicker(preparedColumns, innerValue);
|
|
37
37
|
useEffect(() => {
|
|
38
38
|
if (isControlled) return;
|
|
39
39
|
if (!shallowEqualArray(innerValue, normalized.values)) {
|
|
@@ -149,11 +149,11 @@ const PickerColumn = /*#__PURE__*/React.memo(props => {
|
|
|
149
149
|
swipeDuration
|
|
150
150
|
} = props;
|
|
151
151
|
const restVisible = Math.max(1, Math.floor((visibleItemCount - 1) / 2));
|
|
152
|
-
const selectedIndex =
|
|
152
|
+
const selectedIndex = (() => {
|
|
153
153
|
if (!options.length) return 0;
|
|
154
154
|
const idx = options.findIndex(option => option.value === value);
|
|
155
155
|
return findEnabledIndex(options, idx >= 0 ? idx : 0);
|
|
156
|
-
}
|
|
156
|
+
})();
|
|
157
157
|
const handleChange = useCallback(index => {
|
|
158
158
|
const target = findEnabledIndex(options, index);
|
|
159
159
|
const option = options[target];
|
|
@@ -245,7 +245,6 @@ const Picker = props => {
|
|
|
245
245
|
emitConfirmOnAutoSelect = true,
|
|
246
246
|
maskColor,
|
|
247
247
|
maskType = tokens.defaults.maskType,
|
|
248
|
-
interactionMode = 'auto',
|
|
249
248
|
onChange,
|
|
250
249
|
onConfirm,
|
|
251
250
|
onCancel,
|
|
@@ -349,7 +348,8 @@ const Picker = props => {
|
|
|
349
348
|
}) : null;
|
|
350
349
|
return /*#__PURE__*/React.createElement(View, _extends({}, rest, {
|
|
351
350
|
style: [styles.container, {
|
|
352
|
-
backgroundColor: tokens.colors.background
|
|
351
|
+
backgroundColor: tokens.colors.background,
|
|
352
|
+
borderRadius: tokens.radius.container
|
|
353
353
|
}, style],
|
|
354
354
|
testID: testID
|
|
355
355
|
}), toolbarPosition === 'top' && toolbar, /*#__PURE__*/React.createElement(View, {
|
|
@@ -377,13 +377,13 @@ const Picker = props => {
|
|
|
377
377
|
color: effectiveMaskColor,
|
|
378
378
|
maskType: maskType
|
|
379
379
|
}))), loading && /*#__PURE__*/React.createElement(View, {
|
|
380
|
-
style: styles.loading
|
|
380
|
+
style: [styles.loading, {
|
|
381
|
+
backgroundColor: tokens.colors.loadingMask
|
|
382
|
+
}]
|
|
381
383
|
}, /*#__PURE__*/React.createElement(Loading, null))), toolbarPosition === 'bottom' && toolbar);
|
|
382
384
|
};
|
|
383
385
|
const styles = StyleSheet.create({
|
|
384
|
-
container: {
|
|
385
|
-
borderRadius: 4
|
|
386
|
-
},
|
|
386
|
+
container: {},
|
|
387
387
|
body: {
|
|
388
388
|
position: 'relative',
|
|
389
389
|
overflow: 'hidden'
|
|
@@ -437,8 +437,7 @@ const styles = StyleSheet.create({
|
|
|
437
437
|
right: 0,
|
|
438
438
|
bottom: 0,
|
|
439
439
|
alignItems: 'center',
|
|
440
|
-
justifyContent: 'center'
|
|
441
|
-
backgroundColor: 'rgba(255,255,255,0.65)'
|
|
440
|
+
justifyContent: 'center'
|
|
442
441
|
}
|
|
443
442
|
});
|
|
444
443
|
Picker.displayName = 'Picker';
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
|
|
2
|
-
import React, { useCallback, useEffect,
|
|
2
|
+
import React, { useCallback, useEffect, useRef, useState } from 'react';
|
|
3
3
|
import { FlatList, Platform, View, StyleSheet, PanResponder } from 'react-native';
|
|
4
4
|
import { clamp } from '../../utils';
|
|
5
5
|
import { findEnabledIndex } from './utils';
|
|
@@ -258,8 +258,8 @@ const WheelPickerInner = ({
|
|
|
258
258
|
}]
|
|
259
259
|
}, content);
|
|
260
260
|
}, [itemHeight, renderItem]);
|
|
261
|
-
const webIndex =
|
|
262
|
-
const webRender =
|
|
261
|
+
const webIndex = clamp(Math.round(-webOffset / itemHeight), 0, maxIndex);
|
|
262
|
+
const webRender = (() => {
|
|
263
263
|
if (!isWeb || total <= 0) {
|
|
264
264
|
return {
|
|
265
265
|
items: null,
|
|
@@ -303,24 +303,24 @@ const WheelPickerInner = ({
|
|
|
303
303
|
}
|
|
304
304
|
})
|
|
305
305
|
};
|
|
306
|
-
}
|
|
307
|
-
const webTransform =
|
|
306
|
+
})();
|
|
307
|
+
const webTransform = {
|
|
308
308
|
transform: [{
|
|
309
309
|
translateY: webOffset
|
|
310
310
|
}]
|
|
311
|
-
}
|
|
312
|
-
const webTransitionStyle =
|
|
311
|
+
};
|
|
312
|
+
const webTransitionStyle = webTransition ? {
|
|
313
313
|
transitionProperty: 'transform',
|
|
314
314
|
transitionDuration: `${webTransition}ms`,
|
|
315
315
|
transitionTimingFunction: 'cubic-bezier(0.23, 1, 0.68, 1)',
|
|
316
316
|
willChange: 'transform'
|
|
317
|
-
} : undefined
|
|
317
|
+
} : undefined;
|
|
318
318
|
const handleWebTransitionEnd = useCallback(event => {
|
|
319
319
|
const propertyName = event.nativeEvent?.propertyName ?? event.propertyName;
|
|
320
320
|
if (propertyName && propertyName !== 'transform' && propertyName !== 'webkitTransform') return;
|
|
321
321
|
finalizePendingChange();
|
|
322
322
|
}, [finalizePendingChange]);
|
|
323
|
-
const panResponder =
|
|
323
|
+
const panResponder = PanResponder.create({
|
|
324
324
|
onStartShouldSetPanResponder: () => !readOnly,
|
|
325
325
|
onMoveShouldSetPanResponder: () => !readOnly,
|
|
326
326
|
onPanResponderGrant: () => {
|
|
@@ -365,7 +365,7 @@ const WheelPickerInner = ({
|
|
|
365
365
|
notifyInteractEnd();
|
|
366
366
|
setWebTransition(0);
|
|
367
367
|
}
|
|
368
|
-
})
|
|
368
|
+
});
|
|
369
369
|
if (isWeb) {
|
|
370
370
|
return /*#__PURE__*/React.createElement(View, _extends({
|
|
371
371
|
style: [styles.column, {
|
|
@@ -24,7 +24,8 @@ const createPickerTokens = foundations => {
|
|
|
24
24
|
textDisabled: palette.default[400],
|
|
25
25
|
confirm: palette.primary[600],
|
|
26
26
|
cancel: palette.default[600],
|
|
27
|
-
mask: '#ffffff'
|
|
27
|
+
mask: '#ffffff',
|
|
28
|
+
loadingMask: 'rgba(255,255,255,0.65)'
|
|
28
29
|
},
|
|
29
30
|
spacing: {
|
|
30
31
|
toolbarHeight: 44,
|
|
@@ -38,7 +39,8 @@ const createPickerTokens = foundations => {
|
|
|
38
39
|
toolbarWeight: typography.weight.medium
|
|
39
40
|
},
|
|
40
41
|
radius: {
|
|
41
|
-
toolbar: radii.none
|
|
42
|
+
toolbar: radii.none,
|
|
43
|
+
container: radii.xs
|
|
42
44
|
}
|
|
43
45
|
};
|
|
44
46
|
};
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
|
|
2
|
-
import React, { useCallback, useEffect,
|
|
3
|
-
import { Animated,
|
|
2
|
+
import React, { useCallback, useEffect, useRef, useState } from 'react';
|
|
3
|
+
import { Animated, Easing, Pressable, StyleSheet, Text, View, useWindowDimensions } from 'react-native';
|
|
4
|
+
import { SafeAreaView } from '../safe-area-view';
|
|
4
5
|
import { addPopStateListener, nativeDriverEnabled } from '../../platform';
|
|
5
6
|
import { createPlatformShadow } from '../../utils/createPlatformShadow';
|
|
6
7
|
import { isRenderable, isText } from '../../utils/validate';
|
|
@@ -91,19 +92,15 @@ const renderHeaderNode = (node, options) => {
|
|
|
91
92
|
};
|
|
92
93
|
const renderWithSafeArea = (children, opts, onSafeAreaTopLayout) => {
|
|
93
94
|
if (opts.safeArea) {
|
|
94
|
-
return /*#__PURE__*/React.createElement(SafeAreaView,
|
|
95
|
-
style: styles.safeAreaView
|
|
96
|
-
}, children);
|
|
95
|
+
return /*#__PURE__*/React.createElement(SafeAreaView, null, children);
|
|
97
96
|
}
|
|
98
97
|
return /*#__PURE__*/React.createElement(React.Fragment, null, opts.safeAreaInsetTop ? /*#__PURE__*/React.createElement(SafeAreaView, {
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
onLayout: onSafeAreaTopLayout
|
|
98
|
+
edge: "top",
|
|
99
|
+
onLayout: onSafeAreaTopLayout,
|
|
100
|
+
pointerEvents: "none"
|
|
103
101
|
}) : null, children, opts.safeAreaInsetBottom && /*#__PURE__*/React.createElement(SafeAreaView, {
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
}]
|
|
102
|
+
edge: "bottom",
|
|
103
|
+
pointerEvents: "none"
|
|
107
104
|
}));
|
|
108
105
|
};
|
|
109
106
|
const hiddenContentStyle = {
|
|
@@ -156,70 +153,59 @@ export const Popup = props => {
|
|
|
156
153
|
const shouldTranslate = placement !== 'center';
|
|
157
154
|
const safeAreaInsetBottom = safeAreaInsetBottomProp ?? false;
|
|
158
155
|
const tokens = usePopupTokens(tokensOverride);
|
|
159
|
-
const
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
156
|
+
const shadow = createPlatformShadow({
|
|
157
|
+
color: tokens.shadow.color,
|
|
158
|
+
opacity: tokens.shadow.opacity,
|
|
159
|
+
radius: tokens.shadow.radius,
|
|
160
|
+
offsetY: tokens.shadow.offsetY,
|
|
161
|
+
elevation: tokens.shadow.elevation
|
|
162
|
+
});
|
|
163
|
+
const dynamicStyles = {
|
|
164
|
+
popup: {
|
|
168
165
|
backgroundColor: tokens.colors.background,
|
|
169
166
|
padding: tokens.spacing.padding,
|
|
170
167
|
...shadow
|
|
171
|
-
}
|
|
172
|
-
|
|
168
|
+
},
|
|
169
|
+
title: {
|
|
173
170
|
color: tokens.colors.title,
|
|
174
171
|
fontSize: tokens.typography.titleSize,
|
|
175
172
|
fontWeight: tokens.typography.titleWeight,
|
|
176
173
|
marginHorizontal: tokens.spacing.descriptionHorizontal,
|
|
177
174
|
textAlign: 'center'
|
|
178
|
-
}
|
|
179
|
-
|
|
175
|
+
},
|
|
176
|
+
titleWrapper: {
|
|
180
177
|
marginTop: tokens.spacing.titleTop,
|
|
181
178
|
marginBottom: tokens.spacing.titleBottom,
|
|
182
179
|
marginHorizontal: tokens.spacing.descriptionHorizontal,
|
|
183
180
|
alignItems: 'center'
|
|
184
|
-
}
|
|
185
|
-
|
|
181
|
+
},
|
|
182
|
+
description: {
|
|
186
183
|
color: tokens.colors.description,
|
|
187
184
|
fontSize: tokens.typography.descriptionSize,
|
|
188
185
|
lineHeight: tokens.typography.descriptionLineHeight
|
|
189
|
-
}
|
|
190
|
-
|
|
186
|
+
},
|
|
187
|
+
descriptionWrapper: {
|
|
191
188
|
marginHorizontal: tokens.spacing.descriptionHorizontal,
|
|
192
189
|
marginBottom: tokens.spacing.descriptionBottom
|
|
193
|
-
}
|
|
194
|
-
|
|
190
|
+
},
|
|
191
|
+
closeIconBase: {
|
|
195
192
|
minWidth: tokens.spacing.closeIconSize,
|
|
196
193
|
minHeight: tokens.spacing.closeIconSize,
|
|
197
|
-
padding:
|
|
198
|
-
}
|
|
199
|
-
|
|
194
|
+
padding: tokens.spacing.closeIconPadding
|
|
195
|
+
},
|
|
196
|
+
closeIconDefault: {
|
|
200
197
|
width: tokens.spacing.closeIconSize,
|
|
201
198
|
height: tokens.spacing.closeIconSize
|
|
202
|
-
}
|
|
203
|
-
|
|
199
|
+
},
|
|
200
|
+
popupSide: {
|
|
204
201
|
width: tokens.layout.sideWidth,
|
|
205
202
|
maxWidth: tokens.layout.maxWidth
|
|
206
|
-
}
|
|
207
|
-
|
|
203
|
+
},
|
|
204
|
+
popupCenter: {
|
|
208
205
|
minWidth: tokens.layout.minWidth,
|
|
209
206
|
maxWidth: tokens.layout.centerMaxWidth
|
|
210
|
-
}
|
|
211
|
-
|
|
212
|
-
popup,
|
|
213
|
-
title,
|
|
214
|
-
titleWrapper,
|
|
215
|
-
description,
|
|
216
|
-
descriptionWrapper,
|
|
217
|
-
closeIconBase,
|
|
218
|
-
closeIconDefault,
|
|
219
|
-
popupSide,
|
|
220
|
-
popupCenter
|
|
221
|
-
};
|
|
222
|
-
}, [tokens]);
|
|
207
|
+
}
|
|
208
|
+
};
|
|
223
209
|
const [mounted, setMounted] = useState(visible);
|
|
224
210
|
const [interactionVisible, setInteractionVisible] = useState(visible);
|
|
225
211
|
const isOpen = visible || interactionVisible;
|
|
@@ -338,22 +324,18 @@ export const Popup = props => {
|
|
|
338
324
|
onStartShouldSetResponder: stopPropagationResponder
|
|
339
325
|
} : overlayRestProps;
|
|
340
326
|
const config = placementConfig[placement];
|
|
341
|
-
const radiusStyle =
|
|
327
|
+
const radiusStyle = buildRadius(round, placement, tokens.radius.round);
|
|
342
328
|
const {
|
|
343
329
|
animated: overlayOpacity
|
|
344
330
|
} = usePresenceAnimation(visible, {
|
|
345
331
|
duration
|
|
346
332
|
});
|
|
347
|
-
const
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
}
|
|
354
|
-
return 0;
|
|
355
|
-
}, [placement]);
|
|
356
|
-
const translateTransform = useMemo(() => {
|
|
333
|
+
const {
|
|
334
|
+
width: windowWidth,
|
|
335
|
+
height: windowHeight
|
|
336
|
+
} = useWindowDimensions();
|
|
337
|
+
const translateDistance = placement === 'left' || placement === 'right' ? windowWidth : placement === 'top' || placement === 'bottom' ? windowHeight : 0;
|
|
338
|
+
const translateTransform = (() => {
|
|
357
339
|
if (!shouldTranslate) return null;
|
|
358
340
|
const outputRange = [translateDistance * direction, 0];
|
|
359
341
|
return config.axis === 'y' ? {
|
|
@@ -367,9 +349,9 @@ export const Popup = props => {
|
|
|
367
349
|
outputRange
|
|
368
350
|
})
|
|
369
351
|
};
|
|
370
|
-
}
|
|
371
|
-
const baseTransform =
|
|
372
|
-
const animatedContentStyle =
|
|
352
|
+
})();
|
|
353
|
+
const baseTransform = translateTransform ? [translateTransform] : [];
|
|
354
|
+
const animatedContentStyle = (() => {
|
|
373
355
|
const extraTransform = contentAnimationStyle?.transform;
|
|
374
356
|
const transform = Array.isArray(extraTransform) ? [...baseTransform, ...extraTransform] : baseTransform;
|
|
375
357
|
const baseStyle = {
|
|
@@ -389,7 +371,7 @@ export const Popup = props => {
|
|
|
389
371
|
};
|
|
390
372
|
}
|
|
391
373
|
return baseStyle;
|
|
392
|
-
}
|
|
374
|
+
})();
|
|
393
375
|
const handleContentLayout = useCallback(event => {
|
|
394
376
|
overlayOnLayout?.(event);
|
|
395
377
|
}, [overlayOnLayout]);
|
|
@@ -520,15 +502,6 @@ const styles = StyleSheet.create({
|
|
|
520
502
|
},
|
|
521
503
|
lockLayer: {
|
|
522
504
|
...StyleSheet.absoluteFillObject
|
|
523
|
-
},
|
|
524
|
-
safeAreaView: {
|
|
525
|
-
width: '100%'
|
|
526
|
-
},
|
|
527
|
-
safeInsetTop: {
|
|
528
|
-
width: '100%'
|
|
529
|
-
},
|
|
530
|
-
safeInsetBottom: {
|
|
531
|
-
width: '100%'
|
|
532
505
|
}
|
|
533
506
|
});
|
|
534
507
|
Popup.displayName = 'Popup';
|
|
@@ -27,7 +27,8 @@ export const createPopupTokens = foundations => {
|
|
|
27
27
|
descriptionBottom: spacing.md,
|
|
28
28
|
closeIconTop: spacing.md,
|
|
29
29
|
closeIconRight: spacing.md,
|
|
30
|
-
closeIconSize: 36
|
|
30
|
+
closeIconSize: 36,
|
|
31
|
+
closeIconPadding: spacing.ssm
|
|
31
32
|
},
|
|
32
33
|
typography: {
|
|
33
34
|
titleSize: fontSize.md,
|
|
@@ -2,6 +2,7 @@ import { useContext, useLayoutEffect, useRef } from 'react';
|
|
|
2
2
|
import { PortalContext } from './PortalContext';
|
|
3
3
|
import { PortalHost, ensureGlobalPortalHost, portalManager as globalManager, portalStore } from './PortalHost';
|
|
4
4
|
const usePortalManager = () => useContext(PortalContext) ?? globalManager;
|
|
5
|
+
let hasWarnedNoHost = false;
|
|
5
6
|
const PortalComponent = ({
|
|
6
7
|
children
|
|
7
8
|
}) => {
|
|
@@ -9,6 +10,10 @@ const PortalComponent = ({
|
|
|
9
10
|
const keyRef = useRef(null);
|
|
10
11
|
useLayoutEffect(() => {
|
|
11
12
|
if (manager === globalManager) {
|
|
13
|
+
if (typeof document === 'undefined' && !portalStore.hasHosts() && !hasWarnedNoHost && typeof __DEV__ !== 'undefined' && __DEV__) {
|
|
14
|
+
hasWarnedNoHost = true;
|
|
15
|
+
console.warn('[Portal] 请在根节点挂载 <PortalHost> 以保证遮罩层正常工作');
|
|
16
|
+
}
|
|
12
17
|
void ensureGlobalPortalHost();
|
|
13
18
|
}
|
|
14
19
|
const key = manager.mount(children ?? null);
|
|
@@ -63,8 +63,6 @@ const hostStack = [];
|
|
|
63
63
|
const portalEntries = new Map();
|
|
64
64
|
const emptyEntries = [];
|
|
65
65
|
let nextPortalKey = 1;
|
|
66
|
-
let warnedNative = false;
|
|
67
|
-
const isJestEnv = typeof globalThis !== 'undefined' && globalThis?.process?.env?.JEST_ENV === 'true';
|
|
68
66
|
let snapshotDirty = true;
|
|
69
67
|
let snapshotCache = emptyEntries;
|
|
70
68
|
const markSnapshotDirty = () => {
|
|
@@ -166,7 +164,6 @@ const clearPortals = () => {
|
|
|
166
164
|
markSnapshotDirty();
|
|
167
165
|
syncCurrentHost();
|
|
168
166
|
}
|
|
169
|
-
warnedNative = false;
|
|
170
167
|
maybeTeardownAutoHost();
|
|
171
168
|
};
|
|
172
169
|
const globalManager = {
|
|
@@ -239,12 +236,6 @@ export const ensureGlobalPortalHost = () => {
|
|
|
239
236
|
return Promise.resolve();
|
|
240
237
|
}
|
|
241
238
|
if (typeof document === 'undefined') {
|
|
242
|
-
if (!warnedNative) {
|
|
243
|
-
warnedNative = true;
|
|
244
|
-
if (typeof __DEV__ !== 'undefined' && __DEV__ || isJestEnv) {
|
|
245
|
-
console.warn('[Portal] 请在根节点挂载 <PortalHost> 或 <ConfigProvider> 以启用静态组件能力。');
|
|
246
|
-
}
|
|
247
|
-
}
|
|
248
239
|
return Promise.resolve();
|
|
249
240
|
}
|
|
250
241
|
if (autoHostRoot) return Promise.resolve();
|
|
@@ -264,11 +255,8 @@ export const ensureGlobalPortalHost = () => {
|
|
|
264
255
|
fixed: true
|
|
265
256
|
}));
|
|
266
257
|
maybeTeardownAutoHost();
|
|
267
|
-
}).catch(
|
|
258
|
+
}).catch(() => {
|
|
268
259
|
teardownAutoHost();
|
|
269
|
-
if (typeof __DEV__ !== 'undefined' && __DEV__ || isJestEnv) {
|
|
270
|
-
console.warn('[Portal] 无法自动挂载 PortalHost:', error);
|
|
271
|
-
}
|
|
272
260
|
}).finally(() => {
|
|
273
261
|
hostPromise = null;
|
|
274
262
|
});
|