From 4c634abc1e4fd50e2958b30602e6c7a1fd73ec75 Mon Sep 17 00:00:00 2001
From: Jorrin <43169049+JorrinKievit@users.noreply.github.com>
Date: Sat, 27 Jan 2024 13:53:41 +0100
Subject: [PATCH] upgrade to native wind v4
---
.vscode/settings.json | 3 +-
apps/mobile/app/(tabs)/about.tsx | 7 +-
apps/mobile/app/(tabs)/account.tsx | 5 +-
apps/mobile/app/(tabs)/index.tsx | 5 +-
apps/mobile/app/(tabs)/search/Searchbar.tsx | 10 +-
apps/mobile/app/(tabs)/search/_layout.tsx | 25 +-
apps/mobile/app/(tabs)/settings.tsx | 5 +-
apps/mobile/app/[...missing].tsx | 15 +-
apps/mobile/app/_layout.tsx | 1 +
apps/mobile/app/hooks/useTailwind.ts | 7 +-
apps/mobile/babel.config.js | 7 +-
apps/mobile/components/item/item.tsx | 23 +-
.../mobile/components/layout/screenLayout.tsx | 16 +-
apps/mobile/components/ui/Styled.tsx | 6 -
apps/mobile/metro.config.js | 51 ++-
apps/mobile/package.json | 3 +-
apps/mobile/styles/global.css | 3 +
apps/mobile/tailwind.config.js | 26 --
apps/mobile/tailwind.config.ts | 58 ++++
apps/mobile/tsconfig.app.json | 2 +-
pnpm-lock.yaml | 319 ++++++++++++------
21 files changed, 396 insertions(+), 201 deletions(-)
delete mode 100644 apps/mobile/components/ui/Styled.tsx
create mode 100644 apps/mobile/styles/global.css
delete mode 100644 apps/mobile/tailwind.config.js
create mode 100644 apps/mobile/tailwind.config.ts
diff --git a/.vscode/settings.json b/.vscode/settings.json
index 08ad711..8e4de29 100644
--- a/.vscode/settings.json
+++ b/.vscode/settings.json
@@ -7,5 +7,6 @@
},
"[typescriptreact]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
- }
+ },
+ "typescript.tsdk": "node_modules\\typescript\\lib"
}
diff --git a/apps/mobile/app/(tabs)/about.tsx b/apps/mobile/app/(tabs)/about.tsx
index 064e9f6..933b0cc 100644
--- a/apps/mobile/app/(tabs)/about.tsx
+++ b/apps/mobile/app/(tabs)/about.tsx
@@ -1,5 +1,6 @@
+import { Text } from 'react-native';
+
import ScreenLayout from '../../components/layout/ScreenLayout';
-import { StyledText } from '../../components/ui/Styled';
export default function AboutScreen() {
return (
@@ -7,10 +8,10 @@ export default function AboutScreen() {
title="About"
subtitle="What is movie-web and how content is served?"
>
-
+
No content is served from movie-web directly and movie web does not host
anything.
-
+
);
}
diff --git a/apps/mobile/app/(tabs)/account.tsx b/apps/mobile/app/(tabs)/account.tsx
index 73f5b6a..69ce9be 100644
--- a/apps/mobile/app/(tabs)/account.tsx
+++ b/apps/mobile/app/(tabs)/account.tsx
@@ -1,5 +1,6 @@
+import { Text } from 'react-native';
+
import ScreenLayout from '../../components/layout/ScreenLayout';
-import { StyledText } from '../../components/ui/Styled';
export default function AccountScreen() {
return (
@@ -7,7 +8,7 @@ export default function AccountScreen() {
title="Account"
subtitle="Manage your movie web account from here"
>
- Hey Bro! what are you up to?
+ Hey Bro! what are you up to?
);
}
diff --git a/apps/mobile/app/(tabs)/index.tsx b/apps/mobile/app/(tabs)/index.tsx
index c1ecd65..037cc75 100644
--- a/apps/mobile/app/(tabs)/index.tsx
+++ b/apps/mobile/app/(tabs)/index.tsx
@@ -1,10 +1,11 @@
+import { Text } from 'react-native';
+
import ScreenLayout from '../../components/layout/ScreenLayout';
-import { StyledText } from '../../components/ui/Styled';
export default function HomeScreen() {
return (
- Movies will be listed here
+ Movies will be listed here
);
}
diff --git a/apps/mobile/app/(tabs)/search/Searchbar.tsx b/apps/mobile/app/(tabs)/search/Searchbar.tsx
index f289bc7..8a39276 100644
--- a/apps/mobile/app/(tabs)/search/Searchbar.tsx
+++ b/apps/mobile/app/(tabs)/search/Searchbar.tsx
@@ -1,9 +1,9 @@
import { FontAwesome5 } from '@expo/vector-icons';
import { useFocusEffect } from 'expo-router';
import { useCallback, useRef, useState } from 'react';
+import { View } from 'react-native';
import { TextInput } from 'react-native-gesture-handler';
-import { StyledView } from '../../../components/ui/Styled';
import useTailwind from '../../hooks/useTailwind';
export default function Searchbar() {
@@ -25,10 +25,10 @@ export default function Searchbar() {
);
return (
-
-
+
+
-
+
-
+
);
}
diff --git a/apps/mobile/app/(tabs)/search/_layout.tsx b/apps/mobile/app/(tabs)/search/_layout.tsx
index 5daf1c2..9793863 100644
--- a/apps/mobile/app/(tabs)/search/_layout.tsx
+++ b/apps/mobile/app/(tabs)/search/_layout.tsx
@@ -1,33 +1,32 @@
-import { ScrollView } from 'react-native';
+import { ScrollView, Text, View } from 'react-native';
import Searchbar from './Searchbar';
import Item from '../../../components/item/item';
import ScreenLayout from '../../../components/layout/ScreenLayout';
-import { StyledText, StyledView } from '../../../components/ui/Styled';
export default function SearchScreen() {
return (
- Search
-
+
+ Search
+
}
subtitle="Looking for something?"
>
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
);
diff --git a/apps/mobile/app/(tabs)/settings.tsx b/apps/mobile/app/(tabs)/settings.tsx
index be769ae..6b4ee8f 100644
--- a/apps/mobile/app/(tabs)/settings.tsx
+++ b/apps/mobile/app/(tabs)/settings.tsx
@@ -1,10 +1,11 @@
+import { Text } from 'react-native';
+
import ScreenLayout from '../../components/layout/ScreenLayout';
-import { StyledText } from '../../components/ui/Styled';
export default function SettingsScreen() {
return (
- Settings would be listed in here. Coming soon
+ Settings would be listed in here. Coming soon
);
}
diff --git a/apps/mobile/app/[...missing].tsx b/apps/mobile/app/[...missing].tsx
index 2335f06..57c2953 100644
--- a/apps/mobile/app/[...missing].tsx
+++ b/apps/mobile/app/[...missing].tsx
@@ -1,22 +1,19 @@
import { Link, Stack } from 'expo-router';
-
-import { StyledText, StyledView } from '../components/ui/Styled';
+import { Text, View } from 'react-native';
export default function NotFoundScreen() {
return (
<>
-
-
+
+
This screen doesn't exist.
-
+
-
- Go to home screen!
-
+ Go to home screen!
-
+
>
);
}
diff --git a/apps/mobile/app/_layout.tsx b/apps/mobile/app/_layout.tsx
index ff6c288..110209c 100644
--- a/apps/mobile/app/_layout.tsx
+++ b/apps/mobile/app/_layout.tsx
@@ -11,6 +11,7 @@ import { useEffect } from 'react';
import { useColorScheme } from 'react-native';
import useTailwind from './hooks/useTailwind';
+import '../styles/global.css';
export {
// Catch any errors thrown by the Layout component.
diff --git a/apps/mobile/app/hooks/useTailwind.ts b/apps/mobile/app/hooks/useTailwind.ts
index 161f3fb..540bdf3 100644
--- a/apps/mobile/app/hooks/useTailwind.ts
+++ b/apps/mobile/app/hooks/useTailwind.ts
@@ -1,12 +1,15 @@
import { useMemo } from 'react';
import resolveConfig from 'tailwindcss/resolveConfig';
-import tailwindConfig from '../../tailwind.config.js';
+import tailwindConfig from '../../tailwind.config';
const useTailwind = () => {
const tailwind = useMemo(() => resolveConfig(tailwindConfig), []);
+ console.log(tailwind);
return {
- colors: tailwind.theme.colors,
+ // eslint-disable-next-line @typescript-eslint/ban-ts-comment
+ // @ts-ignore
+ colors: tailwind.theme.colors as typeof tailwindConfig.theme.extend.colors,
};
};
diff --git a/apps/mobile/babel.config.js b/apps/mobile/babel.config.js
index 95fa08c..bc70ad0 100644
--- a/apps/mobile/babel.config.js
+++ b/apps/mobile/babel.config.js
@@ -1,11 +1,14 @@
module.exports = function (api) {
api.cache(true);
return {
- presets: ['babel-preset-expo'],
+ presets: [
+ ['babel-preset-expo', { jsxImportSource: 'nativewind' }],
+ 'nativewind/babel',
+ ],
plugins: [
// Required for expo-router
'expo-router/babel',
- 'nativewind/babel',
+ 'react-native-reanimated/plugin',
],
};
};
diff --git a/apps/mobile/components/item/item.tsx b/apps/mobile/components/item/item.tsx
index 7acb1e9..5216d4e 100644
--- a/apps/mobile/components/item/item.tsx
+++ b/apps/mobile/components/item/item.tsx
@@ -1,12 +1,11 @@
-import { Image } from 'react-native';
+import { Image, Text, View } from 'react-native';
import { TMDB_POSTER_PATH } from '../../constants/General';
-import { StyledText, StyledView } from '../ui/Styled';
export default function Item() {
return (
-
-
+
+
-
- Hamilton
-
- Movie
-
- 2023
-
-
+
+ Hamilton
+
+ Movie
+
+ 2023
+
+
);
}
diff --git a/apps/mobile/components/layout/screenLayout.tsx b/apps/mobile/components/layout/screenLayout.tsx
index 5162b4f..245bc9e 100644
--- a/apps/mobile/components/layout/screenLayout.tsx
+++ b/apps/mobile/components/layout/screenLayout.tsx
@@ -1,4 +1,4 @@
-import { StyledText, StyledView } from '../ui/Styled';
+import { Text, View } from 'react-native';
type Props = {
title?: React.ReactNode | string;
@@ -8,17 +8,13 @@ type Props = {
export default function ScreenLayout({ title, subtitle, children }: Props) {
return (
-
+
{typeof title === 'string' && (
-
- {title}
-
+ {title}
)}
{typeof title !== 'string' && title}
-
- {subtitle}
-
- {children}
-
+ {subtitle}
+ {children}
+
);
}
diff --git a/apps/mobile/components/ui/Styled.tsx b/apps/mobile/components/ui/Styled.tsx
deleted file mode 100644
index 0e4d2fa..0000000
--- a/apps/mobile/components/ui/Styled.tsx
+++ /dev/null
@@ -1,6 +0,0 @@
-import { styled } from 'nativewind';
-import { Text, View } from 'react-native';
-
-export const StyledText = styled(Text, 'text-white');
-
-export const StyledView = styled(View);
diff --git a/apps/mobile/metro.config.js b/apps/mobile/metro.config.js
index 58823e1..f937dd0 100644
--- a/apps/mobile/metro.config.js
+++ b/apps/mobile/metro.config.js
@@ -1,6 +1,45 @@
+// const { withNxMetro } = require('@nx/expo');
+// const { getDefaultConfig } = require('@expo/metro-config');
+// const { mergeConfig } = require('metro-config');
+// const { withNativeWind } = require('nativewind/metro');
+// const exclusionList = require('metro-config/src/defaults/exclusionList');
+
+// const defaultConfig = getDefaultConfig(__dirname);
+// const { assetExts, sourceExts } = defaultConfig.resolver;
+
+// /**
+// * Metro configuration
+// * https://facebook.github.io/metro/docs/configuration
+// *
+// * @type {import('metro-config').MetroConfig}
+// */
+// const customConfig = {
+// transformer: {
+// babelTransformerPath: require.resolve('react-native-svg-transformer'),
+// },
+// resolver: {
+// assetExts: assetExts.filter((ext) => ext !== 'svg'),
+// sourceExts: [...sourceExts, 'svg'],
+// blockList: exclusionList([/^(?!.*node_modules).*\/dist\/.*/]),
+// // unstable_enableSymlinks: true,
+// // unstable_enablePackageExports: true,
+// },
+// };
+
+// module.exports = withNxMetro(mergeConfig(defaultConfig, customConfig), {
+// // Change this to true to see debugging info.
+// // Useful if you have issues resolving modules
+// debug: false,
+// // all the file extensions used for imports other than 'ts', 'tsx', 'js', 'jsx', 'json'
+// extensions: [],
+// // Specify folders to watch, in addition to Nx defaults (workspace libraries and node_modules)
+// watchFolders: [],
+// });
+
const { withNxMetro } = require('@nx/expo');
const { getDefaultConfig } = require('@expo/metro-config');
const { mergeConfig } = require('metro-config');
+const { withNativeWind } = require('nativewind/metro');
const exclusionList = require('metro-config/src/defaults/exclusionList');
const defaultConfig = getDefaultConfig(__dirname);
@@ -25,7 +64,15 @@ const customConfig = {
},
};
-module.exports = withNxMetro(mergeConfig(defaultConfig, customConfig), {
+const nativeWindConfig = withNativeWind(
+ mergeConfig(defaultConfig, customConfig),
+ {
+ input: './styles/global.css',
+ configPath: './tailwind.config.ts',
+ },
+);
+
+const nxConfig = withNxMetro(nativeWindConfig, {
// Change this to true to see debugging info.
// Useful if you have issues resolving modules
debug: false,
@@ -34,3 +81,5 @@ module.exports = withNxMetro(mergeConfig(defaultConfig, customConfig), {
// Specify folders to watch, in addition to Nx defaults (workspace libraries and node_modules)
watchFolders: [],
});
+
+module.exports = nxConfig;
diff --git a/apps/mobile/package.json b/apps/mobile/package.json
index 14e3e79..e59c900 100644
--- a/apps/mobile/package.json
+++ b/apps/mobile/package.json
@@ -30,7 +30,7 @@
"jest": "*",
"jest-expo": "*",
"metro-config": "*",
- "nativewind": "^2.0.11",
+ "nativewind": "^4.0.23",
"pod-install": "*",
"react": "*",
"react-dom": "18.2.0",
@@ -41,6 +41,7 @@
"react-native-svg": "*",
"react-native-svg-transformer": "*",
"react-native-web": "^0.19.10",
+ "react-native-reanimated": "~3.3.0",
"react-test-renderer": "*",
"typescript": "*",
"tailwindcss": "3.3.2"
diff --git a/apps/mobile/styles/global.css b/apps/mobile/styles/global.css
new file mode 100644
index 0000000..b5c61c9
--- /dev/null
+++ b/apps/mobile/styles/global.css
@@ -0,0 +1,3 @@
+@tailwind base;
+@tailwind components;
+@tailwind utilities;
diff --git a/apps/mobile/tailwind.config.js b/apps/mobile/tailwind.config.js
deleted file mode 100644
index 50457ef..0000000
--- a/apps/mobile/tailwind.config.js
+++ /dev/null
@@ -1,26 +0,0 @@
-const colors = require('tailwindcss/colors');
-
-// https://github.com/marklawlor/nativewind/issues/573
-module.exports = {
- content: ['./**/*.{js,jsx,ts,tsx}'],
- theme: {
- extend: {
- colors: {
- ...colors,
- purple: {
- 100: '#C082FF',
- 300: '#8D44D6',
- 400: '#7831BF',
- },
- shade: {
- 50: '#676790',
- 200: '#3F3F60',
- 300: '#32324F',
- 700: '#131322',
- 900: '#0A0A12',
- },
- },
- },
- },
- plugins: [],
-};
diff --git a/apps/mobile/tailwind.config.ts b/apps/mobile/tailwind.config.ts
new file mode 100644
index 0000000..876588d
--- /dev/null
+++ b/apps/mobile/tailwind.config.ts
@@ -0,0 +1,58 @@
+// const colors = require('tailwindcss/colors');
+
+// // https://github.com/marklawlor/nativewind/issues/573
+// /** @type {import('tailwindcss').Config} */
+// module.exports = {
+// content: ['./**/*.{js,jsx,ts,tsx}'],
+// theme: {
+// extend: {
+// colors: {
+// ...colors,
+// purple: {
+// 100: '#C082FF',
+// 300: '#8D44D6',
+// 400: '#7831BF',
+// },
+// shade: {
+// 50: '#676790',
+// 200: '#3F3F60',
+// 300: '#32324F',
+// 700: '#131322',
+// 900: '#0A0A12',
+// },
+// },
+// },
+// },
+// plugins: [],
+// };
+
+// @ts-expect-error - no types
+import nativewind from 'nativewind/preset';
+import type { Config } from 'tailwindcss';
+
+export default {
+ content: ['./src/**/*.{ts,tsx}'],
+ presets: [
+ nativewind,
+ {
+ theme: {
+ extend: {
+ colors: {
+ purple: {
+ 100: '#C082FF',
+ 300: '#8D44D6',
+ 400: '#7831BF',
+ },
+ shade: {
+ 50: '#676790',
+ 200: '#3F3F60',
+ 300: '#32324F',
+ 700: '#131322',
+ 900: '#0A0A12',
+ },
+ },
+ },
+ },
+ },
+ ],
+} satisfies Config;
diff --git a/apps/mobile/tsconfig.app.json b/apps/mobile/tsconfig.app.json
index 6d08c79..cc72c86 100644
--- a/apps/mobile/tsconfig.app.json
+++ b/apps/mobile/tsconfig.app.json
@@ -12,5 +12,5 @@
"**/*.spec.tsx",
"test-setup.ts"
],
- "include": ["**/*.ts", "**/*.tsx", "**/*.js", "**/*.jsx", "tailwind.config.js"]
+ "include": ["**/*.ts", "**/*.tsx", "**/*.js", "**/*.jsx", "tailwind.config.ts"]
}
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index cc871c3..56849e5 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -218,7 +218,7 @@ importers:
version: 5.0.2(expo@49.0.16)
expo-router:
specifier: ^2.0.14
- version: 2.0.14(@testing-library/jest-native@5.4.3)(expo-constants@15.4.5)(expo-linking@5.0.2)(expo-modules-autolinking@1.10.2)(expo-status-bar@1.6.0)(expo@49.0.16)(metro@0.76.8)(react-dom@18.2.0)(react-native-gesture-handler@2.14.1)(react-native-safe-area-context@4.8.2)(react-native-screens@3.29.0)(react-native@0.72.6)(react@18.2.0)
+ version: 2.0.14(@testing-library/jest-native@5.4.3)(expo-constants@15.4.5)(expo-linking@5.0.2)(expo-modules-autolinking@1.10.2)(expo-status-bar@1.6.0)(expo@49.0.16)(metro@0.76.8)(react-dom@18.2.0)(react-native-gesture-handler@2.14.1)(react-native-reanimated@3.3.0)(react-native-safe-area-context@4.8.2)(react-native-screens@3.29.0)(react-native@0.72.6)(react@18.2.0)
expo-splash-screen:
specifier: ~0.20.5
version: 0.20.5(expo-modules-autolinking@1.10.2)(expo@49.0.16)
@@ -241,8 +241,8 @@ importers:
specifier: '*'
version: 0.80.4
nativewind:
- specifier: ^2.0.11
- version: 2.0.11(react@18.2.0)(tailwindcss@3.3.2)
+ specifier: ^4.0.23
+ version: 4.0.23(@babel/core@7.23.7)(react-native-reanimated@3.3.0)(react-native-safe-area-context@4.8.2)(react-native-svg@13.9.0)(react-native@0.72.6)(react@18.2.0)(tailwindcss@3.3.2)
pod-install:
specifier: '*'
version: 0.2.0
@@ -258,6 +258,9 @@ importers:
react-native-gesture-handler:
specifier: ^2.14.1
version: 2.14.1(react-native@0.72.6)(react@18.2.0)
+ react-native-reanimated:
+ specifier: ~3.3.0
+ version: 3.3.0(@babel/core@7.23.7)(@babel/plugin-proposal-nullish-coalescing-operator@7.18.6)(@babel/plugin-proposal-optional-chaining@7.21.0)(@babel/plugin-transform-arrow-functions@7.23.3)(@babel/plugin-transform-shorthand-properties@7.23.3)(@babel/plugin-transform-template-literals@7.23.3)(react-native@0.72.6)(react@18.2.0)
react-native-safe-area-context:
specifier: ^4.8.2
version: 4.8.2(react-native@0.72.6)(react@18.2.0)
@@ -468,13 +471,6 @@ packages:
dependencies:
'@babel/types': 7.23.6
- /@babel/helper-module-imports@7.18.6:
- resolution: {integrity: sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA==}
- engines: {node: '>=6.9.0'}
- dependencies:
- '@babel/types': 7.23.6
- dev: false
-
/@babel/helper-module-imports@7.22.15:
resolution: {integrity: sha512-0pYVBnDKZO2fnSPCrgM/6WMc7eS20Fbok+0r88fp+YtWVLZrp4CkafFGIp+W0VKw4a22sgebPT99y+FDNMdP4w==}
engines: {node: '>=6.9.0'}
@@ -1252,6 +1248,16 @@ packages:
'@babel/helper-plugin-utils': 7.22.5
'@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.23.7)
+ /@babel/plugin-transform-object-assign@7.23.3(@babel/core@7.23.7):
+ resolution: {integrity: sha512-TPJ6O7gVC2rlQH2hvQGRH273G1xdoloCj9Pc07Q7JbIZYDi+Sv5gaE2fu+r5E7qK4zyt6vj0FbZaZTRU5C3OMA==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+ dependencies:
+ '@babel/core': 7.23.7
+ '@babel/helper-plugin-utils': 7.22.5
+ dev: false
+
/@babel/plugin-transform-object-rest-spread@7.23.4(@babel/core@7.23.7):
resolution: {integrity: sha512-9x9K1YyeQVw0iOXJlIzwm8ltobIIv7j2iLyP2jIhEbqPRQ7ScNgwQufU2I0Gq11VjyG4gI4yMXt2VFags+1N3g==}
engines: {node: '>=6.9.0'}
@@ -1721,15 +1727,6 @@ packages:
transitivePeerDependencies:
- supports-color
- /@babel/types@7.19.0:
- resolution: {integrity: sha512-YuGopBq3ke25BVSiS6fgF49Ul9gH1x70Bcr6bqRLjWCkcX8Hre1/5+z+IiWOIerRMSSEfGZVB9z9kyq7wVs9YA==}
- engines: {node: '>=6.9.0'}
- dependencies:
- '@babel/helper-string-parser': 7.23.4
- '@babel/helper-validator-identifier': 7.22.20
- to-fast-properties: 2.0.0
- dev: false
-
/@babel/types@7.23.6:
resolution: {integrity: sha512-+uarb83brBzPKN38NX1MkB6vb6+mwvR6amUulqAE7ccQw1pEl+bCia9TbdG1lsnFP7lZySvUn37CHyXQdfTwzg==}
engines: {node: '>=6.9.0'}
@@ -5319,6 +5316,22 @@ packages:
/babel-plugin-syntax-trailing-function-commas@7.0.0-beta.0:
resolution: {integrity: sha512-Xj9XuRuz3nTSbaTXWv3itLOcxyF4oPD8douBBmj7U9BBC6nEBYfyOJYQMf/8PJAFotC62UY5dFfIGEPr7WswzQ==}
+ /babel-plugin-tester@11.0.4(@babel/core@7.23.7):
+ resolution: {integrity: sha512-cqswtpSPo0e++rZB0l/54EG17LL25l9gLgh59yXfnmNxX+2lZTIOpx2zt4YI9QIClVXc8xf63J6yWwKkzy0jNg==}
+ engines: {node: ^14.20.0 || ^16.16.0 || >=18.5.0}
+ peerDependencies:
+ '@babel/core': '>=7.11.6'
+ dependencies:
+ '@babel/core': 7.23.7
+ core-js: 3.35.1
+ debug: 4.3.4(supports-color@8.1.1)
+ lodash.mergewith: 4.6.2
+ prettier: 2.8.8
+ strip-indent: 3.0.0
+ transitivePeerDependencies:
+ - supports-color
+ dev: false
+
/babel-plugin-transform-flow-enums@0.0.2(@babel/core@7.23.7):
resolution: {integrity: sha512-g4aaCrDDOsWjbm0PUUeVnkcVd6AKJsVc/MbnPhEotEpkeJQP6b8nzewohQi7+QS8UyPehOhGWn0nOwjvWpmMvQ==}
dependencies:
@@ -5730,10 +5743,6 @@ packages:
resolution: {integrity: sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==}
engines: {node: '>=10'}
- /camelize@1.0.1:
- resolution: {integrity: sha512-dU+Tx2fsypxTgtLoE36npi3UqcjSSMNYfkqgmoEhtZrraP5VWq0K7FkWVTYa8eMPtnU/G2txVsfdCJTn9uzpuQ==}
- dev: false
-
/caniuse-api@3.0.0:
resolution: {integrity: sha512-bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw==}
dependencies:
@@ -6078,6 +6087,11 @@ packages:
dependencies:
browserslist: 4.22.2
+ /core-js@3.35.1:
+ resolution: {integrity: sha512-IgdsbxNyMskrTFxa9lWHyMwAJU5gXOPP+1yO+K59d50VLVAIDAbs7gIv705KzALModfK3ZrSZTPNpC0PQgIZuw==}
+ requiresBuild: true
+ dev: false
+
/core-util-is@1.0.3:
resolution: {integrity: sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==}
@@ -6192,11 +6206,6 @@ packages:
resolution: {integrity: sha512-v1plID3y9r/lPhviJ1wrXpLeyUIGAZ2SHNYTEapm7/8A9nLPoyvVp3RK/EPFqn5kEznyWgYZNsRtYYIWbuG8KA==}
engines: {node: '>=8'}
- /css-color-keywords@1.0.0:
- resolution: {integrity: sha512-FyyrDHZKEjXDpNJYvVsV960FiqQyXc/LlYmsxl2BcdMb2WPx0OGRVgTg55rPSyLSNMqP52R9r8geSp7apN3Ofg==}
- engines: {node: '>=4'}
- dev: false
-
/css-declaration-sorter@7.1.1(postcss@8.4.33):
resolution: {integrity: sha512-dZ3bVTEEc1vxr3Bek9vGwfB5Z6ESPULhcRvO472mfjVnj8jRcTnKO8/JTczlvxM10Myb+wBM++1MtdO76eWcaQ==}
engines: {node: ^14 || ^16 || >=18}
@@ -6227,10 +6236,6 @@ packages:
semver: 7.5.4
webpack: 5.89.0(@swc/core@1.3.105)
- /css-mediaquery@0.1.2:
- resolution: {integrity: sha512-COtn4EROW5dBGlE/4PiKnh6rZpAPxDeFLaEEwt4i10jpDMFt2EhQGS79QmmrO+iKCHv0PU/HrOWEhijFd1x99Q==}
- dev: false
-
/css-minimizer-webpack-plugin@5.0.1(webpack@5.89.0):
resolution: {integrity: sha512-3caImjKFQkS+ws1TGcFn0V1HyDJFq1Euy589JlD6/3rV2kj+w7r5G9WDMgSHvpvXHNZ2calVypZWuEDQd9wfLg==}
engines: {node: '>= 14.15.0'}
@@ -6273,14 +6278,6 @@ packages:
domutils: 3.1.0
nth-check: 2.1.1
- /css-to-react-native@3.2.0:
- resolution: {integrity: sha512-e8RKaLXMOFii+02mOlqwjbD00KSEKqblnpO9e++1aXS1fPQOpS1YoqdVHBqPjHNoxeF2mimzVqawm2KCbEdtHQ==}
- dependencies:
- camelize: 1.0.1
- css-color-keywords: 1.0.0
- postcss-value-parser: 4.2.0
- dev: false
-
/css-tree@1.1.3:
resolution: {integrity: sha512-tRpdppF7TRazZrjJ6v3stzv93qxRcSsFmW6cX0Zm2NVKpxE1WV1HblnghVv9TreireHkqI/VDEsfolRF1p6y7Q==}
engines: {node: '>=8.0.0'}
@@ -7581,7 +7578,7 @@ packages:
compare-versions: 3.6.0
invariant: 2.2.4
- /expo-router@2.0.14(@testing-library/jest-native@5.4.3)(expo-constants@15.4.5)(expo-linking@5.0.2)(expo-modules-autolinking@1.10.2)(expo-status-bar@1.6.0)(expo@49.0.16)(metro@0.76.8)(react-dom@18.2.0)(react-native-gesture-handler@2.14.1)(react-native-safe-area-context@4.8.2)(react-native-screens@3.29.0)(react-native@0.72.6)(react@18.2.0):
+ /expo-router@2.0.14(@testing-library/jest-native@5.4.3)(expo-constants@15.4.5)(expo-linking@5.0.2)(expo-modules-autolinking@1.10.2)(expo-status-bar@1.6.0)(expo@49.0.16)(metro@0.76.8)(react-dom@18.2.0)(react-native-gesture-handler@2.14.1)(react-native-reanimated@3.3.0)(react-native-safe-area-context@4.8.2)(react-native-screens@3.29.0)(react-native@0.72.6)(react@18.2.0):
resolution: {integrity: sha512-F5dP4WMe+zQLzlGSbC+NT9/67FGgwmUCJuPGD4BkK0eRt0uga+y53vQ59m5MCOebqE0N9Ukr/Jz8Num16iGqZA==}
peerDependencies:
'@react-navigation/drawer': ^6.5.8
@@ -7620,6 +7617,7 @@ packages:
query-string: 7.1.3
react-helmet-async: 1.3.0(react-dom@18.2.0)(react@18.2.0)
react-native-gesture-handler: 2.14.1(react-native@0.72.6)(react@18.2.0)
+ react-native-reanimated: 3.3.0(@babel/core@7.23.7)(@babel/plugin-proposal-nullish-coalescing-operator@7.18.6)(@babel/plugin-proposal-optional-chaining@7.21.0)(@babel/plugin-transform-arrow-functions@7.23.3)(@babel/plugin-transform-shorthand-properties@7.23.3)(@babel/plugin-transform-template-literals@7.23.3)(react-native@0.72.6)(react@18.2.0)
react-native-safe-area-context: 4.8.2(react-native@0.72.6)(react@18.2.0)
react-native-screens: 3.29.0(react-native@0.72.6)(react@18.2.0)
schema-utils: 4.2.0
@@ -7742,10 +7740,6 @@ packages:
transitivePeerDependencies:
- supports-color
- /extend@3.0.2:
- resolution: {integrity: sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==}
- dev: false
-
/fast-deep-equal@3.1.3:
resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==}
@@ -9855,6 +9849,15 @@ packages:
requiresBuild: true
optional: true
+ /lightningcss-darwin-arm64@1.22.0:
+ resolution: {integrity: sha512-aH2be3nNny+It5YEVm8tBSSdRlBVWQV8m2oJ7dESiYRzyY/E/bQUe2xlw5caaMuhlM9aoTMtOH25yzMhir0qPg==}
+ engines: {node: '>= 12.0.0'}
+ cpu: [arm64]
+ os: [darwin]
+ requiresBuild: true
+ dev: false
+ optional: true
+
/lightningcss-darwin-x64@1.19.0:
resolution: {integrity: sha512-Lif1wD6P4poaw9c/4Uh2z+gmrWhw/HtXFoeZ3bEsv6Ia4tt8rOJBdkfVaUJ6VXmpKHALve+iTyP2+50xY1wKPw==}
engines: {node: '>= 12.0.0'}
@@ -9863,6 +9866,24 @@ packages:
requiresBuild: true
optional: true
+ /lightningcss-darwin-x64@1.22.0:
+ resolution: {integrity: sha512-9KHRFA0Y6mNxRHeoQMp0YaI0R0O2kOgUlYPRjuasU4d+pI8NRhVn9bt0yX9VPs5ibWX1RbDViSPtGJvYYrfVAQ==}
+ engines: {node: '>= 12.0.0'}
+ cpu: [x64]
+ os: [darwin]
+ requiresBuild: true
+ dev: false
+ optional: true
+
+ /lightningcss-freebsd-x64@1.22.0:
+ resolution: {integrity: sha512-xaYL3xperGwD85rQioDb52ozF3NAJb+9wrge3jD9lxGffplu0Mn35rXMptB8Uc2N9Mw1i3Bvl7+z1evlqVl7ww==}
+ engines: {node: '>= 12.0.0'}
+ cpu: [x64]
+ os: [freebsd]
+ requiresBuild: true
+ dev: false
+ optional: true
+
/lightningcss-linux-arm-gnueabihf@1.19.0:
resolution: {integrity: sha512-P15VXY5682mTXaiDtbnLYQflc8BYb774j2R84FgDLJTN6Qp0ZjWEFyN1SPqyfTj2B2TFjRHRUvQSSZ7qN4Weig==}
engines: {node: '>= 12.0.0'}
@@ -9871,6 +9892,15 @@ packages:
requiresBuild: true
optional: true
+ /lightningcss-linux-arm-gnueabihf@1.22.0:
+ resolution: {integrity: sha512-epQGvXIjOuxrZpMpMnRjK54ZqzhiHhCPLtHvw2fb6NeK2kK9YtF0wqmeTBiQ1AkbWfnnXGTstYaFNiadNK+StQ==}
+ engines: {node: '>= 12.0.0'}
+ cpu: [arm]
+ os: [linux]
+ requiresBuild: true
+ dev: false
+ optional: true
+
/lightningcss-linux-arm64-gnu@1.19.0:
resolution: {integrity: sha512-zwXRjWqpev8wqO0sv0M1aM1PpjHz6RVIsBcxKszIG83Befuh4yNysjgHVplF9RTU7eozGe3Ts7r6we1+Qkqsww==}
engines: {node: '>= 12.0.0'}
@@ -9879,6 +9909,15 @@ packages:
requiresBuild: true
optional: true
+ /lightningcss-linux-arm64-gnu@1.22.0:
+ resolution: {integrity: sha512-AArGtKSY4DGTA8xP8SDyNyKtpsUl1Rzq6FW4JomeyUQ4nBrR71uPChksTpj3gmWuGhZeRKLeCUI1DBid/zhChg==}
+ engines: {node: '>= 12.0.0'}
+ cpu: [arm64]
+ os: [linux]
+ requiresBuild: true
+ dev: false
+ optional: true
+
/lightningcss-linux-arm64-musl@1.19.0:
resolution: {integrity: sha512-vSCKO7SDnZaFN9zEloKSZM5/kC5gbzUjoJQ43BvUpyTFUX7ACs/mDfl2Eq6fdz2+uWhUh7vf92c4EaaP4udEtA==}
engines: {node: '>= 12.0.0'}
@@ -9887,6 +9926,15 @@ packages:
requiresBuild: true
optional: true
+ /lightningcss-linux-arm64-musl@1.22.0:
+ resolution: {integrity: sha512-RRraNgP8hnBPhInTTUdlFm+z16C/ghbxBG51Sw00hd7HUyKmEUKRozyc5od+/N6pOrX/bIh5vIbtMXIxsos0lg==}
+ engines: {node: '>= 12.0.0'}
+ cpu: [arm64]
+ os: [linux]
+ requiresBuild: true
+ dev: false
+ optional: true
+
/lightningcss-linux-x64-gnu@1.19.0:
resolution: {integrity: sha512-0AFQKvVzXf9byrXUq9z0anMGLdZJS+XSDqidyijI5njIwj6MdbvX2UZK/c4FfNmeRa2N/8ngTffoIuOUit5eIQ==}
engines: {node: '>= 12.0.0'}
@@ -9895,6 +9943,15 @@ packages:
requiresBuild: true
optional: true
+ /lightningcss-linux-x64-gnu@1.22.0:
+ resolution: {integrity: sha512-grdrhYGRi2KrR+bsXJVI0myRADqyA7ekprGxiuK5QRNkv7kj3Yq1fERDNyzZvjisHwKUi29sYMClscbtl+/Zpw==}
+ engines: {node: '>= 12.0.0'}
+ cpu: [x64]
+ os: [linux]
+ requiresBuild: true
+ dev: false
+ optional: true
+
/lightningcss-linux-x64-musl@1.19.0:
resolution: {integrity: sha512-SJoM8CLPt6ECCgSuWe+g0qo8dqQYVcPiW2s19dxkmSI5+Uu1GIRzyKA0b7QqmEXolA+oSJhQqCmJpzjY4CuZAg==}
engines: {node: '>= 12.0.0'}
@@ -9903,6 +9960,15 @@ packages:
requiresBuild: true
optional: true
+ /lightningcss-linux-x64-musl@1.22.0:
+ resolution: {integrity: sha512-t5f90X+iQUtIyR56oXIHMBUyQFX/zwmPt72E6Dane3P8KNGlkijTg2I75XVQS860gNoEFzV7Mm5ArRRA7u5CAQ==}
+ engines: {node: '>= 12.0.0'}
+ cpu: [x64]
+ os: [linux]
+ requiresBuild: true
+ dev: false
+ optional: true
+
/lightningcss-win32-x64-msvc@1.19.0:
resolution: {integrity: sha512-C+VuUTeSUOAaBZZOPT7Etn/agx/MatzJzGRkeV+zEABmPuntv1zihncsi+AyGmjkkzq3wVedEy7h0/4S84mUtg==}
engines: {node: '>= 12.0.0'}
@@ -9911,6 +9977,15 @@ packages:
requiresBuild: true
optional: true
+ /lightningcss-win32-x64-msvc@1.22.0:
+ resolution: {integrity: sha512-64HTDtOOZE9PUCZJiZZQpyqXBbdby1lnztBccnqh+NtbKxjnGzP92R2ngcgeuqMPecMNqNWxgoWgTGpC+yN5Sw==}
+ engines: {node: '>= 12.0.0'}
+ cpu: [x64]
+ os: [win32]
+ requiresBuild: true
+ dev: false
+ optional: true
+
/lightningcss@1.19.0:
resolution: {integrity: sha512-yV5UR7og+Og7lQC+70DA7a8ta1uiOPnWPJfxa0wnxylev5qfo4P+4iMpzWAdYWOca4jdNQZii+bDL/l+4hUXIA==}
engines: {node: '>= 12.0.0'}
@@ -9926,6 +10001,23 @@ packages:
lightningcss-linux-x64-musl: 1.19.0
lightningcss-win32-x64-msvc: 1.19.0
+ /lightningcss@1.22.0:
+ resolution: {integrity: sha512-+z0qvwRVzs4XGRXelnWRNwqsXUx8k3bSkbP8vD42kYKSk3z9OM2P3e/gagT7ei/gwh8DTS80LZOFZV6lm8Z8Fg==}
+ engines: {node: '>= 12.0.0'}
+ dependencies:
+ detect-libc: 1.0.3
+ optionalDependencies:
+ lightningcss-darwin-arm64: 1.22.0
+ lightningcss-darwin-x64: 1.22.0
+ lightningcss-freebsd-x64: 1.22.0
+ lightningcss-linux-arm-gnueabihf: 1.22.0
+ lightningcss-linux-arm64-gnu: 1.22.0
+ lightningcss-linux-arm64-musl: 1.22.0
+ lightningcss-linux-x64-gnu: 1.22.0
+ lightningcss-linux-x64-musl: 1.22.0
+ lightningcss-win32-x64-msvc: 1.22.0
+ dev: false
+
/lilconfig@2.1.0:
resolution: {integrity: sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==}
engines: {node: '>=10'}
@@ -9994,6 +10086,10 @@ packages:
/lodash.merge@4.6.2:
resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==}
+ /lodash.mergewith@4.6.2:
+ resolution: {integrity: sha512-GK3g5RPZWTRSeLSpgP8Xhra+pnjBC56q9FZYe1d5RN3TJ35dbkGy3YqBSMbyCrlbi+CM9Z3Jk5yTL7RCsqboyQ==}
+ dev: false
+
/lodash.throttle@4.1.1:
resolution: {integrity: sha512-wIkUCfVKpVsWo3JSZlc+8MB5it+2AN5W8J7YVMST30UrvcQNZ1Okbj+rbVniijTWE6FGYy4XJq/rHkas8qJMLQ==}
@@ -10851,28 +10947,22 @@ packages:
engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1}
hasBin: true
- /nativewind@2.0.11(react@18.2.0)(tailwindcss@3.3.2):
- resolution: {integrity: sha512-qCEXUwKW21RYJ33KRAJl3zXq2bCq82WoI564fI21D/TiqhfmstZOqPN53RF8qK1NDK6PGl56b2xaTxgObEePEg==}
- engines: {node: '>=14.18'}
+ /nativewind@4.0.23(@babel/core@7.23.7)(react-native-reanimated@3.3.0)(react-native-safe-area-context@4.8.2)(react-native-svg@13.9.0)(react-native@0.72.6)(react@18.2.0)(tailwindcss@3.3.2):
+ resolution: {integrity: sha512-7eKMjcdoZMqxmPwJhLwe5VbuwCNTdIXChxV9n4FwdzKTpZX3kNGj95J7fpqpefFPRT6yYp6SqK2n6TG/BSzA+w==}
+ engines: {node: '>=16'}
peerDependencies:
- tailwindcss: ~3
+ tailwindcss: '>3.3.0'
dependencies:
- '@babel/generator': 7.23.6
- '@babel/helper-module-imports': 7.18.6
- '@babel/types': 7.19.0
- css-mediaquery: 0.1.2
- css-to-react-native: 3.2.0
- micromatch: 4.0.5
- postcss: 8.4.33
- postcss-calc: 8.2.4(postcss@8.4.33)
- postcss-color-functional-notation: 4.2.4(postcss@8.4.33)
- postcss-css-variables: 0.18.0(postcss@8.4.33)
- postcss-nested: 5.0.6(postcss@8.4.33)
- react-is: 18.2.0
+ react-native-css-interop: 0.0.22(@babel/core@7.23.7)(react-native-reanimated@3.3.0)(react-native-safe-area-context@4.8.2)(react-native-svg@13.9.0)(react-native@0.72.6)(react@18.2.0)(tailwindcss@3.3.2)
tailwindcss: 3.3.2(ts-node@10.9.1)
- use-sync-external-store: 1.2.0(react@18.2.0)
transitivePeerDependencies:
+ - '@babel/core'
- react
+ - react-native
+ - react-native-reanimated
+ - react-native-safe-area-context
+ - react-native-svg
+ - supports-color
dev: false
/natural-compare@1.4.0:
@@ -11548,16 +11638,6 @@ packages:
transitivePeerDependencies:
- supports-color
- /postcss-calc@8.2.4(postcss@8.4.33):
- resolution: {integrity: sha512-SmWMSJmB8MRnnULldx0lQIyhSNvuDl9HfrZkaqqE/WHAhToYsAvDq+yAsA/kIyINDszOp3Rh0GFoNuH5Ypsm3Q==}
- peerDependencies:
- postcss: ^8.2.2
- dependencies:
- postcss: 8.4.33
- postcss-selector-parser: 6.0.15
- postcss-value-parser: 4.2.0
- dev: false
-
/postcss-calc@9.0.1(postcss@8.4.33):
resolution: {integrity: sha512-TipgjGyzP5QzEhsOZUaIkeO5mKeMFpebWzRogWG/ysonUlnHcq5aJe0jOjpfzUU8PeSaBQnrE8ehR0QA5vs8PQ==}
engines: {node: ^14 || ^16 || >=18.0}
@@ -11568,16 +11648,6 @@ packages:
postcss-selector-parser: 6.0.15
postcss-value-parser: 4.2.0
- /postcss-color-functional-notation@4.2.4(postcss@8.4.33):
- resolution: {integrity: sha512-2yrTAUZUab9s6CpxkxC4rVgFEVaR6/2Pipvi6qcgvnYiVqZcbDHEoBDhrXzyb7Efh2CCfHQNtcqWcIruDTIUeg==}
- engines: {node: ^12 || ^14 || >=16}
- peerDependencies:
- postcss: ^8.2
- dependencies:
- postcss: 8.4.33
- postcss-value-parser: 4.2.0
- dev: false
-
/postcss-colormin@6.0.2(postcss@8.4.33):
resolution: {integrity: sha512-TXKOxs9LWcdYo5cgmcSHPkyrLAh86hX1ijmyy6J8SbOhyv6ua053M3ZAM/0j44UsnQNIWdl8gb5L7xX2htKeLw==}
engines: {node: ^14 || ^16 || >=18.0}
@@ -11600,17 +11670,6 @@ packages:
postcss: 8.4.33
postcss-value-parser: 4.2.0
- /postcss-css-variables@0.18.0(postcss@8.4.33):
- resolution: {integrity: sha512-lYS802gHbzn1GI+lXvy9MYIYDuGnl1WB4FTKoqMQqJ3Mab09A7a/1wZvGTkCEZJTM8mSbIyb1mJYn8f0aPye0Q==}
- peerDependencies:
- postcss: ^8.2.6
- dependencies:
- balanced-match: 1.0.2
- escape-string-regexp: 1.0.5
- extend: 3.0.2
- postcss: 8.4.33
- dev: false
-
/postcss-discard-comments@6.0.1(postcss@8.4.33):
resolution: {integrity: sha512-f1KYNPtqYLUeZGCHQPKzzFtsHaRuECe6jLakf/RjSRqvF5XHLZnM2+fXLhb8Qh/HBFHs3M4cSLb1k3B899RYIg==}
engines: {node: ^14 || ^16 || >=18.0}
@@ -11806,16 +11865,6 @@ packages:
icss-utils: 5.1.0(postcss@8.4.33)
postcss: 8.4.33
- /postcss-nested@5.0.6(postcss@8.4.33):
- resolution: {integrity: sha512-rKqm2Fk0KbA8Vt3AdGN0FB9OBOMDVajMG6ZCf/GoHgdxUJ4sBFp0A/uMIRm+MJUdo33YXEtjqIz8u7DAp8B7DA==}
- engines: {node: '>=12.0'}
- peerDependencies:
- postcss: ^8.2.14
- dependencies:
- postcss: 8.4.33
- postcss-selector-parser: 6.0.15
- dev: false
-
/postcss-nested@6.0.1(postcss@8.4.33):
resolution: {integrity: sha512-mEp4xPMi5bSWiMbsgoPfcP74lsWLHkQbZc3sY+jWYd65CUwXrUaTp0fmNpa01ZcETKlIgUdFN/MpS2xZtqL9dQ==}
engines: {node: '>=12.0'}
@@ -11989,6 +12038,12 @@ packages:
fast-diff: 1.3.0
dev: true
+ /prettier@2.8.8:
+ resolution: {integrity: sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==}
+ engines: {node: '>=10.13.0'}
+ hasBin: true
+ dev: false
+
/prettier@3.2.4:
resolution: {integrity: sha512-FWu1oLHKCrtpO1ypU6J0SbK2d9Ckwysq6bHj/uaCP26DxrPpppCLQRGVuqAxSTvhF00AcvDRyYrLNW7ocBhFFQ==}
engines: {node: '>=14'}
@@ -12259,6 +12314,38 @@ packages:
/react-is@18.2.0:
resolution: {integrity: sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==}
+ /react-native-css-interop@0.0.22(@babel/core@7.23.7)(react-native-reanimated@3.3.0)(react-native-safe-area-context@4.8.2)(react-native-svg@13.9.0)(react-native@0.72.6)(react@18.2.0)(tailwindcss@3.3.2):
+ resolution: {integrity: sha512-JHLYHlLEqM13dy0XSxIPOWvqmQkPrqUt+KHPkbLV0sIiw/4aN6B5TPsNKZFX9bJJaZ//dAECn782R0MqDrTBWQ==}
+ engines: {node: '>=16'}
+ peerDependencies:
+ react: '>=18'
+ react-native: '*'
+ react-native-reanimated: '>=3.3.0'
+ react-native-safe-area-context: '*'
+ react-native-svg: '*'
+ tailwindcss: ~3
+ peerDependenciesMeta:
+ react-native-safe-area-context:
+ optional: true
+ react-native-svg:
+ optional: true
+ dependencies:
+ '@babel/helper-module-imports': 7.22.15
+ '@babel/traverse': 7.23.7
+ '@babel/types': 7.23.6
+ babel-plugin-tester: 11.0.4(@babel/core@7.23.7)
+ lightningcss: 1.22.0
+ react: 18.2.0
+ react-native: 0.72.6(@babel/core@7.23.7)(@babel/preset-env@7.23.8)(react@18.2.0)
+ react-native-reanimated: 3.3.0(@babel/core@7.23.7)(@babel/plugin-proposal-nullish-coalescing-operator@7.18.6)(@babel/plugin-proposal-optional-chaining@7.21.0)(@babel/plugin-transform-arrow-functions@7.23.3)(@babel/plugin-transform-shorthand-properties@7.23.3)(@babel/plugin-transform-template-literals@7.23.3)(react-native@0.72.6)(react@18.2.0)
+ react-native-safe-area-context: 4.8.2(react-native@0.72.6)(react@18.2.0)
+ react-native-svg: 13.9.0(react-native@0.72.6)(react@18.2.0)
+ tailwindcss: 3.3.2(ts-node@10.9.1)
+ transitivePeerDependencies:
+ - '@babel/core'
+ - supports-color
+ dev: false
+
/react-native-gesture-handler@2.14.1(react-native@0.72.6)(react@18.2.0):
resolution: {integrity: sha512-YiM1BApV4aKeuwsM6O4C2ufwewYEKk6VMXOt0YqEZFMwABBFWhXLySFZYjBSNRU2USGppJbfHP1q1DfFQpKhdA==}
peerDependencies:
@@ -12274,6 +12361,32 @@ packages:
react-native: 0.72.6(@babel/core@7.23.7)(@babel/preset-env@7.23.8)(react@18.2.0)
dev: false
+ /react-native-reanimated@3.3.0(@babel/core@7.23.7)(@babel/plugin-proposal-nullish-coalescing-operator@7.18.6)(@babel/plugin-proposal-optional-chaining@7.21.0)(@babel/plugin-transform-arrow-functions@7.23.3)(@babel/plugin-transform-shorthand-properties@7.23.3)(@babel/plugin-transform-template-literals@7.23.3)(react-native@0.72.6)(react@18.2.0):
+ resolution: {integrity: sha512-LzfpPZ1qXBGy5BcUHqw3pBC0qSd22qXS3t8hWSbozXNrBkzMhhOrcILE/nEg/PHpNNp1xvGOW8NwpAMF006roQ==}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+ '@babel/plugin-proposal-nullish-coalescing-operator': ^7.0.0-0
+ '@babel/plugin-proposal-optional-chaining': ^7.0.0-0
+ '@babel/plugin-transform-arrow-functions': ^7.0.0-0
+ '@babel/plugin-transform-shorthand-properties': ^7.0.0-0
+ '@babel/plugin-transform-template-literals': ^7.0.0-0
+ react: '*'
+ react-native: '*'
+ dependencies:
+ '@babel/core': 7.23.7
+ '@babel/plugin-proposal-nullish-coalescing-operator': 7.18.6(@babel/core@7.23.7)
+ '@babel/plugin-proposal-optional-chaining': 7.21.0(@babel/core@7.23.7)
+ '@babel/plugin-transform-arrow-functions': 7.23.3(@babel/core@7.23.7)
+ '@babel/plugin-transform-object-assign': 7.23.3(@babel/core@7.23.7)
+ '@babel/plugin-transform-shorthand-properties': 7.23.3(@babel/core@7.23.7)
+ '@babel/plugin-transform-template-literals': 7.23.3(@babel/core@7.23.7)
+ '@babel/preset-typescript': 7.23.3(@babel/core@7.23.7)
+ convert-source-map: 2.0.0
+ invariant: 2.2.4
+ react: 18.2.0
+ react-native: 0.72.6(@babel/core@7.23.7)(@babel/preset-env@7.23.8)(react@18.2.0)
+ dev: false
+
/react-native-safe-area-context@4.8.2(react-native@0.72.6)(react@18.2.0):
resolution: {integrity: sha512-ffUOv8BJQ6RqO3nLml5gxJ6ab3EestPiyWekxdzO/1MQ7NF8fW1Mzh1C5QE9yq573Xefnc7FuzGXjtesZGv7cQ==}
peerDependencies: