@nx/expo 16.0.0-beta.1

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 (243) hide show
  1. package/.eslintrc.json +19 -0
  2. package/CHANGELOG.md +8 -0
  3. package/LICENSE +22 -0
  4. package/README.md +63 -0
  5. package/collection.json +0 -0
  6. package/docs/build-list-examples.md +71 -0
  7. package/docs/prebuild-examples.md +70 -0
  8. package/docs/run-examples.md +91 -0
  9. package/docs/start-examples.md +98 -0
  10. package/executors.json +116 -0
  11. package/generators.json +61 -0
  12. package/index.d.ts +4 -0
  13. package/index.js +12 -0
  14. package/index.js.map +1 -0
  15. package/migrations.json +734 -0
  16. package/package.json +59 -0
  17. package/plugins/jest/svg-mock.d.ts +0 -0
  18. package/plugins/jest/svg-mock.js +4 -0
  19. package/plugins/jest/svg-mock.js.map +1 -0
  20. package/plugins/metro-resolver.d.ts +1 -0
  21. package/plugins/metro-resolver.js +135 -0
  22. package/plugins/metro-resolver.js.map +1 -0
  23. package/plugins/with-nx-metro.d.ts +8 -0
  24. package/plugins/with-nx-metro.js +31 -0
  25. package/plugins/with-nx-metro.js.map +1 -0
  26. package/plugins/with-nx-webpack.d.ts +5 -0
  27. package/plugins/with-nx-webpack.js +52 -0
  28. package/plugins/with-nx-webpack.js.map +1 -0
  29. package/project.json +61 -0
  30. package/src/executors/build/build.impl.d.ts +6 -0
  31. package/src/executors/build/build.impl.js +62 -0
  32. package/src/executors/build/build.impl.js.map +1 -0
  33. package/src/executors/build/compat.d.ts +2 -0
  34. package/src/executors/build/compat.js +6 -0
  35. package/src/executors/build/compat.js.map +1 -0
  36. package/src/executors/build/schema.d.ts +14 -0
  37. package/src/executors/build/schema.json +60 -0
  38. package/src/executors/build-list/build-fragment.d.ts +54 -0
  39. package/src/executors/build-list/build-list.impl.d.ts +7 -0
  40. package/src/executors/build-list/build-list.impl.js +86 -0
  41. package/src/executors/build-list/build-list.impl.js.map +1 -0
  42. package/src/executors/build-list/compat.d.ts +2 -0
  43. package/src/executors/build-list/compat.js +6 -0
  44. package/src/executors/build-list/compat.js.map +1 -0
  45. package/src/executors/build-list/schema.d.ts +25 -0
  46. package/src/executors/build-list/schema.json +79 -0
  47. package/src/executors/download/compat.d.ts +2 -0
  48. package/src/executors/download/compat.js +6 -0
  49. package/src/executors/download/compat.js.map +1 -0
  50. package/src/executors/download/download.impl.d.ts +15 -0
  51. package/src/executors/download/download.impl.js +101 -0
  52. package/src/executors/download/download.impl.js.map +1 -0
  53. package/src/executors/download/schema.d.ts +3 -0
  54. package/src/executors/download/schema.json +59 -0
  55. package/src/executors/ensure-symlink/compat.d.ts +2 -0
  56. package/src/executors/ensure-symlink/compat.js +6 -0
  57. package/src/executors/ensure-symlink/compat.js.map +1 -0
  58. package/src/executors/ensure-symlink/ensure-symlink.impl.d.ts +5 -0
  59. package/src/executors/ensure-symlink/ensure-symlink.impl.js +13 -0
  60. package/src/executors/ensure-symlink/ensure-symlink.impl.js.map +1 -0
  61. package/src/executors/ensure-symlink/schema.json +11 -0
  62. package/src/executors/export/compat.d.ts +2 -0
  63. package/src/executors/export/compat.js +6 -0
  64. package/src/executors/export/compat.js.map +1 -0
  65. package/src/executors/export/export.impl.d.ts +6 -0
  66. package/src/executors/export/export.impl.js +69 -0
  67. package/src/executors/export/export.impl.js.map +1 -0
  68. package/src/executors/export/schema.d.ts +11 -0
  69. package/src/executors/export/schema.json +48 -0
  70. package/src/executors/install/compat.d.ts +2 -0
  71. package/src/executors/install/compat.js +6 -0
  72. package/src/executors/install/compat.js.map +1 -0
  73. package/src/executors/install/install.impl.d.ts +7 -0
  74. package/src/executors/install/install.impl.js +70 -0
  75. package/src/executors/install/install.impl.js.map +1 -0
  76. package/src/executors/install/schema.d.ts +7 -0
  77. package/src/executors/install/schema.json +34 -0
  78. package/src/executors/prebuild/compat.d.ts +2 -0
  79. package/src/executors/prebuild/compat.js +6 -0
  80. package/src/executors/prebuild/compat.js.map +1 -0
  81. package/src/executors/prebuild/prebuild.impl.d.ts +7 -0
  82. package/src/executors/prebuild/prebuild.impl.js +70 -0
  83. package/src/executors/prebuild/prebuild.impl.js.map +1 -0
  84. package/src/executors/prebuild/schema.d.ts +7 -0
  85. package/src/executors/prebuild/schema.json +35 -0
  86. package/src/executors/run/compat.d.ts +2 -0
  87. package/src/executors/run/compat.js +6 -0
  88. package/src/executors/run/compat.js.map +1 -0
  89. package/src/executors/run/run.impl.d.ts +6 -0
  90. package/src/executors/run/run.impl.js +112 -0
  91. package/src/executors/run/run.impl.js.map +1 -0
  92. package/src/executors/run/schema.d.ts +25 -0
  93. package/src/executors/run/schema.json +71 -0
  94. package/src/executors/start/compat.d.ts +2 -0
  95. package/src/executors/start/compat.js +6 -0
  96. package/src/executors/start/compat.js.map +1 -0
  97. package/src/executors/start/schema.d.ts +22 -0
  98. package/src/executors/start/schema.json +93 -0
  99. package/src/executors/start/start.impl.d.ts +7 -0
  100. package/src/executors/start/start.impl.js +73 -0
  101. package/src/executors/start/start.impl.js.map +1 -0
  102. package/src/executors/sync-deps/compat.d.ts +2 -0
  103. package/src/executors/sync-deps/compat.js +6 -0
  104. package/src/executors/sync-deps/compat.js.map +1 -0
  105. package/src/executors/sync-deps/schema.d.ts +4 -0
  106. package/src/executors/sync-deps/schema.json +28 -0
  107. package/src/executors/sync-deps/sync-deps.impl.d.ts +8 -0
  108. package/src/executors/sync-deps/sync-deps.impl.js +62 -0
  109. package/src/executors/sync-deps/sync-deps.impl.js.map +1 -0
  110. package/src/executors/update/compat.d.ts +2 -0
  111. package/src/executors/update/compat.js +6 -0
  112. package/src/executors/update/compat.js.map +1 -0
  113. package/src/executors/update/schema.d.ts +15 -0
  114. package/src/executors/update/schema.json +65 -0
  115. package/src/executors/update/update.impl.d.ts +6 -0
  116. package/src/executors/update/update.impl.js +59 -0
  117. package/src/executors/update/update.impl.js.map +1 -0
  118. package/src/generators/application/application.d.ts +5 -0
  119. package/src/generators/application/application.js +33 -0
  120. package/src/generators/application/application.js.map +1 -0
  121. package/src/generators/application/files/app.json.template +33 -0
  122. package/src/generators/application/files/assets/adaptive-icon.png +0 -0
  123. package/src/generators/application/files/assets/favicon.png +0 -0
  124. package/src/generators/application/files/assets/icon.png +0 -0
  125. package/src/generators/application/files/assets/splash.png +0 -0
  126. package/src/generators/application/files/babel.config.js.template +6 -0
  127. package/src/generators/application/files/eas.json.template +28 -0
  128. package/src/generators/application/files/index.js.template +8 -0
  129. package/src/generators/application/files/metro.config.js.template +25 -0
  130. package/src/generators/application/files/package.json.template +17 -0
  131. package/src/generators/application/files/src/app/App.spec.tsx.template +9 -0
  132. package/src/generators/application/files/src/app/App.tsx.template +694 -0
  133. package/src/generators/application/files/test-setup.ts.template +1 -0
  134. package/src/generators/application/files/tsconfig.app.json.template +9 -0
  135. package/src/generators/application/files/tsconfig.json.template +26 -0
  136. package/src/generators/application/lib/add-detox.d.ts +3 -0
  137. package/src/generators/application/lib/add-detox.js +16 -0
  138. package/src/generators/application/lib/add-detox.js.map +1 -0
  139. package/src/generators/application/lib/add-project.d.ts +3 -0
  140. package/src/generators/application/lib/add-project.js +91 -0
  141. package/src/generators/application/lib/add-project.js.map +1 -0
  142. package/src/generators/application/lib/create-application-files.d.ts +3 -0
  143. package/src/generators/application/lib/create-application-files.js +24 -0
  144. package/src/generators/application/lib/create-application-files.js.map +1 -0
  145. package/src/generators/application/lib/normalize-options.d.ts +10 -0
  146. package/src/generators/application/lib/normalize-options.js +30 -0
  147. package/src/generators/application/lib/normalize-options.js.map +1 -0
  148. package/src/generators/application/schema.d.ts +19 -0
  149. package/src/generators/application/schema.json +88 -0
  150. package/src/generators/component/component.d.ts +5 -0
  151. package/src/generators/component/component.js +51 -0
  152. package/src/generators/component/component.js.map +1 -0
  153. package/src/generators/component/files/__fileName__.spec.tsx.template +11 -0
  154. package/src/generators/component/files/__fileName__.tsx.template +32 -0
  155. package/src/generators/component/lib/add-import.d.ts +3 -0
  156. package/src/generators/component/lib/add-import.js +30 -0
  157. package/src/generators/component/lib/add-import.js.map +1 -0
  158. package/src/generators/component/lib/normalize-options.d.ts +8 -0
  159. package/src/generators/component/lib/normalize-options.js +58 -0
  160. package/src/generators/component/lib/normalize-options.js.map +1 -0
  161. package/src/generators/component/schema.d.ts +15 -0
  162. package/src/generators/component/schema.json +83 -0
  163. package/src/generators/init/init.d.ts +6 -0
  164. package/src/generators/init/init.js +69 -0
  165. package/src/generators/init/init.js.map +1 -0
  166. package/src/generators/init/lib/add-git-ignore-entry.d.ts +2 -0
  167. package/src/generators/init/lib/add-git-ignore-entry.js +19 -0
  168. package/src/generators/init/lib/add-git-ignore-entry.js.map +1 -0
  169. package/src/generators/init/lib/gitignore-entries.d.ts +1 -0
  170. package/src/generators/init/lib/gitignore-entries.js +20 -0
  171. package/src/generators/init/lib/gitignore-entries.js.map +1 -0
  172. package/src/generators/init/lib/init-root-babel-config.d.ts +2 -0
  173. package/src/generators/init/lib/init-root-babel-config.js +14 -0
  174. package/src/generators/init/lib/init-root-babel-config.js.map +1 -0
  175. package/src/generators/init/schema.d.ts +7 -0
  176. package/src/generators/init/schema.json +38 -0
  177. package/src/generators/library/files/lib/README.md +7 -0
  178. package/src/generators/library/files/lib/babel.config.json +17 -0
  179. package/src/generators/library/files/lib/package.json.template +5 -0
  180. package/src/generators/library/files/lib/src/index.ts.template +0 -0
  181. package/src/generators/library/files/lib/test-setup.ts.template +1 -0
  182. package/src/generators/library/files/lib/tsconfig.json.template +16 -0
  183. package/src/generators/library/files/lib/tsconfig.lib.json.template +9 -0
  184. package/src/generators/library/lib/normalize-options.d.ts +12 -0
  185. package/src/generators/library/lib/normalize-options.js +27 -0
  186. package/src/generators/library/lib/normalize-options.js.map +1 -0
  187. package/src/generators/library/library.d.ts +5 -0
  188. package/src/generators/library/library.js +101 -0
  189. package/src/generators/library/library.js.map +1 -0
  190. package/src/generators/library/schema.d.ts +22 -0
  191. package/src/generators/library/schema.json +99 -0
  192. package/src/migrations/update-14-0-0/add-project-root-metro-config-14-0-0.d.ts +6 -0
  193. package/src/migrations/update-14-0-0/add-project-root-metro-config-14-0-0.js +35 -0
  194. package/src/migrations/update-14-0-0/add-project-root-metro-config-14-0-0.js.map +1 -0
  195. package/src/migrations/update-14-1-2/add-eject-target-14-1-2.d.ts +5 -0
  196. package/src/migrations/update-14-1-2/add-eject-target-14-1-2.js +25 -0
  197. package/src/migrations/update-14-1-2/add-eject-target-14-1-2.js.map +1 -0
  198. package/src/migrations/update-14-4-3/add-eas-build-target.d.ts +5 -0
  199. package/src/migrations/update-14-4-3/add-eas-build-target.js +42 -0
  200. package/src/migrations/update-14-4-3/add-eas-build-target.js.map +1 -0
  201. package/src/migrations/update-14-5-1/add-eas-update-target.d.ts +5 -0
  202. package/src/migrations/update-14-5-1/add-eas-update-target.js +27 -0
  203. package/src/migrations/update-14-5-1/add-eas-update-target.js.map +1 -0
  204. package/src/migrations/update-15-0-3/add-new-expo-cli-targets.d.ts +9 -0
  205. package/src/migrations/update-15-0-3/add-new-expo-cli-targets.js +66 -0
  206. package/src/migrations/update-15-0-3/add-new-expo-cli-targets.js.map +1 -0
  207. package/src/migrations/update-15-0-3/change-jest-preset.d.ts +8 -0
  208. package/src/migrations/update-15-0-3/change-jest-preset.js +74 -0
  209. package/src/migrations/update-15-0-3/change-jest-preset.js.map +1 -0
  210. package/src/migrations/update-15-8-3/change-webpack-to-metro.d.ts +8 -0
  211. package/src/migrations/update-15-8-3/change-webpack-to-metro.js +37 -0
  212. package/src/migrations/update-15-8-3/change-webpack-to-metro.js.map +1 -0
  213. package/src/migrations/update-16-0-0/remove-deprecated-targets.d.ts +5 -0
  214. package/src/migrations/update-16-0-0/remove-deprecated-targets.js +36 -0
  215. package/src/migrations/update-16-0-0/remove-deprecated-targets.js.map +1 -0
  216. package/src/migrations/update-16-0-0-add-nx-packages/update-16-0-0-add-nx-packages.d.ts +2 -0
  217. package/src/migrations/update-16-0-0-add-nx-packages/update-16-0-0-add-nx-packages.js +13 -0
  218. package/src/migrations/update-16-0-0-add-nx-packages/update-16-0-0-add-nx-packages.js.map +1 -0
  219. package/src/utils/add-jest.d.ts +2 -0
  220. package/src/utils/add-jest.js +39 -0
  221. package/src/utils/add-jest.js.map +1 -0
  222. package/src/utils/add-linting.d.ts +3 -0
  223. package/src/utils/add-linting.js +37 -0
  224. package/src/utils/add-linting.js.map +1 -0
  225. package/src/utils/ensure-node-modules-symlink.d.ts +9 -0
  226. package/src/utils/ensure-node-modules-symlink.js +29 -0
  227. package/src/utils/ensure-node-modules-symlink.js.map +1 -0
  228. package/src/utils/find-all-npm-dependencies.d.ts +2 -0
  229. package/src/utils/find-all-npm-dependencies.js +26 -0
  230. package/src/utils/find-all-npm-dependencies.js.map +1 -0
  231. package/src/utils/pod-install-task.d.ts +8 -0
  232. package/src/utils/pod-install-task.js +53 -0
  233. package/src/utils/pod-install-task.js.map +1 -0
  234. package/src/utils/symlink-task.d.ts +2 -0
  235. package/src/utils/symlink-task.js +19 -0
  236. package/src/utils/symlink-task.js.map +1 -0
  237. package/src/utils/versions.d.ts +20 -0
  238. package/src/utils/versions.js +24 -0
  239. package/src/utils/versions.js.map +1 -0
  240. package/tsconfig.json +13 -0
  241. package/tsconfig.lib.json +11 -0
  242. package/tsconfig.spec.json +20 -0
  243. package/typings/svg.d.ts +6 -0
