create-expo-stack 2.7.0-next.e19c886 → 2.7.0-next.e4d108e

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -200,13 +200,6 @@ Thanks go to these wonderful people:
200
200
  <sub><b>Null</b></sub>
201
201
  </a>
202
202
  </td>
203
- <td align="center">
204
- <a href="https://github.com/mrzachnugent">
205
- <img src="https://avatars.githubusercontent.com/u/63797719?v=4" width="100;" alt="mrzachnugent"/>
206
- <br />
207
- <sub><b>Zach Nugent</b></sub>
208
- </a>
209
- </td>
210
203
  <td align="center">
211
204
  <a href="https://github.com/coyksdev">
212
205
  <img src="https://avatars.githubusercontent.com/u/19565694?v=4" width="100;" alt="coyksdev"/>
@@ -220,15 +213,15 @@ Thanks go to these wonderful people:
220
213
  <br />
221
214
  <sub><b>Andrew Levy</b></sub>
222
215
  </a>
223
- </td></tr>
224
- <tr>
216
+ </td>
225
217
  <td align="center">
226
218
  <a href="https://github.com/gialencar">
227
219
  <img src="https://avatars.githubusercontent.com/u/11895696?v=4" width="100;" alt="gialencar"/>
228
220
  <br />
229
221
  <sub><b>Gilson Alencar</b></sub>
230
222
  </a>
231
- </td>
223
+ </td></tr>
224
+ <tr>
232
225
  <td align="center">
233
226
  <a href="https://github.com/mwarger">
234
227
  <img src="https://avatars.githubusercontent.com/u/686823?v=4" width="100;" alt="mwarger"/>
@@ -263,15 +256,15 @@ Thanks go to these wonderful people:
263
256
  <br />
264
257
  <sub><b>Joar Karlsson</b></sub>
265
258
  </a>
266
- </td></tr>
267
- <tr>
259
+ </td>
268
260
  <td align="center">
269
261
  <a href="https://github.com/Joehoel">
270
262
  <img src="https://avatars.githubusercontent.com/u/31251240?v=4" width="100;" alt="Joehoel"/>
271
263
  <br />
272
264
  <sub><b>Joël Kuijper</b></sub>
273
265
  </a>
274
- </td>
266
+ </td></tr>
267
+ <tr>
275
268
  <td align="center">
276
269
  <a href="https://github.com/asapMaki">
277
270
  <img src="https://avatars.githubusercontent.com/u/30200380?v=4" width="100;" alt="asapMaki"/>
@@ -27,8 +27,6 @@
27
27
  "expo-dev-client": "~3.3.8",
28
28
  "tailwind-merge": "^2.2.1",
29
29
  "react-native-uitextview": "^1.1.4",
30
- "react-native-pager-view": "6.2.3",
31
- "react-native-tab-view": "^3.5.2",
32
30
  <% } %>
33
31
 
