@nrwl/react-native 13.3.0-beta.2 → 13.3.0-beta.3

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 (46) hide show
  1. package/package.json +8 -7
  2. package/plugins/metro-resolver.js +93 -25
  3. package/plugins/metro-resolver.js.map +1 -1
  4. package/plugins/with-nx-metro.js +1 -1
  5. package/plugins/with-nx-metro.js.map +1 -1
  6. package/src/executors/build-android/build-android.impl.js +3 -3
  7. package/src/executors/build-android/build-android.impl.js.map +1 -1
  8. package/src/executors/build-android/build-android.impl.ts +7 -3
  9. package/src/executors/bundle/bundle.impl.js +3 -7
  10. package/src/executors/bundle/bundle.impl.js.map +1 -1
  11. package/src/executors/bundle/bundle.impl.ts +3 -7
  12. package/src/executors/run-android/run-android.impl.js +10 -7
  13. package/src/executors/run-android/run-android.impl.js.map +1 -1
  14. package/src/executors/run-android/run-android.impl.ts +10 -7
  15. package/src/executors/run-android/schema.d.ts +1 -0
  16. package/src/executors/run-android/schema.json +5 -0
  17. package/src/executors/run-ios/run-ios.impl.js +9 -6
  18. package/src/executors/run-ios/run-ios.impl.js.map +1 -1
  19. package/src/executors/run-ios/run-ios.impl.ts +9 -6
  20. package/src/executors/run-ios/schema.d.ts +1 -0
  21. package/src/executors/run-ios/schema.json +5 -0
  22. package/src/executors/start/start.impl.js +1 -1
  23. package/src/executors/start/start.impl.js.map +1 -1
  24. package/src/executors/start/start.impl.ts +1 -1
  25. package/src/executors/sync-deps/sync-deps.impl.d.ts +1 -1
  26. package/src/executors/sync-deps/sync-deps.impl.js +3 -3
  27. package/src/executors/sync-deps/sync-deps.impl.js.map +1 -1
  28. package/src/executors/sync-deps/sync-deps.impl.ts +8 -2
  29. package/src/generators/application/application.js +4 -4
  30. package/src/generators/application/application.js.map +1 -1
  31. package/src/generators/application/lib/normalize-options.js +1 -1
  32. package/src/generators/application/lib/normalize-options.js.map +1 -1
  33. package/src/generators/init/init.js +7 -17
  34. package/src/generators/init/init.js.map +1 -1
  35. package/src/utils/ensure-node-modules-symlink.js +1 -82
  36. package/src/utils/ensure-node-modules-symlink.js.map +1 -1
  37. package/src/utils/ensure-node-modules-symlink.spec.ts +8 -86
  38. package/src/utils/pod-install-task.d.ts +4 -4
  39. package/src/utils/pod-install-task.js +7 -7
  40. package/src/utils/pod-install-task.js.map +1 -1
  41. package/src/utils/symlink-task.d.ts +1 -1
  42. package/src/utils/symlink-task.js +2 -3
  43. package/src/utils/symlink-task.js.map +1 -1
  44. package/src/utils/versions.d.ts +1 -0
  45. package/src/utils/versions.js +3 -2
  46. package/src/utils/versions.js.map +1 -1
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nrwl/react-native",
3
- "version": "13.3.0-beta.2",
3
+ "version": "13.3.0-beta.3",
4
4
  "description": "React Native Plugin for Nx",
