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

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 (242) hide show
  1. package/CHANGELOG.md +146 -0
  2. package/README.md +1 -1
  3. package/package.json +11 -9
  4. package/src/lib/accordion-header.d.ts +5 -0
  5. package/src/lib/accordion-header.js +9 -3
  6. package/src/lib/accordion-header.js.map +1 -1
  7. package/src/lib/accordion-identifier.d.ts +4 -0
  8. package/src/lib/accordion-identifier.js.map +1 -1
  9. package/src/lib/accordion-item.d.ts +25 -17
  10. package/src/lib/accordion-item.js +72 -33
  11. package/src/lib/accordion-item.js.map +1 -1
  12. package/src/lib/accordion-itme-kinds.d.ts +8 -0
  13. package/src/lib/accordion-itme-kinds.js +16 -0
  14. package/src/lib/accordion-itme-kinds.js.map +1 -0
  15. package/src/lib/coerce-accordion-component.js +7 -3
  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 +5 -2
  20. package/src/lib/coerce-form-component.js.map +1 -1
  21. package/src/lib/coerce-minimum-table-component.js +9 -3
  22. package/src/lib/coerce-minimum-table-component.js.map +1 -1
  23. package/src/lib/coerce-tree-table-component.js +16 -0
  24. package/src/lib/coerce-tree-table-component.js.map +1 -1
  25. package/src/lib/data-grid-item.d.ts +46 -11
  26. package/src/lib/data-grid-item.js +80 -5
  27. package/src/lib/data-grid-item.js.map +1 -1
  28. package/src/lib/data-grid-mode.d.ts +4 -0
  29. package/src/lib/data-grid-mode.js +9 -0
  30. package/src/lib/data-grid-mode.js.map +1 -0
  31. package/src/lib/data-grid-options.d.ts +12 -5
  32. package/src/lib/data-grid-options.js +43 -13
  33. package/src/lib/data-grid-options.js.map +1 -1
  34. package/src/lib/form/generate-form-template.d.ts +5 -0
  35. package/src/lib/form/generate-form-template.js +12 -0
  36. package/src/lib/form/generate-form-template.js.map +1 -0
  37. package/src/lib/form-component-control.d.ts +2 -6
  38. package/src/lib/form-component-control.js.map +1 -1
  39. package/src/lib/form-control.d.ts +136 -0
  40. package/src/lib/form-control.js +265 -0
  41. package/src/lib/form-control.js.map +1 -0
  42. package/src/lib/form-definition-control.d.ts +3 -57
  43. package/src/lib/form-definition-control.js +18 -144
  44. package/src/lib/form-definition-control.js.map +1 -1
  45. package/src/lib/load-handlebars-template.d.ts +4 -0
  46. package/src/lib/load-handlebars-template.js +28 -0
  47. package/src/lib/load-handlebars-template.js.map +1 -0
  48. package/src/lib/merge-with-column-list.js +3 -1
  49. package/src/lib/merge-with-column-list.js.map +1 -1
  50. package/src/lib/minimum-table-component-options.d.ts +12 -2
  51. package/src/lib/minimum-table-component-options.js +14 -17
  52. package/src/lib/minimum-table-component-options.js.map +1 -1
  53. package/src/lib/minimum-table-options.d.ts +1 -1
  54. package/src/lib/minimum-table-options.js +2 -2
  55. package/src/lib/minimum-table-options.js.map +1 -1
  56. package/src/lib/pipe-option.d.ts +11 -0
  57. package/src/lib/pipe-option.js +75 -0
  58. package/src/lib/pipe-option.js.map +1 -0
  59. package/src/lib/table/table-filter-column-rule.d.ts +13 -0
  60. package/src/lib/table/table-filter-column-rule.js +88 -0
  61. package/src/lib/table/table-filter-column-rule.js.map +1 -0
  62. package/src/lib/table-column.d.ts +19 -9
  63. package/src/lib/table-column.js +132 -113
  64. package/src/lib/table-column.js.map +1 -1
  65. package/src/lib/table-options.d.ts +1 -1
  66. package/src/lib/tree-table-options.d.ts +1 -1
  67. package/src/lib/use-pick-from-table-interface-as-form-type.d.ts +10 -0
  68. package/src/lib/use-pick-from-table-interface-as-form-type.js +32 -0
  69. package/src/lib/use-pick-from-table-interface-as-form-type.js.map +1 -0
  70. package/src/lib/value-option.d.ts +12 -0
  71. package/src/lib/value-option.js +66 -0
  72. package/src/lib/value-option.js.map +1 -0
  73. package/src/schema.json +2368 -0
  74. package/src/schematic-input.schema.json +607 -0
  75. package/src/schematics/accordion/accordion-component/files/component/__componentName__.component.html.hbs +25 -0
  76. package/src/schematics/accordion/accordion-component/index.d.ts +5 -2
  77. package/src/schematics/accordion/accordion-component/index.js +56 -122
  78. package/src/schematics/accordion/accordion-component/index.js.map +1 -1
  79. package/src/schematics/accordion/accordion-component/schema.d.ts +6 -0
  80. package/src/schematics/accordion/accordion-component/schema.json +314 -132
  81. package/src/schematics/accordion/accordion-component/template.schema.json +105 -0
  82. package/src/schematics/accordion/accordion-item-component/index.d.ts +9 -4
  83. package/src/schematics/accordion/accordion-item-component/index.js +112 -86
  84. package/src/schematics/accordion/accordion-item-component/index.js.map +1 -1
  85. package/src/schematics/accordion/accordion-item-component/schema.d.ts +2 -2
  86. package/src/schematics/accordion/accordion-item-component/schema.json +282 -70
  87. package/src/schematics/accordion/accordion-item-component/template.schema.json +32 -0
  88. package/src/schematics/accordion/item/accordion-item-data-grid-component/index.d.ts +1 -1
  89. package/src/schematics/accordion/item/accordion-item-data-grid-component/index.js +35 -51
  90. package/src/schematics/accordion/item/accordion-item-data-grid-component/index.js.map +1 -1
  91. package/src/schematics/accordion/item/accordion-item-data-grid-component/schema.d.ts +1 -1
  92. package/src/schematics/accordion/item/accordion-item-data-grid-component/schema.json +454 -85
  93. package/src/schematics/accordion/item/accordion-item-data-grid-component/template.schema.json +31 -0
  94. package/src/schematics/accordion/item/accordion-item-switch-component/index.d.ts +1 -1
  95. package/src/schematics/accordion/item/accordion-item-switch-component/index.js +16 -8
  96. package/src/schematics/accordion/item/accordion-item-switch-component/index.js.map +1 -1
  97. package/src/schematics/accordion/item/accordion-item-switch-component/schema.d.ts +1 -1
  98. package/src/schematics/accordion/item/accordion-item-switch-component/schema.json +322 -190
  99. package/src/schematics/accordion/item/accordion-item-switch-component/template.schema.json +81 -0
  100. package/src/schematics/accordion/item/accordion-item-table-component/index.d.ts +1 -1
  101. package/src/schematics/accordion/item/accordion-item-table-component/index.js +16 -19
  102. package/src/schematics/accordion/item/accordion-item-table-component/index.js.map +1 -1
  103. package/src/schematics/accordion/item/accordion-item-table-component/schema.d.ts +1 -1
  104. package/src/schematics/accordion/item/accordion-item-table-component/schema.json +615 -278
  105. package/src/schematics/accordion/item/accordion-item-table-component/template.schema.json +43 -0
  106. package/src/schematics/accordion/item/accordion-item-tree-table-component/index.d.ts +1 -1
  107. package/src/schematics/accordion/item/accordion-item-tree-table-component/index.js +48 -84
  108. package/src/schematics/accordion/item/accordion-item-tree-table-component/index.js.map +1 -1
  109. package/src/schematics/accordion/item/accordion-item-tree-table-component/schema.d.ts +1 -1
  110. package/src/schematics/accordion/item/accordion-item-tree-table-component/schema.json +591 -271
  111. package/src/schematics/accordion/item/accordion-item-tree-table-component/template.schema.json +43 -0
  112. package/src/schematics/accordion/templates/accordion-header.hbs +6 -0
  113. package/src/schematics/accordion/templates/data-grid-accordion-item.hbs +15 -0
  114. package/src/schematics/accordion/templates/default-accordion-item.hbs +15 -0
  115. package/src/schematics/accordion/templates/switch-accordion-item.hbs +21 -0
  116. package/src/schematics/accordion/templates/table-accordion-item.hbs +15 -0
  117. package/src/schematics/accordion/templates/tree-table-accordion-item.hbs +15 -0
  118. package/src/schematics/accordion-identifier.schema.json +25 -0
  119. package/src/schematics/accordion-item.schema.json +59 -0
  120. package/src/schematics/angular.schema.json +11 -11
  121. package/src/schematics/backend.schema.json +13 -0
  122. package/src/schematics/button.schema.json +30 -0
  123. package/src/schematics/data-grid-component/files/component/__componentName__.component.html.hbs +35 -0
  124. package/src/schematics/data-grid-component/index.d.ts +2 -4
  125. package/src/schematics/data-grid-component/index.js +83 -52
  126. package/src/schematics/data-grid-component/index.js.map +1 -1
  127. package/src/schematics/data-grid-component/schema.json +413 -141
  128. package/src/schematics/data-grid-component/template.schema.json +20 -0
  129. package/src/schematics/data-grid-component/templates/default-data-grid-item.hbs +3 -0
  130. package/src/schematics/data-grid-component/templates/link-data-grid-item.hbs +8 -0
  131. package/src/schematics/data-grid-item.schema.json +50 -0
  132. package/src/schematics/data-grid.schema.json +66 -0
  133. package/src/schematics/dialog-component/schema.json +141 -65
  134. package/src/schematics/dialog-component/template.schema.json +62 -0
  135. package/src/schematics/form/control/input-form-control/index.d.ts +2 -2
  136. package/src/schematics/form/control/input-form-control/index.js +4 -27
  137. package/src/schematics/form/control/input-form-control/index.js.map +1 -1
  138. package/src/schematics/form/control/input-form-control/schema.d.ts +2 -3
  139. package/src/schematics/form/control/input-form-control/schema.json +182 -105
  140. package/src/schematics/form/control/input-form-control/template.schema.json +20 -0
  141. package/src/schematics/form/control/select-form-control/index.d.ts +4 -2
  142. package/src/schematics/form/control/select-form-control/index.js +132 -96
  143. package/src/schematics/form/control/select-form-control/index.js.map +1 -1
  144. package/src/schematics/form/control/select-form-control/schema.d.ts +2 -3
  145. package/src/schematics/form/control/select-form-control/schema.json +194 -86
  146. package/src/schematics/form/control/select-form-control/template.schema.json +20 -0
  147. package/src/schematics/form/control/table-select-form-control/index.d.ts +9 -5
  148. package/src/schematics/form/control/table-select-form-control/index.js +199 -143
  149. package/src/schematics/form/control/table-select-form-control/index.js.map +1 -1
  150. package/src/schematics/form/control/table-select-form-control/schema.d.ts +2 -4
  151. package/src/schematics/form/control/table-select-form-control/schema.json +245 -100
  152. package/src/schematics/form/control/table-select-form-control/template.schema.json +83 -0
  153. package/src/schematics/form/form-component/files/component/{__componentName__.component.html.template → __componentName__.component.html.hbs} +3 -3
  154. package/src/schematics/form/form-component/index.d.ts +2 -0
  155. package/src/schematics/form/form-component/index.js +22 -7
  156. package/src/schematics/form/form-component/index.js.map +1 -1
  157. package/src/schematics/form/form-component/schema.d.ts +3 -1
  158. package/src/schematics/form/form-component/schema.json +275 -150
  159. package/src/schematics/form/form-component/template.schema.json +20 -0
  160. package/src/schematics/form/form-control/index.d.ts +3 -1
  161. package/src/schematics/form/form-control/index.js +19 -8
  162. package/src/schematics/form/form-control/index.js.map +1 -1
  163. package/src/schematics/form/form-control/schema.json +203 -75
  164. package/src/schematics/form/form-control/template.schema.json +34 -0
  165. package/src/schematics/form/form-definition/index.js +14 -1
  166. package/src/schematics/form/form-definition/index.js.map +1 -1
  167. package/src/schematics/form/form-definition/schema.json +210 -127
  168. package/src/schematics/form/form-definition/template.schema.json +30 -0
  169. package/src/schematics/form/templates/checkbox-form-control.hbs +9 -0
  170. package/src/schematics/form/templates/default-form-control.hbs +2 -0
  171. package/src/schematics/form/templates/input-form-control.hbs +9 -0
  172. package/src/schematics/form/templates/mat-form-field.hbs +31 -0
  173. package/src/schematics/form/templates/slide-toggle-form-control.hbs +8 -0
  174. package/src/schematics/form/templates/table-select-form-control.hbs +18 -0
  175. package/src/schematics/form-component.schema.json +45 -0
  176. package/src/schematics/form-control.schema.json +68 -0
  177. package/src/schematics/form-definition.schema.json +22 -0
  178. package/src/schematics/form-field.schema.json +24 -0
  179. package/src/schematics/general.schema.json +1 -4
  180. package/src/schematics/header-button.schema.json +42 -0
  181. package/src/schematics/input-form-control.schema.json +55 -0
  182. package/src/schematics/minimum-table.schema.json +60 -0
  183. package/src/schematics/pipe.schema.json +38 -0
  184. package/src/schematics/property.schema.json +31 -0
  185. package/src/schematics/select-form-control.schema.json +64 -0
  186. package/src/schematics/table/action/dialog-table-action/schema.json +209 -125
  187. package/src/schematics/table/action/dialog-table-action/template.schema.json +58 -0
  188. package/src/schematics/table/action/form-table-action/schema.json +383 -153
  189. package/src/schematics/table/action/form-table-action/template.schema.json +75 -0
  190. package/src/schematics/table/action/navigation-table-action/schema.json +187 -80
  191. package/src/schematics/table/action/navigation-table-action/template.schema.json +28 -0
  192. package/src/schematics/table/action/open-api-table-action/schema.json +206 -97
  193. package/src/schematics/table/action/open-api-table-action/template.schema.json +56 -0
  194. package/src/schematics/table/action/operation-table-action/schema.json +174 -84
  195. package/src/schematics/table/action/operation-table-action/template.schema.json +14 -0
  196. package/src/schematics/table/header-button/form-table-header-button/schema.json +272 -114
  197. package/src/schematics/table/header-button/form-table-header-button/template.schema.json +51 -0
  198. package/src/schematics/table/header-button/navigation-table-header-button/schema.json +167 -71
  199. package/src/schematics/table/header-button/navigation-table-header-button/template.schema.json +28 -0
  200. package/src/schematics/table/table-action/schema.json +165 -78
  201. package/src/schematics/table/table-action/template.schema.json +30 -0
  202. package/src/schematics/table/table-component/files/component/__componentName__.component.html.hbs +241 -0
  203. package/src/schematics/table/table-component/index.d.ts +1 -3
  204. package/src/schematics/table/table-component/index.js +14 -120
  205. package/src/schematics/table/table-component/index.js.map +1 -1
  206. package/src/schematics/table/table-component/schema.json +524 -277
  207. package/src/schematics/table/table-component/template.schema.json +20 -0
  208. package/src/schematics/table/table-header-button/schema.json +146 -64
  209. package/src/schematics/table/table-header-button/template.schema.json +30 -0
  210. package/src/schematics/table/templates/boolean-table-column.hbs +10 -0
  211. package/src/schematics/table/templates/component-table-column.hbs +12 -0
  212. package/src/schematics/table/templates/copy-to-clipboard-table-column.hbs +10 -0
  213. package/src/schematics/table/templates/date-table-column.hbs +11 -0
  214. package/src/schematics/table/templates/default-table-column.hbs +8 -0
  215. package/src/schematics/table/templates/icon-table-column.hbs +10 -0
  216. package/src/schematics/table/templates/link-table-column.hbs +10 -0
  217. package/src/schematics/table/tree-table-component/files/component/__componentName__.component.html.hbs +255 -0
  218. package/src/schematics/table/tree-table-component/index.d.ts +3 -0
  219. package/src/schematics/table/tree-table-component/index.js +28 -7
  220. package/src/schematics/table/tree-table-component/index.js.map +1 -1
  221. package/src/schematics/table/tree-table-component/schema.json +514 -260
  222. package/src/schematics/table/tree-table-component/template.schema.json +20 -0
  223. package/src/schematics/table-action.schema.json +61 -0
  224. package/src/schematics/table-column.schema.json +75 -0
  225. package/src/schematics/table.schema.json +57 -0
  226. package/src/schematics/templates/pipe.hbs +4 -0
  227. package/src/schematics/tree-component/schema.json +115 -70
  228. package/src/schematics/tree-component/template.schema.json +36 -0
  229. package/src/schematics/tree-table.schema.json +40 -0
  230. package/src/schematics/type.schema.json +35 -0
  231. package/src/schematics/upstream.schema.json +56 -0
  232. package/src/schematics/value.schema.json +26 -0
  233. package/src/template.schema.json +173 -0
  234. package/src/lib/accordion-itme-types.d.ts +0 -8
  235. package/src/lib/accordion-itme-types.js +0 -16
  236. package/src/lib/accordion-itme-types.js.map +0 -1
  237. package/src/schematics/accordion/accordion-component/files/component/__componentName__.component.html.template +0 -94
  238. package/src/schematics/accordion/accordion-component/files/header-component/accordion-header.component.html.template +0 -10
  239. package/src/schematics/data-grid-component/files/form/__componentName__.component.html.template +0 -42
  240. package/src/schematics/data-grid-component/files/plain/__componentName__.component.html.template +0 -25
  241. package/src/schematics/table/table-component/files/component/__componentName__.component.html.template +0 -299
  242. package/src/schematics/table/tree-table-component/files/component/__componentName__.component.html.template +0 -213
