@toolsplus/nx-forge 6.0.1 → 6.0.2

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 (58) hide show
  1. package/package.json +3 -2
  2. package/src/executors/build/executor.js +24 -40
  3. package/src/executors/build/executor.js.map +1 -1
  4. package/src/executors/build/lib/normalize-options.js +9 -2
  5. package/src/executors/build/lib/normalize-options.js.map +1 -1
  6. package/src/executors/build/lib/patch-manifest-yml.js +33 -22
  7. package/src/executors/build/lib/patch-manifest-yml.js.map +1 -1
  8. package/src/executors/build/lib/process-resource-dependencies.js +14 -12
  9. package/src/executors/build/lib/process-resource-dependencies.js.map +1 -1
  10. package/src/executors/deploy/executor.js +24 -24
  11. package/src/executors/deploy/executor.js.map +1 -1
  12. package/src/executors/deploy/lib/transform-manifest-yml.js +5 -5
  13. package/src/executors/deploy/lib/transform-manifest-yml.js.map +1 -1
  14. package/src/executors/install/executor.js +19 -22
  15. package/src/executors/install/executor.js.map +1 -1
  16. package/src/executors/package/executor.js +31 -29
  17. package/src/executors/package/executor.js.map +1 -1
  18. package/src/executors/register/executor.js +23 -26
  19. package/src/executors/register/executor.js.map +1 -1
  20. package/src/executors/register/lib/normalize-options.js +6 -2
  21. package/src/executors/register/lib/normalize-options.js.map +1 -1
  22. package/src/executors/register/lib/patch-manifest-yml.js +16 -13
  23. package/src/executors/register/lib/patch-manifest-yml.js.map +1 -1
  24. package/src/executors/tunnel/executor.js +32 -49
  25. package/src/executors/tunnel/executor.js.map +1 -1
  26. package/src/executors/tunnel/lib/extract-custom-ui-projects.js +14 -19
  27. package/src/executors/tunnel/lib/extract-custom-ui-projects.js.map +1 -1
  28. package/src/executors/tunnel/lib/run-tunnel.js +72 -76
  29. package/src/executors/tunnel/lib/run-tunnel.js.map +1 -1
  30. package/src/executors/tunnel/lib/start-custom-uis.js +6 -9
  31. package/src/executors/tunnel/lib/start-custom-uis.js.map +1 -1
  32. package/src/generators/application/generator.js +84 -57
  33. package/src/generators/application/generator.js.map +1 -1
  34. package/src/generators/application/lib/add-project-dependencies.js +33 -32
  35. package/src/generators/application/lib/add-project-dependencies.js.map +1 -1
  36. package/src/generators/application/lib/normalize-options.js +26 -21
  37. package/src/generators/application/lib/normalize-options.js.map +1 -1
  38. package/src/generators/init/generator.js +16 -20
  39. package/src/generators/init/generator.js.map +1 -1
  40. package/src/graph/create-dependencies.js +11 -23
  41. package/src/graph/create-dependencies.js.map +1 -1
  42. package/src/migrations/update-2-3-0/remove-implicit-custom-ui-dependencies.js +15 -18
  43. package/src/migrations/update-2-3-0/remove-implicit-custom-ui-dependencies.js.map +1 -1
  44. package/src/migrations/update-2-3-0/utils/manifest.js +3 -3
  45. package/src/migrations/update-2-3-0/utils/manifest.js.map +1 -1
  46. package/src/migrations/update-3-0-0-webpack-config-setup/update-3-0-0-webpack-config-setup.js +15 -18
  47. package/src/migrations/update-3-0-0-webpack-config-setup/update-3-0-0-webpack-config-setup.js.map +1 -1
  48. package/src/shared/manifest/util-manifest.d.ts +18 -9
  49. package/src/shared/manifest/util-manifest.js +53 -37
  50. package/src/shared/manifest/util-manifest.js.map +1 -1
  51. package/src/utils/forge/async-commands.js +1 -1
  52. package/src/utils/forge/async-commands.js.map +1 -1
  53. package/src/utils/forge/manifest-yml.d.ts +3 -1
  54. package/src/utils/forge/manifest-yml.js +8 -7
  55. package/src/utils/forge/manifest-yml.js.map +1 -1
  56. package/src/utils/forge/yaml-validator.d.ts +19 -0
  57. package/src/utils/forge/yaml-validator.js +73 -0
  58. package/src/utils/forge/yaml-validator.js.map +1 -0
@@ -1,36 +1,33 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.default = runExecutor;
4
- const tslib_1 = require("tslib");
5
4
  const devkit_1 = require("@nx/devkit");
6
5
  const normalize_options_1 = require("./lib/normalize-options");
7
6
  const patch_manifest_yml_1 = require("./lib/patch-manifest-yml");
8
7
  const async_commands_1 = require("../../utils/forge/async-commands");
