@react-native-windows/cli 0.65.3 → 0.66.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 (54) hide show
  1. package/CHANGELOG.json +264 -38
  2. package/CHANGELOG.md +116 -23
  3. package/lib-commonjs/config/configUtils.d.ts +22 -0
  4. package/lib-commonjs/config/configUtils.js +99 -18
  5. package/lib-commonjs/config/configUtils.js.map +1 -1
  6. package/lib-commonjs/config/dependencyConfig.js +81 -37
  7. package/lib-commonjs/config/dependencyConfig.js.map +1 -1
  8. package/lib-commonjs/config/projectConfig.d.ts +1 -0
  9. package/lib-commonjs/config/projectConfig.js +58 -9
  10. package/lib-commonjs/config/projectConfig.js.map +1 -1
  11. package/lib-commonjs/e2etest/autolink.test.js +13 -10
  12. package/lib-commonjs/e2etest/autolink.test.js.map +1 -1
  13. package/lib-commonjs/e2etest/dependencyConfig.test.js +73 -19
  14. package/lib-commonjs/e2etest/dependencyConfig.test.js.map +1 -1
  15. package/lib-commonjs/e2etest/projectConfig.test.js +25 -19
  16. package/lib-commonjs/e2etest/projectConfig.test.js.map +1 -1
  17. package/lib-commonjs/e2etest/projectConfig.utils.js +16 -12
  18. package/lib-commonjs/e2etest/projectConfig.utils.js.map +1 -1
  19. package/lib-commonjs/e2etest/runWindows.test.js.map +1 -1
  20. package/lib-commonjs/generator-common/index.js +35 -32
  21. package/lib-commonjs/generator-common/index.js.map +1 -1
  22. package/lib-commonjs/generator-windows/index.js +101 -83
  23. package/lib-commonjs/generator-windows/index.js.map +1 -1
  24. package/lib-commonjs/healthChecks.js +7 -3
  25. package/lib-commonjs/healthChecks.js.map +1 -1
  26. package/lib-commonjs/index.js +16 -8
  27. package/lib-commonjs/index.js.map +1 -1
  28. package/lib-commonjs/runWindows/runWindows.js +45 -18
  29. package/lib-commonjs/runWindows/runWindows.js.map +1 -1
  30. package/lib-commonjs/runWindows/runWindowsOptions.js +0 -1
  31. package/lib-commonjs/runWindows/runWindowsOptions.js.map +1 -1
  32. package/lib-commonjs/runWindows/utils/autolink.js +77 -50
  33. package/lib-commonjs/runWindows/utils/autolink.js.map +1 -1
  34. package/lib-commonjs/runWindows/utils/build.js +12 -9
  35. package/lib-commonjs/runWindows/utils/build.js.map +1 -1
  36. package/lib-commonjs/runWindows/utils/checkRequirements.js +7 -4
  37. package/lib-commonjs/runWindows/utils/checkRequirements.js.map +1 -1
  38. package/lib-commonjs/runWindows/utils/commandWithProgress.d.ts +1 -1
  39. package/lib-commonjs/runWindows/utils/commandWithProgress.js +16 -7
  40. package/lib-commonjs/runWindows/utils/commandWithProgress.js.map +1 -1
  41. package/lib-commonjs/runWindows/utils/deploy.js +54 -37
  42. package/lib-commonjs/runWindows/utils/deploy.js.map +1 -1
  43. package/lib-commonjs/runWindows/utils/info.js +5 -2
  44. package/lib-commonjs/runWindows/utils/info.js.map +1 -1
  45. package/lib-commonjs/runWindows/utils/msbuildtools.js +49 -27
  46. package/lib-commonjs/runWindows/utils/msbuildtools.js.map +1 -1
  47. package/lib-commonjs/runWindows/utils/version.js.map +1 -1
  48. package/lib-commonjs/runWindows/utils/vsInstalls.js +8 -5
  49. package/lib-commonjs/runWindows/utils/vsInstalls.js.map +1 -1
  50. package/lib-commonjs/runWindows/utils/vstools.js +16 -13
  51. package/lib-commonjs/runWindows/utils/vstools.js.map +1 -1
  52. package/lib-commonjs/runWindows/utils/winappdeploytool.js +7 -4
  53. package/lib-commonjs/runWindows/utils/winappdeploytool.js.map +1 -1
  54. package/package.json +13 -10
@@ -4,18 +4,21 @@
4
4
  * Licensed under the MIT License.
5
5
  * @format
6
6
  */
7
+ var __importDefault = (this && this.__importDefault) || function (mod) {
8
+ return (mod && mod.__esModule) ? mod : { "default": mod };
9
+ };
7
10
  Object.defineProperty(exports, "__esModule", { value: true });
8
11
  exports.installScriptsAndDependencies = exports.copyProjectTemplateAndReplace = void 0;
9
- const chalk = require("chalk");
10
- const path = require("path");
11
- const username = require("username");
12
- const uuid = require("uuid");
13
- const childProcess = require("child_process");
14
- const fs = require("fs");
15
- const os = require("os");
16
- const semver = require("semver");
17
- const _ = require("lodash");
18
- const findUp = require("find-up");
12
+ const chalk_1 = __importDefault(require("chalk"));
13
+ const path_1 = __importDefault(require("path"));
14
+ const username_1 = __importDefault(require("username"));
15
+ const uuid_1 = __importDefault(require("uuid"));
16
+ const child_process_1 = __importDefault(require("child_process"));
17
+ const fs_1 = __importDefault(require("fs"));
18
+ const os_1 = __importDefault(require("os"));
19
+ const semver_1 = __importDefault(require("semver"));
20
+ const lodash_1 = __importDefault(require("lodash"));
21
+ const find_up_1 = __importDefault(require("find-up"));
19
22
  const configUtils_1 = require("../config/configUtils");
20
23
  const generator_common_1 = require("../generator-common");
21
24
  const telemetry_1 = require("@react-native-windows/telemetry");
@@ -24,34 +27,34 @@ const windowsDir = 'windows';
24
27
  const bundleDir = 'Bundle';
