@rxap/schematic-angular 16.2.0-dev.20 → 16.2.0-dev.21

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 (179) hide show
  1. package/CHANGELOG.md +13 -0
  2. package/README.md +1 -1
  3. package/collection.json +10 -0
  4. package/package.json +4 -4
  5. package/src/lib/coerce-form-component.js +15 -3
  6. package/src/lib/coerce-form-component.js.map +1 -1
  7. package/src/lib/data-grid-item.d.ts +3 -3
  8. package/src/lib/data-grid-item.js +2 -2
  9. package/src/lib/data-grid-item.js.map +1 -1
  10. package/src/lib/form/abstract-control.d.ts +29 -0
  11. package/src/lib/form/abstract-control.js +37 -0
  12. package/src/lib/form/abstract-control.js.map +1 -0
  13. package/src/lib/form/array/base-form-array.d.ts +18 -0
  14. package/src/lib/form/array/base-form-array.js +40 -0
  15. package/src/lib/form/array/base-form-array.js.map +1 -0
  16. package/src/lib/form/array/form-array-kind.d.ts +3 -0
  17. package/src/lib/form/array/form-array-kind.js +8 -0
  18. package/src/lib/form/array/form-array-kind.js.map +1 -0
  19. package/src/lib/form/array/form-array.d.ts +12 -0
  20. package/src/lib/form/array/form-array.js +18 -0
  21. package/src/lib/form/array/form-array.js.map +1 -0
  22. package/src/lib/form/coerce-control-component-imports.d.ts +3 -0
  23. package/src/lib/form/coerce-control-component-imports.js +18 -0
  24. package/src/lib/form/coerce-control-component-imports.js.map +1 -0
  25. package/src/lib/form/control/base-form-control.d.ts +14 -0
  26. package/src/lib/form/control/base-form-control.js +19 -0
  27. package/src/lib/form/control/base-form-control.js.map +1 -0
  28. package/src/lib/form/control/checkbox-form-control.d.ts +11 -0
  29. package/src/lib/form/control/checkbox-form-control.js +23 -0
  30. package/src/lib/form/control/checkbox-form-control.js.map +1 -0
  31. package/src/lib/form/control/form-control-kind.d.ts +8 -0
  32. package/src/lib/form/control/form-control-kind.js +13 -0
  33. package/src/lib/form/control/form-control-kind.js.map +1 -0
  34. package/src/lib/form/control/form-control.d.ts +18 -0
  35. package/src/lib/form/control/form-control.js +40 -0
  36. package/src/lib/form/control/form-control.js.map +1 -0
  37. package/src/lib/form/control/form-field-form-control.d.ts +33 -0
  38. package/src/lib/form/control/form-field-form-control.js +76 -0
  39. package/src/lib/form/control/form-field-form-control.js.map +1 -0
  40. package/src/lib/form/control/input-form-control.d.ts +14 -0
  41. package/src/lib/form/control/input-form-control.js +71 -0
  42. package/src/lib/form/control/input-form-control.js.map +1 -0
  43. package/src/lib/form/control/select-form-control.d.ts +18 -0
  44. package/src/lib/form/control/select-form-control.js +29 -0
  45. package/src/lib/form/control/select-form-control.js.map +1 -0
  46. package/src/lib/form/control/slide-toggle-form-control.d.ts +11 -0
  47. package/src/lib/form/control/slide-toggle-form-control.js +23 -0
  48. package/src/lib/form/control/slide-toggle-form-control.js.map +1 -0
  49. package/src/lib/form/control/table-select-form-control.d.ts +43 -0
  50. package/src/lib/form/control/table-select-form-control.js +69 -0
  51. package/src/lib/form/control/table-select-form-control.js.map +1 -0
  52. package/src/lib/form/control.d.ts +8 -0
  53. package/src/lib/form/control.js +38 -0
  54. package/src/lib/form/control.js.map +1 -0
  55. package/src/lib/form/generate-form-template.d.ts +2 -2
  56. package/src/lib/form/group/base-form-group.d.ts +17 -0
  57. package/src/lib/form/group/base-form-group.js +20 -0
  58. package/src/lib/form/group/base-form-group.js.map +1 -0
  59. package/src/lib/form/group/form-group-kind.d.ts +3 -0
  60. package/src/lib/form/group/form-group-kind.js +8 -0
  61. package/src/lib/form/group/form-group-kind.js.map +1 -0
  62. package/src/lib/form/group/form-group.d.ts +12 -0
  63. package/src/lib/form/group/form-group.js +18 -0
  64. package/src/lib/form/group/form-group.js.map +1 -0
  65. package/src/lib/table-column.d.ts +4 -3
  66. package/src/lib/table-column.js +5 -4
  67. package/src/lib/table-column.js.map +1 -1
  68. package/src/schema.json +1673 -1415
  69. package/src/schematic-input.schema.json +90 -156
  70. package/src/schematics/abstract-control.schema.json +78 -0
  71. package/src/schematics/accordion/accordion-component/schema.json +127 -127
  72. package/src/schematics/accordion/accordion-item-component/schema.json +18 -18
  73. package/src/schematics/accordion/item/accordion-item-data-grid-component/schema.json +602 -81
  74. package/src/schematics/accordion/item/accordion-item-switch-component/schema.json +76 -76
  75. package/src/schematics/accordion/item/accordion-item-table-component/schema.json +486 -111
  76. package/src/schematics/accordion/item/accordion-item-tree-table-component/schema.json +458 -83
  77. package/src/schematics/base-form-array.schema.json +45 -0
  78. package/src/schematics/base-form-control.schema.json +27 -0
  79. package/src/schematics/base-form-group.schema.json +42 -0
  80. package/src/schematics/checkbox-form-control.schema.json +30 -0
  81. package/src/schematics/control.schema.json +26 -0
  82. package/src/schematics/data-grid-component/index.js +4 -0
  83. package/src/schematics/data-grid-component/index.js.map +1 -1
  84. package/src/schematics/data-grid-component/schema.json +602 -81
  85. package/src/schematics/data-grid-item.schema.json +3 -3
  86. package/src/schematics/form/control/input-form-control/index.d.ts +1 -1
  87. package/src/schematics/form/control/input-form-control/index.js +4 -4
  88. package/src/schematics/form/control/input-form-control/index.js.map +1 -1
  89. package/src/schematics/form/control/input-form-control/schema.d.ts +2 -2
  90. package/src/schematics/form/control/input-form-control/schema.json +256 -86
  91. package/src/schematics/form/control/input-form-control/template.schema.json +16 -3
  92. package/src/schematics/form/control/select-form-control/index.d.ts +2 -2
  93. package/src/schematics/form/control/select-form-control/index.js +21 -14
  94. package/src/schematics/form/control/select-form-control/index.js.map +1 -1
  95. package/src/schematics/form/control/select-form-control/schema.d.ts +2 -3
  96. package/src/schematics/form/control/select-form-control/schema.json +249 -90
  97. package/src/schematics/form/control/select-form-control/template.schema.json +16 -3
  98. package/src/schematics/form/control/table-select-form-control/index.d.ts +3 -9
  99. package/src/schematics/form/control/table-select-form-control/index.js +24 -18
  100. package/src/schematics/form/control/table-select-form-control/index.js.map +1 -1
  101. package/src/schematics/form/control/table-select-form-control/schema.d.ts +2 -3
  102. package/src/schematics/form/control/table-select-form-control/schema.json +325 -123
  103. package/src/schematics/form/control/table-select-form-control/template.schema.json +16 -60
  104. package/src/schematics/form/form-array/index.d.ts +9 -0
  105. package/src/schematics/form/form-array/index.js +54 -0
  106. package/src/schematics/form/form-array/index.js.map +1 -0
  107. package/src/schematics/form/form-array/schema.d.ts +4 -0
  108. package/src/schematics/form/form-array/schema.json +823 -0
  109. package/src/schematics/form/form-array/template.schema.json +33 -0
  110. package/src/schematics/form/form-component/files/component/__componentName__.component.html.hbs +4 -1
  111. package/src/schematics/form/form-component/index.d.ts +2 -4
  112. package/src/schematics/form/form-component/index.js +8 -24
  113. package/src/schematics/form/form-component/index.js.map +1 -1
  114. package/src/schematics/form/form-component/schema.d.ts +2 -2
  115. package/src/schematics/form/form-component/schema.json +666 -86
  116. package/src/schematics/form/form-control/index.d.ts +3 -5
  117. package/src/schematics/form/form-control/index.js +8 -20
  118. package/src/schematics/form/form-control/index.js.map +1 -1
  119. package/src/schematics/form/form-control/schema.d.ts +2 -4
  120. package/src/schematics/form/form-control/schema.json +519 -62
  121. package/src/schematics/form/form-control/template.schema.json +1 -2
  122. package/src/schematics/form/form-definition/index.d.ts +2 -2
  123. package/src/schematics/form/form-definition/index.js +28 -15
  124. package/src/schematics/form/form-definition/index.js.map +1 -1
  125. package/src/schematics/form/form-definition/schema.d.ts +2 -2
  126. package/src/schematics/form/form-definition/schema.json +664 -60
  127. package/src/schematics/form/form-group/index.d.ts +9 -0
  128. package/src/schematics/form/form-group/index.js +54 -0
  129. package/src/schematics/form/form-group/index.js.map +1 -0
  130. package/src/schematics/form/form-group/schema.d.ts +4 -0
  131. package/src/schematics/form/form-group/schema.json +823 -0
  132. package/src/schematics/form/form-group/template.schema.json +33 -0
  133. package/src/schematics/form/templates/checkbox-form-control.hbs +1 -1
  134. package/src/schematics/form/templates/default-form-array.hbs +27 -0
  135. package/src/schematics/form/templates/default-form-group.hbs +13 -0
  136. package/src/schematics/form/templates/input-form-control.hbs +7 -7
  137. package/src/schematics/form/templates/select-form-control.hbs +5 -0
  138. package/src/schematics/form/templates/table-select-form-control.hbs +16 -16
  139. package/src/schematics/form-array.schema.json +40 -0
  140. package/src/schematics/form-control.schema.json +64 -55
  141. package/src/schematics/form-definition.schema.json +3 -3
  142. package/src/schematics/form-group.schema.json +40 -0
  143. package/src/schematics/input-form-control.schema.json +10 -6
  144. package/src/schematics/select-form-control.schema.json +8 -4
  145. package/src/schematics/slide-toggle-form-control.schema.json +30 -0
  146. package/src/schematics/table/action/dialog-table-action/schema.json +20 -20
  147. package/src/schematics/table/action/form-table-action/index.d.ts +2 -2
  148. package/src/schematics/table/action/form-table-action/index.js +3 -4
  149. package/src/schematics/table/action/form-table-action/index.js.map +1 -1
  150. package/src/schematics/table/action/form-table-action/schema.d.ts +2 -2
  151. package/src/schematics/table/action/form-table-action/schema.json +667 -87
  152. package/src/schematics/table/action/navigation-table-action/schema.json +20 -20
  153. package/src/schematics/table/action/open-api-table-action/schema.json +20 -20
  154. package/src/schematics/table/action/operation-table-action/schema.json +20 -20
  155. package/src/schematics/table/header-button/form-table-header-button/index.d.ts +2 -2
  156. package/src/schematics/table/header-button/form-table-header-button/index.js +2 -2
  157. package/src/schematics/table/header-button/form-table-header-button/index.js.map +1 -1
  158. package/src/schematics/table/header-button/form-table-header-button/schema.d.ts +2 -2
  159. package/src/schematics/table/header-button/form-table-header-button/schema.json +735 -81
  160. package/src/schematics/table/header-button/form-table-header-button/template.schema.json +4 -22
  161. package/src/schematics/table/header-button/navigation-table-header-button/schema.json +20 -20
  162. package/src/schematics/table/table-action/schema.json +47 -47
  163. package/src/schematics/table/table-component/index.d.ts +2 -2
  164. package/src/schematics/table/table-component/schema.json +470 -95
  165. package/src/schematics/table/table-header-button/schema.json +40 -40
  166. package/src/schematics/table/tree-table-component/files/component/__componentName__.component.html.hbs +1 -1
  167. package/src/schematics/table/tree-table-component/schema.json +453 -78
  168. package/src/schematics/table-select-form-control.schema.json +96 -0
  169. package/src/schematics/textarea-form-control.schema.json +32 -0
  170. package/src/template.schema.json +39 -0
  171. package/src/lib/form-component-control.d.ts +0 -8
  172. package/src/lib/form-component-control.js +0 -15
  173. package/src/lib/form-component-control.js.map +0 -1
  174. package/src/lib/form-control.d.ts +0 -136
  175. package/src/lib/form-control.js +0 -265
  176. package/src/lib/form-control.js.map +0 -1
  177. package/src/lib/form-definition-control.d.ts +0 -5
  178. package/src/lib/form-definition-control.js +0 -30
  179. package/src/lib/form-definition-control.js.map +0 -1
package/src/schema.json CHANGED
@@ -13,155 +13,75 @@
13
13
  }
14
14
  ],
