create-expo-stack 2.4.3-next.e841ea5 → 2.5.0-next.00da55e

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.
Files changed (86) hide show
  1. package/README.md +213 -156
  2. package/build/commands/create-expo-stack.js +62 -56
  3. package/build/templates/base/App.tsx.ejs +51 -91
  4. package/build/templates/base/app.json.ejs +6 -0
  5. package/build/templates/base/components/BackButton.tsx.ejs +23 -0
  6. package/build/templates/base/components/Button.tsx.ejs +40 -0
  7. package/build/templates/base/components/EditScreenInfo.tsx.ejs +55 -0
  8. package/build/templates/base/components/HeaderButton.tsx.ejs +28 -0
  9. package/build/templates/base/components/ScreenContent.tsx.ejs +38 -0
  10. package/build/templates/base/components/TabBarIcon.tsx.ejs +15 -0
  11. package/build/templates/base/package.json.ejs +21 -7
  12. package/build/templates/base/prettier.config.js.ejs +11 -0
  13. package/build/templates/packages/expo-router/drawer/app/(drawer)/(tabs)/_layout.tsx.ejs +1 -13
  14. package/build/templates/packages/expo-router/drawer/app/(drawer)/(tabs)/index.tsx.ejs +18 -84
  15. package/build/templates/packages/expo-router/drawer/app/(drawer)/(tabs)/two.tsx.ejs +18 -84
  16. package/build/templates/packages/expo-router/drawer/app/(drawer)/_layout.tsx.ejs +4 -18
  17. package/build/templates/packages/expo-router/drawer/app/(drawer)/index.tsx.ejs +12 -80
  18. package/build/templates/packages/expo-router/drawer/app/_layout.tsx.ejs +4 -0
  19. package/build/templates/packages/expo-router/drawer/app/modal.tsx.ejs +16 -92
  20. package/build/templates/packages/expo-router/stack/app/_layout.tsx.ejs +3 -0
  21. package/build/templates/packages/expo-router/stack/app/details.tsx.ejs +17 -171
  22. package/build/templates/packages/expo-router/stack/app/index.tsx.ejs +23 -187
  23. package/build/templates/packages/expo-router/tabs/app/(tabs)/_layout.tsx.ejs +6 -50
  24. package/build/templates/packages/expo-router/tabs/app/(tabs)/index.tsx.ejs +18 -84
  25. package/build/templates/packages/expo-router/tabs/app/(tabs)/two.tsx.ejs +18 -83
  26. package/build/templates/packages/expo-router/tabs/app/_layout.tsx.ejs +3 -0
  27. package/build/templates/packages/expo-router/tabs/app/modal.tsx.ejs +17 -92
  28. package/build/templates/packages/i18next/components/InternalizationExample.tsx.ejs +23 -0
  29. package/build/templates/packages/i18next/core/i18n/fallbackChecker.ts.ejs +13 -0
  30. package/build/templates/packages/i18next/core/i18n/init.ts.ejs +24 -0
  31. package/build/templates/packages/i18next/core/i18n/languageDetector.ts.ejs +13 -0
  32. package/build/templates/packages/i18next/translation/en.json.ejs +8 -0
  33. package/build/templates/packages/i18next/translation/fr.json.ejs +8 -0
  34. package/build/templates/packages/i18next/translation/index.ts.ejs +20 -0
  35. package/build/templates/packages/nativewind/components/BackButton.tsx.ejs +18 -0
  36. package/build/templates/packages/nativewind/components/Button.tsx.ejs +14 -0
  37. package/build/templates/packages/nativewind/components/EditScreenInfo.tsx.ejs +40 -0
  38. package/build/templates/packages/nativewind/components/ScreenContent.tsx.ejs +25 -0
  39. package/build/templates/packages/react-navigation/App.tsx.ejs +4 -1
  40. package/build/templates/packages/react-navigation/navigation/drawer-navigator.tsx.ejs +14 -26
  41. package/build/templates/packages/react-navigation/navigation/index.tsx.ejs +2 -101
  42. package/build/templates/packages/react-navigation/navigation/tab-navigator.tsx.ejs +8 -62
  43. package/build/templates/packages/react-navigation/screens/details.tsx.ejs +22 -108
  44. package/build/templates/packages/react-navigation/screens/home.tsx.ejs +3 -82
  45. package/build/templates/packages/react-navigation/screens/modal.tsx.ejs +16 -104
  46. package/build/templates/packages/react-navigation/screens/one.tsx.ejs +2 -97
  47. package/build/templates/packages/react-navigation/screens/overview.tsx.ejs +37 -182
  48. package/build/templates/packages/react-navigation/screens/two.tsx.ejs +3 -98
  49. package/build/templates/packages/restyle/components/BackButton.tsx.ejs +15 -0
  50. package/build/templates/packages/restyle/components/Button.tsx.ejs +32 -0
  51. package/build/templates/packages/restyle/components/EditScreenInfo.tsx.ejs +29 -0
  52. package/build/templates/packages/restyle/components/ScreenContent.tsx.ejs +20 -0
  53. package/build/templates/packages/tamagui/components/BackButton.tsx.ejs +19 -0
  54. package/build/templates/packages/tamagui/components/Button.tsx.ejs +9 -0
  55. package/build/templates/packages/tamagui/components/EditScreenInfo.tsx.ejs +29 -0
  56. package/build/templates/packages/tamagui/components/ScreenContent.tsx.ejs +22 -0
  57. package/build/templates/packages/unistyles/components/BackButton.tsx.ejs +26 -0
  58. package/build/templates/packages/unistyles/components/Button.tsx.ejs +12 -0
  59. package/build/templates/packages/unistyles/components/EditScreenInfo.tsx.ejs +61 -0
  60. package/build/templates/packages/unistyles/components/ScreenContent.tsx.ejs +24 -0
  61. package/build/templates/packages/unistyles/theme.ts.ejs +30 -46
  62. package/build/types/types.d.ts +3 -2
  63. package/build/types/utilities/configureProjectFiles.d.ts +1 -1
  64. package/build/types/utilities/generateProjectFiles.d.ts +1 -1
  65. package/build/types/utilities/getPackageManager.d.ts +1 -0
  66. package/build/types/utilities/validateProjectName.d.ts +1 -1
  67. package/build/types.js +3 -2
  68. package/build/utilities/configureProjectFiles.js +86 -19
  69. package/build/utilities/generateProjectFiles.js +8 -4
  70. package/build/utilities/getPackageManager.js +9 -2
  71. package/build/utilities/printOutput.js +4 -2
  72. package/build/utilities/renderTitle.js +8 -1
  73. package/build/utilities/runCLI.js +124 -34
  74. package/build/utilities/showHelp.js +4 -1
  75. package/build/utilities/validateProjectName.js +14 -8
  76. package/package.json +1 -1
  77. package/build/templates/base/.prettierrc +0 -7
  78. package/build/templates/packages/expo-router/drawer/components/edit-screen-info.tsx.ejs +0 -153
  79. package/build/templates/packages/expo-router/index.js +0 -4
  80. package/build/templates/packages/expo-router/index.ts +0 -1
  81. package/build/templates/packages/expo-router/tabs/components/edit-screen-info.tsx.ejs +0 -153
  82. package/build/templates/packages/react-navigation/components/edit-screen-info.tsx.ejs +0 -180
  83. package/build/types/templates/packages/expo-router/index.d.ts +0 -1
  84. /package/build/templates/packages/expo-router/drawer/app/{[...unmatched].tsx.ejs → +not-found.tsx.ejs} +0 -0
  85. /package/build/templates/packages/expo-router/stack/app/{[...unmatched].tsx.ejs → +not-found.tsx.ejs} +0 -0
  86. /package/build/templates/packages/expo-router/tabs/app/{[...unmatched].tsx.ejs → +not-found.tsx.ejs} +0 -0
@@ -38,13 +38,15 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
38
38
  Object.defineProperty(exports, "__esModule", { value: true });
39
39
  exports.runCLI = void 0;
40
40
  var constants_1 = require("../constants");