25
28
  async function generateCertificate(srcPath, destPath, newProjectName, currentUser) {
26
29
  console.log('Generating self-signed certificate...');
27
- if (os.platform() === 'win32') {
30
+ if (os_1.default.platform() === 'win32') {
28
31
  try {
29
- const thumbprint = childProcess
32
+ const thumbprint = child_process_1.default
30
33
  .execSync(`powershell -NoProfile -Command "Write-Output (New-SelfSignedCertificate -KeyUsage DigitalSignature -KeyExportPolicy Exportable -Subject 'CN=${currentUser}' -TextExtension @('2.5.29.37={text}1.3.6.1.5.5.7.3.3', '2.5.29.19={text}Subject Type:End Entity') -CertStoreLocation 'Cert:\\CurrentUser\\My').Thumbprint"`)
31
34
  .toString()
32
35
  .trim();
33
- if (!fs.existsSync(path.join(windowsDir, newProjectName))) {
34
- fs.mkdirSync(path.join(windowsDir, newProjectName));
36
+ if (!fs_1.default.existsSync(path_1.default.join(windowsDir, newProjectName))) {
37
+ fs_1.default.mkdirSync(path_1.default.join(windowsDir, newProjectName));
35
38
  }
36
- childProcess.execSync(`powershell -NoProfile -Command "$pwd = (ConvertTo-SecureString -String password -Force -AsPlainText); Export-PfxCertificate -Cert 'cert:\\CurrentUser\\My\\${thumbprint}' -FilePath ${path.join(windowsDir, newProjectName, newProjectName)}_TemporaryKey.pfx -Password $pwd"`);
37
- console.log(chalk.green('Self-signed certificate generated successfully.'));
39
+ child_process_1.default.execSync(`powershell -NoProfile -Command "$pwd = (ConvertTo-SecureString -String password -Force -AsPlainText); Export-PfxCertificate -Cert 'cert:\\CurrentUser\\My\\${thumbprint}' -FilePath ${path_1.default.join(windowsDir, newProjectName, newProjectName)}_TemporaryKey.pfx -Password $pwd"`);
40
+ console.log(chalk_1.default.green('Self-signed certificate generated successfully.'));
38
41
  return thumbprint;
39
42
  }
40
43
  catch (err) {
41
- console.log(chalk.yellow('Unable to generate the self-signed certificate:'));
42
- console.log(chalk.red(err));
44
+ console.log(chalk_1.default.yellow('Unable to generate the self-signed certificate:'));
45
+ console.log(chalk_1.default.red(err));
43
46
  }
44
47
  }
45
- console.log(chalk.yellow('Using Default Certificate. Use Visual Studio to renew it.'));
46
- await generator_common_1.copyAndReplaceWithChangedCallback(path.join(srcPath, 'keys', 'MyApp_TemporaryKey.pfx'), destPath, path.join(windowsDir, newProjectName, newProjectName + '_TemporaryKey.pfx'));
48
+ console.log(chalk_1.default.yellow('Using Default Certificate. Use Visual Studio to renew it.'));
49
+ await generator_common_1.copyAndReplaceWithChangedCallback(path_1.default.join(srcPath, 'keys', 'MyApp_TemporaryKey.pfx'), destPath, path_1.default.join(windowsDir, newProjectName, newProjectName + '_TemporaryKey.pfx'));
47
50
  return null;
48
51
  }
49
52
  function pascalCase(str) {
50
- const camelCase = _.camelCase(str);
53
+ const camelCase = lodash_1.default.camelCase(str);
51
54
  return camelCase[0].toUpperCase() + camelCase.substr(1);
52
55
  }
53
56
  function resolveRnwPath(subpath) {
54
- return require.resolve(path.join('react-native-windows', subpath), {
57
+ return require.resolve(path_1.default.join('react-native-windows', subpath), {
55
58
  paths: [process.cwd()],
56
59
  });
57
60
  }
@@ -80,11 +83,11 @@ async function copyProjectTemplateAndReplace(srcRootPath, destPath, newProjectNa
80
83
  .map(pascalCase)
81
84
  .join('.');
82
85
  }
83
- generator_common_1.createDir(path.join(destPath, windowsDir));
84
- generator_common_1.createDir(path.join(destPath, windowsDir, newProjectName));
86
+ generator_common_1.createDir(path_1.default.join(destPath, windowsDir));
87
+ generator_common_1.createDir(path_1.default.join(destPath, windowsDir, newProjectName));
85
88
  if (projectType === 'app') {
86
- generator_common_1.createDir(path.join(destPath, windowsDir, newProjectName, bundleDir));
87
- generator_common_1.createDir(path.join(destPath, windowsDir, newProjectName, 'BundleBuilder'));
89
+ generator_common_1.createDir(path_1.default.join(destPath, windowsDir, newProjectName, bundleDir));
90
+ generator_common_1.createDir(path_1.default.join(destPath, windowsDir, newProjectName, 'BundleBuilder'));
88
91
  }
89
92
  const language = options.language;
90
93
  const namespaceCpp = toCppNamespace(namespace);
@@ -95,17 +98,17 @@ async function copyProjectTemplateAndReplace(srcRootPath, destPath, newProjectNa
95
98
  console.log('Using experimental WinUI3 dependency.');
96
99
  }
97
100
  const projDir = 'proj';
98
- const srcPath = path.join(srcRootPath, `${language}-${projectType}`);
99
- const sharedPath = path.join(srcRootPath, `shared-${projectType}`);
100
- const projectGuid = uuid.v4();
101
+ const srcPath = path_1.default.join(srcRootPath, `${language}-${projectType}`);
102
+ const sharedPath = path_1.default.join(srcRootPath, `shared-${projectType}`);
103
+ const projectGuid = uuid_1.default.v4();
101
104
  const rnwVersion = require(resolveRnwPath('package.json')).version;
102
105
  const nugetVersion = options.nuGetTestVersion || rnwVersion;
103
- const packageGuid = uuid.v4();
104
- const currentUser = username.sync(); // Gets the current username depending on the platform.
106
+ const packageGuid = uuid_1.default.v4();
107
+ const currentUser = username_1.default.sync(); // Gets the current username depending on the platform.
105
108
  let mainComponentName = newProjectName;
106
- const appJsonPath = await findUp('app.json', { cwd: destPath });
109
+ const appJsonPath = await find_up_1.default('app.json', { cwd: destPath });
107
110
  if (appJsonPath) {
108
- mainComponentName = JSON.parse(fs.readFileSync(appJsonPath, 'utf8')).name;
111
+ mainComponentName = JSON.parse(fs_1.default.readFileSync(appJsonPath, 'utf8')).name;
109
112
  }
110
113
  const certificateThumbprint = projectType === 'app'
111
114
  ? await generateCertificate(srcPath, destPath, newProjectName, currentUser)
@@ -212,37 +215,37 @@ async function copyProjectTemplateAndReplace(srcRootPath, destPath, newProjectNa
212
215
  ? [
213
216
  // app common mappings
214
217
  {
215
- from: path.join(srcRootPath, options.useDevMode
218
+ from: path_1.default.join(srcRootPath, options.useDevMode
216
219
  ? 'metro.devMode.config.js'
217
220
  : 'metro.config.js'),
218
221
  to: 'metro.config.js',
219
222
  },
220
223
  {
221
- from: path.join(srcRootPath, '_gitignore'),
222
- to: path.join(windowsDir, '.gitignore'),
224
+ from: path_1.default.join(srcRootPath, '_gitignore'),
225
+ to: path_1.default.join(windowsDir, '.gitignore'),
223
226
  },
224
227
  {
225
- from: path.join(srcRootPath, 'b_gitignore'),
226
- to: path.join(windowsDir, newProjectName, '.gitignore'),
228
+ from: path_1.default.join(srcRootPath, 'b_gitignore'),
229
+ to: path_1.default.join(windowsDir, newProjectName, '.gitignore'),
227
230
  },
228
231
  {
229
- from: path.join(srcRootPath, 'index.windows.bundle'),
230
- to: path.join(windowsDir, newProjectName, bundleDir, 'index.windows.bundle'),
232
+ from: path_1.default.join(srcRootPath, 'index.windows.bundle'),
233
+ to: path_1.default.join(windowsDir, newProjectName, bundleDir, 'index.windows.bundle'),
231
234
  },
232
235
  {
233
- from: path.join(srcPath, projDir, 'MyApp.sln'),
234
- to: path.join(windowsDir, newProjectName + '.sln'),
236
+ from: path_1.default.join(srcPath, projDir, 'MyApp.sln'),
237
+ to: path_1.default.join(windowsDir, newProjectName + '.sln'),
235
238
  },
236
239
  ]
237
240
  : [
238
241
  // lib common mappings
239
242
  {
240
- from: path.join(srcRootPath, '_gitignore'),
241
- to: path.join(windowsDir, '.gitignore'),
243
+ from: path_1.default.join(srcRootPath, '_gitignore'),
244
+ to: path_1.default.join(windowsDir, '.gitignore'),
242
245
  },
243
246
  {
244
- from: path.join(srcPath, projDir, 'MyLib.sln'),
245
- to: path.join(windowsDir, newProjectName + '.sln'),
247
+ from: path_1.default.join(srcPath, projDir, 'MyLib.sln'),
248
+ to: path_1.default.join(windowsDir, newProjectName + '.sln'),
246
249
  },
247
250
  ];
248
251
  for (const mapping of commonMappings) {
@@ -253,15 +256,15 @@ async function copyProjectTemplateAndReplace(srcRootPath, destPath, newProjectNa
253
256
  ? [
254
257
  // cs app mappings
255
258
  {
256
- from: path.join(srcPath, projDir, 'MyApp.csproj'),
257
- to: path.join(windowsDir, newProjectName, newProjectName + '.csproj'),
259
+ from: path_1.default.join(srcPath, projDir, 'MyApp.csproj'),
260
+ to: path_1.default.join(windowsDir, newProjectName, newProjectName + '.csproj'),
258
261
  },
259
262
  ]
260
263
  : [
261
264
  // cs lib mappings
262
265
  {
263
- from: path.join(srcPath, projDir, 'MyLib.csproj'),
264
- to: path.join(windowsDir, newProjectName, newProjectName + '.csproj'),
266
+ from: path_1.default.join(srcPath, projDir, 'MyLib.csproj'),
267
+ to: path_1.default.join(windowsDir, newProjectName, newProjectName + '.csproj'),
265
268
  },
266
269
  ];
267
270
  for (const mapping of csMappings) {
@@ -273,35 +276,35 @@ async function copyProjectTemplateAndReplace(srcRootPath, destPath, newProjectNa
273
276
  ? [
274
277
  // cpp app mappings
275
278
  {
276
- from: path.join(srcPath, projDir, 'MyApp.vcxproj'),
277
- to: path.join(windowsDir, newProjectName, newProjectName + '.vcxproj'),
279
+ from: path_1.default.join(srcPath, projDir, 'MyApp.vcxproj'),
280
+ to: path_1.default.join(windowsDir, newProjectName, newProjectName + '.vcxproj'),
278
281
  },
279
282
  {
280
- from: path.join(srcPath, projDir, 'MyApp.vcxproj.filters'),
281
- to: path.join(windowsDir, newProjectName, newProjectName + '.vcxproj.filters'),
283
+ from: path_1.default.join(srcPath, projDir, 'MyApp.vcxproj.filters'),
284
+ to: path_1.default.join(windowsDir, newProjectName, newProjectName + '.vcxproj.filters'),
282
285
  },
283
286
  {
284
- from: path.join(srcPath, projDir, 'packages.config'),
285
- to: path.join(windowsDir, newProjectName, 'packages.config'),
287
+ from: path_1.default.join(srcPath, projDir, 'packages.config'),
288
+ to: path_1.default.join(windowsDir, newProjectName, 'packages.config'),
286
289
  },
287
290
  ]
288
291
  : [
289
292
  // cpp lib mappings
290
293
  {
291
- from: path.join(srcPath, projDir, 'MyLib.vcxproj'),
292
- to: path.join(windowsDir, newProjectName, newProjectName + '.vcxproj'),
294
+ from: path_1.default.join(srcPath, projDir, 'MyLib.vcxproj'),
295
+ to: path_1.default.join(windowsDir, newProjectName, newProjectName + '.vcxproj'),
293
296
  },
294
297
  {
295
- from: path.join(srcPath, projDir, 'MyLib.vcxproj.filters'),
296
- to: path.join(windowsDir, newProjectName, newProjectName + '.vcxproj.filters'),
298
+ from: path_1.default.join(srcPath, projDir, 'MyLib.vcxproj.filters'),
299
+ to: path_1.default.join(windowsDir, newProjectName, newProjectName + '.vcxproj.filters'),
297
300
  },
298
301
  {
299
- from: path.join(srcPath, projDir, 'MyLib.def'),
300
- to: path.join(windowsDir, newProjectName, newProjectName + '.def'),
302
+ from: path_1.default.join(srcPath, projDir, 'MyLib.def'),
303
+ to: path_1.default.join(windowsDir, newProjectName, newProjectName + '.def'),
301
304
  },
302
305
  {
303
- from: path.join(srcPath, projDir, 'packages.config'),
304
- to: path.join(windowsDir, newProjectName, 'packages.config'),
306
+ from: path_1.default.join(srcPath, projDir, 'packages.config'),
307
+ to: path_1.default.join(windowsDir, newProjectName, 'packages.config'),
305
308
  },
306
309
  ];
307
310
  for (const mapping of cppMappings) {
@@ -309,16 +312,16 @@ async function copyProjectTemplateAndReplace(srcRootPath, destPath, newProjectNa
309
312
  }
310
313
  }
311
314
  // shared proj
312
- if (fs.existsSync(path.join(sharedPath, projDir))) {
315
+ if (fs_1.default.existsSync(path_1.default.join(sharedPath, projDir))) {
313
316
  const sharedProjMappings = [];
314
317
  sharedProjMappings.push({
315
- from: path.join(sharedPath, projDir, 'NuGet.Config'),
316
- to: path.join(windowsDir, 'NuGet.Config'),
318
+ from: path_1.default.join(sharedPath, projDir, 'NuGet.Config'),
319
+ to: path_1.default.join(windowsDir, 'NuGet.Config'),
317
320
  });
318
- if (fs.existsSync(path.join(sharedPath, projDir, 'ExperimentalFeatures.props'))) {
321
+ if (fs_1.default.existsSync(path_1.default.join(sharedPath, projDir, 'ExperimentalFeatures.props'))) {
319
322
  sharedProjMappings.push({
320
- from: path.join(sharedPath, projDir, 'ExperimentalFeatures.props'),
321
- to: path.join(windowsDir, 'ExperimentalFeatures.props'),
323
+ from: path_1.default.join(sharedPath, projDir, 'ExperimentalFeatures.props'),
324
+ to: path_1.default.join(windowsDir, 'ExperimentalFeatures.props'),
322
325
  });
323
326
  }
324
327
  for (const mapping of sharedProjMappings) {
@@ -326,20 +329,20 @@ async function copyProjectTemplateAndReplace(srcRootPath, destPath, newProjectNa
326
329
  }
327
330
  }
328
331
  // shared assets
329
- if (fs.existsSync(path.join(sharedPath, 'assets'))) {
330
- await generator_common_1.copyAndReplaceAll(path.join(sharedPath, 'assets'), destPath, path.join(windowsDir, newProjectName, 'Assets'), templateVars, options.overwrite);
332
+ if (fs_1.default.existsSync(path_1.default.join(sharedPath, 'assets'))) {
333
+ await generator_common_1.copyAndReplaceAll(path_1.default.join(sharedPath, 'assets'), destPath, path_1.default.join(windowsDir, newProjectName, 'Assets'), templateVars, options.overwrite);
331
334
  }
332
335
  // shared src
333
- if (fs.existsSync(path.join(sharedPath, 'src'))) {
334
- await generator_common_1.copyAndReplaceAll(path.join(sharedPath, 'src'), destPath, path.join(windowsDir, newProjectName), templateVars, options.overwrite);
336
+ if (fs_1.default.existsSync(path_1.default.join(sharedPath, 'src'))) {
337
+ await generator_common_1.copyAndReplaceAll(path_1.default.join(sharedPath, 'src'), destPath, path_1.default.join(windowsDir, newProjectName), templateVars, options.overwrite);
335
338
  }
336
339
  // src
337
- if (fs.existsSync(path.join(srcPath, 'src'))) {
338
- await generator_common_1.copyAndReplaceAll(path.join(srcPath, 'src'), destPath, path.join(windowsDir, newProjectName), templateVars, options.overwrite);
340
+ if (fs_1.default.existsSync(path_1.default.join(srcPath, 'src'))) {
341
+ await generator_common_1.copyAndReplaceAll(path_1.default.join(srcPath, 'src'), destPath, path_1.default.join(windowsDir, newProjectName), templateVars, options.overwrite);
339
342
  }
340
343
  if (projectType === 'app') {
341
- console.log(chalk.white.bold('To run your app on UWP:'));
342
- console.log(chalk.white(' npx react-native run-windows'));
344
+ console.log(chalk_1.default.white.bold('To run your app on UWP:'));
345
+ console.log(chalk_1.default.white(' npx react-native run-windows'));
343
346
  }
344
347
  }
345
348
  exports.copyProjectTemplateAndReplace = copyProjectTemplateAndReplace;
@@ -363,17 +366,32 @@ async function installScriptsAndDependencies(options) {
363
366
  if (!rnPackage) {
364
367
  throw new Error('Could not locate the package for react-native');
365
368
  }
369
+ // We add an exclusionList from metro config. This will be hoisted, but add
370
+ // an explict dep because we require it directly.
371
+ const cliPackage = await package_utils_1.findPackage('@react-native-community/cli', {
372
+ searchPath: rnPackage.path,
373
+ });
374
+ const metroConfigPackage = await package_utils_1.findPackage('metro-config', {
375
+ searchPath: (cliPackage === null || cliPackage === void 0 ? void 0 : cliPackage.path) || rnPackage.path,
376
+ });
377
+ if (metroConfigPackage) {
378
+ await projectPackage.mergeProps({
379
+ devDependencies: {
380
+ 'metro-config': `^${metroConfigPackage.json.version}`,
381
+ },
382
+ });
383
+ }
366
384
  const rnPeerDependency = rnwPackage.json.peerDependencies['react-native'];
367
- if (!semver.satisfies(rnPackage.json.version, rnPeerDependency) && ((_a = projectPackage.json.dependencies) === null || _a === void 0 ? void 0 : _a['react-native'])) {
368
- console.log(chalk.green('Installing a compatible version of react-native:'));
369
- console.log(chalk.white(` ${rnPeerDependency}`));
385
+ if (!semver_1.default.satisfies(rnPackage.json.version, rnPeerDependency) && ((_a = projectPackage.json.dependencies) === null || _a === void 0 ? void 0 : _a['react-native'])) {
386
+ console.log(chalk_1.default.green('Installing a compatible version of react-native:'));
387
+ console.log(chalk_1.default.white(` ${rnPeerDependency}`));
370
388
  // Patch package.json to have proper react-native version and install
371
389
  await projectPackage.mergeProps({
372
390
  dependencies: { 'react-native': rnPeerDependency },
373
391
  });
374
392
  // Install dependencies using correct package manager
375
- const isYarn = fs.existsSync(path.join(process.cwd(), 'yarn.lock'));
376
- childProcess.execSync(isYarn ? 'yarn' : 'npm i', options.verbose ? { stdio: 'inherit' } : {});
393
+ const isYarn = fs_1.default.existsSync(path_1.default.join(process.cwd(), 'yarn.lock'));
394
+ child_process_1.default.execSync(isYarn ? 'yarn' : 'npm i', options.verbose ? { stdio: 'inherit' } : {});
377
395
  }
378
396
  }
379
397
  exports.installScriptsAndDependencies = installScriptsAndDependencies;
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/generator-windows/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/generator-windows/index.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n * @format\n */\n\nimport chalk from 'chalk';\nimport path from 'path';\nimport username from 'username';\nimport uuid from 'uuid';\nimport childProcess from 'child_process';\nimport fs from 'fs';\nimport os from 'os';\nimport semver from 'semver';\nimport _ from 'lodash';\nimport findUp from 'find-up';\nimport {readProjectFile, findPropertyValue} from '../config/configUtils';\n\nimport {\n createDir,\n copyAndReplaceAll,\n copyAndReplaceWithChangedCallback,\n} from '../generator-common';\nimport {GenerateOptions} from '..';\nimport {CodedError} from '@react-native-windows/telemetry';\nimport {\n findPackage,\n WritableNpmPackage,\n} from '@react-native-windows/package-utils';\n\nconst windowsDir = 'windows';\nconst bundleDir = 'Bundle';\n\nasync function generateCertificate(\n srcPath: string,\n destPath: string,\n newProjectName: string,\n currentUser: string,\n): Promise<string | null> {\n console.log('Generating self-signed certificate...');\n if (os.platform() === 'win32') {\n try {\n const thumbprint = childProcess\n .execSync(\n `powershell -NoProfile -Command \"Write-Output (New-SelfSignedCertificate -KeyUsage DigitalSignature -KeyExportPolicy Exportable -Subject 'CN=${currentUser}' -TextExtension @('2.5.29.37={text}1.3.6.1.5.5.7.3.3', '2.5.29.19={text}Subject Type:End Entity') -CertStoreLocation 'Cert:\\\\CurrentUser\\\\My').Thumbprint\"`,\n )\n .toString()\n .trim();\n if (!fs.existsSync(path.join(windowsDir, newProjectName))) {\n fs.mkdirSync(path.join(windowsDir, newProjectName));\n }\n childProcess.execSync(\n `powershell -NoProfile -Command \"$pwd = (ConvertTo-SecureString -String password -Force -AsPlainText); Export-PfxCertificate -Cert 'cert:\\\\CurrentUser\\\\My\\\\${thumbprint}' -FilePath ${path.join(\n windowsDir,\n newProjectName,\n newProjectName,\n )}_TemporaryKey.pfx -Password $pwd\"`,\n );\n console.log(\n chalk.green('Self-signed certificate generated successfully.'),\n );\n return thumbprint;\n } catch (err) {\n console.log(\n chalk.yellow('Unable to generate the self-signed certificate:'),\n );\n console.log(chalk.red(err));\n }\n }\n\n console.log(\n chalk.yellow('Using Default Certificate. Use Visual Studio to renew it.'),\n );\n await copyAndReplaceWithChangedCallback(\n path.join(srcPath, 'keys', 'MyApp_TemporaryKey.pfx'),\n destPath,\n path.join(windowsDir, newProjectName, newProjectName + '_TemporaryKey.pfx'),\n );\n\n return null;\n}\n\n/**\n * This represents the data to insert nuget packages\n */\ninterface NugetPackage {\n id: string;\n version: string;\n}\n\n/**\n * This represents the data to insert nuget packages with Cpp specific information\n */\ninterface CppNugetPackage extends NugetPackage {\n propsTopOfFile?: boolean;\n propsMiddleOfFile?: boolean;\n hasProps: boolean;\n hasTargets: boolean;\n}\n\nfunction pascalCase(str: string) {\n const camelCase = _.camelCase(str);\n return camelCase[0].toUpperCase() + camelCase.substr(1);\n}\n\nfunction resolveRnwPath(subpath: string): string {\n return require.resolve(path.join('react-native-windows', subpath), {\n paths: [process.cwd()],\n });\n}\n\n// Existing high cyclomatic complexity\n// eslint-disable-next-line complexity\nexport async function copyProjectTemplateAndReplace(\n srcRootPath: string,\n destPath: string,\n newProjectName: string,\n namespace: string,\n options: GenerateOptions,\n) {\n if (!srcRootPath) {\n throw new CodedError(\n 'CopyProjectTemplateNoSourcePath',\n 'Need a path to copy from',\n );\n }\n\n if (!destPath) {\n throw new CodedError(\n 'CopyProjectTemplateNoDestPath',\n 'Need a path to copy to',\n );\n }\n\n if (!newProjectName) {\n throw new CodedError(\n 'CopyProjectTemplateNoProjectName',\n 'Need a project name',\n );\n }\n\n const projectType = options.projectType;\n\n // React-native init only allows alphanumerics in project names, but other\n // new project tools (like create-react-native-module) are less strict.\n if (projectType === 'lib') {\n newProjectName = pascalCase(newProjectName);\n }\n\n // Similar to the above, but we want to retain namespace separators\n if (projectType === 'lib') {\n namespace = namespace\n .split(/[.:]+/)\n .map(pascalCase)\n .join('.');\n }\n\n createDir(path.join(destPath, windowsDir));\n createDir(path.join(destPath, windowsDir, newProjectName));\n\n if (projectType === 'app') {\n createDir(path.join(destPath, windowsDir, newProjectName, bundleDir));\n createDir(path.join(destPath, windowsDir, newProjectName, 'BundleBuilder'));\n }\n\n const language = options.language;\n const namespaceCpp = toCppNamespace(namespace);\n if (options.experimentalNuGetDependency) {\n console.log('Using experimental NuGet dependency.');\n }\n if (options.useWinUI3) {\n console.log('Using experimental WinUI3 dependency.');\n }\n const projDir = 'proj';\n const srcPath = path.join(srcRootPath, `${language}-${projectType}`);\n const sharedPath = path.join(srcRootPath, `shared-${projectType}`);\n const projectGuid = uuid.v4();\n const rnwVersion = require(resolveRnwPath('package.json')).version;\n const nugetVersion = options.nuGetTestVersion || rnwVersion;\n const packageGuid = uuid.v4();\n const currentUser = username.sync()!; // Gets the current username depending on the platform.\n\n let mainComponentName = newProjectName;\n const appJsonPath = await findUp('app.json', {cwd: destPath});\n if (appJsonPath) {\n mainComponentName = JSON.parse(fs.readFileSync(appJsonPath, 'utf8')).name;\n }\n\n const certificateThumbprint =\n projectType === 'app'\n ? await generateCertificate(\n srcPath,\n destPath,\n newProjectName,\n currentUser,\n )\n : null;\n\n const xamlNamespace = options.useWinUI3\n ? 'Microsoft.UI.Xaml'\n : 'Windows.UI.Xaml';\n const xamlNamespaceCpp = toCppNamespace(xamlNamespace);\n\n const winuiPropsPath = resolveRnwPath('PropertySheets/WinUI.props');\n const winuiProps = readProjectFile(winuiPropsPath);\n const winui3Version = findPropertyValue(\n winuiProps,\n 'WinUI3Version',\n winuiPropsPath,\n );\n const winui2xVersion = findPropertyValue(\n winuiProps,\n 'WinUI2xVersion',\n winuiPropsPath,\n );\n\n const jsEnginePropsPath = resolveRnwPath('PropertySheets/JSengine.props');\n const hermesVersion = findPropertyValue(\n readProjectFile(jsEnginePropsPath),\n 'HermesVersion',\n jsEnginePropsPath,\n );\n\n const csNugetPackages: NugetPackage[] = [\n {\n id: 'Microsoft.NETCore.UniversalWindowsPlatform',\n version: '6.2.9',\n },\n {\n id: 'ReactNative.Hermes.Windows',\n version: hermesVersion,\n },\n ];\n\n const cppNugetPackages: CppNugetPackage[] = [\n {\n id: 'Microsoft.Windows.CppWinRT',\n version: '2.0.210312.4',\n propsTopOfFile: true,\n hasProps: true,\n hasTargets: true,\n },\n {\n id: 'ReactNative.Hermes.Windows',\n version: hermesVersion,\n hasProps: false,\n hasTargets: true,\n },\n ];\n\n if (options.experimentalNuGetDependency) {\n csNugetPackages.push({\n id: 'Microsoft.ReactNative.Managed',\n version: nugetVersion,\n });\n\n cppNugetPackages.push({\n id: 'Microsoft.ReactNative',\n version: nugetVersion,\n hasProps: false,\n hasTargets: true,\n });\n\n cppNugetPackages.push({\n id: 'Microsoft.ReactNative.Cxx',\n version: nugetVersion,\n hasProps: false,\n hasTargets: true,\n });\n }\n\n const packagesConfigCppNugetPackages = [\n ...cppNugetPackages,\n {\n id: options.useWinUI3 ? 'Microsoft.WinUI' : 'Microsoft.UI.Xaml',\n version: options.useWinUI3 ? winui3Version : winui2xVersion,\n hasProps: false, // WinUI/MUX props and targets get handled by RNW's WinUI.props.\n hasTargets: false,\n },\n ];\n\n const templateVars: Record<string, any> = {\n useMustache: true,\n regExpPatternsToRemove: [],\n\n name: newProjectName,\n namespace: namespace,\n namespaceCpp: namespaceCpp,\n languageIsCpp: language === 'cpp',\n\n mainComponentName: mainComponentName,\n\n // Visual Studio is very picky about the casing of the guids for projects, project references and the solution\n // https://www.bing.com/search?q=visual+studio+project+guid+casing&cvid=311a5ad7f9fc41089507b24600d23ee7&FORM=ANAB01&PC=U531\n // we therefore have to precariously use the right casing in the right place or risk building in VS breaking.\n projectGuidLower: `{${projectGuid.toLowerCase()}}`,\n projectGuidUpper: `{${projectGuid.toUpperCase()}}`,\n\n // packaging and signing variables:\n packageGuid: packageGuid,\n currentUser: currentUser,\n certificateThumbprint: certificateThumbprint,\n\n useExperimentalNuget: options.experimentalNuGetDependency,\n nuGetTestFeed: options.nuGetTestFeed,\n\n // cpp template variables\n useWinUI3: options.useWinUI3,\n useHermes: options.useHermes,\n xamlNamespace: xamlNamespace,\n xamlNamespaceCpp: xamlNamespaceCpp,\n cppNugetPackages: cppNugetPackages,\n packagesConfigCppNugetPackages: packagesConfigCppNugetPackages,\n\n // cs template variables\n csNugetPackages: csNugetPackages,\n\n // autolinking template variables\n autolinkPropertiesForProps: '',\n autolinkProjectReferencesForTargets: '',\n autolinkCsUsingNamespaces: '',\n autolinkCsReactPackageProviders: '',\n autolinkCppIncludes: '',\n autolinkCppPackageProviders:\n '\\n UNREFERENCED_PARAMETER(packageProviders);', // CODESYNC: vnext\\local-cli\\runWindows\\utils\\autolink.js\n };\n\n const commonMappings =\n projectType === 'app'\n ? [\n // app common mappings\n {\n from: path.join(\n srcRootPath,\n options.useDevMode\n ? 'metro.devMode.config.js'\n : 'metro.config.js',\n ),\n to: 'metro.config.js',\n },\n {\n from: path.join(srcRootPath, '_gitignore'),\n to: path.join(windowsDir, '.gitignore'),\n },\n {\n from: path.join(srcRootPath, 'b_gitignore'),\n to: path.join(windowsDir, newProjectName, '.gitignore'),\n },\n {\n from: path.join(srcRootPath, 'index.windows.bundle'),\n to: path.join(\n windowsDir,\n newProjectName,\n bundleDir,\n 'index.windows.bundle',\n ),\n },\n {\n from: path.join(srcPath, projDir, 'MyApp.sln'),\n to: path.join(windowsDir, newProjectName + '.sln'),\n },\n ]\n : [\n // lib common mappings\n {\n from: path.join(srcRootPath, '_gitignore'),\n to: path.join(windowsDir, '.gitignore'),\n },\n {\n from: path.join(srcPath, projDir, 'MyLib.sln'),\n to: path.join(windowsDir, newProjectName + '.sln'),\n },\n ];\n\n for (const mapping of commonMappings) {\n await copyAndReplaceWithChangedCallback(\n mapping.from,\n destPath,\n mapping.to,\n templateVars,\n options.overwrite,\n );\n }\n\n if (language === 'cs') {\n const csMappings =\n projectType === 'app'\n ? [\n // cs app mappings\n {\n from: path.join(srcPath, projDir, 'MyApp.csproj'),\n to: path.join(\n windowsDir,\n newProjectName,\n newProjectName + '.csproj',\n ),\n },\n ]\n : [\n // cs lib mappings\n {\n from: path.join(srcPath, projDir, 'MyLib.csproj'),\n to: path.join(\n windowsDir,\n newProjectName,\n newProjectName + '.csproj',\n ),\n },\n ];\n\n for (const mapping of csMappings) {\n await copyAndReplaceWithChangedCallback(\n mapping.from,\n destPath,\n mapping.to,\n templateVars,\n options.overwrite,\n );\n }\n } else {\n const cppMappings =\n projectType === 'app'\n ? [\n // cpp app mappings\n {\n from: path.join(srcPath, projDir, 'MyApp.vcxproj'),\n to: path.join(\n windowsDir,\n newProjectName,\n newProjectName + '.vcxproj',\n ),\n },\n {\n from: path.join(srcPath, projDir, 'MyApp.vcxproj.filters'),\n to: path.join(\n windowsDir,\n newProjectName,\n newProjectName + '.vcxproj.filters',\n ),\n },\n {\n from: path.join(srcPath, projDir, 'packages.config'),\n to: path.join(windowsDir, newProjectName, 'packages.config'),\n },\n ]\n : [\n // cpp lib mappings\n {\n from: path.join(srcPath, projDir, 'MyLib.vcxproj'),\n to: path.join(\n windowsDir,\n newProjectName,\n newProjectName + '.vcxproj',\n ),\n },\n {\n from: path.join(srcPath, projDir, 'MyLib.vcxproj.filters'),\n to: path.join(\n windowsDir,\n newProjectName,\n newProjectName + '.vcxproj.filters',\n ),\n },\n {\n from: path.join(srcPath, projDir, 'MyLib.def'),\n to: path.join(\n windowsDir,\n newProjectName,\n newProjectName + '.def',\n ),\n },\n {\n from: path.join(srcPath, projDir, 'packages.config'),\n to: path.join(windowsDir, newProjectName, 'packages.config'),\n },\n ];\n\n for (const mapping of cppMappings) {\n await copyAndReplaceWithChangedCallback(\n mapping.from,\n destPath,\n mapping.to,\n templateVars,\n options.overwrite,\n );\n }\n }\n\n // shared proj\n if (fs.existsSync(path.join(sharedPath, projDir))) {\n const sharedProjMappings = [];\n\n sharedProjMappings.push({\n from: path.join(sharedPath, projDir, 'NuGet.Config'),\n to: path.join(windowsDir, 'NuGet.Config'),\n });\n\n if (\n fs.existsSync(\n path.join(sharedPath, projDir, 'ExperimentalFeatures.props'),\n )\n ) {\n sharedProjMappings.push({\n from: path.join(sharedPath, projDir, 'ExperimentalFeatures.props'),\n to: path.join(windowsDir, 'ExperimentalFeatures.props'),\n });\n }\n\n for (const mapping of sharedProjMappings) {\n await copyAndReplaceWithChangedCallback(\n mapping.from,\n destPath,\n mapping.to,\n templateVars,\n options.overwrite,\n );\n }\n }\n\n // shared assets\n if (fs.existsSync(path.join(sharedPath, 'assets'))) {\n await copyAndReplaceAll(\n path.join(sharedPath, 'assets'),\n destPath,\n path.join(windowsDir, newProjectName, 'Assets'),\n templateVars,\n options.overwrite,\n );\n }\n\n // shared src\n if (fs.existsSync(path.join(sharedPath, 'src'))) {\n await copyAndReplaceAll(\n path.join(sharedPath, 'src'),\n destPath,\n path.join(windowsDir, newProjectName),\n templateVars,\n options.overwrite,\n );\n }\n\n // src\n if (fs.existsSync(path.join(srcPath, 'src'))) {\n await copyAndReplaceAll(\n path.join(srcPath, 'src'),\n destPath,\n path.join(windowsDir, newProjectName),\n templateVars,\n options.overwrite,\n );\n }\n\n if (projectType === 'app') {\n console.log(chalk.white.bold('To run your app on UWP:'));\n console.log(chalk.white(' npx react-native run-windows'));\n }\n}\n\nfunction toCppNamespace(namespace: string) {\n return namespace.replace(/\\./g, '::');\n}\n\nexport async function installScriptsAndDependencies(options: {\n verbose: boolean;\n}) {\n const projectPackage = await WritableNpmPackage.fromPath(process.cwd());\n if (!projectPackage) {\n throw new Error(\n `The current directory '${process.cwd()}' is not the root of an npm package`,\n );\n }\n\n await projectPackage.mergeProps({\n scripts: {windows: 'react-native run-windows'},\n });\n\n const rnwPackage = await findPackage('react-native-windows');\n if (!rnwPackage) {\n throw new Error('Could not locate the package for react-native-windows');\n }\n\n const rnPackage = await findPackage('react-native');\n if (!rnPackage) {\n throw new Error('Could not locate the package for react-native');\n }\n\n // We add an exclusionList from metro config. This will be hoisted, but add\n // an explict dep because we require it directly.\n const cliPackage = await findPackage('@react-native-community/cli', {\n searchPath: rnPackage.path,\n });\n const metroConfigPackage = await findPackage('metro-config', {\n searchPath: cliPackage?.path || rnPackage.path,\n });\n\n if (metroConfigPackage) {\n await projectPackage.mergeProps({\n devDependencies: {\n 'metro-config': `^${metroConfigPackage.json.version}`,\n },\n });\n }\n\n const rnPeerDependency = rnwPackage.json.peerDependencies['react-native'];\n\n if (\n !semver.satisfies(rnPackage.json.version, rnPeerDependency) &&\n projectPackage.json.dependencies?.['react-native']\n ) {\n console.log(\n chalk.green('Installing a compatible version of react-native:'),\n );\n console.log(chalk.white(` ${rnPeerDependency}`));\n\n // Patch package.json to have proper react-native version and install\n await projectPackage.mergeProps({\n dependencies: {'react-native': rnPeerDependency},\n });\n\n // Install dependencies using correct package manager\n const isYarn = fs.existsSync(path.join(process.cwd(), 'yarn.lock'));\n childProcess.execSync(\n isYarn ? 'yarn' : 'npm i',\n options.verbose ? {stdio: 'inherit'} : {},\n );\n }\n}\n"]}
@@ -1,9 +1,13 @@
1
1
  "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
2
5
  Object.defineProperty(exports, "__esModule", { value: true });
3
6
  exports.getHealthChecks = void 0;
4
- const path = require("path");
7
+ const path_1 = __importDefault(require("path"));
5
8
  const child_process_1 = require("child_process");
6
- const cliDir = path.dirname(require.resolve('@react-native-community/cli/package.json', { paths: [process.cwd()] }));
9
+ const rnDir = path_1.default.dirname(require.resolve('react-native/package.json', { paths: [process.cwd()] }));
10
+ const cliDir = path_1.default.dirname(require.resolve('@react-native-community/cli/package.json', { paths: [rnDir] }));
7
11
  const execaPath = require.resolve('execa', { paths: [cliDir] });
8
12
  const execa = require(execaPath);
9
13
  function getHealthChecks() {
@@ -11,7 +15,7 @@ function getHealthChecks() {
11
15
  if (process.platform !== 'win32') {
12
16
  return undefined;
13
17
  }
14
- const rnwDepScriptPath = path.join(path.dirname(require.resolve('react-native-windows/package.json', { paths: [process.cwd()] })), 'Scripts/rnw-dependencies.ps1');
18
+ const rnwDepScriptPath = path_1.default.join(path_1.default.dirname(require.resolve('react-native-windows/package.json', { paths: [process.cwd()] })), 'Scripts/rnw-dependencies.ps1');
15
19
  const rnwDeps = child_process_1.execSync(`powershell -ExecutionPolicy Unrestricted -NoProfile ${rnwDepScriptPath} -NoPrompt -ListChecks`);
16
20
  const deps = rnwDeps.toString().trim().split('\n');
17
21
  return [
@@ -1 +1 @@
1
- {"version":3,"file":"healthChecks.js","sourceRoot":"","sources":["../src/healthChecks.ts"],"names":[],"mappings":";;;AAAA,6BAA6B;AAE7B,iDAAwC;AAExC,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,0CAA0C,EAAE,EAAC,KAAK,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,EAAC,CAAC,CAAC,CAAC;AACnH,MAAM,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;AAChE,MAAM,KAAK,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC;AAIjC,SAAgB,eAAe;IAC/B,4CAA4C;IACxC,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO,EAAE;QAC9B,OAAO,SAAS,CAAC;KACpB;IAED,MAAM,gBAAgB,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAC3D,mCAAmC,EACnC,EAAC,KAAK,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,EAAC,CAAC,CAAC,EAAE,8BAA8B,CAAC,CAAC;IAEhE,MAAM,OAAO,GAAG,wBAAQ,CAAC,uDAAuD,gBAAgB,wBAAwB,CAAC,CAAC;IAC1H,MAAM,IAAI,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACnD,OAAO;QACL;YACE,KAAK,EAAE,SAAS;YAChB,YAAY,EACV,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;gBACb,MAAM,KAAK,GAAG,wBAAwB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBACjD,IAAI,CAAC,KAAK,EAAE;oBACV,MAAM,IAAI,KAAK,CAAC,0BAA0B,gBAAgB,EAAE,CAAC,CAAC;iBAC/D;gBACD,MAAM,CAAC,EAAE,YAAY,CAAA,AAAb,EAAe,EAAE,EAAE,IAAI,CAAC,GAAG,KAAK,CAAC;gBACzC,OAAO;oBACL,KAAK,EAAE,IAAI;oBACX,wGAAwG;oBACxG,6HAA6H;oBAC7H,gEAAgE;oBAChE,cAAc,EAAE,KAAK,IAAI,EAAE;wBACzB,IAAI,cAAc,GAAG,IAAI,CAAC;wBAC1B,IAAI;4BACF,MAAM,KAAK,CAAC,uDAAuD,gBAAgB,qBAAqB,EAAE,EAAE,CAAC,CAAC;4BAC9G,cAAc,GAAG,KAAK,CAAC;yBACxB;wBAAC,WAAM;yBACP;wBACD,OAAO;4BACL,cAAc;yBACf,CAAA;oBACH,CAAC;oBACD,eAAe,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,qBAAqB,EAAE,EAAE,EAAE;wBAC3D,MAAM,OAAO,GAAG,uDAAuD,gBAAgB,WAAW,EAAE,EAAE,CAAC;wBACvG,IAAI;4BACF,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,KAAK,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;4BAChE,IAAI,QAAQ,EAAE;gCACZ,qBAAqB,CAAC,EAAE,OAAO,EAAE,WAAW,EAAE,oCAAoC,EAAE,GAAG,EAAE,CAAC,CAAC;gCAC3F,MAAM,CAAC,IAAI,EAAE,CAAC;6BACf;iCAAM;gCACL,MAAM,CAAC,OAAO,EAAE,CAAC;6BAClB;yBACF;wBAAC,WAAM;4BACN,qBAAqB,CAAC,EAAE,OAAO,EAAE,WAAW,EAAE,oCAAoC,EAAE,GAAG,EAAE,CAAC,CAAC;4BAC3F,MAAM,CAAC,IAAI,EAAE,CAAC;yBACf;oBACH,CAAC;iBACF,CAAA;YACH,CAAC,CAAC;SACL;KAAC,CAAC;AACP,CAAC;AAxDH,0CAwDG"}
1
+ {"version":3,"file":"healthChecks.js","sourceRoot":"","sources":["../src/healthChecks.ts"],"names":[],"mappings":"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","sourcesContent":["import path from 'path';\n\nimport { execSync} from 'child_process';\n\nconst rnDir = path.dirname(require.resolve('react-native/package.json', {paths: [process.cwd()]}));\nconst cliDir = path.dirname(require.resolve('@react-native-community/cli/package.json', {paths: [rnDir]}));\nconst execaPath = require.resolve('execa', { paths: [cliDir] });\nconst execa = require(execaPath);\n\nimport type {HealthCheckCategory} from '@react-native-community/cli-types';\n\nexport function getHealthChecks(): HealthCheckCategory[] | undefined {\n// All our health checks are windows only...\n if (process.platform !== 'win32') {\n return undefined;\n }\n\n const rnwDepScriptPath = path.join(path.dirname(require.resolve(\n 'react-native-windows/package.json',\n {paths: [process.cwd()]})), 'Scripts/rnw-dependencies.ps1');\n \n const rnwDeps = execSync(`powershell -ExecutionPolicy Unrestricted -NoProfile ${rnwDepScriptPath} -NoPrompt -ListChecks`);\n const deps = rnwDeps.toString().trim().split('\\n');\n return [\n {\n label: 'Windows',\n healthchecks:\n deps.map(dep => {\n const match = /([^:]+): ([^:]+): (.*)/.exec(dep);\n if (!match) {\n throw new Error(`Unexpected output from ${rnwDepScriptPath}`);\n }\n const [, /*optional*/, id, name] = match;\n return {\n label: name,\n // The schema check of react-native doctor requires this to be a string, although it should be a boolean\n // Enable this once we pick up a new version of the CLI that includes https://github.com/react-native-community/cli/pull/1367\n // isRequired: (optional.trim() === 'Required') ? true : false, \n getDiagnostics: async () => {\n let needsToBeFixed = true;\n try {\n await execa(`powershell -ExecutionPolicy Unrestricted -NoProfile ${rnwDepScriptPath} -NoPrompt -Check ${id}`);\n needsToBeFixed = false;\n } catch {\n }\n return {\n needsToBeFixed,\n }\n },\n runAutomaticFix: async ({ loader, logManualInstallation }) => {\n const command = `powershell -ExecutionPolicy Unrestricted -NoProfile ${rnwDepScriptPath} -Check ${id}`;\n try {\n const { exitCode } = await execa(command, { stdio: 'inherit' });\n if (exitCode) {\n logManualInstallation({ command, healthcheck: `react-native-windows dependency \"${id}\"` });\n loader.fail();\n } else {\n loader.succeed();\n }\n } catch {\n logManualInstallation({ command, healthcheck: `react-native-windows dependency \"${id}\"` });\n loader.fail();\n }\n }\n }\n })\n }];\n }"]}
@@ -14,10 +14,13 @@ var __createBinding = (this && this.__createBinding) || (Object.create ? (functi
14
14
  var __exportStar = (this && this.__exportStar) || function(m, exports) {
15
15
  for (var p in m) if (p !== "default" && !exports.hasOwnProperty(p)) __createBinding(exports, m, p);
16
16
  };
17
+ var __importDefault = (this && this.__importDefault) || function (mod) {
18
+ return (mod && mod.__esModule) ? mod : { "default": mod };
19
+ };
17
20
  Object.defineProperty(exports, "__esModule", { value: true });
18
21
  exports.projectConfig = exports.dependencyConfig = exports.commands = exports.generateWindows = void 0;
19
- const fs = require("fs");
20
- const path = require("path");
22
+ const fs_1 = __importDefault(require("fs"));
23
+ const path_1 = __importDefault(require("path"));
21
24
  const telemetry_1 = require("@react-native-windows/telemetry");
22
25
  const generator_windows_1 = require("./generator-windows");
23
26
  const autolink_1 = require("./runWindows/utils/autolink");
@@ -48,14 +51,14 @@ function scrubOptions(opt) {
48
51
  async function generateWindows(projectDir, name, ns, options) {
49
52
  let error;
50
53
  try {
51
- if (!fs.existsSync(projectDir)) {
52
- fs.mkdirSync(projectDir);
54
+ if (!fs_1.default.existsSync(projectDir)) {
55
+ fs_1.default.mkdirSync(projectDir);
53
56
  }
54
57
  await generator_windows_1.installScriptsAndDependencies(options);
55
- const rnwPackage = path.dirname(require.resolve('react-native-windows/package.json', {
58
+ const rnwPackage = path_1.default.dirname(require.resolve('react-native-windows/package.json', {
56
59
  paths: [projectDir],
57
60
  }));
58
- const templateRoot = path.join(rnwPackage, 'template');
61
+ const templateRoot = path_1.default.join(rnwPackage, 'template');
59
62
  await generator_windows_1.copyProjectTemplateAndReplace(templateRoot, projectDir, name, ns, options);
60
63
  }
61
64
  catch (e) {
@@ -69,7 +72,7 @@ async function generateWindows(projectDir, name, ns, options) {
69
72
  let cliVersion = '';
70
73
  try {
71
74
  const cwd = process.cwd();
72
- const rnwPkg = JSON.parse(fs
75
+ const rnwPkg = JSON.parse(fs_1.default
73
76
  .readFileSync(require.resolve('react-native-windows/package.json', {
74
77
  paths: [cwd],
75
78
  }))
@@ -82,7 +85,12 @@ async function generateWindows(projectDir, name, ns, options) {
82
85
  const optScrubbed = scrubOptions(options);
83
86
  telemetry_1.Telemetry.client.trackEvent({
84
87
  name: 'generate-windows',
85
- properties: Object.assign(Object.assign({ error: error }, optScrubbed), { 'react-native': rnVersion, 'cli-version': cliVersion }),
88
+ properties: {
89
+ error: error,
90
+ ...optScrubbed,
91
+ 'react-native': rnVersion,
92
+ 'cli-version': cliVersion,
93
+ },
86
94
  });
87
95
  telemetry_1.Telemetry.client.flush();
88
96
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;;;;;;;;;;;;;;AAEH,4CAAoB;AACpB,gDAAwB;AACxB,+DAA0D;AAE1D,2DAG6B;AAE7B,0DAA4D;AAC5D,wDAA0D;AAC1D,gEAAkE;AAClE,0DAA4D;AAiC5D,SAAS,YAAY,CAAC,GAAoB;IACxC,OAAO;QACL,SAAS,EAAE,GAAG,CAAC,SAAS;QACxB,QAAQ,EAAE,GAAG,CAAC,QAAQ;QACtB,WAAW,EAAE,GAAG,CAAC,WAAW;QAC5B,2BAA2B,EAAE,GAAG,CAAC,2BAA2B;QAC5D,aAAa,EAAE,GAAG,CAAC,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK;QAC7D,gBAAgB,EAAE,GAAG,CAAC,gBAAgB,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK;QACnE,SAAS,EAAE,GAAG,CAAC,SAAS;QACxB,SAAS,EAAE,GAAG,CAAC,SAAS;QACxB,OAAO,EAAE,GAAG,CAAC,OAAO;KACrB,CAAC;AACJ,CAAC;AAED;;;;;;;GAOG;AACI,KAAK,UAAU,eAAe,CACnC,UAAkB,EAClB,IAAY,EACZ,EAAU,EACV,OAAwB;IAExB,IAAI,KAAK,CAAC;IACV,IAAI;QACF,IAAI,CAAC,YAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE;YAC9B,YAAE,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;SAC1B;QAED,MAAM,iDAA6B,CAAC,OAAO,CAAC,CAAC;QAE7C,MAAM,UAAU,GAAG,cAAI,CAAC,OAAO,CAC7B,OAAO,CAAC,OAAO,CAAC,mCAAmC,EAAE;YACnD,KAAK,EAAE,CAAC,UAAU,CAAC;SACpB,CAAC,CACH,CAAC;QACF,MAAM,YAAY,GAAG,cAAI,CAAC,IAAI,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;QACvD,MAAM,iDAA6B,CACjC,YAAY,EACZ,UAAU,EACV,IAAI,EACJ,EAAE,EACF,OAAO,CACR,CAAC;KACH;IAAC,OAAO,CAAC,EAAE;QACV,KAAK,GAAG,CAAC,CAAC;QACV,qBAAS,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;QAChC,MAAM,CAAC,CAAC;KACT;YAAS;QACR,IAAI,qBAAS,CAAC,MAAM,EAAE;YACpB,IAAI,SAAS,GAAG,EAAE,CAAC;YACnB,IAAI,UAAU,GAAG,EAAE,CAAC;YACpB,IAAI;gBACF,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;gBAC1B,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CACvB,YAAE;qBACC,YAAY,CACX,OAAO,CAAC,OAAO,CAAC,mCAAmC,EAAE;oBACnD,KAAK,EAAE,CAAC,GAAG,CAAC;iBACb,CAAC,CACH;qBACA,QAAQ,EAAE,CACd,CAAC;gBACF,SAAS,GAAG,MAAM,CAAC,gBAAgB,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC;gBAC1D,MAAM,aAAa,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;gBACjD,UAAU,GAAG,aAAa,CAAC,OAAO,CAAC;aACpC;YAAC,WAAM,GAAE;YACV,MAAM,WAAW,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;YAC1C,qBAAS,CAAC,MAAM,CAAC,UAAU,CAAC;gBAC1B,IAAI,EAAE,kBAAkB;gBACxB,UAAU,EAAE;oBACV,KAAK,EAAE,KAAK;oBACZ,GAAG,WAAW;oBACd,cAAc,EAAE,SAAS;oBACzB,aAAa,EAAE,UAAU;iBAC1B;aACF,CAAC,CAAC;YAEH,qBAAS,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;SAC1B;KACF;AACH,CAAC;AAhED,0CAgEC;AAED,iEAAiE;AACjE,MAAM,qBAAqB,GAOf,IAAI,CAAC;AACjB,qBAAqB,CAAC;AAET,QAAA,QAAQ,GAAG,CAAC,0BAAe,EAAE,8BAAiB,CAAC,CAAC;AAChD,QAAA,gBAAgB,GAAG,0CAAuB,CAAC;AAC3C,QAAA,aAAa,GAAG,oCAAoB,CAAC;AAClD,iDAA+B","sourcesContent":["/**\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n * @format\n */\n\nimport fs from 'fs';\nimport path from 'path';\nimport {Telemetry} from '@react-native-windows/telemetry';\n\nimport {\n copyProjectTemplateAndReplace,\n installScriptsAndDependencies,\n} from './generator-windows';\n\nimport {autoLinkCommand} from './runWindows/utils/autolink';\nimport {runWindowsCommand} from './runWindows/runWindows';\nimport {dependencyConfigWindows} from './config/dependencyConfig';\nimport {projectConfigWindows} from './config/projectConfig';\n\n/**\n * Project generation options\n *\n * _\n * | |\n * __| | __ _ _ __ __ _ ___ _ __\n * / _` |/ _` | '_ \\ / _` |/ _ \\ '__|\n * | (_| | (_| | | | | (_| | __/ |\n * \\__,_|\\__,_|_| |_|\\__, |\\___|_|\n * __/ |\n * |___/\n *\n *\n * Properties on this interface must remain stable, as new versions of\n * react-native-windows-init may be used with local-cli dating back to 0.61.\n * All existing arguments must work correctly when changing this interface.\n */\nexport interface GenerateOptions {\n overwrite: boolean;\n language: 'cpp' | 'cs';\n projectType: 'app' | 'lib';\n experimentalNuGetDependency: boolean;\n nuGetTestVersion?: string;\n nuGetTestFeed?: string;\n useWinUI3: boolean;\n useHermes: boolean;\n useDevMode: boolean;\n verbose: boolean;\n telemetry: boolean;\n}\n\nfunction scrubOptions(opt: GenerateOptions) {\n return {\n overwrite: opt.overwrite,\n language: opt.language,\n projectType: opt.projectType,\n experimentalNuGetDependency: opt.experimentalNuGetDependency,\n nuGetTestFeed: opt.nuGetTestFeed !== undefined ? true : false,\n nuGetTestVersion: opt.nuGetTestVersion !== undefined ? true : false,\n useWinUI3: opt.useWinUI3,\n useHermes: opt.useHermes,\n verbose: opt.verbose,\n };\n}\n\n/**\n * Simple utility for running the Windows generator.\n *\n * @param projectDir root project directory (i.e. contains index.js)\n * @param name name of the root JS module for this app\n * @param ns namespace for the project\n * @param options command line options container\n */\nexport async function generateWindows(\n projectDir: string,\n name: string,\n ns: string,\n options: GenerateOptions,\n) {\n let error;\n try {\n if (!fs.existsSync(projectDir)) {\n fs.mkdirSync(projectDir);\n }\n\n await installScriptsAndDependencies(options);\n\n const rnwPackage = path.dirname(\n require.resolve('react-native-windows/package.json', {\n paths: [projectDir],\n }),\n );\n const templateRoot = path.join(rnwPackage, 'template');\n await copyProjectTemplateAndReplace(\n templateRoot,\n projectDir,\n name,\n ns,\n options,\n );\n } catch (e) {\n error = e;\n Telemetry.trackException(error);\n throw e;\n } finally {\n if (Telemetry.client) {\n let rnVersion = '';\n let cliVersion = '';\n try {\n const cwd = process.cwd();\n const rnwPkg = JSON.parse(\n fs\n .readFileSync(\n require.resolve('react-native-windows/package.json', {\n paths: [cwd],\n }),\n )\n .toString(),\n );\n rnVersion = rnwPkg.peerDependencies['react-native'] || '';\n const rnwCliPkgJson = require('../package.json');\n cliVersion = rnwCliPkgJson.version;\n } catch {}\n const optScrubbed = scrubOptions(options);\n Telemetry.client.trackEvent({\n name: 'generate-windows',\n properties: {\n error: error,\n ...optScrubbed,\n 'react-native': rnVersion,\n 'cli-version': cliVersion,\n },\n });\n\n Telemetry.client.flush();\n }\n }\n}\n\n// Assert the interface here doesn't change for the reasons above\nconst assertStableInterface: typeof generateWindows extends (\n projectDir: string,\n name: string,\n ns: string,\n options: GenerateOptions,\n) => Promise<void>\n ? true\n : never = true;\nassertStableInterface;\n\nexport const commands = [autoLinkCommand, runWindowsCommand];\nexport const dependencyConfig = dependencyConfigWindows;\nexport const projectConfig = projectConfigWindows;\nexport * from './healthChecks';\n"]}