9
- function runExecutor(rawOptions, context) {
10
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
11
- const { root, sourceRoot } = context.projectsConfigurations.projects[context.projectName];
12
- if (!sourceRoot) {
13
- throw new Error(`${context.projectName} does not have a sourceRoot.`);
14
- }
15
- if (!root) {
16
- throw new Error(`${context.projectName} does not have a root.`);
17
- }
18
- const options = (0, normalize_options_1.normalizeOptions)(rawOptions, context.root, sourceRoot, root);
19
- // https://developer.atlassian.com/platform/forge/cli-reference/register/
20
- const args = [
21
- 'register',
22
- ...(options.verbose === true ? ['--verbose'] : []),
23
- options.appName,
24
- ];
25
- devkit_1.logger.log(`Running: forge ${args.join(' ')}`);
26
- yield (0, async_commands_1.runForgeCommandAsync)(args, {
27
- cwd: options.outputPath,
28
- });
29
- yield (0, patch_manifest_yml_1.patchManifestYml)(options);
30
- devkit_1.logger.info('✅ Forge app registered');
31
- return {
32
- success: true,
33
- };
8
+ async function runExecutor(rawOptions, context) {
9
+ const { root, sourceRoot } = context.projectsConfigurations.projects[context.projectName];
10
+ if (!sourceRoot) {
11
+ throw new Error(`${context.projectName} does not have a sourceRoot.`);
12
+ }
13
+ if (!root) {
14
+ throw new Error(`${context.projectName} does not have a root.`);
15
+ }
16
+ const options = (0, normalize_options_1.normalizeOptions)(rawOptions, context.root, sourceRoot, root);
17
+ // https://developer.atlassian.com/platform/forge/cli-reference/register/
18
+ const args = [
19
+ 'register',
20
+ ...(options.verbose === true ? ['--verbose'] : []),
21
+ options.appName,
22
+ ];
23
+ devkit_1.logger.log(`Running: forge ${args.join(' ')}`);
24
+ await (0, async_commands_1.runForgeCommandAsync)(args, {
25
+ cwd: options.outputPath,
34
26
  });
27
+ await (0, patch_manifest_yml_1.patchManifestYml)(options);
28
+ devkit_1.logger.info('✅ Forge app registered');
29
+ return {
30
+ success: true,
31
+ };
35
32
  }
36
33
  //# sourceMappingURL=executor.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"executor.js","sourceRoot":"","sources":["../../../../../../packages/nx-forge/src/executors/register/executor.ts"],"names":[],"mappings":";;AAMA,8BAqCC;;AA3CD,uCAAqD;AAErD,+DAA2D;AAC3D,iEAA4D;AAC5D,qEAAwE;AAExE,SAA8B,WAAW,CACvC,UAAmC,EACnC,OAAwB;;QAExB,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,GACxB,OAAO,CAAC,sBAAsB,CAAC,QAAQ,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QAE/D,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,MAAM,IAAI,KAAK,CAAC,GAAG,OAAO,CAAC,WAAW,8BAA8B,CAAC,CAAC;QACxE,CAAC;QAED,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,MAAM,IAAI,KAAK,CAAC,GAAG,OAAO,CAAC,WAAW,wBAAwB,CAAC,CAAC;QAClE,CAAC;QAED,MAAM,OAAO,GAAG,IAAA,oCAAgB,EAAC,UAAU,EAAE,OAAO,CAAC,IAAI,EAAE,UAAU,EAAE,IAAI,CAAC,CAAC;QAE7E,yEAAyE;QACzE,MAAM,IAAI,GAAG;YACX,UAAU;YACV,GAAG,CAAC,OAAO,CAAC,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAClD,OAAO,CAAC,OAAO;SAChB,CAAC;QAEF,eAAM,CAAC,GAAG,CAAC,kBAAkB,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAE/C,MAAM,IAAA,qCAAoB,EAAC,IAAI,EAAE;YAC/B,GAAG,EAAE,OAAO,CAAC,UAAU;SACxB,CAAC,CAAC;QAEH,MAAM,IAAA,qCAAgB,EAAC,OAAO,CAAC,CAAC;QAEhC,eAAM,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;QAEtC,OAAO;YACL,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;CAAA"}
1
+ {"version":3,"file":"executor.js","sourceRoot":"","sources":["../../../../../../packages/nx-forge/src/executors/register/executor.ts"],"names":[],"mappings":";;AAMA,8BAqCC;AA3CD,uCAAqD;AAErD,+DAA2D;AAC3D,iEAA4D;AAC5D,qEAAwE;AAEzD,KAAK,UAAU,WAAW,CACvC,UAAmC,EACnC,OAAwB;IAExB,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,GACxB,OAAO,CAAC,sBAAsB,CAAC,QAAQ,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;IAE/D,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,MAAM,IAAI,KAAK,CAAC,GAAG,OAAO,CAAC,WAAW,8BAA8B,CAAC,CAAC;IACxE,CAAC;IAED,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,MAAM,IAAI,KAAK,CAAC,GAAG,OAAO,CAAC,WAAW,wBAAwB,CAAC,CAAC;IAClE,CAAC;IAED,MAAM,OAAO,GAAG,IAAA,oCAAgB,EAAC,UAAU,EAAE,OAAO,CAAC,IAAI,EAAE,UAAU,EAAE,IAAI,CAAC,CAAC;IAE7E,yEAAyE;IACzE,MAAM,IAAI,GAAG;QACX,UAAU;QACV,GAAG,CAAC,OAAO,CAAC,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAClD,OAAO,CAAC,OAAO;KAChB,CAAC;IAEF,eAAM,CAAC,GAAG,CAAC,kBAAkB,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAE/C,MAAM,IAAA,qCAAoB,EAAC,IAAI,EAAE;QAC/B,GAAG,EAAE,OAAO,CAAC,UAAU;KACxB,CAAC,CAAC;IAEH,MAAM,IAAA,qCAAgB,EAAC,OAAO,CAAC,CAAC;IAEhC,eAAM,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;IAEtC,OAAO;QACL,OAAO,EAAE,IAAI;KACd,CAAC;AACJ,CAAC"}
@@ -3,8 +3,12 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.normalizeOptions = normalizeOptions;
4
4
  const path_1 = require("path");
5
5
  function normalizeOptions(options, root, sourceRoot, projectRoot) {
6
- return Object.assign(Object.assign({}, options), { root,
6
+ return {
7
+ ...options,
8
+ root,
7
9
  sourceRoot,
8
- projectRoot, outputPath: (0, path_1.resolve)(root, options.outputPath) });
10
+ projectRoot,
11
+ outputPath: (0, path_1.resolve)(root, options.outputPath),
12
+ };
9
13
  }
10
14
  //# sourceMappingURL=normalize-options.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"normalize-options.js","sourceRoot":"","sources":["../../../../../../../packages/nx-forge/src/executors/register/lib/normalize-options.ts"],"names":[],"mappings":";;AAGA,4CAaC;AAhBD,+BAA+B;AAG/B,SAAgB,gBAAgB,CAC9B,OAAgC,EAChC,IAAY,EACZ,UAAkB,EAClB,WAAmB;IAEnB,uCACK,OAAO,KACV,IAAI;QACJ,UAAU;QACV,WAAW,EACX,UAAU,EAAE,IAAA,cAAO,EAAC,IAAI,EAAE,OAAO,CAAC,UAAU,CAAC,IAC7C;AACJ,CAAC"}
1
+ {"version":3,"file":"normalize-options.js","sourceRoot":"","sources":["../../../../../../../packages/nx-forge/src/executors/register/lib/normalize-options.ts"],"names":[],"mappings":";;AAGA,4CAaC;AAhBD,+BAA+B;AAG/B,SAAgB,gBAAgB,CAC9B,OAAgC,EAChC,IAAY,EACZ,UAAkB,EAClB,WAAmB;IAEnB,OAAO;QACL,GAAG,OAAO;QACV,IAAI;QACJ,UAAU;QACV,WAAW;QACX,UAAU,EAAE,IAAA,cAAO,EAAC,IAAI,EAAE,OAAO,CAAC,UAAU,CAAC;KAC9C,CAAC;AACJ,CAAC"}
@@ -1,7 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.patchManifestYml = patchManifestYml;
4
- const tslib_1 = require("tslib");
5
4
  const devkit_1 = require("@nx/devkit");
6
5
  const manifest_yml_1 = require("../../../utils/forge/manifest-yml");
7
6
  /**
@@ -10,17 +9,21 @@ const manifest_yml_1 = require("../../../utils/forge/manifest-yml");
10
9
  *
11
10
  * @param options Executor options
12
11
  */
13
- function patchManifestYml(options) {
14
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
15
- const outputManifestPath = (0, devkit_1.joinPathFragments)(options.outputPath, 'manifest.yml');
16
- const outputManifestSchema = yield (0, manifest_yml_1.readManifestYml)(outputManifestPath);
17
- const appId = outputManifestSchema.app.id;
18
- const projectManifestPath = (0, devkit_1.joinPathFragments)(options.projectRoot, 'manifest.yml');
19
- const projectManifestSchema = yield (0, manifest_yml_1.readManifestYml)(projectManifestPath);
20
- devkit_1.logger.info(`Patching project manifest ${projectManifestPath} with app id ${appId}...`);
21
- const patchedProjectManifest = Object.assign(Object.assign({}, projectManifestSchema), { app: Object.assign(Object.assign({}, projectManifestSchema.app), { id: appId }) });
22
- (0, manifest_yml_1.writeManifestYml)(projectManifestPath, patchedProjectManifest);
23
- devkit_1.logger.info(`Done patching ${projectManifestPath}.`);
24
- });
12
+ async function patchManifestYml(options) {
13
+ const outputManifestPath = (0, devkit_1.joinPathFragments)(options.outputPath, 'manifest.yml');
14
+ const outputManifestSchema = await (0, manifest_yml_1.readManifestYml)(outputManifestPath);
15
+ const appId = outputManifestSchema.app.id;
16
+ const projectManifestPath = (0, devkit_1.joinPathFragments)(options.projectRoot, 'manifest.yml');
17
+ const projectManifestSchema = await (0, manifest_yml_1.readManifestYml)(projectManifestPath);
18
+ devkit_1.logger.info(`Patching project manifest ${projectManifestPath} with app id ${appId}...`);
19
+ const patchedProjectManifest = {
20
+ ...projectManifestSchema,
21
+ app: {
22
+ ...projectManifestSchema.app,
23
+ id: appId,
24
+ },
25
+ };
26
+ (0, manifest_yml_1.writeManifestYml)(projectManifestPath, patchedProjectManifest);
27
+ devkit_1.logger.info(`Done patching ${projectManifestPath}.`);
25
28
  }
