@verisoft/ui-primeng 18.7.0 → 18.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (383) hide show
  1. package/README.md +7 -57
  2. package/assets/icons/complex/v-logo.svg +4 -4
  3. package/assets/sass/base/_scrollbar.scss +18 -18
  4. package/assets/sass/base/_typography.scss +24 -24
  5. package/assets/sass/layout/_app.scss +26 -26
  6. package/assets/sass/layout/_button.scss +57 -57
  7. package/assets/sass/layout/_checkbox.scss +32 -32
  8. package/assets/sass/layout/_dialog.scss +12 -12
  9. package/assets/sass/layout/_dropdown.scss +8 -8
  10. package/assets/sass/layout/_formField.scss +4 -4
  11. package/assets/sass/layout/_header.scss +62 -62
  12. package/assets/sass/layout/_icons.scss +12 -12
  13. package/assets/sass/layout/_inputSwitch.scss +12 -12
  14. package/assets/sass/layout/_layout.scss +5 -5
  15. package/assets/sass/layout/_loader.scss +8 -8
  16. package/assets/sass/layout/_radiobutton.scss +21 -21
  17. package/assets/sass/layout/_sidemenu.scss +172 -172
  18. package/assets/sass/layout/_snackbar.scss +7 -7
  19. package/assets/sass/layout/_tables.scss +4 -4
  20. package/assets/sass/layout/_tree.scss +11 -11
  21. package/assets/sass/layout/_tristatecheckbox.scss +14 -14
  22. package/assets/sass/main.scss +28 -28
  23. package/assets/sass/themes/_verisoft_theme.scss +46 -46
  24. package/assets/sass/utils/_utils.scss +39 -39
  25. package/assets/sass/utils/_variables.scss +12 -12
  26. package/assets/sass/vendors/_bootstrap.scss +2 -2
  27. package/assets/sass/vendors/_primeng.scss +2 -2
  28. package/esm2022/index.mjs +30 -0
  29. package/esm2022/lib/components/breadcrumb/breadcrumb.component.mjs +31 -0
  30. package/esm2022/lib/components/breadcrumb/breadcrumb.pipe.mjs +17 -0
  31. package/esm2022/lib/components/breadcrumb/index.mjs +2 -0
  32. package/esm2022/lib/components/button/button.component.mjs +61 -0
  33. package/esm2022/lib/components/button/index.mjs +2 -0
  34. package/esm2022/lib/components/calendar/calendar.component.mjs +73 -0
  35. package/esm2022/lib/components/calendar/index.mjs +2 -0
  36. package/esm2022/lib/components/checkbox/checkbox.component.mjs +47 -0
  37. package/esm2022/lib/components/checkbox/index.mjs +2 -0
  38. package/esm2022/lib/components/confirm-dialog/confirm-dialog.component.mjs +65 -0
  39. package/esm2022/lib/components/confirm-dialog/index.mjs +2 -0
  40. package/esm2022/lib/components/dropdown/dropdown.component.mjs +139 -0
  41. package/esm2022/lib/components/dropdown/index.mjs +2 -0
  42. package/esm2022/lib/components/errors/error.component.mjs +41 -0
  43. package/esm2022/lib/components/errors/index.mjs +2 -0
  44. package/esm2022/lib/components/form-field/form-field.component.mjs +41 -0
  45. package/esm2022/lib/components/form-field/index.mjs +2 -0
  46. package/esm2022/lib/components/header/header.component.mjs +58 -0
  47. package/esm2022/lib/components/header/index.mjs +3 -0
  48. package/esm2022/lib/components/header/services/header-provider.service.mjs +24 -0
  49. package/esm2022/lib/components/input-group/index.mjs +2 -0
  50. package/esm2022/lib/components/input-group/input-group.component.mjs +57 -0
  51. package/esm2022/lib/components/loader/index.mjs +2 -0
  52. package/esm2022/lib/components/loader/loader.component.mjs +19 -0
  53. package/esm2022/lib/components/multiselect/index.mjs +2 -0
  54. package/esm2022/lib/components/multiselect/multiselect.component.mjs +124 -0
  55. package/esm2022/lib/components/number-input/index.mjs +2 -0
  56. package/esm2022/lib/components/number-input/number-input.component.mjs +64 -0
  57. package/esm2022/lib/components/page-header/index.mjs +2 -0
  58. package/esm2022/lib/components/page-header/page-header.component.mjs +28 -0
  59. package/esm2022/lib/components/password/index.mjs +2 -0
  60. package/esm2022/lib/components/password/password.component.mjs +59 -0
  61. package/esm2022/lib/components/radiobutton/index.mjs +2 -0
  62. package/esm2022/lib/components/radiobutton/radiobutton.component.mjs +57 -0
  63. package/esm2022/lib/components/section/index.mjs +2 -0
  64. package/esm2022/lib/components/section/section.component.mjs +35 -0
  65. package/esm2022/lib/components/shared-components/action-button-group/action-button-group.component.mjs +92 -0
  66. package/esm2022/lib/components/shared-components/action-button-group/components/action-button/action-button.component.mjs +60 -0
  67. package/esm2022/lib/components/shared-components/action-button-group/index.mjs +3 -0
  68. package/esm2022/lib/components/shared-components/dynamic-component/dynamic-component-factory.service.mjs +90 -0
  69. package/esm2022/lib/components/shared-components/dynamic-component/dynamic-component.component.mjs +41 -0
  70. package/esm2022/lib/components/shared-components/dynamic-component/index.mjs +3 -0
  71. package/esm2022/lib/components/shared-components/feature-list/directives/feature-list-column.directive.mjs +46 -0
  72. package/esm2022/lib/components/shared-components/feature-list/directives/feature-list-filter-field.directive.mjs +16 -0
  73. package/esm2022/lib/components/shared-components/feature-list/feature-list-filter.pipe.mjs +24 -0
  74. package/esm2022/lib/components/shared-components/feature-list/feature-list-page.component.mjs +42 -0
  75. package/esm2022/lib/components/shared-components/feature-list/feature-list-page.model.mjs +16 -0
  76. package/esm2022/lib/components/shared-components/feature-list/feature-list.component.mjs +275 -0
  77. package/esm2022/lib/components/shared-components/feature-list/index.mjs +6 -0
  78. package/esm2022/lib/components/shared-components/filter/directives/filter-field.directive.mjs +44 -0
  79. package/esm2022/lib/components/shared-components/filter/filter.component.mjs +190 -0
  80. package/esm2022/lib/components/shared-components/filter/filter.model.mjs +16 -0
  81. package/esm2022/lib/components/shared-components/filter/index.mjs +3 -0
  82. package/esm2022/lib/components/shared-components/generic-field/generic-field.component.mjs +93 -0
  83. package/esm2022/lib/components/shared-components/generic-field/index.mjs +2 -0
  84. package/esm2022/lib/components/shared-components/generic-form/generic-form.component.mjs +40 -0
  85. package/esm2022/lib/components/shared-components/generic-form/generic-form.model.mjs +50 -0
  86. package/esm2022/lib/components/shared-components/generic-form/index.mjs +3 -0
  87. package/esm2022/lib/components/shared-components/index.mjs +7 -0
  88. package/esm2022/lib/components/side-menu/index.mjs +3 -0
  89. package/esm2022/lib/components/side-menu/side-menu.component.mjs +92 -0
  90. package/esm2022/lib/components/side-menu/side-menu.module.mjs +74 -0
  91. package/esm2022/lib/components/slider/index.mjs +2 -0
  92. package/esm2022/lib/components/slider/slider.component.mjs +62 -0
  93. package/esm2022/lib/components/snackbar/index.mjs +3 -0
  94. package/esm2022/lib/components/snackbar/services/snackbar.service.mjs +50 -0
  95. package/esm2022/lib/components/snackbar/snackbar.component.mjs +33 -0
  96. package/esm2022/lib/components/stepper/index.mjs +2 -0
  97. package/esm2022/lib/components/stepper/stepper.component.mjs +48 -0
  98. package/esm2022/lib/components/switch/index.mjs +2 -0
  99. package/esm2022/lib/components/switch/switch.component.mjs +54 -0
  100. package/esm2022/lib/components/tab-view/index.mjs +4 -0
  101. package/esm2022/lib/components/tab-view/tab-menu.pipe.mjs +25 -0
  102. package/esm2022/lib/components/tab-view/tab-view-item.component.mjs +31 -0
  103. package/esm2022/lib/components/tab-view/tab-view.component.mjs +50 -0
  104. package/esm2022/lib/components/tab-view/tab-view.module.mjs +29 -0
  105. package/esm2022/lib/components/table/index.mjs +2 -0
  106. package/esm2022/lib/components/table/table-filter.pipe.mjs +49 -0
  107. package/esm2022/lib/components/table/table.component.mjs +220 -0
  108. package/esm2022/lib/components/table/table.models.mjs +17 -0
  109. package/esm2022/lib/components/textarea/index.mjs +2 -0
  110. package/esm2022/lib/components/textarea/textarea.component.mjs +65 -0
  111. package/esm2022/lib/components/textfield/index.mjs +2 -0
  112. package/esm2022/lib/components/textfield/textfield.component.mjs +65 -0
  113. package/esm2022/lib/components/tristatecheckbox/index.mjs +2 -0
  114. package/esm2022/lib/components/tristatecheckbox/tristatecheckbox.component.mjs +53 -0
  115. package/esm2022/lib/icons.mjs +35 -0
  116. package/esm2022/lib/interceptors/http-error-message.interceptor.mjs +31 -0
  117. package/esm2022/verisoft-ui-primeng.mjs +5 -0
  118. package/fesm2022/verisoft-ui-primeng.mjs +2909 -0
  119. package/fesm2022/verisoft-ui-primeng.mjs.map +1 -0
  120. package/{src/index.ts → index.d.ts} +29 -29
  121. package/lib/components/breadcrumb/breadcrumb.component.d.ts +6 -0
  122. package/lib/components/breadcrumb/breadcrumb.pipe.d.ts +9 -0
  123. package/{src/lib/components/breadcrumb/index.ts → lib/components/breadcrumb/index.d.ts} +1 -1
  124. package/lib/components/button/button.component.d.ts +20 -0
  125. package/{src/lib/components/button/index.ts → lib/components/button/index.d.ts} +1 -1
  126. package/lib/components/calendar/calendar.component.d.ts +17 -0
  127. package/{src/lib/components/calendar/index.ts → lib/components/calendar/index.d.ts} +1 -1
  128. package/lib/components/checkbox/checkbox.component.d.ts +9 -0
  129. package/{src/lib/components/checkbox/index.ts → lib/components/checkbox/index.d.ts} +1 -1
  130. package/lib/components/confirm-dialog/confirm-dialog.component.d.ts +15 -0
  131. package/{src/lib/components/confirm-dialog/index.ts → lib/components/confirm-dialog/index.d.ts} +1 -1
  132. package/lib/components/dropdown/dropdown.component.d.ts +38 -0
  133. package/{src/lib/components/dropdown/index.ts → lib/components/dropdown/index.d.ts} +1 -1
  134. package/lib/components/errors/error.component.d.ts +16 -0
  135. package/lib/components/errors/index.d.ts +1 -0
  136. package/lib/components/form-field/form-field.component.d.ts +12 -0
  137. package/{src/lib/components/form-field/index.ts → lib/components/form-field/index.d.ts} +1 -1
  138. package/lib/components/header/header.component.d.ts +23 -0
  139. package/{src/lib/components/header/index.ts → lib/components/header/index.d.ts} +2 -2
  140. package/lib/components/header/services/header-provider.service.d.ts +10 -0
  141. package/{src/lib/components/input-group/index.ts → lib/components/input-group/index.d.ts} +1 -1
  142. package/lib/components/input-group/input-group.component.d.ts +9 -0
  143. package/{src/lib/components/loader/index.ts → lib/components/loader/index.d.ts} +1 -1
  144. package/lib/components/loader/loader.component.d.ts +6 -0
  145. package/{src/lib/components/multiselect/index.ts → lib/components/multiselect/index.d.ts} +1 -1
  146. package/lib/components/multiselect/multiselect.component.d.ts +34 -0
  147. package/{src/lib/components/number-input/index.ts → lib/components/number-input/index.d.ts} +1 -1
  148. package/lib/components/number-input/number-input.component.d.ts +14 -0
  149. package/{src/lib/components/page-header/index.ts → lib/components/page-header/index.d.ts} +1 -1
  150. package/lib/components/page-header/page-header.component.d.ts +10 -0
  151. package/{src/lib/components/password/index.ts → lib/components/password/index.d.ts} +1 -1
  152. package/lib/components/password/password.component.d.ts +11 -0
  153. package/{src/lib/components/radiobutton/index.ts → lib/components/radiobutton/index.d.ts} +1 -1
  154. package/lib/components/radiobutton/radiobutton.component.d.ts +10 -0
  155. package/{src/lib/components/section/index.ts → lib/components/section/index.d.ts} +1 -1
  156. package/lib/components/section/section.component.d.ts +12 -0
  157. package/lib/components/shared-components/action-button-group/action-button-group.component.d.ts +29 -0
  158. package/lib/components/shared-components/action-button-group/components/action-button/action-button.component.d.ts +24 -0
  159. package/{src/lib/components/shared-components/action-button-group/index.ts → lib/components/shared-components/action-button-group/index.d.ts} +2 -2
  160. package/lib/components/shared-components/dynamic-component/dynamic-component-factory.service.d.ts +17 -0
  161. package/lib/components/shared-components/dynamic-component/dynamic-component.component.d.ts +16 -0
  162. package/{src/lib/components/shared-components/dynamic-component/index.ts → lib/components/shared-components/dynamic-component/index.d.ts} +2 -2
  163. package/lib/components/shared-components/feature-list/directives/feature-list-column.directive.d.ts +10 -0
  164. package/lib/components/shared-components/feature-list/directives/feature-list-filter-field.directive.d.ts +6 -0
  165. package/lib/components/shared-components/feature-list/feature-list-filter.pipe.d.ts +9 -0
  166. package/lib/components/shared-components/feature-list/feature-list-page.component.d.ts +9 -0
  167. package/lib/components/shared-components/feature-list/feature-list-page.model.d.ts +23 -0
  168. package/lib/components/shared-components/feature-list/feature-list.component.d.ts +62 -0
  169. package/{src/lib/components/shared-components/feature-list/index.ts → lib/components/shared-components/feature-list/index.d.ts} +5 -5
  170. package/lib/components/shared-components/filter/directives/filter-field.directive.d.ts +20 -0
  171. package/lib/components/shared-components/filter/filter.component.d.ts +53 -0
  172. package/lib/components/shared-components/filter/filter.model.d.ts +2 -0
  173. package/{src/lib/components/shared-components/filter/index.ts → lib/components/shared-components/filter/index.d.ts} +2 -2
  174. package/lib/components/shared-components/generic-field/generic-field.component.d.ts +28 -0
  175. package/{src/lib/components/shared-components/generic-field/index.ts → lib/components/shared-components/generic-field/index.d.ts} +1 -1
  176. package/lib/components/shared-components/generic-form/generic-form.component.d.ts +15 -0
  177. package/lib/components/shared-components/generic-form/generic-form.model.d.ts +4 -0
  178. package/{src/lib/components/shared-components/generic-form/index.ts → lib/components/shared-components/generic-form/index.d.ts} +2 -2
  179. package/{src/lib/components/shared-components/index.ts → lib/components/shared-components/index.d.ts} +6 -6
  180. package/{src/lib/components/side-menu/index.ts → lib/components/side-menu/index.d.ts} +2 -2
  181. package/lib/components/side-menu/side-menu.component.d.ts +27 -0
  182. package/lib/components/side-menu/side-menu.module.d.ts +13 -0
  183. package/{src/lib/components/slider/index.ts → lib/components/slider/index.d.ts} +1 -1
  184. package/lib/components/slider/slider.component.d.ts +12 -0
  185. package/{src/lib/components/snackbar/index.ts → lib/components/snackbar/index.d.ts} +2 -2
  186. package/lib/components/snackbar/services/snackbar.service.d.ts +12 -0
  187. package/lib/components/snackbar/snackbar.component.d.ts +9 -0
  188. package/{src/lib/components/stepper/index.ts → lib/components/stepper/index.d.ts} +1 -1
  189. package/lib/components/stepper/stepper.component.d.ts +17 -0
  190. package/{src/lib/components/switch/index.ts → lib/components/switch/index.d.ts} +1 -1
  191. package/lib/components/switch/switch.component.d.ts +9 -0
  192. package/{src/lib/components/tab-view/index.ts → lib/components/tab-view/index.d.ts} +3 -3
  193. package/lib/components/tab-view/tab-menu.pipe.d.ts +9 -0
  194. package/lib/components/tab-view/tab-view-item.component.d.ts +12 -0
  195. package/lib/components/tab-view/tab-view.component.d.ts +17 -0
  196. package/lib/components/tab-view/tab-view.module.d.ts +13 -0
  197. package/{src/lib/components/table/index.ts → lib/components/table/index.d.ts} +1 -1
  198. package/lib/components/table/table-filter.pipe.d.ts +13 -0
  199. package/lib/components/table/table.component.d.ts +67 -0
  200. package/lib/components/table/table.models.d.ts +4 -0
  201. package/{src/lib/components/textarea/index.ts → lib/components/textarea/index.d.ts} +1 -1
  202. package/lib/components/textarea/textarea.component.d.ts +12 -0
  203. package/{src/lib/components/textfield/index.ts → lib/components/textfield/index.d.ts} +1 -1
  204. package/lib/components/textfield/textfield.component.d.ts +12 -0
  205. package/{src/lib/components/tristatecheckbox/index.ts → lib/components/tristatecheckbox/index.d.ts} +1 -1
  206. package/lib/components/tristatecheckbox/tristatecheckbox.component.d.ts +9 -0
  207. package/lib/icons.d.ts +2 -0
  208. package/lib/interceptors/http-error-message.interceptor.d.ts +11 -0
  209. package/package.json +37 -22
  210. package/.eslintrc.json +0 -43
  211. package/assets/.gitkeep +0 -0
  212. package/jest.config.ts +0 -22
  213. package/ng-package.json +0 -15
  214. package/project.json +0 -36
  215. package/src/lib/components/breadcrumb/breadcrumb.component.html +0 -12
  216. package/src/lib/components/breadcrumb/breadcrumb.component.scss +0 -18
  217. package/src/lib/components/breadcrumb/breadcrumb.component.spec.ts +0 -21
  218. package/src/lib/components/breadcrumb/breadcrumb.component.stories.ts +0 -36
  219. package/src/lib/components/breadcrumb/breadcrumb.component.ts +0 -29
  220. package/src/lib/components/breadcrumb/breadcrumb.pipe.ts +0 -13
  221. package/src/lib/components/button/button.component.html +0 -20
  222. package/src/lib/components/button/button.component.scss +0 -0
  223. package/src/lib/components/button/button.component.spec.ts +0 -21
  224. package/src/lib/components/button/button.component.ts +0 -49
  225. package/src/lib/components/calendar/calendar.component.html +0 -53
  226. package/src/lib/components/calendar/calendar.component.scss +0 -0
  227. package/src/lib/components/calendar/calendar.component.spec.ts +0 -21
  228. package/src/lib/components/calendar/calendar.component.ts +0 -72
  229. package/src/lib/components/checkbox/checkbox.component.html +0 -19
  230. package/src/lib/components/checkbox/checkbox.component.scss +0 -15
  231. package/src/lib/components/checkbox/checkbox.component.spec.ts +0 -21
  232. package/src/lib/components/checkbox/checkbox.component.stories.ts +0 -72
  233. package/src/lib/components/checkbox/checkbox.component.ts +0 -45
  234. package/src/lib/components/confirm-dialog/confirm-dialog.component.html +0 -48
  235. package/src/lib/components/confirm-dialog/confirm-dialog.component.scss +0 -3
  236. package/src/lib/components/confirm-dialog/confirm-dialog.component.spec.ts +0 -21
  237. package/src/lib/components/confirm-dialog/confirm-dialog.component.stories.ts +0 -74
  238. package/src/lib/components/confirm-dialog/confirm-dialog.component.ts +0 -74
  239. package/src/lib/components/dropdown/dropdown.component.html +0 -96
  240. package/src/lib/components/dropdown/dropdown.component.scss +0 -16
  241. package/src/lib/components/dropdown/dropdown.component.spec.ts +0 -21
  242. package/src/lib/components/dropdown/dropdown.component.stories.ts +0 -90
  243. package/src/lib/components/dropdown/dropdown.component.ts +0 -144
  244. package/src/lib/components/errors/error.component.html +0 -6
  245. package/src/lib/components/errors/error.component.scss +0 -3
  246. package/src/lib/components/errors/error.component.ts +0 -35
  247. package/src/lib/components/errors/index.ts +0 -1
  248. package/src/lib/components/form-field/form-field.component.html +0 -36
  249. package/src/lib/components/form-field/form-field.component.scss +0 -0
  250. package/src/lib/components/form-field/form-field.component.spec.ts +0 -21
  251. package/src/lib/components/form-field/form-field.component.stories.ts +0 -69
  252. package/src/lib/components/form-field/form-field.component.ts +0 -38
  253. package/src/lib/components/header/header.component.html +0 -84
  254. package/src/lib/components/header/header.component.scss +0 -0
  255. package/src/lib/components/header/header.component.spec.ts +0 -21
  256. package/src/lib/components/header/header.component.stories.ts +0 -24
  257. package/src/lib/components/header/header.component.ts +0 -66
  258. package/src/lib/components/header/services/header-provider.service.ts +0 -15
  259. package/src/lib/components/input-group/input-group.component.html +0 -30
  260. package/src/lib/components/input-group/input-group.component.spec.ts +0 -21
  261. package/src/lib/components/input-group/input-group.component.ts +0 -60
  262. package/src/lib/components/loader/loader.component.html +0 -5
  263. package/src/lib/components/loader/loader.component.scss +0 -0
  264. package/src/lib/components/loader/loader.component.spec.ts +0 -21
  265. package/src/lib/components/loader/loader.component.ts +0 -17
  266. package/src/lib/components/multiselect/multiselect.component.html +0 -70
  267. package/src/lib/components/multiselect/multiselect.component.scss +0 -0
  268. package/src/lib/components/multiselect/multiselect.component.spec.ts +0 -21
  269. package/src/lib/components/multiselect/multiselect.component.ts +0 -122
  270. package/src/lib/components/number-input/number-input.component.html +0 -22
  271. package/src/lib/components/number-input/number-input.component.spec.ts +0 -21
  272. package/src/lib/components/number-input/number-input.component.ts +0 -57
  273. package/src/lib/components/page-header/page-header.component.html +0 -31
  274. package/src/lib/components/page-header/page-header.component.scss +0 -0
  275. package/src/lib/components/page-header/page-header.component.spec.ts +0 -21
  276. package/src/lib/components/page-header/page-header.component.ts +0 -32
  277. package/src/lib/components/password/password.component.html +0 -24
  278. package/src/lib/components/password/password.component.scss +0 -0
  279. package/src/lib/components/password/password.component.spec.ts +0 -21
  280. package/src/lib/components/password/password.component.ts +0 -58
  281. package/src/lib/components/radiobutton/radiobutton.component.html +0 -32
  282. package/src/lib/components/radiobutton/radiobutton.component.scss +0 -6
  283. package/src/lib/components/radiobutton/radiobutton.component.spec.ts +0 -21
  284. package/src/lib/components/radiobutton/radiobutton.component.stories.ts +0 -71
  285. package/src/lib/components/radiobutton/radiobutton.component.ts +0 -62
  286. package/src/lib/components/section/section.component.html +0 -23
  287. package/src/lib/components/section/section.component.scss +0 -0
  288. package/src/lib/components/section/section.component.spec.ts +0 -21
  289. package/src/lib/components/section/section.component.ts +0 -32
  290. package/src/lib/components/shared-components/action-button-group/action-button-group.component.html +0 -27
  291. package/src/lib/components/shared-components/action-button-group/action-button-group.component.scss +0 -0
  292. package/src/lib/components/shared-components/action-button-group/action-button-group.component.spec.ts +0 -21
  293. package/src/lib/components/shared-components/action-button-group/action-button-group.component.ts +0 -114
  294. package/src/lib/components/shared-components/action-button-group/components/action-button/action-button.component.html +0 -11
  295. package/src/lib/components/shared-components/action-button-group/components/action-button/action-button.component.scss +0 -0
  296. package/src/lib/components/shared-components/action-button-group/components/action-button/action-button.component.spec.ts +0 -21
  297. package/src/lib/components/shared-components/action-button-group/components/action-button/action-button.component.ts +0 -71
  298. package/src/lib/components/shared-components/dynamic-component/dynamic-component-factory.service.ts +0 -142
  299. package/src/lib/components/shared-components/dynamic-component/dynamic-component.component.ts +0 -56
  300. package/src/lib/components/shared-components/feature-list/directives/feature-list-column.directive.ts +0 -32
  301. package/src/lib/components/shared-components/feature-list/directives/feature-list-filter-field.directive.ts +0 -8
  302. package/src/lib/components/shared-components/feature-list/feature-list-filter.pipe.ts +0 -21
  303. package/src/lib/components/shared-components/feature-list/feature-list-page.component.ts +0 -31
  304. package/src/lib/components/shared-components/feature-list/feature-list-page.model.ts +0 -42
  305. package/src/lib/components/shared-components/feature-list/feature-list.component.html +0 -59
  306. package/src/lib/components/shared-components/feature-list/feature-list.component.scss +0 -10
  307. package/src/lib/components/shared-components/feature-list/feature-list.component.ts +0 -342
  308. package/src/lib/components/shared-components/filter/directives/filter-field.directive.ts +0 -35
  309. package/src/lib/components/shared-components/filter/filter.component.html +0 -68
  310. package/src/lib/components/shared-components/filter/filter.component.scss +0 -0
  311. package/src/lib/components/shared-components/filter/filter.component.spec.ts +0 -21
  312. package/src/lib/components/shared-components/filter/filter.component.stories.ts +0 -23
  313. package/src/lib/components/shared-components/filter/filter.component.ts +0 -284
  314. package/src/lib/components/shared-components/filter/filter.model.ts +0 -18
  315. package/src/lib/components/shared-components/generic-field/generic-field.component.html +0 -97
  316. package/src/lib/components/shared-components/generic-field/generic-field.component.spec.ts +0 -21
  317. package/src/lib/components/shared-components/generic-field/generic-field.component.ts +0 -94
  318. package/src/lib/components/shared-components/generic-form/generic-form.component.html +0 -46
  319. package/src/lib/components/shared-components/generic-form/generic-form.component.spec.ts +0 -21
  320. package/src/lib/components/shared-components/generic-form/generic-form.component.ts +0 -57
  321. package/src/lib/components/shared-components/generic-form/generic-form.model.spec.ts +0 -82
  322. package/src/lib/components/shared-components/generic-form/generic-form.model.ts +0 -68
  323. package/src/lib/components/side-menu/side-menu.component.html +0 -52
  324. package/src/lib/components/side-menu/side-menu.component.scss +0 -0
  325. package/src/lib/components/side-menu/side-menu.component.spec.ts +0 -21
  326. package/src/lib/components/side-menu/side-menu.component.ts +0 -98
  327. package/src/lib/components/side-menu/side-menu.module.ts +0 -66
  328. package/src/lib/components/slider/slider.component.html +0 -19
  329. package/src/lib/components/slider/slider.component.spec.ts +0 -21
  330. package/src/lib/components/slider/slider.component.ts +0 -58
  331. package/src/lib/components/snackbar/services/snackbar.service.ts +0 -45
  332. package/src/lib/components/snackbar/snackbar.component.html +0 -3
  333. package/src/lib/components/snackbar/snackbar.component.scss +0 -0
  334. package/src/lib/components/snackbar/snackbar.component.spec.ts +0 -21
  335. package/src/lib/components/snackbar/snackbar.component.stories.ts +0 -70
  336. package/src/lib/components/snackbar/snackbar.component.ts +0 -26
  337. package/src/lib/components/stepper/stepper.component.html +0 -43
  338. package/src/lib/components/stepper/stepper.component.spec.ts +0 -21
  339. package/src/lib/components/stepper/stepper.component.ts +0 -40
  340. package/src/lib/components/switch/switch.component.html +0 -18
  341. package/src/lib/components/switch/switch.component.scss +0 -0
  342. package/src/lib/components/switch/switch.component.spec.ts +0 -21
  343. package/src/lib/components/switch/switch.component.stories.ts +0 -65
  344. package/src/lib/components/switch/switch.component.ts +0 -54
  345. package/src/lib/components/tab-view/tab-menu.pipe.ts +0 -23
  346. package/src/lib/components/tab-view/tab-view-item.component.ts +0 -22
  347. package/src/lib/components/tab-view/tab-view.component.html +0 -23
  348. package/src/lib/components/tab-view/tab-view.component.ts +0 -55
  349. package/src/lib/components/tab-view/tab-view.module.ts +0 -19
  350. package/src/lib/components/table/table-filter.pipe.ts +0 -59
  351. package/src/lib/components/table/table.component.html +0 -123
  352. package/src/lib/components/table/table.component.scss +0 -11
  353. package/src/lib/components/table/table.component.spec.ts +0 -21
  354. package/src/lib/components/table/table.component.stories.ts +0 -55
  355. package/src/lib/components/table/table.component.ts +0 -289
  356. package/src/lib/components/table/table.models.ts +0 -26
  357. package/src/lib/components/textarea/textarea.component.html +0 -40
  358. package/src/lib/components/textarea/textarea.component.scss +0 -5
  359. package/src/lib/components/textarea/textarea.component.spec.ts +0 -21
  360. package/src/lib/components/textarea/textarea.component.stories.ts +0 -98
  361. package/src/lib/components/textarea/textarea.component.ts +0 -64
  362. package/src/lib/components/textfield/textfield.component.html +0 -83
  363. package/src/lib/components/textfield/textfield.component.scss +0 -23
  364. package/src/lib/components/textfield/textfield.component.spec.ts +0 -21
  365. package/src/lib/components/textfield/textfield.component.stories.ts +0 -85
  366. package/src/lib/components/textfield/textfield.component.ts +0 -69
  367. package/src/lib/components/tristatecheckbox/tristatecheckbox.component.html +0 -23
  368. package/src/lib/components/tristatecheckbox/tristatecheckbox.component.scss +0 -0
  369. package/src/lib/components/tristatecheckbox/tristatecheckbox.component.spec.ts +0 -21
  370. package/src/lib/components/tristatecheckbox/tristatecheckbox.component.stories.ts +0 -22
  371. package/src/lib/components/tristatecheckbox/tristatecheckbox.component.ts +0 -50
  372. package/src/lib/icons.ts +0 -36
  373. package/src/lib/interceptors/http-error-message.interceptor.ts +0 -35
  374. package/src/lib/pages/not-found-page/not-found-page.component.html +0 -26
  375. package/src/lib/pages/not-found-page/not-found-page.component.scss +0 -0
  376. package/src/lib/pages/not-found-page/not-found-page.component.spec.ts +0 -21
  377. package/src/lib/pages/not-found-page/not-found-page.component.ts +0 -17
  378. package/src/tab-view.ts +0 -1
  379. package/src/test-setup.ts +0 -8
  380. package/tsconfig.json +0 -29
  381. package/tsconfig.lib.json +0 -18
  382. package/tsconfig.lib.prod.json +0 -9
  383. package/tsconfig.spec.json +0 -16
