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
|
@@ -115,23 +115,20 @@ const useSwiperWeb = ({
|
|
|
115
115
|
(latest.vertical ? webTranslateXAnim : webTranslateYAnim).stopAnimation();
|
|
116
116
|
webOffsetRef.current = nextOffset;
|
|
117
117
|
}, []);
|
|
118
|
-
const webTrackTransform =
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
}];
|
|
133
|
-
}, [trackOffsetPx, vertical, webTranslateXAnim, webTranslateYAnim]);
|
|
134
|
-
const panResponder = (0, _react().useMemo)(() => {
|
|
118
|
+
const webTrackTransform = vertical ? trackOffsetPx ? [{
|
|
119
|
+
translateY: trackOffsetPx
|
|
120
|
+
}, {
|
|
121
|
+
translateY: webTranslateYAnim
|
|
122
|
+
}] : [{
|
|
123
|
+
translateY: webTranslateYAnim
|
|
124
|
+
}] : trackOffsetPx ? [{
|
|
125
|
+
translateX: trackOffsetPx
|
|
126
|
+
}, {
|
|
127
|
+
translateX: webTranslateXAnim
|
|
128
|
+
}] : [{
|
|
129
|
+
translateX: webTranslateXAnim
|
|
130
|
+
}];
|
|
131
|
+
const panResponder = (() => {
|
|
135
132
|
if (!isWeb) return null;
|
|
136
133
|
return _reactNative().PanResponder.create({
|
|
137
134
|
onStartShouldSetPanResponder: () => false,
|
|
@@ -189,7 +186,7 @@ const useSwiperWeb = ({
|
|
|
189
186
|
panLatestRef.current.onDragEnd?.();
|
|
190
187
|
}
|
|
191
188
|
});
|
|
192
|
-
}
|
|
189
|
+
})();
|
|
193
190
|
(0, _react().useEffect)(() => {
|
|
194
191
|
return () => {
|
|
195
192
|
cancelWebRaf();
|
|
@@ -21,6 +21,7 @@ function _reactNative() {
|
|
|
21
21
|
var _designSystem = require("../../design-system");
|
|
22
22
|
var _hooks = require("../../hooks");
|
|
23
23
|
var _hairline = require("../../utils/hairline");
|
|
24
|
+
var _safeAreaView = require("../safe-area-view");
|
|
24
25
|
var _TabbarContext = require("./TabbarContext");
|
|
25
26
|
var _tokens = require("./tokens");
|
|
26
27
|
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
|
|
@@ -52,19 +53,16 @@ const TabbarBase = props => {
|
|
|
52
53
|
const placeholder = placeholderProp ?? tokens.defaults.placeholder;
|
|
53
54
|
const iconSize = iconSizeProp ?? tokens.icon.size;
|
|
54
55
|
const enableSafeAreaInsetBottom = safeAreaInsetBottom ?? fixed;
|
|
55
|
-
const items =
|
|
56
|
-
const firstName =
|
|
56
|
+
const items = _react().default.Children.toArray(children).filter(_react().default.isValidElement);
|
|
57
|
+
const firstName = items.length ? items[0].props.name ?? 0 : undefined;
|
|
57
58
|
const [activeValue, setActiveValue] = (0, _hooks.useControllableValue)(props, {
|
|
58
59
|
defaultValue: firstName,
|
|
59
60
|
valuePropName: 'value',
|
|
60
61
|
defaultValuePropName: 'defaultValue',
|
|
61
62
|
trigger: 'onChange'
|
|
62
63
|
});
|
|
63
|
-
const itemNames =
|
|
64
|
-
const currentName =
|
|
65
|
-
if (activeValue === undefined || activeValue === null) return firstName;
|
|
66
|
-
return itemNames.some(name => name === activeValue) ? activeValue : firstName;
|
|
67
|
-
}, [activeValue, firstName, itemNames]);
|
|
64
|
+
const itemNames = items.map((item, index) => item.props.name ?? index);
|
|
65
|
+
const currentName = activeValue === undefined || activeValue === null ? firstName : itemNames.some(name => name === activeValue) ? activeValue : firstName;
|
|
68
66
|
const [barHeight, setBarHeight] = (0, _react().useState)(tokens.layout.height);
|
|
69
67
|
const enablePlaceholder = fixed && placeholder;
|
|
70
68
|
const handleLayout = (0, _react().useCallback)(event => {
|
|
@@ -73,15 +71,15 @@ const TabbarBase = props => {
|
|
|
73
71
|
setBarHeight(prev => Math.abs(prev - nextHeight) < 0.5 ? prev : nextHeight);
|
|
74
72
|
}, [enablePlaceholder]);
|
|
75
73
|
const onSelect = (0, _react().useCallback)((name, index) => setActiveValue(name, index), [setActiveValue]);
|
|
76
|
-
const contextValue =
|
|
74
|
+
const contextValue = {
|
|
77
75
|
activeValue: currentName,
|
|
78
76
|
activeColor: activeColor ?? tokens.colors.active,
|
|
79
77
|
inactiveColor: inactiveColor ?? tokens.colors.inactive,
|
|
80
78
|
fontSize: tokens.typography.fontSize,
|
|
81
79
|
fontWeight: tokens.typography.fontWeight,
|
|
82
80
|
onSelect
|
|
83
|
-
}
|
|
84
|
-
const clonedChildren =
|
|
81
|
+
};
|
|
82
|
+
const clonedChildren = items.map((item, index) => {
|
|
85
83
|
const name = item.props.name ?? index;
|
|
86
84
|
return /*#__PURE__*/_react().default.cloneElement(item, {
|
|
87
85
|
key: item.key ?? name,
|
|
@@ -90,9 +88,9 @@ const TabbarBase = props => {
|
|
|
90
88
|
iconSize,
|
|
91
89
|
tokensOverride: (0, _designSystem.mergeTokensOverride)(tokensOverride, item.props.tokensOverride)
|
|
92
90
|
});
|
|
93
|
-
})
|
|
91
|
+
});
|
|
94
92
|
if (items.length === 0) return null;
|
|
95
|
-
const ContentWrapper = enableSafeAreaInsetBottom ?
|
|
93
|
+
const ContentWrapper = enableSafeAreaInsetBottom ? _safeAreaView.SafeAreaView : _reactNative().View;
|
|
96
94
|
return /*#__PURE__*/_react().default.createElement(_react().default.Fragment, null, enablePlaceholder && /*#__PURE__*/_react().default.createElement(_reactNative().View, {
|
|
97
95
|
testID: "rv-tabbar-placeholder",
|
|
98
96
|
style: {
|
|
@@ -46,9 +46,6 @@ const TabbarItem = props => {
|
|
|
46
46
|
const tokens = (0, _tokens.useTabbarTokens)(tokensOverride);
|
|
47
47
|
const context = (0, _TabbarContext.useTabbarContext)();
|
|
48
48
|
if (!context) {
|
|
49
|
-
if (typeof __DEV__ !== 'undefined' && __DEV__) {
|
|
50
|
-
console.warn('[TabbarItem] 需要作为 Tabbar 的子节点使用。');
|
|
51
|
-
}
|
|
52
49
|
return null;
|
|
53
50
|
}
|
|
54
51
|
const itemName = name ?? index ?? 0;
|
|
@@ -138,10 +138,10 @@ const TabBarItemInner = ({
|
|
|
138
138
|
}, ellipsis && !isJumbo ? styles.ellipsis : null, titleStyle],
|
|
139
139
|
numberOfLines: ellipsis && !isJumbo ? 1 : undefined
|
|
140
140
|
}, renderTitle), (0, _validate.isRenderable)(renderDescription) && ((0, _validate.isText)(renderDescription) ? /*#__PURE__*/_react().default.createElement(_reactNative().Text, {
|
|
141
|
-
style: [styles.
|
|
141
|
+
style: [styles.descriptionText, isJumbo ? {
|
|
142
142
|
color: descriptionColor,
|
|
143
143
|
fontSize: tokens.typography.descriptionSize,
|
|
144
|
-
marginTop:
|
|
144
|
+
marginTop: tokens.spacing.jumboDescriptionMarginTop,
|
|
145
145
|
textAlign: 'center',
|
|
146
146
|
backgroundColor: isActive ? tokens.colors.jumboDescriptionActiveBackground : tokens.colors.jumboDescriptionBackground,
|
|
147
147
|
paddingHorizontal: tokens.jumbo.descriptionPaddingHorizontal,
|
|
@@ -150,26 +150,29 @@ const TabBarItemInner = ({
|
|
|
150
150
|
} : {
|
|
151
151
|
color: descriptionColor,
|
|
152
152
|
fontSize: tokens.typography.descriptionSize,
|
|
153
|
-
marginTop:
|
|
153
|
+
marginTop: tokens.spacing.descriptionMarginTop,
|
|
154
154
|
textAlign: 'center'
|
|
155
155
|
}, descriptionStyle]
|
|
156
156
|
}, renderDescription) : /*#__PURE__*/_react().default.createElement(_reactNative().View, {
|
|
157
|
-
style: [styles.
|
|
158
|
-
marginTop:
|
|
157
|
+
style: [styles.descriptionView, isJumbo ? {
|
|
158
|
+
marginTop: tokens.spacing.jumboDescriptionMarginTop,
|
|
159
159
|
alignItems: 'center',
|
|
160
160
|
backgroundColor: isActive ? tokens.colors.jumboDescriptionActiveBackground : tokens.colors.jumboDescriptionBackground,
|
|
161
161
|
paddingHorizontal: tokens.jumbo.descriptionPaddingHorizontal,
|
|
162
162
|
paddingVertical: tokens.jumbo.descriptionPaddingVertical,
|
|
163
163
|
borderRadius: tokens.jumbo.descriptionRadius
|
|
164
164
|
} : {
|
|
165
|
-
marginTop:
|
|
165
|
+
marginTop: tokens.spacing.descriptionMarginTop,
|
|
166
166
|
alignItems: 'center'
|
|
167
167
|
}]
|
|
168
168
|
}, renderDescription)), (0, _validate.isRenderable)(pane.badge) && /*#__PURE__*/_react().default.createElement(_reactNative().View, {
|
|
169
|
-
style: styles.badge
|
|
169
|
+
style: [styles.badge, {
|
|
170
|
+
marginTop: tokens.spacing.badgeMarginTop
|
|
171
|
+
}]
|
|
170
172
|
}, (0, _validate.isText)(pane.badge) ? /*#__PURE__*/_react().default.createElement(_reactNative().Text, {
|
|
171
173
|
style: [styles.badgeText, {
|
|
172
|
-
color: tokens.colors.badgeText
|
|
174
|
+
color: tokens.colors.badgeText,
|
|
175
|
+
fontSize: tokens.typography.badgeTextSize
|
|
173
176
|
}]
|
|
174
177
|
}, pane.badge) : pane.badge)));
|
|
175
178
|
};
|
|
@@ -231,7 +234,7 @@ const TabsBaseInner = (props, ref) => {
|
|
|
231
234
|
preventScroll: true
|
|
232
235
|
};
|
|
233
236
|
const isSwipeable = !!swipeableConfig;
|
|
234
|
-
const panes = (
|
|
237
|
+
const panes = (() => {
|
|
235
238
|
const result = [];
|
|
236
239
|
let paneIndex = 0;
|
|
237
240
|
const walk = nodes => {
|
|
@@ -243,11 +246,6 @@ const TabsBaseInner = (props, ref) => {
|
|
|
243
246
|
return;
|
|
244
247
|
}
|
|
245
248
|
if (!(0, _utils.isTabPaneElement)(element)) {
|
|
246
|
-
if (typeof __DEV__ !== 'undefined' && __DEV__) {
|
|
247
|
-
const type = element.type;
|
|
248
|
-
const childName = typeof type === 'string' ? type : type.displayName ?? type.name ?? 'Unknown';
|
|
249
|
-
console.warn('[Tabs] children 只能是 <Tabs.TabPane />,已忽略:', childName);
|
|
250
|
-
}
|
|
251
249
|
return;
|
|
252
250
|
}
|
|
253
251
|
const paneProps = element.props;
|
|
@@ -263,7 +261,7 @@ const TabsBaseInner = (props, ref) => {
|
|
|
263
261
|
};
|
|
264
262
|
walk(children);
|
|
265
263
|
return result;
|
|
266
|
-
}
|
|
264
|
+
})();
|
|
267
265
|
const firstPaneName = panes[0]?.name;
|
|
268
266
|
const [activeValue, setActiveValue] = (0, _hooks.useControllableValue)(props, {
|
|
269
267
|
defaultValue: firstPaneName,
|
|
@@ -276,13 +274,13 @@ const TabsBaseInner = (props, ref) => {
|
|
|
276
274
|
(0, _react().useEffect)(() => {
|
|
277
275
|
currentNameRef.current = currentName;
|
|
278
276
|
}, [currentName]);
|
|
279
|
-
const nameIndexMap = (
|
|
277
|
+
const nameIndexMap = (() => {
|
|
280
278
|
const map = new Map();
|
|
281
279
|
panes.forEach(pane => {
|
|
282
280
|
map.set(pane.name, pane.index);
|
|
283
281
|
});
|
|
284
282
|
return map;
|
|
285
|
-
}
|
|
283
|
+
})();
|
|
286
284
|
const activeIndex = currentName == null ? -1 : nameIndexMap.get(currentName) ?? -1;
|
|
287
285
|
const visitedRef = (0, _react().useRef)(new Set());
|
|
288
286
|
(0, _react().useEffect)(() => {
|
|
@@ -331,12 +329,7 @@ const TabsBaseInner = (props, ref) => {
|
|
|
331
329
|
navContentSizeSyncFrameRef.current = null;
|
|
332
330
|
};
|
|
333
331
|
}, []);
|
|
334
|
-
const scrollable = (0,
|
|
335
|
-
if ((0, _validate.isBoolean)(scrollableProp)) {
|
|
336
|
-
return scrollableProp;
|
|
337
|
-
}
|
|
338
|
-
return panes.length > resolvedSwipeThreshold || ellipsis === false;
|
|
339
|
-
}, [ellipsis, panes.length, resolvedSwipeThreshold, scrollableProp]);
|
|
332
|
+
const scrollable = (0, _validate.isBoolean)(scrollableProp) ? scrollableProp : panes.length > resolvedSwipeThreshold || ellipsis === false;
|
|
340
333
|
const indicatorColor = color ?? tokens.colors.indicator;
|
|
341
334
|
const indicatorCornerRadius = resolvedLineHeight ? resolvedLineHeight / 2 : tokens.indicator.radius;
|
|
342
335
|
const {
|
|
@@ -405,12 +398,8 @@ const TabsBaseInner = (props, ref) => {
|
|
|
405
398
|
const runBeforeChange = (0, _react().useCallback)(name => {
|
|
406
399
|
if (!beforeChange) return Promise.resolve(true);
|
|
407
400
|
try {
|
|
408
|
-
return Promise.resolve(beforeChange(name)).then(res => res !== false).catch(
|
|
409
|
-
if (typeof __DEV__ !== 'undefined' && __DEV__) console.warn('[Tabs] beforeChange 抛出异常:', error);
|
|
410
|
-
return false;
|
|
411
|
-
});
|
|
401
|
+
return Promise.resolve(beforeChange(name)).then(res => res !== false).catch(() => false);
|
|
412
402
|
} catch (error) {
|
|
413
|
-
if (typeof __DEV__ !== 'undefined' && __DEV__) console.warn('[Tabs] beforeChange 抛出异常:', error);
|
|
414
403
|
return Promise.resolve(false);
|
|
415
404
|
}
|
|
416
405
|
}, [beforeChange]);
|
|
@@ -509,15 +498,7 @@ const TabsBaseInner = (props, ref) => {
|
|
|
509
498
|
}, [currentName, scrollIntoView]);
|
|
510
499
|
const borderEnabled = border ?? false;
|
|
511
500
|
const showIndicator = type === 'line';
|
|
512
|
-
const navHeight =
|
|
513
|
-
if (type === 'jumbo') {
|
|
514
|
-
return tokens.jumbo.height;
|
|
515
|
-
}
|
|
516
|
-
if (type === 'card') {
|
|
517
|
-
return tokens.card.height;
|
|
518
|
-
}
|
|
519
|
-
return tokens.tabList.height;
|
|
520
|
-
}, [type, tokens]);
|
|
501
|
+
const navHeight = type === 'jumbo' ? tokens.jumbo.height : type === 'card' ? tokens.card.height : tokens.tabList.height;
|
|
521
502
|
const navPaddingBottom = _reactNative().Platform.OS === 'web' && type !== 'line' && type !== 'card' ? tokens.tabList.paddingBottom : 0;
|
|
522
503
|
const indicatorBottom = showIndicator ? type === 'line' ? 0 : tokens.indicator.offset : 0;
|
|
523
504
|
if (panes.length === 0) {
|
|
@@ -591,7 +572,9 @@ const TabsBaseInner = (props, ref) => {
|
|
|
591
572
|
backgroundColor: background
|
|
592
573
|
}, tabBarStyle]
|
|
593
574
|
}, navLeft && /*#__PURE__*/_react().default.createElement(_reactNative().View, {
|
|
594
|
-
style: styles.navSide
|
|
575
|
+
style: [styles.navSide, {
|
|
576
|
+
paddingHorizontal: tokens.spacing.navSidePaddingHorizontal
|
|
577
|
+
}]
|
|
595
578
|
}, navLeft), /*#__PURE__*/_react().default.createElement(_reactNative().View, {
|
|
596
579
|
style: [styles.nav, {
|
|
597
580
|
minHeight: navHeight + navPaddingBottom,
|
|
@@ -605,7 +588,9 @@ const TabsBaseInner = (props, ref) => {
|
|
|
605
588
|
} : null],
|
|
606
589
|
onLayout: handleNavContainerLayout
|
|
607
590
|
}, navBody), navRight && /*#__PURE__*/_react().default.createElement(_reactNative().View, {
|
|
608
|
-
style: styles.navSide
|
|
591
|
+
style: [styles.navSide, {
|
|
592
|
+
paddingHorizontal: tokens.spacing.navSidePaddingHorizontal
|
|
593
|
+
}]
|
|
609
594
|
}, navRight));
|
|
610
595
|
const paneNodes = panes.map(pane => {
|
|
611
596
|
const isActive = pane.name === currentName;
|
|
@@ -648,7 +633,9 @@ const TabsBaseInner = (props, ref) => {
|
|
|
648
633
|
style: [styles.container, style],
|
|
649
634
|
onLayout: handleContainerLayout
|
|
650
635
|
}), navContent, navBottom && /*#__PURE__*/_react().default.createElement(_reactNative().View, {
|
|
651
|
-
style: styles.navBottom
|
|
636
|
+
style: [styles.navBottom, {
|
|
637
|
+
marginTop: tokens.spacing.navBottomMarginTop
|
|
638
|
+
}]
|
|
652
639
|
}, navBottom), contentNode);
|
|
653
640
|
};
|
|
654
641
|
const styles = _reactNative().StyleSheet.create({
|
|
@@ -674,12 +661,8 @@ const styles = _reactNative().StyleSheet.create({
|
|
|
674
661
|
navContentStatic: {
|
|
675
662
|
flex: 1
|
|
676
663
|
},
|
|
677
|
-
navSide: {
|
|
678
|
-
|
|
679
|
-
},
|
|
680
|
-
navBottom: {
|
|
681
|
-
marginTop: 8
|
|
682
|
-
},
|
|
664
|
+
navSide: {},
|
|
665
|
+
navBottom: {},
|
|
683
666
|
labelWrapper: {
|
|
684
667
|
justifyContent: 'center',
|
|
685
668
|
alignItems: 'center',
|
|
@@ -707,20 +690,16 @@ const styles = _reactNative().StyleSheet.create({
|
|
|
707
690
|
title: {
|
|
708
691
|
includeFontPadding: false
|
|
709
692
|
},
|
|
710
|
-
|
|
711
|
-
marginTop: 2,
|
|
693
|
+
descriptionText: {
|
|
712
694
|
includeFontPadding: false
|
|
713
695
|
},
|
|
696
|
+
descriptionView: {},
|
|
714
697
|
ellipsis: {
|
|
715
698
|
maxWidth: '100%',
|
|
716
699
|
flexShrink: 1
|
|
717
700
|
},
|
|
718
|
-
badge: {
|
|
719
|
-
|
|
720
|
-
},
|
|
721
|
-
badgeText: {
|
|
722
|
-
fontSize: 10
|
|
723
|
-
},
|
|
701
|
+
badge: {},
|
|
702
|
+
badgeText: {},
|
|
724
703
|
indicator: {
|
|
725
704
|
position: 'absolute',
|
|
726
705
|
bottom: 0,
|
|
@@ -67,7 +67,15 @@ const createTokens = foundations => {
|
|
|
67
67
|
titleActiveWeight: foundations.typography.weight.semiBold,
|
|
68
68
|
descriptionSize: fontSize.xs,
|
|
69
69
|
jumboTitleSize: fontSize.md,
|
|
70
|
-
jumboLineHeight: Math.round(fontSize.md * 1.6)
|
|
70
|
+
jumboLineHeight: Math.round(fontSize.md * 1.6),
|
|
71
|
+
badgeTextSize: fontSize.xxs
|
|
72
|
+
},
|
|
73
|
+
spacing: {
|
|
74
|
+
navSidePaddingHorizontal: spacing.sm,
|
|
75
|
+
navBottomMarginTop: spacing.sm,
|
|
76
|
+
descriptionMarginTop: spacing.xxs,
|
|
77
|
+
jumboDescriptionMarginTop: spacing.sm,
|
|
78
|
+
badgeMarginTop: spacing.xs
|
|
71
79
|
},
|
|
72
80
|
indicator: {
|
|
73
81
|
height: 3,
|
|
@@ -87,7 +87,11 @@ const useTabsScroll = ({
|
|
|
87
87
|
const listenerId = navScrollX.addListener(({
|
|
88
88
|
value
|
|
89
89
|
}) => {
|
|
90
|
+
const prev = navLastScrollXRef.current;
|
|
90
91
|
navLastScrollXRef.current = value;
|
|
92
|
+
if (Math.abs(value - prev) < 0.5) {
|
|
93
|
+
return;
|
|
94
|
+
}
|
|
91
95
|
navScrollRef.current?.scrollTo({
|
|
92
96
|
x: value,
|
|
93
97
|
y: 0,
|
|
@@ -19,6 +19,7 @@ function _reactNative() {
|
|
|
19
19
|
return data;
|
|
20
20
|
}
|
|
21
21
|
var _Portal = _interopRequireDefault(require("../portal/Portal"));
|
|
22
|
+
var _safeAreaView = require("../safe-area-view");
|
|
22
23
|
var _hooks = require("../../hooks");
|
|
23
24
|
var _usePresenceAnimation = require("../../hooks/usePresenceAnimation");
|
|
24
25
|
var _loading = _interopRequireDefault(require("../loading"));
|
|
@@ -83,7 +84,7 @@ const Toast = props => {
|
|
|
83
84
|
});
|
|
84
85
|
const prevVisibleRef = (0, _react().useRef)(visible);
|
|
85
86
|
const closingRef = (0, _react().useRef)(false);
|
|
86
|
-
const positionOffset = windowHeight > 0 ? Math.round(windowHeight *
|
|
87
|
+
const positionOffset = windowHeight > 0 ? Math.round(windowHeight * tokens.positionOffsetRatio) : tokens.positionOffsetMin;
|
|
87
88
|
const needsSafeAreaTop = safeAreaInsetTopProp !== undefined ? safeAreaInsetTopProp : position === 'top';
|
|
88
89
|
const needsSafeAreaBottom = safeAreaInsetBottomProp !== undefined ? safeAreaInsetBottomProp : position === 'bottom';
|
|
89
90
|
const positionStyle = position === 'top' ? {
|
|
@@ -184,7 +185,7 @@ const Toast = props => {
|
|
|
184
185
|
};
|
|
185
186
|
const toastStyle = {
|
|
186
187
|
borderRadius: tokens.radius,
|
|
187
|
-
opacity: closeOnClick && toastPress.states.pressed ?
|
|
188
|
+
opacity: closeOnClick && toastPress.states.pressed ? tokens.pressedOpacity : animated,
|
|
188
189
|
backgroundColor: tokens.colors.variants[type],
|
|
189
190
|
maxWidth: tokens.maxWidth,
|
|
190
191
|
...boxStyle
|
|
@@ -192,23 +193,25 @@ const Toast = props => {
|
|
|
192
193
|
if (!mounted) return null;
|
|
193
194
|
const hasMessage = message !== undefined && message !== null && message !== false && message !== '';
|
|
194
195
|
return /*#__PURE__*/_react().default.createElement(_Portal.default, null, /*#__PURE__*/_react().default.createElement(_reactNative().View, {
|
|
195
|
-
style: [styles.backdrop,
|
|
196
|
+
style: [styles.backdrop, {
|
|
197
|
+
backgroundColor: tokens.colors.transparent
|
|
198
|
+
}, positionStyle, stackZIndex ? {
|
|
196
199
|
zIndex: stackZIndex
|
|
197
200
|
} : undefined],
|
|
198
201
|
pointerEvents: forbidClick || overlay || closeOnClick ? 'auto' : 'none'
|
|
199
202
|
}, overlay || forbidClick ? /*#__PURE__*/_react().default.createElement(_reactNative().Pressable, {
|
|
200
203
|
testID: "rv-toast-overlay",
|
|
201
|
-
style: [styles.overlay,
|
|
204
|
+
style: [styles.overlay, {
|
|
205
|
+
backgroundColor: tokens.colors.transparent
|
|
206
|
+
}, overlay && {
|
|
202
207
|
backgroundColor: colors.backdrop
|
|
203
208
|
}, overlayStyle],
|
|
204
209
|
pointerEvents: "auto",
|
|
205
210
|
onPress: overlay && closeOnClickOverlay ? handleClose : undefined,
|
|
206
211
|
onStartShouldSetResponder: () => true,
|
|
207
212
|
onMoveShouldSetResponder: () => true
|
|
208
|
-
}) : null, needsSafeAreaTop && /*#__PURE__*/_react().default.createElement(
|
|
209
|
-
|
|
210
|
-
width: '100%'
|
|
211
|
-
},
|
|
213
|
+
}) : null, needsSafeAreaTop && /*#__PURE__*/_react().default.createElement(_safeAreaView.SafeAreaView, {
|
|
214
|
+
edge: "top",
|
|
212
215
|
pointerEvents: "none"
|
|
213
216
|
}), /*#__PURE__*/_react().default.createElement(_reactNative().Pressable, _extends({
|
|
214
217
|
disabled: !closeOnClick
|
|
@@ -228,10 +231,8 @@ const Toast = props => {
|
|
|
228
231
|
style: {
|
|
229
232
|
alignItems: 'center'
|
|
230
233
|
}
|
|
231
|
-
}, message) : null)), needsSafeAreaBottom && /*#__PURE__*/_react().default.createElement(
|
|
232
|
-
|
|
233
|
-
width: '100%'
|
|
234
|
-
},
|
|
234
|
+
}, message) : null)), needsSafeAreaBottom && /*#__PURE__*/_react().default.createElement(_safeAreaView.SafeAreaView, {
|
|
235
|
+
edge: "bottom",
|
|
235
236
|
pointerEvents: "none"
|
|
236
237
|
})));
|
|
237
238
|
};
|
|
@@ -239,12 +240,10 @@ exports.Toast = Toast;
|
|
|
239
240
|
const styles = _reactNative().StyleSheet.create({
|
|
240
241
|
backdrop: {
|
|
241
242
|
flex: 1,
|
|
242
|
-
alignItems: 'center'
|
|
243
|
-
backgroundColor: 'transparent'
|
|
243
|
+
alignItems: 'center'
|
|
244
244
|
},
|
|
245
245
|
overlay: {
|
|
246
|
-
..._reactNative().StyleSheet.absoluteFillObject
|
|
247
|
-
backgroundColor: 'transparent'
|
|
246
|
+
..._reactNative().StyleSheet.absoluteFillObject
|
|
248
247
|
},
|
|
249
248
|
toast: {
|
|
250
249
|
alignItems: 'center',
|
|
@@ -17,7 +17,8 @@ const createToastTokens = foundations => {
|
|
|
17
17
|
success: backdrop,
|
|
18
18
|
fail: backdrop,
|
|
19
19
|
loading: backdrop
|
|
20
|
-
}
|
|
20
|
+
},
|
|
21
|
+
transparent: 'transparent'
|
|
21
22
|
},
|
|
22
23
|
fontSize: foundations.fontSize.sm,
|
|
23
24
|
lineHeight: Math.round(foundations.fontSize.sm * foundations.typography.lineHeightMultiplier),
|
|
@@ -31,6 +32,9 @@ const createToastTokens = foundations => {
|
|
|
31
32
|
defaultPadding: foundations.spacing.lg,
|
|
32
33
|
defaultWidth: 88,
|
|
33
34
|
defaultMinHeight: 88,
|
|
35
|
+
pressedOpacity: 0.85,
|
|
36
|
+
positionOffsetRatio: 0.2,
|
|
37
|
+
positionOffsetMin: 60,
|
|
34
38
|
animationDuration: 160
|
|
35
39
|
};
|
|
36
40
|
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";
|
|
@@ -73,21 +73,18 @@ const TypographyTextBaseInner = /*#__PURE__*/_react().default.forwardRef((props,
|
|
|
73
73
|
}
|
|
74
74
|
const fontSize = level ? tokens.sizing.titles[level].fontSize : tokens.sizing.sizes[size];
|
|
75
75
|
const lineHeight = level ? tokens.sizing.titles[level].lineHeight : fontSize * tokens.sizing.lineHeightMultiplier;
|
|
76
|
-
const
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
};
|
|
89
|
-
return [computedStyle, style];
|
|
90
|
-
}, [resolvedColor, fontSize, lineHeight, tokens.typography.fontFamily, tokens.opacity.disabled, tokens.typography.weight.regular, tokens.typography.weight.strong, strong, center, disabled, underline, deleted, style]);
|
|
76
|
+
const textDecorationLine = underline && deleted ? 'underline line-through' : underline ? 'underline' : deleted ? 'line-through' : undefined;
|
|
77
|
+
const baseStyle = [{
|
|
78
|
+
color: resolvedColor,
|
|
79
|
+
fontSize,
|
|
80
|
+
lineHeight,
|
|
81
|
+
fontFamily: tokens.typography.fontFamily,
|
|
82
|
+
fontWeight: strong ? tokens.typography.weight.strong : tokens.typography.weight.regular,
|
|
83
|
+
includeFontPadding: false,
|
|
84
|
+
textDecorationLine,
|
|
85
|
+
textAlign: center ? 'center' : undefined,
|
|
86
|
+
opacity: disabled ? tokens.opacity.disabled : 1
|
|
87
|
+
}, style];
|
|
91
88
|
const hasActionText = !!ellipsisConfig && (ellipsisConfig.expandText || ellipsisConfig.collapseText);
|
|
92
89
|
const shouldShowAction = hasActionText && (isTruncated || expanded || isWeb);
|
|
93
90
|
const handleToggleEllipsis = (0, _react().useCallback)(() => {
|
|
@@ -98,21 +95,15 @@ const TypographyTextBaseInner = /*#__PURE__*/_react().default.forwardRef((props,
|
|
|
98
95
|
return next;
|
|
99
96
|
});
|
|
100
97
|
}, [ellipsisConfig]);
|
|
101
|
-
const actionLabel =
|
|
102
|
-
|
|
103
|
-
return expanded ? ellipsisConfig.collapseText ?? ellipsisConfig.expandText : ellipsisConfig.expandText ?? ellipsisConfig.collapseText;
|
|
104
|
-
}, [ellipsisConfig, expanded]);
|
|
105
|
-
const actionTextStyle = (0, _react().useMemo)(() => ({
|
|
98
|
+
const actionLabel = !ellipsisConfig ? undefined : expanded ? ellipsisConfig.collapseText ?? ellipsisConfig.expandText : ellipsisConfig.expandText ?? ellipsisConfig.collapseText;
|
|
99
|
+
const actionTextStyle = {
|
|
106
100
|
color: tokens.colors.primary,
|
|
107
101
|
fontSize: tokens.sizing.sizes.sm,
|
|
108
102
|
fontWeight: tokens.typography.weight.medium,
|
|
109
103
|
marginLeft: tokens.sizing.actionMarginLeft,
|
|
110
104
|
includeFontPadding: false
|
|
111
|
-
}
|
|
112
|
-
const textStyle =
|
|
113
|
-
if (!shouldShowAction) return baseStyle;
|
|
114
|
-
return [baseStyle, FLEX_SHRINK_STYLE];
|
|
115
|
-
}, [shouldShowAction, baseStyle]);
|
|
105
|
+
};
|
|
106
|
+
const textStyle = shouldShowAction ? [baseStyle, FLEX_SHRINK_STYLE] : baseStyle;
|
|
116
107
|
const textNode = /*#__PURE__*/_react().default.createElement(_reactNative().Text, _extends({
|
|
117
108
|
ref: ref,
|
|
118
109
|
style: textStyle,
|
|
@@ -170,11 +161,7 @@ const TypographyLink = /*#__PURE__*/_react().default.forwardRef((props, ref) =>
|
|
|
170
161
|
if (href) {
|
|
171
162
|
try {
|
|
172
163
|
await _reactNative().Linking.openURL(href);
|
|
173
|
-
} catch
|
|
174
|
-
if (typeof __DEV__ !== 'undefined' && __DEV__) {
|
|
175
|
-
console.warn('[Typography.Link] Failed to open url', error);
|
|
176
|
-
}
|
|
177
|
-
}
|
|
164
|
+
} catch {}
|
|
178
165
|
}
|
|
179
166
|
}, [onPress, href]);
|
|
180
167
|
return /*#__PURE__*/_react().default.createElement(TypographyTextBase, _extends({
|