@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,87 +1,183 @@
1
1
  {
2
2
  "$schema": "http://json-schema.org/schema",
3
- "$id": "table-action",
4
- "type": "object",
5
- "properties": {
6
- "tableName": {
7
- "alias": "table",
8
- "type": "string",
9
- "description": "The name of the table action"
3
+ "$id": "navigation-table-header-button-schematic",
4
+ "allOf": [
5
+ {
6
+ "$ref": "#/definitions/tableHeaderButtonSchematic"
10
7
  },
11
- "project": {
12
- "type": "string",
13
- "description": "The target project where the table action should be added."
8
+ {
9
+ "type": "object",
10
+ "properties": {
11
+ "route": {
12
+ "type": "string",
13
+ "description": "The route path for the table action"
14
+ },
15
+ "relativeTo": {
16
+ "type": "boolean",
17
+ "description": "Indicates if the route path should be relative to the current activated route",
18
+ "default": false
19
+ }
20
+ }
21
+ }
22
+ ],
23
+ "definitions": {
24
+ "tableHeaderButtonSchematic": {
25
+ "allOf": [
26
+ {
27
+ "$ref": "#/definitions/angular"
28
+ },
29
+ {
30
+ "$ref": "#/definitions/headerButton"
31
+ },
32
+ {
33
+ "type": "object",
34
+ "properties": {
35
+ "tableName": {
36
+ "alias": "table",
37
+ "type": "string",
38
+ "description": "The name of the table action"
39
+ }
40
+ }
41
+ }
42
+ ]
14
43
  },
15
- "feature": {
16
- "type": "string",
17
- "description": "The feature name where the table action should be added.",
18
- "x-prompt": "To which feature should the table action be added?"
44
+ "angular": {
45
+ "allOf": [
46
+ {
47
+ "$ref": "#/definitions/general"
48
+ },
49
+ {
50
+ "type": "object",
51
+ "properties": {
52
+ "componentName": {
53
+ "type": "string"
54
+ },
55
+ "name": {
56
+ "type": "string"
57
+ },
58
+ "context": {
59
+ "type": "string",
60
+ "description": "The context use to generate proper names for class, files, etc"
61
+ },
62
+ "nestModule": {
63
+ "type": "string",
64
+ "description": "The module name for the table nest operations"
65
+ },
66
+ "controllerName": {
67
+ "type": "string"
68
+ },
69
+ "backend": {
70
+ "$ref": "#/definitions/backend"
71
+ },
72
+ "directory": {
73
+ "type": "string",
74
+ "description": "A directory name or absolute path where the files should be generated. Relative to the project and feature base path if a feature is defined"
75
+ },
76
+ "shared": {
77
+ "type": "boolean",
78
+ "description": "Whether the generated code is used across the project",
79
+ "default": false
80
+ },
81
+ "scope": {
82
+ "type": "string"
83
+ },
84
+ "prefix": {
85
+ "type": "string"
86
+ },
87
+ "openApi": {
88
+ "type": "object",
89
+ "additionalProperties": true
90
+ }
91
+ }
92
+ }
93
+ ]
19
94
  },
20
95
  "backend": {
21
96
  "type": "string",
22
97
  "description": "The backend that should be used to handel data",
23
98
  "enum": [
24
99
  "none",
25
- "local",
26
100
  "nestjs",
27
- "open-api"
101
+ "open-api",
102
+ "local"
28
103
  ],
29
104
  "default": "none"
30
105
  },
31
- "shared": {
32
- "type": "boolean",
33
- "description": "Whether the table action is shared across applications",
34
- "default": false
35
- },
36
- "refresh": {
37
- "type": "boolean",
38
- "description": "Whether the table action should refresh the table after execution",
39
- "default": false
40
- },
41
- "confirm": {
42
- "type": "boolean",
43
- "description": "Whether the table action should confirm before execution",
44
- "default": false
45
- },
46
- "tooltip": {
47
- "type": "string",
48
- "description": "The tooltip for the table action"
49
- },
50
- "errorMessage": {
51
- "type": "string",
52
- "description": "The error message for the table action"
53
- },
54
- "successMessage": {
55
- "type": "string",
56
- "description": "The success message for the table action"
57
- },
58
- "directory": {
59
- "type": "string",
60
- "description": "A directory name or absolute path for the table action. relative to the feature base path"
61
- },
62
- "permission": {
63
- "type": "string"
64
- },
65
- "icon": {
66
- "type": "string"
67
- },
68
- "svgIcon": {
69
- "type": "string"
70
- },
71
- "route": {
72
- "type": "string",
73
- "description": "The route path for the table action"
106
+ "general": {
107
+ "type": "object",
108
+ "properties": {
109
+ "project": {
110
+ "type": "string",
111
+ "description": "Project name where the files should be generated"
112
+ },
113
+ "feature": {
114
+ "type": "string",
115
+ "description": "Feature name where the files should be generated"
116
+ },
117
+ "overwrite": {
118
+ "anyOf": [
119
+ {
120
+ "type": "boolean"
121
+ },
122
+ {
123
+ "type": "array",
124
+ "items": {
125
+ "type": "string"
126
+ }
127
+ }
128
+ ],
129
+ "description": "Overwrite existing files",
130
+ "default": false
131
+ },
132
+ "overwriteHtml": {
133
+ "type": "boolean",
134
+ "default": false
135
+ },
136
+ "replace": {
137
+ "type": "boolean",
138
+ "default": false
139
+ }
140
+ }
74
141
  },
75
- "relativeTo": {
76
- "type": "boolean",
77
- "description": "Indicates if the route path should be relative to the current activated route",
78
- "default": false
142
+ "headerButton": {
143
+ "type": "object",
144
+ "properties": {
145
+ "permission": {
146
+ "type": "string"
147
+ },
148
+ "icon": {
149
+ "type": "string"
150
+ },
151
+ "svgIcon": {
152
+ "type": "string"
153
+ },
154
+ "refresh": {
155
+ "type": "boolean",
156
+ "description": "Whether the table action should refresh the table after execution",
157
+ "default": false
158
+ },
159
+ "confirm": {
160
+ "type": "boolean",
161
+ "description": "Whether the table action should confirm before execution",
162
+ "default": false
163
+ },
164
+ "tooltip": {
165
+ "type": "string",
166
+ "description": "The tooltip for the table action"
167
+ },
168
+ "errorMessage": {
169
+ "type": "string",
170
+ "description": "The error message for the table action"
171
+ },
172
+ "successMessage": {
173
+ "type": "string",
174
+ "description": "The success message for the table action"
175
+ },
176
+ "options": {
177
+ "type": "object",
178
+ "additionalProperties": true
179
+ }
180
+ }
79
181
  }
80
- },
81
- "required": [
82
- "options",
83
- "project",
84
- "feature",
85
- "route"
86
- ]
87
- }
182
+ }
183
+ }
@@ -0,0 +1,28 @@
1
+ {
2
+ "$schema": "http://json-schema.org/schema",
3
+ "$id": "navigation-table-header-button-schematic",
4
+ "allOf": [
5
+ {
6
+ "$ref": "#/definitions/tableHeaderButtonSchematic"
7
+ },
8
+ {
9
+ "type": "object",
10
+ "properties": {
11
+ "route": {
12
+ "type": "string",
13
+ "description": "The route path for the table action"
14
+ },
15
+ "relativeTo": {
16
+ "type": "boolean",
17
+ "description": "Indicates if the route path should be relative to the current activated route",
18
+ "default": false
19
+ }
20
+ }
21
+ }
22
+ ],
23
+ "definitions": {
24
+ "tableHeaderButtonSchematic": {
25
+ "$ref": "../../table-header-button/template.schema.json"
26
+ }
27
+ }
28
+ }
@@ -1,94 +1,181 @@
1
1
  {
2
2
  "$schema": "http://json-schema.org/schema",
3
- "$id": "table-action",
4
- "type": "object",
5
- "properties": {
6
- "tableName": {
7
- "alias": "table",
8
- "type": "string",
9
- "description": "The name of the table action"
10
- },
11
- "type": {
12
- "alias": "actionType",
13
- "type": "string",
14
- "description": "The table action type string",
15
- "x-prompt": "Enter the table action type string?"
3
+ "$id": "table-action-schematic",
4
+ "allOf": [
5
+ {
6
+ "$ref": "#/definitions/angular"
16
7
  },
17
- "project": {
18
- "type": "string",
19
- "description": "The target project where the table action should be added."
8
+ {
9
+ "$ref": "#/definitions/tableAction"
20
10
  },
21
- "feature": {
22
- "type": "string",
23
- "description": "The feature name where the table action should be added.",
24
- "x-prompt": "To which feature should the table action be added?"
11
+ {
12
+ "type": "object",
13
+ "properties": {
14
+ "tableName": {
15
+ "alias": "table",
16
+ "type": "string",
17
+ "description": "The name of the table action"
18
+ }
19
+ }
20
+ }
21
+ ],
22
+ "definitions": {
23
+ "angular": {
24
+ "allOf": [
25
+ {
26
+ "$ref": "#/definitions/general"
27
+ },
28
+ {
29
+ "type": "object",
30
+ "properties": {
31
+ "componentName": {
32
+ "type": "string"
33
+ },
34
+ "name": {
35
+ "type": "string"
36
+ },
37
+ "context": {
38
+ "type": "string",
39
+ "description": "The context use to generate proper names for class, files, etc"
40
+ },
41
+ "nestModule": {
42
+ "type": "string",
43
+ "description": "The module name for the table nest operations"
44
+ },
45
+ "controllerName": {
46
+ "type": "string"
47
+ },
48
+ "backend": {
49
+ "$ref": "#/definitions/backend"
50
+ },
51
+ "directory": {
52
+ "type": "string",
53
+ "description": "A directory name or absolute path where the files should be generated. Relative to the project and feature base path if a feature is defined"
54
+ },
55
+ "shared": {
56
+ "type": "boolean",
57
+ "description": "Whether the generated code is used across the project",
58
+ "default": false
59
+ },
60
+ "scope": {
61
+ "type": "string"
62
+ },
63
+ "prefix": {
64
+ "type": "string"
65
+ },
66
+ "openApi": {
67
+ "type": "object",
68
+ "additionalProperties": true
69
+ }
70
+ }
71
+ }
72
+ ]
73
+ },
74
+ "tableAction": {
75
+ "type": "object",
76
+ "properties": {
77
+ "type": {
78
+ "type": "string"
79
+ },
80
+ "refresh": {
81
+ "type": "boolean"
82
+ },
83
+ "confirm": {
84
+ "type": "boolean"
85
+ },
86
+ "tooltip": {
87
+ "type": "string"
88
+ },
89
+ "errorMessage": {
90
+ "type": "string"
91
+ },
92
+ "successMessage": {
93
+ "type": "string"
94
+ },
95
+ "priority": {
96
+ "type": "number"
97
+ },
98
+ "checkFunction": {
99
+ "type": "string"
100
+ },
101
+ "inHeader": {
102
+ "type": "boolean"
103
+ },
104
+ "role": {
105
+ "type": "string"
106
+ },
107
+ "icon": {
108
+ "type": "string"
109
+ },
110
+ "svgIcon": {
111
+ "type": "string"
112
+ },
113
+ "permission": {
114
+ "type": "string"
115
+ },
116
+ "color": {
117
+ "type": "string",
118
+ "description": "Value for the color input of the mat-button / mat-icon component"
119
+ },
120
+ "cssClass": {
121
+ "type": "string",
122
+ "description": "Additional CSS classes added to the button element"
123
+ },
124
+ "options": {
125
+ "type": "object",
126
+ "additionalProperties": true
127
+ }
128
+ },
129
+ "required": [
130
+ "type"
131
+ ]
25
132
  },
26
133
  "backend": {
27
134
  "type": "string",
28
135
  "description": "The backend that should be used to handel data",
29
136
  "enum": [
30
137
  "none",
31
- "local",
32
138
  "nestjs",
33
- "open-api"
139
+ "open-api",
140
+ "local"
34
141
  ],
35
142
  "default": "none"
36
143
  },
37
- "shared": {
38
- "type": "boolean",
39
- "description": "Whether the table action is shared across applications",
40
- "default": false
41
- },
42
- "refresh": {
43
- "type": "boolean",
44
- "description": "Whether the table action should refresh the table after execution",
45
- "default": false
46
- },
47
- "confirm": {
48
- "type": "boolean",
49
- "description": "Whether the table action should confirm before execution",
50
- "default": false
51
- },
52
- "tooltip": {
53
- "type": "string",
54
- "description": "The tooltip for the table action"
55
- },
56
- "errorMessage": {
57
- "type": "string",
58
- "description": "The error message for the table action"
59
- },
60
- "successMessage": {
61
- "type": "string",
62
- "description": "The success message for the table action"
63
- },
64
- "checkFunction": {
65
- "type": "string",
66
- "description": "The check function for the table action"
67
- },
68
- "color": {
69
- "type": "string",
70
- "description": "Value for the color input of the mat-button / mat-icon component"
71
- },
72
- "cssClass": {
73
- "type": "string",
74
- "description": "Additional CSS classes added to the button element"
75
- },
76
- "priority": {
77
- "type": "number",
78
- "description": "The priority of the table action"
79
- },
80
- "directory": {
81
- "type": "string",
82
- "description": "A directory name or absolute path for the table action. relative to the feature base path"
83
- },
84
- "options": {
144
+ "general": {
85
145
  "type": "object",
86
- "additionalProperties": true
146
+ "properties": {
147
+ "project": {
148
+ "type": "string",
149
+ "description": "Project name where the files should be generated"
150
+ },
151
+ "feature": {
152
+ "type": "string",
153
+ "description": "Feature name where the files should be generated"
154
+ },
155
+ "overwrite": {
156
+ "anyOf": [
157
+ {
158
+ "type": "boolean"
159
+ },
160
+ {
161
+ "type": "array",
162
+ "items": {
163
+ "type": "string"
164
+ }
165
+ }
166
+ ],
167
+ "description": "Overwrite existing files",
168
+ "default": false
169
+ },
170
+ "overwriteHtml": {
171
+ "type": "boolean",
172
+ "default": false
173
+ },
174
+ "replace": {
175
+ "type": "boolean",
176
+ "default": false
177
+ }
178
+ }
87
179
  }
88
- },
89
- "required": [
90
- "type",
91
- "project",
92
- "feature"
93
- ]
94
- }
180
+ }
181
+ }
@@ -0,0 +1,30 @@
1
+ {
2
+ "$schema": "http://json-schema.org/schema",
3
+ "$id": "table-action-schematic",
4
+ "allOf": [
5
+ {
6
+ "$ref": "#/definitions/angular"
7
+ },
8
+ {
9
+ "$ref": "#/definitions/tableAction"
10
+ },
11
+ {
12
+ "type": "object",
13
+ "properties": {
14
+ "tableName": {
15
+ "alias": "table",
16
+ "type": "string",
17
+ "description": "The name of the table action"
18
+ }
19
+ }
20
+ }
21
+ ],
22
+ "definitions": {
23
+ "angular": {
24
+ "$ref": "../../angular.schema.json"
25
+ },
26
+ "tableAction": {
27
+ "$ref": "../../table-action.schema.json"
28
+ }
29
+ }
30
+ }