@rxap/schematics-xml-parser 16.0.0-dev.2 → 16.0.0-dev.4
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 +55 -170
- package/README.md +7 -6
- package/package.json +49 -34
- package/src/index.d.ts +3 -6
- package/src/index.js +3 -10
- package/src/index.js.map +1 -1
- package/src/lib/elements/index.d.ts +2 -0
- package/src/lib/elements/index.js +6 -0
- package/src/lib/elements/index.js.map +1 -0
- package/src/lib/elements/methods/index.d.ts +3 -0
- package/src/lib/elements/methods/index.js +7 -0
- package/src/lib/elements/methods/index.js.map +1 -0
- package/src/lib/elements/methods/method.element.d.ts +1 -1
- package/src/lib/elements/methods/method.element.js +14 -15
- package/src/lib/elements/methods/method.element.js.map +1 -1
- package/src/lib/elements/methods/methods.js +1 -1
- package/src/lib/elements/methods/methods.js.map +1 -1
- package/src/lib/elements/methods/open-api-remote-method.element.d.ts +1 -1
- package/src/lib/elements/methods/open-api-remote-method.element.js +13 -13
- package/src/lib/elements/methods/open-api-remote-method.element.js.map +1 -1
- package/src/lib/elements/module.element.d.ts +3 -3
- package/src/lib/elements/module.element.js +9 -10
- package/src/lib/elements/module.element.js.map +1 -1
- package/src/lib/elements/type.element.js +15 -16
- package/src/lib/elements/type.element.js.map +1 -1
- package/src/lib/index.d.ts +1 -0
- package/src/lib/index.js +5 -0
- package/src/lib/index.js.map +1 -0
- package/src/lib/parse-template.js +1 -1
- package/src/lib/parse-template.js.map +1 -1
- package/LICENSE +0 -630
- package/migration.json +0 -4
|
@@ -5,6 +5,6 @@ const method_element_1 = require("./method.element");
|
|
|
5
5
|
const open_api_remote_method_element_1 = require("./open-api-remote-method.element");
|
|
6
6
|
exports.Methods = [
|
|
7
7
|
method_element_1.MethodElement,
|
|
8
|
-
open_api_remote_method_element_1.OpenApiRemoteMethodElement
|
|
8
|
+
open_api_remote_method_element_1.OpenApiRemoteMethodElement,
|
|
9
9
|
];
|
|
10
10
|
//# sourceMappingURL=methods.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"methods.js","sourceRoot":"","sources":["
|
|
1
|
+
{"version":3,"file":"methods.js","sourceRoot":"","sources":["../../../../../../../../packages/schematic/xml-parser/src/lib/elements/methods/methods.ts"],"names":[],"mappings":";;;AAEA,qDAAiD;AACjD,qFAA8E;AAEjE,QAAA,OAAO,GAAsC;IACxD,8BAAa;IACb,2DAA0B;CAC3B,CAAC"}
|
|
@@ -4,7 +4,7 @@ import { IMethodElement } from './method.element';
|
|
|
4
4
|
export declare class OpenApiRemoteMethodElement implements ParsedElement<string>, IMethodElement {
|
|
5
5
|
name: string;
|
|
6
6
|
mock?: boolean;
|
|
7
|
-
toValue({ sourceFile, options }: {
|
|
7
|
+
toValue({ sourceFile, options, }: {
|
|
8
8
|
sourceFile: SourceFile;
|
|
9
9
|
options: {
|
|
10
10
|
openApiModule?: string;
|
|
@@ -2,35 +2,35 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.OpenApiRemoteMethodElement = void 0;
|
|
4
4
|
const tslib_1 = require("tslib");
|
|
5
|
-
const
|
|
5
|
+
const xml_parser_1 = require("@rxap/xml-parser");
|
|
6
6
|
const core_1 = require("@angular-devkit/core");
|
|
7
7
|
const method_element_1 = require("./method.element");
|
|
8
|
-
const
|
|
9
|
-
|
|
10
|
-
|
|
8
|
+
const schematics_ts_morph_1 = require("@rxap/schematics-ts-morph");
|
|
9
|
+
const { dasherize, classify, camelize, } = core_1.strings;
|
|
10
|
+
let OpenApiRemoteMethodElement = exports.OpenApiRemoteMethodElement = class OpenApiRemoteMethodElement {
|
|
11
|
+
toValue({ sourceFile, options, }) {
|
|
11
12
|
const openApiRemoteMethodName = classify(this.name) + 'RemoteMethod';
|
|
12
13
|
if (!options.openApiModule) {
|
|
13
14
|
throw new Error('The open api module is not defined!');
|
|
14
15
|
}
|
|
15
|
-
|
|
16
|
+
(0, schematics_ts_morph_1.CoerceImports)(sourceFile, {
|
|
16
17
|
namedImports: [openApiRemoteMethodName],
|
|
17
|
-
moduleSpecifier: `${options.openApiModule}/remote-methods/${dasherize(this.name)}.remote-method
|
|
18
|
+
moduleSpecifier: `${options.openApiModule}/remote-methods/${dasherize(this.name)}.remote-method`,
|
|
18
19
|
});
|
|
19
20
|
return openApiRemoteMethodName;
|
|
20
21
|
}
|
|
21
22
|
};
|
|
22
23
|
tslib_1.__decorate([
|
|
23
|
-
(0,
|
|
24
|
-
(0,
|
|
24
|
+
(0, xml_parser_1.ElementTextContent)(),
|
|
25
|
+
(0, xml_parser_1.ElementRequired)(),
|
|
25
26
|
tslib_1.__metadata("design:type", String)
|
|
26
27
|
], OpenApiRemoteMethodElement.prototype, "name", void 0);
|
|
27
28
|
tslib_1.__decorate([
|
|
28
|
-
(0,
|
|
29
|
+
(0, xml_parser_1.ElementAttribute)(),
|
|
29
30
|
tslib_1.__metadata("design:type", Boolean)
|
|
30
31
|
], OpenApiRemoteMethodElement.prototype, "mock", void 0);
|
|
31
|
-
OpenApiRemoteMethodElement = tslib_1.__decorate([
|
|
32
|
-
(0,
|
|
33
|
-
(0,
|
|
32
|
+
exports.OpenApiRemoteMethodElement = OpenApiRemoteMethodElement = tslib_1.__decorate([
|
|
33
|
+
(0, xml_parser_1.ElementExtends)(method_element_1.MethodElement),
|
|
34
|
+
(0, xml_parser_1.ElementDef)('open-api-remote-method')
|
|
34
35
|
], OpenApiRemoteMethodElement);
|
|
35
|
-
exports.OpenApiRemoteMethodElement = OpenApiRemoteMethodElement;
|
|
36
36
|
//# sourceMappingURL=open-api-remote-method.element.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"open-api-remote-method.element.js","sourceRoot":"","sources":["
|
|
1
|
+
{"version":3,"file":"open-api-remote-method.element.js","sourceRoot":"","sources":["../../../../../../../../packages/schematic/xml-parser/src/lib/elements/methods/open-api-remote-method.element.ts"],"names":[],"mappings":";;;;AAAA,iDAO0B;AAE1B,+CAA+C;AAC/C,qDAG0B;AAC1B,mEAA0D;AAE1D,MAAM,EACJ,SAAS,EACT,QAAQ,EACR,QAAQ,GACT,GAAG,cAAO,CAAC;AAIL,IAAM,0BAA0B,wCAAhC,MAAM,0BAA0B;IAS9B,OAAO,CAAC,EACE,UAAU,EACV,OAAO,GACyD;QAE/E,MAAM,uBAAuB,GAAG,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,cAAc,CAAC;QAErE,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE;YAC1B,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;SACxD;QAED,IAAA,mCAAa,EAAC,UAAU,EAAE;YACxB,YAAY,EAAE,CAAE,uBAAuB,CAAE;YACzC,eAAe,EAAE,GAAI,OAAO,CAAC,aAAc,mBAAoB,SAAS,CAAC,IAAI,CAAC,IAAI,CAAE,gBAAgB;SACrG,CAAC,CAAC;QAEH,OAAO,uBAAuB,CAAC;IAEjC,CAAC;CAEF,CAAA;AAzBQ;IAFN,IAAA,+BAAkB,GAAE;IACpB,IAAA,4BAAe,GAAE;;wDACG;AAGd;IADN,IAAA,6BAAgB,GAAE;;wDACG;qCAPX,0BAA0B;IAFtC,IAAA,2BAAc,EAAC,8BAAa,CAAC;IAC7B,IAAA,uBAAU,EAAC,wBAAwB,CAAC;GACxB,0BAA0B,CA6BtC"}
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { ParsedElement } from '@rxap/xml-parser';
|
|
2
2
|
import { Rule } from '@angular-devkit/schematics';
|
|
3
3
|
import { SourceFile } from 'ts-morph';
|
|
4
|
-
import {
|
|
4
|
+
import { HandleComponentModule, ToValueContext } from '@rxap/schematics-ts-morph';
|
|
5
5
|
export declare class ModuleElement implements ParsedElement<Rule>, HandleComponentModule {
|
|
6
6
|
name: string;
|
|
7
7
|
form?: string;
|
|
8
|
-
handleComponentModule({ sourceFile, project, options }: ToValueContext & {
|
|
8
|
+
handleComponentModule({ sourceFile, project, options, }: ToValueContext & {
|
|
9
9
|
sourceFile: SourceFile;
|
|
10
10
|
}): void;
|
|
11
|
-
toValue({ project, options }: ToValueContext): Rule;
|
|
11
|
+
toValue({ project, options, }: ToValueContext): Rule;
|
|
12
12
|
}
|
|
@@ -2,28 +2,27 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.ModuleElement = void 0;
|
|
4
4
|
const tslib_1 = require("tslib");
|
|
5
|
+
const xml_parser_1 = require("@rxap/xml-parser");
|
|
5
6
|
const schematics_1 = require("@angular-devkit/schematics");
|
|
6
|
-
const decorators_1 = require("@rxap/xml-parser/decorators");
|
|
7
7
|
const schematics_ts_morph_1 = require("@rxap/schematics-ts-morph");
|
|
8
|
-
let ModuleElement = class ModuleElement {
|
|
9
|
-
handleComponentModule({ sourceFile, project, options }) {
|
|
8
|
+
let ModuleElement = exports.ModuleElement = class ModuleElement {
|
|
9
|
+
handleComponentModule({ sourceFile, project, options, }) {
|
|
10
10
|
(0, schematics_ts_morph_1.AddNgModuleImport)(sourceFile, this.name, this.form);
|
|
11
11
|
}
|
|
12
|
-
toValue({ project, options }) {
|
|
12
|
+
toValue({ project, options, }) {
|
|
13
13
|
return (0, schematics_1.noop)();
|
|
14
14
|
}
|
|
15
15
|
};
|
|
16
16
|
tslib_1.__decorate([
|
|
17
|
-
(0,
|
|
18
|
-
(0,
|
|
17
|
+
(0, xml_parser_1.ElementChildTextContent)(),
|
|
18
|
+
(0, xml_parser_1.ElementRequired)(),
|
|
19
19
|
tslib_1.__metadata("design:type", String)
|
|
20
20
|
], ModuleElement.prototype, "name", void 0);
|
|
21
21
|
tslib_1.__decorate([
|
|
22
|
-
(0,
|
|
22
|
+
(0, xml_parser_1.ElementChildTextContent)(),
|
|
23
23
|
tslib_1.__metadata("design:type", String)
|
|
24
24
|
], ModuleElement.prototype, "form", void 0);
|
|
25
|
-
ModuleElement = tslib_1.__decorate([
|
|
26
|
-
(0,
|
|
25
|
+
exports.ModuleElement = ModuleElement = tslib_1.__decorate([
|
|
26
|
+
(0, xml_parser_1.ElementDef)('module')
|
|
27
27
|
], ModuleElement);
|
|
28
|
-
exports.ModuleElement = ModuleElement;
|
|
29
28
|
//# sourceMappingURL=module.element.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"module.element.js","sourceRoot":"","sources":["
|
|
1
|
+
{"version":3,"file":"module.element.js","sourceRoot":"","sources":["../../../../../../../packages/schematic/xml-parser/src/lib/elements/module.element.ts"],"names":[],"mappings":";;;;AAAA,iDAK0B;AAC1B,2DAGoC;AAEpC,mEAImC;AAG5B,IAAM,aAAa,2BAAnB,MAAM,aAAa;IASjB,qBAAqB,CAAC,EACE,UAAU,EACV,OAAO,EACP,OAAO,GACqC;QACzE,IAAA,uCAAiB,EAAC,UAAU,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;IACtD,CAAC;IAEM,OAAO,CAAC,EACE,OAAO,EACP,OAAO,GACQ;QAC9B,OAAO,IAAA,iBAAI,GAAE,CAAC;IAChB,CAAC;CAEF,CAAA;AApBQ;IAFN,IAAA,oCAAuB,GAAE;IACzB,IAAA,4BAAe,GAAE;;2CACG;AAGd;IADN,IAAA,oCAAuB,GAAE;;2CACL;wBAPV,aAAa;IADzB,IAAA,uBAAU,EAAC,QAAQ,CAAC;GACR,aAAa,CAwBzB"}
|
|
@@ -2,8 +2,9 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.StringTypeElement = exports.TypeElement = void 0;
|
|
4
4
|
const tslib_1 = require("tslib");
|
|
5
|
-
const
|
|
6
|
-
|
|
5
|
+
const xml_parser_1 = require("@rxap/xml-parser");
|
|
6
|
+
const schematics_ts_morph_1 = require("@rxap/schematics-ts-morph");
|
|
7
|
+
let TypeElement = exports.TypeElement = class TypeElement {
|
|
7
8
|
get type() {
|
|
8
9
|
if (this.nullable) {
|
|
9
10
|
return [this.name, 'null'].join(' | ');
|
|
@@ -12,40 +13,38 @@ let TypeElement = class TypeElement {
|
|
|
12
13
|
}
|
|
13
14
|
toValue({ sourceFile }) {
|
|
14
15
|
if (this.from) {
|
|
15
|
-
|
|
16
|
+
(0, schematics_ts_morph_1.CoerceImports)(sourceFile, {
|
|
16
17
|
namedImports: [this.name],
|
|
17
|
-
moduleSpecifier: this.from
|
|
18
|
+
moduleSpecifier: this.from,
|
|
18
19
|
});
|
|
19
20
|
}
|
|
20
21
|
return this.type;
|
|
21
22
|
}
|
|
22
23
|
};
|
|
23
24
|
tslib_1.__decorate([
|
|
24
|
-
(0,
|
|
25
|
-
(0,
|
|
25
|
+
(0, xml_parser_1.ElementChildTextContent)(),
|
|
26
|
+
(0, xml_parser_1.ElementRequired)(),
|
|
26
27
|
tslib_1.__metadata("design:type", String)
|
|
27
28
|
], TypeElement.prototype, "name", void 0);
|
|
28
29
|
tslib_1.__decorate([
|
|
29
|
-
(0,
|
|
30
|
+
(0, xml_parser_1.ElementChildTextContent)(),
|
|
30
31
|
tslib_1.__metadata("design:type", String)
|
|
31
32
|
], TypeElement.prototype, "from", void 0);
|
|
32
33
|
tslib_1.__decorate([
|
|
33
|
-
(0,
|
|
34
|
+
(0, xml_parser_1.ElementAttribute)(),
|
|
34
35
|
tslib_1.__metadata("design:type", Boolean)
|
|
35
36
|
], TypeElement.prototype, "nullable", void 0);
|
|
36
|
-
TypeElement = tslib_1.__decorate([
|
|
37
|
-
(0,
|
|
37
|
+
exports.TypeElement = TypeElement = tslib_1.__decorate([
|
|
38
|
+
(0, xml_parser_1.ElementDef)('type')
|
|
38
39
|
], TypeElement);
|
|
39
|
-
exports.
|
|
40
|
-
let StringTypeElement = class StringTypeElement extends TypeElement {
|
|
40
|
+
let StringTypeElement = exports.StringTypeElement = class StringTypeElement extends TypeElement {
|
|
41
41
|
constructor() {
|
|
42
42
|
super(...arguments);
|
|
43
43
|
this.name = 'string';
|
|
44
44
|
}
|
|
45
45
|
};
|
|
46
|
-
StringTypeElement = tslib_1.__decorate([
|
|
47
|
-
(0,
|
|
48
|
-
(0,
|
|
46
|
+
exports.StringTypeElement = StringTypeElement = tslib_1.__decorate([
|
|
47
|
+
(0, xml_parser_1.ElementExtends)(TypeElement),
|
|
48
|
+
(0, xml_parser_1.ElementDef)('string-type')
|
|
49
49
|
], StringTypeElement);
|
|
50
|
-
exports.StringTypeElement = StringTypeElement;
|
|
51
50
|
//# sourceMappingURL=type.element.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"type.element.js","sourceRoot":"","sources":["
|
|
1
|
+
{"version":3,"file":"type.element.js","sourceRoot":"","sources":["../../../../../../../packages/schematic/xml-parser/src/lib/elements/type.element.ts"],"names":[],"mappings":";;;;AAAA,iDAO0B;AAE1B,mEAA0D;AAGnD,IAAM,WAAW,yBAAjB,MAAM,WAAW;IAYtB,IAAW,IAAI;QACb,IAAI,IAAI,CAAC,QAAQ,EAAE;YACjB,OAAO,CAAE,IAAI,CAAC,IAAI,EAAE,MAAM,CAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SAC1C;QACD,OAAO,IAAI,CAAC,IAAI,CAAC;IACnB,CAAC;IAEM,OAAO,CAAC,EAAE,UAAU,EAA8B;QACvD,IAAI,IAAI,CAAC,IAAI,EAAE;YACb,IAAA,mCAAa,EAAC,UAAU,EAAE;gBACxB,YAAY,EAAE,CAAE,IAAI,CAAC,IAAI,CAAE;gBAC3B,eAAe,EAAE,IAAI,CAAC,IAAI;aAC3B,CAAC,CAAC;SACJ;QACD,OAAO,IAAI,CAAC,IAAI,CAAC;IACnB,CAAC;CAEF,CAAA;AAzBQ;IAFN,IAAA,oCAAuB,GAAE;IACzB,IAAA,4BAAe,GAAE;;yCACG;AAGd;IADN,IAAA,oCAAuB,GAAE;;yCACL;AAGd;IADN,IAAA,6BAAgB,GAAE;;6CACO;sBAVf,WAAW;IADvB,IAAA,uBAAU,EAAC,MAAM,CAAC;GACN,WAAW,CA6BvB;AAIM,IAAM,iBAAiB,+BAAvB,MAAM,iBAAkB,SAAQ,WAAW;IAA3C;;QAEW,SAAI,GAAG,QAAQ,CAAC;IAElC,CAAC;CAAA,CAAA;4BAJY,iBAAiB;IAF7B,IAAA,2BAAc,EAAC,WAAW,CAAC;IAC3B,IAAA,uBAAU,EAAC,aAAa,CAAC;GACb,iBAAiB,CAI7B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './parse-template';
|
package/src/lib/index.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../packages/schematic/xml-parser/src/lib/index.ts"],"names":[],"mappings":";;;AAAA,2DAAiC"}
|
|
@@ -91,7 +91,7 @@ function ParseTemplate(host, template, basePath, ...elements) {
|
|
|
91
91
|
else {
|
|
92
92
|
console.log(`Find template file path '${templateFilePath}' for '${template}'`);
|
|
93
93
|
}
|
|
94
|
-
const filenameMatch = templateFilePath.match(/\/([
|
|
94
|
+
const filenameMatch = templateFilePath.match(/\/([^/]+)\.xml$/);
|
|
95
95
|
if (filenameMatch && filenameMatch[1]) {
|
|
96
96
|
filename = filenameMatch[1];
|
|
97
97
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parse-template.js","sourceRoot":"","sources":["
|
|
1
|
+
{"version":3,"file":"parse-template.js","sourceRoot":"","sources":["../../../../../../packages/schematic/xml-parser/src/lib/parse-template.ts"],"names":[],"mappings":"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"}
|