@@ -1,116 +1,193 @@
1
1
  {
2
2
  "$schema": "http://json-schema.org/schema",
3
- "$id": "input-form-control",
4
- "type": "object",
5
- "properties": {
6
- "name": {
7
- "type": "string",
8
- "description": "The name of form control",
9
- "x-prompt": "Enter the name of the form control?"
3
+ "$id": "input-form-control-schematic",
4
+ "allOf": [
5
+ {
6
+ "$ref": "#/definitions/formControl"
10
7
  },
11
- "formName": {
12
- "alias": "form",
13
- "type": "string",
14
- "description": "The name of the form where the form control should be added",
15
- "x-prompt": "Enter the name of the form where the form control should be added"
16
- },
17
- "project": {
18
- "type": "string",
19
- "description": "The project where the form control should be added",
20
- "x-prompt": "Enter project name where the form control should be added"
21
- },
22
- "backend": {
23
- "type": "string",
24
- "description": "The backend that should be used to handel data",
25
- "enum": [
26
- "none",
27
- "local",
28
- "nestjs",
29
- "open-api"
8
+ {
9
+ "$ref": "#/definitions/inputFormControl"
10
+ }
11
+ ],
12
+ "definitions": {
13
+ "formControl": {
14
+ "type": "object",
15
+ "properties": {
16
+ "name": {
17
+ "type": "string",
18
+ "description": "The name of the control"
19
+ },
20
+ "type": {
21
+ "$ref": "#/definitions/type"
22
+ },
23
+ "isArray": {
24
+ "type": "boolean",
25
+ "description": "Whether the control value is an array",
26
+ "default": false
27
+ },
28
+ "state": {
29
+ "type": "string",
30
+ "description": "The initial state of the control"
31
+ },
32
+ "isRequired": {
33
+ "type": "boolean",
34
+ "description": "Whether the control value is required",
35
+ "default": false
36
+ },
37
+ "isReadonly": {
38
+ "type": "boolean",
39
+ "description": "Whether the control value is readonly",
40
+ "default": false
41
+ },
42
+ "isDisabled": {
43
+ "type": "boolean",
44
+ "description": "Whether the control value is disabled",
45
+ "default": false
46
+ },
47
+ "validatorList": {
48
+ "type": "array",
49
+ "items": {
50
+ "type": "string"
51
+ }
52
+ },
53
+ "kind": {
54
+ "type": "string",
55
+ "description": "The name of the template",
56
+ "enum": [
57
+ "default",
58
+ "input",
59
+ "select",
60
+ "checkbox",
61
+ "autocomplete-table-select",
62
+ "table-select",
63
+ "textarea",
64
+ "slide-toggle"
65
+ ],
66
+ "default": "default"
67
+ }
68
+ },
69
+ "required": [
70
+ "name"
30
71
  ],
31
- "default": "none"
72
+ "additionalProperties": true
32
73
  },
33
- "feature": {
34
- "type": "string",
35
- "description": "The feature where the form control should be added",
36
- "x-prompt": "Enter feature name where the form control should be added"
37
- },
38
- "shared": {
39
- "type": "boolean",
40
- "description": "Whether the form is shared across applications",
41
- "default": false
42
- },
43
- "directory": {
44
- "type": "string",
45
- "description": "A path suffix added to the base path"
74
+ "inputFormControl": {
75
+ "allOf": [
76
+ {
77
+ "$ref": "#/definitions/formControl"
78
+ },
79
+ {
80
+ "type": "object",
81
+ "properties": {
82
+ "inputType": {
83
+ "type": "string",
84
+ "enum": [
85
+ "text",
86
+ "password",
87
+ "email",
88
+ "number",
89
+ "tel",
90
+ "url",
91
+ "checkbox",
92
+ "color",
93
+ "date",
94
+ "time",
95
+ "datetime-local",
96
+ "file",
97
+ "hidden",
98
+ "image",
99
+ "month",
100
+ "radio",
101
+ "reset",
102
+ "button",
103
+ "search",
104
+ "submit",
105
+ "week",
106
+ "range"
107
+ ]
108
+ },
109
+ "placeholder": {
110
+ "type": "string"
111
+ },
112
+ "formField": {
113
+ "$ref": "#/definitions/formField"
114
+ }
115
+ }
116
+ }
117
+ ]
46
118
  },
47
- "nestModule": {
48
- "type": "string",
49
- "description": "Name of the nest module where the controller is created"
119
+ "button": {
120
+ "type": "object",
121
+ "properties": {
122
+ "svgIcon": {
123
+ "type": "string"
124
+ },
125
+ "icon": {
126
+ "type": "string"
127
+ },
128
+ "directiveList": {
129
+ "type": "array",
130
+ "items": {
131
+ "$ref": "#/definitions/type"
132
+ }
133
+ },
134
+ "importList": {
135
+ "type": "array",
136
+ "items": {
137
+ "$ref": "#/definitions/type"
138
+ }
139
+ }
140
+ }
50
141
  },
51
- "controllerName": {
52
- "type": "string",
53
- "description": "Name of the nest controller"
142
+ "formField": {
143
+ "type": "object",
144
+ "properties": {
145
+ "label": {
146
+ "type": "string"
147
+ },
148
+ "prefixButton": {
149
+ "$ref": "#/definitions/button"
150
+ },
151
+ "suffixButton": {
152
+ "$ref": "#/definitions/button"
153
+ },
154
+ "hasClearButton": {
155
+ "type": "boolean"
156
+ }
157
+ }
54
158
  },
55
159
  "type": {
56
- "type": "string",
57
- "description": "The data type of the form control"
58
- },
59
- "validatorList": {
60
- "alias": "validator",
61
- "type": "array",
62
- "items": {
63
- "type": "string"
64
- },
65
- "description": "List of validators to be added to the form control"
66
- },
67
- "isRequired": {
68
- "alias": "required",
69
- "type": "boolean",
70
- "description": "Whether the form control value is required"
71
- },
72
- "state": {
73
- "type": "string",
74
- "description": "The initial state of the form control"
75
- },
76
- "isArray": {
77
- "alias": "array",
78
- "type": "boolean",
79
- "description": "Whether the form control is an array"
80
- },
81
- "inputType": {
82
- "type": "string",
83
- "description": "The type of the input control",
84
- "enum": [
85
- "checkbox",
86
- "color",
87
- "date",
88
- "datetime-local",
89
- "email",
90
- "file",
91
- "image",
92
- "month",
93
- "number",
94
- "password",
95
- "radio",
96
- "range",
97
- "search",
98
- "tel",
99
- "text",
100
- "time",
101
- "url",
102
- "week"
160
+ "oneOf": [
161
+ {
162
+ "type": "string"
163
+ },
164
+ {
165
+ "type": "object",
166
+ "properties": {
167
+ "name": {
168
+ "type": "string"
169
+ },
170
+ "isTypeOnly": {
171
+ "type": "boolean"
172
+ },
173
+ "moduleSpecifier": {
174
+ "type": "string"
175
+ },
176
+ "namedImport": {
177
+ "type": "string"
178
+ },
179
+ "namespaceImport": {
180
+ "type": "string"
181
+ },
182
+ "defaultImport": {
183
+ "type": "string"
184
+ }
185
+ },
186
+ "required": [
187
+ "name"
188
+ ]
189
+ }
103
190
  ]
104
- },
105
- "context": {
106
- "type": "string",
107
- "description": "The context use to generate proper names for class, files, etc"
108
191
  }
109
- },
110
- "required": [
111
- "name",
112
- "formName",
113
- "project",
114
- "feature"
115
- ]
116
- }
192
+ }
193
+ }
@@ -0,0 +1,20 @@
1
+ {
2
+ "$schema": "http://json-schema.org/schema",
3
+ "$id": "input-form-control-schematic",
4
+ "allOf": [
5
+ {
6
+ "$ref": "#/definitions/formControl"
7
+ },
8
+ {
9
+ "$ref": "#/definitions/inputFormControl"
10
+ }
11
+ ],
12
+ "definitions": {
13
+ "formControl": {
14
+ "$ref": "../../form-control/template.schema.json"
15
+ },
16
+ "inputFormControl": {
17
+ "$ref": "../../../input-form-control.schema.json"
18
+ }
19
+ }
20
+ }
@@ -1,6 +1,8 @@
1
+ import { Rule } from '@angular-devkit/schematics';
1
2
  import { Normalized } from '@rxap/utilities';
3
+ import { NormalizedSelectFormControl } from '../../../../lib/form-control';
2
4
  import { NormalizedFormControlOptions } from '../../form-control';
3
5
  import { SelectFormControlOptions } from './schema';
4
- export type NormalizedSelectFormControlOptions = Readonly<Normalized<SelectFormControlOptions> & NormalizedFormControlOptions>;
6
+ export type NormalizedSelectFormControlOptions = Readonly<Normalized<Omit<SelectFormControlOptions, 'options'>>> & NormalizedFormControlOptions & NormalizedSelectFormControl;
5
7
  export declare function NormalizeSelectFormControlOptions(options: SelectFormControlOptions): NormalizedSelectFormControlOptions;
6
- export default function (options: SelectFormControlOptions): () => import("@angular-devkit/schematics").Rule;
8
+ export default function (options: SelectFormControlOptions): () => Rule;
@@ -7,116 +7,152 @@ const schematics_utilities_1 = require("@rxap/schematics-utilities");
7
7
  const path_1 = require("path");
8
8
  const ts_morph_1 = require("ts-morph");
9
9
  const angular_options_1 = require("../../../../lib/angular-options");
10
- const form_control_1 = require("../../form-control");
10
+ const backend_types_1 = require("../../../../lib/backend-types");
11
+ const form_control_1 = require("../../../../lib/form-control");
12
+ const form_control_2 = require("../../form-control");
11
13
  function NormalizeSelectFormControlOptions(options) {
12
- var _a, _b;
13
- const normalizedOptions = (0, form_control_1.NormalizeFormControlOptions)(options);
14
- let { isArray } = normalizedOptions;
15
- const multiple = (_a = options.multiple) !== null && _a !== void 0 ? _a : false;
16
- isArray = multiple ? true : isArray;
17
- return Object.freeze(Object.assign(Object.assign({}, normalizedOptions), { isArray,
18
- multiple, staticDataSource: (_b = options.staticDataSource) !== null && _b !== void 0 ? _b : false }));
14
+ return Object.freeze(Object.assign(Object.assign({}, (0, form_control_2.NormalizeFormControlOptions)(options)), (0, form_control_1.NormalizeSelectFormControl)(options)));
19
15
  }
20
16
  exports.NormalizeSelectFormControlOptions = NormalizeSelectFormControlOptions;
21
17
  function printOptions(options) {
22
18
  (0, angular_options_1.PrintAngularOptions)('select-form-control', options);
23
19
  }
24
- function default_1(options) {
25
- const normalizedOptions = NormalizeSelectFormControlOptions(options);
26
- const { name, project, feature, directory, formName, type, isArray, state, isRequired, validatorList, staticDataSource, nestModule, controllerName, context, scope, } = normalizedOptions;
27
- printOptions(normalizedOptions);
28
- const optionsOperationName = ['get', name, 'options'].join('-');
20
+ function noneBackendOptionsRule(normalizedOptions) {
21
+ const { name, project, feature, directory, formName, type, isArray, state, isRequired, validatorList, } = normalizedOptions;
22
+ const optionsDataSourceDirectory = (0, path_1.join)(directory !== null && directory !== void 0 ? directory : '', 'data-sources');
23
+ const optionsDataSourceName = (0, schematics_utilities_1.classify)([name, 'options', 'data-source'].join('-'));
24
+ const optionsDataSourceImportPath = `./data-sources/${(0, schematics_utilities_1.dasherize)(name)}-options.data-source`;
25
+ return (0, schematics_1.chain)([
26
+ (0, schematics_ts_morph_1.CoerceOptionsDataSourceRule)({
27
+ project,
28
+ feature,
29
+ directory: optionsDataSourceDirectory,
30
+ name: [name, 'options'].join('-'),
31
+ }),
32
+ (0, schematics_ts_morph_1.CoerceFormProviderRule)({
33
+ project,
34
+ feature,
35
+ directory,
36
+ providerObject: optionsDataSourceName,
37
+ importStructures: [
38
+ {
39
+ namedImports: [optionsDataSourceName],
40
+ moduleSpecifier: optionsDataSourceImportPath,
41
+ },
42
+ ],
43
+ }),
44
+ (0, schematics_ts_morph_1.CoerceFormDefinitionControl)({
45
+ project,
46
+ feature,
47
+ directory,
48
+ formName,
49
+ name,
50
+ type,
51
+ isArray,
52
+ state,
53
+ isRequired,
54
+ validatorList,
55
+ coerceFormControl: (sourceFile, classDeclaration, control) => {
56
+ const { propertyDeclaration, decoratorDeclaration, } = (0, schematics_ts_morph_1.CoerceFormControl)(sourceFile, classDeclaration, control);
57
+ (0, schematics_ts_morph_1.CoerceDecorator)(propertyDeclaration, 'UseOptionsDataSource').set({
58
+ arguments: [optionsDataSourceName],
59
+ });
60
+ (0, schematics_ts_morph_1.CoerceImports)(sourceFile, {
61
+ namedImports: [optionsDataSourceName],
62
+ moduleSpecifier: optionsDataSourceImportPath,
63
+ });
64
+ (0, schematics_ts_morph_1.CoerceImports)(sourceFile, {
65
+ namedImports: ['UseOptionsDataSource'],
66
+ moduleSpecifier: '@rxap/form-system',
67
+ });
68
+ return {
69
+ propertyDeclaration,
70
+ decoratorDeclaration,
71
+ };
72
+ },
73
+ })
74
+ ]);
75
+ }
76
+ function nestJsBackendOptionsRule(normalizedOptions) {
77
+ const { name, project, feature, directory, formName, type, isArray, state, isRequired, validatorList, nestModule, controllerName, context, scope, } = normalizedOptions;
29
78
  const optionsOperationPath = ['options', name].join('/');
79
+ const optionsOperationName = ['get', name, 'options'].join('-');
30
80
  const optionsOperationId = (0, schematics_ts_morph_1.buildOperationId)(normalizedOptions, optionsOperationName, (0, schematics_ts_morph_1.BuildNestControllerName)({
31
81
  controllerName,
32
82
  nestModule,
33
83
  }));
34
- const optionsDataSourceName = (0, schematics_utilities_1.classify)([name, 'options', 'data-source'].join('-'));
35
- const optionsDataSourceImportPath = `./data-sources/${(0, schematics_utilities_1.dasherize)(name)}-options.data-source`;
36
- const optionsDataSourceDirectory = (0, path_1.join)(directory !== null && directory !== void 0 ? directory : '', 'data-sources');
84
+ return (0, schematics_1.chain)([
85
+ (0, schematics_ts_morph_1.CoerceOptionsOperationRule)({
86
+ project,
87
+ feature,
88
+ nestModule,
89
+ controllerName,
90
+ operationName: optionsOperationName,
91
+ path: optionsOperationPath,
92
+ control: normalizedOptions,
93
+ context,
94
+ }),
95
+ (0, schematics_ts_morph_1.CoerceFormDefinitionControl)({
96
+ project,
97
+ feature,
98
+ directory,
99
+ formName,
100
+ name,
101
+ type,
102
+ isArray,
103
+ state,
104
+ isRequired,
105
+ validatorList,
106
+ coerceFormControl: (sourceFile, classDeclaration, control) => {
107
+ const { propertyDeclaration, decoratorDeclaration, } = (0, schematics_ts_morph_1.CoerceFormControl)(sourceFile, classDeclaration, control);
108
+ (0, schematics_ts_morph_1.CoerceDecorator)(propertyDeclaration, 'UseOptionsMethod').set({
109
+ arguments: [
110
+ (0, schematics_ts_morph_1.OperationIdToClassName)(optionsOperationId),
111
+ ts_morph_1.Writers.object({ withoutParameters: 'true' }),
112
+ ],
113
+ });
114
+ (0, schematics_ts_morph_1.CoerceImports)(sourceFile, {
115
+ namedImports: [(0, schematics_ts_morph_1.OperationIdToClassName)(optionsOperationId)],
116
+ moduleSpecifier: (0, schematics_ts_morph_1.OperationIdToClassImportPath)(optionsOperationId, scope),
117
+ });
118
+ (0, schematics_ts_morph_1.CoerceImports)(sourceFile, {
119
+ namedImports: ['UseOptionsMethod'],
120
+ moduleSpecifier: '@rxap/form-system',
121
+ });
122
+ return {
123
+ propertyDeclaration,
124
+ decoratorDeclaration,
125
+ };
126
+ },
127
+ })
128
+ ]);
129
+ }
130
+ function openApiBackendOptionsRule(normalizedOptions) {
131
+ return () => {
132
+ throw new schematics_1.SchematicsException('The open api backend is not supported yet!');
133
+ };
134
+ }
135
+ function optionsRule(normalizedOptions) {
136
+ const { backend } = normalizedOptions;
137
+ switch (backend) {
138
+ case backend_types_1.BackendTypes.LOCAL:
139
+ case backend_types_1.BackendTypes.NONE:
140
+ return noneBackendOptionsRule(normalizedOptions);
141
+ case backend_types_1.BackendTypes.NESTJS:
142
+ return nestJsBackendOptionsRule(normalizedOptions);
143
+ case backend_types_1.BackendTypes.OPEN_API:
144
+ return openApiBackendOptionsRule(normalizedOptions);
145
+ default:
146
+ throw new schematics_1.SchematicsException(`The backend type "${backend}" is not supported!`);
147
+ }
148
+ }
149
+ function default_1(options) {
150
+ const normalizedOptions = NormalizeSelectFormControlOptions(options);
151
+ printOptions(normalizedOptions);
37
152
  return () => {
38
153
  return (0, schematics_1.chain)([
39
154
  () => console.group('\x1b[32m[@rxap/schematics-angular:select-form-control]\x1b[0m'),
40
- (0, schematics_utilities_1.ExecuteSchematic)('form-control', normalizedOptions),
41
- () => staticDataSource
42
- ? (0, schematics_1.chain)([
43
- (0, schematics_ts_morph_1.CoerceOptionsDataSourceRule)({
44
- project,
45
- feature,
46
- directory: optionsDataSourceDirectory,
47
- name: [name, 'options'].join('-'),
48
- }),
49
- (0, schematics_ts_morph_1.CoerceFormProviderRule)({
50
- project,
51
- feature,
52
- directory,
53
- providerObject: optionsDataSourceName,
54
- importStructures: [
55
- {
56
- namedImports: [optionsDataSourceName],
57
- moduleSpecifier: optionsDataSourceImportPath,
58
- },
59
- ],
60
- }),
61
- ])
62
- : (0, schematics_ts_morph_1.CoerceOptionsOperationRule)({
63
- project,
64
- feature,
65
- nestModule,
66
- controllerName,
67
- operationName: optionsOperationName,
68
- path: optionsOperationPath,
69
- control: normalizedOptions,
70
- context,
71
- }),
72
- (0, schematics_ts_morph_1.CoerceFormDefinitionControl)({
73
- project,
74
- feature,
75
- directory,
76
- formName,
77
- name,
78
- type,
79
- isArray,
80
- state,
81
- isRequired,
82
- validatorList,
83
- coerceFormControl: (sourceFile, classDeclaration, control) => {
84
- const { propertyDeclaration, decoratorDeclaration, } = (0, schematics_ts_morph_1.CoerceFormControl)(sourceFile, classDeclaration, control);
85
- if (staticDataSource) {
86
- (0, schematics_ts_morph_1.CoerceDecorator)(propertyDeclaration, 'UseOptionsDataSource').set({
87
- arguments: [optionsDataSourceName],
88
- });
89
- (0, schematics_ts_morph_1.CoerceImports)(sourceFile, {
90
- namedImports: [optionsDataSourceName],
91
- moduleSpecifier: optionsDataSourceImportPath,
92
- });
93
- (0, schematics_ts_morph_1.CoerceImports)(sourceFile, {
94
- namedImports: ['UseOptionsDataSource'],
95
- moduleSpecifier: '@rxap/form-system',
96
- });
97
- }
98
- else {
99
- (0, schematics_ts_morph_1.CoerceDecorator)(propertyDeclaration, 'UseOptionsMethod').set({
100
- arguments: [
101
- (0, schematics_ts_morph_1.OperationIdToClassName)(optionsOperationId),
102
- ts_morph_1.Writers.object({ withoutParameters: 'true' }),
103
- ],
104
- });
105
- (0, schematics_ts_morph_1.CoerceImports)(sourceFile, {
106
- namedImports: [(0, schematics_ts_morph_1.OperationIdToClassName)(optionsOperationId)],
107
- moduleSpecifier: (0, schematics_ts_morph_1.OperationIdToClassImportPath)(optionsOperationId, scope),
108
- });
109
- (0, schematics_ts_morph_1.CoerceImports)(sourceFile, {
110
- namedImports: ['UseOptionsMethod'],
111
- moduleSpecifier: '@rxap/form-system',
112
- });
113
- }
114
- return {
115
- propertyDeclaration,
116
- decoratorDeclaration,
117
- };
118
- },
119
- }),
155
+ optionsRule(normalizedOptions),
120
156
  (0, schematics_ts_morph_1.EnforceUseFormControlOrderRule)(normalizedOptions),
121
157
  () => console.groupEnd(),
122
158
  ]);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../../../packages/schematic/angular/src/schematics/form/control/select-form-control/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../../../packages/schematic/angular/src/schematics/form/control/select-form-control/index.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,5 @@
1
+ import { SelectFormControl } from '../../../../lib/form-control';
1
2
  import { FormControlOptions } from '../../form-control/schema';
2
3
 
3
- export interface SelectFormControlOptions extends FormControlOptions {
4
- multiple?: boolean;
5
- staticDataSource?: boolean;
4
+ export interface SelectFormControlOptions extends FormControlOptions, SelectFormControl {
6
5
  }