@rxap/schematic-composer 0.1.0-dev.3 → 0.1.0-dev.5

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/CHANGELOG.md CHANGED
@@ -3,6 +3,19 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ # [0.1.0-dev.5](https://gitlab.com/rxap/packages/compare/@rxap/schematic-composer@0.1.0-dev.4...@rxap/schematic-composer@0.1.0-dev.5) (2023-11-18)
7
+
8
+ ### Bug Fixes
9
+
10
+ - support yml as file extensions ([60f3d32](https://gitlab.com/rxap/packages/commit/60f3d325be0b6ce9585e3826f892cfe51484c593))
11
+
12
+ # [0.1.0-dev.4](https://gitlab.com/rxap/packages/compare/@rxap/schematic-composer@0.1.0-dev.3...@rxap/schematic-composer@0.1.0-dev.4) (2023-11-16)
13
+
14
+ ### Bug Fixes
15
+
16
+ - support sub directories ([c38f925](https://gitlab.com/rxap/packages/commit/c38f925b2bab59843d5f62f49c69c1dfb68c24b1))
17
+ - support yaml files ([353b63e](https://gitlab.com/rxap/packages/commit/353b63e58bab01e8080aea30255ddb77133e4a76))
18
+
6
19
  # [0.1.0-dev.3](https://gitlab.com/rxap/packages/compare/@rxap/schematic-composer@0.1.0-dev.2...@rxap/schematic-composer@0.1.0-dev.3) (2023-10-11)
7
20
 
8
21
  **Note:** Version bump only for package @rxap/schematic-composer
package/README.md CHANGED
@@ -17,5 +17,5 @@ yarn add @rxap/schematic-composer
17
17
  ```
18
18
  **Install peer dependencies:**
19
19
  ```bash
20
- yarn add @angular-devkit/schematics@^16.1.4 @rxap/schematics-ts-morph@^16.0.0-dev.28 @rxap/schematics-utilities@^16.0.0-dev.21 @rxap/utilities@^16.0.0-dev.23 tslib@2.6.2
20
+ yarn add @angular-devkit/schematics@^16.1.4 @rxap/schematics-ts-morph@^16.0.0-dev.34 @rxap/schematics-utilities@^16.0.0-dev.21 @rxap/utilities@^16.0.0-dev.23 tslib@2.6.2
21
21
  ```
package/package.json CHANGED
@@ -1,24 +1,26 @@
1
1
  {
2
- "version": "0.1.0-dev.3",
2
+ "version": "0.1.0-dev.5",
3
3
  "name": "@rxap/schematic-composer",
4
4
  "license": "GPL-3.0-or-later",
5
5
  "dependencies": {
6
- "ignore": "^5.2.4",
6
+ "ignore": "5.2.4",
7
7
  "process": "0.11.10",
8
- "semver": "^7.3.5",
8
+ "semver": "7.5.3",
9
9
  "ts-morph": "18.0.0",
10
- "tslib": "2.6.2"
10
+ "tslib": "2.6.2",
11
+ "yaml": "2.3.1"
11
12
  },
12
13
  "peerDependencies": {
13
14
  "@angular-devkit/schematics": "^16.1.4",
14
- "@rxap/schematics-ts-morph": "^16.0.0-dev.28",
15
+ "@rxap/schematics-ts-morph": "^16.0.0-dev.34",
15
16
  "@rxap/schematics-utilities": "^16.0.0-dev.21",
16
17
  "@rxap/utilities": "^16.0.0-dev.23",
17
18
  "tslib": "2.6.2",
18
19
  "@rxap/node-utilities": "1.1.0-dev.15",
19
- "@rxap/schematic-angular": "16.1.0-dev.25",
20
- "@rxap/workspace-ts-morph": "0.1.0-dev.11",
21
- "@rxap/workspace-utilities": "0.1.0-dev.23"
20
+ "@rxap/schematic-angular": "16.1.0-dev.43",
21
+ "@rxap/ts-morph": "0.1.0-dev.19",
22
+ "@rxap/workspace-ts-morph": "0.1.0-dev.12",
23
+ "@rxap/workspace-utilities": "0.1.0-dev.26"
22
24
  },
23
25
  "author": {
24
26
  "name": "Merzough Münker",
@@ -40,11 +42,11 @@
40
42
  "packageGroup": [
41
43
  {
42
44
  "package": "@rxap/schematic-angular",
43
- "version": "16.1.0-dev.25"
45
+ "version": "16.1.0-dev.43"
44
46
  },
45
47
  {
46
48
  "package": "@rxap/schematics-ts-morph",
47
- "version": "16.0.0-dev.28"
49
+ "version": "16.0.0-dev.34"
48
50
  },
49
51
  {
50
52
  "package": "@rxap/schematics-utilities",
@@ -67,7 +69,7 @@
67
69
  },
68
70
  "schematics": "./collection.json",
69
71
  "type": "commonjs",
70
- "gitHead": "23b1e51dac262c69e7a4c016b7679e907337efcc",
72
+ "gitHead": "4409ad5d146d10a09aee926671fedec06d6153b0",
71
73
  "main": "./src/index.js",
72
74
  "types": "./src/index.d.ts"
73
75
  }
@@ -5,6 +5,7 @@ const schematics_ts_morph_1 = require("@rxap/schematics-ts-morph");
5
5
  const schematics_utilities_1 = require("@rxap/schematics-utilities");
6
6
  const utilities_1 = require("@rxap/utilities");
7
7
  const path_1 = require("path");
8
+ const yaml_1 = require("yaml");
8
9
  function detectedFeature(path) {
9
10
  const fragments = path.split('/').reverse();
10
11
  let last = fragments.pop();
@@ -16,17 +17,48 @@ function detectedFeature(path) {
16
17
  }
17
18
  return undefined;
18
19
  }
19
- function executeSchematicCommandFile(host, schematicCommandFilePath, globalOptions) {
20
- var _a, _b;
21
- const schematicCommandFile = (_a = host.read(schematicCommandFilePath)) === null || _a === void 0 ? void 0 : _a.toString('utf-8');
20
+ function parseSchematicCommandFile(host, filePath) {
21
+ var _a;
22
+ const schematicCommandFile = (_a = host.read(filePath)) === null || _a === void 0 ? void 0 : _a.toString('utf-8');
22
23
  if (!schematicCommandFile) {
23
- throw new schematics_1.SchematicsException(`The schematic command file '${schematicCommandFilePath}' does not exists!`);
24
+ throw new schematics_1.SchematicsException(`The schematic command file '${filePath}' does not exists!`);
24
25
  }
25
- const schematicCommandList = JSON.parse(schematicCommandFile);
26
+ let parsed;
27
+ switch (filePath.split('.').pop()) {
28
+ case 'json':
29
+ parsed = JSON.parse(schematicCommandFile);
30
+ break;
31
+ case 'yml':
32
+ case 'yaml':
33
+ parsed = (0, yaml_1.parse)(schematicCommandFile);
34
+ break;
35
+ default:
36
+ throw new schematics_1.SchematicsException(`The schematic command file '${filePath}' has an unsupported file extension!`);
37
+ }
38
+ return (0, utilities_1.coerceArray)(parsed);
39
+ }
40
+ function executeSchematicCommandFile(host, schematicCommandFilePath, globalOptions, projectSourceRoot) {
41
+ var _a;
42
+ const schematicCommandList = parseSchematicCommandFile(host, schematicCommandFilePath);
26
43
  const ruleList = [];
27
44
  for (const command of schematicCommandList) {
28
45
  const options = Object.assign(Object.assign({}, globalOptions), command.options);
29
- (_b = options.feature) !== null && _b !== void 0 ? _b : (options.feature = detectedFeature(schematicCommandFilePath));
46
+ (_a = options.feature) !== null && _a !== void 0 ? _a : (options.feature = detectedFeature(schematicCommandFilePath));
47
+ const directoryParts = (0, path_1.relative)(projectSourceRoot, (0, path_1.dirname)(schematicCommandFilePath).replace(/^\//, '')).split('/');
48
+ if (options.feature) {
49
+ if (directoryParts[0] === 'feature') {
50
+ directoryParts.shift();
51
+ }
52
+ if (directoryParts[0] === options.feature) {
53
+ directoryParts.shift();
54
+ }
55
+ }
56
+ if (directoryParts.length) {
57
+ directoryParts.pop(); // remove schematics directory
58
+ }
59
+ if (directoryParts.length) {
60
+ options.directory = directoryParts.join('/');
61
+ }
30
62
  ruleList.push((0, schematics_1.chain)([
31
63
  () => console.log(`Execute schematic '${command.package}:${command.name}'`),
32
64
  () => console.log('Options:', JSON.stringify(options)),
@@ -51,25 +83,40 @@ function getSchematicCommandList(host, sourceRoot) {
51
83
  if (entry === null || entry === void 0 ? void 0 : entry.path.endsWith('schematic.json')) {
52
84
  schematicCommandList.push(path);
53
85
  }
86
+ if (entry === null || entry === void 0 ? void 0 : entry.path.endsWith('schematic.yaml')) {
87
+ schematicCommandList.push(path);
88
+ }
89
+ if (entry === null || entry === void 0 ? void 0 : entry.path.endsWith('schematic.yml')) {
90
+ schematicCommandList.push(path);
91
+ }
92
+ if (entry === null || entry === void 0 ? void 0 : entry.path.endsWith('schematics.json')) {
93
+ schematicCommandList.push(path);
94
+ }
95
+ if (entry === null || entry === void 0 ? void 0 : entry.path.endsWith('schematics.yaml')) {
96
+ schematicCommandList.push(path);
97
+ }
98
+ if (entry === null || entry === void 0 ? void 0 : entry.path.endsWith('schematics.yml')) {
99
+ schematicCommandList.push(path);
100
+ }
54
101
  });
55
102
  return schematicCommandList;
56
103
  }
57
- function getSchematicCommandRuleList(host, schematicCommandList, globalOptions) {
104
+ function getSchematicCommandRuleList(host, schematicCommandList, globalOptions, projectSourceRoot) {
58
105
  const ruleList = [];
59
106
  for (const schematicCommandFilePath of schematicCommandList) {
60
107
  ruleList.push((0, schematics_1.chain)([
61
108
  () => console.log(`Execute schematic command file '${schematicCommandFilePath}'`),
62
- executeSchematicCommandFile(host, schematicCommandFilePath, globalOptions),
109
+ executeSchematicCommandFile(host, schematicCommandFilePath, globalOptions, projectSourceRoot),
63
110
  ]));
64
111
  }
65
112
  return (0, schematics_1.chain)(ruleList);
66
113
  }
67
- function executeSchematicCommand(host, sourceRoot, globalOptions, filter) {
114
+ function executeSchematicCommand(host, sourceRoot, globalOptions, filter, projectSourceRoot) {
68
115
  let schematicCommandList = getSchematicCommandList(host, sourceRoot);
69
116
  if (filter) {
70
117
  schematicCommandList = schematicCommandList.filter(path => (0, path_1.dirname)(path).split('/').pop() === filter);
71
118
  }
72
- return getSchematicCommandRuleList(host, schematicCommandList, globalOptions);
119
+ return getSchematicCommandRuleList(host, schematicCommandList, globalOptions, projectSourceRoot);
73
120
  }
74
121
  function forFeature(host, projectName, featureName, globalOptions, filter) {
75
122
  const projectSourceRoot = (0, schematics_utilities_1.GetProjectSourceRoot)(host, projectName);
@@ -81,12 +128,12 @@ function forFeature(host, projectName, featureName, globalOptions, filter) {
81
128
  })) {
82
129
  throw new schematics_1.SchematicsException(`The feature '${featureName}' does not exists in project '${projectName}'`);
83
130
  }
84
- return executeSchematicCommand(host, featureSourceRoot, globalOptions, filter);
131
+ return executeSchematicCommand(host, featureSourceRoot, globalOptions, filter, projectSourceRoot);
85
132
  }
86
133
  function forProject(host, projectName, globalOptions, filter) {
87
134
  const projectSourceRoot = (0, schematics_utilities_1.GetProjectSourceRoot)(host, projectName);
88
135
  console.log('Use project source root:', projectSourceRoot);
89
- return executeSchematicCommand(host, projectSourceRoot, globalOptions, filter);
136
+ return executeSchematicCommand(host, projectSourceRoot, globalOptions, filter, projectSourceRoot);
90
137
  }
91
138
  function NormalizeComposeOptions(options) {
92
139
  var _a, _b, _c;
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../packages/schematic/composer/src/schematics/compose/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../packages/schematic/composer/src/schematics/compose/index.ts"],"names":[],"mappings":"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"}