@yuuvis/client-cli 19.4.0 → 19.5.0
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/README.md +25 -6
- package/cli/commands/generate/widget.d.ts +6 -0
- package/cli/commands/generate/widget.js +46 -0
- package/cli/commands/generate/widget.js.map +1 -0
- package/cli/options/options-generate-widget.json +19 -0
- package/cli/utils.d.ts +6 -0
- package/cli/utils.js +24 -0
- package/cli/utils.js.map +1 -1
- package/package.json +2 -1
- package/schematics/commands/angular-json.d.ts +6 -0
- package/schematics/commands/angular-json.js +25 -1
- package/schematics/commands/angular-json.js.map +1 -1
- package/schematics/commands/typescript-file.d.ts +25 -0
- package/schematics/commands/typescript-file.js +95 -14
- package/schematics/commands/typescript-file.js.map +1 -1
- package/schematics/factories/collection.json +5 -0
- package/schematics/factories/generate-app/index.js.map +1 -1
- package/schematics/factories/generate-widget/index.d.ts +11 -0
- package/schematics/factories/generate-widget/index.js +67 -0
- package/schematics/factories/generate-widget/index.js.map +1 -0
- package/schematics/factories/generate-widget/schema.json +41 -0
- package/schematics/factories/new/index.js +3 -2
- package/schematics/factories/new/index.js.map +1 -1
- package/schematics/files/_scripts/i18n-collect.js +1 -2
- package/schematics/files/_src/styles.scss +2 -5
- package/schematics/files/_src_styles/global.scss +4 -0
- package/schematics/project-util.d.ts +6 -0
- package/schematics/project-util.js +25 -0
- package/schematics/project-util.js.map +1 -1
- package/schematics/rules/copy-resources.js +3 -0
- package/schematics/rules/copy-resources.js.map +1 -1
- package/schematics/rules/generate-component.d.ts +2 -0
- package/schematics/rules/generate-component.js +18 -0
- package/schematics/rules/generate-component.js.map +1 -0
package/README.md
CHANGED
|
@@ -13,7 +13,7 @@ This CLI package follows a synchronized versioning strategy with the Angular fra
|
|
|
13
13
|
- `v18` of `@yuuvis/client-cli` is compatible with Angular 18 and corresponds to major version 1 of `@yuuvis/client-shell`
|
|
14
14
|
- `v19` of `@yuuvis/client-cli` is compatible with Angular 19 and corresponds to major version 2 of `@yuuvis/client-shell`
|
|
15
15
|
|
|
16
|
-
Make sure to install a CLI version that matches both your Angular version and the required
|
|
16
|
+
Make sure to install a CLI version that matches both your Angular version and the required `@yuuvis/client-shell` version for full compatibility.
|
|
17
17
|
|
|
18
18
|
## Install
|
|
19
19
|
|
|
@@ -43,6 +43,7 @@ yuv new <name> [options]
|
|
|
43
43
|
`<name>`: The name of the project.
|
|
44
44
|
|
|
45
45
|
#### Options
|
|
46
|
+
- `--shell-version`: The version of the shell to use. If not specified, you will be prompted to enter it.
|
|
46
47
|
- `--skip-git`: Do not initialize a git repository.
|
|
47
48
|
- `--skip-install`: Do not install dependency packages.
|
|
48
49
|
- `--skip-tests`: Do not generate `spec.ts` test files for the new project.
|
|
@@ -63,12 +64,30 @@ yuv g a <name> [options]
|
|
|
63
64
|
|
|
64
65
|
#### Options
|
|
65
66
|
- `--app-header`: Use the shell's app header layout.
|
|
66
|
-
- `--app-id`: The ID of the app.
|
|
67
|
-
- `--hide-from-nav`: Do not show the app icon
|
|
68
|
-
- `--prefix`: A prefix to apply to generated selectors.
|
|
69
|
-
- `--route`: The route
|
|
67
|
+
- `--app-id`: The ID of the app. If not specified, you will be prompted to enter it.
|
|
68
|
+
- `--hide-from-nav`: Do not show the app icon in the navigation bar.
|
|
69
|
+
- `--prefix`: A prefix to apply to generated selectors. If not specified, you will be prompted to enter it.
|
|
70
|
+
- `--route`: The route under which the app is registered in the client. If not specified, you will be prompted to enter it.
|
|
70
71
|
- `--skip-extension`: Do not create extension for the app.
|
|
71
72
|
|
|
73
|
+
### generate widget
|
|
74
|
+
|
|
75
|
+
Creates a new widget in the current workspace. This command works similar to Angular's `ng generate component` and uses the same naming conventions.
|
|
76
|
+
|
|
77
|
+
```bash
|
|
78
|
+
yuv generate widget <name> [options]
|
|
79
|
+
|
|
80
|
+
# short form
|
|
81
|
+
yuv g w <name> [options]
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
`<name>`: The name of the widget. The name can include a path (e.g., `widgets/my-widget`) to specify where the widget should be created, similar to how Angular's component generator works.
|
|
85
|
+
|
|
86
|
+
#### Options
|
|
87
|
+
- `--generate-setup-component` or `-gsc`: If set, a setup component for the widget will be generated.
|
|
88
|
+
- `--path`: The path where the widget component should be created (equivalent to Angular's `ng generate component --path`).
|
|
89
|
+
- `--prefix`: A prefix to apply to generated selectors (equivalent to Angular's `ng generate component --prefix`).
|
|
90
|
+
- `--project`: The name of the project where the component should be added. If not specified, the CLI will determine the project from the current directory (equivalent to Angular's `ng generate component --project`).
|
|
72
91
|
|
|
73
92
|
### add app
|
|
74
93
|
|
|
@@ -81,7 +100,7 @@ yuv add app <name>
|
|
|
81
100
|
yuv a a <name>
|
|
82
101
|
```
|
|
83
102
|
|
|
84
|
-
`<name>`: The name of the app. Similar to `npm install`, you can use `[<@scope>/]<name>@<version>` or `[<@scope>/]<name>@<tag>` for adding a specific version or tag of the app, e.
|
|
103
|
+
`<name>`: The name of the app. Similar to `npm install`, you can use `[<@scope>/]<name>@<version>` or `[<@scope>/]<name>@<tag>` for adding a specific version or tag of the app, e.g.:
|
|
85
104
|
|
|
86
105
|
```bash
|
|
87
106
|
yuv add app @myscope/mylib@1.0.0
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { CommandBuilder, Options } from "yargs";
|
|
2
|
+
export declare const command: string;
|
|
3
|
+
export declare const aliases: string[];
|
|
4
|
+
export declare const desc: string;
|
|
5
|
+
export declare const builder: CommandBuilder<Options>;
|
|
6
|
+
export declare const handler: (argv: any) => Promise<void>;
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
12
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
|
+
};
|
|
14
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
+
exports.handler = exports.builder = exports.desc = exports.aliases = exports.command = void 0;
|
|
16
|
+
const child_process_1 = require("child_process");
|
|
17
|
+
const utils_1 = require("../../utils");
|
|
18
|
+
const options_generate_widget_json_1 = __importDefault(require("../../options/options-generate-widget.json"));
|
|
19
|
+
const config_1 = require("@angular/cli/src/utilities/config");
|
|
20
|
+
const path_1 = require("path");
|
|
21
|
+
exports.command = "widget <name>";
|
|
22
|
+
exports.aliases = ["w"];
|
|
23
|
+
exports.desc = "Generate a new widget component.";
|
|
24
|
+
const builder = (yargs) => {
|
|
25
|
+
return yargs.string("widget").version(false).options(options_generate_widget_json_1.default);
|
|
26
|
+
};
|
|
27
|
+
exports.builder = builder;
|
|
28
|
+
const handler = (argv) => __awaiter(void 0, void 0, void 0, function* () {
|
|
29
|
+
if (!argv.project) {
|
|
30
|
+
const workspace = yield (0, config_1.getWorkspace)('local');
|
|
31
|
+
if (!workspace) {
|
|
32
|
+
throw new Error('Could not find Angular workspace configuration.');
|
|
33
|
+
}
|
|
34
|
+
argv.project = (0, config_1.getProjectByCwd)(workspace);
|
|
35
|
+
}
|
|
36
|
+
const currentCwd = process.cwd();
|
|
37
|
+
const workspaceRoot = (0, utils_1.findWorkspaceRoot)(currentCwd);
|
|
38
|
+
if (!workspaceRoot) {
|
|
39
|
+
throw new Error('Could not find Angular workspace root (angular.json not found)');
|
|
40
|
+
}
|
|
41
|
+
const workingdirectory = (0, path_1.relative)(workspaceRoot, currentCwd) || undefined;
|
|
42
|
+
(0, child_process_1.execSync)(`${(0, utils_1.getSchematicsBin)()} @yuuvis/client-cli:generate-widget ${(0, utils_1.serializeOptions)(Object.assign(Object.assign({}, argv), { workingdirectory }))}`, { cwd: workspaceRoot, stdio: "inherit" });
|
|
43
|
+
console.log(`Widget '${argv.name}' created successfully!`);
|
|
44
|
+
});
|
|
45
|
+
exports.handler = handler;
|
|
46
|
+
//# sourceMappingURL=widget.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"widget.js","sourceRoot":"","sources":["../../../../src/cli/commands/generate/widget.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AACA,iDAAyC;AACzC,uCAAoF;AACpF,8GAAiE;AACjE,8DAAkF;AAClF,+BAAgC;AAEnB,QAAA,OAAO,GAAW,eAAe,CAAC;AAClC,QAAA,OAAO,GAAa,CAAC,GAAG,CAAC,CAAC;AAC1B,QAAA,IAAI,GAAW,kCAAkC,CAAC;AAExD,MAAM,OAAO,GAA4B,CAAC,KAAU,EAAE,EAAE;IAC7D,OAAO,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,sCAAO,CAAC,CAAC;AAChE,CAAC,CAAC;AAFW,QAAA,OAAO,WAElB;AAEK,MAAM,OAAO,GAAG,CAAO,IAAS,EAAE,EAAE;IACzC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;QAClB,MAAM,SAAS,GAAG,MAAM,IAAA,qBAAY,EAAC,OAAO,CAAC,CAAC;QAC9C,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;QACrE,CAAC;QACD,IAAI,CAAC,OAAO,GAAG,IAAA,wBAAe,EAAC,SAAS,CAAC,CAAC;IAC5C,CAAC;IAED,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IACjC,MAAM,aAAa,GAAG,IAAA,yBAAiB,EAAC,UAAU,CAAC,CAAC;IACpD,IAAI,CAAC,aAAa,EAAE,CAAC;QACnB,MAAM,IAAI,KAAK,CAAC,gEAAgE,CAAC,CAAC;IACpF,CAAC;IAED,MAAM,gBAAgB,GAAG,IAAA,eAAQ,EAAC,aAAa,EAAE,UAAU,CAAC,IAAI,SAAS,CAAC;IAE1E,IAAA,wBAAQ,EACN,GAAG,IAAA,wBAAgB,GAAE,uCAAuC,IAAA,wBAAgB,kCAAK,IAAI,KAAE,gBAAgB,IAAE,EAAE,EAC3G,EAAE,GAAG,EAAE,aAAa,EAAE,KAAK,EAAE,SAAS,EAAE,CACzC,CAAC;IAEF,OAAO,CAAC,GAAG,CAAC,WAAW,IAAI,CAAC,IAAI,yBAAyB,CAAC,CAAC;AAC7D,CAAC,CAAA,CAAC;AAvBW,QAAA,OAAO,WAuBlB"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
{
|
|
2
|
+
"generate-setup-component": {
|
|
3
|
+
"describe": "Generate setup component.",
|
|
4
|
+
"type": "boolean",
|
|
5
|
+
"alias": "gsc"
|
|
6
|
+
},
|
|
7
|
+
"path": {
|
|
8
|
+
"describe": "The path where the widget component should be created.",
|
|
9
|
+
"type": "string"
|
|
10
|
+
},
|
|
11
|
+
"project": {
|
|
12
|
+
"describe": "The name of the project where the widget component should be added. If not specified, the CLI will determine the project from the current directory.",
|
|
13
|
+
"type": "string"
|
|
14
|
+
},
|
|
15
|
+
"prefix": {
|
|
16
|
+
"describe": "A prefix to be added to the widget components's selector.",
|
|
17
|
+
"type": "string"
|
|
18
|
+
}
|
|
19
|
+
}
|
package/cli/utils.d.ts
CHANGED
|
@@ -5,3 +5,9 @@ export declare function getSchematicsBin(): string;
|
|
|
5
5
|
* @returns
|
|
6
6
|
*/
|
|
7
7
|
export declare function serializeOptions(options: any): string;
|
|
8
|
+
/**
|
|
9
|
+
* Find the workspace root by looking for angular.json upwards from the startPath
|
|
10
|
+
* @param startPath
|
|
11
|
+
* @returns
|
|
12
|
+
*/
|
|
13
|
+
export declare function findWorkspaceRoot(startPath: string): string | null;
|
package/cli/utils.js
CHANGED
|
@@ -2,6 +2,8 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.getSchematicsBin = getSchematicsBin;
|
|
4
4
|
exports.serializeOptions = serializeOptions;
|
|
5
|
+
exports.findWorkspaceRoot = findWorkspaceRoot;
|
|
6
|
+
const fs_1 = require("fs");
|
|
5
7
|
const path_1 = require("path");
|
|
6
8
|
function getSchematicsBin() {
|
|
7
9
|
return (0, path_1.join)(__dirname, '../node_modules/.bin/schematics');
|
|
@@ -15,6 +17,7 @@ function serializeOptions(options) {
|
|
|
15
17
|
return Object.entries(options)
|
|
16
18
|
.filter(([key]) => key !== '_' && key !== '$0') // delete yargs internal keys
|
|
17
19
|
.filter(([key]) => key === key.toLowerCase()) // keep only lowercase keys
|
|
20
|
+
.filter(([, value]) => value !== undefined) // skip undefined values
|
|
18
21
|
.map(([key, value]) => {
|
|
19
22
|
if (typeof value === 'boolean') {
|
|
20
23
|
if (value)
|
|
@@ -25,4 +28,25 @@ function serializeOptions(options) {
|
|
|
25
28
|
})
|
|
26
29
|
.join(' ');
|
|
27
30
|
}
|
|
31
|
+
/**
|
|
32
|
+
* Find the workspace root by looking for angular.json upwards from the startPath
|
|
33
|
+
* @param startPath
|
|
34
|
+
* @returns
|
|
35
|
+
*/
|
|
36
|
+
function findWorkspaceRoot(startPath) {
|
|
37
|
+
const ANGULAR_JSON = 'angular.json';
|
|
38
|
+
let currentPath = (0, path_1.resolve)(startPath);
|
|
39
|
+
while (true) {
|
|
40
|
+
const angularJsonPath = (0, path_1.join)(currentPath, ANGULAR_JSON);
|
|
41
|
+
if ((0, fs_1.existsSync)(angularJsonPath)) {
|
|
42
|
+
return currentPath;
|
|
43
|
+
}
|
|
44
|
+
const parentPath = (0, path_1.dirname)(currentPath);
|
|
45
|
+
if (parentPath === currentPath) {
|
|
46
|
+
break;
|
|
47
|
+
}
|
|
48
|
+
currentPath = parentPath;
|
|
49
|
+
}
|
|
50
|
+
return null;
|
|
51
|
+
}
|
|
28
52
|
//# sourceMappingURL=utils.js.map
|
package/cli/utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/cli/utils.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/cli/utils.ts"],"names":[],"mappings":";;AAGA,4CAEC;AAOD,4CAaC;AAOD,8CAiBC;AAjDD,2BAAgC;AAChC,+BAAwD;AAExD,SAAgB,gBAAgB;IAC9B,OAAO,IAAA,WAAI,EAAC,SAAS,EAAE,iCAAiC,CAAC,CAAC;AAC5D,CAAC;AAED;;;;GAIG;AACH,SAAgB,gBAAgB,CAAC,OAAY;IAC3C,OAAO,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC;SAC3B,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,GAAG,KAAK,GAAG,IAAI,GAAG,KAAK,IAAI,CAAC,CAAC,6BAA6B;SAC5E,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,GAAG,KAAK,GAAG,CAAC,WAAW,EAAE,CAAC,CAAE,2BAA2B;SACzE,MAAM,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,KAAK,KAAK,SAAS,CAAC,CAAK,wBAAwB;SACvE,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;QACpB,IAAI,OAAO,KAAK,KAAK,SAAS,EAAE,CAAC;YAC/B,IAAI,KAAK;gBAAE,OAAO,KAAK,GAAG,EAAE,CAAC,CAAC,oCAAoC;YAClE,OAAO,EAAE,CAAC,CAAC,gCAAgC;QAC7C,CAAC;QACD,OAAO,KAAK,GAAG,KAAK,KAAK,GAAG,CAAC,CAAC,mCAAmC;IACnE,CAAC,CAAC;SACD,IAAI,CAAC,GAAG,CAAC,CAAC;AACf,CAAC;AAED;;;;GAIG;AACH,SAAgB,iBAAiB,CAAC,SAAiB;IACjD,MAAM,YAAY,GAAG,cAAc,CAAA;IACnC,IAAI,WAAW,GAAG,IAAA,cAAO,EAAC,SAAS,CAAC,CAAC;IAErC,OAAO,IAAI,EAAE,CAAC;QACZ,MAAM,eAAe,GAAG,IAAA,WAAI,EAAC,WAAW,EAAE,YAAY,CAAC,CAAC;QACxD,IAAI,IAAA,eAAU,EAAC,eAAe,CAAC,EAAE,CAAC;YAChC,OAAO,WAAW,CAAC;QACrB,CAAC;QACD,MAAM,UAAU,GAAG,IAAA,cAAO,EAAC,WAAW,CAAC,CAAC;QACxC,IAAI,UAAU,KAAK,WAAW,EAAE,CAAC;YAC/B,MAAM;QACR,CAAC;QACD,WAAW,GAAG,UAAU,CAAC;IAC3B,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@yuuvis/client-cli",
|
|
3
|
-
"version": "19.
|
|
3
|
+
"version": "19.5.0",
|
|
4
4
|
"main": "index.js",
|
|
5
5
|
"schematics": "./schematics/factories/collection.json",
|
|
6
6
|
"bin": {
|
|
@@ -20,6 +20,7 @@
|
|
|
20
20
|
"@angular-devkit/core": "^19.2.1",
|
|
21
21
|
"@angular-devkit/schematics": "^19.2.1",
|
|
22
22
|
"@angular-devkit/schematics-cli": "^19.2.1",
|
|
23
|
+
"@angular/cli": "^19.2.19",
|
|
23
24
|
"@schematics/angular": "^19.2.1",
|
|
24
25
|
"cli-table3": "^0.6.5",
|
|
25
26
|
"inquirer": "^12.4.3",
|
|
@@ -82,6 +82,12 @@ export declare class SetStyleForProjectCommand implements AngularJsonCommand {
|
|
|
82
82
|
constructor(projectName: string, style: ComponentStyle);
|
|
83
83
|
execute(angularJson: any): void;
|
|
84
84
|
}
|
|
85
|
+
export declare class UpdateStylePreprocessorOptionsForTestsCommand implements AngularJsonCommand {
|
|
86
|
+
private readonly projectName;
|
|
87
|
+
private readonly includePaths;
|
|
88
|
+
constructor(projectName: string, includePaths: string[]);
|
|
89
|
+
execute(angularJson: any): void;
|
|
90
|
+
}
|
|
85
91
|
/**
|
|
86
92
|
* Class for editing the angular.json file.
|
|
87
93
|
*/
|
|
@@ -9,7 +9,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
9
9
|
});
|
|
10
10
|
};
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
-
exports.AngularJsonEditor = exports.SetStyleForProjectCommand = exports.UpdateDevFileReplacementsForProjectCommand = exports.UpdateInitialBudgetForProjectCommand = exports.AdddAllowedCommonJsDependenciesToProjectCommand = exports.AddBuildOptionsScriptsToProjectCommand = exports.AddBuildOptionsAssetsToProjectCommand = exports.CompositeAngularJsonCommand = void 0;
|
|
12
|
+
exports.AngularJsonEditor = exports.UpdateStylePreprocessorOptionsForTestsCommand = exports.SetStyleForProjectCommand = exports.UpdateDevFileReplacementsForProjectCommand = exports.UpdateInitialBudgetForProjectCommand = exports.AdddAllowedCommonJsDependenciesToProjectCommand = exports.AddBuildOptionsScriptsToProjectCommand = exports.AddBuildOptionsAssetsToProjectCommand = exports.CompositeAngularJsonCommand = void 0;
|
|
13
13
|
const schematics_1 = require("@angular-devkit/schematics");
|
|
14
14
|
const project_util_1 = require("../project-util");
|
|
15
15
|
/**
|
|
@@ -149,6 +149,30 @@ class SetStyleForProjectCommand {
|
|
|
149
149
|
}
|
|
150
150
|
}
|
|
151
151
|
exports.SetStyleForProjectCommand = SetStyleForProjectCommand;
|
|
152
|
+
class UpdateStylePreprocessorOptionsForTestsCommand {
|
|
153
|
+
constructor(projectName, includePaths) {
|
|
154
|
+
this.projectName = projectName;
|
|
155
|
+
this.includePaths = includePaths;
|
|
156
|
+
}
|
|
157
|
+
execute(angularJson) {
|
|
158
|
+
var _a, _b, _c, _d;
|
|
159
|
+
var _e, _f, _g;
|
|
160
|
+
const project = getProject(angularJson, this.projectName);
|
|
161
|
+
if (!((_a = project.architect) === null || _a === void 0 ? void 0 : _a.test)) {
|
|
162
|
+
throw new schematics_1.SchematicsException(`Test target not found for project "${this.projectName}" in angular.json.`);
|
|
163
|
+
}
|
|
164
|
+
(_b = (_e = project.architect.test).options) !== null && _b !== void 0 ? _b : (_e.options = {});
|
|
165
|
+
(_c = (_f = project.architect.test.options).stylePreprocessorOptions) !== null && _c !== void 0 ? _c : (_f.stylePreprocessorOptions = { includePaths: [] });
|
|
166
|
+
(_d = (_g = project.architect.test.options.stylePreprocessorOptions).includePaths) !== null && _d !== void 0 ? _d : (_g.includePaths = []);
|
|
167
|
+
// Add new includePaths without duplicates
|
|
168
|
+
this.includePaths.forEach(path => {
|
|
169
|
+
if (!project.architect.test.options.stylePreprocessorOptions.includePaths.includes(path)) {
|
|
170
|
+
project.architect.test.options.stylePreprocessorOptions.includePaths.push(path);
|
|
171
|
+
}
|
|
172
|
+
});
|
|
173
|
+
}
|
|
174
|
+
}
|
|
175
|
+
exports.UpdateStylePreprocessorOptionsForTestsCommand = UpdateStylePreprocessorOptionsForTestsCommand;
|
|
152
176
|
/**
|
|
153
177
|
* Class for editing the angular.json file.
|
|
154
178
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"angular-json.js","sourceRoot":"","sources":["../../../src/schematics/commands/angular-json.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"angular-json.js","sourceRoot":"","sources":["../../../src/schematics/commands/angular-json.ts"],"names":[],"mappings":"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"}
|
|
@@ -30,6 +30,31 @@ export declare class AddImportToFileCommand implements TypeScriptFileCommand {
|
|
|
30
30
|
constructor(className: string, moduleName: string);
|
|
31
31
|
execute(sourceFile: ts.SourceFile, recorder: UpdateRecorder, filePath: string): void;
|
|
32
32
|
}
|
|
33
|
+
/**
|
|
34
|
+
* Adds an implements clause to a TypeScript class. If the class already implements the interface, no changes are made.
|
|
35
|
+
*/
|
|
36
|
+
export declare class AddImplementsClauseToClassCommand implements TypeScriptFileCommand {
|
|
37
|
+
private readonly fullInterfaceName;
|
|
38
|
+
constructor(interfaceName: string, genericType?: string);
|
|
39
|
+
execute(sourceFile: ts.SourceFile, recorder: UpdateRecorder, filePath: string): void;
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Adds a property statement to a TypeScript class. If the property already exists, no changes are made.
|
|
43
|
+
* Takes the complete property statement as a string for maximum flexibility.
|
|
44
|
+
*
|
|
45
|
+
* Examples:
|
|
46
|
+
* new AddPropertyToClassCommand('widgetConfig = input<any>()')
|
|
47
|
+
* new AddPropertyToClassCommand('name: string = "default"')
|
|
48
|
+
* new AddPropertyToClassCommand('private count = 0')
|
|
49
|
+
* new AddPropertyToClassCommand('readonly items: string[]')
|
|
50
|
+
*/
|
|
51
|
+
export declare class AddPropertyToClassCommand implements TypeScriptFileCommand {
|
|
52
|
+
private readonly propertyStatement;
|
|
53
|
+
private readonly propertyName;
|
|
54
|
+
constructor(propertyStatement: string);
|
|
55
|
+
private extractPropertyName;
|
|
56
|
+
execute(sourceFile: ts.SourceFile, recorder: UpdateRecorder, filePath: string): void;
|
|
57
|
+
}
|
|
33
58
|
/**
|
|
34
59
|
* Class for editing a typescript file.
|
|
35
60
|
*/
|
|
@@ -12,7 +12,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
12
12
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
13
|
};
|
|
14
14
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
-
exports.TypeScriptFileEditor = exports.AddImportToFileCommand = exports.CompositeTypeScriptFileCommand = void 0;
|
|
15
|
+
exports.TypeScriptFileEditor = exports.AddPropertyToClassCommand = exports.AddImplementsClauseToClassCommand = exports.AddImportToFileCommand = exports.CompositeTypeScriptFileCommand = void 0;
|
|
16
16
|
const schematics_1 = require("@angular-devkit/schematics");
|
|
17
17
|
const ast_utils_1 = require("@schematics/angular/utility/ast-utils");
|
|
18
18
|
const change_1 = require("@schematics/angular/utility/change");
|
|
@@ -45,19 +45,22 @@ class AddImportToFileCommand {
|
|
|
45
45
|
this.moduleName = moduleName;
|
|
46
46
|
}
|
|
47
47
|
execute(sourceFile, recorder, filePath) {
|
|
48
|
-
|
|
49
|
-
const
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
48
|
+
var _a;
|
|
49
|
+
const existingImport = sourceFile.statements.find((statement) => typescript_1.default.isImportDeclaration(statement) &&
|
|
50
|
+
!!statement.moduleSpecifier &&
|
|
51
|
+
typescript_1.default.isStringLiteral(statement.moduleSpecifier) &&
|
|
52
|
+
statement.moduleSpecifier.text === this.moduleName);
|
|
53
|
+
if (existingImport) {
|
|
54
|
+
const namedBindings = (_a = existingImport.importClause) === null || _a === void 0 ? void 0 : _a.namedBindings;
|
|
55
|
+
if (namedBindings && typescript_1.default.isNamedImports(namedBindings)) {
|
|
56
|
+
const alreadyImported = namedBindings.elements.some(element => element.name.text === this.className);
|
|
57
|
+
if (alreadyImported) {
|
|
58
|
+
return;
|
|
59
|
+
}
|
|
60
|
+
const lastElement = namedBindings.elements[namedBindings.elements.length - 1];
|
|
61
|
+
recorder.insertRight(lastElement.end, `, ${this.className}`);
|
|
62
|
+
return;
|
|
63
|
+
}
|
|
61
64
|
}
|
|
62
65
|
const importChange = (0, ast_utils_1.insertImport)(sourceFile, filePath, this.className, this.moduleName);
|
|
63
66
|
if (importChange) {
|
|
@@ -69,6 +72,84 @@ class AddImportToFileCommand {
|
|
|
69
72
|
}
|
|
70
73
|
}
|
|
71
74
|
exports.AddImportToFileCommand = AddImportToFileCommand;
|
|
75
|
+
/**
|
|
76
|
+
* Adds an implements clause to a TypeScript class. If the class already implements the interface, no changes are made.
|
|
77
|
+
*/
|
|
78
|
+
class AddImplementsClauseToClassCommand {
|
|
79
|
+
constructor(interfaceName, genericType) {
|
|
80
|
+
this.fullInterfaceName = genericType ? `${interfaceName}<${genericType}>` : interfaceName;
|
|
81
|
+
}
|
|
82
|
+
execute(sourceFile, recorder, filePath) {
|
|
83
|
+
var _a;
|
|
84
|
+
const classDeclaration = sourceFile.statements.find(typescript_1.default.isClassDeclaration);
|
|
85
|
+
if (!classDeclaration || !classDeclaration.name) {
|
|
86
|
+
throw new schematics_1.SchematicsException(`No class declaration found in ${filePath}`);
|
|
87
|
+
}
|
|
88
|
+
const implementsClause = (_a = classDeclaration.heritageClauses) === null || _a === void 0 ? void 0 : _a.find(clause => clause.token === typescript_1.default.SyntaxKind.ImplementsKeyword);
|
|
89
|
+
if (implementsClause) {
|
|
90
|
+
// Check if the interface is already implemented
|
|
91
|
+
const alreadyImplements = implementsClause.types.some(type => type.getText(sourceFile) === this.fullInterfaceName);
|
|
92
|
+
if (alreadyImplements) {
|
|
93
|
+
return; // the interface is already implemented
|
|
94
|
+
}
|
|
95
|
+
// Add to existing implements clause
|
|
96
|
+
const lastType = implementsClause.types[implementsClause.types.length - 1];
|
|
97
|
+
recorder.insertRight(lastType.end, `, ${this.fullInterfaceName}`);
|
|
98
|
+
}
|
|
99
|
+
else {
|
|
100
|
+
// Create a new implements clause
|
|
101
|
+
const classNameEnd = classDeclaration.name.end;
|
|
102
|
+
recorder.insertRight(classNameEnd, ` implements ${this.fullInterfaceName}`);
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
exports.AddImplementsClauseToClassCommand = AddImplementsClauseToClassCommand;
|
|
107
|
+
/**
|
|
108
|
+
* Adds a property statement to a TypeScript class. If the property already exists, no changes are made.
|
|
109
|
+
* Takes the complete property statement as a string for maximum flexibility.
|
|
110
|
+
*
|
|
111
|
+
* Examples:
|
|
112
|
+
* new AddPropertyToClassCommand('widgetConfig = input<any>()')
|
|
113
|
+
* new AddPropertyToClassCommand('name: string = "default"')
|
|
114
|
+
* new AddPropertyToClassCommand('private count = 0')
|
|
115
|
+
* new AddPropertyToClassCommand('readonly items: string[]')
|
|
116
|
+
*/
|
|
117
|
+
class AddPropertyToClassCommand {
|
|
118
|
+
constructor(propertyStatement) {
|
|
119
|
+
this.propertyStatement = propertyStatement;
|
|
120
|
+
this.propertyName = this.extractPropertyName(propertyStatement);
|
|
121
|
+
}
|
|
122
|
+
extractPropertyName(statement) {
|
|
123
|
+
// Match property name after optional modifiers (private, public, protected, readonly, static)
|
|
124
|
+
const match = statement.match(/^(?:(?:private|public|protected|readonly|static)\s+)*(\w+)/);
|
|
125
|
+
if (!match) {
|
|
126
|
+
throw new schematics_1.SchematicsException(`Cannot extract property name from: ${statement}`);
|
|
127
|
+
}
|
|
128
|
+
return match[1];
|
|
129
|
+
}
|
|
130
|
+
execute(sourceFile, recorder, filePath) {
|
|
131
|
+
const classDeclaration = sourceFile.statements.find(typescript_1.default.isClassDeclaration);
|
|
132
|
+
if (!classDeclaration || !classDeclaration.name) {
|
|
133
|
+
throw new schematics_1.SchematicsException(`No class declaration found in ${filePath}`);
|
|
134
|
+
}
|
|
135
|
+
const propertyExists = classDeclaration.members.some(member => typescript_1.default.isPropertyDeclaration(member) &&
|
|
136
|
+
member.name &&
|
|
137
|
+
typescript_1.default.isIdentifier(member.name) &&
|
|
138
|
+
member.name.text === this.propertyName);
|
|
139
|
+
if (propertyExists) {
|
|
140
|
+
return;
|
|
141
|
+
}
|
|
142
|
+
if (classDeclaration.members.length > 0) {
|
|
143
|
+
const firstMember = classDeclaration.members[0];
|
|
144
|
+
recorder.insertLeft(firstMember.getStart(sourceFile), `${this.propertyStatement}; `);
|
|
145
|
+
}
|
|
146
|
+
else {
|
|
147
|
+
const classStart = classDeclaration.members.pos;
|
|
148
|
+
recorder.insertLeft(classStart, `\n ${this.propertyStatement};`);
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
exports.AddPropertyToClassCommand = AddPropertyToClassCommand;
|
|
72
153
|
/**
|
|
73
154
|
* Class for editing a typescript file.
|
|
74
155
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"typescript-file.js","sourceRoot":"","sources":["../../../src/schematics/commands/typescript-file.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"typescript-file.js","sourceRoot":"","sources":["../../../src/schematics/commands/typescript-file.ts"],"names":[],"mappings":"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"}
|
|
@@ -10,6 +10,11 @@
|
|
|
10
10
|
"factory": "./generate-app/index#generateApp",
|
|
11
11
|
"schema": "./generate-app/schema.json"
|
|
12
12
|
},
|
|
13
|
+
"generate-widget": {
|
|
14
|
+
"description": "Generates a new yuuvis widget",
|
|
15
|
+
"factory": "./generate-widget/index#generateWidget",
|
|
16
|
+
"schema": "./generate-widget/schema.json"
|
|
17
|
+
},
|
|
13
18
|
"add-app": {
|
|
14
19
|
"description": "Adds a new app to the yuuvis client project",
|
|
15
20
|
"factory": "./add-app/index#addApp",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/schematics/factories/generate-app/index.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/schematics/factories/generate-app/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { Rule } from "@angular-devkit/schematics";
|
|
2
|
+
export interface WidgetOptions {
|
|
3
|
+
name: string;
|
|
4
|
+
project?: string;
|
|
5
|
+
path?: string;
|
|
6
|
+
prefix?: string;
|
|
7
|
+
pathForComponent?: string;
|
|
8
|
+
workingdirectory?: string;
|
|
9
|
+
generateSetupComponent?: boolean;
|
|
10
|
+
}
|
|
11
|
+
export declare function generateWidget(options: WidgetOptions): Rule;
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.generateWidget = generateWidget;
|
|
13
|
+
const schematics_1 = require("@angular-devkit/schematics");
|
|
14
|
+
const generate_component_1 = require("../../rules/generate-component");
|
|
15
|
+
const project_util_1 = require("../../project-util");
|
|
16
|
+
const utils_1 = require("../../utils");
|
|
17
|
+
const typescript_file_1 = require("../../commands/typescript-file");
|
|
18
|
+
function generateWidget(options) {
|
|
19
|
+
return (_tree, _context) => __awaiter(this, void 0, void 0, function* () {
|
|
20
|
+
options.pathForComponent = options.path || options.workingdirectory;
|
|
21
|
+
const targetPathData = yield (0, project_util_1.calculateComponentPath)(_tree, options.name, options.project, options.path, options.workingdirectory);
|
|
22
|
+
const targetPath = (0, utils_1.buildPath)(targetPathData.path, targetPathData.name);
|
|
23
|
+
const rules = [
|
|
24
|
+
(0, generate_component_1.generateComponent)(options.name, options.project, options.prefix, options.pathForComponent),
|
|
25
|
+
updateWidgetComponentRule(targetPathData.name, targetPath)
|
|
26
|
+
];
|
|
27
|
+
if (options.generateSetupComponent) {
|
|
28
|
+
const setupComponentName = `${targetPathData.name}Setup`;
|
|
29
|
+
const setupComponentPath = (0, utils_1.buildPath)(targetPath, 'setup');
|
|
30
|
+
rules.push((0, generate_component_1.generateComponent)(setupComponentName, options.project, options.prefix, setupComponentPath, true));
|
|
31
|
+
rules.push(updateWidgetSetupComponentRule(setupComponentName, setupComponentPath));
|
|
32
|
+
}
|
|
33
|
+
return (0, schematics_1.chain)(rules);
|
|
34
|
+
});
|
|
35
|
+
}
|
|
36
|
+
function updateWidgetComponentRule(componentName, componentPath) {
|
|
37
|
+
return (tree, context) => __awaiter(this, void 0, void 0, function* () {
|
|
38
|
+
const filePath = (0, utils_1.buildPath)(componentPath, `${schematics_1.strings.dasherize(componentName)}.component.ts`);
|
|
39
|
+
const command = new typescript_file_1.CompositeTypeScriptFileCommand([
|
|
40
|
+
new typescript_file_1.AddImportToFileCommand('input', '@angular/core'),
|
|
41
|
+
new typescript_file_1.AddImportToFileCommand('IWidgetComponent', '@yuuvis/client-framework/widget-grid'),
|
|
42
|
+
new typescript_file_1.AddImplementsClauseToClassCommand('IWidgetComponent', 'any'),
|
|
43
|
+
new typescript_file_1.AddPropertyToClassCommand('widgetConfig = input<any>()')
|
|
44
|
+
]);
|
|
45
|
+
const editor = yield typescript_file_1.TypeScriptFileEditor.create(tree, filePath);
|
|
46
|
+
editor.run(command, context);
|
|
47
|
+
return tree;
|
|
48
|
+
});
|
|
49
|
+
}
|
|
50
|
+
function updateWidgetSetupComponentRule(componentName, componentPath) {
|
|
51
|
+
return (tree, context) => __awaiter(this, void 0, void 0, function* () {
|
|
52
|
+
const filePath = (0, utils_1.buildPath)(componentPath, `${schematics_1.strings.dasherize(componentName)}.component.ts`);
|
|
53
|
+
const command = new typescript_file_1.CompositeTypeScriptFileCommand([
|
|
54
|
+
new typescript_file_1.AddImportToFileCommand('input', '@angular/core'),
|
|
55
|
+
new typescript_file_1.AddImportToFileCommand('output', '@angular/core'),
|
|
56
|
+
new typescript_file_1.AddImportToFileCommand('IWidgetSetupComponent', '@yuuvis/client-framework/widget-grid'),
|
|
57
|
+
new typescript_file_1.AddImplementsClauseToClassCommand('IWidgetSetupComponent', 'any'),
|
|
58
|
+
new typescript_file_1.AddPropertyToClassCommand('widgetConfig = input<any>()'),
|
|
59
|
+
new typescript_file_1.AddPropertyToClassCommand('widgetConfigChange = output<any>()'),
|
|
60
|
+
new typescript_file_1.AddPropertyToClassCommand('widgetConfigStateChange = output<any>()')
|
|
61
|
+
]);
|
|
62
|
+
const editor = yield typescript_file_1.TypeScriptFileEditor.create(tree, filePath);
|
|
63
|
+
editor.run(command, context);
|
|
64
|
+
return tree;
|
|
65
|
+
});
|
|
66
|
+
}
|
|
67
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/schematics/factories/generate-widget/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "http://json-schema.org/draft-07/schema",
|
|
3
|
+
"$id": "generate-widget",
|
|
4
|
+
"title": "Generate Widget Schematic",
|
|
5
|
+
"type": "object",
|
|
6
|
+
"properties": {
|
|
7
|
+
"name": {
|
|
8
|
+
"type": "string",
|
|
9
|
+
"description": "The name of the widget including filepath.",
|
|
10
|
+
"pattern": "^(\\.{1,2}[/\\\\])?([a-zA-Z][a-zA-Z0-9._-]*[/\\\\])*[a-zA-Z][a-zA-Z0-9._-]*$",
|
|
11
|
+
"$default": {
|
|
12
|
+
"$source": "argv",
|
|
13
|
+
"index": 0
|
|
14
|
+
}
|
|
15
|
+
},
|
|
16
|
+
"path": {
|
|
17
|
+
"type": "string",
|
|
18
|
+
"description": "The path where the widget component should be created."
|
|
19
|
+
},
|
|
20
|
+
"generateSetupComponent": {
|
|
21
|
+
"type": "boolean",
|
|
22
|
+
"description": "Generate setup component.",
|
|
23
|
+
"default": false
|
|
24
|
+
},
|
|
25
|
+
"project": {
|
|
26
|
+
"type": "string",
|
|
27
|
+
"description": "The name of the project where the widget component should be added. If not specified, the schematic will determine the project from the current directory.",
|
|
28
|
+
"pattern": "^[a-zA-Z0-9_](?:[a-zA-Z0-9._-]*[a-zA-Z0-9_])?$"
|
|
29
|
+
},
|
|
30
|
+
"prefix": {
|
|
31
|
+
"type": "string",
|
|
32
|
+
"description": "A prefix to be added to the widget components's selector.",
|
|
33
|
+
"pattern": "^[a-z0-9]+$"
|
|
34
|
+
},
|
|
35
|
+
"cwd": {
|
|
36
|
+
"type": "string",
|
|
37
|
+
"description": "The current working directory when the schematic is invoked."
|
|
38
|
+
}
|
|
39
|
+
},
|
|
40
|
+
"required": ["name"]
|
|
41
|
+
}
|
|
@@ -36,7 +36,7 @@ function newProject(options) {
|
|
|
36
36
|
context.logger.error(`Invalid shell version tag: ${options.shellVersion}. Available tags: ${Object.keys(shellPackageInfo['dist-tags']).join(', ')}`);
|
|
37
37
|
throw new schematics_1.SchematicsException(`Invalid shell version tag: ${options.shellVersion}`);
|
|
38
38
|
}
|
|
39
|
-
context.logger.info(`Version tagged as '${options.shellVersion}' is
|
|
39
|
+
context.logger.info(`Version tagged as '${options.shellVersion}' is resolved to ${calculatedVersion}`);
|
|
40
40
|
options.shellVersion = calculatedVersion;
|
|
41
41
|
}
|
|
42
42
|
const rules = [
|
|
@@ -72,7 +72,8 @@ function updateAngularJsonRule(projectName) {
|
|
|
72
72
|
new angular_json_1.UpdateInitialBudgetForProjectCommand(projectName, { maximumWarning: '3MB', maximumError: '5MB' }),
|
|
73
73
|
new angular_json_1.UpdateDevFileReplacementsForProjectCommand(projectName, [
|
|
74
74
|
{ replace: `src/environments/environment.ts`, with: `src/environments/environment.development.ts` }
|
|
75
|
-
])
|
|
75
|
+
]),
|
|
76
|
+
new angular_json_1.UpdateStylePreprocessorOptionsForTestsCommand(projectName, ['node_modules'])
|
|
76
77
|
]);
|
|
77
78
|
const angularJsonPath = `/${projectName}/angular.json`;
|
|
78
79
|
const editor = yield angular_json_1.AngularJsonEditor.create(tree, angularJsonPath);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/schematics/factories/new/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAUA,gCAkCC;AA5CD,2DAAoF;AACpF,gEAAuC;AACvC,0EAAiD;AACjD,kFAAuD;AACvD,+CAAiG;AACjG,2DAAyD;AACzD,8DAAmK;AACnK,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/schematics/factories/new/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -44,8 +44,7 @@ async function copyTo(srcDirectories, outputDir) {
|
|
|
44
44
|
for (const lang in languageFiles) {
|
|
45
45
|
const mergedData = languageFiles[lang].reduce((acc, filePath) => {
|
|
46
46
|
const data = fs.existsSync(filePath) ? JSON.parse(fs.readFileSync(filePath, 'utf-8')) : {};
|
|
47
|
-
|
|
48
|
-
return { ...acc, ...filteredData };
|
|
47
|
+
return { ...acc, ...data };
|
|
49
48
|
}, {});
|
|
50
49
|
const sortedMergedData = Object.keys(mergedData)
|
|
51
50
|
.sort()
|
|
@@ -1,6 +1,10 @@
|
|
|
1
1
|
import { Tree } from "@angular-devkit/schematics";
|
|
2
2
|
import { ProjectMetadata } from "./project-metadata";
|
|
3
3
|
import { PackageJson } from "./types/package-json";
|
|
4
|
+
export interface PathCalculationResult {
|
|
5
|
+
name: string;
|
|
6
|
+
path: string;
|
|
7
|
+
}
|
|
4
8
|
export declare function getProjectRootPath(tree: Tree): Promise<string>;
|
|
5
9
|
export declare function getScriptsRootPath(tree: Tree): Promise<string>;
|
|
6
10
|
export declare function getProjectMetadata(tree: Tree): Promise<ProjectMetadata>;
|
|
@@ -8,3 +12,5 @@ export declare function getPackageJsonPath(tree: Tree): Promise<string>;
|
|
|
8
12
|
export declare function getPackageJson(tree: Tree, packageJsonPath?: string): Promise<PackageJson>;
|
|
9
13
|
export declare function getAngularJsonPath(tree: Tree): Promise<string>;
|
|
10
14
|
export declare function getAngularJson(tree: Tree, angularJsonPath?: string): Promise<any>;
|
|
15
|
+
export declare function calculateComponentPath(tree: Tree, name: string, projectName: string, path?: string, workingDirectory?: string): Promise<PathCalculationResult>;
|
|
16
|
+
export declare function getWorkingDirectory(workspaceRoot: string, cwd?: string): string | undefined;
|
|
@@ -16,8 +16,13 @@ exports.getPackageJsonPath = getPackageJsonPath;
|
|
|
16
16
|
exports.getPackageJson = getPackageJson;
|
|
17
17
|
exports.getAngularJsonPath = getAngularJsonPath;
|
|
18
18
|
exports.getAngularJson = getAngularJson;
|
|
19
|
+
exports.calculateComponentPath = calculateComponentPath;
|
|
20
|
+
exports.getWorkingDirectory = getWorkingDirectory;
|
|
19
21
|
const utils_1 = require("./utils");
|
|
20
22
|
const project_metadata_1 = require("./project-metadata");
|
|
23
|
+
const core_1 = require("@angular-devkit/core");
|
|
24
|
+
const workspace_1 = require("@schematics/angular/utility/workspace");
|
|
25
|
+
const parse_name_1 = require("@schematics/angular/utility/parse-name");
|
|
21
26
|
function getProjectRootPath(tree) {
|
|
22
27
|
return __awaiter(this, void 0, void 0, function* () {
|
|
23
28
|
return (yield getProjectMetadata(tree)).projectRoot;
|
|
@@ -72,4 +77,24 @@ function getAngularJson(tree, angularJsonPath) {
|
|
|
72
77
|
return JSON.parse(buffer.toString('utf-8'));
|
|
73
78
|
});
|
|
74
79
|
}
|
|
80
|
+
function calculateComponentPath(tree, name, projectName, path, workingDirectory) {
|
|
81
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
82
|
+
const workspace = yield (0, workspace_1.getWorkspace)(tree);
|
|
83
|
+
const project = workspace.projects.get(projectName);
|
|
84
|
+
if (!project) {
|
|
85
|
+
throw new Error(`Project "${projectName}" does not exist.`);
|
|
86
|
+
}
|
|
87
|
+
const basePath = path || workingDirectory || (0, workspace_1.buildDefaultPath)(project);
|
|
88
|
+
const parsed = (0, parse_name_1.parseName)(basePath, name);
|
|
89
|
+
return {
|
|
90
|
+
name: core_1.strings.dasherize(parsed.name),
|
|
91
|
+
path: parsed.path
|
|
92
|
+
};
|
|
93
|
+
});
|
|
94
|
+
}
|
|
95
|
+
function getWorkingDirectory(workspaceRoot, cwd) {
|
|
96
|
+
const currentDir = cwd || process.cwd();
|
|
97
|
+
const workingDir = (0, core_1.normalize)((0, core_1.relative)((0, core_1.normalize)(workspaceRoot), (0, core_1.normalize)(currentDir)));
|
|
98
|
+
return (workingDir === '' || workingDir === '.') ? undefined : workingDir;
|
|
99
|
+
}
|
|
75
100
|
//# sourceMappingURL=project-util.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"project-util.js","sourceRoot":"","sources":["../../src/schematics/project-util.ts"],"names":[],"mappings":";;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"project-util.js","sourceRoot":"","sources":["../../src/schematics/project-util.ts"],"names":[],"mappings":"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"}
|
|
@@ -34,6 +34,9 @@ function copyMainFiles(options) {
|
|
|
34
34
|
(0, schematics_1.template)(Object.assign({}, options)),
|
|
35
35
|
(0, schematics_1.move)((0, utils_1.buildPath)(options.name, project.sourceRoot, 'app'))
|
|
36
36
|
]), schematics_1.MergeStrategy.Overwrite),
|
|
37
|
+
(0, schematics_1.mergeWith)((0, schematics_1.apply)((0, schematics_1.url)('../../files/_src_styles'), [
|
|
38
|
+
(0, schematics_1.move)((0, utils_1.buildPath)(options.name, project.sourceRoot, 'styles'))
|
|
39
|
+
]), schematics_1.MergeStrategy.Overwrite),
|
|
37
40
|
(0, schematics_1.mergeWith)((0, schematics_1.apply)((0, schematics_1.url)('../../files/_src_environments'), [
|
|
38
41
|
(0, schematics_1.renameTemplateFiles)(),
|
|
39
42
|
(0, schematics_1.template)(Object.assign({}, options)),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"copy-resources.js","sourceRoot":"","sources":["../../../src/schematics/rules/copy-resources.ts"],"names":[],"mappings":";;;;;;;;;;;AAIA,
|
|
1
|
+
{"version":3,"file":"copy-resources.js","sourceRoot":"","sources":["../../../src/schematics/rules/copy-resources.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.generateComponent = generateComponent;
|
|
4
|
+
const schematics_1 = require("@angular-devkit/schematics");
|
|
5
|
+
function generateComponent(name, project, prefix, path, flat = false) {
|
|
6
|
+
return (_tree) => {
|
|
7
|
+
return (0, schematics_1.externalSchematic)('@schematics/angular', 'component', {
|
|
8
|
+
name: name,
|
|
9
|
+
project: project,
|
|
10
|
+
prefix: prefix,
|
|
11
|
+
path: path,
|
|
12
|
+
standalone: true,
|
|
13
|
+
style: 'scss',
|
|
14
|
+
flat: flat
|
|
15
|
+
});
|
|
16
|
+
};
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=generate-component.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"generate-component.js","sourceRoot":"","sources":["../../../src/schematics/rules/generate-component.ts"],"names":[],"mappings":";;AAEA,8CAYC;AAdD,2DAA2E;AAE3E,SAAgB,iBAAiB,CAAC,IAAY,EAAE,OAAgB,EAAE,MAAe,EAAE,IAAa,EAAE,IAAI,GAAG,KAAK;IAC5G,OAAO,CAAC,KAAW,EAAE,EAAE;QACrB,OAAO,IAAA,8BAAiB,EAAC,qBAAqB,EAAE,WAAW,EAAE;YAC3D,IAAI,EAAE,IAAI;YACV,OAAO,EAAE,OAAO;YAChB,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,IAAI;YACV,UAAU,EAAE,IAAI;YAChB,KAAK,EAAE,MAAM;YACb,IAAI,EAAE,IAAI;SACX,CAAC,CAAC;IACL,CAAC,CAAC;AACJ,CAAC"}
|