@rxap/schematic-angular 16.2.0-dev.9 → 16.2.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 (406) hide show
  1. package/CHANGELOG.md +394 -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.map +1 -1
  15. package/src/lib/coerce-accordion-component.js +4 -2
  16. package/src/lib/coerce-accordion-component.js.map +1 -1
  17. package/src/lib/coerce-accordion-item-table-component.js +1 -1
  18. package/src/lib/coerce-accordion-item-table-component.js.map +1 -1
  19. package/src/lib/coerce-form-component.js +16 -3
  20. package/src/lib/coerce-form-component.js.map +1 -1
  21. package/src/lib/coerce-minimum-table-component.js +16 -5
  22. package/src/lib/coerce-minimum-table-component.js.map +1 -1
  23. package/src/lib/coerce-tree-table-component.js +1 -5
  24. package/src/lib/coerce-tree-table-component.js.map +1 -1
  25. package/src/lib/component-options.d.ts +10 -0
  26. package/src/lib/component-options.js +14 -0
  27. package/src/lib/component-options.js.map +1 -0
  28. package/src/lib/css-class.d.ts +9 -0
  29. package/src/lib/css-class.js +52 -0
  30. package/src/lib/css-class.js.map +1 -0
  31. package/src/lib/data-grid-item.d.ts +45 -7
  32. package/src/lib/data-grid-item.js +102 -6
  33. package/src/lib/data-grid-item.js.map +1 -1
  34. package/src/lib/data-grid-mode.d.ts +4 -0
  35. package/src/lib/data-grid-mode.js +9 -0
  36. package/src/lib/data-grid-mode.js.map +1 -0
  37. package/src/lib/data-grid-options.d.ts +10 -5
  38. package/src/lib/data-grid-options.js +42 -15
  39. package/src/lib/data-grid-options.js.map +1 -1
  40. package/src/lib/form/abstract-control.d.ts +31 -0
  41. package/src/lib/form/abstract-control.js +48 -0
  42. package/src/lib/form/abstract-control.js.map +1 -0
  43. package/src/lib/form/array/base-form-array.d.ts +18 -0
  44. package/src/lib/form/array/base-form-array.js +41 -0
  45. package/src/lib/form/array/base-form-array.js.map +1 -0
  46. package/src/lib/form/array/form-array-kind.d.ts +3 -0
  47. package/src/lib/form/array/form-array-kind.js +8 -0
  48. package/src/lib/form/array/form-array-kind.js.map +1 -0
  49. package/src/lib/form/array/form-array.d.ts +12 -0
  50. package/src/lib/form/array/form-array.js +18 -0
  51. package/src/lib/form/array/form-array.js.map +1 -0
  52. package/src/lib/form/coerce-control-component-imports.d.ts +3 -0
  53. package/src/lib/form/coerce-control-component-imports.js +18 -0
  54. package/src/lib/form/coerce-control-component-imports.js.map +1 -0
  55. package/src/lib/form/control/autocomplete-table-select-form-control.d.ts +9 -0
  56. package/src/lib/form/control/autocomplete-table-select-form-control.js +58 -0
  57. package/src/lib/form/control/autocomplete-table-select-form-control.js.map +1 -0
  58. package/src/lib/form/control/base-form-control.d.ts +15 -0
  59. package/src/lib/form/control/base-form-control.js +19 -0
  60. package/src/lib/form/control/base-form-control.js.map +1 -0
  61. package/src/lib/form/control/checkbox-form-control.d.ts +11 -0
  62. package/src/lib/form/control/checkbox-form-control.js +23 -0
  63. package/src/lib/form/control/checkbox-form-control.js.map +1 -0
  64. package/src/lib/form/control/form-control-kind.d.ts +10 -0
  65. package/src/lib/form/control/form-control-kind.js +15 -0
  66. package/src/lib/form/control/form-control-kind.js.map +1 -0
  67. package/src/lib/form/control/form-control.d.ts +20 -0
  68. package/src/lib/form/control/form-control.js +46 -0
  69. package/src/lib/form/control/form-control.js.map +1 -0
  70. package/src/lib/form/control/form-field-form-control.d.ts +39 -0
  71. package/src/lib/form/control/form-field-form-control.js +87 -0
  72. package/src/lib/form/control/form-field-form-control.js.map +1 -0
  73. package/src/lib/form/control/input-form-control.d.ts +15 -0
  74. package/src/lib/form/control/input-form-control.js +75 -0
  75. package/src/lib/form/control/input-form-control.js.map +1 -0
  76. package/src/lib/form/control/select-form-control.d.ts +22 -0
  77. package/src/lib/form/control/select-form-control.js +47 -0
  78. package/src/lib/form/control/select-form-control.js.map +1 -0
  79. package/src/lib/form/control/slide-toggle-form-control.d.ts +11 -0
  80. package/src/lib/form/control/slide-toggle-form-control.js +23 -0
  81. package/src/lib/form/control/slide-toggle-form-control.js.map +1 -0
  82. package/src/lib/form/control/table-select-form-control.d.ts +46 -0
  83. package/src/lib/form/control/table-select-form-control.js +82 -0
  84. package/src/lib/form/control/table-select-form-control.js.map +1 -0
  85. package/src/lib/form/control/textarea-form-control.d.ts +22 -0
  86. package/src/lib/form/control/textarea-form-control.js +52 -0
  87. package/src/lib/form/control/textarea-form-control.js.map +1 -0
  88. package/src/lib/form/control.d.ts +8 -0
  89. package/src/lib/form/control.js +38 -0
  90. package/src/lib/form/control.js.map +1 -0
  91. package/src/lib/form/generate-form-template.d.ts +2 -2
  92. package/src/lib/form/group/base-form-group.d.ts +17 -0
  93. package/src/lib/form/group/base-form-group.js +20 -0
  94. package/src/lib/form/group/base-form-group.js.map +1 -0
  95. package/src/lib/form/group/form-group-kind.d.ts +3 -0
  96. package/src/lib/form/group/form-group-kind.js +8 -0
  97. package/src/lib/form/group/form-group-kind.js.map +1 -0
  98. package/src/lib/form/group/form-group.d.ts +12 -0
  99. package/src/lib/form/group/form-group.js +18 -0
  100. package/src/lib/form/group/form-group.js.map +1 -0
  101. package/src/lib/load-handlebars-template.d.ts +3 -0
  102. package/src/lib/load-handlebars-template.js +13 -1
  103. package/src/lib/load-handlebars-template.js.map +1 -1
  104. package/src/lib/minimum-table-component-options.d.ts +1 -1
  105. package/src/lib/minimum-table-component-options.js +22 -15
  106. package/src/lib/minimum-table-component-options.js.map +1 -1
  107. package/src/lib/minimum-table-options.d.ts +22 -4
  108. package/src/lib/minimum-table-options.js +40 -6
  109. package/src/lib/minimum-table-options.js.map +1 -1
  110. package/src/lib/pipe-option.d.ts +11 -0
  111. package/src/lib/pipe-option.js +75 -0
  112. package/src/lib/pipe-option.js.map +1 -0
  113. package/src/lib/route-component.d.ts +16 -0
  114. package/src/lib/route-component.js +15 -0
  115. package/src/lib/route-component.js.map +1 -0
  116. package/src/lib/table/column/base-table-column.d.ts +61 -0
  117. package/src/lib/table/column/base-table-column.js +309 -0
  118. package/src/lib/table/column/base-table-column.js.map +1 -0
  119. package/src/lib/table/column/boolean-table-column.d.ts +8 -0
  120. package/src/lib/table/column/boolean-table-column.js +10 -0
  121. package/src/lib/table/column/boolean-table-column.js.map +1 -0
  122. package/src/lib/table/column/custom-table-column.d.ts +11 -0
  123. package/src/lib/table/column/custom-table-column.js +11 -0
  124. package/src/lib/table/column/custom-table-column.js.map +1 -0
  125. package/src/lib/table/column/date-table-column.d.ts +11 -0
  126. package/src/lib/table/column/date-table-column.js +11 -0
  127. package/src/lib/table/column/date-table-column.js.map +1 -0
  128. package/src/lib/table/sortable.d.ts +16 -0
  129. package/src/lib/table/sortable.js +27 -0
  130. package/src/lib/table/sortable.js.map +1 -0
  131. package/src/lib/table/table-column-kind.d.ts +13 -0
  132. package/src/lib/table/table-column-kind.js +21 -0
  133. package/src/lib/table/table-column-kind.js.map +1 -0
  134. package/src/lib/table/table-column-modifier.d.ts +12 -0
  135. package/src/lib/table/table-column-modifier.js +20 -0
  136. package/src/lib/table/table-column-modifier.js.map +1 -0
  137. package/src/lib/table/table-column-pipe.d.ts +4 -0
  138. package/src/lib/table/table-column-pipe.js +3 -0
  139. package/src/lib/table/table-column-pipe.js.map +1 -0
  140. package/src/lib/table/table-column-sticky.d.ts +5 -0
  141. package/src/lib/table/table-column-sticky.js +13 -0
  142. package/src/lib/table/table-column-sticky.js.map +1 -0
  143. package/src/lib/table/table-column.d.ts +6 -0
  144. package/src/lib/table/table-column.js +36 -0
  145. package/src/lib/table/table-column.js.map +1 -0
  146. package/src/lib/table/table-filter-column-rule.js +5 -4
  147. package/src/lib/table/table-filter-column-rule.js.map +1 -1
  148. package/src/lib/table-action.js.map +1 -1
  149. package/src/lib/table-options.d.ts +4 -3
  150. package/src/lib/table-options.js +23 -3
  151. package/src/lib/table-options.js.map +1 -1
  152. package/src/lib/table-row-action.d.ts +4 -2
  153. package/src/lib/table-row-action.js +8 -7
  154. package/src/lib/table-row-action.js.map +1 -1
  155. package/src/lib/tree-table-options.d.ts +4 -3
  156. package/src/lib/tree-table-options.js +40 -3
  157. package/src/lib/tree-table-options.js.map +1 -1
  158. package/src/lib/use-pick-from-table-interface-as-form-type.d.ts +1 -1
  159. package/src/lib/value-option.d.ts +12 -0
  160. package/src/lib/value-option.js +66 -0
  161. package/src/lib/value-option.js.map +1 -0
  162. package/src/schema.json +3319 -0
  163. package/src/schematic-input.schema.json +579 -0
  164. package/src/schematics/abstract-control.schema.json +78 -0
  165. package/src/schematics/accordion/accordion-component/files/component/__componentName__.component.html.hbs +16 -7
  166. package/src/schematics/accordion/accordion-component/index.d.ts +6 -2
  167. package/src/schematics/accordion/accordion-component/index.js +72 -42
  168. package/src/schematics/accordion/accordion-component/index.js.map +1 -1
  169. package/src/schematics/accordion/accordion-component/schema.d.ts +6 -0
  170. package/src/schematics/accordion/accordion-component/schema.json +1920 -217
  171. package/src/schematics/accordion/accordion-component/template.schema.json +23 -20
  172. package/src/schematics/accordion/accordion-item-component/index.d.ts +7 -2
  173. package/src/schematics/accordion/accordion-item-component/index.js +79 -51
  174. package/src/schematics/accordion/accordion-item-component/index.js.map +1 -1
  175. package/src/schematics/accordion/accordion-item-component/schema.json +1861 -150
  176. package/src/schematics/accordion/accordion-item-component/template.schema.json +8 -9
  177. package/src/schematics/accordion/item/accordion-item-data-grid-component/index.d.ts +1 -1
  178. package/src/schematics/accordion/item/accordion-item-data-grid-component/index.js +20 -38
  179. package/src/schematics/accordion/item/accordion-item-data-grid-component/index.js.map +1 -1
  180. package/src/schematics/accordion/item/accordion-item-data-grid-component/schema.json +1107 -251
  181. package/src/schematics/accordion/item/accordion-item-data-grid-component/template.schema.json +6 -17
  182. package/src/schematics/accordion/item/accordion-item-switch-component/index.d.ts +1 -1
  183. package/src/schematics/accordion/item/accordion-item-switch-component/index.js +14 -6
  184. package/src/schematics/accordion/item/accordion-item-switch-component/index.js.map +1 -1
  185. package/src/schematics/accordion/item/accordion-item-switch-component/schema.json +1836 -194
  186. package/src/schematics/accordion/item/accordion-item-switch-component/template.schema.json +7 -71
  187. package/src/schematics/accordion/item/accordion-item-table-component/index.d.ts +1 -1
  188. package/src/schematics/accordion/item/accordion-item-table-component/index.js +5 -52
  189. package/src/schematics/accordion/item/accordion-item-table-component/index.js.map +1 -1
  190. package/src/schematics/accordion/item/accordion-item-table-component/schema.json +1338 -453
  191. package/src/schematics/accordion/item/accordion-item-table-component/template.schema.json +6 -32
  192. package/src/schematics/accordion/item/accordion-item-tree-table-component/index.d.ts +1 -1
  193. package/src/schematics/accordion/item/accordion-item-tree-table-component/index.js +21 -80
  194. package/src/schematics/accordion/item/accordion-item-tree-table-component/index.js.map +1 -1
  195. package/src/schematics/accordion/item/accordion-item-tree-table-component/schema.json +1329 -439
  196. package/src/schematics/accordion/item/accordion-item-tree-table-component/template.schema.json +7 -33
  197. package/src/schematics/accordion/templates/accordion-header.hbs +7 -3
  198. package/src/schematics/accordion/templates/switch-accordion-item.hbs +12 -4
  199. package/src/schematics/accordion-identifier.schema.json +24 -0
  200. package/src/schematics/accordion-item.schema.json +47 -30
  201. package/src/schematics/angular.schema.json +11 -3
  202. package/src/schematics/autocomplete-table-select-form-control.schema.json +97 -0
  203. package/src/schematics/base-accordion-item.schema.json +52 -0
  204. package/src/schematics/base-form-array.schema.json +45 -0
  205. package/src/schematics/base-form-control.schema.json +27 -0
  206. package/src/schematics/base-form-group.schema.json +42 -0
  207. package/src/schematics/base-table-column.schema.json +81 -0
  208. package/src/schematics/boolean-table-column.schema.json +24 -0
  209. package/src/schematics/button.schema.json +1 -1
  210. package/src/schematics/checkbox-form-control.schema.json +31 -0
  211. package/src/schematics/component-table-column.schema.json +24 -0
  212. package/src/schematics/component.schema.json +16 -0
  213. package/src/schematics/control.schema.json +26 -0
  214. package/src/schematics/copy-to-clipboard-table-column.schema.json +24 -0
  215. package/src/schematics/css-class.schema.json +34 -0
  216. package/src/schematics/custom-table-column.schema.json +27 -0
  217. package/src/schematics/data-grid-accordion-item.schema.json +35 -0
  218. package/src/schematics/data-grid-component/files/component/__componentName__.component.html.hbs +15 -8
  219. package/src/schematics/data-grid-component/index.d.ts +2 -3
  220. package/src/schematics/data-grid-component/index.js +87 -64
  221. package/src/schematics/data-grid-component/index.js.map +1 -1
  222. package/src/schematics/data-grid-component/schema.json +1041 -215
  223. package/src/schematics/data-grid-component/template.schema.json +6 -9
  224. package/src/schematics/data-grid-component/templates/default-data-grid-item.hbs +3 -0
  225. package/src/schematics/data-grid-component/templates/link-data-grid-item.hbs +8 -0
  226. package/src/schematics/data-grid-item.schema.json +39 -12
  227. package/src/schematics/data-grid.schema.json +26 -4
  228. package/src/schematics/date-table-column.schema.json +27 -0
  229. package/src/schematics/dialog-component/schema.json +72 -155
  230. package/src/schematics/dialog-component/template.schema.json +3 -6
  231. package/src/schematics/form/control/autocomplete-table-select-form-control/index.d.ts +10 -0
  232. package/src/schematics/form/control/autocomplete-table-select-form-control/index.js +286 -0
  233. package/src/schematics/form/control/autocomplete-table-select-form-control/index.js.map +1 -0
  234. package/src/schematics/form/control/autocomplete-table-select-form-control/schema.d.ts +4 -0
  235. package/src/schematics/form/control/autocomplete-table-select-form-control/schema.json +542 -0
  236. package/src/schematics/form/control/autocomplete-table-select-form-control/template.schema.json +39 -0
  237. package/src/schematics/form/control/input-form-control/index.d.ts +1 -1
  238. package/src/schematics/form/control/input-form-control/index.js +4 -4
  239. package/src/schematics/form/control/input-form-control/index.js.map +1 -1
  240. package/src/schematics/form/control/input-form-control/schema.d.ts +2 -2
  241. package/src/schematics/form/control/input-form-control/schema.json +272 -250
  242. package/src/schematics/form/control/input-form-control/template.schema.json +19 -9
  243. package/src/schematics/form/control/select-form-control/index.d.ts +2 -2
  244. package/src/schematics/form/control/select-form-control/index.js +23 -16
  245. package/src/schematics/form/control/select-form-control/index.js.map +1 -1
  246. package/src/schematics/form/control/select-form-control/schema.d.ts +2 -3
  247. package/src/schematics/form/control/select-form-control/schema.json +363 -237
  248. package/src/schematics/form/control/select-form-control/template.schema.json +19 -9
  249. package/src/schematics/form/control/table-select-form-control/index.d.ts +3 -3
  250. package/src/schematics/form/control/table-select-form-control/index.js +210 -155
  251. package/src/schematics/form/control/table-select-form-control/index.js.map +1 -1
  252. package/src/schematics/form/control/table-select-form-control/schema.d.ts +2 -3
  253. package/src/schematics/form/control/table-select-form-control/schema.json +404 -285
  254. package/src/schematics/form/control/table-select-form-control/template.schema.json +16 -55
  255. package/src/schematics/form/form-array/index.d.ts +9 -0
  256. package/src/schematics/form/form-array/index.js +54 -0
  257. package/src/schematics/form/form-array/index.js.map +1 -0
  258. package/src/schematics/form/form-array/schema.d.ts +4 -0
  259. package/src/schematics/form/form-array/schema.json +1056 -0
  260. package/src/schematics/form/form-array/template.schema.json +33 -0
  261. package/src/schematics/form/form-component/files/component/__componentName__.component.html.hbs +4 -1
  262. package/src/schematics/form/form-component/index.d.ts +4 -4
  263. package/src/schematics/form/form-component/index.js +19 -22
  264. package/src/schematics/form/form-component/index.js.map +1 -1
  265. package/src/schematics/form/form-component/schema.d.ts +4 -2
  266. package/src/schematics/form/form-component/schema.json +940 -199
  267. package/src/schematics/form/form-component/template.schema.json +6 -9
  268. package/src/schematics/form/form-control/index.d.ts +3 -5
  269. package/src/schematics/form/form-control/index.js +10 -20
  270. package/src/schematics/form/form-control/index.js.map +1 -1
  271. package/src/schematics/form/form-control/schema.d.ts +2 -4
  272. package/src/schematics/form/form-control/schema.json +753 -176
  273. package/src/schematics/form/form-control/template.schema.json +7 -11
  274. package/src/schematics/form/form-definition/index.d.ts +2 -2
  275. package/src/schematics/form/form-definition/index.js +28 -15
  276. package/src/schematics/form/form-definition/index.js.map +1 -1
  277. package/src/schematics/form/form-definition/schema.d.ts +2 -2
  278. package/src/schematics/form/form-definition/schema.json +935 -200
  279. package/src/schematics/form/form-definition/template.schema.json +6 -9
  280. package/src/schematics/form/form-group/index.d.ts +9 -0
  281. package/src/schematics/form/form-group/index.js +54 -0
  282. package/src/schematics/form/form-group/index.js.map +1 -0
  283. package/src/schematics/form/form-group/schema.d.ts +4 -0
  284. package/src/schematics/form/form-group/schema.json +1056 -0
  285. package/src/schematics/form/form-group/template.schema.json +33 -0
  286. package/src/schematics/form/templates/autocomplete-table-select-form-control.hbs +34 -0
  287. package/src/schematics/form/templates/checkbox-form-control.hbs +4 -2
  288. package/src/schematics/form/templates/default-form-array.hbs +29 -0
  289. package/src/schematics/form/templates/default-form-group.hbs +15 -0
  290. package/src/schematics/form/templates/input-form-control.hbs +14 -7
  291. package/src/schematics/form/templates/mat-form-field.hbs +6 -6
  292. package/src/schematics/form/templates/select-form-control.hbs +18 -0
  293. package/src/schematics/form/templates/slide-toggle-form-control.hbs +3 -1
  294. package/src/schematics/form/templates/table-select-form-control.hbs +23 -16
  295. package/src/schematics/form/templates/textarea-form-control.hbs +25 -0
  296. package/src/schematics/form-array.schema.json +42 -0
  297. package/src/schematics/form-component.schema.json +9 -3
  298. package/src/schematics/form-control.schema.json +70 -54
  299. package/src/schematics/form-definition.schema.json +3 -3
  300. package/src/schematics/form-field.schema.json +6 -0
  301. package/src/schematics/form-group.schema.json +42 -0
  302. package/src/schematics/general.schema.json +1 -4
  303. package/src/schematics/icon-table-column.schema.json +24 -0
  304. package/src/schematics/input-form-control.schema.json +19 -6
  305. package/src/schematics/link-table-column.schema.json +24 -0
  306. package/src/schematics/minimum-table.schema.json +59 -5
  307. package/src/schematics/pipe.schema.json +38 -0
  308. package/src/schematics/property.schema.json +14 -4
  309. package/src/schematics/route-component/files/component/__componentName__.component.html.hbs +1 -0
  310. package/src/schematics/route-component/index.d.ts +8 -0
  311. package/src/schematics/route-component/index.js +109 -0
  312. package/src/schematics/route-component/index.js.map +1 -0
  313. package/src/schematics/route-component/schema.d.ts +5 -0
  314. package/src/schematics/route-component/schema.json +154 -0
  315. package/src/schematics/route-component/template.schema.json +20 -0
  316. package/src/schematics/route-component.schema.json +35 -0
  317. package/src/schematics/select-form-control.schema.json +28 -6
  318. package/src/schematics/slide-toggle-form-control.schema.json +31 -0
  319. package/src/schematics/spinner-table-column.schema.json +24 -0
  320. package/src/schematics/switch-accordion-item.schema.json +83 -0
  321. package/src/schematics/table/action/dialog-table-action/index.js +1 -0
  322. package/src/schematics/table/action/dialog-table-action/index.js.map +1 -1
  323. package/src/schematics/table/action/dialog-table-action/schema.json +172 -218
  324. package/src/schematics/table/action/dialog-table-action/template.schema.json +3 -6
  325. package/src/schematics/table/action/form-table-action/index.d.ts +2 -2
  326. package/src/schematics/table/action/form-table-action/index.js +6 -5
  327. package/src/schematics/table/action/form-table-action/index.js.map +1 -1
  328. package/src/schematics/table/action/form-table-action/schema.d.ts +2 -2
  329. package/src/schematics/table/action/form-table-action/schema.json +1107 -303
  330. package/src/schematics/table/action/form-table-action/template.schema.json +6 -6
  331. package/src/schematics/table/action/navigation-table-action/schema.json +171 -217
  332. package/src/schematics/table/action/navigation-table-action/template.schema.json +3 -6
  333. package/src/schematics/table/action/open-api-table-action/schema.json +172 -218
  334. package/src/schematics/table/action/open-api-table-action/template.schema.json +3 -6
  335. package/src/schematics/table/action/operation-table-action/index.js +2 -1
  336. package/src/schematics/table/action/operation-table-action/index.js.map +1 -1
  337. package/src/schematics/table/action/operation-table-action/schema.json +162 -208
  338. package/src/schematics/table/action/operation-table-action/template.schema.json +3 -6
  339. package/src/schematics/table/header-button/form-table-header-button/index.d.ts +2 -2
  340. package/src/schematics/table/header-button/form-table-header-button/index.js +2 -2
  341. package/src/schematics/table/header-button/form-table-header-button/index.js.map +1 -1
  342. package/src/schematics/table/header-button/form-table-header-button/schema.d.ts +2 -2
  343. package/src/schematics/table/header-button/form-table-header-button/schema.json +1043 -215
  344. package/src/schematics/table/header-button/form-table-header-button/template.schema.json +6 -24
  345. package/src/schematics/table/header-button/navigation-table-header-button/schema.json +130 -207
  346. package/src/schematics/table/header-button/navigation-table-header-button/template.schema.json +3 -6
  347. package/src/schematics/table/table-action/schema.json +101 -150
  348. package/src/schematics/table/table-action/template.schema.json +6 -6
  349. package/src/schematics/table/table-component/files/component/__componentName__.component.html.hbs +84 -33
  350. package/src/schematics/table/table-component/index.d.ts +0 -5
  351. package/src/schematics/table/table-component/index.js +21 -33
  352. package/src/schematics/table/table-component/index.js.map +1 -1
  353. package/src/schematics/table/table-component/schema.json +1285 -425
  354. package/src/schematics/table/table-component/template.schema.json +6 -12
  355. package/src/schematics/table/table-header-button/schema.json +68 -148
  356. package/src/schematics/table/table-header-button/template.schema.json +6 -6
  357. package/src/schematics/table/templates/boolean-table-column.hbs +18 -5
  358. package/src/schematics/table/templates/component-table-column.hbs +19 -6
  359. package/src/schematics/table/templates/copy-to-clipboard-table-column.hbs +18 -5
  360. package/src/schematics/table/templates/custom-table-column.hbs +23 -0
  361. package/src/schematics/table/templates/date-table-column.hbs +18 -5
  362. package/src/schematics/table/templates/default-table-column.hbs +20 -5
  363. package/src/schematics/table/templates/icon-table-column.hbs +18 -5
  364. package/src/schematics/table/templates/link-table-column.hbs +18 -5
  365. package/src/schematics/table/templates/mat-column-def.hbs +3 -0
  366. package/src/schematics/table/templates/spinner-table-column.hbs +27 -0
  367. package/src/schematics/table/templates/tree-table-column.hbs +21 -0
  368. package/src/schematics/table/tree-table-component/files/component/__componentName__.component.html.hbs +93 -50
  369. package/src/schematics/table/tree-table-component/index.d.ts +3 -0
  370. package/src/schematics/table/tree-table-component/index.js +30 -9
  371. package/src/schematics/table/tree-table-component/index.js.map +1 -1
  372. package/src/schematics/table/tree-table-component/schema.json +1279 -414
  373. package/src/schematics/table/tree-table-component/template.schema.json +6 -12
  374. package/src/schematics/table-accordion-item.schema.json +42 -0
  375. package/src/schematics/table-action.schema.json +7 -3
  376. package/src/schematics/table-column.schema.json +61 -47
  377. package/src/schematics/table-select-form-control.schema.json +103 -0
  378. package/src/schematics/table.schema.json +6 -2
  379. package/src/schematics/templates/css-class.hbs +1 -0
  380. package/src/schematics/templates/pipe.hbs +4 -0
  381. package/src/schematics/textarea-form-control.schema.json +44 -0
  382. package/src/schematics/tree-component/index.js +2 -1
  383. package/src/schematics/tree-component/index.js.map +1 -1
  384. package/src/schematics/tree-component/schema.json +70 -62
  385. package/src/schematics/tree-component/template.schema.json +7 -2
  386. package/src/schematics/tree-table-accordion-item.schema.json +42 -0
  387. package/src/schematics/tree-table-column.schema.json +24 -0
  388. package/src/schematics/tree-table.schema.json +5 -4
  389. package/src/schematics/upstream.schema.json +62 -23
  390. package/src/schematics/value.schema.json +26 -0
  391. package/src/template.schema.json +275 -0
  392. package/src/lib/form-component-control.d.ts +0 -8
  393. package/src/lib/form-component-control.js +0 -15
  394. package/src/lib/form-component-control.js.map +0 -1
  395. package/src/lib/form-control.d.ts +0 -125
  396. package/src/lib/form-control.js +0 -303
  397. package/src/lib/form-control.js.map +0 -1
  398. package/src/lib/form-definition-control.d.ts +0 -5
  399. package/src/lib/form-definition-control.js +0 -30
  400. package/src/lib/form-definition-control.js.map +0 -1
  401. package/src/lib/merge-with-column-list.d.ts +0 -3
  402. package/src/lib/merge-with-column-list.js +0 -18
  403. package/src/lib/merge-with-column-list.js.map +0 -1
  404. package/src/lib/table-column.d.ts +0 -62
  405. package/src/lib/table-column.js +0 -313
  406. package/src/lib/table-column.js.map +0 -1
