@rxap/plugin-library 16.0.0-dev.28 → 16.0.0-dev.29
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 +7 -0
- package/README.md +1 -1
- package/package.json +10 -9
- package/src/executors/readme/executor.js +124 -66
- package/src/executors/readme/executor.js.map +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,13 @@
|
|
|
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
|
+
# [16.0.0-dev.29](https://gitlab.com/rxap/packages/compare/@rxap/plugin-library@16.0.0-dev.28...@rxap/plugin-library@16.0.0-dev.29) (2023-10-02)
|
|
7
|
+
|
|
8
|
+
### Bug Fixes
|
|
9
|
+
|
|
10
|
+
- handle readme generator execution errors ([a5c5204](https://gitlab.com/rxap/packages/commit/a5c5204b6e2bcd39db3d868e1bfa5955b0570dbf))
|
|
11
|
+
- support schema with $ref and allOf properties ([c8a1640](https://gitlab.com/rxap/packages/commit/c8a164039443b37e2c0a6b2d1dceb1bfa6312b97))
|
|
12
|
+
|
|
6
13
|
# [16.0.0-dev.28](https://gitlab.com/rxap/packages/compare/@rxap/plugin-library@16.0.0-dev.27...@rxap/plugin-library@16.0.0-dev.28) (2023-09-21)
|
|
7
14
|
|
|
8
15
|
### Bug Fixes
|
package/README.md
CHANGED
|
@@ -19,7 +19,7 @@ yarn add @rxap/plugin-library
|
|
|
19
19
|
```
|
|
20
20
|
**Install peer dependencies:**
|
|
21
21
|
```bash
|
|
22
|
-
yarn add @nx/devkit@^16.5.0 @rxap/generator-ts-morph@^1.0.1-dev.11 @rxap/generator-utilities@^1.1.0-dev.14 @rxap/node-utilities@^1.1.0-dev.9 @rxap/plugin-angular@^16.1.0-dev.
|
|
22
|
+
yarn add @nx/devkit@^16.5.0 @rxap/generator-ts-morph@^1.0.1-dev.11 @rxap/generator-utilities@^1.1.0-dev.14 @rxap/node-utilities@^1.1.0-dev.9 @rxap/plugin-angular@^16.1.0-dev.37 @rxap/plugin-nestjs@^16.1.0-dev.30 @rxap/plugin-utilities@^16.1.0-dev.15 @rxap/utilities@* @rxap/workspace-utilities@^0.1.0-dev.16 handlebars@^4.7.7 nx@^16.5.0 semver@^7.3.5 ts-morph@^18.0.0 tslib@2.6.2
|
|
23
23
|
```
|
|
24
24
|
**Execute the init generator:**
|
|
25
25
|
```bash
|
package/package.json
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
{
|
|
2
|
-
"version": "16.0.0-dev.
|
|
2
|
+
"version": "16.0.0-dev.29",
|
|
3
3
|
"name": "@rxap/plugin-library",
|
|
4
4
|
"license": "GPL-3.0-or-later",
|
|
5
5
|
"dependencies": {
|
|
6
|
+
"@apidevtools/json-schema-ref-parser": "9.0.9",
|
|
6
7
|
"ignore": "^5.2.4",
|
|
7
8
|
"process": "0.11.10",
|
|
8
9
|
"tslib": "2.6.2",
|
|
@@ -13,9 +14,10 @@
|
|
|
13
14
|
"@rxap/generator-ts-morph": "^1.0.1-dev.11",
|
|
14
15
|
"@rxap/generator-utilities": "^1.1.0-dev.14",
|
|
15
16
|
"@rxap/node-utilities": "^1.1.0-dev.9",
|
|
16
|
-
"@rxap/plugin-angular": "^16.1.0-dev.
|
|
17
|
-
"@rxap/plugin-nestjs": "^16.1.0-dev.
|
|
17
|
+
"@rxap/plugin-angular": "^16.1.0-dev.37",
|
|
18
|
+
"@rxap/plugin-nestjs": "^16.1.0-dev.30",
|
|
18
19
|
"@rxap/plugin-utilities": "^16.1.0-dev.15",
|
|
20
|
+
"@rxap/utilities": "*",
|
|
19
21
|
"@rxap/workspace-utilities": "^0.1.0-dev.16",
|
|
20
22
|
"handlebars": "^4.7.7",
|
|
21
23
|
"nx": "^16.5.0",
|
|
@@ -23,9 +25,8 @@
|
|
|
23
25
|
"ts-morph": "^18.0.0",
|
|
24
26
|
"tslib": "2.6.2",
|
|
25
27
|
"@rxap/plugin-localazy": "16.1.0-dev.11",
|
|
26
|
-
"@rxap/ts-morph": "0.1.0-dev.
|
|
27
|
-
"@rxap/
|
|
28
|
-
"@rxap/workspace-ts-morph": "0.1.0-dev.8"
|
|
28
|
+
"@rxap/ts-morph": "0.1.0-dev.13",
|
|
29
|
+
"@rxap/workspace-ts-morph": "0.1.0-dev.9"
|
|
29
30
|
},
|
|
30
31
|
"author": {
|
|
31
32
|
"name": "Merzough Münker",
|
|
@@ -61,11 +62,11 @@
|
|
|
61
62
|
},
|
|
62
63
|
{
|
|
63
64
|
"package": "@rxap/plugin-angular",
|
|
64
|
-
"version": "16.1.0-dev.
|
|
65
|
+
"version": "16.1.0-dev.37"
|
|
65
66
|
},
|
|
66
67
|
{
|
|
67
68
|
"package": "@rxap/plugin-nestjs",
|
|
68
|
-
"version": "16.1.0-dev.
|
|
69
|
+
"version": "16.1.0-dev.30"
|
|
69
70
|
},
|
|
70
71
|
{
|
|
71
72
|
"package": "@rxap/plugin-utilities",
|
|
@@ -92,7 +93,7 @@
|
|
|
92
93
|
},
|
|
93
94
|
"schematics": "./generators.json",
|
|
94
95
|
"type": "commonjs",
|
|
95
|
-
"gitHead": "
|
|
96
|
+
"gitHead": "8e0aa5a7d6843573e4ee3fc195eb1344e4f325ec",
|
|
96
97
|
"main": "./src/index.js",
|
|
97
98
|
"types": "./src/index.d.ts"
|
|
98
99
|
}
|
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
const tslib_1 = require("tslib");
|
|
4
|
+
const json_schema_ref_parser_1 = tslib_1.__importDefault(require("@apidevtools/json-schema-ref-parser"));
|
|
4
5
|
const devkit_1 = require("@nx/devkit");
|
|
5
6
|
const plugin_utilities_1 = require("@rxap/plugin-utilities");
|
|
7
|
+
const utilities_1 = require("@rxap/utilities");
|
|
6
8
|
const Handlebars = tslib_1.__importStar(require("handlebars"));
|
|
7
9
|
const path_1 = require("path");
|
|
8
10
|
function readGetStartedFile(context) {
|
|
@@ -16,79 +18,125 @@ function getTemplate(context) {
|
|
|
16
18
|
const readmeTemplateFile = (0, plugin_utilities_1.readFileFromProjectRoot)(context, 'README.md.handlebars', true);
|
|
17
19
|
return Handlebars.compile(readmeTemplateFile);
|
|
18
20
|
}
|
|
21
|
+
function normalizeSchema(context, schema, basePath) {
|
|
22
|
+
var _a, _b, _c;
|
|
23
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
24
|
+
schema = yield json_schema_ref_parser_1.default.bundle(schema, {
|
|
25
|
+
resolve: {
|
|
26
|
+
external: true,
|
|
27
|
+
file: {
|
|
28
|
+
canRead: /schema\.json$/,
|
|
29
|
+
read(file) {
|
|
30
|
+
// fix the file url. The url is already resolved relative the current cwd.
|
|
31
|
+
// this results in an incorrect path. Eg. $ref: ../init-application/schema.json
|
|
32
|
+
// will be resolved to file.url = /<project-root>/../init-application/schema.json
|
|
33
|
+
// A workaround is need to fix the url to be resolved relative to the schema.json
|
|
34
|
+
// file in the schematic/generator/executor/builder folder
|
|
35
|
+
const restoredRef = (0, path_1.relative)(context.root, file.url);
|
|
36
|
+
const schemaFilePath = (0, path_1.join)(basePath, restoredRef);
|
|
37
|
+
return (0, plugin_utilities_1.readFileFromProjectRoot)(context, schemaFilePath, true);
|
|
38
|
+
},
|
|
39
|
+
},
|
|
40
|
+
},
|
|
41
|
+
});
|
|
42
|
+
if (schema.allOf) {
|
|
43
|
+
schema.properties = {};
|
|
44
|
+
schema.required = [];
|
|
45
|
+
for (const item of schema.allOf) {
|
|
46
|
+
if (typeof item === 'object') {
|
|
47
|
+
schema.properties = (0, utilities_1.deepMerge)(schema.properties, (_a = item.properties) !== null && _a !== void 0 ? _a : {});
|
|
48
|
+
schema.required = [
|
|
49
|
+
...schema.required, ...(typeof item.required !== 'boolean' ? (_b = item.required) !== null && _b !== void 0 ? _b : [] : []),
|
|
50
|
+
].filter((0, utilities_1.unique)());
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
// ensure the property 'properties' is defined
|
|
55
|
+
(_c = schema.properties) !== null && _c !== void 0 ? _c : (schema.properties = {});
|
|
56
|
+
return schema;
|
|
57
|
+
});
|
|
58
|
+
}
|
|
19
59
|
function getSchematics(context) {
|
|
20
60
|
var _a;
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
61
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
62
|
+
const { schematics } = (0, plugin_utilities_1.readPackageJsonForProject)(context);
|
|
63
|
+
if (!schematics) {
|
|
64
|
+
return [];
|
|
65
|
+
}
|
|
66
|
+
const projectRoot = (0, plugin_utilities_1.GetProjectRoot)(context);
|
|
67
|
+
const collectionJson = (0, devkit_1.readJsonFile)((0, path_1.join)(context.root, projectRoot, schematics));
|
|
68
|
+
const schematicList = [];
|
|
69
|
+
for (const [schematic, config] of Object.entries((_a = collectionJson.schematics) !== null && _a !== void 0 ? _a : {})) {
|
|
70
|
+
schematicList.push({
|
|
71
|
+
name: schematic,
|
|
72
|
+
description: config.description,
|
|
73
|
+
schema: yield normalizeSchema(context, (0, devkit_1.readJsonFile)((0, path_1.join)(context.root, projectRoot, config.schema)), (0, path_1.dirname)(config.schema)),
|
|
74
|
+
});
|
|
75
|
+
}
|
|
76
|
+
return schematicList;
|
|
77
|
+
});
|
|
36
78
|
}
|
|
37
79
|
function getGenerators(context) {
|
|
38
80
|
var _a;
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
81
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
82
|
+
const { generators } = (0, plugin_utilities_1.readPackageJsonForProject)(context);
|
|
83
|
+
if (!generators) {
|
|
84
|
+
return [];
|
|
85
|
+
}
|
|
86
|
+
const projectRoot = (0, plugin_utilities_1.GetProjectRoot)(context);
|
|
87
|
+
const collectionJson = (0, devkit_1.readJsonFile)((0, path_1.join)(context.root, projectRoot, generators));
|
|
88
|
+
const generatorList = [];
|
|
89
|
+
for (const [generator, config] of Object.entries((_a = collectionJson.generators) !== null && _a !== void 0 ? _a : {})) {
|
|
90
|
+
generatorList.push({
|
|
91
|
+
name: generator,
|
|
92
|
+
description: config.description,
|
|
93
|
+
schema: yield normalizeSchema(context, (0, devkit_1.readJsonFile)((0, path_1.join)(context.root, projectRoot, config.schema)), (0, path_1.dirname)(config.schema)),
|
|
94
|
+
});
|
|
95
|
+
}
|
|
96
|
+
const schematicList = yield getSchematics(context);
|
|
97
|
+
return [...generatorList, ...schematicList];
|
|
98
|
+
});
|
|
55
99
|
}
|
|
56
100
|
function getBuilders(context) {
|
|
57
101
|
var _a;
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
102
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
103
|
+
const { builders } = (0, plugin_utilities_1.readPackageJsonForProject)(context);
|
|
104
|
+
if (!builders) {
|
|
105
|
+
return [];
|
|
106
|
+
}
|
|
107
|
+
const projectRoot = (0, plugin_utilities_1.GetProjectRoot)(context);
|
|
108
|
+
const buildersJson = (0, devkit_1.readJsonFile)((0, path_1.join)(context.root, projectRoot, builders));
|
|
109
|
+
const builderList = [];
|
|
110
|
+
for (const [builder, config] of Object.entries((_a = buildersJson.builders) !== null && _a !== void 0 ? _a : {})) {
|
|
111
|
+
builderList.push({
|
|
112
|
+
name: builder,
|
|
113
|
+
description: config.description,
|
|
114
|
+
schema: yield normalizeSchema(context, (0, devkit_1.readJsonFile)((0, path_1.join)(context.root, projectRoot, config.schema)), (0, path_1.dirname)(config.schema)),
|
|
115
|
+
});
|
|
116
|
+
}
|
|
117
|
+
return builderList;
|
|
118
|
+
});
|
|
73
119
|
}
|
|
74
120
|
function getExecutors(context) {
|
|
75
121
|
var _a;
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
122
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
123
|
+
const { executors } = (0, plugin_utilities_1.readPackageJsonForProject)(context);
|
|
124
|
+
if (!executors) {
|
|
125
|
+
return [];
|
|
126
|
+
}
|
|
127
|
+
const projectRoot = (0, plugin_utilities_1.GetProjectRoot)(context);
|
|
128
|
+
const executorsJson = (0, devkit_1.readJsonFile)((0, path_1.join)(context.root, projectRoot, executors));
|
|
129
|
+
const executorList = [];
|
|
130
|
+
for (const [executor, config] of Object.entries((_a = executorsJson.executors) !== null && _a !== void 0 ? _a : {})) {
|
|
131
|
+
executorList.push({
|
|
132
|
+
name: executor,
|
|
133
|
+
description: config.description,
|
|
134
|
+
schema: yield normalizeSchema(context, (0, devkit_1.readJsonFile)((0, path_1.join)(context.root, projectRoot, config.schema)), (0, path_1.dirname)(config.schema)),
|
|
135
|
+
});
|
|
136
|
+
}
|
|
137
|
+
const builderList = yield getBuilders(context);
|
|
138
|
+
return [...executorList, ...builderList];
|
|
139
|
+
});
|
|
92
140
|
}
|
|
93
141
|
function getPeerDependencyList(context) {
|
|
94
142
|
var _a;
|
|
@@ -113,11 +161,12 @@ function runExecutor(options, context) {
|
|
|
113
161
|
const guidesContent = readGetGuidsFile(context);
|
|
114
162
|
const packageJson = (0, plugin_utilities_1.readPackageJsonForProject)(context);
|
|
115
163
|
const template = getTemplate(context);
|
|
116
|
-
const generatorList = getGenerators(context);
|
|
117
|
-
const executorsList = getExecutors(context);
|
|
164
|
+
const generatorList = yield getGenerators(context);
|
|
165
|
+
const executorsList = yield getExecutors(context);
|
|
118
166
|
const peerDependencyList = getPeerDependencyList(context);
|
|
119
167
|
console.log('Input for README.md template ready');
|
|
120
|
-
|
|
168
|
+
let readme;
|
|
169
|
+
const templateContext = {
|
|
121
170
|
packageJson,
|
|
122
171
|
getStartedContent,
|
|
123
172
|
guidesContent,
|
|
@@ -129,7 +178,16 @@ function runExecutor(options, context) {
|
|
|
129
178
|
hasExecutors: executorsList.length > 0,
|
|
130
179
|
hasInitGenerator: generatorList.find((generator) => generator.name === 'init') !== undefined,
|
|
131
180
|
hasConfigGenerator: generatorList.find((generator) => generator.name === 'config') !== undefined,
|
|
132
|
-
}
|
|
181
|
+
};
|
|
182
|
+
try {
|
|
183
|
+
readme = template(templateContext);
|
|
184
|
+
}
|
|
185
|
+
catch (e) {
|
|
186
|
+
console.error(`Error while generating README.md: ${e.message}`, templateContext);
|
|
187
|
+
return {
|
|
188
|
+
success: false,
|
|
189
|
+
};
|
|
190
|
+
}
|
|
133
191
|
console.log('README.md generated');
|
|
134
192
|
(0, plugin_utilities_1.writeFileToProjectRoot)(context, 'README.md', readme);
|
|
135
193
|
return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"executor.js","sourceRoot":"","sources":["../../../../../../../packages/plugin/library/src/executors/readme/executor.ts"],"names":[],"mappings":";;;AAAA,uCAGoB;AACpB,6DAKgC;AAChC,+DAAyC;AACzC,+
|
|
1
|
+
{"version":3,"file":"executor.js","sourceRoot":"","sources":["../../../../../../../packages/plugin/library/src/executors/readme/executor.ts"],"names":[],"mappings":"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"}
|