@rxap/schematic-angular 16.2.0-dev.2 → 16.2.0-dev.20
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 +146 -0
- package/README.md +1 -1
- package/package.json +11 -9
- package/src/lib/accordion-header.d.ts +5 -0
- package/src/lib/accordion-header.js +9 -3
- package/src/lib/accordion-header.js.map +1 -1
- package/src/lib/accordion-identifier.d.ts +4 -0
- package/src/lib/accordion-identifier.js.map +1 -1
- package/src/lib/accordion-item.d.ts +25 -17
- package/src/lib/accordion-item.js +72 -33
- package/src/lib/accordion-item.js.map +1 -1
- package/src/lib/accordion-itme-kinds.d.ts +8 -0
- package/src/lib/accordion-itme-kinds.js +16 -0
- package/src/lib/accordion-itme-kinds.js.map +1 -0
- package/src/lib/coerce-accordion-component.js +7 -3
- package/src/lib/coerce-accordion-component.js.map +1 -1
- package/src/lib/coerce-accordion-item-table-component.js +1 -1
- package/src/lib/coerce-accordion-item-table-component.js.map +1 -1
- package/src/lib/coerce-form-component.js +5 -2
- package/src/lib/coerce-form-component.js.map +1 -1
- package/src/lib/coerce-minimum-table-component.js +9 -3
- package/src/lib/coerce-minimum-table-component.js.map +1 -1
- package/src/lib/coerce-tree-table-component.js +16 -0
- package/src/lib/coerce-tree-table-component.js.map +1 -1
- package/src/lib/data-grid-item.d.ts +46 -11
- package/src/lib/data-grid-item.js +80 -5
- package/src/lib/data-grid-item.js.map +1 -1
- package/src/lib/data-grid-mode.d.ts +4 -0
- package/src/lib/data-grid-mode.js +9 -0
- package/src/lib/data-grid-mode.js.map +1 -0
- package/src/lib/data-grid-options.d.ts +12 -5
- package/src/lib/data-grid-options.js +43 -13
- package/src/lib/data-grid-options.js.map +1 -1
- package/src/lib/form/generate-form-template.d.ts +5 -0
- package/src/lib/form/generate-form-template.js +12 -0
- package/src/lib/form/generate-form-template.js.map +1 -0
- package/src/lib/form-component-control.d.ts +2 -6
- package/src/lib/form-component-control.js.map +1 -1
- package/src/lib/form-control.d.ts +136 -0
- package/src/lib/form-control.js +265 -0
- package/src/lib/form-control.js.map +1 -0
- package/src/lib/form-definition-control.d.ts +3 -57
- package/src/lib/form-definition-control.js +18 -144
- package/src/lib/form-definition-control.js.map +1 -1
- package/src/lib/load-handlebars-template.d.ts +4 -0
- package/src/lib/load-handlebars-template.js +28 -0
- package/src/lib/load-handlebars-template.js.map +1 -0
- package/src/lib/merge-with-column-list.js +3 -1
- package/src/lib/merge-with-column-list.js.map +1 -1
- package/src/lib/minimum-table-component-options.d.ts +12 -2
- package/src/lib/minimum-table-component-options.js +14 -17
- package/src/lib/minimum-table-component-options.js.map +1 -1
- package/src/lib/minimum-table-options.d.ts +1 -1
- package/src/lib/minimum-table-options.js +2 -2
- package/src/lib/minimum-table-options.js.map +1 -1
- package/src/lib/pipe-option.d.ts +11 -0
- package/src/lib/pipe-option.js +75 -0
- package/src/lib/pipe-option.js.map +1 -0
- package/src/lib/table/table-filter-column-rule.d.ts +13 -0
- package/src/lib/table/table-filter-column-rule.js +88 -0
- package/src/lib/table/table-filter-column-rule.js.map +1 -0
- package/src/lib/table-column.d.ts +19 -9
- package/src/lib/table-column.js +132 -113
- package/src/lib/table-column.js.map +1 -1
- package/src/lib/table-options.d.ts +1 -1
- package/src/lib/tree-table-options.d.ts +1 -1
- package/src/lib/use-pick-from-table-interface-as-form-type.d.ts +10 -0
- package/src/lib/use-pick-from-table-interface-as-form-type.js +32 -0
- package/src/lib/use-pick-from-table-interface-as-form-type.js.map +1 -0
- package/src/lib/value-option.d.ts +12 -0
- package/src/lib/value-option.js +66 -0
- package/src/lib/value-option.js.map +1 -0
- package/src/schema.json +2368 -0
- package/src/schematic-input.schema.json +607 -0
- package/src/schematics/accordion/accordion-component/files/component/__componentName__.component.html.hbs +25 -0
- package/src/schematics/accordion/accordion-component/index.d.ts +5 -2
- package/src/schematics/accordion/accordion-component/index.js +56 -122
- package/src/schematics/accordion/accordion-component/index.js.map +1 -1
- package/src/schematics/accordion/accordion-component/schema.d.ts +6 -0
- package/src/schematics/accordion/accordion-component/schema.json +314 -132
- package/src/schematics/accordion/accordion-component/template.schema.json +105 -0
- package/src/schematics/accordion/accordion-item-component/index.d.ts +9 -4
- package/src/schematics/accordion/accordion-item-component/index.js +112 -86
- package/src/schematics/accordion/accordion-item-component/index.js.map +1 -1
- package/src/schematics/accordion/accordion-item-component/schema.d.ts +2 -2
- package/src/schematics/accordion/accordion-item-component/schema.json +282 -70
- package/src/schematics/accordion/accordion-item-component/template.schema.json +32 -0
- package/src/schematics/accordion/item/accordion-item-data-grid-component/index.d.ts +1 -1
- package/src/schematics/accordion/item/accordion-item-data-grid-component/index.js +35 -51
- package/src/schematics/accordion/item/accordion-item-data-grid-component/index.js.map +1 -1
- package/src/schematics/accordion/item/accordion-item-data-grid-component/schema.d.ts +1 -1
- package/src/schematics/accordion/item/accordion-item-data-grid-component/schema.json +454 -85
- package/src/schematics/accordion/item/accordion-item-data-grid-component/template.schema.json +31 -0
- package/src/schematics/accordion/item/accordion-item-switch-component/index.d.ts +1 -1
- package/src/schematics/accordion/item/accordion-item-switch-component/index.js +16 -8
- package/src/schematics/accordion/item/accordion-item-switch-component/index.js.map +1 -1
- package/src/schematics/accordion/item/accordion-item-switch-component/schema.d.ts +1 -1
- package/src/schematics/accordion/item/accordion-item-switch-component/schema.json +322 -190
- package/src/schematics/accordion/item/accordion-item-switch-component/template.schema.json +81 -0
- package/src/schematics/accordion/item/accordion-item-table-component/index.d.ts +1 -1
- package/src/schematics/accordion/item/accordion-item-table-component/index.js +16 -19
- package/src/schematics/accordion/item/accordion-item-table-component/index.js.map +1 -1
- package/src/schematics/accordion/item/accordion-item-table-component/schema.d.ts +1 -1
- package/src/schematics/accordion/item/accordion-item-table-component/schema.json +615 -278
- package/src/schematics/accordion/item/accordion-item-table-component/template.schema.json +43 -0
- package/src/schematics/accordion/item/accordion-item-tree-table-component/index.d.ts +1 -1
- package/src/schematics/accordion/item/accordion-item-tree-table-component/index.js +48 -84
- package/src/schematics/accordion/item/accordion-item-tree-table-component/index.js.map +1 -1
- package/src/schematics/accordion/item/accordion-item-tree-table-component/schema.d.ts +1 -1
- package/src/schematics/accordion/item/accordion-item-tree-table-component/schema.json +591 -271
- package/src/schematics/accordion/item/accordion-item-tree-table-component/template.schema.json +43 -0
- package/src/schematics/accordion/templates/accordion-header.hbs +6 -0
- package/src/schematics/accordion/templates/data-grid-accordion-item.hbs +15 -0
- package/src/schematics/accordion/templates/default-accordion-item.hbs +15 -0
- package/src/schematics/accordion/templates/switch-accordion-item.hbs +21 -0
- package/src/schematics/accordion/templates/table-accordion-item.hbs +15 -0
- package/src/schematics/accordion/templates/tree-table-accordion-item.hbs +15 -0
- package/src/schematics/accordion-identifier.schema.json +25 -0
- package/src/schematics/accordion-item.schema.json +59 -0
- package/src/schematics/angular.schema.json +11 -11
- package/src/schematics/backend.schema.json +13 -0
- package/src/schematics/button.schema.json +30 -0
- package/src/schematics/data-grid-component/files/component/__componentName__.component.html.hbs +35 -0
- package/src/schematics/data-grid-component/index.d.ts +2 -4
- package/src/schematics/data-grid-component/index.js +83 -52
- package/src/schematics/data-grid-component/index.js.map +1 -1
- package/src/schematics/data-grid-component/schema.json +413 -141
- package/src/schematics/data-grid-component/template.schema.json +20 -0
- package/src/schematics/data-grid-component/templates/default-data-grid-item.hbs +3 -0
- package/src/schematics/data-grid-component/templates/link-data-grid-item.hbs +8 -0
- package/src/schematics/data-grid-item.schema.json +50 -0
- package/src/schematics/data-grid.schema.json +66 -0
- package/src/schematics/dialog-component/schema.json +141 -65
- package/src/schematics/dialog-component/template.schema.json +62 -0
- package/src/schematics/form/control/input-form-control/index.d.ts +2 -2
- package/src/schematics/form/control/input-form-control/index.js +4 -27
- package/src/schematics/form/control/input-form-control/index.js.map +1 -1
- package/src/schematics/form/control/input-form-control/schema.d.ts +2 -3
- package/src/schematics/form/control/input-form-control/schema.json +182 -105
- package/src/schematics/form/control/input-form-control/template.schema.json +20 -0
- package/src/schematics/form/control/select-form-control/index.d.ts +4 -2
- package/src/schematics/form/control/select-form-control/index.js +132 -96
- package/src/schematics/form/control/select-form-control/index.js.map +1 -1
- package/src/schematics/form/control/select-form-control/schema.d.ts +2 -3
- package/src/schematics/form/control/select-form-control/schema.json +194 -86
- package/src/schematics/form/control/select-form-control/template.schema.json +20 -0
- package/src/schematics/form/control/table-select-form-control/index.d.ts +9 -5
- package/src/schematics/form/control/table-select-form-control/index.js +199 -143
- package/src/schematics/form/control/table-select-form-control/index.js.map +1 -1
- package/src/schematics/form/control/table-select-form-control/schema.d.ts +2 -4
- package/src/schematics/form/control/table-select-form-control/schema.json +245 -100
- package/src/schematics/form/control/table-select-form-control/template.schema.json +83 -0
- package/src/schematics/form/form-component/files/component/{__componentName__.component.html.template → __componentName__.component.html.hbs} +3 -3
- package/src/schematics/form/form-component/index.d.ts +2 -0
- package/src/schematics/form/form-component/index.js +22 -7
- package/src/schematics/form/form-component/index.js.map +1 -1
- package/src/schematics/form/form-component/schema.d.ts +3 -1
- package/src/schematics/form/form-component/schema.json +275 -150
- package/src/schematics/form/form-component/template.schema.json +20 -0
- package/src/schematics/form/form-control/index.d.ts +3 -1
- package/src/schematics/form/form-control/index.js +19 -8
- package/src/schematics/form/form-control/index.js.map +1 -1
- package/src/schematics/form/form-control/schema.json +203 -75
- package/src/schematics/form/form-control/template.schema.json +34 -0
- package/src/schematics/form/form-definition/index.js +14 -1
- package/src/schematics/form/form-definition/index.js.map +1 -1
- package/src/schematics/form/form-definition/schema.json +210 -127
- package/src/schematics/form/form-definition/template.schema.json +30 -0
- package/src/schematics/form/templates/checkbox-form-control.hbs +9 -0
- package/src/schematics/form/templates/default-form-control.hbs +2 -0
- package/src/schematics/form/templates/input-form-control.hbs +9 -0
- package/src/schematics/form/templates/mat-form-field.hbs +31 -0
- package/src/schematics/form/templates/slide-toggle-form-control.hbs +8 -0
- package/src/schematics/form/templates/table-select-form-control.hbs +18 -0
- package/src/schematics/form-component.schema.json +45 -0
- package/src/schematics/form-control.schema.json +68 -0
- package/src/schematics/form-definition.schema.json +22 -0
- package/src/schematics/form-field.schema.json +24 -0
- package/src/schematics/general.schema.json +1 -4
- package/src/schematics/header-button.schema.json +42 -0
- package/src/schematics/input-form-control.schema.json +55 -0
- package/src/schematics/minimum-table.schema.json +60 -0
- package/src/schematics/pipe.schema.json +38 -0
- package/src/schematics/property.schema.json +31 -0
- package/src/schematics/select-form-control.schema.json +64 -0
- package/src/schematics/table/action/dialog-table-action/schema.json +209 -125
- package/src/schematics/table/action/dialog-table-action/template.schema.json +58 -0
- package/src/schematics/table/action/form-table-action/schema.json +383 -153
- package/src/schematics/table/action/form-table-action/template.schema.json +75 -0
- package/src/schematics/table/action/navigation-table-action/schema.json +187 -80
- package/src/schematics/table/action/navigation-table-action/template.schema.json +28 -0
- package/src/schematics/table/action/open-api-table-action/schema.json +206 -97
- package/src/schematics/table/action/open-api-table-action/template.schema.json +56 -0
- package/src/schematics/table/action/operation-table-action/schema.json +174 -84
- package/src/schematics/table/action/operation-table-action/template.schema.json +14 -0
- package/src/schematics/table/header-button/form-table-header-button/schema.json +272 -114
- package/src/schematics/table/header-button/form-table-header-button/template.schema.json +51 -0
- package/src/schematics/table/header-button/navigation-table-header-button/schema.json +167 -71
- package/src/schematics/table/header-button/navigation-table-header-button/template.schema.json +28 -0
- package/src/schematics/table/table-action/schema.json +165 -78
- package/src/schematics/table/table-action/template.schema.json +30 -0
- package/src/schematics/table/table-component/files/component/__componentName__.component.html.hbs +241 -0
- package/src/schematics/table/table-component/index.d.ts +1 -3
- package/src/schematics/table/table-component/index.js +14 -120
- package/src/schematics/table/table-component/index.js.map +1 -1
- package/src/schematics/table/table-component/schema.json +524 -277
- package/src/schematics/table/table-component/template.schema.json +20 -0
- package/src/schematics/table/table-header-button/schema.json +146 -64
- package/src/schematics/table/table-header-button/template.schema.json +30 -0
- package/src/schematics/table/templates/boolean-table-column.hbs +10 -0
- package/src/schematics/table/templates/component-table-column.hbs +12 -0
- package/src/schematics/table/templates/copy-to-clipboard-table-column.hbs +10 -0
- package/src/schematics/table/templates/date-table-column.hbs +11 -0
- package/src/schematics/table/templates/default-table-column.hbs +8 -0
- package/src/schematics/table/templates/icon-table-column.hbs +10 -0
- package/src/schematics/table/templates/link-table-column.hbs +10 -0
- package/src/schematics/table/tree-table-component/files/component/__componentName__.component.html.hbs +255 -0
- package/src/schematics/table/tree-table-component/index.d.ts +3 -0
- package/src/schematics/table/tree-table-component/index.js +28 -7
- package/src/schematics/table/tree-table-component/index.js.map +1 -1
- package/src/schematics/table/tree-table-component/schema.json +514 -260
- package/src/schematics/table/tree-table-component/template.schema.json +20 -0
- package/src/schematics/table-action.schema.json +61 -0
- package/src/schematics/table-column.schema.json +75 -0
- package/src/schematics/table.schema.json +57 -0
- package/src/schematics/templates/pipe.hbs +4 -0
- package/src/schematics/tree-component/schema.json +115 -70
- package/src/schematics/tree-component/template.schema.json +36 -0
- package/src/schematics/tree-table.schema.json +40 -0
- package/src/schematics/type.schema.json +35 -0
- package/src/schematics/upstream.schema.json +56 -0
- package/src/schematics/value.schema.json +26 -0
- package/src/template.schema.json +173 -0
- package/src/lib/accordion-itme-types.d.ts +0 -8
- package/src/lib/accordion-itme-types.js +0 -16
- package/src/lib/accordion-itme-types.js.map +0 -1
- package/src/schematics/accordion/accordion-component/files/component/__componentName__.component.html.template +0 -94
- package/src/schematics/accordion/accordion-component/files/header-component/accordion-header.component.html.template +0 -10
- package/src/schematics/data-grid-component/files/form/__componentName__.component.html.template +0 -42
- package/src/schematics/data-grid-component/files/plain/__componentName__.component.html.template +0 -25
- package/src/schematics/table/table-component/files/component/__componentName__.component.html.template +0 -299
- package/src/schematics/table/tree-table-component/files/component/__componentName__.component.html.template +0 -213
package/src/schematics/accordion/item/accordion-item-tree-table-component/template.schema.json
ADDED
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "http://json-schema.org/schema",
|
|
3
|
+
"$id": "accordion-item-tree-table-component-schematic",
|
|
4
|
+
"allOf": [
|
|
5
|
+
{
|
|
6
|
+
"$ref": "#/definitions/angular"
|
|
7
|
+
},
|
|
8
|
+
{
|
|
9
|
+
"$ref": "#/definitions/accordionItem"
|
|
10
|
+
},
|
|
11
|
+
{
|
|
12
|
+
"type": "object",
|
|
13
|
+
"properties": {
|
|
14
|
+
"modifiers": {
|
|
15
|
+
"alias": "modifier",
|
|
16
|
+
"type": "array",
|
|
17
|
+
"items": {
|
|
18
|
+
"type": "string",
|
|
19
|
+
"enum": [
|
|
20
|
+
"navigation-back-header",
|
|
21
|
+
"without-title"
|
|
22
|
+
]
|
|
23
|
+
},
|
|
24
|
+
"description": "The table modifiers"
|
|
25
|
+
},
|
|
26
|
+
"table": {
|
|
27
|
+
"$ref": "#/definitions/treeTable"
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
],
|
|
32
|
+
"definitions": {
|
|
33
|
+
"treeTable": {
|
|
34
|
+
"$ref": "../../../tree-table.schema.json"
|
|
35
|
+
},
|
|
36
|
+
"accordionItem": {
|
|
37
|
+
"$ref": "../../../accordion-item.schema.json"
|
|
38
|
+
},
|
|
39
|
+
"angular": {
|
|
40
|
+
"$ref": "../../../angular.schema.json"
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
|
|
2
|
+
<mat-expansion-panel>
|
|
3
|
+
|
|
4
|
+
<mat-expansion-panel-header>
|
|
5
|
+
<mat-panel-title i18n>{{item.title}}</mat-panel-title>
|
|
6
|
+
{{#if item.description}}
|
|
7
|
+
<mat-panel-description i18n>{{item.description}}</mat-panel-description>
|
|
8
|
+
{{/if}}
|
|
9
|
+
</mat-expansion-panel-header>
|
|
10
|
+
|
|
11
|
+
<ng-template matExpansionPanelContent>
|
|
12
|
+
<{{prefix}}-{{item.name}}-panel></{{prefix}}-{{item.name}}-panel>
|
|
13
|
+
</ng-template>
|
|
14
|
+
|
|
15
|
+
</mat-expansion-panel>
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
|
|
2
|
+
<mat-expansion-panel>
|
|
3
|
+
|
|
4
|
+
<mat-expansion-panel-header>
|
|
5
|
+
<mat-panel-title i18n>{{item.title}}</mat-panel-title>
|
|
6
|
+
{{#if item.description}}
|
|
7
|
+
<mat-panel-description i18n>{{item.description}}</mat-panel-description>
|
|
8
|
+
{{/if}}
|
|
9
|
+
</mat-expansion-panel-header>
|
|
10
|
+
|
|
11
|
+
<ng-template matExpansionPanelContent>
|
|
12
|
+
<{{prefix}}-{{item.name}}-panel></{{prefix}}-{{item.name}}-panel>
|
|
13
|
+
</ng-template>
|
|
14
|
+
|
|
15
|
+
</mat-expansion-panel>
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
|
|
2
|
+
<ng-container [ngSwitch]="data.{{item.switch.property.name}}">
|
|
3
|
+
{{#each item.switch.case}}
|
|
4
|
+
<ng-template [ngSwitchCase]="{{this.test}}">
|
|
5
|
+
{{#each this.itemList}}
|
|
6
|
+
{{#if this.permission}}<ng-template rxapIfHasPermission="{{item.permission}}">{{/if~}}
|
|
7
|
+
{{ indent (compile this.handlebars item=this prefix=../../prefix) 2 }}
|
|
8
|
+
{{#if this.permission}}</ng-template>{{/if~}}
|
|
9
|
+
{{/each}}
|
|
10
|
+
</ng-template>
|
|
11
|
+
{{/each}}
|
|
12
|
+
{{#if item.switch.defaultCase}}
|
|
13
|
+
<ng-template ngSwitchDefault>
|
|
14
|
+
{{#each item.switch.defaultCase.itemList}}
|
|
15
|
+
{{#if this.permission}}<ng-template rxapIfHasPermission="{{item.permission}}">{{/if~}}
|
|
16
|
+
{{ indent (compile this.handlebars item=this prefix=../prefix) 2 }}
|
|
17
|
+
{{#if this.permission}}</ng-template>{{/if~}}
|
|
18
|
+
{{/each}}
|
|
19
|
+
</ng-template>
|
|
20
|
+
{{/if}}
|
|
21
|
+
</ng-container>
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
|
|
2
|
+
<mat-expansion-panel>
|
|
3
|
+
|
|
4
|
+
<mat-expansion-panel-header>
|
|
5
|
+
<mat-panel-title i18n>{{item.title}}</mat-panel-title>
|
|
6
|
+
{{#if item.description}}
|
|
7
|
+
<mat-panel-description i18n>{{item.description}}</mat-panel-description>
|
|
8
|
+
{{/if}}
|
|
9
|
+
</mat-expansion-panel-header>
|
|
10
|
+
|
|
11
|
+
<ng-template matExpansionPanelContent>
|
|
12
|
+
<{{prefix}}-{{item.name}}-panel></{{prefix}}-{{item.name}}-panel>
|
|
13
|
+
</ng-template>
|
|
14
|
+
|
|
15
|
+
</mat-expansion-panel>
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
|
|
2
|
+
<mat-expansion-panel>
|
|
3
|
+
|
|
4
|
+
<mat-expansion-panel-header>
|
|
5
|
+
<mat-panel-title i18n>{{item.title}}</mat-panel-title>
|
|
6
|
+
{{#if item.description}}
|
|
7
|
+
<mat-panel-description i18n>{{item.description}}</mat-panel-description>
|
|
8
|
+
{{/if}}
|
|
9
|
+
</mat-expansion-panel-header>
|
|
10
|
+
|
|
11
|
+
<ng-template matExpansionPanelContent>
|
|
12
|
+
<{{prefix}}-{{item.name}}-panel></{{prefix}}-{{item.name}}-panel>
|
|
13
|
+
</ng-template>
|
|
14
|
+
|
|
15
|
+
</mat-expansion-panel>
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "http://json-schema.org/schema",
|
|
3
|
+
"$id": "accordion-identifier",
|
|
4
|
+
"type": "object",
|
|
5
|
+
"properties": {
|
|
6
|
+
"property": {
|
|
7
|
+
"$ref": "#/definitions/property"
|
|
8
|
+
},
|
|
9
|
+
"source": {
|
|
10
|
+
"type": "string",
|
|
11
|
+
"enum": [
|
|
12
|
+
"route"
|
|
13
|
+
],
|
|
14
|
+
"default": "route"
|
|
15
|
+
}
|
|
16
|
+
},
|
|
17
|
+
"required": [
|
|
18
|
+
"property"
|
|
19
|
+
],
|
|
20
|
+
"definitions": {
|
|
21
|
+
"property": {
|
|
22
|
+
"$ref": "./property.schema.json"
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "http://json-schema.org/schema",
|
|
3
|
+
"$id": "accordion-item",
|
|
4
|
+
"type": "object",
|
|
5
|
+
"properties": {
|
|
6
|
+
"kind": {
|
|
7
|
+
"type": "string",
|
|
8
|
+
"enum": [
|
|
9
|
+
"default",
|
|
10
|
+
"table",
|
|
11
|
+
"data-grid",
|
|
12
|
+
"data-grid-collection",
|
|
13
|
+
"tree-table",
|
|
14
|
+
"switch"
|
|
15
|
+
],
|
|
16
|
+
"description": "The type of the accordion item",
|
|
17
|
+
"default": "panel"
|
|
18
|
+
},
|
|
19
|
+
"modifiers": {
|
|
20
|
+
"alias": "modifier",
|
|
21
|
+
"type": "array",
|
|
22
|
+
"items": {
|
|
23
|
+
"type": "string"
|
|
24
|
+
},
|
|
25
|
+
"description": "The modifiers to apply to the accordion item type"
|
|
26
|
+
},
|
|
27
|
+
"identifier": {
|
|
28
|
+
"$ref": "#/definitions/accordionIdentifier"
|
|
29
|
+
},
|
|
30
|
+
"title": {
|
|
31
|
+
"type": "string"
|
|
32
|
+
},
|
|
33
|
+
"description": {
|
|
34
|
+
"type": "string"
|
|
35
|
+
},
|
|
36
|
+
"upstream": {
|
|
37
|
+
"$ref": "#/definitions/upstream"
|
|
38
|
+
},
|
|
39
|
+
"propertyList": {
|
|
40
|
+
"alias": "property",
|
|
41
|
+
"type": "array",
|
|
42
|
+
"items": {
|
|
43
|
+
"$ref": "#/definitions/property"
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
},
|
|
47
|
+
"definitions": {
|
|
48
|
+
"accordionIdentifier": {
|
|
49
|
+
"$ref": "./accordion-identifier.schema.json"
|
|
50
|
+
},
|
|
51
|
+
"upstream": {
|
|
52
|
+
"$ref": "./upstream.schema.json"
|
|
53
|
+
},
|
|
54
|
+
"property": {
|
|
55
|
+
"$ref": "./property.schema.json"
|
|
56
|
+
}
|
|
57
|
+
},
|
|
58
|
+
"additionalProperties": true
|
|
59
|
+
}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
"$id": "angular",
|
|
4
4
|
"allOf": [
|
|
5
5
|
{
|
|
6
|
-
"$ref": "
|
|
6
|
+
"$ref": "#/definitions/general"
|
|
7
7
|
},
|
|
8
8
|
{
|
|
9
9
|
"type": "object",
|
|
@@ -26,15 +26,7 @@
|
|
|
26
26
|
"type": "string"
|
|
27
27
|
},
|
|
28
28
|
"backend": {
|
|
29
|
-
"
|
|
30
|
-
"description": "The backend that should be used to handel data",
|
|
31
|
-
"enum": [
|
|
32
|
-
"none",
|
|
33
|
-
"nestjs",
|
|
34
|
-
"open-api",
|
|
35
|
-
"local"
|
|
36
|
-
],
|
|
37
|
-
"default": "none"
|
|
29
|
+
"$ref": "#/definitions/backend"
|
|
38
30
|
},
|
|
39
31
|
"directory": {
|
|
40
32
|
"type": "string",
|
|
@@ -57,5 +49,13 @@
|
|
|
57
49
|
}
|
|
58
50
|
}
|
|
59
51
|
}
|
|
60
|
-
]
|
|
52
|
+
],
|
|
53
|
+
"definitions": {
|
|
54
|
+
"general": {
|
|
55
|
+
"$ref": "./general.schema.json"
|
|
56
|
+
},
|
|
57
|
+
"backend": {
|
|
58
|
+
"$ref": "./backend.schema.json"
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
61
|
}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "http://json-schema.org/schema",
|
|
3
|
+
"$id": "button",
|
|
4
|
+
"type": "object",
|
|
5
|
+
"properties": {
|
|
6
|
+
"svgIcon": {
|
|
7
|
+
"type": "string"
|
|
8
|
+
},
|
|
9
|
+
"icon": {
|
|
10
|
+
"type": "string"
|
|
11
|
+
},
|
|
12
|
+
"directiveList": {
|
|
13
|
+
"type": "array",
|
|
14
|
+
"items": {
|
|
15
|
+
"$ref": "#/definitions/type"
|
|
16
|
+
}
|
|
17
|
+
},
|
|
18
|
+
"importList": {
|
|
19
|
+
"type": "array",
|
|
20
|
+
"items": {
|
|
21
|
+
"$ref": "#/definitions/type"
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
},
|
|
25
|
+
"definitions": {
|
|
26
|
+
"type": {
|
|
27
|
+
"$ref": "./type.schema.json"
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
}
|
package/src/schematics/data-grid-component/files/component/__componentName__.component.html.hbs
ADDED
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
{{#if inCard}}
|
|
2
|
+
<mat-card>
|
|
3
|
+
{{#if title}}
|
|
4
|
+
<mat-card-header>
|
|
5
|
+
<mat-card-title>{{title}}</mat-card-title>
|
|
6
|
+
{{#if subtitle}}<mat-card-subtitle>{{subtitle}}</mat-card-subtitle>{{/if}}
|
|
7
|
+
</mat-card-header>
|
|
8
|
+
{{/if}}
|
|
9
|
+
<mat-card-content>
|
|
10
|
+
{{/if}}
|
|
11
|
+
<div class="p-4">
|
|
12
|
+
{{#if isForm}}<form #form="rxapForm" rxapForm>{{/if~}}
|
|
13
|
+
<rxap-data-grid {{#if collection}}[data]="data"{{else}}[dataSource]="dataGridDataSource"{{/if}} mode="{{mode}}">
|
|
14
|
+
{{#each itemList}}
|
|
15
|
+
<ng-container rxapDataGridRowDef="{{this.name}}">
|
|
16
|
+
{{#if this.hasHeaderCellDef}}
|
|
17
|
+
<th *rxapDataGridHeaderCellDef class="whitespace-nowrap" i18n>{{this.header}}</th>
|
|
18
|
+
{{/if}}
|
|
19
|
+
{{#if this.hasEditCellDef}}
|
|
20
|
+
<ng-template rxapDataGridEditCellDef>
|
|
21
|
+
{{ indent (compile this.formControl.handlebars control=this.formControl) 14}}
|
|
22
|
+
</ng-template>
|
|
23
|
+
{{/if}}
|
|
24
|
+
{{#if this.hasCellDef}}
|
|
25
|
+
{{ indent (compile this.handlebars item=this) 12}}
|
|
26
|
+
{{/if}}
|
|
27
|
+
</ng-container>
|
|
28
|
+
{{/each}}
|
|
29
|
+
</rxap-data-grid>
|
|
30
|
+
{{#if isForm}}</form>{{/if}}
|
|
31
|
+
</div>
|
|
32
|
+
{{#if inCard}}
|
|
33
|
+
</mat-card-content>
|
|
34
|
+
</mat-card>
|
|
35
|
+
{{/if}}
|
|
@@ -1,16 +1,14 @@
|
|
|
1
1
|
import { Rule } from '@angular-devkit/schematics';
|
|
2
2
|
import { Normalized } from '@rxap/utilities';
|
|
3
3
|
import { NormalizedAngularOptions } from '../../lib/angular-options';
|
|
4
|
-
import { NormalizedDataGridItem } from '../../lib/data-grid-item';
|
|
5
4
|
import { NormalizedDataGridOptions } from '../../lib/data-grid-options';
|
|
6
5
|
import { DataGridComponentOptions } from './schema';
|
|
7
|
-
export interface NormalizedDataGridComponentOptions extends
|
|
8
|
-
nestController: string;
|
|
6
|
+
export interface NormalizedDataGridComponentOptions extends Readonly<Normalized<Omit<DataGridComponentOptions, 'itemList' | 'propertyList'>> & NormalizedAngularOptions & NormalizedDataGridOptions> {
|
|
9
7
|
dataSourceClassName: string;
|
|
10
8
|
dataSourceFileName: string;
|
|
11
9
|
componentName: string;
|
|
10
|
+
controllerName: string;
|
|
12
11
|
name: string;
|
|
13
|
-
itemList: ReadonlyArray<NormalizedDataGridItem>;
|
|
14
12
|
}
|
|
15
13
|
export declare function NormalizeDataGridComponentOptions(options: Readonly<DataGridComponentOptions>): NormalizedDataGridComponentOptions;
|
|
16
14
|
export default function (options: DataGridComponentOptions): () => Rule;
|
|
@@ -10,25 +10,24 @@ const path_1 = require("path");
|
|
|
10
10
|
const ts_morph_2 = require("ts-morph");
|
|
11
11
|
const angular_options_1 = require("../../lib/angular-options");
|
|
12
12
|
const backend_types_1 = require("../../lib/backend-types");
|
|
13
|
+
const data_grid_mode_1 = require("../../lib/data-grid-mode");
|
|
13
14
|
const data_grid_options_1 = require("../../lib/data-grid-options");
|
|
15
|
+
const load_handlebars_template_1 = require("../../lib/load-handlebars-template");
|
|
14
16
|
function NormalizeDataGridComponentOptions(options) {
|
|
15
17
|
const normalizedAngularOptions = (0, angular_options_1.NormalizeAngularOptions)(options);
|
|
16
18
|
const normalizedDataGridOptions = (0, data_grid_options_1.NormalizeDataGridOptions)(options);
|
|
17
19
|
(0, angular_options_1.AssertAngularOptionsNameProperty)(normalizedAngularOptions);
|
|
18
|
-
const { name, directory, } = normalizedAngularOptions;
|
|
20
|
+
const { name, directory, nestModule, } = normalizedAngularOptions;
|
|
19
21
|
const componentName = (0, schematics_utilities_1.CoerceSuffix)((0, schematics_utilities_1.dasherize)(name), '-data-grid');
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
exports.NormalizeDataGridComponentOptions = NormalizeDataGridComponentOptions;
|
|
23
|
-
function getControllerName(normalizedOptions) {
|
|
24
|
-
const { componentName, nestModule, } = normalizedOptions;
|
|
25
|
-
return (0, schematics_ts_morph_1.BuildNestControllerName)({
|
|
26
|
-
controllerName: componentName,
|
|
22
|
+
const controllerName = (0, schematics_ts_morph_1.BuildNestControllerName)({
|
|
23
|
+
controllerName: name,
|
|
27
24
|
nestModule,
|
|
28
25
|
});
|
|
26
|
+
return Object.freeze(Object.assign(Object.assign(Object.assign({}, normalizedAngularOptions), normalizedDataGridOptions), { controllerName, directory: (0, path_1.join)(directory !== null && directory !== void 0 ? directory : '', componentName), componentName, dataSourceClassName: (0, schematics_utilities_1.CoerceSuffix)((0, schematics_utilities_1.classify)(name), 'DataGridDataSource'), dataSourceFileName: (0, schematics_utilities_1.CoerceSuffix)(name, '-data-grid.data-source') }));
|
|
29
27
|
}
|
|
28
|
+
exports.NormalizeDataGridComponentOptions = NormalizeDataGridComponentOptions;
|
|
30
29
|
function componentRule(normalizedOptions) {
|
|
31
|
-
const { project, feature, directory, mode, componentName, overwrite, collection, name, } = normalizedOptions;
|
|
30
|
+
const { project, feature, directory, mode, componentName, overwrite, collection, name, inCard, } = normalizedOptions;
|
|
32
31
|
const templateOptions = Object.assign(Object.assign({}, core_1.strings), normalizedOptions);
|
|
33
32
|
return (0, schematics_1.chain)([
|
|
34
33
|
() => console.log('Coerce data source component ...'),
|
|
@@ -39,25 +38,35 @@ function componentRule(normalizedOptions) {
|
|
|
39
38
|
directory,
|
|
40
39
|
overwrite,
|
|
41
40
|
template: {
|
|
42
|
-
url: `./files/${mode}`,
|
|
43
41
|
options: templateOptions,
|
|
44
42
|
},
|
|
43
|
+
handlebars: {
|
|
44
|
+
partials: {
|
|
45
|
+
matFormField: (0, load_handlebars_template_1.LoadMatFormFieldHandlebarsTemplate)(),
|
|
46
|
+
pipe: (0, load_handlebars_template_1.LoadPipeHandlebarsTemplate)(),
|
|
47
|
+
}
|
|
48
|
+
},
|
|
45
49
|
tsMorphTransform: (project, [sourceFile], [classDeclaration]) => {
|
|
46
50
|
(0, ts_morph_1.CoerceComponentImport)(classDeclaration, { name: 'DataGridModule', moduleSpecifier: '@rxap/data-grid' });
|
|
47
|
-
(
|
|
51
|
+
if (inCard) {
|
|
52
|
+
(0, ts_morph_1.CoerceComponentImport)(classDeclaration, {
|
|
53
|
+
name: 'MatCardModule',
|
|
54
|
+
moduleSpecifier: '@angular/material/card'
|
|
55
|
+
});
|
|
56
|
+
}
|
|
48
57
|
if (!collection) {
|
|
49
58
|
const dataSourceClassName = `${(0, schematics_utilities_1.classify)(name)}DataGridDataSource`;
|
|
50
59
|
(0, schematics_ts_morph_1.AddComponentProvider)(sourceFile, dataSourceClassName);
|
|
51
|
-
(0,
|
|
60
|
+
(0, ts_morph_1.CoerceImports)(sourceFile, {
|
|
52
61
|
namedImports: [dataSourceClassName],
|
|
53
62
|
moduleSpecifier: `./${name}-data-grid.data-source`,
|
|
54
63
|
});
|
|
55
|
-
(0,
|
|
64
|
+
(0, ts_morph_1.CoercePropertyDeclaration)(classDeclaration, 'dataGridDataSource', {
|
|
56
65
|
isReadonly: true,
|
|
57
66
|
scope: ts_morph_2.Scope.Public,
|
|
58
67
|
initializer: `inject(${dataSourceClassName})`,
|
|
59
68
|
});
|
|
60
|
-
(0,
|
|
69
|
+
(0, ts_morph_1.CoerceImports)(sourceFile, {
|
|
61
70
|
namedImports: ['inject'],
|
|
62
71
|
moduleSpecifier: '@angular/core',
|
|
63
72
|
});
|
|
@@ -66,28 +75,36 @@ function componentRule(normalizedOptions) {
|
|
|
66
75
|
(0, ts_morph_1.CoerceComponentInput)(classDeclaration, 'data', 'any', { isRequired: true });
|
|
67
76
|
}
|
|
68
77
|
switch (mode) {
|
|
69
|
-
case
|
|
78
|
+
case data_grid_mode_1.DataGridMode.Form:
|
|
70
79
|
(0, ts_morph_1.CoerceComponentImport)(classDeclaration, { name: 'RxapFormsModule', moduleSpecifier: '@rxap/forms' });
|
|
71
80
|
(0, ts_morph_1.CoerceComponentImport)(classDeclaration, { name: 'ReactiveFormsModule', moduleSpecifier: '@angular/forms' });
|
|
72
81
|
(0, schematics_ts_morph_1.AddComponentProvider)(sourceFile, 'FormProviders');
|
|
73
82
|
(0, schematics_ts_morph_1.AddComponentProvider)(sourceFile, 'FormComponentProviders');
|
|
74
|
-
(0,
|
|
83
|
+
(0, ts_morph_1.CoerceImports)(sourceFile, {
|
|
75
84
|
namedImports: ['FormProviders', 'FormComponentProviders'],
|
|
76
85
|
moduleSpecifier: './form.providers',
|
|
77
86
|
});
|
|
78
87
|
break;
|
|
79
|
-
case
|
|
88
|
+
case data_grid_mode_1.DataGridMode.Plain:
|
|
80
89
|
break;
|
|
81
90
|
}
|
|
82
91
|
},
|
|
83
92
|
}),
|
|
84
93
|
]);
|
|
85
94
|
}
|
|
95
|
+
function buildGetOperationId(normalizedOptions) {
|
|
96
|
+
const { identifier } = normalizedOptions;
|
|
97
|
+
return (0, schematics_ts_morph_1.buildOperationId)(normalizedOptions, identifier ? 'getById' : 'get', (0, schematics_ts_morph_1.BuildNestControllerName)(normalizedOptions));
|
|
98
|
+
}
|
|
99
|
+
function buildSubmitOperationId(normalizedOptions) {
|
|
100
|
+
const { identifier } = normalizedOptions;
|
|
101
|
+
return (0, schematics_ts_morph_1.buildOperationId)(normalizedOptions, identifier ? 'submitById' : 'submit', (0, schematics_ts_morph_1.BuildNestControllerName)(normalizedOptions));
|
|
102
|
+
}
|
|
86
103
|
function nestjsFormModeRule(normalizedOptions) {
|
|
87
|
-
const { project, feature, nestModule, name,
|
|
88
|
-
const
|
|
89
|
-
const
|
|
90
|
-
const dataGridResponseClassName = (0,
|
|
104
|
+
const { project, feature, nestModule, name, directory, shared, itemList, collection, scope, identifier, controllerName, } = normalizedOptions;
|
|
105
|
+
const submitOperationId = buildSubmitOperationId(normalizedOptions);
|
|
106
|
+
const getOperationId = buildGetOperationId(normalizedOptions);
|
|
107
|
+
const dataGridResponseClassName = (0, ts_morph_1.OperationIdToResponseClassName)(getOperationId);
|
|
91
108
|
return (0, schematics_1.chain)([
|
|
92
109
|
() => console.log('Coerce form provider rule for the data grid data source submit method ...'),
|
|
93
110
|
(0, schematics_ts_morph_1.CoerceFormProviderRule)({
|
|
@@ -137,25 +154,37 @@ function nestjsFormModeRule(normalizedOptions) {
|
|
|
137
154
|
type: 'unknown',
|
|
138
155
|
});
|
|
139
156
|
typeAliasDeclaration.setIsExported(true);
|
|
140
|
-
|
|
141
|
-
|
|
157
|
+
const excludedProperties = itemList
|
|
158
|
+
.filter(item => !item.formControl)
|
|
159
|
+
.map(item => item.name)
|
|
160
|
+
.filter(name => !itemList.filter(i => i.formControl).some(i => { var _a; return ((_a = i.formControl) === null || _a === void 0 ? void 0 : _a.name) === name; }));
|
|
161
|
+
// if an identifier is defined and the identifier is not an item with a form control add the identifier property to the excluded properties list
|
|
162
|
+
if (identifier && !itemList.some(item => { var _a; return ((_a = item.formControl) === null || _a === void 0 ? void 0 : _a.name) === (identifier === null || identifier === void 0 ? void 0 : identifier.property.name); })) {
|
|
163
|
+
excludedProperties.push(identifier.property.name);
|
|
164
|
+
}
|
|
165
|
+
if (excludedProperties.length) {
|
|
166
|
+
typeAliasDeclaration.setType(`Omit<${dataGridResponseClassName}, '${excludedProperties.join('\' | \'')}'>`);
|
|
167
|
+
}
|
|
168
|
+
else {
|
|
169
|
+
typeAliasDeclaration.setType(dataGridResponseClassName);
|
|
170
|
+
}
|
|
171
|
+
(0, ts_morph_1.CoerceImports)(sourceFile, {
|
|
142
172
|
namedImports: [dataGridResponseClassName],
|
|
143
|
-
moduleSpecifier: (0,
|
|
173
|
+
moduleSpecifier: (0, ts_morph_1.OperationIdToResponseClassImportPath)(getOperationId, scope),
|
|
144
174
|
});
|
|
145
175
|
},
|
|
146
176
|
}),
|
|
147
177
|
() => console.log('Coerce submit operation for the data grid data source ...'),
|
|
148
178
|
(0, schematics_ts_morph_1.CoerceSubmitDataGridOperation)({
|
|
149
|
-
controllerName
|
|
179
|
+
controllerName,
|
|
150
180
|
nestModule,
|
|
151
181
|
project,
|
|
152
182
|
feature,
|
|
153
183
|
shared,
|
|
184
|
+
idProperty: identifier === null || identifier === void 0 ? void 0 : identifier.property,
|
|
154
185
|
propertyList: itemList
|
|
155
|
-
.map(item =>
|
|
156
|
-
|
|
157
|
-
type: item.type,
|
|
158
|
-
})),
|
|
186
|
+
.map(item => item.formControl)
|
|
187
|
+
.filter((formControl) => !!formControl),
|
|
159
188
|
skipCoerce: true,
|
|
160
189
|
collection,
|
|
161
190
|
}),
|
|
@@ -164,15 +193,14 @@ function nestjsFormModeRule(normalizedOptions) {
|
|
|
164
193
|
function nestjsModeRule(normalizedOptions) {
|
|
165
194
|
const { mode } = normalizedOptions;
|
|
166
195
|
switch (mode) {
|
|
167
|
-
case
|
|
196
|
+
case data_grid_mode_1.DataGridMode.Form:
|
|
168
197
|
return nestjsFormModeRule(normalizedOptions);
|
|
169
198
|
}
|
|
170
199
|
return (0, schematics_1.noop)();
|
|
171
200
|
}
|
|
172
201
|
function nestjsBackendRule(normalizedOptions) {
|
|
173
|
-
const { project, feature, collection, shared, nestModule, name,
|
|
174
|
-
const
|
|
175
|
-
const getOperationId = (0, schematics_ts_morph_1.buildOperationId)(normalizedOptions, 'get', controllerName);
|
|
202
|
+
const { project, feature, collection, shared, nestModule, name, directory, scope, upstream, propertyList, identifier, controllerName, } = normalizedOptions;
|
|
203
|
+
const getOperationId = buildGetOperationId(normalizedOptions);
|
|
176
204
|
return (0, schematics_1.chain)([
|
|
177
205
|
() => console.log('Coerce get operation for the data grid data source ...'),
|
|
178
206
|
(0, schematics_ts_morph_1.CoerceGetDataGridOperation)({
|
|
@@ -181,12 +209,10 @@ function nestjsBackendRule(normalizedOptions) {
|
|
|
181
209
|
shared,
|
|
182
210
|
nestModule,
|
|
183
211
|
collection,
|
|
184
|
-
controllerName
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
type: item.type,
|
|
189
|
-
})),
|
|
212
|
+
controllerName,
|
|
213
|
+
upstream,
|
|
214
|
+
propertyList,
|
|
215
|
+
idProperty: identifier === null || identifier === void 0 ? void 0 : identifier.property,
|
|
190
216
|
}),
|
|
191
217
|
() => console.log('Coerce data grid data source class'),
|
|
192
218
|
(0, schematics_ts_morph_1.CoerceDataSourceClass)({
|
|
@@ -196,26 +222,26 @@ function nestjsBackendRule(normalizedOptions) {
|
|
|
196
222
|
directory,
|
|
197
223
|
name: (0, schematics_utilities_1.CoerceSuffix)(name, '-data-grid'),
|
|
198
224
|
tsMorphTransform: (project, sourceFile, classDeclaration) => {
|
|
199
|
-
classDeclaration.setExtends(`DataGridDataSource<${(0,
|
|
200
|
-
(0,
|
|
201
|
-
namedImports: [(0,
|
|
202
|
-
moduleSpecifier: (0,
|
|
225
|
+
classDeclaration.setExtends(`DataGridDataSource<${(0, ts_morph_1.OperationIdToResponseClassName)(getOperationId)}>`);
|
|
226
|
+
(0, ts_morph_1.CoerceImports)(sourceFile, {
|
|
227
|
+
namedImports: [(0, ts_morph_1.OperationIdToResponseClassName)(getOperationId)],
|
|
228
|
+
moduleSpecifier: (0, ts_morph_1.OperationIdToResponseClassImportPath)(getOperationId, scope),
|
|
203
229
|
});
|
|
204
|
-
(0,
|
|
230
|
+
(0, ts_morph_1.CoerceImports)(sourceFile, {
|
|
205
231
|
namedImports: [(0, schematics_ts_morph_1.OperationIdToClassName)(getOperationId)],
|
|
206
232
|
moduleSpecifier: (0, schematics_ts_morph_1.OperationIdToClassImportPath)(getOperationId, scope),
|
|
207
233
|
});
|
|
208
|
-
(0,
|
|
234
|
+
(0, ts_morph_1.CoerceImports)(sourceFile, {
|
|
209
235
|
namedImports: ['DataGridDataSource'],
|
|
210
236
|
moduleSpecifier: '@rxap/data-grid',
|
|
211
237
|
});
|
|
212
|
-
(0,
|
|
238
|
+
(0, ts_morph_1.CoercePropertyDeclaration)(classDeclaration, 'method', {
|
|
213
239
|
scope: ts_morph_2.Scope.Protected,
|
|
214
240
|
isReadonly: true,
|
|
215
241
|
hasOverrideKeyword: true,
|
|
216
242
|
initializer: `inject(${(0, schematics_ts_morph_1.OperationIdToClassName)(getOperationId)})`,
|
|
217
243
|
});
|
|
218
|
-
(0,
|
|
244
|
+
(0, ts_morph_1.CoerceImports)(sourceFile, {
|
|
219
245
|
namedImports: ['inject'],
|
|
220
246
|
moduleSpecifier: '@angular/core',
|
|
221
247
|
});
|
|
@@ -260,15 +286,20 @@ function backendRule(normalizedOptions) {
|
|
|
260
286
|
return (0, schematics_1.noop)();
|
|
261
287
|
}
|
|
262
288
|
function formModeRule(normalizedOptions) {
|
|
263
|
-
const { project, feature, directory, name, itemList, dataSourceClassName, dataSourceFileName, componentName, overwrite, } = normalizedOptions;
|
|
289
|
+
const { project, feature, directory, name, itemList, dataSourceClassName, dataSourceFileName, componentName, overwrite, backend, nestModule, controllerName, identifier, } = normalizedOptions;
|
|
264
290
|
return (0, schematics_1.chain)([
|
|
265
291
|
() => console.log('Coerce form definition ...'),
|
|
266
|
-
(0,
|
|
292
|
+
(0, schematics_utilities_1.ExecuteSchematic)('form-definition', {
|
|
267
293
|
name,
|
|
268
294
|
project,
|
|
269
|
-
feature,
|
|
270
295
|
directory,
|
|
271
|
-
|
|
296
|
+
feature,
|
|
297
|
+
controlList: itemList.map(item => item.formControl).filter((formControl) => !!formControl),
|
|
298
|
+
overwrite,
|
|
299
|
+
backend,
|
|
300
|
+
nestModule,
|
|
301
|
+
controllerName,
|
|
302
|
+
identifier,
|
|
272
303
|
}),
|
|
273
304
|
() => console.log('Coerce form providers ...'),
|
|
274
305
|
(0, schematics_ts_morph_1.CoerceFormProvidersFile)({
|
|
@@ -322,7 +353,7 @@ function formModeRule(normalizedOptions) {
|
|
|
322
353
|
function modeRule(normalizedOptions) {
|
|
323
354
|
const { mode } = normalizedOptions;
|
|
324
355
|
switch (mode) {
|
|
325
|
-
case
|
|
356
|
+
case data_grid_mode_1.DataGridMode.Form:
|
|
326
357
|
return formModeRule(normalizedOptions);
|
|
327
358
|
}
|
|
328
359
|
return (0, schematics_1.noop)();
|