@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
@@ -1,12 +1,50 @@
1
- import { TypeImport } from '@rxap/ts-morph';
1
+ import { DataProperty, NormalizedDataProperty, NormalizedTypeImport, TypeImport } from '@rxap/ts-morph';
2
2
  import { Normalized } from '@rxap/utilities';
3
- import { FormDefinitionControl, NormalizedFormDefinitionControl } from './form-definition-control';
4
- export interface DataGridItem extends FormDefinitionControl {
5
- name: string;
6
- type?: string | TypeImport;
3
+ import { Control, NormalizedControl } from './form/control';
4
+ import { NormalizedPipeOption } from './pipe-option';
5
+ export declare enum DataGridKinds {
6
+ DEFAULT = "default",
7
+ LINK = "link"
8
+ }
9
+ export type DataGridItem = BaseDataGridItem | LinkDataGridItem;
10
+ export type NormalizedDataGridItem = NormalizedBaseDataGridItem | NormalizedLinkDataGridItem;
11
+ export interface BaseDataGridItem extends DataProperty {
7
12
  header?: string;
13
+ pipeList?: Array<string | TypeImport>;
14
+ formControl?: Omit<Control, 'name'> & {
15
+ name?: string;
16
+ };
17
+ importList?: TypeImport[];
18
+ hasCellDef?: boolean;
19
+ hasHeaderCellDef?: boolean;
20
+ hasEditCellDef?: boolean;
21
+ kind?: DataGridKinds;
22
+ template?: string;
23
+ }
24
+ export interface NormalizedBaseDataGridItem extends Readonly<Normalized<Omit<BaseDataGridItem, 'importList' | 'pipeList'>> & NormalizedDataProperty> {
25
+ hasCellDef: boolean;
26
+ hasHeaderCellDef: boolean;
27
+ hasEditCellDef: boolean;
28
+ kind: DataGridKinds;
29
+ formControl: NormalizedControl | null;
30
+ importList: ReadonlyArray<NormalizedTypeImport>;
31
+ pipeList: ReadonlyArray<NormalizedPipeOption>;
32
+ template: string;
33
+ handlebars: Handlebars.TemplateDelegate<{
34
+ item: NormalizedBaseDataGridItem;
35
+ }>;
36
+ }
37
+ export declare function NormalizeBaseDataGridItem(item: Readonly<BaseDataGridItem>): NormalizedBaseDataGridItem;
38
+ export interface LinkDataGridItem extends BaseDataGridItem {
39
+ kind: DataGridKinds.LINK;
40
+ target?: string;
8
41
  }
9
- export interface NormalizedDataGridItem extends Omit<Readonly<Normalized<DataGridItem>>, 'type' | 'importList'>, NormalizedFormDefinitionControl {
42
+ export interface NormalizedLinkDataGridItem extends NormalizedBaseDataGridItem {
43
+ kind: DataGridKinds.LINK;
44
+ target: string;
10
45
  }
11
- export declare function NormalizeDataGridItem(item: Readonly<DataGridItem>): NormalizedDataGridItem;
46
+ export declare function IsLinkDataGridItem(item: Readonly<DataGridItem>): item is Readonly<LinkDataGridItem>;
47
+ export declare function IsNormalLinkDataGridItem(item: Readonly<NormalizedDataGridItem>): item is Readonly<NormalizedLinkDataGridItem>;
48
+ export declare function NormalizeLinkDataGridItem(item: Readonly<LinkDataGridItem>): Readonly<NormalizedLinkDataGridItem>;
49
+ export declare function NormalizeDataGridItem(item: Readonly<DataGridItem>): Readonly<NormalizedDataGridItem>;
12
50
  export declare function NormalizeDataGridItemList(itemList?: Array<Readonly<DataGridItem>>): ReadonlyArray<NormalizedDataGridItem>;
@@ -1,12 +1,108 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.NormalizeDataGridItemList = exports.NormalizeDataGridItem = void 0;
4
- const form_definition_control_1 = require("./form-definition-control");
3
+ exports.NormalizeDataGridItemList = exports.NormalizeDataGridItem = exports.NormalizeLinkDataGridItem = exports.IsNormalLinkDataGridItem = exports.IsLinkDataGridItem = exports.NormalizeBaseDataGridItem = exports.DataGridKinds = void 0;
4
+ const schematics_1 = require("@angular-devkit/schematics");
5
+ const ts_morph_1 = require("@rxap/ts-morph");
6
+ const utilities_1 = require("@rxap/utilities");
7
+ const path_1 = require("path");
8
+ const control_1 = require("./form/control");
9
+ const load_handlebars_template_1 = require("./load-handlebars-template");
10
+ const pipe_option_1 = require("./pipe-option");
11
+ var DataGridKinds;
12
+ (function (DataGridKinds) {
13
+ DataGridKinds["DEFAULT"] = "default";
14
+ DataGridKinds["LINK"] = "link";
15
+ })(DataGridKinds || (exports.DataGridKinds = DataGridKinds = {}));
16
+ function guessDataGridItemKind(item) {
17
+ switch (item.name) {
18
+ case 'link':
19
+ return DataGridKinds.LINK;
20
+ }
21
+ return DataGridKinds.DEFAULT;
22
+ }
23
+ function NormalizeBaseDataGridItem(item) {
24
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
25
+ if (!item.name) {
26
+ throw new schematics_1.SchematicsException('The data grid item is required');
27
+ }
28
+ const formControl = item.formControl && Object.keys(item.formControl).length ? (0, control_1.NormalizeControl)(Object.assign({ name: item.name, type: item.type }, item.formControl)) : null;
29
+ let hasCellDef = (_a = item.hasCellDef) !== null && _a !== void 0 ? _a : false;
30
+ let hasHeaderCellDef = (_b = item.hasHeaderCellDef) !== null && _b !== void 0 ? _b : false;
31
+ let hasEditCellDef = (_c = item.hasEditCellDef) !== null && _c !== void 0 ? _c : false;
32
+ // if the hasHeaderCellDef is explicitly set to false then don't try to set it to true
33
+ if (item.header && item.hasHeaderCellDef !== false) {
34
+ hasHeaderCellDef = true;
35
+ }
36
+ // if the hasCellDef is explicitly set to false then don't try to set it to true
37
+ if (((_d = item.pipeList) === null || _d === void 0 ? void 0 : _d.length) && item.hasCellDef !== false) {
38
+ hasCellDef = true;
39
+ }
40
+ // if the hasEditCellDef is explicitly set to false then don't try to set it to true
41
+ if (formControl && item.hasEditCellDef !== false) {
42
+ hasEditCellDef = true;
43
+ }
44
+ // if the hasCellDef is explicitly set to false then don't try to set it to true
45
+ if (!hasCellDef && !hasEditCellDef && item.hasCellDef !== false) {
46
+ hasCellDef = true;
47
+ }
48
+ const importList = (_e = item.importList) !== null && _e !== void 0 ? _e : [];
49
+ const pipeList = (0, pipe_option_1.NormalizePipeOptionList)(item.pipeList);
50
+ (0, utilities_1.CoerceArrayItems)(importList, pipeList.map(pipe_option_1.PipeOptionToTypeImport), (a, b) => a.name === b.name && a.namedImport === b.namedImport);
51
+ if (formControl) {
52
+ (0, utilities_1.CoerceArrayItems)(importList, formControl.importList, (a, b) => a.name === b.name && a.namedImport === b.namedImport);
53
+ }
54
+ const kind = (_f = item.kind) !== null && _f !== void 0 ? _f : guessDataGridItemKind(item);
55
+ const template = (_g = item.template) !== null && _g !== void 0 ? _g : kind + '-data-grid-item.hbs';
56
+ const type = (_h = formControl === null || formControl === void 0 ? void 0 : formControl.type) !== null && _h !== void 0 ? _h : item.type;
57
+ const memberList = (_j = formControl === null || formControl === void 0 ? void 0 : formControl.memberList) !== null && _j !== void 0 ? _j : item.memberList;
58
+ switch (kind) {
59
+ case DataGridKinds.LINK:
60
+ (0, utilities_1.CoerceArrayItems)(importList, [{
61
+ name: 'MatTooltipModule',
62
+ moduleSpecifier: '@angular/material/tooltip'
63
+ }], (a, b) => a.name === b.name);
64
+ break;
65
+ }
66
+ return Object.freeze(Object.assign(Object.assign({}, (0, ts_morph_1.NormalizeDataProperty)(Object.assign(Object.assign({}, item), { type,
67
+ memberList }))), { template,
68
+ kind, handlebars: (0, load_handlebars_template_1.LoadHandlebarsTemplate)(template, (0, path_1.join)(__dirname, '..', 'schematics', 'data-grid-component', 'templates')), formControl, header: (_k = item.header) !== null && _k !== void 0 ? _k : (0, utilities_1.dasherize)(item.name).split('-').map(utilities_1.capitalize).join(' '), pipeList,
69
+ hasCellDef,
70
+ hasHeaderCellDef,
71
+ hasEditCellDef, importList: (0, ts_morph_1.NormalizeTypeImportList)(importList) }));
72
+ }
73
+ exports.NormalizeBaseDataGridItem = NormalizeBaseDataGridItem;
74
+ function IsLinkDataGridItem(item) {
75
+ return item.kind === DataGridKinds.LINK;
76
+ }
77
+ exports.IsLinkDataGridItem = IsLinkDataGridItem;
78
+ function IsNormalLinkDataGridItem(item) {
79
+ return item.kind === DataGridKinds.LINK;
80
+ }
81
+ exports.IsNormalLinkDataGridItem = IsNormalLinkDataGridItem;
82
+ function NormalizeLinkDataGridItem(item) {
83
+ var _a, _b;
84
+ const importList = (_a = item.importList) !== null && _a !== void 0 ? _a : [];
85
+ (0, utilities_1.CoerceArrayItems)(importList, [
86
+ {
87
+ name: 'MatButtonModule',
88
+ moduleSpecifier: '@angular/material/button',
89
+ },
90
+ {
91
+ name: 'MatIconModule',
92
+ moduleSpecifier: '@angular/material/icon',
93
+ },
94
+ ], (a, b) => a.name === b.name);
95
+ return Object.assign(Object.assign({}, NormalizeBaseDataGridItem(Object.assign(Object.assign({}, item), { hasCellDef: true, importList }))), { kind: DataGridKinds.LINK, target: (_b = item.target) !== null && _b !== void 0 ? _b : '_self' });
96
+ }
97
+ exports.NormalizeLinkDataGridItem = NormalizeLinkDataGridItem;
5
98
  function NormalizeDataGridItem(item) {
6
- var _a;
7
- let header = null;
8
- header = (_a = item.header) !== null && _a !== void 0 ? _a : null;
9
- return Object.freeze(Object.assign(Object.assign({}, (0, form_definition_control_1.NormalizeFormDefinitionControl)(item)), { header }));
99
+ switch (item.kind) {
100
+ case DataGridKinds.LINK:
101
+ return NormalizeLinkDataGridItem(item);
102
+ default:
103
+ case DataGridKinds.DEFAULT:
104
+ return NormalizeBaseDataGridItem(item);
105
+ }
10
106
  }
11
107
  exports.NormalizeDataGridItem = NormalizeDataGridItem;
12
108
  function NormalizeDataGridItemList(itemList) {
@@ -1 +1 @@
1
- {"version":3,"file":"data-grid-item.js","sourceRoot":"","sources":["../../../../../../packages/schematic/angular/src/lib/data-grid-item.ts"],"names":[],"mappings":";;;AASA,uEAImC;AAUnC,SAAgB,qBAAqB,CAAC,IAA4B;;IAChE,IAAI,MAAM,GAAkB,IAAI,CAAC;IACjC,MAAM,GAAG,MAAA,IAAI,CAAC,MAAM,mCAAI,IAAI,CAAC;IAC7B,OAAO,MAAM,CAAC,MAAM,iCACf,IAAA,wDAA8B,EAAC,IAAI,CAAC,KACvC,MAAM,IACN,CAAC;AACL,CAAC;AAPD,sDAOC;AAED,SAAgB,yBAAyB,CACvC,QAAwC;;IAExC,OAAO,MAAM,CAAC,MAAM,CAAC,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,GAAG,CAAC,qBAAqB,CAAC,mCAAI,EAAE,CAAC,CAAC;AACnE,CAAC;AAJD,8DAIC"}
1
+ {"version":3,"file":"data-grid-item.js","sourceRoot":"","sources":["../../../../../../packages/schematic/angular/src/lib/data-grid-item.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ export declare enum DataGridMode {
2
+ Form = "form",
3
+ Plain = "plain"
4
+ }
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DataGridMode = void 0;
4
+ var DataGridMode;
5
+ (function (DataGridMode) {
6
+ DataGridMode["Form"] = "form";
7
+ DataGridMode["Plain"] = "plain";
8
+ })(DataGridMode || (exports.DataGridMode = DataGridMode = {}));
9
+ //# sourceMappingURL=data-grid-mode.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"data-grid-mode.js","sourceRoot":"","sources":["../../../../../../packages/schematic/angular/src/lib/data-grid-mode.ts"],"names":[],"mappings":";;;AAAA,IAAY,YAGX;AAHD,WAAY,YAAY;IACtB,6BAAa,CAAA;IACb,+BAAe,CAAA;AACjB,CAAC,EAHW,YAAY,4BAAZ,YAAY,QAGvB"}
@@ -1,9 +1,8 @@
1
+ import { DataProperty, NormalizedDataProperty, NormalizedUpstreamOptions, UpstreamOptions } from '@rxap/ts-morph';
1
2
  import { Normalized } from '@rxap/utilities';
3
+ import { AccordionIdentifier, NormalizedAccordionIdentifier } from './accordion-identifier';
2
4
  import { DataGridItem, NormalizedDataGridItem } from './data-grid-item';
3
- export declare enum DataGridMode {
4
- Form = "form",
5
- Plain = "plain"
6
- }
5
+ import { DataGridMode } from './data-grid-mode';
7
6
  export interface DataGridOptions {
8
7
  itemList?: Array<DataGridItem>;
9
8
  mode?: DataGridMode;
@@ -11,10 +10,16 @@ export interface DataGridOptions {
11
10
  title?: string;
12
11
  subtitle?: string;
13
12
  inCard?: boolean;
13
+ upstream?: UpstreamOptions;
14
+ propertyList?: DataProperty[];
15
+ identifier?: AccordionIdentifier;
14
16
  }
15
- export interface NormalizedDataGridOptions extends Omit<Readonly<Normalized<DataGridOptions>>, 'itemList'> {
17
+ export interface NormalizedDataGridOptions extends Omit<Readonly<Normalized<DataGridOptions>>, 'itemList' | 'propertyList'> {
16
18
  mode: DataGridMode;
17
19
  itemList: ReadonlyArray<NormalizedDataGridItem>;
18
20
  isForm: boolean;
21
+ upstream: NormalizedUpstreamOptions | null;
22
+ propertyList: Array<NormalizedDataProperty>;
23
+ identifier: NormalizedAccordionIdentifier | null;
19
24
  }
20
25
  export declare function NormalizeDataGridOptions(options: Readonly<DataGridOptions>): Readonly<NormalizedDataGridOptions>;
@@ -1,28 +1,55 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.NormalizeDataGridOptions = exports.DataGridMode = void 0;
3
+ exports.NormalizeDataGridOptions = void 0;
4
+ const ts_morph_1 = require("@rxap/ts-morph");
5
+ const utilities_1 = require("@rxap/utilities");
6
+ const accordion_identifier_1 = require("./accordion-identifier");
4
7
  const data_grid_item_1 = require("./data-grid-item");
5
- var DataGridMode;
6
- (function (DataGridMode) {
7
- DataGridMode["Form"] = "form";
8
- DataGridMode["Plain"] = "plain";
9
- })(DataGridMode || (exports.DataGridMode = DataGridMode = {}));
8
+ const data_grid_mode_1 = require("./data-grid-mode");
10
9
  function IsDataGridMode(value) {
11
- return Object.values(DataGridMode).includes(value);
10
+ return Object.values(data_grid_mode_1.DataGridMode).includes(value);
12
11
  }
13
12
  function NormalizeDataGridOptions(options) {
14
- var _a, _b, _c;
15
- const { itemList, collection, } = options;
13
+ var _a, _b, _c, _d;
14
+ const { collection, } = options;
16
15
  let { mode } = options;
17
- mode = IsDataGridMode(mode) ? mode : DataGridMode.Plain;
16
+ mode = IsDataGridMode(mode) ? mode : data_grid_mode_1.DataGridMode.Plain;
17
+ const itemList = (0, data_grid_item_1.NormalizeDataGridItemList)(options.itemList);
18
+ const propertyList = (_a = options.propertyList) !== null && _a !== void 0 ? _a : [];
19
+ (0, utilities_1.CoerceArrayItems)(propertyList,
20
+ // call the DeleteEmptyProperties function to remove any property that is empty (null, undefined, empty string)
21
+ // so that if this property is already defined in the propertyList it will not overwrite a value with an empty value
22
+ itemList.map(item => (0, utilities_1.DeleteEmptyProperties)({
23
+ name: item.name,
24
+ type: item.type,
25
+ isOptional: item.isOptional,
26
+ isArray: item.isArray,
27
+ source: item.source,
28
+ memberList: item.memberList,
29
+ })), { compareTo: (a, b) => a.name === b.name });
30
+ (0, utilities_1.CoerceArrayItems)(propertyList, itemList
31
+ .filter(item => item.formControl)
32
+ .map(item => item.formControl)
33
+ // call the DeleteEmptyProperties function to remove any property that is empty (null, undefined, empty string)
34
+ // so that if this property is already defined in the propertyList it will not overwrite a value with an empty value
35
+ .map(control => (0, utilities_1.DeleteEmptyProperties)({
36
+ name: control.name,
37
+ type: control.type,
38
+ isArray: control.isArray,
39
+ isOptional: control.isOptional,
40
+ source: control.source,
41
+ })), { compareTo: (a, b) => a.name === b.name, merge: true });
18
42
  return Object.freeze({
19
- itemList: (0, data_grid_item_1.NormalizeDataGridItemList)(itemList),
43
+ itemList,
20
44
  mode,
21
45
  collection: collection !== null && collection !== void 0 ? collection : false,
22
- title: (_a = options.title) !== null && _a !== void 0 ? _a : null,
23
- subtitle: (_b = options.subtitle) !== null && _b !== void 0 ? _b : null,
24
- inCard: (_c = options.inCard) !== null && _c !== void 0 ? _c : true,
25
- isForm: mode === DataGridMode.Form,
46
+ title: (_b = options.title) !== null && _b !== void 0 ? _b : null,
47
+ subtitle: (_c = options.subtitle) !== null && _c !== void 0 ? _c : null,
48
+ inCard: (_d = options.inCard) !== null && _d !== void 0 ? _d : true,
49
+ isForm: mode === data_grid_mode_1.DataGridMode.Form || itemList.some(item => item.formControl),
50
+ upstream: (0, ts_morph_1.NormalizeUpstreamOptions)(options.upstream),
51
+ propertyList: (0, ts_morph_1.NormalizeDataPropertyList)(propertyList),
52
+ identifier: (0, accordion_identifier_1.NormalizeAccordionIdentifier)(options.identifier),
26
53
  });
27
54
  }
28
55
  exports.NormalizeDataGridOptions = NormalizeDataGridOptions;
@@ -1 +1 @@
1
- {"version":3,"file":"data-grid-options.js","sourceRoot":"","sources":["../../../../../../packages/schematic/angular/src/lib/data-grid-options.ts"],"names":[],"mappings":";;;AACA,qDAI0B;AAE1B,IAAY,YAGX;AAHD,WAAY,YAAY;IACtB,6BAAa,CAAA;IACb,+BAAe,CAAA;AACjB,CAAC,EAHW,YAAY,4BAAZ,YAAY,QAGvB;AAED,SAAS,cAAc,CAAC,KAAU;IAChC,OAAO,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;AACrD,CAAC;AAiBD,SAAgB,wBAAwB,CAAC,OAAkC;;IACzE,MAAM,EACJ,QAAQ,EACR,UAAU,GACX,GAAG,OAAO,CAAC;IACZ,IAAI,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC;IACvB,IAAI,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC,KAAK,CAAC;IACxD,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,QAAQ,EAAE,IAAA,0CAAyB,EAAC,QAAQ,CAAC;QAC7C,IAAI;QACJ,UAAU,EAAE,UAAU,aAAV,UAAU,cAAV,UAAU,GAAI,KAAK;QAC/B,KAAK,EAAE,MAAA,OAAO,CAAC,KAAK,mCAAI,IAAI;QAC5B,QAAQ,EAAE,MAAA,OAAO,CAAC,QAAQ,mCAAI,IAAI;QAClC,MAAM,EAAE,MAAA,OAAO,CAAC,MAAM,mCAAI,IAAI;QAC9B,MAAM,EAAE,IAAI,KAAK,YAAY,CAAC,IAAI;KACnC,CAAC,CAAC;AACL,CAAC;AAhBD,4DAgBC"}
1
+ {"version":3,"file":"data-grid-options.js","sourceRoot":"","sources":["../../../../../../packages/schematic/angular/src/lib/data-grid-options.ts"],"names":[],"mappings":";;;AAAA,6CAOwB;AACxB,+CAIyB;AACzB,iEAIgC;AAChC,qDAI0B;AAC1B,qDAAgD;AAEhD,SAAS,cAAc,CAAC,KAAU;IAChC,OAAO,MAAM,CAAC,MAAM,CAAC,6BAAY,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;AACrD,CAAC;AAuBD,SAAgB,wBAAwB,CAAC,OAAkC;;IACzE,MAAM,EACJ,UAAU,GACX,GAAG,OAAO,CAAC;IACZ,IAAI,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC;IACvB,IAAI,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,6BAAY,CAAC,KAAK,CAAC;IACxD,MAAM,QAAQ,GAAG,IAAA,0CAAyB,EAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IAC7D,MAAM,YAAY,GAAG,MAAA,OAAO,CAAC,YAAY,mCAAI,EAAE,CAAC;IAChD,IAAA,4BAAgB,EACd,YAAY;IACZ,+GAA+G;IAC/G,oHAAoH;IACpH,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAA,iCAAqB,EAAC;QACzC,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,UAAU,EAAE,IAAI,CAAC,UAAU;QAC3B,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,UAAU,EAAE,IAAI,CAAC,UAAU;KAC5B,CAAC,CAAC,EACH,EAAE,SAAS,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI,EAAE,CAC3C,CAAC;IACF,IAAA,4BAAgB,EACd,YAAY,EACZ,QAAQ;SACL,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC;SAChC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,WAAY,CAAC;QAC/B,+GAA+G;QAC/G,oHAAoH;SACnH,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,IAAA,iCAAqB,EAAC;QACpC,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,UAAU,EAAE,OAAO,CAAC,UAAU;QAC9B,MAAM,EAAE,OAAO,CAAC,MAAM;KACvB,CAAC,CAAC,EACL,EAAE,SAAS,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CACxD,CAAC;IACF,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,QAAQ;QACR,IAAI;QACJ,UAAU,EAAE,UAAU,aAAV,UAAU,cAAV,UAAU,GAAI,KAAK;QAC/B,KAAK,EAAE,MAAA,OAAO,CAAC,KAAK,mCAAI,IAAI;QAC5B,QAAQ,EAAE,MAAA,OAAO,CAAC,QAAQ,mCAAI,IAAI;QAClC,MAAM,EAAE,MAAA,OAAO,CAAC,MAAM,mCAAI,IAAI;QAC9B,MAAM,EAAE,IAAI,KAAK,6BAAY,CAAC,IAAI,IAAI,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC;QAC7E,QAAQ,EAAE,IAAA,mCAAwB,EAAC,OAAO,CAAC,QAAQ,CAAC;QACpD,YAAY,EAAE,IAAA,oCAAyB,EAAC,YAAY,CAAC;QACrD,UAAU,EAAE,IAAA,mDAA4B,EAAC,OAAO,CAAC,UAAU,CAAC;KAC7D,CAAC,CAAC;AACL,CAAC;AAlDD,4DAkDC"}
@@ -0,0 +1,31 @@
1
+ import { DataProperty, NormalizedDataProperty, NormalizedTypeImport, TypeImport } from '@rxap/ts-morph';
2
+ import { Normalized } from '@rxap/utilities';
3
+ import Handlebars from 'handlebars';
4
+ export declare enum AbstractControlRolls {
5
+ CONTROL = "control",
6
+ GROUP = "group",
7
+ ARRAY = "array"
8
+ }
9
+ export interface AbstractControl extends DataProperty {
10
+ isDisabled?: boolean;
11
+ validatorList?: string[];
12
+ importList?: TypeImport[];
13
+ state?: string;
14
+ isRequired?: boolean;
15
+ role?: AbstractControlRolls;
16
+ isReadonly?: boolean;
17
+ kind?: string;
18
+ template?: string;
19
+ }
20
+ export interface NormalizedAbstractControl extends Readonly<Normalized<Omit<AbstractControl, keyof NormalizedDataProperty>>>, NormalizedDataProperty {
21
+ importList: NormalizedTypeImport[];
22
+ handlebars: Handlebars.TemplateDelegate<{
23
+ control: NormalizedAbstractControl;
24
+ }>;
25
+ role: AbstractControlRolls;
26
+ }
27
+ export declare function AbstractControlToDataProperty(control: NormalizedAbstractControl): NormalizedDataProperty;
28
+ export declare function AbstractControlToDataProperty(control: AbstractControl): DataProperty;
29
+ export declare function NormalizeAbstractControl<Kind extends string>(control: AbstractControl, kind: Kind, importList?: TypeImport[], validatorList?: string[], defaultType?: TypeImport | string, defaultIsArray?: boolean): NormalizedAbstractControl & {
30
+ kind: Kind;
31
+ };
@@ -0,0 +1,48 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.NormalizeAbstractControl = exports.AbstractControlToDataProperty = exports.AbstractControlRolls = void 0;
4
+ const schematics_1 = require("@angular-devkit/schematics");
5
+ const ts_morph_1 = require("@rxap/ts-morph");
6
+ const utilities_1 = require("@rxap/utilities");
7
+ const path_1 = require("path");
8
+ const load_handlebars_template_1 = require("../load-handlebars-template");
9
+ var AbstractControlRolls;
10
+ (function (AbstractControlRolls) {
11
+ AbstractControlRolls["CONTROL"] = "control";
12
+ AbstractControlRolls["GROUP"] = "group";
13
+ AbstractControlRolls["ARRAY"] = "array";
14
+ })(AbstractControlRolls || (exports.AbstractControlRolls = AbstractControlRolls = {}));
15
+ function AbstractControlToDataProperty(control) {
16
+ return {
17
+ name: control.name,
18
+ type: control.type,
19
+ isArray: control.isArray,
20
+ isOptional: control.isOptional,
21
+ source: control.source,
22
+ memberList: control.memberList,
23
+ };
24
+ }
25
+ exports.AbstractControlToDataProperty = AbstractControlToDataProperty;
26
+ function NormalizeAbstractControl(control, kind, importList = [], validatorList = [], defaultType = 'unknown', defaultIsArray = false) {
27
+ var _a, _b, _c, _d, _e, _f, _g, _h;
28
+ if (!control.name) {
29
+ throw new schematics_1.SchematicsException('The control name is required');
30
+ }
31
+ const role = (_a = control.role) !== null && _a !== void 0 ? _a : AbstractControlRolls.CONTROL;
32
+ const isReadonly = (_b = control.isReadonly) !== null && _b !== void 0 ? _b : false;
33
+ const isDisabled = (_c = control.isDisabled) !== null && _c !== void 0 ? _c : false;
34
+ (0, utilities_1.CoerceArrayItems)(validatorList, (_d = control.validatorList) !== null && _d !== void 0 ? _d : []);
35
+ const template = (_e = control.template) !== null && _e !== void 0 ? _e : `${kind}-form-${role}.hbs`;
36
+ (0, utilities_1.CoerceArrayItems)(importList, (_f = control.importList) !== null && _f !== void 0 ? _f : [], (a, b) => a === b);
37
+ const state = (_g = control.state) !== null && _g !== void 0 ? _g : null;
38
+ const isRequired = (_h = control.isRequired) !== null && _h !== void 0 ? _h : false;
39
+ return Object.freeze(Object.assign(Object.assign({}, (0, ts_morph_1.NormalizeDataProperty)(control, defaultType, defaultIsArray)), { isRequired,
40
+ state,
41
+ kind,
42
+ template,
43
+ isReadonly,
44
+ isDisabled,
45
+ validatorList, importList: (0, ts_morph_1.NormalizeTypeImportList)(importList), handlebars: (0, load_handlebars_template_1.LoadHandlebarsTemplate)(template, (0, path_1.join)(__dirname, '..', '..', 'schematics', 'form', 'templates')), role }));
46
+ }
47
+ exports.NormalizeAbstractControl = NormalizeAbstractControl;
48
+ //# sourceMappingURL=abstract-control.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"abstract-control.js","sourceRoot":"","sources":["../../../../../../../packages/schematic/angular/src/lib/form/abstract-control.ts"],"names":[],"mappings":";;;AAAA,2DAAiE;AACjE,6CAOwB;AACxB,+CAGyB;AAEzB,+BAA4B;AAC5B,0EAAqE;AAErE,IAAY,oBAIX;AAJD,WAAY,oBAAoB;IAC9B,2CAAmB,CAAA;IACnB,uCAAe,CAAA;IACf,uCAAe,CAAA;AACjB,CAAC,EAJW,oBAAoB,oCAApB,oBAAoB,QAI/B;AAsBD,SAAgB,6BAA6B,CAAC,OAAoD;IAChG,OAAO;QACL,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,UAAU,EAAE,OAAO,CAAC,UAAU;QAC9B,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,UAAU,EAAE,OAAO,CAAC,UAAU;KAC/B,CAAC;AACJ,CAAC;AATD,sEASC;AAED,SAAgB,wBAAwB,CACtC,OAAwB,EACxB,IAAU,EACV,aAA2B,EAAE,EAC7B,gBAA0B,EAAE,EAC5B,cAAmC,SAAS,EAC5C,cAAc,GAAG,KAAK;;IAEtB,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE;QACjB,MAAM,IAAI,gCAAmB,CAAC,8BAA8B,CAAC,CAAC;KAC/D;IACD,MAAM,IAAI,GAAG,MAAA,OAAO,CAAC,IAAI,mCAAI,oBAAoB,CAAC,OAAO,CAAC;IAC1D,MAAM,UAAU,GAAY,MAAA,OAAO,CAAC,UAAU,mCAAI,KAAK,CAAC;IACxD,MAAM,UAAU,GAAY,MAAA,OAAO,CAAC,UAAU,mCAAI,KAAK,CAAC;IACxD,IAAA,4BAAgB,EAAC,aAAa,EAAE,MAAA,OAAO,CAAC,aAAa,mCAAI,EAAE,CAAC,CAAC;IAC7D,MAAM,QAAQ,GAAG,MAAA,OAAO,CAAC,QAAQ,mCAAI,GAAI,IAAK,SAAU,IAAK,MAAM,CAAC;IACpE,IAAA,4BAAgB,EAAC,UAAU,EAAE,MAAA,OAAO,CAAC,UAAU,mCAAI,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;IAC1E,MAAM,KAAK,GAAkB,MAAA,OAAO,CAAC,KAAK,mCAAI,IAAI,CAAC;IACnD,MAAM,UAAU,GAAY,MAAA,OAAO,CAAC,UAAU,mCAAI,KAAK,CAAC;IACxD,OAAO,MAAM,CAAC,MAAM,iCACf,IAAA,gCAAqB,EAAC,OAAO,EAAE,WAAW,EAAE,cAAc,CAAC,KAC9D,UAAU;QACV,KAAK;QACL,IAAI;QACJ,QAAQ;QACR,UAAU;QACV,UAAU;QACV,aAAa,EACb,UAAU,EAAE,IAAA,kCAAuB,EAAC,UAAU,CAAC,EAC/C,UAAU,EAAE,IAAA,iDAAsB,EAAC,QAAQ,EAAE,IAAA,WAAI,EAAC,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC,EAC5G,IAAI,IACJ,CAAC;AACL,CAAC;AAhCD,4DAgCC"}
@@ -0,0 +1,18 @@
1
+ import { TypeImport } from '@rxap/ts-morph';
2
+ import { Normalized } from '@rxap/utilities';
3
+ import { AbstractControl, AbstractControlRolls, NormalizedAbstractControl } from '../abstract-control';
4
+ import { Control, NormalizedControl } from '../control';
5
+ import { FormArrayKind } from './form-array-kind';
6
+ export interface BaseFormArray extends AbstractControl {
7
+ controlList?: Control[];
8
+ kind?: FormArrayKind;
9
+ role: AbstractControlRolls.ARRAY;
10
+ legend?: string;
11
+ groupLegend?: string;
12
+ }
13
+ export interface NormalizedBaseFormArray extends Readonly<Normalized<Omit<BaseFormArray, keyof NormalizedAbstractControl | 'controlList'>>>, NormalizedAbstractControl {
14
+ controlList: ReadonlyArray<NormalizedControl>;
15
+ kind: FormArrayKind.DEFAULT;
16
+ role: AbstractControlRolls.ARRAY;
17
+ }
18
+ export declare function NormalizeBaseFormArray(array: BaseFormArray, importList?: TypeImport[], validatorList?: string[], defaultType?: TypeImport | string, defaultIsArray?: boolean): NormalizedBaseFormArray;
@@ -0,0 +1,41 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.NormalizeBaseFormArray = void 0;
4
+ const utilities_1 = require("@rxap/utilities");
5
+ const abstract_control_1 = require("../abstract-control");
6
+ const control_1 = require("../control");
7
+ const form_array_kind_1 = require("./form-array-kind");
8
+ function NormalizeBaseFormArray(array, importList = [], validatorList = [], defaultType = 'unknown', defaultIsArray = false) {
9
+ var _a, _b, _c;
10
+ (0, utilities_1.CoerceArrayItems)(importList, [
11
+ {
12
+ name: 'ReactiveFormsModule',
13
+ moduleSpecifier: '@angular/forms',
14
+ },
15
+ {
16
+ name: 'ForFormArrayItemsDirective',
17
+ moduleSpecifier: '@rxap/form-system',
18
+ },
19
+ {
20
+ name: 'FormArrayRemovableDirective',
21
+ moduleSpecifier: '@rxap/form-system',
22
+ },
23
+ {
24
+ name: 'FormArrayItemRemoveButtonDirective',
25
+ moduleSpecifier: '@rxap/form-system',
26
+ },
27
+ {
28
+ name: 'FormArrayItemRestoreButtonDirective',
29
+ moduleSpecifier: '@rxap/form-system',
30
+ },
31
+ {
32
+ name: 'FormArrayAddItemButtonDirective',
33
+ moduleSpecifier: '@rxap/form-system',
34
+ },
35
+ ], (a, b) => a.name === b.name);
36
+ const kind = (_a = array.kind) !== null && _a !== void 0 ? _a : form_array_kind_1.FormArrayKind.DEFAULT;
37
+ const controlList = (0, control_1.NormalizeControlList)(array.controlList);
38
+ return Object.assign(Object.assign({}, (0, abstract_control_1.NormalizeAbstractControl)(array, kind, importList, validatorList, defaultType, defaultIsArray)), { role: abstract_control_1.AbstractControlRolls.ARRAY, controlList, isArray: true, memberList: controlList.map(control => (0, abstract_control_1.AbstractControlToDataProperty)(control)), legend: (_b = array.legend) !== null && _b !== void 0 ? _b : null, groupLegend: (_c = array.groupLegend) !== null && _c !== void 0 ? _c : null });
39
+ }
40
+ exports.NormalizeBaseFormArray = NormalizeBaseFormArray;
41
+ //# sourceMappingURL=base-form-array.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base-form-array.js","sourceRoot":"","sources":["../../../../../../../../packages/schematic/angular/src/lib/form/array/base-form-array.ts"],"names":[],"mappings":";;;AACA,+CAGyB;AACzB,0DAM6B;AAC7B,wCAIoB;AACpB,uDAAkD;AAgBlD,SAAgB,sBAAsB,CACpC,KAAoB,EACpB,aAA2B,EAAE,EAC7B,gBAA0B,EAAE,EAC5B,cAAmC,SAAS,EAC5C,cAAc,GAAG,KAAK;;IAEtB,IAAA,4BAAgB,EAAC,UAAU,EAAE;QAC3B;YACE,IAAI,EAAE,qBAAqB;YAC3B,eAAe,EAAE,gBAAgB;SAClC;QACD;YACE,IAAI,EAAE,4BAA4B;YAClC,eAAe,EAAE,mBAAmB;SACrC;QACD;YACE,IAAI,EAAE,6BAA6B;YACnC,eAAe,EAAE,mBAAmB;SACrC;QACD;YACE,IAAI,EAAE,oCAAoC;YAC1C,eAAe,EAAE,mBAAmB;SACrC;QACD;YACE,IAAI,EAAE,qCAAqC;YAC3C,eAAe,EAAE,mBAAmB;SACrC;QACD;YACE,IAAI,EAAE,iCAAiC;YACvC,eAAe,EAAE,mBAAmB;SACrC;KACF,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC;IAChC,MAAM,IAAI,GAAG,MAAA,KAAK,CAAC,IAAI,mCAAI,+BAAa,CAAC,OAAO,CAAC;IACjD,MAAM,WAAW,GAAG,IAAA,8BAAoB,EAAC,KAAK,CAAC,WAAW,CAAC,CAAC;IAC5D,uCACK,IAAA,2CAAwB,EAAC,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,aAAa,EAAE,WAAW,EAAE,cAAc,CAAC,KAChG,IAAI,EAAE,uCAAoB,CAAC,KAAK,EAChC,WAAW,EACX,OAAO,EAAE,IAAI,EACb,UAAU,EAAE,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,IAAA,gDAA6B,EAAC,OAAO,CAAC,CAAC,EAC9E,MAAM,EAAE,MAAA,KAAK,CAAC,MAAM,mCAAI,IAAI,EAC5B,WAAW,EAAE,MAAA,KAAK,CAAC,WAAW,mCAAI,IAAI,IACtC;AACJ,CAAC;AA5CD,wDA4CC"}
@@ -0,0 +1,3 @@
1
+ export declare enum FormArrayKind {
2
+ DEFAULT = "default"
3
+ }
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.FormArrayKind = void 0;
4
+ var FormArrayKind;
5
+ (function (FormArrayKind) {
6
+ FormArrayKind["DEFAULT"] = "default";
7
+ })(FormArrayKind || (exports.FormArrayKind = FormArrayKind = {}));
8
+ //# sourceMappingURL=form-array-kind.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"form-array-kind.js","sourceRoot":"","sources":["../../../../../../../../packages/schematic/angular/src/lib/form/array/form-array-kind.ts"],"names":[],"mappings":";;;AAAA,IAAY,aAEX;AAFD,WAAY,aAAa;IACvB,oCAAmB,CAAA;AACrB,CAAC,EAFW,aAAa,6BAAb,aAAa,QAExB"}
@@ -0,0 +1,12 @@
1
+ import { AbstractControlRolls } from '../abstract-control';
2
+ import { Control, NormalizedControl } from '../control';
3
+ import { BaseFormArray, NormalizedBaseFormArray } from './base-form-array';
4
+ export type FormArray = {
5
+ role: AbstractControlRolls.ARRAY;
6
+ } & (BaseFormArray);
7
+ export type NormalizedFormArray = {
8
+ role: AbstractControlRolls.ARRAY;
9
+ } & (NormalizedBaseFormArray);
10
+ export declare function NormalizeFormArray(array: FormArray): NormalizedFormArray;
11
+ export declare function IsFormArray(control: Control): control is FormArray;
12
+ export declare function IsNormalizedFormArray(control: NormalizedControl): control is NormalizedFormArray;
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.IsNormalizedFormArray = exports.IsFormArray = exports.NormalizeFormArray = void 0;
4
+ const abstract_control_1 = require("../abstract-control");
5
+ const base_form_array_1 = require("./base-form-array");
6
+ function NormalizeFormArray(array) {
7
+ return (0, base_form_array_1.NormalizeBaseFormArray)(array);
8
+ }
9
+ exports.NormalizeFormArray = NormalizeFormArray;
10
+ function IsFormArray(control) {
11
+ return control.role === abstract_control_1.AbstractControlRolls.ARRAY;
12
+ }
13
+ exports.IsFormArray = IsFormArray;
14
+ function IsNormalizedFormArray(control) {
15
+ return control.role === abstract_control_1.AbstractControlRolls.ARRAY;
16
+ }
17
+ exports.IsNormalizedFormArray = IsNormalizedFormArray;
18
+ //# sourceMappingURL=form-array.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"form-array.js","sourceRoot":"","sources":["../../../../../../../../packages/schematic/angular/src/lib/form/array/form-array.ts"],"names":[],"mappings":";;;AAAA,0DAA2D;AAK3D,uDAI2B;AAM3B,SAAgB,kBAAkB,CAChC,KAAgB;IAEhB,OAAO,IAAA,wCAAsB,EAAC,KAAK,CAAC,CAAC;AACvC,CAAC;AAJD,gDAIC;AAED,SAAgB,WAAW,CAAC,OAAgB;IAC1C,OAAO,OAAO,CAAC,IAAI,KAAK,uCAAoB,CAAC,KAAK,CAAC;AACrD,CAAC;AAFD,kCAEC;AAED,SAAgB,qBAAqB,CAAC,OAA0B;IAC9D,OAAO,OAAO,CAAC,IAAI,KAAK,uCAAoB,CAAC,KAAK,CAAC;AACrD,CAAC;AAFD,sDAEC"}
@@ -0,0 +1,3 @@
1
+ import { ClassDeclaration } from 'ts-morph';
2
+ import { NormalizedControl } from './control';
3
+ export declare function CoerceControlComponentImports(classDeclaration: ClassDeclaration, controlList: ReadonlyArray<NormalizedControl>): void;
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CoerceControlComponentImports = void 0;
4
+ const ts_morph_1 = require("@rxap/ts-morph");
5
+ const form_array_1 = require("./array/form-array");
6
+ const form_group_1 = require("./group/form-group");
7
+ function CoerceControlComponentImports(classDeclaration, controlList) {
8
+ for (const control of controlList) {
9
+ for (const componentImport of control.importList) {
10
+ (0, ts_morph_1.CoerceComponentImport)(classDeclaration, componentImport);
11
+ }
12
+ if ((0, form_array_1.IsNormalizedFormArray)(control) || (0, form_group_1.IsNormalizedFormGroup)(control)) {
13
+ CoerceControlComponentImports(classDeclaration, control.controlList);
14
+ }
15
+ }
16
+ }
17
+ exports.CoerceControlComponentImports = CoerceControlComponentImports;
18
+ //# sourceMappingURL=coerce-control-component-imports.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"coerce-control-component-imports.js","sourceRoot":"","sources":["../../../../../../../packages/schematic/angular/src/lib/form/coerce-control-component-imports.ts"],"names":[],"mappings":";;;AAAA,6CAAuD;AAEvD,mDAA2D;AAE3D,mDAA2D;AAE3D,SAAgB,6BAA6B,CAAC,gBAAkC,EAAE,WAA6C;IAC7H,KAAK,MAAM,OAAO,IAAI,WAAW,EAAE;QACjC,KAAK,MAAM,eAAe,IAAI,OAAO,CAAC,UAAU,EAAE;YAChD,IAAA,gCAAqB,EAAC,gBAAgB,EAAE,eAAe,CAAC,CAAC;SAC1D;QACD,IAAI,IAAA,kCAAqB,EAAC,OAAO,CAAC,IAAI,IAAA,kCAAqB,EAAC,OAAO,CAAC,EAAE;YACpE,6BAA6B,CAAC,gBAAgB,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;SACtE;KACF;AACH,CAAC;AATD,sEASC"}
@@ -0,0 +1,9 @@
1
+ import { NormalizedBaseFormControl } from './base-form-control';
2
+ import { FormControlKinds } from './form-control-kind';
3
+ import { NormalizedTableSelectFormControl, TableSelectFormControl } from './table-select-form-control';
4
+ export type AutocompleteTableSelectFormControl = TableSelectFormControl;
5
+ export interface NormalizedAutocompleteTableSelectFormControl extends Omit<NormalizedTableSelectFormControl, 'kind'> {
6
+ kind: FormControlKinds.AUTOCOMPLETE_TABLE_SELECT;
7
+ }
8
+ export declare function IsNormalizedAutocompleteTableSelectFormControl(template: NormalizedBaseFormControl): template is NormalizedAutocompleteTableSelectFormControl;
9
+ export declare function NormalizeAutocompleteTableSelectFormControl(control: AutocompleteTableSelectFormControl): NormalizedAutocompleteTableSelectFormControl;