34
32
  <% if (props.stylingPackage?.name === "restyle") { %>
@@ -1,43 +1,43 @@
1
1
  import '@/global.css';
2
2
  import 'expo-dev-client';
3
+ import 'react-native-gesture-handler';
4
+
5
+ import { ThemeToggle } from '@/components/ThemeToggle';
6
+ import { useColorScheme } from '@/lib/useColorScheme';
7
+ import { cn } from '@/lib/utils';
8
+ import { NAV_THEME } from '@/theme';
9
+ // import { ActionSheetProvider } from '@expo/react-native-action-sheet';
10
+ // import { BottomSheetModalProvider } from '@gorhom/bottom-sheet';
3
11
  import { ThemeProvider as NavThemeProvider } from '@react-navigation/native';
4
12
  import { Icon } from '@roninoss/icons';
5
13
  import { Link, Stack } from 'expo-router';
6
- import { StatusBar } from 'expo-status-bar';
7
14
  import { Pressable, View } from 'react-native';
8
15
  import { GestureHandlerRootView } from 'react-native-gesture-handler';
9
16
 
10
- import { ThemeToggle } from '@/components/ThemeToggle';
11
- import { cn } from '@/lib/cn';
12
- import { useColorScheme } from '@/lib/useColorScheme';
13
- import { NAV_THEME } from '@/theme';
14
-
15
17
  export {
16
18
  // Catch any errors thrown by the Layout component.
17
19
  ErrorBoundary,
18
20
  } from 'expo-router';
19
21
 
20
22
  export default function RootLayout() {
21
- const { colorScheme, isDarkColorScheme } = useColorScheme();
23
+ const { colorScheme } = useColorScheme();
22
24
 
23
25
  return (
24
- <>
25
- <StatusBar
26
- key={`root-status-bar-${isDarkColorScheme ? 'light' : 'dark'}`}
27
- style={isDarkColorScheme ? 'light' : 'dark'}
28
- />
29
- <GestureHandlerRootView style={{ flex: 1 }}>
30
- <NavThemeProvider value={NAV_THEME[colorScheme]}>
31
- <Stack screenOptions={SCREEN_OPTIONS}>
32
- <Stack.Screen name="index" options={INDEX_OPTIONS} />
33
- <Stack.Screen name="top-tabs" options={TOP_TABS_OPTIONS} />
34
- <Stack.Screen name="drawer" options={DEFAULT_OPTIONS} />
35
- <Stack.Screen name="bottom-tabs" options={DEFAULT_OPTIONS} />
36
- <Stack.Screen name="modal" options={MODAL_OPTIONS} />
37
- </Stack>
38
- </NavThemeProvider>
39
- </GestureHandlerRootView>
40
- </>
26
+ <GestureHandlerRootView style={{ flex: 1 }}>
27
+ {/* <BottomSheetModalProvider>
28
+ <ActionSheetProvider> */}
29
+ <NavThemeProvider value={NAV_THEME[colorScheme]}>
30
+ <Stack screenOptions={SCREEN_OPTIONS}>
31
+ <Stack.Screen name='index' options={INDEX_OPTIONS} />
32
+ <Stack.Screen name='top-tabs' options={TOP_TABS_OPTIONS} />
33
+ <Stack.Screen name='drawer' options={DEFAULT_OPTIONS} />
34
+ <Stack.Screen name='bottom-tabs' options={DEFAULT_OPTIONS} />
35
+ <Stack.Screen name='modal' options={MODAL_OPTIONS} />
36
+ </Stack>
37
+ </NavThemeProvider>
38
+ {/* </ActionSheetProvider>
39
+ </BottomSheetModalProvider> */}
40
+ </GestureHandlerRootView>
41
41
  );
42
42
  }
43
43
 
@@ -54,11 +54,11 @@ const INDEX_OPTIONS = {
54
54
  function SettingsIcon() {
55
55
  const { colors } = useColorScheme();
56
56
  return (
57
- <Link href="/modal" asChild>
58
- <Pressable className="opacity-80">
57
+ <Link href='/modal' asChild>
58
+ <Pressable className='opacity-80'>
59
59
  {({ pressed }) => (
60
60
  <View className={cn(pressed ? 'opacity-50' : 'opacity-90')}>
61
- <Icon name="cog-outline" color={colors.foreground} />
61
+ <Icon name='cog-outline' color={colors.foreground} />
62
62
  </View>
63
63
  )}
64
64
  </Pressable>
@@ -1,147 +1,187 @@
1
- import { Icon } from '@roninoss/icons';
2
- import { Link } from 'expo-router';
3
- import * as React from 'react';
4
- import { FlatList, Pressable, View } from 'react-native';
5
1
 
6
2
  import { Text } from '@/components/Text';
7
3
  import { Toggle } from '@/components/Toggle';
8
- import { cn } from '@/lib/cn';
9
4
  import { useColorScheme } from '@/lib/useColorScheme';
10
5
  import { useHeaderSearchBar } from '@/lib/useHeaderSearchBar';
6
+ import { cn } from '@/lib/utils';
7
+ import { Icon } from '@roninoss/icons';
8
+ import { Link } from 'expo-router';
9
+ import { StatusBar } from 'expo-status-bar';
10
+ import * as React from 'react';
11
+ import {
12
+ ButtonProps,
13
+ FlatList,
14
+ Platform,
15
+ Pressable,
16
+ Button as RNButton,
17
+ View,
18
+ } from 'react-native';
11
19
 
12
20
  export default function Screen() {
13
- const { colors } = useColorScheme();
21
+ const { colorScheme, colors } = useColorScheme();
14
22
  const searchValue = useHeaderSearchBar();
15
23
 
16
24
  const data = searchValue
17
- ? COMPONENTS.filter((c) => c.name.toLowerCase().includes(searchValue.toLowerCase()))
25
+ ? COMPONENTS.filter((c) =>
26
+ c.name.toLowerCase().includes(searchValue.toLowerCase())
27
+ )
18
28
  : COMPONENTS;
19
29
 
20
30
  const screens = searchValue
21
- ? FULL_SCREEN_COMPONENTS.filter((c) => c.name.toLowerCase().includes(searchValue.toLowerCase()))
31
+ ? FULL_SCREEN_COMPONENTS.filter((c) =>
32
+ c.name.toLowerCase().includes(searchValue.toLowerCase())
33
+ )
22
34
  : FULL_SCREEN_COMPONENTS;
23
35
 
24
36
  return (
25
- <FlatList
26
- contentInsetAdjustmentBehavior="automatic"
27
- data={data}
28
- contentContainerClassName="py-4"
29
- extraData={searchValue}
30
- removeClippedSubviews={false} // used for selecting text on android
31
- keyExtractor={(item) => item.name}
32
- ItemSeparatorComponent={() => <View className="p-2" />}
33
- renderItem={({ item }) => {
34
- return (
35
- <Card title={item.name}>
36
- <item.component />
37
- </Card>
38
- );
39
- }}
40
- ListFooterComponent={() => {
41
- return (
42
- <FlatList
43
- ListHeaderComponent={() => (
44
- <View className={cn('px-4 pb-2 pt-6', screens.length === 0 && 'hidden')}>
45
- <Text className="text-xs font-semibold opacity-50 ">NAVIGATORS</Text>
46
- </View>
47
- )}
48
- scrollToOverflowEnabled
49
- scrollEnabled={false}
50
- contentInsetAdjustmentBehavior="automatic"
51
- data={screens}
52
- className="ios:px-4"
53
- extraData={searchValue}
54
- keyExtractor={(item) => item.name}
55
- renderItem={({ index, item }) => {
56
- const isLast = index === screens.length - 1;
57
- return (
58
- <Link href={item.href} asChild>
59
- <Pressable
60
- className={cn(
61
- index === 0 && 'ios:rounded-t-xl border-t',
62
- isLast && 'ios:rounded-b-xl border-b',
63
- 'bg-card ios:border-l ios:border-r border-border flex-row active:opacity-80'
64
- )}>
65
- <View
37
+ <>
38
+ <StatusBar style={colorScheme === 'dark' ? 'light' : 'dark'} />
39
+ <FlatList
40
+ contentInsetAdjustmentBehavior='automatic'
41
+ data={data}
42
+ contentContainerClassName='py-4'
43
+ extraData={searchValue}
44
+ removeClippedSubviews={false} // used for selecting text on android
45
+ keyExtractor={(item) => item.name}
46
+ ItemSeparatorComponent={() => <View className='p-2' />}
47
+ renderItem={({ item }) => {
48
+ return (
49
+ <Card title={item.name}>
50
+ <item.component />
51
+ </Card>
52
+ );
53
+ }}
54
+ ListFooterComponent={() => {
55
+ return (
56
+ <FlatList
57
+ ListHeaderComponent={() => (
58
+ <View
59
+ className={cn(
60
+ 'pt-6 pb-2 px-4',
61
+ screens.length === 0 && 'hidden'
62
+ )}
63
+ >
64
+ <Text className='text-xs font-semibold opacity-50 '>
65
+ NAVIGATORS
66
+ </Text>
67
+ </View>
68
+ )}
69
+ scrollToOverflowEnabled={true}
70
+ scrollEnabled={false}
71
+ contentInsetAdjustmentBehavior='automatic'
72
+ data={screens}
73
+ className='ios:px-4'
74
+ extraData={searchValue}
75
+ keyExtractor={(item) => item.name}
76
+ renderItem={({ index, item }) => {
77
+ const isLast = index === screens.length - 1;
78
+ return (
79
+ <Link href={item.href} asChild>
80
+ <Pressable
66
81
  className={cn(
67
- !isLast && 'border-border border-b',
68
- 'flex-1 flex-row items-center justify-between px-4 py-3'
69
- )}>
70
- <Text>{item.name}</Text>
71
- <Icon name="chevron-right" size={18} color={colors.grey} />
72
- </View>
73
- </Pressable>
74
- </Link>
75
- );
76
- }}
77
- />
78
- );
79
- }}
80
- />
82
+ index === 0 && 'ios:rounded-t-xl border-t',
83
+ isLast && 'ios:rounded-b-xl border-b',
84
+ 'bg-card flex-row active:opacity-80 ios:border-l ios:border-r border-border'
85
+ )}
86
+ >
87
+ <View
88
+ className={cn(
89
+ !isLast && 'border-b border-border',
90
+ 'flex-1 flex-row items-center justify-between py-3 px-4'
91
+ )}
92
+ >
93
+ <Text>{item.name}</Text>
94
+ <Icon
95
+ name='chevron-right'
96
+ size={18}
97
+ color={colors.grey}
98
+ />
99
+ </View>
100
+ </Pressable>
101
+ </Link>
102
+ );
103
+ }}
104
+ />
105
+ );
106
+ }}
107
+ />
108
+ </>
81
109
  );
82
110
  }
83
111
 
84
- function Card({ children, title }: { children: React.ReactNode; title: string }) {
112
+ function Card({
113
+ children,
114
+ title,
115
+ }: {
116
+ children: React.ReactNode;
117
+ title: string;
118
+ }) {
85
119
  return (
86
- <View className="px-4">
87
- <View className="bg-card border-border gap-4 rounded-xl border p-4 pb-6 shadow-sm shadow-black/10 dark:shadow-none">
88
- <Text className="text-center text-sm font-medium tracking-wider opacity-60">{title}</Text>
120
+ <View className='px-4'>
121
+ <View className='bg-card gap-4 rounded-xl border border-border p-4 pb-6 shadow-sm shadow-black/10 dark:shadow-none'>
122
+ <Text className='text-center text-sm tracking-wider font-medium opacity-60'>
123
+ {title}
124
+ </Text>
89
125
  {children}
90
126
  </View>
91
127
  </View>
92
128
  );
93
129
  }
94
130
 
95
- function ToggleExample() {
96
- const [switchValue, setSwitchValue] = React.useState(true);
97
- return (
98
- <View className="items-center">
99
- <Toggle value={switchValue} onValueChange={setSwitchValue} />
100
- </View>
101
- );
131
+ function Button({ color, ...props }: ButtonProps) {
132
+ const { colors } = useColorScheme();
133
+ return <RNButton color={color ?? colors.blue} {...props} />;
102
134
  }
103
135
 
104
136
  const COMPONENTS = [
105
137
  {
106
138
  name: 'Toggle',
107
- component: ToggleExample,
139
+ component: () => {
140
+ const [switchValue, setSwitchValue] = React.useState(true);
141
+
142
+ return (
143
+ <View className='items-center'>
144
+ <Toggle value={switchValue} onValueChange={setSwitchValue} />
145
+ </View>
146
+ );
147
+ },
108
148
  },
109
149
 
110
150
  {
111
151
  name: 'Text',
112
152
  component: () => (
113
- <View className="gap-2">
114
- <Text variant="largeTitle" className="text-center">
153
+ <View className='gap-2'>
154
+ <Text variant='largeTitle' className='text-center'>
115
155
  Large Title
116
156
  </Text>
117
- <Text variant="title1" className="text-center">
157
+ <Text variant='title1' className='text-center'>
118
158
  Title 1
119
159
  </Text>
120
- <Text variant="title2" className="text-center">
160
+ <Text variant='title2' className='text-center'>
121
161
  Title 2
122
162
  </Text>
123
- <Text variant="title3" className="text-center">
163
+ <Text variant='title3' className='text-center'>
124
164
  Title 3
125
165
  </Text>
126
- <Text variant="heading" className="text-center">
166
+ <Text variant='heading' className='text-center'>
127
167
  Heading
128
168
  </Text>
129
- <Text variant="body" className="text-center">
169
+ <Text variant='body' className='text-center'>
130
170
  Body
131
171
  </Text>
132
- <Text variant="callout" className="text-center">
172
+ <Text variant='callout' className='text-center'>
133
173
  Callout
134
174
  </Text>
135
- <Text variant="subhead" className="text-center">
175
+ <Text variant='subhead' className='text-center'>
136
176
  Subhead
137
177
  </Text>
138
- <Text variant="footnote" className="text-center">
178
+ <Text variant='footnote' className='text-center'>
139
179
  Footnote
140
180
  </Text>
141
- <Text variant="caption1" className="text-center">
181
+ <Text variant='caption1' className='text-center'>
142
182
  Caption 1
143
183
  </Text>
144
- <Text variant="caption2" className="text-center">
184
+ <Text variant='caption2' className='text-center'>
145
185
  Caption 2
146
186
  </Text>
147
187
  </View>
@@ -149,7 +189,16 @@ const COMPONENTS = [
149
189
  },
150
190
  ] as const;
151
191
 
152
- const FULL_SCREEN_COMPONENTS = [
192
+ const FULL_SCREEN_COMPONENTS = Platform.OS === 'ios' ? [
193
+ {
194
+ name: 'Drawer Navigation',
195
+ href: '/drawer/',
196
+ },
197
+ {
198
+ name: 'Bottom Tabs Navigation',
199
+ href: '/bottom-tabs/',
200
+ },
201
+ ] : [
153
202
  {
154
203
  name: 'Drawer Navigation',
155
204
  href: '/drawer/',
@@ -1,10 +1,9 @@
1
+ import { cn } from '@/lib/utils';
1
2
  import { VariantProps, cva } from 'class-variance-authority';
2
3
  import { cssInterop } from 'nativewind';
3
4
  import * as React from 'react';
4
5
  import { UITextView } from 'react-native-uitextview';
5
6
 
6
- import { cn } from '@/lib/cn';
7
-
8
7
  cssInterop(UITextView, { className: 'style' });
9
8
 
10
9
  const textVariants = cva('text-foreground', {
@@ -42,7 +41,8 @@ function Text({
42
41
  variant,
43
42
  color,
44
43
  ...props
45
- }: React.ComponentPropsWithoutRef<typeof UITextView> & VariantProps<typeof textVariants>) {
44
+ }: React.ComponentPropsWithoutRef<typeof UITextView> &
45
+ VariantProps<typeof textVariants>) {
46
46
  const textClassName = React.useContext(TextClassContext);
47
47
  return (
48
48
  <UITextView
@@ -1,35 +1,49 @@
1
- import { Icon } from '@roninoss/icons';
2
- import { Appearance, Pressable, View } from 'react-native';
3
- import Animated, { LayoutAnimationConfig, ZoomInRotate } from 'react-native-reanimated';
4
-
5
- import { cn } from '@/lib/cn';
6
1
  import { useColorScheme } from '@/lib/useColorScheme';
2
+ import { cn } from '@/lib/utils';
7
3
  import { COLORS } from '@/theme/colors';
4
+ import { Icon } from '@roninoss/icons';
5
+ import { Appearance, Pressable, View } from 'react-native';
6
+ import Animated, {
7
+ LayoutAnimationConfig,
8
+ ZoomInRotate,
9
+ } from 'react-native-reanimated';
8
10
 
9
11
  export function ThemeToggle() {
10
12
  const { colorScheme, toggleColorScheme } = useColorScheme();
11
13
  return (
12
14
  <LayoutAnimationConfig skipEntering>
13
15
  <Animated.View
14
- className="h-6 w-6 items-center justify-center"
16
+ className='h-6 w-6 items-center justify-center'
15
17
  key={`toggle-${colorScheme}`}
16
- entering={ZoomInRotate}>
18
+ entering={ZoomInRotate}
19
+ >
17
20
  <Pressable
18
21
  onPress={() => {
19
22
  // ColorScheme is set with `Appearance` as well for the iOS header search placeholder text: https://github.com/software-mansion/react-native-screens/discussions/1758
20
- Appearance.setColorScheme(colorScheme === 'dark' ? 'light' : 'dark');
23
+ Appearance.setColorScheme(
24
+ colorScheme === 'dark' ? 'light' : 'dark'
25
+ );
21
26
  toggleColorScheme();
22
27
  }}
23
- className="opacity-80">
28
+ className='opacity-80'
29
+ >
24
30
  {colorScheme === 'dark'
25
31
  ? ({ pressed }) => (
26
32
  <View className={cn('px-0.5', pressed && 'opacity-50')}>
27
- <Icon namingScheme="sfSymbol" name="moon.stars" color={COLORS.white} />
33
+ <Icon
34
+ namingScheme='sfSymbol'
35
+ name='moon.stars'
36
+ color={COLORS.white}
37
+ />
28
38
  </View>
29
39
  )
30
40
  : ({ pressed }) => (
31
41
  <View className={cn('px-0.5', pressed && 'opacity-50')}>
32
- <Icon namingScheme="sfSymbol" name="sun.min" color={COLORS.black} />
42
+ <Icon
43
+ namingScheme='sfSymbol'
44
+ name='sun.min'
45
+ color={COLORS.black}
46
+ />
33
47
  </View>
34
48
  )}
35
49
  </Pressable>
@@ -1,14 +1,14 @@
1
- import { useColorScheme as useNativewindColorScheme } from 'nativewind';
2
-
3
1
  import { COLORS } from '@/theme/colors';
2
+ import { useColorScheme as useNativewindColorScheme } from 'nativewind';
4
3
 
5
4
  export function useColorScheme() {
6
- const { colorScheme, setColorScheme, toggleColorScheme } = useNativewindColorScheme();
5
+ const { colorScheme, setColorScheme, toggleColorScheme } =
6
+ useNativewindColorScheme();
7
7
  return {
8
- colorScheme: colorScheme ?? 'light',
8
+ colorScheme: colorScheme,
9
9
  isDarkColorScheme: colorScheme === 'dark',
10
10
  setColorScheme,
11
11
  toggleColorScheme,
12
- colors: COLORS[colorScheme ?? 'light'],
12
+ colors: COLORS[colorScheme],
13
13
  };
14
14
  }
@@ -1,7 +1,6 @@
1
1
  const { getDefaultConfig } = require('expo/metro-config');
2
2
  const { withNativeWind } = require('nativewind/metro');
3
3
 
4
- // eslint-disable-next-line no-undef
5
4
  const config = getDefaultConfig(__dirname);
6
5
 
7
6
  module.exports = withNativeWind(config, {
@@ -8,38 +8,95 @@ module.exports = {
8
8
  theme: {
9
9
  extend: {
10
10
  colors: {
11
- border: withOpacity('border'),
12
- input: withOpacity('input'),
13
- ring: withOpacity('ring'),
14
- background: withOpacity('background'),
15
- foreground: withOpacity('foreground'),
11
+ border: platformSelect({
12
+ ios: 'rgb(var(--border))',
13
+ android: 'rgb(var(--android-border))',
14
+ }),
15
+ input: platformSelect({
16
+ ios: 'rgb(var(--input))',
17
+ android: 'rgb(var(--android-input))',
18
+ }),
19
+ ring: platformSelect({
20
+ ios: 'rgb(var(--ring))',
21
+ android: 'rgb(var(--android-ring))',
22
+ }),
23
+ background: platformSelect({
24
+ ios: 'rgb(var(--background))',
25
+ android: 'rgb(var(--android-background))',
26
+ }),
27
+ foreground: platformSelect({
28
+ ios: 'rgb(var(--foreground))',
29
+ android: 'rgb(var(--android-foreground))',
30
+ }),
16
31
  primary: {
17
- DEFAULT: withOpacity('primary'),
18
- foreground: withOpacity('primary-foreground'),
32
+ DEFAULT: platformSelect({
33
+ ios: 'rgb(var(--primary))',
34
+ android: 'rgb(var(--android-primary))',
35
+ }),
36
+ foreground: platformSelect({
37
+ ios: 'rgb(var(--primary-foreground))',
38
+ android: 'rgb(var(--android-primary-foreground))',
39
+ }),
19
40
  },
20
41
  secondary: {
21
- DEFAULT: withOpacity('secondary'),
22
- foreground: withOpacity('secondary-foreground'),
42
+ DEFAULT: platformSelect({
43
+ ios: 'rgb(var(--secondary))',
44
+ android: 'rgb(var(--android-secondary))',
45
+ }),
46
+ foreground: platformSelect({
47
+ ios: 'rgb(var(--secondary-foreground))',
48
+ android: 'rgb(var(--android-secondary-foreground))',
49
+ }),
23
50
  },
24
51
  destructive: {
25
- DEFAULT: withOpacity('destructive'),
26
- foreground: withOpacity('destructive-foreground'),
52
+ DEFAULT: platformSelect({
53
+ ios: 'rgb(var(--destructive))',
54
+ android: 'rgb(var(--android-destructive))',
55
+ }),
56
+ foreground: platformSelect({
57
+ ios: 'rgb(var(--destructive-foreground))',
58
+ android: 'rgb(var(--android-destructive-foreground))',
59
+ }),
27
60
  },
28
61
  muted: {
29
- DEFAULT: withOpacity('muted'),
30
- foreground: withOpacity('muted-foreground'),
62
+ DEFAULT: platformSelect({
63
+ ios: 'rgb(var(--muted))',
64
+ android: 'rgb(var(--android-muted))',
65
+ }),
66
+ foreground: platformSelect({
67
+ ios: 'rgb(var(--muted-foreground))',
68
+ android: 'rgb(var(--android-muted-foreground))',
69
+ }),
31
70
  },
32
71
  accent: {
33
- DEFAULT: withOpacity('accent'),
34
- foreground: withOpacity('accent-foreground'),
72
+ DEFAULT: platformSelect({
73
+ ios: 'rgb(var(--accent))',
74
+ android: 'rgb(var(--android-accent))',
75
+ }),
76
+ foreground: platformSelect({
77
+ ios: 'rgb(var(--accent-foreground))',
78
+ android: 'rgb(var(--android-accent-foreground))',
79
+ }),
35
80
  },
36
81
  popover: {
37
- DEFAULT: withOpacity('popover'),
38
- foreground: withOpacity('popover-foreground'),
82
+ DEFAULT: platformSelect({
83
+ ios: 'rgb(var(--popover))',
84
+ android: 'rgb(var(--android-popover))',
85
+ }),
86
+ foreground: platformSelect({
87
+ ios: 'rgb(var(--popover-foreground))',
88
+ android: 'rgb(var(--android-popover-foreground))',
89
+ }),
39
90
  },
40
91
  card: {
41
- DEFAULT: withOpacity('card'),
42
- foreground: withOpacity('card-foreground'),
92
+ DEFAULT: platformSelect({
93
+ ios: 'rgb(var(--card))',
94
+ android: 'rgb(var(--android-card))',
95
+ }),
96
+ foreground: platformSelect({
97
+ ios: 'rgb(var(--card-foreground))',
98
+ android: 'rgb(var(--android-card-foreground))',
99
+ }),
43
100
  },
44
101
  },
45
102
  borderWidth: {
@@ -49,18 +106,3 @@ module.exports = {
49
106
  },
50
107
  plugins: [],
51
108
  };
52
-
53
- function withOpacity(variableName) {
54
- return ({ opacityValue }) => {
55
- if (opacityValue !== undefined) {
56
- return platformSelect({
57
- ios: `rgb(var(--${variableName}) / ${opacityValue})`,
58
- android: `rgb(var(--android-${variableName}) / ${opacityValue})`,
59
- });
60
- }
61
- return platformSelect({
62
- ios: `rgb(var(--${variableName}))`,
63
- android: `rgb(var(--android-${variableName}))`,
64
- });
65
- };
66
- }
@@ -60,7 +60,7 @@ function configureProjectFiles(authenticationPackage, files, navigationPackage,
60
60
  'packages/nativewindui/components/Toggle.tsx.ejs',
61
61
  'packages/nativewindui/lib/useColorScheme.tsx.ejs',
62
62
  'packages/nativewindui/lib/useHeaderSearchBar.tsx.ejs',
63
- 'packages/nativewindui/lib/cn.ts.ejs',
63
+ 'packages/nativewindui/lib/utils.ts.ejs',
64
64
  'packages/nativewindui/theme/colors.ts.ejs',
65
65
  'packages/nativewindui/theme/index.ts.ejs',
66
66
  'packages/nativewindui/tailwind.config.js.ejs',
@@ -288,4 +288,4 @@ function configureProjectFiles(authenticationPackage, files, navigationPackage,
288
288
  return files;
289
289
  }
290
290
  exports.configureProjectFiles = configureProjectFiles;
291
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlndXJlUHJvamVjdEZpbGVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3V0aWxpdGllcy9jb25maWd1cmVQcm9qZWN0RmlsZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7O0FBRUEseURBQXdEO0FBRXhELFNBQWdCLHFCQUFxQixDQUNuQyxxQkFBb0QsRUFDcEQsS0FBZSxFQUNmLGlCQUFnRCxFQUNoRCxjQUE2QyxFQUM3QyxPQUFnQixFQUNoQixVQUFzQixFQUN0QixzQkFBcUQ7O0lBRXJELDJEQUEyRDtJQUMzRCxJQUFJLFNBQVMsR0FBRztRQUNkLHdCQUF3QjtRQUN4QixtQkFBbUI7UUFDbkIsa0JBQWtCO1FBQ2xCLDBCQUEwQjtRQUMxQix1QkFBdUI7UUFDdkIscUJBQXFCO1FBQ3JCLDZCQUE2QjtLQUM5QixDQUFDO0lBRUYsSUFBSSxDQUFBLGNBQWMsYUFBZCxjQUFjLHVCQUFkLGNBQWMsQ0FBRSxJQUFJLE1BQUssWUFBWSxFQUFFLENBQUM7UUFDMUMsU0FBUyxHQUFHLFNBQVMsQ0FBQyxNQUFNLENBQUM7WUFDM0IsbUNBQW1DO1lBQ25DLHVDQUF1QztZQUN2Qyx3Q0FBd0M7U0FDekMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELElBQU0sY0FBYyxHQUFHLElBQUEscUNBQWlCLEVBQUMsT0FBTyxFQUFFLFVBQVUsQ0FBQyxDQUFDO0lBQzlELHVEQUF1RDtJQUN2RCxJQUFJLGNBQWMsS0FBSyxNQUFNLElBQUksQ0FBQSxpQkFBaUIsYUFBakIsaUJBQWlCLHVCQUFqQixpQkFBaUIsQ0FBRSxJQUFJLE1BQUssYUFBYSxFQUFFLENBQUM7UUFDM0UsU0FBUyxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO0lBQ3BDLENBQUM7SUFFRCxJQUFNLGlCQUFpQixHQUFHO1FBQ3hCLHdCQUF3QjtRQUN4QixtQkFBbUI7UUFDbkIsMEJBQTBCO1FBQzFCLHVCQUF1QjtRQUN2QixxQkFBcUI7UUFD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
291
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlndXJlUHJvamVjdEZpbGVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3V0aWxpdGllcy9jb25maWd1cmVQcm9qZWN0RmlsZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7O0FBRUEseURBQXdEO0FBRXhELFNBQWdCLHFCQUFxQixDQUNuQyxxQkFBb0QsRUFDcEQsS0FBZSxFQUNmLGlCQUFnRCxFQUNoRCxjQUE2QyxFQUM3QyxPQUFnQixFQUNoQixVQUFzQixFQUN0QixzQkFBcUQ7O0lBRXJELDJEQUEyRDtJQUMzRCxJQUFJLFNBQVMsR0FBRztRQUNkLHdCQUF3QjtRQUN4QixtQkFBbUI7UUFDbkIsa0JBQWtCO1FBQ2xCLDBCQUEwQjtRQUMxQix1QkFBdUI7UUFDdkIscUJBQXFCO1FBQ3JCLDZCQUE2QjtLQUM5QixDQUFDO0lBRUYsSUFBSSxDQUFBLGNBQWMsYUFBZCxjQUFjLHVCQUFkLGNBQWMsQ0FBRSxJQUFJLE1BQUssWUFBWSxFQUFFLENBQUM7UUFDMUMsU0FBUyxHQUFHLFNBQVMsQ0FBQyxNQUFNLENBQUM7WUFDM0IsbUNBQW1DO1lBQ25DLHVDQUF1QztZQUN2Qyx3Q0FBd0M7U0FDekMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELElBQU0sY0FBYyxHQUFHLElBQUEscUNBQWlCLEVBQUMsT0FBTyxFQUFFLFVBQVUsQ0FBQyxDQUFDO0lBQzlELHVEQUF1RDtJQUN2RCxJQUFJLGNBQWMsS0FBSyxNQUFNLElBQUksQ0FBQSxpQkFBaUIsYUFBakIsaUJBQWlCLHVCQUFqQixpQkFBaUIsQ0FBRSxJQUFJLE1BQUssYUFBYSxFQUFFLENBQUM7UUFDM0UsU0FBUyxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO0lBQ3BDLENBQUM7SUFFRCxJQUFNLGlCQUFpQixHQUFHO1FBQ3hCLHdCQUF3QjtRQUN4QixtQkFBbUI7UUFDbkIsMEJBQTBCO1FBQzFCLHVCQUF1QjtRQUN2QixxQkFBcUI7UUFD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
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "create-expo-stack",
3
- "version": "2.7.0-next.e19c886",
3
+ "version": "2.7.0-next.e4d108e",
4
4
  "description": "CLI tool to initialize a React Native application with Expo",
5
5
  "repository": {
6
6
  "type": "git",