@admin-layout/gluestack-ui-mobile 11.0.1-alpha.0 → 11.0.3-alpha.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +8 -0
- package/lib/components/Fallback.js +12 -12
- package/lib/components/Fallback.js.map +1 -1
- package/lib/components/Layout/components/BasicLayout.js +2 -2
- package/lib/components/Layout/components/BasicLayout.js.map +1 -1
- package/lib/components/Layout/components/BottomTabBar.js +6 -6
- package/lib/components/Layout/components/BottomTabBar.js.map +1 -1
- package/lib/components/Layout/components/Drawer.js +16 -17
- package/lib/components/Layout/components/Drawer.js.map +1 -1
- package/lib/components/Layout/components/Header.js +12 -15
- package/lib/components/Layout/components/Header.js.map +1 -1
- package/lib/components/Layout/components/Sample.js +1 -1
- package/lib/components/Layout/components/Sample.js.map +1 -1
- package/lib/components/Layout/components/SettingDrawer/LayoutButton.js +9 -9
- package/lib/components/Layout/components/SettingDrawer/LayoutButton.js.map +1 -1
- package/lib/components/Layout/components/SettingDrawer/SettingDrawer.js +37 -36
- package/lib/components/Layout/components/SettingDrawer/SettingDrawer.js.map +1 -1
- package/lib/components/Layout/components/SettingDrawer/ThemeColorButton.js +13 -2
- package/lib/components/Layout/components/SettingDrawer/ThemeColorButton.js.map +1 -1
- package/lib/components/Layout/components/SideBar.js +7 -10
- package/lib/components/Layout/components/SideBar.js.map +1 -1
- package/lib/components/ToastAlert.d.ts +1 -1
- package/lib/components/ToastAlert.js +4 -4
- package/lib/components/ToastAlert.js.map +1 -1
- package/lib/components/UnAuthenticatedComponent.js +9 -9
- package/lib/components/UnAuthenticatedComponent.js.map +1 -1
- package/lib/components/WithConfiguration.js +1 -1
- package/lib/components/WithConfiguration.js.map +1 -1
- package/lib/components/WithPermission.d.ts +1 -1
- package/lib/components/WithPermission.js +1 -1
- package/lib/components/WithPermission.js.map +1 -1
- package/lib/components/WithPolicy.js +1 -1
- package/lib/components/WithPolicy.js.map +1 -1
- package/lib/components/index.d.ts +1 -0
- package/lib/components/index.js +1 -0
- package/lib/components/index.js.map +1 -1
- package/lib/components/ui/IconSymbol.d.ts +19 -0
- package/lib/components/ui/IconSymbol.ios.d.ts +10 -0
- package/lib/components/ui/IconSymbol.ios.js +12 -0
- package/lib/components/ui/IconSymbol.ios.js.map +1 -0
- package/lib/components/ui/IconSymbol.js +21 -0
- package/lib/components/ui/IconSymbol.js.map +1 -0
- package/lib/components/ui/TabBarBackground.d.ts +2 -0
- package/lib/components/ui/TabBarBackground.ios.d.ts +3 -0
- package/lib/components/ui/TabBarBackground.ios.js +20 -0
- package/lib/components/ui/TabBarBackground.ios.js.map +1 -0
- package/lib/components/ui/TabBarBackground.js +6 -0
- package/lib/components/ui/TabBarBackground.js.map +1 -0
- package/lib/components/ui/accordion/index.d.ts +193 -0
- package/lib/components/ui/accordion/index.js +177 -0
- package/lib/components/ui/accordion/index.js.map +1 -0
- package/lib/components/ui/actionsheet/index.d.ts +735 -0
- package/lib/components/ui/actionsheet/index.js +274 -0
- package/lib/components/ui/actionsheet/index.js.map +1 -0
- package/lib/components/ui/alert/index.d.ts +479 -0
- package/lib/components/ui/alert/index.js +153 -0
- package/lib/components/ui/alert/index.js.map +1 -0
- package/lib/components/ui/alert-dialog/index.d.ts +59 -0
- package/lib/components/ui/alert-dialog/index.js +137 -0
- package/lib/components/ui/alert-dialog/index.js.map +1 -0
- package/lib/components/ui/avatar/index.d.ts +144 -0
- package/lib/components/ui/avatar/index.js +99 -0
- package/lib/components/ui/avatar/index.js.map +1 -0
- package/lib/components/ui/badge/index.d.ts +386 -0
- package/lib/components/ui/badge/index.js +139 -0
- package/lib/components/ui/badge/index.js.map +1 -0
- package/lib/components/ui/box/index.d.ts +7 -0
- package/lib/components/ui/box/index.js +9 -0
- package/lib/components/ui/box/index.js.map +1 -0
- package/lib/components/ui/box/index.web.d.ts +6 -0
- package/lib/components/ui/box/index.web.js +8 -0
- package/lib/components/ui/box/index.web.js.map +1 -0
- package/lib/components/ui/box/styles.d.ts +1 -0
- package/lib/components/ui/box/styles.js +9 -0
- package/lib/components/ui/box/styles.js.map +1 -0
- package/lib/components/ui/button/index.d.ts +529 -0
- package/lib/components/ui/button/index.js +280 -0
- package/lib/components/ui/button/index.js.map +1 -0
- package/lib/components/ui/card/index.d.ts +129 -0
- package/lib/components/ui/card/index.js +9 -0
- package/lib/components/ui/card/index.js.map +1 -0
- package/lib/components/ui/card/index.web.d.ts +126 -0
- package/lib/components/ui/card/index.web.js +8 -0
- package/lib/components/ui/card/index.web.js.map +1 -0
- package/lib/components/ui/card/styles.d.ts +123 -0
- package/lib/components/ui/card/styles.js +20 -0
- package/lib/components/ui/card/styles.js.map +1 -0
- package/lib/components/ui/center/index.d.ts +5 -0
- package/lib/components/ui/center/index.js +9 -0
- package/lib/components/ui/center/index.js.map +1 -0
- package/lib/components/ui/center/index.web.d.ts +4 -0
- package/lib/components/ui/center/index.web.js +8 -0
- package/lib/components/ui/center/index.web.js.map +1 -0
- package/lib/components/ui/center/styles.d.ts +1 -0
- package/lib/components/ui/center/styles.js +7 -0
- package/lib/components/ui/center/styles.js.map +1 -0
- package/lib/components/ui/checkbox/index.d.ts +115 -0
- package/lib/components/ui/checkbox/index.js +127 -0
- package/lib/components/ui/checkbox/index.js.map +1 -0
- package/lib/components/ui/divider/index.d.ts +54 -0
- package/lib/components/ui/divider/index.js +22 -0
- package/lib/components/ui/divider/index.js.map +1 -0
- package/lib/components/ui/drawer/index.d.ts +207 -0
- package/lib/components/ui/drawer/index.js +198 -0
- package/lib/components/ui/drawer/index.js.map +1 -0
- package/lib/components/ui/fab/index.d.ts +520 -0
- package/lib/components/ui/fab/index.js +142 -0
- package/lib/components/ui/fab/index.js.map +1 -0
- package/lib/components/ui/flat-list/index.d.ts +1 -0
- package/lib/components/ui/flat-list/index.js +3 -0
- package/lib/components/ui/flat-list/index.js.map +1 -0
- package/lib/components/ui/form-control/index.d.ts +2072 -0
- package/lib/components/ui/form-control/index.js +290 -0
- package/lib/components/ui/form-control/index.js.map +1 -0
- package/lib/components/ui/gluestack-ui-provider/config.d.ts +4 -0
- package/lib/components/ui/gluestack-ui-provider/config.js +287 -0
- package/lib/components/ui/gluestack-ui-provider/config.js.map +1 -0
- package/lib/components/ui/gluestack-ui-provider/index.d.ts +8 -0
- package/lib/components/ui/gluestack-ui-provider/index.js +22 -0
- package/lib/components/ui/gluestack-ui-provider/index.js.map +1 -0
- package/lib/components/ui/gluestack-ui-provider/index.web.d.ts +7 -0
- package/lib/components/ui/gluestack-ui-provider/index.web.js +69 -0
- package/lib/components/ui/gluestack-ui-provider/index.web.js.map +1 -0
- package/lib/components/ui/gluestack-ui-provider/script.d.ts +1 -0
- package/lib/components/ui/gluestack-ui-provider/script.js +17 -0
- package/lib/components/ui/gluestack-ui-provider/script.js.map +1 -0
- package/lib/components/ui/gluestack-ui-provider/types.d.ts +1 -0
- package/lib/components/ui/gluestack-ui-provider/types.js +2 -0
- package/lib/components/ui/gluestack-ui-provider/types.js.map +1 -0
- package/lib/components/ui/grid/index.d.ts +27 -0
- package/lib/components/ui/grid/index.js +175 -0
- package/lib/components/ui/grid/index.js.map +1 -0
- package/lib/components/ui/grid/index.web.d.ts +23 -0
- package/lib/components/ui/grid/index.web.js +20 -0
- package/lib/components/ui/grid/index.web.js.map +1 -0
- package/lib/components/ui/grid/styles.d.ts +2 -0
- package/lib/components/ui/grid/styles.js +11 -0
- package/lib/components/ui/grid/styles.js.map +1 -0
- package/lib/components/ui/heading/index.d.ts +335 -0
- package/lib/components/ui/heading/index.js +135 -0
- package/lib/components/ui/heading/index.js.map +1 -0
- package/lib/components/ui/heading/index.web.d.ts +335 -0
- package/lib/components/ui/heading/index.web.js +113 -0
- package/lib/components/ui/heading/index.web.js.map +1 -0
- package/lib/components/ui/heading/styles.d.ts +330 -0
- package/lib/components/ui/heading/styles.js +43 -0
- package/lib/components/ui/heading/styles.js.map +1 -0
- package/lib/components/ui/hstack/index.d.ts +150 -0
- package/lib/components/ui/hstack/index.js +9 -0
- package/lib/components/ui/hstack/index.js.map +1 -0
- package/lib/components/ui/hstack/index.web.d.ts +148 -0
- package/lib/components/ui/hstack/index.web.js +8 -0
- package/lib/components/ui/hstack/index.web.js.map +1 -0
- package/lib/components/ui/hstack/styles.d.ts +145 -0
- package/lib/components/ui/hstack/styles.js +24 -0
- package/lib/components/ui/hstack/styles.js.map +1 -0
- package/lib/components/ui/icon/index.d.ts +364 -0
- package/lib/components/ui/icon/index.js +565 -0
- package/lib/components/ui/icon/index.js.map +1 -0
- package/lib/components/ui/icon/index.web.d.ts +489 -0
- package/lib/components/ui/icon/index.web.js +555 -0
- package/lib/components/ui/icon/index.web.js.map +1 -0
- package/lib/components/ui/image/index.d.ts +132 -0
- package/lib/components/ui/image/index.js +33 -0
- package/lib/components/ui/image/index.js.map +1 -0
- package/lib/components/ui/image-background/index.d.ts +3 -0
- package/lib/components/ui/image-background/index.js +11 -0
- package/lib/components/ui/image-background/index.js.map +1 -0
- package/lib/components/ui/index.d.ts +54 -0
- package/lib/components/ui/index.js +55 -0
- package/lib/components/ui/index.js.map +1 -0
- package/lib/components/ui/input/index.d.ts +262 -0
- package/lib/components/ui/input/index.js +121 -0
- package/lib/components/ui/input/index.js.map +1 -0
- package/lib/components/ui/input-accessory-view/index.d.ts +1 -0
- package/lib/components/ui/input-accessory-view/index.js +3 -0
- package/lib/components/ui/input-accessory-view/index.js.map +1 -0
- package/lib/components/ui/keyboard-avoiding-view/index.d.ts +1 -0
- package/lib/components/ui/keyboard-avoiding-view/index.js +3 -0
- package/lib/components/ui/keyboard-avoiding-view/index.js.map +1 -0
- package/lib/components/ui/link/index.d.ts +369 -0
- package/lib/components/ui/link/index.js +69 -0
- package/lib/components/ui/link/index.js.map +1 -0
- package/lib/components/ui/menu/index.d.ts +376 -0
- package/lib/components/ui/menu/index.js +120 -0
- package/lib/components/ui/menu/index.js.map +1 -0
- package/lib/components/ui/modal/index.d.ts +146 -0
- package/lib/components/ui/modal/index.js +137 -0
- package/lib/components/ui/modal/index.js.map +1 -0
- package/lib/components/ui/popover/index.d.ts +310 -0
- package/lib/components/ui/popover/index.js +172 -0
- package/lib/components/ui/popover/index.js.map +1 -0
- package/lib/components/ui/portal/index.d.ts +2 -0
- package/lib/components/ui/portal/index.js +9 -0
- package/lib/components/ui/portal/index.js.map +1 -0
- package/lib/components/ui/pressable/index.d.ts +13 -0
- package/lib/components/ui/pressable/index.js +20 -0
- package/lib/components/ui/pressable/index.js.map +1 -0
- package/lib/components/ui/progress/index.d.ts +174 -0
- package/lib/components/ui/progress/index.js +127 -0
- package/lib/components/ui/progress/index.js.map +1 -0
- package/lib/components/ui/radio/index.d.ts +160 -0
- package/lib/components/ui/radio/index.js +122 -0
- package/lib/components/ui/radio/index.js.map +1 -0
- package/lib/components/ui/refresh-control/index.d.ts +1 -0
- package/lib/components/ui/refresh-control/index.js +3 -0
- package/lib/components/ui/refresh-control/index.js.map +1 -0
- package/lib/components/ui/safe-area-view/index.d.ts +6 -0
- package/lib/components/ui/safe-area-view/index.js +9 -0
- package/lib/components/ui/safe-area-view/index.js.map +1 -0
- package/lib/components/ui/safe-area-view/styles.d.ts +1 -0
- package/lib/components/ui/safe-area-view/styles.js +9 -0
- package/lib/components/ui/safe-area-view/styles.js.map +1 -0
- package/lib/components/ui/scroll-view/index.d.ts +1 -0
- package/lib/components/ui/scroll-view/index.js +3 -0
- package/lib/components/ui/scroll-view/index.js.map +1 -0
- package/lib/components/ui/section-list/index.d.ts +1 -0
- package/lib/components/ui/section-list/index.js +3 -0
- package/lib/components/ui/section-list/index.js.map +1 -0
- package/lib/components/ui/select/index.d.ts +1708 -0
- package/lib/components/ui/select/index.js +155 -0
- package/lib/components/ui/select/index.js.map +1 -0
- package/lib/components/ui/select/select-actionsheet.d.ts +900 -0
- package/lib/components/ui/select/select-actionsheet.js +275 -0
- package/lib/components/ui/select/select-actionsheet.js.map +1 -0
- package/lib/components/ui/skeleton/index.d.ts +268 -0
- package/lib/components/ui/skeleton/index.js +63 -0
- package/lib/components/ui/skeleton/index.js.map +1 -0
- package/lib/components/ui/skeleton/index.web.d.ts +267 -0
- package/lib/components/ui/skeleton/index.web.js +37 -0
- package/lib/components/ui/skeleton/index.web.js.map +1 -0
- package/lib/components/ui/skeleton/styles.d.ts +257 -0
- package/lib/components/ui/skeleton/styles.js +35 -0
- package/lib/components/ui/skeleton/styles.js.map +1 -0
- package/lib/components/ui/slider/index.d.ts +211 -0
- package/lib/components/ui/slider/index.js +180 -0
- package/lib/components/ui/slider/index.js.map +1 -0
- package/lib/components/ui/spinner/index.d.ts +4 -0
- package/lib/components/ui/spinner/index.js +15 -0
- package/lib/components/ui/spinner/index.js.map +1 -0
- package/lib/components/ui/status-bar/index.d.ts +1 -0
- package/lib/components/ui/status-bar/index.js +3 -0
- package/lib/components/ui/status-bar/index.js.map +1 -0
- package/lib/components/ui/switch/index.d.ts +72 -0
- package/lib/components/ui/switch/index.js +25 -0
- package/lib/components/ui/switch/index.js.map +1 -0
- package/lib/components/ui/table/index.d.ts +17 -0
- package/lib/components/ui/table/index.js +96 -0
- package/lib/components/ui/table/index.js.map +1 -0
- package/lib/components/ui/table/index.web.d.ts +10 -0
- package/lib/components/ui/table/index.web.js +60 -0
- package/lib/components/ui/table/index.web.js.map +1 -0
- package/lib/components/ui/table/styles.d.ts +75 -0
- package/lib/components/ui/table/styles.js +36 -0
- package/lib/components/ui/table/styles.js.map +1 -0
- package/lib/components/ui/text/index.d.ts +358 -0
- package/lib/components/ui/text/index.js +19 -0
- package/lib/components/ui/text/index.js.map +1 -0
- package/lib/components/ui/text/index.web.d.ts +6 -0
- package/lib/components/ui/text/index.web.js +18 -0
- package/lib/components/ui/text/index.web.js.map +1 -0
- package/lib/components/ui/text/styles.d.ts +352 -0
- package/lib/components/ui/text/styles.js +45 -0
- package/lib/components/ui/text/styles.js.map +1 -0
- package/lib/components/ui/textarea/index.d.ts +129 -0
- package/lib/components/ui/textarea/index.js +52 -0
- package/lib/components/ui/textarea/index.js.map +1 -0
- package/lib/components/ui/toast/index.d.ts +527 -0
- package/lib/components/ui/toast/index.js +165 -0
- package/lib/components/ui/toast/index.js.map +1 -0
- package/lib/components/ui/tooltip/index.d.ts +391 -0
- package/lib/components/ui/tooltip/index.js +75 -0
- package/lib/components/ui/tooltip/index.js.map +1 -0
- package/lib/components/ui/utils/use-break-point-value.d.ts +14 -0
- package/lib/components/ui/utils/use-break-point-value.js +54 -0
- package/lib/components/ui/utils/use-break-point-value.js.map +1 -0
- package/lib/components/ui/view/index.d.ts +1 -0
- package/lib/components/ui/view/index.js +3 -0
- package/lib/components/ui/view/index.js.map +1 -0
- package/lib/components/ui/virtualized-list/index.d.ts +1 -0
- package/lib/components/ui/virtualized-list/index.js +3 -0
- package/lib/components/ui/virtualized-list/index.js.map +1 -0
- package/lib/components/ui/vstack/index.d.ts +149 -0
- package/lib/components/ui/vstack/index.js +9 -0
- package/lib/components/ui/vstack/index.js.map +1 -0
- package/lib/components/ui/vstack/index.web.d.ts +6 -0
- package/lib/components/ui/vstack/index.web.js +8 -0
- package/lib/components/ui/vstack/index.web.js.map +1 -0
- package/lib/components/ui/vstack/styles.d.ts +145 -0
- package/lib/components/ui/vstack/styles.js +24 -0
- package/lib/components/ui/vstack/styles.js.map +1 -0
- package/lib/components/usePermissionAutoFetch.d.ts +19 -7
- package/lib/components/with-interactions-lifecycle-managed.js +13 -11
- package/lib/components/with-interactions-lifecycle-managed.js.map +1 -1
- package/lib/components/with-interactions-managed.js +3 -3
- package/lib/components/with-interactions-managed.js.map +1 -1
- package/lib/containers/layout/ProLayout.js +2 -2
- package/lib/containers/layout/ProLayout.js.map +1 -1
- package/lib/global.css +3 -0
- package/lib/gluestack-ui-base-config.d.ts +8 -0
- package/lib/gluestack-ui-base-config.js +12 -0
- package/lib/gluestack-ui-base-config.js.map +1 -0
- package/lib/gluestack-ui.config.json +10 -0
- package/lib/index.d.ts +0 -3
- package/lib/index.js +5 -5
- package/lib/index.js.map +1 -1
- package/lib/nativewind-env.d.ts +1 -0
- package/lib/tailwind-base-config.d.ts +194 -0
- package/lib/tailwind-base-config.js +197 -0
- package/lib/tailwind-base-config.js.map +1 -0
- package/lib/tailwind.config.d.ts +1 -0
- package/lib/tailwind.config.js +197 -0
- package/lib/tailwind.config.js.map +1 -0
- package/lib/utils/generateMobileNavigations.js +26 -2
- package/lib/utils/generateMobileNavigations.js.map +1 -1
- package/package.json +39 -8
- package/src/components/Fallback.tsx +54 -58
- package/src/components/Layout/components/BasicLayout.tsx +2 -2
- package/src/components/Layout/components/BottomTabBar.tsx +92 -101
- package/src/components/Layout/components/Drawer.tsx +31 -28
- package/src/components/Layout/components/Header.tsx +26 -27
- package/src/components/Layout/components/Sample.tsx +1 -1
- package/src/components/Layout/components/SettingDrawer/LayoutButton.tsx +15 -29
- package/src/components/Layout/components/SettingDrawer/SettingDrawer.tsx +49 -57
- package/src/components/Layout/components/SettingDrawer/ThemeColorButton.tsx +14 -5
- package/src/components/Layout/components/SideBar.tsx +12 -17
- package/src/components/ToastAlert.tsx +13 -13
- package/src/components/UnAuthenticatedComponent.tsx +19 -27
- package/src/components/WithConfiguration.tsx +1 -1
- package/src/components/WithPermission.tsx +1 -1
- package/src/components/WithPolicy.tsx +1 -1
- package/src/components/index.ts +1 -0
- package/src/components/ui/IconSymbol.ios.tsx +33 -0
- package/src/components/ui/IconSymbol.tsx +40 -0
- package/src/components/ui/TabBarBackground.ios.tsx +23 -0
- package/src/components/ui/TabBarBackground.tsx +6 -0
- package/src/components/ui/accordion/index.tsx +304 -0
- package/src/components/ui/actionsheet/index.tsx +499 -0
- package/src/components/ui/alert/index.tsx +205 -0
- package/src/components/ui/alert-dialog/index.tsx +260 -0
- package/src/components/ui/avatar/index.tsx +162 -0
- package/src/components/ui/badge/index.tsx +188 -0
- package/src/components/ui/box/index.tsx +14 -0
- package/src/components/ui/box/index.web.tsx +13 -0
- package/src/components/ui/box/styles.tsx +10 -0
- package/src/components/ui/button/index.tsx +353 -0
- package/src/components/ui/card/index.tsx +16 -0
- package/src/components/ui/card/index.web.tsx +15 -0
- package/src/components/ui/card/styles.tsx +20 -0
- package/src/components/ui/center/index.tsx +14 -0
- package/src/components/ui/center/index.web.tsx +14 -0
- package/src/components/ui/center/styles.tsx +8 -0
- package/src/components/ui/checkbox/index.tsx +192 -0
- package/src/components/ui/divider/index.tsx +38 -0
- package/src/components/ui/drawer/index.tsx +311 -0
- package/src/components/ui/fab/index.tsx +190 -0
- package/src/components/ui/flat-list/index.tsx +2 -0
- package/src/components/ui/form-control/index.tsx +432 -0
- package/src/components/ui/gluestack-ui-provider/config.ts +309 -0
- package/src/components/ui/gluestack-ui-provider/index.tsx +38 -0
- package/src/components/ui/gluestack-ui-provider/index.web.tsx +88 -0
- package/src/components/ui/gluestack-ui-provider/script.ts +17 -0
- package/src/components/ui/gluestack-ui-provider/types.ts +1 -0
- package/src/components/ui/grid/index.tsx +284 -0
- package/src/components/ui/grid/index.web.tsx +61 -0
- package/src/components/ui/grid/styles.tsx +13 -0
- package/src/components/ui/heading/index.tsx +193 -0
- package/src/components/ui/heading/index.web.tsx +177 -0
- package/src/components/ui/heading/styles.tsx +43 -0
- package/src/components/ui/hstack/index.tsx +17 -0
- package/src/components/ui/hstack/index.web.tsx +15 -0
- package/src/components/ui/hstack/styles.tsx +25 -0
- package/src/components/ui/icon/index.tsx +1202 -0
- package/src/components/ui/icon/index.web.tsx +1190 -0
- package/src/components/ui/image/index.tsx +48 -0
- package/src/components/ui/image-background/index.tsx +21 -0
- package/src/components/ui/index.ts +54 -0
- package/src/components/ui/input/index.tsx +191 -0
- package/src/components/ui/input-accessory-view/index.tsx +2 -0
- package/src/components/ui/keyboard-avoiding-view/index.tsx +2 -0
- package/src/components/ui/link/index.tsx +92 -0
- package/src/components/ui/menu/index.tsx +179 -0
- package/src/components/ui/modal/index.tsx +244 -0
- package/src/components/ui/popover/index.tsx +309 -0
- package/src/components/ui/portal/index.tsx +12 -0
- package/src/components/ui/pressable/index.tsx +34 -0
- package/src/components/ui/progress/index.tsx +160 -0
- package/src/components/ui/radio/index.tsx +178 -0
- package/src/components/ui/refresh-control/index.tsx +2 -0
- package/src/components/ui/safe-area-view/index.tsx +22 -0
- package/src/components/ui/safe-area-view/styles.tsx +10 -0
- package/src/components/ui/scroll-view/index.tsx +2 -0
- package/src/components/ui/section-list/index.tsx +2 -0
- package/src/components/ui/select/index.tsx +251 -0
- package/src/components/ui/select/select-actionsheet.tsx +503 -0
- package/src/components/ui/skeleton/index.tsx +113 -0
- package/src/components/ui/skeleton/index.web.tsx +92 -0
- package/src/components/ui/skeleton/styles.tsx +35 -0
- package/src/components/ui/slider/index.tsx +239 -0
- package/src/components/ui/spinner/index.tsx +31 -0
- package/src/components/ui/status-bar/index.tsx +2 -0
- package/src/components/ui/switch/index.tsx +33 -0
- package/src/components/ui/table/index.tsx +171 -0
- package/src/components/ui/table/index.web.tsx +95 -0
- package/src/components/ui/table/styles.tsx +44 -0
- package/src/components/ui/text/index.tsx +53 -0
- package/src/components/ui/text/index.web.tsx +45 -0
- package/src/components/ui/text/styles.tsx +47 -0
- package/src/components/ui/textarea/index.tsx +83 -0
- package/src/components/ui/toast/index.tsx +218 -0
- package/src/components/ui/tooltip/index.tsx +104 -0
- package/src/components/ui/utils/use-break-point-value.ts +79 -0
- package/src/components/ui/view/index.tsx +2 -0
- package/src/components/ui/virtualized-list/index.tsx +2 -0
- package/src/components/ui/vstack/index.tsx +17 -0
- package/src/components/ui/vstack/index.web.tsx +16 -0
- package/src/components/ui/vstack/styles.tsx +25 -0
- package/src/components/with-interactions-lifecycle-managed.tsx +13 -14
- package/src/components/with-interactions-managed.tsx +3 -7
- package/src/containers/layout/ProLayout.tsx +3 -3
- package/src/global.css +3 -0
- package/src/gluestack-ui-base-config.js +12 -0
- package/src/gluestack-ui.config.json +10 -0
- package/src/index.ts +6 -7
- package/src/nativewind-env.d.ts +1 -0
- package/src/tailwind-base-config.js +197 -0
- package/src/tailwind.config.js +198 -0
- package/src/utils/generateMobileNavigations.ts +29 -1
- package/tsconfig.json +3 -9
|
@@ -22,7 +22,8 @@ import {
|
|
|
22
22
|
Divider,
|
|
23
23
|
Switch,
|
|
24
24
|
ScrollView,
|
|
25
|
-
|
|
25
|
+
ActionsheetScrollView,
|
|
26
|
+
} from '../../../ui';
|
|
26
27
|
import { useSelector } from 'react-redux';
|
|
27
28
|
|
|
28
29
|
import LayoutButton from './LayoutButton';
|
|
@@ -32,18 +33,16 @@ import { THEMECOLOR } from '../../../../utils/ThemeColor';
|
|
|
32
33
|
export const SettingDrawer = ({ isOpen, onSettingChange, handleClose }: any) => {
|
|
33
34
|
const settings = useSelector<any>((state) => state.settings) as any;
|
|
34
35
|
return (
|
|
35
|
-
<Actionsheet isOpen={isOpen} onClose={handleClose}
|
|
36
|
+
<Actionsheet isOpen={isOpen} onClose={handleClose} className="z-999">
|
|
36
37
|
<ActionsheetBackdrop />
|
|
37
|
-
<ActionsheetContent
|
|
38
|
+
<ActionsheetContent className="z-999">
|
|
38
39
|
<ActionsheetDragIndicatorWrapper>
|
|
39
40
|
<ActionsheetDragIndicator />
|
|
40
41
|
</ActionsheetDragIndicatorWrapper>
|
|
41
|
-
<
|
|
42
|
-
<Box
|
|
43
|
-
<Text
|
|
44
|
-
|
|
45
|
-
</Text>
|
|
46
|
-
<HStack space={'md'} mt={'$3'}>
|
|
42
|
+
<ActionsheetScrollView>
|
|
43
|
+
<Box className="items-start bg-white p-3">
|
|
44
|
+
<Text className="text-black font-semibold">Page style setting</Text>
|
|
45
|
+
<HStack space={'md'} className="mt-3">
|
|
47
46
|
<LayoutButton
|
|
48
47
|
mode="style"
|
|
49
48
|
settings={settings}
|
|
@@ -63,43 +62,40 @@ export const SettingDrawer = ({ isOpen, onSettingChange, handleClose }: any) =>
|
|
|
63
62
|
color={'realDark'}
|
|
64
63
|
/>
|
|
65
64
|
</HStack>
|
|
66
|
-
<Text
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
}
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
<
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
<
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
</
|
|
99
|
-
<
|
|
100
|
-
Theme Color
|
|
101
|
-
</Text>
|
|
102
|
-
<HStack space={'md'} mt={'$3'} flexWrap={'wrap'}>
|
|
65
|
+
<Text className="text-black font-semibold mt-2">Select Theme</Text>
|
|
66
|
+
<Box className="w-full">
|
|
67
|
+
<Select
|
|
68
|
+
className="mt-2"
|
|
69
|
+
selectedValue={settings?.themeName}
|
|
70
|
+
onValueChange={(value) => {
|
|
71
|
+
const newSettings = {
|
|
72
|
+
...settings,
|
|
73
|
+
themeName: value,
|
|
74
|
+
};
|
|
75
|
+
onSettingChange(newSettings);
|
|
76
|
+
}}
|
|
77
|
+
>
|
|
78
|
+
<SelectTrigger variant="outline" size="md">
|
|
79
|
+
<SelectInput placeholder="Select option" className="mr-3" />
|
|
80
|
+
<Icon as={ChevronDownIcon} />
|
|
81
|
+
</SelectTrigger>
|
|
82
|
+
<SelectPortal>
|
|
83
|
+
<SelectBackdrop />
|
|
84
|
+
<SelectContent>
|
|
85
|
+
<SelectDragIndicatorWrapper>
|
|
86
|
+
<SelectDragIndicator />
|
|
87
|
+
</SelectDragIndicatorWrapper>
|
|
88
|
+
<SelectItem label="Default" value="default" />
|
|
89
|
+
<SelectItem label="Github Theme" value="github" />
|
|
90
|
+
<SelectItem label="Slack Theme" value="slack" />
|
|
91
|
+
<SelectItem label="Airbnb Theme" value="airbnb" />
|
|
92
|
+
<SelectItem label="Spotify Theme" value="spotify" />
|
|
93
|
+
</SelectContent>
|
|
94
|
+
</SelectPortal>
|
|
95
|
+
</Select>
|
|
96
|
+
</Box>
|
|
97
|
+
<Text className="text-black font-semibold mt-2">Theme Color</Text>
|
|
98
|
+
<HStack space={'md'} className="mt-3 flex-wrap">
|
|
103
99
|
{THEMECOLOR.map((color, index) => (
|
|
104
100
|
<ThemeColorButton
|
|
105
101
|
key={index}
|
|
@@ -109,11 +105,9 @@ export const SettingDrawer = ({ isOpen, onSettingChange, handleClose }: any) =>
|
|
|
109
105
|
/>
|
|
110
106
|
))}
|
|
111
107
|
</HStack>
|
|
112
|
-
<Divider my
|
|
113
|
-
<Text
|
|
114
|
-
|
|
115
|
-
</Text>
|
|
116
|
-
<HStack space={'md'} mt={'$3'}>
|
|
108
|
+
<Divider className="my-4" />
|
|
109
|
+
<Text className="text-black font-semibold mt-2">Navigation Mode</Text>
|
|
110
|
+
<HStack space={'md'} className="mt-3">
|
|
117
111
|
<LayoutButton
|
|
118
112
|
mode="layout"
|
|
119
113
|
settings={settings}
|
|
@@ -136,11 +130,9 @@ export const SettingDrawer = ({ isOpen, onSettingChange, handleClose }: any) =>
|
|
|
136
130
|
color={'light'}
|
|
137
131
|
/>
|
|
138
132
|
</HStack>
|
|
139
|
-
<Divider my
|
|
140
|
-
<Text
|
|
141
|
-
|
|
142
|
-
</Text>
|
|
143
|
-
<HStack w={'100%'} mt={'$3'} justifyContent={'space-between'} alignItems="center">
|
|
133
|
+
<Divider className="my-4" />
|
|
134
|
+
<Text className="text-black font-semibold mt-2">Regional Settings</Text>
|
|
135
|
+
<HStack className="mt-3 w-full justify-between items-center">
|
|
144
136
|
<Text>Menu Header</Text>
|
|
145
137
|
<Switch
|
|
146
138
|
onValueChange={(value) => {
|
|
@@ -156,7 +148,7 @@ export const SettingDrawer = ({ isOpen, onSettingChange, handleClose }: any) =>
|
|
|
156
148
|
/>
|
|
157
149
|
</HStack>
|
|
158
150
|
</Box>
|
|
159
|
-
</
|
|
151
|
+
</ActionsheetScrollView>
|
|
160
152
|
</ActionsheetContent>
|
|
161
153
|
</Actionsheet>
|
|
162
154
|
);
|
|
@@ -1,13 +1,22 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import { Pressable, Box } from '
|
|
2
|
+
import { Pressable, Box } from '../../../ui';
|
|
3
|
+
|
|
4
|
+
const colorClassMap: Record<string, string> = {
|
|
5
|
+
'#4a154b': 'bg-[#4a154b]',
|
|
6
|
+
'#601e69': 'bg-[#601e69]',
|
|
7
|
+
'#1d1c1d': 'bg-[#1d1c1d]',
|
|
8
|
+
'#36c5ef': 'bg-[#36c5ef]',
|
|
9
|
+
'#2db57c': 'bg-[#2db57c]',
|
|
10
|
+
'#e01d5a': 'bg-[#e01d5a]',
|
|
11
|
+
'#ecb12f': 'bg-[#ecb12f]',
|
|
12
|
+
'#616061': 'bg-[#616061]',
|
|
13
|
+
'#dcd9d4': 'bg-[#dcd9d4]',
|
|
14
|
+
};
|
|
3
15
|
|
|
4
16
|
const ThemeColorButton = ({ color, onSettingChange, settings }: any) => {
|
|
5
17
|
return (
|
|
6
18
|
<Pressable
|
|
7
|
-
|
|
8
|
-
height={'$6'}
|
|
9
|
-
width={'$6'}
|
|
10
|
-
borderRadius={'$sm'}
|
|
19
|
+
className={`${colorClassMap[color]} w-[26px] h-[26px] rounded-md`}
|
|
11
20
|
onPress={() => {
|
|
12
21
|
let { primaryColor, ...rest } = settings;
|
|
13
22
|
primaryColor = color;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import React, { useState } from 'react';
|
|
2
|
-
import { HStack, Icon, Text, Box, StatusBar, Divider, Button, FlatList
|
|
2
|
+
import { HStack, Icon, Text, Box, StatusBar, Divider, Button, FlatList } from '../../ui';
|
|
3
3
|
import { StyleSheet, TouchableOpacity } from 'react-native';
|
|
4
4
|
import { Ionicons } from '@expo/vector-icons';
|
|
5
5
|
import { Link } from 'react-router-native';
|
|
@@ -38,30 +38,27 @@ const SideBar: React.FC<SideBarProps> = ({ menuData, matchUrl, navTheme, drawerR
|
|
|
38
38
|
};
|
|
39
39
|
|
|
40
40
|
return (
|
|
41
|
-
<Box
|
|
41
|
+
<Box className={`flex-1 bg-${navTheme === 'dark' ? COLOR.GREYISH_BLACK : COLOR.WHITE}`}>
|
|
42
42
|
{!!isMenuExist && (
|
|
43
43
|
<FlatList
|
|
44
44
|
data={menuData}
|
|
45
|
-
renderItem={({ item }:any) => {
|
|
45
|
+
renderItem={({ item }: any) => {
|
|
46
46
|
const keys = item?.key.split('.');
|
|
47
|
-
const arrowIcon:any = icon || 'chevron-down-outline';
|
|
47
|
+
const arrowIcon: any = icon || 'chevron-down-outline';
|
|
48
48
|
return item?.routes ? (
|
|
49
|
-
<Box
|
|
49
|
+
<Box className="p-3">
|
|
50
50
|
<TouchableOpacity onPress={() => toggle()}>
|
|
51
51
|
<HStack>
|
|
52
|
-
<Ionicons
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
/>
|
|
56
|
-
<Text style={{ color: isToggle ? '#fff' : '#a1a1a1' }}>{item.name}</Text>
|
|
57
|
-
<Ionicons name={arrowIcon} />
|
|
52
|
+
<Ionicons color={isToggle ? '#fff' : '#a1a1a1'} name="document-outline" />
|
|
53
|
+
<Text color={isToggle ? '#fff' : '#a1a1a1'}>{item.name}</Text>
|
|
54
|
+
<Ionicons name={arrowIcon} />
|
|
58
55
|
</HStack>
|
|
59
56
|
</TouchableOpacity>
|
|
60
57
|
{isToggle
|
|
61
58
|
? item.routes.map((subMenu: any) => (
|
|
62
59
|
<Box key={subMenu.key}>
|
|
63
60
|
<Link to={subMenu.path} underlayColor="#f0f4f7">
|
|
64
|
-
<Text
|
|
61
|
+
<Text className="text-[#a1a1a1]">{subMenu.name}</Text>
|
|
65
62
|
</Link>
|
|
66
63
|
</Box>
|
|
67
64
|
))
|
|
@@ -69,7 +66,7 @@ const SideBar: React.FC<SideBarProps> = ({ menuData, matchUrl, navTheme, drawerR
|
|
|
69
66
|
</Box>
|
|
70
67
|
) : (
|
|
71
68
|
keys[0] != 'Main' && keys[0] == 'sidebar' && (
|
|
72
|
-
<Box key={item.key}
|
|
69
|
+
<Box key={item.key} className="p-3">
|
|
73
70
|
<TouchableOpacity style={{ marginBottom: 10 }} onPress={() => openMenuItem(item)}>
|
|
74
71
|
<HStack>
|
|
75
72
|
<Ionicons
|
|
@@ -78,10 +75,8 @@ const SideBar: React.FC<SideBarProps> = ({ menuData, matchUrl, navTheme, drawerR
|
|
|
78
75
|
name={item.icon}
|
|
79
76
|
/>
|
|
80
77
|
<Text
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
marginLeft: 10,
|
|
84
|
-
}}
|
|
78
|
+
color={navTheme === 'dark' ? COLOR.LIGHT_GREY : COLOR.BLACK}
|
|
79
|
+
className="ml-10"
|
|
85
80
|
>
|
|
86
81
|
{item.name}
|
|
87
82
|
</Text>
|
|
@@ -1,14 +1,6 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
|
|
3
|
-
import {
|
|
4
|
-
Toast,
|
|
5
|
-
VStack,
|
|
6
|
-
ToastTitle,
|
|
7
|
-
ToastDescription,
|
|
8
|
-
Pressable,
|
|
9
|
-
Icon,
|
|
10
|
-
CloseIcon,
|
|
11
|
-
} from '@gluestack-ui/themed';
|
|
3
|
+
import { Toast, VStack, ToastTitle, ToastDescription, Pressable, Icon, CloseIcon } from './ui';
|
|
12
4
|
|
|
13
5
|
interface IToast {
|
|
14
6
|
id: string;
|
|
@@ -17,7 +9,7 @@ interface IToast {
|
|
|
17
9
|
description?: string;
|
|
18
10
|
isClosable?: boolean;
|
|
19
11
|
toast?: any;
|
|
20
|
-
variant?:any
|
|
12
|
+
variant?: any;
|
|
21
13
|
}
|
|
22
14
|
|
|
23
15
|
// variants:
|
|
@@ -25,7 +17,15 @@ interface IToast {
|
|
|
25
17
|
// solid,
|
|
26
18
|
// outline
|
|
27
19
|
|
|
28
|
-
export const ToastAlert = ({
|
|
20
|
+
export const ToastAlert = ({
|
|
21
|
+
id,
|
|
22
|
+
status = 'info',
|
|
23
|
+
title = '',
|
|
24
|
+
description = '',
|
|
25
|
+
variant = 'solid',
|
|
26
|
+
isClosable,
|
|
27
|
+
toast = null,
|
|
28
|
+
}: IToast) => {
|
|
29
29
|
const toastId = 'toast-' + id;
|
|
30
30
|
const actionType = status || 'info';
|
|
31
31
|
return (
|
|
@@ -35,8 +35,8 @@ export const ToastAlert = ({ id, status = 'info', title='', description = '',var
|
|
|
35
35
|
{description && <ToastDescription>{description}</ToastDescription>}
|
|
36
36
|
</VStack>
|
|
37
37
|
{isClosable && toast ? (
|
|
38
|
-
<Pressable
|
|
39
|
-
<Icon as={CloseIcon}
|
|
38
|
+
<Pressable className="mt-1" onPress={() => toast?.close(id)}>
|
|
39
|
+
<Icon as={CloseIcon} className="text-gray-400" />
|
|
40
40
|
</Pressable>
|
|
41
41
|
) : null}
|
|
42
42
|
</Toast>
|
|
@@ -1,38 +1,30 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import {
|
|
3
|
-
Box,
|
|
4
|
-
Button,
|
|
5
|
-
Heading,
|
|
6
|
-
Text,
|
|
7
|
-
HStack,
|
|
8
|
-
Pressable,
|
|
9
|
-
Divider,
|
|
10
|
-
ButtonText,
|
|
11
|
-
SafeAreaView,
|
|
12
|
-
} from '@gluestack-ui/themed';
|
|
2
|
+
import { Box, Button, Heading, Text, HStack, Pressable, Divider, ButtonText, StyledSafeAreaView } from './ui';
|
|
13
3
|
import { useNavigation } from '@react-navigation/native';
|
|
14
4
|
import { Ionicons } from '@expo/vector-icons';
|
|
15
5
|
import { Linking } from 'react-native';
|
|
16
6
|
|
|
17
|
-
|
|
7
|
+
const UnAuthenticatedComponent = () => {
|
|
18
8
|
const navigation = useNavigation<any>();
|
|
19
9
|
return (
|
|
20
|
-
<
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
10
|
+
<StyledSafeAreaView>
|
|
11
|
+
<Box className="flex-1 border-t border-t-slate-300">
|
|
12
|
+
{/* <Box h={'$1'} bg={Colors.primaryBgColor} /> */}
|
|
13
|
+
<Box className="flex-1 p-6 bg-white justify-center">
|
|
14
|
+
<Heading className="mt-2">Login</Heading>
|
|
15
|
+
<Text className="text-md mt-2">Log in to continue.</Text>
|
|
16
|
+
<Button
|
|
17
|
+
className="bg-blue-500 my-3"
|
|
18
|
+
size="lg"
|
|
19
|
+
onPress={() => navigation.navigate('MainStack.Login')}
|
|
20
|
+
>
|
|
21
|
+
<ButtonText className="text-white">Login</ButtonText>
|
|
22
|
+
</Button>
|
|
23
|
+
<Divider className="my-3" />
|
|
24
|
+
</Box>
|
|
32
25
|
</Box>
|
|
33
|
-
</
|
|
34
|
-
</SafeAreaView>
|
|
26
|
+
</StyledSafeAreaView>
|
|
35
27
|
);
|
|
36
28
|
};
|
|
37
29
|
|
|
38
|
-
export default UnAuthenticatedComponent;
|
|
30
|
+
export default UnAuthenticatedComponent;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
|
-
import { Spinner, Box, Text, Heading } from '
|
|
2
|
+
import { Spinner, Box, Text, Heading } from './ui';
|
|
3
3
|
import { PermissionType, Visibility } from 'common';
|
|
4
4
|
import { IPreDefinedPermissions } from '@adminide-stack/core';
|
|
5
5
|
import { useSetting, usePermissionAutoFetch } from '@adminide-stack/platform-client';
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
|
-
import { Spinner, Box, Text, Heading } from '
|
|
2
|
+
import { Spinner, Box, Text, Heading } from './ui';
|
|
3
3
|
import { PermissionType } from 'common';
|
|
4
4
|
import { IPreDefinedPermissions } from '@adminide-stack/core';
|
|
5
5
|
import { get } from 'lodash-es';
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
import { ReactElement } from 'react';
|
|
3
|
-
import { Spinner } from '
|
|
3
|
+
import { Spinner } from './ui';
|
|
4
4
|
import { logger } from '@cdm-logger/client';
|
|
5
5
|
import { useSetting } from '@adminide-stack/platform-client';
|
|
6
6
|
|
package/src/components/index.ts
CHANGED
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { SymbolView, SymbolViewProps, SymbolWeight } from 'expo-symbols';
|
|
3
|
+
import { StyleProp, ViewStyle } from 'react-native';
|
|
4
|
+
|
|
5
|
+
export function IconSymbol({
|
|
6
|
+
name,
|
|
7
|
+
size = 24,
|
|
8
|
+
color,
|
|
9
|
+
style,
|
|
10
|
+
weight = 'regular',
|
|
11
|
+
}: {
|
|
12
|
+
name: SymbolViewProps['name'];
|
|
13
|
+
size?: number;
|
|
14
|
+
color: string;
|
|
15
|
+
style?: StyleProp<ViewStyle>;
|
|
16
|
+
weight?: SymbolWeight;
|
|
17
|
+
}) {
|
|
18
|
+
return (
|
|
19
|
+
<SymbolView
|
|
20
|
+
weight={weight}
|
|
21
|
+
tintColor={color}
|
|
22
|
+
resizeMode="scaleAspectFit"
|
|
23
|
+
name={name}
|
|
24
|
+
style={[
|
|
25
|
+
{
|
|
26
|
+
width: size,
|
|
27
|
+
height: size,
|
|
28
|
+
},
|
|
29
|
+
style,
|
|
30
|
+
]}
|
|
31
|
+
/>
|
|
32
|
+
);
|
|
33
|
+
}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
// This file is a fallback for using MaterialIcons on Android and web.
|
|
2
|
+
|
|
3
|
+
import MaterialIcons from '@expo/vector-icons/MaterialIcons';
|
|
4
|
+
import { SymbolWeight } from 'expo-symbols';
|
|
5
|
+
import React from 'react';
|
|
6
|
+
import { OpaqueColorValue, StyleProp, ViewStyle } from 'react-native';
|
|
7
|
+
|
|
8
|
+
// Add your SFSymbol to MaterialIcons mappings here.
|
|
9
|
+
const MAPPING = {
|
|
10
|
+
// See MaterialIcons here: https://icons.expo.fyi
|
|
11
|
+
// See SF Symbols in the SF Symbols app on Mac.
|
|
12
|
+
'house.fill': 'home',
|
|
13
|
+
'paperplane.fill': 'send',
|
|
14
|
+
'chevron.left.forwardslash.chevron.right': 'code',
|
|
15
|
+
'chevron.right': 'chevron-right',
|
|
16
|
+
} as Partial<
|
|
17
|
+
Record<import('expo-symbols').SymbolViewProps['name'], React.ComponentProps<typeof MaterialIcons>['name']>
|
|
18
|
+
>;
|
|
19
|
+
|
|
20
|
+
export type IconSymbolName = keyof typeof MAPPING;
|
|
21
|
+
|
|
22
|
+
/**
|
|
23
|
+
* An icon component that uses native SFSymbols on iOS, and MaterialIcons on Android and web. This ensures a consistent look across platforms, and optimal resource usage.
|
|
24
|
+
*
|
|
25
|
+
* Icon `name`s are based on SFSymbols and require manual mapping to MaterialIcons.
|
|
26
|
+
*/
|
|
27
|
+
export function IconSymbol({
|
|
28
|
+
name,
|
|
29
|
+
size = 24,
|
|
30
|
+
color,
|
|
31
|
+
style,
|
|
32
|
+
}: {
|
|
33
|
+
name: IconSymbolName;
|
|
34
|
+
size?: number;
|
|
35
|
+
color: string | OpaqueColorValue;
|
|
36
|
+
style?: StyleProp<ViewStyle>;
|
|
37
|
+
weight?: SymbolWeight;
|
|
38
|
+
}) {
|
|
39
|
+
return <MaterialIcons color={color} size={size} name={MAPPING[name]} style={style} />;
|
|
40
|
+
}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { useBottomTabBarHeight } from '@react-navigation/bottom-tabs';
|
|
3
|
+
import { BlurView } from 'expo-blur';
|
|
4
|
+
import { StyleSheet } from 'react-native';
|
|
5
|
+
import { useSafeAreaInsets } from 'react-native-safe-area-context';
|
|
6
|
+
|
|
7
|
+
export default function BlurTabBarBackground() {
|
|
8
|
+
return (
|
|
9
|
+
<BlurView
|
|
10
|
+
// System chrome material automatically adapts to the system's theme
|
|
11
|
+
// and matches the native tab bar appearance on iOS.
|
|
12
|
+
tint="systemChromeMaterial"
|
|
13
|
+
intensity={100}
|
|
14
|
+
style={StyleSheet.absoluteFill}
|
|
15
|
+
/>
|
|
16
|
+
);
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
export function useBottomTabOverflow() {
|
|
20
|
+
const tabHeight = useBottomTabBarHeight();
|
|
21
|
+
const { bottom } = useSafeAreaInsets();
|
|
22
|
+
return tabHeight - bottom;
|
|
23
|
+
}
|