create-expo-stack 2.2.9 → 2.2.11-beta.026b97e
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 → README.md} +21 -1
- package/build/commands/create-expo-stack.js +22 -9
- package/build/templates/base/babel.config.js.ejs +4 -0
- package/build/templates/base/package.json.ejs +5 -0
- package/build/templates/packages/expo-router/drawer/app/(drawer)/_layout.tsx.ejs +25 -0
- package/build/templates/packages/expo-router/drawer/app/(drawer)/index.tsx.ejs +62 -0
- package/build/templates/packages/expo-router/drawer/app/(drawer)/news.tsx.ejs +62 -0
- package/build/templates/packages/expo-router/drawer/app/_layout.tsx.ejs +47 -0
- package/build/templates/packages/react-navigation/navigation/drawer-navigator.tsx.ejs +15 -0
- package/build/templates/packages/react-navigation/navigation/index.tsx.ejs +34 -2
- package/build/types/types.d.ts +2 -2
- package/build/types/utilities/clearStylingPackages.d.ts +2 -0
- package/build/types.js +5 -2
- package/build/utilities/clearStylingPackages.js +11 -0
- package/build/utilities/configureProjectFiles.js +24 -5
- package/build/utilities/generateProjectFiles.js +5 -2
- package/build/utilities/runCLI.js +3 -2
- package/package.json +9 -6
package/{readme.md → README.md}
RENAMED
|
@@ -1,6 +1,15 @@
|
|
|
1
1
|
# Create Expo Stack CLI
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
[](https://expostack.dev/discord) [![NPM version][npm-image]][npm-url]
|
|
4
|
+
[![Downloads][downloads-image]][npm-url]
|
|
5
|
+
|
|
6
|
+
<p align="center">
|
|
7
|
+
An interactive CLI to create a highly configurable, typesafe Expo app.
|
|
8
|
+
</p>
|
|
9
|
+
|
|
10
|
+
<p align="center">
|
|
11
|
+
Get started by running <code>npx create-expo-stack@latest</code>
|
|
12
|
+
</p>
|
|
4
13
|
|
|
5
14
|
## Description
|
|
6
15
|
|
|
@@ -126,6 +135,13 @@ Thanks go to these wonderful people:
|
|
|
126
135
|
</td>
|
|
127
136
|
</tr>
|
|
128
137
|
<tr>
|
|
138
|
+
<td align="center" valign="top" width="14.28%">
|
|
139
|
+
<a href="https://github.com/saimon24">
|
|
140
|
+
<img src="https://avatars.githubusercontent.com/u/2514208?v=4" width="100px;" alt="Simon Grimm"/>
|
|
141
|
+
<br />
|
|
142
|
+
Simon Grimm
|
|
143
|
+
</a>
|
|
144
|
+
</td>
|
|
129
145
|
<td align="center" valign="top" width="14.28%">
|
|
130
146
|
<a href="https://twitter.com/mwarger">
|
|
131
147
|
<img src="https://avatars.githubusercontent.com/u/686823?v=4" width="100px;" alt="Mat Warger"/>
|
|
@@ -150,3 +166,7 @@ Thanks go to these wonderful people:
|
|
|
150
166
|
</tr>
|
|
151
167
|
</tbody>
|
|
152
168
|
</table>
|
|
169
|
+
|
|
170
|
+
[downloads-image]: https://img.shields.io/npm/dm/create-expo-stack?color=364fc7&logoColor=364fc7
|
|
171
|
+
[npm-url]: https://www.npmjs.com/package/create-expo-stack
|
|
172
|
+
[npm-image]: https://img.shields.io/npm/v/create-expo-stack?color=0b7285&logoColor=0b7285
|
|
@@ -35,11 +35,15 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
|
35
35
|
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
36
36
|
}
|
|
37
37
|
};
|
|
38
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
39
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
40
|
+
};
|
|
38
41
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
42
|
var util = require('util');
|
|
40
43
|
var utilities_1 = require("../utilities");
|
|
41
44
|
var constants_1 = require("../constants");
|
|
42
45
|
var types_1 = require("../types");
|
|
46
|
+
var clearStylingPackages_1 = __importDefault(require("../utilities/clearStylingPackages"));
|
|
43
47
|
var command = {
|
|
44
48
|
name: 'create-expo-stack',
|
|
45
49
|
description: 'Create a new Expo project',
|
|
@@ -56,8 +60,8 @@ var command = {
|
|
|
56
60
|
_c.label = 1;
|
|
57
61
|
case 1:
|
|
58
62
|
_c.trys.push([1, 10, , 11]);
|
|
59
|
-
// Validation: check if the user passed in the tabs option without passing in either expo router or react navigation. If so, throw an error
|
|
60
|
-
if (options.tabs &&
|
|
63
|
+
// Validation: check if the user passed in the tabs/drawer option without passing in either expo router or react navigation. If so, throw an error
|
|
64
|
+
if ((options.tabs || options.drawer) &&
|
|
61
65
|
!options.reactNavigation &&
|
|
62
66
|
!options['react-navigation'] &&
|
|
63
67
|
!options.reactnavigation &&
|
|
@@ -105,7 +109,7 @@ var command = {
|
|
|
105
109
|
name: 'react-navigation',
|
|
106
110
|
type: 'navigation',
|
|
107
111
|
options: {
|
|
108
|
-
type: options.tabs ? 'tabs' : 'stack'
|
|
112
|
+
type: options.tabs ? 'tabs' : options.drawer ? 'drawer' : 'stack'
|
|
109
113
|
}
|
|
110
114
|
});
|
|
111
115
|
}
|
|
@@ -115,12 +119,14 @@ var command = {
|
|
|
115
119
|
name: 'expo-router',
|
|
116
120
|
type: 'navigation',
|
|
117
121
|
options: {
|
|
118
|
-
type: options.tabs ? 'tabs' : 'stack'
|
|
122
|
+
type: options.tabs ? 'tabs' : options.drawer ? 'drawer' : 'stack'
|
|
119
123
|
}
|
|
120
124
|
});
|
|
121
125
|
}
|
|
122
126
|
// Styling packages
|
|
123
127
|
if (options.nativewind) {
|
|
128
|
+
// Check if there is already a styling library added and remove it if so
|
|
129
|
+
cliResults = (0, clearStylingPackages_1.default)(cliResults);
|
|
124
130
|
// Add nativewind package
|
|
125
131
|
cliResults.packages.push({
|
|
126
132
|
name: 'nativewind',
|
|
@@ -128,13 +134,15 @@ var command = {
|
|
|
128
134
|
});
|
|
129
135
|
}
|
|
130
136
|
else if (options.tamagui) {
|
|
137
|
+
cliResults = (0, clearStylingPackages_1.default)(cliResults);
|
|
131
138
|
// Add tamagui package
|
|
132
139
|
cliResults.packages.push({
|
|
133
140
|
name: 'tamagui',
|
|
134
141
|
type: 'styling'
|
|
135
142
|
});
|
|
136
143
|
}
|
|
137
|
-
else {
|
|
144
|
+
else if (options.stylesheet) {
|
|
145
|
+
cliResults = (0, clearStylingPackages_1.default)(cliResults);
|
|
138
146
|
// Add stylesheet package
|
|
139
147
|
cliResults.packages.push({
|
|
140
148
|
name: 'stylesheet',
|
|
@@ -170,11 +178,16 @@ var command = {
|
|
|
170
178
|
var script = "npx create-expo-stack@latest ".concat(cliResults.projectName, " ");
|
|
171
179
|
// Add the packages
|
|
172
180
|
cliResults.packages.forEach(function (p) {
|
|
173
|
-
var _a;
|
|
181
|
+
var _a, _b;
|
|
174
182
|
script += "--".concat(p.name, " ");
|
|
175
183
|
// If the package is a navigation package, add the type if it is tabs
|
|
176
|
-
if (p.type === 'navigation'
|
|
177
|
-
|
|
184
|
+
if (p.type === 'navigation') {
|
|
185
|
+
if (((_a = p.options) === null || _a === void 0 ? void 0 : _a.type) === 'tabs') {
|
|
186
|
+
script += '--tabs ';
|
|
187
|
+
}
|
|
188
|
+
else if (((_b = p.options) === null || _b === void 0 ? void 0 : _b.type) === 'drawer') {
|
|
189
|
+
script += '--drawer ';
|
|
190
|
+
}
|
|
178
191
|
}
|
|
179
192
|
});
|
|
180
193
|
// Check if the user wants to skip installing packages
|
|
@@ -218,4 +231,4 @@ var command = {
|
|
|
218
231
|
}); }
|
|
219
232
|
};
|
|
220
233
|
exports.default = command;
|
|
221
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
234
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLWV4cG8tc3RhY2suanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY29tbWFuZHMvY3JlYXRlLWV4cG8tc3RhY2sudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFDQSxJQUFNLElBQUksR0FBRyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUM7QUFFN0IsMENBU3NCO0FBQ3RCLDBDQUE4QztBQUM5QyxrQ0FBeUQ7QUFDekQsMkZBQXFFO0FBRXJFLElBQU0sT0FBTyxHQUFtQjtJQUMvQixJQUFJLEVBQUUsbUJBQW1CO0lBQ3pCLFdBQVcsRUFBRSwyQkFBMkI7SUFDeEMsR0FBRyxFQUFFLFVBQU8sT0FBTzs7Ozs7b0JBRWpCLEtBRUcsT0FBTyxXQUZvQixFQUFoQixLQUFLLFdBQUEsRUFBRSxPQUFPLGFBQUEsRUFDNUIsS0FDRyxPQUFPLE1BRHlCLEVBQTFCLElBQUksVUFBQSxFQUFFLFNBQVMsZUFBQSxFQUFFLE9BQU8sYUFBQSxDQUN0QjtvQkFFWixJQUFJLE9BQU8sQ0FBQyxJQUFJLElBQUksT0FBTyxDQUFDLENBQUMsRUFBRTt3QkFDOUIsSUFBQSxvQkFBUSxFQUFDLElBQUksRUFBRSxTQUFTLEVBQUUsT0FBTyxDQUFDLENBQUM7d0JBRW5DLHNCQUFPO3FCQUNQOzs7O29CQUVBLGtKQUFrSjtvQkFDbEosSUFDQyxDQUFDLE9BQU8sQ0FBQyxJQUFJLElBQUksT0FBTyxDQUFDLE1BQU0sQ0FBQzt3QkFDaEMsQ0FBQyxPQUFPLENBQUMsZUFBZTt3QkFDeEIsQ0FBQyxPQUFPLENBQUMsa0JBQWtCLENBQUM7d0JBQzVCLENBQUMsT0FBTyxDQUFDLGVBQWU7d0JBQ3hCLENBQUMsT0FBTyxDQUFDLFVBQVU7d0JBQ25CLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQzt3QkFDdkIsQ0FBQyxPQUFPLENBQUMsVUFBVSxFQUNsQjt3QkFDRCxNQUFNLElBQUksS0FB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
|
|
@@ -20,6 +20,10 @@ module.exports = function(api) {
|
|
|
20
20
|
plugins.push('expo-router/babel');
|
|
21
21
|
<% } %>
|
|
22
22
|
|
|
23
|
+
<% if (props.navigationPackage?.options.type === "drawer") { %>
|
|
24
|
+
plugins.push('react-native-reanimated/plugin');
|
|
25
|
+
<% } %>
|
|
26
|
+
|
|
23
27
|
return {
|
|
24
28
|
presets: ['babel-preset-expo'],
|
|
25
29
|
plugins: plugins,
|
|
@@ -44,6 +44,11 @@
|
|
|
44
44
|
<% if (props.navigationPackage?.options.type === "tabs" && props.navigationPackage?.name === "react-navigation") { %>
|
|
45
45
|
"@react-navigation/bottom-tabs": "^6.5.8",
|
|
46
46
|
<% } %>
|
|
47
|
+
|
|
48
|
+
<% if (props.navigationPackage?.options.type === "drawer") { %>
|
|
49
|
+
"@react-navigation/drawer": "^6.6.6",
|
|
50
|
+
"react-native-reanimated": "~3.3.0",
|
|
51
|
+
<% } %>
|
|
47
52
|
|
|
48
53
|
<% if (props.navigationPackage?.name === "expo-router") { %>
|
|
49
54
|
"@expo/vector-icons": "^13.0.0",
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { Drawer } from 'expo-router/drawer';
|
|
2
|
+
import { Ionicons } from '@expo/vector-icons';
|
|
3
|
+
|
|
4
|
+
const DrawerLayout = () => (
|
|
5
|
+
<Drawer>
|
|
6
|
+
<Drawer.Screen
|
|
7
|
+
name="index"
|
|
8
|
+
options={{
|
|
9
|
+
headerTitle: 'Home',
|
|
10
|
+
drawerLabel: 'Home',
|
|
11
|
+
drawerIcon: ({ size, color }) => <Ionicons name="home-outline" size={size} color={color} />
|
|
12
|
+
}}
|
|
13
|
+
/>
|
|
14
|
+
<Drawer.Screen
|
|
15
|
+
name="news"
|
|
16
|
+
options={{
|
|
17
|
+
headerTitle: 'Newsfeed',
|
|
18
|
+
drawerLabel: 'News',
|
|
19
|
+
drawerIcon: ({ size, color }) => <Ionicons name="newspaper-outline" size={size} color={color} />
|
|
20
|
+
}}
|
|
21
|
+
/>
|
|
22
|
+
</Drawer>
|
|
23
|
+
);
|
|
24
|
+
|
|
25
|
+
export default DrawerLayout;
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
<% if (props.stylingPackage?.name === "nativewind") { %>
|
|
2
|
+
import { Text, View } from "react-native";
|
|
3
|
+
<% } else if (props.stylingPackage?.name === "tamagui") { %>
|
|
4
|
+
import { YStack, H2, Separator, Theme } from "tamagui";
|
|
5
|
+
<% } else { %>
|
|
6
|
+
import { StyleSheet, Text, View } from "react-native";
|
|
7
|
+
<% } %>
|
|
8
|
+
|
|
9
|
+
const Page = () => {
|
|
10
|
+
<% if (props.stylingPackage?.name === "nativewind") { %>
|
|
11
|
+
return (
|
|
12
|
+
<View className={styles.container}>
|
|
13
|
+
<Text className={styles.title}>Home</Text>
|
|
14
|
+
<View className={styles.separator} />
|
|
15
|
+
<EditScreenInfo path="app/(tabs)/index.tsx" />
|
|
16
|
+
</View>
|
|
17
|
+
);
|
|
18
|
+
<% } else if (props.stylingPackage?.name === "tamagui") { %>
|
|
19
|
+
return (
|
|
20
|
+
<Theme name="light">
|
|
21
|
+
<YStack flex={1} alignItems="center" justifyContent="center">
|
|
22
|
+
<H2>Home</H2>
|
|
23
|
+
<Separator />
|
|
24
|
+
</YStack>
|
|
25
|
+
</Theme>
|
|
26
|
+
);
|
|
27
|
+
<% } else { %>
|
|
28
|
+
return (
|
|
29
|
+
<View style={styles.container}>
|
|
30
|
+
<Text style={styles.title}>Home</Text>
|
|
31
|
+
<View style={styles.separator} />
|
|
32
|
+
</View>
|
|
33
|
+
);
|
|
34
|
+
<% } %>
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
export default Page;
|
|
38
|
+
|
|
39
|
+
<% if (props.stylingPackage?.name === "nativewind") { %>
|
|
40
|
+
const styles = {
|
|
41
|
+
container: `items-center flex-1 justify-center`,
|
|
42
|
+
separator: `h-[1px] my-7 w-4/5 bg-gray-200`,
|
|
43
|
+
title: `text-xl font-bold`
|
|
44
|
+
};
|
|
45
|
+
<% } else if (props.stylingPackage?.name === "stylesheet") { %>
|
|
46
|
+
const styles = StyleSheet.create({
|
|
47
|
+
container: {
|
|
48
|
+
alignItems: "center",
|
|
49
|
+
flex: 1,
|
|
50
|
+
justifyContent: "center",
|
|
51
|
+
},
|
|
52
|
+
separator: {
|
|
53
|
+
height: 1,
|
|
54
|
+
marginVertical: 30,
|
|
55
|
+
width: "80%",
|
|
56
|
+
},
|
|
57
|
+
title: {
|
|
58
|
+
fontSize: 20,
|
|
59
|
+
fontWeight: "bold",
|
|
60
|
+
}
|
|
61
|
+
});
|
|
62
|
+
<% } %>
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
<% if (props.stylingPackage?.name === "nativewind") { %>
|
|
2
|
+
import { Text, View } from "react-native";
|
|
3
|
+
<% } else if (props.stylingPackage?.name === "tamagui") { %>
|
|
4
|
+
import { YStack, H2, Separator, Theme } from "tamagui";
|
|
5
|
+
<% } else { %>
|
|
6
|
+
import { StyleSheet, Text, View } from "react-native";
|
|
7
|
+
<% } %>
|
|
8
|
+
|
|
9
|
+
const Page = () => {
|
|
10
|
+
<% if (props.stylingPackage?.name === "nativewind") { %>
|
|
11
|
+
return (
|
|
12
|
+
<View className={styles.container}>
|
|
13
|
+
<Text className={styles.title}>News</Text>
|
|
14
|
+
<View className={styles.separator} />
|
|
15
|
+
<EditScreenInfo path="app/(tabs)/index.tsx" />
|
|
16
|
+
</View>
|
|
17
|
+
);
|
|
18
|
+
<% } else if (props.stylingPackage?.name === "tamagui") { %>
|
|
19
|
+
return (
|
|
20
|
+
<Theme name="light">
|
|
21
|
+
<YStack flex={1} alignItems="center" justifyContent="center">
|
|
22
|
+
<H2>News</H2>
|
|
23
|
+
<Separator />
|
|
24
|
+
</YStack>
|
|
25
|
+
</Theme>
|
|
26
|
+
);
|
|
27
|
+
<% } else { %>
|
|
28
|
+
return (
|
|
29
|
+
<View style={styles.container}>
|
|
30
|
+
<Text style={styles.title}>News</Text>
|
|
31
|
+
<View style={styles.separator} />
|
|
32
|
+
</View>
|
|
33
|
+
);
|
|
34
|
+
<% } %>
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
export default Page;
|
|
38
|
+
|
|
39
|
+
<% if (props.stylingPackage?.name === "nativewind") { %>
|
|
40
|
+
const styles = {
|
|
41
|
+
container: `items-center flex-1 justify-center`,
|
|
42
|
+
separator: `h-[1px] my-7 w-4/5 bg-gray-200`,
|
|
43
|
+
title: `text-xl font-bold`
|
|
44
|
+
};
|
|
45
|
+
<% } else if (props.stylingPackage?.name === "stylesheet") { %>
|
|
46
|
+
const styles = StyleSheet.create({
|
|
47
|
+
container: {
|
|
48
|
+
alignItems: "center",
|
|
49
|
+
flex: 1,
|
|
50
|
+
justifyContent: "center",
|
|
51
|
+
},
|
|
52
|
+
separator: {
|
|
53
|
+
height: 1,
|
|
54
|
+
marginVertical: 30,
|
|
55
|
+
width: "80%",
|
|
56
|
+
},
|
|
57
|
+
title: {
|
|
58
|
+
fontSize: 20,
|
|
59
|
+
fontWeight: "bold",
|
|
60
|
+
}
|
|
61
|
+
});
|
|
62
|
+
<% } %>
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import 'react-native-gesture-handler';
|
|
2
|
+
import { GestureHandlerRootView } from 'react-native-gesture-handler';
|
|
3
|
+
import { Slot } from 'expo-router';
|
|
4
|
+
<% if (props.stylingPackage?.name === "tamagui") { %>
|
|
5
|
+
import React, { useEffect } from "react";
|
|
6
|
+
import { TamaguiProvider } from 'tamagui'
|
|
7
|
+
import { SplashScreen } from "expo-router";
|
|
8
|
+
import { useFonts } from "expo-font";
|
|
9
|
+
|
|
10
|
+
import config from '../tamagui.config'
|
|
11
|
+
|
|
12
|
+
SplashScreen.preventAutoHideAsync();
|
|
13
|
+
<% } %>
|
|
14
|
+
|
|
15
|
+
export const unstable_settings = {
|
|
16
|
+
// Ensure that reloading on `/modal` keeps a back button present.
|
|
17
|
+
initialRouteName: "(drawer)",
|
|
18
|
+
};
|
|
19
|
+
|
|
20
|
+
export default function RootLayout() {
|
|
21
|
+
<% if (props.stylingPackage?.name === "tamagui") { %>
|
|
22
|
+
const [loaded] = useFonts({
|
|
23
|
+
Inter: require("@tamagui/font-inter/otf/Inter-Medium.otf"),
|
|
24
|
+
InterBold: require("@tamagui/font-inter/otf/Inter-Bold.otf")
|
|
25
|
+
});
|
|
26
|
+
|
|
27
|
+
useEffect(() => {
|
|
28
|
+
if (loaded) {
|
|
29
|
+
SplashScreen.hideAsync();
|
|
30
|
+
}
|
|
31
|
+
}, [loaded]);
|
|
32
|
+
|
|
33
|
+
if (!loaded) return null;
|
|
34
|
+
<% } %>
|
|
35
|
+
|
|
36
|
+
return (
|
|
37
|
+
<% if (props.stylingPackage?.name === "tamagui") { %>
|
|
38
|
+
<TamaguiProvider config={config}>
|
|
39
|
+
<% } %>
|
|
40
|
+
<GestureHandlerRootView style={{ flex: 1 }}>
|
|
41
|
+
<Slot />
|
|
42
|
+
</GestureHandlerRootView>
|
|
43
|
+
<% if (props.stylingPackage?.name === "tamagui") { %>
|
|
44
|
+
</TamaguiProvider>
|
|
45
|
+
<% } %>
|
|
46
|
+
);
|
|
47
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { createDrawerNavigator } from '@react-navigation/drawer';
|
|
2
|
+
|
|
3
|
+
import One from '../screens/one';
|
|
4
|
+
import Two from '../screens/two';
|
|
5
|
+
|
|
6
|
+
const Drawer = createDrawerNavigator();
|
|
7
|
+
|
|
8
|
+
export default function DrawerNavigator() {
|
|
9
|
+
return (
|
|
10
|
+
<Drawer.Navigator initialRouteName="One">
|
|
11
|
+
<Drawer.Screen name="One" component={One} />
|
|
12
|
+
<Drawer.Screen name="Two" component={Two} />
|
|
13
|
+
</Drawer.Navigator>
|
|
14
|
+
);
|
|
15
|
+
}
|
|
@@ -86,7 +86,7 @@
|
|
|
86
86
|
}
|
|
87
87
|
});
|
|
88
88
|
<% } %>
|
|
89
|
-
<% } else { %>
|
|
89
|
+
<% } else if (props.navigationPackage?.options.type === 'tabs') { %>
|
|
90
90
|
import { NavigationContainer } from "@react-navigation/native";
|
|
91
91
|
import { createStackNavigator } from "@react-navigation/stack";
|
|
92
92
|
|
|
@@ -118,4 +118,36 @@
|
|
|
118
118
|
</NavigationContainer>
|
|
119
119
|
);
|
|
120
120
|
}
|
|
121
|
-
<% } %>
|
|
121
|
+
<% } else if (props.navigationPackage?.options.type === 'drawer') { %>
|
|
122
|
+
import { NavigationContainer } from "@react-navigation/native";
|
|
123
|
+
import { createStackNavigator } from '@react-navigation/stack';
|
|
124
|
+
|
|
125
|
+
import Modal from "../screens/modal";
|
|
126
|
+
import DrawerNavigator from "./drawer-navigator";
|
|
127
|
+
|
|
128
|
+
export type RootStackParamList = {
|
|
129
|
+
TabNavigator: undefined;
|
|
130
|
+
Modal: undefined;
|
|
131
|
+
};
|
|
132
|
+
|
|
133
|
+
const Stack = createStackNavigator<RootStackParamList>();
|
|
134
|
+
|
|
135
|
+
export default function RootStack() {
|
|
136
|
+
return (
|
|
137
|
+
<NavigationContainer>
|
|
138
|
+
<Stack.Navigator initialRouteName="DrawerNavigator">
|
|
139
|
+
<Stack.Screen
|
|
140
|
+
name="DrawerNavigator"
|
|
141
|
+
component={DrawerNavigator}
|
|
142
|
+
options={{ headerShown: false }}
|
|
143
|
+
/>
|
|
144
|
+
<Stack.Screen
|
|
145
|
+
name="Modal"
|
|
146
|
+
component={Modal}
|
|
147
|
+
options={{ presentation: "modal" }}
|
|
148
|
+
/>
|
|
149
|
+
</Stack.Navigator>
|
|
150
|
+
</NavigationContainer>
|
|
151
|
+
);
|
|
152
|
+
}
|
|
153
|
+
<% } %>
|
package/build/types/types.d.ts
CHANGED
|
@@ -3,8 +3,8 @@ export interface CliFlags {
|
|
|
3
3
|
noInstall: boolean;
|
|
4
4
|
importAlias: string;
|
|
5
5
|
}
|
|
6
|
-
export declare const availablePackages: readonly ["expo-router", "expoRouter", "firebase", "nativewind", "react-navigation", "reactNavigation", "
|
|
7
|
-
export type NavigationTypes = 'stack' | 'tabs' | undefined;
|
|
6
|
+
export declare const availablePackages: readonly ["@react-navigation/drawer", "expo-router", "expoRouter", "firebase", "nativewind", "react-navigation", "reactNavigation", "react-native-gesture-handler", "react-native-reanimated", "reactnavigation", "stylesheet", "supabase", "tamagui"];
|
|
7
|
+
export type NavigationTypes = 'stack' | 'tabs' | 'drawer' | undefined;
|
|
8
8
|
export type PackageManager = 'yarn' | 'npm' | 'pnpm' | 'bun';
|
|
9
9
|
export type AvailablePackages = {
|
|
10
10
|
name: (typeof availablePackages)[number];
|
package/build/types.js
CHANGED
|
@@ -2,15 +2,18 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.availablePackages = void 0;
|
|
4
4
|
exports.availablePackages = [
|
|
5
|
+
'@react-navigation/drawer',
|
|
5
6
|
'expo-router',
|
|
6
7
|
'expoRouter',
|
|
7
8
|
'firebase',
|
|
8
9
|
'nativewind',
|
|
9
10
|
'react-navigation',
|
|
10
11
|
'reactNavigation',
|
|
12
|
+
'react-native-gesture-handler',
|
|
13
|
+
'react-native-reanimated',
|
|
11
14
|
'reactnavigation',
|
|
12
|
-
'supabase',
|
|
13
15
|
'stylesheet',
|
|
16
|
+
'supabase',
|
|
14
17
|
'tamagui'
|
|
15
18
|
];
|
|
16
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
19
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvdHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBT2EsUUFBQSxpQkFBaUIsR0FBRztJQUNoQywwQkFBMEI7SUFDMUIsYUFBYTtJQUNiLFlBQVk7SUFDWixVQUFVO0lBQ1YsWUFBWTtJQUNaLGtCQUFrQjtJQUNsQixpQkFBaUI7SUFDakIsOEJBQThCO0lBQzlCLHlCQUF5QjtJQUN6QixpQkFBaUI7SUFDakIsWUFBWTtJQUNaLFVBQVU7SUFDVixTQUFTO0NBQ0EsQ0FBQyJ9
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
function clearStylingPackages(cliResults) {
|
|
4
|
+
var stylingPackageIndex = cliResults.packages.findIndex(function (p) { return p.type === 'styling'; });
|
|
5
|
+
if (stylingPackageIndex !== -1) {
|
|
6
|
+
cliResults.packages.splice(stylingPackageIndex, 1);
|
|
7
|
+
}
|
|
8
|
+
return cliResults;
|
|
9
|
+
}
|
|
10
|
+
exports.default = clearStylingPackages;
|
|
11
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xlYXJTdHlsaW5nUGFja2FnZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdXRpbGl0aWVzL2NsZWFyU3R5bGluZ1BhY2thZ2VzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBRUEsU0FBd0Isb0JBQW9CLENBQUMsVUFBc0I7SUFDbEUsSUFBTSxtQkFBbUIsR0FBRyxVQUFVLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxVQUFDLENBQUMsSUFBSyxPQUFBLENBQUMsQ0FBQyxJQUFJLEtBQUssU0FBUyxFQUFwQixDQUFvQixDQUFDLENBQUM7SUFDdkYsSUFBSSxtQkFBbUIsS0FBSyxDQUFDLENBQUMsRUFBRTtRQUMvQixVQUFVLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxtQkFBbUIsRUFBRSxDQUFDLENBQUMsQ0FBQztLQUNuRDtJQUNELE9BQU8sVUFBVSxDQUFDO0FBQ25CLENBQUM7QUFORCx1Q0FNQyJ9
|
|
@@ -12,7 +12,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
12
12
|
exports.configureProjectFiles = void 0;
|
|
13
13
|
var getPackageManager_1 = require("./getPackageManager");
|
|
14
14
|
function configureProjectFiles(authenticationPackage, files, navigationPackage, stylingPackage, toolbox) {
|
|
15
|
-
var _a, _b;
|
|
15
|
+
var _a, _b, _c, _d, _e;
|
|
16
16
|
// Define the files common to all templates to be generated
|
|
17
17
|
var baseFiles = [
|
|
18
18
|
'base/tsconfig.json.ejs',
|
|
@@ -55,7 +55,7 @@ function configureProjectFiles(authenticationPackage, files, navigationPackage,
|
|
|
55
55
|
'packages/react-navigation/screens/overview.tsx.ejs'
|
|
56
56
|
], false);
|
|
57
57
|
}
|
|
58
|
-
else {
|
|
58
|
+
else if (((_b = navigationPackage === null || navigationPackage === void 0 ? void 0 : navigationPackage.options) === null || _b === void 0 ? void 0 : _b.type) === 'tabs') {
|
|
59
59
|
// it's a tab navigator
|
|
60
60
|
reactNavigationFiles = __spreadArray(__spreadArray([], reactNavigationFiles, true), [
|
|
61
61
|
'packages/react-navigation/components/edit-screen-info.tsx.ejs',
|
|
@@ -65,6 +65,16 @@ function configureProjectFiles(authenticationPackage, files, navigationPackage,
|
|
|
65
65
|
'packages/react-navigation/screens/two.tsx.ejs'
|
|
66
66
|
], false);
|
|
67
67
|
}
|
|
68
|
+
else if (((_c = navigationPackage === null || navigationPackage === void 0 ? void 0 : navigationPackage.options) === null || _c === void 0 ? void 0 : _c.type) === 'drawer') {
|
|
69
|
+
// it's a drawer navigator
|
|
70
|
+
reactNavigationFiles = __spreadArray(__spreadArray([], reactNavigationFiles, true), [
|
|
71
|
+
'packages/react-navigation/components/edit-screen-info.tsx.ejs',
|
|
72
|
+
'packages/react-navigation/navigation/drawer-navigator.tsx.ejs',
|
|
73
|
+
'packages/react-navigation/screens/modal.tsx.ejs',
|
|
74
|
+
'packages/react-navigation/screens/one.tsx.ejs',
|
|
75
|
+
'packages/react-navigation/screens/two.tsx.ejs'
|
|
76
|
+
], false);
|
|
77
|
+
}
|
|
68
78
|
// Remove the base App.tsx.ejs file since we'll be using the one from react-navigation
|
|
69
79
|
files = files.filter(function (file) { return file !== 'base/App.tsx.ejs'; });
|
|
70
80
|
files = __spreadArray(__spreadArray([], files, true), reactNavigationFiles, true);
|
|
@@ -78,14 +88,14 @@ function configureProjectFiles(authenticationPackage, files, navigationPackage,
|
|
|
78
88
|
'packages/expo-router/index.ts'
|
|
79
89
|
];
|
|
80
90
|
// if it's a stack, add the stack files) {
|
|
81
|
-
if (((
|
|
91
|
+
if (((_d = navigationPackage === null || navigationPackage === void 0 ? void 0 : navigationPackage.options) === null || _d === void 0 ? void 0 : _d.type) === 'stack') {
|
|
82
92
|
expoRouterFiles = __spreadArray(__spreadArray([], expoRouterFiles, true), [
|
|
83
93
|
'packages/expo-router/stack/app/_layout.tsx.ejs',
|
|
84
94
|
'packages/expo-router/stack/app/details.tsx.ejs',
|
|
85
95
|
'packages/expo-router/stack/app/index.tsx.ejs'
|
|
86
96
|
], false);
|
|
87
97
|
}
|
|
88
|
-
else {
|
|
98
|
+
else if (((_e = navigationPackage === null || navigationPackage === void 0 ? void 0 : navigationPackage.options) === null || _e === void 0 ? void 0 : _e.type) === 'tabs') {
|
|
89
99
|
// it's a tab navigator
|
|
90
100
|
expoRouterFiles = __spreadArray(__spreadArray([], expoRouterFiles, true), [
|
|
91
101
|
'packages/expo-router/tabs/app/(tabs)/_layout.tsx.ejs',
|
|
@@ -96,6 +106,15 @@ function configureProjectFiles(authenticationPackage, files, navigationPackage,
|
|
|
96
106
|
'packages/expo-router/tabs/components/edit-screen-info.tsx.ejs'
|
|
97
107
|
], false);
|
|
98
108
|
}
|
|
109
|
+
else {
|
|
110
|
+
// it's a drawer navigator
|
|
111
|
+
expoRouterFiles = __spreadArray(__spreadArray([], expoRouterFiles, true), [
|
|
112
|
+
'packages/expo-router/drawer/app/(drawer)/_layout.tsx.ejs',
|
|
113
|
+
'packages/expo-router/drawer/app/(drawer)/index.tsx.ejs',
|
|
114
|
+
'packages/expo-router/drawer/app/(drawer)/news.tsx.ejs',
|
|
115
|
+
'packages/expo-router/drawer/app/_layout.tsx.ejs'
|
|
116
|
+
], false);
|
|
117
|
+
}
|
|
99
118
|
// Remove the base App.tsx.ejs file since we'll be using index.tsx from expo-router
|
|
100
119
|
files = files.filter(function (file) { return file !== 'base/App.tsx.ejs'; });
|
|
101
120
|
files = __spreadArray(__spreadArray([], files, true), expoRouterFiles, true);
|
|
@@ -117,4 +136,4 @@ function configureProjectFiles(authenticationPackage, files, navigationPackage,
|
|
|
117
136
|
return files;
|
|
118
137
|
}
|
|
119
138
|
exports.configureProjectFiles = configureProjectFiles;
|
|
120
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
139
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlndXJlUHJvamVjdEZpbGVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3V0aWxpdGllcy9jb25maWd1cmVQcm9qZWN0RmlsZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7O0FBRUEseURBQXdEO0FBRXhELFNBQWdCLHFCQUFxQixDQUNwQyxxQkFBb0QsRUFDcEQsS0FBZSxFQUNmLGlCQUFnRCxFQUNoRCxjQUE2QyxFQUM3QyxPQUFnQjs7SUFFaEIsMkRBQTJEO0lBQzNELElBQU0sU0FBUyxHQUFHO1FBQ2pCLHdCQUF3QjtRQUN4QixtQkFBbUI7UUFDbkIsa0JBQWtCO1FBQ2xCLDBCQUEwQjtRQUMxQix1QkFBdUI7UUFDdkIscUJBQXFCO1FBQ3JCLGtCQUFrQjtLQUNsQixDQUFDO0lBRUYsSUFBTSxjQUFjLEdBQUcsSUFBQSxxQ0FBaUIsRUFBQyxPQUFPLENBQUMsQ0FBQztJQUNsRCx1REFBdUQ7SUFDdkQsSUFBSSxjQUFjLEtBQUssTUFBTSxJQUFJLENBQUEsaUJBQWlCLGFBQWpCLGlCQUFpQix1QkFBakIsaUJBQWlCLENBQUUsSUFBSSxNQUFLLGFBQWEsRUFBRTtRQUMzRSxTQUFTLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLENBQUM7S0FDbEM7SUFFRCxLQUFLLHFCQUFPLFNBQVMsT0FBQyxDQUFDO0lBRXZCLGlDQUFpQztJQUNqQyxtREFBbUQ7SUFDbkQsSUFBSSxDQUFBLGNBQWMsYUFBZCxjQUFjLHVCQUFkLGNBQWMsQ0FBRSxJQUFJLE1BQUssWUFBWSxFQUFFO1FBQzFDLElBQU0sZUFBZSxHQUFHLENBQUMsNENBQTRDLEVBQUUsOEJBQThCLENBQUMsQ0FBQztRQUV2RyxLQUFLLG1DQUFPLEtBQUssU0FBSyxlQUFlLE9BQUMsQ0FBQztLQUN2QztJQUVELDhCQUE4QjtJQUM5QixnREFBZ0Q7SUFDaEQsSUFBSSxDQUFBLGNBQWMsYUFBZCxjQUFjLHVCQUFkLGNBQWMsQ0FBRSxJQUFJLE1B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
|
|
@@ -4,7 +4,7 @@ exports.generateProjectFiles = void 0;
|
|
|
4
4
|
function generateProjectFiles(authenticationPackage, cliResults, files, formattedFiles, navigationPackage, packageManager, stylingPackage, toolbox) {
|
|
5
5
|
var projectName = cliResults.projectName, packages = cliResults.packages, flags = cliResults.flags;
|
|
6
6
|
return files.reduce(function (prev, file) {
|
|
7
|
-
var _a, _b;
|
|
7
|
+
var _a, _b, _c;
|
|
8
8
|
var template = file;
|
|
9
9
|
var target = "".concat(projectName, "/") + file.replace('.ejs', '');
|
|
10
10
|
if ((authenticationPackage === null || authenticationPackage === void 0 ? void 0 : authenticationPackage.name) === 'supabase') {
|
|
@@ -32,6 +32,9 @@ function generateProjectFiles(authenticationPackage, cliResults, files, formatte
|
|
|
32
32
|
if (((_b = navigationPackage === null || navigationPackage === void 0 ? void 0 : navigationPackage.options) === null || _b === void 0 ? void 0 : _b.type) === 'tabs') {
|
|
33
33
|
target = target.replace('tabs/', '');
|
|
34
34
|
}
|
|
35
|
+
if (((_c = navigationPackage === null || navigationPackage === void 0 ? void 0 : navigationPackage.options) === null || _c === void 0 ? void 0 : _c.type) === 'drawer') {
|
|
36
|
+
target = target.replace('drawer/', '');
|
|
37
|
+
}
|
|
35
38
|
}
|
|
36
39
|
var gen = toolbox.template.generate({
|
|
37
40
|
template: template,
|
|
@@ -50,4 +53,4 @@ function generateProjectFiles(authenticationPackage, cliResults, files, formatte
|
|
|
50
53
|
}, formattedFiles);
|
|
51
54
|
}
|
|
52
55
|
exports.generateProjectFiles = generateProjectFiles;
|
|
53
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
56
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VuZXJhdGVQcm9qZWN0RmlsZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdXRpbGl0aWVzL2dlbmVyYXRlUHJvamVjdEZpbGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUdBLFNBQWdCLG9CQUFvQixDQUNuQyxxQkFBb0QsRUFDcEQsVUFBc0IsRUFDdEIsS0FBZSxFQUNmLGNBQXFCLEVBQ3JCLGlCQUFnRCxFQUNoRCxjQUE4QixFQUM5QixjQUE2QyxFQUM3QyxPQUFnQjtJQUVSLElBQUEsV0FBVyxHQUFzQixVQUFVLFlBQWhDLEVBQUUsUUFBUSxHQUFZLFVBQVUsU0FBdEIsRUFBRSxLQUFLLEdBQUssVUFBVSxNQUFmLENBQWdCO0lBRXBELE9BQU8sS0FBSyxDQUFDLE1BQU0sQ0FBQyxVQUFDLElBQUksRUFBRSxJQUFJOztRQUM5QixJQUFNLFFBQVEsR0FBRyxJQUFJLENBQUM7UUFDdEIsSUFBSSxNQUFNLEdBQUcsVUFBRyxXQUFXLE1BQUcsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsQ0FBQztRQUUxRCxJQUFJLENBQUEscUJBQXFCLGFBQXJCLHFCQUFxQix1QkFBckIscUJBQXFCLENBQUUsSUFBSSxNQUFLLFVBQVUsRUFBRTtZQUMvQyxNQUFNLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FBQyxvQkFBb0IsRUFBRSxFQUFFLENBQUMsQ0FBQztTQUNsRDtRQUVELElBQUksQ0FBQSxxQkFBcUIsYUFBckIscUJBQXFCLHVCQUFyQixxQkFBcUIsQ0FBRSxJQUFJLE1BQUssVUFBVSxFQUFFO1lBQy9DLE1BQU0sR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDLG9CQUFvQixFQUFFLEVBQUUsQ0FBQyxDQUFDO1NBQ2xEO1FBRUQsTUFBTSxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBRXJDLElBQUksQ0FBQSxjQUFjLGFBQWQsY0FBYyx1QkFBZCxjQUFjLENBQUUsSUFBSSxNQUFLLFNBQVMsRUFBRTtZQUN2QyxNQUFNLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FBQyxtQkFBbUIsRUFBRSxFQUFFLENBQUMsQ0FBQztTQUNqRDthQUFNLElBQUksQ0FBQSxjQUFjLGFBQWQsY0FBYyx1QkFBZCxjQUFjLENBQUUsSUFBSSxNQUFLLFlBQVksRUFBRTtZQUNqRCxNQUFNLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FBQyxzQkFBc0IsRUFBRSxFQUFFLENBQUMsQ0FBQztTQUNwRDtRQUVELElBQUksQ0FBQSxpQkFBaUIsYUFBakIsaUJBQWlCLHVCQUFqQixpQkFBaUIsQ0FBRSxJQUFJLE1BQUssa0JBQWtCLEVBQUU7WUFDbkQsTUFBTSxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUMsbUNBQW1DLEVBQUUsU0FBUyxDQUFDLENBQUM7WUFDeEUsTUFBTSxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUMsNEJBQTRCLEVBQUUsTUFBTSxDQUFDLENBQUM7U0FDOUQ7UUFFRCxJQUFJLENBQUEsaUJBQWlCLGFBQWpCLGlCQUFpQix1QkFBakIsaUJBQWlCLENBQUUsSUFBSSxNQUFLLGFBQWEsRUFBRTtZQUM5QyxNQUFNLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FBQyx1QkFBdUIsRUFBRSxFQUFFLENBQUMsQ0FBQztZQUNyRCxJQUFJLENBQUEsTUFBQSxpQkFBaUIsYUFBakIsaUJBQWlCLHVCQUFqQixpQkFBaUIsQ0FBRSxPQUFPLDBDQUFFLElBQUksTUFBSyxPQUFPLEVBQUU7Z0JBQ2pELE1BQU0sR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDLFFBQVEsRUFBRSxFQUFFLENBQUMsQ0FBQzthQUN0QztZQUNELElBQUksQ0FBQSxNQUFBLGlCQUFpQixhQUFqQixpQkFBaUIsdUJBQWpCLGlCQUFpQixDQUFFLE9BQU8sMENBQUUsSUFBSSxNQUFLLE1BQU0sRUFBRTtnQkFDaEQsTUFBTSxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQyxDQUFDO2FBQ3JDO1lBQ0QsSUFBSSxDQUFBLE1BQUEsaUJBQWlCLGFBQWpCLGlCQUFpQix1QkFBakIsaUJBQWlCLENBQUUsT0FBTywwQ0FBRSxJQUFJLE1BQUssUUFBUSxFQUFFO2dCQUNsRCxNQUFNLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FBQyxTQUFTLEVBQUUsRUFBRSxDQUFDLENBQUM7YUFDdkM7U0FDRDtRQUVELElBQU0sR0FBRyxHQUFHLE9BQU8sQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDO1lBQ3JDLFFBQVEsVUFBQTtZQUNSLE1BQU0sRUFBRSxJQUFJLEdBQUcsTUFBTTtZQUNyQixLQUFLLEVBQUU7Z0JBQ04scUJBQXFCLHVCQUFBO2dCQUNyQixLQUFLLE9BQUE7Z0JBQ0wsaUJBQWlCLG1CQUFBO2dCQUNqQixXQUFXLGFBQUE7Z0JBQ1gsY0FBYyxnQkFBQTtnQkFDZCxRQUFRLFVBQUE7Z0JBQ1IsY0FBYyxnQkFBQTthQUNkO1NBQ0QsQ0FBQyxDQUFDO1FBRUgsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztJQUMzQixDQUFDLEVBQUUsY0FBYyxDQUFDLENBQUM7QUFDcEIsQ0FBQztBQWxFRCxvREFrRUMifQ==
|
|
@@ -82,7 +82,7 @@ function runCLI(toolbox) {
|
|
|
82
82
|
type: 'select',
|
|
83
83
|
name: 'navigationTypeSelect',
|
|
84
84
|
message: 'What type of navigation would you like to use?',
|
|
85
|
-
choices: ['Stack', 'Tabs']
|
|
85
|
+
choices: ['Stack', 'Tabs', 'Drawer']
|
|
86
86
|
};
|
|
87
87
|
return [4 /*yield*/, ask(askNavigation)];
|
|
88
88
|
case 5:
|
|
@@ -130,6 +130,7 @@ function runCLI(toolbox) {
|
|
|
130
130
|
}
|
|
131
131
|
else if (stylingSelect === 'Tamagui') {
|
|
132
132
|
cliResults.packages.push({ name: 'tamagui', type: 'styling' });
|
|
133
|
+
success("You'll be styling with ease using Tamagui.");
|
|
133
134
|
}
|
|
134
135
|
else {
|
|
135
136
|
cliResults.packages.push({ name: 'stylesheet', type: 'styling' });
|
|
@@ -161,4 +162,4 @@ function runCLI(toolbox) {
|
|
|
161
162
|
});
|
|
162
163
|
}
|
|
163
164
|
exports.runCLI = runCLI;
|
|
164
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
165
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicnVuQ0xJLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3V0aWxpdGllcy9ydW5DTEkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRUEsMENBQWdFO0FBR2hFLFNBQXNCLE1BQU0sQ0FBQyxPQUFnQjs7Ozs7O29CQUU3QixLQUFLLEdBR2hCLE9BQU8saUJBSFMsRUFDVixPQUFPLEdBRWIsT0FBTyxjQUZNLEVBQ2hCLEtBQ0csT0FBTyxPQURjLEVBQWQsR0FBRyxTQUFBLEVBQUUsT0FBTyxhQUFBLENBQ1g7b0JBR04sVUFBVSxHQUFHLDBCQUFjLENBQUM7eUJBRzlCLEtBQUssRUFBTCx3QkFBSztvQkFDUixVQUFVLENBQUMsV0FBVyxHQUFHLEtBQUssQ0FBQzs7O29CQUV6QixPQUFPLEdBQUc7d0JBQ2YsSUFBSSxFQUFFLE9BQU87d0JBQ2IsSUFBSSxFQUFFLE1BQU07d0JBQ1osT0FBTyxFQUFFLGtEQUEyQyw0QkFBZ0IsTUFBRztxQkFDdkUsQ0FBQztvQkFDZSxxQkFBTSxHQUFHLENBQUMsT0FBTyxDQUFDLEVBQUE7O29CQUEzQixTQUFTLENBQUEsU0FBa0IsQ0FBQSxLQUF2QjtvQkFDWixVQUFVLENBQUMsV0FBVyxHQUFHLE1BQUksSUFBSSw0QkFBZ0IsQ0FBQzs7O29CQUduRCx5QkFBeUI7b0JBQ3pCLFVBQVUsQ0FBQyxRQUFRLEdBQUcsRUFBRSxDQUFDO29CQUVILHFCQUFNLE9BQU8sQ0FBQyxxREFBcUQsRUFBRSxJQUFJLENBQUMsRUFBQTs7b0JBQTFGLGFBQWEsR0FBRyxTQUEwRTtvQkFFaEcsSUFBSSxhQUFhLEVBQUU7d0JBQ2xCLE9BQU8sQ0FBQyxxQ0FBcUMsQ0FBQyxDQUFDO3FCQUMvQzt5QkFBTTt3QkFDTixPQUFPLENBQUMsMkNBQTJDLENBQUMsQ0FBQztxQkFDckQ7b0JBR0ssYUFBYSxHQUFHO3dCQUNyQixJQUFJLEVBQUUsUUFBUTt3QkFD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
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "create-expo-stack",
|
|
3
|
-
"version": "2.2.
|
|
3
|
+
"version": "2.2.11-beta.026b97e",
|
|
4
4
|
"description": "CLI tool to initialize a React Native application with Expo",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -38,15 +38,15 @@
|
|
|
38
38
|
}
|
|
39
39
|
},
|
|
40
40
|
"prettier": {
|
|
41
|
+
"arrowParens": "always",
|
|
42
|
+
"bracketSameLine": false,
|
|
43
|
+
"bracketSpacing": true,
|
|
44
|
+
"printWidth": 120,
|
|
41
45
|
"semi": true,
|
|
42
46
|
"singleQuote": true,
|
|
43
47
|
"tabWidth": 4,
|
|
44
|
-
"useTabs": true,
|
|
45
48
|
"trailingComma": "none",
|
|
46
|
-
"
|
|
47
|
-
"bracketSpacing": true,
|
|
48
|
-
"bracketSameLine": false,
|
|
49
|
-
"arrowParens": "always"
|
|
49
|
+
"useTabs": true
|
|
50
50
|
},
|
|
51
51
|
"dependencies": {
|
|
52
52
|
"ejs-lint": "^2.0.0",
|
|
@@ -65,5 +65,8 @@
|
|
|
65
65
|
"husky": "^5.1.3",
|
|
66
66
|
"prettier": "^2.2.1",
|
|
67
67
|
"pretty-quick": "^3.1.0"
|
|
68
|
+
},
|
|
69
|
+
"publishConfig": {
|
|
70
|
+
"provenance": true
|
|
68
71
|
}
|
|
69
72
|
}
|