@rxap/schematics-ts-morph 16.1.0-dev.8 → 16.1.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/CHANGELOG.md +124 -0
- package/README.md +1 -1
- package/package.json +22 -18
- package/src/index.d.ts +7 -1
- package/src/index.js +7 -1
- package/src/index.js.map +1 -1
- package/src/lib/angular/coerce-component.d.ts +3 -1
- package/src/lib/angular/coerce-component.js +13 -6
- package/src/lib/angular/coerce-component.js.map +1 -1
- package/src/lib/angular/coerce-form-definition-array.d.ts +14 -0
- package/src/lib/angular/coerce-form-definition-array.js +87 -0
- package/src/lib/angular/coerce-form-definition-array.js.map +1 -0
- package/src/lib/angular/coerce-form-definition-control.d.ts +9 -12
- package/src/lib/angular/coerce-form-definition-control.js +68 -124
- package/src/lib/angular/coerce-form-definition-control.js.map +1 -1
- package/src/lib/angular/coerce-form-definition-form-control.d.ts +11 -0
- package/src/lib/angular/coerce-form-definition-form-control.js +66 -0
- package/src/lib/angular/coerce-form-definition-form-control.js.map +1 -0
- package/src/lib/angular/coerce-form-definition-group.d.ts +14 -0
- package/src/lib/angular/coerce-form-definition-group.js +80 -0
- package/src/lib/angular/coerce-form-definition-group.js.map +1 -0
- package/src/lib/angular/coerce-form-definition-type.d.ts +2 -2
- package/src/lib/angular/coerce-form-definition-type.js +16 -2
- package/src/lib/angular/coerce-form-definition-type.js.map +1 -1
- package/src/lib/angular/coerce-form-definition.d.ts +4 -4
- package/src/lib/angular/coerce-form-definition.js +20 -9
- package/src/lib/angular/coerce-form-definition.js.map +1 -1
- package/src/lib/angular/coerce-options-data-source.d.ts +3 -1
- package/src/lib/angular/coerce-options-data-source.js +35 -6
- package/src/lib/angular/coerce-options-data-source.js.map +1 -1
- package/src/lib/angular/coerce-pipe.d.ts +10 -0
- package/src/lib/angular/coerce-pipe.js +63 -0
- package/src/lib/angular/coerce-pipe.js.map +1 -0
- package/src/lib/angular/coerce-proxy-remote-method-class.d.ts +2 -0
- package/src/lib/angular/coerce-proxy-remote-method-class.js +41 -19
- package/src/lib/angular/coerce-proxy-remote-method-class.js.map +1 -1
- package/src/lib/angular/coerce-tree-table-root-proxy-remote-method-class.d.ts +1 -0
- package/src/lib/angular/coerce-tree-table-root-proxy-remote-method-class.js +10 -3
- package/src/lib/angular/coerce-tree-table-root-proxy-remote-method-class.js.map +1 -1
- package/src/lib/angular/form-definition-utilities.d.ts +1 -0
- package/src/lib/angular/form-definition-utilities.js +7 -3
- package/src/lib/angular/form-definition-utilities.js.map +1 -1
- package/src/lib/nest/add-operation-to-controller.d.ts +2 -0
- package/src/lib/nest/add-operation-to-controller.js +9 -2
- package/src/lib/nest/add-operation-to-controller.js.map +1 -1
- package/src/lib/nest/assert-nest-project.d.ts +1 -0
- package/src/lib/nest/assert-nest-project.js +7 -3
- package/src/lib/nest/assert-nest-project.js.map +1 -1
- package/src/lib/nest/coerce-autocomplete-options-operation.d.ts +12 -0
- package/src/lib/nest/coerce-autocomplete-options-operation.js +65 -0
- package/src/lib/nest/coerce-autocomplete-options-operation.js.map +1 -0
- package/src/lib/nest/coerce-autocomplete-table-select-value-resolve-operation.d.ts +7 -0
- package/src/lib/nest/coerce-autocomplete-table-select-value-resolve-operation.js +16 -0
- package/src/lib/nest/coerce-autocomplete-table-select-value-resolve-operation.js.map +1 -0
- package/src/lib/nest/coerce-dto-class.js +169 -125
- package/src/lib/nest/coerce-dto-class.js.map +1 -1
- package/src/lib/nest/coerce-form-submit-operation.js +4 -3
- package/src/lib/nest/coerce-form-submit-operation.js.map +1 -1
- package/src/lib/nest/coerce-get-by-id-operation.js +28 -10
- package/src/lib/nest/coerce-get-by-id-operation.js.map +1 -1
- package/src/lib/nest/coerce-get-page-operation.d.ts +4 -3
- package/src/lib/nest/coerce-get-page-operation.js +90 -33
- package/src/lib/nest/coerce-get-page-operation.js.map +1 -1
- package/src/lib/nest/coerce-get-root-operation.d.ts +4 -0
- package/src/lib/nest/coerce-get-root-operation.js +14 -4
- package/src/lib/nest/coerce-get-root-operation.js.map +1 -1
- package/src/lib/nest/coerce-operation.d.ts +6 -3
- package/src/lib/nest/coerce-operation.js +14 -5
- package/src/lib/nest/coerce-operation.js.map +1 -1
- package/src/lib/nest/coerce-options-operation.d.ts +6 -3
- package/src/lib/nest/coerce-options-operation.js +59 -5
- package/src/lib/nest/coerce-options-operation.js.map +1 -1
- package/src/lib/nest/coerce-row-dto-class.d.ts +2 -1
- package/src/lib/nest/coerce-row-dto-class.js +2 -2
- package/src/lib/nest/coerce-row-dto-class.js.map +1 -1
- package/src/lib/nest/coerce-table-select-operation.d.ts +3 -2
- package/src/lib/nest/coerce-table-select-operation.js +10 -15
- package/src/lib/nest/coerce-table-select-operation.js.map +1 -1
- package/src/lib/nest/coerce-table-select-value-resolve-operation.d.ts +5 -3
- package/src/lib/nest/coerce-table-select-value-resolve-operation.js +17 -15
- package/src/lib/nest/coerce-table-select-value-resolve-operation.js.map +1 -1
- package/src/lib/nest/coerce-tree-operation.js +2 -1
- package/src/lib/nest/coerce-tree-operation.js.map +1 -1
- package/src/lib/nest/dto-class-property.d.ts +2 -10
- package/src/lib/nest/dto-class-property.js +8 -4
- package/src/lib/nest/dto-class-property.js.map +1 -1
- package/src/lib/ts-morph/coerce-imports.js +1 -1
- package/src/lib/ts-morph/coerce-imports.js.map +1 -1
- package/src/lib/ts-morph/write-type.js +1 -1
- package/src/lib/ts-morph/write-type.js.map +1 -1
- package/src/lib/types/abstract-control.d.ts +8 -0
- package/src/lib/types/{form-definition-control.js → abstract-control.js} +1 -1
- package/src/lib/types/abstract-control.js.map +1 -0
- package/src/lib/types/form-definition-control.d.ts +0 -10
- package/src/lib/types/form-definition-control.js.map +0 -1
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.CoerceOptionsDataSourceRule = void 0;
|
|
4
|
-
const coerce_data_source_class_1 = require("./coerce-data-source-class");
|
|
5
|
-
const coerce_imports_1 = require("../ts-morph/coerce-imports");
|
|
6
|
-
const coerce_decorator_1 = require("../ts-morph/coerce-decorator");
|
|
7
|
-
const ts_morph_1 = require("ts-morph");
|
|
8
4
|
const schematics_utilities_1 = require("@rxap/schematics-utilities");
|
|
5
|
+
const ts_morph_1 = require("ts-morph");
|
|
6
|
+
const coerce_decorator_1 = require("../ts-morph/coerce-decorator");
|
|
7
|
+
const coerce_imports_1 = require("../ts-morph/coerce-imports");
|
|
8
|
+
const coerce_data_source_class_1 = require("./coerce-data-source-class");
|
|
9
9
|
function CoerceOptionsDataSourceRule(options) {
|
|
10
|
-
const { name, project, feature, directory, shared, } = options;
|
|
10
|
+
const { name, project, feature, directory, shared, optionList, } = options;
|
|
11
11
|
return (0, coerce_data_source_class_1.CoerceDataSourceClass)({
|
|
12
12
|
project,
|
|
13
13
|
feature,
|
|
@@ -32,7 +32,36 @@ function CoerceOptionsDataSourceRule(options) {
|
|
|
32
32
|
arguments: [
|
|
33
33
|
ts_morph_1.Writers.object({
|
|
34
34
|
id: w => w.quote((0, schematics_utilities_1.dasherize)(name)),
|
|
35
|
-
data:
|
|
35
|
+
data: w => {
|
|
36
|
+
w.write('[');
|
|
37
|
+
for (const option of optionList) {
|
|
38
|
+
const obj = {};
|
|
39
|
+
obj['value'] = option.value;
|
|
40
|
+
obj['display'] = w => w.quote(option.display);
|
|
41
|
+
if (typeof option.disabled === 'boolean') {
|
|
42
|
+
obj['disabled'] = option.disabled ? 'true' : 'false';
|
|
43
|
+
}
|
|
44
|
+
if (option.color) {
|
|
45
|
+
obj['color'] = w => w.quote(option.color);
|
|
46
|
+
}
|
|
47
|
+
if (typeof option.default === 'boolean') {
|
|
48
|
+
obj['default'] = option.default ? 'true' : 'false';
|
|
49
|
+
}
|
|
50
|
+
if (option.i18n) {
|
|
51
|
+
obj['i18n'] = w => w.quote(option.i18n);
|
|
52
|
+
}
|
|
53
|
+
ts_morph_1.Writers.object(obj)(w);
|
|
54
|
+
w.write(',');
|
|
55
|
+
}
|
|
56
|
+
w.write(']');
|
|
57
|
+
if (!optionList.length) {
|
|
58
|
+
w.write(' as ControlOptions');
|
|
59
|
+
(0, coerce_imports_1.CoerceImports)(sourceFile, {
|
|
60
|
+
namedImports: ['ControlOptions'],
|
|
61
|
+
moduleSpecifier: '@rxap/utilities',
|
|
62
|
+
});
|
|
63
|
+
}
|
|
64
|
+
},
|
|
36
65
|
}),
|
|
37
66
|
],
|
|
38
67
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"coerce-options-data-source.js","sourceRoot":"","sources":["../../../../../../../packages/schematic/ts-morph/src/lib/angular/coerce-options-data-source.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"coerce-options-data-source.js","sourceRoot":"","sources":["../../../../../../../packages/schematic/ts-morph/src/lib/angular/coerce-options-data-source.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { TsMorphAngularProjectTransformOptions } from '@rxap/workspace-ts-morph';
|
|
2
|
+
import { ClassDeclaration, Project, SourceFile } from 'ts-morph';
|
|
3
|
+
export interface CoercePipeOptions extends TsMorphAngularProjectTransformOptions {
|
|
4
|
+
name: string;
|
|
5
|
+
shared?: boolean;
|
|
6
|
+
valueType?: string;
|
|
7
|
+
pure?: boolean;
|
|
8
|
+
tsMorphTransform?: (project: Project, sourceFile: SourceFile, classDeclaration: ClassDeclaration) => void;
|
|
9
|
+
}
|
|
10
|
+
export declare function CoercePipe(options: CoercePipeOptions): import("@angular-devkit/schematics").Rule;
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.CoercePipe = void 0;
|
|
4
|
+
const ts_morph_1 = require("@rxap/ts-morph");
|
|
5
|
+
const utilities_1 = require("@rxap/utilities");
|
|
6
|
+
const ts_morph_2 = require("ts-morph");
|
|
7
|
+
const ts_morph_transform_1 = require("../ts-morph-transform");
|
|
8
|
+
function CoercePipe(options) {
|
|
9
|
+
const { name,
|
|
10
|
+
// eslint-disable-next-line @typescript-eslint/no-empty-function
|
|
11
|
+
tsMorphTransform = () => {
|
|
12
|
+
}, pure, valueType = 'any', } = options;
|
|
13
|
+
const className = (0, utilities_1.classify)((0, utilities_1.CoerceSuffix)(name, 'Pipe'));
|
|
14
|
+
const moduleClassName = (0, utilities_1.classify)((0, utilities_1.CoerceSuffix)(name, 'PipeModule'));
|
|
15
|
+
const fileName = (0, utilities_1.CoerceSuffix)(name, '.pipe.ts');
|
|
16
|
+
return (0, ts_morph_transform_1.TsMorphAngularProjectTransformRule)(options, (project) => {
|
|
17
|
+
const sourceFile = (0, ts_morph_1.CoerceSourceFile)(project, fileName);
|
|
18
|
+
const classDeclaration = (0, ts_morph_1.CoerceClass)(sourceFile, className, {
|
|
19
|
+
isExported: true,
|
|
20
|
+
decorators: [
|
|
21
|
+
{
|
|
22
|
+
name: 'Pipe',
|
|
23
|
+
arguments: [ts_morph_2.Writers.object({
|
|
24
|
+
name: w => w.quote((0, utilities_1.camelize)(name)),
|
|
25
|
+
pure: pure ? 'true' : 'false',
|
|
26
|
+
standalone: 'true',
|
|
27
|
+
})],
|
|
28
|
+
},
|
|
29
|
+
],
|
|
30
|
+
implements: ['PipeTransform'],
|
|
31
|
+
methods: [
|
|
32
|
+
{
|
|
33
|
+
name: 'transform',
|
|
34
|
+
parameters: [{ name: 'value', type: valueType }],
|
|
35
|
+
statements: [
|
|
36
|
+
'return value;',
|
|
37
|
+
],
|
|
38
|
+
},
|
|
39
|
+
],
|
|
40
|
+
});
|
|
41
|
+
(0, ts_morph_1.CoerceClass)(sourceFile, moduleClassName, {
|
|
42
|
+
isExported: true,
|
|
43
|
+
decorators: [
|
|
44
|
+
{
|
|
45
|
+
name: 'NgModule',
|
|
46
|
+
arguments: [
|
|
47
|
+
ts_morph_2.Writers.object({
|
|
48
|
+
imports: `[${className}]`,
|
|
49
|
+
exports: `[${className}]`,
|
|
50
|
+
}),
|
|
51
|
+
],
|
|
52
|
+
},
|
|
53
|
+
],
|
|
54
|
+
});
|
|
55
|
+
(0, ts_morph_1.CoerceImports)(sourceFile, {
|
|
56
|
+
moduleSpecifier: '@angular/core',
|
|
57
|
+
namedImports: ['NgModule', 'Pipe', 'PipeTransform'],
|
|
58
|
+
});
|
|
59
|
+
tsMorphTransform(project, sourceFile, classDeclaration);
|
|
60
|
+
});
|
|
61
|
+
}
|
|
62
|
+
exports.CoercePipe = CoercePipe;
|
|
63
|
+
//# sourceMappingURL=coerce-pipe.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"coerce-pipe.js","sourceRoot":"","sources":["../../../../../../../packages/schematic/ts-morph/src/lib/angular/coerce-pipe.ts"],"names":[],"mappings":";;;AAAA,6CAIwB;AACxB,+CAIyB;AAEzB,uCAKkB;AAClB,8DAA2E;AAU3E,SAAgB,UAAU,CAAC,OAA0B;IAEnD,MAAM,EACE,IAAI;IACJ,gEAAgE;IAChE,gBAAgB,GAAG,GAAG,EAAE;IACxB,CAAC,EACD,IAAI,EACJ,SAAS,GAAU,KAAK,GACzB,GAAiB,OAAO,CAAC;IAChC,MAAM,SAAS,GAAS,IAAA,oBAAQ,EAAC,IAAA,wBAAY,EAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC;IAC7D,MAAM,eAAe,GAAG,IAAA,oBAAQ,EAAC,IAAA,wBAAY,EAAC,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC;IACnE,MAAM,QAAQ,GAAU,IAAA,wBAAY,EAAC,IAAI,EAAE,UAAU,CAAC,CAAC;IACvD,OAAO,IAAA,uDAAkC,EAAC,OAAO,EAAE,CAAC,OAAO,EAAE,EAAE;QAE7D,MAAM,UAAU,GAAG,IAAA,2BAAgB,EAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;QAEvD,MAAM,gBAAgB,GAAG,IAAA,sBAAW,EAAC,UAAU,EAAE,SAAS,EAAE;YAC1D,UAAU,EAAE,IAAI;YAChB,UAAU,EAAE;gBACV;oBACE,IAAI,EAAE,MAAM;oBACZ,SAAS,EAAE,CAAE,kBAAO,CAAC,MAAM,CAAC;4BAC1B,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAA,oBAAQ,EAAC,IAAI,CAAC,CAAC;4BAClC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO;4BAC7B,UAAU,EAAE,MAAM;yBACnB,CAAC,CAAE;iBACL;aACF;YACD,UAAU,EAAE,CAAE,eAAe,CAAE;YAC/B,OAAO,EAAE;gBACP;oBACE,IAAI,EAAE,WAAW;oBACjB,UAAU,EAAE,CAAE,EAAC,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAC,CAAE;oBAChD,UAAU,EAAE;wBACV,eAAe;qBAChB;iBACF;aACF;SACF,CAAC,CAAC;QAEH,IAAA,sBAAW,EAAC,UAAU,EAAE,eAAe,EAAE;YACvC,UAAU,EAAE,IAAI;YAChB,UAAU,EAAE;gBACV;oBACE,IAAI,EAAE,UAAU;oBAChB,SAAS,EAAE;wBACT,kBAAO,CAAC,MAAM,CAAC;4BACb,OAAO,EAAE,IAAK,SAAU,GAAG;4BAC3B,OAAO,EAAE,IAAK,SAAU,GAAG;yBAC5B,CAAC;qBACH;iBACF;aACF;SACF,CAAC,CAAC;QACH,IAAA,wBAAa,EAAC,UAAU,EAAE;YACxB,eAAe,EAAE,eAAe;YAChC,YAAY,EAAE,CAAE,UAAU,EAAE,MAAM,EAAE,eAAe,CAAE;SACtD,CAAC,CAAC;QACH,gBAAgB,CAAC,OAAO,EAAE,UAAU,EAAE,gBAAgB,CAAC,CAAC;IAG1D,CAAC,CAAC,CAAC;AACL,CAAC;AA/DD,gCA+DC"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { NormalizedIdentifierOptions } from '@rxap/ts-morph';
|
|
1
2
|
import { TsMorphAngularProjectTransformOptions } from '@rxap/workspace-ts-morph';
|
|
2
3
|
import { ClassDeclaration, MethodDeclarationStructure, Project, SourceFile, WriterFunction } from 'ts-morph';
|
|
3
4
|
export interface CoerceProxyRemoteMethodClassOptions extends TsMorphAngularProjectTransformOptions {
|
|
@@ -7,5 +8,6 @@ export interface CoerceProxyRemoteMethodClassOptions extends TsMorphAngularProje
|
|
|
7
8
|
sourceType: string | WriterFunction;
|
|
8
9
|
targetType: string | WriterFunction;
|
|
9
10
|
proxyMethod: string | WriterFunction;
|
|
11
|
+
identifier?: NormalizedIdentifierOptions | null;
|
|
10
12
|
}
|
|
11
13
|
export declare function CoerceProxyRemoteMethodClass(options: CoerceProxyRemoteMethodClassOptions): import("@angular-devkit/schematics").Rule;
|
|
@@ -4,9 +4,10 @@ exports.CoerceProxyRemoteMethodClass = void 0;
|
|
|
4
4
|
const schematics_utilities_1 = require("@rxap/schematics-utilities");
|
|
5
5
|
const ts_morph_1 = require("@rxap/ts-morph");
|
|
6
6
|
const utilities_1 = require("@rxap/utilities");
|
|
7
|
+
const ts_morph_2 = require("ts-morph");
|
|
7
8
|
const ts_morph_transform_1 = require("../ts-morph-transform");
|
|
8
9
|
function CoerceProxyRemoteMethodClass(options) {
|
|
9
|
-
const { override, name, tsMorphTransform = utilities_1.noop, sourceType, targetType, proxyMethod, } = options;
|
|
10
|
+
const { override, name, tsMorphTransform = utilities_1.noop, sourceType, targetType, proxyMethod, identifier, } = options;
|
|
10
11
|
const className = (0, schematics_utilities_1.classify)((0, schematics_utilities_1.CoerceSuffix)(name, 'ProxyMethod'));
|
|
11
12
|
const fileName = (0, schematics_utilities_1.CoerceSuffix)(name, '-proxy.method.ts');
|
|
12
13
|
return (0, ts_morph_transform_1.TsMorphAngularProjectTransformRule)(options, (project) => {
|
|
@@ -41,23 +42,23 @@ function CoerceProxyRemoteMethodClass(options) {
|
|
|
41
42
|
statements: ['super(method);'],
|
|
42
43
|
},
|
|
43
44
|
],
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
45
|
+
});
|
|
46
|
+
classDeclaration.setExtends(w => {
|
|
47
|
+
w.write('ProxyRemoteMethod<');
|
|
48
|
+
if (typeof sourceType === 'string') {
|
|
49
|
+
w.write(sourceType);
|
|
50
|
+
}
|
|
51
|
+
else {
|
|
52
|
+
sourceType(w);
|
|
53
|
+
}
|
|
54
|
+
w.write(', ');
|
|
55
|
+
if (typeof targetType === 'string') {
|
|
56
|
+
w.write(targetType);
|
|
57
|
+
}
|
|
58
|
+
else {
|
|
59
|
+
targetType(w);
|
|
60
|
+
}
|
|
61
|
+
w.write('>');
|
|
61
62
|
});
|
|
62
63
|
(0, ts_morph_1.CoerceImports)(sourceFile, {
|
|
63
64
|
moduleSpecifier: '@rxap/pattern',
|
|
@@ -78,7 +79,28 @@ function CoerceProxyRemoteMethodClass(options) {
|
|
|
78
79
|
type: sourceType,
|
|
79
80
|
},
|
|
80
81
|
]);
|
|
81
|
-
(
|
|
82
|
+
if ((identifier === null || identifier === void 0 ? void 0 : identifier.source) === 'route' && !methodStructure.statements) {
|
|
83
|
+
(0, ts_morph_1.CoerceClassProperty)(classDeclaration, 'route', {
|
|
84
|
+
scope: ts_morph_2.Scope.Protected,
|
|
85
|
+
initializer: 'inject(ActivatedRoute)',
|
|
86
|
+
isReadonly: true,
|
|
87
|
+
});
|
|
88
|
+
(0, ts_morph_1.CoerceImports)(sourceFile, {
|
|
89
|
+
moduleSpecifier: '@angular/router',
|
|
90
|
+
namedImports: ['ActivatedRoute'],
|
|
91
|
+
});
|
|
92
|
+
(0, ts_morph_1.CoerceImports)(sourceFile, {
|
|
93
|
+
moduleSpecifier: '@angular/core',
|
|
94
|
+
namedImports: ['inject'],
|
|
95
|
+
});
|
|
96
|
+
methodStructure.statements = [
|
|
97
|
+
`const { ${identifier.property.name} } = this.route.snapshot.params;`,
|
|
98
|
+
`return { parameters: { ${identifier.property.name} } };`,
|
|
99
|
+
];
|
|
100
|
+
}
|
|
101
|
+
else {
|
|
102
|
+
(_c = methodStructure.statements) !== null && _c !== void 0 ? _c : (methodStructure.statements = ['return source as any;']);
|
|
103
|
+
}
|
|
82
104
|
(_d = methodStructure.returnType) !== null && _d !== void 0 ? _d : (methodStructure.returnType = w => {
|
|
83
105
|
w.write('Promise<');
|
|
84
106
|
if (typeof targetType ===
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"coerce-proxy-remote-method-class.js","sourceRoot":"","sources":["../../../../../../../packages/schematic/ts-morph/src/lib/angular/coerce-proxy-remote-method-class.ts"],"names":[],"mappings":";;;AAAA,qEAGoC;AACpC,
|
|
1
|
+
{"version":3,"file":"coerce-proxy-remote-method-class.js","sourceRoot":"","sources":["../../../../../../../packages/schematic/ts-morph/src/lib/angular/coerce-proxy-remote-method-class.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,5 +2,6 @@ import { CoerceProxyRemoteMethodClassOptions } from './coerce-proxy-remote-metho
|
|
|
2
2
|
export interface CoerceTreeTableRootProxyRemoteMethodClassOptions extends Omit<Omit<Omit<Omit<CoerceProxyRemoteMethodClassOptions, 'name'>, 'sourceType'>, 'targetType'>, 'proxyMethod'> {
|
|
3
3
|
getRootOperationId: string;
|
|
4
4
|
scope?: string | null;
|
|
5
|
+
hasParameter?: boolean;
|
|
5
6
|
}
|
|
6
7
|
export declare function CoerceTreeTableRootProxyRemoteMethodClass(options: CoerceTreeTableRootProxyRemoteMethodClassOptions): import("@angular-devkit/schematics").Rule;
|
|
@@ -1,13 +1,20 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.CoerceTreeTableRootProxyRemoteMethodClass = void 0;
|
|
4
|
+
const ts_morph_1 = require("@rxap/ts-morph");
|
|
5
|
+
const utilities_1 = require("@rxap/utilities");
|
|
4
6
|
const operation_id_utilities_1 = require("../nest/operation-id-utilities");
|
|
5
7
|
const coerce_imports_1 = require("../ts-morph/coerce-imports");
|
|
6
8
|
const coerce_proxy_remote_method_class_1 = require("./coerce-proxy-remote-method-class");
|
|
7
9
|
function CoerceTreeTableRootProxyRemoteMethodClass(options) {
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
10
|
+
const { tsMorphTransform = utilities_1.noop, getRootOperationId, scope, identifier } = options;
|
|
11
|
+
return (0, coerce_proxy_remote_method_class_1.CoerceProxyRemoteMethodClass)(Object.assign(Object.assign({}, options), { name: 'tree-table-root', sourceType: 'Node<unknown>', targetType: `OpenApiRemoteMethodParameter<${identifier ? (0, operation_id_utilities_1.OperationIdToParameterClassName)(getRootOperationId) : 'void'}>`, proxyMethod: (0, operation_id_utilities_1.OperationIdToClassName)(getRootOperationId), tsMorphTransform: (project, sourceFile, classDeclaration) => {
|
|
12
|
+
if (identifier) {
|
|
13
|
+
(0, coerce_imports_1.CoerceImports)(sourceFile, {
|
|
14
|
+
namedImports: [(0, operation_id_utilities_1.OperationIdToParameterClassName)(getRootOperationId)],
|
|
15
|
+
moduleSpecifier: (0, ts_morph_1.OperationIdToParameterClassImportPath)(getRootOperationId, scope),
|
|
16
|
+
});
|
|
17
|
+
}
|
|
11
18
|
(0, coerce_imports_1.CoerceImports)(sourceFile, {
|
|
12
19
|
namedImports: [(0, operation_id_utilities_1.OperationIdToClassName)(getRootOperationId)],
|
|
13
20
|
moduleSpecifier: (0, operation_id_utilities_1.OperationIdToClassImportPath)(getRootOperationId, scope),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"coerce-tree-table-root-proxy-remote-method-class.js","sourceRoot":"","sources":["../../../../../../../packages/schematic/ts-morph/src/lib/angular/coerce-tree-table-root-proxy-remote-method-class.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"coerce-tree-table-root-proxy-remote-method-class.js","sourceRoot":"","sources":["../../../../../../../packages/schematic/ts-morph/src/lib/angular/coerce-tree-table-root-proxy-remote-method-class.ts"],"names":[],"mappings":";;;AAAA,6CAAuE;AACvE,+CAAuC;AAMvC,2EAIwC;AACxC,+DAA2D;AAC3D,yFAG4C;AAS5C,SAAgB,yCAAyC,CAAC,OAAyD;IACjH,MAAM,EACJ,gBAAgB,GAAG,gBAAI,EACvB,kBAAkB,EAClB,KAAK,EACL,UAAU,EACX,GAAG,OAAO,CAAC;IACZ,OAAO,IAAA,+DAA4B,kCAC9B,OAAO,KACV,IAAI,EAAE,iBAAiB,EACvB,UAAU,EAAE,eAAe,EAC3B,UAAU,EAAE,gCAAiC,UAAU,CAAC,CAAC,CAAC,IAAA,wDAA+B,EAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,MAAO,GAAG,EAC1H,WAAW,EAAE,IAAA,+CAAsB,EAAC,kBAAkB,CAAC,EACvD,gBAAgB,EAAE,CAAC,OAAgB,EAAE,UAAsB,EAAE,gBAAkC,EAAE,EAAE;YACjG,IAAI,UAAU,EAAE;gBACd,IAAA,8BAAa,EAAC,UAAU,EAAE;oBACxB,YAAY,EAAE,CAAE,IAAA,wDAA+B,EAAC,kBAAkB,CAAC,CAAE;oBACrE,eAAe,EAAE,IAAA,gDAAqC,EAAC,kBAAkB,EAAE,KAAK,CAAC;iBAClF,CAAC,CAAC;aACJ;YACD,IAAA,8BAAa,EAAC,UAAU,EAAE;gBACxB,YAAY,EAAE,CAAE,IAAA,+CAAsB,EAAC,kBAAkB,CAAC,CAAE;gBAC5D,eAAe,EAAE,IAAA,qDAA4B,EAAC,kBAAkB,EAAE,KAAK,CAAC;aACzE,CAAC,CAAC;YACH,IAAA,8BAAa,EAAC,UAAU,EAAE;gBACxB,YAAY,EAAE,CAAE,MAAM,CAAE;gBACxB,eAAe,EAAE,2BAA2B;aAC7C,CAAC,CAAC;YACH,IAAA,8BAAa,EAAC,UAAU,EAAE;gBACxB,YAAY,EAAE,CAAE,8BAA8B,CAAE;gBAChD,eAAe,EAAE,8BAA8B;aAChD,CAAC,CAAC;YACH,OAAO,gBAAiB,CAAC,OAAO,EAAE,UAAU,EAAE,gBAAgB,CAAC,CAAC;QAClE,CAAC,IACD,CAAC;AACL,CAAC;AAnCD,8FAmCC"}
|
|
@@ -9,5 +9,6 @@ export type CoerceFormDefinitionClassOptions = GetFormDefinitionClassNameOptions
|
|
|
9
9
|
export declare function CoerceFormDefinitionClass(sourceFile: SourceFile, options: CoerceFormDefinitionClassOptions): import("ts-morph").ClassDeclaration;
|
|
10
10
|
export type GetFormDefinitionFileNameOptions = GetFormDefinitionClassNameOptions;
|
|
11
11
|
export declare function GetFormDefinitionFileName({ name }: GetFormDefinitionFileNameOptions): string;
|
|
12
|
+
export declare function GetFormDefinitionFileImportPath(options: GetFormDefinitionFileNameOptions): string;
|
|
12
13
|
export type GetFormDefinitionFilePathOptions = GetFormDefinitionFileNameOptions;
|
|
13
14
|
export declare function GetFormDefinitionFilePath(options: GetFormDefinitionFileNameOptions): string;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.GetFormDefinitionFilePath = exports.GetFormDefinitionFileName = exports.CoerceFormDefinitionClass = exports.GetFormDefinitionInterfaceName = exports.GetFormDefinitionClassName = void 0;
|
|
3
|
+
exports.GetFormDefinitionFilePath = exports.GetFormDefinitionFileImportPath = exports.GetFormDefinitionFileName = exports.CoerceFormDefinitionClass = exports.GetFormDefinitionInterfaceName = exports.GetFormDefinitionClassName = void 0;
|
|
4
4
|
const schematics_utilities_1 = require("@rxap/schematics-utilities");
|
|
5
|
-
const
|
|
5
|
+
const ts_morph_1 = require("@rxap/ts-morph");
|
|
6
6
|
const utilities_1 = require("@rxap/utilities");
|
|
7
7
|
function GetFormDefinitionClassName({ name }) {
|
|
8
8
|
return (0, schematics_utilities_1.CoerceSuffix)((0, schematics_utilities_1.classify)(name), 'Form');
|
|
@@ -15,13 +15,17 @@ function GetFormDefinitionInterfaceName(options) {
|
|
|
15
15
|
exports.GetFormDefinitionInterfaceName = GetFormDefinitionInterfaceName;
|
|
16
16
|
function CoerceFormDefinitionClass(sourceFile, options) {
|
|
17
17
|
const className = GetFormDefinitionClassName(options);
|
|
18
|
-
return (0,
|
|
18
|
+
return (0, ts_morph_1.CoerceClass)(sourceFile, className, { isExported: true });
|
|
19
19
|
}
|
|
20
20
|
exports.CoerceFormDefinitionClass = CoerceFormDefinitionClass;
|
|
21
21
|
function GetFormDefinitionFileName({ name }) {
|
|
22
22
|
return (0, schematics_utilities_1.CoerceSuffix)((0, utilities_1.dasherize)(name), '.form.ts');
|
|
23
23
|
}
|
|
24
24
|
exports.GetFormDefinitionFileName = GetFormDefinitionFileName;
|
|
25
|
+
function GetFormDefinitionFileImportPath(options) {
|
|
26
|
+
return './' + GetFormDefinitionFileName(options).replace(/\.ts$/, '');
|
|
27
|
+
}
|
|
28
|
+
exports.GetFormDefinitionFileImportPath = GetFormDefinitionFileImportPath;
|
|
25
29
|
function GetFormDefinitionFilePath(options) {
|
|
26
30
|
return '/' + GetFormDefinitionFileName(options) + '?';
|
|
27
31
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"form-definition-utilities.js","sourceRoot":"","sources":["../../../../../../../packages/schematic/ts-morph/src/lib/angular/form-definition-utilities.ts"],"names":[],"mappings":";;;AAAA,qEAGoC;
|
|
1
|
+
{"version":3,"file":"form-definition-utilities.js","sourceRoot":"","sources":["../../../../../../../packages/schematic/ts-morph/src/lib/angular/form-definition-utilities.ts"],"names":[],"mappings":";;;AAAA,qEAGoC;AACpC,6CAA6C;AAC7C,+CAA4C;AAO5C,SAAgB,0BAA0B,CAAC,EAAE,IAAI,EAAqC;IACpF,OAAO,IAAA,mCAAY,EAAC,IAAA,+BAAQ,EAAC,IAAI,CAAC,EAAE,MAAM,CAAC,CAAC;AAC9C,CAAC;AAFD,gEAEC;AAID,SAAgB,8BAA8B,CAAC,OAA8C;IAC3F,MAAM,SAAS,GAAG,0BAA0B,CAAC,OAAO,CAAC,CAAC;IACtD,OAAO,IAAK,SAAU,EAAE,CAAC;AAC3B,CAAC;AAHD,wEAGC;AAID,SAAgB,yBAAyB,CAAC,UAAsB,EAAE,OAAyC;IACzG,MAAM,SAAS,GAAG,0BAA0B,CAAC,OAAO,CAAC,CAAC;IACtD,OAAO,IAAA,sBAAW,EAAC,UAAU,EAAE,SAAS,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC;AAClE,CAAC;AAHD,8DAGC;AAID,SAAgB,yBAAyB,CAAC,EAAE,IAAI,EAAoC;IAClF,OAAO,IAAA,mCAAY,EAAC,IAAA,qBAAS,EAAC,IAAI,CAAC,EAAE,UAAU,CAAC,CAAC;AACnD,CAAC;AAFD,8DAEC;AAED,SAAgB,+BAA+B,CAAC,OAAyC;IACvF,OAAO,IAAI,GAAG,yBAAyB,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;AACxE,CAAC;AAFD,0EAEC;AAID,SAAgB,yBAAyB,CAAC,OAAyC;IACjF,OAAO,GAAG,GAAG,yBAAyB,CAAC,OAAO,CAAC,GAAG,GAAG,CAAC;AACxD,CAAC;AAFD,8DAEC"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { OverwriteOptions } from '@rxap/schematics-utilities';
|
|
1
2
|
import { TypeImport } from '@rxap/ts-morph';
|
|
2
3
|
import { ClassDeclaration, DecoratorStructure, MethodDeclaration, OptionalKind, SourceFile, StatementStructures, WriterFunction } from 'ts-morph';
|
|
3
4
|
export interface OperationParameter {
|
|
@@ -31,6 +32,7 @@ export interface OperationOptions {
|
|
|
31
32
|
paramList?: OperationParameter[];
|
|
32
33
|
queryList?: OperationParameter[];
|
|
33
34
|
method?: string;
|
|
35
|
+
overwrite?: OverwriteOptions;
|
|
34
36
|
body?: string | WriterFunction;
|
|
35
37
|
statements?: (string | WriterFunction | StatementStructures)[] | string | WriterFunction;
|
|
36
38
|
decorators?: OptionalKind<DecoratorStructure>[];
|
|
@@ -93,6 +93,7 @@ function buildMethodBodyParameters(body) {
|
|
|
93
93
|
return [];
|
|
94
94
|
}
|
|
95
95
|
function AddOperationToController(sourceFile, classDeclaration, name, options) {
|
|
96
|
+
var _a;
|
|
96
97
|
let { method, path, returnType, isAsync, paramList, queryList, body, statements, decorators, tsMorphTransform, } = options;
|
|
97
98
|
queryList !== null && queryList !== void 0 ? queryList : (queryList = []);
|
|
98
99
|
paramList !== null && paramList !== void 0 ? paramList : (paramList = []);
|
|
@@ -118,7 +119,7 @@ function AddOperationToController(sourceFile, classDeclaration, name, options) {
|
|
|
118
119
|
(_a = param.type) !== null && _a !== void 0 ? _a : (param.type = 'string');
|
|
119
120
|
});
|
|
120
121
|
(0, ts_morph_1.CoerceImports)(sourceFile, {
|
|
121
|
-
namedImports: [method
|
|
122
|
+
namedImports: [method],
|
|
122
123
|
moduleSpecifier: '@nestjs/common',
|
|
123
124
|
});
|
|
124
125
|
if (queryList.length) {
|
|
@@ -198,7 +199,13 @@ function AddOperationToController(sourceFile, classDeclaration, name, options) {
|
|
|
198
199
|
});
|
|
199
200
|
(0, ts_morph_1.CoerceDecorator)(methodDeclaration, method, { arguments: path ? [w => w.quote(path)] : [] });
|
|
200
201
|
coerceApiQueryDecorators(queryList, methodDeclaration);
|
|
201
|
-
|
|
202
|
+
if (!statements) {
|
|
203
|
+
(0, ts_morph_1.CoerceImports)(sourceFile, {
|
|
204
|
+
namedImports: ['NotImplementedException'],
|
|
205
|
+
moduleSpecifier: '@nestjs/common',
|
|
206
|
+
});
|
|
207
|
+
}
|
|
208
|
+
(0, ts_morph_1.CoerceStatements)(methodDeclaration, statements !== null && statements !== void 0 ? statements : ['throw new NotImplementedException();'], Array.isArray(options.overwrite) ? options.overwrite.includes('statements') : (_a = options.overwrite) !== null && _a !== void 0 ? _a : false);
|
|
202
209
|
tsMorphTransform(sourceFile, classDeclaration, methodDeclaration, options);
|
|
203
210
|
}
|
|
204
211
|
exports.AddOperationToController = AddOperationToController;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"add-operation-to-controller.js","sourceRoot":"","sources":["../../../../../../../packages/schematic/ts-morph/src/lib/nest/add-operation-to-controller.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"add-operation-to-controller.js","sourceRoot":"","sources":["../../../../../../../packages/schematic/ts-morph/src/lib/nest/add-operation-to-controller.ts"],"names":[],"mappings":";;;AAAA,qEAIoC;AACpC,6CAOwB;AACxB,+CAAmD;AACnD,uCAakB;AAiDlB,SAAS,0BAA0B,CACjC,SAA+B,EAC/B,UAAsB;IAEtB,IAAI,SAAS,CAAC,MAAM,EAAE;QACpB,OAAO,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE;;YAC3B,IAAI,KAAK,CAAC,YAAY;gBACpB,SAAS,EAAE;gBACX,OAAO,KAAK,CAAC;aACd;YACD,IAAA,wBAAa,EAAC,UAAU,EAAC;gBACvB,YAAY,EAAE,CAAE,kBAAkB,CAAE;gBACpC,eAAe,EAAE,gBAAgB;aAClC,CAAC,CAAC;YACH,MAAM,QAAQ,GAAG,MAAA,MAAA,KAAK,CAAC,QAAQ,0CAAE,KAAK,EAAE,mCAAI,EAAE,CAAC;YAC/C,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE;gBAChB,CAAC,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAC;gBACjC,IAAI,OAAO,KAAK,CAAC,YAAY,KAAK,QAAQ,EAAE;oBAC1C,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;iBAC7B;qBAAM,IAAI,OAAO,KAAK,CAAC,YAAY,KAAK,UAAU,EAAE;oBACnD,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;iBACvB;qBAAM;oBACL,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAC;iBAC1E;gBACD,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YACf,CAAC,CAAC,CAAC;YACH,uCACK,KAAK,KACR,QAAQ,IACR;QACJ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,EACN,KAAK,EACL,IAAI,EACJ,IAAI,EACJ,gBAAgB,EAChB,QAAQ,EACR,YAAY,EACZ,QAAQ,GAAG,EAAE,EACb,OAAO,EACR,EAAE,EAAE,CAAC,CAAC;YACL,IAAI,EAAE,KAAK,aAAL,KAAK,cAAL,KAAK,GAAI,IAAI;YACnB,IAAI,EAAE,IAAA,oBAAS,EAAC,EAAE,IAAI,EAAE,IAAI,aAAJ,IAAI,cAAJ,IAAI,GAAI,SAAS,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,UAAU,CAAC;YAC1E,gBAAgB,EAAE,gBAAgB,aAAhB,gBAAgB,cAAhB,gBAAgB,GAAI,CACpC,CAAC,QAAQ,IAAI,YAAY,KAAK,SAAS,CACxC;YACD,UAAU,EAAE;gBACV;oBACE,IAAI,EAAE,OAAO;oBACb,SAAS,EAAE;wBACT,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC;wBAClB,GAAG,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;4BACrB,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE;gCAC5B,OAAO,IAAI,CAAC;6BACb;4BACD,IAAI,OAAO,IAAI,KAAK,UAAU,EAAE;gCAC9B,OAAO,IAAI,CAAC;6BACb;4BACD,OAAO,IAAA,oBAAS,EAAC,IAAI,EAAE,UAAU,CAAC,CAAC;wBACrC,CAAC,CAAC;qBACH;iBACF;aACF;SACF,CAAC,CAAC,CAAC;KACL;IACD,OAAO,EAAE,CAAC;AACZ,CAAC;AAED,SAAS,0BAA0B,CAAC,SAA+B,EAAE,UAAsB;IACzF,IAAI,SAAS,CAAC,MAAM,EAAE;QACpB,OAAO,SAAS,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;YAC/C,IAAI,EAAE,KAAK,aAAL,KAAK,cAAL,KAAK,GAAI,IAAI;YACnB,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,IAAA,oBAAS,EAAC;gBACrB,IAAI,EAAE,IAAI;gBACV,OAAO,EAAE,KAAK;aACf,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,SAAS;YAC1B,UAAU,EAAE;gBACV;oBACE,IAAI,EAAE,OAAO;oBACb,SAAS,EAAE,CAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAE;iBAClC;aACF;SACF,CAAC,CAAC,CAAC;KACL;IACD,OAAO,EAAE,CAAC;AACZ,CAAC;AAED,SAAS,yBAAyB,CAAC,IAAyC;IAC1E,IAAI,IAAI,EAAE;QACR,OAAO;YACL;gBACE,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,IAAI;gBACV,UAAU,EAAE;oBACV;wBACE,IAAI,EAAE,MAAM;wBACZ,SAAS,EAAE,EAAE;qBACd;iBACF;aACF;SACF,CAAC;KACH;IACD,OAAO,EAAE,CAAC;AACZ,CAAC;AAED,SAAgB,wBAAwB,CACtC,UAAsB,EACtB,gBAAkC,EAClC,IAAY,EACZ,OAAyB;;IAGzB,IAAI,EACF,MAAM,EACN,IAAI,EACJ,UAAU,EACV,OAAO,EACP,SAAS,EACT,SAAS,EACT,IAAI,EACJ,UAAU,EACV,UAAU,EACV,gBAAgB,GACjB,GAAG,OAAO,CAAC;IAEZ,SAAS,aAAT,SAAS,cAAT,SAAS,IAAT,SAAS,GAAK,EAAE,EAAC;IACjB,SAAS,aAAT,SAAS,cAAT,SAAS,IAAT,SAAS,GAAK,EAAE,EAAC;IACjB,UAAU,aAAV,UAAU,cAAV,UAAU,IAAV,UAAU,GAAK,EAAE,EAAC;IAClB,gEAAgE;IAChE,gBAAgB,aAAhB,gBAAgB,cAAhB,gBAAgB,IAAhB,gBAAgB,GAAK,GAAG,EAAE,GAAE,CAAC,EAAC;IAC9B,MAAM,aAAN,MAAM,cAAN,MAAM,IAAN,MAAM,GAAK,KAAK,EAAC;IACjB,MAAM,GAAG,IAAA,iCAAU,EAAC,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC;IAE1C,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;;QACxB,KAAK,CAAC,IAAI,GAAG,IAAA,+BAAQ,EAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAClC,IAAI,KAAK,CAAC,KAAK,EAAE;YACf,KAAK,CAAC,KAAK,GAAG,IAAA,+BAAQ,EAAC,KAAK,CAAC,KAAK,CAAC,CAAC;SACrC;QACD,MAAA,KAAK,CAAC,IAAI,oCAAV,KAAK,CAAC,IAAI,GAAK,QAAQ,EAAC;IAC1B,CAAC,CAAC,CAAC;IACH,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;;QACxB,KAAK,CAAC,IAAI,GAAG,IAAA,+BAAQ,EAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAClC,IAAI,KAAK,CAAC,KAAK,EAAE;YACf,KAAK,CAAC,KAAK,GAAG,IAAA,+BAAQ,EAAC,KAAK,CAAC,KAAK,CAAC,CAAC;SACrC;QACD,MAAA,KAAK,CAAC,IAAI,oCAAV,KAAK,CAAC,IAAI,GAAK,QAAQ,EAAC;IAC1B,CAAC,CAAC,CAAC;IAEH,IAAA,wBAAa,EAAC,UAAU,EAAC;QACvB,YAAY,EAAE,CAAE,MAAM,CAAE;QACxB,eAAe,EAAE,gBAAgB;KAClC,CAAC,CAAC;IAEH,IAAI,SAAS,CAAC,MAAM,EAAE;QACpB,IAAA,wBAAa,EAAC,UAAU,EAAC;YACvB,YAAY,EAAE,CAAE,OAAO,CAAE;YACzB,eAAe,EAAE,gBAAgB;SAClC,CAAC,CAAC;QACH,IAAA,wBAAa,EAAC,UAAU,EAAC;YACvB,YAAY,EAAE,CAAE,UAAU,CAAE;YAC5B,eAAe,EAAE,iBAAiB;SACnC,CAAC,CAAC;KACJ;IAED,IAAI,SAAS,CAAC,MAAM,EAAE;QACpB,IAAA,wBAAa,EAAC,UAAU,EAAC;YACvB,YAAY,EAAE,CAAE,OAAO,CAAE;YACzB,eAAe,EAAE,gBAAgB;SAClC,CAAC,CAAC;KACJ;IAED,IAAI,IAAI,EAAE;QACR,IAAA,wBAAa,EAAC,UAAU,EAAC;YACvB,YAAY,EAAE,CAAE,MAAM,CAAE;YACxB,eAAe,EAAE,gBAAgB;SAClC,CAAC,CAAC;KACJ;IAED,IAAI,CAAC,IAAI,EAAE;QACT,IAAI,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,MAAM,EAAE;YACvD,IAAI,GAAG,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,IAAK,KAAK,CAAC,IAAK,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;SAChG;KACF;SAAM;QACL,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QACpC,KAAK,MAAM,KAAK,IAAI,KAAK,aAAL,KAAK,cAAL,KAAK,GAAI,EAAE,EAAE;YAC/B,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE;gBACpD,SAAS,CAAC,IAAI,CAAC;oBACb,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;oBACrB,IAAI,EAAE,QAAQ;iBACf,CAAC,CAAC;aACJ;SACF;KACF;IAED,+EAA+E;IAE/E,UAAU,aAAV,UAAU,cAAV,UAAU,IAAV,UAAU,GAAK,MAAM,EAAC;IAEtB,MAAM,iBAAiB,GAAG,IAAA,4BAAiB,EACzC,gBAAgB,EAChB,IAAA,+BAAQ,EAAC,IAAI,CAAC,EACd;QACE,KAAK,EAAE,gBAAK,CAAC,MAAM;QACnB,OAAO;QACP,UAAU,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAM,EAAE,EAAE;YAC1D,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;YACpB,IAAI,OAAO,UAAU,KAAK,QAAQ,EAAE;gBAClC,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;aACrB;iBAAM,IAAI,OAAO,UAAU,KAAK,UAAU,EAAE;gBAC3C,UAAU,CAAC,CAAC,CAAC,CAAC;aACf;iBAAM;gBACL,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC;aACxE;YACD,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACf,CAAC,CAAC,CAAC,CAAC,SAAS;KACd,CACF,CAAC;IAEF,MAAM,kBAAkB,GAAkD,iBAAiB,CAAC,aAAa,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,YAAY,EAAE,CAAC,CAAC;IAEvI,IAAA,4BAAgB,EAAC,kBAAkB,EAAE;QACnC,GAAG,0BAA0B,CAAC,SAAS,EAAE,UAAU,CAAC;QACpD,GAAG,0BAA0B,CAAC,SAAS,EAAE,UAAU,CAAC;QACpD,GAAG,yBAAyB,CAAC,IAAI,CAAC;KACnC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC;IAEhC,iBAAiB,CAAC,aAAa,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;IAC3D,KAAK,MAAM,SAAS,IAAI,kBAAkB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;QACvD,IAAI,CAAC,CAAC,gBAAgB,IAAI,CAAC,CAAC,gBAAgB,EAAE;YAC5C,OAAO,CAAC,CAAC;SACV;QACD,OAAO,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACrC,CAAC,CAAC,EAAE;QACF,iBAAiB,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;KAC3C;IAED,UAAU,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE;QAC7B,IAAA,0BAAe,EAAC,iBAAiB,EAAE,SAAS,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IAChE,CAAC,CAAC,CAAC;IAEH,IAAA,0BAAe,EAAC,iBAAiB,EAAE,MAAM,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC,CAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAK,CAAC,CAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAC/F,wBAAwB,CAAC,SAAS,EAAE,iBAAiB,CAAC,CAAC;IAEvD,IAAI,CAAC,UAAU,EAAE;QACf,IAAA,wBAAa,EAAC,UAAU,EAAE;YACxB,YAAY,EAAE,CAAE,yBAAyB,CAAE;YAC3C,eAAe,EAAE,gBAAgB;SAClC,CAAC,CAAC;KACJ;IAED,IAAA,2BAAgB,EACd,iBAAiB,EACjB,UAAU,aAAV,UAAU,cAAV,UAAU,GACV,CAAE,sCAAsC,CAAE,EAC1C,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,MAAA,OAAO,CAAC,SAAS,mCAAI,KAAK,CACzG,CAAC;IAEF,gBAAgB,CAAC,UAAU,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,OAAO,CAAC,CAAC;AAE7E,CAAC;AA1JD,4DA0JC;AAED,SAAS,wBAAwB,CAAC,SAA+B,EAAE,iBAAoC;IAErG,KAAK,MAAM,KAAK,IAAI,SAAS,EAAE;QAE7B,IAAA,0BAAe,EACb,iBAAiB,EACjB,UAAU,EACV;YACE,SAAS,EAAE;gBACT,kBAAO,CAAC,MAAM,CAAC;oBACb,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC;oBAC9B,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO;oBAC3C,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO;iBAC1C,CAAC;aACH;SACF,EACD,GAAG,EAAE,CAAC,SAAS,CAAC,EAAE;;YAChB,IAAI,SAAS,CAAC,YAAY,EAAE,CAAC,MAAM,EAAE;gBACnC,MAAM,CAAE,uBAAuB,CAAE,GAAG,SAAS,CAAC,YAAY,EAAE,CAAC;gBAC7D,IAAI,uBAAuB,YAAY,kCAAuB,EAAE;oBAC9D,MAAM,mBAAmB,GAAG,uBAAuB,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;oBACxE,IAAI,mBAAmB,YAAY,6BAAkB,EAAE;wBACrD,MAAM,IAAI,GAAG,MAAA,mBAAmB,CAAC,cAAc,EAAE,0CAAE,OAAO,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,EAAE,EAAE,EAAE,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;wBACxG,OAAO,IAAI,KAAK,KAAK,CAAC,IAAI,CAAC;qBAC5B;iBACF;aACF;YACD,OAAO,KAAK,CAAC;QACf,CAAC,CACF,CAAC;KAEH;AAEH,CAAC"}
|
|
@@ -2,12 +2,16 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.AssertNestProject = void 0;
|
|
4
4
|
const schematics_1 = require("@angular-devkit/schematics");
|
|
5
|
-
|
|
5
|
+
require("colors");
|
|
6
|
+
const workspace_utilities_1 = require("@rxap/workspace-utilities");
|
|
6
7
|
function AssertNestProject(options) {
|
|
7
8
|
const { project, feature, shared } = options;
|
|
8
9
|
return tree => {
|
|
9
|
-
if (!(0,
|
|
10
|
-
|
|
10
|
+
if (!(0, workspace_utilities_1.HasNestServiceProject)(tree, { project, feature, shared })) {
|
|
11
|
+
// TODO : run the commands on the fly instead of throwing an error
|
|
12
|
+
console.log('Use the command: ' + `nx g @nx/nest:application --projectNameAndRootFormat as-provided --name ${(0, workspace_utilities_1.buildNestProjectName)({ project, feature, shared })} --directory ${(0, workspace_utilities_1.buildNestProjectDirectoryPath)({ project, feature, shared })}`.blue + ' to create the required nest project');
|
|
13
|
+
console.log('Use the command: ' + `nx g @rxap/plugin-nestjs:init-application --project ${(0, workspace_utilities_1.buildNestProjectName)({ project, feature, shared })} --generateMain --overwrite`.blue + ' to initialize the nest project');
|
|
14
|
+
throw new schematics_1.SchematicsException(`The project ${(0, workspace_utilities_1.buildNestProjectName)({ project, feature, shared })} does not exists!`);
|
|
11
15
|
}
|
|
12
16
|
};
|
|
13
17
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"assert-nest-project.js","sourceRoot":"","sources":["../../../../../../../packages/schematic/ts-morph/src/lib/nest/assert-nest-project.ts"],"names":[],"mappings":";;;AAAA,2DAGoC;AACpC,
|
|
1
|
+
{"version":3,"file":"assert-nest-project.js","sourceRoot":"","sources":["../../../../../../../packages/schematic/ts-morph/src/lib/nest/assert-nest-project.ts"],"names":[],"mappings":";;;AAAA,2DAGoC;AACpC,kBAAgB;AAChB,mEAImC;AAQnC,SAAgB,iBAAiB,CAAC,OAAiC;IACjE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC;IAC7C,OAAO,IAAI,CAAC,EAAE;QACZ,IAAI,CAAC,IAAA,2CAAqB,EAAC,IAAI,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,EAAE;YAE9D,kEAAkE;YAElE,OAAO,CAAC,GAAG,CAAC,mBAAmB,GAAG,2EAA4E,IAAA,0CAAoB,EAAC,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,CAAE,gBAAiB,IAAA,mDAA6B,EAAC,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,CAAE,EAAE,CAAC,IAAI,GAAG,sCAAsC,CAAC,CAAC;YAChS,OAAO,CAAC,GAAG,CAAC,mBAAmB,GAAG,uDAAwD,IAAA,0CAAoB,EAAC,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,CAAE,6BAA6B,CAAC,IAAI,GAAG,iCAAiC,CAAC,CAAC;YACrN,MAAM,IAAI,gCAAmB,CAAC,eAAgB,IAAA,0CAAoB,EAAC,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,CAAE,mBAAmB,CAAC,CAAC;SAEvH;IACH,CAAC,CAAC;AACJ,CAAC;AAbD,8CAaC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { Rule } from '@angular-devkit/schematics';
|
|
2
|
+
import { NormalizedDataProperty } from '@rxap/ts-morph';
|
|
3
|
+
import { ClassDeclaration, SourceFile, WriterFunction } from 'ts-morph';
|
|
4
|
+
import { CoerceDtoClassOutput } from './coerce-dto-class';
|
|
5
|
+
import { CoerceOperationOptions, TransformOperation } from './coerce-operation';
|
|
6
|
+
export interface CoerceAutocompleteOptionsOperationRuleOptions extends CoerceOperationOptions {
|
|
7
|
+
toDisplayProperty: NormalizedDataProperty;
|
|
8
|
+
toValueProperty: NormalizedDataProperty;
|
|
9
|
+
}
|
|
10
|
+
export declare function BuildAutocompleteOptionsDtoDataMapperImplementation(classDeclaration: ClassDeclaration, moduleSourceFile: SourceFile, dto: CoerceDtoClassOutput | null, options: Readonly<CoerceAutocompleteOptionsOperationRuleOptions>): TransformOperation<string | WriterFunction>;
|
|
11
|
+
export declare function BuildAutocompleteOptionsUpstreamGetParametersImplementation(classDeclaration: ClassDeclaration, moduleSourceFile: SourceFile, dto: CoerceDtoClassOutput | null, options: Readonly<CoerceAutocompleteOptionsOperationRuleOptions>): TransformOperation<string | WriterFunction>;
|
|
12
|
+
export declare function CoerceAutocompleteOptionsOperationRule(options: Readonly<CoerceAutocompleteOptionsOperationRuleOptions>): Rule;
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.CoerceAutocompleteOptionsOperationRule = exports.BuildAutocompleteOptionsUpstreamGetParametersImplementation = exports.BuildAutocompleteOptionsDtoDataMapperImplementation = void 0;
|
|
4
|
+
const ts_morph_1 = require("@rxap/ts-morph");
|
|
5
|
+
const utilities_1 = require("@rxap/utilities");
|
|
6
|
+
const ts_morph_2 = require("ts-morph");
|
|
7
|
+
const coerce_operation_1 = require("./coerce-operation");
|
|
8
|
+
function BuildAutocompleteOptionsDtoDataMapperImplementation(classDeclaration, moduleSourceFile, dto, options) {
|
|
9
|
+
const { isArray, } = options;
|
|
10
|
+
return () => {
|
|
11
|
+
const { upstream, toValueProperty, toDisplayProperty } = options;
|
|
12
|
+
if (upstream && (0, ts_morph_1.IsNormalizedOpenApiUpstreamOptions)(upstream)) {
|
|
13
|
+
return w => {
|
|
14
|
+
w.write('(data.entities ?? []).map(item => ({');
|
|
15
|
+
w.indent(() => {
|
|
16
|
+
w.writeLine(`value: item.${toValueProperty.name},`);
|
|
17
|
+
w.writeLine(`display: item.${toDisplayProperty.name},`);
|
|
18
|
+
w.writeLine(`${toDisplayProperty.name}: item.${toDisplayProperty.name},`);
|
|
19
|
+
w.writeLine(`${toValueProperty.name}: item.${toValueProperty.name}`);
|
|
20
|
+
});
|
|
21
|
+
w.write('}))');
|
|
22
|
+
};
|
|
23
|
+
}
|
|
24
|
+
// TODO : implement the data mapper
|
|
25
|
+
return isArray ? '[]' : '{}';
|
|
26
|
+
};
|
|
27
|
+
}
|
|
28
|
+
exports.BuildAutocompleteOptionsDtoDataMapperImplementation = BuildAutocompleteOptionsDtoDataMapperImplementation;
|
|
29
|
+
function BuildAutocompleteOptionsUpstreamGetParametersImplementation(classDeclaration, moduleSourceFile, dto, options) {
|
|
30
|
+
return () => {
|
|
31
|
+
const { upstream, toDisplayProperty } = options;
|
|
32
|
+
if (upstream && (0, ts_morph_1.IsNormalizedOpenApiUpstreamOptions)(upstream)) {
|
|
33
|
+
return ts_morph_2.Writers.object({
|
|
34
|
+
parameters: ts_morph_2.Writers.object({
|
|
35
|
+
filter: w => {
|
|
36
|
+
w.write('search ? ');
|
|
37
|
+
w.write(`\`${toDisplayProperty.name}:\${ search }\``);
|
|
38
|
+
w.write(` : ''`);
|
|
39
|
+
},
|
|
40
|
+
sort: w => w.quote('__updatedAt'),
|
|
41
|
+
order: w => w.quote('desc'),
|
|
42
|
+
page: '0',
|
|
43
|
+
size: '10'
|
|
44
|
+
}),
|
|
45
|
+
});
|
|
46
|
+
}
|
|
47
|
+
return '';
|
|
48
|
+
};
|
|
49
|
+
}
|
|
50
|
+
exports.BuildAutocompleteOptionsUpstreamGetParametersImplementation = BuildAutocompleteOptionsUpstreamGetParametersImplementation;
|
|
51
|
+
function CoerceAutocompleteOptionsOperationRule(options) {
|
|
52
|
+
const { builtDtoDataMapperImplementation = BuildAutocompleteOptionsDtoDataMapperImplementation, buildUpstreamGetParametersImplementation = BuildAutocompleteOptionsUpstreamGetParametersImplementation, isArray = true, propertyList = [], queryList = [], } = options;
|
|
53
|
+
(0, utilities_1.CoerceArrayItems)(queryList, [{ name: 'search', type: 'string', hasQuestionToken: true }], (a, b) => a.name === b.name);
|
|
54
|
+
(0, utilities_1.CoerceArrayItems)(propertyList, [
|
|
55
|
+
Object.assign(Object.assign({}, options.toValueProperty), { name: 'value', source: options.toValueProperty.name }),
|
|
56
|
+
Object.assign(Object.assign({}, options.toDisplayProperty), { name: 'display', source: options.toDisplayProperty.name }),
|
|
57
|
+
], (a, b) => a.name === b.name);
|
|
58
|
+
return (0, coerce_operation_1.CoerceOperation)(Object.assign(Object.assign({}, options), { propertyList,
|
|
59
|
+
isArray,
|
|
60
|
+
queryList,
|
|
61
|
+
buildUpstreamGetParametersImplementation,
|
|
62
|
+
builtDtoDataMapperImplementation }));
|
|
63
|
+
}
|
|
64
|
+
exports.CoerceAutocompleteOptionsOperationRule = CoerceAutocompleteOptionsOperationRule;
|
|
65
|
+
//# sourceMappingURL=coerce-autocomplete-options-operation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"coerce-autocomplete-options-operation.js","sourceRoot":"","sources":["../../../../../../../packages/schematic/ts-morph/src/lib/nest/coerce-autocomplete-options-operation.ts"],"names":[],"mappings":";;;AACA,6CAGwB;AACxB,+CAAmD;AACnD,uCAKkB;AAElB,yDAI4B;AAO5B,SAAgB,mDAAmD,CACjE,gBAAkC,EAClC,gBAA4B,EAC5B,GAAgC,EAChC,OAAgE;IAEhE,MAAM,EACJ,OAAO,GACR,GAAG,OAAO,CAAC;IACZ,OAAO,GAAG,EAAE;QACV,MAAM,EAAE,QAAQ,EAAE,eAAe,EAAE,iBAAiB,EAAE,GAAG,OAAO,CAAC;QACjE,IAAI,QAAQ,IAAI,IAAA,6CAAkC,EAAC,QAAQ,CAAC,EAAE;YAC5D,OAAO,CAAC,CAAC,EAAE;gBACT,CAAC,CAAC,KAAK,CAAC,sCAAsC,CAAC,CAAC;gBAChD,CAAC,CAAC,MAAM,CAAC,GAAG,EAAE;oBACZ,CAAC,CAAC,SAAS,CAAC,eAAe,eAAe,CAAC,IAAI,GAAG,CAAC,CAAC;oBACpD,CAAC,CAAC,SAAS,CAAC,iBAAiB,iBAAiB,CAAC,IAAI,GAAG,CAAC,CAAC;oBACxD,CAAC,CAAC,SAAS,CAAC,GAAG,iBAAiB,CAAC,IAAI,UAAU,iBAAiB,CAAC,IAAI,GAAG,CAAC,CAAC;oBAC1E,CAAC,CAAC,SAAS,CAAC,GAAG,eAAe,CAAC,IAAI,UAAU,eAAe,CAAC,IAAI,EAAE,CAAC,CAAC;gBACvE,CAAC,CAAC,CAAC;gBACH,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YACjB,CAAC,CAAC;SACH;QACD,mCAAmC;QACnC,OAAO,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;IAC/B,CAAC,CAAC;AACJ,CAAC;AA1BD,kHA0BC;AAED,SAAgB,2DAA2D,CACzE,gBAAkC,EAClC,gBAA4B,EAC5B,GAAgC,EAChC,OAAgE;IAEhE,OAAO,GAAG,EAAE;QACV,MAAM,EAAE,QAAQ,EAAE,iBAAiB,EAAE,GAAG,OAAO,CAAC;QAChD,IAAI,QAAQ,IAAI,IAAA,6CAAkC,EAAC,QAAQ,CAAC,EAAE;YAC5D,OAAO,kBAAO,CAAC,MAAM,CAAC;gBACpB,UAAU,EAAE,kBAAO,CAAC,MAAM,CAAC;oBACzB,MAAM,EAAE,CAAC,CAAC,EAAE;wBACV,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;wBACrB,CAAC,CAAC,KAAK,CAAC,KAAK,iBAAiB,CAAC,IAAI,iBAAiB,CAAC,CAAC;wBACtD,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;oBACnB,CAAC;oBACD,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,aAAa,CAAC;oBACjC,KAAK,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC;oBAC3B,IAAI,EAAE,GAAG;oBACT,IAAI,EAAE,IAAI;iBACX,CAAC;aACH,CAAC,CAAC;SACJ;QACD,OAAO,EAAE,CAAC;IACZ,CAAC,CAAC;AACJ,CAAC;AAzBD,kIAyBC;AAED,SAAgB,sCAAsC,CAAC,OAAgE;IACrH,MAAM,EACJ,gCAAgC,GAAG,mDAAmD,EACtF,wCAAwC,GAAG,2DAA2D,EACtG,OAAO,GAAG,IAAI,EACd,YAAY,GAAG,EAAE,EACjB,SAAS,GAAG,EAAE,GACf,GAAG,OAAO,CAAC;IACZ,IAAA,4BAAgB,EAAC,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,gBAAgB,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC;IACvH,IAAA,4BAAgB,EAAC,YAAY,EAAE;wCAExB,OAAO,CAAC,eAAe,KAC1B,IAAI,EAAE,OAAO,EACb,MAAM,EAAE,OAAO,CAAC,eAAe,CAAC,IAAI;wCAGjC,OAAO,CAAC,iBAAiB,KAC5B,IAAI,EAAE,SAAS,EACf,MAAM,EAAE,OAAO,CAAC,iBAAiB,CAAC,IAAI;KAEzC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC;IAChC,OAAO,IAAA,kCAAe,kCACjB,OAAO,KACV,YAAY;QACZ,OAAO;QACP,SAAS;QACT,wCAAwC;QACxC,gCAAgC,IAChC,CAAC;AACL,CAAC;AA7BD,wFA6BC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { NormalizedDataProperty } from '@rxap/ts-morph';
|
|
2
|
+
import { CoerceOperationOptions } from './coerce-operation';
|
|
3
|
+
export interface CoerceAutocompleteTableSelectValueResolveOperationOptions extends CoerceOperationOptions {
|
|
4
|
+
rowDisplayProperty: NormalizedDataProperty;
|
|
5
|
+
rowValueProperty: NormalizedDataProperty;
|
|
6
|
+
}
|
|
7
|
+
export declare function CoerceAutocompleteTableSelectValueResolveOperationRule(options: CoerceAutocompleteTableSelectValueResolveOperationOptions): import("@angular-devkit/schematics").Rule;
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.CoerceAutocompleteTableSelectValueResolveOperationRule = void 0;
|
|
4
|
+
const utilities_1 = require("@rxap/utilities");
|
|
5
|
+
const coerce_operation_1 = require("./coerce-operation");
|
|
6
|
+
const coerce_table_select_value_resolve_operation_1 = require("./coerce-table-select-value-resolve-operation");
|
|
7
|
+
function CoerceAutocompleteTableSelectValueResolveOperationRule(options) {
|
|
8
|
+
const { buildUpstreamGetParametersImplementation = coerce_table_select_value_resolve_operation_1.BuildTableSelectValueResolveUpstreamGetParametersImplementation, propertyList = [], rowDisplayProperty, rowValueProperty, } = options;
|
|
9
|
+
(0, utilities_1.CoerceArrayItems)(propertyList, [
|
|
10
|
+
Object.assign(Object.assign({}, rowValueProperty), { name: 'value', source: rowValueProperty.name }),
|
|
11
|
+
Object.assign(Object.assign({}, rowDisplayProperty), { name: 'display', source: rowDisplayProperty.name }),
|
|
12
|
+
], { compareTo: (a, b) => a.name === b.name, unshift: true });
|
|
13
|
+
return (0, coerce_operation_1.CoerceOperation)(Object.assign(Object.assign({}, options), { buildUpstreamGetParametersImplementation }));
|
|
14
|
+
}
|
|
15
|
+
exports.CoerceAutocompleteTableSelectValueResolveOperationRule = CoerceAutocompleteTableSelectValueResolveOperationRule;
|
|
16
|
+
//# sourceMappingURL=coerce-autocomplete-table-select-value-resolve-operation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"coerce-autocomplete-table-select-value-resolve-operation.js","sourceRoot":"","sources":["../../../../../../../packages/schematic/ts-morph/src/lib/nest/coerce-autocomplete-table-select-value-resolve-operation.ts"],"names":[],"mappings":";;;AACA,+CAAmD;AACnD,yDAG4B;AAC5B,+GAAgI;AAQhI,SAAgB,sDAAsD,CAAC,OAAkE;IACvI,MAAM,EACJ,wCAAwC,GAAG,6GAA+D,EAC1G,YAAY,GAAG,EAAE,EACjB,kBAAkB,EAClB,gBAAgB,GACjB,GAAG,OAAO,CAAC;IAEZ,IAAA,4BAAgB,EAAC,YAAY,EAAE;wCAExB,gBAAgB,KACnB,IAAI,EAAE,OAAO,EACb,MAAM,EAAE,gBAAgB,CAAC,IAAI;wCAG1B,kBAAkB,KACrB,IAAI,EAAE,SAAS,EACf,MAAM,EAAE,kBAAkB,CAAC,IAAI;KAElC,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;IAE9D,OAAO,IAAA,kCAAe,kCACjB,OAAO,KACV,wCAAwC,IACxC,CAAC;AACL,CAAC;AAzBD,wHAyBC"}
|