@rxap/schematic-angular 16.2.0-dev.6 → 16.2.0-dev.8

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.
Files changed (198) hide show
  1. package/CHANGELOG.md +29 -0
  2. package/README.md +1 -1
  3. package/package.json +10 -8
  4. package/src/lib/accordion-header.d.ts +5 -0
  5. package/src/lib/accordion-header.js +8 -2
  6. package/src/lib/accordion-header.js.map +1 -1
  7. package/src/lib/accordion-item.d.ts +17 -16
  8. package/src/lib/accordion-item.js +44 -32
  9. package/src/lib/accordion-item.js.map +1 -1
  10. package/src/lib/accordion-itme-kinds.d.ts +8 -0
  11. package/src/lib/accordion-itme-kinds.js +16 -0
  12. package/src/lib/accordion-itme-kinds.js.map +1 -0
  13. package/src/lib/coerce-accordion-component.js +2 -2
  14. package/src/lib/coerce-accordion-component.js.map +1 -1
  15. package/src/lib/coerce-form-component.js +5 -2
  16. package/src/lib/coerce-form-component.js.map +1 -1
  17. package/src/lib/coerce-minimum-table-component.js +6 -3
  18. package/src/lib/coerce-minimum-table-component.js.map +1 -1
  19. package/src/lib/coerce-tree-table-component.js +2 -0
  20. package/src/lib/coerce-tree-table-component.js.map +1 -1
  21. package/src/lib/data-grid-item.d.ts +4 -7
  22. package/src/lib/data-grid-item.js.map +1 -1
  23. package/src/lib/data-grid-options.d.ts +2 -0
  24. package/src/lib/data-grid-options.js +7 -3
  25. package/src/lib/data-grid-options.js.map +1 -1
  26. package/src/lib/form/generate-form-template.d.ts +5 -0
  27. package/src/lib/form/generate-form-template.js +12 -0
  28. package/src/lib/form/generate-form-template.js.map +1 -0
  29. package/src/lib/form-component-control.d.ts +2 -6
  30. package/src/lib/form-component-control.js.map +1 -1
  31. package/src/lib/form-control.d.ts +125 -0
  32. package/src/lib/form-control.js +303 -0
  33. package/src/lib/form-control.js.map +1 -0
  34. package/src/lib/form-definition-control.d.ts +3 -57
  35. package/src/lib/form-definition-control.js +18 -144
  36. package/src/lib/form-definition-control.js.map +1 -1
  37. package/src/lib/load-handlebars-template.d.ts +3 -0
  38. package/src/lib/load-handlebars-template.js +24 -0
  39. package/src/lib/load-handlebars-template.js.map +1 -0
  40. package/src/lib/minimum-table-component-options.d.ts +1 -1
  41. package/src/lib/minimum-table-component-options.js +3 -3
  42. package/src/lib/minimum-table-component-options.js.map +1 -1
  43. package/src/lib/table-column.d.ts +8 -2
  44. package/src/lib/table-column.js +63 -44
  45. package/src/lib/table-column.js.map +1 -1
  46. package/src/schematics/accordion/accordion-component/files/component/__componentName__.component.html.hbs +25 -0
  47. package/src/schematics/accordion/accordion-component/index.js +6 -98
  48. package/src/schematics/accordion/accordion-component/index.js.map +1 -1
  49. package/src/schematics/accordion/accordion-component/template.schema.json +102 -0
  50. package/src/schematics/accordion/accordion-item-component/index.d.ts +2 -2
  51. package/src/schematics/accordion/accordion-item-component/index.js +42 -42
  52. package/src/schematics/accordion/accordion-item-component/index.js.map +1 -1
  53. package/src/schematics/accordion/accordion-item-component/schema.d.ts +2 -2
  54. package/src/schematics/accordion/accordion-item-component/template.schema.json +33 -0
  55. package/src/schematics/accordion/item/accordion-item-data-grid-component/index.d.ts +1 -1
  56. package/src/schematics/accordion/item/accordion-item-data-grid-component/index.js +17 -29
  57. package/src/schematics/accordion/item/accordion-item-data-grid-component/index.js.map +1 -1
  58. package/src/schematics/accordion/item/accordion-item-data-grid-component/schema.d.ts +1 -1
  59. package/src/schematics/accordion/item/accordion-item-data-grid-component/template.schema.json +31 -0
  60. package/src/schematics/accordion/item/accordion-item-switch-component/index.d.ts +1 -1
  61. package/src/schematics/accordion/item/accordion-item-switch-component/index.js +4 -4
  62. package/src/schematics/accordion/item/accordion-item-switch-component/index.js.map +1 -1
  63. package/src/schematics/accordion/item/accordion-item-switch-component/schema.d.ts +1 -1
  64. package/src/schematics/accordion/item/accordion-item-switch-component/template.schema.json +84 -0
  65. package/src/schematics/accordion/item/accordion-item-table-component/index.d.ts +1 -1
  66. package/src/schematics/accordion/item/accordion-item-table-component/index.js +8 -8
  67. package/src/schematics/accordion/item/accordion-item-table-component/index.js.map +1 -1
  68. package/src/schematics/accordion/item/accordion-item-table-component/schema.d.ts +1 -1
  69. package/src/schematics/accordion/item/accordion-item-table-component/template.schema.json +46 -0
  70. package/src/schematics/accordion/item/accordion-item-tree-table-component/index.d.ts +1 -1
  71. package/src/schematics/accordion/item/accordion-item-tree-table-component/index.js +10 -10
  72. package/src/schematics/accordion/item/accordion-item-tree-table-component/index.js.map +1 -1
  73. package/src/schematics/accordion/item/accordion-item-tree-table-component/schema.d.ts +1 -1
  74. package/src/schematics/accordion/item/accordion-item-tree-table-component/template.schema.json +46 -0
  75. package/src/schematics/accordion/templates/accordion-header.hbs +6 -0
  76. package/src/schematics/accordion/templates/data-grid-accordion-item.hbs +15 -0
  77. package/src/schematics/accordion/templates/default-accordion-item.hbs +15 -0
  78. package/src/schematics/accordion/templates/switch-accordion-item.hbs +21 -0
  79. package/src/schematics/accordion/templates/table-accordion-item.hbs +15 -0
  80. package/src/schematics/accordion/templates/tree-table-accordion-item.hbs +15 -0
  81. package/src/schematics/accordion-item.schema.json +35 -0
  82. package/src/schematics/angular.schema.json +2 -10
  83. package/src/schematics/backend.schema.json +13 -0
  84. package/src/schematics/button.schema.json +30 -0
  85. package/src/schematics/data-grid-component/files/component/__componentName__.component.html.hbs +34 -0
  86. package/src/schematics/data-grid-component/index.d.ts +0 -1
  87. package/src/schematics/data-grid-component/index.js +21 -7
  88. package/src/schematics/data-grid-component/index.js.map +1 -1
  89. package/src/schematics/data-grid-component/template.schema.json +23 -0
  90. package/src/schematics/data-grid-item.schema.json +23 -0
  91. package/src/schematics/data-grid.schema.json +44 -0
  92. package/src/schematics/dialog-component/template.schema.json +65 -0
  93. package/src/schematics/form/control/input-form-control/index.d.ts +2 -2
  94. package/src/schematics/form/control/input-form-control/index.js +4 -27
  95. package/src/schematics/form/control/input-form-control/index.js.map +1 -1
  96. package/src/schematics/form/control/input-form-control/schema.d.ts +2 -3
  97. package/src/schematics/form/control/input-form-control/template.schema.json +23 -0
  98. package/src/schematics/form/control/select-form-control/index.d.ts +4 -2
  99. package/src/schematics/form/control/select-form-control/index.js +132 -96
  100. package/src/schematics/form/control/select-form-control/index.js.map +1 -1
  101. package/src/schematics/form/control/select-form-control/schema.d.ts +2 -3
  102. package/src/schematics/form/control/select-form-control/template.schema.json +23 -0
  103. package/src/schematics/form/control/table-select-form-control/index.d.ts +4 -6
  104. package/src/schematics/form/control/table-select-form-control/index.js +80 -68
  105. package/src/schematics/form/control/table-select-form-control/index.js.map +1 -1
  106. package/src/schematics/form/control/table-select-form-control/schema.d.ts +2 -4
  107. package/src/schematics/form/control/table-select-form-control/template.schema.json +78 -0
  108. package/src/schematics/form/form-component/files/component/{__componentName__.component.html.template → __componentName__.component.html.hbs} +3 -3
  109. package/src/schematics/form/form-component/index.js +4 -1
  110. package/src/schematics/form/form-component/index.js.map +1 -1
  111. package/src/schematics/form/form-component/template.schema.json +23 -0
  112. package/src/schematics/form/form-control/index.d.ts +3 -1
  113. package/src/schematics/form/form-control/index.js +19 -8
  114. package/src/schematics/form/form-control/index.js.map +1 -1
  115. package/src/schematics/form/form-control/template.schema.json +37 -0
  116. package/src/schematics/form/form-definition/index.js +14 -1
  117. package/src/schematics/form/form-definition/index.js.map +1 -1
  118. package/src/schematics/form/form-definition/template.schema.json +33 -0
  119. package/src/schematics/form/templates/checkbox-form-control.hbs +9 -0
  120. package/src/schematics/form/templates/default-form-control.hbs +2 -0
  121. package/src/schematics/form/templates/input-form-control.hbs +9 -0
  122. package/src/schematics/form/templates/mat-form-field.hbs +31 -0
  123. package/src/schematics/form/templates/slide-toggle-form-control.hbs +8 -0
  124. package/src/schematics/form/templates/table-select-form-control.hbs +18 -0
  125. package/src/schematics/form-component.schema.json +39 -0
  126. package/src/schematics/form-control.schema.json +68 -0
  127. package/src/schematics/form-definition.schema.json +22 -0
  128. package/src/schematics/form-field.schema.json +24 -0
  129. package/src/schematics/header-button.schema.json +42 -0
  130. package/src/schematics/input-form-control.schema.json +47 -0
  131. package/src/schematics/minimum-table.schema.json +54 -0
  132. package/src/schematics/property.schema.json +28 -0
  133. package/src/schematics/select-form-control.schema.json +53 -0
  134. package/src/schematics/table/action/dialog-table-action/template.schema.json +61 -0
  135. package/src/schematics/table/action/form-table-action/template.schema.json +75 -0
  136. package/src/schematics/table/action/navigation-table-action/template.schema.json +31 -0
  137. package/src/schematics/table/action/open-api-table-action/template.schema.json +59 -0
  138. package/src/schematics/table/action/operation-table-action/template.schema.json +17 -0
  139. package/src/schematics/table/header-button/form-table-header-button/template.schema.json +51 -0
  140. package/src/schematics/table/header-button/navigation-table-header-button/template.schema.json +31 -0
  141. package/src/schematics/table/table-action/template.schema.json +30 -0
  142. package/src/schematics/table/table-component/files/component/__componentName__.component.html.hbs +241 -0
  143. package/src/schematics/table/table-component/index.d.ts +1 -1
  144. package/src/schematics/table/table-component/index.js +2 -2
  145. package/src/schematics/table/table-component/index.js.map +1 -1
  146. package/src/schematics/table/table-component/template.schema.json +26 -0
  147. package/src/schematics/table/table-header-button/template.schema.json +30 -0
  148. package/src/schematics/table/templates/boolean-table-column.hbs +10 -0
  149. package/src/schematics/table/templates/component-table-column.hbs +12 -0
  150. package/src/schematics/table/templates/copy-to-clipboard-table-column.hbs +10 -0
  151. package/src/schematics/table/templates/date-table-column.hbs +11 -0
  152. package/src/schematics/table/templates/default-table-column.hbs +8 -0
  153. package/src/schematics/table/templates/icon-table-column.hbs +10 -0
  154. package/src/schematics/table/templates/link-table-column.hbs +10 -0
  155. package/src/schematics/table/tree-table-component/files/component/__componentName__.component.html.hbs +249 -0
  156. package/src/schematics/table/tree-table-component/template.schema.json +26 -0
  157. package/src/schematics/table-action.schema.json +61 -0
  158. package/src/schematics/table-column.schema.json +69 -0
  159. package/src/schematics/table.schema.json +54 -0
  160. package/src/schematics/tree-component/template.schema.json +31 -0
  161. package/src/schematics/tree-table.schema.json +40 -0
  162. package/src/schematics/type.schema.json +35 -0
  163. package/src/schematics/upstream.schema.json +56 -0
  164. package/src/lib/accordion-itme-types.d.ts +0 -8
  165. package/src/lib/accordion-itme-types.js +0 -16
  166. package/src/lib/accordion-itme-types.js.map +0 -1
  167. package/src/schematics/accordion/accordion-component/files/component/__componentName__.component.html.template +0 -94
  168. package/src/schematics/accordion/accordion-component/files/header-component/accordion-header.component.html.template +0 -10
  169. package/src/schematics/accordion/accordion-component/schema.json +0 -191
  170. package/src/schematics/accordion/accordion-item-component/schema.json +0 -92
  171. package/src/schematics/accordion/item/accordion-item-data-grid-component/schema.json +0 -133
  172. package/src/schematics/accordion/item/accordion-item-switch-component/schema.json +0 -226
  173. package/src/schematics/accordion/item/accordion-item-table-component/schema.json +0 -334
  174. package/src/schematics/accordion/item/accordion-item-tree-table-component/schema.json +0 -334
  175. package/src/schematics/data-grid-component/files/form/__componentName__.component.html.template +0 -42
  176. package/src/schematics/data-grid-component/files/plain/__componentName__.component.html.template +0 -25
  177. package/src/schematics/data-grid-component/schema.json +0 -176
  178. package/src/schematics/dialog-component/schema.json +0 -81
  179. package/src/schematics/form/control/input-form-control/schema.json +0 -116
  180. package/src/schematics/form/control/select-form-control/schema.json +0 -102
  181. package/src/schematics/form/control/table-select-form-control/schema.json +0 -106
  182. package/src/schematics/form/form-component/schema.json +0 -173
  183. package/src/schematics/form/form-control/schema.json +0 -92
  184. package/src/schematics/form/form-definition/schema.json +0 -148
  185. package/src/schematics/table/action/dialog-table-action/schema.json +0 -148
  186. package/src/schematics/table/action/form-table-action/schema.json +0 -202
  187. package/src/schematics/table/action/navigation-table-action/schema.json +0 -95
  188. package/src/schematics/table/action/open-api-table-action/schema.json +0 -121
  189. package/src/schematics/table/action/operation-table-action/schema.json +0 -98
  190. package/src/schematics/table/header-button/form-table-header-button/schema.json +0 -139
  191. package/src/schematics/table/header-button/navigation-table-header-button/schema.json +0 -87
  192. package/src/schematics/table/table-action/schema.json +0 -94
  193. package/src/schematics/table/table-component/files/component/__componentName__.component.html.template +0 -299
  194. package/src/schematics/table/table-component/schema.json +0 -340
  195. package/src/schematics/table/table-header-button/schema.json +0 -80
  196. package/src/schematics/table/tree-table-component/files/component/__componentName__.component.html.template +0 -259
  197. package/src/schematics/table/tree-table-component/schema.json +0 -316
  198. package/src/schematics/tree-component/schema.json +0 -86
