From e8e49490a586564dd9261d07ea38fa07694260ed Mon Sep 17 00:00:00 2001
From: Viraj-10
Date: Wed, 18 Oct 2023 12:55:16 +0530
Subject: [PATCH 1/9] fix: cleaning unwanted examples
---
example/expo-project/.gitignore | 17 -
example/expo-project/App.tsx | 73 --
example/expo-project/app.json | 28 -
example/expo-project/babel.config.js | 28 -
example/expo-project/gluestack-ui.config.ts | 734 --------------------
example/expo-project/index.js | 8 -
example/expo-project/metro.config.js | 22 -
example/expo-project/package.json | 23 -
example/expo-project/tsconfig.json | 32 -
example/next-project/.gitignore | 35 -
example/next-project/README.md | 38 -
example/next-project/next.config.js | 9 -
example/next-project/package.json | 64 --
example/next-project/pages/_app.tsx | 13 -
example/next-project/pages/_document.tsx | 26 -
example/next-project/pages/api/hello.ts | 13 -
example/next-project/pages/index.tsx | 483 -------------
example/next-project/postcss.config.js | 6 -
example/next-project/public/favicon.ico | Bin 25931 -> 0 bytes
example/next-project/public/next.svg | 1 -
example/next-project/public/vercel.svg | 1 -
example/next-project/styles/globals.css | 3 -
example/next-project/tailwind.config.js | 18 -
example/next-project/tsconfig.json | 23 -
example/next-rsc/next-env.d.ts | 5 -
25 files changed, 1703 deletions(-)
delete mode 100644 example/expo-project/.gitignore
delete mode 100644 example/expo-project/App.tsx
delete mode 100644 example/expo-project/app.json
delete mode 100644 example/expo-project/babel.config.js
delete mode 100644 example/expo-project/gluestack-ui.config.ts
delete mode 100644 example/expo-project/index.js
delete mode 100644 example/expo-project/metro.config.js
delete mode 100644 example/expo-project/package.json
delete mode 100644 example/expo-project/tsconfig.json
delete mode 100644 example/next-project/.gitignore
delete mode 100644 example/next-project/README.md
delete mode 100644 example/next-project/next.config.js
delete mode 100644 example/next-project/package.json
delete mode 100644 example/next-project/pages/_app.tsx
delete mode 100644 example/next-project/pages/_document.tsx
delete mode 100644 example/next-project/pages/api/hello.ts
delete mode 100644 example/next-project/pages/index.tsx
delete mode 100644 example/next-project/postcss.config.js
delete mode 100644 example/next-project/public/favicon.ico
delete mode 100644 example/next-project/public/next.svg
delete mode 100644 example/next-project/public/vercel.svg
delete mode 100644 example/next-project/styles/globals.css
delete mode 100644 example/next-project/tailwind.config.js
delete mode 100644 example/next-project/tsconfig.json
delete mode 100644 example/next-rsc/next-env.d.ts
diff --git a/example/expo-project/.gitignore b/example/expo-project/.gitignore
deleted file mode 100644
index 772ef297e3..0000000000
--- a/example/expo-project/.gitignore
+++ /dev/null
@@ -1,17 +0,0 @@
-node_modules/
-.expo/
-dist/
-npm-debug.*
-*.jks
-*.p8
-*.p12
-*.key
-*.mobileprovision
-*.orig.*
-web-build/
-
-# macOS
-.DS_Store
-
-# Temporary files created by Metro to check the health of the file watcher
-.metro-health-check*
diff --git a/example/expo-project/App.tsx b/example/expo-project/App.tsx
deleted file mode 100644
index 3c6733f813..0000000000
--- a/example/expo-project/App.tsx
+++ /dev/null
@@ -1,73 +0,0 @@
-import React from 'react';
-import { config } from './gluestack-ui.config';
-import { StyledProvider } from '@gluestack-style/react';
-import { createProvider } from '@gluestack-ui/provider';
-import {
- Box,
- Center,
- Button,
- ButtonText,
- Menu,
- MenuItem,
- MenuItemLabel,
-} from 'ui-components';
-
-const TempProvider = createProvider({ StyledProvider }) as any;
-TempProvider.displayName = 'Provider';
-
-export const Provider = ({ children }: any) => {
- return (
-
-
- {children}
-
-
- );
-};
-
-const App = () => {
- const [isOpen, setIsOpen] = React.useState(false);
- const handleClose = () => {
- setIsOpen(false);
- };
- const handleOpen = () => {
- setIsOpen(true);
- };
- return (
-
-
-
- );
-};
-
-export default App;
diff --git a/example/expo-project/app.json b/example/expo-project/app.json
deleted file mode 100644
index cc52acf269..0000000000
--- a/example/expo-project/app.json
+++ /dev/null
@@ -1,28 +0,0 @@
-{
- "expo": {
- "name": "expo-project",
- "slug": "expo-project",
- "version": "1.0.0",
- "orientation": "portrait",
- "icon": "./assets/icon.png",
- "userInterfaceStyle": "light",
- "splash": {
- "image": "./assets/splash.png",
- "resizeMode": "contain",
- "backgroundColor": "#ffffff"
- },
- "assetBundlePatterns": ["**/*"],
- "ios": {
- "supportsTablet": true
- },
- "android": {
- "adaptiveIcon": {
- "foregroundImage": "./assets/adaptive-icon.png",
- "backgroundColor": "#ffffff"
- }
- },
- "web": {
- "favicon": "./assets/favicon.png"
- }
- }
-}
diff --git a/example/expo-project/babel.config.js b/example/expo-project/babel.config.js
deleted file mode 100644
index d3e4b3adbf..0000000000
--- a/example/expo-project/babel.config.js
+++ /dev/null
@@ -1,28 +0,0 @@
-const path = require('path');
-module.exports = function (api) {
- api.cache(true);
- return {
- presets: ['babel-preset-expo'],
- plugins: [
- process.env.NODE_ENV !== 'production'
- ? [
- 'module-resolver',
- {
- alias: getAliases(),
- },
- ]
- : [
- 'babel-plugin-react-docgen-typescript',
- {
- exclude: 'node_modules',
- },
- ],
- ],
- };
-};
-function getAliases() {
- return {
- // For development, we want to alias the library to the source
- '@gluestack-ui/themed': path.join(__dirname, '../../packages/themed/src'),
- };
-}
diff --git a/example/expo-project/gluestack-ui.config.ts b/example/expo-project/gluestack-ui.config.ts
deleted file mode 100644
index f29d460a88..0000000000
--- a/example/expo-project/gluestack-ui.config.ts
+++ /dev/null
@@ -1,734 +0,0 @@
-export const config = {
- componentPath: '/components',
- theme: {
- aliases: {
- bg: 'backgroundColor',
- bgColor: 'backgroundColor',
- h: 'height',
- w: 'width',
- p: 'padding',
- px: 'paddingHorizontal',
- py: 'paddingVertical',
- pt: 'paddingTop',
- pb: 'paddingBottom',
- pr: 'paddingRight',
- pl: 'paddingLeft',
- m: 'margin',
- mx: 'marginHorizontal',
- my: 'marginVertical',
- mt: 'marginTop',
- mb: 'marginBottom',
- mr: 'marginRight',
- ml: 'marginLeft',
- rounded: 'borderRadius',
- } as const,
- tokens: {
- colors: {
- rose50: '#fff1f2',
- rose100: '#ffe4e6',
- rose200: '#fecdd3',
- rose300: '#fda4af',
- rose400: '#fb7185',
- rose500: '#f43f5e',
- rose600: '#e11d48',
- rose700: '#be123c',
- rose800: '#9f1239',
- rose900: '#881337',
- pink50: '#fdf2f8',
- pink100: '#fce7f3',
- pink200: '#fbcfe8',
- pink300: '#f9a8d4',
- pink400: '#f472b6',
- pink500: '#ec4899',
- pink600: '#db2777',
- pink700: '#be185d',
- pink800: '#9d174d',
- pink900: '#831843',
- fuchsia50: '#fdf4ff',
- fuchsia100: '#fae8ff',
- fuchsia200: '#f5d0fe',
- fuchsia300: '#f0abfc',
- fuchsia400: '#e879f9',
- fuchsia500: '#d946ef',
- fuchsia600: '#c026d3',
- fuchsia700: '#a21caf',
- fuchsia800: '#86198f',
- fuchsia900: '#701a75',
- purple50: '#faf5ff',
- purple100: '#f3e8ff',
- purple200: '#e9d5ff',
- purple300: '#d8b4fe',
- purple400: '#c084fc',
- purple500: '#a855f7',
- purple600: '#9333ea',
- purple700: '#7e22ce',
- purple800: '#6b21a8',
- purple900: '#581c87',
- violet50: '#f5f3ff',
- violet100: '#ede9fe',
- violet200: '#ddd6fe',
- violet300: '#c4b5fd',
- violet400: '#a78bfa',
- violet500: '#8b5cf6',
- violet600: '#7c3aed',
- violet700: '#6d28d9',
- violet800: '#5b21b6',
- violet900: '#4c1d95',
- indigo50: '#eef2ff',
- indigo100: '#e0e7ff',
- indigo200: '#c7d2fe',
- indigo300: '#a5b4fc',
- indigo400: '#818cf8',
- indigo500: '#6366f1',
- indigo600: '#4f46e5',
- indigo700: '#4338ca',
- indigo800: '#3730a3',
- indigo900: '#312e81',
- blue50: '#eff6ff',
- blue100: '#dbeafe',
- blue200: '#bfdbfe',
- blue300: '#93c5fd',
- blue400: '#60a5fa',
- blue500: '#3b82f6',
- blue600: '#2563eb',
- blue700: '#1d4ed8',
- blue800: '#1e40af',
- blue900: '#1e3a8a',
- lightBlue50: '#f0f9ff',
- lightBlue100: '#e0f2fe',
- lightBlue200: '#bae6fd',
- lightBlue300: '#7dd3fc',
- lightBlue400: '#38bdf8',
- lightBlue500: '#0ea5e9',
- lightBlue600: '#0284c7',
- lightBlue700: '#0369a1',
- lightBlue800: '#075985',
- lightBlue900: '#0c4a6e',
- darkBlue50: '#dbf4ff',
- darkBlue100: '#addbff',
- darkBlue200: '#7cc2ff',
- darkBlue300: '#4aa9ff',
- darkBlue400: '#1a91ff',
- darkBlue500: '#0077e6',
- darkBlue600: '#005db4',
- darkBlue700: '#004282',
- darkBlue800: '#002851',
- darkBlue900: '#000e21',
- cyan50: '#ecfeff',
- cyan100: '#cffafe',
- cyan200: '#a5f3fc',
- cyan300: '#67e8f9',
- cyan400: '#22d3ee',
- cyan500: '#06b6d4',
- cyan600: '#0891b2',
- cyan700: '#0e7490',
- cyan800: '#155e75',
- cyan900: '#164e63',
- teal50: '#f0fdfa',
- teal100: '#ccfbf1',
- teal200: '#99f6e4',
- teal300: '#5eead4',
- teal400: '#2dd4bf',
- teal500: '#14b8a6',
- teal600: '#0d9488',
- teal700: '#0f766e',
- teal800: '#115e59',
- teal900: '#134e4a',
- emerald50: '#ecfdf5',
- emerald100: '#d1fae5',
- emerald200: '#a7f3d0',
- emerald300: '#6ee7b7',
- emerald400: '#34d399',
- emerald500: '#10b981',
- emerald600: '#059669',
- emerald700: '#047857',
- emerald800: '#065f46',
- emerald900: '#064e3b',
- green50: '#f0fdf4',
- green100: '#dcfce7',
- green200: '#bbf7d0',
- green300: '#86efac',
- green400: '#4ade80',
- green500: '#22c55e',
- green600: '#16a34a',
- green700: '#15803d',
- green800: '#166534',
- green900: '#14532d',
- lime50: '#f7fee7',
- lime100: '#ecfccb',
- lime200: '#d9f99d',
- lime300: '#bef264',
- lime400: '#a3e635',
- lime500: '#84cc16',
- lime600: '#65a30d',
- lime700: '#4d7c0f',
- lime800: '#3f6212',
- lime900: '#365314',
- yellow50: '#fefce8',
- yellow100: '#fef9c3',
- yellow200: '#fef08a',
- yellow300: '#fde047',
- yellow400: '#facc15',
- yellow500: '#eab308',
- yellow600: '#ca8a04',
- yellow700: '#a16207',
- yellow800: '#854d0e',
- yellow900: '#713f12',
- amber50: '#fffbeb',
- amber100: '#fef3c7',
- amber200: '#fde68a',
- amber300: '#fcd34d',
- amber400: '#fbbf24',
- amber500: '#f59e0b',
- amber600: '#d97706',
- amber700: '#b45309',
- amber800: '#92400e',
- amber900: '#78350f',
- orange50: '#fff7ed',
- orange100: '#ffedd5',
- orange200: '#fed7aa',
- orange300: '#fdba74',
- orange400: '#fb923c',
- orange500: '#f97316',
- orange600: '#ea580c',
- orange700: '#c2410c',
- orange800: '#9a3412',
- orange900: '#7c2d12',
- red50: '#fef2f2',
- red100: '#fee2e2',
- red200: '#fecaca',
- red300: '#fca5a5',
- red400: '#f87171',
- red500: '#ef4444',
- red600: '#dc2626',
- red700: '#b91c1c',
- red800: '#991b1b',
- red900: '#7f1d1d',
- warmGray50: '#fafaf9',
- warmGray100: '#f5f5f4',
- warmGray200: '#e7e5e4',
- warmGray300: '#d6d3d1',
- warmGray400: '#a8a29e',
- warmGray500: '#78716c',
- warmGray600: '#57534e',
- warmGray700: '#44403c',
- warmGray800: '#292524',
- warmGray900: '#1c1917',
- trueGray50: '#fafafa',
- trueGray100: '#f5f5f5',
- trueGray200: '#e5e5e5',
- trueGray300: '#d4d4d4',
- trueGray400: '#a3a3a3',
- trueGray500: '#737373',
- trueGray600: '#525252',
- trueGray700: '#404040',
- trueGray800: '#262626',
- trueGray900: '#171717',
- gray50: '#fafafa',
- gray100: '#f4f4f5',
- gray200: '#e4e4e7',
- gray300: '#d4d4d8',
- gray400: '#a1a1aa',
- gray500: '#71717a',
- gray600: '#52525b',
- gray700: '#3f3f46',
- gray800: '#27272a',
- gray900: '#18181b',
- coolGray50: '#f9fafb',
- coolGray100: '#f3f4f6',
- coolGray200: '#e5e7eb',
- coolGray300: '#d1d5db',
- coolGray400: '#9ca3af',
- coolGray500: '#6b7280',
- coolGray600: '#4b5563',
- coolGray700: '#374151',
- coolGray800: '#1f2937',
- coolGray900: '#111827',
- blueGray50: '#f8fafc',
- blueGray100: '#f1f5f9',
- blueGray200: '#e2e8f0',
- blueGray300: '#cbd5e1',
- blueGray400: '#94a3b8',
- blueGray500: '#64748b',
- blueGray600: '#475569',
- blueGray700: '#334155',
- blueGray800: '#1e293b',
- blueGray900: '#0f172a',
- dark50: '#18181b',
- dark100: '#27272a',
- dark200: '#3f3f46',
- dark300: '#52525b',
- dark400: '#71717a',
- dark500: '#a1a1aa',
- dark600: '#d4d4d8',
- dark700: '#e4e4e7',
- dark800: '#f4f4f5',
- dark900: '#fafafa',
- tertiary50: '#ecfdf5',
- tertiary100: '#d1fae5',
- tertiary200: '#a7f3d0',
- tertiary300: '#6ee7b7',
- tertiary400: '#34d399',
- tertiary500: '#10b981',
- tertiary600: '#059669',
- tertiary700: '#047857',
- tertiary800: '#065f46',
- tertiary900: '#064e3b',
- danger50: '#fff1f2',
- danger100: '#ffe4e6',
- danger200: '#fecdd3',
- danger300: '#fda4af',
- danger400: '#fb7185',
- danger500: '#f43f5e',
- danger600: '#e11d48',
- danger700: '#be123c',
- danger800: '#9f1239',
- danger900: '#881337',
- error50: '#fef2f2',
- error100: '#fee2e2',
- error200: '#fecaca',
- error300: '#fca5a5',
- error400: '#f87171',
- error500: '#ef4444',
- error600: '#dc2626',
- error700: '#b91c1c',
- error800: '#991b1b',
- error900: '#7f1d1d',
- success50: '#f0fdf4',
- success100: '#dcfce7',
- success200: '#bbf7d0',
- success300: '#86efac',
- success400: '#4ade80',
- success500: '#22c55e',
- success600: '#16a34a',
- success700: '#15803d',
- success800: '#166534',
- success900: '#14532d',
- warning50: '#fff7ed',
- warning100: '#ffedd5',
- warning200: '#fed7aa',
- warning300: '#fdba74',
- warning400: '#fb923c',
- warning500: '#f97316',
- warning600: '#ea580c',
- warning700: '#c2410c',
- warning800: '#9a3412',
- warning900: '#7c2d12',
- muted50: '#fafafa',
- muted100: '#f5f5f5',
- muted200: '#e5e5e5',
- muted300: '#d4d4d4',
- muted400: '#a3a3a3',
- muted500: '#737373',
- muted600: '#525252',
- muted700: '#404040',
- muted800: '#262626',
- muted900: '#171717',
- info50: '#f0f9ff',
- info100: '#e0f2fe',
- info200: '#bae6fd',
- info300: '#7dd3fc',
- info400: '#38bdf8',
- info500: '#0ea5e9',
- info600: '#0284c7',
- info700: '#0369a1',
- info800: '#075985',
- info900: '#0c4a6e',
- light50: '#fafaf9',
- light100: '#f5f5f4',
- light200: '#e7e5e4',
- light300: '#d6d3d1',
- light400: '#a8a29e',
- light500: '#78716c',
- light600: '#57534e',
- light700: '#44403c',
- light800: '#292524',
- light900: '#1c1917',
- primary0: '#E5F1FB',
- primary50: '#CCE9FF',
- primary100: '#ADDBFF',
- primary200: '#7CC2FF',
- primary300: '#4AA9FF',
- primary400: '#1A91FF',
- primary500: '#0077E6',
- primary600: '#005DB4',
- primary700: '#004282',
- primary800: '#002851',
- primary900: '#011838',
- primary950: '#000711',
- secondary0: '#FCFCFC',
- secondary50: '#F5F5F5',
- secondary100: '#E5E5E5',
- secondary200: '#DBDBDB',
- secondary300: '#D4D4D4',
- secondary400: '#A3A3A3',
- secondary500: '#8C8C8C',
- secondary600: '#737373',
- secondary700: '#525252',
- secondary800: '#404040',
- secondary900: '#262626',
- secondary950: '#171717',
- textLight0: '#FCFCFC',
- textLight50: '#F5F5F5',
- textLight100: '#E5E5E5',
- textLight200: '#DBDBDB',
- textLight300: '#D4D4D4',
- textLight400: '#A3A3A3',
- textLight500: '#8C8C8C',
- textLight600: '#737373',
- textLight700: '#525252',
- textLight800: '#404040',
- textLight900: '#262626',
- textLight950: '#171717',
- textDark0: '#FCFCFC',
- textDark50: '#F5F5F5',
- textDark100: '#E5E5E5',
- textDark200: '#DBDBDB',
- textDark300: '#D4D4D4',
- textDark400: '#A3A3A3',
- textDark500: '#8C8C8C',
- textDark600: '#737373',
- textDark700: '#525252',
- textDark800: '#404040',
- textDark900: '#262626',
- textDark950: '#171717',
- borderDark0: '#FCFCFC',
- borderDark50: '#F5F5F5',
- borderDark100: '#E5E5E5',
- borderDark200: '#DBDBDB',
- borderDark300: '#D4D4D4',
- borderDark400: '#A3A3A3',
- borderDark500: '#8C8C8C',
- borderDark600: '#737373',
- borderDark700: '#525252',
- borderDark800: '#404040',
- borderDark900: '#262626',
- borderDark950: '#171717',
- borderLight0: '#FCFCFC',
- borderLight50: '#F5F5F5',
- borderLight100: '#E5E5E5',
- borderLight200: '#DBDBDB',
- borderLight300: '#D4D4D4',
- borderLight400: '#A3A3A3',
- borderLight500: '#8C8C8C',
- borderLight600: '#737373',
- borderLight700: '#525252',
- borderLight800: '#404040',
- borderLight900: '#262626',
- borderLight950: '#171717',
- backgroundDark0: '#FCFCFC',
- backgroundDark50: '#F5F5F5',
- backgroundDark100: '#E5E5E5',
- backgroundDark200: '#DBDBDB',
- backgroundDark300: '#D4D4D4',
- backgroundDark400: '#A3A3A3',
- backgroundDark500: '#8C8C8C',
- backgroundDark600: '#737373',
- backgroundDark700: '#525252',
- backgroundDark800: '#404040',
- backgroundDark900: '#262626',
- backgroundDark950: '#171717',
- backgroundLight0: '#FCFCFC',
- backgroundLight50: '#F5F5F5',
- backgroundLight100: '#E5E5E5',
- backgroundLight200: '#DBDBDB',
- backgroundLight300: '#D4D4D4',
- backgroundLight400: '#A3A3A3',
- backgroundLight500: '#8C8C8C',
- backgroundLight600: '#737373',
- backgroundLight700: '#525252',
- backgroundLight800: '#404040',
- backgroundLight900: '#262626',
- backgroundLight950: '#171717',
- backgroundLightError: '#FEF1F1',
- backgroundDarkError: '#2E2020',
- backgroundLightWarning: '#FFF4EB',
- backgroundDarkWarning: '#2E231B',
- backgroundLightSuccess: '#EDFCF2',
- backgroundDarkSuccess: '#1C2B21',
- backgroundLightInfo: '#EBF8FE',
- backgroundDarkInfo: '#1A282E',
- backgroundLightMuted: '#F6F6F7',
- backgroundDarkMuted: '#252526',
- white: '#FFFFFF',
- black: '#000000',
- },
- space: {
- 'px': '1px',
- '0': 0,
- '0.5': 2,
- '1': 4,
- '1.5': 6,
- '2': 8,
- '2.5': 10,
- '3': 12,
- '3.5': 14,
- '4': 16,
- '4.5': 18,
- '5': 20,
- '6': 24,
- '7': 28,
- '8': 32,
- '9': 36,
- '10': 40,
- '11': 44,
- '12': 48,
- '16': 64,
- '20': 80,
- '24': 96,
- '32': 128,
- '40': 160,
- '48': 192,
- '56': 224,
- '64': 256,
- '72': 288,
- '80': 320,
- '96': 384,
- '1/2': '50%',
- '1/3': '33.333%',
- '2/3': '66.666%',
- '1/4': '25%',
- '2/4': '50%',
- '3/4': '75%',
- '1/5': '20%',
- '2/5': '40%',
- '3/5': '60%',
- '4/5': '80%',
- '1/6': '16.666%',
- '2/6': '33.333%',
- '3/6': '50%',
- '4/6': '66.666%',
- '5/6': '83.333%',
- 'full': '100%',
- },
- borderWidths: {
- '0': 0,
- '1': 1,
- '2': 2,
- '4': 4,
- '8': 8,
- },
- radii: {
- 'none': 0,
- 'xs': 2,
- 'sm': 4,
- 'md': 6,
- 'lg': 8,
- 'xl': 12,
- '2xl': 16,
- '3xl': 24,
- 'full': 9999,
- },
- breakpoints: {
- base: 0,
- sm: 480,
- md: 768,
- lg: 992,
- xl: 1280,
- },
- mediaQueries: {
- base: '@media screen and (min-width: 0)',
- xs: '@media screen and (min-width: 400px)',
- sm: '@media screen and (min-width: 480px)',
- md: '@media screen and (min-width: 768px)',
- lg: '@media screen and (min-width: 992px)',
- xl: '@media screen and (min-width: 1280px)',
- },
- letterSpacings: {
- 'xs': -0.4,
- 'sm': -0.2,
- 'md': 0,
- 'lg': 0.2,
- 'xl': 0.4,
- '2xl': 1.6,
- },
- lineHeights: {
- '2xs': 16,
- 'xs': 18,
- 'sm': 20,
- 'md': 22,
- 'lg': 24,
- 'xl': 28,
- '2xl': 32,
- '3xl': 40,
- '4xl': 48,
- '5xl': 56,
- '6xl': 72,
- '7xl': 90,
- },
- fontWeights: {
- hairline: '100',
- thin: '200',
- light: '300',
- normal: '400',
- medium: '500',
- semibold: '600',
- bold: '700',
- extrabold: '800',
- black: '900',
- extraBlack: '950',
- },
- fonts: {
- heading: undefined,
- body: undefined,
- mono: undefined,
- },
- fontSizes: {
- '2xs': 10,
- 'xs': 12,
- 'sm': 14,
- 'md': 16,
- 'lg': 18,
- 'xl': 20,
- '2xl': 24,
- '3xl': 30,
- '4xl': 36,
- '5xl': 48,
- '6xl': 60,
- '7xl': 72,
- '8xl': 96,
- '9xl': 128,
- },
- opacity: {
- 0: 0,
- 5: 0.05,
- 10: 0.1,
- 20: 0.2,
- 25: 0.25,
- 30: 0.3,
- 40: 0.4,
- 50: 0.5,
- 60: 0.6,
- 70: 0.7,
- 75: 0.75,
- 80: 0.8,
- 90: 0.9,
- 95: 0.95,
- 100: 1,
- },
- } as const,
- globalStyle: {
- variants: {
- hardShadow: {
- '1': {
- shadowColor: '$backgroundLight900',
- shadowOffset: {
- width: -2,
- height: 2,
- },
- shadowRadius: 8,
- shadowOpacity: 0.5,
- elevation: 10,
- },
- '2': {
- shadowColor: '$backgroundLight900',
- shadowOffset: {
- width: 0,
- height: 3,
- },
- shadowRadius: 8,
- shadowOpacity: 0.5,
- elevation: 10,
- },
- '3': {
- shadowColor: '$backgroundLight900',
- shadowOffset: {
- width: 2,
- height: 2,
- },
- shadowRadius: 8,
- shadowOpacity: 0.5,
- elevation: 10,
- },
- '4': {
- shadowColor: '$backgroundLight900',
- shadowOffset: {
- width: 0,
- height: -3,
- },
- shadowRadius: 8,
- shadowOpacity: 0.5,
- elevation: 10,
- },
- // this 5th version is only for toast shadow
- // temporary
- '5': {
- shadowColor: '$backgroundLight900',
- shadowOffset: {
- width: 0,
- height: 3,
- },
- shadowRadius: 8,
- shadowOpacity: 0.2,
- elevation: 10,
- },
- },
- softShadow: {
- '1': {
- shadowColor: '$backgroundLight900',
- shadowOffset: {
- width: 0,
- height: 0,
- },
- shadowRadius: 10,
- shadowOpacity: 0.1,
- _android: {
- shadowColor: '$backgroundLight500',
- elevation: 5,
- shadowOpacity: 0.05,
- },
- },
- '2': {
- shadowColor: '$backgroundLight900',
- shadowOffset: {
- width: 0,
- height: 0,
- },
- shadowRadius: 20,
- elevation: 3,
- shadowOpacity: 0.1,
- _android: {
- shadowColor: '$backgroundLight500',
- elevation: 10,
- shadowOpacity: 0.1,
- },
- },
- '3': {
- shadowColor: '$backgroundLight900',
- shadowOffset: {
- width: 0,
- height: 0,
- },
- shadowRadius: 30,
- shadowOpacity: 0.1,
- elevation: 4,
- _android: {
- shadowColor: '$backgroundLight500',
- elevation: 15,
- shadowOpacity: 0.15,
- },
- },
- '4': {
- shadowColor: '$backgroundLight900',
- shadowOffset: {
- width: 0,
- height: 0,
- },
- shadowRadius: 40,
- shadowOpacity: 0.1,
- elevation: 10,
- _android: {
- shadowColor: '$backgroundLight500',
- elevation: 20,
- shadowOpacity: 0.2,
- },
- },
- },
- },
- },
- },
-} as const;
-type Config = typeof config.theme;
-declare module '@gluestack-style/react' {
- interface ICustomConfig extends Config {}
-}
diff --git a/example/expo-project/index.js b/example/expo-project/index.js
deleted file mode 100644
index 1d6e981ef6..0000000000
--- a/example/expo-project/index.js
+++ /dev/null
@@ -1,8 +0,0 @@
-import { registerRootComponent } from 'expo';
-
-import App from './App';
-
-// registerRootComponent calls AppRegistry.registerComponent('main', () => App);
-// It also ensures that whether you load the app in Expo Go or in a native build,
-// the environment is set up appropriately
-registerRootComponent(App);
diff --git a/example/expo-project/metro.config.js b/example/expo-project/metro.config.js
deleted file mode 100644
index e77cfd991e..0000000000
--- a/example/expo-project/metro.config.js
+++ /dev/null
@@ -1,22 +0,0 @@
-// Learn more https://docs.expo.dev/guides/monorepos
-const { getDefaultConfig } = require('expo/metro-config');
-const path = require('path');
-
-// Find the project and workspace directories
-const projectRoot = __dirname;
-// This can be replaced with `find-yarn-workspace-root`
-const workspaceRoot = path.resolve(projectRoot, '../..');
-
-const config = getDefaultConfig(projectRoot);
-
-// 1. Watch all files within the monorepo
-config.watchFolders = [workspaceRoot];
-// 2. Let Metro know where to resolve packages and in what order
-config.resolver.nodeModulesPaths = [
- path.resolve(projectRoot, 'node_modules'),
- path.resolve(workspaceRoot, 'node_modules'),
-];
-// 3. Force Metro to resolve (sub)dependencies only from the `nodeModulesPaths`
-config.resolver.disableHierarchicalLookup = true;
-
-module.exports = config;
diff --git a/example/expo-project/package.json b/example/expo-project/package.json
deleted file mode 100644
index 57e745eeb1..0000000000
--- a/example/expo-project/package.json
+++ /dev/null
@@ -1,23 +0,0 @@
-{
- "name": "expo-project",
- "version": "1.0.0",
- "main": "index.js",
- "scripts": {
- "start": "expo start",
- "android": "expo start --android",
- "ios": "expo start --ios",
- "web": "expo start --web"
- },
- "dependencies": {
- "expo": "~48.0.6",
- "expo-status-bar": "~1.4.4",
- "react": "18.2.0",
- "react-native": "^0.71.7"
- },
- "devDependencies": {
- "@babel/core": "^7.20.0",
- "@types/react": "~18.0.14",
- "typescript": "4.9.4"
- },
- "private": true
-}
diff --git a/example/expo-project/tsconfig.json b/example/expo-project/tsconfig.json
deleted file mode 100644
index 1b5033b12a..0000000000
--- a/example/expo-project/tsconfig.json
+++ /dev/null
@@ -1,32 +0,0 @@
-{
- "extends": "expo/tsconfig.base",
- "compilerOptions": {
- "baseUrl": ".",
- "paths": {
- "@gluestack-ui/themed": ["../../packages/themed/src"]
- },
- "emitDeclarationOnly": true,
- "noEmit": false,
- "declaration": true,
- "allowUnreachableCode": false,
- "allowUnusedLabels": true,
- "esModuleInterop": true,
- "forceConsistentCasingInFileNames": true,
- "jsx": "react",
- "lib": ["esnext", "dom"],
- "module": "esnext",
- "moduleResolution": "node",
- "noFallthroughCasesInSwitch": true,
- "noImplicitReturns": true,
- "noImplicitUseStrict": false,
- "noStrictGenericChecks": false,
- "noUnusedLocals": false,
- "noUnusedParameters": true,
- "resolveJsonModule": true,
- "skipLibCheck": true,
- "strict": true,
- "target": "esnext"
- },
- "exclude": ["lib", "node_modules", "storybookDocsComponents"],
- "include": ["src"]
-}
diff --git a/example/next-project/.gitignore b/example/next-project/.gitignore
deleted file mode 100644
index 8f322f0d8f..0000000000
--- a/example/next-project/.gitignore
+++ /dev/null
@@ -1,35 +0,0 @@
-# See https://help.github.com/articles/ignoring-files/ for more about ignoring files.
-
-# dependencies
-/node_modules
-/.pnp
-.pnp.js
-
-# testing
-/coverage
-
-# next.js
-/.next/
-/out/
-
-# production
-/build
-
-# misc
-.DS_Store
-*.pem
-
-# debug
-npm-debug.log*
-yarn-debug.log*
-yarn-error.log*
-
-# local env files
-.env*.local
-
-# vercel
-.vercel
-
-# typescript
-*.tsbuildinfo
-next-env.d.ts
diff --git a/example/next-project/README.md b/example/next-project/README.md
deleted file mode 100644
index 965a1228cf..0000000000
--- a/example/next-project/README.md
+++ /dev/null
@@ -1,38 +0,0 @@
-This is a [Next.js](https://nextjs.org/) project bootstrapped with [`create-next-app`](https://github.com/vercel/next.js/tree/canary/packages/create-next-app).
-
-## Getting Started
-
-First, run the development server:
-
-```bash
-npm run dev
-# or
-yarn dev
-# or
-pnpm dev
-```
-
-Open [http://localhost:3000](http://localhost:3000) with your browser to see the result.
-
-You can start editing the page by modifying `pages/index.tsx`. The page auto-updates as you edit the file.
-
-[API routes](https://nextjs.org/docs/api-routes/introduction) can be accessed on [http://localhost:3000/api/hello](http://localhost:3000/api/hello). This endpoint can be edited in `pages/api/hello.ts`.
-
-The `pages/api` directory is mapped to `/api/*`. Files in this directory are treated as [API routes](https://nextjs.org/docs/api-routes/introduction) instead of React pages.
-
-This project uses [`next/font`](https://nextjs.org/docs/basic-features/font-optimization) to automatically optimize and load Inter, a custom Google Font.
-
-## Learn More
-
-To learn more about Next.js, take a look at the following resources:
-
-- [Next.js Documentation](https://nextjs.org/docs) - learn about Next.js features and API.
-- [Learn Next.js](https://nextjs.org/learn) - an interactive Next.js tutorial.
-
-You can check out [the Next.js GitHub repository](https://github.com/vercel/next.js/) - your feedback and contributions are welcome!
-
-## Deploy on Vercel
-
-The easiest way to deploy your Next.js app is to use the [Vercel Platform](https://vercel.com/new?utm_medium=default-template&filter=next.js&utm_source=create-next-app&utm_campaign=create-next-app-readme) from the creators of Next.js.
-
-Check out our [Next.js deployment documentation](https://nextjs.org/docs/deployment) for more details.
diff --git a/example/next-project/next.config.js b/example/next-project/next.config.js
deleted file mode 100644
index f6940d5b1c..0000000000
--- a/example/next-project/next.config.js
+++ /dev/null
@@ -1,9 +0,0 @@
-/** @type {import('next').NextConfig} */
-const { withGluestackUI } = require('@gluestack/ui-next-adapter');
-
-const nextConfig = {
- reactStrictMode: true,
- transpilePackages: ['@expo/html-elements'],
-};
-
-module.exports = withGluestackUI(nextConfig);
diff --git a/example/next-project/package.json b/example/next-project/package.json
deleted file mode 100644
index c7cae7d853..0000000000
--- a/example/next-project/package.json
+++ /dev/null
@@ -1,64 +0,0 @@
-{
- "name": "next-cli-test",
- "version": "0.1.0",
- "private": true,
- "scripts": {
- "dev": "next dev",
- "build": "next build",
- "start": "next start",
- "lint": "next lint"
- },
- "dependencies": {
- "@types/node": "18.15.11",
- "@types/react": "18.0.37",
- "@types/react-dom": "18.0.11",
- "autoprefixer": "10.4.14",
- "eslint": "8.38.0",
- "eslint-config-next": "13.3.0",
- "next": "13.3.0",
- "postcss": "8.4.22",
- "react": "18.2.0",
- "react-dom": "18.2.0",
- "tailwindcss": "3.3.1",
- "typescript": "5.0.4",
- "@gluestack-ui/provider": "latest",
- "@gluestack-style/animation-plugin": "latest",
- "@gluestack/ui-next-adapter": "latest",
- "@gluestack-ui/actionsheet": "latest",
- "@legendapp/motion": "latest",
- "@gluestack-ui/icon": "latest",
- "react-native-svg": "latest",
- "@gluestack-ui/alert": "latest",
- "@gluestack-ui/alert-dialog": "latest",
- "@gluestack-ui/avatar": "latest",
- "@gluestack-ui/checkbox": "latest",
- "@gluestack-ui/divider": "latest",
- "@gluestack-ui/fab": "latest",
- "@gluestack-ui/image": "latest",
- "@gluestack-ui/form-control": "latest",
- "@gluestack-ui/hstack": "latest",
- "@expo/html-elements": "latest",
- "@gluestack-ui/input": "latest",
- "@gluestack-ui/linear-gradient": "latest",
- "@gluestack-ui/link": "latest",
- "@gluestack-ui/menu": "latest",
- "@gluestack-ui/modal": "latest",
- "@gluestack-ui/popover": "latest",
- "@gluestack-ui/pressable": "latest",
- "@gluestack-ui/progress": "latest",
- "@gluestack-ui/radio": "latest",
- "@gluestack-ui/select": "latest",
- "@gluestack-ui/slider": "latest",
- "@gluestack-ui/spinner": "latest",
- "@gluestack-ui/switch": "latest",
- "@gluestack-ui/tabs": "latest",
- "@gluestack-ui/textarea": "latest",
- "@gluestack-ui/toast": "latest",
- "@gluestack-ui/tooltip": "latest",
- "@gluestack-ui/vstack": "latest"
- },
- "devDependencies": {
- "react-native-web": "^0.18.12",
- "react-native": "^0.70.7"
- }
-}
diff --git a/example/next-project/pages/_app.tsx b/example/next-project/pages/_app.tsx
deleted file mode 100644
index 5f99ca3e79..0000000000
--- a/example/next-project/pages/_app.tsx
+++ /dev/null
@@ -1,13 +0,0 @@
-import React from 'react';
-import '@/styles/globals.css';
-import type { AppProps } from 'next/app';
-import { GluestackUIProvider } from '../../storybook/src/ui-components';
-import { config } from '../../storybook/src/gluestack-ui.config';
-
-export default function App({ Component, pageProps }: AppProps) {
- return (
-
-
-
- );
-}
diff --git a/example/next-project/pages/_document.tsx b/example/next-project/pages/_document.tsx
deleted file mode 100644
index b934e36b36..0000000000
--- a/example/next-project/pages/_document.tsx
+++ /dev/null
@@ -1,26 +0,0 @@
-import * as React from 'react';
-import { Html, Head, Main, NextScript } from 'next/document';
-import { AppRegistry } from 'react-native-web';
-import { flush } from '@gluestack-style/react';
-
-function Document() {
- return (
-
-
-
-
-
-
-
- );
-}
-
-Document.getInitialProps = async ({ renderPage }: any) => {
- AppRegistry.registerComponent('Main', () => Main);
- const { getStyleElement } = AppRegistry.getApplication('Main');
- const page = await renderPage();
- const styles = [getStyleElement(), ...flush()];
- return { ...page, styles: React.Children.toArray(styles) };
-};
-
-export default Document;
diff --git a/example/next-project/pages/api/hello.ts b/example/next-project/pages/api/hello.ts
deleted file mode 100644
index 89e4d6bd99..0000000000
--- a/example/next-project/pages/api/hello.ts
+++ /dev/null
@@ -1,13 +0,0 @@
-// Next.js API route support: https://nextjs.org/docs/api-routes/introduction
-import type { NextApiRequest, NextApiResponse } from 'next';
-
-type Data = {
- name: string;
-};
-
-export default function handler(
- req: NextApiRequest,
- res: NextApiResponse
-) {
- res.status(200).json({ name: 'John Doe' });
-}
diff --git a/example/next-project/pages/index.tsx b/example/next-project/pages/index.tsx
deleted file mode 100644
index ea6908ba8e..0000000000
--- a/example/next-project/pages/index.tsx
+++ /dev/null
@@ -1,483 +0,0 @@
-import {
- Heading,
- Box,
- Center,
- HStack,
- VStack,
- Divider,
- Alert,
- AlertIcon,
- AlertText,
- Icon,
- InfoIcon,
- Progress,
- Spinner,
- Text,
- Toast,
- ToastTitle,
- useToast,
- Pressable,
- Badge,
- Button,
- ButtonText,
- Checkbox,
- CheckboxIndicator,
- CheckboxIcon,
- CheckboxLabel,
- CheckIcon,
- FormControl,
- FormControlLabel,
- FormControlLabelText,
- FormControlHelper,
- FormControlHelperText,
- FormControlError,
- FormControlErrorIcon,
- FormControlErrorText,
- AlertCircleIcon,
- Input,
- Link,
- Radio,
- CircleIcon,
- Select,
- ChevronDownIcon,
- Slider,
- Switch,
- Textarea,
- AlertDialog,
- AlertDialogBackdrop,
- AlertDialogContent,
- AlertDialogHeader,
- AlertDialogCloseButton,
- AlertDialogFooter,
- AlertDialogBody,
- CloseIcon,
- Modal,
- Popover,
- Tooltip,
- Actionsheet,
- ActionsheetBackdrop,
- ActionsheetContent,
- ActionsheetDragIndicator,
- ActionsheetDragIndicatorWrapper,
- ActionsheetItem,
- ActionsheetItemText,
- Avatar,
- AvatarBadge,
- AvatarFallbackText,
- AvatarImage,
- AddIcon,
- Image,
- Fab,
- InputField,
- RadioGroup,
- RadioIndicator,
- RadioIcon,
- SelectContent,
- SelectBackdrop,
- SelectPortal,
- SelectItem,
- SelectDragIndicatorWrapper,
- SelectDragIndicator,
- SelectInput,
- SelectIcon,
- RadioLabel,
- SelectTrigger,
- TextareaInput,
- SliderTrack,
- SliderFilledTrack,
- SliderThumb,
- ModalBackdrop,
- ModalContent,
- ModalHeader,
- ModalCloseButton,
- ModalBody,
- ModalFooter,
- PopoverBackdrop,
- PopoverContent,
- PopoverHeader,
- PopoverCloseButton,
- PopoverBody,
- TooltipContent,
- PopoverFooter,
- ProgressFilledTrack,
- BadgeText,
- FabLabel,
-} from '../../storybook/src/ui-components';
-import React from 'react';
-
-export default function Home() {
- const [showAlertDialog, setShowAlertDialog] = React.useState(false);
- const [showModal, setShowModal] = React.useState(false);
- const ref = React.useRef(null);
- const [showActionsheet, setShowActionsheet] = React.useState(false);
- const handleClose = () => setShowActionsheet(!showActionsheet);
-
- const ToastExample = () => {
- const toast = useToast();
- return (
- {
- toast.show({
- placement: 'top',
- render: ({ id }) => {
- return (
-
-
- Hello World Toast {id}
-
-
- );
- },
- });
- }}
- >
- Press Me
-
- );
- };
- return (
- <>
- Heading
-
- Box
-
-
- Center
-
-
- HStack
-
-
- VStack
-
-
-
-
-
-
- Selection successfully moved!
-
-
-
-
-
- NEW FEATURE
-
-
-
-
-
-
- Label
-
-
-
- Password
-
-
-
-
-
-
- Must be atleast 6 characters.
-
-
-
-
-
-
-
- Atleast 6 characters are required.
-
-
-
-
-
-
-
- gluestack
-
-
-
-
-
-
-
-
-
-
-
-
- Veg
-
-
-
-
-
-
-
- Non-veg
-
-
-
-
-
-
-
-
-
-
-
-
-
- {
- setShowAlertDialog(false);
- }}
- >
-
-
-
- Return Policy
-
-
-
-
-
-
- You're almost there! This alert-dialog is the final checkpoint
- before you reach your destination Confirm that you're ready to go,
- and we'll hit the road!
-
-
-
-
-
-
-
-
-
- {
- setShowModal(false);
- }}
- finalFocusRef={ref}
- >
-
-
-
- Confirm your request
-
-
-
-
-
-
- You're almost there! This modal is the final checkpoint before you
- reach your destination Confirm that you're ready to go, and we'll
- hit the road!
-
-
-
-
-
-
-
-
- {
- return (
-
- );
- }}
- >
-
-
-
- Delete Customer
-
-
-
-
-
-
- This will remove all data relating to Alex This action cannot be
- reversed Deleted data can not be recovered
-
-
-
-
-
-
-
-
- {
- return (
-
- );
- }}
- >
-
- Tooltip Content
-
-
-
-
-
-
-
-
-
-
- Delete
-
-
- Share
-
-
- Play
-
-
- Favourite
-
-
- Cancel
-
-
-
-
- AB
-
-
-
-
-
-
-
-
-
-
-
- Fab
-
- >
- );
-}
diff --git a/example/next-project/postcss.config.js b/example/next-project/postcss.config.js
deleted file mode 100644
index 12a703d900..0000000000
--- a/example/next-project/postcss.config.js
+++ /dev/null
@@ -1,6 +0,0 @@
-module.exports = {
- plugins: {
- tailwindcss: {},
- autoprefixer: {},
- },
-};
diff --git a/example/next-project/public/favicon.ico b/example/next-project/public/favicon.ico
deleted file mode 100644
index 718d6fea4835ec2d246af9800eddb7ffb276240c..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001
literal 25931
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
LrJugUA?W`A8`#=m
diff --git a/example/next-project/public/next.svg b/example/next-project/public/next.svg
deleted file mode 100644
index 5174b28c56..0000000000
--- a/example/next-project/public/next.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/example/next-project/public/vercel.svg b/example/next-project/public/vercel.svg
deleted file mode 100644
index d2f8422273..0000000000
--- a/example/next-project/public/vercel.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/example/next-project/styles/globals.css b/example/next-project/styles/globals.css
deleted file mode 100644
index b5c61c9567..0000000000
--- a/example/next-project/styles/globals.css
+++ /dev/null
@@ -1,3 +0,0 @@
-@tailwind base;
-@tailwind components;
-@tailwind utilities;
diff --git a/example/next-project/tailwind.config.js b/example/next-project/tailwind.config.js
deleted file mode 100644
index 0c544fe5e0..0000000000
--- a/example/next-project/tailwind.config.js
+++ /dev/null
@@ -1,18 +0,0 @@
-/** @type {import('tailwindcss').Config} */
-module.exports = {
- content: [
- './pages/**/*.{js,ts,jsx,tsx}',
- './components/**/*.{js,ts,jsx,tsx}',
- './app/**/*.{js,ts,jsx,tsx}',
- ],
- theme: {
- extend: {
- backgroundImage: {
- 'gradient-radial': 'radial-gradient(var(--tw-gradient-stops))',
- 'gradient-conic':
- 'conic-gradient(from 180deg at 50% 50%, var(--tw-gradient-stops))',
- },
- },
- },
- plugins: [],
-};
diff --git a/example/next-project/tsconfig.json b/example/next-project/tsconfig.json
deleted file mode 100644
index 8b8e58111e..0000000000
--- a/example/next-project/tsconfig.json
+++ /dev/null
@@ -1,23 +0,0 @@
-{
- "compilerOptions": {
- "target": "es5",
- "lib": ["dom", "dom.iterable", "esnext"],
- "allowJs": true,
- "skipLibCheck": true,
- "strict": true,
- "forceConsistentCasingInFileNames": true,
- "noEmit": true,
- "esModuleInterop": true,
- "module": "esnext",
- "moduleResolution": "node",
- "resolveJsonModule": true,
- "isolatedModules": true,
- "jsx": "preserve",
- "incremental": true,
- "paths": {
- "@/*": ["./*"]
- }
- },
- "include": ["next-env.d.ts", "**/*.ts", "**/*.tsx"],
- "exclude": ["node_modules"]
-}
diff --git a/example/next-rsc/next-env.d.ts b/example/next-rsc/next-env.d.ts
deleted file mode 100644
index 4f11a03dc6..0000000000
--- a/example/next-rsc/next-env.d.ts
+++ /dev/null
@@ -1,5 +0,0 @@
-///
-///
-
-// NOTE: This file should not be edited
-// see https://nextjs.org/docs/basic-features/typescript for more information.
From 03cc6f334b75bd5494fb9a0c5e1507c8a6915330 Mon Sep 17 00:00:00 2001
From: Viraj-10
Date: Wed, 18 Oct 2023 13:41:19 +0530
Subject: [PATCH 2/9] feat: added expo app
---
example/apps/expo-app/.gitignore | 35 +
example/apps/expo-app/App.tsx | 27 +
example/apps/expo-app/app.json | 28 +
.../apps/expo-app/assets/adaptive-icon.png | Bin 0 -> 17547 bytes
example/apps/expo-app/assets/favicon.png | Bin 0 -> 1466 bytes
example/apps/expo-app/assets/icon.png | Bin 0 -> 22380 bytes
example/apps/expo-app/assets/splash.png | Bin 0 -> 47346 bytes
example/apps/expo-app/babel.config.js | 32 +
example/apps/expo-app/index.js | 8 +
example/apps/expo-app/metro.config.js | 21 +
example/apps/expo-app/package.json | 21 +
example/apps/expo-app/tsconfig.json | 11 +
package.json | 3 +-
yarn.lock | 963 +++++++++++++++++-
14 files changed, 1130 insertions(+), 19 deletions(-)
create mode 100644 example/apps/expo-app/.gitignore
create mode 100644 example/apps/expo-app/App.tsx
create mode 100644 example/apps/expo-app/app.json
create mode 100644 example/apps/expo-app/assets/adaptive-icon.png
create mode 100644 example/apps/expo-app/assets/favicon.png
create mode 100644 example/apps/expo-app/assets/icon.png
create mode 100644 example/apps/expo-app/assets/splash.png
create mode 100644 example/apps/expo-app/babel.config.js
create mode 100644 example/apps/expo-app/index.js
create mode 100644 example/apps/expo-app/metro.config.js
create mode 100644 example/apps/expo-app/package.json
create mode 100644 example/apps/expo-app/tsconfig.json
diff --git a/example/apps/expo-app/.gitignore b/example/apps/expo-app/.gitignore
new file mode 100644
index 0000000000..05647d55c7
--- /dev/null
+++ b/example/apps/expo-app/.gitignore
@@ -0,0 +1,35 @@
+# Learn more https://docs.github.com/en/get-started/getting-started-with-git/ignoring-files
+
+# dependencies
+node_modules/
+
+# Expo
+.expo/
+dist/
+web-build/
+
+# Native
+*.orig.*
+*.jks
+*.p8
+*.p12
+*.key
+*.mobileprovision
+
+# Metro
+.metro-health-check*
+
+# debug
+npm-debug.*
+yarn-debug.*
+yarn-error.*
+
+# macOS
+.DS_Store
+*.pem
+
+# local env files
+.env*.local
+
+# typescript
+*.tsbuildinfo
diff --git a/example/apps/expo-app/App.tsx b/example/apps/expo-app/App.tsx
new file mode 100644
index 0000000000..faef64de5c
--- /dev/null
+++ b/example/apps/expo-app/App.tsx
@@ -0,0 +1,27 @@
+import React from 'react';
+import { SafeAreaView } from 'react-native';
+import {
+ GluestackUIProvider,
+ Button,
+ ButtonText,
+ Center,
+} from '@gluestack-ui/themed';
+import { config } from '@gluestack-ui/config';
+export default function App() {
+ return (
+
+
+
+
+
+
+
+ );
+}
diff --git a/example/apps/expo-app/app.json b/example/apps/expo-app/app.json
new file mode 100644
index 0000000000..18e1086c5d
--- /dev/null
+++ b/example/apps/expo-app/app.json
@@ -0,0 +1,28 @@
+{
+ "expo": {
+ "name": "expo-app",
+ "slug": "expo-app",
+ "version": "1.0.0",
+ "orientation": "portrait",
+ "icon": "./assets/icon.png",
+ "userInterfaceStyle": "light",
+ "splash": {
+ "image": "./assets/splash.png",
+ "resizeMode": "contain",
+ "backgroundColor": "#ffffff"
+ },
+ "assetBundlePatterns": ["**/*"],
+ "ios": {
+ "supportsTablet": true
+ },
+ "android": {
+ "adaptiveIcon": {
+ "foregroundImage": "./assets/adaptive-icon.png",
+ "backgroundColor": "#ffffff"
+ }
+ },
+ "web": {
+ "favicon": "./assets/favicon.png"
+ }
+ }
+}
diff --git a/example/apps/expo-app/assets/adaptive-icon.png b/example/apps/expo-app/assets/adaptive-icon.png
new file mode 100644
index 0000000000000000000000000000000000000000..03d6f6b6c6727954aec1d8206222769afd178d8d
GIT binary patch
literal 17547
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
literal 0
HcmV?d00001
diff --git a/example/apps/expo-app/assets/icon.png b/example/apps/expo-app/assets/icon.png
new file mode 100644
index 0000000000000000000000000000000000000000..a0b1526fc7b78680fd8d733dbc6113e1af695487
GIT binary patch
literal 22380
zcma&NXFwBA)Gs`ngeqM?rCU%8AShC#M(H35F#)9rii(013!tDx|bcg~9p;sv(x$FOVKfIsreLf|7>hGMHJu^FJH{SV>t+=RyC;&j*-p&dS
z00#Ms0m5kH$L?*gw<9Ww*BeXm9UqYx~jJ+1t_4
zJ1{Wx<45o0sR{IH8
zpmC-EeHbTu>$QEi`V0Qoq}8`?({Rz68cT=&7S_Iul9ZEM5bRQwBQDxnr>(iToF)+n
z|JO^V$Ny90|8HRG;s3_y|EE!}{=bF6^uYgbVbpK_-xw{eD%t$*;YA)DTk&JD*qleJ
z3TBmRf4+a|j^2&HXyGR4BQKdWw|n?BtvJ!KqCQ={aAW0QO*2B496##!#j&gBie2#!
zJqxyG2zbFyOA35iJ|1mKYsk?1s;L@_PFX7rKfhZiQdNiEao^8KiD5~5!EgHUD82iG
z2XpL^%96Md=;9x?U3$~srSaj;7MG>wT)P_wCb&+1hO4~8uflnL7sq6JejFX4?J(MR
z(VPq?4ewa9^aaSgWBhg7Ud4T;BZ7{82adX7MF%W0zZ_mYu+wLYAP^lOQLYY@cUjE4
zBeFNA4tH1neDX`Q|J)mZ`?;#~XzBag&Di1NCjfbREm)XTezLrDtUcF|>r`6d+9;Z2K=0gYw6{=
zO`r(C`LX~v_q!oQTzP=V(dpBYRX_m=XTYed%&nR+E%|WO3PI)^4uPRJk7kq+L(WmAOy(ux(#<@^3fSK25b1mHZ&DAw`q0&a5
zXU$pWf=NbJ*j}V$*`Y
zMAz4Zi@A4?iMs{U8hRx*ihsZYHPTpP)TpG}jw4o_5!ny)yKkJoo=Bir+@d$gzUtPf
z76rl^DOsUwy9uARy%q+*hrZZzh_{hGBXepC05GjPV+X0aCfbk@fQWuf;3wQF@_yMe
zt5AXhdB6CNa}=s;{GA3bi9jK8Kx#cdW9+*ie&)lhyA|*h09Nk?0_r>m95{nVXO$6+
z$R>+ZL^ryBs*)RkM6AqpNS?#{nnq$qo^Vt5G+ytRnl4dc&s0sMr1WG4?WRPcp+
zP;4wHTl?f)^!Gj@FV%`g0(eGv;HbO<_}J0}FndK2L|Kcxs9q1mJ&rMg$cKcFmX!S!
z0vJ1OH3owS*d>`!`*;8rrX8t`(L`=H!AifKdlcO~&e#f~Gz*D+&)!2#ud^j$6ZANS!q}@cvw*7N5+0Q4R
zvKIiqx03&fsKF9NtB8=DY2R$GBF
zFO>1hO8{sMa4qRW4rz_ZeDmKOIy>H_iVr#{5#Sj@pJ!sj&rhsFLFP!^^K&|Dr6uLtPu&2WmLoOp+72f`>
zM88yjBZc@DHb&cF31E_s3Lc>O?h=~(jh!O*kcTy{W=1>28}m0z!NXv!+39S{1Oo=094
zX=(h?=(7}XGb1D8Le$|=j;d-;;crtG&kl~$1R;+jNJ~%pbCYscUVDFEU78K}k--e#
za(QZW#pp2ud*;SAz*bwBzqqTRikI2Y#5?gmB4!gw{q?IKxBJ$Ekk*C1u@L4^va%|d
zg`199czf=a{W_rZV(o9cO3-ss^nlj#!JCtP7Us%{K*#UAfC_J8t8O95*4X1neL!uT
z7q+4#870U_4@PTELQHYcP!d#&(5s=1xX@nu4~{P
ziXP#%91t7KLLnvdo!MHcGH5gCyUtMXC>j$4q!W8-qKL+{QA?W|P_g@&o};Qr{V>;Uw00_+`9LV$n}g$1Wz-iO^%O9@tw3qx-3ufU%wo0W1X6
zd5hj=!1>$2#x-W=@#r)rb>i#BX;&5+G{ip^1}TzYa#zzvid~=DT3juEZzPd*Ptx5PlmOekc^%T@qfGKnX
zVLtTc?`|*HLs@&g^HLc-XM;hT*okFVoGV>Rk7|YR#rP|>d%?%Ac6a6tD?jV(PEM2|
z)!GQ%0<#4uaBClL!}ieEL#lNYchYI!%yOx-k)Hrt@v}`10WkK6dpyGbIn3J}K<9>6
z&Qr3w#HH4O-)FlVQbmE0IsYU?*2#U}c**@5bJg+B;Z3a{C!Wn
z%}5?fNU7QX-m!{(5YE8DV9$RRbxu+^pZ&ZnAiN>7Ej;=f|mchq~oo_duHA
zm}UoOBhc=BYSg6-FC`~!vzKFuZxq)d%0s_mkb=8gcX@+)g%YXM+P;snBBP?OLzICI
z^nONGyOXmz_6V@ewl4VaqES4q;1}i2cE%ze0*luwQ@4j=-woV5=th~qD7<$}vxHqH
zki`K3_K?tAp3?w8qw7CdG)(7lggoq>PPlkt@rNqVm`Ycg!CT9)9T8abyZIZA;Y;5m
z%X*dax+I%)X7Yjc(a(`}0da228T?%A)(62CEkfr13$PzqKi>>_-(@aRUSr2JRNn||G!L%}1dKJ|E9+0HUy|x0-9#8-
z__=}bb&@;)o<6PQ+SsWesX{>caBlo2%~rhkUU6n+Pfy5N$X8vK18kZm*^~XJsG(og
zBO`Kur%3CE5}R|r$by?(@1|{;bLg+dG6WvJ5JO>#SNDdi)Mq0e&KQ?o%pyICN1`}n
zIPG++itoD%6Zjho*jBp)LaVIDkPL41VQx_s+y{K#ZZMFUJN!!59D>C?pv3!jpgav(
zrWmF`%6QG9&{*|Y2TOEg;yXX+f+FH}@zJ?z;cQ;60`OsF+Pun!-_^Oh_aQkQeRK|!
z@R;}3_d5Uqj>@W;{SAaq0{e2oR($}c?m}x>mw3U&EK8p
zbDNT;)(io|2H)fID;xYi(7M`Pl2^igo1pxecivhQoZrDJYYqKXg7)kPm6M}H&wk?1
z|CR)0PYBK27ml4L*mD4!ulgjD!q2H)&b>^b(Z}^4enh{P^oa<(*DW{p)=!K!Cf2yxArAy8esW_t$!wO}OC;g>-Y;p?(8K5Lqzo
zVOhL8FZn_oA~?Q9?Wp}%Z1Q|bKd}2%!+#WJCx^^$C*0K6QZ2#Lm}2_VciwAguz0^a
zyw?EN>H_b-HZ}3A`6@(yG~8IYa)emU9NjV=esnMsEpL5I0ZtmYfC8%y6>s_lxxw#E
zG^q&>1%X%Rq$(&YCp2v6OnGR-mI-$;?ekV}$>8saMk6~@idK;{+s(Zq?`iUsro#Rn
zzK=vUonDa1DE+ob8@-xJ^13dF>)CrThqq%v97t^q4e`&PYde{8V33VaZdX`=oBAPu4=@9clN{P5AM&b
z`|?IsKKKQs>6f)XqgFHWEv{GF=(s$!WorDO7lh60_n?q_z;I`mZq
z*dn<86V%zQ*m>k6jwwD*+Tvl&G&c*s)!Qmq5P(FqOG?8SR457Mh3XI}o*
zNHJnfNc3rddr4S%F5TL`3ttEi2p&B*92mBV{y_fFcD~9Cc1oH&eyi!@W)XDmr!-Lc}2ziivlJ7K)m%-)5hd*#%qjqpv-I0wp)Ww;Zmhe}i%+uMaYSzlf15j7cS4Lcg
zSw_~_f!|o?!98lFa72N~m5HV*@680?k@kjT&o_ld&VK=i#LoRgmXTJI{t}u-HdRZ?xP84*Y8~`
zqFW_yBG2VbRtq|$md@m7E{$t7b^3%Cqa|@prg-_BqkTptrIu-ROancLO)(0
z`=1nJO?$p%(=%NhuS`x@r3G||Oy!YPtYHd3F8}Gpd5?
zgBlTI*{@j)(&e2)r%evo5bP~_(UYOO{MQk^fQqpvQIEd=s`Y7!rEyHF6#dd&lqXBj
z{|hLWB%YCqcVlq&AE8P_$lodI-p~4@dR;nHMQ2FmIOOL`<)D1t5VfCd_YzcanOlBt
zsL8m#o5134a;vzx!oLHR`N~~sP@WwvT?bz)a<^pV!b6r$f9^=S!iu>(V~l$UF_QW@
z!jio9i1}8uto)xGyTH-HFBncUqGi4lrD{Q`&u+;dL
z7?|h3?1oggBM*H{DI5sULUT1H*YkzV_qLG^sc%iIgZTIw;OSOeyh1tMAY
zSE>_9do_gknQA?7{grd7)rmnvoMHyAhTAnruXGW5CH(TqWX~?>l+3`Z`IZ{MAO_}t
z>z0mi4wXAv4ZRp4DOLP=OH9o7w>!9tx#eDG2oy4Ma3!FI|DH(Z`MZqlPjidSN?!+$
zxAP0oI8On(1j=wbLHW9&CxWKM7y*dfaz2%0e>3Bk9$HH+poGt8IM4O2Zp!L+{o>)TGM-lB`>PR8Dne1b=v{V}GsGFDR6
zL?jl3X>eP9=IXDRx^qg$yDfIGM{KhS@4j*WHp6TdG>Mie2RHg82(
z!YwvpPJtaPNlyo|V5-ByJ~FNdS3jtrR5LFZZFjc~l%lkvldKPru(A4oET?;Mo0KeZZgt?p`a4@)
z)CnT%?S_k4DegHCHilm~^F_lg&w*-=5wnY--|%|j;2c`kM4F~{#!A9F)TLy9i5Om!
zGf^3|Fd`_!fUwfTJ2E~!Q?Nf4IKX|HVM;0LSu(H^|202t;=Pkd%$wl(mvzH4!mEbw
zygM6z8hzkanzrS;p+34V;Ahu&2H1nB;i!W~D1yw={CxUbmC`pccY_aa!KB#G3x?Ji
zjkKo#t+c@lLa%4C|1#`FT!RHCmzUmffD-n|KTh5?_aJ_j@Nf4G@ZKA5hRyL~KE=D;$L6#A
z+anClym(vFCUa6`mh2H+eCQ}j7N2II_7beG;%^FrtEsL|yur#E`@#U~)2`~Y^efsA
z&Upac9Y>`9d312?bE^)0sxhayO07&;g
z#&4bUh`Z(-7Y*$M_{0jbRs9@D@;s;4AI~j|qj`T1G9)vhRn0lBf&;
zDThp@IKRj>^IItes}_6lK!YanIoN&LGLU&fXeWbwO$Lw+3`D`~?+tZ)+C3D*F4VD!
z!YA~jLKQc(iUKMbQ${@@%PvI=Cvet*TcTe`3Tm9?Jw8D`#1kU0%T!+yTD58D#$S?<
z08SIHoPJ5$Fu7)8-82N`9ssG(k|}5@(`$kkOa^DI=sjZ>mJDIzT@2*l#~G!|Y;P30
zEuj{><|Y7e0`>g8mDh}S)d-(egD^KCCcoEcx=L42Y*7{IQPA_2Gj63jC*yH7VYxse
z^WgiuLu--n2w?CMkhX~&mpdQ?WAV5g_oGDJALfosHq;QF2`+9#-&$?d77|K|-T`aV
z+KtI?WJ6w|m{mH^#phJS02_?+l7+Op8`d)%&%CXKh)>}rVP{1RNQ;v^0vU&c_mg})
z=~Xr1v*?=v8`h%Z(4W5)bGiKujAq3i}g-nmv90otzcnAI&?}v10NoRzG$vHYtyd4DyePWNt^4l%sO^^H!E(f~f8VWd6
zaJO8ZJ&I;+fTqUsn|B1gu%75Zzq_eGBQ(ZuR)Zt@d4&PdgiG-=F~!N8!zgM0#=p=>
z+GPqp`i^As;$u*G^A&%^ML+kf0E*Dj;~-lx&ovlnsXlm+u4shDPz!rV$sP&RKi|8G
z|6ruV{hm;FVq8i|l0F6a1wYu8{yckALq*+Y>?Xe)`jeFxXP#11gM(6xUBeSk{Uk!krUo5_7H>e;Dv&W$_2jrFH?#*z2jY
zI#JyAOQ@r-f0EX@5RWJ8!L|#5xZB3zS2t_qd=bafdoDfGk8lF3pL8KAZ!a4!!pgf83>i5Pu
zYMyimE!m+Pmb_Cldje-6xU_|0Y~>W12^QzJUQ%KCfn-h(j9E~e3Rza5+0iCjw=GkR
zllb*}Z;86cW~@;2#H$^c?SJjen|Sl%_P;(afLk#HkXSF6^#|7u~~%Oy-b&-M3mB
zF)Nw4XIen0`tv16
zUQginofO=-m#!+HAyx5_)7k><*g@oL(=yTyqlA8~)>yHvh1y^rUuUl|#
zX@i}tPv7iUsqQXZG$9MxrNW8?H{CBD{?0gIv|}eNLWrI3|6z_KZp)J8kIAx3`nI`v
zt!LS*vFdaj6)Dg7@H4xJox2zl%!i(imn*s>~@mV%AwKd#8KUFwB&
zsSP3wcW}%>|F!f^RigSket-v+*WKx%61S80a{Wkv_#Epof`lZKNR<`w^~r~xkgQ$3|sxDc|{U&nVydhl3
z5zEN}oJ`pV{udB9#Pgu;WrF(!CAP~yte|3PJ3KnMU4zxuhn{w+$U_6zeNK0}-V(8T
zgBs86T&@CVG+5dDki6y_0YK$NCZ?s>68}OCmdv1jjBwgApk%Vl5O&WmNnmUbPR9p=
z8=TL5VlG1b?Z8?9uY5Fb#-(Ca&__o^EzC02_O!n$pmUEcluV)@_mE8G_r7g{
z_dMXFp3`5VcBcz&2MP)FotYrnziA%ADhbT`;&Ak?>a(iE$j4wQ3*>1=%u=6@W^d-C
z%A0mJAG1qSL9I{~*5uT(0rwc&$7OB58ZO&-S@Fq*eJO+;gL|V0+B|VwE|{mlwy&vl
zgIqxW`{S9=(Z_^TBe@wDxibSgU!NH4kui-Vtf02zv`cDBj-yuqg+sEjCj|C`%bCEz
zd=kBf@b^zG#QC+Y^taq&f>5r6Jz;_Y0JF+M#7-rxfdn~+_XuFj7@zDz7Y!k6LSo$4
z$wm>j>f*QauR^_q@}2~WpSig8*rvl1v^_a%eD5pXhgbDkB`mompqC=tJ=rz?(E=S*zcha14B;fw`=0=Vl#
zgMX@BccXu%)OHr^5;@K=bbFX5Nwh7X0Gt`DcnnM4LDq?(HMn}+Yi>c!UV>MgD~62(
zz*Zgf$8KU|VoDT#%^svR|3%G4!?Vu%0#YboHfZpIV5L%~V?g6=gDp91Zq2Vt2(x1M
z77X|ci>WCA|J04*{}gkXhJ5ILR$)pUeJ3mhMt&Xtgx`FX(a=dzs9rdk8u90I*_@`_
zth12y2|+N)Lf?KMI)~=XJBIe%q~Mol^c#HbRX7E4PlS>4x)3$T;RmP;F(BMKK*SE5
z{)0t5YoK5m;t(td&e9&^*&9*FyHA05x1VDD!sk8c5ktSwKpC`#vG$jPAetb*=iBy$
z>&Mp?mGMJs`6l^9tOa09&^^SVUc7i}h&4SyPuUxD)YFkzn1md*nE@dxAxDv_bBOk#
zXqA9%{Ai@0-zGeif6w7I41QxK3U;xSpq=7%(x1Iq)vdNoU}xemV0yJ
zp7HDQfyym#9qDVe6<{;O0bJ|9IPfYkoIxYRY=XToDSunStmuT3fFT64FNWDKgmGvD
z+f6=CH$a|_tey)ajUTUAI=(O7+LKn>f5AQEF3Bh7e8pbYAwz~5egE7&ptm+z-r
ztWoekP40Rl7K4-YzWjX{be8rm34X7}$`P2iORL~tixDmlq;Z(fG2o+6@qWrhOStVH
zbFcjxChq=9_whhS;w4xF7=1W?>Tc(uzAY@zJVX0>TUFAI4CAZ({12O=K;08G;HA}m
zTle>T!oaprs}9KTCixt#IrR`=L^qo~CFr$2!*6|hf=&oCk!lpxnBpJVeO(9`3TWUz
zZDza?g3o_-DtI#na}{pxV%bgz{6@2-t|V?A&nt_S1jF1s{BopN-!rP?!q3KJq+J4X
zTV>T0fuo^!)nIXJJRwXu#an<$St-rAHVvxLg<$z_;7-Ff&?=hkh+PKb3LYhn3(357
zDnQd1arx>TLs}B3|G?tC_R!SP-r
zw?k?T@6*IVnPNzb5UjxT#9LtWdM#V~D+v|Cun;5jN}Nb=>u(MG@@Zs%8>2HGlbMu=
z`%Pbj7}DG~>bwy~&0C>?Y
z=Ebap803V9nrSLWlB0m#wf^lDz8jeR{RNkf3n(pvhmRn~{$~@9B*CW6Lj1A~xEO;^
z=ahG9j{u)sV1->1D{F1bm&T)d}DZNCGRjEBpw}K1i|b
z#T=G>O^6Zw1^7m}Pk2$Y>SfknQS)zt2RC1|i)j${u&nn!|=9;ZYe-{Wb@?
zRyg;gyZDsCD0rCvVZ-dYSgc(1$yY?0eT+#-*^ln+xfo+$?4hj+6b{e`mEB*rvx2qX
z9?~=^hk9F~>6E?ocXN-Dq-h~r8RbqKX;HY|qIb9lTy|SyZ-7#NpBFz*TM_5lQf9M)
z);F*BGk}$qK~up`>nKwFp)PWhrXcOSCYx=j@i-CFkcVdP^uHo)A%YWvm0DE2@HETU
zHjUOU(KtnAaHMlwCX7(*v>3IOVPEjZz+L0v-eQCA(6r8gK#Kn9L7Wid&nszI!9PyL
ziTfR#&;G2Z3Zix}9E2Ea>R=iYV2mF=G#icUe)U+t1`aNHMD&N(-zKfu5JKNrNWA;;
zD(VPWTDdrNo)%%s&&My{$^xWo@;@X(z~dLj8Os#?z~^thrTkOw1PN9%E_P5O4h!NO
zBy@|K!p=CRg$#G8$@PhaK*yFm_P-3?xkYFr>*QZc%4{)AGZ8l~^-N}&7=a{dk3!~)!n3yks4(~nhE0wleQu)VTDwl*>Uk^-2Gj4kQ*l>vLAU^j$%7@IaFaE8@0
z3+dWFd@ab3WmUHBX`ruH0!@0wF-_tc5a;j6>m8^&Or>Ib!PR}jU`GZs@`(21VCOIA
z1ghU0)IsLDEE=pCSw!gou?-)uI-XmTlYlMum7H#9be#y@S9Yzkk7BU1QZ-%oZLqu2
zECe!NhNpcOm#t+zq#vxuop!(byd(5p^ORt-5ZJlP1>6k*rca9CEfu}`N%b_KCXTuN
z_29!yXf20wQyU?cgyCEp%v3?v;9+k1&6qSv(3%$MwtE7O0!w`&QQ*PpCwIn>7ZS7#
zqrh~jK--svvT)WJUVaF=}_FZ?L%^AOmN)&-7wBK+d>6
z)}kj_AS$2c9{zGy7*e%GJ_O?{zo2PRrvuWC>0Ol<1q1TH*1chmD!BE<9YRz`@BHBS
zC<7RUL#|q%;MW1K$EC-?^h5=Afdb$jVoc9$sw3x@;iCh7avo={xt8I<^m+8XJ3Rpc
z|D)s#sNWp|b2q9miZm(EN)T9H-0LLVVLF)G?2qf2mgP5
zk-yAxE#$J{9`irn&WLLP7>oYxSiDE=r<*xqd{b<*Fac1#h^}mZLF8?uaH737@S)5?
z>|mi?h-%CRaDIZJFNLvadCv0#^=JqF&qvu4;^Jl*1aV~Jo<(d+q__;9qV=NkHIeB?H;{gu+oLz=pX
zF;2vEjY=KRwZD8^Xl(r~SzZKg;hQ$cIk@4V5FJ&&zppbTVfzX9W#IGh;0|*zK6*!T
zpVtA%`BBB#-4E*KKz^cZ@Q>y?V0rq7`|W^xl7JRr_8JNy#b168_X^}&7`uVG7m!-X
zdqs0_z<-QbrW>Sh4pgq;$FeqW%R@7GuT2Eyv{V>ix=B6Fo&UDQ?G)10{SqOk<@&ww
zX6~c2M}^&27F2e${pMltA2fUS84aKHJ6b;o;l3fQfxDO}0!`y{;y|`@
zMTJNy5u`k)Jyip@30b2^MBYS?0Q!P}Bzzmo)_12HaLg}2QauF+2MAk;99YN{Y*83D
zZahhIpNPMe5iAJ*A^%!QcNS!$eawnb>8GD$z475a`<4D(qVqsAhyq`Jm7GSi2e+gP
zoZZev?JNDqcq!I818$!c$n3&bY-&{xy#T=$>z@r@MpxX}15`o8%Q|ypRnc)yFg`zb
zWW9EwA~ib=3R(hopPP_E}og1_mqyHwHqH`>JPK(jK3U+6qr%&EDiuevSEe=wQ=GH}5$N
zo5U^;$A2(Hjg;Ki>2wE64xb{|(=K}k8qidag5Dlwhd&hyXk}1ytqnh8&9D)IgPgLM
zZHrDnH3OjQm6zS3?Zh0@@93aZ@)S0>Wig43rR{-;;{qcu8eeNA*Pr0F3cT5#IZnE+T~Z>)gy+e_Q$xsj*}TIUz5Bd`7LREo`%zq
zT9a88Gs%pwD{P1JIx3n|(r#^f$4|RK_8Ja7pofd^UT5hx9?4Lcgqv^T1$bM=^(We+mGxRi6*8Ipg
z;PPw#RQki84bK<0I4w3#gH}D9pW|>1Y>?KhgQ5}|dTv?B9?TlQ^z{75CZFW=<_Yvs
zGzfXrCXku~zp?>6_-L`L7Z<{vOv|UCkkYAr0b!rE;4MoA*gG^lK92~tQjF1&*Oq})
z5O0s2K8c4+EkT9>vbF9wwN4eh)z|SKM6=1!$Q^MvGy4c_-0VYPY8~lndlVQk$)e#u
z?PQF3bx!BCZ4XWU21kp&^m1HC91tf@k#0SOtg-t9I-lXi-_<;~kJgJixU?RcU;8{7
z@)M2QFejGga0u$h0H0T1rng*P(&Y3{_=a5$ObI8(ZBCE`vD|cn`e&;Jht7I*#T7|V
zr$|2v6jZ_1FXA7C81?46k^SBW&w|+^m}^XK;1l1dnS;HitpLUEC5yk7|D#1rm?Z)
zg&P;AwTWL*f&ga;qusIEptBAyKKyDj)tEeHpILiMNAGN~6M%P(ZqiPZ2TEH&*-F!f
z6~&;}Uz=BW9o6<(jv3^1t+b8E#)LeuErSpReL2(q{cq`vD+;`nG0LaBK*5{QAOcH7
zUKNFR$i479)BYRD_P7*|@&*MrBmhP*pNl6+GX^A1J$kv%>K_n~mjpa$ofX^|jMZ-x
zhR+JM$3>Lp3}V1pVdP;Va@ykoNZwLOZg<<7ySZ~
zVrYV0HZ*9ithjz<&v}cP%0$YlV{98R;>_9Cy*(vQ+gCL;J14v1to%<+flFbW0%vbr
zo_5p^37EI{dMt4zhH^la(|_;q+!WozZ17sauRU;7a943PDIaP@9w4n&uzcHB$~xZKw$x)E5L>JU$XZtC-K6W9ZQDGil8&(C<^w!V^)6
zNC_}mvjVLH9Ej=bB?$Izl%q`^GT~`|;*Ev9ne1t|>bP;Q`32zS)~`B*DaAd}^>p=r
zROYm=E;Q+1XXAUOsrQpBX5Bdcgt3vE5&ZF}asB)Am#G@)dB6Onv9Ob)O@Q-!^zy19
zXa&8d*mDufmCoK
zQy(k4XGEc*e3Ap5veCHM{#fs}c={uAEz<>Xt!6JVNRrI_sm?-_};^HMAzv6he
zzJ7i;H0!YLc4>+P0rtQQE>!bWxL0|w*
zjxBAUBj&B>tGyH@JR$r^n(7VekMfOhLK|84th-9kf1JC`pRBJ&vco>0PeDG!zJz`u
z4g++no(Q2fpf`%q&7jW%54KY{k>Dut(#ugdbN|U5xZRe70mzQorRg=HWk=iP6OC2qnOWDytmOau8PU9a$_gVr!b=s}mk=^LHAN
zhF;wBXZf99rLWu{1tLWK$^{Ew0%_h$OlF}r5pW*?0=>w5=W92XjG73Bx}Be3oxeg}
zRkV&?DhK1y_5}Js8x}cRmtea@uSF8NA;9!K&?+9b;T|F2CvT+4zo+z06rq8?KEZbQ
zddUG7i`dQ5F_|wO(+GzARU`@HENgRmDL>A3f%H>CqT=hTS}Lzn-y1p4DH8?G_2|n!
zpyv`|xDlg^BDgt-#MQfDS^3@q)5L{wFvaoEgIBJUkdiqAA;GdN?`xxt4~$)CyLcOB
zi4}vO>Sy34#@Y*Sz6#40mRhLg%XSVt`cNQ>e2GI3hb6?=QN5+4K
zpC%y`n~>&je;bM?WJtOA#1L5lFI&=Khe{AEABsK~@kXuHA=Lh1?k3tU=o&mvuTjm9
zmWMOfLn>OF(#pFlN*D2DRB
z$7c_YE;}Qfn)l!J)Sp}{oohJ8q%C9~j|7^m-6v$I1rfU{#h2C-EY=eCpqSfEG=0h|
z5%I1`VOP1+(tk(ACyD!%`X*7_&=2{&-%RPrK#rp=_TH4T5_1u{p?FcOYIX|
zbam;>yyqKFzaTY@vvKH7%3fMd5>K7Hf1!``V7EA{
z1wfp4Pd!A;Kstvm^z=AAQ1*5zEXWGy2d^#@?rfFeY!((vGw`
zDdT0qa^$BC;Gifg9Q@PvUrwx3;fP1DOkGH%a>_$x80qX}tQ$WJ
zqe865Jb3J)%JpLfw}t%onQ4aI-(#IaXaw4%-Wj
zXg>WbwKSV@FpBojDzRtfkBig2*_t*vo=bXyIR~e^$P103Eb$Pt+CW70YAj
z2_gq57u5l3KlPY-`|l|}%PI9MSgD17lw4kCb?wW*&EhW0PM;6Dra9|#Q?C66l>%!g0MA-f46xZaAU@`@OSeBho_TBL&2DXRGdheZ~P(Z)}XJq2Q8k=q8N$`
zL;S>jYc@wOBwOe}X9xwDqor4g`L{f4FEpuYgH?i0pUe6+hH{yNRtR=G1QX0kgH)dn
z-gA@VWM%~2QX#znU+mL*T@=@v&B{d8La-YDWGrFV{t}w*l#8
z-8?eqS=B}mIRCXGtM~Uh!7C6jhqjwxd3qg;jmUmql_zVIzej$q|KOQuKS>LH_iO>!
z0=pZ|T^wbx>dF+n`hh?MX4H4-%n6Zd9&9?WSBt>!g`QqQ>
z+xI;;rbR0~ZERT1-|?FBAjj(P10exmQ)oM>6!UAl{(@=qiKoHbC&7ivr-yQmUkmmq
z%*fv%Z@LqtC7oz^dYMobXqf)7$XW+1xInOVZtBl#^8-~=
z&Y|KAqijRzdGE0*3-K*(A{E+KDC1$wAXVdylLr{zT1oub<7J-e1dW{R*oeDV#2M96
z&Iu%*@Z@Tm1%nTu&fH&(7Hl&(jI-qP51t$R}hJ{Z~{i+tbob)(Tr
zZUAZs`y{LrcqY&RJoxQPTcft01g4pIz>Hn=OMxH&BKtqJsb<0&ZX&FPl<>jE7jDQ`
zpwnujjafn{#H)fL!|FiApOcyY0DC+;zXOrekddL+Z~89FHeTykiP?athQ^tIZ3HoJ
z2ULxy4orq4KEHK>-fM_YX*k~^%3nJbL2GECl6s7~5y(Q5ZK?wOnaIe^2~P*qtV6(V
z1&;i}eS%2vHI@k<53C8*k%dEYdE^TZif;Jdy&Wb`4-~M5ix!&n4z6IDcJ
zvt)%^3k3MK4AmT7z0dE|qTaldwnj6~l3bq-X|iAr?+Gu)^;NSbN0cIUg}S)0*AMg2
zYHjzT)5WyI1XJkYZR)zqDw8UAz4cu9Xg6dU*%CZ~>20c>Y~yD?^oI6%+u?H0VQKwA
zy70#FuKY0~`-2uy2}&cD%wE4^Nj_-p
zRhJ9BP%vMZUr*6p(T!7A}v3+URVm6+e?B9Q7i3|P)NaorWDmpz;PX(cJ>
zs_kx9aqq|7+_0P{a^$`{LjE+~%>$i7SV^j45KN^Oxx&G&d5Tqp3mdp8MIUUmPa#(x59Rm$?~Jh*N`sHcsBBY~3YF4KF(k=0&)Ao=sG$!j6loq>WMrvGo4pt_
zV+)DWC?5$$VGxOIX;8w5!OZXR{eJ)bet&<>eeQXm<(@P5dA;s)&pB~b@8zq=k*{~c
zo+b+Tevv7!NP6JD%7%AOs(V&|IPxsbt&!1pqdFp^TlK813HicpPm>MQ1F2%`LqB1r
zzNi_M+VX?0=`=z^S*pU!&kUPN*naNY3BNQddunqPbsf1*bSt5Ur49S@8~<@K;caS!
zHf8q++8mVo(EDf>o7!x-Y=sqzJiJt?>}v5#mla&JBMMYaHoB~asR6bYlOuN|h_R??
z&O~~^GZtRqs-nh?^O)Svt-~4TMhQ)eH04F?>z{1MB*r~YAlrxgsR139W;MNnuJAJ}
zco#7P;jt*eaxQ)MQRs6ewODwL61f4@{Sh;Pg$_0)K>T@%p{wYHhgV&3IPNn>*Agog
zd>k^bhS)T5mawZ}@B?Vuf=ntXvUs-&^Q8F2z7?DyEG9!rF5v(<8raq`BRp9wtK}_m_Cz!aI|OA~=>rPyDZB}LviY`DTRyq;E+O1bb*mtHP+eDp`ie;@gD)I~c+6GFbPa%hM
z`8Vex*~}cS+digqY0sJMuZM`)j&b;BN&8Bf8ycw7yWTmLRzF2`&mV!i;_!0GY1hGp
zb*$&h%G&BIe^cNQG&UZZL;uTN8%^xvNkkx~^#*AkS2X%ziIv8gqo$-Nk*@_^rPWH^
z*L)RAHm5TNw>h1~z)`GS!g!lHyu<>rZ>9iOrAIRH!X2`(0Nu~%Lxif$TC5$#DE+cE
z{ijLX5#>7=*o}4n?U~M}J*BAU9vkM+h)#@@4!X98>sImyC=SSCNgT*sNI%C2T>i<-!9=`VB~MoE;PLJfXms7b`3UkFsopktZsUu2`1dq
zLkKAkxB;K`WB#D)vXr>P;vI^hlReihTzq^o^ujke-_P4>d&|7Z>G0neSdVpD=_A{p
zzaXC1y}rJtmP2<8MZ2q_YZJL9G7Oh;K{yL5V|e}*m1NTIb3GA>WrghgOgWuW{3aYU
zC!vPfD%{X@ANAJ&0p;vM@vCuDDUKM~vORWNZI%l6eB+aw;A5p(Le52ja>c7Dso?Z&
zwJa(*Ju3oD?8P4uRoM4M$N_2sO2~Y$I{|HGih=XE!=%b(>#B&zHELo519p)LB}gf-
zIcriktD7O1*bNvLRB?xUzAHNJL=zjS55!G$oTK{=ZsKKXWsUA>L407$9?hfeuNv~+
zV(7Nu1QQsdH@enfB8Y2~QO~5;=if?cz*gq9X|3Oj_Vr;ouRHdF_LpwG7$hWA?kw3I
z7lNtHprmKTT;3k$nlzOWd^!OqefbPJs~VbLtR(+^r?&D;fs8LVlbz?b9l`FSq~E(Q
z91@`=0oM3ougBzcJV0l?;+o3fAH7d^yD$I5@`-MzfvacD@$=fV=KQoICRXSms6$j*@>%B4$Zu&2iJZcpZYc6IalE1
zvefh96Nz{OLsVyVDL-r{ysURGx|WF#U5f9I>~y(I5`<}kCXXnY+n?H0FP$I_-U7NC
zxGwSeTidqo))zxLP)@I5(L~*=60Ol$Z|zvxKIIeB@$eRugHua)KcSQG)z^+&6VTUW
zGtS?*TVEaJklp@53!^@M0ri?zw*fJk58rQwXay8SlYr?8f8V)T5>yKz;CSB*aYb_tKPX(}k
z<-Nmh>UaB*isssB>l(Sc?2X_1yb(&R{dv+c%5t+gBCN;0xu5V?nJWM1H61Xu#Q*ew
zJ3g<6)$zcaK4}DZ6IW4tG;oOLZ6<<;6p{b;!^tC7(Ks^)
z7)I|ml)Sf?8KO4675nLqP{t$9E@ObSbK$D%tRu=_g_8-a-qXAKb8gT2ENXawopM}4
z0`lHRiIa7 |