@nx/devkit 19.7.0-canary.20240827-61ecd4b → 19.7.0-canary.20240829-0ef6892

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.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nx/devkit",
3
- "version": "19.7.0-canary.20240827-61ecd4b",
3
+ "version": "19.7.0-canary.20240829-0ef6892",
4
4
  "private": false,
5
5
  "description": "The Nx Devkit is used to customize Nx for different technologies and use cases. It contains many utility functions for reading and writing files, updating configuration, working with Abstract Syntax Trees(ASTs), and more. Learn more about [extending Nx by leveraging the Nx Devkit](https://nx.dev/extending-nx/intro/getting-started) on our docs.",
6
6
  "repository": {
@@ -36,7 +36,7 @@
36
36
  "semver": "^7.5.3",
37
37
  "yargs-parser": "21.1.1",
38
38
  "minimatch": "9.0.3",
39
- "@nrwl/devkit": "19.7.0-canary.20240827-61ecd4b"
39
+ "@nrwl/devkit": "19.7.0-canary.20240829-0ef6892"
40
40
  },
41
41
  "peerDependencies": {
42
42
  "nx": ">= 17 <= 20"
@@ -0,0 +1,23 @@
1
+ import { type Tree } from 'nx/src/devkit-exports';
2
+ interface E2EWebServerDefaultValues {
3
+ defaultServeTargetName: string;
4
+ defaultServeStaticTargetName: string;
5
+ defaultE2EWebServerAddress: string;
6
+ defaultE2ECiBaseUrl: string;
7
+ defaultE2EPort: number;
8
+ }
9
+ interface E2EWebServerPluginOptions {
10
+ plugin: string;
11
+ configFilePath: string;
12
+ serveTargetName: string;
13
+ serveStaticTargetName: string;
14
+ }
15
+ export interface E2EWebServerDetails {
16
+ e2eWebServerAddress: string;
17
+ e2eWebServerCommand: string;
18
+ e2eCiWebServerCommand: string;
19
+ e2eCiBaseUrl: string;
20
+ e2eDevServerTarget: string;
21
+ }
22
+ export declare function getE2EWebServerInfo(tree: Tree, projectName: string, pluginOptions: E2EWebServerPluginOptions, defaultValues: E2EWebServerDefaultValues, isPluginBeingAdded: boolean): Promise<E2EWebServerDetails>;
23
+ export {};
@@ -0,0 +1,55 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getE2EWebServerInfo = getE2EWebServerInfo;
4
+ const devkit_exports_1 = require("nx/src/devkit-exports");
5
+ const find_plugin_for_config_file_1 = require("../utils/find-plugin-for-config-file");
6
+ async function getE2EWebServerInfo(tree, projectName, pluginOptions, defaultValues, isPluginBeingAdded) {
7
+ const pm = (0, devkit_exports_1.getPackageManagerCommand)();
8
+ if (isPluginBeingAdded) {
9
+ return await getE2EWebServerInfoForPlugin(tree, projectName, pluginOptions, defaultValues, pm);
10
+ }
11
+ else {
12
+ return {
13
+ e2eWebServerAddress: defaultValues.defaultE2EWebServerAddress,
14
+ e2eWebServerCommand: `${pm.exec} nx run ${projectName}:${defaultValues.defaultServeTargetName}`,
15
+ e2eCiWebServerCommand: `${pm.exec} nx run ${projectName}:${defaultValues.defaultServeStaticTargetName}`,
16
+ e2eCiBaseUrl: defaultValues.defaultE2ECiBaseUrl,
17
+ e2eDevServerTarget: `${projectName}:${defaultValues.defaultServeTargetName}`,
18
+ };
19
+ }
20
+ }
21
+ async function getE2EWebServerInfoForPlugin(tree, projectName, pluginOptions, defaultValues, pm) {
22
+ const foundPlugin = await (0, find_plugin_for_config_file_1.findPluginForConfigFile)(tree, pluginOptions.plugin, pluginOptions.configFilePath);
23
+ if (!foundPlugin ||
24
+ typeof foundPlugin === 'string' ||
25
+ !foundPlugin?.options) {
26
+ return {
27
+ e2eWebServerAddress: defaultValues.defaultE2EWebServerAddress,
28
+ e2eWebServerCommand: `${pm.exec} nx run ${projectName}:${defaultValues.defaultServeTargetName}`,
29
+ e2eCiWebServerCommand: `${pm.exec} nx run ${projectName}:${defaultValues.defaultServeStaticTargetName}`,
30
+ e2eCiBaseUrl: defaultValues.defaultE2ECiBaseUrl,
31
+ e2eDevServerTarget: `${projectName}:${defaultValues.defaultServeTargetName}`,
32
+ };
33
+ }
34
+ const nxJson = (0, devkit_exports_1.readNxJson)(tree);
35
+ let e2ePort = defaultValues.defaultE2EPort ?? 4200;
36
+ if (nxJson.targetDefaults?.[foundPlugin.options[pluginOptions.serveTargetName] ??
37
+ defaultValues.defaultServeTargetName] &&
38
+ nxJson.targetDefaults?.[foundPlugin.options[pluginOptions.serveTargetName] ??
39
+ defaultValues.defaultServeTargetName].options?.port) {
40
+ e2ePort =
41
+ nxJson.targetDefaults?.[foundPlugin.options[pluginOptions.serveTargetName] ??
42
+ defaultValues.defaultServeTargetName].options?.port;
43
+ }
44
+ const e2eWebServerAddress = defaultValues.defaultE2EWebServerAddress.replace(/:\d+/, `:${e2ePort}`);
45
+ return {
46
+ e2eWebServerAddress,
47
+ e2eWebServerCommand: `${pm.exec} nx run ${projectName}:${foundPlugin.options[pluginOptions.serveTargetName] ??
48
+ defaultValues.defaultServeTargetName}`,
49
+ e2eCiWebServerCommand: `${pm.exec} nx run ${projectName}:${foundPlugin.options[pluginOptions.serveStaticTargetName] ??
50
+ defaultValues.defaultServeStaticTargetName}`,
51
+ e2eCiBaseUrl: defaultValues.defaultE2ECiBaseUrl,
52
+ e2eDevServerTarget: `${projectName}:${foundPlugin.options[pluginOptions.serveTargetName] ??
53
+ defaultValues.defaultServeTargetName}`,
54
+ };
55
+ }