create-expo-stack 2.1.9 → 2.1.11
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/build/commands/create-expo-stack.js +9 -5
- package/build/templates/base/App.tsx.ejs +26 -2
- package/build/templates/base/babel.config.js.ejs +11 -1
- package/build/templates/base/package.json.ejs +13 -2
- package/build/templates/packages/expo-router/stack/app/_layout.tsx.ejs +16 -4
- package/build/templates/packages/expo-router/stack/app/details.tsx.ejs +15 -4
- package/build/templates/packages/expo-router/stack/app/index.tsx.ejs +20 -4
- package/build/templates/packages/expo-router/tabs/app/(tabs)/index.tsx.ejs +15 -5
- package/build/templates/packages/expo-router/tabs/app/(tabs)/two.tsx.ejs +14 -4
- package/build/templates/packages/expo-router/tabs/app/_layout.tsx.ejs +10 -0
- package/build/templates/packages/expo-router/tabs/app/modal.tsx.ejs +15 -4
- package/build/templates/packages/expo-router/tabs/components/edit-screen-info.tsx.ejs +22 -4
- package/build/templates/packages/react-navigation/App.tsx.ejs +12 -3
- package/build/templates/packages/react-navigation/components/edit-screen-info.tsx.ejs +3 -3
- package/build/templates/packages/react-navigation/navigation/index.tsx.ejs +10 -4
- package/build/templates/packages/react-navigation/screens/details.tsx.ejs +15 -4
- package/build/templates/packages/react-navigation/screens/modal.tsx.ejs +15 -4
- package/build/templates/packages/react-navigation/screens/one.tsx.ejs +14 -4
- package/build/templates/packages/react-navigation/screens/overview.tsx.ejs +18 -4
- package/build/templates/packages/react-navigation/screens/two.tsx.ejs +14 -4
- package/build/templates/packages/tamagui/tamagui.config.ts.ejs +102 -0
- package/build/types/types.d.ts +1 -1
- package/build/types/utilities/configureProjectFiles.d.ts +1 -1
- package/build/types/utilities/generateProjectFiles.d.ts +1 -1
- package/build/types/utilities/getPackageManager.d.ts +1 -1
- package/build/types.js +2 -2
- package/build/utilities/configureProjectFiles.js +12 -3
- package/build/utilities/generateProjectFiles.js +7 -4
- package/build/utilities/getPackageManager.js +6 -4
- package/build/utilities/printOutput.js +6 -1
- package/build/utilities/runCLI.js +17 -6
- package/build/utilities/runIgnite.js +13 -9
- package/package.json +1 -1
- package/readme.md +14 -14
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import { RouteProp, useRoute } from "@react-navigation/native";
|
|
2
|
-
<% if (props.
|
|
2
|
+
<% if (props.stylingPackage?.name === "nativewind") { %>
|
|
3
3
|
import { View, Text } from "react-native";
|
|
4
|
+
<% } else if (props.stylingPackage?.name === "tamagui") { %>
|
|
5
|
+
import { YStack, H2, Paragraph } from "tamagui";
|
|
4
6
|
<% } else { %>
|
|
5
7
|
import { View, StyleSheet, Text } from "react-native";
|
|
6
8
|
<% } %>
|
|
@@ -10,7 +12,7 @@ type DetailsSreenRouteProp = RouteProp<RootStackParamList, "Details">;
|
|
|
10
12
|
|
|
11
13
|
export default function Details() {
|
|
12
14
|
const router = useRoute<DetailsSreenRouteProp>();
|
|
13
|
-
<% if (props.
|
|
15
|
+
<% if (props.stylingPackage?.name === "nativewind") { %>
|
|
14
16
|
return (
|
|
15
17
|
<View className={styles.container}>
|
|
16
18
|
<View className={styles.main}>
|
|
@@ -19,6 +21,15 @@ export default function Details() {
|
|
|
19
21
|
</View>
|
|
20
22
|
</View>
|
|
21
23
|
);
|
|
24
|
+
<% } else if (props.stylingPackage?.name === "tamagui") { %>
|
|
25
|
+
return (
|
|
26
|
+
<YStack flex={1} pt="$2">
|
|
27
|
+
<YStack flex={1} maxWidth={960}>
|
|
28
|
+
<H2>Details</H2>
|
|
29
|
+
<Paragraph>Showing details for user {router.params.name}.</Paragraph>
|
|
30
|
+
</YStack>
|
|
31
|
+
</YStack>
|
|
32
|
+
);
|
|
22
33
|
<% } else { %>
|
|
23
34
|
return (
|
|
24
35
|
<View style={styles.container}>
|
|
@@ -31,14 +42,14 @@ export default function Details() {
|
|
|
31
42
|
<% } %>
|
|
32
43
|
}
|
|
33
44
|
|
|
34
|
-
<% if (props.
|
|
45
|
+
<% if (props.stylingPackage?.name === "nativewind") { %>
|
|
35
46
|
const styles = {
|
|
36
47
|
container: "flex-1 p-6",
|
|
37
48
|
main: "flex-1 max-w-[960]",
|
|
38
49
|
title: "text-[64px] font-bold",
|
|
39
50
|
subtitle: "text-4xl text-gray-700",
|
|
40
51
|
};
|
|
41
|
-
<% } else { %>
|
|
52
|
+
<% } else if (props.stylingPackage?.name === "stylesheet") { %>
|
|
42
53
|
const styles = StyleSheet.create({
|
|
43
54
|
container: {
|
|
44
55
|
flex: 1,
|
|
@@ -1,5 +1,7 @@
|
|
|
1
|
-
<% if (props.
|
|
1
|
+
<% if (props.stylingPackage?.name === "nativewind") { %>
|
|
2
2
|
import { Platform, Text, View } from "react-native";
|
|
3
|
+
<% } else if (props.stylingPackage?.name === "nativewind") { %>
|
|
4
|
+
import { YStack, Paragraph, Separator } from "tamagui";
|
|
3
5
|
<% } else { %>
|
|
4
6
|
import { Platform, StyleSheet, Text, View } from "react-native";
|
|
5
7
|
<% } %>
|
|
@@ -8,7 +10,7 @@ import { StatusBar } from "expo-status-bar";
|
|
|
8
10
|
import EditScreenInfo from "../components/edit-screen-info";
|
|
9
11
|
|
|
10
12
|
export default function Modal() {
|
|
11
|
-
<% if (props.
|
|
13
|
+
<% if (props.stylingPackage?.name === "nativewind") { %>
|
|
12
14
|
return (
|
|
13
15
|
<View className={styles.container}>
|
|
14
16
|
<StatusBar style={Platform.OS === "ios" ? "light" : "auto"} />
|
|
@@ -17,6 +19,15 @@ export default function Modal() {
|
|
|
17
19
|
<EditScreenInfo path="src/screens/modal.tsx" />
|
|
18
20
|
</View>
|
|
19
21
|
)
|
|
22
|
+
<% } else if (props.stylingPackage?.name === "tamagui") { %>
|
|
23
|
+
return (
|
|
24
|
+
<YStack flex={1} alignItems="center" justifyContent="center">
|
|
25
|
+
<StatusBar style={Platform.OS === "ios" ? "light" : "auto"} />
|
|
26
|
+
<Paragraph>Modal</Paragraph>
|
|
27
|
+
<Separator />
|
|
28
|
+
<EditScreenInfo path="src/screens/modal.tsx" />
|
|
29
|
+
</YStack>
|
|
30
|
+
);
|
|
20
31
|
<% } else { %>
|
|
21
32
|
return (
|
|
22
33
|
<View style={styles.container}>
|
|
@@ -29,13 +40,13 @@ export default function Modal() {
|
|
|
29
40
|
<% } %>
|
|
30
41
|
}
|
|
31
42
|
|
|
32
|
-
<% if (props.
|
|
43
|
+
<% if (props.stylingPackage?.name === "nativewind") { %>
|
|
33
44
|
const styles = {
|
|
34
45
|
container: "items-center flex-1 justify-center",
|
|
35
46
|
separator: "h-[1px] my-7 w-4/5 bg-gray-200",
|
|
36
47
|
title: "text-xl font-bold"
|
|
37
48
|
};
|
|
38
|
-
<% } else { %>
|
|
49
|
+
<% } else if (props.stylingPackage?.name === "stylesheet") { %>
|
|
39
50
|
const styles = StyleSheet.create({
|
|
40
51
|
container: {
|
|
41
52
|
alignItems: "center",
|
|
@@ -1,5 +1,7 @@
|
|
|
1
|
-
<% if (props.
|
|
1
|
+
<% if (props.stylingPackage?.name === "nativewind") { %>
|
|
2
2
|
import { Text, View } from "react-native";
|
|
3
|
+
<% } else if (props.stylingPackage?.name === "tamagui") { %>
|
|
4
|
+
import { YStack, H2, Separator } from "tamagui";
|
|
3
5
|
<% } else { %>
|
|
4
6
|
import { StyleSheet, Text, View } from "react-native";
|
|
5
7
|
<% } %>
|
|
@@ -7,7 +9,7 @@
|
|
|
7
9
|
import EditScreenInfo from "../components/edit-screen-info";
|
|
8
10
|
|
|
9
11
|
export default function TabOneScreen() {
|
|
10
|
-
<% if (props.
|
|
12
|
+
<% if (props.stylingPackage?.name === "nativewind") { %>
|
|
11
13
|
return (
|
|
12
14
|
<View className={styles.container}>
|
|
13
15
|
<Text className={styles.title}>Tab One</Text>
|
|
@@ -15,6 +17,14 @@ export default function TabOneScreen() {
|
|
|
15
17
|
<EditScreenInfo path="src/screens/one.tsx" />
|
|
16
18
|
</View>
|
|
17
19
|
);
|
|
20
|
+
<% } else if (props.stylingPackage?.name === "tamagui") { %>
|
|
21
|
+
return (
|
|
22
|
+
<YStack flex={1} alignItems="center" justifyContent="center">
|
|
23
|
+
<H2>Tab One</H2>
|
|
24
|
+
<Separator />
|
|
25
|
+
<EditScreenInfo path="src/screens/one.tsx" />
|
|
26
|
+
</YStack>
|
|
27
|
+
);
|
|
18
28
|
<% } else { %>
|
|
19
29
|
return (
|
|
20
30
|
<View style={styles.container}>
|
|
@@ -26,13 +36,13 @@ export default function TabOneScreen() {
|
|
|
26
36
|
<% } %>
|
|
27
37
|
}
|
|
28
38
|
|
|
29
|
-
<% if (props.
|
|
39
|
+
<% if (props.stylingPackage?.name === "nativewind") { %>
|
|
30
40
|
const styles = {
|
|
31
41
|
container: "items-center flex-1 justify-center",
|
|
32
42
|
separator: "h-[1px] my-7 w-4/5 bg-gray-200",
|
|
33
43
|
title: "text-xl font-bold"
|
|
34
44
|
};
|
|
35
|
-
<% } else { %>
|
|
45
|
+
<% } else if (props.stylingPackage?.name === "tamagui") { %>
|
|
36
46
|
const styles = StyleSheet.create({
|
|
37
47
|
container: {
|
|
38
48
|
alignItems: "center",
|
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
import { useNavigation } from "@react-navigation/native";
|
|
2
2
|
import { StackNavigationProp } from "@react-navigation/stack";
|
|
3
|
-
<% if (props.
|
|
3
|
+
<% if (props.stylingPackage?.name === "nativewind") { %>
|
|
4
4
|
import { Text, TouchableOpacity, View } from "react-native";
|
|
5
|
+
<% } else if (props.stylingPackage?.name === "tamagui") { %>
|
|
6
|
+
import { YStack, H2, Paragraph, Button } from "tamagui";
|
|
5
7
|
<% } else { %>
|
|
6
8
|
import { StyleSheet, Text, TouchableOpacity, View } from "react-native";
|
|
7
9
|
<% } %>
|
|
@@ -11,7 +13,7 @@ type OverviewScreenNavigationProps = StackNavigationProp<RootStackParamList, "Ov
|
|
|
11
13
|
|
|
12
14
|
export default function Overview() {
|
|
13
15
|
const navigation = useNavigation<OverviewScreenNavigationProps>();
|
|
14
|
-
<% if (props.
|
|
16
|
+
<% if (props.stylingPackage?.name === "nativewind") { %>
|
|
15
17
|
return (
|
|
16
18
|
<View className={styles.container}>
|
|
17
19
|
<View className={styles.main}>
|
|
@@ -25,6 +27,18 @@ export default function Overview() {
|
|
|
25
27
|
</View>
|
|
26
28
|
</View>
|
|
27
29
|
)
|
|
30
|
+
<% } else if (props.stylingPackage?.name === "tamagui") { %>
|
|
31
|
+
return (
|
|
32
|
+
<YStack flex={1} padding="$3">
|
|
33
|
+
<YStack flex={1} mawidth="{960}" justifyContent="space-between">
|
|
34
|
+
<YStack>
|
|
35
|
+
<H2>Hello World</H2>
|
|
36
|
+
<Paragraph>This is the first page of your app.</Paragraph>
|
|
37
|
+
</YStack>
|
|
38
|
+
<Button onPress={() => navigation.navigate("Details", { name: "Dan" })}>Show Details</Button>
|
|
39
|
+
</YStack>
|
|
40
|
+
</YStack>
|
|
41
|
+
)
|
|
28
42
|
<% } else { %>
|
|
29
43
|
return (
|
|
30
44
|
<View style={styles.container}>
|
|
@@ -42,7 +56,7 @@ export default function Overview() {
|
|
|
42
56
|
<% } %>
|
|
43
57
|
}
|
|
44
58
|
|
|
45
|
-
<% if (props.
|
|
59
|
+
<% if (props.stylingPackage?.name === "nativewind") { %>
|
|
46
60
|
const styles = {
|
|
47
61
|
button: "items-center bg-indigo-500 rounded-[28px] shadow-md p-4",
|
|
48
62
|
buttonText: "text-white text-lg font-semibold text-center",
|
|
@@ -51,7 +65,7 @@ export default function Overview() {
|
|
|
51
65
|
title: "text-[64px] font-bold",
|
|
52
66
|
subtitle: "text-4xl text-gray-700",
|
|
53
67
|
};
|
|
54
|
-
<% } else { %>
|
|
68
|
+
<% } else if (props.stylingPackage?.name === "stylesheet") { %>
|
|
55
69
|
const styles = StyleSheet.create({
|
|
56
70
|
button: {
|
|
57
71
|
alignItems: "center",
|
|
@@ -1,5 +1,7 @@
|
|
|
1
|
-
<% if (props.
|
|
1
|
+
<% if (props.stylingPackage?.name === "nativewind") { %>
|
|
2
2
|
import { Text, View } from "react-native";
|
|
3
|
+
<% } else if (props.stylingPackage?.name === "tamagui") { %>
|
|
4
|
+
import { YStack, Text, Separator } from "tamagui";
|
|
3
5
|
<% } else { %>
|
|
4
6
|
import { StyleSheet, Text, View } from "react-native";
|
|
5
7
|
<% } %>
|
|
@@ -7,7 +9,7 @@
|
|
|
7
9
|
import EditScreenInfo from "../components/edit-screen-info";
|
|
8
10
|
|
|
9
11
|
export default function TabOneScreen() {
|
|
10
|
-
<% if (props.
|
|
12
|
+
<% if (props.stylingPackage?.name === "nativewind") { %>
|
|
11
13
|
return (
|
|
12
14
|
<View className={styles.container}>
|
|
13
15
|
<Text className={styles.title}>Tab One</Text>
|
|
@@ -15,6 +17,14 @@ export default function TabOneScreen() {
|
|
|
15
17
|
<EditScreenInfo path="src/screens/one.tsx" />
|
|
16
18
|
</View>
|
|
17
19
|
);
|
|
20
|
+
<% } else if (props.stylingPackage?.name === "tamagui") { %>
|
|
21
|
+
return (
|
|
22
|
+
<YStack className={styles.container}>
|
|
23
|
+
<Text className={styles.title}>Tab One</Text>
|
|
24
|
+
<Separator />
|
|
25
|
+
<EditScreenInfo path="src/screens/one.tsx" />
|
|
26
|
+
</YStack>
|
|
27
|
+
);
|
|
18
28
|
<% } else { %>
|
|
19
29
|
return (
|
|
20
30
|
<View style={styles.container}>
|
|
@@ -26,13 +36,13 @@ export default function TabOneScreen() {
|
|
|
26
36
|
<% } %>
|
|
27
37
|
}
|
|
28
38
|
|
|
29
|
-
<% if (props.
|
|
39
|
+
<% if (props.stylingPackage?.name === "nativewind") { %>
|
|
30
40
|
const styles = {
|
|
31
41
|
container: "items-center flex-1 justify-center",
|
|
32
42
|
separator: "h-[1px] my-7 w-4/5 bg-gray-200",
|
|
33
43
|
title: "text-xl font-bold"
|
|
34
44
|
};
|
|
35
|
-
<% } else { %>
|
|
45
|
+
<% } else if (props.stylingPackage?.name === "stylesheet") { %>
|
|
36
46
|
const styles = StyleSheet.create({
|
|
37
47
|
container: {
|
|
38
48
|
alignItems: "center",
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
import { createTamagui } from 'tamagui'
|
|
2
|
+
import { createInterFont } from '@tamagui/font-inter'
|
|
3
|
+
import { shorthands } from '@tamagui/shorthands'
|
|
4
|
+
import { themes, tokens } from '@tamagui/themes'
|
|
5
|
+
import { createMedia } from '@tamagui/react-native-media-driver'
|
|
6
|
+
import { createAnimations } from '@tamagui/animations-react-native'
|
|
7
|
+
|
|
8
|
+
export const animations = createAnimations({
|
|
9
|
+
bouncy: {
|
|
10
|
+
type: 'spring',
|
|
11
|
+
damping: 10,
|
|
12
|
+
mass: 0.9,
|
|
13
|
+
stiffness: 100,
|
|
14
|
+
},
|
|
15
|
+
lazy: {
|
|
16
|
+
type: 'spring',
|
|
17
|
+
damping: 20,
|
|
18
|
+
stiffness: 60,
|
|
19
|
+
},
|
|
20
|
+
quick: {
|
|
21
|
+
type: 'spring',
|
|
22
|
+
damping: 20,
|
|
23
|
+
mass: 1.2,
|
|
24
|
+
stiffness: 250,
|
|
25
|
+
},
|
|
26
|
+
})
|
|
27
|
+
|
|
28
|
+
const headingFont = createInterFont({
|
|
29
|
+
size: {
|
|
30
|
+
6: 15,
|
|
31
|
+
},
|
|
32
|
+
transform: {
|
|
33
|
+
6: 'uppercase',
|
|
34
|
+
7: 'none',
|
|
35
|
+
},
|
|
36
|
+
weight: {
|
|
37
|
+
6: '400',
|
|
38
|
+
7: '700',
|
|
39
|
+
},
|
|
40
|
+
color: {
|
|
41
|
+
6: '$colorFocus',
|
|
42
|
+
7: '$color',
|
|
43
|
+
},
|
|
44
|
+
letterSpacing: {
|
|
45
|
+
5: 2,
|
|
46
|
+
6: 1,
|
|
47
|
+
7: 0,
|
|
48
|
+
8: -1,
|
|
49
|
+
9: -2,
|
|
50
|
+
10: -3,
|
|
51
|
+
12: -4,
|
|
52
|
+
14: -5,
|
|
53
|
+
15: -6,
|
|
54
|
+
},
|
|
55
|
+
face: {
|
|
56
|
+
700: { normal: 'InterBold' },
|
|
57
|
+
},
|
|
58
|
+
})
|
|
59
|
+
|
|
60
|
+
const bodyFont = createInterFont(
|
|
61
|
+
{
|
|
62
|
+
face: {
|
|
63
|
+
700: { normal: 'InterBold' },
|
|
64
|
+
},
|
|
65
|
+
},
|
|
66
|
+
{
|
|
67
|
+
sizeSize: (size) => Math.round(size * 1.1),
|
|
68
|
+
sizeLineHeight: (size) => Math.round(size * 1.1 + (size > 20 ? 10 : 10)),
|
|
69
|
+
}
|
|
70
|
+
)
|
|
71
|
+
|
|
72
|
+
const config = createTamagui({
|
|
73
|
+
defaultFont: 'body',
|
|
74
|
+
animations,
|
|
75
|
+
shouldAddPrefersColorThemes: true,
|
|
76
|
+
themeClassNameOnRoot: true,
|
|
77
|
+
shorthands,
|
|
78
|
+
fonts: {
|
|
79
|
+
body: bodyFont,
|
|
80
|
+
heading: headingFont,
|
|
81
|
+
},
|
|
82
|
+
themes,
|
|
83
|
+
tokens,
|
|
84
|
+
media: createMedia({
|
|
85
|
+
xs: { maxWidth: 660 },
|
|
86
|
+
sm: { maxWidth: 800 },
|
|
87
|
+
md: { maxWidth: 1020 },
|
|
88
|
+
lg: { maxWidth: 1280 },
|
|
89
|
+
xl: { maxWidth: 1420 },
|
|
90
|
+
xxl: { maxWidth: 1600 },
|
|
91
|
+
gtXs: { minWidth: 660 + 1 },
|
|
92
|
+
gtSm: { minWidth: 800 + 1 },
|
|
93
|
+
gtMd: { minWidth: 1020 + 1 },
|
|
94
|
+
gtLg: { minWidth: 1280 + 1 },
|
|
95
|
+
short: { maxHeight: 820 },
|
|
96
|
+
tall: { minHeight: 820 },
|
|
97
|
+
hoverNone: { hover: 'none' },
|
|
98
|
+
pointerCoarse: { pointer: 'coarse' },
|
|
99
|
+
}),
|
|
100
|
+
})
|
|
101
|
+
|
|
102
|
+
export default config;
|
package/build/types/types.d.ts
CHANGED
|
@@ -3,7 +3,7 @@ export interface CliFlags {
|
|
|
3
3
|
noInstall: boolean;
|
|
4
4
|
importAlias: string;
|
|
5
5
|
}
|
|
6
|
-
export declare const availablePackages: readonly ["nativewind", "react-navigation", "expo-router"];
|
|
6
|
+
export declare const availablePackages: readonly ["nativewind", "tamagui", "react-navigation", "expo-router", "stylesheet"];
|
|
7
7
|
export type NavigationTypes = "stack" | "tabs" | {};
|
|
8
8
|
export type AvailablePackages = {
|
|
9
9
|
name: (typeof availablePackages)[number];
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
import { AvailablePackages } from "../types";
|
|
2
|
-
export declare function configureProjectFiles(files: string[], navigationPackage: AvailablePackages | undefined,
|
|
2
|
+
export declare function configureProjectFiles(files: string[], navigationPackage: AvailablePackages | undefined, stylingPackage: AvailablePackages | undefined): string[];
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import { Toolbox } from "gluegun/build/types/domain/toolbox";
|
|
2
2
|
import { AvailablePackages, CliResults } from "../types";
|
|
3
|
-
export declare function generateProjectFiles(cliResults: CliResults, files: string[], formattedFiles: any[], navigationPackage: AvailablePackages, toolbox: Toolbox,
|
|
3
|
+
export declare function generateProjectFiles(cliResults: CliResults, files: string[], formattedFiles: any[], navigationPackage: AvailablePackages, toolbox: Toolbox, stylingPackage: AvailablePackages): any[];
|
package/build/types.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.availablePackages = void 0;
|
|
4
|
-
exports.availablePackages = ["nativewind", "react-navigation", "expo-router"];
|
|
5
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
4
|
+
exports.availablePackages = ["nativewind", "tamagui", "react-navigation", "expo-router", "stylesheet"];
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvdHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBT2EsUUFBQSxpQkFBaUIsR0FBRyxDQUFDLFlBQVksRUFBRSxTQUFTLEVBQUUsa0JBQWtCLEVBQUUsYUFBYSxFQUFFLFlBQVksQ0FBVSxDQUFDIn0=
|
|
@@ -10,7 +10,7 @@ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
|
|
|
10
10
|
};
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
12
|
exports.configureProjectFiles = void 0;
|
|
13
|
-
function configureProjectFiles(files, navigationPackage,
|
|
13
|
+
function configureProjectFiles(files, navigationPackage, stylingPackage) {
|
|
14
14
|
// Define the files common to all templates to be generated
|
|
15
15
|
var baseFiles = [
|
|
16
16
|
'base/assets/adaptive-icon.png',
|
|
@@ -27,7 +27,7 @@ function configureProjectFiles(files, navigationPackage, useNativewind) {
|
|
|
27
27
|
files = __spreadArray([], baseFiles, true);
|
|
28
28
|
// add nativewind files if needed
|
|
29
29
|
// modify base files with nativewind specifications
|
|
30
|
-
if (
|
|
30
|
+
if ((stylingPackage === null || stylingPackage === void 0 ? void 0 : stylingPackage.name) === 'nativewind') {
|
|
31
31
|
var nativewindFiles = [
|
|
32
32
|
'packages/nativewind/tailwind.config.js.ejs',
|
|
33
33
|
'packages/nativewind/app.d.ts',
|
|
@@ -35,6 +35,15 @@ function configureProjectFiles(files, navigationPackage, useNativewind) {
|
|
|
35
35
|
files = __spreadArray(__spreadArray([], files, true), nativewindFiles, true);
|
|
36
36
|
}
|
|
37
37
|
;
|
|
38
|
+
// add tamagui files if needed
|
|
39
|
+
// modify base files with tamagui specifications
|
|
40
|
+
if ((stylingPackage === null || stylingPackage === void 0 ? void 0 : stylingPackage.name) === 'tamagui') {
|
|
41
|
+
var tamaguiFiles = [
|
|
42
|
+
'packages/tamagui/tamagui.config.ts.ejs',
|
|
43
|
+
];
|
|
44
|
+
files = __spreadArray(__spreadArray([], files, true), tamaguiFiles, true);
|
|
45
|
+
}
|
|
46
|
+
;
|
|
38
47
|
// add react navigation files if needed
|
|
39
48
|
// modify base files with react navigation specifications
|
|
40
49
|
if ((navigationPackage === null || navigationPackage === void 0 ? void 0 : navigationPackage.name) === "react-navigation") {
|
|
@@ -97,4 +106,4 @@ function configureProjectFiles(files, navigationPackage, useNativewind) {
|
|
|
97
106
|
return files;
|
|
98
107
|
}
|
|
99
108
|
exports.configureProjectFiles = configureProjectFiles;
|
|
100
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
109
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlndXJlUHJvamVjdEZpbGVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3V0aWxpdGllcy9jb25maWd1cmVQcm9qZWN0RmlsZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7O0FBRUEsU0FBZ0IscUJBQXFCLENBQ2pDLEtBQWUsRUFDZixpQkFBZ0QsRUFDaEQsY0FBNkM7SUFFN0MsMkRBQTJEO0lBQzNELElBQU0sU0FBUyxHQUFHO1FBQ2QsK0JBQStCO1FBQy9CLHlCQUF5QjtRQUN6QixzQkFBc0I7UUFDdEIsd0JBQXdCO1FBQ3hCLHdCQUF3QjtRQUN4QixtQkFBbUI7UUFDbkIsa0JBQWtCO1FBQ2xCLDBCQUEwQjtRQUMxQix1QkFBdUI7UUFDdkIscUJBQXFCO0tBQ3RCLENBQUM7SUFFRixLQUFLLHFCQUNBLFNBQVMsT0FDYixDQUFDO0lBRUYsaUNBQWlDO0lBQ2pDLG1EQUFtRDtJQUNuRCxJQUFJLENBQUEsY0FBYyxhQUFkLGNBQWMsdUJBQWQsY0FBYyxDQUFFLElBQUksTUFBSyxZQUFZLEVBQUU7UUFDekMsSUFBTSxlQUFlLEdBQUc7WUFDdEIsNENBQTRDO1lBQzVDLDhCQUE4QjtTQUMvQixDQUFDO1FBRUYsS0FBSyxtQ0FDQSxLQUFLLFNBQ0wsZUFBZSxPQUNuQixDQUFDO0tBQ0g7SUFBQSxDQUFDO0lBRUYsOEJBQThCO0lBQzlCLGdEQUFnRDtJQUNoRCxJQUFJLENBQUEsY0FBYyxhQUFkLGNBQWMsdUJBQWQsY0FBYyxDQUFFLElBQUksTUFBSyxTQUFTLEVBQUU7UUFDdEMsSUFBTSxZQUFZLEdBQUc7WUFDbkIsd0NBQXdDO1NBQ3pDLENBQUM7UUFFRixLQUFLLG1DQUNBLEtBQUssU0FDTCxZQUFZLE9BQ2hCLENBQUM7S0FDSDtJQUFBLENBQUM7SUFFRix1Q0FBdUM7SUFDdkMseURBQXlEO0lBQ3pELElBQUksQ0FBQSxpQkFBaUIsYUFBakIsaUJBQWlCLHVCQUFqQixpQkFBaUIsQ0FBRSxJQUFJLE1BQUssa0JBQWtCLEVBQUU7UUFDbEQsSUFBSSxvQkFBb0IsR0FBRztZQUN6Qix1Q0FBdUM7WUFDdkMsb0RBQW9EO1NBQ3JELENBQUM7UUFDRiwwQ0FBMEM7UUFDMUMsSUFBSSxpQkFBaUIsQ0FBQyxPQUFPLEtBQUssT0FBTyxFQUFFO1lBQ3pDLG9CQUFvQixtQ0FDZixvQkFBb0I7Z0JBQ3ZCLG1EQUFtRDtnQkFDbkQsb0RBQW9EO3FCQUNyRCxDQUFDO1NBQ0g7YUFBTTtZQUNMLHVCQUF1QjtZQUN2QixvQkFBb0IsbUNBQ2Ysb0JBQW9CO2dCQUN2QiwrREFBK0Q7Z0JBQy9ELDREQUE0RDtnQkFDNUQsaURBQWlEO2dCQUNqRCwrQ0FBK0M7Z0JBQy9DLCtDQUErQztxQkFDaEQsQ0FBQztTQUNIO1FBRUQsc0ZBQXNGO1FBQ3RGLEtBQUssR0FBRyxLQUFLLENBQUMsTUFBTSxDQUFDLFVBQUMsSUFBSSxJQUFLLE9BQUEsSUFBSSxLQUFLLGtCQUFrQixFQUEzQixDQUEyQixDQUFDLENBQUM7UUFFNUQsS0FBSyxtQ0FDQSxLQUFLLFNBQ0wsb0JBQW9CLE9BQ3hCLENBQUM7S0FDSDtJQUVELGtDQUFrQztJQUNsQyxvREFBb0Q7SUFDcEQsSUFBSSxDQUFBLGlCQUFpQixhQUFqQixpQkFBaUIsdUJBQWpCLGlCQUFpQixDQUFFLElBQUksTUFBSyxhQUFhLEVBQUU7UUFDN0MsSUFBSSxlQUFlLEdBQUc7WUFDcEIsb0NBQW9DO1lBQ3BDLHNDQUFzQztZQUN0QywrQkFBK0I7U0FDaEMsQ0FBQztRQUNGLDBDQUEwQztRQUMxQyxJQUFJLGlCQUFpQixDQUFDLE9BQU8sS0FBSyxPQUFPLEVBQUU7WUFDekMsZUFBZSxtQ0FDVixlQUFlO2dCQUNsQixnREFBZ0Q7Z0JBQ2hELGdEQUFnRDtnQkFDaEQsOENBQThDO3FCQUMvQyxDQUFDO1NBQ0g7YUFBTTtZQUNMLHVCQUF1QjtZQUN2QixlQUFlLG1DQUNWLGVBQWU7Z0JBQ2xCLHNEQUFzRDtnQkFDdEQsb0RBQW9EO2dCQUNwRCxrREFBa0Q7Z0JBQ2xELCtDQUErQztnQkFDL0MsNkNBQTZDO2dCQUM3QywrREFBK0Q7cUJBQ2hFLENBQUM7U0FDSDtRQUVELG1GQUFtRjtRQUNuRixLQUFLLEdBQUcsS0FBSyxDQUFDLE1BQU0sQ0FBQyxVQUFDLElBQUksSUFBSyxPQUFBLElBQUksS0FBSyxrQkFBa0IsRUFBM0IsQ0FBMkIsQ0FBQyxDQUFDO1FBRTVELEtBQUssbUNBQ0EsS0FBSyxTQUNMLGVBQWUsT0FDbkIsQ0FBQztLQUNIO0lBQ0gsT0FBTyxLQUFLLENBQUM7QUFDakIsQ0FBQztBQTNIRCxzREEySEMifQ==
|
|
@@ -1,12 +1,15 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.generateProjectFiles = void 0;
|
|
4
|
-
function generateProjectFiles(cliResults, files, formattedFiles, navigationPackage, toolbox,
|
|
4
|
+
function generateProjectFiles(cliResults, files, formattedFiles, navigationPackage, toolbox, stylingPackage) {
|
|
5
5
|
var projectName = cliResults.projectName, packages = cliResults.packages, flags = cliResults.flags;
|
|
6
6
|
return files.reduce(function (prev, file) {
|
|
7
7
|
var template = file;
|
|
8
8
|
var target = "".concat(projectName, "/") + file.replace('.ejs', '').replace('base/', '');
|
|
9
|
-
if (
|
|
9
|
+
if ((stylingPackage === null || stylingPackage === void 0 ? void 0 : stylingPackage.name) === 'tamagui') {
|
|
10
|
+
target = target.replace('packages/tamagui/', '');
|
|
11
|
+
}
|
|
12
|
+
else if ((stylingPackage === null || stylingPackage === void 0 ? void 0 : stylingPackage.name) === 'nativewind') {
|
|
10
13
|
target = target.replace('packages/nativewind/', '');
|
|
11
14
|
}
|
|
12
15
|
if ((navigationPackage === null || navigationPackage === void 0 ? void 0 : navigationPackage.name) === "react-navigation") {
|
|
@@ -29,7 +32,7 @@ function generateProjectFiles(cliResults, files, formattedFiles, navigationPacka
|
|
|
29
32
|
projectName: projectName,
|
|
30
33
|
packages: packages,
|
|
31
34
|
flags: flags,
|
|
32
|
-
|
|
35
|
+
stylingPackage: stylingPackage,
|
|
33
36
|
navigationPackage: navigationPackage,
|
|
34
37
|
},
|
|
35
38
|
});
|
|
@@ -37,4 +40,4 @@ function generateProjectFiles(cliResults, files, formattedFiles, navigationPacka
|
|
|
37
40
|
}, formattedFiles);
|
|
38
41
|
}
|
|
39
42
|
exports.generateProjectFiles = generateProjectFiles;
|
|
40
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
43
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VuZXJhdGVQcm9qZWN0RmlsZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdXRpbGl0aWVzL2dlbmVyYXRlUHJvamVjdEZpbGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUdBLFNBQWdCLG9CQUFvQixDQUNoQyxVQUFzQixFQUN0QixLQUFlLEVBQ2YsY0FBcUIsRUFDckIsaUJBQW9DLEVBQ3BDLE9BQWdCLEVBQ2hCLGNBQWlDO0lBRXpCLElBQUEsV0FBVyxHQUFzQixVQUFVLFlBQWhDLEVBQUUsUUFBUSxHQUFZLFVBQVUsU0FBdEIsRUFBRSxLQUFLLEdBQUssVUFBVSxNQUFmLENBQWdCO0lBRXBELE9BQU8sS0FBSyxDQUFDLE1BQU0sQ0FBQyxVQUFDLElBQUksRUFBRSxJQUFJO1FBQzNCLElBQU0sUUFBUSxHQUFHLElBQUksQ0FBQztRQUV0QixJQUFJLE1BQU0sR0FBRyxVQUFHLFdBQVcsTUFBRyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDLENBQUE7UUFFOUUsSUFBSSxDQUFBLGNBQWMsYUFBZCxjQUFjLHVCQUFkLGNBQWMsQ0FBRSxJQUFJLE1BQUssU0FBUyxFQUFFO1lBQ3BDLE1BQU0sR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDLG1CQUFtQixFQUFFLEVBQUUsQ0FBQyxDQUFDO1NBQ3BEO2FBQU0sSUFBSSxDQUFBLGNBQWMsYUFBZCxjQUFjLHVCQUFkLGNBQWMsQ0FBRSxJQUFJLE1BQUssWUFBWSxFQUFFO1lBQzlDLE1BQU0sR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDLHNCQUFzQixFQUFFLEVBQUUsQ0FBQyxDQUFDO1NBQ3ZEO1FBRUQsSUFBSSxDQUFBLGlCQUFpQixhQUFqQixpQkFBaUIsdUJBQWpCLGlCQUFpQixDQUFFLElBQUksTUFBSyxrQkFBa0IsRUFBRTtZQUNoRCxNQUFNLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FBQyxtQ0FBbUMsRUFBRSxTQUFTLENBQUMsQ0FBQztZQUN4RSxNQUFNLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FBQyw0QkFBNEIsRUFBRSxNQUFNLENBQUMsQ0FBQztTQUNqRTtRQUVELElBQUksQ0FBQSxpQkFBaUIsYUFBakIsaUJBQWlCLHVCQUFqQixpQkFBaUIsQ0FBRSxJQUFJLE1BQUssYUFBYSxFQUFFO1lBQzNDLE1BQU0sR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDLHVCQUF1QixFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBQ3JELElBQUksaUJBQWlCLENBQUMsT0FBTyxLQUFLLE9BQU8sRUFBRTtnQkFDdkMsTUFBTSxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQyxDQUFDO2FBQ3pDO1lBQ0QsSUFBSSxpQkFBaUIsQ0FBQyxPQUFPLEtBQUssTUFBTSxFQUFFO2dCQUN0QyxNQUFNLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDLENBQUM7YUFDeEM7U0FDSjtRQUVELElBQU0sR0FBRyxHQUFHLE9BQU8sQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDO1lBQ2xDLFFBQVEsVUFBQTtZQUNSLE1BQU0sRUFBRSxJQUFJLEdBQUcsTUFBTTtZQUNyQixLQUFLLEVBQUU7Z0JBQ0gsV0FBVyxhQUFBO2dCQUNYLFFBQVEsVUFBQTtnQkFDUixLQUFLLE9BQUE7Z0JBQ0wsY0FBYyxnQkFBQTtnQkFDZCxpQkFBaUIsbUJBQUE7YUFDcEI7U0FDSixDQUFDLENBQUM7UUFFSCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQzlCLENBQUMsRUFBRSxjQUFjLENBQUMsQ0FBQTtBQUN0QixDQUFDO0FBbERELG9EQWtEQyJ9
|
|
@@ -10,6 +10,8 @@ function getPackageManager(toolbox) {
|
|
|
10
10
|
return 'yarn';
|
|
11
11
|
if (options.pnpm)
|
|
12
12
|
return 'pnpm';
|
|
13
|
+
if (options.bun)
|
|
14
|
+
return 'bun';
|
|
13
15
|
// This environment variable is set by npm and yarn but pnpm seems less consistent
|
|
14
16
|
var userAgent = process.env.npm_config_user_agent;
|
|
15
17
|
if (userAgent) {
|
|
@@ -18,9 +20,9 @@ function getPackageManager(toolbox) {
|
|
|
18
20
|
}
|
|
19
21
|
else if (userAgent.startsWith("pnpm")) {
|
|
20
22
|
return "pnpm";
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
23
|
+
}
|
|
24
|
+
else if (userAgent.startsWith("bun")) {
|
|
25
|
+
return "bun";
|
|
24
26
|
}
|
|
25
27
|
else {
|
|
26
28
|
return "npm";
|
|
@@ -33,4 +35,4 @@ function getPackageManager(toolbox) {
|
|
|
33
35
|
}
|
|
34
36
|
exports.getPackageManager = getPackageManager;
|
|
35
37
|
;
|
|
36
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
38
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0UGFja2FnZU1hbmFnZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdXRpbGl0aWVzL2dldFBhY2thZ2VNYW5hZ2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUlBLHNDQUFzQztBQUN0QyxTQUFnQixpQkFBaUIsQ0FBQyxPQUFnQjtJQUVoQyxJQUFBLE9BQU8sR0FDbkIsT0FBTyxtQkFEWSxDQUNYO0lBRVosSUFBSSxPQUFPLENBQUMsR0FBRztRQUFFLE9BQU8sS0FBSyxDQUFDO0lBQzlCLElBQUksT0FBTyxDQUFDLElBQUk7UUFBRSxPQUFPLE1BQU0sQ0FBQztJQUNoQyxJQUFJLE9BQU8sQ0FBQyxJQUFJO1FBQUUsT0FBTyxNQUFNLENBQUM7SUFDaEMsSUFBSSxPQUFPLENBQUMsR0FBRztRQUFFLE9BQU8sS0FBSyxDQUFDO0lBRTlCLGtGQUFrRjtJQUNsRixJQUFNLFNBQVMsR0FBRyxPQUFPLENBQUMsR0FBRyxDQUFDLHFCQUFxQixDQUFDO0lBQ3BELElBQUksU0FBUyxFQUFFO1FBQ2IsSUFBSSxTQUFTLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxFQUFFO1lBQ2hDLE9BQU8sTUFBTSxDQUFDO1NBQ2Y7YUFBTSxJQUFJLFNBQVMsQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLEVBQUU7WUFDdkMsT0FBTyxNQUFNLENBQUM7U0FDZjthQUFNLElBQUksU0FBUyxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUN0QyxPQUFPLEtBQUssQ0FBQztTQUNkO2FBQU07WUFDTCxPQUFPLEtBQUssQ0FBQztTQUNkO0tBQ0Y7U0FBTTtRQUNMLHNDQUFzQztRQUN0QyxPQUFPLEtBQUssQ0FBQztLQUNkO0FBQ0gsQ0FBQztBQTFCRCw4Q0EwQkM7QUFBQSxDQUFDIn0=
|
|
@@ -96,6 +96,11 @@ function printOutput(cliResults, formattedFiles, toolbox) {
|
|
|
96
96
|
info('pnpm install');
|
|
97
97
|
info('pnpm run ios');
|
|
98
98
|
}
|
|
99
|
+
else if (packageManager === 'bun') {
|
|
100
|
+
if (options.noInstall)
|
|
101
|
+
info('bun install');
|
|
102
|
+
info('bun run ios');
|
|
103
|
+
}
|
|
99
104
|
else {
|
|
100
105
|
if (options.noInstall)
|
|
101
106
|
info('yarn install');
|
|
@@ -108,4 +113,4 @@ function printOutput(cliResults, formattedFiles, toolbox) {
|
|
|
108
113
|
});
|
|
109
114
|
}
|
|
110
115
|
exports.printOutput = printOutput;
|
|
111
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
116
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJpbnRPdXRwdXQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdXRpbGl0aWVzL3ByaW50T3V0cHV0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUVBLHlEQUF3RDtBQUd4RCxTQUFzQixXQUFXLENBQy9CLFVBQXNCLEVBQ3RCLGNBQXFCLEVBQ3JCLE9BQWdCOzs7Ozs7b0JBR0EsT0FBTyxHQUduQixPQUFPLG1CQUhZLEVBQ3JCLEtBRUUsT0FBTyxNQUZlLEVBQWYsSUFBSSxVQUFBLEVBQUUsT0FBTyxhQUFBLEVBQ3RCLE1BQU0sR0FDSixPQUFPLE9BREgsQ0FDSTtvQkFFSixXQUFXLEdBQVksVUFBVSxZQUF0QixFQUFFLEtBQUssR0FBSyxVQUFVLE1BQWYsQ0FBZ0I7b0JBRTFDLGlDQUFpQztvQkFDakMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFBO29CQUNSLElBQUksQ0FBQyw4QkFBOEIsQ0FBQyxDQUFBO29CQUNwQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUE7b0JBRVIscUJBQU0sT0FBTyxDQUFDLEdBQUcsQ0FBQyxjQUFjLENBQUMsRUFBQTs7b0JBQWpDLFNBQWlDLENBQUM7b0JBRzVCLGNBQWMsR0FBRyxJQUFBLHFDQUFpQixFQUFDLE9BQU8sQ0FBQyxDQUFDO3lCQUU5QyxDQUFBLENBQUMsT0FBTyxDQUFDLFNBQVMsSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUEsRUFBdEMsd0JBQXNDO29CQUN4QyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUE7b0JBQ1IsSUFBSSxDQUFDLHdDQUFpQyxjQUFjLFFBQUssQ0FBQyxDQUFBO29CQUMxRCxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUE7b0JBRVIsNkJBQTZCO29CQUM3QixxQkFBTSxNQUFNLENBQUMsS0FBSyxDQUFDLGFBQU0sV0FBVyxpQkFBTyxjQUFjLGtDQUF3QixjQUFjLHdCQUFxQixFQUFFOzRCQUNwSCxLQUFLLEVBQUUsSUFBSTs0QkFDWCxLQUFLLEVBQUUsU0FBUzt5QkFDakIsQ0FBQyxFQUFBOztvQkFKRiw2QkFBNkI7b0JBQzdCLFNBR0UsQ0FBQTs7O3lCQUdBLENBQUEsQ0FBQyxPQUFPLENBQUMsS0FBSyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQSxFQUE5Qix3QkFBOEI7b0JBQ2hDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQTtvQkFDUixJQUFJLENBQUMscUJBQXFCLENBQUMsQ0FBQTtvQkFDM0IsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFBO29CQUVSLDJDQUEyQztvQkFDM0MscUJBQU0sTUFBTSxDQUFDLEtBQUssQ0FBQyxhQUFNLFdBQVcsK0hBQXdILEVBQUU7NEJBQzVKLEtBQUssRUFBRSxJQUFJOzRCQUNYLEtBQUssRUFBRSxTQUFTO3lCQUNqQixDQUFDLEVBQUE7O29CQUpGLDJDQUEyQztvQkFDM0MsU0FHRSxDQUFBOzs7b0JBQ0gsQ0FBQztvQkFFRixPQUFPLENBQUMsMERBQTBELENBQUMsQ0FBQTtvQkFDbkUsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFBO29CQUNSLElBQUksQ0FBQyxhQUFNLFdBQVcsQ0FBRSxDQUFDLENBQUE7b0JBQ3pCLElBQUksY0FBYyxLQUFLLEtBQUssRUFBRTt3QkFDNUIsSUFBSSxPQUFPLENBQUMsU0FBUzs0QkFBRSxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUE7d0JBQzFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQTtxQkFDcEI7eUJBQU0sSUFBSSxjQUFjLEtBQUssTUFBTSxFQUFFO3dCQUNwQyxJQUFJLE9BQU8sQ0FBQyxTQUFTOzRCQUFFLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQTt3QkFDM0MsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFBO3FCQUNyQjt5QkFBTSxJQUFJLGNBQWMsS0FBSyxLQUFLLEVBQUU7d0JBQ25DLElBQUksT0FBTyxDQUFDLFNBQVM7NEJBQUUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFBO3dCQUMxQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUE7cUJBQ3BCO3lCQUFNO3dCQUNMLElBQUksT0FBTyxDQUFDLFNBQVM7NEJBQUUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFBO3dCQUMzQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUE7cUJBQ2pCO29CQUNELElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQTs7Ozs7Q0FDVDtBQWhFRCxrQ0FnRUMifQ==
|
|
@@ -40,7 +40,7 @@ exports.runCLI = void 0;
|
|
|
40
40
|
var constants_1 = require("../constants");
|
|
41
41
|
function runCLI(toolbox) {
|
|
42
42
|
return __awaiter(this, void 0, void 0, function () {
|
|
43
|
-
var first, success, _a, ask, confirm, cliResults, askName, name_1, useTypescript, askNavigation, askNavigationType, navigationSelect, navigationTypeSelect,
|
|
43
|
+
var first, success, _a, ask, confirm, cliResults, askName, name_1, useTypescript, askNavigation, askNavigationType, navigationSelect, navigationTypeSelect, askStyling, stylingSelect;
|
|
44
44
|
return __generator(this, function (_b) {
|
|
45
45
|
switch (_b.label) {
|
|
46
46
|
case 0:
|
|
@@ -102,15 +102,26 @@ function runCLI(toolbox) {
|
|
|
102
102
|
case 7:
|
|
103
103
|
success("No problem, skipping navigation for now.");
|
|
104
104
|
_b.label = 8;
|
|
105
|
-
case 8:
|
|
105
|
+
case 8:
|
|
106
|
+
askStyling = {
|
|
107
|
+
type: "select",
|
|
108
|
+
name: "stylingSelect",
|
|
109
|
+
message: "What would you like to use for styling?",
|
|
110
|
+
choices: ['tamagui', 'nativewind', 'stylesheet']
|
|
111
|
+
};
|
|
112
|
+
return [4 /*yield*/, ask(askStyling)];
|
|
106
113
|
case 9:
|
|
107
|
-
|
|
108
|
-
if (
|
|
114
|
+
stylingSelect = (_b.sent()).stylingSelect;
|
|
115
|
+
if (stylingSelect === 'nativewind') {
|
|
109
116
|
cliResults.packages.push({ name: "nativewind", type: 'styling', options: {} });
|
|
110
117
|
success("You'll be styling with ease using Tailwind.");
|
|
111
118
|
}
|
|
119
|
+
else if (stylingSelect === 'tamagui') {
|
|
120
|
+
cliResults.packages.push({ name: "tamagui", type: 'styling', options: {} });
|
|
121
|
+
}
|
|
112
122
|
else {
|
|
113
|
-
|
|
123
|
+
cliResults.packages.push({ name: "stylesheet", type: 'styling', options: {} });
|
|
124
|
+
success("Cool, you're using the default StyleSheet that comes with React Native.");
|
|
114
125
|
}
|
|
115
126
|
return [2 /*return*/, cliResults];
|
|
116
127
|
}
|
|
@@ -118,4 +129,4 @@ function runCLI(toolbox) {
|
|
|
118
129
|
});
|
|
119
130
|
}
|
|
120
131
|
exports.runCLI = runCLI;
|
|
121
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
132
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicnVuQ0xJLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3V0aWxpdGllcy9ydW5DTEkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRUEsMENBQWdFO0FBR2hFLFNBQXNCLE1BQU0sQ0FBQyxPQUFnQjs7Ozs7O29CQUUzQixLQUFLLEdBR2pCLE9BQU8saUJBSFUsRUFDVixPQUFPLEdBRWQsT0FBTyxjQUZPLEVBQ2hCLEtBQ0UsT0FBTyxPQURlLEVBQWQsR0FBRyxTQUFBLEVBQUUsT0FBTyxhQUFBLENBQ1o7b0JBR1IsVUFBVSxHQUFHLDBCQUFjLENBQUM7eUJBRzVCLEtBQUssRUFBTCx3QkFBSztvQkFDUCxVQUFVLENBQUMsV0FBVyxHQUFHLEtBQUssQ0FBQzs7O29CQUV6QixPQUFPLEdBQUc7d0JBQ2QsSUFBSSxFQUFFLE9BQU87d0JBQ2IsSUFBSSxFQUFFLE1BQU07d0JBQ1osT0FBTyxFQUFFLGtEQUEyQyw0QkFBZ0IsTUFBRztxQkFDeEUsQ0FBQTtvQkFDZ0IscUJBQU0sR0FBRyxDQUFDLE9BQU8sQ0FBQyxFQUFBOztvQkFBM0IsU0FBUyxDQUFBLFNBQWtCLENBQUEsS0FBdkI7b0JBQ1osVUFBVSxDQUFDLFdBQVcsR0FBRyxNQUFJLElBQUksNEJBQWdCLENBQUM7OztvQkFHcEQseUJBQXlCO29CQUN6QixVQUFVLENBQUMsUUFBUSxHQUFHLEVBQUUsQ0FBQztvQkFFSCxxQkFBTSxPQUFPLENBQ2pDLHFEQUFxRCxFQUNyRCxJQUFJLENBQ0wsRUFBQTs7b0JBSEssYUFBYSxHQUFHLFNBR3JCO29CQUVELElBQUksYUFBYSxFQUFFO3dCQUNqQixPQUFPLENBQUMscUNBQXFDLENBQUMsQ0FBQTtxQkFDL0M7eUJBQU07d0JBQ0wsT0FBTyxDQUFDLDJDQUEyQyxDQUFDLENBQUE7cUJBQ3JEO29CQUdLLGFBQWEsR0FBRzt3QkFDcEIsSUFBSSxFQUFFLFFBQVE7d0JB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
|