@rxap/schematic-angular 16.2.0-dev.9 → 16.3.0-dev.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (418) hide show
  1. package/CHANGELOG.md +400 -0
  2. package/README.md +1 -1
  3. package/collection.json +20 -0
  4. package/package.json +19 -20
  5. package/src/lib/accordion-header.js +8 -5
  6. package/src/lib/accordion-header.js.map +1 -1
  7. package/src/lib/accordion-identifier.d.ts +8 -4
  8. package/src/lib/accordion-identifier.js +4 -3
  9. package/src/lib/accordion-identifier.js.map +1 -1
  10. package/src/lib/accordion-item.d.ts +13 -6
  11. package/src/lib/accordion-item.js +42 -15
  12. package/src/lib/accordion-item.js.map +1 -1
  13. package/src/lib/angular-options.d.ts +2 -2
  14. package/src/lib/angular-options.js +2 -1
  15. package/src/lib/angular-options.js.map +1 -1
  16. package/src/lib/backend-types.d.ts +2 -1
  17. package/src/lib/backend-types.js +1 -0
  18. package/src/lib/backend-types.js.map +1 -1
  19. package/src/lib/coerce-accordion-component.js +4 -2
  20. package/src/lib/coerce-accordion-component.js.map +1 -1
  21. package/src/lib/coerce-accordion-item-table-component.js +1 -1
  22. package/src/lib/coerce-accordion-item-table-component.js.map +1 -1
  23. package/src/lib/coerce-form-component.js +16 -3
  24. package/src/lib/coerce-form-component.js.map +1 -1
  25. package/src/lib/coerce-minimum-table-component.d.ts +4 -1
  26. package/src/lib/coerce-minimum-table-component.js +21 -5
  27. package/src/lib/coerce-minimum-table-component.js.map +1 -1
  28. package/src/lib/coerce-tree-table-component.js +1 -5
  29. package/src/lib/coerce-tree-table-component.js.map +1 -1
  30. package/src/lib/component-options.d.ts +10 -0
  31. package/src/lib/component-options.js +14 -0
  32. package/src/lib/component-options.js.map +1 -0
  33. package/src/lib/css-class.d.ts +9 -0
  34. package/src/lib/css-class.js +52 -0
  35. package/src/lib/css-class.js.map +1 -0
  36. package/src/lib/data-grid-item.d.ts +45 -7
  37. package/src/lib/data-grid-item.js +102 -6
  38. package/src/lib/data-grid-item.js.map +1 -1
  39. package/src/lib/data-grid-mode.d.ts +4 -0
  40. package/src/lib/data-grid-mode.js +9 -0
  41. package/src/lib/data-grid-mode.js.map +1 -0
  42. package/src/lib/data-grid-options.d.ts +10 -5
  43. package/src/lib/data-grid-options.js +42 -15
  44. package/src/lib/data-grid-options.js.map +1 -1
  45. package/src/lib/form/abstract-control.d.ts +31 -0
  46. package/src/lib/form/abstract-control.js +48 -0
  47. package/src/lib/form/abstract-control.js.map +1 -0
  48. package/src/lib/form/array/base-form-array.d.ts +18 -0
  49. package/src/lib/form/array/base-form-array.js +41 -0
  50. package/src/lib/form/array/base-form-array.js.map +1 -0
  51. package/src/lib/form/array/form-array-kind.d.ts +3 -0
  52. package/src/lib/form/array/form-array-kind.js +8 -0
  53. package/src/lib/form/array/form-array-kind.js.map +1 -0
  54. package/src/lib/form/array/form-array.d.ts +12 -0
  55. package/src/lib/form/array/form-array.js +18 -0
  56. package/src/lib/form/array/form-array.js.map +1 -0
  57. package/src/lib/form/coerce-control-component-imports.d.ts +3 -0
  58. package/src/lib/form/coerce-control-component-imports.js +18 -0
  59. package/src/lib/form/coerce-control-component-imports.js.map +1 -0
  60. package/src/lib/form/control/autocomplete-table-select-form-control.d.ts +9 -0
  61. package/src/lib/form/control/autocomplete-table-select-form-control.js +58 -0
  62. package/src/lib/form/control/autocomplete-table-select-form-control.js.map +1 -0
  63. package/src/lib/form/control/base-form-control.d.ts +15 -0
  64. package/src/lib/form/control/base-form-control.js +19 -0
  65. package/src/lib/form/control/base-form-control.js.map +1 -0
  66. package/src/lib/form/control/checkbox-form-control.d.ts +11 -0
  67. package/src/lib/form/control/checkbox-form-control.js +23 -0
  68. package/src/lib/form/control/checkbox-form-control.js.map +1 -0
  69. package/src/lib/form/control/form-control-kind.d.ts +10 -0
  70. package/src/lib/form/control/form-control-kind.js +15 -0
  71. package/src/lib/form/control/form-control-kind.js.map +1 -0
  72. package/src/lib/form/control/form-control.d.ts +20 -0
  73. package/src/lib/form/control/form-control.js +46 -0
  74. package/src/lib/form/control/form-control.js.map +1 -0
  75. package/src/lib/form/control/form-field-form-control.d.ts +39 -0
  76. package/src/lib/form/control/form-field-form-control.js +87 -0
  77. package/src/lib/form/control/form-field-form-control.js.map +1 -0
  78. package/src/lib/form/control/input-form-control.d.ts +15 -0
  79. package/src/lib/form/control/input-form-control.js +75 -0
  80. package/src/lib/form/control/input-form-control.js.map +1 -0
  81. package/src/lib/form/control/select-form-control.d.ts +22 -0
  82. package/src/lib/form/control/select-form-control.js +47 -0
  83. package/src/lib/form/control/select-form-control.js.map +1 -0
  84. package/src/lib/form/control/slide-toggle-form-control.d.ts +11 -0
  85. package/src/lib/form/control/slide-toggle-form-control.js +23 -0
  86. package/src/lib/form/control/slide-toggle-form-control.js.map +1 -0
  87. package/src/lib/form/control/table-select-form-control.d.ts +46 -0
  88. package/src/lib/form/control/table-select-form-control.js +82 -0
  89. package/src/lib/form/control/table-select-form-control.js.map +1 -0
  90. package/src/lib/form/control/textarea-form-control.d.ts +22 -0
  91. package/src/lib/form/control/textarea-form-control.js +52 -0
  92. package/src/lib/form/control/textarea-form-control.js.map +1 -0
  93. package/src/lib/form/control.d.ts +8 -0
  94. package/src/lib/form/control.js +38 -0
  95. package/src/lib/form/control.js.map +1 -0
  96. package/src/lib/form/generate-form-template.d.ts +2 -2
  97. package/src/lib/form/group/base-form-group.d.ts +17 -0
  98. package/src/lib/form/group/base-form-group.js +20 -0
  99. package/src/lib/form/group/base-form-group.js.map +1 -0
  100. package/src/lib/form/group/form-group-kind.d.ts +3 -0
  101. package/src/lib/form/group/form-group-kind.js +8 -0
  102. package/src/lib/form/group/form-group-kind.js.map +1 -0
  103. package/src/lib/form/group/form-group.d.ts +12 -0
  104. package/src/lib/form/group/form-group.js +18 -0
  105. package/src/lib/form/group/form-group.js.map +1 -0
  106. package/src/lib/load-handlebars-template.d.ts +3 -0
  107. package/src/lib/load-handlebars-template.js +13 -1
  108. package/src/lib/load-handlebars-template.js.map +1 -1
  109. package/src/lib/minimum-table-component-options.d.ts +1 -1
  110. package/src/lib/minimum-table-component-options.js +22 -15
  111. package/src/lib/minimum-table-component-options.js.map +1 -1
  112. package/src/lib/minimum-table-options.d.ts +22 -4
  113. package/src/lib/minimum-table-options.js +40 -6
  114. package/src/lib/minimum-table-options.js.map +1 -1
  115. package/src/lib/pipe-option.d.ts +11 -0
  116. package/src/lib/pipe-option.js +75 -0
  117. package/src/lib/pipe-option.js.map +1 -0
  118. package/src/lib/route-component.d.ts +16 -0
  119. package/src/lib/route-component.js +15 -0
  120. package/src/lib/route-component.js.map +1 -0
  121. package/src/lib/table/column/base-table-column.d.ts +61 -0
  122. package/src/lib/table/column/base-table-column.js +309 -0
  123. package/src/lib/table/column/base-table-column.js.map +1 -0
  124. package/src/lib/table/column/boolean-table-column.d.ts +8 -0
  125. package/src/lib/table/column/boolean-table-column.js +10 -0
  126. package/src/lib/table/column/boolean-table-column.js.map +1 -0
  127. package/src/lib/table/column/custom-table-column.d.ts +11 -0
  128. package/src/lib/table/column/custom-table-column.js +11 -0
  129. package/src/lib/table/column/custom-table-column.js.map +1 -0
  130. package/src/lib/table/column/date-table-column.d.ts +11 -0
  131. package/src/lib/table/column/date-table-column.js +11 -0
  132. package/src/lib/table/column/date-table-column.js.map +1 -0
  133. package/src/lib/table/column/options-table-column.d.ts +11 -0
  134. package/src/lib/table/column/options-table-column.js +23 -0
  135. package/src/lib/table/column/options-table-column.js.map +1 -0
  136. package/src/lib/table/sortable.d.ts +16 -0
  137. package/src/lib/table/sortable.js +27 -0
  138. package/src/lib/table/sortable.js.map +1 -0
  139. package/src/lib/table/table-column-kind.d.ts +14 -0
  140. package/src/lib/table/table-column-kind.js +22 -0
  141. package/src/lib/table/table-column-kind.js.map +1 -0
  142. package/src/lib/table/table-column-modifier.d.ts +12 -0
  143. package/src/lib/table/table-column-modifier.js +20 -0
  144. package/src/lib/table/table-column-modifier.js.map +1 -0
  145. package/src/lib/table/table-column-pipe.d.ts +4 -0
  146. package/src/lib/table/table-column-pipe.js +3 -0
  147. package/src/lib/table/table-column-pipe.js.map +1 -0
  148. package/src/lib/table/table-column-sticky.d.ts +5 -0
  149. package/src/lib/table/table-column-sticky.js +13 -0
  150. package/src/lib/table/table-column-sticky.js.map +1 -0
  151. package/src/lib/table/table-column.d.ts +6 -0
  152. package/src/lib/table/table-column.js +39 -0
  153. package/src/lib/table/table-column.js.map +1 -0
  154. package/src/lib/table/table-filter-column-rule.js +5 -4
  155. package/src/lib/table/table-filter-column-rule.js.map +1 -1
  156. package/src/lib/table-action.js.map +1 -1
  157. package/src/lib/table-options.d.ts +4 -3
  158. package/src/lib/table-options.js +23 -3
  159. package/src/lib/table-options.js.map +1 -1
  160. package/src/lib/table-row-action.d.ts +4 -2
  161. package/src/lib/table-row-action.js +8 -7
  162. package/src/lib/table-row-action.js.map +1 -1
  163. package/src/lib/tree-table-options.d.ts +4 -3
  164. package/src/lib/tree-table-options.js +40 -3
  165. package/src/lib/tree-table-options.js.map +1 -1
  166. package/src/lib/use-pick-from-table-interface-as-form-type.d.ts +1 -1
  167. package/src/lib/value-option.d.ts +12 -0
  168. package/src/lib/value-option.js +66 -0
  169. package/src/lib/value-option.js.map +1 -0
  170. package/src/schema.json +3352 -0
  171. package/src/schematic-input.schema.json +579 -0
  172. package/src/schematics/abstract-control.schema.json +78 -0
  173. package/src/schematics/accordion/accordion-component/files/component/__componentName__.component.html.hbs +16 -7
  174. package/src/schematics/accordion/accordion-component/index.d.ts +6 -2
  175. package/src/schematics/accordion/accordion-component/index.js +72 -42
  176. package/src/schematics/accordion/accordion-component/index.js.map +1 -1
  177. package/src/schematics/accordion/accordion-component/schema.d.ts +6 -0
  178. package/src/schematics/accordion/accordion-component/schema.json +1953 -217
  179. package/src/schematics/accordion/accordion-component/template.schema.json +23 -20
  180. package/src/schematics/accordion/accordion-item-component/index.d.ts +7 -2
  181. package/src/schematics/accordion/accordion-item-component/index.js +79 -51
  182. package/src/schematics/accordion/accordion-item-component/index.js.map +1 -1
  183. package/src/schematics/accordion/accordion-item-component/schema.json +1893 -149
  184. package/src/schematics/accordion/accordion-item-component/template.schema.json +8 -9
  185. package/src/schematics/accordion/item/accordion-item-data-grid-component/index.d.ts +1 -1
  186. package/src/schematics/accordion/item/accordion-item-data-grid-component/index.js +20 -38
  187. package/src/schematics/accordion/item/accordion-item-data-grid-component/index.js.map +1 -1
  188. package/src/schematics/accordion/item/accordion-item-data-grid-component/schema.json +1107 -247
  189. package/src/schematics/accordion/item/accordion-item-data-grid-component/template.schema.json +6 -17
  190. package/src/schematics/accordion/item/accordion-item-switch-component/index.d.ts +1 -1
  191. package/src/schematics/accordion/item/accordion-item-switch-component/index.js +14 -6
  192. package/src/schematics/accordion/item/accordion-item-switch-component/index.js.map +1 -1
  193. package/src/schematics/accordion/item/accordion-item-switch-component/schema.json +1863 -188
  194. package/src/schematics/accordion/item/accordion-item-switch-component/template.schema.json +7 -71
  195. package/src/schematics/accordion/item/accordion-item-table-component/index.d.ts +1 -1
  196. package/src/schematics/accordion/item/accordion-item-table-component/index.js +5 -52
  197. package/src/schematics/accordion/item/accordion-item-table-component/index.js.map +1 -1
  198. package/src/schematics/accordion/item/accordion-item-table-component/schema.json +1412 -494
  199. package/src/schematics/accordion/item/accordion-item-table-component/template.schema.json +6 -32
  200. package/src/schematics/accordion/item/accordion-item-tree-table-component/index.d.ts +1 -1
  201. package/src/schematics/accordion/item/accordion-item-tree-table-component/index.js +21 -80
  202. package/src/schematics/accordion/item/accordion-item-tree-table-component/index.js.map +1 -1
  203. package/src/schematics/accordion/item/accordion-item-tree-table-component/schema.json +1403 -480
  204. package/src/schematics/accordion/item/accordion-item-tree-table-component/template.schema.json +7 -33
  205. package/src/schematics/accordion/templates/accordion-header.hbs +7 -3
  206. package/src/schematics/accordion/templates/switch-accordion-item.hbs +13 -5
  207. package/src/schematics/accordion-identifier.schema.json +24 -0
  208. package/src/schematics/accordion-item.schema.json +47 -30
  209. package/src/schematics/angular.schema.json +11 -3
  210. package/src/schematics/autocomplete-table-select-form-control.schema.json +97 -0
  211. package/src/schematics/backend.schema.json +2 -1
  212. package/src/schematics/base-accordion-item.schema.json +52 -0
  213. package/src/schematics/base-form-array.schema.json +45 -0
  214. package/src/schematics/base-form-control.schema.json +27 -0
  215. package/src/schematics/base-form-group.schema.json +42 -0
  216. package/src/schematics/base-table-column.schema.json +81 -0
  217. package/src/schematics/boolean-table-column.schema.json +24 -0
  218. package/src/schematics/button.schema.json +1 -1
  219. package/src/schematics/checkbox-form-control.schema.json +31 -0
  220. package/src/schematics/component-table-column.schema.json +24 -0
  221. package/src/schematics/component.schema.json +16 -0
  222. package/src/schematics/control.schema.json +26 -0
  223. package/src/schematics/copy-to-clipboard-table-column.schema.json +24 -0
  224. package/src/schematics/css-class.schema.json +34 -0
  225. package/src/schematics/custom-table-column.schema.json +27 -0
  226. package/src/schematics/data-grid-accordion-item.schema.json +35 -0
  227. package/src/schematics/data-grid-component/files/component/__componentName__.component.html.hbs +15 -8
  228. package/src/schematics/data-grid-component/index.d.ts +2 -3
  229. package/src/schematics/data-grid-component/index.js +87 -64
  230. package/src/schematics/data-grid-component/index.js.map +1 -1
  231. package/src/schematics/data-grid-component/schema.json +1045 -215
  232. package/src/schematics/data-grid-component/template.schema.json +6 -9
  233. package/src/schematics/data-grid-component/templates/default-data-grid-item.hbs +3 -0
  234. package/src/schematics/data-grid-component/templates/link-data-grid-item.hbs +8 -0
  235. package/src/schematics/data-grid-item.schema.json +39 -12
  236. package/src/schematics/data-grid.schema.json +26 -4
  237. package/src/schematics/date-table-column.schema.json +27 -0
  238. package/src/schematics/dialog-component/schema.json +73 -155
  239. package/src/schematics/dialog-component/template.schema.json +3 -6
  240. package/src/schematics/form/control/autocomplete-table-select-form-control/index.d.ts +10 -0
  241. package/src/schematics/form/control/autocomplete-table-select-form-control/index.js +286 -0
  242. package/src/schematics/form/control/autocomplete-table-select-form-control/index.js.map +1 -0
  243. package/src/schematics/form/control/autocomplete-table-select-form-control/schema.d.ts +4 -0
  244. package/src/schematics/form/control/autocomplete-table-select-form-control/schema.json +543 -0
  245. package/src/schematics/form/control/autocomplete-table-select-form-control/template.schema.json +39 -0
  246. package/src/schematics/form/control/input-form-control/index.d.ts +1 -1
  247. package/src/schematics/form/control/input-form-control/index.js +4 -4
  248. package/src/schematics/form/control/input-form-control/index.js.map +1 -1
  249. package/src/schematics/form/control/input-form-control/schema.d.ts +2 -2
  250. package/src/schematics/form/control/input-form-control/schema.json +273 -250
  251. package/src/schematics/form/control/input-form-control/template.schema.json +19 -9
  252. package/src/schematics/form/control/select-form-control/index.d.ts +2 -2
  253. package/src/schematics/form/control/select-form-control/index.js +23 -16
  254. package/src/schematics/form/control/select-form-control/index.js.map +1 -1
  255. package/src/schematics/form/control/select-form-control/schema.d.ts +2 -3
  256. package/src/schematics/form/control/select-form-control/schema.json +389 -259
  257. package/src/schematics/form/control/select-form-control/template.schema.json +19 -9
  258. package/src/schematics/form/control/table-select-form-control/index.d.ts +3 -3
  259. package/src/schematics/form/control/table-select-form-control/index.js +210 -155
  260. package/src/schematics/form/control/table-select-form-control/index.js.map +1 -1
  261. package/src/schematics/form/control/table-select-form-control/schema.d.ts +2 -3
  262. package/src/schematics/form/control/table-select-form-control/schema.json +405 -285
  263. package/src/schematics/form/control/table-select-form-control/template.schema.json +16 -55
  264. package/src/schematics/form/form-array/index.d.ts +9 -0
  265. package/src/schematics/form/form-array/index.js +54 -0
  266. package/src/schematics/form/form-array/index.js.map +1 -0
  267. package/src/schematics/form/form-array/schema.d.ts +4 -0
  268. package/src/schematics/form/form-array/schema.json +1060 -0
  269. package/src/schematics/form/form-array/template.schema.json +33 -0
  270. package/src/schematics/form/form-component/files/component/__componentName__.component.html.hbs +4 -1
  271. package/src/schematics/form/form-component/index.d.ts +4 -4
  272. package/src/schematics/form/form-component/index.js +19 -22
  273. package/src/schematics/form/form-component/index.js.map +1 -1
  274. package/src/schematics/form/form-component/schema.d.ts +4 -2
  275. package/src/schematics/form/form-component/schema.json +944 -199
  276. package/src/schematics/form/form-component/template.schema.json +6 -9
  277. package/src/schematics/form/form-control/index.d.ts +3 -5
  278. package/src/schematics/form/form-control/index.js +10 -20
  279. package/src/schematics/form/form-control/index.js.map +1 -1
  280. package/src/schematics/form/form-control/schema.d.ts +2 -4
  281. package/src/schematics/form/form-control/schema.json +757 -176
  282. package/src/schematics/form/form-control/template.schema.json +7 -11
  283. package/src/schematics/form/form-definition/index.d.ts +2 -2
  284. package/src/schematics/form/form-definition/index.js +28 -15
  285. package/src/schematics/form/form-definition/index.js.map +1 -1
  286. package/src/schematics/form/form-definition/schema.d.ts +2 -2
  287. package/src/schematics/form/form-definition/schema.json +939 -200
  288. package/src/schematics/form/form-definition/template.schema.json +6 -9
  289. package/src/schematics/form/form-group/index.d.ts +9 -0
  290. package/src/schematics/form/form-group/index.js +54 -0
  291. package/src/schematics/form/form-group/index.js.map +1 -0
  292. package/src/schematics/form/form-group/schema.d.ts +4 -0
  293. package/src/schematics/form/form-group/schema.json +1060 -0
  294. package/src/schematics/form/form-group/template.schema.json +33 -0
  295. package/src/schematics/form/templates/autocomplete-table-select-form-control.hbs +34 -0
  296. package/src/schematics/form/templates/checkbox-form-control.hbs +4 -2
  297. package/src/schematics/form/templates/default-form-array.hbs +29 -0
  298. package/src/schematics/form/templates/default-form-group.hbs +15 -0
  299. package/src/schematics/form/templates/input-form-control.hbs +14 -7
  300. package/src/schematics/form/templates/mat-form-field.hbs +6 -6
  301. package/src/schematics/form/templates/select-form-control.hbs +18 -0
  302. package/src/schematics/form/templates/slide-toggle-form-control.hbs +3 -1
  303. package/src/schematics/form/templates/table-select-form-control.hbs +23 -16
  304. package/src/schematics/form/templates/textarea-form-control.hbs +25 -0
  305. package/src/schematics/form-array.schema.json +42 -0
  306. package/src/schematics/form-component.schema.json +9 -3
  307. package/src/schematics/form-control.schema.json +70 -54
  308. package/src/schematics/form-definition.schema.json +3 -3
  309. package/src/schematics/form-field.schema.json +6 -0
  310. package/src/schematics/form-group.schema.json +42 -0
  311. package/src/schematics/general.schema.json +1 -4
  312. package/src/schematics/icon-table-column.schema.json +24 -0
  313. package/src/schematics/input-form-control.schema.json +19 -6
  314. package/src/schematics/link-table-column.schema.json +24 -0
  315. package/src/schematics/minimum-table.schema.json +59 -5
  316. package/src/schematics/option.schema.json +27 -0
  317. package/src/schematics/options-table-column.schema.json +33 -0
  318. package/src/schematics/pipe.schema.json +38 -0
  319. package/src/schematics/property.schema.json +14 -4
  320. package/src/schematics/route-component/files/component/__componentName__.component.html.hbs +1 -0
  321. package/src/schematics/route-component/index.d.ts +8 -0
  322. package/src/schematics/route-component/index.js +109 -0
  323. package/src/schematics/route-component/index.js.map +1 -0
  324. package/src/schematics/route-component/schema.d.ts +5 -0
  325. package/src/schematics/route-component/schema.json +155 -0
  326. package/src/schematics/route-component/template.schema.json +20 -0
  327. package/src/schematics/route-component.schema.json +35 -0
  328. package/src/schematics/select-form-control.schema.json +32 -29
  329. package/src/schematics/slide-toggle-form-control.schema.json +31 -0
  330. package/src/schematics/spinner-table-column.schema.json +24 -0
  331. package/src/schematics/switch-accordion-item.schema.json +83 -0
  332. package/src/schematics/table/action/dialog-table-action/index.js +1 -0
  333. package/src/schematics/table/action/dialog-table-action/index.js.map +1 -1
  334. package/src/schematics/table/action/dialog-table-action/schema.json +173 -218
  335. package/src/schematics/table/action/dialog-table-action/template.schema.json +3 -6
  336. package/src/schematics/table/action/form-table-action/index.d.ts +2 -2
  337. package/src/schematics/table/action/form-table-action/index.js +6 -5
  338. package/src/schematics/table/action/form-table-action/index.js.map +1 -1
  339. package/src/schematics/table/action/form-table-action/schema.d.ts +2 -2
  340. package/src/schematics/table/action/form-table-action/schema.json +1098 -290
  341. package/src/schematics/table/action/form-table-action/template.schema.json +6 -6
  342. package/src/schematics/table/action/navigation-table-action/schema.json +172 -217
  343. package/src/schematics/table/action/navigation-table-action/template.schema.json +3 -6
  344. package/src/schematics/table/action/open-api-table-action/schema.json +173 -218
  345. package/src/schematics/table/action/open-api-table-action/template.schema.json +3 -6
  346. package/src/schematics/table/action/operation-table-action/index.js +2 -1
  347. package/src/schematics/table/action/operation-table-action/index.js.map +1 -1
  348. package/src/schematics/table/action/operation-table-action/schema.json +163 -208
  349. package/src/schematics/table/action/operation-table-action/template.schema.json +3 -6
  350. package/src/schematics/table/header-button/form-table-header-button/index.d.ts +2 -2
  351. package/src/schematics/table/header-button/form-table-header-button/index.js +2 -2
  352. package/src/schematics/table/header-button/form-table-header-button/index.js.map +1 -1
  353. package/src/schematics/table/header-button/form-table-header-button/schema.d.ts +2 -2
  354. package/src/schematics/table/header-button/form-table-header-button/schema.json +1045 -213
  355. package/src/schematics/table/header-button/form-table-header-button/template.schema.json +6 -24
  356. package/src/schematics/table/header-button/navigation-table-header-button/schema.json +131 -207
  357. package/src/schematics/table/header-button/navigation-table-header-button/template.schema.json +3 -6
  358. package/src/schematics/table/table-action/schema.json +102 -150
  359. package/src/schematics/table/table-action/template.schema.json +6 -6
  360. package/src/schematics/table/table-component/files/component/__componentName__.component.html.hbs +87 -33
  361. package/src/schematics/table/table-component/index.d.ts +0 -5
  362. package/src/schematics/table/table-component/index.js +21 -33
  363. package/src/schematics/table/table-component/index.js.map +1 -1
  364. package/src/schematics/table/table-component/schema.json +1314 -421
  365. package/src/schematics/table/table-component/template.schema.json +6 -12
  366. package/src/schematics/table/table-header-button/schema.json +69 -148
  367. package/src/schematics/table/table-header-button/template.schema.json +6 -6
  368. package/src/schematics/table/templates/boolean-table-column.hbs +18 -5
  369. package/src/schematics/table/templates/component-table-column.hbs +19 -6
  370. package/src/schematics/table/templates/copy-to-clipboard-table-column.hbs +18 -5
  371. package/src/schematics/table/templates/custom-table-column.hbs +23 -0
  372. package/src/schematics/table/templates/date-table-column.hbs +18 -5
  373. package/src/schematics/table/templates/default-table-column.hbs +20 -5
  374. package/src/schematics/table/templates/icon-table-column.hbs +18 -5
  375. package/src/schematics/table/templates/link-table-column.hbs +18 -5
  376. package/src/schematics/table/templates/mat-column-def.hbs +3 -0
  377. package/src/schematics/table/templates/options-table-column.hbs +26 -0
  378. package/src/schematics/table/templates/spinner-table-column.hbs +27 -0
  379. package/src/schematics/table/templates/tree-table-column.hbs +21 -0
  380. package/src/schematics/table/tree-table-component/files/component/__componentName__.component.html.hbs +96 -50
  381. package/src/schematics/table/tree-table-component/index.d.ts +3 -0
  382. package/src/schematics/table/tree-table-component/index.js +30 -9
  383. package/src/schematics/table/tree-table-component/index.js.map +1 -1
  384. package/src/schematics/table/tree-table-component/schema.json +1306 -408
  385. package/src/schematics/table/tree-table-component/template.schema.json +6 -12
  386. package/src/schematics/table-accordion-item.schema.json +42 -0
  387. package/src/schematics/table-action.schema.json +7 -3
  388. package/src/schematics/table-column.schema.json +67 -47
  389. package/src/schematics/table-select-form-control.schema.json +103 -0
  390. package/src/schematics/table.schema.json +6 -2
  391. package/src/schematics/templates/css-class.hbs +1 -0
  392. package/src/schematics/templates/pipe.hbs +4 -0
  393. package/src/schematics/textarea-form-control.schema.json +44 -0
  394. package/src/schematics/tree-component/index.js +2 -1
  395. package/src/schematics/tree-component/index.js.map +1 -1
  396. package/src/schematics/tree-component/schema.json +71 -62
  397. package/src/schematics/tree-component/template.schema.json +7 -2
  398. package/src/schematics/tree-table-accordion-item.schema.json +42 -0
  399. package/src/schematics/tree-table-column.schema.json +24 -0
  400. package/src/schematics/tree-table.schema.json +5 -4
  401. package/src/schematics/upstream.schema.json +62 -23
  402. package/src/schematics/value.schema.json +26 -0
  403. package/src/template.schema.json +281 -0
  404. package/src/lib/form-component-control.d.ts +0 -8
  405. package/src/lib/form-component-control.js +0 -15
  406. package/src/lib/form-component-control.js.map +0 -1
  407. package/src/lib/form-control.d.ts +0 -125
  408. package/src/lib/form-control.js +0 -303
  409. package/src/lib/form-control.js.map +0 -1
  410. package/src/lib/form-definition-control.d.ts +0 -5
  411. package/src/lib/form-definition-control.js +0 -30
  412. package/src/lib/form-definition-control.js.map +0 -1
  413. package/src/lib/merge-with-column-list.d.ts +0 -3
  414. package/src/lib/merge-with-column-list.js +0 -18
  415. package/src/lib/merge-with-column-list.js.map +0 -1
  416. package/src/lib/table-column.d.ts +0 -62
  417. package/src/lib/table-column.js +0 -313
  418. package/src/lib/table-column.js.map +0 -1