@@ -0,0 +1,83 @@
1
+ {
2
+ "cli": "nx",
3
+ "$id": "NxExpoComponent",
4
+ "$schema": "http://json-schema.org/schema",
5
+ "description": "Create a Expo Component for Nx.",
6
+ "type": "object",
7
+ "examples": [
8
+ {
9
+ "command": "g @nrwl/expo:component my-component --project=mylib",
10
+ "description": "Generate a component in the mylib library"
11
+ },
12
+ {
13
+ "command": "g @nrwl/expo:component my-component --project=mylib --classComponent",
14
+ "description": "Generate a class component in the mylib library"
15
+ }
16
+ ],
17
+ "properties": {
18
+ "project": {
19
+ "type": "string",
20
+ "description": "The name of the project.",
21
+ "alias": "p",
22
+ "$default": {
23
+ "$source": "projectName"
24
+ },
25
+ "x-prompt": "What is the name of the project for this component?"
26
+ },
27
+ "name": {
28
+ "type": "string",
29
+ "description": "The name of the component.",
30
+ "$default": {
31
+ "$source": "argv",
32
+ "index": 0
33
+ },
34
+ "x-prompt": "What name would you like to use for the component?"
35
+ },
36
+ "js": {
37
+ "type": "boolean",
38
+ "description": "Generate JavaScript files rather than TypeScript files.",
39
+ "default": false
40
+ },
41
+ "skipFormat": {
42
+ "description": "Skip formatting files.",
43
+ "type": "boolean",
44
+ "default": false,
45
+ "x-priority": "internal"
46
+ },
47
+ "skipTests": {
48
+ "type": "boolean",
49
+ "description": "When true, does not create \"spec.ts\" test files for the new component.",
50
+ "default": false
51
+ },
52
+ "directory": {
53
+ "type": "string",
54
+ "description": "Create the component under this directory (can be nested).",
55
+ "x-priority": "important"
56
+ },
57
+ "flat": {
58
+ "type": "boolean",
59
+ "description": "Create component at the source root rather than its own directory.",
60
+ "default": false
61
+ },
62
+ "export": {
63
+ "type": "boolean",
64
+ "description": "When true, the component is exported from the project index.ts (if it exists).",
65
+ "alias": "e",
66
+ "default": false,
67
+ "x-prompt": "Should this component be exported in the project?"
68
+ },
69
+ "pascalCaseFiles": {
70
+ "type": "boolean",
71
+ "description": "Use pascal case component file name (e.g. App.tsx).",
72
+ "alias": "P",
73
+ "default": false
74
+ },
75
+ "classComponent": {
76
+ "type": "boolean",
77
+ "alias": "C",
78
+ "description": "Use class components instead of functional component.",
79
+ "default": false
80
+ }
81
+ },
82
+ "required": ["name", "project"]
83
+ }
@@ -0,0 +1,6 @@
1
+ import { GeneratorCallback, Tree } from '@nx/devkit';
2
+ import { Schema } from './schema';
3
+ export declare function expoInitGenerator(host: Tree, schema: Schema): Promise<GeneratorCallback>;
4
+ export declare function updateDependencies(host: Tree): GeneratorCallback;
5
+ export default expoInitGenerator;
6
+ export declare const expoInitSchematic: (generatorOptions: Schema) => (tree: any, context: any) => Promise<any>;
@@ -0,0 +1,69 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.expoInitSchematic = exports.updateDependencies = exports.expoInitGenerator = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const devkit_1 = require("@nx/devkit");
6
+ const versions_1 = require("../../utils/versions");
7
+ const jest_1 = require("@nx/jest");
8
+ const detox_1 = require("@nx/detox");
9
+ const js_1 = require("@nx/js");
10
+ const add_git_ignore_entry_1 = require("./lib/add-git-ignore-entry");
11
+ const init_root_babel_config_1 = require("./lib/init-root-babel-config");
12
+ function expoInitGenerator(host, schema) {
13
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
14
+ (0, add_git_ignore_entry_1.addGitIgnoreEntry)(host);
15
+ (0, init_root_babel_config_1.initRootBabelConfig)(host);
16
+ const tasks = [];
17
+ tasks.push(yield (0, js_1.initGenerator)(host, Object.assign(Object.assign({}, schema), { skipFormat: true })));
18
+ if (!schema.skipPackageJson) {
19
+ tasks.push(moveDependency(host));
20
+ tasks.push(updateDependencies(host));
21
+ }
22
+ if (!schema.unitTestRunner || schema.unitTestRunner === 'jest') {
23
+ const jestTask = yield (0, jest_1.jestInitGenerator)(host, schema);
24
+ tasks.push(jestTask);
25
+ }
26
+ if (!schema.e2eTestRunner || schema.e2eTestRunner === 'detox') {
27
+ const detoxTask = yield (0, detox_1.detoxInitGenerator)(host, Object.assign(Object.assign({}, schema), { skipFormat: true }));
28
+ tasks.push(detoxTask);
29
+ }
30
+ if (!schema.skipFormat) {
31
+ yield (0, devkit_1.formatFiles)(host);
32
+ }
33
+ return (0, devkit_1.runTasksInSerial)(...tasks);
34
+ });
35
+ }
36
+ exports.expoInitGenerator = expoInitGenerator;
37
+ function updateDependencies(host) {
38
+ return (0, devkit_1.addDependenciesToPackageJson)(host, {
39
+ react: versions_1.reactVersion,
40
+ 'react-dom': versions_1.reactDomVersion,
41
+ 'react-native': versions_1.reactNativeVersion,
42
+ expo: versions_1.expoVersion,
43
+ 'expo-splash-screen': versions_1.expoSplashScreenVersion,
44
+ 'expo-status-bar': versions_1.expoStatusBarVersion,
45
+ 'react-native-web': versions_1.reactNativeWebVersion,
46
+ '@expo/metro-config': versions_1.expoMetroConfigVersion,
47
+ 'react-native-svg-transformer': versions_1.reactNativeSvgTransformerVersion,
48
+ 'react-native-svg': versions_1.reactNativeSvgVersion,
49
+ }, {
50
+ '@nrwl/expo': versions_1.nxVersion,
51
+ '@types/react': versions_1.typesReactVersion,
52
+ '@types/react-native': versions_1.typesReactNativeVersion,
53
+ metro: versions_1.metroVersion,
54
+ 'metro-resolver': versions_1.metroVersion,
55
+ 'react-test-renderer': versions_1.reactTestRendererVersion,
56
+ '@testing-library/react-native': versions_1.testingLibraryReactNativeVersion,
57
+ '@testing-library/jest-native': versions_1.testingLibraryJestNativeVersion,
58
+ '@expo/cli': versions_1.expoCliVersion,
59
+ 'eas-cli': versions_1.easCliVersion,
60
+ 'babel-preset-expo': versions_1.babelPresetExpoVersion,
61
+ });
62
+ }
63
+ exports.updateDependencies = updateDependencies;
64
+ function moveDependency(host) {
65
+ return (0, devkit_1.removeDependenciesFromPackageJson)(host, ['@nrwl/react-native'], []);
66
+ }
67
+ exports.default = expoInitGenerator;
68
+ exports.expoInitSchematic = (0, devkit_1.convertNxGenerator)(expoInitGenerator);
69
+ //# sourceMappingURL=init.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"init.js","sourceRoot":"","sources":["../../../../../../packages/expo/src/generators/init/init.ts"],"names":[],"mappings":";;;;AAAA,uCAQoB;AAEpB,mDAqB8B;AAE9B,mCAA6C;AAC7C,qCAA+C;AAC/C,+BAA0D;AAE1D,qEAA+D;AAC/D,yEAAmE;AAEnE,SAAsB,iBAAiB,CAAC,IAAU,EAAE,MAAc;;QAChE,IAAA,wCAAiB,EAAC,IAAI,CAAC,CAAC;QACxB,IAAA,4CAAmB,EAAC,IAAI,CAAC,CAAC;QAE1B,MAAM,KAAK,GAAwB,EAAE,CAAC;QAEtC,KAAK,CAAC,IAAI,CACR,MAAM,IAAA,kBAAe,EAAC,IAAI,kCACrB,MAAM,KACT,UAAU,EAAE,IAAI,IAChB,CACH,CAAC;QAEF,IAAI,CAAC,MAAM,CAAC,eAAe,EAAE;YAC3B,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC;YACjC,KAAK,CAAC,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC,CAAC;SACtC;QAED,IAAI,CAAC,MAAM,CAAC,cAAc,IAAI,MAAM,CAAC,cAAc,KAAK,MAAM,EAAE;YAC9D,MAAM,QAAQ,GAAG,MAAM,IAAA,wBAAiB,EAAC,IAAI,EAAE,MAAM,CAAC,CAAC;YACvD,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;SACtB;QAED,IAAI,CAAC,MAAM,CAAC,aAAa,IAAI,MAAM,CAAC,aAAa,KAAK,OAAO,EAAE;YAC7D,MAAM,SAAS,GAAG,MAAM,IAAA,0BAAkB,EAAC,IAAI,kCAC1C,MAAM,KACT,UAAU,EAAE,IAAI,IAChB,CAAC;YACH,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;SACvB;QAED,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE;YACtB,MAAM,IAAA,oBAAW,EAAC,IAAI,CAAC,CAAC;SACzB;QAED,OAAO,IAAA,yBAAgB,EAAC,GAAG,KAAK,CAAC,CAAC;IACpC,CAAC;CAAA;AApCD,8CAoCC;AAED,SAAgB,kBAAkB,CAAC,IAAU;IAC3C,OAAO,IAAA,qCAA4B,EACjC,IAAI,EACJ;QACE,KAAK,EAAE,uBAAY;QACnB,WAAW,EAAE,0BAAe;QAC5B,cAAc,EAAE,6BAAkB;QAClC,IAAI,EAAE,sBAAW;QACjB,oBAAoB,EAAE,kCAAuB;QAC7C,iBAAiB,EAAE,+BAAoB;QACvC,kBAAkB,EAAE,gCAAqB;QACzC,oBAAoB,EAAE,iCAAsB;QAC5C,8BAA8B,EAAE,2CAAgC;QAChE,kBAAkB,EAAE,gCAAqB;KAC1C,EACD;QACE,YAAY,EAAE,oBAAS;QACvB,cAAc,EAAE,4BAAiB;QACjC,qBAAqB,EAAE,kCAAuB;QAC9C,KAAK,EAAE,uBAAY;QACnB,gBAAgB,EAAE,uBAAY;QAC9B,qBAAqB,EAAE,mCAAwB;QAC/C,+BAA+B,EAAE,2CAAgC;QACjE,8BAA8B,EAAE,0CAA+B;QAC/D,WAAW,EAAE,yBAAc;QAC3B,SAAS,EAAE,wBAAa;QACxB,mBAAmB,EAAE,iCAAsB;KAC5C,CACF,CAAC;AACJ,CAAC;AA7BD,gDA6BC;AAED,SAAS,cAAc,CAAC,IAAU;IAChC,OAAO,IAAA,0CAAiC,EAAC,IAAI,EAAE,CAAC,oBAAoB,CAAC,EAAE,EAAE,CAAC,CAAC;AAC7E,CAAC;AAED,kBAAe,iBAAiB,CAAC;AACpB,QAAA,iBAAiB,GAAG,IAAA,2BAAkB,EAAC,iBAAiB,CAAC,CAAC"}
@@ -0,0 +1,2 @@
1
+ import { Tree } from '@nx/devkit';
2
+ export declare function addGitIgnoreEntry(host: Tree): void;
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.addGitIgnoreEntry = void 0;
4
+ const devkit_1 = require("@nx/devkit");
5
+ const gitignore_entries_1 = require("./gitignore-entries");
6
+ function addGitIgnoreEntry(host) {
7
+ var _a;
8
+ if (!host.exists('.gitignore')) {
9
+ devkit_1.logger.warn(`Couldn't find .gitignore file to update`);
10
+ return;
11
+ }
12
+ let content = (_a = host.read('.gitignore')) === null || _a === void 0 ? void 0 : _a.toString('utf-8').trimEnd();
13
+ if (!/\.expo\/$/gm.test(content)) {
14
+ content = `${content}\n${gitignore_entries_1.gitIgnoreEntriesForExpo}\n`;
15
+ }
16
+ host.write('.gitignore', content);
17
+ }
18
+ exports.addGitIgnoreEntry = addGitIgnoreEntry;
19
+ //# sourceMappingURL=add-git-ignore-entry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"add-git-ignore-entry.js","sourceRoot":"","sources":["../../../../../../../packages/expo/src/generators/init/lib/add-git-ignore-entry.ts"],"names":[],"mappings":";;;AAAA,uCAA0C;AAC1C,2DAA8D;AAE9D,SAAgB,iBAAiB,CAAC,IAAU;;IAC1C,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,EAAE;QAC9B,eAAM,CAAC,IAAI,CAAC,yCAAyC,CAAC,CAAC;QACvD,OAAO;KACR;IAED,IAAI,OAAO,GAAG,MAAA,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,0CAAE,QAAQ,CAAC,OAAO,EAAE,OAAO,EAAE,CAAC;IAEnE,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE;QAChC,OAAO,GAAG,GAAG,OAAO,KAAK,2CAAuB,IAAI,CAAC;KACtD;IAED,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;AACpC,CAAC;AAbD,8CAaC"}
@@ -0,0 +1 @@
1
+ export declare const gitIgnoreEntriesForExpo = "\n# Expo\nnode_modules/\n.expo/\n.yarn/\ndist/\nnpm-debug.*\n*.jks\n*.p8\n*.p12\n*.key\n*.mobileprovision\n*.orig.*\nweb-build/\ncache/\n";
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.gitIgnoreEntriesForExpo = void 0;
4
+ exports.gitIgnoreEntriesForExpo = `
5
+ # Expo
6
+ node_modules/
7
+ .expo/
8
+ .yarn/
9
+ dist/
10
+ npm-debug.*
11
+ *.jks
12
+ *.p8
13
+ *.p12
14
+ *.key
15
+ *.mobileprovision
16
+ *.orig.*
17
+ web-build/
18
+ cache/
19
+ `;
20
+ //# sourceMappingURL=gitignore-entries.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gitignore-entries.js","sourceRoot":"","sources":["../../../../../../../packages/expo/src/generators/init/lib/gitignore-entries.ts"],"names":[],"mappings":";;;AAAa,QAAA,uBAAuB,GAAG;;;;;;;;;;;;;;;CAetC,CAAC"}
@@ -0,0 +1,2 @@
1
+ import { Tree } from '@nx/devkit';
2
+ export declare function initRootBabelConfig(tree: Tree): void;
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.initRootBabelConfig = void 0;
4
+ const devkit_1 = require("@nx/devkit");
5
+ function initRootBabelConfig(tree) {
6
+ if (tree.exists('/babel.config.json') || tree.exists('/babel.config.js')) {
7
+ return;
8
+ }
9
+ (0, devkit_1.writeJson)(tree, '/babel.config.json', {
10
+ babelrcRoots: ['*'], // Make sure .babelrc files other than root can be loaded in a monorepo
11
+ });
12
+ }
13
+ exports.initRootBabelConfig = initRootBabelConfig;
14
+ //# sourceMappingURL=init-root-babel-config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"init-root-babel-config.js","sourceRoot":"","sources":["../../../../../../../packages/expo/src/generators/init/lib/init-root-babel-config.ts"],"names":[],"mappings":";;;AAAA,uCAA6C;AAE7C,SAAgB,mBAAmB,CAAC,IAAU;IAC5C,IAAI,IAAI,CAAC,MAAM,CAAC,oBAAoB,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,kBAAkB,CAAC,EAAE;QACxE,OAAO;KACR;IAED,IAAA,kBAAS,EAAC,IAAI,EAAE,oBAAoB,EAAE;QACpC,YAAY,EAAE,CAAC,GAAG,CAAC,EAAE,uEAAuE;KAC7F,CAAC,CAAC;AACL,CAAC;AARD,kDAQC"}
@@ -0,0 +1,7 @@
1
+ export interface Schema {
2
+ unitTestRunner?: 'jest' | 'none';
3
+ skipFormat?: boolean;
4
+ e2eTestRunner?: 'detox' | 'none';
5
+ skipPackageJson?: boolean; // default is false
6
+ js?: boolean;
7
+ }
@@ -0,0 +1,38 @@
1
+ {
2
+ "cli": "nx",
3
+ "$id": "NxExpoInit",
4
+ "$schema": "http://json-schema.org/schema",
5
+ "description": "Add Nx Expo Schematics.",
6
+ "type": "object",
7
+ "properties": {
8
+ "unitTestRunner": {
9
+ "description": "Adds the specified unit test runner",
10
+ "type": "string",
11
+ "enum": ["jest", "none"],
12
+ "default": "jest"
13
+ },
14
+ "skipFormat": {
15
+ "description": "Skip formatting files",
16
+ "type": "boolean",
17
+ "default": false,
18
+ "x-priority": "internal"
19
+ },
20
+ "e2eTestRunner": {
21
+ "description": "Adds the specified e2e test runner",
22
+ "type": "string",
23
+ "enum": ["detox", "none"],
24
+ "default": "detox"
25
+ },
26
+ "skipPackageJson": {
27
+ "type": "boolean",
28
+ "default": false,
29
+ "description": "Do not add dependencies to `package.json`."
30
+ },
31
+ "js": {
32
+ "type": "boolean",
33
+ "default": false,
34
+ "description": "Use JavaScript instead of TypeScript"
35
+ }
36
+ },
37
+ "required": []
38
+ }
@@ -0,0 +1,7 @@
1
+ # <%= name %>
2
+
3
+ This library was generated with [Nx](https://nx.dev).
4
+
5
+ ## Running unit tests
6
+
7
+ Run `nx test <%= name %>` to execute the unit tests via [Jest](https://jestjs.io).
@@ -0,0 +1,17 @@
1
+ {
2
+ "presets": [
3
+ [
4
+ "@nrwl/react/babel",
5
+ {
6
+ "runtime": "automatic",
7
+ "useBuiltIns": "usage"
8
+ }
9
+ ]
10
+ ],
11
+ "plugins": [],
12
+ "env": {
13
+ "test": {
14
+ "presets": ["babel-preset-expo"]
15
+ }
16
+ }
17
+ }
@@ -0,0 +1,5 @@
1
+ {
2
+ "name": "<%= name %>",
3
+ "version": "0.0.1",
4
+ "main": "<%= appMain %>"
5
+ }
@@ -0,0 +1 @@
1
+ import '@testing-library/jest-native/extend-expect';
@@ -0,0 +1,16 @@
1
+ {
2
+ "extends": "<%= offsetFromRoot %>tsconfig.base.json",
3
+ "compilerOptions": {
4
+ "jsx": "react-native",
5
+ "allowJs": true,
6
+ "esModuleInterop": true,
7
+ "allowSyntheticDefaultImports": true
8
+ },
9
+ "files": [],
10
+ "include": [],
11
+ "references": [
12
+ {
13
+ "path": "./tsconfig.lib.json"
14
+ }
15
+ ]
16
+ }
@@ -0,0 +1,9 @@
1
+ {
2
+ "extends": "./tsconfig.json",
3
+ "compilerOptions": {
4
+ "outDir": "<%= offsetFromRoot %>dist/out-tsc",
5
+ "types": ["node"]
6
+ },
7
+ "exclude": ["**/*.spec.ts", "**/*.spec.tsx", "test-setup.ts"],
8
+ "include": ["**/*.js", "**/*.jsx", "**/*.ts", "**/*.tsx"]
9
+ }
@@ -0,0 +1,12 @@
1
+ import { Tree } from '@nx/devkit';
2
+ import { Schema } from '../schema';
3
+ export interface NormalizedSchema extends Schema {
4
+ name: string;
5
+ fileName: string;
6
+ projectRoot: string;
7
+ routePath: string;
8
+ projectDirectory: string;
9
+ parsedTags: string[];
10
+ appMain: string;
11
+ }
12
+ export declare function normalizeOptions(host: Tree, options: Schema): NormalizedSchema;
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.normalizeOptions = void 0;
4
+ const devkit_1 = require("@nx/devkit");
5
+ function normalizeOptions(host, options) {
6
+ const name = (0, devkit_1.names)(options.name).fileName;
7
+ const projectDirectory = options.directory
8
+ ? `${(0, devkit_1.names)(options.directory).fileName}/${name}`
9
+ : name;
10
+ const projectName = projectDirectory.replace(new RegExp('/', 'g'), '-');
11
+ const fileName = projectName;
12
+ const { libsDir, npmScope } = (0, devkit_1.getWorkspaceLayout)(host);
13
+ const projectRoot = (0, devkit_1.joinPathFragments)(libsDir, projectDirectory);
14
+ const parsedTags = options.tags
15
+ ? options.tags.split(',').map((s) => s.trim())
16
+ : [];
17
+ const importPath = options.importPath || (0, devkit_1.getImportPath)(npmScope, projectDirectory);
18
+ const appMain = options.js ? 'src/index.js' : 'src/index.ts';
19
+ const normalized = Object.assign(Object.assign({}, options), { fileName, routePath: `/${name}`, name: projectName, projectRoot,
20
+ projectDirectory,
21
+ parsedTags,
22
+ importPath,
23
+ appMain });
24
+ return normalized;
25
+ }
26
+ exports.normalizeOptions = normalizeOptions;
27
+ //# sourceMappingURL=normalize-options.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"normalize-options.js","sourceRoot":"","sources":["../../../../../../../packages/expo/src/generators/library/lib/normalize-options.ts"],"names":[],"mappings":";;;AAAA,uCAMoB;AAapB,SAAgB,gBAAgB,CAC9B,IAAU,EACV,OAAe;IAEf,MAAM,IAAI,GAAG,IAAA,cAAK,EAAC,OAAO,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC;IAC1C,MAAM,gBAAgB,GAAG,OAAO,CAAC,SAAS;QACxC,CAAC,CAAC,GAAG,IAAA,cAAK,EAAC,OAAO,CAAC,SAAS,CAAC,CAAC,QAAQ,IAAI,IAAI,EAAE;QAChD,CAAC,CAAC,IAAI,CAAC;IAET,MAAM,WAAW,GAAG,gBAAgB,CAAC,OAAO,CAAC,IAAI,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC;IACxE,MAAM,QAAQ,GAAG,WAAW,CAAC;IAC7B,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,IAAA,2BAAkB,EAAC,IAAI,CAAC,CAAC;IACvD,MAAM,WAAW,GAAG,IAAA,0BAAiB,EAAC,OAAO,EAAE,gBAAgB,CAAC,CAAC;IAEjE,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI;QAC7B,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QAC9C,CAAC,CAAC,EAAE,CAAC;IAEP,MAAM,UAAU,GACd,OAAO,CAAC,UAAU,IAAI,IAAA,sBAAa,EAAC,QAAQ,EAAE,gBAAgB,CAAC,CAAC;IAElE,MAAM,OAAO,GAAG,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,cAAc,CAAC;IAE7D,MAAM,UAAU,mCACX,OAAO,KACV,QAAQ,EACR,SAAS,EAAE,IAAI,IAAI,EAAE,EACrB,IAAI,EAAE,WAAW,EACjB,WAAW;QACX,gBAAgB;QAChB,UAAU;QACV,UAAU;QACV,OAAO,GACR,CAAC;IAEF,OAAO,UAAU,CAAC;AACpB,CAAC;AApCD,4CAoCC"}
@@ -0,0 +1,5 @@
1
+ import { GeneratorCallback, Tree } from '@nx/devkit';
2
+ import { Schema } from './schema';
3
+ export declare function expoLibraryGenerator(host: Tree, schema: Schema): Promise<GeneratorCallback>;
4
+ export default expoLibraryGenerator;
5
+ export declare const expoLibrarySchematic: (generatorOptions: Schema) => (tree: any, context: any) => Promise<any>;
@@ -0,0 +1,101 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.expoLibrarySchematic = exports.expoLibraryGenerator = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const devkit_1 = require("@nx/devkit");
6
+ const js_1 = require("@nx/js");
7
+ const init_1 = require("../init/init");
8
+ const add_linting_1 = require("../../utils/add-linting");
9
+ const add_jest_1 = require("../../utils/add-jest");
10
+ const normalize_options_1 = require("./lib/normalize-options");
11
+ function expoLibraryGenerator(host, schema) {
12
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
13
+ const options = (0, normalize_options_1.normalizeOptions)(host, schema);
14
+ if (options.publishable === true && !schema.importPath) {
15
+ throw new Error(`For publishable libs you have to provide a proper "--importPath" which needs to be a valid npm package name (e.g. my-awesome-lib or @myorg/my-lib)`);
16
+ }
17
+ addProject(host, options);
18
+ createFiles(host, options);
19
+ const initTask = yield (0, init_1.default)(host, Object.assign(Object.assign({}, options), { skipFormat: true, e2eTestRunner: 'none' }));
20
+ const lintTask = yield (0, add_linting_1.addLinting)(host, options.name, options.projectRoot, [(0, devkit_1.joinPathFragments)(options.projectRoot, 'tsconfig.lib.json')], options.linter, options.setParserOptionsProject);
21
+ if (!options.skipTsConfig) {
22
+ (0, js_1.addTsConfigPath)(host, options.importPath, [
23
+ (0, devkit_1.joinPathFragments)(options.projectRoot, './src', 'index.' + (options.js ? 'js' : 'ts')),
24
+ ]);
25
+ }
26
+ const jestTask = yield (0, add_jest_1.addJest)(host, options.unitTestRunner, options.name, options.projectRoot, options.js);
27
+ if (options.publishable || options.buildable) {
28
+ updateLibPackageNpmScope(host, options);
29
+ }
30
+ if (!options.skipFormat) {
31
+ yield (0, devkit_1.formatFiles)(host);
32
+ }
33
+ return (0, devkit_1.runTasksInSerial)(initTask, lintTask, jestTask);
34
+ });
35
+ }
36
+ exports.expoLibraryGenerator = expoLibraryGenerator;
37
+ function addProject(host, options) {
38
+ const targets = {};
39
+ if (options.publishable || options.buildable) {
40
+ const { libsDir } = (0, devkit_1.getWorkspaceLayout)(host);
41
+ const external = ['react/jsx-runtime', 'react-native'];
42
+ targets.build = {
43
+ executor: '@nrwl/web:rollup',
44
+ outputs: ['{options.outputPath}'],
45
+ options: {
46
+ outputPath: `dist/${libsDir}/${options.projectDirectory}`,
47
+ tsConfig: `${options.projectRoot}/tsconfig.lib.json`,
48
+ project: `${options.projectRoot}/package.json`,
49
+ entryFile: maybeJs(options, `${options.projectRoot}/src/index.ts`),
50
+ external,
51
+ rollupConfig: `@nrwl/react/plugins/bundle-rollup`,
52
+ assets: [
53
+ {
54
+ glob: `${options.projectRoot}/README.md`,
55
+ input: '.',
56
+ output: '.',
57
+ },
58
+ ],
59
+ },
60
+ };
61
+ }
62
+ (0, devkit_1.addProjectConfiguration)(host, options.name, {
63
+ root: options.projectRoot,
64
+ sourceRoot: (0, devkit_1.joinPathFragments)(options.projectRoot, 'src'),
65
+ projectType: 'library',
66
+ tags: options.parsedTags,
67
+ targets,
68
+ });
69
+ }
70
+ function updateTsConfig(tree, options) {
71
+ (0, devkit_1.updateJson)(tree, (0, devkit_1.joinPathFragments)(options.projectRoot, 'tsconfig.json'), (json) => {
72
+ if (options.strict) {
73
+ json.compilerOptions = Object.assign(Object.assign({}, json.compilerOptions), { forceConsistentCasingInFileNames: true, strict: true, noImplicitReturns: true, noFallthroughCasesInSwitch: true });
74
+ }
75
+ return json;
76
+ });
77
+ }
78
+ function createFiles(host, options) {
79
+ (0, devkit_1.generateFiles)(host, (0, devkit_1.joinPathFragments)(__dirname, './files/lib'), options.projectRoot, Object.assign(Object.assign(Object.assign({}, options), (0, devkit_1.names)(options.name)), { tmpl: '', offsetFromRoot: (0, devkit_1.offsetFromRoot)(options.projectRoot) }));
80
+ if (!options.publishable && !options.buildable) {
81
+ host.delete(`${options.projectRoot}/package.json`);
82
+ }
83
+ if (options.js) {
84
+ (0, devkit_1.toJS)(host);
85
+ }
86
+ updateTsConfig(host, options);
87
+ }
88
+ function updateLibPackageNpmScope(host, options) {
89
+ return (0, devkit_1.updateJson)(host, `${options.projectRoot}/package.json`, (json) => {
90
+ json.name = options.importPath;
91
+ return json;
92
+ });
93
+ }
94
+ function maybeJs(options, path) {
95
+ return options.js && (path.endsWith('.ts') || path.endsWith('.tsx'))
96
+ ? path.replace(/\.tsx?$/, '.js')
97
+ : path;
98
+ }
99
+ exports.default = expoLibraryGenerator;
100
+ exports.expoLibrarySchematic = (0, devkit_1.convertNxGenerator)(expoLibraryGenerator);
101
+ //# sourceMappingURL=library.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"library.js","sourceRoot":"","sources":["../../../../../../packages/expo/src/generators/library/library.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,22 @@
1
+ import { Linter } from '@nx/linter';
2
+
3
+ /**
4
+ * Same as the @nrwl/react library schema, except it removes keys: style, component, routing, appProject
5
+ */
6
+ export interface Schema {
7
+ name: string;
8
+ directory?: string;
9
+ skipTsConfig: boolean; // default is false
10
+ skipFormat: boolean; // default is false
11
+ tags?: string;
12
+ pascalCaseFiles?: boolean;
13
+ unitTestRunner: 'jest' | 'none';
14
+ linter: Linter; // default is eslint
15
+ publishable?: boolean;
16
+ buildable?: boolean;
17
+ importPath?: string;
18
+ js: boolean; // default is false
19
+ strict: boolean; // default is true
20
+ setParserOptionsProject?: boolean;
21
+ skipPackageJson?: boolean; // default is false
22
+ }