@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
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import React, { useEffect, useLayoutEffect } from 'react';
|
|
3
|
+
import { config } from './config';
|
|
4
|
+
import { OverlayProvider } from '@gluestack-ui/overlay';
|
|
5
|
+
import { ToastProvider } from '@gluestack-ui/toast';
|
|
6
|
+
import { setFlushStyles } from '@gluestack-ui/nativewind-utils/flush';
|
|
7
|
+
import { script } from './script';
|
|
8
|
+
const variableStyleTagId = 'nativewind-style';
|
|
9
|
+
const createStyle = (styleTagId) => {
|
|
10
|
+
const style = document.createElement('style');
|
|
11
|
+
style.id = styleTagId;
|
|
12
|
+
style.appendChild(document.createTextNode(''));
|
|
13
|
+
return style;
|
|
14
|
+
};
|
|
15
|
+
export const useSafeLayoutEffect = typeof window !== 'undefined' ? useLayoutEffect : useEffect;
|
|
16
|
+
export function GluestackUIProvider({ mode = 'light', ...props }) {
|
|
17
|
+
let cssVariablesWithMode = ``;
|
|
18
|
+
Object.keys(config).forEach((configKey) => {
|
|
19
|
+
cssVariablesWithMode += configKey === 'dark' ? `\n .dark {\n ` : `\n:root {\n`;
|
|
20
|
+
const cssVariables = Object.keys(config[configKey]).reduce((acc, curr) => {
|
|
21
|
+
acc += `${curr}:${config[configKey][curr]}; `;
|
|
22
|
+
return acc;
|
|
23
|
+
}, '');
|
|
24
|
+
cssVariablesWithMode += `${cssVariables} \n}`;
|
|
25
|
+
});
|
|
26
|
+
setFlushStyles(cssVariablesWithMode);
|
|
27
|
+
const handleMediaQuery = React.useCallback((e) => {
|
|
28
|
+
script(e.matches ? 'dark' : 'light');
|
|
29
|
+
}, []);
|
|
30
|
+
useSafeLayoutEffect(() => {
|
|
31
|
+
if (mode !== 'system') {
|
|
32
|
+
const documentElement = document.documentElement;
|
|
33
|
+
if (documentElement) {
|
|
34
|
+
documentElement.classList.add(mode);
|
|
35
|
+
documentElement.classList.remove(mode === 'light' ? 'dark' : 'light');
|
|
36
|
+
documentElement.style.colorScheme = mode;
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
}, [mode]);
|
|
40
|
+
useSafeLayoutEffect(() => {
|
|
41
|
+
if (mode !== 'system')
|
|
42
|
+
return;
|
|
43
|
+
const media = window.matchMedia('(prefers-color-scheme: dark)');
|
|
44
|
+
media.addListener(handleMediaQuery);
|
|
45
|
+
return () => media.removeListener(handleMediaQuery);
|
|
46
|
+
}, [handleMediaQuery]);
|
|
47
|
+
useSafeLayoutEffect(() => {
|
|
48
|
+
if (typeof window !== 'undefined') {
|
|
49
|
+
const documentElement = document.documentElement;
|
|
50
|
+
if (documentElement) {
|
|
51
|
+
const head = documentElement.querySelector('head');
|
|
52
|
+
let style = head?.querySelector(`[id='${variableStyleTagId}']`);
|
|
53
|
+
if (!style) {
|
|
54
|
+
style = createStyle(variableStyleTagId);
|
|
55
|
+
style.innerHTML = cssVariablesWithMode;
|
|
56
|
+
if (head)
|
|
57
|
+
head.appendChild(style);
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
}, []);
|
|
62
|
+
return (React.createElement(React.Fragment, null,
|
|
63
|
+
React.createElement("script", { suppressHydrationWarning: true, dangerouslySetInnerHTML: {
|
|
64
|
+
__html: `(${script.toString()})('${mode}')`,
|
|
65
|
+
} }),
|
|
66
|
+
React.createElement(OverlayProvider, null,
|
|
67
|
+
React.createElement(ToastProvider, null, props.children))));
|
|
68
|
+
}
|
|
69
|
+
//# sourceMappingURL=index.web.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.web.js","sourceRoot":"","sources":["../../../../src/components/ui/gluestack-ui-provider/index.web.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const script: (mode: string) => void;
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
export const script = (mode) => {
|
|
2
|
+
const documentElement = document.documentElement;
|
|
3
|
+
function getSystemColorMode() {
|
|
4
|
+
return window.matchMedia('(prefers-color-scheme: dark)').matches ? 'dark' : 'light';
|
|
5
|
+
}
|
|
6
|
+
try {
|
|
7
|
+
const isSystem = mode === 'system';
|
|
8
|
+
const theme = isSystem ? getSystemColorMode() : mode;
|
|
9
|
+
documentElement.classList.remove(theme === 'light' ? 'dark' : 'light');
|
|
10
|
+
documentElement.classList.add(theme);
|
|
11
|
+
documentElement.style.colorScheme = theme;
|
|
12
|
+
}
|
|
13
|
+
catch (e) {
|
|
14
|
+
console.error(e);
|
|
15
|
+
}
|
|
16
|
+
};
|
|
17
|
+
//# sourceMappingURL=script.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"script.js","sourceRoot":"","sources":["../../../../src/components/ui/gluestack-ui-provider/script.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,IAAY,EAAE,EAAE;IACnC,MAAM,eAAe,GAAG,QAAQ,CAAC,eAAe,CAAC;IAEjD,SAAS,kBAAkB;QACvB,OAAO,MAAM,CAAC,UAAU,CAAC,8BAA8B,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC;IACxF,CAAC;IAED,IAAI,CAAC;QACD,MAAM,QAAQ,GAAG,IAAI,KAAK,QAAQ,CAAC;QACnC,MAAM,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAC,kBAAkB,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;QACrD,eAAe,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,KAAK,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;QACvE,eAAe,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACrC,eAAe,CAAC,KAAK,CAAC,WAAW,GAAG,KAAK,CAAC;IAC9C,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACT,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACrB,CAAC;AACL,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export type ModeType = 'light' | 'dark' | 'system';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/components/ui/gluestack-ui-provider/types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import type { VariantProps } from '@gluestack-ui/nativewind-utils';
|
|
3
|
+
import { View, ViewProps } from 'react-native';
|
|
4
|
+
declare const Grid: React.ForwardRefExoticComponent<ViewProps & VariantProps<import("@gluestack-ui/nativewind-utils/types").TVReturnType<{} | {}, undefined, "w-full grid grid-cols-12" | "w-full box-border flex-row flex-wrap justify-start", import("tailwind-variants/dist/config").TVConfig<unknown, unknown>, unknown, undefined, import("@gluestack-ui/nativewind-utils/types").TVReturnType<unknown, undefined, "w-full grid grid-cols-12" | "w-full box-border flex-row flex-wrap justify-start", import("tailwind-variants/dist/config").TVConfig<unknown, unknown>, unknown, unknown, undefined>>> & {
|
|
5
|
+
gap?: number;
|
|
6
|
+
rowGap?: number;
|
|
7
|
+
columnGap?: number;
|
|
8
|
+
flexDirection?: "row" | "column" | "row-reverse" | "column-reverse";
|
|
9
|
+
padding?: number;
|
|
10
|
+
paddingLeft?: number;
|
|
11
|
+
paddingRight?: number;
|
|
12
|
+
paddingStart?: number;
|
|
13
|
+
paddingEnd?: number;
|
|
14
|
+
borderWidth?: number;
|
|
15
|
+
borderLeftWidth?: number;
|
|
16
|
+
borderRightWidth?: number;
|
|
17
|
+
_extra: {
|
|
18
|
+
className: string;
|
|
19
|
+
};
|
|
20
|
+
} & React.RefAttributes<View>>;
|
|
21
|
+
declare const GridItem: React.ForwardRefExoticComponent<ViewProps & VariantProps<import("@gluestack-ui/nativewind-utils/types").TVReturnType<{} | {}, undefined, "w-full " | "w-full w-auto col-span-1", import("tailwind-variants/dist/config").TVConfig<unknown, unknown>, unknown, undefined, import("@gluestack-ui/nativewind-utils/types").TVReturnType<unknown, undefined, "w-full " | "w-full w-auto col-span-1", import("tailwind-variants/dist/config").TVConfig<unknown, unknown>, unknown, unknown, undefined>>> & {
|
|
22
|
+
index?: number;
|
|
23
|
+
_extra: {
|
|
24
|
+
className: string;
|
|
25
|
+
};
|
|
26
|
+
} & React.RefAttributes<View>>;
|
|
27
|
+
export { Grid, GridItem };
|
|
@@ -0,0 +1,175 @@
|
|
|
1
|
+
import React, { useEffect, useState, createContext, useContext, useMemo, forwardRef } from 'react';
|
|
2
|
+
import { View, Dimensions, Platform } from 'react-native';
|
|
3
|
+
import { gridStyle, gridItemStyle } from './styles';
|
|
4
|
+
import { cssInterop } from 'nativewind';
|
|
5
|
+
import { useBreakpointValue, getBreakPointValue } from '../utils/use-break-point-value';
|
|
6
|
+
const { width: DEVICE_WIDTH } = Dimensions.get('window');
|
|
7
|
+
const GridContext = createContext({});
|
|
8
|
+
function arrangeChildrenIntoRows({ childrenArray, colSpanArr, numColumns, }) {
|
|
9
|
+
let currentRow = 1;
|
|
10
|
+
let currentRowTotalColSpan = 0;
|
|
11
|
+
// store how many items in each row
|
|
12
|
+
const rowItemsCount = {};
|
|
13
|
+
for (let i = 0; i < childrenArray.length; i++) {
|
|
14
|
+
const colSpan = colSpanArr[i];
|
|
15
|
+
// if current row is full, go to next row
|
|
16
|
+
if (currentRowTotalColSpan + colSpan > numColumns) {
|
|
17
|
+
currentRow++;
|
|
18
|
+
currentRowTotalColSpan = colSpan;
|
|
19
|
+
}
|
|
20
|
+
else {
|
|
21
|
+
// if current row is not full, add colSpan to current row
|
|
22
|
+
currentRowTotalColSpan += colSpan;
|
|
23
|
+
}
|
|
24
|
+
rowItemsCount[currentRow] = rowItemsCount[currentRow] ? [...rowItemsCount[currentRow], i] : [i];
|
|
25
|
+
}
|
|
26
|
+
return rowItemsCount;
|
|
27
|
+
}
|
|
28
|
+
function generateResponsiveNumColumns({ gridClass }) {
|
|
29
|
+
const gridClassNamePattern = /\b(?:\w+:)?grid-cols-?\d+\b/g;
|
|
30
|
+
const numColumns = gridClass?.match(gridClassNamePattern);
|
|
31
|
+
if (!numColumns) {
|
|
32
|
+
return 12;
|
|
33
|
+
}
|
|
34
|
+
const regex = /^(?:(\w+):)?grid-cols-?(\d+)$/;
|
|
35
|
+
const result = {};
|
|
36
|
+
numColumns.forEach((classname) => {
|
|
37
|
+
const match = classname.match(regex);
|
|
38
|
+
if (match) {
|
|
39
|
+
const prefix = match[1] || 'default';
|
|
40
|
+
const value = parseInt(match[2], 10);
|
|
41
|
+
result[prefix] = value;
|
|
42
|
+
}
|
|
43
|
+
});
|
|
44
|
+
return result;
|
|
45
|
+
}
|
|
46
|
+
function generateResponsiveColSpans({ gridItemClassName }) {
|
|
47
|
+
const gridClassNamePattern = /\b(?:\w+:)?col-span-?\d+\b/g;
|
|
48
|
+
const colSpan = gridItemClassName?.match(gridClassNamePattern);
|
|
49
|
+
if (!colSpan) {
|
|
50
|
+
return 1;
|
|
51
|
+
}
|
|
52
|
+
const regex = /^(?:(\w+):)?col-span-?(\d+)$/;
|
|
53
|
+
const result = {};
|
|
54
|
+
colSpan.forEach((classname) => {
|
|
55
|
+
const match = classname.match(regex);
|
|
56
|
+
if (match) {
|
|
57
|
+
const prefix = match[1] || 'default';
|
|
58
|
+
const value = parseInt(match[2], 10);
|
|
59
|
+
result[prefix] = value;
|
|
60
|
+
}
|
|
61
|
+
});
|
|
62
|
+
return result;
|
|
63
|
+
}
|
|
64
|
+
const Grid = forwardRef(({ className, _extra, children, ...props }, ref) => {
|
|
65
|
+
const [calculatedWidth, setCalculatedWidth] = useState(null);
|
|
66
|
+
const gridClass = _extra?.className;
|
|
67
|
+
const obj = generateResponsiveNumColumns({ gridClass });
|
|
68
|
+
const responsiveNumColumns = useBreakpointValue(obj);
|
|
69
|
+
const itemsPerRow = useMemo(() => {
|
|
70
|
+
// get the colSpan of each child
|
|
71
|
+
const colSpanArr = React.Children.map(children, (child) => {
|
|
72
|
+
const gridItemClassName = child?.props?._extra?.className;
|
|
73
|
+
const colSpan2 = getBreakPointValue(generateResponsiveColSpans({ gridItemClassName }), DEVICE_WIDTH);
|
|
74
|
+
const colSpan = colSpan2 ? colSpan2 : 1;
|
|
75
|
+
if (colSpan > responsiveNumColumns) {
|
|
76
|
+
return responsiveNumColumns;
|
|
77
|
+
}
|
|
78
|
+
return colSpan;
|
|
79
|
+
});
|
|
80
|
+
const childrenArray = React.Children.toArray(children);
|
|
81
|
+
const rowItemsCount = arrangeChildrenIntoRows({
|
|
82
|
+
childrenArray,
|
|
83
|
+
colSpanArr,
|
|
84
|
+
numColumns: responsiveNumColumns,
|
|
85
|
+
});
|
|
86
|
+
return rowItemsCount;
|
|
87
|
+
}, [responsiveNumColumns, children]);
|
|
88
|
+
const childrenWithProps = React.Children.map(children, (child, index) => {
|
|
89
|
+
if (React.isValidElement(child)) {
|
|
90
|
+
return React.cloneElement(child, { index });
|
|
91
|
+
}
|
|
92
|
+
return child;
|
|
93
|
+
});
|
|
94
|
+
const gridClassMerged = `${Platform.select({
|
|
95
|
+
web: gridClass ?? '',
|
|
96
|
+
})}`;
|
|
97
|
+
const contextValue = useMemo(() => {
|
|
98
|
+
return {
|
|
99
|
+
calculatedWidth,
|
|
100
|
+
numColumns: responsiveNumColumns,
|
|
101
|
+
itemsPerRow,
|
|
102
|
+
flexDirection: props?.flexDirection || 'row',
|
|
103
|
+
gap: props?.gap || 0,
|
|
104
|
+
columnGap: props?.columnGap || 0,
|
|
105
|
+
};
|
|
106
|
+
}, [calculatedWidth, itemsPerRow, responsiveNumColumns, props]);
|
|
107
|
+
const borderLeftWidth = props?.borderLeftWidth || props?.borderWidth || 0;
|
|
108
|
+
const borderRightWidth = props?.borderRightWidth || props?.borderWidth || 0;
|
|
109
|
+
const borderWidthToSubtract = borderLeftWidth + borderRightWidth;
|
|
110
|
+
return (React.createElement(GridContext.Provider, { value: contextValue },
|
|
111
|
+
React.createElement(View, { ref: ref, className: gridStyle({
|
|
112
|
+
class: className + ' ' + gridClassMerged,
|
|
113
|
+
}), onLayout: (event) => {
|
|
114
|
+
const paddingLeftToSubtract = props?.paddingStart || props?.paddingLeft || props?.padding || 0;
|
|
115
|
+
const paddingRightToSubtract = props?.paddingEnd || props?.paddingRight || props?.padding || 0;
|
|
116
|
+
const gridWidth = event.nativeEvent.layout.width -
|
|
117
|
+
paddingLeftToSubtract -
|
|
118
|
+
paddingRightToSubtract -
|
|
119
|
+
borderWidthToSubtract;
|
|
120
|
+
setCalculatedWidth(gridWidth);
|
|
121
|
+
}, ...props }, calculatedWidth && childrenWithProps)));
|
|
122
|
+
});
|
|
123
|
+
cssInterop(Grid, {
|
|
124
|
+
className: {
|
|
125
|
+
target: 'style',
|
|
126
|
+
nativeStyleToProp: {
|
|
127
|
+
gap: 'gap',
|
|
128
|
+
rowGap: 'rowGap',
|
|
129
|
+
columnGap: 'columnGap',
|
|
130
|
+
flexDirection: 'flexDirection',
|
|
131
|
+
padding: 'padding',
|
|
132
|
+
paddingLeft: 'paddingLeft',
|
|
133
|
+
paddingRight: 'paddingRight',
|
|
134
|
+
paddingStart: 'paddingStart',
|
|
135
|
+
paddingEnd: 'paddingEnd',
|
|
136
|
+
borderWidth: 'borderWidth',
|
|
137
|
+
borderLeftWidth: 'borderLeftWidth',
|
|
138
|
+
borderRightWidth: 'borderRightWidth',
|
|
139
|
+
},
|
|
140
|
+
},
|
|
141
|
+
});
|
|
142
|
+
const GridItem = forwardRef(({ className, _extra, ...props }, ref) => {
|
|
143
|
+
const [flexBasisValue, setFlexBasisValue] = useState('auto');
|
|
144
|
+
const { calculatedWidth, numColumns, itemsPerRow, flexDirection, gap, columnGap } = useContext(GridContext);
|
|
145
|
+
const gridItemClass = _extra?.className;
|
|
146
|
+
const responsiveColSpan = useBreakpointValue(generateResponsiveColSpans({ gridItemClassName: gridItemClass })) ?? 1;
|
|
147
|
+
useEffect(() => {
|
|
148
|
+
if (!flexDirection?.includes('column') && calculatedWidth && numColumns > 0 && responsiveColSpan > 0) {
|
|
149
|
+
// find out in which row of itemsPerRow the current item's index is
|
|
150
|
+
const row = Object.keys(itemsPerRow).find((key) => {
|
|
151
|
+
return itemsPerRow[key].includes(props?.index);
|
|
152
|
+
});
|
|
153
|
+
const rowColsCount = itemsPerRow[row]?.length;
|
|
154
|
+
const space = columnGap || gap || 0;
|
|
155
|
+
const gutterOffset = space * (rowColsCount === 1 && responsiveColSpan < numColumns ? 2 : rowColsCount - 1);
|
|
156
|
+
const flexBasisVal = Math.min((((calculatedWidth - gutterOffset) * responsiveColSpan) / numColumns / calculatedWidth) * 100, 100) + '%';
|
|
157
|
+
setFlexBasisValue(flexBasisVal);
|
|
158
|
+
}
|
|
159
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
160
|
+
}, [calculatedWidth, responsiveColSpan, numColumns, columnGap, gap, flexDirection]);
|
|
161
|
+
return (React.createElement(View, { ref: ref,
|
|
162
|
+
// @ts-expect-error
|
|
163
|
+
gridItemClass: gridItemClass, className: gridItemStyle({
|
|
164
|
+
class: className,
|
|
165
|
+
}), ...props, style: [
|
|
166
|
+
{
|
|
167
|
+
flexBasis: flexBasisValue,
|
|
168
|
+
},
|
|
169
|
+
props.style,
|
|
170
|
+
] }));
|
|
171
|
+
});
|
|
172
|
+
Grid.displayName = 'Grid';
|
|
173
|
+
GridItem.displayName = 'GridItem';
|
|
174
|
+
export { Grid, GridItem };
|
|
175
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/ui/grid/index.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import type { VariantProps } from '@gluestack-ui/nativewind-utils';
|
|
3
|
+
declare const Grid: React.ForwardRefExoticComponent<Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & VariantProps<import("@gluestack-ui/nativewind-utils/types").TVReturnType<{} | {}, undefined, "w-full grid grid-cols-12" | "w-full box-border flex-row flex-wrap justify-start", import("tailwind-variants/dist/config").TVConfig<unknown, unknown>, unknown, undefined, import("@gluestack-ui/nativewind-utils/types").TVReturnType<unknown, undefined, "w-full grid grid-cols-12" | "w-full box-border flex-row flex-wrap justify-start", import("tailwind-variants/dist/config").TVConfig<unknown, unknown>, unknown, unknown, undefined>>> & {
|
|
4
|
+
gap?: number;
|
|
5
|
+
rowGap?: number;
|
|
6
|
+
columnGap?: number;
|
|
7
|
+
flexDirection?: "row" | "column" | "row-reverse" | "column-reverse";
|
|
8
|
+
padding?: number;
|
|
9
|
+
paddingLeft?: number;
|
|
10
|
+
paddingRight?: number;
|
|
11
|
+
paddingStart?: number;
|
|
12
|
+
paddingEnd?: number;
|
|
13
|
+
_extra: {
|
|
14
|
+
className: string;
|
|
15
|
+
};
|
|
16
|
+
} & React.RefAttributes<HTMLDivElement>>;
|
|
17
|
+
declare const GridItem: React.ForwardRefExoticComponent<Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & VariantProps<import("@gluestack-ui/nativewind-utils/types").TVReturnType<{} | {}, undefined, "w-full " | "w-full w-auto col-span-1", import("tailwind-variants/dist/config").TVConfig<unknown, unknown>, unknown, undefined, import("@gluestack-ui/nativewind-utils/types").TVReturnType<unknown, undefined, "w-full " | "w-full w-auto col-span-1", import("tailwind-variants/dist/config").TVConfig<unknown, unknown>, unknown, unknown, undefined>>> & {
|
|
18
|
+
index?: number;
|
|
19
|
+
_extra: {
|
|
20
|
+
className: string;
|
|
21
|
+
};
|
|
22
|
+
} & React.RefAttributes<HTMLDivElement>>;
|
|
23
|
+
export { Grid, GridItem };
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { gridStyle, gridItemStyle } from './styles';
|
|
3
|
+
const Grid = React.forwardRef(({ className, _extra, ...props }, ref) => {
|
|
4
|
+
const gridClass = _extra?.className;
|
|
5
|
+
const finalGridClass = gridClass ?? '';
|
|
6
|
+
return (React.createElement("div", { ref: ref, className: gridStyle({
|
|
7
|
+
class: className + ' ' + finalGridClass,
|
|
8
|
+
}), ...props }));
|
|
9
|
+
});
|
|
10
|
+
const GridItem = React.forwardRef(({ className, _extra, ...props }, ref) => {
|
|
11
|
+
const gridItemClass = _extra?.className;
|
|
12
|
+
const finalGridItemClass = gridItemClass ?? '';
|
|
13
|
+
return (React.createElement("div", { ref: ref, className: gridItemStyle({
|
|
14
|
+
class: className + ' ' + finalGridItemClass,
|
|
15
|
+
}), ...props }));
|
|
16
|
+
});
|
|
17
|
+
Grid.displayName = 'Grid';
|
|
18
|
+
GridItem.displayName = 'GridItem';
|
|
19
|
+
export { Grid, GridItem };
|
|
20
|
+
//# sourceMappingURL=index.web.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.web.js","sourceRoot":"","sources":["../../../../src/components/ui/grid/index.web.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAoBpD,MAAM,IAAI,GAAG,KAAK,CAAC,UAAU,CAA6B,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,KAAK,EAAE,EAAE,GAAG,EAAE,EAAE;IAC/F,MAAM,SAAS,GAAG,MAAM,EAAE,SAAS,CAAC;IACpC,MAAM,cAAc,GAAG,SAAS,IAAI,EAAE,CAAC;IACvC,OAAO,CACH,6BACI,GAAG,EAAE,GAAG,EACR,SAAS,EAAE,SAAS,CAAC;YACjB,KAAK,EAAE,SAAS,GAAG,GAAG,GAAG,cAAc;SAC1C,CAAC,KACE,KAAK,GACX,CACL,CAAC;AACN,CAAC,CAAC,CAAC;AASH,MAAM,QAAQ,GAAG,KAAK,CAAC,UAAU,CAAiC,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,KAAK,EAAE,EAAE,GAAG,EAAE,EAAE;IACvG,MAAM,aAAa,GAAG,MAAM,EAAE,SAAS,CAAC;IAExC,MAAM,kBAAkB,GAAG,aAAa,IAAI,EAAE,CAAC;IAC/C,OAAO,CACH,6BACI,GAAG,EAAE,GAAG,EACR,SAAS,EAAE,aAAa,CAAC;YACrB,KAAK,EAAE,SAAS,GAAG,GAAG,GAAG,kBAAkB;SAC9C,CAAC,KACE,KAAK,GACX,CACL,CAAC;AACN,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC;AAC1B,QAAQ,CAAC,WAAW,GAAG,UAAU,CAAC;AAElC,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export declare const gridStyle: import("@gluestack-ui/nativewind-utils/types").TVReturnType<{} | {}, undefined, "w-full grid grid-cols-12" | "w-full box-border flex-row flex-wrap justify-start", import("tailwind-variants/dist/config").TVConfig<unknown, unknown>, unknown, undefined, import("@gluestack-ui/nativewind-utils/types").TVReturnType<unknown, undefined, "w-full grid grid-cols-12" | "w-full box-border flex-row flex-wrap justify-start", import("tailwind-variants/dist/config").TVConfig<unknown, unknown>, unknown, unknown, undefined>>;
|
|
2
|
+
export declare const gridItemStyle: import("@gluestack-ui/nativewind-utils/types").TVReturnType<{} | {}, undefined, "w-full " | "w-full w-auto col-span-1", import("tailwind-variants/dist/config").TVConfig<unknown, unknown>, unknown, undefined, import("@gluestack-ui/nativewind-utils/types").TVReturnType<unknown, undefined, "w-full " | "w-full w-auto col-span-1", import("tailwind-variants/dist/config").TVConfig<unknown, unknown>, unknown, unknown, undefined>>;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { tva } from '@gluestack-ui/nativewind-utils/tva';
|
|
2
|
+
import { isWeb } from '@gluestack-ui/nativewind-utils/IsWeb';
|
|
3
|
+
const gridBaseStyle = isWeb ? 'grid grid-cols-12' : 'box-border flex-row flex-wrap justify-start';
|
|
4
|
+
const gridItemBaseStyle = isWeb ? 'w-auto col-span-1' : '';
|
|
5
|
+
export const gridStyle = tva({
|
|
6
|
+
base: `w-full ${gridBaseStyle}`,
|
|
7
|
+
});
|
|
8
|
+
export const gridItemStyle = tva({
|
|
9
|
+
base: `w-full ${gridItemBaseStyle}`,
|
|
10
|
+
});
|
|
11
|
+
//# sourceMappingURL=styles.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"styles.js","sourceRoot":"","sources":["../../../../src/components/ui/grid/styles.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,oCAAoC,CAAC;AACzD,OAAO,EAAE,KAAK,EAAE,MAAM,sCAAsC,CAAC;AAE7D,MAAM,aAAa,GAAG,KAAK,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,6CAA6C,CAAC;AAClG,MAAM,iBAAiB,GAAG,KAAK,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,EAAE,CAAC;AAE3D,MAAM,CAAC,MAAM,SAAS,GAAG,GAAG,CAAC;IACzB,IAAI,EAAE,UAAU,aAAa,EAAE;CAClC,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,aAAa,GAAG,GAAG,CAAC;IAC7B,IAAI,EAAE,UAAU,iBAAiB,EAAE;CACtC,CAAC,CAAC"}
|