26
29
  //# sourceMappingURL=patch-manifest-yml.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"patch-manifest-yml.js","sourceRoot":"","sources":["../../../../../../../packages/nx-forge/src/executors/register/lib/patch-manifest-yml.ts"],"names":[],"mappings":";;AAaA,4CA6BC;;AA1CD,uCAAuD;AAEvD,oEAG2C;AAE3C;;;;;GAKG;AACH,SAAsB,gBAAgB,CAAC,OAA0B;;QAC/D,MAAM,kBAAkB,GAAG,IAAA,0BAAiB,EAC1C,OAAO,CAAC,UAAU,EAClB,cAAc,CACf,CAAC;QACF,MAAM,oBAAoB,GAAG,MAAM,IAAA,8BAAe,EAAC,kBAAkB,CAAC,CAAC;QAEvE,MAAM,KAAK,GAAW,oBAAoB,CAAC,GAAG,CAAC,EAAE,CAAC;QAElD,MAAM,mBAAmB,GAAG,IAAA,0BAAiB,EAC3C,OAAO,CAAC,WAAW,EACnB,cAAc,CACf,CAAC;QACF,MAAM,qBAAqB,GAAG,MAAM,IAAA,8BAAe,EAAC,mBAAmB,CAAC,CAAC;QAEzE,eAAM,CAAC,IAAI,CACT,6BAA6B,mBAAmB,gBAAgB,KAAK,KAAK,CAC3E,CAAC;QACF,MAAM,sBAAsB,mCACvB,qBAAqB,KACxB,GAAG,kCACE,qBAAqB,CAAC,GAAG,KAC5B,EAAE,EAAE,KAAK,MAEZ,CAAC;QAEF,IAAA,+BAAgB,EAAC,mBAAmB,EAAE,sBAAsB,CAAC,CAAC;QAE9D,eAAM,CAAC,IAAI,CAAC,iBAAiB,mBAAmB,GAAG,CAAC,CAAC;IACvD,CAAC;CAAA"}
1
+ {"version":3,"file":"patch-manifest-yml.js","sourceRoot":"","sources":["../../../../../../../packages/nx-forge/src/executors/register/lib/patch-manifest-yml.ts"],"names":[],"mappings":";;AAaA,4CA6BC;AA1CD,uCAAuD;AAEvD,oEAG2C;AAE3C;;;;;GAKG;AACI,KAAK,UAAU,gBAAgB,CAAC,OAA0B;IAC/D,MAAM,kBAAkB,GAAG,IAAA,0BAAiB,EAC1C,OAAO,CAAC,UAAU,EAClB,cAAc,CACf,CAAC;IACF,MAAM,oBAAoB,GAAG,MAAM,IAAA,8BAAe,EAAC,kBAAkB,CAAC,CAAC;IAEvE,MAAM,KAAK,GAAW,oBAAoB,CAAC,GAAG,CAAC,EAAE,CAAC;IAElD,MAAM,mBAAmB,GAAG,IAAA,0BAAiB,EAC3C,OAAO,CAAC,WAAW,EACnB,cAAc,CACf,CAAC;IACF,MAAM,qBAAqB,GAAG,MAAM,IAAA,8BAAe,EAAC,mBAAmB,CAAC,CAAC;IAEzE,eAAM,CAAC,IAAI,CACT,6BAA6B,mBAAmB,gBAAgB,KAAK,KAAK,CAC3E,CAAC;IACF,MAAM,sBAAsB,GAAG;QAC7B,GAAG,qBAAqB;QACxB,GAAG,EAAE;YACH,GAAG,qBAAqB,CAAC,GAAG;YAC5B,EAAE,EAAE,KAAK;SACV;KACF,CAAC;IAEF,IAAA,+BAAgB,EAAC,mBAAmB,EAAE,sBAAsB,CAAC,CAAC;IAE9D,eAAM,CAAC,IAAI,CAAC,iBAAiB,mBAAmB,GAAG,CAAC,CAAC;AACvD,CAAC"}
@@ -19,57 +19,40 @@ const start_custom_uis_1 = require("./lib/start-custom-uis");
19
19
  * @see https://gist.github.com/chrisui/a3cdf050bf18eccd499fba29b609b90a
20
20
  * @see https://github.com/nrwl/nx/blob/cded83b2c5bf3e4252c03d4dbcbb5b203b0faed0/packages/webpack/src/executors/ssr-dev-server/ssr-dev-server.impl.ts
21
21
  */