@@ -1,56 +0,0 @@
1
- import {
2
- AfterViewInit,
3
- ChangeDetectionStrategy,
4
- ChangeDetectorRef,
5
- Component,
6
- inject,
7
- Injector,
8
- Input,
9
- OnChanges,
10
- Type,
11
- ViewChild,
12
- ViewContainerRef,
13
- } from '@angular/core';
14
- import { ExtendedComponent } from '@verisoft/ui-core';
15
- import { DynamicComponentFactoryService } from './dynamic-component-factory.service';
16
-
17
- @Component({
18
- selector: 'v-dynamic-component',
19
- standalone: true,
20
- changeDetection: ChangeDetectionStrategy.OnPush,
21
- template: `<ng-container #dynamicContainer></ng-container>`,
22
- })
23
- export class DynamicComponent<TComponent> implements AfterViewInit, OnChanges {
24
- @Input() componentType!: Type<TComponent>;
25
-
26
- @Input() data!: ExtendedComponent<TComponent>;
27
-
28
- @ViewChild('dynamicContainer', { read: ViewContainerRef, static: true })
29
- container!: ViewContainerRef;
30
-
31
- private factoryServices = inject(DynamicComponentFactoryService);
32
-
33
- private changeDetectorRef = inject(ChangeDetectorRef);
34
-
35
- private injector = inject(Injector);
36
-
37
- ngOnChanges(): void {
38
- this.createComponent();
39
- }
40
-
41
- ngAfterViewInit(): void {
42
- this.createComponent();
43
- this.changeDetectorRef.detectChanges();
44
- }
45
-
46
- private createComponent() {
47
- if (this.container) {
48
- this.factoryServices.createDynamicComponent(
49
- this.componentType,
50
- this.container,
51
- this.data,
52
- this.injector
53
- );
54
- }
55
- }
56
- }
@@ -1,32 +0,0 @@
1
- import { Directive, Input } from '@angular/core';
2
- import { GenericFieldType, GenericFieldTypeType, TableColumnDirective } from '@verisoft/ui-core';
3
- import { FEATURE_LIST_COLUMN_PROVIDER, FeatureListColumnDefinition, FeatureListColumnProvider } from '../feature-list-page.model';
4
-
5
- @Directive({
6
- // eslint-disable-next-line @angular-eslint/directive-selector
7
- selector: 'v-feature-list-column',
8
- standalone: true,
9
- providers: [
10
- {
11
- provide: FEATURE_LIST_COLUMN_PROVIDER,
12
- useExisting: FeatureListColumnDirective,
13
- multi: true,
14
- },
15
- ],
16
- })
17
- export class FeatureListColumnDirective<T>
18
- extends TableColumnDirective<T>
19
- implements FeatureListColumnProvider<T>
20
- {
21
- @Input() filter = false;
22
-
23
- @Input() type: GenericFieldTypeType = GenericFieldType.text;
24
-
25
- override getDefinition(): FeatureListColumnDefinition<T> {
26
- const definition = super.getDefinition() as FeatureListColumnDefinition<T>;
27
- definition.filter = this.filter;
28
- definition.type = this.type;
29
- definition.format = this.format;
30
- return definition;
31
- }
32
- }
@@ -1,8 +0,0 @@
1
- import { Directive } from '@angular/core';
2
- import { FilterFieldDirective } from '../../filter';
3
- @Directive({
4
- // eslint-disable-next-line @angular-eslint/directive-selector
5
- selector: 'v-feature-list-filter-field',
6
- standalone: true,
7
- })
8
- export class FeatureListFilterFieldDirective extends FilterFieldDirective {}
@@ -1,21 +0,0 @@
1
- import { Pipe, PipeTransform } from "@angular/core";
2
- import { GenericFieldDefinition, GenericFieldType } from "@verisoft/ui-core";
3
- import { FeatureListColumnDefinition } from "./feature-list-page.model";
4
-
5
- @Pipe({
6
- name: 'featureListColumn',
7
- standalone: true,
8
- })
9
- export class FeatureListFilterPipe<T> implements PipeTransform {
10
- transform(value: FeatureListColumnDefinition<T>[] | undefined): GenericFieldDefinition[] | undefined {
11
- if (!value){
12
- return undefined;
13
- }
14
-
15
- return value.filter(x => x.filter).map((x, index) => ({
16
- name: x.id,
17
- label: typeof x.headerName === 'function'? x.headerName(x.id, index) : x.headerName ?? '',
18
- type: x.type as GenericFieldType,
19
- }));
20
- }
21
- }
@@ -1,31 +0,0 @@
1
- import { Component } from '@angular/core';
2
- import { ActivatedRoute } from '@angular/router';
3
- import {
4
- FEATURE_LIST_PAGE_CONFIG_PROPERTY,
5
- FeatureListPageConfig,
6
- } from './feature-list-page.model';
7
- import { FeatureListComponent } from './feature-list.component';
8
-
9
- @Component({
10
- selector: 'v-feature-list-page',
11
- standalone: true,
12
- imports: [FeatureListComponent],
13
- template: `
14
- <v-feature-list
15
- [title]="config.title"
16
- [tableName]="config.tableName"
17
- [showAdd]="config.showAdd ?? true"
18
- [showDownload]="config.showDownload ?? true"
19
- [showDelete]="config.showDelete ?? true"
20
- >
21
- </v-feature-list>
22
- `,
23
- })
24
- export class FeatureListPageComponent {
25
- config!: FeatureListPageConfig;
26
-
27
- constructor(activatedRoute: ActivatedRoute) {
28
- this.config =
29
- activatedRoute.snapshot.data[FEATURE_LIST_PAGE_CONFIG_PROPERTY];
30
- }
31
- }
@@ -1,42 +0,0 @@
1
- import { InjectionToken } from '@angular/core';
2
- import { Route } from '@angular/router';
3
- import { ColumnDefinition, GenericFieldTypeType } from '@verisoft/ui-core';
4
- import { FeatureListPageComponent } from './feature-list-page.component';
5
-
6
- export interface FeatureListPageConfig {
7
- title: string;
8
- datasource: string;
9
- tableName: string;
10
- showAdd?: boolean;
11
- showDownload?: boolean;
12
- showDelete?: boolean;
13
- }
14
-
15
- export const FEATURE_LIST_PAGE_CONFIG_PROPERTY = 'feature_list_config';
16
-
17
- export function addFeatureListPage(
18
- value: Partial<Route> & { config: FeatureListPageConfig }
19
- ): Route {
20
- const { config, ...route } = value;
21
- return {
22
- component: FeatureListPageComponent,
23
- ...route,
24
- data: {
25
- [FEATURE_LIST_PAGE_CONFIG_PROPERTY]: config,
26
- ...(route.data ?? {}),
27
- },
28
- };
29
- }
30
-
31
- export interface FeatureListColumnDefinition<T> extends ColumnDefinition<T> {
32
- filter?: boolean;
33
- type?: GenericFieldTypeType;
34
- }
35
-
36
- export const FEATURE_LIST_COLUMN_PROVIDER = new InjectionToken(
37
- 'FEATURE_LIST_COLUMN_PROVIDER'
38
- );
39
-
40
- export interface FeatureListColumnProvider<T> {
41
- getDefinition: () => FeatureListColumnDefinition<T>;
42
- }
@@ -1,59 +0,0 @@
1
- <div class="feature-list__container full-height-container">
2
- <v-filter
3
- #filter
4
- [title]="title"
5
- [fields]="columns | featureListColumn"
6
- [filters]="filters"
7
- [fulltextFieldName]="fulltextFieldName"
8
- [showFulltext]="showFulltext"
9
- [showFilters]="showExtendedFilter"
10
- >
11
- <v-action-button-group
12
- [maxItems]="maxVisibleActions"
13
- [maxItemsMobile]="maxVisibleMobileActions"
14
- >
15
- @if (showAdd) {
16
- <v-action-button
17
- [icon]="icons.add"
18
- label="Add"
19
- [disabled]="!canAdd"
20
- (click)="addClick.emit()"
21
- ></v-action-button>
22
- } @if (showDelete){
23
- <v-action-button
24
- [icon]="icons.delete"
25
- label="Delete"
26
- [disabled]="!canDelete || !selection.length"
27
- (click)="startDeleteItems()"
28
- ></v-action-button>
29
- } @if (showDownload){
30
- <v-action-button
31
- [icon]="icons.download"
32
- label="Download"
33
- [disabled]="!canDownload"
34
- (click)="startDownload()"
35
- ></v-action-button>
36
- }
37
- </v-action-button-group>
38
- </v-filter>
39
- <div class="feature-list__table-container full-height-container">
40
- <div class="full-height-container">
41
- <v-table
42
- useDatasource
43
- useFilter
44
- [filterComponent]="filter"
45
- class="full-height-container"
46
- [selectionMode]="selectionMode"
47
- [tableName]="tableName"
48
- [autoBind]="true"
49
- [datasource]="datasource"
50
- [columns]="columns"
51
- [extraFilter]="extraFilter"
52
- [maximumColumnLength]="maximumColumnLength"
53
- [disableCustomClicks]="disableCustomClicks"
54
- (selectionChange)="selectItems($event)"
55
- >
56
- </v-table>
57
- </div>
58
- </div>
59
- </div>
@@ -1,10 +0,0 @@
1
- .full-height-container {
2
- display: flex;
3
- flex-direction: column;
4
- flex-grow: 1;
5
- height: 100%;
6
- }
7
-
8
- :host {
9
- @extend .full-height-container;
10
- }
@@ -1,342 +0,0 @@
1
- import { HttpClient } from '@angular/common/http';
2
- import {
3
- AfterViewInit,
4
- ChangeDetectionStrategy,
5
- ChangeDetectorRef,
6
- Component,
7
- ContentChildren,
8
- EventEmitter,
9
- inject,
10
- Input,
11
- Output,
12
- QueryList,
13
- ViewChild,
14
- } from '@angular/core';
15
- import {
16
- AllDataRequestParams,
17
- BASE_URL_PATH,
18
- BaseHttpService,
19
- convertDatasource,
20
- DatasourceType,
21
- DEFAULT_PAGE_SIZE,
22
- } from '@verisoft/core';
23
- import {
24
- ColumnModel,
25
- DialogService,
26
- downloadFile,
27
- GenericFieldDefinition,
28
- MAX_COLUMN_CHAR_COUNT,
29
- TableDatasourceDirective,
30
- TableFilterDirective,
31
- TableSelectionMode,
32
- TableSelectionModeType,
33
- } from '@verisoft/ui-core';
34
- import { take, switchMap, forkJoin, Observable, of } from 'rxjs';
35
- import { Icons } from '../../../icons';
36
- import { TableComponent } from '../../table';
37
- import {
38
- ActionButtonComponent,
39
- ActionButtonGroupComponent,
40
- } from '../action-button-group';
41
- import { FilterComponent } from '../filter';
42
- import { FeatureListFilterFieldDirective } from './directives/feature-list-filter-field.directive';
43
- import { FeatureListFilterPipe } from './feature-list-filter.pipe';
44
- import {
45
- FEATURE_LIST_COLUMN_PROVIDER,
46
- FeatureListColumnDefinition,
47
- FeatureListColumnProvider,
48
- } from './feature-list-page.model';
49
-
50
- @Component({
51
- selector: 'v-feature-list',
52
- imports: [
53
- TableComponent,
54
- TableDatasourceDirective,
55
- FilterComponent,
56
- TableFilterDirective,
57
- ActionButtonGroupComponent,
58
- ActionButtonComponent,
59
- FeatureListFilterPipe,
60
- ],
61
- standalone: true,
62
- templateUrl: './feature-list.component.html',
63
- styleUrls: ['./feature-list.component.scss'],
64
- changeDetection: ChangeDetectionStrategy.OnPush,
65
- })
66
- export class FeatureListComponent<T> implements AfterViewInit {
67
- @ContentChildren(FEATURE_LIST_COLUMN_PROVIDER) viewColumns!: QueryList<
68
- FeatureListColumnProvider<T>
69
- >;
70
-
71
- @ContentChildren(FeatureListFilterFieldDirective)
72
- fieldDeclarations!: QueryList<FeatureListFilterFieldDirective>;
73
-
74
- @ViewChild(TableDatasourceDirective)
75
- tableDatasourceDirective!: TableDatasourceDirective<T>;
76
-
77
- @Input() autoBind = true;
78
-
79
- @Input() title!: string;
80
-
81
- @Input() columns!: FeatureListColumnDefinition<T>[];
82
-
83
- @Input() filters!: GenericFieldDefinition[];
84
-
85
- @Input() maxVisibleActions = 2;
86
-
87
- @Input({ required: true }) tableName!: string;
88
-
89
- @Input() ngrxFeatureKey?: string;
90
-
91
- @Input() maxVisibleMobileActions = 0;
92
-
93
- @Input() showExtendedFilter = false;
94
-
95
- @Input() showDownload = false;
96
-
97
- @Input() showDelete = false;
98
-
99
- @Input() showAdd = false;
100
-
101
- @Input() canDownload = true;
102
-
103
- @Input() canDelete = true;
104
-
105
- @Input() canAdd = true;
106
-
107
- @Input() useRouterFilter = true;
108
-
109
- @Input() fulltextFieldName = 'searchField';
110
-
111
- @Input() showFulltext = true;
112
-
113
- @Input() deleteConfirmMessage: string | undefined;
114
-
115
- @Input() autoDeleteEnabled = true;
116
-
117
- @Input() autoDownloadEnabled = true;
118
-
119
- @Input() downloadFileName = 'export.csv';
120
-
121
- @Input() datasource!: DatasourceType<T>;
122
-
123
- @Input() extraFilter!: any;
124
-
125
- @Input() disableCustomClicks = false;
126
-
127
- @Input() maximumColumnLength = MAX_COLUMN_CHAR_COUNT;
128
-
129
- @Output() addClick = new EventEmitter();
130
-
131
- @Output() downloadClick = new EventEmitter();
132
-
133
- @Output() deleteClick = new EventEmitter<T[]>();
134
-
135
- @Output() selectionChange = new EventEmitter();
136
-
137
- @Input() set selectionMode(mode: TableSelectionModeType | undefined) {
138
- this._selectionMode = mode;
139
- }
140
-
141
- get selectionMode(): TableSelectionModeType | undefined {
142
- return this.canDelete
143
- ? TableSelectionMode.single
144
- : this._selectionMode;
145
- }
146
-
147
- icons = Icons;
148
-
149
- private httpClient = inject(HttpClient);
150
-
151
- private baseUrl: string = inject(BASE_URL_PATH);
152
-
153
- private _selectionMode: TableSelectionModeType | undefined;
154
-
155
- private cdRef = inject(ChangeDetectorRef);
156
-
157
- private dialogService = inject(DialogService);
158
-
159
- selection: T[] = [];
160
-
161
- ngAfterViewInit(): void {
162
- if (this.viewColumns?.length) {
163
- const vewColumns = this.viewColumns
164
- ?.toArray()
165
- .map((x) => x.getDefinition());
166
- this.columns = [...(this.columns ?? []), ...(vewColumns ?? [])];
167
- this.cdRef.detectChanges();
168
- }
169
-
170
- if (this.fieldDeclarations?.length) {
171
- this.filters = this.fieldDeclarations?.toArray();
172
- }
173
-
174
- this.cdRef.detectChanges();
175
- }
176
-
177
- selectItems(items: T[]) {
178
- this.selection = items ?? [];
179
-
180
- if (this.selectionMode !== undefined) {
181
- this.selectionChange.emit(
182
- this.selectionMode === 'multiple'
183
- ? this.selection
184
- : this.selection[0]
185
- );
186
- }
187
- }
188
-
189
- startDeleteItems() {
190
- if (!this.selection.length) {
191
- return;
192
- }
193
-
194
- if (this.deleteConfirmMessage) {
195
- const message = this.deleteConfirmMessage;
196
- this.dialogService.showDialog({
197
- innerHTML: message,
198
- confirmButtonFn: () => this.deleteItems(this.selection),
199
- });
200
- } else {
201
- this.deleteItems(this.selection);
202
- }
203
- }
204
-
205
- startDownload() {
206
- this.downloadClick.emit();
207
- if (!this.autoDownloadEnabled) {
208
- return;
209
- }
210
-
211
- const dowloadFn = this.createDownloadFn(this.datasource);
212
- if (dowloadFn) {
213
- this.tableDatasourceDirective.params$
214
- .pipe(
215
- take(1),
216
- switchMap((params) => dowloadFn(params))
217
- )
218
- .subscribe((blob) => {
219
- downloadFile(this.downloadFileName, blob);
220
- });
221
- }
222
- }
223
-
224
- private deleteItems(items: T[]) {
225
- if (!this.autoDeleteEnabled) {
226
- this.deleteClick.emit(items);
227
- } else {
228
- this.forceDelete(items);
229
- }
230
- }
231
-
232
- private forceDelete(items: T[]) {
233
- const deleteFn = this.createDeleteFn(this.datasource);
234
- if (deleteFn) {
235
- const deleteMethods = items.map((x) => deleteFn(x));
236
- forkJoin(deleteMethods)
237
- .pipe(take(1))
238
- .subscribe(() => this.finishDeletion(items));
239
- } else {
240
- this.finishDeletion(items);
241
- }
242
- }
243
-
244
- private createDeleteFn(
245
- datasource: DatasourceType<T>
246
- ): ((item: T) => Observable<unknown>) | undefined {
247
- if (!datasource) {
248
- return undefined;
249
- }
250
-
251
- if (typeof datasource === 'string') {
252
- const service = new BaseHttpService<T>(
253
- this.httpClient,
254
- this.baseUrl,
255
- datasource
256
- );
257
-
258
- return (item: T) => service.delete((item as { id: string }).id);
259
- }
260
-
261
- if (datasource instanceof BaseHttpService) {
262
- return (item: T) => datasource.delete((item as { id: string }).id);
263
- }
264
-
265
- return undefined;
266
- }
267
-
268
- private createDownloadFn(
269
- datasource: DatasourceType<T>
270
- ): ((request: AllDataRequestParams<T>) => Observable<Blob>) | undefined {
271
- if (!datasource) {
272
- return undefined;
273
- }
274
-
275
- if (typeof datasource === 'string') {
276
- const service = new BaseHttpService<T>(
277
- this.httpClient,
278
- this.baseUrl,
279
- datasource
280
- );
281
-
282
- return (request: AllDataRequestParams<T>) => service.export(request);
283
- }
284
-
285
- if (datasource instanceof BaseHttpService) {
286
- return (request: AllDataRequestParams<T>) => datasource.export(request);
287
- }
288
-
289
- const fetchFunction = convertDatasource(
290
- datasource,
291
- this.baseUrl,
292
- this.httpClient
293
- );
294
-
295
- return (request: AllDataRequestParams<T>) => {
296
- const allData: T[] = [];
297
- let offset = 0;
298
- const fetchAllData = (): Observable<Blob> => {
299
- return fetchFunction({
300
- ...request,
301
- offset,
302
- limit: DEFAULT_PAGE_SIZE,
303
- }).pipe(
304
- take(1),
305
- switchMap((response) => {
306
- allData.push(...response.data);
307
- if (allData.length < response.total) {
308
- offset = offset + DEFAULT_PAGE_SIZE;
309
- return fetchAllData();
310
- } else {
311
- return of(this.convertToBlob(allData));
312
- }
313
- })
314
- );
315
- };
316
-
317
- return fetchAllData();
318
- };
319
- }
320
-
321
- private finishDeletion(items: T[]) {
322
- if (this.datasource && Array.isArray(this.datasource)) {
323
- this.datasource = this.datasource.filter((x) => !items.includes(x));
324
- } else {
325
- this.tableDatasourceDirective.reload();
326
- }
327
-
328
- this.deleteClick.emit(items);
329
- }
330
-
331
- private convertToBlob(data: T[]): Blob {
332
- const columnModel = this.columns.map((x) => new ColumnModel(x));
333
- const headers = columnModel.map((x, index) => x.headerGetter(x.id, index));
334
- const dataValues = data.map((row, rowIndex) =>
335
- columnModel.map((column) => column.valueGetter(row, rowIndex))
336
- );
337
- const csvData = [headers, ...dataValues]
338
- .map((row) => row.join(','))
339
- .join('\n');
340
- return new Blob([csvData], { type: 'text/csv' });
341
- }
342
- }
@@ -1,35 +0,0 @@
1
- import { Directive, Input } from '@angular/core';
2
- import { ValidatorFn } from '@angular/forms';
3
- import { DatasourceType } from '@verisoft/core';
4
- import { GenericFieldDefinition, GenericFieldType, GenericFieldTypeType } from '@verisoft/ui-core';
5
-
6
- @Directive({
7
- // eslint-disable-next-line @angular-eslint/directive-selector
8
- selector: 'v-filter-field',
9
- standalone: true,
10
- })
11
- export class FilterFieldDirective implements GenericFieldDefinition {
12
- @Input({ required: true }) name!: string;
13
-
14
- @Input() type: GenericFieldTypeType | undefined = GenericFieldType.text;
15
-
16
- @Input() label: string | undefined;
17
-
18
- @Input() optionLabel!: string;
19
-
20
- @Input() optionValue: string | undefined;
21
-
22
- @Input() options: unknown[] | undefined;
23
-
24
- @Input() value?: unknown;
25
-
26
- @Input() validator?: ValidatorFn[];
27
-
28
- @Input() datasource: DatasourceType<any> | undefined;
29
-
30
- @Input() filterField?: string;
31
-
32
- @Input() showFilter?: boolean;
33
-
34
- @Input() localSearch?: boolean;
35
- }