@@ -3,99 +3,7 @@
3
3
  "$id": "accordion-component-schematic",
4
4
  "allOf": [
5
5
  {
6
- "allOf": [
7
- {
8
- "type": "object",
9
- "properties": {
10
- "project": {
11
- "type": "string",
12
- "description": "Project name where the files should be generated"
13
- },
14
- "feature": {
15
- "type": "string",
16
- "description": "Feature name where the files should be generated"
17
- },
18
- "overwrite": {
19
- "anyOf": [
20
- {
21
- "type": "boolean"
22
- },
23
- {
24
- "type": "array",
25
- "items": {
26
- "type": "string"
27
- }
28
- }
29
- ],
30
- "description": "Overwrite existing files",
31
- "default": false
32
- },
33
- "overwriteHtml": {
34
- "type": "boolean",
35
- "default": false
36
- },
37
- "replace": {
38
- "type": "boolean",
39
- "default": false
40
- }
41
- },
42
- "required": [
43
- "project"
44
- ]
45
- },
46
- {
47
- "type": "object",
48
- "properties": {
49
- "componentName": {
50
- "type": "string"
51
- },
52
- "name": {
53
- "type": "string"
54
- },
55
- "context": {
56
- "type": "string",
57
- "description": "The context use to generate proper names for class, files, etc"
58
- },
59
- "nestModule": {
60
- "type": "string",
61
- "description": "The module name for the table nest operations"
62
- },
63
- "controllerName": {
64
- "type": "string"
65
- },
66
- "backend": {
67
- "type": "string",
68
- "description": "The backend that should be used to handel data",
69
- "enum": [
70
- "none",
71
- "nestjs",
72
- "open-api",
73
- "local"
74
- ],
75
- "default": "none"
76
- },
77
- "directory": {
78
- "type": "string",
79
- "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"
80
- },
81
- "shared": {
82
- "type": "boolean",
83
- "description": "Whether the generated code is used across the project",
84
- "default": false
85
- },
86
- "scope": {
87
- "type": "string"
88
- },
89
- "prefix": {
90
- "type": "string"
91
- },
92
- "openApi": {
93
- "type": "object",
94
- "additionalProperties": true
95
- }
96
- }
97
- }
98
- ]
6
+ "$ref": "#/definitions/angular"
99
7
  },
100
8
  {
101
9
  "type": "object",
@@ -133,22 +41,7 @@
133
41
  ]
134
42
  },
