@rxap/schematic-angular 18.1.0-dev.0 → 18.1.0-dev.2

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