5
5
  "keywords": [
6
6
  "Monorepo",
@@ -24,13 +24,14 @@
24
24
  "main": "index.js",
25
25
  "types": "index.d.ts",
26
26
  "dependencies": {
27
- "@nrwl/detox": "13.3.0-beta.2",
28
- "@nrwl/devkit": "13.3.0-beta.2",
29
- "@nrwl/jest": "13.3.0-beta.2",
30
- "@nrwl/linter": "13.3.0-beta.2",
31
- "@nrwl/react": "13.3.0-beta.2",
32
- "@nrwl/workspace": "13.3.0-beta.2",
27
+ "@nrwl/detox": "13.3.0-beta.3",
28
+ "@nrwl/devkit": "13.3.0-beta.3",
29
+ "@nrwl/jest": "13.3.0-beta.3",
30
+ "@nrwl/linter": "13.3.0-beta.3",
31
+ "@nrwl/react": "13.3.0-beta.3",
32
+ "@nrwl/workspace": "13.3.0-beta.3",
33
33
  "chalk": "^4.1.0",
34
+ "enhanced-resolve": "^5.8.3",
34
35
  "ignore": "^5.0.4",
35
36
  "metro-resolver": "^0.66.2",
36
37
  "node-fetch": "^2.6.1",
@@ -5,6 +5,11 @@ const tslib_1 = require("tslib");
5
5
  const metroResolver = require("metro-resolver");
6
6
  const tsconfig_paths_1 = require("tsconfig-paths");
7
7
  const chalk = require("chalk");
8
+ const devkit_1 = require("@nrwl/devkit");
9
+ const enhanced_resolve_1 = require("enhanced-resolve");
10
+ const path_1 = require("path");
11
+ const fs = require("fs");
12
+ const app_root_1 = require("@nrwl/tao/src/utils/app-root");
8
13
  /*
9
14
  * Use tsconfig to resolve additional workspace libs.
10
15
  *
@@ -17,37 +22,83 @@ function getResolveRequest(extensions) {
17
22
  if (DEBUG)
18
23
  console.log(chalk.cyan(`[Nx] Resolving: ${moduleName}`));
19
24
  const { resolveRequest } = _context, context = (0, tslib_1.__rest)(_context, ["resolveRequest"]);
20
- try {
21
- return metroResolver.resolve(context, moduleName, platform);
25
+ let resolvedPath = defaultMetroResolver(context, moduleName, platform);
26
+ if (resolvedPath) {
27
+ return resolvedPath;
22
28
  }
23
- catch (_a) {
24
- if (DEBUG)
25
- console.log(chalk.cyan(`[Nx] Unable to resolve with default Metro resolver: ${moduleName}`));
26
- }
27
- const matcher = getMatcher();
28
- let match;
29
- const matchExtension = extensions.find((extension) => {
30
- match = matcher(realModuleName, undefined, undefined, ['.' + extension]);
31
- return !!match;
32
- });
33
- if (match) {
34
- return {
35
- type: 'sourceFile',
36
- filePath: !matchExtension || match.endsWith(`.${matchExtension}`)
37
- ? match
38
- : `${match}.${matchExtension}`,
39
- };
40
- }
41
- else {
42
- if (DEBUG) {
43
- console.log(chalk.red(`[Nx] Failed to resolve ${chalk.bold(moduleName)}`));
44
- console.log(chalk.cyan(`[Nx] The following tsconfig paths was used:\n:${chalk.bold(JSON.stringify(paths, null, 2))}`));
29
+ if ((0, devkit_1.detectPackageManager)(app_root_1.appRootPath) === 'pnpm') {
30
+ resolvedPath = pnpmResolver(extensions, context, realModuleName, moduleName);
31
+ if (resolvedPath) {
32
+ return resolvedPath;
45
33
  }
46
- throw new Error(`Cannot resolve ${chalk.bold(moduleName)}`);
47
34
  }
35
+ return tsconfigPathsResolver(extensions, realModuleName, moduleName);
48
36
  };
49
37
  }
50
38
  exports.getResolveRequest = getResolveRequest;
39
+ /**
40
+ * This function try to resolve path using metro's default resolver
41
+ * @returns path if resolved, else undefined
42
+ */
43
+ function defaultMetroResolver(context, moduleName, platform) {
44
+ const DEBUG = process.env.NX_REACT_NATIVE_DEBUG === 'true';
45
+ try {
46
+ return metroResolver.resolve(context, moduleName, platform);
47
+ }
48
+ catch (_a) {
49
+ if (DEBUG)
50
+ console.log(chalk.cyan(`[Nx] Unable to resolve with default Metro resolver: ${moduleName}`));
51
+ }
52
+ }
53
+ /**
54
+ * This resolver try to resolve module for pnpm.
55
+ * @returns path if resolved, else undefined
56
+ * This pnpm resolver is inspired from https://github.com/vjpr/pnpm-react-native-example/blob/main/packages/pnpm-expo-helper/util/make-resolver.js
57
+ */
58
+ function pnpmResolver(extensions, context, realModuleName, moduleName) {
59
+ const DEBUG = process.env.NX_REACT_NATIVE_DEBUG === 'true';
60
+ try {
61
+ const pnpmResolver = getPnpmResolver(app_root_1.appRootPath, extensions);
62
+ const lookupStartPath = (0, path_1.dirname)(context.originModulePath);
63
+ const filePath = pnpmResolver.resolveSync({}, lookupStartPath, realModuleName);
64
+ if (filePath) {
65
+ return { type: 'sourceFile', filePath };
66
+ }
67
+ }
68
+ catch (_a) {
69
+ if (DEBUG)
70
+ console.log(chalk.cyan(`[Nx] Unable to resolve with default PNPM resolver: ${moduleName}`));
71
+ }
72
+ }
73
+ /**
74
+ * This function try to resolve files that are specified in tsconfig's paths
75
+ * @returns path if resolved, else undefined
76
+ */
77
+ function tsconfigPathsResolver(extensions, realModuleName, moduleName) {
78
+ const DEBUG = process.env.NX_REACT_NATIVE_DEBUG === 'true';
79
+ const matcher = getMatcher();
80
+ let match;
81
+ // find out the file extension
82
+ const matchExtension = extensions.find((extension) => {
83
+ match = matcher(realModuleName, undefined, undefined, ['.' + extension]);
84
+ return !!match;
85
+ });
86
+ if (match) {
87
+ return {
88
+ type: 'sourceFile',
89
+ filePath: !matchExtension || match.endsWith(`.${matchExtension}`)
90
+ ? match
91
+ : `${match}.${matchExtension}`,
92
+ };
93
+ }
94
+ else {
95
+ if (DEBUG) {
96
+ console.log(chalk.red(`[Nx] Failed to resolve ${chalk.bold(moduleName)}`));
97
+ console.log(chalk.cyan(`[Nx] The following tsconfig paths was used:\n:${chalk.bold(JSON.stringify(paths, null, 2))}`));
98
+ }
99
+ throw new Error(`Cannot resolve ${chalk.bold(moduleName)}`);
100
+ }
101
+ }
51
102
  let matcher;
52
103
  let absoluteBaseUrl;
53
104
  let paths;
@@ -71,4 +122,21 @@ function getMatcher() {
71
122
  }
72
123
  return matcher;
73
124
  }
125
+ /**
126
+ * This function returns resolver for pnpm.
127
+ * It is inspired form https://github.com/vjpr/pnpm-expo-example/blob/main/packages/pnpm-expo-helper/util/make-resolver.js.
128
+ */
129
+ let resolver;
130
+ function getPnpmResolver(appRootPath, extensions) {
131
+ if (!resolver) {
132
+ const fileSystem = new enhanced_resolve_1.CachedInputFileSystem(fs, 4000);
133
+ resolver = enhanced_resolve_1.ResolverFactory.createResolver({
134
+ fileSystem,
135
+ extensions: extensions.map((extension) => '.' + extension),
136
+ useSyncFileSystemCalls: true,
137
+ modules: [(0, path_1.join)(appRootPath, 'node_modules'), 'node_modules'],
138
+ });
139
+ }
140
+ return resolver;
141
+ }
74
142
  //# sourceMappingURL=metro-resolver.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"metro-resolver.js","sourceRoot":"","sources":["../../../../packages/react-native/plugins/metro-resolver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"metro-resolver.js","sourceRoot":"","sources":["../../../../packages/react-native/plugins/metro-resolver.ts"],"names":[],"mappings":"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"}
@@ -4,7 +4,7 @@ exports.withNxMetro = void 0;
4
4
  const app_root_1 = require("@nrwl/workspace/src/utils/app-root");
5
5
  const metro_resolver_1 = require("./metro-resolver");
6
6
  function withNxMetro(config, opts = {}) {
7
- const extensions = ['', 'ts', 'tsx', 'js', 'jsx'];
7
+ const extensions = ['', 'ts', 'tsx', 'js', 'jsx', 'json'];
8
8
  if (opts.debug)
9
9
  process.env.NX_REACT_NATIVE_DEBUG = 'true';
10
10
  if (opts.extensions)
@@ -1 +1 @@
1
- {"version":3,"file":"with-nx-metro.js","sourceRoot":"","sources":["../../../../packages/react-native/plugins/with-nx-metro.ts"],"names":[],"mappings":";;;AAAA,iEAAiE;AACjE,qDAAqD;AAOrD,SAAgB,WAAW,CAAC,MAAW,EAAE,OAAsB,EAAE;IAC/D,MAAM,UAAU,GAAG,CAAC,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;IAClD,IAAI,IAAI,CAAC,KAAK;QAAE,OAAO,CAAC,GAAG,CAAC,qBAAqB,GAAG,MAAM,CAAC;IAC3D,IAAI,IAAI,CAAC,UAAU;QAAE,UAAU,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC;IAEzD,sEAAsE;IACtE,MAAM,CAAC,WAAW,GAAG,sBAAW,CAAC;IAEjC,8CAA8C;IAC9C,MAAM,CAAC,QAAQ,mCACV,MAAM,CAAC,QAAQ,KAClB,cAAc,EAAE,IAAA,kCAAiB,EAAC,UAAU,CAAC,GAC9C,CAAC;IAEF,OAAO,MAAM,CAAC;AAChB,CAAC;AAfD,kCAeC"}
1
+ {"version":3,"file":"with-nx-metro.js","sourceRoot":"","sources":["../../../../packages/react-native/plugins/with-nx-metro.ts"],"names":[],"mappings":";;;AAAA,iEAAiE;AACjE,qDAAqD;AAOrD,SAAgB,WAAW,CAAC,MAAW,EAAE,OAAsB,EAAE;IAC/D,MAAM,UAAU,GAAG,CAAC,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;IAC1D,IAAI,IAAI,CAAC,KAAK;QAAE,OAAO,CAAC,GAAG,CAAC,qBAAqB,GAAG,MAAM,CAAC;IAC3D,IAAI,IAAI,CAAC,UAAU;QAAE,UAAU,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC;IAEzD,sEAAsE;IACtE,MAAM,CAAC,WAAW,GAAG,sBAAW,CAAC;IAEjC,8CAA8C;IAC9C,MAAM,CAAC,QAAQ,mCACV,MAAM,CAAC,QAAQ,KAClB,cAAc,EAAE,IAAA,kCAAiB,EAAC,UAAU,CAAC,GAC9C,CAAC;IAEF,OAAO,MAAM,CAAC;AAChB,CAAC;AAfD,kCAeC"}
@@ -13,7 +13,7 @@ function buildAndroidExecutor(options, context) {
13
13
  (0, fs_1.chmodSync)((0, path_1.join)(projectRoot, 'android', 'gradlew'), 0o775);
14
14
  (0, fs_1.chmodSync)((0, path_1.join)(projectRoot, 'android', 'gradlew.bat'), 0o775);
15
15
  try {
16
- yield (0, tslib_1.__await)(runCliBuild(projectRoot, options));
16
+ yield (0, tslib_1.__await)(runCliBuild(context.root, projectRoot, options));
17
17
  yield yield (0, tslib_1.__await)({ success: true });
18
18
  }
19
19
  finally {
@@ -24,10 +24,10 @@ function buildAndroidExecutor(options, context) {
24
24
  });
25
25
  }
26
26
  exports.default = buildAndroidExecutor;
27
- function runCliBuild(projectRoot, options) {
27
+ function runCliBuild(workspaceRoot, projectRoot, options) {
28
28
  return new Promise((resolve, reject) => {
29
29
  childProcess = (0, child_process_1.spawn)(process.platform === 'win32' ? 'gradlew.bat' : './gradlew', [options.apk ? 'assembleRelease' : 'bundleRelease'], {
30
- cwd: (0, path_1.join)(projectRoot, 'android'),
30
+ cwd: (0, path_1.join)(workspaceRoot, projectRoot, 'android'),
31
31
  stdio: [0, 1, 2],
32
32
  });
33
33
  // Ensure the child process is killed when the parent exits
@@ -1 +1 @@
1
- {"version":3,"file":"build-android.impl.js","sourceRoot":"","sources":["../../../../../../packages/react-native/src/executors/build-android/build-android.impl.ts"],"names":[],"mappings":";;;AACA,+BAA4B;AAC5B,yFAAmF;AACnF,iDAAoD;AACpD,2BAA+B;AAM/B,IAAI,YAA0B,CAAC;AAE/B,SAA+B,oBAAoB,CACjD,OAAgC,EAChC,OAAwB;;QAExB,MAAM,WAAW,GAAG,OAAO,CAAC,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC;QACzE,IAAA,sDAAwB,EAAC,OAAO,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;QACpD,IAAA,cAAS,EAAC,IAAA,WAAI,EAAC,WAAW,EAAE,SAAS,EAAE,SAAS,CAAC,EAAE,KAAK,CAAC,CAAC;QAC1D,IAAA,cAAS,EAAC,IAAA,WAAI,EAAC,WAAW,EAAE,SAAS,EAAE,aAAa,CAAC,EAAE,KAAK,CAAC,CAAC;QAE9D,IAAI;YACF,2BAAM,WAAW,CAAC,WAAW,EAAE,OAAO,CAAC,CAAA,CAAC;YACxC,iCAAM,EAAE,OAAO,EAAE,IAAI,EAAE,CAAA,CAAC;SACzB;gBAAS;YACR,IAAI,YAAY,EAAE;gBAChB,YAAY,CAAC,IAAI,EAAE,CAAC;aACrB;SACF;IACH,CAAC;CAAA;AAjBD,uCAiBC;AAED,SAAS,WAAW,CAAC,WAAmB,EAAE,OAAgC;IACxE,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,YAAY,GAAG,IAAA,qBAAK,EAClB,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,WAAW,EAC1D,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,eAAe,CAAC,EACnD;YACE,GAAG,EAAE,IAAA,WAAI,EAAC,WAAW,EAAE,SAAS,CAAC;YACjC,KAAK,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;SACjB,CACF,CAAC;QAEF,2DAA2D;QAC3D,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC;QAC9C,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC;QAEjD,YAAY,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE;YAC/B,MAAM,CAAC,GAAG,CAAC,CAAC;QACd,CAAC,CAAC,CAAC;QACH,YAAY,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;YAC/B,IAAI,IAAI,KAAK,CAAC,EAAE;gBACd,OAAO,CAAC,IAAI,CAAC,CAAC;aACf;iBAAM;gBACL,MAAM,CAAC,IAAI,CAAC,CAAC;aACd;QACH,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"build-android.impl.js","sourceRoot":"","sources":["../../../../../../packages/react-native/src/executors/build-android/build-android.impl.ts"],"names":[],"mappings":";;;AACA,+BAA4B;AAC5B,yFAAmF;AACnF,iDAAoD;AACpD,2BAA+B;AAM/B,IAAI,YAA0B,CAAC;AAE/B,SAA+B,oBAAoB,CACjD,OAAgC,EAChC,OAAwB;;QAExB,MAAM,WAAW,GAAG,OAAO,CAAC,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC;QACzE,IAAA,sDAAwB,EAAC,OAAO,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;QACpD,IAAA,cAAS,EAAC,IAAA,WAAI,EAAC,WAAW,EAAE,SAAS,EAAE,SAAS,CAAC,EAAE,KAAK,CAAC,CAAC;QAC1D,IAAA,cAAS,EAAC,IAAA,WAAI,EAAC,WAAW,EAAE,SAAS,EAAE,aAAa,CAAC,EAAE,KAAK,CAAC,CAAC;QAE9D,IAAI;YACF,2BAAM,WAAW,CAAC,OAAO,CAAC,IAAI,EAAE,WAAW,EAAE,OAAO,CAAC,CAAA,CAAC;YACtD,iCAAM,EAAE,OAAO,EAAE,IAAI,EAAE,CAAA,CAAC;SACzB;gBAAS;YACR,IAAI,YAAY,EAAE;gBAChB,YAAY,CAAC,IAAI,EAAE,CAAC;aACrB;SACF;IACH,CAAC;CAAA;AAjBD,uCAiBC;AAED,SAAS,WAAW,CAClB,aAAqB,EACrB,WAAmB,EACnB,OAAgC;IAEhC,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,YAAY,GAAG,IAAA,qBAAK,EAClB,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,WAAW,EAC1D,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,eAAe,CAAC,EACnD;YACE,GAAG,EAAE,IAAA,WAAI,EAAC,aAAa,EAAE,WAAW,EAAE,SAAS,CAAC;YAChD,KAAK,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;SACjB,CACF,CAAC;QAEF,2DAA2D;QAC3D,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC;QAC9C,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC;QAEjD,YAAY,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE;YAC/B,MAAM,CAAC,GAAG,CAAC,CAAC;QACd,CAAC,CAAC,CAAC;QACH,YAAY,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;YAC/B,IAAI,IAAI,KAAK,CAAC,EAAE;gBACd,OAAO,CAAC,IAAI,CAAC,CAAC;aACf;iBAAM;gBACL,MAAM,CAAC,IAAI,CAAC,CAAC;aACd;QACH,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC"}
@@ -20,7 +20,7 @@ export default async function* buildAndroidExecutor(
20
20
  chmodSync(join(projectRoot, 'android', 'gradlew.bat'), 0o775);
21
21
 
22
22
  try {
23
- await runCliBuild(projectRoot, options);
23
+ await runCliBuild(context.root, projectRoot, options);
24
24
  yield { success: true };
25
25
  } finally {
26
26
  if (childProcess) {
@@ -29,13 +29,17 @@ export default async function* buildAndroidExecutor(
29
29
  }
30
30
  }
31
31
 
32
- function runCliBuild(projectRoot: string, options: ReactNativeBuildOptions) {
32
+ function runCliBuild(
33
+ workspaceRoot: string,
34
+ projectRoot: string,
35
+ options: ReactNativeBuildOptions
36
+ ) {
33
37
  return new Promise((resolve, reject) => {
34
38
  childProcess = spawn(
35
39
  process.platform === 'win32' ? 'gradlew.bat' : './gradlew',
36
40
  [options.apk ? 'assembleRelease' : 'bundleRelease'],
37
41
  {
38
- cwd: join(projectRoot, 'android'),
42
+ cwd: join(workspaceRoot, projectRoot, 'android'),
39
43
  stdio: [0, 1, 2],
40
44
  }
41
45
  );
@@ -10,12 +10,8 @@ let childProcess;
10
10
  function bundleExecutor(options, context) {
11
11
  return (0, tslib_1.__asyncGenerator)(this, arguments, function* bundleExecutor_1() {
12
12
  const projectRoot = context.workspace.projects[context.projectName].root;
13
- options.bundleOutput = (0, path_1.relative)(context.root, projectRoot)
14
- .split(path_1.sep)
15
- .map(() => '..')
16
- .concat(options.bundleOutput)
17
- .join(path_1.sep);
18
- (0, fileutils_1.createDirectory)((0, path_1.dirname)((0, path_1.join)(projectRoot, options.bundleOutput)));
13
+ options.bundleOutput = (0, path_1.join)(context.root, options.bundleOutput);
14
+ (0, fileutils_1.createDirectory)((0, path_1.dirname)(options.bundleOutput));
19
15
  (0, ensure_node_modules_symlink_1.ensureNodeModulesSymlink)(context.root, projectRoot);
20
16
  try {
21
17
  yield (0, tslib_1.__await)(runCliBuild(context.root, projectRoot, options));
@@ -32,7 +28,7 @@ exports.default = bundleExecutor;
32
28
  function runCliBuild(workspaceRoot, projectRoot, options) {
33
29
  return new Promise((resolve, reject) => {
34
30
  const cliOptions = createBundleOptions(options);
35
- childProcess = (0, child_process_1.fork)((0, path_1.join)(workspaceRoot, './node_modules/react-native/cli.js'), ['bundle', ...cliOptions], { cwd: projectRoot });
31
+ childProcess = (0, child_process_1.fork)((0, path_1.join)(workspaceRoot, './node_modules/react-native/cli.js'), ['bundle', ...cliOptions], { cwd: (0, path_1.join)(workspaceRoot, projectRoot) });
36
32
  // Ensure the child process is killed when the parent exits
37
33
  process.on('exit', () => childProcess.kill());
38
34
  process.on('SIGTERM', () => childProcess.kill());
@@ -1 +1 @@
1
- {"version":3,"file":"bundle.impl.js","sourceRoot":"","sources":["../../../../../../packages/react-native/src/executors/bundle/bundle.impl.ts"],"names":[],"mappings":";;;AAAA,uEAA0E;AAC1E,yEAAiE;AACjE,+BAAoD;AACpD,yFAAmF;AACnF,iDAAmD;AAQnD,IAAI,YAA0B,CAAC;AAE/B,SAA+B,cAAc,CAC3C,OAAiC,EACjC,OAAwB;;QAExB,MAAM,WAAW,GAAG,OAAO,CAAC,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC;QAEzE,OAAO,CAAC,YAAY,GAAG,IAAA,eAAQ,EAAC,OAAO,CAAC,IAAI,EAAE,WAAW,CAAC;aACvD,KAAK,CAAC,UAAG,CAAC;aACV,GAAG,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC;aACf,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC;aAC5B,IAAI,CAAC,UAAG,CAAC,CAAC;QAEb,IAAA,2BAAe,EAAC,IAAA,cAAO,EAAC,IAAA,WAAI,EAAC,WAAW,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;QAClE,IAAA,sDAAwB,EAAC,OAAO,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;QAEpD,IAAI;YACF,2BAAM,WAAW,CAAC,OAAO,CAAC,IAAI,EAAE,WAAW,EAAE,OAAO,CAAC,CAAA,CAAC;YACtD,iCAAM,EAAE,OAAO,EAAE,IAAI,EAAE,CAAA,CAAC;SACzB;gBAAS;YACR,IAAI,YAAY,EAAE;gBAChB,YAAY,CAAC,IAAI,EAAE,CAAC;aACrB;SACF;IACH,CAAC;CAAA;AAvBD,iCAuBC;AAED,SAAS,WAAW,CAAC,aAAa,EAAE,WAAW,EAAE,OAAO;IACtD,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,MAAM,UAAU,GAAG,mBAAmB,CAAC,OAAO,CAAC,CAAC;QAChD,YAAY,GAAG,IAAA,oBAAI,EACjB,IAAA,WAAI,EAAC,aAAa,EAAE,oCAAoC,CAAC,EACzD,CAAC,QAAQ,EAAE,GAAG,UAAU,CAAC,EACzB,EAAE,GAAG,EAAE,WAAW,EAAE,CACrB,CAAC;QAEF,2DAA2D;QAC3D,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC;QAC9C,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC;QAEjD,YAAY,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE;YAC/B,MAAM,CAAC,GAAG,CAAC,CAAC;QACd,CAAC,CAAC,CAAC;QACH,YAAY,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;YAC/B,IAAI,IAAI,KAAK,CAAC,EAAE;gBACd,OAAO,CAAC,IAAI,CAAC,CAAC;aACf;iBAAM;gBACL,MAAM,CAAC,IAAI,CAAC,CAAC;aACd;QACH,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,mBAAmB,CAAC,OAAO;IAClC,OAAO,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE;QAC7C,MAAM,CAAC,GAAG,OAAO,CAAC,EAAE,CAAC,CAAC;QACtB,MAAM,CAAC,GAAG,IAAA,4BAAU,EAAC,EAAE,CAAC,CAAC;QACzB,IAAI,CAAC,KAAK,SAAS;YAAE,OAAO,GAAG,CAAC;QAChC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;QACtB,OAAO,GAAG,CAAC;IACb,CAAC,EAAE,EAAE,CAAC,CAAC;AACT,CAAC"}
1
+ {"version":3,"file":"bundle.impl.js","sourceRoot":"","sources":["../../../../../../packages/react-native/src/executors/bundle/bundle.impl.ts"],"names":[],"mappings":";;;AAAA,uEAA0E;AAC1E,yEAAiE;AACjE,+BAAoD;AACpD,yFAAmF;AACnF,iDAAmD;AAQnD,IAAI,YAA0B,CAAC;AAE/B,SAA+B,cAAc,CAC3C,OAAiC,EACjC,OAAwB;;QAExB,MAAM,WAAW,GAAG,OAAO,CAAC,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC;QAEzE,OAAO,CAAC,YAAY,GAAG,IAAA,WAAI,EAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC;QAEhE,IAAA,2BAAe,EAAC,IAAA,cAAO,EAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC;QAC/C,IAAA,sDAAwB,EAAC,OAAO,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;QAEpD,IAAI;YACF,2BAAM,WAAW,CAAC,OAAO,CAAC,IAAI,EAAE,WAAW,EAAE,OAAO,CAAC,CAAA,CAAC;YACtD,iCAAM,EAAE,OAAO,EAAE,IAAI,EAAE,CAAA,CAAC;SACzB;gBAAS;YACR,IAAI,YAAY,EAAE;gBAChB,YAAY,CAAC,IAAI,EAAE,CAAC;aACrB;SACF;IACH,CAAC;CAAA;AAnBD,iCAmBC;AAED,SAAS,WAAW,CAAC,aAAa,EAAE,WAAW,EAAE,OAAO;IACtD,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,MAAM,UAAU,GAAG,mBAAmB,CAAC,OAAO,CAAC,CAAC;QAChD,YAAY,GAAG,IAAA,oBAAI,EACjB,IAAA,WAAI,EAAC,aAAa,EAAE,oCAAoC,CAAC,EACzD,CAAC,QAAQ,EAAE,GAAG,UAAU,CAAC,EACzB,EAAE,GAAG,EAAE,IAAA,WAAI,EAAC,aAAa,EAAE,WAAW,CAAC,EAAE,CAC1C,CAAC;QAEF,2DAA2D;QAC3D,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC;QAC9C,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC;QAEjD,YAAY,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE;YAC/B,MAAM,CAAC,GAAG,CAAC,CAAC;QACd,CAAC,CAAC,CAAC;QACH,YAAY,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;YAC/B,IAAI,IAAI,KAAK,CAAC,EAAE;gBACd,OAAO,CAAC,IAAI,CAAC,CAAC;aACf;iBAAM;gBACL,MAAM,CAAC,IAAI,CAAC,CAAC;aACd;QACH,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,mBAAmB,CAAC,OAAO;IAClC,OAAO,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE;QAC7C,MAAM,CAAC,GAAG,OAAO,CAAC,EAAE,CAAC,CAAC;QACtB,MAAM,CAAC,GAAG,IAAA,4BAAU,EAAC,EAAE,CAAC,CAAC;QACzB,IAAI,CAAC,KAAK,SAAS;YAAE,OAAO,GAAG,CAAC;QAChC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;QACtB,OAAO,GAAG,CAAC;IACb,CAAC,EAAE,EAAE,CAAC,CAAC;AACT,CAAC"}
@@ -18,13 +18,9 @@ export default async function* bundleExecutor(
18
18
  ): AsyncGenerator<ReactNativeBundleOutput> {
19
19
  const projectRoot = context.workspace.projects[context.projectName].root;
20
20
 
21
- options.bundleOutput = relative(context.root, projectRoot)
22
- .split(sep)
23
- .map(() => '..')
24
- .concat(options.bundleOutput)
25
- .join(sep);
21
+ options.bundleOutput = join(context.root, options.bundleOutput);
26
22
 
27
- createDirectory(dirname(join(projectRoot, options.bundleOutput)));
23
+ createDirectory(dirname(options.bundleOutput));
28
24
  ensureNodeModulesSymlink(context.root, projectRoot);
29
25
 
30
26
  try {
@@ -43,7 +39,7 @@ function runCliBuild(workspaceRoot, projectRoot, options) {
43
39
  childProcess = fork(
44
40
  join(workspaceRoot, './node_modules/react-native/cli.js'),
45
41
  ['bundle', ...cliOptions],
46
- { cwd: projectRoot }
42
+ { cwd: join(workspaceRoot, projectRoot) }
47
43
  );
48
44
 
49
45
  // Ensure the child process is killed when the parent exits
@@ -12,15 +12,18 @@ function runAndroidExecutor(options, context) {
12
12
  return (0, tslib_1.__asyncGenerator)(this, arguments, function* runAndroidExecutor_1() {
13
13
  const projectRoot = context.workspace.projects[context.projectName].root;
14
14
  (0, ensure_node_modules_symlink_1.ensureNodeModulesSymlink)(context.root, projectRoot);
15
- (0, fs_1.chmodSync)((0, path_1.join)(projectRoot, 'android', 'gradlew'), 0o775);
16
- (0, fs_1.chmodSync)((0, path_1.join)(projectRoot, 'android', 'gradlew.bat'), 0o775);
15
+ (0, fs_1.chmodSync)((0, path_1.join)(context.root, projectRoot, 'android', 'gradlew'), 0o775);
16
+ (0, fs_1.chmodSync)((0, path_1.join)(context.root, projectRoot, 'android', 'gradlew.bat'), 0o775);
17
17
  if (options.sync) {
18
- (0, sync_deps_impl_1.displayNewlyAddedDepsMessage)(context.projectName, yield (0, tslib_1.__await)((0, sync_deps_impl_1.syncDeps)(context.projectName, projectRoot)));
18
+ (0, sync_deps_impl_1.displayNewlyAddedDepsMessage)(context.projectName, yield (0, tslib_1.__await)((0, sync_deps_impl_1.syncDeps)(context.projectName, projectRoot, context.root)));
19
19
  }
20
20
  try {
21
21
  const tasks = [runCliRunAndroid(context.root, projectRoot, options)];
22
22
  if (options.packager) {
23
- tasks.push((0, start_impl_1.runCliStart)(context.root, projectRoot, { port: options.port }));
23
+ tasks.push((0, start_impl_1.runCliStart)(context.root, projectRoot, {
24
+ port: options.port,
25
+ resetCache: options.resetCache,
26
+ }));
24
27
  }
25
28
  yield (0, tslib_1.__await)(Promise.all(tasks));
26
29
  yield yield (0, tslib_1.__await)({ success: true });
@@ -40,7 +43,7 @@ function runCliRunAndroid(workspaceRoot, projectRoot, options) {
40
43
  * Not passing '--packager' due to cli will launch start command from the project root
41
44
  */
42
45
  childProcess = (0, child_process_1.fork)((0, path_1.join)(workspaceRoot, './node_modules/react-native/cli.js'), ['run-android', ...createRunAndroidOptions(options), '--no-packager'], {
43
- cwd: projectRoot,
46
+ cwd: (0, path_1.join)(workspaceRoot, projectRoot),
44
47
  env: Object.assign(Object.assign({}, process.env), { RCT_METRO_PORT: options.port.toString() }),
45
48
  });
46
49
  // Ensure the child process is killed when the parent exits
@@ -59,7 +62,7 @@ function runCliRunAndroid(workspaceRoot, projectRoot, options) {
59
62
  });
60
63
  });
61
64
  }
62
- const nxOptions = ['sync', 'install', 'packager'];
65
+ const nxOrStartOptions = ['sync', 'install', 'packager', 'port', 'resetCache'];
63
66
  function createRunAndroidOptions(options) {
64
67
  return Object.keys(options).reduce((acc, k) => {
65
68
  const v = options[k];
@@ -71,7 +74,7 @@ function createRunAndroidOptions(options) {
71
74
  acc.push(`--no-jetifier`);
72
75
  }
73
76
  }
74
- else if (v && !nxOptions.includes(k)) {
77
+ else if (v && !nxOrStartOptions.includes(k)) {
75
78
  acc.push(`--${k}`, v);
76
79
  }
77
80
  return acc;
@@ -1 +1 @@
1
- {"version":3,"file":"run-android.impl.js","sourceRoot":"","sources":["../../../../../../packages/react-native/src/executors/run-android/run-android.impl.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"run-android.impl.js","sourceRoot":"","sources":["../../../../../../packages/react-native/src/executors/run-android/run-android.impl.ts"],"names":[],"mappings":"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"}
@@ -23,13 +23,13 @@ export default async function* runAndroidExecutor(
23
23
  ): AsyncGenerator<ReactNativeRunAndroidOutput> {
24
24
  const projectRoot = context.workspace.projects[context.projectName].root;
25
25
  ensureNodeModulesSymlink(context.root, projectRoot);
26
- chmodSync(join(projectRoot, 'android', 'gradlew'), 0o775);
27
- chmodSync(join(projectRoot, 'android', 'gradlew.bat'), 0o775);
26
+ chmodSync(join(context.root, projectRoot, 'android', 'gradlew'), 0o775);
27
+ chmodSync(join(context.root, projectRoot, 'android', 'gradlew.bat'), 0o775);
28
28
 
29
29
  if (options.sync) {
30
30
  displayNewlyAddedDepsMessage(
31
31
  context.projectName,
32
- await syncDeps(context.projectName, projectRoot)
32
+ await syncDeps(context.projectName, projectRoot, context.root)
33
33
  );
34
34
  }
35
35
 
@@ -37,7 +37,10 @@ export default async function* runAndroidExecutor(
37
37
  const tasks = [runCliRunAndroid(context.root, projectRoot, options)];
38
38
  if (options.packager) {
39
39
  tasks.push(
40
- runCliStart(context.root, projectRoot, { port: options.port })
40
+ runCliStart(context.root, projectRoot, {
41
+ port: options.port,
42
+ resetCache: options.resetCache,
43
+ })
41
44
  );
42
45
  }
43
46
 
@@ -65,7 +68,7 @@ function runCliRunAndroid(
65
68
  join(workspaceRoot, './node_modules/react-native/cli.js'),
66
69
  ['run-android', ...createRunAndroidOptions(options), '--no-packager'],
67
70
  {
68
- cwd: projectRoot,
71
+ cwd: join(workspaceRoot, projectRoot),
69
72
  env: { ...process.env, RCT_METRO_PORT: options.port.toString() },
70
73
  }
71
74
  );
@@ -87,7 +90,7 @@ function runCliRunAndroid(
87
90
  });
88
91
  }
89
92
 
90
- const nxOptions = ['sync', 'install', 'packager'];
93
+ const nxOrStartOptions = ['sync', 'install', 'packager', 'port', 'resetCache'];
91
94
 
92
95
  function createRunAndroidOptions(options) {
93
96
  return Object.keys(options).reduce((acc, k) => {
@@ -98,7 +101,7 @@ function createRunAndroidOptions(options) {
98
101
  if (!v) {
99
102
  acc.push(`--no-jetifier`);
100
103
  }
101
- } else if (v && !nxOptions.includes(k)) {
104
+ } else if (v && !nxOrStartOptions.includes(k)) {
102
105
  acc.push(`--${k}`, v);
103
106
  }
104
107
  return acc;
@@ -11,4 +11,5 @@ export interface ReactNativeRunAndroidOptions {
11
11
  port: number;
12
12
  terminal?: string;
13
13
  packager: boolean;
14
+ resetCache?: boolean;
14
15
  }
@@ -55,6 +55,11 @@
55
55
  "type": "boolean",
56
56
  "description": "Starts the packager server",
57
57
  "default": true
58
+ },
59
+ "resetCache": {
60
+ "type": "boolean",
61
+ "description": "Resets metro cache",
62
+ "default": false
58
63
  }
59
64
  }
60
65
  }
@@ -17,15 +17,18 @@ function runIosExecutor(options, context) {
17
17
  const projectRoot = context.workspace.projects[context.projectName].root;
18
18
  (0, ensure_node_modules_symlink_1.ensureNodeModulesSymlink)(context.root, projectRoot);
19
19
  if (options.sync) {
20
- (0, sync_deps_impl_1.displayNewlyAddedDepsMessage)(context.projectName, yield (0, tslib_1.__await)((0, sync_deps_impl_1.syncDeps)(context.projectName, projectRoot)));
20
+ (0, sync_deps_impl_1.displayNewlyAddedDepsMessage)(context.projectName, yield (0, tslib_1.__await)((0, sync_deps_impl_1.syncDeps)(context.projectName, projectRoot, context.root)));
21
21
  }
22
22
  if (options.install) {
23
- yield (0, tslib_1.__await)((0, pod_install_task_1.podInstall)((0, path_1.join)(projectRoot, 'ios')));
23
+ yield (0, tslib_1.__await)((0, pod_install_task_1.podInstall)((0, path_1.join)(context.root, projectRoot, 'ios')));
24
24
  }
25
25
  try {
26
26
  const tasks = [runCliRunIOS(context.root, projectRoot, options)];
27
27
  if (options.packager && options.xcodeConfiguration !== 'Release') {
28
- tasks.push((0, start_impl_1.runCliStart)(context.root, projectRoot, { port: options.port }));
28
+ tasks.push((0, start_impl_1.runCliStart)(context.root, projectRoot, {
29
+ port: options.port,
30
+ resetCache: options.resetCache,
31
+ }));
29
32
  }
30
33
  yield (0, tslib_1.__await)(Promise.all(tasks));
31
34
  yield yield (0, tslib_1.__await)({ success: true });
@@ -45,7 +48,7 @@ function runCliRunIOS(workspaceRoot, projectRoot, options) {
45
48
  * Not passing '--packager' due to cli will launch start command from the project root
46
49
  */
47
50
  childProcess = (0, child_process_1.fork)((0, path_1.join)(workspaceRoot, './node_modules/react-native/cli.js'), ['run-ios', ...createRunIOSOptions(options), '--no-packager'], {
48
- cwd: projectRoot,
51
+ cwd: (0, path_1.join)(workspaceRoot, projectRoot),
49
52
  env: Object.assign(Object.assign({}, process.env), { RCT_METRO_PORT: options.port.toString() }),
50
53
  });
51
54
  // Ensure the child process is killed when the parent exits
@@ -64,14 +67,14 @@ function runCliRunIOS(workspaceRoot, projectRoot, options) {
64
67
  });
65
68
  });
66
69
  }
67
- const nxOptions = ['sync', 'install', 'packager'];
70
+ const nxOrStartOptions = ['sync', 'install', 'packager', 'port', 'resetCache'];
68
71
  function createRunIOSOptions(options) {
69
72
  return Object.keys(options).reduce((acc, k) => {
70
73
  const v = options[k];
71
74
  if (k === 'xcodeConfiguration') {
72
75
  acc.push('--configuration', v);
73
76
  }
74
- else if (v && !nxOptions.includes(k)) {
77
+ else if (v && !nxOrStartOptions.includes(k)) {
75
78
  acc.push(`--${k}`, options[k]);
76
79
  }
77
80
  return acc;
@@ -1 +1 @@
1
- {"version":3,"file":"run-ios.impl.js","sourceRoot":"","sources":["../../../../../../packages/react-native/src/executors/run-ios/run-ios.impl.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"run-ios.impl.js","sourceRoot":"","sources":["../../../../../../packages/react-native/src/executors/run-ios/run-ios.impl.ts"],"names":[],"mappings":"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"}
@@ -30,18 +30,21 @@ export default async function* runIosExecutor(
30
30
  if (options.sync) {
31
31
  displayNewlyAddedDepsMessage(
32
32
  context.projectName,
33
- await syncDeps(context.projectName, projectRoot)
33
+ await syncDeps(context.projectName, projectRoot, context.root)
34
34
  );
35
35
  }
36
36
  if (options.install) {
37
- await podInstall(join(projectRoot, 'ios'));
37
+ await podInstall(join(context.root, projectRoot, 'ios'));
38
38
  }
39
39
 
40
40
  try {
41
41
  const tasks = [runCliRunIOS(context.root, projectRoot, options)];
42
42
  if (options.packager && options.xcodeConfiguration !== 'Release') {
43
43
  tasks.push(
44
- runCliStart(context.root, projectRoot, { port: options.port })
44
+ runCliStart(context.root, projectRoot, {
45
+ port: options.port,
46
+ resetCache: options.resetCache,
47
+ })
45
48
  );
46
49
  }
47
50
 
@@ -69,7 +72,7 @@ function runCliRunIOS(
69
72
  join(workspaceRoot, './node_modules/react-native/cli.js'),
70
73
  ['run-ios', ...createRunIOSOptions(options), '--no-packager'],
71
74
  {
72
- cwd: projectRoot,
75
+ cwd: join(workspaceRoot, projectRoot),
73
76
  env: { ...process.env, RCT_METRO_PORT: options.port.toString() },
74
77
  }
75
78
  );
@@ -91,14 +94,14 @@ function runCliRunIOS(
91
94
  });
92
95
  }
93
96
 
94
- const nxOptions = ['sync', 'install', 'packager'];
97
+ const nxOrStartOptions = ['sync', 'install', 'packager', 'port', 'resetCache'];
95
98
 
96
99
  function createRunIOSOptions(options) {
97
100
  return Object.keys(options).reduce((acc, k) => {
98
101
  const v = options[k];
99
102
  if (k === 'xcodeConfiguration') {
100
103
  acc.push('--configuration', v);
101
- } else if (v && !nxOptions.includes(k)) {
104
+ } else if (v && !nxOrStartOptions.includes(k)) {
102
105
  acc.push(`--${k}`, options[k]);
103
106
  }
104
107
  return acc;
@@ -9,4 +9,5 @@ export interface ReactNativeRunIosOptions {
9
9
  install?: boolean;
10
10
  sync?: boolean;
11
11
  terminal?: string;
12
+ resetCache?: boolean;
12
13
  }
@@ -47,6 +47,11 @@
47
47
  "type": "boolean",
48
48
  "description": "Starts the packager server",
49
49
  "default": true
50
+ },
51
+ "resetCache": {
52
+ "type": "boolean",
53
+ "description": "Resets metro cache",
54
+ "default": false
50
55
  }
51
56
  }
52
57
  }
@@ -61,7 +61,7 @@ function runCliStart(workspaceRoot, projectRoot, options) {
61
61
  exports.runCliStart = runCliStart;
62
62
  function startAsync(workspaceRoot, projectRoot, options) {
63
63
  return new Promise((resolve, reject) => {
64
- childProcess = (0, child_process_1.fork)((0, path_1.join)(workspaceRoot, './node_modules/react-native/cli.js'), ['start', ...createStartOptions(options)], { cwd: projectRoot });
64
+ childProcess = (0, child_process_1.fork)((0, path_1.join)(workspaceRoot, './node_modules/react-native/cli.js'), ['start', ...createStartOptions(options)], { cwd: (0, path_1.join)(workspaceRoot, projectRoot) });
65
65
  // Ensure the child process is killed when the parent exits
66
66
  process.on('exit', () => childProcess.kill());
67
67
  process.on('SIGTERM', () => childProcess.kill());
@@ -1 +1 @@
1
- {"version":3,"file":"start.impl.js","sourceRoot":"","sources":["../../../../../../packages/react-native/src/executors/start/start.impl.ts"],"names":[],"mappings":";;;;AAAA,+BAA+B;AAC/B,yCAAuD;AACvD,iDAAmD;AACnD,+BAA4B;AAC5B,yFAAmF;AACnF,mEAA8D;AAQ9D,IAAI,YAA0B,CAAC;AAE/B,SAA+B,aAAa,CAC1C,OAAgC,EAChC,OAAwB;;QAExB,MAAM,WAAW,GAAG,OAAO,CAAC,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC;QACzE,IAAA,sDAAwB,EAAC,OAAO,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;QAEpD,IAAI;YACF,MAAM,OAAO,GAAG,oBAAoB,OAAO,CAAC,IAAI,EAAE,CAAC;YACnD,MAAM,OAAO,GAAG,OAAO,CAAC,WAAW,CAAC;YACpC,eAAM,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,wBAAwB,OAAO,EAAE,CAAC,CAAC,CAAC;YAC3D,eAAM,CAAC,IAAI,CACT,OAAO,KAAK,CAAC,IAAI,CAAC,kBAAkB,OAAO,EAAE,CAAC,OAAO,KAAK,CAAC,IAAI,CAC7D,cAAc,OAAO,EAAE,CACxB,yBAAyB,CAC3B,CAAC;YAEF,2BAAM,WAAW,CAAC,OAAO,CAAC,IAAI,EAAE,WAAW,EAAE,OAAO,CAAC,CAAA,CAAC;YAEtD,iCAAM;gBACJ,OAAO;gBACP,OAAO,EAAE,IAAI;aACd,CAAA,CAAC;SACH;gBAAS;YACR,IAAI,YAAY,EAAE;gBAChB,YAAY,CAAC,IAAI,EAAE,CAAC;aACrB;SACF;IACH,CAAC;CAAA;AA5BD,gCA4BC;AAED;;;GAGG;AACH,SAAsB,WAAW,CAC/B,aAAqB,EACrB,WAAmB,EACnB,OAAgC;;QAEhC,MAAM,MAAM,GAAG,MAAM,IAAA,uCAAiB,EAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACrD,IAAI,MAAM,KAAK,SAAS,EAAE;YACxB,eAAM,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAC;SAC3C;aAAM,IAAI,MAAM,KAAK,cAAc,EAAE;YACpC,eAAM,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC;SAC1C;aAAM;YACL,2BAA2B;YAC3B,eAAM,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;YAErC,IAAI;gBACF,MAAM,UAAU,CAAC,aAAa,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC;aACvD;YAAC,OAAO,KAAK,EAAE;gBACd,eAAM,CAAC,KAAK,CACV,uDAAuD,KAAK,CAAC,OAAO,EAAE,CACvE,CAAC;gBACF,MAAM,KAAK,CAAC;aACb;SACF;IACH,CAAC;CAAA;AAvBD,kCAuBC;AAED,SAAS,UAAU,CACjB,aAAqB,EACrB,WAAmB,EACnB,OAAgC;IAEhC,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,YAAY,GAAG,IAAA,oBAAI,EACjB,IAAA,WAAI,EAAC,aAAa,EAAE,oCAAoC,CAAC,EACzD,CAAC,OAAO,EAAE,GAAG,kBAAkB,CAAC,OAAO,CAAC,CAAC,EACzC,EAAE,GAAG,EAAE,WAAW,EAAE,CACrB,CAAC;QAEF,2DAA2D;QAC3D,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC;QAC9C,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC;QAEjD,YAAY,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE;YAC/B,MAAM,CAAC,GAAG,CAAC,CAAC;QACd,CAAC,CAAC,CAAC;QACH,YAAY,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;YAC/B,IAAI,IAAI,KAAK,CAAC,EAAE;gBACd,OAAO,CAAC,IAAI,CAAC,CAAC;aACf;iBAAM;gBACL,MAAM,CAAC,IAAI,CAAC,CAAC;aACd;QACH,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,kBAAkB,CAAC,OAAO;IACjC,OAAO,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE;QAC5C,IAAI,CAAC,KAAK,YAAY,EAAE;YACtB,IAAI,OAAO,CAAC,CAAC,CAAC,KAAK,IAAI,EAAE;gBACvB,GAAG,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;aAC3B;SACF;aAAM;YACL,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;SAChC;QACD,OAAO,GAAG,CAAC;IACb,CAAC,EAAE,EAAE,CAAC,CAAC;AACT,CAAC"}
1
+ {"version":3,"file":"start.impl.js","sourceRoot":"","sources":["../../../../../../packages/react-native/src/executors/start/start.impl.ts"],"names":[],"mappings":"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"}
@@ -81,7 +81,7 @@ function startAsync(
81
81
  childProcess = fork(
82
82
  join(workspaceRoot, './node_modules/react-native/cli.js'),
83
83
  ['start', ...createStartOptions(options)],
84
- { cwd: projectRoot }
84
+ { cwd: join(workspaceRoot, projectRoot) }
85
85
  );
86
86
 
87
87
  // Ensure the child process is killed when the parent exits
@@ -4,5 +4,5 @@ export interface ReactNativeSyncDepsOutput {
4
4
  success: boolean;
5
5
  }
6
6
  export default function syncDepsExecutor(options: ReactNativeSyncDepsOptions, context: ExecutorContext): AsyncGenerator<ReactNativeSyncDepsOutput>;
7
- export declare function syncDeps(projectName: string, projectRoot: string, include?: string): Promise<string[]>;
7
+ export declare function syncDeps(projectName: string, projectRoot: string, workspaceRoot: string, include?: string): Promise<string[]>;
8
8
  export declare function displayNewlyAddedDepsMessage(projectName: string, deps: string[]): void;
@@ -11,16 +11,16 @@ const project_graph_1 = require("@nrwl/workspace/src/core/project-graph");
11
11
  function syncDepsExecutor(options, context) {
12
12
  return (0, tslib_1.__asyncGenerator)(this, arguments, function* syncDepsExecutor_1() {
13
13
  const projectRoot = context.workspace.projects[context.projectName].root;
14
- displayNewlyAddedDepsMessage(context.projectName, yield (0, tslib_1.__await)(syncDeps(context.projectName, projectRoot, options.include)));
14
+ displayNewlyAddedDepsMessage(context.projectName, yield (0, tslib_1.__await)(syncDeps(context.projectName, projectRoot, context.root, options.include)));
15
15
  yield yield (0, tslib_1.__await)({ success: true });
16
16
  });
17
17
  }
18
18
  exports.default = syncDepsExecutor;
19
- function syncDeps(projectName, projectRoot, include) {
19
+ function syncDeps(projectName, projectRoot, workspaceRoot, include) {
20
20
  return (0, tslib_1.__awaiter)(this, void 0, void 0, function* () {
21
21
  const graph = yield (0, project_graph_1.createProjectGraphAsync)();
22
22
  const npmDeps = (0, find_all_npm_dependencies_1.findAllNpmDependencies)(graph, projectName);
23
- const packageJsonPath = (0, path_1.join)(projectRoot, 'package.json');
23
+ const packageJsonPath = (0, path_1.join)(workspaceRoot, projectRoot, 'package.json');
24
24
  const packageJson = (0, fileutils_1.readJsonFile)(packageJsonPath);
25
25
  const newDeps = [];
26
26
  const includeDeps = include === null || include === void 0 ? void 0 : include.split(',');
@@ -1 +1 @@
1
- {"version":3,"file":"sync-deps.impl.js","sourceRoot":"","sources":["../../../../../../packages/react-native/src/executors/sync-deps/sync-deps.impl.ts"],"names":[],"mappings":";;;;AAAA,+BAA4B;AAC5B,qFAA+E;AAC/E,uEAGiD;AACjD,+BAA+B;AAC/B,yCAAuD;AAEvD,0EAAiF;AAMjF,SAA+B,gBAAgB,CAC7C,OAAmC,EACnC,OAAwB;;QAExB,MAAM,WAAW,GAAG,OAAO,CAAC,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC;QACzE,4BAA4B,CAC1B,OAAO,CAAC,WAAW,EACnB,2BAAM,QAAQ,CAAC,OAAO,CAAC,WAAW,EAAE,WAAW,EAAE,OAAO,CAAC,OAAO,CAAC,CAAA,CAClE,CAAC;QAEF,iCAAM,EAAE,OAAO,EAAE,IAAI,EAAE,CAAA,CAAC;IAC1B,CAAC;CAAA;AAXD,mCAWC;AAED,SAAsB,QAAQ,CAC5B,WAAmB,EACnB,WAAmB,EACnB,OAAgB;;QAEhB,MAAM,KAAK,GAAG,MAAM,IAAA,uCAAuB,GAAE,CAAC;QAC9C,MAAM,OAAO,GAAG,IAAA,kDAAsB,EAAC,KAAK,EAAE,WAAW,CAAC,CAAC;QAC3D,MAAM,eAAe,GAAG,IAAA,WAAI,EAAC,WAAW,EAAE,cAAc,CAAC,CAAC;QAC1D,MAAM,WAAW,GAAG,IAAA,wBAAY,EAAC,eAAe,CAAC,CAAC;QAClD,MAAM,OAAO,GAAG,EAAE,CAAC;QACnB,MAAM,WAAW,GAAG,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,KAAK,CAAC,GAAG,CAAC,CAAC;QACxC,IAAI,OAAO,GAAG,KAAK,CAAC;QAEpB,IAAI,CAAC,WAAW,CAAC,YAAY,EAAE;YAC7B,WAAW,CAAC,YAAY,GAAG,EAAE,CAAC;YAC9B,OAAO,GAAG,IAAI,CAAC;SAChB;QAED,IAAI,WAAW,EAAE;YACf,OAAO,CAAC,IAAI,CAAC,GAAG,WAAW,CAAC,CAAC;SAC9B;QAED,OAAO,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;YACtB,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,GAAG,CAAC,EAAE;gBAClC,WAAW,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC;gBACpC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBAClB,OAAO,GAAG,IAAI,CAAC;aAChB;QACH,CAAC,CAAC,CAAC;QAEH,IAAI,OAAO,EAAE;YACX,IAAA,yBAAa,EAAC,eAAe,EAAE,WAAW,CAAC,CAAC;SAC7C;QAED,OAAO,OAAO,CAAC;IACjB,CAAC;CAAA;AAnCD,4BAmCC;AAED,SAAgB,4BAA4B,CAC1C,WAAmB,EACnB,IAAc;IAEd,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE;QACnB,eAAM,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAC5B,MAAM,CACP,yCAAyC,WAAW;IACrD,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;KACjE;SAAM;QACL,eAAM,CAAC,IAAI,CACT,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAChB,MAAM,CACP,sBAAsB,WAAW,oCAAoC,CACvE,CAAC;KACH;AACH,CAAC;AAhBD,oEAgBC"}
1
+ {"version":3,"file":"sync-deps.impl.js","sourceRoot":"","sources":["../../../../../../packages/react-native/src/executors/sync-deps/sync-deps.impl.ts"],"names":[],"mappings":";;;;AAAA,+BAA4B;AAC5B,qFAA+E;AAC/E,uEAGiD;AACjD,+BAA+B;AAC/B,yCAAuD;AAEvD,0EAAiF;AAMjF,SAA+B,gBAAgB,CAC7C,OAAmC,EACnC,OAAwB;;QAExB,MAAM,WAAW,GAAG,OAAO,CAAC,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC;QACzE,4BAA4B,CAC1B,OAAO,CAAC,WAAW,EACnB,2BAAM,QAAQ,CACZ,OAAO,CAAC,WAAW,EACnB,WAAW,EACX,OAAO,CAAC,IAAI,EACZ,OAAO,CAAC,OAAO,CAChB,CAAA,CACF,CAAC;QAEF,iCAAM,EAAE,OAAO,EAAE,IAAI,EAAE,CAAA,CAAC;IAC1B,CAAC;CAAA;AAhBD,mCAgBC;AAED,SAAsB,QAAQ,CAC5B,WAAmB,EACnB,WAAmB,EACnB,aAAqB,EACrB,OAAgB;;QAEhB,MAAM,KAAK,GAAG,MAAM,IAAA,uCAAuB,GAAE,CAAC;QAC9C,MAAM,OAAO,GAAG,IAAA,kDAAsB,EAAC,KAAK,EAAE,WAAW,CAAC,CAAC;QAC3D,MAAM,eAAe,GAAG,IAAA,WAAI,EAAC,aAAa,EAAE,WAAW,EAAE,cAAc,CAAC,CAAC;QACzE,MAAM,WAAW,GAAG,IAAA,wBAAY,EAAC,eAAe,CAAC,CAAC;QAClD,MAAM,OAAO,GAAG,EAAE,CAAC;QACnB,MAAM,WAAW,GAAG,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,KAAK,CAAC,GAAG,CAAC,CAAC;QACxC,IAAI,OAAO,GAAG,KAAK,CAAC;QAEpB,IAAI,CAAC,WAAW,CAAC,YAAY,EAAE;YAC7B,WAAW,CAAC,YAAY,GAAG,EAAE,CAAC;YAC9B,OAAO,GAAG,IAAI,CAAC;SAChB;QAED,IAAI,WAAW,EAAE;YACf,OAAO,CAAC,IAAI,CAAC,GAAG,WAAW,CAAC,CAAC;SAC9B;QAED,OAAO,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;YACtB,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,GAAG,CAAC,EAAE;gBAClC,WAAW,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC;gBACpC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBAClB,OAAO,GAAG,IAAI,CAAC;aAChB;QACH,CAAC,CAAC,CAAC;QAEH,IAAI,OAAO,EAAE;YACX,IAAA,yBAAa,EAAC,eAAe,EAAE,WAAW,CAAC,CAAC;SAC7C;QAED,OAAO,OAAO,CAAC;IACjB,CAAC;CAAA;AApCD,4BAoCC;AAED,SAAgB,4BAA4B,CAC1C,WAAmB,EACnB,IAAc;IAEd,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE;QACnB,eAAM,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAC5B,MAAM,CACP,yCAAyC,WAAW;IACrD,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;KACjE;SAAM;QACL,eAAM,CAAC,IAAI,CACT,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAChB,MAAM,CACP,sBAAsB,WAAW,oCAAoC,CACvE,CAAC;KACH;AACH,CAAC;AAhBD,oEAgBC"}
@@ -20,7 +20,12 @@ export default async function* syncDepsExecutor(
20
20
  const projectRoot = context.workspace.projects[context.projectName].root;
21
21
  displayNewlyAddedDepsMessage(
22
22
  context.projectName,
23
- await syncDeps(context.projectName, projectRoot, options.include)
23
+ await syncDeps(
24
+ context.projectName,
25
+ projectRoot,
26
+ context.root,
27
+ options.include
28
+ )
24
29
  );
25
30
 
26
31
  yield { success: true };
@@ -29,11 +34,12 @@ export default async function* syncDepsExecutor(
29
34
  export async function syncDeps(
30
35
  projectName: string,
31
36
  projectRoot: string,
37
+ workspaceRoot: string,
32
38
  include?: string
33
39
  ): Promise<string[]> {
34
40
  const graph = await createProjectGraphAsync();
35
41
  const npmDeps = findAllNpmDependencies(graph, projectName);
36
- const packageJsonPath = join(projectRoot, 'package.json');
42
+ const packageJsonPath = join(workspaceRoot, projectRoot, 'package.json');
37
43
  const packageJson = readJsonFile(packageJsonPath);
38
44
  const newDeps = [];
39
45
  const includeDeps = include?.split(',');
@@ -24,10 +24,10 @@ function reactNativeApplicationGenerator(host, schema) {
24
24
  const lintTask = yield (0, add_linting_1.addLinting)(host, options.projectName, options.appProjectRoot, [(0, devkit_1.joinPathFragments)(options.appProjectRoot, 'tsconfig.app.json')], options.linter, options.setParserOptionsProject);
25
25
  const jestTask = yield (0, add_jest_1.addJest)(host, options.unitTestRunner, options.projectName, options.appProjectRoot);
26
26
  const detoxTask = yield (0, add_detox_1.addDetox)(host, options);
27
- const symlinkTask = (0, symlink_task_1.runSymlink)(options.appProjectRoot);
28
- const podInstallTask = (0, pod_install_task_1.runPodInstall)(options.iosProjectRoot);
29
- const chmodTaskGradlew = (0, chmod_task_1.runChmod)((0, path_1.join)(options.androidProjectRoot, 'gradlew'), 0o775);
30
- const chmodTaskGradlewBat = (0, chmod_task_1.runChmod)((0, path_1.join)(options.androidProjectRoot, 'gradlew.bat'), 0o775);
27
+ const symlinkTask = (0, symlink_task_1.runSymlink)(host.root, options.appProjectRoot);
28
+ const podInstallTask = (0, pod_install_task_1.runPodInstall)((0, path_1.join)(host.root, options.iosProjectRoot));
29
+ const chmodTaskGradlew = (0, chmod_task_1.runChmod)((0, path_1.join)(host.root, options.androidProjectRoot, 'gradlew'), 0o775);
30
+ const chmodTaskGradlewBat = (0, chmod_task_1.runChmod)((0, path_1.join)(host.root, options.androidProjectRoot, 'gradlew.bat'), 0o775);
31
31
  if (!options.skipFormat) {
32
32
  yield (0, devkit_1.formatFiles)(host);
33
33
  }
@@ -1 +1 @@
1
- {"version":3,"file":"application.js","sourceRoot":"","sources":["../../../../../../packages/react-native/src/generators/application/application.ts"],"names":[],"mappings":";;;;AAAA,2FAAqF;AAErF,mEAA6D;AAC7D,uDAAkD;AAClD,2DAAsD;AACtD,yDAAqD;AACrD,mDAA+C;AAC/C,yCAMsB;AACtB,+DAA2D;AAC3D,uCAAyC;AACzC,+BAA4B;AAC5B,mDAA+C;AAC/C,6EAAwE;AACxE,+CAA2C;AAE3C,SAAsB,+BAA+B,CACnD,IAAU,EACV,MAAc;;QAEd,MAAM,OAAO,GAAG,IAAA,oCAAgB,EAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAE/C,IAAA,iDAAsB,EAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QACtC,IAAA,wBAAU,EAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAE1B,MAAM,QAAQ,GAAG,MAAM,IAAA,cAAa,EAAC,IAAI,kCAAO,OAAO,KAAE,UAAU,EAAE,IAAI,IAAG,CAAC;QAC7E,MAAM,QAAQ,GAAG,MAAM,IAAA,wBAAU,EAC/B,IAAI,EACJ,OAAO,CAAC,WAAW,EACnB,OAAO,CAAC,cAAc,EACtB,CAAC,IAAA,0BAAiB,EAAC,OAAO,CAAC,cAAc,EAAE,mBAAmB,CAAC,CAAC,EAChE,OAAO,CAAC,MAAM,EACd,OAAO,CAAC,uBAAuB,CAChC,CAAC;QACF,MAAM,QAAQ,GAAG,MAAM,IAAA,kBAAO,EAC5B,IAAI,EACJ,OAAO,CAAC,cAAc,EACtB,OAAO,CAAC,WAAW,EACnB,OAAO,CAAC,cAAc,CACvB,CAAC;QACF,MAAM,SAAS,GAAG,MAAM,IAAA,oBAAQ,EAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAChD,MAAM,WAAW,GAAG,IAAA,yBAAU,EAAC,OAAO,CAAC,cAAc,CAAC,CAAC;QACvD,MAAM,cAAc,GAAG,IAAA,gCAAa,EAAC,OAAO,CAAC,cAAc,CAAC,CAAC;QAC7D,MAAM,gBAAgB,GAAG,IAAA,qBAAQ,EAC/B,IAAA,WAAI,EAAC,OAAO,CAAC,kBAAkB,EAAE,SAAS,CAAC,EAC3C,KAAK,CACN,CAAC;QACF,MAAM,mBAAmB,GAAG,IAAA,qBAAQ,EAClC,IAAA,WAAI,EAAC,OAAO,CAAC,kBAAkB,EAAE,aAAa,CAAC,EAC/C,KAAK,CACN,CAAC;QAEF,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE;YACvB,MAAM,IAAA,oBAAW,EAAC,IAAI,CAAC,CAAC;SACzB;QAED,OAAO,IAAA,sCAAgB,EACrB,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,SAAS,EACT,WAAW,EACX,cAAc,EACd,gBAAgB,EAChB,mBAAmB,CACpB,CAAC;IACJ,CAAC;CAAA;AAlDD,0EAkDC;AAED,kBAAe,+BAA+B,CAAC;AAClC,QAAA,+BAA+B,GAAG,IAAA,2BAAkB,EAC/D,+BAA+B,CAChC,CAAC"}
1
+ {"version":3,"file":"application.js","sourceRoot":"","sources":["../../../../../../packages/react-native/src/generators/application/application.ts"],"names":[],"mappings":";;;;AAAA,2FAAqF;AAErF,mEAA6D;AAC7D,uDAAkD;AAClD,2DAAsD;AACtD,yDAAqD;AACrD,mDAA+C;AAC/C,yCAMsB;AACtB,+DAA2D;AAC3D,uCAAyC;AACzC,+BAA4B;AAC5B,mDAA+C;AAC/C,6EAAwE;AACxE,+CAA2C;AAE3C,SAAsB,+BAA+B,CACnD,IAAU,EACV,MAAc;;QAEd,MAAM,OAAO,GAAG,IAAA,oCAAgB,EAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAE/C,IAAA,iDAAsB,EAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QACtC,IAAA,wBAAU,EAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAE1B,MAAM,QAAQ,GAAG,MAAM,IAAA,cAAa,EAAC,IAAI,kCAAO,OAAO,KAAE,UAAU,EAAE,IAAI,IAAG,CAAC;QAC7E,MAAM,QAAQ,GAAG,MAAM,IAAA,wBAAU,EAC/B,IAAI,EACJ,OAAO,CAAC,WAAW,EACnB,OAAO,CAAC,cAAc,EACtB,CAAC,IAAA,0BAAiB,EAAC,OAAO,CAAC,cAAc,EAAE,mBAAmB,CAAC,CAAC,EAChE,OAAO,CAAC,MAAM,EACd,OAAO,CAAC,uBAAuB,CAChC,CAAC;QACF,MAAM,QAAQ,GAAG,MAAM,IAAA,kBAAO,EAC5B,IAAI,EACJ,OAAO,CAAC,cAAc,EACtB,OAAO,CAAC,WAAW,EACnB,OAAO,CAAC,cAAc,CACvB,CAAC;QACF,MAAM,SAAS,GAAG,MAAM,IAAA,oBAAQ,EAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAChD,MAAM,WAAW,GAAG,IAAA,yBAAU,EAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,cAAc,CAAC,CAAC;QAClE,MAAM,cAAc,GAAG,IAAA,gCAAa,EAAC,IAAA,WAAI,EAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC;QAC9E,MAAM,gBAAgB,GAAG,IAAA,qBAAQ,EAC/B,IAAA,WAAI,EAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,kBAAkB,EAAE,SAAS,CAAC,EACtD,KAAK,CACN,CAAC;QACF,MAAM,mBAAmB,GAAG,IAAA,qBAAQ,EAClC,IAAA,WAAI,EAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,kBAAkB,EAAE,aAAa,CAAC,EAC1D,KAAK,CACN,CAAC;QAEF,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE;YACvB,MAAM,IAAA,oBAAW,EAAC,IAAI,CAAC,CAAC;SACzB;QAED,OAAO,IAAA,sCAAgB,EACrB,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,SAAS,EACT,WAAW,EACX,cAAc,EACd,gBAAgB,EAChB,mBAAmB,CACpB,CAAC;IACJ,CAAC;CAAA;AAlDD,0EAkDC;AAED,kBAAe,+BAA+B,CAAC;AAClC,QAAA,+BAA+B,GAAG,IAAA,2BAAkB,EAC/D,+BAA+B,CAChC,CAAC"}
@@ -18,7 +18,7 @@ function normalizeOptions(host, options) {
18
18
  const parsedTags = options.tags
19
19
  ? options.tags.split(',').map((s) => s.trim())
20
20
  : [];
21
- const entryFile = (0, path_1.join)(host.root, appProjectRoot, '/src/main.tsx');
21
+ const entryFile = (0, path_1.join)(host.root, appProjectRoot, options.js ? 'src/main.js' : '/src/main.tsx');
22
22
  /**
23
23
  * if options.name is "my-app"
24
24
  * name: "my-app", className: 'MyApp', lowerCaseName: 'myapp', displayName: 'MyApp', projectName: 'my-app', appProjectRoot: 'apps/my-app', androidProjectRoot: 'apps/my-app/android', iosProjectRoot: 'apps/my-app/ios'
@@ -1 +1 @@
1
- {"version":3,"file":"normalize-options.js","sourceRoot":"","sources":["../../../../../../../packages/react-native/src/generators/application/lib/normalize-options.ts"],"names":[],"mappings":";;;AAAA,yCAA2C;AAC3C,+BAA4B;AAc5B,SAAgB,gBAAgB,CAC9B,IAAU,EACV,OAAe;IAEf,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,IAAA,cAAK,EAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAEpD,MAAM,aAAa,GAAG,OAAO,CAAC,SAAS;QACrC,CAAC,CAAC,IAAA,cAAK,EAAC,OAAO,CAAC,SAAS,CAAC,CAAC,QAAQ;QACnC,CAAC,CAAC,EAAE,CAAC;IACP,MAAM,gBAAgB,GAAG,aAAa;QACpC,CAAC,CAAC,GAAG,aAAa,IAAI,QAAQ,EAAE;QAChC,CAAC,CAAC,QAAQ,CAAC;IAEb,MAAM,cAAc,GAAG,gBAAgB,CAAC,OAAO,CAAC,IAAI,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC;IAE3E,MAAM,cAAc,GAAG,QAAQ,gBAAgB,EAAE,CAAC;IAClD,MAAM,cAAc,GAAG,IAAA,WAAI,EAAC,cAAc,EAAE,KAAK,CAAC,CAAC;IACnD,MAAM,kBAAkB,GAAG,IAAA,WAAI,EAAC,cAAc,EAAE,SAAS,CAAC,CAAC;IAE3D,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,SAAS,GAAG,IAAA,WAAI,EAAC,IAAI,CAAC,IAAI,EAAE,cAAc,EAAE,eAAe,CAAC,CAAC;IAEnE;;;;;OAKG;IACH,uCACK,OAAO,KACV,cAAc,EAAE,OAAO,CAAC,cAAc,IAAI,MAAM,EAChD,aAAa,EAAE,OAAO,CAAC,aAAa,IAAI,OAAO,EAC/C,IAAI,EAAE,QAAQ,EACd,SAAS,EACT,aAAa,EAAE,SAAS,CAAC,WAAW,EAAE,EACtC,WAAW,EAAE,OAAO,CAAC,WAAW,IAAI,SAAS,EAC7C,WAAW,EAAE,cAAc,EAC3B,cAAc;QACd,cAAc;QACd,kBAAkB;QAClB,UAAU;QACV,SAAS,IACT;AACJ,CAAC;AA9CD,4CA8CC"}
1
+ {"version":3,"file":"normalize-options.js","sourceRoot":"","sources":["../../../../../../../packages/react-native/src/generators/application/lib/normalize-options.ts"],"names":[],"mappings":";;;AAAA,yCAA2C;AAC3C,+BAA4B;AAc5B,SAAgB,gBAAgB,CAC9B,IAAU,EACV,OAAe;IAEf,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,IAAA,cAAK,EAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAEpD,MAAM,aAAa,GAAG,OAAO,CAAC,SAAS;QACrC,CAAC,CAAC,IAAA,cAAK,EAAC,OAAO,CAAC,SAAS,CAAC,CAAC,QAAQ;QACnC,CAAC,CAAC,EAAE,CAAC;IACP,MAAM,gBAAgB,GAAG,aAAa;QACpC,CAAC,CAAC,GAAG,aAAa,IAAI,QAAQ,EAAE;QAChC,CAAC,CAAC,QAAQ,CAAC;IAEb,MAAM,cAAc,GAAG,gBAAgB,CAAC,OAAO,CAAC,IAAI,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC;IAE3E,MAAM,cAAc,GAAG,QAAQ,gBAAgB,EAAE,CAAC;IAClD,MAAM,cAAc,GAAG,IAAA,WAAI,EAAC,cAAc,EAAE,KAAK,CAAC,CAAC;IACnD,MAAM,kBAAkB,GAAG,IAAA,WAAI,EAAC,cAAc,EAAE,SAAS,CAAC,CAAC;IAE3D,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,SAAS,GAAG,IAAA,WAAI,EACpB,IAAI,CAAC,IAAI,EACT,cAAc,EACd,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,eAAe,CAC7C,CAAC;IAEF;;;;;OAKG;IACH,uCACK,OAAO,KACV,cAAc,EAAE,OAAO,CAAC,cAAc,IAAI,MAAM,EAChD,aAAa,EAAE,OAAO,CAAC,aAAa,IAAI,OAAO,EAC/C,IAAI,EAAE,QAAQ,EACd,SAAS,EACT,aAAa,EAAE,SAAS,CAAC,WAAW,EAAE,EACtC,WAAW,EAAE,OAAO,CAAC,WAAW,IAAI,SAAS,EAC7C,WAAW,EAAE,cAAc,EAC3B,cAAc;QACd,cAAc;QACd,kBAAkB;QAClB,UAAU;QACV,SAAS,IACT;AACJ,CAAC;AAlDD,4CAkDC"}
@@ -31,26 +31,16 @@ function reactNativeInitGenerator(host, schema) {
31
31
  }
32
32
  exports.reactNativeInitGenerator = reactNativeInitGenerator;
33
33
  function updateDependencies(host) {
34
+ const isPnpm = (0, devkit_1.detectPackageManager)(host.root) === 'pnpm';
34
35
  return (0, devkit_1.addDependenciesToPackageJson)(host, {
35
36
  react: versions_2.reactVersion,
36
37
  'react-native': versions_1.reactNativeVersion,
37
- }, {
38
- '@nrwl/react-native': versions_1.nxVersion,
39
- '@types/react': versions_2.typesReactVersion,
40
- '@types/react-native': versions_1.typesReactNativeVersion,
41
- '@react-native-community/cli': versions_1.reactNativeCommunityCli,
42
- '@react-native-community/cli-platform-android': versions_1.reactNativeCommunityCliAndroid,
43
- '@react-native-community/cli-platform-ios': versions_1.reactNativeCommunityCliIos,
44
- 'metro-react-native-babel-preset': versions_1.metroReactNativeBabelPresetVersion,
45
- '@testing-library/react-native': versions_1.testingLibraryReactNativeVersion,
46
- '@testing-library/jest-native': versions_1.testingLibraryJestNativeVersion,
47
- 'jest-react-native': versions_1.jestReactNativeVersion,
48
- metro: versions_1.metroVersion,
49
- 'metro-resolver': versions_1.metroVersion,
50
- 'react-test-renderer': versions_1.reactTestRendererVersion,
51
- 'react-native-svg-transformer': versions_1.reactNativeSvgTransformerVersion,
52
- 'react-native-svg': versions_1.reactNativeSvgVersion,
53
- });
38
+ }, Object.assign({ '@nrwl/react-native': versions_1.nxVersion, '@types/react': versions_2.typesReactVersion, '@types/react-native': versions_1.typesReactNativeVersion, '@react-native-community/cli': versions_1.reactNativeCommunityCli, '@react-native-community/cli-platform-android': versions_1.reactNativeCommunityCliAndroid, '@react-native-community/cli-platform-ios': versions_1.reactNativeCommunityCliIos, 'metro-react-native-babel-preset': versions_1.metroReactNativeBabelPresetVersion, '@testing-library/react-native': versions_1.testingLibraryReactNativeVersion, '@testing-library/jest-native': versions_1.testingLibraryJestNativeVersion, 'jest-react-native': versions_1.jestReactNativeVersion, metro: versions_1.metroVersion, 'metro-resolver': versions_1.metroVersion, 'react-test-renderer': versions_1.reactTestRendererVersion, 'react-native-svg-transformer': versions_1.reactNativeSvgTransformerVersion, 'react-native-svg': versions_1.reactNativeSvgVersion }, (isPnpm
39
+ ? {
40
+ 'metro-config': versions_1.metroVersion,
41
+ '@babel/runtime': versions_1.babelRuntimeVersion, // @babel/runtime is used by react-native-svg
42
+ }
43
+ : {})));
54
44
  }
55
45
  exports.updateDependencies = updateDependencies;
56
46
  function moveDependency(host) {
@@ -1 +1 @@
1
- {"version":3,"file":"init.js","sourceRoot":"","sources":["../../../../../../packages/react-native/src/generators/init/init.ts"],"names":[],"mappings":";;;;AAAA,iGAA4F;AAC5F,yCAMsB;AAEtB,mDAe8B;AAC9B,2FAAqF;AACrF,qEAA+D;AAC/D,qCAA+C;AAC/C,uCAAiD;AACjD,6DAGwC;AAExC,SAAsB,wBAAwB,CAAC,IAAU,EAAE,MAAc;;QACvE,IAAA,6CAAoB,EAAC,IAAI,EAAE,oBAAoB,CAAC,CAAC;QACjD,IAAA,wCAAiB,EAAC,IAAI,CAAC,CAAC;QAExB,MAAM,KAAK,GAAG,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,kBAAkB,CAAC,IAAI,CAAC,CAAC,CAAC;QAE/D,IAAI,CAAC,MAAM,CAAC,cAAc,IAAI,MAAM,CAAC,cAAc,KAAK,MAAM,EAAE;YAC9D,MAAM,QAAQ,GAAG,IAAA,wBAAiB,EAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YAC7C,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,EAAE,EAAE,CAAC,CAAC;YACrD,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,sCAAgB,EAAC,GAAG,KAAK,CAAC,CAAC;IACpC,CAAC;CAAA;AArBD,4DAqBC;AAED,SAAgB,kBAAkB,CAAC,IAAU;IAC3C,OAAO,IAAA,qCAA4B,EACjC,IAAI,EACJ;QACE,KAAK,EAAE,uBAAY;QACnB,cAAc,EAAE,6BAAkB;KACnC,EACD;QACE,oBAAoB,EAAE,oBAAS;QAC/B,cAAc,EAAE,4BAAiB;QACjC,qBAAqB,EAAE,kCAAuB;QAC9C,6BAA6B,EAAE,kCAAuB;QACtD,8CAA8C,EAC5C,yCAA8B;QAChC,0CAA0C,EAAE,qCAA0B;QACtE,iCAAiC,EAAE,6CAAkC;QACrE,+BAA+B,EAAE,2CAAgC;QACjE,8BAA8B,EAAE,0CAA+B;QAC/D,mBAAmB,EAAE,iCAAsB;QAC3C,KAAK,EAAE,uBAAY;QACnB,gBAAgB,EAAE,uBAAY;QAC9B,qBAAqB,EAAE,mCAAwB;QAC/C,8BAA8B,EAAE,2CAAgC;QAChE,kBAAkB,EAAE,gCAAqB;KAC1C,CACF,CAAC;AACJ,CAAC;AA1BD,gDA0BC;AAED,SAAS,cAAc,CAAC,IAAU;IAChC,OAAO,IAAA,0CAAiC,EAAC,IAAI,EAAE,CAAC,oBAAoB,CAAC,EAAE,EAAE,CAAC,CAAC;AAC7E,CAAC;AAED,kBAAe,wBAAwB,CAAC;AAC3B,QAAA,wBAAwB,GAAG,IAAA,2BAAkB,EACxD,wBAAwB,CACzB,CAAC"}
1
+ {"version":3,"file":"init.js","sourceRoot":"","sources":["../../../../../../packages/react-native/src/generators/init/init.ts"],"names":[],"mappings":";;;;AAAA,iGAA4F;AAC5F,yCAOsB;AAEtB,mDAgB8B;AAC9B,2FAAqF;AACrF,qEAA+D;AAC/D,qCAA+C;AAC/C,uCAAiD;AACjD,6DAGwC;AAExC,SAAsB,wBAAwB,CAAC,IAAU,EAAE,MAAc;;QACvE,IAAA,6CAAoB,EAAC,IAAI,EAAE,oBAAoB,CAAC,CAAC;QACjD,IAAA,wCAAiB,EAAC,IAAI,CAAC,CAAC;QAExB,MAAM,KAAK,GAAG,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,kBAAkB,CAAC,IAAI,CAAC,CAAC,CAAC;QAE/D,IAAI,CAAC,MAAM,CAAC,cAAc,IAAI,MAAM,CAAC,cAAc,KAAK,MAAM,EAAE;YAC9D,MAAM,QAAQ,GAAG,IAAA,wBAAiB,EAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YAC7C,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,EAAE,EAAE,CAAC,CAAC;YACrD,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,sCAAgB,EAAC,GAAG,KAAK,CAAC,CAAC;IACpC,CAAC;CAAA;AArBD,4DAqBC;AAED,SAAgB,kBAAkB,CAAC,IAAU;IAC3C,MAAM,MAAM,GAAG,IAAA,6BAAoB,EAAC,IAAI,CAAC,IAAI,CAAC,KAAK,MAAM,CAAC;IAC1D,OAAO,IAAA,qCAA4B,EACjC,IAAI,EACJ;QACE,KAAK,EAAE,uBAAY;QACnB,cAAc,EAAE,6BAAkB;KACnC,kBAEC,oBAAoB,EAAE,oBAAS,EAC/B,cAAc,EAAE,4BAAiB,EACjC,qBAAqB,EAAE,kCAAuB,EAC9C,6BAA6B,EAAE,kCAAuB,EACtD,8CAA8C,EAC5C,yCAA8B,EAChC,0CAA0C,EAAE,qCAA0B,EACtE,iCAAiC,EAAE,6CAAkC,EACrE,+BAA+B,EAAE,2CAAgC,EACjE,8BAA8B,EAAE,0CAA+B,EAC/D,mBAAmB,EAAE,iCAAsB,EAC3C,KAAK,EAAE,uBAAY,EACnB,gBAAgB,EAAE,uBAAY,EAC9B,qBAAqB,EAAE,mCAAwB,EAC/C,8BAA8B,EAAE,2CAAgC,EAChE,kBAAkB,EAAE,gCAAqB,IACtC,CAAC,MAAM;QACR,CAAC,CAAC;YACE,cAAc,EAAE,uBAAY;YAC5B,gBAAgB,EAAE,8BAAmB,EAAE,6CAA6C;SACrF;QACH,CAAC,CAAC,EAAE,CAAC,EAEV,CAAC;AACJ,CAAC;AAjCD,gDAiCC;AAED,SAAS,cAAc,CAAC,IAAU;IAChC,OAAO,IAAA,0CAAiC,EAAC,IAAI,EAAE,CAAC,oBAAoB,CAAC,EAAE,EAAE,CAAC,CAAC;AAC7E,CAAC;AAED,kBAAe,wBAAwB,CAAC;AAC3B,QAAA,wBAAwB,GAAG,IAAA,2BAAkB,EACxD,wBAAwB,CACzB,CAAC"}
@@ -4,17 +4,6 @@ exports.ensureNodeModulesSymlink = void 0;
4
4
  const path_1 = require("path");
5
5
  const os_1 = require("os");
6
6
  const fs = require("fs");
7
- const fileutils_1 = require("@nrwl/workspace/src/utilities/fileutils");
8
- const chalk = require("chalk");
9
- const requiredPackages = [
10
- 'react-native',
11
- 'jsc-android',
12
- '@react-native-community/cli-platform-ios',
13
- '@react-native-community/cli-platform-android',
14
- 'hermes-engine',
15
- '@nrwl/react-native',
16
- '@babel/runtime',
17
- ];
18
7
  /**
19
8
  * This function symlink workspace node_modules folder with app project's node_mdules folder.
20
9
  * For yarn and npm, it will symlink the entire node_modules folder.
@@ -28,83 +17,13 @@ function ensureNodeModulesSymlink(workspaceRoot, projectRoot) {
28
17
  if (!fs.existsSync(worksapceNodeModulesPath)) {
29
18
  throw new Error(`Cannot find ${worksapceNodeModulesPath}`);
30
19
  }
31
- const appNodeModulesPath = (0, path_1.join)(projectRoot, 'node_modules');
20
+ const appNodeModulesPath = (0, path_1.join)(workspaceRoot, projectRoot, 'node_modules');
32
21
  // `mklink /D` requires admin privilege in Windows so we need to use junction
33
22
  const symlinkType = (0, os_1.platform)() === 'win32' ? 'junction' : 'dir';
34
23
  if (fs.existsSync(appNodeModulesPath)) {
35
24
  fs.rmdirSync(appNodeModulesPath, { recursive: true });
36
25
  }
37
26
  fs.symlinkSync(worksapceNodeModulesPath, appNodeModulesPath, symlinkType);
38
- if (isPnpm(workspaceRoot)) {
39
- symlinkPnpm(workspaceRoot, appNodeModulesPath, symlinkType);
40
- }
41
27
  }
42
28
  exports.ensureNodeModulesSymlink = ensureNodeModulesSymlink;
43
- function isPnpm(workspaceRoot) {
44
- const pnpmDir = (0, path_1.join)(workspaceRoot, 'node_modules/.pnpm');
45
- return fs.existsSync(pnpmDir);
46
- }
47
- function symlinkPnpm(workspaceRoot, appNodeModulesPath, symlinkType) {
48
- const worksapcePackageJsonPath = (0, path_1.join)(workspaceRoot, 'package.json');
49
- const workspacePackageJson = (0, fileutils_1.readJsonFile)(worksapcePackageJsonPath);
50
- const workspacePackages = Object.keys(Object.assign(Object.assign({}, workspacePackageJson.dependencies), workspacePackageJson.devDependencies));
51
- const packagesToSymlink = new Set([
52
- ...workspacePackages,
53
- ...requiredPackages,
54
- ]);
55
- (0, fileutils_1.createDirectory)(appNodeModulesPath);
56
- packagesToSymlink.forEach((p) => {
57
- const dir = (0, path_1.join)(appNodeModulesPath, p);
58
- if (!fs.existsSync(dir)) {
59
- if (isScopedPackage(p))
60
- (0, fileutils_1.createDirectory)((0, path_1.join)(appNodeModulesPath, getScopedData(p).scope));
61
- fs.symlinkSync(locateNpmPackage(workspaceRoot, p), dir, symlinkType);
62
- }
63
- if (!fs.existsSync((0, path_1.join)(dir, 'package.json'))) {
64
- throw new Error(`Invalid symlink ${chalk.bold(dir)}. Remove ${chalk.bold(appNodeModulesPath)} and try again.`);
65
- }
66
- });
67
- }
68
- function locateNpmPackage(workspaceRoot, packageName) {
69
- const pnpmDir = (0, path_1.join)(workspaceRoot, 'node_modules/.pnpm');
70
- let candidates;
71
- if (isScopedPackage(packageName)) {
72
- const { scope, name } = getScopedData(packageName);
73
- candidates = fs
74
- .readdirSync(pnpmDir)
75
- .filter((f) => f.startsWith(`${scope}+${name}`) &&
76
- fs.lstatSync((0, path_1.join)(pnpmDir, f)).isDirectory());
77
- }
78
- else {
79
- candidates = fs
80
- .readdirSync(pnpmDir)
81
- .filter((f) => f.startsWith(packageName) &&
82
- fs.lstatSync((0, path_1.join)(pnpmDir, f)).isDirectory());
83
- }
84
- if (candidates.length === 0) {
85
- throw new Error(`Could not locate pnpm directory for ${packageName}`);
86
- }
87
- else if (candidates.length === 1) {
88
- return (0, path_1.join)(pnpmDir, candidates[0], 'node_modules', packageName);
89
- }
90
- else {
91
- const packageJson = (0, fileutils_1.readJsonFile)((0, path_1.join)(workspaceRoot, 'package.json'));
92
- const deps = Object.assign(Object.assign({}, packageJson.dependencies), packageJson.devDependencies);
93
- const version = deps[packageName];
94
- const found = candidates.find((c) => c.includes(version));
95
- if (found) {
96
- return (0, path_1.join)(pnpmDir, found, 'node_modules', packageName);
97
- }
98
- else {
99
- throw new Error(`Cannot find ${packageName}@${version}. Install it with 'pnpm install --save ${packageName}@${version}'.`);
100
- }
101
- }
102
- }
103
- function isScopedPackage(p) {
104
- return p.startsWith('@');
105
- }
106
- function getScopedData(p) {
107
- const [scope, name] = p.split('/');
108
- return { scope, name };
109
- }
110
29
  //# sourceMappingURL=ensure-node-modules-symlink.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ensure-node-modules-symlink.js","sourceRoot":"","sources":["../../../../../packages/react-native/src/utils/ensure-node-modules-symlink.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ensure-node-modules-symlink.js","sourceRoot":"","sources":["../../../../../packages/react-native/src/utils/ensure-node-modules-symlink.ts"],"names":[],"mappings":";;;AAAA,+BAA4B;AAC5B,2BAA8B;AAC9B,yBAAyB;AAGzB;;;;;;;GAOG;AACH,SAAgB,wBAAwB,CACtC,aAAqB,EACrB,WAAmB;IAEnB,MAAM,wBAAwB,GAAG,IAAA,WAAI,EAAC,aAAa,EAAE,cAAc,CAAC,CAAC;IACrE,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,wBAAwB,CAAC,EAAE;QAC5C,MAAM,IAAI,KAAK,CAAC,eAAe,wBAAwB,EAAE,CAAC,CAAC;KAC5D;IAED,MAAM,kBAAkB,GAAG,IAAA,WAAI,EAAC,aAAa,EAAE,WAAW,EAAE,cAAc,CAAC,CAAC;IAC5E,6EAA6E;IAC7E,MAAM,WAAW,GAAG,IAAA,aAAQ,GAAE,KAAK,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC;IAEhE,IAAI,EAAE,CAAC,UAAU,CAAC,kBAAkB,CAAC,EAAE;QACrC,EAAE,CAAC,SAAS,CAAC,kBAAkB,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;KACvD;IACD,EAAE,CAAC,WAAW,CAAC,wBAAwB,EAAE,kBAAkB,EAAE,WAAW,CAAC,CAAC;AAC5E,CAAC;AAjBD,4DAiBC"}
@@ -4,19 +4,18 @@ import * as fs from 'fs';
4
4
  import { ensureNodeModulesSymlink } from './ensure-node-modules-symlink';
5
5
 
6
6
  const workspaceDir = join(tmpdir(), 'nx-react-native-test');
7
+ const appDir = 'apps/myapp';
8
+ const appDirAbsolutePath = join(workspaceDir, appDir);
7
9
 
8
10
  describe('ensureNodeModulesSymlink', () => {
9
- let appDir: string;
10
-
11
11
  beforeEach(() => {
12
- appDir = join(workspaceDir, 'apps/myapp');
13
12
  if (fs.existsSync(workspaceDir))
14
13
  fs.rmdirSync(workspaceDir, { recursive: true });
15
14
  fs.mkdirSync(workspaceDir);
16
- fs.mkdirSync(appDir, { recursive: true });
17
- fs.mkdirSync(appDir, { recursive: true });
15
+ fs.mkdirSync(appDirAbsolutePath, { recursive: true });
16
+ fs.mkdirSync(appDirAbsolutePath, { recursive: true });
18
17
  fs.writeFileSync(
19
- join(appDir, 'package.json'),
18
+ join(appDirAbsolutePath, 'package.json'),
20
19
  JSON.stringify({
21
20
  name: 'myapp',
22
21
  dependencies: { 'react-native': '*' },
@@ -91,85 +90,6 @@ describe('ensureNodeModulesSymlink', () => {
91
90
  expectSymlinkToExist('random');
92
91
  });
93
92
 
94
- it('should support pnpm', () => {
95
- createPnpmDirectory('@nrwl/react-native', '9999.9.9');
96
- createPnpmDirectory(
97
- '@react-native-community/cli-platform-android',
98
- '7777.7.7'
99
- );
100
- createPnpmDirectory('@react-native-community/cli-platform-ios', '7777.7.7');
101
- createPnpmDirectory('hermes-engine', '3333.3.3');
102
- createPnpmDirectory('react-native', '0.9999.0');
103
- createPnpmDirectory('jsc-android', '888888.0.0');
104
- createPnpmDirectory('@babel/runtime', '5555.0.0');
105
-
106
- ensureNodeModulesSymlink(workspaceDir, appDir);
107
-
108
- expectSymlinkToExist('react-native');
109
- expectSymlinkToExist('jsc-android');
110
- expectSymlinkToExist('hermes-engine');
111
- expectSymlinkToExist('@react-native-community/cli-platform-ios');
112
- expectSymlinkToExist('@react-native-community/cli-platform-android');
113
- expectSymlinkToExist('@babel/runtime');
114
- });
115
-
116
- it('should support pnpm with multiple react-native versions', () => {
117
- createPnpmDirectory('@nrwl/react-native', '9999.9.9');
118
- createPnpmDirectory(
119
- '@react-native-community/cli-platform-android',
120
- '7777.7.7'
121
- );
122
- createPnpmDirectory('@react-native-community/cli-platform-ios', '7777.7.7');
123
- createPnpmDirectory('hermes-engine', '3333.3.3');
124
- createPnpmDirectory('react-native', '0.9999.0');
125
- createPnpmDirectory('react-native', '0.59.1');
126
- createPnpmDirectory('jsc-android', '888888.0.0');
127
- createPnpmDirectory('@babel/runtime', '5555.0.0');
128
-
129
- ensureNodeModulesSymlink(workspaceDir, appDir);
130
-
131
- expectSymlinkToExist('react-native');
132
- expectSymlinkToExist('jsc-android');
133
- expectSymlinkToExist('hermes-engine');
134
- expectSymlinkToExist('@react-native-community/cli-platform-ios');
135
- expectSymlinkToExist('@react-native-community/cli-platform-android');
136
- expectSymlinkToExist('@babel/runtime');
137
- });
138
-
139
- it('should throw error if pnpm package cannot be matched', () => {
140
- createPnpmDirectory('@nrwl/react-native', '9999.9.9');
141
- createPnpmDirectory(
142
- '@react-native-community/cli-platform-android',
143
- '7777.7.7'
144
- );
145
- createPnpmDirectory('@react-native-community/cli-platform-ios', '7777.7.7');
146
- createPnpmDirectory('hermes-engine', '3333.3.3');
147
- createPnpmDirectory('jsc-android', '888888.0.0');
148
- createPnpmDirectory('react-native', '0.60.1');
149
- createPnpmDirectory('react-native', '0.59.1');
150
- createPnpmDirectory('@babel/runtime', '5555.0.0');
151
-
152
- expect(() => {
153
- ensureNodeModulesSymlink(workspaceDir, appDir);
154
- }).toThrow(/Cannot find/);
155
- });
156
-
157
- function createPnpmDirectory(packageName, version) {
158
- const dir = join(
159
- workspaceDir,
160
- `node_modules/.pnpm/${packageName.replace(
161
- '/',
162
- '+'
163
- )}@${version}/node_modules/${packageName}`
164
- );
165
- fs.mkdirSync(dir, { recursive: true });
166
- fs.writeFileSync(
167
- join(dir, 'package.json'),
168
- JSON.stringify({ name: packageName, version: version })
169
- );
170
- return dir;
171
- }
172
-
173
93
  function createNpmDirectory(packageName, version) {
174
94
  const dir = join(workspaceDir, `node_modules/${packageName}`);
175
95
  fs.mkdirSync(dir, { recursive: true });
@@ -182,7 +102,9 @@ describe('ensureNodeModulesSymlink', () => {
182
102
 
183
103
  function expectSymlinkToExist(packageName) {
184
104
  expect(
185
- fs.existsSync(join(appDir, `node_modules/${packageName}/package.json`))
105
+ fs.existsSync(
106
+ join(appDirAbsolutePath, `node_modules/${packageName}/package.json`)
107
+ )
186
108
  ).toBe(true);
187
109
  }
188
110
  });
@@ -1,8 +1,8 @@
1
1
  import { GeneratorCallback } from '@nrwl/devkit';
2
2
  /**
3
- * Run pod install on current working directory
4
- * @param cwd current working directory
3
+ * Run pod install on ios directory
4
+ * @param iosDirectory ios directory that contains Podfile
5
5
  * @returns resolve with 0 if not error, reject with error otherwise
6
6
  */
7
- export declare function runPodInstall(cwd: string): GeneratorCallback;
8
- export declare function podInstall(cwd: string): Promise<void>;
7
+ export declare function runPodInstall(iosDirectory: string): GeneratorCallback;
8
+ export declare function podInstall(iosDirectory: string): Promise<void>;
@@ -16,25 +16,25 @@ If the path is wrong, switch the path: (your path may be different)
16
16
  ${chalk.bold('sudo xcode-select --switch /Applications/Xcode.app')}
17
17
  `;
18
18
  /**
19
- * Run pod install on current working directory
20
- * @param cwd current working directory
19
+ * Run pod install on ios directory
20
+ * @param iosDirectory ios directory that contains Podfile
21
21
  * @returns resolve with 0 if not error, reject with error otherwise
22
22
  */
23
- function runPodInstall(cwd) {
23
+ function runPodInstall(iosDirectory) {
24
24
  return () => {
25
25
  if ((0, os_1.platform)() !== 'darwin') {
26
26
  devkit_1.logger.info('Skipping `pod install` on non-darwin platform');
27
27
  return;
28
28
  }
29
- devkit_1.logger.info(`Running \`pod install\` from "${cwd}"`);
30
- return podInstall(cwd);
29
+ devkit_1.logger.info(`Running \`pod install\` from "${iosDirectory}"`);
30
+ return podInstall(iosDirectory);
31
31
  };
32
32
  }
33
33
  exports.runPodInstall = runPodInstall;
34
- function podInstall(cwd) {
34
+ function podInstall(iosDirectory) {
35
35
  return new Promise((resolve, reject) => {
36
36
  const process = (0, child_process_1.spawn)('pod', ['install'], {
37
- cwd,
37
+ cwd: iosDirectory,
38
38
  stdio: [0, 1, 2],
39
39
  });
40
40
  process.on('close', (code) => {
@@ -1 +1 @@
1
- {"version":3,"file":"pod-install-task.js","sourceRoot":"","sources":["../../../../../packages/react-native/src/utils/pod-install-task.ts"],"names":[],"mappings":";;;AAAA,iDAAsC;AACtC,2BAA8B;AAC9B,+BAA+B;AAC/B,yCAAyD;AAEzD,MAAM,sBAAsB,GAAG;UACrB,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC;;;;EAIjC,KAAK,CAAC,IAAI,CAAC,gCAAgC,CAAC;;;EAG5C,KAAK,CAAC,IAAI,CAAC,oDAAoD,CAAC;CACjE,CAAC;AAEF;;;;GAIG;AACH,SAAgB,aAAa,CAAC,GAAW;IACvC,OAAO,GAAG,EAAE;QACV,IAAI,IAAA,aAAQ,GAAE,KAAK,QAAQ,EAAE;YAC3B,eAAM,CAAC,IAAI,CAAC,+CAA+C,CAAC,CAAC;YAC7D,OAAO;SACR;QAED,eAAM,CAAC,IAAI,CAAC,iCAAiC,GAAG,GAAG,CAAC,CAAC;QAErD,OAAO,UAAU,CAAC,GAAG,CAAC,CAAC;IACzB,CAAC,CAAC;AACJ,CAAC;AAXD,sCAWC;AAED,SAAgB,UAAU,CAAC,GAAW;IACpC,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,MAAM,OAAO,GAAG,IAAA,qBAAK,EAAC,KAAK,EAAE,CAAC,SAAS,CAAC,EAAE;YACxC,GAAG;YACH,KAAK,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;SACjB,CAAC,CAAC;QAEH,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,IAAY,EAAE,EAAE;YACnC,IAAI,IAAI,KAAK,CAAC,EAAE;gBACd,OAAO,EAAE,CAAC;aACX;iBAAM;gBACL,MAAM,CAAC,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC,CAAC;aAC3C;QACH,CAAC,CAAC,CAAC;QAEH,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE;YACvB,MAAM,CAAC,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC,CAAC;QAC5C,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC;AAnBD,gCAmBC"}
1
+ {"version":3,"file":"pod-install-task.js","sourceRoot":"","sources":["../../../../../packages/react-native/src/utils/pod-install-task.ts"],"names":[],"mappings":";;;AAAA,iDAAsC;AACtC,2BAA8B;AAC9B,+BAA+B;AAC/B,yCAAyD;AAEzD,MAAM,sBAAsB,GAAG;UACrB,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC;;;;EAIjC,KAAK,CAAC,IAAI,CAAC,gCAAgC,CAAC;;;EAG5C,KAAK,CAAC,IAAI,CAAC,oDAAoD,CAAC;CACjE,CAAC;AAEF;;;;GAIG;AACH,SAAgB,aAAa,CAAC,YAAoB;IAChD,OAAO,GAAG,EAAE;QACV,IAAI,IAAA,aAAQ,GAAE,KAAK,QAAQ,EAAE;YAC3B,eAAM,CAAC,IAAI,CAAC,+CAA+C,CAAC,CAAC;YAC7D,OAAO;SACR;QAED,eAAM,CAAC,IAAI,CAAC,iCAAiC,YAAY,GAAG,CAAC,CAAC;QAE9D,OAAO,UAAU,CAAC,YAAY,CAAC,CAAC;IAClC,CAAC,CAAC;AACJ,CAAC;AAXD,sCAWC;AAED,SAAgB,UAAU,CAAC,YAAoB;IAC7C,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,MAAM,OAAO,GAAG,IAAA,qBAAK,EAAC,KAAK,EAAE,CAAC,SAAS,CAAC,EAAE;YACxC,GAAG,EAAE,YAAY;YACjB,KAAK,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;SACjB,CAAC,CAAC;QAEH,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,IAAY,EAAE,EAAE;YACnC,IAAI,IAAI,KAAK,CAAC,EAAE;gBACd,OAAO,EAAE,CAAC;aACX;iBAAM;gBACL,MAAM,CAAC,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC,CAAC;aAC3C;QACH,CAAC,CAAC,CAAC;QAEH,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE;YACvB,MAAM,CAAC,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC,CAAC;QAC5C,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC;AAnBD,gCAmBC"}
@@ -1,2 +1,2 @@
1
1
  import { GeneratorCallback } from '@nrwl/devkit';
2
- export declare function runSymlink(projectRoot: string): GeneratorCallback;
2
+ export declare function runSymlink(worksapceRoot: string, projectRoot: string): GeneratorCallback;
@@ -3,13 +3,12 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.runSymlink = void 0;
4
4
  const ensure_node_modules_symlink_1 = require("./ensure-node-modules-symlink");
5
5
  const chalk = require("chalk");
6
- const app_root_1 = require("@nrwl/workspace/src/utils/app-root");
7
6
  const devkit_1 = require("@nrwl/devkit");
8
- function runSymlink(projectRoot) {
7
+ function runSymlink(worksapceRoot, projectRoot) {
9
8
  return () => {
10
9
  devkit_1.logger.info(`creating symlinks for ${chalk.bold(projectRoot)}`);
11
10
  try {
12
- (0, ensure_node_modules_symlink_1.ensureNodeModulesSymlink)(app_root_1.appRootPath, projectRoot);
11
+ (0, ensure_node_modules_symlink_1.ensureNodeModulesSymlink)(worksapceRoot, projectRoot);
13
12
  }
14
13
  catch (_a) {
15
14
  throw new Error(`Failed to create symlinks for ${chalk.bold(projectRoot)}`);
@@ -1 +1 @@
1
- {"version":3,"file":"symlink-task.js","sourceRoot":"","sources":["../../../../../packages/react-native/src/utils/symlink-task.ts"],"names":[],"mappings":";;;AAAA,+EAAyE;AACzE,+BAA+B;AAC/B,iEAAiE;AACjE,yCAAyD;AAEzD,SAAgB,UAAU,CAAC,WAAmB;IAC5C,OAAO,GAAG,EAAE;QACV,eAAM,CAAC,IAAI,CAAC,yBAAyB,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;QAChE,IAAI;YACF,IAAA,sDAAwB,EAAC,sBAAW,EAAE,WAAW,CAAC,CAAC;SACpD;QAAC,WAAM;YACN,MAAM,IAAI,KAAK,CACb,iCAAiC,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAC3D,CAAC;SACH;IACH,CAAC,CAAC;AACJ,CAAC;AAXD,gCAWC"}
1
+ {"version":3,"file":"symlink-task.js","sourceRoot":"","sources":["../../../../../packages/react-native/src/utils/symlink-task.ts"],"names":[],"mappings":";;;AAAA,+EAAyE;AACzE,+BAA+B;AAC/B,yCAAyD;AAEzD,SAAgB,UAAU,CACxB,aAAqB,EACrB,WAAmB;IAEnB,OAAO,GAAG,EAAE;QACV,eAAM,CAAC,IAAI,CAAC,yBAAyB,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;QAChE,IAAI;YACF,IAAA,sDAAwB,EAAC,aAAa,EAAE,WAAW,CAAC,CAAC;SACtD;QAAC,WAAM;YACN,MAAM,IAAI,KAAK,CACb,iCAAiC,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAC3D,CAAC;SACH;IACH,CAAC,CAAC;AACJ,CAAC;AAdD,gCAcC"}
@@ -12,3 +12,4 @@ export declare const jestReactNativeVersion = "18.0.0";
12
12
  export declare const reactTestRendererVersion = "17.0.2";
13
13
  export declare const reactNativeSvgTransformerVersion = "0.14.3";
14
14
  export declare const reactNativeSvgVersion = "12.1.1";
15
+ export declare const babelRuntimeVersion = "7.16.3";
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.reactNativeSvgVersion = exports.reactNativeSvgTransformerVersion = exports.reactTestRendererVersion = exports.jestReactNativeVersion = exports.testingLibraryJestNativeVersion = exports.testingLibraryReactNativeVersion = exports.metroReactNativeBabelPresetVersion = exports.reactNativeCommunityCliAndroid = exports.reactNativeCommunityCliIos = exports.reactNativeCommunityCli = exports.metroVersion = exports.typesReactNativeVersion = exports.reactNativeVersion = exports.nxVersion = void 0;
4
- exports.nxVersion = '13.3.0-beta.2';
3
+ exports.babelRuntimeVersion = exports.reactNativeSvgVersion = exports.reactNativeSvgTransformerVersion = exports.reactTestRendererVersion = exports.jestReactNativeVersion = exports.testingLibraryJestNativeVersion = exports.testingLibraryReactNativeVersion = exports.metroReactNativeBabelPresetVersion = exports.reactNativeCommunityCliAndroid = exports.reactNativeCommunityCliIos = exports.reactNativeCommunityCli = exports.metroVersion = exports.typesReactNativeVersion = exports.reactNativeVersion = exports.nxVersion = void 0;
4
+ exports.nxVersion = '13.3.0-beta.3';
5
5
  exports.reactNativeVersion = '0.66.2';
6
6
  exports.typesReactNativeVersion = '0.66.2';
7
7
  exports.metroVersion = '0.66.2';
@@ -15,4 +15,5 @@ exports.jestReactNativeVersion = '18.0.0';
15
15
  exports.reactTestRendererVersion = '17.0.2';
16
16
  exports.reactNativeSvgTransformerVersion = '0.14.3';
17
17
  exports.reactNativeSvgVersion = '12.1.1';
18
+ exports.babelRuntimeVersion = '7.16.3';
18
19
  //# sourceMappingURL=versions.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"versions.js","sourceRoot":"","sources":["../../../../../packages/react-native/src/utils/versions.ts"],"names":[],"mappings":";;;AAAa,QAAA,SAAS,GAAG,GAAG,CAAC;AAEhB,QAAA,kBAAkB,GAAG,QAAQ,CAAC;AAC9B,QAAA,uBAAuB,GAAG,QAAQ,CAAC;AAEnC,QAAA,YAAY,GAAG,QAAQ,CAAC;AAExB,QAAA,uBAAuB,GAAG,OAAO,CAAC;AAClC,QAAA,0BAA0B,GAAG,OAAO,CAAC;AACrC,QAAA,8BAA8B,GAAG,OAAO,CAAC;AAEzC,QAAA,kCAAkC,GAAG,QAAQ,CAAC;AAE9C,QAAA,gCAAgC,GAAG,OAAO,CAAC;AAC3C,QAAA,+BAA+B,GAAG,OAAO,CAAC;AAE1C,QAAA,sBAAsB,GAAG,QAAQ,CAAC;AAElC,QAAA,wBAAwB,GAAG,QAAQ,CAAC;AAEpC,QAAA,gCAAgC,GAAG,QAAQ,CAAC;AAC5C,QAAA,qBAAqB,GAAG,QAAQ,CAAC"}
1
+ {"version":3,"file":"versions.js","sourceRoot":"","sources":["../../../../../packages/react-native/src/utils/versions.ts"],"names":[],"mappings":";;;AAAa,QAAA,SAAS,GAAG,GAAG,CAAC;AAEhB,QAAA,kBAAkB,GAAG,QAAQ,CAAC;AAC9B,QAAA,uBAAuB,GAAG,QAAQ,CAAC;AAEnC,QAAA,YAAY,GAAG,QAAQ,CAAC;AAExB,QAAA,uBAAuB,GAAG,OAAO,CAAC;AAClC,QAAA,0BAA0B,GAAG,OAAO,CAAC;AACrC,QAAA,8BAA8B,GAAG,OAAO,CAAC;AAEzC,QAAA,kCAAkC,GAAG,QAAQ,CAAC;AAE9C,QAAA,gCAAgC,GAAG,OAAO,CAAC;AAC3C,QAAA,+BAA+B,GAAG,OAAO,CAAC;AAE1C,QAAA,sBAAsB,GAAG,QAAQ,CAAC;AAElC,QAAA,wBAAwB,GAAG,QAAQ,CAAC;AAEpC,QAAA,gCAAgC,GAAG,QAAQ,CAAC;AAC5C,QAAA,qBAAqB,GAAG,QAAQ,CAAC;AAEjC,QAAA,mBAAmB,GAAG,QAAQ,CAAC"}