@@ -0,0 +1,33 @@
1
+ {
2
+ "$schema": "http://json-schema.org/schema",
3
+ "$id": "form-definition-schematic",
4
+ "allOf": [
5
+ {
6
+ "$ref": "../../angular.schema.json"
7
+ },
8
+ {
9
+ "$ref": "../../form-definition.schema.json"
10
+ },
11
+ {
12
+ "type": "object",
13
+ "properties": {
14
+ "standalone": {
15
+ "type": "boolean",
16
+ "description": "Whether the form definition has a form.provider file",
17
+ "default": true
18
+ }
19
+ }
20
+ }
21
+ ],
22
+ "definitions": {
23
+ "type": {
24
+ "$ref": "../../type.schema.json"
25
+ },
26
+ "property": {
27
+ "$ref": "../../property.schema.json"
28
+ },
29
+ "button": {
30
+ "$ref": "../../button.schema.json"
31
+ }
32
+ }
33
+ }
@@ -0,0 +1,9 @@
1
+
2
+ <mat-checkbox
3
+ indeterminate
4
+ formControlName="{{control.name}}"
5
+ labelPosition="{{control.labelPosition}}"
6
+ {{#if parentControlContainer}}parentControlContainer{{/if~}}
7
+ >
8
+ <ng-container i18n>{{control.label}}</ng-container>
9
+ </mat-checkbox>
@@ -0,0 +1,2 @@
1
+
2
+ <!-- form control: {{control.name}} -->
@@ -0,0 +1,9 @@
1
+ {{#> matFormField control=control}}
2
+ <input
3
+ matInput
4
+ formControlName="{{control.name}}"
5
+ type="{{control.inputType}}"
6
+ {{#if parentControlContainer}}parentControlContainer{{/if~}}
7
+ {{#if control.placeholder}}i18n-placeholder placeholder="{{control.placeholder}}"{{/if~}}
8
+ />
9
+ {{/matFormField}}
@@ -0,0 +1,31 @@
1
+
2
+ <mat-form-field>
3
+ {{#if control.formField.label}}
4
+ <mat-label>{{control.formField.label}}</mat-label>
5
+ {{/if}}
6
+ {{#if control.formField.prefixButton}}
7
+ {{#if control.formField.prefixButton.icon}}
8
+ <button tabindex="-1" type="button" matSuffix mat-icon-button{{#each control.formFiled.prefixButton.directiveList}} {{this.name}}{{/each}}>
9
+ <mat-icon>{{control.formField.prefixButton.icon}}</mat-icon>
10
+ </button>
11
+ {{/if}}
12
+ {{#if control.formField.prefixButton.svgIcon}}
13
+ <button tabindex="-1" type="button" matSuffix mat-icon-button{{#each control.formFiled.prefixButton.directiveList}} {{this.name}}{{/each}}>
14
+ <mat-icon>{{control.formField.prefixButton.svgIcon}}</mat-icon>
15
+ </button>
16
+ {{/if}}
17
+ {{/if}}
18
+ {{#if control.formField.suffixButton}}
19
+ {{#if control.formField.suffixButton.icon}}
20
+ <button tabindex="-1" type="button" matPrefix mat-icon-button{{#each control.formFiled.suffixButton.directiveList}} {{this.name}}{{/each}}>
21
+ <mat-icon>{{control.formField.suffixButton.icon}}</mat-icon>
22
+ </button>
23
+ {{/if}}
24
+ {{#if control.formField.suffixButton.svgIcon}}
25
+ <button tabindex="-1" type="button" matPrefix mat-icon-button{{#each control.formFiled.suffixButton.directiveList}} {{this.name}}{{/each}}>
26
+ <mat-icon>{{control.formField.suffixButton.svgIcon}}</mat-icon>
27
+ </button>
28
+ {{/if}}
29
+ {{/if}}
30
+ {{> @partial-block }}
31
+ </mat-form-field>
@@ -0,0 +1,8 @@
1
+
2
+ <mat-slide-toggle
3
+ formControlName="{{control.name}}"
4
+ labelPosition="{{control.labelPosition}}"
5
+ {{#if parentControlContainer}}parentControlContainer{{/if~}}
6
+ >
7
+ <ng-container i18n>{{control.label}}</ng-container>
8
+ </mat-slide-toggle>
@@ -0,0 +1,18 @@
1
+ {{#> matFormField control=control}}
2
+ <eurogard-table-select-input
3
+ eurogardOpenTableSelectWindow
4
+ formControlName="{{control.name}}"
5
+ {{#if control.title}}i18n-label label="{{control.title}}"{{/if~}}
6
+ {{#if parentControlContainer}}parentControlContainer{{/if~}}
7
+ >
8
+ </eurogard-table-select-input>
9
+ <button
10
+ eurogardOpenTableSelectWindow
11
+ mat-icon-button
12
+ matPrefix
13
+ tabindex="-1"
14
+ {{#if control.title}}i18n-label label="{{control.title}}"{{/if~}}
15
+ >
16
+ <mat-icon svgIcon="table-eye"></mat-icon>
17
+ </button>
18
+ {{/matFormField}}
@@ -0,0 +1,39 @@
1
+ {
2
+ "$schema": "http://json-schema.org/schema",
3
+ "$id": "form-component",
4
+ "allOf": [
5
+ {
6
+ "$ref": "./form-definition.schema.json"
7
+ },
8
+ {
9
+ "type": "object",
10
+ "properties": {
11
+ "window": {
12
+ "type": "boolean",
13
+ "description": "Whether the form can be opened in a window"
14
+ },
15
+ "role": {
16
+ "type": "string",
17
+ "description": "Define the role of the form"
18
+ },
19
+ "matFormFieldDefaultOptions": {
20
+ "appearance": {
21
+ "type": "string",
22
+ "description": "The appearance of the mat form field",
23
+ "enum": [
24
+ "legacy",
25
+ "standard",
26
+ "fill",
27
+ "outline"
28
+ ]
29
+ }
30
+ }
31
+ }
32
+ }
33
+ ],
34
+ "definitions": {
35
+ "type": {
36
+ "$ref": "./type.schema.json"
37
+ }
38
+ }
39
+ }
@@ -0,0 +1,68 @@
1
+ {
2
+ "$schema": "http://json-schema.org/schema",
3
+ "$id": "form-control",
4
+ "type": "object",
5
+ "properties": {
6
+ "name": {
7
+ "type": "string",
8
+ "description": "The name of the control"
9
+ },
10
+ "type": {
11
+ "$ref": "#/definitions/type"
12
+ },
13
+ "isArray": {
14
+ "type": "boolean",
15
+ "description": "Whether the control value is an array",
16
+ "default": false
17
+ },
18
+ "state": {
19
+ "type": "string",
20
+ "description": "The initial state of the control"
21
+ },
22
+ "isRequired": {
23
+ "type": "boolean",
24
+ "description": "Whether the control value is required",
25
+ "default": false
26
+ },
27
+ "isReadonly": {
28
+ "type": "boolean",
29
+ "description": "Whether the control value is readonly",
30
+ "default": false
31
+ },
32
+ "isDisabled": {
33
+ "type": "boolean",
34
+ "description": "Whether the control value is disabled",
35
+ "default": false
36
+ },
37
+ "validatorList": {
38
+ "type": "array",
39
+ "items": {
40
+ "type": "string"
41
+ }
42
+ },
43
+ "kind": {
44
+ "type": "string",
45
+ "description": "The name of the template",
46
+ "enum": [
47
+ "default",
48
+ "input",
49
+ "select",
50
+ "checkbox",
51
+ "autocomplete-table-select",
52
+ "table-select",
53
+ "textarea",
54
+ "slide-toggle"
55
+ ],
56
+ "default": "default"
57
+ }
58
+ },
59
+ "required": [
60
+ "name"
61
+ ],
62
+ "additionalProperties": true,
63
+ "definitions": {
64
+ "type": {
65
+ "$ref": "./type.schema.json"
66
+ }
67
+ }
68
+ }
@@ -0,0 +1,22 @@
1
+ {
2
+ "$schema": "http://json-schema.org/schema",
3
+ "$id": "form-definition",
4
+ "type": "object",
5
+ "properties": {
6
+ "controlList": {
7
+ "alias": "control",
8
+ "type": "array",
9
+ "items": {
10
+ "$ref": "./form-control.schema.json"
11
+ }
12
+ }
13
+ },
14
+ "required": [
15
+ "controlList"
16
+ ],
17
+ "definitions": {
18
+ "type": {
19
+ "$ref": "./type.schema.json"
20
+ }
21
+ }
22
+ }
@@ -0,0 +1,24 @@
1
+ {
2
+ "$schema": "http://json-schema.org/schema",
3
+ "$id": "form-field",
4
+ "type": "object",
5
+ "properties": {
6
+ "label": {
7
+ "type": "string"
8
+ },
9
+ "prefixButton": {
10
+ "$ref": "#/definitions/button"
11
+ },
12
+ "suffixButton": {
13
+ "$ref": "#/definitions/button"
14
+ },
15
+ "hasClearButton": {
16
+ "type": "boolean"
17
+ }
18
+ },
19
+ "definitions": {
20
+ "button": {
21
+ "$ref": "./button.schema.json"
22
+ }
23
+ }
24
+ }
@@ -0,0 +1,42 @@
1
+ {
2
+ "$schema": "http://json-schema.org/schema",
3
+ "$id": "header-button",
4
+ "type": "object",
5
+ "properties": {
6
+ "permission": {
7
+ "type": "string"
8
+ },
9
+ "icon": {
10
+ "type": "string"
11
+ },
12
+ "svgIcon": {
13
+ "type": "string"
14
+ },
15
+ "refresh": {
16
+ "type": "boolean",
17
+ "description": "Whether the table action should refresh the table after execution",
18
+ "default": false
19
+ },
20
+ "confirm": {
21
+ "type": "boolean",
22
+ "description": "Whether the table action should confirm before execution",
23
+ "default": false
24
+ },
25
+ "tooltip": {
26
+ "type": "string",
27
+ "description": "The tooltip for the table action"
28
+ },
29
+ "errorMessage": {
30
+ "type": "string",
31
+ "description": "The error message for the table action"
32
+ },
33
+ "successMessage": {
34
+ "type": "string",
35
+ "description": "The success message for the table action"
36
+ },
37
+ "options": {
38
+ "type": "object",
39
+ "additionalProperties": true
40
+ }
41
+ }
42
+ }
@@ -0,0 +1,47 @@
1
+ {
2
+ "$schema": "http://json-schema.org/schema",
3
+ "$id": "input-form-control",
4
+ "allOf": [
5
+ {
6
+ "$ref": "./form-control.schema.json"
7
+ },
8
+ {
9
+ "type": "object",
10
+ "properties": {
11
+ "inputType": {
12
+ "type": "string",
13
+ "enum": [
14
+ "text",
15
+ "password",
16
+ "email",
17
+ "number",
18
+ "tel",
19
+ "url",
20
+ "checkbox",
21
+ "color",
22
+ "date",
23
+ "time",
24
+ "datetime-local",
25
+ "file",
26
+ "hidden",
27
+ "image",
28
+ "month",
29
+ "radio",
30
+ "reset",
31
+ "button",
32
+ "search",
33
+ "submit",
34
+ "week",
35
+ "range"
36
+ ]
37
+ },
38
+ "placeholder": {
39
+ "type": "string"
40
+ },
41
+ "formField": {
42
+ "$ref": "./form-field.schema.json"
43
+ }
44
+ }
45
+ }
46
+ ]
47
+ }
@@ -0,0 +1,54 @@
1
+ {
2
+ "$schema": "http://json-schema.org/schema",
3
+ "$id": "minimum-table",
4
+ "type": "object",
5
+ "properties": {
6
+ "propertyList": {
7
+ "alias": "property",
8
+ "type": "array",
9
+ "items": {
10
+ "$ref": "#/definitions/property"
11
+ }
12
+ },
13
+ "upstream": {
14
+ "$ref": "#/definitions/upstream"
15
+ },
16
+ "columnList": {
17
+ "alias": "column",
18
+ "type": "array",
19
+ "items": {
20
+ "$ref": "./table-column.schema.json"
21
+ },
22
+ "description": "List of table column names"
23
+ },
24
+ "actionList": {
25
+ "alias": "action",
26
+ "type": "array",
27
+ "items": {
28
+ "$ref": "./table-action.schema.json"
29
+ }
30
+ },
31
+ "headerButton": {
32
+ "$ref": "./header-button.schema.json"
33
+ },
34
+ "modifiers": {
35
+ "alias": "modifier",
36
+ "type": "array",
37
+ "items": {
38
+ "type": "string"
39
+ },
40
+ "description": "The table modifiers"
41
+ }
42
+ },
43
+ "definitions": {
44
+ "type": {
45
+ "$ref": "./type.schema.json"
46
+ },
47
+ "property": {
48
+ "$ref": "./property.schema.json"
49
+ },
50
+ "upstream": {
51
+ "$ref": "./upstream.schema.json"
52
+ }
53
+ }
54
+ }
@@ -0,0 +1,28 @@
1
+ {
2
+ "$schema": "http://json-schema.org/schema",
3
+ "$id": "property",
4
+ "oneOf": [
5
+ {
6
+ "type": "string"
7
+ },
8
+ {
9
+ "type": "object",
10
+ "properties": {
11
+ "name": {
12
+ "type": "string"
13
+ },
14
+ "type": {
15
+ "$ref": "#/definitions/type"
16
+ }
17
+ },
18
+ "required": [
19
+ "name"
20
+ ]
21
+ }
22
+ ],
23
+ "definitions": {
24
+ "type": {
25
+ "$ref": "./type.schema.json"
26
+ }
27
+ }
28
+ }
@@ -0,0 +1,53 @@
1
+ {
2
+ "$schema": "http://json-schema.org/schema",
3
+ "$id": "select-form-control",
4
+ "allOf": [
5
+ {
6
+ "$ref": "./form-control.schema.json"
7
+ },
8
+ {
9
+ "type": "object",
10
+ "properties": {
11
+ "formField": {
12
+ "$ref": "./form-field.schema.json"
13
+ },
14
+ "options": {
15
+ "type": "array",
16
+ "items": {
17
+ "type": "object",
18
+ "properties": {
19
+ "display": {
20
+ "type": "string"
21
+ },
22
+ "value": {
23
+ "oneOf": [
24
+ {
25
+ "type": "string"
26
+ },
27
+ {
28
+ "type": "number"
29
+ },
30
+ {
31
+ "type": "boolean"
32
+ },
33
+ {
34
+ "type": "object",
35
+ "additionalProperties": true
36
+ }
37
+ ]
38
+ }
39
+ }
40
+ }
41
+ },
42
+ "backend": {
43
+ "$ref": "./backend.schema.json"
44
+ },
45
+ "multiple": {
46
+ "alias": "multi",
47
+ "type": "boolean",
48
+ "description": "Whether the select form control is multiple mode"
49
+ }
50
+ }
51
+ }
52
+ ]
53
+ }
@@ -0,0 +1,61 @@
1
+ {
2
+ "$schema": "http://json-schema.org/schema",
3
+ "$id": "dialog-table-action-schematic",
4
+ "allOf": [
5
+ {
6
+ "$ref": "../../table-action/template.schema.json"
7
+ },
8
+ {
9
+ "type": "object",
10
+ "properties": {
11
+ "withoutBody": {
12
+ "type": "boolean",
13
+ "description": "Whether the table action operation should be without body",
14
+ "default": false
15
+ },
16
+ "actionList": {
17
+ "alias": "action",
18
+ "type": "array",
19
+ "description": "The list of actions to be added to the dialog",
20
+ "items": {
21
+ "oneOf": [
22
+ {
23
+ "type": "string"
24
+ },
25
+ {
26
+ "type": "object",
27
+ "properties": {
28
+ "label": {
29
+ "type": "string"
30
+ },
31
+ "color": {
32
+ "type": "string"
33
+ },
34
+ "role": {
35
+ "type": "string",
36
+ "enum": [
37
+ "submit",
38
+ "close"
39
+ ]
40
+ }
41
+ }
42
+ }
43
+ ]
44
+ }
45
+ },
46
+ "title": {
47
+ "type": "string",
48
+ "description": "The title for the dialog"
49
+ }
50
+ }
51
+ }
52
+ ],
53
+ "definitions": {
54
+ "type": {
55
+ "$ref": "../../../type.schema.json"
56
+ },
57
+ "property": {
58
+ "$ref": "../../../property.schema.json"
59
+ }
60
+ }
61
+ }
@@ -0,0 +1,75 @@
1
+ {
2
+ "$schema": "http://json-schema.org/schema",
3
+ "$id": "form-table-action-schematic",
4
+ "allOf": [
5
+ {
6
+ "$ref": "../../table-action/template.schema.json"
7
+ },
8
+ {
9
+ "type": "object",
10
+ "properties": {
11
+ "formInitial": {
12
+ "type": "object",
13
+ "description": "The mapping from the row object to the form initial object"
14
+ },
15
+ "formComponent": {
16
+ "type": "string"
17
+ },
18
+ "customComponent": {
19
+ "type": "boolean",
20
+ "default": false,
21
+ "description": "If true the schematic will not coerce the form component"
22
+ },
23
+ "loadFrom": {
24
+ "type": "object",
25
+ "properties": {
26
+ "operationId": {
27
+ "type": "string"
28
+ },
29
+ "scope": {
30
+ "type": "string",
31
+ "description": "The scope of package for the openapi classes"
32
+ },
33
+ "body": {
34
+ "oneOf": [
35
+ {
36
+ "type": "boolean",
37
+ "description": "Pass the full row as body for the operation request"
38
+ },
39
+ {
40
+ "type": "object",
41
+ "description": "Mapping of table columns to body properties - [request property]: [table column]",
42
+ "additionalProperties": true
43
+ }
44
+ ]
45
+ },
46
+ "parameters": {
47
+ "oneOf": [
48
+ {
49
+ "type": "boolean",
50
+ "description": "Pass the full row as parameters for the operation request"
51
+ },
52
+ {
53
+ "type": "object",
54
+ "description": "Mapping of table columns to parameters properties - [request property]: [table column]",
55
+ "additionalProperties": true
56
+ }
57
+ ]
58
+ }
59
+ }
60
+ },
61
+ "formOptions": {
62
+ "$ref": "../../../form-component.schema.json"
63
+ }
64
+ }
65
+ }
66
+ ],
67
+ "definitions": {
68
+ "type": {
69
+ "$ref": "../../../type.schema.json"
70
+ },
71
+ "property": {
72
+ "$ref": "../../../property.schema.json"
73
+ }
74
+ }
75
+ }
@@ -0,0 +1,31 @@
1
+ {
2
+ "$schema": "http://json-schema.org/schema",
3
+ "$id": "navigation-table-action-schematic",
4
+ "allOf": [
5
+ {
6
+ "$ref": "../../table-action/template.schema.json"
7
+ },
8
+ {
9
+ "type": "object",
10
+ "properties": {
11
+ "route": {
12
+ "type": "string",
13
+ "description": "The route for the table action"
14
+ },
15
+ "relativeTo": {
16
+ "type": "boolean",
17
+ "description": "Use the current ActivatedRoute to resolve the route or not",
18
+ "default": false
19
+ }
20
+ }
21
+ }
22
+ ],
23
+ "definitions": {
24
+ "type": {
25
+ "$ref": "../../../type.schema.json"
26
+ },
27
+ "property": {
28
+ "$ref": "../../../property.schema.json"
29
+ }
30
+ }
31
+ }