15
15
  "definitions": {
16
- "tableComponentSchematic": {
17
- "allOf": [
18
- {
19
- "$ref": "#/definitions/angular"
20
- },
21
- {
22
- "$ref": "#/definitions/table"
23
- }
24
- ]
25
- },
26
- "treeTableComponentSchematic": {
27
- "allOf": [
28
- {
29
- "$ref": "#/definitions/angular"
30
- },
31
- {
32
- "$ref": "#/definitions/treeTable"
33
- }
34
- ]
35
- },
36
- "formComponentSchematic": {
37
- "allOf": [
38
- {
39
- "$ref": "#/definitions/angular"
40
- },
41
- {
42
- "$ref": "#/definitions/formComponent"
43
- }
44
- ]
45
- },
46
- "formDefinitionSchematic": {
47
- "allOf": [
48
- {
49
- "$ref": "#/definitions/angular"
50
- },
51
- {
52
- "$ref": "#/definitions/formDefinition"
53
- },
54
- {
55
- "type": "object",
56
- "properties": {
57
- "standalone": {
58
- "type": "boolean",
59
- "description": "Whether the form definition has a form.provider file",
60
- "default": true
61
- }
62
- }
63
- }
64
- ]
65
- },
66
- "tableActionSchematic": {
67
- "allOf": [
68
- {
69
- "$ref": "#/definitions/angular"
70
- },
71
- {
72
- "$ref": "#/definitions/tableAction"
73
- },
74
- {
75
- "type": "object",
76
- "properties": {
77
- "tableName": {
78
- "alias": "table",
79
- "type": "string",
80
- "description": "The name of the table action"
81
- }
82
- }
83
- }
84
- ]
85
- },
86
- "tableHeaderButtonSchematic": {
16
+ "abstractControl": {
87
17
  "allOf": [
88
18
  {
89
- "$ref": "#/definitions/angular"
90
- },
91
- {
92
- "$ref": "#/definitions/headerButton"
19
+ "$ref": "#/definitions/property"
93
20
  },
94
21
  {
95
22
  "type": "object",
96
23
  "properties": {
97
- "tableName": {
98
- "alias": "table",
24
+ "name": {
99
25
  "type": "string",
100
- "description": "The name of the table action"
101
- }
102
- }
103
- }
104
- ]
105
- },
106
- "formTableHeaderButtonSchematic": {
107
- "allOf": [
108
- {
109
- "$ref": "#/definitions/tableHeaderButtonSchematic"
110
- },
111
- {
112
- "type": "object",
113
- "properties": {
114
- "formComponent": {
115
- "type": "string"
26
+ "description": "The name of the control"
116
27
  },
117
- "customComponent": {
28
+ "isArray": {
118
29
  "type": "boolean",
119
- "default": false,
120
- "description": "If true the schematic will not coerce the form component"
30
+ "description": "Whether the control value is an array",
31
+ "default": false
121
32
  },
122
- "formOptions": {
123
- "type": "object",
124
- "properties": {
125
- "role": {
126
- "type": "string",
127
- "description": "Define the role of the form"
128
- },
129
- "window": {
130
- "type": "boolean",
131
- "description": "Whether the form can be opened in a window"
132
- },
133
- "controlList": {
134
- "alias": "control",
135
- "type": "array",
136
- "items": {
137
- "$ref": "#/definitions/formControl"
138
- }
139
- }
140
- },
141
- "additionalProperties": true
142
- }
143
- }
144
- }
145
- ]
146
- },
147
- "navigationTableHeaderButtonSchematic": {
148
- "allOf": [
149
- {
150
- "$ref": "#/definitions/tableHeaderButtonSchematic"
151
- },
152
- {
153
- "type": "object",
154
- "properties": {
155
- "route": {
33
+ "state": {
156
34
  "type": "string",
157
- "description": "The route path for the table action"
35
+ "description": "The initial state of the control"
158
36
  },
159
- "relativeTo": {
37
+ "isRequired": {
160
38
  "type": "boolean",
161
- "description": "Indicates if the route path should be relative to the current activated route",
39
+ "description": "Whether the control value is required",
40
+ "default": false
41
+ },
42
+ "isReadonly": {
43
+ "type": "boolean",
44
+ "description": "Whether the control value is readonly",
45
+ "default": false
46
+ },
47
+ "isDisabled": {
48
+ "type": "boolean",
49
+ "description": "Whether the control value is disabled",
162
50
  "default": false
51
+ },
52
+ "validatorList": {
53
+ "type": "array",
54
+ "items": {
55
+ "type": "string"
56
+ }
57
+ },
58
+ "kind": {
59
+ "type": "string",
60
+ "description": "The kind of the control",
61
+ "default": "default"
62
+ },
63
+ "importList": {
64
+ "type": "array",
65
+ "items": {
66
+ "$ref": "#/definitions/type"
67
+ }
68
+ },
69
+ "template": {
70
+ "type": "string",
71
+ "description": "The template of the control"
72
+ },
73
+ "role": {
74
+ "type": "string",
75
+ "description": "The role of the control",
76
+ "enum": [
77
+ "control",
78
+ "group",
79
+ "array"
80
+ ],
81
+ "default": "control"
163
82
  }
164
- }
83
+ },
84
+ "additionalProperties": true
165
85
  }
166
86
  ]
167
87
  },
@@ -256,6 +176,70 @@
256
176
  }
257
177
  ]
258
178
  },
179
+ "accordionIdentifier": {
180
+ "type": "object",
181
+ "properties": {
182
+ "property": {
183
+ "$ref": "#/definitions/property"
184
+ },
185
+ "source": {
186
+ "type": "string",
187
+ "enum": [
188
+ "route"
189
+ ],
190
+ "default": "route"
191
+ }
192
+ },
193
+ "required": [
194
+ "property"
195
+ ]
196
+ },
197
+ "accordionItem": {
198
+ "type": "object",
199
+ "properties": {
200
+ "kind": {
201
+ "type": "string",
202
+ "enum": [
203
+ "default",
204
+ "table",
205
+ "data-grid",
206
+ "data-grid-collection",
207
+ "tree-table",
208
+ "switch"
209
+ ],
210
+ "description": "The type of the accordion item",
211
+ "default": "panel"
212
+ },
213
+ "modifiers": {
214
+ "alias": "modifier",
215
+ "type": "array",
216
+ "items": {
217
+ "type": "string"
218
+ },
219
+ "description": "The modifiers to apply to the accordion item type"
220
+ },
221
+ "identifier": {
222
+ "$ref": "#/definitions/accordionIdentifier"
223
+ },
224
+ "title": {
225
+ "type": "string"
226
+ },
227
+ "description": {
228
+ "type": "string"
229
+ },
230
+ "upstream": {
231
+ "$ref": "#/definitions/upstream"
232
+ },
233
+ "propertyList": {
234
+ "alias": "property",
235
+ "type": "array",
236
+ "items": {
237
+ "$ref": "#/definitions/property"
238
+ }
239
+ }
240
+ },
241
+ "additionalProperties": true
242
+ },
259
243
  "accordionItemComponentSchematic": {
260
244
  "allOf": [
261
245
  {
@@ -278,7 +262,7 @@
278
262
  }
279
263
  ]
280
264
  },
281
- "accordionItemTableComponentSchematic": {
265
+ "accordionItemDataGridComponentSchematic": {
282
266
  "allOf": [
283
267
  {
284
268
  "$ref": "#/definitions/angular"
@@ -289,20 +273,8 @@
289
273
  {
290
274
  "type": "object",
291
275
  "properties": {
292
- "modifiers": {
293
- "alias": "modifier",
294
- "type": "array",
295
- "items": {
296
- "type": "string",
297
- "enum": [
298
- "navigation-back-header",
299
- "without-title"
300
- ]
301
- },
302
- "description": "The table modifiers"
303
- },
304
- "table": {
305
- "$ref": "#/definitions/table"
276
+ "dataGrid": {
277
+ "$ref": "#/definitions/dataGrid"
306
278
  }
307
279
  }
308
280
  }
@@ -384,505 +356,308 @@
384
356
  }
385
357
  ]
386
358
  },
387
- "dataGridComponentSchematic": {
359
+ "accordionItemTableComponentSchematic": {
388
360
  "allOf": [
389
361
  {
390
362
  "$ref": "#/definitions/angular"
391
363
  },
392
364
  {
393
- "$ref": "#/definitions/dataGrid"
394
- }
395
- ]
396
- },
397
- "dialogComponentSchematic": {
398
- "allOf": [
399
- {
400
- "$ref": "#/definitions/angular"
365
+ "$ref": "#/definitions/accordionItem"
401
366
  },
402
367
  {
403
368
  "type": "object",
404
369
  "properties": {
405
- "dialogName": {
406
- "alias": "name",
407
- "type": "string",
408
- "description": "The name of the dialog",
409
- "x-prompt": "Which name should the dialog module have?"
410
- },
411
- "title": {
412
- "type": "string",
413
- "description": "The title of the dialog"
414
- },
415
- "actionList": {
416
- "alias": "action",
370
+ "modifiers": {
371
+ "alias": "modifier",
417
372
  "type": "array",
418
- "description": "The list of actions to be added to the dialog",
419
373
  "items": {
420
- "oneOf": [
421
- {
422
- "type": "string"
423
- },
424
- {
425
- "type": "object",
426
- "properties": {
427
- "label": {
428
- "type": "string"
429
- },
430
- "color": {
431
- "type": "string"
432
- },
433
- "role": {
434
- "type": "string",
435
- "enum": [
436
- "submit",
437
- "close"
438
- ]
439
- }
440
- }
441
- }
374
+ "type": "string",
375
+ "enum": [
376
+ "navigation-back-header",
377
+ "without-title"
442
378
  ]
443
- }
379
+ },
380
+ "description": "The table modifiers"
381
+ },
382
+ "table": {
383
+ "$ref": "#/definitions/table"
444
384
  }
445
- },
446
- "required": [
447
- "dialogName"
448
- ]
385
+ }
449
386
  }
450
387
  ]
451
388
  },
452
- "inputFormControlSchematic": {
389
+ "accordionItemTreeTableComponentSchematic": {
453
390
  "allOf": [
454
391
  {
455
- "$ref": "#/definitions/formControl"
392
+ "$ref": "#/definitions/angular"
456
393
  },
457
394
  {
458
- "$ref": "#/definitions/inputFormControl"
459
- }
460
- ]
461
- },
462
- "selectFormControlSchematic": {
463
- "allOf": [
464
- {
465
- "$ref": "#/definitions/formControl"
395
+ "$ref": "#/definitions/accordionItem"
466
396
  },
467
397
  {
468
- "$ref": "#/definitions/selectFormControl"
398
+ "type": "object",
399
+ "properties": {
400
+ "modifiers": {
401
+ "alias": "modifier",
402
+ "type": "array",
403
+ "items": {
404
+ "type": "string",
405
+ "enum": [
406
+ "navigation-back-header",
407
+ "without-title"
408
+ ]
409
+ },
410
+ "description": "The table modifiers"
411
+ },
412
+ "table": {
413
+ "$ref": "#/definitions/treeTable"
414
+ }
415
+ }
469
416
  }
470
417
  ]
471
418
  },
472
- "tableSelectFormControlSchematic": {
419
+ "angular": {
473
420
  "allOf": [
474
421
  {
475
- "$ref": "#/definitions/formControl"
422
+ "$ref": "#/definitions/general"
476
423
  },
477
424
  {
478
425
  "type": "object",
479
426
  "properties": {
480
- "columnList": {
481
- "alias": "column",
482
- "type": "array",
483
- "items": {
484
- "description": "table column name",
485
- "type": "object",
486
- "properties": {
487
- "name": {
488
- "type": "string",
489
- "description": "table column name"
490
- },
491
- "title": {
492
- "type": "string",
493
- "description": "table column label"
494
- },
495
- "hasFilter": {
496
- "type": "boolean",
497
- "description": "Whether the column has a filter"
498
- },
499
- "kind": {
500
- "type": "string",
501
- "description": "The kind of data in the column"
502
- }
503
- }
504
- },
505
- "description": "List of table column names"
427
+ "componentName": {
428
+ "type": "string"
506
429
  },
507
- "title": {
430
+ "name": {
431
+ "type": "string"
432
+ },
433
+ "context": {
508
434
  "type": "string",
509
- "description": "The title of the table select window"
435
+ "description": "The context use to generate proper names for class, files, etc"
510
436
  },
511
- "toDisplay": {
512
- "type": "object",
513
- "properties": {
514
- "property": {
515
- "$ref": "#/definitions/property"
516
- }
517
- }
437
+ "nestModule": {
438
+ "type": "string",
439
+ "description": "The module name for the table nest operations"
518
440
  },
519
- "toValue": {
520
- "type": "object",
521
- "properties": {
522
- "property": {
523
- "$ref": "#/definitions/property"
524
- }
525
- }
441
+ "controllerName": {
442
+ "type": "string"
526
443
  },
527
- "upstream": {
528
- "$ref": "#/definitions/upstream"
444
+ "backend": {
445
+ "$ref": "#/definitions/backend"
529
446
  },
530
- "resolver": {
447
+ "directory": {
448
+ "type": "string",
449
+ "description": "A directory name or absolute path where the files should be generated. Relative to the project and feature base path if a feature is defined"
450
+ },
451
+ "shared": {
452
+ "type": "boolean",
453
+ "description": "Whether the generated code is used across the project",
454
+ "default": false
455
+ },
456
+ "scope": {
457
+ "type": "string"
458
+ },
459
+ "prefix": {
460
+ "type": "string"
461
+ },
462
+ "openApi": {
531
463
  "type": "object",
532
- "properties": {
533
- "upstream": {
534
- "$ref": "#/definitions/upstream"
535
- }
536
- }
464
+ "additionalProperties": true
537
465
  }
538
466
  }
539
467
  }
540
468
  ]
541
469
  },
542
- "formControlSchematic": {
470
+ "backend": {
471
+ "type": "string",
472
+ "description": "The backend that should be used to handel data",
473
+ "enum": [
474
+ "none",
475
+ "nestjs",
476
+ "open-api",
477
+ "local"
478
+ ],
479
+ "default": "none"
480
+ },
481
+ "baseFormArray": {
543
482
  "allOf": [
544
483
  {
545
- "$ref": "#/definitions/angular"
546
- },
547
- {
548
- "$ref": "#/definitions/formControl"
484
+ "$ref": "#/definitions/abstractControl"
549
485
  },
550
486
  {
551
487
  "type": "object",
552
488
  "properties": {
553
- "formName": {
554
- "alias": "form",
489
+ "controlList": {
490
+ "type": "array",
491
+ "description": "The list of controls in the group",
492
+ "items": {
493
+ "$ref": "#/definitions/control"
494
+ }
495
+ },
496
+ "legend": {
497
+ "type": "string"
498
+ },
499
+ "groupLegend": {
500
+ "type": "string"
501
+ },
502
+ "kind": {
503
+ "type": "string",
504
+ "description": "The kind of the array",
505
+ "const": "default",
506
+ "default": "default"
507
+ },
508
+ "role": {
555
509
  "type": "string",
556
- "description": "The name of the form where the form control should be added",
557
- "x-prompt": "Enter the name of the form where the form control should be added"
510
+ "const": "array"
558
511
  }
559
- },
560
- "required": [
561
- "formName"
562
- ]
512
+ }
563
513
  }
564
514
  ]
565
515
  },
566
- "dialogTableActionSchematic": {
516
+ "baseFormControl": {
567
517
  "allOf": [
568
518
  {
569
- "$ref": "#/definitions/tableActionSchematic"
519
+ "$ref": "#/definitions/abstractControl"
570
520
  },
571
521
  {
572
522
  "type": "object",
573
523
  "properties": {
574
- "withoutBody": {
575
- "type": "boolean",
576
- "description": "Whether the table action operation should be without body",
577
- "default": false
578
- },
579
- "actionList": {
580
- "alias": "action",
581
- "type": "array",
582
- "description": "The list of actions to be added to the dialog",
583
- "items": {
584
- "oneOf": [
585
- {
586
- "type": "string"
587
- },
588
- {
589
- "type": "object",
590
- "properties": {
591
- "label": {
592
- "type": "string"
593
- },
594
- "color": {
595
- "type": "string"
596
- },
597
- "role": {
598
- "type": "string",
599
- "enum": [
600
- "submit",
601
- "close"
602
- ]
603
- }
604
- }
605
- }
606
- ]
607
- }
524
+ "label": {
525
+ "type": "string",
526
+ "description": "The label of the control"
608
527
  },
609
- "title": {
528
+ "role": {
610
529
  "type": "string",
611
- "description": "The title for the dialog"
530
+ "const": "control"
612
531
  }
613
532
  }
614
533
  }
615
534
  ]
616
535
  },
617
- "formTableActionSchematic": {
536
+ "baseFormGroup": {
618
537
  "allOf": [
619
538
  {
620
- "$ref": "#/definitions/tableActionSchematic"
539
+ "$ref": "#/definitions/abstractControl"
621
540
  },
622
541
  {
623
542
  "type": "object",
624
543
  "properties": {
625
- "formInitial": {
626
- "type": "object",
627
- "description": "The mapping from the row object to the form initial object"
544
+ "controlList": {
545
+ "type": "array",
546
+ "description": "The list of controls in the group",
547
+ "items": {
548
+ "$ref": "#/definitions/control"
549
+ }
628
550
  },
629
- "formComponent": {
551
+ "legend": {
630
552
  "type": "string"
631
553
  },
632
- "customComponent": {
633
- "type": "boolean",
634
- "default": false,
635
- "description": "If true the schematic will not coerce the form component"
554
+ "kind": {
555
+ "type": "string",
556
+ "description": "The kind of the group",
557
+ "const": "default",
558
+ "default": "default"
636
559
  },
637
- "loadFrom": {
638
- "type": "object",
639
- "properties": {
640
- "operationId": {
641
- "type": "string"
642
- },
643
- "scope": {
644
- "type": "string",
645
- "description": "The scope of package for the openapi classes"
646
- },
647
- "body": {
648
- "oneOf": [
649
- {
650
- "type": "boolean",
651
- "description": "Pass the full row as body for the operation request"
652
- },
653
- {
654
- "type": "object",
655
- "description": "Mapping of table columns to body properties - [request property]: [table column]",
656
- "additionalProperties": true
657
- }
658
- ]
659
- },
660
- "parameters": {
661
- "oneOf": [
662
- {
663
- "type": "boolean",
664
- "description": "Pass the full row as parameters for the operation request"
665
- },
666
- {
667
- "type": "object",
668
- "description": "Mapping of table columns to parameters properties - [request property]: [table column]",
669
- "additionalProperties": true
670
- }
671
- ]
672
- }
673
- }
674
- },
675
- "formOptions": {
676
- "$ref": "#/definitions/formComponent"
560
+ "role": {
561
+ "type": "string",
562
+ "const": "group"
677
563
  }
678
564
  }
679
565
  }
680
566
  ]
681
567
  },
682
- "navigationTableActionSchematic": {
683
- "allOf": [
684
- {
685
- "$ref": "#/definitions/tableActionSchematic"
568
+ "button": {
569
+ "type": "object",
570
+ "properties": {
571
+ "svgIcon": {
572
+ "type": "string"
686
573
  },
687
- {
688
- "type": "object",
689
- "properties": {
690
- "route": {
691
- "type": "string",
692
- "description": "The route for the table action"
693
- },
694
- "relativeTo": {
695
- "type": "boolean",
696
- "description": "Use the current ActivatedRoute to resolve the route or not",
697
- "default": false
698
- }
574
+ "icon": {
575
+ "type": "string"
576
+ },
577
+ "directiveList": {
578
+ "type": "array",
579
+ "items": {
580
+ "$ref": "#/definitions/type"
581
+ }
582
+ },
583
+ "importList": {
584
+ "type": "array",
585
+ "items": {
586
+ "$ref": "#/definitions/type"
699
587
  }
700
588
  }
701
- ]
702
- },
703
- "operationTableActionSchematic": {
704
- "allOf": [
705
- {
706
- "$ref": "#/definitions/tableActionSchematic"
707
- }
708
- ]
589
+ }
709
590
  },
710
- "openApiTableActionSchematic": {
591
+ "checkboxFormControl": {
711
592
  "allOf": [
712
593
  {
713
- "$ref": "#/definitions/tableActionSchematic"
594
+ "$ref": "#/definitions/baseFormControl"
714
595
  },
715
596
  {
716
597
  "type": "object",
717
598
  "properties": {
718
- "operationId": {
599
+ "kind": {
719
600
  "type": "string",
720
- "description": "The open api operationId for the table action"
601
+ "const": "checkbox"
721
602
  },
722
- "scope": {
603
+ "labelPosition": {
723
604
  "type": "string",
724
- "description": "The scope of package for the openapi classes"
725
- },
726
- "body": {
727
- "oneOf": [
728
- {
729
- "type": "boolean",
730
- "description": "Pass the full row as body for the operation request"
731
- },
732
- {
733
- "type": "object",
734
- "description": "Mapping of table columns to body properties - [request property]: [table column]",
735
- "additionalProperties": true
736
- }
737
- ]
738
- },
739
- "parameters": {
740
- "oneOf": [
741
- {
742
- "type": "boolean",
743
- "description": "Pass the full row as parameters for the operation request"
744
- },
745
- {
746
- "type": "object",
747
- "description": "Mapping of table columns to parameters properties - [request property]: [table column]",
748
- "additionalProperties": true
749
- }
605
+ "enum": [
606
+ "before",
607
+ "after"
750
608
  ]
751
609
  }
752
- },
753
- "required": [
754
- "operationId"
755
- ]
756
- }
757
- ]
758
- },
759
- "treeComponentSchematic": {
760
- "allOf": [
761
- {
762
- "$ref": "#/definitions/angular"
763
- },
764
- {
765
- "type": "object",
766
- "properties": {
767
- "modifiers": {
768
- "alias": "modifier",
769
- "type": "array",
770
- "items": {
771
- "type": "string",
772
- "enum": [
773
- "navigation-back-header",
774
- "without-title"
775
- ]
776
- },
777
- "description": "The tree modifiers"
778
- },
779
- "fullTree": {
780
- "type": "boolean",
781
- "description": "Whether the tree should be a full tree",
782
- "default": true
783
- }
784
- }
785
- }
786
- ]
787
- },
788
- "accordionItemDataGridComponentSchematic": {
789
- "allOf": [
790
- {
791
- "$ref": "#/definitions/angular"
792
- },
793
- {
794
- "$ref": "#/definitions/accordionItem"
795
- },
796
- {
797
- "type": "object",
798
- "properties": {
799
- "dataGrid": {
800
- "$ref": "#/definitions/dataGrid"
801
- }
802
610
  }
803
611
  }
804
612
  ]
805
613
  },
806
- "accordionItemTreeTableComponentSchematic": {
807
- "allOf": [
614
+ "control": {
615
+ "oneOf": [
808
616
  {
809
- "$ref": "#/definitions/angular"
617
+ "$ref": "#/definitions/formGroup"
810
618
  },
811
619
  {
812
- "$ref": "#/definitions/accordionItem"
620
+ "$ref": "#/definitions/formArray"
813
621
  },
814
622
  {
815
- "type": "object",
816
- "properties": {
817
- "modifiers": {
818
- "alias": "modifier",
819
- "type": "array",
820
- "items": {
821
- "type": "string",
822
- "enum": [
823
- "navigation-back-header",
824
- "without-title"
825
- ]
826
- },
827
- "description": "The table modifiers"
828
- },
829
- "table": {
830
- "$ref": "#/definitions/treeTable"
831
- }
832
- }
623
+ "$ref": "#/definitions/formControl"
833
624
  }
834
625
  ]
835
626
  },
836
- "accordionIdentifier": {
627
+ "dataGrid": {
837
628
  "type": "object",
838
629
  "properties": {
839
- "property": {
840
- "$ref": "#/definitions/property"
841
- },
842
- "source": {
630
+ "mode": {
843
631
  "type": "string",
632
+ "description": "The mode of the form",
844
633
  "enum": [
845
- "route"
846
- ],
847
- "default": "route"
848
- }
849
- },
850
- "required": [
851
- "property"
852
- ]
853
- },
854
- "accordionItem": {
855
- "type": "object",
856
- "properties": {
857
- "kind": {
634
+ "form",
635
+ "plain"
636
+ ]
637
+ },
638
+ "collection": {
639
+ "type": "boolean",
640
+ "description": "Whether the data grid is used as collection."
641
+ },
642
+ "title": {
858
643
  "type": "string",
859
- "enum": [
860
- "default",
861
- "table",
862
- "data-grid",
863
- "data-grid-collection",
864
- "tree-table",
865
- "switch"
866
- ],
867
- "description": "The type of the accordion item",
868
- "default": "panel"
644
+ "description": "The title of the data grid card component"
869
645
  },
870
- "modifiers": {
871
- "alias": "modifier",
646
+ "subtitle": {
647
+ "type": "string",
648
+ "description": "The subtitle of the data grid card component"
649
+ },
650
+ "itemList": {
651
+ "alias": "item",
872
652
  "type": "array",
873
653
  "items": {
874
- "type": "string"
875
- },
876
- "description": "The modifiers to apply to the accordion item type"
877
- },
878
- "identifier": {
879
- "$ref": "#/definitions/accordionIdentifier"
880
- },
881
- "title": {
882
- "type": "string"
654
+ "$ref": "#/definitions/dataGridItem"
655
+ }
883
656
  },
884
- "description": {
885
- "type": "string"
657
+ "inCard": {
658
+ "type": "boolean",
659
+ "description": "Whether the data grid is used in a card.",
660
+ "default": true
886
661
  },
887
662
  "upstream": {
888
663
  "$ref": "#/definitions/upstream"
@@ -893,95 +668,22 @@
893
668
  "items": {
894
669
  "$ref": "#/definitions/property"
895
670
  }
896
- }
897
- },
898
- "additionalProperties": true
671
+ },
672
+ "identifier": {
673
+ "$ref": "#/definitions/accordionIdentifier"
674
+ }
675
+ }
899
676
  },
900
- "angular": {
677
+ "dataGridComponentSchematic": {
901
678
  "allOf": [
902
679
  {
903
- "$ref": "#/definitions/general"
680
+ "$ref": "#/definitions/angular"
904
681
  },
905
682
  {
906
- "type": "object",
907
- "properties": {
908
- "componentName": {
909
- "type": "string"
910
- },
911
- "name": {
912
- "type": "string"
913
- },
914
- "context": {
915
- "type": "string",
916
- "description": "The context use to generate proper names for class, files, etc"
917
- },
918
- "nestModule": {
919
- "type": "string",
920
- "description": "The module name for the table nest operations"
921
- },
922
- "controllerName": {
923
- "type": "string"
924
- },
925
- "backend": {
926
- "$ref": "#/definitions/backend"
927
- },
928
- "directory": {
929
- "type": "string",
930
- "description": "A directory name or absolute path where the files should be generated. Relative to the project and feature base path if a feature is defined"
931
- },
932
- "shared": {
933
- "type": "boolean",
934
- "description": "Whether the generated code is used across the project",
935
- "default": false
936
- },
937
- "scope": {
938
- "type": "string"
939
- },
940
- "prefix": {
941
- "type": "string"
942
- },
943
- "openApi": {
944
- "type": "object",
945
- "additionalProperties": true
946
- }
947
- }
683
+ "$ref": "#/definitions/dataGrid"
948
684
  }
949
685
  ]
950
686
  },
951
- "backend": {
952
- "type": "string",
953
- "description": "The backend that should be used to handel data",
954
- "enum": [
955
- "none",
956
- "nestjs",
957
- "open-api",
958
- "local"
959
- ],
960
- "default": "none"
961
- },
962
- "button": {
963
- "type": "object",
964
- "properties": {
965
- "svgIcon": {
966
- "type": "string"
967
- },
968
- "icon": {
969
- "type": "string"
970
- },
971
- "directiveList": {
972
- "type": "array",
973
- "items": {
974
- "$ref": "#/definitions/type"
975
- }
976
- },
977
- "importList": {
978
- "type": "array",
979
- "items": {
980
- "$ref": "#/definitions/type"
981
- }
982
- }
983
- }
984
- },
985
687
  "dataGridItem": {
986
688
  "type": "object",
987
689
  "properties": {
@@ -1000,7 +702,7 @@
1000
702
  }
1001
703
  },
1002
704
  "formControl": {
1003
- "$ref": "#/definitions/formControl"
705
+ "$ref": "#/definitions/control"
1004
706
  },
1005
707
  "template": {
1006
708
  "type": "string"
@@ -1024,151 +726,287 @@
1024
726
  "name"
1025
727
  ]
1026
728
  },
1027
- "dataGrid": {
1028
- "type": "object",
1029
- "properties": {
1030
- "mode": {
1031
- "type": "string",
1032
- "description": "The mode of the form",
1033
- "enum": [
1034
- "form",
1035
- "plain"
1036
- ]
1037
- },
1038
- "collection": {
1039
- "type": "boolean",
1040
- "description": "Whether the data grid is used as collection."
1041
- },
1042
- "title": {
1043
- "type": "string",
1044
- "description": "The title of the data grid card component"
1045
- },
1046
- "subtitle": {
1047
- "type": "string",
1048
- "description": "The subtitle of the data grid card component"
1049
- },
1050
- "itemList": {
1051
- "alias": "item",
1052
- "type": "array",
1053
- "items": {
1054
- "$ref": "#/definitions/dataGridItem"
1055
- }
1056
- },
1057
- "inCard": {
1058
- "type": "boolean",
1059
- "description": "Whether the data grid is used in a card.",
1060
- "default": true
1061
- },
1062
- "upstream": {
1063
- "$ref": "#/definitions/upstream"
1064
- },
1065
- "propertyList": {
1066
- "alias": "property",
1067
- "type": "array",
1068
- "items": {
1069
- "$ref": "#/definitions/property"
1070
- }
729
+ "dialogComponentSchematic": {
730
+ "allOf": [
731
+ {
732
+ "$ref": "#/definitions/angular"
1071
733
  },
1072
- "identifier": {
1073
- "$ref": "#/definitions/accordionIdentifier"
734
+ {
735
+ "type": "object",
736
+ "properties": {
737
+ "dialogName": {
738
+ "alias": "name",
739
+ "type": "string",
740
+ "description": "The name of the dialog",
741
+ "x-prompt": "Which name should the dialog module have?"
742
+ },
743
+ "title": {
744
+ "type": "string",
745
+ "description": "The title of the dialog"
746
+ },
747
+ "actionList": {
748
+ "alias": "action",
749
+ "type": "array",
750
+ "description": "The list of actions to be added to the dialog",
751
+ "items": {
752
+ "oneOf": [
753
+ {
754
+ "type": "string"
755
+ },
756
+ {
757
+ "type": "object",
758
+ "properties": {
759
+ "label": {
760
+ "type": "string"
761
+ },
762
+ "color": {
763
+ "type": "string"
764
+ },
765
+ "role": {
766
+ "type": "string",
767
+ "enum": [
768
+ "submit",
769
+ "close"
770
+ ]
771
+ }
772
+ }
773
+ }
774
+ ]
775
+ }
776
+ }
777
+ },
778
+ "required": [
779
+ "dialogName"
780
+ ]
1074
781
  }
1075
- }
782
+ ]
1076
783
  },
1077
- "formComponent": {
784
+ "dialogTableActionSchematic": {
1078
785
  "allOf": [
1079
786
  {
1080
- "$ref": "#/definitions/formDefinition"
787
+ "$ref": "#/definitions/tableActionSchematic"
1081
788
  },
1082
789
  {
1083
790
  "type": "object",
1084
791
  "properties": {
1085
- "window": {
792
+ "withoutBody": {
1086
793
  "type": "boolean",
1087
- "description": "Whether the form can be opened in a window"
1088
- },
1089
- "role": {
1090
- "type": "string",
1091
- "description": "Define the role of the form"
794
+ "description": "Whether the table action operation should be without body",
795
+ "default": false
1092
796
  },
1093
- "matFormFieldDefaultOptions": {
1094
- "appearance": {
1095
- "type": "string",
1096
- "description": "The appearance of the mat form field",
1097
- "enum": [
1098
- "legacy",
1099
- "standard",
1100
- "fill",
1101
- "outline"
797
+ "actionList": {
798
+ "alias": "action",
799
+ "type": "array",
800
+ "description": "The list of actions to be added to the dialog",
801
+ "items": {
802
+ "oneOf": [
803
+ {
804
+ "type": "string"
805
+ },
806
+ {
807
+ "type": "object",
808
+ "properties": {
809
+ "label": {
810
+ "type": "string"
811
+ },
812
+ "color": {
813
+ "type": "string"
814
+ },
815
+ "role": {
816
+ "type": "string",
817
+ "enum": [
818
+ "submit",
819
+ "close"
820
+ ]
821
+ }
822
+ }
823
+ }
1102
824
  ]
1103
825
  }
1104
826
  },
1105
- "identifier": {
1106
- "$ref": "#/definitions/accordionIdentifier"
827
+ "title": {
828
+ "type": "string",
829
+ "description": "The title for the dialog"
1107
830
  }
1108
831
  }
1109
832
  }
1110
833
  ]
1111
834
  },
1112
- "formControl": {
1113
- "type": "object",
1114
- "properties": {
1115
- "name": {
1116
- "type": "string",
1117
- "description": "The name of the control"
835
+ "formArray": {
836
+ "allOf": [
837
+ {
838
+ "type": "object",
839
+ "properties": {
840
+ "role": {
841
+ "type": "string",
842
+ "const": "array"
843
+ }
844
+ }
1118
845
  },
1119
- "type": {
1120
- "$ref": "#/definitions/type"
846
+ {
847
+ "oneOf": [
848
+ {
849
+ "allOf": [
850
+ {
851
+ "$ref": "#/definitions/baseFormArray"
852
+ },
853
+ {
854
+ "type": "object",
855
+ "properties": {
856
+ "kind": {
857
+ "type": "string",
858
+ "const": "default"
859
+ }
860
+ }
861
+ }
862
+ ]
863
+ }
864
+ ]
865
+ }
866
+ ]
867
+ },
868
+ "formArraySchematic": {
869
+ "allOf": [
870
+ {
871
+ "$ref": "#/definitions/angular"
1121
872
  },
1122
- "isArray": {
1123
- "type": "boolean",
1124
- "description": "Whether the control value is an array",
1125
- "default": false
873
+ {
874
+ "$ref": "#/definitions/formArray"
1126
875
  },
1127
- "state": {
1128
- "type": "string",
1129
- "description": "The initial state of the control"
876
+ {
877
+ "type": "object",
878
+ "properties": {
879
+ "formName": {
880
+ "alias": "form",
881
+ "type": "string",
882
+ "description": "The name of the form where the form control should be added"
883
+ }
884
+ },
885
+ "required": [
886
+ "formName"
887
+ ]
888
+ }
889
+ ]
890
+ },
891
+ "formComponent": {
892
+ "allOf": [
893
+ {
894
+ "$ref": "#/definitions/formDefinition"
1130
895
  },
1131
- "isRequired": {
1132
- "type": "boolean",
1133
- "description": "Whether the control value is required",
1134
- "default": false
896
+ {
897
+ "type": "object",
898
+ "properties": {
899
+ "window": {
900
+ "type": "boolean",
901
+ "description": "Whether the form can be opened in a window"
902
+ },
903
+ "role": {
904
+ "type": "string",
905
+ "description": "Define the role of the form"
906
+ },
907
+ "matFormFieldDefaultOptions": {
908
+ "appearance": {
909
+ "type": "string",
910
+ "description": "The appearance of the mat form field",
911
+ "enum": [
912
+ "legacy",
913
+ "standard",
914
+ "fill",
915
+ "outline"
916
+ ]
917
+ }
918
+ },
919
+ "identifier": {
920
+ "$ref": "#/definitions/accordionIdentifier"
921
+ }
922
+ }
923
+ }
924
+ ]
925
+ },
926
+ "formComponentSchematic": {
927
+ "allOf": [
928
+ {
929
+ "$ref": "#/definitions/angular"
1135
930
  },
1136
- "isReadonly": {
1137
- "type": "boolean",
1138
- "description": "Whether the control value is readonly",
1139
- "default": false
931
+ {
932
+ "$ref": "#/definitions/formComponent"
933
+ }
934
+ ]
935
+ },
936
+ "formControl": {
937
+ "allOf": [
938
+ {
939
+ "type": "object",
940
+ "properties": {
941
+ "role": {
942
+ "type": "string",
943
+ "const": "control",
944
+ "default": "control"
945
+ }
946
+ }
1140
947
  },
1141
- "isDisabled": {
1142
- "type": "boolean",
1143
- "description": "Whether the control value is disabled",
1144
- "default": false
948
+ {
949
+ "oneOf": [
950
+ {
951
+ "allOf": [
952
+ {
953
+ "$ref": "#/definitions/baseFormControl"
954
+ },
955
+ {
956
+ "type": "object",
957
+ "properties": {
958
+ "kind": {
959
+ "type": "string",
960
+ "const": "default"
961
+ }
962
+ }
963
+ }
964
+ ]
965
+ },
966
+ {
967
+ "$ref": "#/definitions/inputFormControl"
968
+ },
969
+ {
970
+ "$ref": "#/definitions/selectFormControl"
971
+ },
972
+ {
973
+ "$ref": "#/definitions/checkboxFormControl"
974
+ },
975
+ {
976
+ "$ref": "#/definitions/textareaFormControl"
977
+ },
978
+ {
979
+ "$ref": "#/definitions/tableSelectFormControl"
980
+ },
981
+ {
982
+ "$ref": "#/definitions/slideToggleFormControl"
983
+ }
984
+ ]
985
+ }
986
+ ]
987
+ },
988
+ "formControlSchematic": {
989
+ "allOf": [
990
+ {
991
+ "$ref": "#/definitions/angular"
1145
992
  },
1146
- "validatorList": {
1147
- "type": "array",
1148
- "items": {
1149
- "type": "string"
1150
- }
993
+ {
994
+ "$ref": "#/definitions/formControl"
1151
995
  },
1152
- "kind": {
1153
- "type": "string",
1154
- "description": "The name of the template",
1155
- "enum": [
1156
- "default",
1157
- "input",
1158
- "select",
1159
- "checkbox",
1160
- "autocomplete-table-select",
1161
- "table-select",
1162
- "textarea",
1163
- "slide-toggle"
1164
- ],
1165
- "default": "default"
996
+ {
997
+ "type": "object",
998
+ "properties": {
999
+ "formName": {
1000
+ "alias": "form",
1001
+ "type": "string",
1002
+ "description": "The name of the form where the form control should be added"
1003
+ }
1004
+ },
1005
+ "required": [
1006
+ "formName"
1007
+ ]
1166
1008
  }
1167
- },
1168
- "required": [
1169
- "name"
1170
- ],
1171
- "additionalProperties": true
1009
+ ]
1172
1010
  },
1173
1011
  "formDefinition": {
1174
1012
  "type": "object",
@@ -1177,7 +1015,7 @@
1177
1015
  "alias": "control",
1178
1016
  "type": "array",
1179
1017
  "items": {
1180
- "$ref": "#/definitions/formControl"
1018
+ "$ref": "#/definitions/control"
1181
1019
  }
1182
1020
  }
1183
1021
  },
@@ -1185,6 +1023,26 @@
1185
1023
  "controlList"
1186
1024
  ]
1187
1025
  },
1026
+ "formDefinitionSchematic": {
1027
+ "allOf": [
1028
+ {
1029
+ "$ref": "#/definitions/angular"
1030
+ },
1031
+ {
1032
+ "$ref": "#/definitions/formDefinition"
1033
+ },
1034
+ {
1035
+ "type": "object",
1036
+ "properties": {
1037
+ "standalone": {
1038
+ "type": "boolean",
1039
+ "description": "Whether the form definition has a form.provider file",
1040
+ "default": true
1041
+ }
1042
+ }
1043
+ }
1044
+ ]
1045
+ },
1188
1046
  "formField": {
1189
1047
  "type": "object",
1190
1048
  "properties": {
@@ -1202,49 +1060,193 @@
1202
1060
  }
1203
1061
  }
1204
1062
  },
1205
- "general": {
1206
- "type": "object",
1207
- "properties": {
1208
- "project": {
1209
- "type": "string",
1210
- "description": "Project name where the files should be generated"
1211
- },
1212
- "feature": {
1213
- "type": "string",
1214
- "description": "Feature name where the files should be generated"
1063
+ "formGroup": {
1064
+ "allOf": [
1065
+ {
1066
+ "type": "object",
1067
+ "properties": {
1068
+ "role": {
1069
+ "type": "string",
1070
+ "const": "group"
1071
+ }
1072
+ }
1215
1073
  },
1216
- "overwrite": {
1217
- "anyOf": [
1218
- {
1219
- "type": "boolean"
1220
- },
1074
+ {
1075
+ "oneOf": [
1221
1076
  {
1222
- "type": "array",
1223
- "items": {
1224
- "type": "string"
1225
- }
1077
+ "allOf": [
1078
+ {
1079
+ "$ref": "#/definitions/baseFormGroup"
1080
+ },
1081
+ {
1082
+ "type": "object",
1083
+ "properties": {
1084
+ "kind": {
1085
+ "type": "string",
1086
+ "const": "default"
1087
+ }
1088
+ }
1089
+ }
1090
+ ]
1226
1091
  }
1227
- ],
1228
- "description": "Overwrite existing files",
1229
- "default": false
1092
+ ]
1093
+ }
1094
+ ]
1095
+ },
1096
+ "formGroupSchematic": {
1097
+ "allOf": [
1098
+ {
1099
+ "$ref": "#/definitions/angular"
1230
1100
  },
1231
- "overwriteHtml": {
1232
- "type": "boolean",
1233
- "default": false
1101
+ {
1102
+ "$ref": "#/definitions/formGroup"
1234
1103
  },
1235
- "replace": {
1236
- "type": "boolean",
1237
- "default": false
1104
+ {
1105
+ "type": "object",
1106
+ "properties": {
1107
+ "formName": {
1108
+ "alias": "form",
1109
+ "type": "string",
1110
+ "description": "The name of the form where the form control should be added"
1111
+ }
1112
+ },
1113
+ "required": [
1114
+ "formName"
1115
+ ]
1238
1116
  }
1239
- }
1117
+ ]
1240
1118
  },
1241
- "headerButton": {
1242
- "type": "object",
1243
- "properties": {
1244
- "permission": {
1245
- "type": "string"
1119
+ "formTableActionSchematic": {
1120
+ "allOf": [
1121
+ {
1122
+ "$ref": "#/definitions/tableActionSchematic"
1246
1123
  },
1247
- "icon": {
1124
+ {
1125
+ "type": "object",
1126
+ "properties": {
1127
+ "formInitial": {
1128
+ "type": "object",
1129
+ "description": "The mapping from the row object to the form initial object"
1130
+ },
1131
+ "formComponent": {
1132
+ "type": "string"
1133
+ },
1134
+ "customComponent": {
1135
+ "type": "boolean",
1136
+ "default": false,
1137
+ "description": "If true the schematic will not coerce the form component"
1138
+ },
1139
+ "loadFrom": {
1140
+ "type": "object",
1141
+ "properties": {
1142
+ "operationId": {
1143
+ "type": "string"
1144
+ },
1145
+ "scope": {
1146
+ "type": "string",
1147
+ "description": "The scope of package for the openapi classes"
1148
+ },
1149
+ "body": {
1150
+ "oneOf": [
1151
+ {
1152
+ "type": "boolean",
1153
+ "description": "Pass the full row as body for the operation request"
1154
+ },
1155
+ {
1156
+ "type": "object",
1157
+ "description": "Mapping of table columns to body properties - [request property]: [table column]",
1158
+ "additionalProperties": true
1159
+ }
1160
+ ]
1161
+ },
1162
+ "parameters": {
1163
+ "oneOf": [
1164
+ {
1165
+ "type": "boolean",
1166
+ "description": "Pass the full row as parameters for the operation request"
1167
+ },
1168
+ {
1169
+ "type": "object",
1170
+ "description": "Mapping of table columns to parameters properties - [request property]: [table column]",
1171
+ "additionalProperties": true
1172
+ }
1173
+ ]
1174
+ }
1175
+ }
1176
+ },
1177
+ "formOptions": {
1178
+ "$ref": "#/definitions/formComponent"
1179
+ }
1180
+ }
1181
+ }
1182
+ ]
1183
+ },
1184
+ "formTableHeaderButtonSchematic": {
1185
+ "allOf": [
1186
+ {
1187
+ "$ref": "#/definitions/tableHeaderButtonSchematic"
1188
+ },
1189
+ {
1190
+ "type": "object",
1191
+ "properties": {
1192
+ "formComponent": {
1193
+ "type": "string"
1194
+ },
1195
+ "customComponent": {
1196
+ "type": "boolean",
1197
+ "default": false,
1198
+ "description": "If true the schematic will not coerce the form component"
1199
+ },
1200
+ "formOptions": {
1201
+ "$ref": "#/definitions/formComponent"
1202
+ }
1203
+ }
1204
+ }
1205
+ ]
1206
+ },
1207
+ "general": {
1208
+ "type": "object",
1209
+ "properties": {
1210
+ "project": {
1211
+ "type": "string",
1212
+ "description": "Project name where the files should be generated"
1213
+ },
1214
+ "feature": {
1215
+ "type": "string",
1216
+ "description": "Feature name where the files should be generated"
1217
+ },
1218
+ "overwrite": {
1219
+ "anyOf": [
1220
+ {
1221
+ "type": "boolean"
1222
+ },
1223
+ {
1224
+ "type": "array",
1225
+ "items": {
1226
+ "type": "string"
1227
+ }
1228
+ }
1229
+ ],
1230
+ "description": "Overwrite existing files",
1231
+ "default": false
1232
+ },
1233
+ "overwriteHtml": {
1234
+ "type": "boolean",
1235
+ "default": false
1236
+ },
1237
+ "replace": {
1238
+ "type": "boolean",
1239
+ "default": false
1240
+ }
1241
+ }
1242
+ },
1243
+ "headerButton": {
1244
+ "type": "object",
1245
+ "properties": {
1246
+ "permission": {
1247
+ "type": "string"
1248
+ },
1249
+ "icon": {
1248
1250
  "type": "string"
1249
1251
  },
1250
1252
  "svgIcon": {
@@ -1281,11 +1283,18 @@
1281
1283
  "inputFormControl": {
1282
1284
  "allOf": [
1283
1285
  {
1284
- "$ref": "#/definitions/formControl"
1286
+ "$ref": "#/definitions/baseFormControl"
1285
1287
  },
1286
1288
  {
1287
1289
  "type": "object",
1288
1290
  "properties": {
1291
+ "kind": {
1292
+ "type": "string",
1293
+ "const": "input"
1294
+ },
1295
+ "formField": {
1296
+ "$ref": "#/definitions/formField"
1297
+ },
1289
1298
  "inputType": {
1290
1299
  "type": "string",
1291
1300
  "enum": [
@@ -1315,14 +1324,34 @@
1315
1324
  },
1316
1325
  "placeholder": {
1317
1326
  "type": "string"
1318
- },
1319
- "formField": {
1320
- "$ref": "#/definitions/formField"
1321
1327
  }
1322
1328
  }
1323
1329
  }
1324
1330
  ]
1325
1331
  },
1332
+ "inputFormControlSchematic": {
1333
+ "allOf": [
1334
+ {
1335
+ "$ref": "#/definitions/angular"
1336
+ },
1337
+ {
1338
+ "$ref": "#/definitions/inputFormControl"
1339
+ },
1340
+ {
1341
+ "type": "object",
1342
+ "properties": {
1343
+ "formName": {
1344
+ "alias": "form",
1345
+ "type": "string",
1346
+ "description": "The name of the form where the form control should be added"
1347
+ }
1348
+ },
1349
+ "required": [
1350
+ "formName"
1351
+ ]
1352
+ }
1353
+ ]
1354
+ },
1326
1355
  "minimumTable": {
1327
1356
  "type": "object",
1328
1357
  "properties": {
@@ -1364,6 +1393,104 @@
1364
1393
  }
1365
1394
  }
1366
1395
  },
1396
+ "navigationTableActionSchematic": {
1397
+ "allOf": [
1398
+ {
1399
+ "$ref": "#/definitions/tableActionSchematic"
1400
+ },
1401
+ {
1402
+ "type": "object",
1403
+ "properties": {
1404
+ "route": {
1405
+ "type": "string",
1406
+ "description": "The route for the table action"
1407
+ },
1408
+ "relativeTo": {
1409
+ "type": "boolean",
1410
+ "description": "Use the current ActivatedRoute to resolve the route or not",
1411
+ "default": false
1412
+ }
1413
+ }
1414
+ }
1415
+ ]
1416
+ },
1417
+ "navigationTableHeaderButtonSchematic": {
1418
+ "allOf": [
1419
+ {
1420
+ "$ref": "#/definitions/tableHeaderButtonSchematic"
1421
+ },
1422
+ {
1423
+ "type": "object",
1424
+ "properties": {
1425
+ "route": {
1426
+ "type": "string",
1427
+ "description": "The route path for the table action"
1428
+ },
1429
+ "relativeTo": {
1430
+ "type": "boolean",
1431
+ "description": "Indicates if the route path should be relative to the current activated route",
1432
+ "default": false
1433
+ }
1434
+ }
1435
+ }
1436
+ ]
1437
+ },
1438
+ "openApiTableActionSchematic": {
1439
+ "allOf": [
1440
+ {
1441
+ "$ref": "#/definitions/tableActionSchematic"
1442
+ },
1443
+ {
1444
+ "type": "object",
1445
+ "properties": {
1446
+ "operationId": {
1447
+ "type": "string",
1448
+ "description": "The open api operationId for the table action"
1449
+ },
1450
+ "scope": {
1451
+ "type": "string",
1452
+ "description": "The scope of package for the openapi classes"
1453
+ },
1454
+ "body": {
1455
+ "oneOf": [
1456
+ {
1457
+ "type": "boolean",
1458
+ "description": "Pass the full row as body for the operation request"
1459
+ },
1460
+ {
1461
+ "type": "object",
1462
+ "description": "Mapping of table columns to body properties - [request property]: [table column]",
1463
+ "additionalProperties": true
1464
+ }
1465
+ ]
1466
+ },
1467
+ "parameters": {
1468
+ "oneOf": [
1469
+ {
1470
+ "type": "boolean",
1471
+ "description": "Pass the full row as parameters for the operation request"
1472
+ },
1473
+ {
1474
+ "type": "object",
1475
+ "description": "Mapping of table columns to parameters properties - [request property]: [table column]",
1476
+ "additionalProperties": true
1477
+ }
1478
+ ]
1479
+ }
1480
+ },
1481
+ "required": [
1482
+ "operationId"
1483
+ ]
1484
+ }
1485
+ ]
1486
+ },
1487
+ "operationTableActionSchematic": {
1488
+ "allOf": [
1489
+ {
1490
+ "$ref": "#/definitions/tableActionSchematic"
1491
+ }
1492
+ ]
1493
+ },
1367
1494
  "pipe": {
1368
1495
  "oneOf": [
1369
1496
  {
@@ -1416,369 +1543,294 @@
1416
1543
  }
1417
1544
  ]
1418
1545
  },
1419
- "selectFormControl": {
1420
- "allOf": [
1546
+ "schematicInput": {
1547
+ "type": "object",
1548
+ "oneOf": [
1421
1549
  {
1422
- "$ref": "#/definitions/formControl"
1550
+ "type": "object",
1551
+ "properties": {
1552
+ "package": {
1553
+ "type": "string",
1554
+ "const": "@rxap/schematic-angular"
1555
+ },
1556
+ "name": {
1557
+ "type": "string",
1558
+ "const": "table-component"
1559
+ },
1560
+ "options": {
1561
+ "$ref": "#/definitions/tableComponentSchematic"
1562
+ }
1563
+ }
1423
1564
  },
1424
1565
  {
1425
1566
  "type": "object",
1426
1567
  "properties": {
1427
- "formField": {
1428
- "$ref": "#/definitions/formField"
1568
+ "package": {
1569
+ "type": "string",
1570
+ "const": "@rxap/schematic-angular"
1571
+ },
1572
+ "name": {
1573
+ "type": "string",
1574
+ "const": "tree-table-component"
1429
1575
  },
1430
1576
  "options": {
1431
- "type": "array",
1432
- "items": {
1433
- "type": "object",
1434
- "properties": {
1435
- "display": {
1436
- "type": "string"
1437
- },
1438
- "value": {
1439
- "oneOf": [
1440
- {
1441
- "type": "string"
1442
- },
1443
- {
1444
- "type": "number"
1445
- },
1446
- {
1447
- "type": "boolean"
1448
- },
1449
- {
1450
- "type": "object",
1451
- "additionalProperties": true
1452
- }
1453
- ]
1454
- }
1455
- }
1456
- }
1577
+ "$ref": "#/definitions/treeTableComponentSchematic"
1578
+ }
1579
+ }
1580
+ },
1581
+ {
1582
+ "type": "object",
1583
+ "properties": {
1584
+ "package": {
1585
+ "type": "string",
1586
+ "const": "@rxap/schematic-angular"
1457
1587
  },
1458
- "backend": {
1459
- "$ref": "#/definitions/backend"
1588
+ "name": {
1589
+ "type": "string",
1590
+ "const": "form-component"
1460
1591
  },
1461
- "multiple": {
1462
- "alias": "multi",
1463
- "type": "boolean",
1464
- "description": "Whether the select form control is multiple mode"
1592
+ "options": {
1593
+ "$ref": "#/definitions/formComponentSchematic"
1465
1594
  }
1466
1595
  }
1467
- }
1468
- ]
1469
- },
1470
- "tableAction": {
1471
- "type": "object",
1472
- "properties": {
1473
- "type": {
1474
- "type": "string"
1475
- },
1476
- "refresh": {
1477
- "type": "boolean"
1478
- },
1479
- "confirm": {
1480
- "type": "boolean"
1481
- },
1482
- "tooltip": {
1483
- "type": "string"
1484
- },
1485
- "errorMessage": {
1486
- "type": "string"
1487
- },
1488
- "successMessage": {
1489
- "type": "string"
1490
- },
1491
- "priority": {
1492
- "type": "number"
1493
- },
1494
- "checkFunction": {
1495
- "type": "string"
1496
- },
1497
- "inHeader": {
1498
- "type": "boolean"
1499
- },
1500
- "role": {
1501
- "type": "string"
1502
- },
1503
- "icon": {
1504
- "type": "string"
1505
- },
1506
- "svgIcon": {
1507
- "type": "string"
1508
- },
1509
- "permission": {
1510
- "type": "string"
1511
- },
1512
- "color": {
1513
- "type": "string",
1514
- "description": "Value for the color input of the mat-button / mat-icon component"
1515
1596
  },
1516
- "cssClass": {
1517
- "type": "string",
1518
- "description": "Additional CSS classes added to the button element"
1519
- },
1520
- "options": {
1597
+ {
1521
1598
  "type": "object",
1522
- "additionalProperties": true
1523
- }
1524
- },
1525
- "required": [
1526
- "type"
1527
- ]
1528
- },
1529
- "tableColumn": {
1530
- "type": "object",
1531
- "properties": {
1532
- "name": {
1533
- "type": "string"
1534
- },
1535
- "type": {
1536
- "$ref": "#/definitions/type"
1537
- },
1538
- "kind": {
1539
- "type": "string"
1540
- },
1541
- "modifiers": {
1542
- "type": "array",
1543
- "items": {
1544
- "type": "string"
1599
+ "properties": {
1600
+ "package": {
1601
+ "type": "string",
1602
+ "const": "@rxap/schematic-angular"
1603
+ },
1604
+ "name": {
1605
+ "type": "string",
1606
+ "const": "form-definition"
1607
+ },
1608
+ "options": {
1609
+ "$ref": "#/definitions/formDefinitionSchematic"
1610
+ }
1545
1611
  }
1546
1612
  },
1547
- "template": {
1548
- "type": "string"
1549
- },
1550
- "pipeList": {
1551
- "type": "array",
1552
- "items": {
1553
- "$ref": "#/definitions/pipe"
1613
+ {
1614
+ "type": "object",
1615
+ "properties": {
1616
+ "package": {
1617
+ "type": "string",
1618
+ "const": "@rxap/schematic-angular"
1619
+ },
1620
+ "name": {
1621
+ "type": "string",
1622
+ "const": "table-action"
1623
+ },
1624
+ "options": {
1625
+ "$ref": "#/definitions/tableActionSchematic"
1626
+ }
1554
1627
  }
1555
1628
  },
1556
- "hasFilter": {
1557
- "type": "boolean"
1558
- },
1559
- "nowrap": {
1560
- "type": "boolean"
1561
- },
1562
- "cssClass": {
1563
- "type": "string"
1564
- },
1565
- "title": {
1566
- "type": "string"
1567
- },
1568
- "propertyPath": {
1569
- "type": "string"
1570
- },
1571
- "hidden": {
1572
- "type": "boolean"
1573
- },
1574
- "active": {
1575
- "type": "boolean"
1576
- },
1577
- "inactive": {
1578
- "type": "boolean"
1579
- },
1580
- "show": {
1581
- "type": "boolean"
1629
+ {
1630
+ "type": "object",
1631
+ "properties": {
1632
+ "package": {
1633
+ "type": "string",
1634
+ "const": "@rxap/schematic-angular"
1635
+ },
1636
+ "name": {
1637
+ "type": "string",
1638
+ "const": "table-header-button"
1639
+ },
1640
+ "options": {
1641
+ "$ref": "#/definitions/tableHeaderButtonSchematic"
1642
+ }
1643
+ }
1582
1644
  },
1583
- "filterControl": {
1584
- "$ref": "#/definitions/formControl"
1585
- }
1586
- },
1587
- "required": [
1588
- "name"
1589
- ]
1590
- },
1591
- "table": {
1592
- "allOf": [
1593
1645
  {
1594
- "$ref": "#/definitions/minimumTable"
1646
+ "type": "object",
1647
+ "properties": {
1648
+ "package": {
1649
+ "type": "string",
1650
+ "const": "@rxap/schematic-angular"
1651
+ },
1652
+ "name": {
1653
+ "type": "string",
1654
+ "const": "form-table-header-button"
1655
+ },
1656
+ "options": {
1657
+ "$ref": "#/definitions/formTableHeaderButtonSchematic"
1658
+ }
1659
+ }
1595
1660
  },
1596
1661
  {
1597
1662
  "type": "object",
1598
1663
  "properties": {
1599
- "tableMethod": {
1600
- "$ref": "#/definitions/type"
1664
+ "package": {
1665
+ "type": "string",
1666
+ "const": "@rxap/schematic-angular"
1601
1667
  },
1602
- "openApi": {
1603
- "type": "object",
1604
- "properties": {
1605
- "operationId": {
1606
- "type": "string",
1607
- "description": "The operationId for the open api operation"
1608
- },
1609
- "adapter": {
1610
- "$ref": "#/definitions/type"
1611
- }
1612
- },
1613
- "required": [
1614
- "operationId"
1615
- ]
1668
+ "name": {
1669
+ "type": "string",
1670
+ "const": "navigation-table-header-button"
1616
1671
  },
1617
- "modifiers": {
1618
- "alias": "modifier",
1619
- "type": "array",
1620
- "items": {
1621
- "type": "string",
1622
- "enum": [
1623
- "navigation-back-header",
1624
- "without-title",
1625
- "show-archived-slide"
1626
- ]
1627
- },
1628
- "description": "The table modifiers"
1672
+ "options": {
1673
+ "$ref": "#/definitions/navigationTableHeaderButtonSchematic"
1674
+ }
1675
+ }
1676
+ },
1677
+ {
1678
+ "type": "object",
1679
+ "properties": {
1680
+ "package": {
1681
+ "type": "string",
1682
+ "const": "@rxap/schematic-angular"
1629
1683
  },
1630
- "selectColumn": {
1631
- "type": "boolean",
1632
- "description": "Whether to add a select column to the table"
1684
+ "name": {
1685
+ "type": "string",
1686
+ "const": "accordion-component"
1687
+ },
1688
+ "options": {
1689
+ "$ref": "#/definitions/accordionComponentSchematic"
1633
1690
  }
1634
1691
  }
1635
- }
1636
- ]
1637
- },
1638
- "treeTable": {
1639
- "allOf": [
1692
+ },
1640
1693
  {
1641
- "$ref": "#/definitions/minimumTable"
1694
+ "type": "object",
1695
+ "properties": {
1696
+ "package": {
1697
+ "type": "string",
1698
+ "const": "@rxap/schematic-angular"
1699
+ },
1700
+ "name": {
1701
+ "type": "string",
1702
+ "const": "accordion-item-component"
1703
+ },
1704
+ "options": {
1705
+ "$ref": "#/definitions/accordionItemComponentSchematic"
1706
+ }
1707
+ }
1642
1708
  },
1643
1709
  {
1644
1710
  "type": "object",
1645
1711
  "properties": {
1646
- "modifiers": {
1647
- "alias": "modifier",
1648
- "type": "array",
1649
- "items": {
1650
- "type": "string",
1651
- "enum": [
1652
- "navigation-back-header",
1653
- "without-title"
1654
- ]
1655
- },
1656
- "description": "The table modifiers"
1712
+ "package": {
1713
+ "type": "string",
1714
+ "const": "@rxap/schematic-angular"
1657
1715
  },
1658
- "tableRootMethod": {
1659
- "$ref": "#/definitions/type"
1716
+ "name": {
1717
+ "type": "string",
1718
+ "const": "accordion-item-table-component"
1660
1719
  },
1661
- "tableChildMethod": {
1662
- "$ref": "#/definitions/type"
1720
+ "options": {
1721
+ "$ref": "#/definitions/accordionItemTableComponentSchematic"
1663
1722
  }
1664
1723
  }
1665
- }
1666
- ]
1667
- },
1668
- "type": {
1669
- "oneOf": [
1724
+ },
1670
1725
  {
1671
- "type": "string"
1726
+ "type": "object",
1727
+ "properties": {
1728
+ "package": {
1729
+ "type": "string",
1730
+ "const": "@rxap/schematic-angular"
1731
+ },
1732
+ "name": {
1733
+ "type": "string",
1734
+ "const": "accordion-item-switch-component"
1735
+ },
1736
+ "options": {
1737
+ "$ref": "#/definitions/accordionItemSwitchComponentSchematic"
1738
+ }
1739
+ }
1672
1740
  },
1673
1741
  {
1674
1742
  "type": "object",
1675
1743
  "properties": {
1744
+ "package": {
1745
+ "type": "string",
1746
+ "const": "@rxap/schematic-angular"
1747
+ },
1676
1748
  "name": {
1677
- "type": "string"
1749
+ "type": "string",
1750
+ "const": "data-grid-component"
1678
1751
  },
1679
- "isTypeOnly": {
1680
- "type": "boolean"
1752
+ "options": {
1753
+ "$ref": "#/definitions/dataGridComponentSchematic"
1754
+ }
1755
+ }
1756
+ },
1757
+ {
1758
+ "type": "object",
1759
+ "properties": {
1760
+ "package": {
1761
+ "type": "string",
1762
+ "const": "@rxap/schematic-angular"
1681
1763
  },
1682
- "moduleSpecifier": {
1683
- "type": "string"
1764
+ "name": {
1765
+ "type": "string",
1766
+ "const": "dialog-component"
1684
1767
  },
1685
- "namedImport": {
1686
- "type": "string"
1768
+ "options": {
1769
+ "$ref": "#/definitions/dialogComponentSchematic"
1770
+ }
1771
+ }
1772
+ },
1773
+ {
1774
+ "type": "object",
1775
+ "properties": {
1776
+ "package": {
1777
+ "type": "string",
1778
+ "const": "@rxap/schematic-angular"
1687
1779
  },
1688
- "namespaceImport": {
1689
- "type": "string"
1780
+ "name": {
1781
+ "type": "string",
1782
+ "const": "input-form-control"
1690
1783
  },
1691
- "defaultImport": {
1692
- "type": "string"
1784
+ "options": {
1785
+ "$ref": "#/definitions/inputFormControlSchematic"
1693
1786
  }
1694
- },
1695
- "required": [
1696
- "name"
1697
- ]
1698
- }
1699
- ]
1700
- },
1701
- "upstream": {
1702
- "oneOf": [
1787
+ }
1788
+ },
1703
1789
  {
1704
1790
  "type": "object",
1705
1791
  "properties": {
1706
- "kind": {
1792
+ "package": {
1707
1793
  "type": "string",
1708
- "enum": [
1709
- "open-api"
1710
- ]
1794
+ "const": "@rxap/schematic-angular"
1711
1795
  },
1712
- "operationId": {
1713
- "type": "string"
1796
+ "name": {
1797
+ "type": "string",
1798
+ "const": "select-form-control"
1714
1799
  },
1715
- "scope": {
1716
- "type": "string"
1800
+ "options": {
1801
+ "$ref": "#/definitions/selectFormControlSchematic"
1802
+ }
1803
+ }
1804
+ },
1805
+ {
1806
+ "type": "object",
1807
+ "properties": {
1808
+ "package": {
1809
+ "type": "string",
1810
+ "const": "@rxap/schematic-angular"
1717
1811
  },
1718
- "mapper": {
1719
- "type": "object",
1720
- "properties": {
1721
- "pageIndex": {
1722
- "type": "string"
1723
- },
1724
- "pageSize": {
1725
- "type": "string"
1726
- },
1727
- "sortBy": {
1728
- "type": "string"
1729
- },
1730
- "sortDirection": {
1731
- "type": "string"
1732
- },
1733
- "list": {
1734
- "type": "string"
1735
- },
1736
- "total": {
1737
- "type": "string"
1738
- },
1739
- "filter": {
1740
- "type": "object",
1741
- "properties": {
1742
- "eq": {
1743
- "type": "string"
1744
- },
1745
- "join": {
1746
- "type": "string"
1747
- }
1748
- }
1749
- }
1750
- }
1812
+ "name": {
1813
+ "type": "string",
1814
+ "const": "table-select-form-control"
1815
+ },
1816
+ "options": {
1817
+ "$ref": "#/definitions/tableSelectFormControlSchematic"
1751
1818
  }
1752
- },
1753
- "required": [
1754
- "kind",
1755
- "operationId"
1756
- ]
1757
- }
1758
- ]
1759
- },
1760
- "schematicInput": {
1761
- "$schema": "http://json-schema.org/schema",
1762
- "$id": "schematic-input",
1763
- "type": "object",
1764
- "oneOf": [
1819
+ }
1820
+ },
1765
1821
  {
1766
1822
  "type": "object",
1767
1823
  "properties": {
1768
1824
  "package": {
1769
1825
  "type": "string",
1770
- "enum": [
1771
- "@rxap/schematic-angular"
1772
- ]
1826
+ "const": "@rxap/schematic-angular"
1773
1827
  },
1774
1828
  "name": {
1775
1829
  "type": "string",
1776
- "enum": [
1777
- "table-component"
1778
- ]
1830
+ "const": "form-control"
1779
1831
  },
1780
1832
  "options": {
1781
- "$ref": "#/definitions/tableComponentSchematic"
1833
+ "$ref": "#/definitions/formControlSchematic"
1782
1834
  }
1783
1835
  }
1784
1836
  },
@@ -1787,18 +1839,14 @@
1787
1839
  "properties": {
1788
1840
  "package": {
1789
1841
  "type": "string",
1790
- "enum": [
1791
- "@rxap/schematic-angular"
1792
- ]
1842
+ "const": "@rxap/schematic-angular"
1793
1843
  },
1794
1844
  "name": {
1795
1845
  "type": "string",
1796
- "enum": [
1797
- "tree-table-component"
1798
- ]
1846
+ "const": "form-group"
1799
1847
  },
1800
1848
  "options": {
1801
- "$ref": "#/definitions/treeTableComponentSchematic"
1849
+ "$ref": "#/definitions/formGroupSchematic"
1802
1850
  }
1803
1851
  }
1804
1852
  },
@@ -1807,18 +1855,14 @@
1807
1855
  "properties": {
1808
1856
  "package": {
1809
1857
  "type": "string",
1810
- "enum": [
1811
- "@rxap/schematic-angular"
1812
- ]
1858
+ "const": "@rxap/schematic-angular"
1813
1859
  },
1814
1860
  "name": {
1815
1861
  "type": "string",
1816
- "enum": [
1817
- "form-component"
1818
- ]
1862
+ "const": "form-array"
1819
1863
  },
1820
1864
  "options": {
1821
- "$ref": "#/definitions/formComponentSchematic"
1865
+ "$ref": "#/definitions/formArraySchematic"
1822
1866
  }
1823
1867
  }
1824
1868
  },
@@ -1827,18 +1871,14 @@
1827
1871
  "properties": {
1828
1872
  "package": {
1829
1873
  "type": "string",
1830
- "enum": [
1831
- "@rxap/schematic-angular"
1832
- ]
1874
+ "const": "@rxap/schematic-angular"
1833
1875
  },
1834
1876
  "name": {
1835
1877
  "type": "string",
1836
- "enum": [
1837
- "form-definition"
1838
- ]
1878
+ "const": "dialog-table-action"
1839
1879
  },
1840
1880
  "options": {
1841
- "$ref": "#/definitions/formDefinitionSchematic"
1881
+ "$ref": "#/definitions/dialogTableActionSchematic"
1842
1882
  }
1843
1883
  }
1844
1884
  },
@@ -1847,18 +1887,14 @@
1847
1887
  "properties": {
1848
1888
  "package": {
1849
1889
  "type": "string",
1850
- "enum": [
1851
- "@rxap/schematic-angular"
1852
- ]
1890
+ "const": "@rxap/schematic-angular"
1853
1891
  },
1854
1892
  "name": {
1855
1893
  "type": "string",
1856
- "enum": [
1857
- "table-action"
1858
- ]
1894
+ "const": "form-table-action"
1859
1895
  },
1860
1896
  "options": {
1861
- "$ref": "#/definitions/tableActionSchematic"
1897
+ "$ref": "#/definitions/formTableActionSchematic"
1862
1898
  }
1863
1899
  }
1864
1900
  },
@@ -1867,18 +1903,14 @@
1867
1903
  "properties": {
1868
1904
  "package": {
1869
1905
  "type": "string",
1870
- "enum": [
1871
- "@rxap/schematic-angular"
1872
- ]
1906
+ "const": "@rxap/schematic-angular"
1873
1907
  },
1874
1908
  "name": {
1875
1909
  "type": "string",
1876
- "enum": [
1877
- "table-header-button"
1878
- ]
1910
+ "const": "navigation-table-action"
1879
1911
  },
1880
1912
  "options": {
1881
- "$ref": "#/definitions/tableHeaderButtonSchematic"
1913
+ "$ref": "#/definitions/navigationTableActionSchematic"
1882
1914
  }
1883
1915
  }
1884
1916
  },
@@ -1887,18 +1919,14 @@
1887
1919
  "properties": {
1888
1920
  "package": {
1889
1921
  "type": "string",
1890
- "enum": [
1891
- "@rxap/schematic-angular"
1892
- ]
1922
+ "const": "@rxap/schematic-angular"
1893
1923
  },
1894
1924
  "name": {
1895
1925
  "type": "string",
1896
- "enum": [
1897
- "form-table-header-button"
1898
- ]
1926
+ "const": "operation-table-action"
1899
1927
  },
1900
1928
  "options": {
1901
- "$ref": "#/definitions/formTableHeaderButtonSchematic"
1929
+ "$ref": "#/definitions/operationTableActionSchematic"
1902
1930
  }
1903
1931
  }
1904
1932
  },
@@ -1907,18 +1935,14 @@
1907
1935
  "properties": {
1908
1936
  "package": {
1909
1937
  "type": "string",
1910
- "enum": [
1911
- "@rxap/schematic-angular"
1912
- ]
1938
+ "const": "@rxap/schematic-angular"
1913
1939
  },
1914
1940
  "name": {
1915
1941
  "type": "string",
1916
- "enum": [
1917
- "navigation-table-header-button"
1918
- ]
1942
+ "const": "open-api-table-action"
1919
1943
  },
1920
1944
  "options": {
1921
- "$ref": "#/definitions/navigationTableHeaderButtonSchematic"
1945
+ "$ref": "#/definitions/openApiTableActionSchematic"
1922
1946
  }
1923
1947
  }
1924
1948
  },
@@ -1927,18 +1951,14 @@
1927
1951
  "properties": {
1928
1952
  "package": {
1929
1953
  "type": "string",
1930
- "enum": [
1931
- "@rxap/schematic-angular"
1932
- ]
1954
+ "const": "@rxap/schematic-angular"
1933
1955
  },
1934
1956
  "name": {
1935
1957
  "type": "string",
1936
- "enum": [
1937
- "accordion-component"
1938
- ]
1958
+ "const": "tree-component"
1939
1959
  },
1940
1960
  "options": {
1941
- "$ref": "#/definitions/accordionComponentSchematic"
1961
+ "$ref": "#/definitions/treeComponentSchematic"
1942
1962
  }
1943
1963
  }
1944
1964
  },
@@ -1947,18 +1967,14 @@
1947
1967
  "properties": {
1948
1968
  "package": {
1949
1969
  "type": "string",
1950
- "enum": [
1951
- "@rxap/schematic-angular"
1952
- ]
1970
+ "const": "@rxap/schematic-angular"
1953
1971
  },
1954
1972
  "name": {
1955
1973
  "type": "string",
1956
- "enum": [
1957
- "accordion-item-component"
1958
- ]
1974
+ "const": "accordion-item-data-grid-component"
1959
1975
  },
1960
1976
  "options": {
1961
- "$ref": "#/definitions/accordionItemComponentSchematic"
1977
+ "$ref": "#/definitions/accordionItemDataGridComponentSchematic"
1962
1978
  }
1963
1979
  }
1964
1980
  },
@@ -1967,402 +1983,644 @@
1967
1983
  "properties": {
1968
1984
  "package": {
1969
1985
  "type": "string",
1970
- "enum": [
1971
- "@rxap/schematic-angular"
1972
- ]
1986
+ "const": "@rxap/schematic-angular"
1973
1987
  },
1974
1988
  "name": {
1975
1989
  "type": "string",
1976
- "enum": [
1977
- "accordion-item-table-component"
1978
- ]
1990
+ "const": "accordion-item-tree-table-component"
1979
1991
  },
1980
1992
  "options": {
1981
- "$ref": "#/definitions/accordionItemTableComponentSchematic"
1993
+ "$ref": "#/definitions/accordionItemTreeTableComponentSchematic"
1982
1994
  }
1983
1995
  }
1996
+ }
1997
+ ]
1998
+ },
1999
+ "selectFormControl": {
2000
+ "allOf": [
2001
+ {
2002
+ "$ref": "#/definitions/baseFormControl"
1984
2003
  },
1985
2004
  {
1986
2005
  "type": "object",
1987
2006
  "properties": {
1988
- "package": {
1989
- "type": "string",
1990
- "enum": [
1991
- "@rxap/schematic-angular"
1992
- ]
2007
+ "formField": {
2008
+ "$ref": "#/definitions/formField"
1993
2009
  },
1994
- "name": {
2010
+ "kind": {
1995
2011
  "type": "string",
1996
- "enum": [
1997
- "accordion-item-switch-component"
1998
- ]
2012
+ "const": "select"
1999
2013
  },
2000
- "options": {
2001
- "$ref": "#/definitions/accordionItemSwitchComponentSchematic"
2014
+ "optionList": {
2015
+ "type": "array",
2016
+ "items": {
2017
+ "type": "object",
2018
+ "properties": {
2019
+ "display": {
2020
+ "type": "string"
2021
+ },
2022
+ "value": {
2023
+ "oneOf": [
2024
+ {
2025
+ "type": "string"
2026
+ },
2027
+ {
2028
+ "type": "number"
2029
+ },
2030
+ {
2031
+ "type": "boolean"
2032
+ },
2033
+ {
2034
+ "type": "object",
2035
+ "additionalProperties": true
2036
+ }
2037
+ ]
2038
+ }
2039
+ }
2040
+ }
2041
+ },
2042
+ "backend": {
2043
+ "$ref": "#/definitions/backend"
2044
+ },
2045
+ "multiple": {
2046
+ "alias": "multi",
2047
+ "type": "boolean",
2048
+ "description": "Whether the select form control is multiple mode"
2002
2049
  }
2003
2050
  }
2051
+ }
2052
+ ]
2053
+ },
2054
+ "selectFormControlSchematic": {
2055
+ "allOf": [
2056
+ {
2057
+ "$ref": "#/definitions/angular"
2058
+ },
2059
+ {
2060
+ "$ref": "#/definitions/selectFormControl"
2004
2061
  },
2005
2062
  {
2006
2063
  "type": "object",
2007
2064
  "properties": {
2008
- "package": {
2065
+ "formName": {
2066
+ "alias": "form",
2009
2067
  "type": "string",
2010
- "enum": [
2011
- "@rxap/schematic-angular"
2012
- ]
2068
+ "description": "The name of the form where the form control should be added"
2069
+ }
2070
+ },
2071
+ "required": [
2072
+ "formName"
2073
+ ]
2074
+ }
2075
+ ]
2076
+ },
2077
+ "slideToggleFormControl": {
2078
+ "allOf": [
2079
+ {
2080
+ "$ref": "#/definitions/baseFormControl"
2081
+ },
2082
+ {
2083
+ "type": "object",
2084
+ "properties": {
2085
+ "kind": {
2086
+ "type": "string",
2087
+ "const": "slide-toggle"
2013
2088
  },
2014
- "name": {
2089
+ "labelPosition": {
2015
2090
  "type": "string",
2016
2091
  "enum": [
2017
- "data-grid-component"
2092
+ "before",
2093
+ "after"
2094
+ ]
2095
+ }
2096
+ }
2097
+ }
2098
+ ]
2099
+ },
2100
+ "table": {
2101
+ "allOf": [
2102
+ {
2103
+ "$ref": "#/definitions/minimumTable"
2104
+ },
2105
+ {
2106
+ "type": "object",
2107
+ "properties": {
2108
+ "tableMethod": {
2109
+ "$ref": "#/definitions/type"
2110
+ },
2111
+ "openApi": {
2112
+ "type": "object",
2113
+ "properties": {
2114
+ "operationId": {
2115
+ "type": "string",
2116
+ "description": "The operationId for the open api operation"
2117
+ },
2118
+ "adapter": {
2119
+ "$ref": "#/definitions/type"
2120
+ }
2121
+ },
2122
+ "required": [
2123
+ "operationId"
2018
2124
  ]
2019
2125
  },
2020
- "options": {
2021
- "$ref": "#/definitions/dataGridComponentSchematic"
2126
+ "modifiers": {
2127
+ "alias": "modifier",
2128
+ "type": "array",
2129
+ "items": {
2130
+ "type": "string",
2131
+ "enum": [
2132
+ "navigation-back-header",
2133
+ "without-title",
2134
+ "show-archived-slide"
2135
+ ]
2136
+ },
2137
+ "description": "The table modifiers"
2138
+ },
2139
+ "selectColumn": {
2140
+ "type": "boolean",
2141
+ "description": "Whether to add a select column to the table"
2022
2142
  }
2023
2143
  }
2144
+ }
2145
+ ]
2146
+ },
2147
+ "tableAction": {
2148
+ "type": "object",
2149
+ "properties": {
2150
+ "type": {
2151
+ "type": "string"
2152
+ },
2153
+ "refresh": {
2154
+ "type": "boolean"
2155
+ },
2156
+ "confirm": {
2157
+ "type": "boolean"
2158
+ },
2159
+ "tooltip": {
2160
+ "type": "string"
2161
+ },
2162
+ "errorMessage": {
2163
+ "type": "string"
2164
+ },
2165
+ "successMessage": {
2166
+ "type": "string"
2167
+ },
2168
+ "priority": {
2169
+ "type": "number"
2170
+ },
2171
+ "checkFunction": {
2172
+ "type": "string"
2173
+ },
2174
+ "inHeader": {
2175
+ "type": "boolean"
2176
+ },
2177
+ "role": {
2178
+ "type": "string"
2179
+ },
2180
+ "icon": {
2181
+ "type": "string"
2182
+ },
2183
+ "svgIcon": {
2184
+ "type": "string"
2185
+ },
2186
+ "permission": {
2187
+ "type": "string"
2188
+ },
2189
+ "color": {
2190
+ "type": "string",
2191
+ "description": "Value for the color input of the mat-button / mat-icon component"
2192
+ },
2193
+ "cssClass": {
2194
+ "type": "string",
2195
+ "description": "Additional CSS classes added to the button element"
2196
+ },
2197
+ "options": {
2198
+ "type": "object",
2199
+ "additionalProperties": true
2200
+ }
2201
+ },
2202
+ "required": [
2203
+ "type"
2204
+ ]
2205
+ },
2206
+ "tableActionSchematic": {
2207
+ "allOf": [
2208
+ {
2209
+ "$ref": "#/definitions/angular"
2024
2210
  },
2025
2211
  {
2026
- "type": "object",
2027
- "properties": {
2028
- "package": {
2029
- "type": "string",
2030
- "enum": [
2031
- "@rxap/schematic-angular"
2032
- ]
2033
- },
2034
- "name": {
2035
- "type": "string",
2036
- "enum": [
2037
- "dialog-component"
2038
- ]
2039
- },
2040
- "options": {
2041
- "$ref": "#/definitions/dialogComponentSchematic"
2042
- }
2043
- }
2212
+ "$ref": "#/definitions/tableAction"
2044
2213
  },
2045
2214
  {
2046
2215
  "type": "object",
2047
2216
  "properties": {
2048
- "package": {
2049
- "type": "string",
2050
- "enum": [
2051
- "@rxap/schematic-angular"
2052
- ]
2053
- },
2054
- "name": {
2217
+ "tableName": {
2218
+ "alias": "table",
2055
2219
  "type": "string",
2056
- "enum": [
2057
- "input-form-control"
2058
- ]
2059
- },
2060
- "options": {
2061
- "$ref": "#/definitions/inputFormControlSchematic"
2220
+ "description": "The name of the table action"
2062
2221
  }
2063
2222
  }
2223
+ }
2224
+ ]
2225
+ },
2226
+ "tableColumn": {
2227
+ "type": "object",
2228
+ "properties": {
2229
+ "name": {
2230
+ "type": "string"
2064
2231
  },
2065
- {
2066
- "type": "object",
2067
- "properties": {
2068
- "package": {
2069
- "type": "string",
2070
- "enum": [
2071
- "@rxap/schematic-angular"
2072
- ]
2073
- },
2074
- "name": {
2075
- "type": "string",
2076
- "enum": [
2077
- "select-form-control"
2078
- ]
2079
- },
2080
- "options": {
2081
- "$ref": "#/definitions/selectFormControlSchematic"
2082
- }
2232
+ "type": {
2233
+ "$ref": "#/definitions/type"
2234
+ },
2235
+ "kind": {
2236
+ "type": "string"
2237
+ },
2238
+ "modifiers": {
2239
+ "type": "array",
2240
+ "items": {
2241
+ "type": "string"
2083
2242
  }
2084
2243
  },
2085
- {
2086
- "type": "object",
2087
- "properties": {
2088
- "package": {
2089
- "type": "string",
2090
- "enum": [
2091
- "@rxap/schematic-angular"
2092
- ]
2093
- },
2094
- "name": {
2095
- "type": "string",
2096
- "enum": [
2097
- "table-select-form-control"
2098
- ]
2099
- },
2100
- "options": {
2101
- "$ref": "#/definitions/tableSelectFormControlSchematic"
2102
- }
2244
+ "template": {
2245
+ "type": "string"
2246
+ },
2247
+ "pipeList": {
2248
+ "type": "array",
2249
+ "items": {
2250
+ "$ref": "#/definitions/pipe"
2103
2251
  }
2104
2252
  },
2253
+ "hasFilter": {
2254
+ "type": "boolean"
2255
+ },
2256
+ "nowrap": {
2257
+ "type": "boolean"
2258
+ },
2259
+ "cssClass": {
2260
+ "type": "string"
2261
+ },
2262
+ "title": {
2263
+ "type": "string"
2264
+ },
2265
+ "propertyPath": {
2266
+ "type": "string"
2267
+ },
2268
+ "hidden": {
2269
+ "type": "boolean"
2270
+ },
2271
+ "active": {
2272
+ "type": "boolean"
2273
+ },
2274
+ "inactive": {
2275
+ "type": "boolean"
2276
+ },
2277
+ "show": {
2278
+ "type": "boolean"
2279
+ },
2280
+ "filterControl": {
2281
+ "$ref": "#/definitions/formControl"
2282
+ }
2283
+ },
2284
+ "required": [
2285
+ "name"
2286
+ ]
2287
+ },
2288
+ "tableComponentSchematic": {
2289
+ "allOf": [
2290
+ {
2291
+ "$ref": "#/definitions/angular"
2292
+ },
2105
2293
  {
2106
- "type": "object",
2107
- "properties": {
2108
- "package": {
2109
- "type": "string",
2110
- "enum": [
2111
- "@rxap/schematic-angular"
2112
- ]
2113
- },
2114
- "name": {
2115
- "type": "string",
2116
- "enum": [
2117
- "form-control"
2118
- ]
2119
- },
2120
- "options": {
2121
- "$ref": "#/definitions/formControlSchematic"
2122
- }
2123
- }
2294
+ "$ref": "#/definitions/table"
2295
+ }
2296
+ ]
2297
+ },
2298
+ "tableHeaderButtonSchematic": {
2299
+ "allOf": [
2300
+ {
2301
+ "$ref": "#/definitions/angular"
2302
+ },
2303
+ {
2304
+ "$ref": "#/definitions/headerButton"
2124
2305
  },
2125
2306
  {
2126
2307
  "type": "object",
2127
2308
  "properties": {
2128
- "package": {
2129
- "type": "string",
2130
- "enum": [
2131
- "@rxap/schematic-angular"
2132
- ]
2133
- },
2134
- "name": {
2309
+ "tableName": {
2310
+ "alias": "table",
2135
2311
  "type": "string",
2136
- "enum": [
2137
- "dialog-table-action"
2138
- ]
2139
- },
2140
- "options": {
2141
- "$ref": "#/definitions/dialogTableActionSchematic"
2312
+ "description": "The name of the table action"
2142
2313
  }
2143
2314
  }
2315
+ }
2316
+ ]
2317
+ },
2318
+ "tableSelectFormControl": {
2319
+ "allOf": [
2320
+ {
2321
+ "$ref": "#/definitions/baseFormControl"
2144
2322
  },
2145
2323
  {
2146
2324
  "type": "object",
2147
2325
  "properties": {
2148
- "package": {
2326
+ "formField": {
2327
+ "$ref": "#/definitions/formField"
2328
+ },
2329
+ "kind": {
2149
2330
  "type": "string",
2150
- "enum": [
2151
- "@rxap/schematic-angular"
2152
- ]
2331
+ "const": "table-select"
2153
2332
  },
2154
- "name": {
2333
+ "placeholder": {
2334
+ "type": "string"
2335
+ },
2336
+ "columnList": {
2337
+ "alias": "column",
2338
+ "type": "array",
2339
+ "items": {
2340
+ "description": "table column name",
2341
+ "type": "object",
2342
+ "properties": {
2343
+ "name": {
2344
+ "type": "string",
2345
+ "description": "table column name"
2346
+ },
2347
+ "title": {
2348
+ "type": "string",
2349
+ "description": "table column label"
2350
+ },
2351
+ "hasFilter": {
2352
+ "type": "boolean",
2353
+ "description": "Whether the column has a filter"
2354
+ },
2355
+ "kind": {
2356
+ "type": "string",
2357
+ "description": "The kind of data in the column"
2358
+ }
2359
+ }
2360
+ },
2361
+ "description": "List of table column names"
2362
+ },
2363
+ "title": {
2155
2364
  "type": "string",
2156
- "enum": [
2157
- "form-table-action"
2158
- ]
2365
+ "description": "The title of the table select window"
2159
2366
  },
2160
- "options": {
2161
- "$ref": "#/definitions/formTableActionSchematic"
2367
+ "toDisplay": {
2368
+ "type": "object",
2369
+ "properties": {
2370
+ "property": {
2371
+ "$ref": "#/definitions/property"
2372
+ }
2373
+ }
2374
+ },
2375
+ "toValue": {
2376
+ "type": "object",
2377
+ "properties": {
2378
+ "property": {
2379
+ "$ref": "#/definitions/property"
2380
+ }
2381
+ }
2382
+ },
2383
+ "upstream": {
2384
+ "$ref": "#/definitions/upstream"
2385
+ },
2386
+ "resolver": {
2387
+ "type": "object",
2388
+ "properties": {
2389
+ "upstream": {
2390
+ "$ref": "#/definitions/upstream"
2391
+ }
2392
+ }
2162
2393
  }
2163
2394
  }
2395
+ }
2396
+ ]
2397
+ },
2398
+ "tableSelectFormControlSchematic": {
2399
+ "allOf": [
2400
+ {
2401
+ "$ref": "#/definitions/angular"
2402
+ },
2403
+ {
2404
+ "$ref": "#/definitions/tableSelectFormControl"
2164
2405
  },
2165
2406
  {
2166
2407
  "type": "object",
2167
2408
  "properties": {
2168
- "package": {
2169
- "type": "string",
2170
- "enum": [
2171
- "@rxap/schematic-angular"
2172
- ]
2173
- },
2174
- "name": {
2409
+ "formName": {
2410
+ "alias": "form",
2175
2411
  "type": "string",
2176
- "enum": [
2177
- "navigation-table-action"
2178
- ]
2179
- },
2180
- "options": {
2181
- "$ref": "#/definitions/navigationTableActionSchematic"
2412
+ "description": "The name of the form where the form control should be added"
2182
2413
  }
2183
- }
2414
+ },
2415
+ "required": [
2416
+ "formName"
2417
+ ]
2418
+ }
2419
+ ]
2420
+ },
2421
+ "textareaFormControl": {
2422
+ "allOf": [
2423
+ {
2424
+ "$ref": "#/definitions/baseFormControl"
2184
2425
  },
2185
2426
  {
2186
2427
  "type": "object",
2187
2428
  "properties": {
2188
- "package": {
2189
- "type": "string",
2190
- "enum": [
2191
- "@rxap/schematic-angular"
2192
- ]
2429
+ "formField": {
2430
+ "$ref": "#/definitions/formField"
2193
2431
  },
2194
- "name": {
2432
+ "kind": {
2195
2433
  "type": "string",
2196
- "enum": [
2197
- "operation-table-action"
2198
- ]
2434
+ "const": "textarea"
2199
2435
  },
2200
- "options": {
2201
- "$ref": "#/definitions/operationTableActionSchematic"
2436
+ "placeholder": {
2437
+ "type": "string"
2202
2438
  }
2203
2439
  }
2440
+ }
2441
+ ]
2442
+ },
2443
+ "treeComponentSchematic": {
2444
+ "allOf": [
2445
+ {
2446
+ "$ref": "#/definitions/angular"
2204
2447
  },
2205
2448
  {
2206
2449
  "type": "object",
2207
2450
  "properties": {
2208
- "package": {
2209
- "type": "string",
2210
- "enum": [
2211
- "@rxap/schematic-angular"
2212
- ]
2213
- },
2214
- "name": {
2215
- "type": "string",
2216
- "enum": [
2217
- "open-api-table-action"
2218
- ]
2451
+ "modifiers": {
2452
+ "alias": "modifier",
2453
+ "type": "array",
2454
+ "items": {
2455
+ "type": "string",
2456
+ "enum": [
2457
+ "navigation-back-header",
2458
+ "without-title"
2459
+ ]
2460
+ },
2461
+ "description": "The tree modifiers"
2219
2462
  },
2220
- "options": {
2221
- "$ref": "#/definitions/openApiTableActionSchematic"
2463
+ "fullTree": {
2464
+ "type": "boolean",
2465
+ "description": "Whether the tree should be a full tree",
2466
+ "default": true
2222
2467
  }
2223
2468
  }
2469
+ }
2470
+ ]
2471
+ },
2472
+ "treeTable": {
2473
+ "allOf": [
2474
+ {
2475
+ "$ref": "#/definitions/minimumTable"
2224
2476
  },
2225
2477
  {
2226
2478
  "type": "object",
2227
2479
  "properties": {
2228
- "package": {
2229
- "type": "string",
2230
- "enum": [
2231
- "@rxap/schematic-angular"
2232
- ]
2480
+ "modifiers": {
2481
+ "alias": "modifier",
2482
+ "type": "array",
2483
+ "items": {
2484
+ "type": "string",
2485
+ "enum": [
2486
+ "navigation-back-header",
2487
+ "without-title"
2488
+ ]
2489
+ },
2490
+ "description": "The table modifiers"
2233
2491
  },
2234
- "name": {
2235
- "type": "string",
2236
- "enum": [
2237
- "tree-component"
2238
- ]
2492
+ "tableRootMethod": {
2493
+ "$ref": "#/definitions/type"
2239
2494
  },
2240
- "options": {
2241
- "$ref": "#/definitions/treeComponentSchematic"
2495
+ "tableChildMethod": {
2496
+ "$ref": "#/definitions/type"
2242
2497
  }
2243
2498
  }
2499
+ }
2500
+ ]
2501
+ },
2502
+ "treeTableComponentSchematic": {
2503
+ "allOf": [
2504
+ {
2505
+ "$ref": "#/definitions/angular"
2506
+ },
2507
+ {
2508
+ "$ref": "#/definitions/treeTable"
2509
+ }
2510
+ ]
2511
+ },
2512
+ "type": {
2513
+ "oneOf": [
2514
+ {
2515
+ "type": "string"
2244
2516
  },
2245
2517
  {
2246
2518
  "type": "object",
2247
2519
  "properties": {
2248
- "package": {
2249
- "type": "string",
2250
- "enum": [
2251
- "@rxap/schematic-angular"
2252
- ]
2253
- },
2254
2520
  "name": {
2255
- "type": "string",
2256
- "enum": [
2257
- "accordion-item-data-grid-component"
2258
- ]
2521
+ "type": "string"
2259
2522
  },
2260
- "options": {
2261
- "$ref": "#/definitions/accordionItemDataGridComponentSchematic"
2523
+ "isTypeOnly": {
2524
+ "type": "boolean"
2525
+ },
2526
+ "moduleSpecifier": {
2527
+ "type": "string"
2528
+ },
2529
+ "namedImport": {
2530
+ "type": "string"
2531
+ },
2532
+ "namespaceImport": {
2533
+ "type": "string"
2534
+ },
2535
+ "defaultImport": {
2536
+ "type": "string"
2262
2537
  }
2263
- }
2264
- },
2538
+ },
2539
+ "required": [
2540
+ "name"
2541
+ ]
2542
+ }
2543
+ ]
2544
+ },
2545
+ "upstream": {
2546
+ "oneOf": [
2265
2547
  {
2266
2548
  "type": "object",
2267
2549
  "properties": {
2268
- "package": {
2550
+ "kind": {
2269
2551
  "type": "string",
2270
2552
  "enum": [
2271
- "@rxap/schematic-angular"
2553
+ "open-api"
2272
2554
  ]
2273
2555
  },
2274
- "name": {
2275
- "type": "string",
2276
- "enum": [
2277
- "accordion-item-tree-table-component"
2278
- ]
2556
+ "operationId": {
2557
+ "type": "string"
2279
2558
  },
2280
- "options": {
2281
- "$ref": "#/definitions/accordionItemTreeTableComponentSchematic"
2559
+ "scope": {
2560
+ "type": "string"
2561
+ },
2562
+ "mapper": {
2563
+ "type": "object",
2564
+ "properties": {
2565
+ "pageIndex": {
2566
+ "type": "string"
2567
+ },
2568
+ "pageSize": {
2569
+ "type": "string"
2570
+ },
2571
+ "sortBy": {
2572
+ "type": "string"
2573
+ },
2574
+ "sortDirection": {
2575
+ "type": "string"
2576
+ },
2577
+ "list": {
2578
+ "type": "string"
2579
+ },
2580
+ "total": {
2581
+ "type": "string"
2582
+ },
2583
+ "filter": {
2584
+ "type": "object",
2585
+ "properties": {
2586
+ "eq": {
2587
+ "type": "string"
2588
+ },
2589
+ "join": {
2590
+ "type": "string"
2591
+ }
2592
+ }
2593
+ }
2594
+ }
2282
2595
  }
2283
- }
2596
+ },
2597
+ "required": [
2598
+ "kind",
2599
+ "operationId"
2600
+ ]
2284
2601
  }
2285
- ],
2286
- "definitions": {
2287
- "tableComponentSchematic": {
2288
- "$ref": "#/definitions/tableComponentSchematic"
2289
- },
2290
- "treeTableComponentSchematic": {
2291
- "$ref": "#/definitions/treeTableComponentSchematic"
2292
- },
2293
- "formComponentSchematic": {
2294
- "$ref": "#/definitions/formComponentSchematic"
2295
- },
2296
- "formDefinitionSchematic": {
2297
- "$ref": "#/definitions/formDefinitionSchematic"
2298
- },
2299
- "tableActionSchematic": {
2300
- "$ref": "#/definitions/tableActionSchematic"
2301
- },
2302
- "tableHeaderButtonSchematic": {
2303
- "$ref": "#/definitions/tableHeaderButtonSchematic"
2304
- },
2305
- "formTableHeaderButtonSchematic": {
2306
- "$ref": "#/definitions/formTableHeaderButtonSchematic"
2307
- },
2308
- "navigationTableHeaderButtonSchematic": {
2309
- "$ref": "#/definitions/navigationTableHeaderButtonSchematic"
2310
- },
2311
- "accordionComponentSchematic": {
2312
- "$ref": "#/definitions/accordionComponentSchematic"
2313
- },
2314
- "accordionItemComponentSchematic": {
2315
- "$ref": "#/definitions/accordionItemComponentSchematic"
2316
- },
2317
- "accordionItemTableComponentSchematic": {
2318
- "$ref": "#/definitions/accordionItemTableComponentSchematic"
2319
- },
2320
- "accordionItemSwitchComponentSchematic": {
2321
- "$ref": "#/definitions/accordionItemSwitchComponentSchematic"
2322
- },
2323
- "dataGridComponentSchematic": {
2324
- "$ref": "#/definitions/dataGridComponentSchematic"
2325
- },
2326
- "dialogComponentSchematic": {
2327
- "$ref": "#/definitions/dialogComponentSchematic"
2328
- },
2329
- "inputFormControlSchematic": {
2330
- "$ref": "#/definitions/inputFormControlSchematic"
2331
- },
2332
- "selectFormControlSchematic": {
2333
- "$ref": "#/definitions/selectFormControlSchematic"
2334
- },
2335
- "tableSelectFormControlSchematic": {
2336
- "$ref": "#/definitions/tableSelectFormControlSchematic"
2337
- },
2338
- "formControlSchematic": {
2339
- "$ref": "#/definitions/formControlSchematic"
2340
- },
2341
- "dialogTableActionSchematic": {
2342
- "$ref": "#/definitions/dialogTableActionSchematic"
2343
- },
2344
- "formTableActionSchematic": {
2345
- "$ref": "#/definitions/formTableActionSchematic"
2346
- },
2347
- "navigationTableActionSchematic": {
2348
- "$ref": "#/definitions/navigationTableActionSchematic"
2349
- },
2350
- "operationTableActionSchematic": {
2351
- "$ref": "#/definitions/operationTableActionSchematic"
2352
- },
2353
- "openApiTableActionSchematic": {
2354
- "$ref": "#/definitions/openApiTableActionSchematic"
2355
- },
2356
- "treeComponentSchematic": {
2357
- "$ref": "#/definitions/treeComponentSchematic"
2358
- },
2359
- "accordionItemDataGridComponentSchematic": {
2360
- "$ref": "#/definitions/accordionItemDataGridComponentSchematic"
2602
+ ]
2603
+ },
2604
+ "value": {
2605
+ "oneOf": [
2606
+ {
2607
+ "type": "string"
2361
2608
  },
2362
- "accordionItemTreeTableComponentSchematic": {
2363
- "$ref": "#/definitions/accordionItemTreeTableComponentSchematic"
2609
+ {
2610
+ "type": "object",
2611
+ "properties": {
2612
+ "type": {
2613
+ "$ref": "#/definitions/type"
2614
+ },
2615
+ "value": {
2616
+ "type": "string"
2617
+ }
2618
+ },
2619
+ "required": [
2620
+ "value"
2621
+ ]
2364
2622
  }
2365
- }
2623
+ ]
2366
2624
  }
2367
2625
  }
2368
2626
  }