@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,299 +0,0 @@
1
- <div class="flex flex-col gap-y-4 m-4">
2
- <% if (hasNavigationBackHeader) { %>
3
- <rxap-navigate-back-button>
4
- <h1 i18n><%= title %></h1>
5
- </rxap-navigate-back-button>
6
- <mat-divider></mat-divider>
7
- <% } %>
8
-
9
- <div class="table-card-container flex flex-col">
10
- <mat-card>
11
- <mat-progress-bar
12
- rxapCardProgressBar
13
- [loading$]="tableDataSourceDirective.loading$"
14
- ></mat-progress-bar>
15
- <mat-card-header class="min-h-full h-12<% if (!headerButton && hasWithoutTitle) { %> justify-end<% } %>">
16
- <% if (!hasWithoutTitle) { %>
17
- <mat-card-title i18n><%= title %></mat-card-title>
18
- <% } %>
19
- <% if (headerButton) { %>
20
- <button
21
- mat-card-avatar
22
- mat-mini-fab
23
- color="primary"
24
- matTooltip
25
- [disabled]="tableDataSourceDirective.hasError$ | async"
26
- [rxapTableHeaderButton]="tableDataSourceDirective"
27
- <% if (headerButton.permission) { %>rxapHasEnablePermission="<%= headerButton.permission %>"<% } %>
28
- >
29
- <% if (headerButton.icon) { %><mat-icon><%= headerButton.icon %></mat-icon><% } else if (headerButton.svgIcon) { %><mat-icon svgIcon="<%= headerButton.svgIcon %>"></mat-icon><% } else { %><mat-icon>add</mat-icon><% } %>
30
- </button>
31
- <mat-card-subtitle i18n><%= headerButton.label %></mat-card-subtitle>
32
- <% } %>
33
- <rxap-table-column-menu matCard #rxapTableColumns="rxapTableColumns" <% if (!headerButton && hasWithoutTitle) { %>inline<% } %>>
34
- <% if (selectColumn) { %>
35
- <rxap-table-column-option hidden name="select">
36
- <ng-container i18n>Select</ng-container>
37
- </rxap-table-column-option>
38
- <% } %>
39
- <% for (const column of columnList) { %>
40
- <rxap-table-column-option
41
- name="<%= column.name %>"<% if (column.active) { %><%= ' active' %><% } %><% if (column.hidden) { %><%= ' hidden' %><% } %><% if (column.inactive) { %><%= ' inactive' %><% } %><% if (column.show) { %><%= ' show' %><% } %>>
42
- <ng-container i18n><%= column.title %></ng-container>
43
- </rxap-table-column-option>
44
- <% } %>
45
- <% if (actionList.length) { %>
46
- <rxap-table-column-option hidden name="actions">
47
- <ng-container i18n>Actions</ng-container>
48
- </rxap-table-column-option>
49
- <% } %>
50
- <% if (hasShowArchivedSlide) { %>
51
- <mat-divider></mat-divider>
52
- <span mat-menu-item>
53
- <rxap-table-show-archived-slide
54
- [paginator]="paginator"
55
- ></rxap-table-show-archived-slide>
56
- </span>
57
- <% } %>
58
- </rxap-table-column-menu>
59
- </mat-card-header>
60
-
61
- <mat-card-content>
62
- <rxap-data-source-error
63
- [loading]="tableDataSourceDirective.loading$"
64
- [error]="tableDataSourceDirective.dataSource?.error$"
65
- *ngIf="tableDataSourceDirective.hasError$ | async"
66
- [refresh]="tableDataSourceDirective.retry">
67
- </rxap-data-source-error>
68
- <div class="table-scroll-container mt-4 overflow-x-auto overscroll-auto">
69
- <table
70
- [ngClass]="{ 'hidden': tableDataSourceDirective.hasError$ | async }"
71
- [paginator]="paginator"
72
- matSort
73
- mat-table
74
- #tableDataSourceDirective="rxapTableDataSource"
75
- rxapTableDataSource
76
- [parameters]="parameters"
77
- id="<%= name %>"
78
- <% if (hasColumnWithFilter) { %>rxap-filter-header-row<% } %>
79
- >
80
- <!-- region columns -->
81
-
82
- <% if (selectColumn) { %>
83
- <ng-container matColumnDef="select" sticky>
84
- <th mat-header-cell rxap-checkbox-header-cell *matHeaderCellDef></th>
85
- <td
86
- mat-cell
87
- rxap-checkbox-cell
88
- [element]="element"
89
- *matCellDef="let element"
90
- ></td>
91
- </ng-container>
92
- <% } %>
93
- <% if (actionList.length) { %>
94
- <ng-container matColumnDef="actions" stickyEnd>
95
- <th mat-header-cell *matHeaderCellDef>
96
- <% if (selectColumn) { %>
97
- <div class="flex flex-row" *rxapSelectedRows="let selected">
98
- <% for (const action of actionList) { %>
99
- <% if (action.inHeader) { %>
100
- <button
101
- rxapTableRowHeaderAction="<%= action.type %>"
102
- mat-icon-button
103
- <% if (action.color) { %>color="<%= action.color %>"<% } %>
104
- <% if (action.cssClass) { %>class="<%= action.cssClass %>"<% } %>
105
- *ngIf="selected | rxapRowActionCheck:'<%= action.type %>'"
106
- <% if (action.permission) { %>rxapHasEnablePermission="<%= action.permission %>"<% } %>
107
- matTooltip
108
- >
109
- <% if (action.icon) { %><mat-icon><%= action.icon %></mat-icon><% } else if (action.svgIcon) { %><mat-icon svgIcon="<%= action.svgIcon %>"></mat-icon><% } else { %><mat-icon><%= action.type %></mat-icon><% } %>
110
- <mat-progress-bar
111
- *rxapTableRowActionExecuting
112
- mode="indeterminate"
113
- ></mat-progress-bar>
114
- </button>
115
- <% } %>
116
- <% } %>
117
- </div>
118
- <% } %>
119
- </th>
120
-
121
- <td mat-cell *matCellDef="let element">
122
- <div class="flex flex-row">
123
- <% for (const action of actionList) { %>
124
- <button
125
- rxapTableRowAction="<%= action.type %>"
126
- [element]="element"
127
- <% if (action.color) { %>color="<%= action.color %>"<% } %>
128
- <% if (action.cssClass) { %>class="<%= action.cssClass %>"<% } %>
129
- mat-icon-button
130
- *ngIf="element | rxapRowActionCheck:'<%= action.type %>'"
131
- <% if (action.permission) { %>rxapHasEnablePermission="<%= action.permission %>"<% } %>
132
- matTooltip
133
- >
134
- <% if (action.icon) { %><mat-icon><%= action.icon %></mat-icon><% } else if (action.svgIcon) { %><mat-icon svgIcon="<%= action.svgIcon %>"></mat-icon><% } else { %><mat-icon><%= action.type %></mat-icon><% } %>
135
- <mat-progress-bar
136
- *rxapTableRowActionExecuting
137
- mode="indeterminate"
138
- ></mat-progress-bar>
139
- </button>
140
- <% } %>
141
- </div>
142
- </td>
143
- </ng-container>
144
- <% } %>
145
- <% for (const column of columnList) { %>
146
- <% if (column.role === 'copy-to-clipboard') { %>
147
- <ng-container matColumnDef="<%= column.name %>">
148
- <th mat-header-cell *matHeaderCellDef mat-sort-header>
149
- <ng-container i18n><%= column.title %></ng-container>
150
- </th>
151
- <td *matCellDef="let element" mat-cell <% if (column.cssClass) { %>class="<%= column.cssClass %>"<% } %> [rxap-copy-to-clipboard-cell]="element?.<%= column.propertyPath %>"></td>
152
- </ng-container>
153
- <% } else if (column.role === 'link') { %>
154
- <ng-container matColumnDef="<%= column.name %>">
155
- <th mat-header-cell *matHeaderCellDef mat-sort-header>
156
- <ng-container i18n><%= column.title %></ng-container>
157
- </th>
158
- <td *matCellDef="let element" mat-cell <% if (column.cssClass) { %>class="<%= column.cssClass %>"<% } %> [rxap-link-cell]="element?.<%= column.propertyPath %>"></td>
159
- </ng-container>
160
- <% } else if (column.role === 'date') { %>
161
- <ng-container matColumnDef="<%= column.name %>">
162
- <th mat-header-cell *matHeaderCellDef mat-sort-header>
163
- <ng-container i18n><%= column.title %></ng-container>
164
- </th>
165
-
166
- <td *matCellDef="let element" mat-cell <% if (column.cssClass) { %>class="<%= column.cssClass %>"<% } %> [rxap-date-cell]="element?.<%= column.propertyPath %>" format="dd.MM.yyyy HH:mm:ss"></td>
167
- </ng-container>
168
- <% } else if (column.role === 'boolean') { %>
169
- <ng-container matColumnDef="<%= column.name %>">
170
- <th mat-header-cell *matHeaderCellDef mat-sort-header>
171
- <ng-container i18n><%= column.title %></ng-container>
172
- </th>
173
-
174
- <td *matCellDef="let element" mat-cell <% if (column.cssClass) { %>class="<%= column.cssClass %>"<% } %> [rxap-boolean-cell]="element?.<%= column.propertyPath %>"></td>
175
- </ng-container>
176
- <% } else if (column.role === 'icon') { %>
177
- <ng-container matColumnDef="<%= column.name %>">
178
- <th mat-header-cell *matHeaderCellDef mat-sort-header>
179
- <ng-container i18n><%= column.title %></ng-container>
180
- </th>
181
-
182
- <td *matCellDef="let element" mat-cell <% if (column.cssClass) { %>class="<%= column.cssClass %>"<% } %> [rxap-icon-cell]="element?.<%= column.propertyPath %>"></td>
183
- </ng-container>
184
- <% } else if (column.role === 'component') { %>
185
- <ng-container matColumnDef="<%= column.name %>">
186
- <th mat-header-cell *matHeaderCellDef mat-sort-header>
187
- <ng-container i18n><%= column.title %></ng-container>
188
- </th>
189
-
190
- <td *matCellDef="let element" mat-cell <% if (column.cssClass) { %>class="<%= column.cssClass %>"<% } %> <%= prefix %>-<%= column.name %>-cell [element]="element" [value]="element?.<%= column.propertyPath %>"></td>
191
- </ng-container>
192
- <% } else { %>
193
- <ng-container matColumnDef="<%= column.name %>">
194
- <th mat-header-cell *matHeaderCellDef mat-sort-header>
195
- <ng-container i18n><%= column.title %></ng-container>
196
- </th>
197
-
198
- <td mat-cell <% if (column.cssClass) { %>class="<%= column.cssClass %>"<% } %> *matCellDef="let element">
199
- <% if (column.template) { %>
200
- <%= column.template %>
201
- <% } else if (column.pipeList.length) { %>
202
- {{ element?.<%= column.propertyPath %><% for (const pipe of column.pipeList) { %> | <%= pipe.name %><% } %> }}
203
- <% } else { %>
204
- {{ element?.<%= column.propertyPath %> }}
205
- <% } %>
206
- </td>
207
- </ng-container>
208
- <% } %>
209
- <% } %>
210
-
211
- <!-- endregion -->
212
- <% if (hasColumnWithFilter) { %>
213
- <!-- region filter columns -->
214
- <% if (selectColumn) { %>
215
- <ng-container matColumnDef="filter_select" sticky>
216
- <th mat-header-cell *matHeaderCellDef></th>
217
- </ng-container>
218
- <% } %>
219
- <% if (actionList.length) { %>
220
- <ng-container matColumnDef="filter_actions" stickyEnd>
221
- <th mat-header-cell *matHeaderCellDef></th>
222
- </ng-container>
223
- <% } %>
224
-
225
- <% for (const column of columnList) { %>
226
- <ng-container matColumnDef="filter_<%= column.name %>">
227
- <th mat-header-cell *matHeaderCellDef>
228
- <% if (column.hasFilter) { %>
229
- <% if (column.type === 'boolean') { %>
230
- <mat-checkbox
231
- indeterminate
232
- parentControlContainer
233
- formControlName="<%= camelize(column.name) %>"
234
- >
235
- <ng-container i18n><%= column.title %></ng-container>
236
- </mat-checkbox>
237
- <% } else { %>
238
- <mat-form-field class="w-full pt-3">
239
- <mat-label i18n><%= column.title %></mat-label>
240
- <input
241
- matInput
242
- i18n-placeholder
243
- placeholder="Enter Filter"
244
- parentControlContainer
245
- formControlName="<%= camelize(column.name) %>"
246
- />
247
- <button matSuffix rxapInputClearButton mat-icon-button>
248
- <mat-icon>clear</mat-icon>
249
- </button>
250
- </mat-form-field>
251
- <% } %>
252
- <% } %>
253
- </th>
254
- </ng-container>
255
- <% } %>
256
-
257
- <!-- endregion -->
258
- <tr
259
- class="rxap-filter-header"
260
- mat-header-row
261
- *matHeaderRowDef="
262
- rxapTableColumns.displayColumns | toFilterColumnNames
263
- "
264
- ></tr>
265
- <% } %>
266
-
267
- <tr
268
- mat-header-row
269
- *matHeaderRowDef="rxapTableColumns.displayColumns"
270
- ></tr>
271
-
272
- <tr
273
- [@rowsAnimation]=""
274
- mat-row
275
- [ngClass]="{ 'rxap-row-odd !bg-neutral-200 dark:!bg-neutral-600': odd, 'rxap-row-even': even }"
276
- class="hover:!bg-neutral-400 dark:hover:!bg-neutral-800"
277
- *matRowDef="
278
- let element;
279
- columns: rxapTableColumns.displayColumns;
280
- let odd = odd;
281
- let even = even
282
- "
283
- ></tr>
284
- </table>
285
- </div>
286
- </mat-card-content>
287
-
288
- <mat-card-footer
289
- ><mat-paginator
290
- [ngClass]="{ 'hidden': tableDataSourceDirective.hasError$ | async }"
291
- rxapPersistent
292
- [pageSizeOptions]="[5,10,25,50,100]"
293
- [pageSize]="10"
294
- #paginator="matPaginator"
295
- ></mat-paginator
296
- ></mat-card-footer>
297
- </mat-card>
298
- </div>
299
- </div>
@@ -1,213 +0,0 @@
1
- <div class="flex flex-col gap-y-4 m-4">
2
- <% if (hasNavigationBackHeader) { %>
3
- <rxap-navigate-back-button>
4
- <h1 i18n><%= title %></h1>
5
- </rxap-navigate-back-button>
6
- <mat-divider></mat-divider>
7
- <% } %>
8
-
9
- <div class="table-card-container flex flex-col">
10
- <mat-card>
11
- <mat-progress-bar
12
- rxapCardProgressBar
13
- [loading$]="tableDataSourceDirective.loading$"
14
- ></mat-progress-bar>
15
- <mat-card-header class="min-h-full h-12<% if (!headerButton && hasWithoutTitle) { %> justify-end<% } %>">
16
- <% if (!hasWithoutTitle) { %>
17
- <mat-card-title i18n><%= title %></mat-card-title>
18
- <% } %>
19
- <% if (headerButton) { %>
20
- <button
21
- mat-card-avatar
22
- mat-mini-fab
23
- color="primary"
24
- matTooltip
25
- [disabled]="tableDataSourceDirective.hasError$ | async"
26
- [rxapTableHeaderButton]="tableDataSourceDirective"
27
- <% if (headerButton.permission) { %>rxapHasEnablePermission="<%= headerButton.permission %>"<% } %>
28
- >
29
- <% if (headerButton.icon) { %><mat-icon><%= headerButton.icon %></mat-icon><% } else if (headerButton.svgIcon) { %><mat-icon svgIcon="<%= headerButton.svgIcon %>"></mat-icon><% } else { %><mat-icon>add</mat-icon><% } %>
30
- </button>
31
- <mat-card-subtitle i18n><%= headerButton.label %></mat-card-subtitle>
32
- <% } %>
33
- <rxap-table-column-menu matCard #rxapTableColumns="rxapTableColumns" <% if (!headerButton && hasWithoutTitle) { %>inline<% } %>>
34
- <% for (const column of columnList) { %>
35
- <rxap-table-column-option
36
- name="<%= column.name %>"<% if (column.active) { %><%= ' active' %><% } %><% if (column.hidden) { %><%= ' hidden' %><% } %><% if (column.inactive) { %><%= ' inactive' %><% } %><% if (column.show) { %><%= ' show' %><% } %>>
37
- <ng-container i18n><%= column.title %></ng-container>
38
- </rxap-table-column-option>
39
- <% } %>
40
- <% if (actionList.length) { %>
41
- <rxap-table-column-option hidden name="actions">
42
- <ng-container i18n>Actions</ng-container>
43
- </rxap-table-column-option>
44
- <% } %>
45
- <mat-divider></mat-divider>
46
- <span mat-menu-item>
47
- <rxap-table-show-archived-slide></rxap-table-show-archived-slide>
48
- </span>
49
- </rxap-table-column-menu>
50
- </mat-card-header>
51
-
52
- <mat-card-content>
53
- <rxap-data-source-error
54
- [loading]="tableDataSourceDirective.loading$"
55
- [error]="tableDataSourceDirective.dataSource?.error$"
56
- *ngIf="tableDataSourceDirective.hasError$ | async"
57
- [refresh]="tableDataSourceDirective.retry">
58
- </rxap-data-source-error>
59
- <div class="table-scroll-container mt-4 overflow-x-auto overscroll-auto">
60
- <table
61
- [ngClass]="{ 'hidden': tableDataSourceDirective.hasError$ | async }"
62
- matSort
63
- mat-table
64
- #tableDataSourceDirective="rxapTableDataSource"
65
- rxapTableDataSource
66
- [parameters]="parameters"
67
- id="<%= name %>"
68
- >
69
- <!-- region columns -->
70
-
71
- <% if (actionList.length) { %>
72
- <ng-container matColumnDef="actions" stickyEnd>
73
- <th mat-header-cell *matHeaderCellDef>
74
- <% if (selectColumn) { %>
75
- <div class="flex flex-row" *rxapSelectedRows="let selected">
76
- <% for (const action of actionList) { %>
77
- <% if (action.inHeader) { %>
78
- <button
79
- rxapTableRowHeaderAction="<%= action.type %>"
80
- mat-icon-button
81
- <% if (action.color) { %>color="<%= action.color %>"<% } %>
82
- <% if (action.cssClass) { %>class="<%= action.cssClass %>"<% } %>
83
- *ngIf="selected | rxapRowActionCheck:'<%= action.type %>'"
84
- <% if (action.permission) { %>rxapHasEnablePermission="<%= action.permission %>"<% } %>
85
- matTooltip
86
- >
87
- <% if (action.icon) { %><mat-icon><%= action.icon %></mat-icon><% } else if (action.svgIcon) { %><mat-icon svgIcon="<%= action.svgIcon %>"></mat-icon><% } else { %><mat-icon><%= action.type %></mat-icon><% } %>
88
- <mat-progress-bar
89
- *rxapTableRowActionExecuting
90
- mode="indeterminate"
91
- ></mat-progress-bar>
92
- </button>
93
- <% } %>
94
- <% } %>
95
- </div>
96
- <% } %>
97
- </th>
98
-
99
- <td mat-cell *matCellDef="let element">
100
- <div class="flex flex-row">
101
- <% for (const action of actionList) { %>
102
- <button
103
- rxapTableRowAction="<%= action.type %>"
104
- [element]="element"
105
- <% if (action.color) { %>color="<%= action.color %>"<% } %>
106
- <% if (action.cssClass) { %>class="<%= action.cssClass %>"<% } %>
107
- mat-icon-button
108
- *ngIf="element | rxapRowActionCheck:'<%= action.type %>'"
109
- <% if (action.permission) { %>rxapHasEnablePermission="<%= action.permission %>"<% } %>
110
- matTooltip
111
- >
112
- <% if (action.icon) { %><mat-icon><%= action.icon %></mat-icon><% } else if (action.svgIcon) { %><mat-icon svgIcon="<%= action.svgIcon %>"></mat-icon><% } else { %><mat-icon><%= action.type %></mat-icon><% } %>
113
- <mat-progress-bar
114
- *rxapTableRowActionExecuting
115
- mode="indeterminate"
116
- ></mat-progress-bar>
117
- </button>
118
- <% } %>
119
- </div>
120
- </td>
121
- </ng-container>
122
- <% } %>
123
- <% for (const column of columnList) { %>
124
- <% if (column.role === 'copy-to-clipboard') { %>
125
- <ng-container matColumnDef="<%= column.name %>">
126
- <th mat-header-cell *matHeaderCellDef mat-sort-header>
127
- <ng-container i18n><%= column.title %></ng-container>
128
- </th>
129
- <td *matCellDef="let element" mat-cell <% if (column.cssClass) { %>class="<%= column.cssClass %>"<% } %> [rxap-copy-to-clipboard-cell]="element?.<%= column.propertyPath %>"></td>
130
- </ng-container>
131
- <% } else if (column.role === 'link') { %>
132
- <ng-container matColumnDef="<%= column.name %>">
133
- <th mat-header-cell *matHeaderCellDef mat-sort-header>
134
- <ng-container i18n><%= column.title %></ng-container>
135
- </th>
136
- <td *matCellDef="let element" mat-cell <% if (column.cssClass) { %>class="<%= column.cssClass %>"<% } %> [rxap-link-cell]="element?.<%= column.propertyPath %>"></td>
137
- </ng-container>
138
- <% } else if (column.role === 'date') { %>
139
- <ng-container matColumnDef="<%= column.name %>">
140
- <th mat-header-cell *matHeaderCellDef mat-sort-header>
141
- <ng-container i18n><%= column.title %></ng-container>
142
- </th>
143
-
144
- <td *matCellDef="let element" mat-cell <% if (column.cssClass) { %>class="<%= column.cssClass %>"<% } %> [rxap-date-cell]="element?.<%= column.propertyPath %>" format="dd.MM.yyyy HH:mm:ss"></td>
145
- </ng-container>
146
- <% } else if (column.role === 'boolean') { %>
147
- <ng-container matColumnDef="<%= column.name %>">
148
- <th mat-header-cell *matHeaderCellDef mat-sort-header>
149
- <ng-container i18n><%= column.title %></ng-container>
150
- </th>
151
-
152
- <td *matCellDef="let element" mat-cell <% if (column.cssClass) { %>class="<%= column.cssClass %>"<% } %> [rxap-boolean-cell]="element?.<%= column.propertyPath %>"></td>
153
- </ng-container>
154
- <% } else if (column.role === 'icon') { %>
155
- <ng-container matColumnDef="<%= column.name %>">
156
- <th mat-header-cell *matHeaderCellDef mat-sort-header>
157
- <ng-container i18n><%= column.title %></ng-container>
158
- </th>
159
-
160
- <td *matCellDef="let element" mat-cell <% if (column.cssClass) { %>class="<%= column.cssClass %>"<% } %> [rxap-icon-cell]="element?.<%= column.propertyPath %>"></td>
161
- </ng-container>
162
- <% } else if (column.role === 'component') { %>
163
- <ng-container matColumnDef="<%= column.name %>">
164
- <th mat-header-cell *matHeaderCellDef mat-sort-header>
165
- <ng-container i18n><%= column.title %></ng-container>
166
- </th>
167
-
168
- <td *matCellDef="let element" mat-cell <% if (column.cssClass) { %>class="<%= column.cssClass %>"<% } %> <%= prefix %>-<%= column.name %>-cell [element]="element" [value]="element?.<%= column.propertyPath %>"></td>
169
- </ng-container>
170
- <% } else { %>
171
- <ng-container matColumnDef="<%= column.name %>">
172
- <th mat-header-cell *matHeaderCellDef mat-sort-header>
173
- <ng-container i18n><%= column.title %></ng-container>
174
- </th>
175
-
176
- <td mat-cell <% if (column.cssClass) { %>class="<%= column.cssClass %>"<% } %> *matCellDef="let element">
177
- <% if (column.template) { %>
178
- <%= column.template %>
179
- <% } else if (column.pipeList.length) { %>
180
- {{ element?.<%= column.propertyPath %><% for (const pipe of column.pipeList) { %> | <%= pipe.name %><% } %> }}
181
- <% } else { %>
182
- {{ element?.<%= column.propertyPath %> }}
183
- <% } %>
184
- </td>
185
- </ng-container>
186
- <% } %>
187
- <% } %>
188
-
189
- <!-- endregion -->
190
-
191
- <tr
192
- mat-header-row
193
- *matHeaderRowDef="rxapTableColumns.displayColumns"
194
- ></tr>
195
-
196
- <tr
197
- [@rowsAnimation]=""
198
- mat-row
199
- [ngClass]="{ 'rxap-row-odd !bg-neutral-200 dark:!bg-neutral-600': odd, 'rxap-row-even': even }"
200
- class="hover:!bg-neutral-400 dark:hover:!bg-neutral-800"
201
- *matRowDef="
202
- let element;
203
- columns: rxapTableColumns.displayColumns;
204
- let odd = odd;
205
- let even = even
206
- "
207
- ></tr>
208
- </table>
209
- </div>
210
- </mat-card-content>
211
- </mat-card>
212
- </div>
213
- </div>