22
- function runTunnelExecutor(options, context) {
23
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
24
- var _a, e_1, _b, _c;
25
- var _d;
26
- const customUIProjectConfigs = yield (0, extract_custom_ui_projects_1.getCustomUiProjects)(context);
27
- const customUIIters = yield (0, start_custom_uis_1.startCustomUIs)(customUIProjectConfigs, context);
28
- const forgeAppBuildIter = yield (0, devkit_1.runExecutor)({ project: context.projectName, target: 'build' }, { watch: true }, context);
29
- yield (0, devkit_1.runExecutor)({ project: context.projectName, target: 'package' }, {}, context);
30
- try {
31
- const preTunnelTimeout = (_d = options.preTunnelTimeout) !== null && _d !== void 0 ? _d : 5000;
32
- yield (0, run_tunnel_1.isTunnelPreparationComplete)(options.outputPath, preTunnelTimeout);
33
- }
34
- catch (err) {
35
- devkit_1.logger.error(err.message);
36
- return { success: false };
37
- }
38
- // execute the tunnel target on the focused project
39
- const forgeTunnelIter = promiseToIterator((0, run_tunnel_1.default)(Object.assign(Object.assign({}, options), { customUIProjectConfigs }), context));
40
- const combined = (0, async_iterable_1.combineAsyncIterables)(forgeAppBuildIter, ...customUIIters, forgeTunnelIter);
41
- try {
42
- try {
43
- for (var _e = true, combined_1 = tslib_1.__asyncValues(combined), combined_1_1; combined_1_1 = yield combined_1.next(), _a = combined_1_1.done, !_a; _e = true) {
44
- _c = combined_1_1.value;
45
- _e = false;
46
- const output = _c;
47
- if (!output.success)
48
- throw new Error(`A started process failed: ${JSON.stringify(output)}`);
49
- if ((output === null || output === void 0 ? void 0 : output.id) === 'tunnel') {
50
- devkit_1.logger.info('Tunnel process has been terminated.');
51
- const { value } = yield combined.return({ success: true });
52
- return value;
53
- }
54
- }
22
+ async function runTunnelExecutor(options, context) {
23
+ var _a;
24
+ const customUIProjectConfigs = await (0, extract_custom_ui_projects_1.getCustomUiProjects)(context);
25
+ const customUIIters = await (0, start_custom_uis_1.startCustomUIs)(customUIProjectConfigs, context);
26
+ const forgeAppBuildIter = await (0, devkit_1.runExecutor)({ project: context.projectName, target: 'build' }, { watch: true }, context);
27
+ await (0, devkit_1.runExecutor)({ project: context.projectName, target: 'package' }, {}, context);
28
+ try {
29
+ const preTunnelTimeout = (_a = options.preTunnelTimeout) !== null && _a !== void 0 ? _a : 5000;
30
+ await (0, run_tunnel_1.isTunnelPreparationComplete)(options.outputPath, preTunnelTimeout);
31
+ }
32
+ catch (err) {
33
+ devkit_1.logger.error(err.message);
34
+ return { success: false };
35
+ }
36
+ // execute the tunnel target on the focused project
37
+ const forgeTunnelIter = promiseToIterator((0, run_tunnel_1.default)({ ...options, customUIProjectConfigs }, context));
38
+ const combined = (0, async_iterable_1.combineAsyncIterables)(forgeAppBuildIter, ...customUIIters, forgeTunnelIter);
39
+ try {
40
+ for await (const output of combined) {
41
+ if (!output.success)
42
+ throw new Error(`A started process failed: ${JSON.stringify(output)}`);
43
+ if ((output === null || output === void 0 ? void 0 : output.id) === 'tunnel') {
44
+ devkit_1.logger.info('Tunnel process has been terminated.');
45
+ const { value } = await combined.return({ success: true });
46
+ return value;
55
47
  }
56
- catch (e_1_1) { e_1 = { error: e_1_1 }; }
57
- finally {
58
- try {
59
- if (!_e && !_a && (_b = combined_1.return)) yield _b.call(combined_1);
60
- }
61
- finally { if (e_1) throw e_1.error; }
62
- }
63
- }
64
- catch (err) {
65
- devkit_1.logger.error(`Failed to tunnel Forge app: ${err}`);
66
- return yield combined.return({ success: false });
67
48
  }
68
- });
49
+ }
50
+ catch (err) {
51
+ devkit_1.logger.error(`Failed to tunnel Forge app: ${err}`);
52
+ return await combined.return({ success: false });
53
+ }
69
54
  }
70
- function promiseToIterator(v) {
71
- return tslib_1.__asyncGenerator(this, arguments, function* promiseToIterator_1() {
72
- yield yield tslib_1.__await(yield tslib_1.__await(v));
73
- });
55
+ async function* promiseToIterator(v) {
56
+ yield await v;
74
57
  }
75
58
  //# sourceMappingURL=executor.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"executor.js","sourceRoot":"","sources":["../../../../../../packages/nx-forge/src/executors/tunnel/executor.ts"],"names":[],"mappings":";;AAmBA,oCAmDC;;AAtED,uCAAkE;AAClE,wEAA4E;AAE5E,uEAA0E;AAC1E,iFAAuE;AACvE,6DAAwD;AAExD;;;;;;;;;;;GAWG;AACH,SAA8B,iBAAiB,CAC7C,OAA8B,EAC9B,OAAwB;;;;QAExB,MAAM,sBAAsB,GAAG,MAAM,IAAA,gDAAmB,EAAC,OAAO,CAAC,CAAC;QAElE,MAAM,aAAa,GAAG,MAAM,IAAA,iCAAc,EAAC,sBAAsB,EAAE,OAAO,CAAC,CAAC;QAE5E,MAAM,iBAAiB,GAAG,MAAM,IAAA,oBAAW,EACzC,EAAE,OAAO,EAAE,OAAO,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,EACjD,EAAE,KAAK,EAAE,IAAI,EAAE,EACf,OAAO,CACR,CAAC;QAEF,MAAM,IAAA,oBAAW,EACf,EAAE,OAAO,EAAE,OAAO,CAAC,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,EACnD,EAAE,EACF,OAAO,CACR,CAAC;QAEF,IAAI,CAAC;YACH,MAAM,gBAAgB,GAAG,MAAA,OAAO,CAAC,gBAAgB,mCAAI,IAAI,CAAC;YAC1D,MAAM,IAAA,wCAA2B,EAAC,OAAO,CAAC,UAAU,EAAE,gBAAgB,CAAC,CAAC;QAC1E,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,eAAM,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YAC1B,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;QAC5B,CAAC;QAED,mDAAmD;QACnD,MAAM,eAAe,GAAG,iBAAiB,CACvC,IAAA,oBAAS,kCAAM,OAAO,KAAE,sBAAsB,KAAI,OAAO,CAAC,CAC3D,CAAC;QAEF,MAAM,QAAQ,GACZ,IAAA,sCAAqB,EAAC,iBAAiB,EAAE,GAAG,aAAa,EAAE,eAAe,CAAC,CAAC;QAE9E,IAAI,CAAC;;gBACH,KAA2B,eAAA,aAAA,sBAAA,QAAQ,CAAA,cAAA,kFAAE,CAAC;oBAAX,wBAAQ;oBAAR,WAAQ;oBAAxB,MAAM,MAAM,KAAA,CAAA;oBACrB,IAAI,CAAC,MAAM,CAAC,OAAO;wBACjB,MAAM,IAAI,KAAK,CAAC,6BAA6B,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;oBAEzE,IAAI,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,EAAE,MAAK,QAAQ,EAAE,CAAC;wBAC5B,eAAM,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAC;wBACnD,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;wBAC3D,OAAO,KAAK,CAAC;oBACf,CAAC;gBACH,CAAC;;;;;;;;;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,eAAM,CAAC,KAAK,CAAC,+BAA+B,GAAG,EAAE,CAAC,CAAC;YACnD,OAAO,MAAM,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC;QACnD,CAAC;IACH,CAAC;CAAA;AAED,SAAgB,iBAAiB,CAG/B,CAAa;;QACb,4BAAM,sBAAM,CAAC,CAAA,CAAA,CAAC;IAChB,CAAC;CAAA"}
1
+ {"version":3,"file":"executor.js","sourceRoot":"","sources":["../../../../../../packages/nx-forge/src/executors/tunnel/executor.ts"],"names":[],"mappings":";;AAmBA,oCAmDC;;AAtED,uCAAkE;AAClE,wEAA4E;AAE5E,uEAA0E;AAC1E,iFAAuE;AACvE,6DAAwD;AAExD;;;;;;;;;;;GAWG;AACY,KAAK,UAAU,iBAAiB,CAC7C,OAA8B,EAC9B,OAAwB;;IAExB,MAAM,sBAAsB,GAAG,MAAM,IAAA,gDAAmB,EAAC,OAAO,CAAC,CAAC;IAElE,MAAM,aAAa,GAAG,MAAM,IAAA,iCAAc,EAAC,sBAAsB,EAAE,OAAO,CAAC,CAAC;IAE5E,MAAM,iBAAiB,GAAG,MAAM,IAAA,oBAAW,EACzC,EAAE,OAAO,EAAE,OAAO,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,EACjD,EAAE,KAAK,EAAE,IAAI,EAAE,EACf,OAAO,CACR,CAAC;IAEF,MAAM,IAAA,oBAAW,EACf,EAAE,OAAO,EAAE,OAAO,CAAC,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,EACnD,EAAE,EACF,OAAO,CACR,CAAC;IAEF,IAAI,CAAC;QACH,MAAM,gBAAgB,GAAG,MAAA,OAAO,CAAC,gBAAgB,mCAAI,IAAI,CAAC;QAC1D,MAAM,IAAA,wCAA2B,EAAC,OAAO,CAAC,UAAU,EAAE,gBAAgB,CAAC,CAAC;IAC1E,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,eAAM,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAC1B,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;IAC5B,CAAC;IAED,mDAAmD;IACnD,MAAM,eAAe,GAAG,iBAAiB,CACvC,IAAA,oBAAS,EAAC,EAAE,GAAG,OAAO,EAAE,sBAAsB,EAAE,EAAE,OAAO,CAAC,CAC3D,CAAC;IAEF,MAAM,QAAQ,GACZ,IAAA,sCAAqB,EAAC,iBAAiB,EAAE,GAAG,aAAa,EAAE,eAAe,CAAC,CAAC;IAE9E,IAAI,CAAC;QACH,IAAI,KAAK,EAAE,MAAM,MAAM,IAAI,QAAQ,EAAE,CAAC;YACpC,IAAI,CAAC,MAAM,CAAC,OAAO;gBACjB,MAAM,IAAI,KAAK,CAAC,6BAA6B,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YAEzE,IAAI,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,EAAE,MAAK,QAAQ,EAAE,CAAC;gBAC5B,eAAM,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAC;gBACnD,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;gBAC3D,OAAO,KAAK,CAAC;YACf,CAAC;QACH,CAAC;IACH,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,eAAM,CAAC,KAAK,CAAC,+BAA+B,GAAG,EAAE,CAAC,CAAC;QACnD,OAAO,MAAM,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC;IACnD,CAAC;AACH,CAAC;AAED,KAAK,SAAS,CAAC,CAAC,iBAAiB,CAG/B,CAAa;IACb,MAAM,MAAM,CAAC,CAAC;AAChB,CAAC"}
@@ -1,7 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.getCustomUiProjects = getCustomUiProjects;
4
- const tslib_1 = require("tslib");
5
4
  const devkit_1 = require("@nx/devkit");
6
5
  const manifest_yml_1 = require("../../../utils/forge/manifest-yml");
7
6
  const util_manifest_1 = require("../../../shared/manifest/util-manifest");
@@ -11,14 +10,12 @@ const util_manifest_1 = require("../../../shared/manifest/util-manifest");
11
10
  * @param context Executor context for this call
12
11
  * @returns Custom UI project names and the tunnel port on which they are required to serve their dev server.
13
12
  */
14
- function getCustomUiProjects(context) {
15
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
16
- const projects = yield extractVerifiedCustomUIProjects(context);
17
- return projects.map((p) => ({
18
- projectName: p.path,
19
- port: p.tunnel.port,
20
- }));
21
- });
13
+ async function getCustomUiProjects(context) {
14
+ const projects = await extractVerifiedCustomUIProjects(context);
15
+ return projects.map((p) => ({
16
+ projectName: p.path,
17
+ port: p.tunnel.port,
18
+ }));
22
19
  }
23
20
  /**
24
21
  * Extracts all Custom UI projects from the manifest.yml
@@ -32,16 +29,14 @@ function getCustomUiProjects(context) {
32
29
  * @param context Executor context for this call
33
30
  * @returns All configured and verified Custom UI resources
34
31
  */
35
- function extractVerifiedCustomUIProjects(context) {
36
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
37
- var _a;
38
- const manifestPath = (0, devkit_1.joinPathFragments)(context.root, context.projectsConfigurations.projects[context.projectName].root, 'manifest.yml');
39
- const manifestSchema = yield (0, manifest_yml_1.readManifestYml)(manifestPath);
40
- const resources = (_a = manifestSchema.resources) !== null && _a !== void 0 ? _a : [];
41
- return resources
42
- .filter((0, util_manifest_1.isResourceType)(manifestSchema, ['custom-ui']))
43
- .map(verifyCustomUIDependency(context));
44
- });
32
+ async function extractVerifiedCustomUIProjects(context) {
33
+ var _a;
34
+ const manifestPath = (0, devkit_1.joinPathFragments)(context.root, context.projectsConfigurations.projects[context.projectName].root, 'manifest.yml');
35
+ const manifestSchema = await (0, manifest_yml_1.readManifestYml)(manifestPath);
36
+ const resources = (_a = manifestSchema.resources) !== null && _a !== void 0 ? _a : [];
37
+ return resources
38
+ .filter((0, util_manifest_1.isResourceType)(manifestSchema, ['custom-ui']))
39
+ .map(verifyCustomUIDependency(context));
45
40
  }