@@ -3,45 +3,116 @@
3
3
  "$id": "form-definition-schematic",
4
4
  "allOf": [
5
5
  {
6
+ "$ref": "#/definitions/angular"
7
+ },
8
+ {
9
+ "$ref": "#/definitions/formDefinition"
10
+ },
11
+ {
12
+ "type": "object",
13
+ "properties": {
14
+ "standalone": {
15
+ "type": "boolean",
16
+ "description": "Whether the form definition has a form.provider file",
17
+ "default": true
18
+ }
19
+ }
20
+ }
21
+ ],
22
+ "definitions": {
23
+ "abstractControl": {
6
24
  "allOf": [
25
+ {
26
+ "$ref": "#/definitions/property"
27
+ },
7
28
  {
8
29
  "type": "object",
9
30
  "properties": {
10
- "project": {
31
+ "name": {
11
32
  "type": "string",
12
- "description": "Project name where the files should be generated"
33
+ "description": "The name of the control"
34
+ },
35
+ "isArray": {
36
+ "type": "boolean",
37
+ "description": "Whether the control value is an array",
38
+ "default": false
13
39
  },
14
- "feature": {
40
+ "state": {
15
41
  "type": "string",
16
- "description": "Feature name where the files should be generated"
42
+ "description": "The initial state of the control"
17
43
  },
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",
44
+ "isRequired": {
45
+ "type": "boolean",
46
+ "description": "Whether the control value is required",
31
47
  "default": false
32
48
  },
33
- "overwriteHtml": {
49
+ "isReadonly": {
34
50
  "type": "boolean",
51
+ "description": "Whether the control value is readonly",
35
52
  "default": false
36
53
  },
37
- "replace": {
54
+ "isDisabled": {
38
55
  "type": "boolean",
56
+ "description": "Whether the control value is disabled",
39
57
  "default": false
58
+ },
59
+ "validatorList": {
60
+ "type": "array",
61
+ "items": {
62
+ "type": "string"
63
+ }
64
+ },
65
+ "kind": {
66
+ "type": "string",
67
+ "description": "The kind of the control",
68
+ "default": "default"
69
+ },
70
+ "importList": {
71
+ "type": "array",
72
+ "items": {
73
+ "$ref": "#/definitions/type"
74
+ }
75
+ },
76
+ "template": {
77
+ "type": "string",
78
+ "description": "The template of the control"
79
+ },
80
+ "role": {
81
+ "type": "string",
82
+ "description": "The role of the control",
83
+ "enum": [
84
+ "control",
85
+ "group",
86
+ "array"
87
+ ],
88
+ "default": "control"
40
89
  }
41
90
  },
42
- "required": [
43
- "project"
91
+ "additionalProperties": true
92
+ }
93
+ ]
94
+ },
95
+ "accordionIdentifier": {
96
+ "type": "object",
97
+ "properties": {
98
+ "property": {
99
+ "$ref": "#/definitions/property"
100
+ },
101
+ "source": {
102
+ "type": "string",
103
+ "enum": [
104
+ "route"
44
105
  ]
106
+ }
107
+ },
108
+ "required": [
109
+ "property"
110
+ ]
111
+ },
112
+ "angular": {
113
+ "allOf": [
114
+ {
115
+ "$ref": "#/definitions/general"
45
116
  },
46
117
  {
47
118
  "type": "object",
@@ -64,15 +135,7 @@
64
135
  "type": "string"
65
136
  },
66
137
  "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"
138
+ "$ref": "#/definitions/backend"
76
139
  },
77
140
  "directory": {
78
141
  "type": "string",
@@ -97,179 +160,186 @@
97
160
  }
98
161
  ]
99
162
  },
100
- {
101
- "type": "object",
102
- "properties": {
103
- "controlList": {
104
- "alias": "control",
105
- "type": "array",
106
- "items": {
107
- "type": "object",
108
- "properties": {
109
- "name": {
110
- "type": "string",
111
- "description": "The name of the control"
112
- },
113
- "type": {
114
- "$ref": "#/definitions/type"
115
- },
116
- "isArray": {
117
- "type": "boolean",
118
- "description": "Whether the control value is an array",
119
- "default": false
120
- },
121
- "state": {
122
- "type": "string",
123
- "description": "The initial state of the control"
124
- },
125
- "isRequired": {
126
- "type": "boolean",
127
- "description": "Whether the control value is required",
128
- "default": false
129
- },
130
- "isReadonly": {
131
- "type": "boolean",
132
- "description": "Whether the control value is readonly",
133
- "default": false
134
- },
135
- "isDisabled": {
136
- "type": "boolean",
137
- "description": "Whether the control value is disabled",
138
- "default": false
139
- },
140
- "validatorList": {
141
- "type": "array",
142
- "items": {
143
- "type": "string"
163
+ "autocompleteTableSelectFormControl": {
164
+ "allOf": [
165
+ {
166
+ "$ref": "#/definitions/baseFormControl"
167
+ },
168
+ {
169
+ "type": "object",
170
+ "properties": {
171
+ "formField": {
172
+ "$ref": "#/definitions/formField"
173
+ },
174
+ "kind": {
175
+ "type": "string",
176
+ "const": "autocomplete-table-select"
177
+ },
178
+ "placeholder": {
179
+ "type": "string"
180
+ },
181
+ "columnList": {
182
+ "alias": "column",
183
+ "type": "array",
184
+ "items": {
185
+ "description": "table column name",
186
+ "type": "object",
187
+ "properties": {
188
+ "name": {
189
+ "type": "string",
190
+ "description": "table column name"
191
+ },
192
+ "title": {
193
+ "type": "string",
194
+ "description": "table column label"
195
+ },
196
+ "hasFilter": {
197
+ "type": "boolean",
198
+ "description": "Whether the column has a filter"
199
+ },
200
+ "kind": {
201
+ "type": "string",
202
+ "description": "The kind of data in the column"
203
+ }
144
204
  }
145
205
  },
146
- "kind": {
147
- "type": "string",
148
- "description": "The name of the template",
149
- "enum": [
150
- "default",
151
- "input",
152
- "select",
153
- "checkbox",
154
- "autocomplete-table-select",
155
- "table-select",
156
- "textarea",
157
- "slide-toggle"
158
- ],
159
- "default": "default"
206
+ "description": "List of table column names"
207
+ },
208
+ "title": {
209
+ "type": "string",
210
+ "description": "The title of the table select window"
211
+ },
212
+ "toDisplay": {
213
+ "type": "object",
214
+ "properties": {
215
+ "property": {
216
+ "$ref": "#/definitions/property"
217
+ }
160
218
  }
161
219
  },
162
- "required": [
163
- "name"
164
- ],
165
- "additionalProperties": true
166
- }
220
+ "toValue": {
221
+ "type": "object",
222
+ "properties": {
223
+ "property": {
224
+ "$ref": "#/definitions/property"
225
+ }
226
+ }
227
+ },
228
+ "upstream": {
229
+ "$ref": "#/definitions/upstream"
230
+ },
231
+ "resolver": {
232
+ "type": "object",
233
+ "properties": {
234
+ "upstream": {
235
+ "$ref": "#/definitions/upstream"
236
+ }
237
+ }
238
+ }
239
+ },
240
+ "required": [
241
+ "kind"
242
+ ]
167
243
  }
168
- },
169
- "required": [
170
- "controlList"
171
244
  ]
172
245
  },
173
- {
174
- "type": "object",
175
- "properties": {
176
- "standalone": {
177
- "type": "boolean",
178
- "description": "Whether the form definition has a form.provider file",
179
- "default": true
180
- }
181
- }
182
- }
183
- ],
184
- "definitions": {
185
- "type": {
186
- "oneOf": [
246
+ "backend": {
247
+ "type": "string",
248
+ "description": "The backend that should be used to handel data",
249
+ "enum": [
250
+ "none",
251
+ "nestjs",
252
+ "open-api",
253
+ "local"
254
+ ],
255
+ "default": "none"
256
+ },
257
+ "baseFormArray": {
258
+ "allOf": [
187
259
  {
188
- "type": "string"
260
+ "$ref": "#/definitions/abstractControl"
189
261
  },
190
262
  {
191
263
  "type": "object",
192
264
  "properties": {
193
- "name": {
194
- "type": "string"
195
- },
196
- "isTypeOnly": {
197
- "type": "boolean"
265
+ "controlList": {
266
+ "type": "array",
267
+ "description": "The list of controls in the group",
268
+ "items": {
269
+ "$ref": "#/definitions/control"
270
+ }
198
271
  },
199
- "moduleSpecifier": {
272
+ "legend": {
200
273
  "type": "string"
201
274
  },
202
- "namedImport": {
275
+ "groupLegend": {
203
276
  "type": "string"
204
277
  },
205
- "namespaceImport": {
206
- "type": "string"
278
+ "kind": {
279
+ "type": "string",
280
+ "description": "The kind of the array",
281
+ "const": "default",
282
+ "default": "default"
207
283
  },
208
- "defaultImport": {
209
- "type": "string"
284
+ "role": {
285
+ "type": "string",
286
+ "const": "array"
210
287
  }
211
- },
212
- "required": [
213
- "name"
214
- ]
288
+ }
215
289
  }
216
290
  ]
217
291
  },
218
- "property": {
219
- "oneOf": [
292
+ "baseFormControl": {
293
+ "allOf": [
220
294
  {
221
- "type": "string"
295
+ "$ref": "#/definitions/abstractControl"
222
296
  },
223
297
  {
224
298
  "type": "object",
225
299
  "properties": {
226
- "name": {
227
- "type": "string"
300
+ "label": {
301
+ "type": "string",
302
+ "description": "The label of the control"
228
303
  },
229
- "type": {
230
- "$ref": "#/definitions/type"
304
+ "role": {
305
+ "type": "string",
306
+ "const": "control"
231
307
  }
232
- },
233
- "required": [
234
- "name"
235
- ]
308
+ }
236
309
  }
237
- ],
238
- "definitions": {
239
- "type": {
240
- "oneOf": [
241
- {
310
+ ]
311
+ },
312
+ "baseFormGroup": {
313
+ "allOf": [
314
+ {
315
+ "$ref": "#/definitions/abstractControl"
316
+ },
317
+ {
318
+ "type": "object",
319
+ "properties": {
320
+ "controlList": {
321
+ "type": "array",
322
+ "description": "The list of controls in the group",
323
+ "items": {
324
+ "$ref": "#/definitions/control"
325
+ }
326
+ },
327
+ "legend": {
242
328
  "type": "string"
243
329
  },
244
- {
245
- "type": "object",
246
- "properties": {
247
- "name": {
248
- "type": "string"
249
- },
250
- "isTypeOnly": {
251
- "type": "boolean"
252
- },
253
- "moduleSpecifier": {
254
- "type": "string"
255
- },
256
- "namedImport": {
257
- "type": "string"
258
- },
259
- "namespaceImport": {
260
- "type": "string"
261
- },
262
- "defaultImport": {
263
- "type": "string"
264
- }
265
- },
266
- "required": [
267
- "name"
268
- ]
330
+ "kind": {
331
+ "type": "string",
332
+ "description": "The kind of the group",
333
+ "const": "default",
334
+ "default": "default"
335
+ },
336
+ "role": {
337
+ "type": "string",
338
+ "const": "group"
269
339
  }
270
- ]
340
+ }
271
341
  }
272
- }
342
+ ]
273
343
  },
274
344
  "button": {
275
345
  "type": "object",
@@ -292,42 +362,707 @@
292
362
  "$ref": "#/definitions/type"
293
363
  }
294
364
  }
295
- },
296
- "definitions": {
297
- "type": {
298
- "oneOf": [
299
- {
300
- "type": "string"
365
+ }
366
+ },
367
+ "checkboxFormControl": {
368
+ "allOf": [
369
+ {
370
+ "$ref": "#/definitions/baseFormControl"
371
+ },
372
+ {
373
+ "type": "object",
374
+ "properties": {
375
+ "kind": {
376
+ "type": "string",
377
+ "const": "checkbox"
301
378
  },
302
- {
303
- "type": "object",
304
- "properties": {
305
- "name": {
306
- "type": "string"
307
- },
308
- "isTypeOnly": {
309
- "type": "boolean"
310
- },
311
- "moduleSpecifier": {
312
- "type": "string"
313
- },
314
- "namedImport": {
315
- "type": "string"
316
- },
317
- "namespaceImport": {
318
- "type": "string"
319
- },
320
- "defaultImport": {
321
- "type": "string"
322
- }
323
- },
324
- "required": [
325
- "name"
379
+ "labelPosition": {
380
+ "type": "string",
381
+ "enum": [
382
+ "before",
383
+ "after"
326
384
  ]
327
385
  }
386
+ },
387
+ "required": [
388
+ "kind"
328
389
  ]
329
390
  }
330
- }
391
+ ]
392
+ },
393
+ "control": {
394
+ "oneOf": [
395
+ {
396
+ "$ref": "#/definitions/formGroup"
397
+ },
398
+ {
399
+ "$ref": "#/definitions/formArray"
400
+ },
401
+ {
402
+ "$ref": "#/definitions/formControl"
403
+ }
404
+ ]
405
+ },
406
+ "cssClass": {
407
+ "oneOf": [
408
+ {
409
+ "type": "string"
410
+ },
411
+ {
412
+ "type": "array",
413
+ "items": {
414
+ "type": "string"
415
+ }
416
+ },
417
+ {
418
+ "type": "object",
419
+ "properties": {
420
+ "name": {
421
+ "type": "string"
422
+ }
423
+ }
424
+ },
425
+ {
426
+ "type": "array",
427
+ "items": {
428
+ "type": "object",
429
+ "properties": {
430
+ "name": {
431
+ "type": "string"
432
+ }
433
+ }
434
+ }
435
+ }
436
+ ]
437
+ },
438
+ "formArray": {
439
+ "allOf": [
440
+ {
441
+ "type": "object",
442
+ "properties": {
443
+ "role": {
444
+ "type": "string",
445
+ "const": "array"
446
+ }
447
+ },
448
+ "required": [
449
+ "role"
450
+ ]
451
+ },
452
+ {
453
+ "oneOf": [
454
+ {
455
+ "allOf": [
456
+ {
457
+ "$ref": "#/definitions/baseFormArray"
458
+ },
459
+ {
460
+ "type": "object",
461
+ "properties": {
462
+ "kind": {
463
+ "type": "string",
464
+ "const": "default",
465
+ "default": "default"
466
+ }
467
+ }
468
+ }
469
+ ]
470
+ }
471
+ ]
472
+ }
473
+ ]
474
+ },
475
+ "formControl": {
476
+ "allOf": [
477
+ {
478
+ "type": "object",
479
+ "properties": {
480
+ "role": {
481
+ "type": "string",
482
+ "const": "control",
483
+ "default": "control"
484
+ }
485
+ }
486
+ },
487
+ {
488
+ "oneOf": [
489
+ {
490
+ "allOf": [
491
+ {
492
+ "$ref": "#/definitions/baseFormControl"
493
+ },
494
+ {
495
+ "type": "object",
496
+ "properties": {
497
+ "kind": {
498
+ "type": "string",
499
+ "const": "default",
500
+ "default": "default"
501
+ }
502
+ }
503
+ }
504
+ ]
505
+ },
506
+ {
507
+ "$ref": "#/definitions/inputFormControl"
508
+ },
509
+ {
510
+ "$ref": "#/definitions/selectFormControl"
511
+ },
512
+ {
513
+ "$ref": "#/definitions/checkboxFormControl"
514
+ },
515
+ {
516
+ "$ref": "#/definitions/textareaFormControl"
517
+ },
518
+ {
519
+ "$ref": "#/definitions/tableSelectFormControl"
520
+ },
521
+ {
522
+ "$ref": "#/definitions/slideToggleFormControl"
523
+ },
524
+ {
525
+ "$ref": "#/definitions/autocompleteTableSelectFormControl"
526
+ }
527
+ ]
528
+ }
529
+ ]
530
+ },
531
+ "formDefinition": {
532
+ "type": "object",
533
+ "properties": {
534
+ "controlList": {
535
+ "alias": "control",
536
+ "type": "array",
537
+ "items": {
538
+ "$ref": "#/definitions/control"
539
+ }
540
+ }
541
+ },
542
+ "required": [
543
+ "controlList"
544
+ ]
545
+ },
546
+ "formField": {
547
+ "type": "object",
548
+ "properties": {
549
+ "label": {
550
+ "type": "string"
551
+ },
552
+ "prefixButton": {
553
+ "$ref": "#/definitions/button"
554
+ },
555
+ "suffixButton": {
556
+ "$ref": "#/definitions/button"
557
+ },
558
+ "hasClearButton": {
559
+ "type": "boolean"
560
+ },
561
+ "cssClass": {
562
+ "$ref": "#/definitions/cssClass"
563
+ }
564
+ }
565
+ },
566
+ "formGroup": {
567
+ "allOf": [
568
+ {
569
+ "type": "object",
570
+ "properties": {
571
+ "role": {
572
+ "type": "string",
573
+ "const": "group"
574
+ }
575
+ },
576
+ "required": [
577
+ "role"
578
+ ]
579
+ },
580
+ {
581
+ "oneOf": [
582
+ {
583
+ "allOf": [
584
+ {
585
+ "$ref": "#/definitions/baseFormGroup"
586
+ },
587
+ {
588
+ "type": "object",
589
+ "properties": {
590
+ "kind": {
591
+ "type": "string",
592
+ "const": "default",
593
+ "default": "default"
594
+ }
595
+ }
596
+ }
597
+ ]
598
+ }
599
+ ]
600
+ }
601
+ ]
602
+ },
603
+ "general": {
604
+ "type": "object",
605
+ "properties": {
606
+ "project": {
607
+ "type": "string",
608
+ "description": "Project name where the files should be generated"
609
+ },
610
+ "feature": {
611
+ "type": "string",
612
+ "description": "Feature name where the files should be generated"
613
+ },
614
+ "overwrite": {
615
+ "anyOf": [
616
+ {
617
+ "type": "boolean"
618
+ },
619
+ {
620
+ "type": "array",
621
+ "items": {
622
+ "type": "string"
623
+ }
624
+ }
625
+ ],
626
+ "description": "Overwrite existing files",
627
+ "default": false
628
+ },
629
+ "overwriteHtml": {
630
+ "type": "boolean",
631
+ "default": false
632
+ },
633
+ "replace": {
634
+ "type": "boolean",
635
+ "default": false
636
+ }
637
+ }
638
+ },
639
+ "inputFormControl": {
640
+ "allOf": [
641
+ {
642
+ "$ref": "#/definitions/baseFormControl"
643
+ },
644
+ {
645
+ "type": "object",
646
+ "properties": {
647
+ "kind": {
648
+ "type": "string",
649
+ "const": "input"
650
+ },
651
+ "formField": {
652
+ "$ref": "#/definitions/formField"
653
+ },
654
+ "inputType": {
655
+ "type": "string",
656
+ "enum": [
657
+ "text",
658
+ "password",
659
+ "email",
660
+ "number",
661
+ "tel",
662
+ "url",
663
+ "checkbox",
664
+ "color",
665
+ "date",
666
+ "time",
667
+ "datetime-local",
668
+ "file",
669
+ "hidden",
670
+ "image",
671
+ "month",
672
+ "radio",
673
+ "reset",
674
+ "button",
675
+ "search",
676
+ "submit",
677
+ "week",
678
+ "range"
679
+ ]
680
+ },
681
+ "placeholder": {
682
+ "type": "string"
683
+ }
684
+ },
685
+ "required": [
686
+ "kind"
687
+ ]
688
+ }
689
+ ]
690
+ },
691
+ "property": {
692
+ "oneOf": [
693
+ {
694
+ "type": "string"
695
+ },
696
+ {
697
+ "type": "object",
698
+ "properties": {
699
+ "name": {
700
+ "type": "string"
701
+ },
702
+ "type": {
703
+ "$ref": "#/definitions/type"
704
+ },
705
+ "isArray": {
706
+ "type": "boolean"
707
+ },
708
+ "isRequired": {
709
+ "type": "boolean"
710
+ },
711
+ "source": {
712
+ "type": "string"
713
+ },
714
+ "memberList": {
715
+ "type": "array",
716
+ "items": {
717
+ "additionalProperties": true
718
+ }
719
+ }
720
+ }
721
+ }
722
+ ]
723
+ },
724
+ "selectFormControl": {
725
+ "allOf": [
726
+ {
727
+ "$ref": "#/definitions/baseFormControl"
728
+ },
729
+ {
730
+ "type": "object",
731
+ "properties": {
732
+ "formField": {
733
+ "$ref": "#/definitions/formField"
734
+ },
735
+ "kind": {
736
+ "type": "string",
737
+ "const": "select"
738
+ },
739
+ "upstream": {
740
+ "$ref": "#/definitions/upstream"
741
+ },
742
+ "optionList": {
743
+ "type": "array",
744
+ "items": {
745
+ "type": "object",
746
+ "properties": {
747
+ "display": {
748
+ "type": "string"
749
+ },
750
+ "value": {
751
+ "oneOf": [
752
+ {
753
+ "type": "string"
754
+ },
755
+ {
756
+ "type": "number"
757
+ },
758
+ {
759
+ "type": "boolean"
760
+ },
761
+ {
762
+ "type": "object",
763
+ "additionalProperties": true
764
+ }
765
+ ]
766
+ }
767
+ }
768
+ }
769
+ },
770
+ "backend": {
771
+ "$ref": "#/definitions/backend"
772
+ },
773
+ "multiple": {
774
+ "alias": "multi",
775
+ "type": "boolean",
776
+ "description": "Whether the select form control is multiple mode"
777
+ }
778
+ },
779
+ "required": [
780
+ "kind"
781
+ ]
782
+ }
783
+ ]
784
+ },
785
+ "slideToggleFormControl": {
786
+ "allOf": [
787
+ {
788
+ "$ref": "#/definitions/baseFormControl"
789
+ },
790
+ {
791
+ "type": "object",
792
+ "properties": {
793
+ "kind": {
794
+ "type": "string",
795
+ "const": "slide-toggle"
796
+ },
797
+ "labelPosition": {
798
+ "type": "string",
799
+ "enum": [
800
+ "before",
801
+ "after"
802
+ ]
803
+ }
804
+ },
805
+ "required": [
806
+ "kind"
807
+ ]
808
+ }
809
+ ]
810
+ },
811
+ "tableSelectFormControl": {
812
+ "allOf": [
813
+ {
814
+ "$ref": "#/definitions/baseFormControl"
815
+ },
816
+ {
817
+ "type": "object",
818
+ "properties": {
819
+ "formField": {
820
+ "$ref": "#/definitions/formField"
821
+ },
822
+ "kind": {
823
+ "type": "string",
824
+ "const": "table-select"
825
+ },
826
+ "placeholder": {
827
+ "type": "string"
828
+ },
829
+ "columnList": {
830
+ "alias": "column",
831
+ "type": "array",
832
+ "items": {
833
+ "description": "table column name",
834
+ "type": "object",
835
+ "properties": {
836
+ "name": {
837
+ "type": "string",
838
+ "description": "table column name"
839
+ },
840
+ "title": {
841
+ "type": "string",
842
+ "description": "table column label"
843
+ },
844
+ "hasFilter": {
845
+ "type": "boolean",
846
+ "description": "Whether the column has a filter"
847
+ },
848
+ "kind": {
849
+ "type": "string",
850
+ "description": "The kind of data in the column"
851
+ }
852
+ }
853
+ },
854
+ "description": "List of table column names"
855
+ },
856
+ "title": {
857
+ "type": "string",
858
+ "description": "The title of the table select window"
859
+ },
860
+ "toDisplay": {
861
+ "type": "object",
862
+ "properties": {
863
+ "property": {
864
+ "$ref": "#/definitions/property"
865
+ }
866
+ }
867
+ },
868
+ "toValue": {
869
+ "type": "object",
870
+ "properties": {
871
+ "property": {
872
+ "$ref": "#/definitions/property"
873
+ }
874
+ }
875
+ },
876
+ "upstream": {
877
+ "$ref": "#/definitions/upstream"
878
+ },
879
+ "resolver": {
880
+ "type": "object",
881
+ "properties": {
882
+ "upstream": {
883
+ "$ref": "#/definitions/upstream"
884
+ }
885
+ }
886
+ },
887
+ "identifier": {
888
+ "$ref": "#/definitions/accordionIdentifier"
889
+ }
890
+ },
891
+ "required": [
892
+ "kind"
893
+ ]
894
+ }
895
+ ]
896
+ },
897
+ "textareaFormControl": {
898
+ "allOf": [
899
+ {
900
+ "$ref": "#/definitions/baseFormControl"
901
+ },
902
+ {
903
+ "type": "object",
904
+ "properties": {
905
+ "formField": {
906
+ "$ref": "#/definitions/formField"
907
+ },
908
+ "kind": {
909
+ "type": "string",
910
+ "const": "textarea"
911
+ },
912
+ "placeholder": {
913
+ "type": "string"
914
+ },
915
+ "autosize": {
916
+ "type": "object",
917
+ "properties": {
918
+ "minRows": {
919
+ "type": "number"
920
+ },
921
+ "maxRows": {
922
+ "type": "number"
923
+ }
924
+ }
925
+ }
926
+ },
927
+ "required": [
928
+ "kind"
929
+ ]
930
+ }
931
+ ]
932
+ },
933
+ "type": {
934
+ "oneOf": [
935
+ {
936
+ "type": "string"
937
+ },
938
+ {
939
+ "type": "object",
940
+ "properties": {
941
+ "name": {
942
+ "type": "string"
943
+ },
944
+ "isTypeOnly": {
945
+ "type": "boolean"
946
+ },
947
+ "moduleSpecifier": {
948
+ "type": "string"
949
+ },
950
+ "namedImport": {
951
+ "type": "string"
952
+ },
953
+ "namespaceImport": {
954
+ "type": "string"
955
+ },
956
+ "defaultImport": {
957
+ "type": "string"
958
+ }
959
+ },
960
+ "required": [
961
+ "name"
962
+ ]
963
+ }
964
+ ]
965
+ },
966
+ "upstream": {
967
+ "oneOf": [
968
+ {
969
+ "type": "object",
970
+ "properties": {
971
+ "kind": {
972
+ "type": "string",
973
+ "enum": [
974
+ "open-api"
975
+ ]
976
+ },
977
+ "operationId": {
978
+ "type": "string"
979
+ },
980
+ "scope": {
981
+ "type": "string"
982
+ },
983
+ "mapper": {
984
+ "oneOf": [
985
+ {
986
+ "type": "object",
987
+ "properties": {
988
+ "kind": {
989
+ "type": "string",
990
+ "const": "paged"
991
+ },
992
+ "pageIndex": {
993
+ "type": "string"
994
+ },
995
+ "pageSize": {
996
+ "type": "string"
997
+ },
998
+ "sortBy": {
999
+ "type": "string"
1000
+ },
1001
+ "sortDirection": {
1002
+ "type": "string"
1003
+ },
1004
+ "list": {
1005
+ "type": "string"
1006
+ },
1007
+ "total": {
1008
+ "type": "string"
1009
+ },
1010
+ "filter": {
1011
+ "type": "object",
1012
+ "properties": {
1013
+ "eq": {
1014
+ "type": "string"
1015
+ },
1016
+ "join": {
1017
+ "type": "string"
1018
+ }
1019
+ }
1020
+ }
1021
+ }
1022
+ },
1023
+ {
1024
+ "type": "object",
1025
+ "properties": {
1026
+ "kind": {
1027
+ "type": "string",
1028
+ "const": "options"
1029
+ },
1030
+ "toFunction": {
1031
+ "type": "string",
1032
+ "enum": [
1033
+ "ToOptions",
1034
+ "ToOptionsFromObject"
1035
+ ]
1036
+ },
1037
+ "toValue": {
1038
+ "type": "string"
1039
+ },
1040
+ "toDisplay": {
1041
+ "type": "string"
1042
+ }
1043
+ }
1044
+ },
1045
+ {
1046
+ "type": "object",
1047
+ "properties": {
1048
+ "kind": {
1049
+ "type": "string",
1050
+ "const": "resolve"
1051
+ },
1052
+ "value": {
1053
+ "type": "string"
1054
+ }
1055
+ }
1056
+ }
1057
+ ]
1058
+ }
1059
+ },
1060
+ "required": [
1061
+ "kind",
1062
+ "operationId"
1063
+ ]
1064
+ }
1065
+ ]
331
1066
  }
332
1067
  }
333
1068
  }