135
43
  "identifier": {
136
- "type": "object",
137
- "properties": {
138
- "property": {
139
- "$ref": "#/definitions/property"
140
- },
141
- "source": {
142
- "type": "string",
143
- "enum": [
144
- "route"
145
- ],
146
- "default": "route"
147
- }
148
- },
149
- "required": [
150
- "property"
151
- ]
44
+ "$ref": "#/definitions/accordionIdentifier"
152
45
  },
153
46
  "header": {
154
47
  "oneOf": [
@@ -183,132 +76,500 @@
183
76
  "$ref": "#/definitions/accordionItem"
184
77
  },
185
78
  "description": "The list of accordion expansion panels"
79
+ },
80
+ "upstream": {
81
+ "$ref": "#/definitions/upstream"
82
+ },
83
+ "propertyList": {
84
+ "alias": "property",
85
+ "type": "array",
86
+ "items": {
87
+ "$ref": "#/definitions/property"
88
+ }
186
89
  }
187
90
  }
188
91
  }
189
92
  ],
190
93
  "definitions": {
191
- "accordionItem": {
94
+ "abstractControl": {
95
+ "allOf": [
96
+ {
97
+ "$ref": "#/definitions/property"
98
+ },
99
+ {
100
+ "type": "object",
101
+ "properties": {
102
+ "name": {
103
+ "type": "string",
104
+ "description": "The name of the control"
105
+ },
106
+ "isArray": {
107
+ "type": "boolean",
108
+ "description": "Whether the control value is an array",
109
+ "default": false
110
+ },
111
+ "state": {
112
+ "type": "string",
113
+ "description": "The initial state of the control"
114
+ },
115
+ "isRequired": {
116
+ "type": "boolean",
117
+ "description": "Whether the control value is required",
118
+ "default": false
119
+ },
120
+ "isReadonly": {
121
+ "type": "boolean",
122
+ "description": "Whether the control value is readonly",
123
+ "default": false
124
+ },
125
+ "isDisabled": {
126
+ "type": "boolean",
127
+ "description": "Whether the control value is disabled",
128
+ "default": false
129
+ },
130
+ "validatorList": {
131
+ "type": "array",
132
+ "items": {
133
+ "type": "string"
134
+ }
135
+ },
136
+ "kind": {
137
+ "type": "string",
138
+ "description": "The kind of the control",
139
+ "default": "default"
140
+ },
141
+ "importList": {
142
+ "type": "array",
143
+ "items": {
144
+ "$ref": "#/definitions/type"
145
+ }
146
+ },
147
+ "template": {
148
+ "type": "string",
149
+ "description": "The template of the control"
150
+ },
151
+ "role": {
152
+ "type": "string",
153
+ "description": "The role of the control",
154
+ "enum": [
155
+ "control",
156
+ "group",
157
+ "array"
158
+ ],
159
+ "default": "control"
160
+ }
161
+ },
162
+ "additionalProperties": true
163
+ }
164
+ ]
165
+ },
166
+ "accordionIdentifier": {
192
167
  "type": "object",
193
168
  "properties": {
194
- "kind": {
169
+ "property": {
170
+ "$ref": "#/definitions/property"
171
+ },
172
+ "source": {
195
173
  "type": "string",
196
174
  "enum": [
197
- "default",
198
- "table",
199
- "data-grid",
200
- "data-grid-collection",
201
- "tree-table",
202
- "switch"
203
- ],
204
- "description": "The type of the accordion item",
205
- "default": "panel"
175
+ "route"
176
+ ]
177
+ }
178
+ },
179
+ "required": [
180
+ "property"
181
+ ]
182
+ },
183
+ "accordionItem": {
184
+ "oneOf": [
185
+ {
186
+ "allOf": [
187
+ {
188
+ "$ref": "#/definitions/baseAccordionItem"
189
+ },
190
+ {
191
+ "type": "object",
192
+ "properties": {
193
+ "kind": {
194
+ "type": "string",
195
+ "const": "default",
196
+ "default": "default"
197
+ }
198
+ }
199
+ }
200
+ ]
206
201
  },
207
- "modifiers": {
208
- "alias": "modifier",
209
- "type": "array",
210
- "items": {
211
- "type": "string"
212
- },
213
- "description": "The modifiers to apply to the accordion item type"
202
+ {
203
+ "$ref": "#/definitions/switchAccordionItem"
214
204
  },
215
- "title": {
216
- "type": "string"
205
+ {
206
+ "$ref": "#/definitions/tableAccordionItem"
217
207
  },
218
- "description": {
219
- "type": "string"
208
+ {
209
+ "$ref": "#/definitions/dataGridAccordionItem"
210
+ },
211
+ {
212
+ "$ref": "#/definitions/treeTableAccordionItem"
220
213
  }
221
- },
222
- "additionalProperties": true
214
+ ]
223
215
  },
224
- "type": {
225
- "oneOf": [
216
+ "angular": {
217
+ "allOf": [
226
218
  {
227
- "type": "string"
219
+ "$ref": "#/definitions/general"
228
220
  },
229
221
  {
230
222
  "type": "object",
231
223
  "properties": {
224
+ "componentName": {
225
+ "type": "string"
226
+ },
232
227
  "name": {
233
228
  "type": "string"
234
229
  },
235
- "isTypeOnly": {
236
- "type": "boolean"
230
+ "context": {
231
+ "type": "string",
232
+ "description": "The context use to generate proper names for class, files, etc"
237
233
  },
238
- "moduleSpecifier": {
239
- "type": "string"
234
+ "nestModule": {
235
+ "type": "string",
236
+ "description": "The module name for the table nest operations"
240
237
  },
241
- "namedImport": {
238
+ "controllerName": {
242
239
  "type": "string"
243
240
  },
244
- "namespaceImport": {
241
+ "backend": {
242
+ "$ref": "#/definitions/backend"
243
+ },
244
+ "directory": {
245
+ "type": "string",
246
+ "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"
247
+ },
248
+ "shared": {
249
+ "type": "boolean",
250
+ "description": "Whether the generated code is used across the project",
251
+ "default": false
252
+ },
253
+ "scope": {
245
254
  "type": "string"
246
255
  },
247
- "defaultImport": {
256
+ "prefix": {
248
257
  "type": "string"
258
+ },
259
+ "openApi": {
260
+ "type": "object",
261
+ "additionalProperties": true
249
262
  }
250
- },
251
- "required": [
252
- "name"
253
- ]
263
+ }
254
264
  }
255
265
  ]
256
266
  },
257
- "property": {
258
- "oneOf": [
267
+ "autocompleteTableSelectFormControl": {
268
+ "allOf": [
259
269
  {
260
- "type": "string"
270
+ "$ref": "#/definitions/baseFormControl"
261
271
  },
262
272
  {
263
273
  "type": "object",
264
274
  "properties": {
265
- "name": {
275
+ "formField": {
276
+ "$ref": "#/definitions/formField"
277
+ },
278
+ "kind": {
279
+ "type": "string",
280
+ "const": "autocomplete-table-select"
281
+ },
282
+ "placeholder": {
266
283
  "type": "string"
267
284
  },
268
- "type": {
269
- "$ref": "#/definitions/type"
285
+ "columnList": {
286
+ "alias": "column",
287
+ "type": "array",
288
+ "items": {
289
+ "description": "table column name",
290
+ "type": "object",
291
+ "properties": {
292
+ "name": {
293
+ "type": "string",
294
+ "description": "table column name"
295
+ },
296
+ "title": {
297
+ "type": "string",
298
+ "description": "table column label"
299
+ },
300
+ "hasFilter": {
301
+ "type": "boolean",
302
+ "description": "Whether the column has a filter"
303
+ },
304
+ "kind": {
305
+ "type": "string",
306
+ "description": "The kind of data in the column"
307
+ }
308
+ }
309
+ },
310
+ "description": "List of table column names"
311
+ },
312
+ "title": {
313
+ "type": "string",
314
+ "description": "The title of the table select window"
315
+ },
316
+ "toDisplay": {
317
+ "type": "object",
318
+ "properties": {
319
+ "property": {
320
+ "$ref": "#/definitions/property"
321
+ }
322
+ }
323
+ },
324
+ "toValue": {
325
+ "type": "object",
326
+ "properties": {
327
+ "property": {
328
+ "$ref": "#/definitions/property"
329
+ }
330
+ }
331
+ },
332
+ "upstream": {
333
+ "$ref": "#/definitions/upstream"
334
+ },
335
+ "resolver": {
336
+ "type": "object",
337
+ "properties": {
338
+ "upstream": {
339
+ "$ref": "#/definitions/upstream"
340
+ }
341
+ }
270
342
  }
271
343
  },
272
344
  "required": [
273
- "name"
345
+ "kind"
274
346
  ]
275
347
  }
348
+ ]
349
+ },
350
+ "backend": {
351
+ "type": "string",
352
+ "description": "The backend that should be used to handel data",
353
+ "enum": [
354
+ "none",
355
+ "nestjs",
356
+ "open-api",
357
+ "local",
358
+ "data-source"
276
359
  ],
277
- "definitions": {
278
- "type": {
279
- "oneOf": [
280
- {
281
- "type": "string"
282
- },
283
- {
284
- "type": "object",
285
- "properties": {
286
- "name": {
287
- "type": "string"
288
- },
289
- "isTypeOnly": {
290
- "type": "boolean"
291
- },
292
- "moduleSpecifier": {
293
- "type": "string"
294
- },
295
- "namedImport": {
296
- "type": "string"
297
- },
298
- "namespaceImport": {
299
- "type": "string"
300
- },
301
- "defaultImport": {
302
- "type": "string"
303
- }
304
- },
305
- "required": [
306
- "name"
307
- ]
360
+ "default": "none"
361
+ },
362
+ "baseAccordionItem": {
363
+ "type": "object",
364
+ "properties": {
365
+ "name": {
366
+ "type": "string"
367
+ },
368
+ "kind": {
369
+ "type": "string"
370
+ },
371
+ "modifiers": {
372
+ "alias": "modifier",
373
+ "type": "array",
374
+ "items": {
375
+ "type": "string"
376
+ },
377
+ "description": "The modifiers to apply to the accordion item type"
378
+ },
379
+ "identifier": {
380
+ "$ref": "#/definitions/accordionIdentifier"
381
+ },
382
+ "title": {
383
+ "type": "string"
384
+ },
385
+ "description": {
386
+ "type": "string"
387
+ },
388
+ "upstream": {
389
+ "$ref": "#/definitions/upstream"
390
+ },
391
+ "propertyList": {
392
+ "alias": "property",
393
+ "type": "array",
394
+ "items": {
395
+ "$ref": "#/definitions/property"
396
+ }
397
+ }
398
+ },
399
+ "required": [
400
+ "name"
401
+ ]
402
+ },
403
+ "baseFormArray": {
404
+ "allOf": [
405
+ {
406
+ "$ref": "#/definitions/abstractControl"
407
+ },
408
+ {
409
+ "type": "object",
410
+ "properties": {
411
+ "controlList": {
412
+ "type": "array",
413
+ "description": "The list of controls in the group",
414
+ "items": {
415
+ "$ref": "#/definitions/control"
416
+ }
417
+ },
418
+ "legend": {
419
+ "type": "string"
420
+ },
421
+ "groupLegend": {
422
+ "type": "string"
423
+ },
424
+ "kind": {
425
+ "type": "string",
426
+ "description": "The kind of the array",
427
+ "const": "default",
428
+ "default": "default"
429
+ },
430
+ "role": {
431
+ "type": "string",
432
+ "const": "array"
433
+ }
434
+ }
435
+ }
436
+ ]
437
+ },
438
+ "baseFormControl": {
439
+ "allOf": [
440
+ {
441
+ "$ref": "#/definitions/abstractControl"
442
+ },
443
+ {
444
+ "type": "object",
445
+ "properties": {
446
+ "label": {
447
+ "type": "string",
448
+ "description": "The label of the control"
449
+ },
450
+ "role": {
451
+ "type": "string",
452
+ "const": "control"
453
+ }
454
+ }
455
+ }
456
+ ]
457
+ },
458
+ "baseFormGroup": {
459
+ "allOf": [
460
+ {
461
+ "$ref": "#/definitions/abstractControl"
462
+ },
463
+ {
464
+ "type": "object",
465
+ "properties": {
466
+ "controlList": {
467
+ "type": "array",
468
+ "description": "The list of controls in the group",
469
+ "items": {
470
+ "$ref": "#/definitions/control"
471
+ }
472
+ },
473
+ "legend": {
474
+ "type": "string"
475
+ },
476
+ "kind": {
477
+ "type": "string",
478
+ "description": "The kind of the group",
479
+ "const": "default",
480
+ "default": "default"
481
+ },
482
+ "role": {
483
+ "type": "string",
484
+ "const": "group"
485
+ }
486
+ }
487
+ }
488
+ ]
489
+ },
490
+ "baseTableColumn": {
491
+ "type": "object",
492
+ "properties": {
493
+ "name": {
494
+ "type": "string"
495
+ },
496
+ "type": {
497
+ "$ref": "#/definitions/type"
498
+ },
499
+ "kind": {
500
+ "type": "string"
501
+ },
502
+ "modifiers": {
503
+ "type": "array",
504
+ "items": {
505
+ "type": "string"
506
+ }
507
+ },
508
+ "template": {
509
+ "type": "string"
510
+ },
511
+ "pipeList": {
512
+ "type": "array",
513
+ "items": {
514
+ "$ref": "#/definitions/pipe"
515
+ }
516
+ },
517
+ "hasFilter": {
518
+ "type": "boolean"
519
+ },
520
+ "sortable": {
521
+ "type": "boolean"
522
+ },
523
+ "nowrap": {
524
+ "type": "boolean"
525
+ },
526
+ "cssClass": {
527
+ "$ref": "#/definitions/cssClass"
528
+ },
529
+ "title": {
530
+ "type": "string"
531
+ },
532
+ "source": {
533
+ "type": "string"
534
+ },
535
+ "hidden": {
536
+ "type": "boolean"
537
+ },
538
+ "active": {
539
+ "type": "boolean"
540
+ },
541
+ "inactive": {
542
+ "type": "boolean"
543
+ },
544
+ "show": {
545
+ "type": "boolean"
546
+ },
547
+ "filterControl": {
548
+ "$ref": "#/definitions/formControl"
549
+ }
550
+ },
551
+ "required": [
552
+ "name"
553
+ ]
554
+ },
555
+ "booleanTableColumn": {
556
+ "allOf": [
557
+ {
558
+ "$ref": "#/definitions/baseTableColumn"
559
+ },
560
+ {
561
+ "type": "object",
562
+ "properties": {
563
+ "kind": {
564
+ "type": "string",
565
+ "const": "boolean"
308
566
  }
567
+ },
568
+ "required": [
569
+ "kind"
309
570
  ]
310
571
  }
311
- }
572
+ ]
312
573
  },
313
574
  "button": {
314
575
  "type": "object",
@@ -331,42 +592,1517 @@
331
592
  "$ref": "#/definitions/type"
332
593
  }
333
594
  }
334
- },
335
- "definitions": {
336
- "type": {
337
- "oneOf": [
338
- {
339
- "type": "string"
595
+ }
596
+ },
597
+ "checkboxFormControl": {
598
+ "allOf": [
599
+ {
600
+ "$ref": "#/definitions/baseFormControl"
601
+ },
602
+ {
603
+ "type": "object",
604
+ "properties": {
605
+ "kind": {
606
+ "type": "string",
607
+ "const": "checkbox"
340
608
  },
341
- {
342
- "type": "object",
343
- "properties": {
344
- "name": {
345
- "type": "string"
346
- },
347
- "isTypeOnly": {
348
- "type": "boolean"
349
- },
350
- "moduleSpecifier": {
351
- "type": "string"
352
- },
353
- "namedImport": {
354
- "type": "string"
355
- },
356
- "namespaceImport": {
357
- "type": "string"
358
- },
359
- "defaultImport": {
360
- "type": "string"
361
- }
362
- },
363
- "required": [
364
- "name"
609
+ "labelPosition": {
610
+ "type": "string",
611
+ "enum": [
612
+ "before",
613
+ "after"
365
614
  ]
366
615
  }
616
+ },
617
+ "required": [
618
+ "kind"
367
619
  ]
368
620
  }
369
- }
621
+ ]
622
+ },
623
+ "componentTableColumn": {
624
+ "allOf": [
625
+ {
626
+ "$ref": "#/definitions/baseTableColumn"
627
+ },
628
+ {
629
+ "type": "object",
630
+ "properties": {
631
+ "kind": {
632
+ "type": "string",
633
+ "const": "component"
634
+ }
635
+ },
636
+ "required": [
637
+ "kind"
638
+ ]
639
+ }
640
+ ]
641
+ },
642
+ "control": {
643
+ "oneOf": [
644
+ {
645
+ "$ref": "#/definitions/formGroup"
646
+ },
647
+ {
648
+ "$ref": "#/definitions/formArray"
649
+ },
650
+ {
651
+ "$ref": "#/definitions/formControl"
652
+ }
653
+ ]
654
+ },
655
+ "copyToClipboardTableColumn": {
656
+ "allOf": [
657
+ {
658
+ "$ref": "#/definitions/baseTableColumn"
659
+ },
660
+ {
661
+ "type": "object",
662
+ "properties": {
663
+ "kind": {
664
+ "type": "string",
665
+ "const": "copy-to-clipboard"
666
+ }
667
+ },
668
+ "required": [
669
+ "kind"
670
+ ]
671
+ }
672
+ ]
673
+ },
674
+ "cssClass": {
675
+ "oneOf": [
676
+ {
677
+ "type": "string"
678
+ },
679
+ {
680
+ "type": "array",
681
+ "items": {
682
+ "type": "string"
683
+ }
684
+ },
685
+ {
686
+ "type": "object",
687
+ "properties": {
688
+ "name": {
689
+ "type": "string"
690
+ }
691
+ }
692
+ },
693
+ {
694
+ "type": "array",
695
+ "items": {
696
+ "type": "object",
697
+ "properties": {
698
+ "name": {
699
+ "type": "string"
700
+ }
701
+ }
702
+ }
703
+ }
704
+ ]
705
+ },
706
+ "customTableColumn": {
707
+ "allOf": [
708
+ {
709
+ "$ref": "#/definitions/baseTableColumn"
710
+ },
711
+ {
712
+ "type": "object",
713
+ "properties": {
714
+ "kind": {
715
+ "type": "string",
716
+ "const": "custom"
717
+ },
718
+ "html": {
719
+ "type": "string"
720
+ }
721
+ },
722
+ "required": [
723
+ "kind",
724
+ "html"
725
+ ]
726
+ }
727
+ ]
728
+ },
729
+ "dataGrid": {
730
+ "type": "object",
731
+ "properties": {
732
+ "mode": {
733
+ "type": "string",
734
+ "description": "The mode of the form",
735
+ "enum": [
736
+ "form",
737
+ "plain"
738
+ ]
739
+ },
740
+ "collection": {
741
+ "type": "boolean",
742
+ "description": "Whether the data grid is used as collection."
743
+ },
744
+ "title": {
745
+ "type": "string",
746
+ "description": "The title of the data grid card component"
747
+ },
748
+ "subtitle": {
749
+ "type": "string",
750
+ "description": "The subtitle of the data grid card component"
751
+ },
752
+ "itemList": {
753
+ "alias": "item",
754
+ "type": "array",
755
+ "items": {
756
+ "$ref": "#/definitions/dataGridItem"
757
+ }
758
+ },
759
+ "inCard": {
760
+ "type": "boolean",
761
+ "description": "Whether the data grid is used in a card.",
762
+ "default": true
763
+ },
764
+ "upstream": {
765
+ "$ref": "#/definitions/upstream"
766
+ },
767
+ "propertyList": {
768
+ "alias": "property",
769
+ "type": "array",
770
+ "items": {
771
+ "$ref": "#/definitions/property"
772
+ }
773
+ },
774
+ "identifier": {
775
+ "$ref": "#/definitions/accordionIdentifier"
776
+ }
777
+ }
778
+ },
779
+ "dataGridAccordionItem": {
780
+ "allOf": [
781
+ {
782
+ "$ref": "#/definitions/baseAccordionItem"
783
+ },
784
+ {
785
+ "type": "object",
786
+ "properties": {
787
+ "kind": {
788
+ "type": "string",
789
+ "const": "data-grid"
790
+ }
791
+ },
792
+ "required": [
793
+ "kind"
794
+ ]
795
+ },
796
+ {
797
+ "type": "object",
798
+ "properties": {
799
+ "dataGrid": {
800
+ "$ref": "#/definitions/dataGrid"
801
+ }
802
+ }
803
+ }
804
+ ]
805
+ },
806
+ "dataGridItem": {
807
+ "type": "object",
808
+ "properties": {
809
+ "name": {
810
+ "type": "string",
811
+ "description": "The name of the data grid item"
812
+ },
813
+ "header": {
814
+ "type": "string",
815
+ "description": "The name of the control"
816
+ },
817
+ "pipeList": {
818
+ "type": "array",
819
+ "items": {
820
+ "$ref": "#/definitions/pipe"
821
+ }
822
+ },
823
+ "formControl": {
824
+ "$ref": "#/definitions/control"
825
+ },
826
+ "template": {
827
+ "type": "string"
828
+ },
829
+ "kind": {
830
+ "type": "string",
831
+ "enum": [
832
+ "default",
833
+ "link"
834
+ ],
835
+ "default": "default"
836
+ },
837
+ "type": {
838
+ "$ref": "#/definitions/type"
839
+ },
840
+ "isArray": {
841
+ "type": "boolean"
842
+ }
843
+ },
844
+ "required": [
845
+ "name"
846
+ ]
847
+ },
848
+ "dateTableColumn": {
849
+ "allOf": [
850
+ {
851
+ "$ref": "#/definitions/baseTableColumn"
852
+ },
853
+ {
854
+ "type": "object",
855
+ "properties": {
856
+ "kind": {
857
+ "type": "string",
858
+ "const": "date"
859
+ },
860
+ "format": {
861
+ "type": "string"
862
+ }
863
+ },
864
+ "required": [
865
+ "kind"
866
+ ]
867
+ }
868
+ ]
869
+ },
870
+ "formArray": {
871
+ "allOf": [
872
+ {
873
+ "type": "object",
874
+ "properties": {
875
+ "role": {
876
+ "type": "string",
877
+ "const": "array"
878
+ }
879
+ },
880
+ "required": [
881
+ "role"
882
+ ]
883
+ },
884
+ {
885
+ "oneOf": [
886
+ {
887
+ "allOf": [
888
+ {
889
+ "$ref": "#/definitions/baseFormArray"
890
+ },
891
+ {
892
+ "type": "object",
893
+ "properties": {
894
+ "kind": {
895
+ "type": "string",
896
+ "const": "default",
897
+ "default": "default"
898
+ }
899
+ }
900
+ }
901
+ ]
902
+ }
903
+ ]
904
+ }
905
+ ]
906
+ },
907
+ "formControl": {
908
+ "allOf": [
909
+ {
910
+ "type": "object",
911
+ "properties": {
912
+ "role": {
913
+ "type": "string",
914
+ "const": "control",
915
+ "default": "control"
916
+ }
917
+ }
918
+ },
919
+ {
920
+ "oneOf": [
921
+ {
922
+ "allOf": [
923
+ {
924
+ "$ref": "#/definitions/baseFormControl"
925
+ },
926
+ {
927
+ "type": "object",
928
+ "properties": {
929
+ "kind": {
930
+ "type": "string",
931
+ "const": "default",
932
+ "default": "default"
933
+ }
934
+ }
935
+ }
936
+ ]
937
+ },
938
+ {
939
+ "$ref": "#/definitions/inputFormControl"
940
+ },
941
+ {
942
+ "$ref": "#/definitions/selectFormControl"
943
+ },
944
+ {
945
+ "$ref": "#/definitions/checkboxFormControl"
946
+ },
947
+ {
948
+ "$ref": "#/definitions/textareaFormControl"
949
+ },
950
+ {
951
+ "$ref": "#/definitions/tableSelectFormControl"
952
+ },
953
+ {
954
+ "$ref": "#/definitions/slideToggleFormControl"
955
+ },
956
+ {
957
+ "$ref": "#/definitions/autocompleteTableSelectFormControl"
958
+ }
959
+ ]
960
+ }
961
+ ]
962
+ },
963
+ "formField": {
964
+ "type": "object",
965
+ "properties": {
966
+ "label": {
967
+ "type": "string"
968
+ },
969
+ "prefixButton": {
970
+ "$ref": "#/definitions/button"
971
+ },
972
+ "suffixButton": {
973
+ "$ref": "#/definitions/button"
974
+ },
975
+ "hasClearButton": {
976
+ "type": "boolean"
977
+ },
978
+ "cssClass": {
979
+ "$ref": "#/definitions/cssClass"
980
+ }
981
+ }
982
+ },
983
+ "formGroup": {
984
+ "allOf": [
985
+ {
986
+ "type": "object",
987
+ "properties": {
988
+ "role": {
989
+ "type": "string",
990
+ "const": "group"
991
+ }
992
+ },
993
+ "required": [
994
+ "role"
995
+ ]
996
+ },
997
+ {
998
+ "oneOf": [
999
+ {
1000
+ "allOf": [
1001
+ {
1002
+ "$ref": "#/definitions/baseFormGroup"
1003
+ },
1004
+ {
1005
+ "type": "object",
1006
+ "properties": {
1007
+ "kind": {
1008
+ "type": "string",
1009
+ "const": "default",
1010
+ "default": "default"
1011
+ }
1012
+ }
1013
+ }
1014
+ ]
1015
+ }
1016
+ ]
1017
+ }
1018
+ ]
1019
+ },
1020
+ "general": {
1021
+ "type": "object",
1022
+ "properties": {
1023
+ "project": {
1024
+ "type": "string",
1025
+ "description": "Project name where the files should be generated"
1026
+ },
1027
+ "feature": {
1028
+ "type": "string",
1029
+ "description": "Feature name where the files should be generated"
1030
+ },
1031
+ "overwrite": {
1032
+ "anyOf": [
1033
+ {
1034
+ "type": "boolean"
1035
+ },
1036
+ {
1037
+ "type": "array",
1038
+ "items": {
1039
+ "type": "string"
1040
+ }
1041
+ }
1042
+ ],
1043
+ "description": "Overwrite existing files",
1044
+ "default": false
1045
+ },
1046
+ "overwriteHtml": {
1047
+ "type": "boolean",
1048
+ "default": false
1049
+ },
1050
+ "replace": {
1051
+ "type": "boolean",
1052
+ "default": false
1053
+ }
1054
+ }
1055
+ },
1056
+ "headerButton": {
1057
+ "type": "object",
1058
+ "properties": {
1059
+ "permission": {
1060
+ "type": "string"
1061
+ },
1062
+ "icon": {
1063
+ "type": "string"
1064
+ },
1065
+ "svgIcon": {
1066
+ "type": "string"
1067
+ },
1068
+ "refresh": {
1069
+ "type": "boolean",
1070
+ "description": "Whether the table action should refresh the table after execution",
1071
+ "default": false
1072
+ },
1073
+ "confirm": {
1074
+ "type": "boolean",
1075
+ "description": "Whether the table action should confirm before execution",
1076
+ "default": false
1077
+ },
1078
+ "tooltip": {
1079
+ "type": "string",
1080
+ "description": "The tooltip for the table action"
1081
+ },
1082
+ "errorMessage": {
1083
+ "type": "string",
1084
+ "description": "The error message for the table action"
1085
+ },
1086
+ "successMessage": {
1087
+ "type": "string",
1088
+ "description": "The success message for the table action"
1089
+ },
1090
+ "options": {
1091
+ "type": "object",
1092
+ "additionalProperties": true
1093
+ }
1094
+ }
1095
+ },
1096
+ "iconTableColumn": {
1097
+ "allOf": [
1098
+ {
1099
+ "$ref": "#/definitions/baseTableColumn"
1100
+ },
1101
+ {
1102
+ "type": "object",
1103
+ "properties": {
1104
+ "kind": {
1105
+ "type": "string",
1106
+ "const": "icon"
1107
+ }
1108
+ },
1109
+ "required": [
1110
+ "kind"
1111
+ ]
1112
+ }
1113
+ ]
1114
+ },
1115
+ "inputFormControl": {
1116
+ "allOf": [
1117
+ {
1118
+ "$ref": "#/definitions/baseFormControl"
1119
+ },
1120
+ {
1121
+ "type": "object",
1122
+ "properties": {
1123
+ "kind": {
1124
+ "type": "string",
1125
+ "const": "input"
1126
+ },
1127
+ "formField": {
1128
+ "$ref": "#/definitions/formField"
1129
+ },
1130
+ "inputType": {
1131
+ "type": "string",
1132
+ "enum": [
1133
+ "text",
1134
+ "password",
1135
+ "email",
1136
+ "number",
1137
+ "tel",
1138
+ "url",
1139
+ "checkbox",
1140
+ "color",
1141
+ "date",
1142
+ "time",
1143
+ "datetime-local",
1144
+ "file",
1145
+ "hidden",
1146
+ "image",
1147
+ "month",
1148
+ "radio",
1149
+ "reset",
1150
+ "button",
1151
+ "search",
1152
+ "submit",
1153
+ "week",
1154
+ "range"
1155
+ ]
1156
+ },
1157
+ "placeholder": {
1158
+ "type": "string"
1159
+ }
1160
+ },
1161
+ "required": [
1162
+ "kind"
1163
+ ]
1164
+ }
1165
+ ]
1166
+ },
1167
+ "linkTableColumn": {
1168
+ "allOf": [
1169
+ {
1170
+ "$ref": "#/definitions/baseTableColumn"
1171
+ },
1172
+ {
1173
+ "type": "object",
1174
+ "properties": {
1175
+ "kind": {
1176
+ "type": "string",
1177
+ "const": "link"
1178
+ }
1179
+ },
1180
+ "required": [
1181
+ "kind"
1182
+ ]
1183
+ }
1184
+ ]
1185
+ },
1186
+ "minimumTable": {
1187
+ "type": "object",
1188
+ "properties": {
1189
+ "propertyList": {
1190
+ "alias": "property",
1191
+ "type": "array",
1192
+ "items": {
1193
+ "$ref": "#/definitions/property"
1194
+ }
1195
+ },
1196
+ "upstream": {
1197
+ "$ref": "#/definitions/upstream"
1198
+ },
1199
+ "rowId": {
1200
+ "$ref": "#/definitions/property"
1201
+ },
1202
+ "columnList": {
1203
+ "alias": "column",
1204
+ "type": "array",
1205
+ "items": {
1206
+ "$ref": "#/definitions/tableColumn"
1207
+ },
1208
+ "description": "List of table column names"
1209
+ },
1210
+ "actionList": {
1211
+ "alias": "action",
1212
+ "type": "array",
1213
+ "items": {
1214
+ "$ref": "#/definitions/tableAction"
1215
+ }
1216
+ },
1217
+ "headerButton": {
1218
+ "$ref": "#/definitions/headerButton"
1219
+ },
1220
+ "modifiers": {
1221
+ "alias": "modifier",
1222
+ "type": "array",
1223
+ "items": {
1224
+ "type": "string"
1225
+ },
1226
+ "description": "The table modifiers"
1227
+ },
1228
+ "cssClass": {
1229
+ "$ref": "#/definitions/cssClass"
1230
+ },
1231
+ "identifier": {
1232
+ "$ref": "#/definitions/accordionIdentifier"
1233
+ },
1234
+ "sortable": {
1235
+ "description": "Whether the table is sortable",
1236
+ "oneOf": [
1237
+ {
1238
+ "type": "boolean"
1239
+ },
1240
+ {
1241
+ "type": "object",
1242
+ "properties": {
1243
+ "enabled": {
1244
+ "type": "boolean",
1245
+ "description": "Whether the table is sortable",
1246
+ "default": true
1247
+ },
1248
+ "default": {
1249
+ "type": "object",
1250
+ "properties": {
1251
+ "active": {
1252
+ "type": "string",
1253
+ "description": "The default active column"
1254
+ },
1255
+ "direction": {
1256
+ "type": "string",
1257
+ "description": "The default sort direction",
1258
+ "enum": [
1259
+ "asc",
1260
+ "desc"
1261
+ ]
1262
+ }
1263
+ }
1264
+ }
1265
+ },
1266
+ "required": [
1267
+ "enabled"
1268
+ ]
1269
+ }
1270
+ ]
1271
+ }
1272
+ }
1273
+ },
1274
+ "option": {
1275
+ "type": "object",
1276
+ "properties": {
1277
+ "display": {
1278
+ "type": "string"
1279
+ },
1280
+ "value": {
1281
+ "oneOf": [
1282
+ {
1283
+ "type": "string"
1284
+ },
1285
+ {
1286
+ "type": "number"
1287
+ },
1288
+ {
1289
+ "type": "boolean"
1290
+ },
1291
+ {
1292
+ "type": "object",
1293
+ "additionalProperties": true
1294
+ }
1295
+ ]
1296
+ }
1297
+ }
1298
+ },
1299
+ "optionsTableColumn": {
1300
+ "allOf": [
1301
+ {
1302
+ "$ref": "#/definitions/baseTableColumn"
1303
+ },
1304
+ {
1305
+ "type": "object",
1306
+ "properties": {
1307
+ "kind": {
1308
+ "type": "string",
1309
+ "const": "options"
1310
+ },
1311
+ "optionList": {
1312
+ "type": "array",
1313
+ "items": {
1314
+ "$ref": "#/definitions/option"
1315
+ }
1316
+ }
1317
+ },
1318
+ "required": [
1319
+ "kind",
1320
+ "optionList"
1321
+ ]
1322
+ }
1323
+ ]
1324
+ },
1325
+ "pipe": {
1326
+ "oneOf": [
1327
+ {
1328
+ "type": "string"
1329
+ },
1330
+ {
1331
+ "allOf": [
1332
+ {
1333
+ "$ref": "#/definitions/type"
1334
+ },
1335
+ {
1336
+ "type": "object",
1337
+ "properties": {
1338
+ "argumentList": {
1339
+ "type": "array",
1340
+ "items": {
1341
+ "$ref": "#/definitions/value"
1342
+ }
1343
+ }
1344
+ },
1345
+ "required": [
1346
+ "name"
1347
+ ]
1348
+ }
1349
+ ]
1350
+ }
1351
+ ]
1352
+ },
1353
+ "property": {
1354
+ "oneOf": [
1355
+ {
1356
+ "type": "string"
1357
+ },
1358
+ {
1359
+ "type": "object",
1360
+ "properties": {
1361
+ "name": {
1362
+ "type": "string"
1363
+ },
1364
+ "type": {
1365
+ "$ref": "#/definitions/type"
1366
+ },
1367
+ "isArray": {
1368
+ "type": "boolean"
1369
+ },
1370
+ "isRequired": {
1371
+ "type": "boolean"
1372
+ },
1373
+ "source": {
1374
+ "type": "string"
1375
+ },
1376
+ "memberList": {
1377
+ "type": "array",
1378
+ "items": {
1379
+ "additionalProperties": true
1380
+ }
1381
+ }
1382
+ }
1383
+ }
1384
+ ]
1385
+ },
1386
+ "selectFormControl": {
1387
+ "allOf": [
1388
+ {
1389
+ "$ref": "#/definitions/baseFormControl"
1390
+ },
1391
+ {
1392
+ "type": "object",
1393
+ "properties": {
1394
+ "formField": {
1395
+ "$ref": "#/definitions/formField"
1396
+ },
1397
+ "kind": {
1398
+ "type": "string",
1399
+ "const": "select"
1400
+ },
1401
+ "upstream": {
1402
+ "$ref": "#/definitions/upstream"
1403
+ },
1404
+ "optionList": {
1405
+ "type": "array",
1406
+ "items": {
1407
+ "$ref": "#/definitions/option"
1408
+ }
1409
+ },
1410
+ "backend": {
1411
+ "$ref": "#/definitions/backend"
1412
+ },
1413
+ "multiple": {
1414
+ "alias": "multi",
1415
+ "type": "boolean",
1416
+ "description": "Whether the select form control is multiple mode"
1417
+ }
1418
+ },
1419
+ "required": [
1420
+ "kind"
1421
+ ]
1422
+ }
1423
+ ]
1424
+ },
1425
+ "slideToggleFormControl": {
1426
+ "allOf": [
1427
+ {
1428
+ "$ref": "#/definitions/baseFormControl"
1429
+ },
1430
+ {
1431
+ "type": "object",
1432
+ "properties": {
1433
+ "kind": {
1434
+ "type": "string",
1435
+ "const": "slide-toggle"
1436
+ },
1437
+ "labelPosition": {
1438
+ "type": "string",
1439
+ "enum": [
1440
+ "before",
1441
+ "after"
1442
+ ]
1443
+ }
1444
+ },
1445
+ "required": [
1446
+ "kind"
1447
+ ]
1448
+ }
1449
+ ]
1450
+ },
1451
+ "spinnerTableColumn": {
1452
+ "allOf": [
1453
+ {
1454
+ "$ref": "#/definitions/baseTableColumn"
1455
+ },
1456
+ {
1457
+ "type": "object",
1458
+ "properties": {
1459
+ "kind": {
1460
+ "type": "string",
1461
+ "const": "spinner"
1462
+ }
1463
+ },
1464
+ "required": [
1465
+ "kind"
1466
+ ]
1467
+ }
1468
+ ]
1469
+ },
1470
+ "switchAccordionItem": {
1471
+ "allOf": [
1472
+ {
1473
+ "$ref": "#/definitions/baseAccordionItem"
1474
+ },
1475
+ {
1476
+ "type": "object",
1477
+ "properties": {
1478
+ "kind": {
1479
+ "type": "string",
1480
+ "const": "switch"
1481
+ },
1482
+ "switch": {
1483
+ "type": "object",
1484
+ "properties": {
1485
+ "property": {
1486
+ "$ref": "#/definitions/property"
1487
+ },
1488
+ "defaultCase": {
1489
+ "type": "object",
1490
+ "properties": {
1491
+ "itemList": {
1492
+ "alias": "item",
1493
+ "type": "array",
1494
+ "items": {
1495
+ "$ref": "#/definitions/accordionItem"
1496
+ },
1497
+ "description": "The list of accordion expansion panels"
1498
+ }
1499
+ },
1500
+ "required": [
1501
+ "itemList"
1502
+ ]
1503
+ },
1504
+ "case": {
1505
+ "type": "array",
1506
+ "items": {
1507
+ "type": "object",
1508
+ "properties": {
1509
+ "test": {
1510
+ "anyOf": [
1511
+ {
1512
+ "type": "string"
1513
+ },
1514
+ {
1515
+ "type": "number"
1516
+ },
1517
+ {
1518
+ "type": "boolean"
1519
+ }
1520
+ ]
1521
+ },
1522
+ "itemList": {
1523
+ "alias": "item",
1524
+ "type": "array",
1525
+ "items": {
1526
+ "$ref": "#/definitions/accordionItem"
1527
+ },
1528
+ "description": "The list of accordion expansion panels"
1529
+ }
1530
+ },
1531
+ "required": [
1532
+ "test",
1533
+ "itemList"
1534
+ ]
1535
+ }
1536
+ }
1537
+ },
1538
+ "required": [
1539
+ "property"
1540
+ ]
1541
+ }
1542
+ },
1543
+ "required": [
1544
+ "kind"
1545
+ ]
1546
+ }
1547
+ ]
1548
+ },
1549
+ "table": {
1550
+ "allOf": [
1551
+ {
1552
+ "$ref": "#/definitions/minimumTable"
1553
+ },
1554
+ {
1555
+ "type": "object",
1556
+ "properties": {
1557
+ "tableMethod": {
1558
+ "$ref": "#/definitions/type"
1559
+ },
1560
+ "openApi": {
1561
+ "type": "object",
1562
+ "properties": {
1563
+ "operationId": {
1564
+ "type": "string",
1565
+ "description": "The operationId for the open api operation"
1566
+ },
1567
+ "adapter": {
1568
+ "$ref": "#/definitions/type"
1569
+ }
1570
+ },
1571
+ "required": [
1572
+ "operationId"
1573
+ ]
1574
+ },
1575
+ "modifiers": {
1576
+ "alias": "modifier",
1577
+ "type": "array",
1578
+ "items": {
1579
+ "type": "string",
1580
+ "enum": [
1581
+ "navigation-back-header",
1582
+ "without-title",
1583
+ "show-archived-slide",
1584
+ "with-header"
1585
+ ]
1586
+ },
1587
+ "description": "The table modifiers"
1588
+ },
1589
+ "selectColumn": {
1590
+ "type": "boolean",
1591
+ "description": "Whether to add a select column to the table"
1592
+ }
1593
+ }
1594
+ }
1595
+ ]
1596
+ },
1597
+ "tableAccordionItem": {
1598
+ "allOf": [
1599
+ {
1600
+ "$ref": "#/definitions/baseAccordionItem"
1601
+ },
1602
+ {
1603
+ "type": "object",
1604
+ "properties": {
1605
+ "kind": {
1606
+ "type": "string",
1607
+ "const": "table"
1608
+ },
1609
+ "modifiers": {
1610
+ "alias": "modifier",
1611
+ "type": "array",
1612
+ "items": {
1613
+ "type": "string",
1614
+ "enum": [
1615
+ "navigation-back-header",
1616
+ "without-title"
1617
+ ]
1618
+ },
1619
+ "description": "The table modifiers"
1620
+ },
1621
+ "table": {
1622
+ "$ref": "#/definitions/table"
1623
+ }
1624
+ },
1625
+ "required": [
1626
+ "kind"
1627
+ ]
1628
+ }
1629
+ ]
1630
+ },
1631
+ "tableAction": {
1632
+ "type": "object",
1633
+ "properties": {
1634
+ "type": {
1635
+ "type": "string"
1636
+ },
1637
+ "refresh": {
1638
+ "type": "boolean"
1639
+ },
1640
+ "confirm": {
1641
+ "type": "boolean"
1642
+ },
1643
+ "tooltip": {
1644
+ "type": "string"
1645
+ },
1646
+ "errorMessage": {
1647
+ "type": "string"
1648
+ },
1649
+ "successMessage": {
1650
+ "type": "string"
1651
+ },
1652
+ "priority": {
1653
+ "type": "number"
1654
+ },
1655
+ "checkFunction": {
1656
+ "type": "string"
1657
+ },
1658
+ "inHeader": {
1659
+ "type": "boolean"
1660
+ },
1661
+ "role": {
1662
+ "type": "string"
1663
+ },
1664
+ "icon": {
1665
+ "type": "string"
1666
+ },
1667
+ "svgIcon": {
1668
+ "type": "string"
1669
+ },
1670
+ "permission": {
1671
+ "type": "string"
1672
+ },
1673
+ "color": {
1674
+ "type": "string",
1675
+ "description": "Value for the color input of the mat-button / mat-icon component"
1676
+ },
1677
+ "cssClass": {
1678
+ "$ref": "#/definitions/cssClass"
1679
+ },
1680
+ "options": {
1681
+ "type": "object",
1682
+ "additionalProperties": true
1683
+ }
1684
+ },
1685
+ "required": [
1686
+ "type"
1687
+ ]
1688
+ },
1689
+ "tableColumn": {
1690
+ "type": "object",
1691
+ "oneOf": [
1692
+ {
1693
+ "allOf": [
1694
+ {
1695
+ "$ref": "#/definitions/baseTableColumn"
1696
+ },
1697
+ {
1698
+ "type": "object",
1699
+ "properties": {
1700
+ "kind": {
1701
+ "type": "string",
1702
+ "const": "default",
1703
+ "default": "default"
1704
+ }
1705
+ }
1706
+ }
1707
+ ]
1708
+ },
1709
+ {
1710
+ "$ref": "#/definitions/dateTableColumn"
1711
+ },
1712
+ {
1713
+ "$ref": "#/definitions/customTableColumn"
1714
+ },
1715
+ {
1716
+ "$ref": "#/definitions/linkTableColumn"
1717
+ },
1718
+ {
1719
+ "$ref": "#/definitions/iconTableColumn"
1720
+ },
1721
+ {
1722
+ "$ref": "#/definitions/booleanTableColumn"
1723
+ },
1724
+ {
1725
+ "$ref": "#/definitions/componentTableColumn"
1726
+ },
1727
+ {
1728
+ "$ref": "#/definitions/copyToClipboardTableColumn"
1729
+ },
1730
+ {
1731
+ "$ref": "#/definitions/treeTableColumn"
1732
+ },
1733
+ {
1734
+ "$ref": "#/definitions/spinnerTableColumn"
1735
+ },
1736
+ {
1737
+ "$ref": "#/definitions/optionsTableColumn"
1738
+ }
1739
+ ]
1740
+ },
1741
+ "tableSelectFormControl": {
1742
+ "allOf": [
1743
+ {
1744
+ "$ref": "#/definitions/baseFormControl"
1745
+ },
1746
+ {
1747
+ "type": "object",
1748
+ "properties": {
1749
+ "formField": {
1750
+ "$ref": "#/definitions/formField"
1751
+ },
1752
+ "kind": {
1753
+ "type": "string",
1754
+ "const": "table-select"
1755
+ },
1756
+ "placeholder": {
1757
+ "type": "string"
1758
+ },
1759
+ "columnList": {
1760
+ "alias": "column",
1761
+ "type": "array",
1762
+ "items": {
1763
+ "description": "table column name",
1764
+ "type": "object",
1765
+ "properties": {
1766
+ "name": {
1767
+ "type": "string",
1768
+ "description": "table column name"
1769
+ },
1770
+ "title": {
1771
+ "type": "string",
1772
+ "description": "table column label"
1773
+ },
1774
+ "hasFilter": {
1775
+ "type": "boolean",
1776
+ "description": "Whether the column has a filter"
1777
+ },
1778
+ "kind": {
1779
+ "type": "string",
1780
+ "description": "The kind of data in the column"
1781
+ }
1782
+ }
1783
+ },
1784
+ "description": "List of table column names"
1785
+ },
1786
+ "title": {
1787
+ "type": "string",
1788
+ "description": "The title of the table select window"
1789
+ },
1790
+ "toDisplay": {
1791
+ "type": "object",
1792
+ "properties": {
1793
+ "property": {
1794
+ "$ref": "#/definitions/property"
1795
+ }
1796
+ }
1797
+ },
1798
+ "toValue": {
1799
+ "type": "object",
1800
+ "properties": {
1801
+ "property": {
1802
+ "$ref": "#/definitions/property"
1803
+ }
1804
+ }
1805
+ },
1806
+ "upstream": {
1807
+ "$ref": "#/definitions/upstream"
1808
+ },
1809
+ "resolver": {
1810
+ "type": "object",
1811
+ "properties": {
1812
+ "upstream": {
1813
+ "$ref": "#/definitions/upstream"
1814
+ }
1815
+ }
1816
+ },
1817
+ "identifier": {
1818
+ "$ref": "#/definitions/accordionIdentifier"
1819
+ }
1820
+ },
1821
+ "required": [
1822
+ "kind"
1823
+ ]
1824
+ }
1825
+ ]
1826
+ },
1827
+ "textareaFormControl": {
1828
+ "allOf": [
1829
+ {
1830
+ "$ref": "#/definitions/baseFormControl"
1831
+ },
1832
+ {
1833
+ "type": "object",
1834
+ "properties": {
1835
+ "formField": {
1836
+ "$ref": "#/definitions/formField"
1837
+ },
1838
+ "kind": {
1839
+ "type": "string",
1840
+ "const": "textarea"
1841
+ },
1842
+ "placeholder": {
1843
+ "type": "string"
1844
+ },
1845
+ "autosize": {
1846
+ "type": "object",
1847
+ "properties": {
1848
+ "minRows": {
1849
+ "type": "number"
1850
+ },
1851
+ "maxRows": {
1852
+ "type": "number"
1853
+ }
1854
+ }
1855
+ }
1856
+ },
1857
+ "required": [
1858
+ "kind"
1859
+ ]
1860
+ }
1861
+ ]
1862
+ },
1863
+ "treeTable": {
1864
+ "allOf": [
1865
+ {
1866
+ "$ref": "#/definitions/minimumTable"
1867
+ },
1868
+ {
1869
+ "type": "object",
1870
+ "properties": {
1871
+ "modifiers": {
1872
+ "alias": "modifier",
1873
+ "type": "array",
1874
+ "items": {
1875
+ "type": "string",
1876
+ "enum": [
1877
+ "navigation-back-header",
1878
+ "without-title",
1879
+ "with-header"
1880
+ ]
1881
+ },
1882
+ "description": "The table modifiers"
1883
+ },
1884
+ "tableRootMethod": {
1885
+ "$ref": "#/definitions/type"
1886
+ },
1887
+ "tableChildMethod": {
1888
+ "$ref": "#/definitions/type"
1889
+ }
1890
+ }
1891
+ }
1892
+ ],
1893
+ "definitions": {
1894
+ "minimumTable": {
1895
+ "ref": "./minimum-table.schema.json"
1896
+ }
1897
+ }
1898
+ },
1899
+ "treeTableAccordionItem": {
1900
+ "allOf": [
1901
+ {
1902
+ "$ref": "#/definitions/baseAccordionItem"
1903
+ },
1904
+ {
1905
+ "type": "object",
1906
+ "properties": {
1907
+ "kind": {
1908
+ "type": "string",
1909
+ "const": "tree-table"
1910
+ },
1911
+ "modifiers": {
1912
+ "alias": "modifier",
1913
+ "type": "array",
1914
+ "items": {
1915
+ "type": "string",
1916
+ "enum": [
1917
+ "navigation-back-header",
1918
+ "without-title"
1919
+ ]
1920
+ },
1921
+ "description": "The table modifiers"
1922
+ },
1923
+ "table": {
1924
+ "$ref": "#/definitions/treeTable"
1925
+ }
1926
+ },
1927
+ "required": [
1928
+ "kind"
1929
+ ]
1930
+ }
1931
+ ]
1932
+ },
1933
+ "treeTableColumn": {
1934
+ "allOf": [
1935
+ {
1936
+ "$ref": "#/definitions/baseTableColumn"
1937
+ },
1938
+ {
1939
+ "type": "object",
1940
+ "properties": {
1941
+ "kind": {
1942
+ "type": "string",
1943
+ "const": "tree"
1944
+ }
1945
+ },
1946
+ "required": [
1947
+ "kind"
1948
+ ]
1949
+ }
1950
+ ]
1951
+ },
1952
+ "type": {
1953
+ "oneOf": [
1954
+ {
1955
+ "type": "string"
1956
+ },
1957
+ {
1958
+ "type": "object",
1959
+ "properties": {
1960
+ "name": {
1961
+ "type": "string"
1962
+ },
1963
+ "isTypeOnly": {
1964
+ "type": "boolean"
1965
+ },
1966
+ "moduleSpecifier": {
1967
+ "type": "string"
1968
+ },
1969
+ "namedImport": {
1970
+ "type": "string"
1971
+ },
1972
+ "namespaceImport": {
1973
+ "type": "string"
1974
+ },
1975
+ "defaultImport": {
1976
+ "type": "string"
1977
+ }
1978
+ },
1979
+ "required": [
1980
+ "name"
1981
+ ]
1982
+ }
1983
+ ]
1984
+ },
1985
+ "upstream": {
1986
+ "oneOf": [
1987
+ {
1988
+ "type": "object",
1989
+ "properties": {
1990
+ "kind": {
1991
+ "type": "string",
1992
+ "enum": [
1993
+ "open-api"
1994
+ ]
1995
+ },
1996
+ "operationId": {
1997
+ "type": "string"
1998
+ },
1999
+ "scope": {
2000
+ "type": "string"
2001
+ },
2002
+ "mapper": {
2003
+ "oneOf": [
2004
+ {
2005
+ "type": "object",
2006
+ "properties": {
2007
+ "kind": {
2008
+ "type": "string",
2009
+ "const": "paged"
2010
+ },
2011
+ "pageIndex": {
2012
+ "type": "string"
2013
+ },
2014
+ "pageSize": {
2015
+ "type": "string"
2016
+ },
2017
+ "sortBy": {
2018
+ "type": "string"
2019
+ },
2020
+ "sortDirection": {
2021
+ "type": "string"
2022
+ },
2023
+ "list": {
2024
+ "type": "string"
2025
+ },
2026
+ "total": {
2027
+ "type": "string"
2028
+ },
2029
+ "filter": {
2030
+ "type": "object",
2031
+ "properties": {
2032
+ "eq": {
2033
+ "type": "string"
2034
+ },
2035
+ "join": {
2036
+ "type": "string"
2037
+ }
2038
+ }
2039
+ }
2040
+ }
2041
+ },
2042
+ {
2043
+ "type": "object",
2044
+ "properties": {
2045
+ "kind": {
2046
+ "type": "string",
2047
+ "const": "options"
2048
+ },
2049
+ "toFunction": {
2050
+ "type": "string",
2051
+ "enum": [
2052
+ "ToOptions",
2053
+ "ToOptionsFromObject"
2054
+ ]
2055
+ },
2056
+ "toValue": {
2057
+ "type": "string"
2058
+ },
2059
+ "toDisplay": {
2060
+ "type": "string"
2061
+ }
2062
+ }
2063
+ },
2064
+ {
2065
+ "type": "object",
2066
+ "properties": {
2067
+ "kind": {
2068
+ "type": "string",
2069
+ "const": "resolve"
2070
+ },
2071
+ "value": {
2072
+ "type": "string"
2073
+ }
2074
+ }
2075
+ }
2076
+ ]
2077
+ }
2078
+ },
2079
+ "required": [
2080
+ "kind",
2081
+ "operationId"
2082
+ ]
2083
+ }
2084
+ ]
2085
+ },
2086
+ "value": {
2087
+ "oneOf": [
2088
+ {
2089
+ "type": "string"
2090
+ },
2091
+ {
2092
+ "type": "object",
2093
+ "properties": {
2094
+ "type": {
2095
+ "$ref": "#/definitions/type"
2096
+ },
2097
+ "value": {
2098
+ "type": "string"
2099
+ }
2100
+ },
2101
+ "required": [
2102
+ "value"
2103
+ ]
2104
+ }
2105
+ ]
370
2106
  }
371
2107
  }
372
2108
  }