41
+ var getPackageManager_1 = require("./getPackageManager");
42
+ var recommendedBunVersion = '1.0.14';
41
43
  function runCLI(toolbox, projectName) {
42
44
  return __awaiter(this, void 0, void 0, function () {
43
- var options, success, prompt, cliResults, useTypescript, askNavigation, askNavigationType, navigationSelect, navigationTypeSelect, askStyling, stylingSelect, askAuthentication, authenticationSelect, askPackageManager, packageManagerSelect;
44
- return __generator(this, function (_a) {
45
- switch (_a.label) {
45
+ var options, _a, info, success, warning, highlight, prompt, cliResults, useTypescript, defaultPackageManagerVersion, shouldUseDefaultPackageManager, askPackageManager, packageManagerSelect, askPackageManager, packageManagerSelect, askNavigation, askNavigationType, navigationSelect, navigationTypeSelect, shouldContinue, shouldContinue, baseStylePackageNames, askStyling, stylingSelect, askAuthentication, authenticationSelect, askInternalization, internalizationSelect;
46
+ return __generator(this, function (_b) {
47
+ switch (_b.label) {
46
48
  case 0:
47
- options = toolbox.parameters.options, success = toolbox.print.success, prompt = toolbox.prompt;
49
+ options = toolbox.parameters.options, _a = toolbox.print, info = _a.info, success = _a.success, warning = _a.warning, highlight = _a.highlight, prompt = toolbox.prompt;
48
50
  cliResults = constants_1.defaultOptions;
49
51
  // Project name already validated, just set cliResults
50
52
  cliResults.projectName = projectName;
@@ -53,13 +55,53 @@ function runCLI(toolbox, projectName) {
53
55
  cliResults.packages = [];
54
56
  return [4 /*yield*/, prompt.confirm('Would you like to use TypeScript with this project?', true)];
55
57
  case 1:
56
- useTypescript = _a.sent();
58
+ useTypescript = _b.sent();
57
59
  if (useTypescript) {
58
60
  success('Good call, now using TypeScript! 🚀');
59
61
  }
60
62
  else {
61
63
  success("Wrong answer, we're gonna use Typescript.");
62
64
  }
65
+ defaultPackageManagerVersion = (0, getPackageManager_1.getDefaultPackageManagerVersion)();
66
+ if (!cliResults.flags.packageManager) return [3 /*break*/, 6];
67
+ if (!(options.bun || options.pnpm || options.npm || options.yarn)) return [3 /*break*/, 2];
68
+ cliResults.flags.packageManager = options.bun ? 'bun' : options.pnpm ? 'pnpm' : options.npm ? 'npm' : 'yarn';
69
+ return [3 /*break*/, 5];
70
+ case 2:
71
+ highlight("\nWe've detected ".concat(cliResults.flags.packageManager, " ").concat(defaultPackageManagerVersion ? "v".concat(defaultPackageManagerVersion) : '', " as your preferred package manager."));
72
+ return [4 /*yield*/, prompt.confirm("Would you like to continue using it?", true)];
73
+ case 3:
74
+ shouldUseDefaultPackageManager = _b.sent();
75
+ if (!!shouldUseDefaultPackageManager) return [3 /*break*/, 5];
76
+ askPackageManager = {
77
+ type: 'select',
78
+ name: 'packageManagerSelect',
79
+ message: 'Which package manager would you like to use?',
80
+ choices: ['npm', 'yarn', 'pnpm', 'bun']
81
+ };
82
+ return [4 /*yield*/, prompt.ask(askPackageManager)];
83
+ case 4:
84
+ packageManagerSelect = (_b.sent()).packageManagerSelect;
85
+ cliResults.flags.packageManager = packageManagerSelect;
86
+ _b.label = 5;
87
+ case 5: return [3 /*break*/, 9];
88
+ case 6:
89
+ if (!(options.bun || options.pnpm || options.npm || options.yarn)) return [3 /*break*/, 7];
90
+ cliResults.flags.packageManager = options.bun ? 'bun' : options.pnpm ? 'pnpm' : options.npm ? 'npm' : 'yarn';
91
+ return [3 /*break*/, 9];
92
+ case 7:
93
+ askPackageManager = {
94
+ type: 'select',
95
+ name: 'packageManagerSelect',
96
+ message: 'Which package manager would you like to use?',
97
+ choices: ['npm', 'yarn', 'pnpm', 'bun']
98
+ };
99
+ return [4 /*yield*/, prompt.ask(askPackageManager)];
100
+ case 8:
101
+ packageManagerSelect = (_b.sent()).packageManagerSelect;
102
+ cliResults.flags.packageManager = packageManagerSelect;
103
+ _b.label = 9;
104
+ case 9:
63
105
  askNavigation = {
64
106
  type: 'select',
65
107
  name: 'navigationSelect',
@@ -73,12 +115,12 @@ function runCLI(toolbox, projectName) {
73
115
  choices: ['Stack', 'Tabs', 'Drawer + Tabs']
74
116
  };
75
117
  return [4 /*yield*/, prompt.ask(askNavigation)];
76
- case 2:
77
- navigationSelect = (_a.sent()).navigationSelect;
78
- if (!(navigationSelect !== 'None')) return [3 /*break*/, 4];
118
+ case 10:
119
+ navigationSelect = (_b.sent()).navigationSelect;
120
+ if (!(navigationSelect !== 'None')) return [3 /*break*/, 16];
79
121
  return [4 /*yield*/, prompt.ask(askNavigationType)];
80
- case 3:
81
- navigationTypeSelect = (_a.sent()).navigationTypeSelect;
122
+ case 11:
123
+ navigationTypeSelect = (_b.sent()).navigationTypeSelect;
82
124
  if (navigationSelect === 'React Navigation') {
83
125
  cliResults.packages.push({
84
126
  name: 'react-navigation',
@@ -97,21 +139,68 @@ function runCLI(toolbox, projectName) {
97
139
  }
98
140
  });
99
141
  }
142
+ if (!(cliResults.flags.packageManager === 'bun' &&
143
+ defaultPackageManagerVersion &&
144
+ defaultPackageManagerVersion !== recommendedBunVersion)) return [3 /*break*/, 13];
145
+ warning('⚠️' + ' ' + " We've detected you're using Bun v".concat(defaultPackageManagerVersion, "."));
146
+ info('');
147
+ warning("Some packages may not work correctly if you continue. We recommend using Bun v".concat(recommendedBunVersion, " until peerDependencies are properly resolved with bun install."));
148
+ warning("For more information, visit https://github.com/oven-sh/bun/issues/4946");
149
+ info('');
150
+ warning("To switch to Bun v".concat(recommendedBunVersion, ", run:"));
151
+ info('');
152
+ warning("\tcurl -fsSL https://bun.sh/install | bash -s \"bun-v".concat(recommendedBunVersion, "\""));
153
+ info('');
154
+ warning("or visit bun.sh/docs/installation for other installation methods (e.g. via Homebrew, npm, etc).");
155
+ info('');
156
+ return [4 /*yield*/, prompt.confirm("Would you like to continue without switching to Bun v".concat(recommendedBunVersion, "?"), true)];
157
+ case 12:
158
+ shouldContinue = _b.sent();
159
+ if (!shouldContinue) {
160
+ throw new Error("User cancelled to install recommended version of Bun.");
161
+ }
162
+ return [3 /*break*/, 15];
163
+ case 13:
164
+ if (!(cliResults.flags.packageManager === 'bun' && !defaultPackageManagerVersion)) return [3 /*break*/, 15];
165
+ warning('⚠️' + ' ' + " We've detected you're using Bun but we are unable to determine which version you are using.");
166
+ info('');
167
+ warning("We recommend using Bun v".concat(recommendedBunVersion, " until peerDependencies are properly resolved with bun install. If you continue with a version that is not v").concat(recommendedBunVersion, ", some packages may not work correctly."));
168
+ warning("For more information, visit https://github.com/oven-sh/bun/issues/4946");
169
+ info('');
170
+ warning("To check your version of Bun, run:");
171
+ info('');
172
+ warning("\tbun -version");
173
+ info('');
174
+ warning("To switch to Bun v".concat(recommendedBunVersion, ", run:"));
175
+ info('');
176
+ warning("\tcurl -fsSL https://bun.sh/install | bash -s \"bun-v".concat(recommendedBunVersion, "\""));
177
+ info('');
178
+ warning("or visit bun.sh/docs/installation for other installation methods (e.g. via Homebrew, npm, etc).");
179
+ info('');
180
+ return [4 /*yield*/, prompt.confirm('Would you like to continue with your current version of Bun?', true)];
181
+ case 14:
182
+ shouldContinue = _b.sent();
183
+ if (!shouldContinue) {
184
+ throw new Error('User cancelled to install recommended version of Bun.');
185
+ }
186
+ _b.label = 15;
187
+ case 15:
100
188
  success("Great, we'll use ".concat(navigationSelect, "!"));
101
- return [3 /*break*/, 5];
102
- case 4:
189
+ return [3 /*break*/, 17];
190
+ case 16:
103
191
  success("No problem, skipping navigation for now.");
104
- _a.label = 5;
105
- case 5:
192
+ _b.label = 17;
193
+ case 17:
194
+ baseStylePackageNames = ['Nativewind', 'Restyle', 'Stylesheet', 'Tamagui (experimental)', 'Unistyles'];
106
195
  askStyling = {
107
196
  type: 'select',
108
197
  name: 'stylingSelect',
109
198
  message: 'What would you like to use for styling?',
110
- choices: ['Nativewind', 'Restyle', 'Stylesheet', 'Tamagui (experimental)', 'Unistyles']
199
+ choices: baseStylePackageNames
111
200
  };
112
201
  return [4 /*yield*/, prompt.ask(askStyling)];
113
- case 6:
114
- stylingSelect = (_a.sent()).stylingSelect;
202
+ case 18:
203
+ stylingSelect = (_b.sent()).stylingSelect;
115
204
  if (stylingSelect === 'Nativewind') {
116
205
  cliResults.packages.push({ name: 'nativewind', type: 'styling' });
117
206
  success("You'll be styling with ease using Tailwind.");
@@ -139,8 +228,8 @@ function runCLI(toolbox, projectName) {
139
228
  choices: ['None', 'Supabase', 'Firebase']
140
229
  };
141
230
  return [4 /*yield*/, prompt.ask(askAuthentication)];
142
- case 7:
143
- authenticationSelect = (_a.sent()).authenticationSelect;
231
+ case 19:
232
+ authenticationSelect = (_b.sent()).authenticationSelect;
144
233
  if (authenticationSelect === 'Supabase') {
145
234
  cliResults.packages.push({ name: 'supabase', type: 'authentication' });
146
235
  success("You'll be using Supabase for authentication.");
@@ -152,25 +241,26 @@ function runCLI(toolbox, projectName) {
152
241
  else {
153
242
  success("No problem, skipping authentication for now.");
154
243
  }
155
- if (!!cliResults.flags.packageManager) return [3 /*break*/, 9];
156
- askPackageManager = {
244
+ askInternalization = {
157
245
  type: 'select',
158
- name: 'packageManagerSelect',
159
- message: 'Which package manager would you like to use?',
160
- choices: ['npm', 'yarn', 'pnpm', 'bun']
246
+ name: 'internalizationSelect',
247
+ message: 'What would you like to support internationalization?',
248
+ choices: ['i18next', 'None']
161
249
  };
162
- return [4 /*yield*/, prompt.ask(askPackageManager)];
163
- case 8:
164
- packageManagerSelect = (_a.sent()).packageManagerSelect;
165
- cliResults.flags.packageManager = packageManagerSelect;
166
- return [3 /*break*/, 10];
167
- case 9:
168
- cliResults.flags.packageManager = 'npm';
169
- _a.label = 10;
170
- case 10: return [2 /*return*/, cliResults];
250
+ return [4 /*yield*/, prompt.ask(askInternalization)];
251
+ case 20:
252
+ internalizationSelect = (_b.sent()).internalizationSelect;
253
+ if (internalizationSelect === 'i18next') {
254
+ cliResults.packages.push({ name: 'i18next', type: 'internationalization' });
255
+ success("You'll be using i18next for internationalization.");
256
+ }
257
+ else {
258
+ success("No problem, skipping internationalization for now.");
259
+ }
260
+ return [2 /*return*/, cliResults];
171
261
  }
172
262
  });
173
263
  });
174
264
  }
175
265
  exports.runCLI = runCLI;
176
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicnVuQ0xJLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3V0aWxpdGllcy9ydW5DTEkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRUEsMENBQThDO0FBRzlDLFNBQXNCLE1BQU0sQ0FBQyxPQUFnQixFQUFFLFdBQW1COzs7Ozs7b0JBRWhELE9BQU8sR0FHbkIsT0FBTyxtQkFIWSxFQUNaLE9BQU8sR0FFZCxPQUFPLGNBRk8sRUFDaEIsTUFBTSxHQUNKLE9BQU8sT0FESCxDQUNJO29CQUdOLFVBQVUsR0FBRywwQkFBYyxDQUFDO29CQUVsQyxzREFBc0Q7b0JBQ3RELFVBQVUsQ0FBQyxXQUFXLEdBQUcsV0FBVyxDQUFDO29CQUNyQyxVQUFVLENBQUMsS0FBSyxDQUFDLFNBQVMsR0FBRyxDQUFDLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQztvQkFFakQseUJBQXlCO29CQUN6QixVQUFVLENBQUMsUUFBUSxHQUFHLEVBQUUsQ0FBQztvQkFFSCxxQkFBTSxNQUFNLENBQUMsT0FBTyxDQUFDLHFEQUFxRCxFQUFFLElBQUksQ0FBQyxFQUFBOztvQkFBakcsYUFBYSxHQUFHLFNBQWlGO29CQUV2RyxJQUFJLGFBQWEsRUFBRSxDQUFDO3dCQUNsQixPQUFPLENBQUMscUNBQXFDLENBQUMsQ0FBQztvQkFDakQsQ0FBQzt5QkFBTSxDQUFDO3dCQUNOLE9BQU8sQ0FBQywyQ0FBMkMsQ0FBQyxDQUFDO29CQUN2RCxDQUFDO29CQUdLLGFBQWEsR0FBRzt3QkFDcEIsSUFBSSxFQUFFLFFBQVE7d0JBQ2QsSUFBSSxFQUFFLGtCQUFrQjt3QkFDeEIsT0FBTyxFQUFFLDRDQUE0Qzt3QkFDckQsT0FBTyxFQUFFLENBQUMsa0JBQWtCLEVBQUUsYUFBYSxFQUFFLE1BQU0sQ0FBQztxQkFDckQsQ0FBQztvQkFFSSxpQkFBaUIsR0FBRzt3QkFDeEIsSUFBSSxFQUFFLFFBQVE7d0JBQ2Qs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
266
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicnVuQ0xJLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3V0aWxpdGllcy9ydW5DTEkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRUEsMENBQThDO0FBRTlDLHlEQUFzRTtBQUV0RSxJQUFNLHFCQUFxQixHQUFHLFFBQVEsQ0FBQztBQUV2QyxTQUFzQixNQUFNLENBQUMsT0FBZ0IsRUFBRSxXQUFtQjs7Ozs7O29CQUVoRCxPQUFPLEdBR25CLE9BQU8sbUJBSFksRUFDckIsS0FFRSxPQUFPLE1BRm1DLEVBQW5DLElBQUksVUFBQSxFQUFFLE9BQU8sYUFBQSxFQUFFLE9BQU8sYUFBQSxFQUFFLFNBQVMsZUFBQSxFQUMxQyxNQUFNLEdBQ0osT0FBTyxPQURILENBQ0k7b0JBR04sVUFBVSxHQUFHLDBCQUFjLENBQUM7b0JBRWxDLHNEQUFzRDtvQkFDdEQsVUFBVSxDQUFDLFdBQVcsR0FBRyxXQUFXLENBQUM7b0JBQ3JDLFVBQVUsQ0FBQyxLQUFLLENBQUMsU0FBUyxHQUFHLENBQUMsQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDO29CQUVqRCx5QkFBeUI7b0JBQ3pCLFVBQVUsQ0FBQyxRQUFRLEdBQUcsRUFBRSxDQUFDO29CQUVILHFCQUFNLE1BQU0sQ0FBQyxPQUFPLENBQUMscURBQXFELEVBQUUsSUFBSSxDQUFDLEVBQUE7O29CQUFqRyxhQUFhLEdBQUcsU0FBaUY7b0JBRXZHLElBQUksYUFBYSxFQUFFLENBQUM7d0JBQ2xCLE9BQU8sQ0FBQyxxQ0FBcUMsQ0FBQyxDQUFDO29CQUNqRCxDQUFDO3lCQUFNLENBQUM7d0JBQ04sT0FBTyxDQUFDLDJDQUEyQyxDQUFDLENBQUM7b0JBQ3ZELENBQUM7b0JBRUssNEJBQTRCLEdBQUcsSUFBQSxtREFBK0IsR0FBRSxDQUFDO3lCQUNuRSxVQUFVLENBQUMsS0FBSyxDQUFDLGNBQWMsRUFBL0Isd0JBQStCO3lCQUM3QixDQUFBLE9BQU8sQ0FBQyxHQUFHLElBQUksT0FBTyxDQUFDLElBQUksSUFBSSxPQUFPLENBQUMsR0FBRyxJQUFJLE9BQU8sQ0FBQyxJQUFJLENBQUEsRUFBMUQsd0JBQTBEO29CQUM1RCxVQUFVLENBQUMsS0FBSyxDQUFDLGNBQWMsR0FBRyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUM7OztvQkFFN0csU0FBUyxDQUNQLDJCQUFvQixVQUFVLENBQUMsS0FBSyxDQUFDLGNBQWMsY0FDakQsNEJBQTRCLENBQUMsQ0FBQyxDQUFDLFdBQUksNEJBQTRCLENBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSx3Q0FDbkMsQ0FDdEMsQ0FBQztvQkFDcUMscUJBQU0sTUFBTSxDQUFDLE9BQU8sQ0FBQyxzQ0FBc0MsRUFBRSxJQUFJLENBQUMsRUFBQTs7b0JBQW5HLDhCQUE4QixHQUFHLFNBQWtFO3lCQUNyRyxDQUFDLDhCQUE4QixFQUEvQix3QkFBK0I7b0JBQzNCLGlCQUFpQixHQUFHO3dCQUN4QixJQUFJLEVBQUUsUUFBUTt3QkFDZCxJQUFJLEVBQUUsc0JBQXNCO3dCQUM1QixPQUFPLEVBQUUsOENBQThDO3dCQUN2RCxPQUFPLEVBQUUsQ0FBQyxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxLQUFLLENBQUM7cUJBQ3hDLENBQUM7b0JBQytCLHFCQUFNLE1BQU0sQ0FBQyxHQUFHLENBQUMsaUJBQWlCLENBQUMsRUFBQTs7b0JBQTVELG9CQUFvQixHQUFLLENBQUEsU0FBbUMsQ0FBQSxxQkFBeEM7b0JBQzVCLFVBQVUsQ0FBQyxLQUFLLENBQUMsY0FBYyxHQUFHLG9CQUFzQyxDQUFDOzs7O3lCQUl6RSxDQUFBLE9BQU8sQ0FBQyxHQUFHLElBQUksT0FBTyxDQUFDLElBQUksSUFBSSxPQUFPLENBQUMsR0FBRyxJQUFJLE9BQU8sQ0FBQyxJQUFJLENBQUEsRUFBMUQsd0JBQTBEO29CQUM1RCxVQUFVLENBQUMsS0FBSyxDQUFDLGNBQWMsR0FBRyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUM7OztvQkFFdkcsaUJBQWlCLEdBQUc7d0JBQ3hCLElBQUksRUFBRSxRQUFRO3dCQUNkLElBQUksRUFBRSxzQkFBc0I7d0JBQzVCLE9BQU8sRUFBRSw4Q0FBOEM7d0JBQ3ZELE9BQU8sRUFBRSxDQUFDLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLEtBQUssQ0FBQztxQkFDeEMsQ0FBQztvQkFDK0IscUJBQU0sTUFBTSxDQUFDLEdBQUcsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFBOztvQkFBNUQsb0JBQW9CLEdBQUssQ0FBQSxTQUFtQyxDQUFBLHFCQUF4QztvQkFDNUIsVUFBVSxDQUFDLEtBQUssQ0FBQyxjQUFjLEdBQUcsb0JBQXNDLENBQUM7OztvQkFLdkUsYUFBYSxHQUFHO3dCQUNwQixJQUFJLEVBQUUsUUFBUTt3QkFDZCxJQUFJLEVBQUUsa0JBQWtCO3dCQUN4QixPQUFPLEVBQUUsNENBQTRDO3dCQUNyRCxPQUFPLEVBQUUsQ0FBQyxrQkFBa0IsRUFBRSxhQUFhLEVBQUUsTUFBTSxDQUFDO3FCQUNyRCxDQUFDO29CQUVJLGlCQUFpQixHQUFHO3dCQUN4QixJQUFJLEVBQUUsUUFBUTt3QkFDZCxJQUFJLEVBQUUsc0JBQXNCO3dCQUM1QixPQUFPLEVBQUUsZ0RBQWdEO3dCQUN6RCxPQUFPLEVBQUUsQ0FBQyxPQUFPLEVBQUUsTUFBTSxFQUFFLGVBQWUsQ0FBQztxQkFDNUMsQ0FBQztvQkFFMkIscUJBQU0sTUFBTSxDQUFDLEdBQUcsQ0FBQyxhQUFhLENBQUMsRUFBQTs7b0JBQXBELGdCQUFnQixHQUFLLENBQUEsU0FBK0IsQ0FBQSxpQkFBcEM7eUJBRXBCLENBQUEsZ0JBQWdCLEtBQUssTUFBTSxDQUFBLEVBQTNCLHlCQUEyQjtvQkFDSSxxQkFBTSxNQUFNLENBQUMsR0FBRyxDQUFDLGlCQUFpQixDQUFDLEVBQUE7O29CQUE1RCxvQkFBb0IsR0FBSyxDQUFBLFNBQW1DLENBQUEscUJBQXhDO29CQUM1QixJQUFJLGdCQUFnQixLQUFLLGtCQUFrQixFQUFFLENBQUM7d0JBQzVDLFVBQVUsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDOzRCQUN2QixJQUFJLEVBQUUsa0JBQWtCOzRCQUN4QixJQUFJLEVBQUUsWUFBWTs0QkFDbEIsT0FBTyxFQUFFO2dDQUNQLElBQUksRUFBRSxvQkFBb0IsQ0FBQyxXQUFXLEVBQXFCOzZCQUM1RDt5QkFDRixDQUFDLENBQUM7b0JBQ0wsQ0FBQzt5QkFBTSxDQUFDO3dCQUNOLFVBQVUsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDOzRCQUN2QixJQUFJLEVBQUUsYUFBYTs0QkFDbkIsSUFBSSxFQUFFLFlBQVk7NEJBQ2xCLE9BQU8sRUFBRTtnQ0FDUCxJQUFJLEVBQUUsb0JBQW9CLENBQUMsV0FBVyxFQUFxQjs2QkFDNUQ7eUJBQ0YsQ0FBQyxDQUFDO29CQUNMLENBQUM7eUJBR0MsQ0FBQSxVQUFVLENBQUMsS0FBSyxDQUFDLGNBQWMsS0FBSyxLQUFLO3dCQUN6Qyw0QkFBNEI7d0JBQzVCLDRCQUE0QixLQUFLLHFCQUFxQixDQUFBLEVBRnRELHlCQUVzRDtvQkFFdEQsT0FBTyxDQUFDLElBQUksR0FBRyxHQUFHLEdBQUcsNENBQXFDLDRCQUE0QixNQUFHLENBQUMsQ0FBQztvQkFDM0YsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO29CQUNULE9BQU8sQ0FDTCx3RkFBaUYscUJBQXFCLG9FQUFpRSxDQUN4SyxDQUFDO29CQUNGLE9BQU8sQ0FBQyx3RUFBd0UsQ0FBQyxDQUFDO29CQUNsRixJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7b0JBQ1QsT0FBTyxDQUFDLDRCQUFxQixxQkFBcUIsV0FBUSxDQUFDLENBQUM7b0JBQzVELElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQztvQkFDVCxPQUFPLENBQUMsK0RBQXVELHFCQUFxQixPQUFHLENBQUMsQ0FBQztvQkFDekYsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO29CQUNULE9BQU8sQ0FBQyxpR0FBaUcsQ0FBQyxDQUFDO29CQUMzRyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7b0JBQ2MscUJBQU0sTUFBTSxDQUFDLE9BQU8sQ0FDekMsK0RBQXdELHFCQUFxQixNQUFHLEVBQ2hGLElBQUksQ0FDTCxFQUFBOztvQkFISyxjQUFjLEdBQUcsU0FHdEI7b0JBQ0QsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO3dCQUNwQixNQUFNLElBQUksS0FBSyxDQUFDLHVEQUF1RCxDQUFDLENBQUM7b0JBQzNFLENBQUM7Ozt5QkFDUSxDQUFBLFVBQVUsQ0FBQyxLQUFLLENBQUMsY0FBYyxLQUFLLEtBQUssSUFBSSxDQUFDLDRCQUE0QixDQUFBLEVBQTFFLHlCQUEwRTtvQkFDbkYsT0FBTyxDQUNMLElBQUksR0FBRyxHQUFHLEdBQUcsOEZBQThGLENBQzVHLENBQUM7b0JBQ0YsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO29CQUNULE9BQU8sQ0FDTCxrQ0FBMkIscUJBQXFCLHlIQUErRyxxQkFBcUIsNENBQXlDLENBQzlOLENBQUM7b0JBQ0YsT0FBTyxDQUFDLHdFQUF3RSxDQUFDLENBQUM7b0JBQ2xGLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQztvQkFDVCxPQUFPLENBQUMsb0NBQW9DLENBQUMsQ0FBQztvQkFDOUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO29CQUNULE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO29CQUMxQixJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7b0JBQ1QsT0FBTyxDQUFDLDRCQUFxQixxQkFBcUIsV0FBUSxDQUFDLENBQUM7b0JBQzVELElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQztvQkFDVCxPQUFPLENBQUMsK0RBQXVELHFCQUFxQixPQUFHLENBQUMsQ0FBQztvQkFDekYsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO29CQUNULE9BQU8sQ0FBQyxpR0FBaUcsQ0FBQyxDQUFDO29CQUMzRyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7b0JBQ2MscUJBQU0sTUFBTSxDQUFDLE9BQU8sQ0FBQyw4REFBOEQsRUFBRSxJQUFJLENBQUMsRUFBQTs7b0JBQTNHLGNBQWMsR0FBRyxTQUEwRjtvQkFDakgsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO3dCQUNwQixNQUFNLElBQUksS0FBSyxDQUFDLHVEQUF1RCxDQUFDLENBQUM7b0JBQzNFLENBQUM7OztvQkFFSCxPQUFPLENBQUMsMkJBQW9CLGdCQUFnQixNQUFHLENBQUMsQ0FBQzs7O29CQUVqRCxPQUFPLENBQUMsMENBQTBDLENBQUMsQ0FBQzs7O29CQUdoRCxxQkFBcUIsR0FBRyxDQUFDLFlBQVksRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLHdCQUF3QixFQUFFLFdBQVcsQ0FBQyxDQUFDO29CQUN2RyxVQUFVLEdBQUc7d0JBQ2pCLElBQUksRUFBRSxRQUFRO3dCQUNkLElBQUksRUFBRSxlQUFlO3dCQUNyQixPQUFPLEVBQUUseUNBQXlDO3dCQUNsRCxPQUFPLEVBQUUscUJBQXFCO3FCQUMvQixDQUFDO29CQUV3QixxQkFBTSxNQUFNLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxFQUFBOztvQkFBOUMsYUFBYSxHQUFLLENBQUEsU0FBNEIsQ0FBQSxjQUFqQztvQkFDckIsSUFBSSxhQUFhLEtBQUssWUFBWSxFQUFFLENBQUM7d0JBQ25DLFVBQVUsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEVBQUUsSUFBSSxFQUFFLFlBQVksRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLENBQUMsQ0FBQzt3QkFDbEUsT0FBTyxDQUFDLDZDQUE2QyxDQUFDLENBQUM7b0JBQ3pELENBQUM7eUJBQU0sSUFBSSxhQUFhLEtBQUssd0JBQXdCLEVBQUUsQ0FBQzt3QkFDdEQsVUFBVSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsQ0FBQyxDQUFDO3dCQUMvRCxPQUFPLENBQUMsNENBQTRDLENBQUMsQ0FBQztvQkFDeEQsQ0FBQzt5QkFBTSxJQUFJLGFBQWEsS0FBSyxTQUFTLEVBQUUsQ0FBQzt3QkFDdkMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsQ0FBQyxDQUFDO3dCQUMvRCxPQUFPLENBQUMsNENBQTRDLENBQUMsQ0FBQztvQkFDeEQsQ0FBQzt5QkFBTSxJQUFJLGFBQWEsS0FBSyxXQUFXLEVBQUUsQ0FBQzt3QkFDekMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsRUFBRSxJQUFJLEVBQUUsV0FBVyxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsQ0FBQyxDQUFDO3dCQUNqRSxPQUFPLENBQUMsOENBQThDLENBQUMsQ0FBQztvQkFDMUQsQ0FBQzt5QkFBTSxDQUFDO3dCQUNOLFVBQVUsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEVBQUUsSUFBSSxFQUFFLFlBQVksRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLENBQUMsQ0FBQzt3QkFDbEUsT0FBTyxDQUFDLHlFQUF5RSxDQUFDLENBQUM7b0JBQ3JGLENBQUM7b0JBRUssaUJBQWlCLEdBQUc7d0JBQ3hCLElBQUksRUFBRSxRQUFRO3dCQUNkLElBQUksRUFBRSxzQkFBc0I7d0JBQzVCLE9BQU8sRUFBRSxnREFBZ0Q7d0JBQ3pELE9BQU8sRUFBRSxDQUFDLE1BQU0sRUFBRSxVQUFVLEVBQUUsVUFBVSxDQUFDO3FCQUMxQyxDQUFDO29CQUUrQixxQkFBTSxNQUFNLENBQUMsR0FBRyxDQUFDLGlCQUFpQixDQUFDLEVBQUE7O29CQUE1RCxvQkFBb0IsR0FBSyxDQUFBLFNBQW1DLENBQUEscUJBQXhDO29CQUU1QixJQUFJLG9CQUFvQixLQUFLLFVBQVUsRUFBRSxDQUFDO3dCQUN4QyxVQUFVLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUUsSUFBSSxFQUFFLGdCQUFnQixFQUFFLENBQUMsQ0FBQzt3QkFDdkUsT0FBTyxDQUFDLDhDQUE4QyxDQUFDLENBQUM7b0JBQzFELENBQUM7eUJBQU0sSUFBSSxvQkFBb0IsS0FBSyxVQUFVLEVBQUUsQ0FBQzt3QkFDL0MsVUFBVSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFLElBQUksRUFBRSxnQkFBZ0IsRUFBRSxDQUFDLENBQUM7d0JBQ3ZFLE9BQU8sQ0FBQyw4Q0FBOEMsQ0FBQyxDQUFDO29CQUMxRCxDQUFDO3lCQUFNLENBQUM7d0JBQ04sT0FBTyxDQUFDLDhDQUE4QyxDQUFDLENBQUM7b0JBQzFELENBQUM7b0JBR0ssa0JBQWtCLEdBQUc7d0JBQ3pCLElBQUksRUFBRSxRQUFRO3dCQUNkLElBQUksRUFBRSx1QkFBdUI7d0JBQzdCLE9BQU8sRUFBRSxzREFBc0Q7d0JBQy9ELE9BQU8sRUFBRSxDQUFDLFNBQVMsRUFBRSxNQUFNLENBQUM7cUJBQzdCLENBQUM7b0JBRWdDLHFCQUFNLE1BQU0sQ0FBQyxHQUFHLENBQUMsa0JBQWtCLENBQUMsRUFBQTs7b0JBQTlELHFCQUFxQixHQUFLLENBQUEsU0FBb0MsQ0FBQSxzQkFBekM7b0JBRTdCLElBQUkscUJBQXFCLEtBQUssU0FBUyxFQUFFLENBQUM7d0JBQ3hDLFVBQVUsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUUsc0JBQXNCLEVBQUUsQ0FBQyxDQUFDO3dCQUM1RSxPQUFPLENBQUMsbURBQW1ELENBQUMsQ0FBQztvQkFDL0QsQ0FBQzt5QkFBTSxDQUFDO3dCQUNOLE9BQU8sQ0FBQyxvREFBb0QsQ0FBQyxDQUFDO29CQUNoRSxDQUFDO29CQUVELHNCQUFPLFVBQVUsRUFBQzs7OztDQUNuQjtBQXpORCx3QkF5TkMifQ==
@@ -40,6 +40,9 @@ function showHelp(info, highlight, warning) {
40
40
  info(' --unistyles Use Unistyles for styling');
41
41
  info(' --stylesheet Use StyleSheet for styling');
42
42
  info('');
43
+ highlight(' Internationalization');
44
+ info(' --i18next Use i18next and react-i18next for internationalization');
45
+ info('');
43
46
  highlight(' Opinionated Stacks');
44
47
  info(' -i, --ignite Use Ignite to create an opinionated stack');
45
48
  info('');
@@ -54,4 +57,4 @@ function showHelp(info, highlight, warning) {
54
57
  info('');
55
58
  }
56
59
  exports.showHelp = showHelp;
57
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hvd0hlbHAuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdXRpbGl0aWVzL3Nob3dIZWxwLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLFNBQWdCLFFBQVEsQ0FBQyxJQUFJLEVBQUUsU0FBUyxFQUFFLE9BQU87SUFDL0MsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ1QsU0FBUyxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ3BCLElBQUksQ0FBQyw2Q0FBNkMsQ0FBQyxDQUFDO0lBQ3BELElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUNULFNBQVMsQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUNyQixPQUFPLENBQUMsc0RBQXNELENBQUMsQ0FBQztJQUNoRSxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDVCxTQUFTLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDdkIsSUFBSSxDQUFDLDBFQUEwRSxDQUFDLENBQUM7SUFDakYsSUFBSSxDQUFDLHFFQUFxRSxDQUFDLENBQUM7SUFDNUUsSUFBSSxDQUFDLDhEQUE4RCxDQUFDLENBQUM7SUFDckUsSUFBSSxDQUFDLHlFQUF5RSxDQUFDLENBQUM7SUFDaEYsSUFBSSxDQUFDLDZEQUE2RCxDQUFDLENBQUM7SUFDcEUsSUFBSSxDQUFDLDBEQUEwRCxDQUFDLENBQUM7SUFDakUsSUFBSSxDQUFDLDJEQUEyRCxDQUFDLENBQUM7SUFDbEUsSUFBSSxDQUFDLDJEQUEyRCxDQUFDLENBQUM7SUFDbEUsSUFBSSxDQUFDLDBDQUEwQyxDQUFDLENBQUM7SUFDakQsSUFBSSxDQUFDLGtEQUFrRCxDQUFDLENBQUM7SUFDekQsSUFBSSxDQUFDLDBDQUEwQyxDQUFDLENBQUM7SUFDakQsSUFBSSxDQUFDLHNDQUFzQyxDQUFDLENBQUM7SUFDN0MsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ1QsU0FBUyxDQUFDLCtCQUErQixDQUFDLENBQUM7SUFDM0MsSUFBSSxDQUFDLHVEQUF1RCxDQUFDLENBQUM7SUFDOUQsSUFBSSxDQUFDLDREQUE0RCxDQUFDLENBQUM7SUFDbkUsSUFBSSxDQUFDLGdEQUFnRCxDQUFDLENBQUM7SUFDdkQsSUFBSSxDQUFDLHlEQUF5RCxDQUFDLENBQUM7SUFDaEUsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ1QsU0FBUyxDQUFDLG1DQUFtQyxDQUFDLENBQUM7SUFDL0MsSUFBSSxDQUFDLHdEQUF3RCxDQUFDLENBQUM7SUFDL0QsSUFBSSxDQUFDLHdEQUF3RCxDQUFDLENBQUM7SUFDL0QsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ1QsU0FBUyxDQUFDLDRCQUE0QixDQUFDLENBQUM7SUFDeEMsSUFBSSxDQUFDLG1EQUFtRCxDQUFDLENBQUM7SUFDMUQsSUFBSSxDQUFDLGdEQUFnRCxDQUFDLENBQUM7SUFDdkQsSUFBSSxDQUFDLGdEQUFnRCxDQUFDLENBQUM7SUFDdkQsSUFBSSxDQUFDLGtEQUFrRCxDQUFDLENBQUM7SUFDekQsSUFBSSxDQUFDLCtDQUErQyxDQUFDLENBQUM7SUFDdEQsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ1QsU0FBUyxDQUFDLHVCQUF1QixDQUFDLENBQUM7SUFDbkMsSUFBSSxDQUFDLHFFQUFxRSxDQUFDLENBQUM7SUFDNUUsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBRVQsU0FBUyxDQUFDLDBCQUEwQixDQUFDLENBQUM7SUFDdEMsSUFBSSxDQUFDLDJFQUEyRSxDQUFDLENBQUM7SUFDbEYsSUFBSSxDQUFDLDBFQUEwRSxDQUFDLENBQUM7SUFDakYsSUFBSSxDQUFDLDhEQUE4RCxDQUFDLENBQUM7SUFDckUsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ1QsSUFBSSxDQUFDLGtCQUFrQixDQUFDLENBQUM7SUFDekIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ1YsT0FBTyxDQUFDLGtGQUFrRixDQUFDLENBQUM7SUFDNUYsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0FBQ1gsQ0FBQztBQXBERCw0QkFvREMifQ==
60
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hvd0hlbHAuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdXRpbGl0aWVzL3Nob3dIZWxwLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLFNBQWdCLFFBQVEsQ0FBQyxJQUFJLEVBQUUsU0FBUyxFQUFFLE9BQU87SUFDL0MsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ1QsU0FBUyxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ3BCLElBQUksQ0FBQyw2Q0FBNkMsQ0FBQyxDQUFDO0lBQ3BELElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUNULFNBQVMsQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUNyQixPQUFPLENBQUMsc0RBQXNELENBQUMsQ0FBQztJQUNoRSxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDVCxTQUFTLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDdkIsSUFBSSxDQUFDLDBFQUEwRSxDQUFDLENBQUM7SUFDakYsSUFBSSxDQUFDLHFFQUFxRSxDQUFDLENBQUM7SUFDNUUsSUFBSSxDQUFDLDhEQUE4RCxDQUFDLENBQUM7SUFDckUsSUFBSSxDQUFDLHlFQUF5RSxDQUFDLENBQUM7SUFDaEYsSUFBSSxDQUFDLDZEQUE2RCxDQUFDLENBQUM7SUFDcEUsSUFBSSxDQUFDLDBEQUEwRCxDQUFDLENBQUM7SUFDakUsSUFBSSxDQUFDLDJEQUEyRCxDQUFDLENBQUM7SUFDbEUsSUFBSSxDQUFDLDJEQUEyRCxDQUFDLENBQUM7SUFDbEUsSUFBSSxDQUFDLDBDQUEwQyxDQUFDLENBQUM7SUFDakQsSUFBSSxDQUFDLGtEQUFrRCxDQUFDLENBQUM7SUFDekQsSUFBSSxDQUFDLDBDQUEwQyxDQUFDLENBQUM7SUFDakQsSUFBSSxDQUFDLHNDQUFzQyxDQUFDLENBQUM7SUFDN0MsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ1QsU0FBUyxDQUFDLCtCQUErQixDQUFDLENBQUM7SUFDM0MsSUFBSSxDQUFDLHVEQUF1RCxDQUFDLENBQUM7SUFDOUQsSUFBSSxDQUFDLDREQUE0RCxDQUFDLENBQUM7SUFDbkUsSUFBSSxDQUFDLGdEQUFnRCxDQUFDLENBQUM7SUFDdkQsSUFBSSxDQUFDLHlEQUF5RCxDQUFDLENBQUM7SUFDaEUsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ1QsU0FBUyxDQUFDLG1DQUFtQyxDQUFDLENBQUM7SUFDL0MsSUFBSSxDQUFDLHdEQUF3RCxDQUFDLENBQUM7SUFDL0QsSUFBSSxDQUFDLHdEQUF3RCxDQUFDLENBQUM7SUFDL0QsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ1QsU0FBUyxDQUFDLDRCQUE0QixDQUFDLENBQUM7SUFDeEMsSUFBSSxDQUFDLG1EQUFtRCxDQUFDLENBQUM7SUFDMUQsSUFBSSxDQUFDLGdEQUFnRCxDQUFDLENBQUM7SUFDdkQsSUFBSSxDQUFDLGdEQUFnRCxDQUFDLENBQUM7SUFDdkQsSUFBSSxDQUFDLGtEQUFrRCxDQUFDLENBQUM7SUFDekQsSUFBSSxDQUFDLCtDQUErQyxDQUFDLENBQUM7SUFDdEQsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ1QsU0FBUyxDQUFDLHlCQUF5QixDQUFDLENBQUM7SUFDckMsSUFBSSxDQUFDLCtFQUErRSxDQUFDLENBQUM7SUFDdEYsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ1QsU0FBUyxDQUFDLHVCQUF1QixDQUFDLENBQUM7SUFDbkMsSUFBSSxDQUFDLHFFQUFxRSxDQUFDLENBQUM7SUFDNUUsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBRVQsU0FBUyxDQUFDLDBCQUEwQixDQUFDLENBQUM7SUFDdEMsSUFBSSxDQUFDLDJFQUEyRSxDQUFDLENBQUM7SUFDbEYsSUFBSSxDQUFDLDBFQUEwRSxDQUFDLENBQUM7SUFDakYsSUFBSSxDQUFDLDhEQUE4RCxDQUFDLENBQUM7SUFDckUsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ1QsSUFBSSxDQUFDLGtCQUFrQixDQUFDLENBQUM7SUFDekIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ1YsT0FBTyxDQUFDLGtGQUFrRixDQUFDLENBQUM7SUFDNUYsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0FBQ1gsQ0FBQztBQXZERCw0QkF1REMifQ==
@@ -37,7 +37,7 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
37
37
  };
38
38
  Object.defineProperty(exports, "__esModule", { value: true });
39
39
  exports.validateProjectName = void 0;
40
- function validateProjectName(exists, removeAsync, prompt, projectName) {
40
+ function validateProjectName(exists, removeAsync, prompt, projectName, success, overwrite) {
41
41
  return __awaiter(this, void 0, void 0, function () {
42
42
  var confirmDelete;
43
43
  return __generator(this, function (_a) {
@@ -46,7 +46,13 @@ function validateProjectName(exists, removeAsync, prompt, projectName) {
46
46
  if (!exists(projectName)) {
47
47
  return [2 /*return*/];
48
48
  }
49
- if (!(prompt != null)) return [3 /*break*/, 3];
49
+ if (!(overwrite || (exists(projectName) === 'dir' && !prompt))) return [3 /*break*/, 2];
50
+ return [4 /*yield*/, removeAsync(projectName)];
51
+ case 1:
52
+ _a.sent();
53
+ return [2 /*return*/];
54
+ case 2:
55
+ if (!(prompt != null)) return [3 /*break*/, 5];
50
56
  return [4 /*yield*/, prompt.ask([
51
57
  {
52
58
  type: 'confirm',
@@ -54,17 +60,17 @@ function validateProjectName(exists, removeAsync, prompt, projectName) {
54
60
  message: "A folder with the name '".concat(projectName, "' already exists. Do you want to delete it?")
55
61
  }
56
62
  ])];
57
- case 1:
63
+ case 3:
58
64
  confirmDelete = _a.sent();
59
- if (!confirmDelete.delete) return [3 /*break*/, 3];
65
+ if (!confirmDelete.delete) return [3 /*break*/, 5];
60
66
  return [4 /*yield*/, removeAsync(projectName)];
61
- case 2:
67
+ case 4:
62
68
  _a.sent();
63
- return [2 /*return*/, void console.log("Deleted existing directory: ".concat(projectName))];
64
- case 3: throw new Error("A project with the name '".concat(projectName, "' already exists."));
69
+ return [2 /*return*/, void success("Deleted existing directory: ".concat(projectName))];
70
+ case 5: throw new Error("A project with the name '".concat(projectName, "' already exists."));
65
71
  }
66
72
  });
67
73
  });
68
74
  }
69
75
  exports.validateProjectName = validateProjectName;
70
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsaWRhdGVQcm9qZWN0TmFtZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvdmFsaWRhdGVQcm9qZWN0TmFtZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFHQSxTQUFzQixtQkFBbUIsQ0FDdkMsTUFBc0MsRUFDdEMsV0FBNkMsRUFDN0MsTUFBNEIsRUFDNUIsV0FBbUI7Ozs7OztvQkFFbkIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDO3dCQUN6QixzQkFBTztvQkFDVCxDQUFDO3lCQUVHLENBQUEsTUFBTSxJQUFJLElBQUksQ0FBQSxFQUFkLHdCQUFjO29CQUNNLHFCQUFNLE1BQU0sQ0FBQyxHQUFHLENBQUM7NEJBQ3JDO2dDQUNFLElBQUksRUFBRSxTQUFTO2dDQUNmLElBQUksRUFBRSxRQUFRO2dDQUNkLE9BQU8sRUFBRSxrQ0FBMkIsV0FBVyxnREFBNkM7NkJBQzdGO3lCQUNGLENBQUMsRUFBQTs7b0JBTkksYUFBYSxHQUFHLFNBTXBCO3lCQUVFLGFBQWEsQ0FBQyxNQUFNLEVBQXBCLHdCQUFvQjtvQkFDdEIscUJBQU0sV0FBVyxDQUFDLFdBQVcsQ0FBQyxFQUFBOztvQkFBOUIsU0FBOEIsQ0FBQztvQkFDL0Isc0JBQU8sS0FBSyxPQUFPLENBQUMsR0FBRyxDQUFDLHNDQUErQixXQUFXLENBQUUsQ0FBQyxFQUFDO3dCQUkxRSxNQUFNLElBQUksS0FBSyxDQUFDLG1DQUE0QixXQUFXLHNCQUFtQixDQUFDLENBQUM7Ozs7Q0FDN0U7QUExQkQsa0RBMEJDIn0=
76
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsaWRhdGVQcm9qZWN0TmFtZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvdmFsaWRhdGVQcm9qZWN0TmFtZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFHQSxTQUFzQixtQkFBbUIsQ0FDdkMsTUFBc0MsRUFDdEMsV0FBNkMsRUFDN0MsTUFBNEIsRUFDNUIsV0FBbUIsRUFDbkIsT0FBa0MsRUFDbEMsU0FBa0I7Ozs7OztvQkFFbEIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDO3dCQUN6QixzQkFBTztvQkFDVCxDQUFDO3lCQUVHLENBQUEsU0FBUyxJQUFJLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxLQUFLLEtBQUssSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFBLEVBQXZELHdCQUF1RDtvQkFDekQscUJBQU0sV0FBVyxDQUFDLFdBQVcsQ0FBQyxFQUFBOztvQkFBOUIsU0FBOEIsQ0FBQztvQkFDL0Isc0JBQU87O3lCQUdMLENBQUEsTUFBTSxJQUFJLElBQUksQ0FBQSxFQUFkLHdCQUFjO29CQUNNLHFCQUFNLE1BQU0sQ0FBQyxHQUFHLENBQUM7NEJBQ3JDO2dDQUNFLElBQUksRUFBRSxTQUFTO2dDQUNmLElBQUksRUFBRSxRQUFRO2dDQUNkLE9BQU8sRUFBRSxrQ0FBMkIsV0FBVyxnREFBNkM7NkJBQzdGO3lCQUNGLENBQUMsRUFBQTs7b0JBTkksYUFBYSxHQUFHLFNBTXBCO3lCQUVFLGFBQWEsQ0FBQyxNQUFNLEVBQXBCLHdCQUFvQjtvQkFDdEIscUJBQU0sV0FBVyxDQUFDLFdBQVcsQ0FBQyxFQUFBOztvQkFBOUIsU0FBOEIsQ0FBQztvQkFDL0Isc0JBQU8sS0FBSyxPQUFPLENBQUMsc0NBQStCLFdBQVcsQ0FBRSxDQUFDLEVBQUM7d0JBSXRFLE1BQU0sSUFBSSxLQUFLLENBQUMsbUNBQTRCLFdBQVcsc0JBQW1CLENBQUMsQ0FBQzs7OztDQUM3RTtBQWpDRCxrREFpQ0MifQ==
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "create-expo-stack",
3
- "version": "2.4.3-next.e841ea5",
3
+ "version": "2.5.0-next.00da55e",
4
4
  "description": "CLI tool to initialize a React Native application with Expo",
5
5
  "repository": {
6
6
  "type": "git",
@@ -1,7 +0,0 @@
1
- {
2
- "printWidth": 100,
3
- "tabWidth": 2,
4
- "singleQuote": true,
5
- "bracketSameLine": true,
6
- "trailingComma": "es5"
7
- }
@@ -1,153 +0,0 @@
1
- <% if (props.stylingPackage?.name === 'nativewind') { %>
2
- import { Text, View } from 'react-native';
3
- <% } else if (props.stylingPackage?.name === 'tamagui') { %>
4
- import { YStack, H4, Paragraph } from 'tamagui'
5
- <% } else if (props.stylingPackage?.name === 'restyle') { %>
6
- import { Box, Text } from 'theme';
7
- <% } else if (props.stylingPackage?.name === 'unistyles') { %>
8
- import { createStyleSheet, useStyles } from 'react-native-unistyles'
9
- import { Text, View } from 'react-native';
10
- <% } else { %>
11
- import { StyleSheet, Text, View } from 'react-native';
12
- <% } %>
13
-
14
- export default function EditScreenInfo({ path }: { path: string }) {
15
- <% if (props.stylingPackage?.name === 'unistyles') { %>
16
- const { styles } = useStyles(stylesheet);
17
- <% } %>
18
- <% if (props.stylingPackage?.name === 'nativewind') { %>
19
- return (
20
- <View>
21
- <View className={styles.getStartedContainer}>
22
- <Text className={styles.getStartedText}>
23
- Open up the code for this screen:
24
- </Text>
25
- <View className={styles.codeHighlightContainer + styles.homeScreenFilename}>
26
- <Text>{path}</Text>
27
- </View>
28
- <Text className={styles.getStartedText}>
29
- Change any of the text, save the file, and your app will automatically update.
30
- </Text>
31
- </View>
32
- </View>
33
- );
34
- <% } else if (props.stylingPackage?.name === 'tamagui') { %>
35
- return (
36
- <YStack>
37
- <YStack alignItems='center' marginHorizontal='$6'>
38
- <H4>
39
- Open up the code for this screen:
40
- </H4>
41
- <YStack borderRadius='$3' marginVertical='$1'>
42
- <Paragraph>{path}</Paragraph>
43
- </YStack>
44
- <Paragraph>
45
- Change any of the text, save the file, and your app will automatically update.
46
- </Paragraph>
47
- </YStack>
48
- </YStack>
49
- );
50
- <% } else if (props.stylingPackage?.name === 'restyle') { %>
51
- return (
52
- <Box alignItems='center' marginHorizontal='xl_64'>
53
- <Text variant='body' lineHeight={24} textAlign='center'>
54
- Open up the code for this screen:
55
- </Text>
56
- <Box borderRadius='s_3' paddingHorizontal='xs_4' marginVertical='s_8'>
57
- <Text>{path}</Text>
58
- </Box>
59
- <Text variant='body' lineHeight={24} textAlign='center'>
60
- Change any of the text, save the file, and your app will automatically update.
61
- </Text>
62
- </Box>
63
- );
64
- <% } else { %>
65
- return (
66
- <View>
67
- <View style={styles.getStartedContainer}>
68
- <Text style={styles.getStartedText}>
69
- Open up the code for this screen:
70
- </Text>
71
- <View style={[styles.codeHighlightContainer, styles.homeScreenFilename]}>
72
- <Text>{path}</Text>
73
- </View>
74
- <Text style={styles.getStartedText}>
75
- Change any of the text, save the file, and your app will automatically update.
76
- </Text>
77
- </View>
78
- </View>
79
- );
80
- <% } %>
81
- }
82
-
83
- <% if (props.stylingPackage?.name === 'nativewind') { %>
84
- const styles = {
85
- codeHighlightContainer: `rounded-md px-1`,
86
- getStartedContainer: `items-center mx-12`,
87
- getStartedText: `text-lg leading-6 text-center`,
88
- helpContainer: `items-center mx-5 mt-4`,
89
- helpLink: `py-4`,
90
- helpLinkText: `text-center`,
91
- homeScreenFilename: `my-2`,
92
- };
93
- <% } else if (props.stylingPackage?.name === 'unistyles') { %>
94
- const stylesheet = createStyleSheet({
95
- codeHighlightContainer: {
96
- borderRadius: 3,
97
- paddingHorizontal: 4
98
- },
99
- getStartedContainer: {
100
- alignItems: 'center',
101
- marginHorizontal: 50
102
- },
103
- getStartedText: {
104
- fontSize: 17,
105
- lineHeight: 24,
106
- textAlign: 'center'
107
- },
108
- helpContainer: {
109
- alignItems: 'center',
110
- marginHorizontal: 20,
111
- marginTop: 15
112
- },
113
- helpLink: {
114
- paddingVertical: 15
115
- },
116
- helpLinkText: {
117
- textAlign: 'center'
118
- },
119
- homeScreenFilename: {
120
- marginVertical: 7
121
- }
122
- });
123
- <% } else if (props.stylingPackage?.name === 'stylesheet') { %>
124
- const styles = StyleSheet.create({
125
- codeHighlightContainer: {
126
- borderRadius: 3,
127
- paddingHorizontal: 4
128
- },
129
- getStartedContainer: {
130
- alignItems: 'center',
131
- marginHorizontal: 50
132
- },
133
- getStartedText: {
134
- fontSize: 17,
135
- lineHeight: 24,
136
- textAlign: 'center'
137
- },
138
- helpContainer: {
139
- alignItems: 'center',
140
- marginHorizontal: 20,
141
- marginTop: 15
142
- },
143
- helpLink: {
144
- paddingVertical: 15
145
- },
146
- helpLinkText: {
147
- textAlign: 'center'
148
- },
149
- homeScreenFilename: {
150
- marginVertical: 7
151
- }
152
- });
153
- <% } %>
@@ -1,4 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- require("expo-router/entry");
4
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvdGVtcGxhdGVzL3BhY2thZ2VzL2V4cG8tcm91dGVyL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsNkJBQTJCIn0=
@@ -1 +0,0 @@
1
- import 'expo-router/entry';