46
41
  const verifyCustomUIDependency = (context) => (resource) => {
47
42
  const customUIProjectName = resource.path;
@@ -1 +1 @@
1
- {"version":3,"file":"extract-custom-ui-projects.js","sourceRoot":"","sources":["../../../../../../../packages/nx-forge/src/executors/tunnel/lib/extract-custom-ui-projects.ts"],"names":[],"mappings":";;AAcA,kDAQC;;AAtBD,uCAAgE;AAGhE,oEAAoE;AACpE,0EAAwE;AAIxE;;;;;GAKG;AACH,SAAsB,mBAAmB,CACvC,OAAwB;;QAExB,MAAM,QAAQ,GAAG,MAAM,+BAA+B,CAAC,OAAO,CAAC,CAAC;QAChE,OAAO,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YAC1B,WAAW,EAAE,CAAC,CAAC,IAAI;YACnB,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,IAAI;SACpB,CAAC,CAAC,CAAC;IACN,CAAC;CAAA;AAED;;;;;;;;;;;GAWG;AACH,SAAe,+BAA+B,CAC5C,OAAwB;;;QAExB,MAAM,YAAY,GAAG,IAAA,0BAAiB,EACpC,OAAO,CAAC,IAAI,EACZ,OAAO,CAAC,sBAAsB,CAAC,QAAQ,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,IAAI,EACjE,cAAc,CACf,CAAC;QACF,MAAM,cAAc,GAAG,MAAM,IAAA,8BAAe,EAAC,YAAY,CAAC,CAAC;QAC3D,MAAM,SAAS,GAAc,MAAA,cAAc,CAAC,SAAS,mCAAI,EAAE,CAAC;QAC5D,OAAO,SAAS;aACb,MAAM,CAAC,IAAA,8BAAc,EAAC,cAAc,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC;aACrD,GAAG,CAAC,wBAAwB,CAAC,OAAO,CAAC,CAAC,CAAC;IAC5C,CAAC;CAAA;AAED,MAAM,wBAAwB,GAC5B,CAAC,OAAwB,EAAE,EAAE,CAC7B,CAAC,QAA+B,EAA0B,EAAE;IAC1D,MAAM,mBAAmB,GAAG,QAAQ,CAAC,IAAI,CAAC;IAE1C,MAAM,4BAA4B,GAChC,OAAO,CAAC,sBAAsB,CAAC,QAAQ,CAAC,mBAAmB,CAAC,CAAC;IAE/D,IAAI,CAAC,4BAA4B,EAAE,CAAC;QAClC,MAAM,IAAI,KAAK,CACb,sDAAsD,mBAAmB,oFAAoF,CAC9J,CAAC;IACJ,CAAC;IAED,IAAI,CAAC,4BAA4B,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;QACnD,MAAM,IAAI,KAAK,CACb,sBAAsB,mBAAmB,gMAAgM,CAC1O,CAAC;IACJ,CAAC;IAED,IAAI,CAAC,QAAQ,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;QAChE,MAAM,IAAI,KAAK,CACb,+BAA+B,QAAQ,CAAC,GAAG,iIAAiI,QAAQ,CAAC,GAAG,0GAA0G,CACnS,CAAC;IACJ,CAAC;IAED,OAAO,QAAkC,CAAC;AAC5C,CAAC,CAAC"}
1
+ {"version":3,"file":"extract-custom-ui-projects.js","sourceRoot":"","sources":["../../../../../../../packages/nx-forge/src/executors/tunnel/lib/extract-custom-ui-projects.ts"],"names":[],"mappings":";;AAcA,kDAQC;AAtBD,uCAAgE;AAGhE,oEAAoE;AACpE,0EAAwE;AAIxE;;;;;GAKG;AACI,KAAK,UAAU,mBAAmB,CACvC,OAAwB;IAExB,MAAM,QAAQ,GAAG,MAAM,+BAA+B,CAAC,OAAO,CAAC,CAAC;IAChE,OAAO,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QAC1B,WAAW,EAAE,CAAC,CAAC,IAAI;QACnB,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,IAAI;KACpB,CAAC,CAAC,CAAC;AACN,CAAC;AAED;;;;;;;;;;;GAWG;AACH,KAAK,UAAU,+BAA+B,CAC5C,OAAwB;;IAExB,MAAM,YAAY,GAAG,IAAA,0BAAiB,EACpC,OAAO,CAAC,IAAI,EACZ,OAAO,CAAC,sBAAsB,CAAC,QAAQ,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,IAAI,EACjE,cAAc,CACf,CAAC;IACF,MAAM,cAAc,GAAG,MAAM,IAAA,8BAAe,EAAC,YAAY,CAAC,CAAC;IAC3D,MAAM,SAAS,GAAc,MAAA,cAAc,CAAC,SAAS,mCAAI,EAAE,CAAC;IAC5D,OAAO,SAAS;SACb,MAAM,CAAC,IAAA,8BAAc,EAAC,cAAc,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC;SACrD,GAAG,CAAC,wBAAwB,CAAC,OAAO,CAAC,CAAC,CAAC;AAC5C,CAAC;AAED,MAAM,wBAAwB,GAC5B,CAAC,OAAwB,EAAE,EAAE,CAC7B,CAAC,QAA+B,EAA0B,EAAE;IAC1D,MAAM,mBAAmB,GAAG,QAAQ,CAAC,IAAI,CAAC;IAE1C,MAAM,4BAA4B,GAChC,OAAO,CAAC,sBAAsB,CAAC,QAAQ,CAAC,mBAAmB,CAAC,CAAC;IAE/D,IAAI,CAAC,4BAA4B,EAAE,CAAC;QAClC,MAAM,IAAI,KAAK,CACb,sDAAsD,mBAAmB,oFAAoF,CAC9J,CAAC;IACJ,CAAC;IAED,IAAI,CAAC,4BAA4B,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;QACnD,MAAM,IAAI,KAAK,CACb,sBAAsB,mBAAmB,gMAAgM,CAC1O,CAAC;IACJ,CAAC;IAED,IAAI,CAAC,QAAQ,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;QAChE,MAAM,IAAI,KAAK,CACb,+BAA+B,QAAQ,CAAC,GAAG,iIAAiI,QAAQ,CAAC,GAAG,0GAA0G,CACnS,CAAC;IACJ,CAAC;IAED,OAAO,QAAkC,CAAC;AAC5C,CAAC,CAAC"}
@@ -23,45 +23,41 @@ const node_path_1 = tslib_1.__importDefault(require("node:path"));
23
23
  * @param timeoutMs Timeout in ms
24
24
  * @param initialDelayMs Initial delay before re-checking the condition
25
25
  */
26
- function isTunnelPreparationComplete(outputPath_1, timeoutMs_1) {
27
- return tslib_1.__awaiter(this, arguments, void 0, function* (outputPath, timeoutMs, initialDelayMs = 200) {
28
- const manifestExists = () => {
29
- var _a, _b;
30
- return (_b = (_a = (0, node_fs_1.statSync)(node_path_1.default.join(outputPath, 'manifest.yml'), {
31
- throwIfNoEntry: false,
32
- })) === null || _a === void 0 ? void 0 : _a.isFile()) !== null && _b !== void 0 ? _b : false;
33
- };
34
- const isOutputPathSrcDirNonEmpty = () => {
35
- var _a, _b;
36
- return (_b = (((_a = (0, node_fs_1.statSync)(node_path_1.default.join(outputPath, 'src'), {
37
- throwIfNoEntry: false,
38
- })) === null || _a === void 0 ? void 0 : _a.isDirectory()) &&
39
- (0, node_fs_1.readdirSync)(node_path_1.default.join(outputPath, 'src')).length > 0)) !== null && _b !== void 0 ? _b : false;
40
- };
41
- const timeout = new Promise((_, reject) => {
42
- setTimeout(() => reject(new Error(`Tunnel preparation timed out: Did not completed within ${timeoutMs} ms.
26
+ async function isTunnelPreparationComplete(outputPath, timeoutMs, initialDelayMs = 200) {
27
+ const manifestExists = () => {
28
+ var _a, _b;
29
+ return (_b = (_a = (0, node_fs_1.statSync)(node_path_1.default.join(outputPath, 'manifest.yml'), {
30
+ throwIfNoEntry: false,
31
+ })) === null || _a === void 0 ? void 0 : _a.isFile()) !== null && _b !== void 0 ? _b : false;
32
+ };
33
+ const isOutputPathSrcDirNonEmpty = () => {
34
+ var _a, _b;
35
+ return (_b = (((_a = (0, node_fs_1.statSync)(node_path_1.default.join(outputPath, 'src'), {
36
+ throwIfNoEntry: false,
37
+ })) === null || _a === void 0 ? void 0 : _a.isDirectory()) &&
38
+ (0, node_fs_1.readdirSync)(node_path_1.default.join(outputPath, 'src')).length > 0)) !== null && _b !== void 0 ? _b : false;
39
+ };
40
+ const timeout = new Promise((_, reject) => {
41
+ setTimeout(() => reject(new Error(`Tunnel preparation timed out: Did not completed within ${timeoutMs} ms.
43
42
 
44
43
  You can set a longer time out using the 'preTunnelTimeout' option of the tunnel executor.`)), timeoutMs);
45
- });
46
- const tunnelReadyCondition = function () {
47
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
48
- let delay = initialDelayMs;
49
- while (true) {
50
- try {
51
- if (manifestExists() && isOutputPathSrcDirNonEmpty()) {
52
- return true;
53
- }
54
- }
55
- catch (err) {
56
- throw new Error(`Unexpected error checking tunnel preparation complete: ${err}`);
57
- }
58
- yield new Promise((resolve) => setTimeout(resolve, delay));
59
- delay *= 2;
60
- }
61
- });
62
- };
63
- return Promise.race([tunnelReadyCondition(), timeout]);
64
44
  });
45
+ const tunnelReadyCondition = async function () {
46
+ let delay = initialDelayMs;
47
+ while (true) {
48
+ try {
49
+ if (manifestExists() && isOutputPathSrcDirNonEmpty()) {
50
+ return true;
51
+ }
52
+ }
53
+ catch (err) {
54
+ throw new Error(`Unexpected error checking tunnel preparation complete: ${err}`);
55
+ }
56
+ await new Promise((resolve) => setTimeout(resolve, delay));
57
+ delay *= 2;
58
+ }
59
+ };
60
+ return Promise.race([tunnelReadyCondition(), timeout]);
65
61
  }
66
62
  /**
67
63
  * Starts the `forge tunnel` process in the app's output directory. The execution of `forge tunnel` will be delayed
@@ -74,47 +70,47 @@ function isTunnelPreparationComplete(outputPath_1, timeoutMs_1) {
74
70
  * @param options Tunnel executor options
75
71
  * @param context Executor context for this call
76
72
  */
77
- function runTunnel(options, context) {
78
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
79
- if (options.customUIProjectConfigs.length > 0) {
80
- devkit_1.logger.info(`Wait for all Custom UI 'serve' targets to have started and servers are listening...`);
81
- yield Promise.all(options.customUIProjectConfigs.map(({ port }) => (0, wait_until_server_is_listening_1.waitUntilServerIsListening)(port, context)));
82
- devkit_1.logger.info(`All Custom UI 'serve' targets have started and servers are listening`);
83
- }
84
- const args = [
85
- 'tunnel',
86
- ...(options.verbose === true ? ['--verbose'] : []),
87
- ...(options.debug === true ? ['--debug'] : []),
88
- ];
89
- const command = `forge ${args.join(' ')}`;
90
- devkit_1.logger.info(`Running: > ${command}`);
91
- // https://2ality.com/2018/05/child-process-streams.html#running-commands-in-child-processes
92
- const tunnelProcess = (0, node_child_process_1.spawn)('forge', args, {
93
- cwd: options.outputPath,
94
- env: Object.assign(Object.assign({}, process.env), {
95
- // Unset NODE_ENV, if this is set to 'development' it may cause issues
96
- // starting the tunnel process
97
- // https://stackoverflow.com/questions/69566849/installing-forge-cli-is-bringing-spawn-ts-node-enoent-error
98
- NODE_ENV: undefined }),
99
- stdio: 'inherit',
100
- shell: true,
73
+ async function runTunnel(options, context) {
74
+ if (options.customUIProjectConfigs.length > 0) {
75
+ devkit_1.logger.info(`Wait for all Custom UI 'serve' targets to have started and servers are listening...`);
76
+ await Promise.all(options.customUIProjectConfigs.map(({ port }) => (0, wait_until_server_is_listening_1.waitUntilServerIsListening)(port, context)));
77
+ devkit_1.logger.info(`All Custom UI 'serve' targets have started and servers are listening`);
78
+ }
79
+ const args = [
80
+ 'tunnel',
81
+ ...(options.verbose === true ? ['--verbose'] : []),
82
+ ...(options.debug === true ? ['--debug'] : []),
83
+ ];
84
+ const command = `forge ${args.join(' ')}`;
85
+ devkit_1.logger.info(`Running: > ${command}`);
86
+ // https://2ality.com/2018/05/child-process-streams.html#running-commands-in-child-processes
87
+ const tunnelProcess = (0, node_child_process_1.spawn)('forge', args, {
88
+ cwd: options.outputPath,
89
+ env: {
90
+ ...process.env,
91
+ // Unset NODE_ENV, if this is set to 'development' it may cause issues
92
+ // starting the tunnel process
93
+ // https://stackoverflow.com/questions/69566849/installing-forge-cli-is-bringing-spawn-ts-node-enoent-error
94
+ NODE_ENV: undefined,
95
+ },
96
+ stdio: 'inherit',
97
+ shell: true,
98
+ });
99
+ return new Promise((resolve, reject) => {
100
+ tunnelProcess.once('exit', (code) => {
101
+ if (code === 0) {
102
+ devkit_1.logger.info('Exiting the forge tunnel process...');
103
+ resolve({
104
+ id: 'tunnel',
105
+ success: true,
106
+ });
107
+ }
108
+ else {
109
+ reject(new Error('Forge tunnel process terminated with error code: ' + code));
110
+ }
101
111
  });
102
- return new Promise((resolve, reject) => {
103
- tunnelProcess.once('exit', (code) => {
104
- if (code === 0) {
105
- devkit_1.logger.info('Exiting the forge tunnel process...');
106
- resolve({
107
- id: 'tunnel',
108
- success: true,
109
- });
110
- }
111
- else {
112
- reject(new Error('Forge tunnel process terminated with error code: ' + code));
113
- }
114
- });
115
- tunnelProcess.once('error', (err) => {
116
- reject(new Error('Forge tunnel process failed: ' + err));
117
- });
112
+ tunnelProcess.once('error', (err) => {
113
+ reject(new Error('Forge tunnel process failed: ' + err));
118
114
  });
119
115
  });
120
116
  }
@@ -1 +1 @@
1
- {"version":3,"file":"run-tunnel.js","sourceRoot":"","sources":["../../../../../../../packages/nx-forge/src/executors/tunnel/lib/run-tunnel.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"run-tunnel.js","sourceRoot":"","sources":["../../../../../../../packages/nx-forge/src/executors/tunnel/lib/run-tunnel.ts"],"names":[],"mappings":";;AAsBA,kEAiDC;AAaD,4BAkEC;;AAtJD,uCAAqD;AACrD,2DAA2C;AAC3C,8DAAwC;AAExC,qFAA8E;AAC9E,qCAAgD;AAChD,kEAA6B;AAE7B;;;;;;;;;;;;;GAaG;AACI,KAAK,UAAU,2BAA2B,CAC/C,UAAkB,EAClB,SAAiB,EACjB,cAAc,GAAG,GAAG;IAEpB,MAAM,cAAc,GAAG,GAAG,EAAE;;QAC1B,OAAA,MAAA,MAAA,IAAA,kBAAQ,EAAC,mBAAI,CAAC,IAAI,CAAC,UAAU,EAAE,cAAc,CAAC,EAAE;YAC9C,cAAc,EAAE,KAAK;SACtB,CAAC,0CAAE,MAAM,EAAE,mCAAI,KAAK,CAAA;KAAA,CAAC;IACxB,MAAM,0BAA0B,GAAG,GAAG,EAAE;;QACtC,OAAA,MAAA,CAAC,CAAA,MAAA,IAAA,kBAAQ,EAAC,mBAAI,CAAC,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC,EAAE;YACtC,cAAc,EAAE,KAAK;SACtB,CAAC,0CAAE,WAAW,EAAE;YACf,IAAA,qBAAW,EAAC,mBAAI,CAAC,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,mCACvD,KAAK,CAAA;KAAA,CAAC;IAER,MAAM,OAAO,GAAG,IAAI,OAAO,CAAU,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE;QACjD,UAAU,CACR,GAAG,EAAE,CACH,MAAM,CACJ,IAAI,KAAK,CACP,0DAA0D,SAAS;;sGAEuB,CAC3F,CACF,EACH,SAAS,CACV,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,MAAM,oBAAoB,GAAG,KAAK;QAChC,IAAI,KAAK,GAAG,cAAc,CAAC;QAC3B,OAAO,IAAI,EAAE,CAAC;YACZ,IAAI,CAAC;gBACH,IAAI,cAAc,EAAE,IAAI,0BAA0B,EAAE,EAAE,CAAC;oBACrD,OAAO,IAAI,CAAC;gBACd,CAAC;YACH,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM,IAAI,KAAK,CACb,0DAA0D,GAAG,EAAE,CAChE,CAAC;YACJ,CAAC;YAED,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC;YAC3D,KAAK,IAAI,CAAC,CAAC;QACb,CAAC;IACH,CAAC,CAAC;IAEF,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC,oBAAoB,EAAE,EAAE,OAAO,CAAC,CAAC,CAAC;AACzD,CAAC;AAED;;;;;;;;;;GAUG;AACY,KAAK,UAAU,SAAS,CACrC,OAKC,EACD,OAAwB;IAExB,IAAI,OAAO,CAAC,sBAAsB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC9C,eAAM,CAAC,IAAI,CACT,qFAAqF,CACtF,CAAC;QAEF,MAAM,OAAO,CAAC,GAAG,CACf,OAAO,CAAC,sBAAsB,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAC9C,IAAA,2DAA0B,EAAC,IAAI,EAAE,OAAO,CAAC,CAC1C,CACF,CAAC;QAEF,eAAM,CAAC,IAAI,CACT,sEAAsE,CACvE,CAAC;IACJ,CAAC;IAED,MAAM,IAAI,GAAG;QACX,QAAQ;QACR,GAAG,CAAC,OAAO,CAAC,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAClD,GAAG,CAAC,OAAO,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;KAC/C,CAAC;IAEF,MAAM,OAAO,GAAG,SAAS,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;IAC1C,eAAM,CAAC,IAAI,CAAC,cAAc,OAAO,EAAE,CAAC,CAAC;IAErC,4FAA4F;IAC5F,MAAM,aAAa,GAAG,IAAA,0BAAK,EAAC,OAAO,EAAE,IAAI,EAAE;QACzC,GAAG,EAAE,OAAO,CAAC,UAAU;QACvB,GAAG,EAAE;YACH,GAAG,OAAO,CAAC,GAAG;YACd,sEAAsE;YACtE,8BAA8B;YAC9B,2GAA2G;YAC3G,QAAQ,EAAE,SAAS;SACpB;QACD,KAAK,EAAE,SAAS;QAChB,KAAK,EAAE,IAAI;KACZ,CAAC,CAAC;IAEH,OAAO,IAAI,OAAO,CAAqC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACzE,aAAa,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,IAAY,EAAE,EAAE;YAC1C,IAAI,IAAI,KAAK,CAAC,EAAE,CAAC;gBACf,eAAM,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAC;gBACnD,OAAO,CAAC;oBACN,EAAE,EAAE,QAAQ;oBACZ,OAAO,EAAE,IAAI;iBACd,CAAC,CAAC;YACL,CAAC;iBAAM,CAAC;gBACN,MAAM,CACJ,IAAI,KAAK,CAAC,mDAAmD,GAAG,IAAI,CAAC,CACtE,CAAC;YACJ,CAAC;QACH,CAAC,CAAC,CAAC;QACH,aAAa,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,GAAU,EAAE,EAAE;YACzC,MAAM,CAAC,IAAI,KAAK,CAAC,+BAA+B,GAAG,GAAG,CAAC,CAAC,CAAC;QAC3D,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC"}
@@ -1,15 +1,12 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.startCustomUIs = startCustomUIs;
4
- const tslib_1 = require("tslib");
5
4
  const devkit_1 = require("@nx/devkit");
6
- function startCustomUIs(customUIProjectConfigs, context) {
7
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
8
- const customUIIters = [];
9
- for (const config of customUIProjectConfigs) {
10
- customUIIters.push(yield (0, devkit_1.runExecutor)({ project: config.projectName, target: 'serve' }, { port: config.port }, context));
11
- }
12
- return customUIIters;
13
- });
5
+ async function startCustomUIs(customUIProjectConfigs, context) {
6
+ const customUIIters = [];
7
+ for (const config of customUIProjectConfigs) {
8
+ customUIIters.push(await (0, devkit_1.runExecutor)({ project: config.projectName, target: 'serve' }, { port: config.port }, context));
9
+ }
10
+ return customUIIters;
14
11
  }
15
12
  //# sourceMappingURL=start-custom-uis.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"start-custom-uis.js","sourceRoot":"","sources":["../../../../../../../packages/nx-forge/src/executors/tunnel/lib/start-custom-uis.ts"],"names":[],"mappings":";;AAEA,wCAgBC;;AAlBD,uCAA0D;AAE1D,SAAsB,cAAc,CAClC,sBAA+D,EAC/D,OAAwB;;QAExB,MAAM,aAAa,GAA0C,EAAE,CAAC;QAEhE,KAAK,MAAM,MAAM,IAAI,sBAAsB,EAAE,CAAC;YAC5C,aAAa,CAAC,IAAI,CAChB,MAAM,IAAA,oBAAW,EACf,EAAE,OAAO,EAAE,MAAM,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,EAChD,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,EACrB,OAAO,CACR,CACF,CAAC;QACJ,CAAC;QACD,OAAO,aAAa,CAAC;IACvB,CAAC;CAAA"}
1
+ {"version":3,"file":"start-custom-uis.js","sourceRoot":"","sources":["../../../../../../../packages/nx-forge/src/executors/tunnel/lib/start-custom-uis.ts"],"names":[],"mappings":";;AAEA,wCAgBC;AAlBD,uCAA0D;AAEnD,KAAK,UAAU,cAAc,CAClC,sBAA+D,EAC/D,OAAwB;IAExB,MAAM,aAAa,GAA0C,EAAE,CAAC;IAEhE,KAAK,MAAM,MAAM,IAAI,sBAAsB,EAAE,CAAC;QAC5C,aAAa,CAAC,IAAI,CAChB,MAAM,IAAA,oBAAW,EACf,EAAE,OAAO,EAAE,MAAM,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,EAChD,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,EACrB,OAAO,CACR,CACF,CAAC;IACJ,CAAC;IACD,OAAO,aAAa,CAAC;AACvB,CAAC"}