@verisoft/ui-govcz 18.6.2 → 18.6.4

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 (597) hide show
  1. package/.eslintrc.json +48 -0
  2. package/assets/i18n/cs.json +9 -0
  3. package/assets/i18n/en.json +9 -0
  4. package/assets/icons/components/24-7.svg +12 -0
  5. package/assets/icons/components/NO-ICON.svg +2 -0
  6. package/assets/icons/components/add.svg +6 -0
  7. package/assets/icons/components/all.svg +3 -0
  8. package/assets/icons/components/arrival.svg +12 -0
  9. package/assets/icons/components/arrow-left.svg +3 -0
  10. package/assets/icons/components/arrow-right.svg +3 -0
  11. package/assets/icons/components/bars.svg +3 -0
  12. package/assets/icons/components/bell.svg +4 -0
  13. package/assets/icons/components/big-help.svg +12 -0
  14. package/assets/icons/components/book.svg +10 -0
  15. package/assets/icons/components/bookmarks.svg +11 -0
  16. package/assets/icons/components/box-arrow-up-right.svg +11 -0
  17. package/assets/icons/components/business-file.svg +14 -0
  18. package/assets/icons/components/businessman.svg +3 -0
  19. package/assets/icons/components/cactus.svg +14 -0
  20. package/assets/icons/components/calendar.svg +3 -0
  21. package/assets/icons/components/camera.svg +5 -0
  22. package/assets/icons/components/car.svg +5 -0
  23. package/assets/icons/components/card-400.svg +11 -0
  24. package/assets/icons/components/card-401.svg +11 -0
  25. package/assets/icons/components/card-403.svg +11 -0
  26. package/assets/icons/components/card-404.svg +11 -0
  27. package/assets/icons/components/card-500.svg +11 -0
  28. package/assets/icons/components/card-502.svg +11 -0
  29. package/assets/icons/components/card-503.svg +12 -0
  30. package/assets/icons/components/card-504.svg +15 -0
  31. package/assets/icons/components/caret-right-fill.svg +3 -0
  32. package/assets/icons/components/certification.svg +14 -0
  33. package/assets/icons/components/chamber-deputies-cr.svg +11 -0
  34. package/assets/icons/components/chamber-deputies.svg +13 -0
  35. package/assets/icons/components/chat.svg +11 -0
  36. package/assets/icons/components/check-circle.svg +4 -0
  37. package/assets/icons/components/check-lg.svg +3 -0
  38. package/assets/icons/components/chevron-double-left.svg +4 -0
  39. package/assets/icons/components/chevron-double-right.svg +4 -0
  40. package/assets/icons/components/chevron-down.svg +3 -0
  41. package/assets/icons/components/chevron-left.svg +3 -0
  42. package/assets/icons/components/chevron-right.svg +3 -0
  43. package/assets/icons/components/chevron-up.svg +3 -0
  44. package/assets/icons/components/cities.svg +17 -0
  45. package/assets/icons/components/city-office.svg +17 -0
  46. package/assets/icons/components/coins.svg +14 -0
  47. package/assets/icons/components/communication.svg +4 -0
  48. package/assets/icons/components/confusion.svg +8 -0
  49. package/assets/icons/components/contact.svg +6 -0
  50. package/assets/icons/components/copy.svg +10 -0
  51. package/assets/icons/components/court.svg +5 -0
  52. package/assets/icons/components/covid.svg +5 -0
  53. package/assets/icons/components/czech-lion.svg +134 -0
  54. package/assets/icons/components/dash-lg.svg +3 -0
  55. package/assets/icons/components/diagram.svg +3 -0
  56. package/assets/icons/components/digital.svg +10 -0
  57. package/assets/icons/components/disability.svg +5 -0
  58. package/assets/icons/components/doc-agreement.svg +7 -0
  59. package/assets/icons/components/doc-basic-info.svg +18 -0
  60. package/assets/icons/components/doc-business.svg +8 -0
  61. package/assets/icons/components/doc-car-point-list.svg +16 -0
  62. package/assets/icons/components/doc-diploma.svg +17 -0
  63. package/assets/icons/components/doc-driver-info.svg +8 -0
  64. package/assets/icons/components/doc-election.svg +13 -0
  65. package/assets/icons/components/doc-filled.svg +16 -0
  66. package/assets/icons/components/doc-health.svg +3 -0
  67. package/assets/icons/components/doc-judgment.svg +8 -0
  68. package/assets/icons/components/doc-patient.svg +8 -0
  69. package/assets/icons/components/doc-personal-info.svg +11 -0
  70. package/assets/icons/components/doc-petition.svg +8 -0
  71. package/assets/icons/components/doc-registers.svg +7 -0
  72. package/assets/icons/components/doc-review.svg +20 -0
  73. package/assets/icons/components/doc-search.svg +8 -0
  74. package/assets/icons/components/doc-stamp.svg +15 -0
  75. package/assets/icons/components/doc-state.svg +13 -0
  76. package/assets/icons/components/doc-taxes.svg +16 -0
  77. package/assets/icons/components/doc-universal.svg +13 -0
  78. package/assets/icons/components/doc-visa.svg +14 -0
  79. package/assets/icons/components/documents.svg +11 -0
  80. package/assets/icons/components/download.svg +4 -0
  81. package/assets/icons/components/driver-file.svg +14 -0
  82. package/assets/icons/components/driver.svg +7 -0
  83. package/assets/icons/components/driving-licence.svg +7 -0
  84. package/assets/icons/components/email-notification.svg +12 -0
  85. package/assets/icons/components/empty-file.svg +13 -0
  86. package/assets/icons/components/energy.svg +11 -0
  87. package/assets/icons/components/envelope-fill.svg +3 -0
  88. package/assets/icons/components/envelope.svg +3 -0
  89. package/assets/icons/components/error.svg +12 -0
  90. package/assets/icons/components/european-parliament.svg +11 -0
  91. package/assets/icons/components/exclamation-lg.svg +3 -0
  92. package/assets/icons/components/exclamation-triangle-fill.svg +10 -0
  93. package/assets/icons/components/export.svg +13 -0
  94. package/assets/icons/components/eye.svg +4 -0
  95. package/assets/icons/components/family.svg +12 -0
  96. package/assets/icons/components/fast-forward.svg +1 -0
  97. package/assets/icons/components/filter.svg +3 -0
  98. package/assets/icons/components/gear.svg +11 -0
  99. package/assets/icons/components/geo-alt-fill.svg +10 -0
  100. package/assets/icons/components/globe.svg +12 -0
  101. package/assets/icons/components/graduate.svg +4 -0
  102. package/assets/icons/components/group.svg +3 -0
  103. package/assets/icons/components/hand-503.svg +10 -0
  104. package/assets/icons/components/hand-504.svg +7 -0
  105. package/assets/icons/components/hand.svg +14 -0
  106. package/assets/icons/components/health.svg +5 -0
  107. package/assets/icons/components/help.svg +4 -0
  108. package/assets/icons/components/history.svg +4 -0
  109. package/assets/icons/components/holiday.svg +13 -0
  110. package/assets/icons/components/hourglass.svg +4 -0
  111. package/assets/icons/components/house-door-fill.svg +3 -0
  112. package/assets/icons/components/house.svg +13 -0
  113. package/assets/icons/components/id-card.svg +6 -0
  114. package/assets/icons/components/id-info.svg +9 -0
  115. package/assets/icons/components/id.svg +6 -0
  116. package/assets/icons/components/illness.svg +9 -0
  117. package/assets/icons/components/info-circle-fill.svg +10 -0
  118. package/assets/icons/components/info-circle.svg +11 -0
  119. package/assets/icons/components/info-list.svg +14 -0
  120. package/assets/icons/components/info.svg +3 -0
  121. package/assets/icons/components/institute-file.svg +23 -0
  122. package/assets/icons/components/institution.svg +10 -0
  123. package/assets/icons/components/job-loss.svg +4 -0
  124. package/assets/icons/components/job.svg +3 -0
  125. package/assets/icons/components/lightbulb-fill.svg +10 -0
  126. package/assets/icons/components/list.svg +3 -0
  127. package/assets/icons/components/loader.svg +3 -0
  128. package/assets/icons/components/login.svg +11 -0
  129. package/assets/icons/components/logout.svg +13 -0
  130. package/assets/icons/components/map.svg +11 -0
  131. package/assets/icons/components/mobile-phone.svg +13 -0
  132. package/assets/icons/components/moon.svg +10 -0
  133. package/assets/icons/components/mouse.svg +3 -0
  134. package/assets/icons/components/my-filing.svg +15 -0
  135. package/assets/icons/components/my-state-data.svg +19 -0
  136. package/assets/icons/components/new-comments.svg +6 -0
  137. package/assets/icons/components/newborn.svg +16 -0
  138. package/assets/icons/components/news.svg +20 -0
  139. package/assets/icons/components/packet.svg +11 -0
  140. package/assets/icons/components/passport.svg +7 -0
  141. package/assets/icons/components/pencil.svg +3 -0
  142. package/assets/icons/components/personal-file.svg +14 -0
  143. package/assets/icons/components/pet.svg +10 -0
  144. package/assets/icons/components/petrol-station.svg +14 -0
  145. package/assets/icons/components/pills.svg +4 -0
  146. package/assets/icons/components/plus-lg.svg +3 -0
  147. package/assets/icons/components/population-register.svg +12 -0
  148. package/assets/icons/components/port-card.svg +8 -0
  149. package/assets/icons/components/portal.svg +8 -0
  150. package/assets/icons/components/pregnant.svg +11 -0
  151. package/assets/icons/components/president.svg +13 -0
  152. package/assets/icons/components/presidential-election.svg +12 -0
  153. package/assets/icons/components/print-fill.svg +4 -0
  154. package/assets/icons/components/profile-settings.svg +13 -0
  155. package/assets/icons/components/property.svg +4 -0
  156. package/assets/icons/components/question-circle.svg +4 -0
  157. package/assets/icons/components/queue.svg +13 -0
  158. package/assets/icons/components/quotes.svg +6 -0
  159. package/assets/icons/components/region.svg +11 -0
  160. package/assets/icons/components/regional-elections-clear.svg +11 -0
  161. package/assets/icons/components/regional-elections.svg +12 -0
  162. package/assets/icons/components/register-of-persons.svg +7 -0
  163. package/assets/icons/components/retiree.svg +8 -0
  164. package/assets/icons/components/rings.svg +5 -0
  165. package/assets/icons/components/search.svg +10 -0
  166. package/assets/icons/components/senate.svg +11 -0
  167. package/assets/icons/components/senior.svg +4 -0
  168. package/assets/icons/components/settings.svg +13 -0
  169. package/assets/icons/components/simple-envelope.svg +3 -0
  170. package/assets/icons/components/sms-notification.svg +7 -0
  171. package/assets/icons/components/sos.svg +6 -0
  172. package/assets/icons/components/star-fill.svg +10 -0
  173. package/assets/icons/components/state-file.svg +8 -0
  174. package/assets/icons/components/sun.svg +10 -0
  175. package/assets/icons/components/telephone.svg +10 -0
  176. package/assets/icons/components/three-dots-vertical.svg +3 -0
  177. package/assets/icons/components/time.svg +4 -0
  178. package/assets/icons/components/tombstone.svg +7 -0
  179. package/assets/icons/components/trash.svg +6 -0
  180. package/assets/icons/components/twitter-x.svg +10 -0
  181. package/assets/icons/components/upload.svg +4 -0
  182. package/assets/icons/components/user-login.svg +13 -0
  183. package/assets/icons/components/user.svg +3 -0
  184. package/assets/icons/components/vaccine.svg +11 -0
  185. package/assets/icons/components/x-circle.svg +4 -0
  186. package/assets/icons/components/x-lg.svg +3 -0
  187. package/assets/icons/components/x.svg +3 -0
  188. package/assets/logos/v-logo.svg +4 -0
  189. package/jest.config.ts +21 -0
  190. package/ng-package.json +15 -0
  191. package/package.json +23 -38
  192. package/project.json +49 -0
  193. package/src/assets/main.css +18 -0
  194. package/src/config.d.ts +10 -0
  195. package/src/index.ts +1 -0
  196. package/src/lib/components/breadcrumb/breadcrumb.component.html +23 -0
  197. package/src/lib/components/breadcrumb/breadcrumb.component.scss +0 -0
  198. package/src/lib/components/breadcrumb/breadcrumb.component.spec.ts +21 -0
  199. package/src/lib/components/breadcrumb/breadcrumb.component.ts +30 -0
  200. package/{lib/components/breadcrumb/index.d.ts → src/lib/components/breadcrumb/index.ts} +1 -1
  201. package/src/lib/components/button/button.component.html +26 -0
  202. package/src/lib/components/button/button.component.scss +0 -0
  203. package/src/lib/components/button/button.component.ts +72 -0
  204. package/src/lib/components/button/index.ts +1 -0
  205. package/src/lib/components/calendar/calendar.component.html +28 -0
  206. package/src/lib/components/calendar/calendar.component.scss +0 -0
  207. package/src/lib/components/calendar/calendar.component.ts +79 -0
  208. package/src/lib/components/calendar/index.ts +1 -0
  209. package/src/lib/components/checkbox/checkbox.component.html +23 -0
  210. package/src/lib/components/checkbox/checkbox.component.scss +0 -0
  211. package/src/lib/components/checkbox/checkbox.component.ts +62 -0
  212. package/src/lib/components/checkbox/index.ts +1 -0
  213. package/src/lib/components/confirm-dialog/confirm-dialog.component.html +50 -0
  214. package/src/lib/components/confirm-dialog/confirm-dialog.component.scss +4 -0
  215. package/src/lib/components/confirm-dialog/confirm-dialog.component.ts +80 -0
  216. package/{lib/components/confirm-dialog/index.d.ts → src/lib/components/confirm-dialog/index.ts} +1 -1
  217. package/src/lib/components/dropdown/dropdown-item.component.html +8 -0
  218. package/src/lib/components/dropdown/dropdown-item.component.ts +18 -0
  219. package/src/lib/components/dropdown/dropdown.component.html +90 -0
  220. package/src/lib/components/dropdown/dropdown.component.scss +108 -0
  221. package/src/lib/components/dropdown/dropdown.component.spec.ts +21 -0
  222. package/src/lib/components/dropdown/dropdown.component.ts +297 -0
  223. package/{lib/components/dropdown/dropdown.model.d.ts → src/lib/components/dropdown/dropdown.model.ts} +6 -6
  224. package/{lib/components/dropdown/index.d.ts → src/lib/components/dropdown/index.ts} +1 -1
  225. package/src/lib/components/errors/error.component.html +11 -0
  226. package/src/lib/components/errors/error.component.scss +0 -0
  227. package/src/lib/components/errors/error.component.spec.ts +19 -0
  228. package/src/lib/components/errors/error.component.ts +30 -0
  229. package/src/lib/components/errors/index.ts +1 -0
  230. package/src/lib/components/form-field/form-field.component.html +14 -0
  231. package/src/lib/components/form-field/form-field.component.scss +0 -0
  232. package/src/lib/components/form-field/form-field.component.spec.ts +21 -0
  233. package/src/lib/components/form-field/form-field.component.ts +78 -0
  234. package/{lib/components/form-field/index.d.ts → src/lib/components/form-field/index.ts} +1 -1
  235. package/src/lib/components/header/header.component.html +122 -0
  236. package/src/lib/components/header/header.component.scss +0 -0
  237. package/src/lib/components/header/header.component.ts +91 -0
  238. package/src/lib/components/header/index.ts +1 -0
  239. package/{lib/components/index.d.ts → src/lib/components/index.ts} +33 -33
  240. package/src/lib/components/input-group/index.ts +1 -0
  241. package/src/lib/components/input-group/input-group.component.html +41 -0
  242. package/src/lib/components/input-group/input-group.component.scss +0 -0
  243. package/src/lib/components/input-group/input-group.component.ts +77 -0
  244. package/src/lib/components/loader/index.ts +1 -0
  245. package/src/lib/components/loader/loader.component.html +7 -0
  246. package/src/lib/components/loader/loader.component.scss +0 -0
  247. package/src/lib/components/loader/loader.component.spec.ts +21 -0
  248. package/src/lib/components/loader/loader.component.ts +33 -0
  249. package/src/lib/components/multiselect/index.ts +1 -0
  250. package/src/lib/components/multiselect/multiselect.component.html +21 -0
  251. package/src/lib/components/multiselect/multiselect.component.scss +0 -0
  252. package/src/lib/components/multiselect/multiselect.component.spec.ts +21 -0
  253. package/src/lib/components/multiselect/multiselect.component.ts +119 -0
  254. package/src/lib/components/number-input/index.ts +1 -0
  255. package/src/lib/components/number-input/number-input.component.html +48 -0
  256. package/src/lib/components/number-input/number-input.component.scss +0 -0
  257. package/src/lib/components/number-input/number-input.component.ts +82 -0
  258. package/src/lib/components/page-header/index.ts +1 -0
  259. package/src/lib/components/page-header/page-header.component.html +3 -0
  260. package/src/lib/components/page-header/page-header.component.scss +11 -0
  261. package/src/lib/components/page-header/page-header.component.spec.ts +21 -0
  262. package/src/lib/components/page-header/page-header.component.ts +29 -0
  263. package/{lib/components/password/index.d.ts → src/lib/components/password/index.ts} +1 -1
  264. package/src/lib/components/password/password.component.html +31 -0
  265. package/src/lib/components/password/password.component.scss +0 -0
  266. package/src/lib/components/password/password.component.spec.ts +21 -0
  267. package/src/lib/components/password/password.component.ts +85 -0
  268. package/src/lib/components/radiobutton/index.ts +1 -0
  269. package/src/lib/components/radiobutton/radiobutton.component.html +23 -0
  270. package/src/lib/components/radiobutton/radiobutton.component.scss +0 -0
  271. package/src/lib/components/radiobutton/radiobutton.component.ts +58 -0
  272. package/src/lib/components/search/index.ts +1 -0
  273. package/src/lib/components/search/search.component.html +23 -0
  274. package/src/lib/components/search/search.component.scss +0 -0
  275. package/src/lib/components/search/search.component.ts +47 -0
  276. package/src/lib/components/section/index.ts +1 -0
  277. package/src/lib/components/section/section.component.html +26 -0
  278. package/src/lib/components/section/section.component.scss +0 -0
  279. package/src/lib/components/section/section.component.ts +57 -0
  280. package/src/lib/components/shared-components/action-button-group/action-button-group.component.html +27 -0
  281. package/src/lib/components/shared-components/action-button-group/action-button-group.component.scss +0 -0
  282. package/src/lib/components/shared-components/action-button-group/action-button-group.component.spec.ts +21 -0
  283. package/src/lib/components/shared-components/action-button-group/action-button-group.component.ts +114 -0
  284. package/src/lib/components/shared-components/action-button-group/components/action-button/action-button.component.html +11 -0
  285. package/src/lib/components/shared-components/action-button-group/components/action-button/action-button.component.scss +0 -0
  286. package/src/lib/components/shared-components/action-button-group/components/action-button/action-button.component.spec.ts +21 -0
  287. package/src/lib/components/shared-components/action-button-group/components/action-button/action-button.component.ts +71 -0
  288. package/{lib/components/shared-components/action-button-group/index.d.ts → src/lib/components/shared-components/action-button-group/index.ts} +2 -2
  289. package/src/lib/components/shared-components/dynamic-component/dynamic-component-factory.service.ts +142 -0
  290. package/src/lib/components/shared-components/dynamic-component/dynamic-component.component.ts +56 -0
  291. package/{lib/components/shared-components/dynamic-component/index.d.ts → src/lib/components/shared-components/dynamic-component/index.ts} +2 -2
  292. package/src/lib/components/shared-components/feature-list/directives/feature-list-column.directive.ts +32 -0
  293. package/src/lib/components/shared-components/feature-list/directives/feature-list-filter-field.directive.ts +8 -0
  294. package/src/lib/components/shared-components/feature-list/feature-list-filter.pipe.ts +21 -0
  295. package/src/lib/components/shared-components/feature-list/feature-list-page.component.ts +31 -0
  296. package/src/lib/components/shared-components/feature-list/feature-list-page.model.ts +42 -0
  297. package/src/lib/components/shared-components/feature-list/feature-list.component.html +59 -0
  298. package/src/lib/components/shared-components/feature-list/feature-list.component.scss +10 -0
  299. package/src/lib/components/shared-components/feature-list/feature-list.component.ts +342 -0
  300. package/{lib/components/shared-components/feature-list/index.d.ts → src/lib/components/shared-components/feature-list/index.ts} +5 -5
  301. package/src/lib/components/shared-components/filter/directives/filter-field.directive.ts +35 -0
  302. package/src/lib/components/shared-components/filter/filter.component.html +68 -0
  303. package/src/lib/components/shared-components/filter/filter.component.scss +0 -0
  304. package/src/lib/components/shared-components/filter/filter.component.spec.ts +21 -0
  305. package/src/lib/components/shared-components/filter/filter.component.stories.ts +23 -0
  306. package/src/lib/components/shared-components/filter/filter.component.ts +284 -0
  307. package/src/lib/components/shared-components/filter/filter.model.ts +18 -0
  308. package/{lib/components/shared-components/filter/index.d.ts → src/lib/components/shared-components/filter/index.ts} +2 -2
  309. package/src/lib/components/shared-components/generic-field/generic-field.component.html +97 -0
  310. package/src/lib/components/shared-components/generic-field/generic-field.component.spec.ts +21 -0
  311. package/src/lib/components/shared-components/generic-field/generic-field.component.ts +94 -0
  312. package/{lib/components/shared-components/generic-field/index.d.ts → src/lib/components/shared-components/generic-field/index.ts} +1 -1
  313. package/src/lib/components/shared-components/generic-form/generic-form.component.html +46 -0
  314. package/src/lib/components/shared-components/generic-form/generic-form.component.spec.ts +21 -0
  315. package/src/lib/components/shared-components/generic-form/generic-form.component.ts +57 -0
  316. package/src/lib/components/shared-components/generic-form/generic-form.model.spec.ts +82 -0
  317. package/src/lib/components/shared-components/generic-form/generic-form.model.ts +68 -0
  318. package/{lib/components/shared-components/generic-form/index.d.ts → src/lib/components/shared-components/generic-form/index.ts} +2 -2
  319. package/{lib/components/shared-components/index.d.ts → src/lib/components/shared-components/index.ts} +6 -6
  320. package/{lib/components/side-menu/index.d.ts → src/lib/components/side-menu/index.ts} +2 -2
  321. package/src/lib/components/side-menu/side-menu.component.html +25 -0
  322. package/src/lib/components/side-menu/side-menu.component.scss +23 -0
  323. package/src/lib/components/side-menu/side-menu.component.ts +42 -0
  324. package/src/lib/components/side-menu/side-menu.module.ts +64 -0
  325. package/src/lib/components/sidemenu/index.ts +2 -0
  326. package/{lib/components/snackbar/index.d.ts → src/lib/components/snackbar/index.ts} +2 -2
  327. package/src/lib/components/snackbar/services/snackbar.service.ts +73 -0
  328. package/src/lib/components/snackbar/snackbar.component.html +14 -0
  329. package/src/lib/components/snackbar/snackbar.component.scss +0 -0
  330. package/src/lib/components/snackbar/snackbar.component.spec.ts +21 -0
  331. package/src/lib/components/snackbar/snackbar.component.ts +45 -0
  332. package/{lib/components/snackbar/snackbar.model.d.ts → src/lib/components/snackbar/snackbar.model.ts} +10 -10
  333. package/src/lib/components/stepper/index.ts +1 -0
  334. package/src/lib/components/stepper/stepper.component.html +35 -0
  335. package/src/lib/components/stepper/stepper.component.scss +9 -0
  336. package/src/lib/components/stepper/stepper.component.ts +61 -0
  337. package/src/lib/components/switch/index.ts +1 -0
  338. package/src/lib/components/switch/switch.component.html +16 -0
  339. package/src/lib/components/switch/switch.component.scss +0 -0
  340. package/src/lib/components/switch/switch.component.ts +37 -0
  341. package/{lib/components/tab-view/index.d.ts → src/lib/components/tab-view/index.ts} +3 -3
  342. package/src/lib/components/tab-view/tab-view-item.component.ts +23 -0
  343. package/src/lib/components/tab-view/tab-view.component.html +51 -0
  344. package/src/lib/components/tab-view/tab-view.component.scss +43 -0
  345. package/src/lib/components/tab-view/tab-view.component.ts +61 -0
  346. package/src/lib/components/tab-view/tab-view.module.ts +25 -0
  347. package/{lib/components/table/index.d.ts → src/lib/components/table/index.ts} +1 -1
  348. package/src/lib/components/table/table-pagination-info.component.html +9 -0
  349. package/src/lib/components/table/table-pagination-info.component.ts +22 -0
  350. package/src/lib/components/table/table.component.html +198 -0
  351. package/src/lib/components/table/table.component.scss +193 -0
  352. package/src/lib/components/table/table.component.ts +387 -0
  353. package/src/lib/components/table/table.model.ts +17 -0
  354. package/src/lib/components/table/table.models.ts +12 -0
  355. package/src/lib/components/textarea/index.ts +1 -0
  356. package/src/lib/components/textarea/textarea.component.html +50 -0
  357. package/src/lib/components/textarea/textarea.component.scss +0 -0
  358. package/src/lib/components/textarea/textarea.component.ts +78 -0
  359. package/src/lib/components/textfield/index.ts +1 -0
  360. package/src/lib/components/textfield/textfield.component.html +56 -0
  361. package/src/lib/components/textfield/textfield.component.scss +0 -0
  362. package/src/lib/components/textfield/textfield.component.ts +114 -0
  363. package/src/lib/components/tooltip/index.ts +1 -0
  364. package/src/lib/components/tooltip/tooltip.component.html +10 -0
  365. package/src/lib/components/tooltip/tooltip.component.scss +0 -0
  366. package/src/lib/components/tooltip/tooltip.component.ts +57 -0
  367. package/{lib/components/tristatecheckbox/index.d.ts → src/lib/components/tristatecheckbox/index.ts} +1 -1
  368. package/src/lib/components/tristatecheckbox/tristatecheckbox.component.html +23 -0
  369. package/src/lib/components/tristatecheckbox/tristatecheckbox.component.scss +0 -0
  370. package/src/lib/components/tristatecheckbox/tristatecheckbox.component.ts +103 -0
  371. package/src/lib/icons.ts +36 -0
  372. package/{lib/index.d.ts → src/lib/index.ts} +5 -5
  373. package/src/lib/init.service.ts +11 -0
  374. package/src/lib/interceptors/http-error-message.interceptor.ts +45 -0
  375. package/src/lib/pages/bad-request-page/bad-request-page.component.html +5 -0
  376. package/src/lib/pages/bad-request-page/bad-request-page.component.scss +0 -0
  377. package/src/lib/pages/bad-request-page/bad-request-page.component.ts +15 -0
  378. package/src/lib/pages/error-page/error-page.component.html +5 -0
  379. package/src/lib/pages/error-page/error-page.component.scss +0 -0
  380. package/src/lib/pages/error-page/error-page.component.ts +32 -0
  381. package/src/lib/pages/error-page/error-page.constants.ts +19 -0
  382. package/{lib/pages/index.d.ts → src/lib/pages/index.ts} +3 -3
  383. package/src/lib/pages/internal-server-error-page/internal-server-error-page.component.html +5 -0
  384. package/src/lib/pages/internal-server-error-page/internal-server-error-page.component.scss +0 -0
  385. package/src/lib/pages/internal-server-error-page/internal-server-error-page.component.ts +16 -0
  386. package/{lib/pages/not-authenticated/index.d.ts → src/lib/pages/not-authenticated/index.ts} +1 -1
  387. package/src/lib/pages/not-authenticated/not-authenticated.component.html +5 -0
  388. package/src/lib/pages/not-authenticated/not-authenticated.component.ts +14 -0
  389. package/{lib/pages/not-authorized/index.d.ts → src/lib/pages/not-authorized/index.ts} +1 -1
  390. package/src/lib/pages/not-authorized/not-authorized.component.html +5 -0
  391. package/src/lib/pages/not-authorized/not-authorized.component.ts +18 -0
  392. package/{lib/pages/not-found/index.d.ts → src/lib/pages/not-found/index.ts} +1 -1
  393. package/src/lib/pages/not-found/not-found.component.html +5 -0
  394. package/src/lib/pages/not-found/not-found.component.ts +18 -0
  395. package/src/lib/pages/not-found-page/not-found-page.component.html +6 -0
  396. package/src/lib/pages/not-found-page/not-found-page.component.scss +0 -0
  397. package/src/lib/pages/not-found-page/not-found-page.component.ts +16 -0
  398. package/src/lib/pipes/color/color.pipe.ts +24 -0
  399. package/{lib/pipes/index.d.ts → src/lib/pipes/index.ts} +3 -3
  400. package/src/lib/pipes/multiselect/multiselect-options.pipe.ts +61 -0
  401. package/src/lib/pipes/size/size.pipe.ts +20 -0
  402. package/src/sass/header.css +526 -0
  403. package/src/sass/header.scss +480 -0
  404. package/src/sass/main.scss +246 -0
  405. package/src/sass/scrollbar.scss +22 -0
  406. package/src/sass/sidemenu.css +205 -0
  407. package/src/sass/vendors/_bootstrap.scss +2 -0
  408. package/src/test-setup.ts +8 -0
  409. package/tsconfig.json +30 -0
  410. package/tsconfig.lib.json +17 -0
  411. package/tsconfig.lib.prod.json +9 -0
  412. package/tsconfig.spec.json +16 -0
  413. package/esm2022/index.mjs +0 -2
  414. package/esm2022/lib/components/breadcrumb/breadcrumb.component.mjs +0 -34
  415. package/esm2022/lib/components/breadcrumb/index.mjs +0 -2
  416. package/esm2022/lib/components/button/button.component.mjs +0 -87
  417. package/esm2022/lib/components/button/index.mjs +0 -2
  418. package/esm2022/lib/components/calendar/calendar.component.mjs +0 -87
  419. package/esm2022/lib/components/calendar/index.mjs +0 -2
  420. package/esm2022/lib/components/checkbox/checkbox.component.mjs +0 -62
  421. package/esm2022/lib/components/checkbox/index.mjs +0 -2
  422. package/esm2022/lib/components/confirm-dialog/confirm-dialog.component.mjs +0 -72
  423. package/esm2022/lib/components/confirm-dialog/index.mjs +0 -2
  424. package/esm2022/lib/components/dropdown/dropdown-item.component.mjs +0 -14
  425. package/esm2022/lib/components/dropdown/dropdown.component.mjs +0 -280
  426. package/esm2022/lib/components/dropdown/dropdown.model.mjs +0 -2
  427. package/esm2022/lib/components/dropdown/index.mjs +0 -2
  428. package/esm2022/lib/components/errors/error.component.mjs +0 -34
  429. package/esm2022/lib/components/errors/index.mjs +0 -2
  430. package/esm2022/lib/components/form-field/form-field.component.mjs +0 -92
  431. package/esm2022/lib/components/form-field/index.mjs +0 -2
  432. package/esm2022/lib/components/header/header.component.mjs +0 -85
  433. package/esm2022/lib/components/header/index.mjs +0 -2
  434. package/esm2022/lib/components/index.mjs +0 -34
  435. package/esm2022/lib/components/input-group/index.mjs +0 -2
  436. package/esm2022/lib/components/input-group/input-group.component.mjs +0 -89
  437. package/esm2022/lib/components/loader/index.mjs +0 -2
  438. package/esm2022/lib/components/loader/loader.component.mjs +0 -34
  439. package/esm2022/lib/components/multiselect/index.mjs +0 -2
  440. package/esm2022/lib/components/multiselect/multiselect.component.mjs +0 -121
  441. package/esm2022/lib/components/number-input/index.mjs +0 -2
  442. package/esm2022/lib/components/number-input/number-input.component.mjs +0 -104
  443. package/esm2022/lib/components/page-header/index.mjs +0 -2
  444. package/esm2022/lib/components/page-header/page-header.component.mjs +0 -28
  445. package/esm2022/lib/components/password/index.mjs +0 -2
  446. package/esm2022/lib/components/password/password.component.mjs +0 -94
  447. package/esm2022/lib/components/radiobutton/index.mjs +0 -2
  448. package/esm2022/lib/components/radiobutton/radiobutton.component.mjs +0 -50
  449. package/esm2022/lib/components/search/index.mjs +0 -2
  450. package/esm2022/lib/components/search/search.component.mjs +0 -40
  451. package/esm2022/lib/components/section/index.mjs +0 -2
  452. package/esm2022/lib/components/section/section.component.mjs +0 -70
  453. package/esm2022/lib/components/shared-components/action-button-group/action-button-group.component.mjs +0 -97
  454. package/esm2022/lib/components/shared-components/action-button-group/components/action-button/action-button.component.mjs +0 -64
  455. package/esm2022/lib/components/shared-components/action-button-group/index.mjs +0 -3
  456. package/esm2022/lib/components/shared-components/dynamic-component/dynamic-component-factory.service.mjs +0 -91
  457. package/esm2022/lib/components/shared-components/dynamic-component/dynamic-component.component.mjs +0 -42
  458. package/esm2022/lib/components/shared-components/dynamic-component/index.mjs +0 -3
  459. package/esm2022/lib/components/shared-components/feature-list/directives/feature-list-column.directive.mjs +0 -43
  460. package/esm2022/lib/components/shared-components/feature-list/directives/feature-list-filter-field.directive.mjs +0 -16
  461. package/esm2022/lib/components/shared-components/feature-list/feature-list-filter.pipe.mjs +0 -24
  462. package/esm2022/lib/components/shared-components/feature-list/feature-list-page.component.mjs +0 -43
  463. package/esm2022/lib/components/shared-components/feature-list/feature-list-page.model.mjs +0 -16
  464. package/esm2022/lib/components/shared-components/feature-list/feature-list.component.mjs +0 -285
  465. package/esm2022/lib/components/shared-components/feature-list/index.mjs +0 -6
  466. package/esm2022/lib/components/shared-components/filter/directives/filter-field.directive.mjs +0 -53
  467. package/esm2022/lib/components/shared-components/filter/filter.component.mjs +0 -195
  468. package/esm2022/lib/components/shared-components/filter/filter.model.mjs +0 -16
  469. package/esm2022/lib/components/shared-components/filter/index.mjs +0 -3
  470. package/esm2022/lib/components/shared-components/generic-field/generic-field.component.mjs +0 -98
  471. package/esm2022/lib/components/shared-components/generic-field/index.mjs +0 -2
  472. package/esm2022/lib/components/shared-components/generic-form/generic-form.component.mjs +0 -46
  473. package/esm2022/lib/components/shared-components/generic-form/generic-form.model.mjs +0 -50
  474. package/esm2022/lib/components/shared-components/generic-form/index.mjs +0 -3
  475. package/esm2022/lib/components/shared-components/index.mjs +0 -7
  476. package/esm2022/lib/components/side-menu/index.mjs +0 -3
  477. package/esm2022/lib/components/side-menu/side-menu.component.mjs +0 -48
  478. package/esm2022/lib/components/side-menu/side-menu.module.mjs +0 -73
  479. package/esm2022/lib/components/snackbar/index.mjs +0 -3
  480. package/esm2022/lib/components/snackbar/services/snackbar.service.mjs +0 -75
  481. package/esm2022/lib/components/snackbar/snackbar.component.mjs +0 -61
  482. package/esm2022/lib/components/snackbar/snackbar.model.mjs +0 -2
  483. package/esm2022/lib/components/stepper/index.mjs +0 -2
  484. package/esm2022/lib/components/stepper/stepper.component.mjs +0 -66
  485. package/esm2022/lib/components/switch/index.mjs +0 -2
  486. package/esm2022/lib/components/switch/switch.component.mjs +0 -45
  487. package/esm2022/lib/components/tab-view/index.mjs +0 -4
  488. package/esm2022/lib/components/tab-view/tab-view-item.component.mjs +0 -41
  489. package/esm2022/lib/components/tab-view/tab-view.component.mjs +0 -56
  490. package/esm2022/lib/components/tab-view/tab-view.module.mjs +0 -41
  491. package/esm2022/lib/components/table/index.mjs +0 -2
  492. package/esm2022/lib/components/table/table-pagination-info.component.mjs +0 -32
  493. package/esm2022/lib/components/table/table.component.mjs +0 -359
  494. package/esm2022/lib/components/table/table.model.mjs +0 -14
  495. package/esm2022/lib/components/textarea/index.mjs +0 -2
  496. package/esm2022/lib/components/textarea/textarea.component.mjs +0 -95
  497. package/esm2022/lib/components/textfield/index.mjs +0 -2
  498. package/esm2022/lib/components/textfield/textfield.component.mjs +0 -124
  499. package/esm2022/lib/components/tooltip/index.mjs +0 -2
  500. package/esm2022/lib/components/tooltip/tooltip.component.mjs +0 -66
  501. package/esm2022/lib/components/tristatecheckbox/index.mjs +0 -2
  502. package/esm2022/lib/components/tristatecheckbox/tristatecheckbox.component.mjs +0 -89
  503. package/esm2022/lib/icons.mjs +0 -35
  504. package/esm2022/lib/index.mjs +0 -6
  505. package/esm2022/lib/init.service.mjs +0 -17
  506. package/esm2022/lib/pages/index.mjs +0 -4
  507. package/esm2022/lib/pages/not-authenticated/index.mjs +0 -2
  508. package/esm2022/lib/pages/not-authenticated/not-authenticated.component.mjs +0 -17
  509. package/esm2022/lib/pages/not-authorized/index.mjs +0 -2
  510. package/esm2022/lib/pages/not-authorized/not-authorized.component.mjs +0 -20
  511. package/esm2022/lib/pages/not-found/index.mjs +0 -2
  512. package/esm2022/lib/pages/not-found/not-found.component.mjs +0 -20
  513. package/esm2022/lib/pipes/color/color.pipe.mjs +0 -27
  514. package/esm2022/lib/pipes/index.mjs +0 -4
  515. package/esm2022/lib/pipes/multiselect/multiselect-options.pipe.mjs +0 -52
  516. package/esm2022/lib/pipes/size/size.pipe.mjs +0 -23
  517. package/esm2022/verisoft-ui-govcz.mjs +0 -5
  518. package/fesm2022/verisoft-ui-govcz.mjs +0 -3742
  519. package/fesm2022/verisoft-ui-govcz.mjs.map +0 -1
  520. package/index.d.ts +0 -1
  521. package/lib/components/breadcrumb/breadcrumb.component.d.ts +0 -7
  522. package/lib/components/button/button.component.d.ts +0 -26
  523. package/lib/components/button/index.d.ts +0 -1
  524. package/lib/components/calendar/calendar.component.d.ts +0 -23
  525. package/lib/components/calendar/index.d.ts +0 -1
  526. package/lib/components/checkbox/checkbox.component.d.ts +0 -15
  527. package/lib/components/checkbox/index.d.ts +0 -1
  528. package/lib/components/confirm-dialog/confirm-dialog.component.d.ts +0 -15
  529. package/lib/components/dropdown/dropdown-item.component.d.ts +0 -7
  530. package/lib/components/dropdown/dropdown.component.d.ts +0 -65
  531. package/lib/components/errors/error.component.d.ts +0 -14
  532. package/lib/components/errors/index.d.ts +0 -1
  533. package/lib/components/form-field/form-field.component.d.ts +0 -25
  534. package/lib/components/header/header.component.d.ts +0 -25
  535. package/lib/components/header/index.d.ts +0 -1
  536. package/lib/components/input-group/index.d.ts +0 -1
  537. package/lib/components/input-group/input-group.component.d.ts +0 -24
  538. package/lib/components/loader/index.d.ts +0 -1
  539. package/lib/components/loader/loader.component.d.ts +0 -8
  540. package/lib/components/multiselect/index.d.ts +0 -1
  541. package/lib/components/multiselect/multiselect.component.d.ts +0 -35
  542. package/lib/components/number-input/index.d.ts +0 -1
  543. package/lib/components/number-input/number-input.component.d.ts +0 -29
  544. package/lib/components/page-header/index.d.ts +0 -1
  545. package/lib/components/page-header/page-header.component.d.ts +0 -9
  546. package/lib/components/password/password.component.d.ts +0 -23
  547. package/lib/components/radiobutton/index.d.ts +0 -1
  548. package/lib/components/radiobutton/radiobutton.component.d.ts +0 -12
  549. package/lib/components/search/index.d.ts +0 -1
  550. package/lib/components/search/search.component.d.ts +0 -14
  551. package/lib/components/section/index.d.ts +0 -1
  552. package/lib/components/section/section.component.d.ts +0 -18
  553. package/lib/components/shared-components/action-button-group/action-button-group.component.d.ts +0 -29
  554. package/lib/components/shared-components/action-button-group/components/action-button/action-button.component.d.ts +0 -24
  555. package/lib/components/shared-components/dynamic-component/dynamic-component-factory.service.d.ts +0 -17
  556. package/lib/components/shared-components/dynamic-component/dynamic-component.component.d.ts +0 -16
  557. package/lib/components/shared-components/feature-list/directives/feature-list-column.directive.d.ts +0 -10
  558. package/lib/components/shared-components/feature-list/directives/feature-list-filter-field.directive.d.ts +0 -6
  559. package/lib/components/shared-components/feature-list/feature-list-filter.pipe.d.ts +0 -9
  560. package/lib/components/shared-components/feature-list/feature-list-page.component.d.ts +0 -9
  561. package/lib/components/shared-components/feature-list/feature-list-page.model.d.ts +0 -23
  562. package/lib/components/shared-components/feature-list/feature-list.component.d.ts +0 -62
  563. package/lib/components/shared-components/filter/directives/filter-field.directive.d.ts +0 -20
  564. package/lib/components/shared-components/filter/filter.component.d.ts +0 -53
  565. package/lib/components/shared-components/filter/filter.model.d.ts +0 -2
  566. package/lib/components/shared-components/generic-field/generic-field.component.d.ts +0 -28
  567. package/lib/components/shared-components/generic-form/generic-form.component.d.ts +0 -15
  568. package/lib/components/shared-components/generic-form/generic-form.model.d.ts +0 -4
  569. package/lib/components/side-menu/side-menu.component.d.ts +0 -15
  570. package/lib/components/side-menu/side-menu.module.d.ts +0 -12
  571. package/lib/components/snackbar/services/snackbar.service.d.ts +0 -18
  572. package/lib/components/snackbar/snackbar.component.d.ts +0 -18
  573. package/lib/components/stepper/index.d.ts +0 -1
  574. package/lib/components/stepper/stepper.component.d.ts +0 -20
  575. package/lib/components/switch/index.d.ts +0 -1
  576. package/lib/components/switch/switch.component.d.ts +0 -12
  577. package/lib/components/tab-view/tab-view-item.component.d.ts +0 -14
  578. package/lib/components/tab-view/tab-view.component.d.ts +0 -19
  579. package/lib/components/tab-view/tab-view.module.d.ts +0 -12
  580. package/lib/components/table/table-pagination-info.component.d.ts +0 -12
  581. package/lib/components/table/table.component.d.ts +0 -91
  582. package/lib/components/table/table.model.d.ts +0 -3
  583. package/lib/components/textarea/index.d.ts +0 -1
  584. package/lib/components/textarea/textarea.component.d.ts +0 -25
  585. package/lib/components/textfield/index.d.ts +0 -1
  586. package/lib/components/textfield/textfield.component.d.ts +0 -28
  587. package/lib/components/tooltip/index.d.ts +0 -1
  588. package/lib/components/tooltip/tooltip.component.d.ts +0 -18
  589. package/lib/components/tristatecheckbox/tristatecheckbox.component.d.ts +0 -27
  590. package/lib/icons.d.ts +0 -2
  591. package/lib/init.service.d.ts +0 -6
  592. package/lib/pages/not-authenticated/not-authenticated.component.d.ts +0 -5
  593. package/lib/pages/not-authorized/not-authorized.component.d.ts +0 -6
  594. package/lib/pages/not-found/not-found.component.d.ts +0 -6
  595. package/lib/pipes/color/color.pipe.d.ts +0 -8
  596. package/lib/pipes/multiselect/multiselect-options.pipe.d.ts +0 -9
  597. package/lib/pipes/size/size.pipe.d.ts +0 -8
@@ -1 +0,0 @@
1
- {"version":3,"file":"verisoft-ui-govcz.mjs","sources":["../../../../../src/libs/ui-govcz/src/lib/pipes/color/color.pipe.ts","../../../../../src/libs/ui-govcz/src/lib/pipes/multiselect/multiselect-options.pipe.ts","../../../../../src/libs/ui-govcz/src/lib/pipes/size/size.pipe.ts","../../../../../src/libs/ui-govcz/src/lib/components/button/button.component.ts","../../../../../src/libs/ui-govcz/src/lib/components/button/button.component.html","../../../../../src/libs/ui-govcz/src/lib/icons.ts","../../../../../src/libs/ui-govcz/src/lib/components/breadcrumb/breadcrumb.component.ts","../../../../../src/libs/ui-govcz/src/lib/components/breadcrumb/breadcrumb.component.html","../../../../../src/libs/ui-govcz/src/lib/components/errors/error.component.ts","../../../../../src/libs/ui-govcz/src/lib/components/errors/error.component.html","../../../../../src/libs/ui-govcz/src/lib/components/calendar/calendar.component.ts","../../../../../src/libs/ui-govcz/src/lib/components/calendar/calendar.component.html","../../../../../src/libs/ui-govcz/src/lib/components/checkbox/checkbox.component.ts","../../../../../src/libs/ui-govcz/src/lib/components/checkbox/checkbox.component.html","../../../../../src/libs/ui-govcz/src/lib/components/shared-components/action-button-group/components/action-button/action-button.component.ts","../../../../../src/libs/ui-govcz/src/lib/components/shared-components/action-button-group/components/action-button/action-button.component.html","../../../../../src/libs/ui-govcz/src/lib/components/shared-components/action-button-group/action-button-group.component.ts","../../../../../src/libs/ui-govcz/src/lib/components/shared-components/action-button-group/action-button-group.component.html","../../../../../src/libs/ui-govcz/src/lib/components/tooltip/tooltip.component.ts","../../../../../src/libs/ui-govcz/src/lib/components/tooltip/tooltip.component.html","../../../../../src/libs/ui-govcz/src/lib/components/textfield/textfield.component.ts","../../../../../src/libs/ui-govcz/src/lib/components/textfield/textfield.component.html","../../../../../src/libs/ui-govcz/src/lib/components/dropdown/dropdown-item.component.ts","../../../../../src/libs/ui-govcz/src/lib/components/dropdown/dropdown-item.component.html","../../../../../src/libs/ui-govcz/src/lib/components/dropdown/dropdown.component.ts","../../../../../src/libs/ui-govcz/src/lib/components/dropdown/dropdown.component.html","../../../../../src/libs/ui-govcz/src/lib/components/multiselect/multiselect.component.ts","../../../../../src/libs/ui-govcz/src/lib/components/multiselect/multiselect.component.html","../../../../../src/libs/ui-govcz/src/lib/components/tristatecheckbox/tristatecheckbox.component.ts","../../../../../src/libs/ui-govcz/src/lib/components/tristatecheckbox/tristatecheckbox.component.html","../../../../../src/libs/ui-govcz/src/lib/components/shared-components/generic-field/generic-field.component.ts","../../../../../src/libs/ui-govcz/src/lib/components/shared-components/generic-field/generic-field.component.html","../../../../../src/libs/ui-govcz/src/lib/components/shared-components/generic-form/generic-form.model.ts","../../../../../src/libs/ui-govcz/src/lib/components/shared-components/generic-form/generic-form.component.ts","../../../../../src/libs/ui-govcz/src/lib/components/shared-components/generic-form/generic-form.component.html","../../../../../src/libs/ui-govcz/src/lib/components/shared-components/filter/directives/filter-field.directive.ts","../../../../../src/libs/ui-govcz/src/lib/components/shared-components/filter/filter.model.ts","../../../../../src/libs/ui-govcz/src/lib/components/shared-components/filter/filter.component.ts","../../../../../src/libs/ui-govcz/src/lib/components/shared-components/filter/filter.component.html","../../../../../src/libs/ui-govcz/src/lib/components/loader/loader.component.ts","../../../../../src/libs/ui-govcz/src/lib/components/loader/loader.component.html","../../../../../src/libs/ui-govcz/src/lib/components/table/table-pagination-info.component.ts","../../../../../src/libs/ui-govcz/src/lib/components/table/table-pagination-info.component.html","../../../../../src/libs/ui-govcz/src/lib/components/table/table.model.ts","../../../../../src/libs/ui-govcz/src/lib/components/table/table.component.ts","../../../../../src/libs/ui-govcz/src/lib/components/table/table.component.html","../../../../../src/libs/ui-govcz/src/lib/components/shared-components/feature-list/directives/feature-list-filter-field.directive.ts","../../../../../src/libs/ui-govcz/src/lib/components/shared-components/feature-list/feature-list-filter.pipe.ts","../../../../../src/libs/ui-govcz/src/lib/components/shared-components/feature-list/feature-list-page.component.ts","../../../../../src/libs/ui-govcz/src/lib/components/shared-components/feature-list/feature-list-page.model.ts","../../../../../src/libs/ui-govcz/src/lib/components/shared-components/feature-list/feature-list.component.ts","../../../../../src/libs/ui-govcz/src/lib/components/shared-components/feature-list/feature-list.component.html","../../../../../src/libs/ui-govcz/src/lib/components/shared-components/feature-list/directives/feature-list-column.directive.ts","../../../../../src/libs/ui-govcz/src/lib/components/shared-components/dynamic-component/dynamic-component-factory.service.ts","../../../../../src/libs/ui-govcz/src/lib/components/shared-components/dynamic-component/dynamic-component.component.ts","../../../../../src/libs/ui-govcz/src/lib/components/confirm-dialog/confirm-dialog.component.ts","../../../../../src/libs/ui-govcz/src/lib/components/confirm-dialog/confirm-dialog.component.html","../../../../../src/libs/ui-govcz/src/lib/components/header/header.component.ts","../../../../../src/libs/ui-govcz/src/lib/components/header/header.component.html","../../../../../src/libs/ui-govcz/src/lib/components/password/password.component.ts","../../../../../src/libs/ui-govcz/src/lib/components/password/password.component.html","../../../../../src/libs/ui-govcz/src/lib/components/radiobutton/radiobutton.component.ts","../../../../../src/libs/ui-govcz/src/lib/components/radiobutton/radiobutton.component.html","../../../../../src/libs/ui-govcz/src/lib/components/switch/switch.component.ts","../../../../../src/libs/ui-govcz/src/lib/components/switch/switch.component.html","../../../../../src/libs/ui-govcz/src/lib/components/search/search.component.ts","../../../../../src/libs/ui-govcz/src/lib/components/search/search.component.html","../../../../../src/libs/ui-govcz/src/lib/components/section/section.component.ts","../../../../../src/libs/ui-govcz/src/lib/components/section/section.component.html","../../../../../src/libs/ui-govcz/src/lib/components/side-menu/side-menu.component.ts","../../../../../src/libs/ui-govcz/src/lib/components/side-menu/side-menu.component.html","../../../../../src/libs/ui-govcz/src/lib/components/side-menu/side-menu.module.ts","../../../../../src/libs/ui-govcz/src/lib/components/snackbar/snackbar.component.ts","../../../../../src/libs/ui-govcz/src/lib/components/snackbar/snackbar.component.html","../../../../../src/libs/ui-govcz/src/lib/components/snackbar/services/snackbar.service.ts","../../../../../src/libs/ui-govcz/src/lib/components/textarea/textarea.component.ts","../../../../../src/libs/ui-govcz/src/lib/components/textarea/textarea.component.html","../../../../../src/libs/ui-govcz/src/lib/components/form-field/form-field.component.ts","../../../../../src/libs/ui-govcz/src/lib/components/form-field/form-field.component.html","../../../../../src/libs/ui-govcz/src/lib/components/input-group/input-group.component.ts","../../../../../src/libs/ui-govcz/src/lib/components/input-group/input-group.component.html","../../../../../src/libs/ui-govcz/src/lib/components/number-input/number-input.component.ts","../../../../../src/libs/ui-govcz/src/lib/components/number-input/number-input.component.html","../../../../../src/libs/ui-govcz/src/lib/components/page-header/page-header.component.ts","../../../../../src/libs/ui-govcz/src/lib/components/page-header/page-header.component.html","../../../../../src/libs/ui-govcz/src/lib/components/stepper/stepper.component.ts","../../../../../src/libs/ui-govcz/src/lib/components/stepper/stepper.component.html","../../../../../src/libs/ui-govcz/src/lib/components/tab-view/tab-view-item.component.ts","../../../../../src/libs/ui-govcz/src/lib/components/tab-view/tab-view.component.ts","../../../../../src/libs/ui-govcz/src/lib/components/tab-view/tab-view.component.html","../../../../../src/libs/ui-govcz/src/lib/components/tab-view/tab-view.module.ts","../../../../../src/libs/ui-govcz/src/lib/init.service.ts","../../../../../src/libs/ui-govcz/src/lib/pages/not-authenticated/not-authenticated.component.ts","../../../../../src/libs/ui-govcz/src/lib/pages/not-authenticated/not-authenticated.component.html","../../../../../src/libs/ui-govcz/src/lib/pages/not-authorized/not-authorized.component.ts","../../../../../src/libs/ui-govcz/src/lib/pages/not-authorized/not-authorized.component.html","../../../../../src/libs/ui-govcz/src/lib/pages/not-found/not-found.component.ts","../../../../../src/libs/ui-govcz/src/lib/pages/not-found/not-found.component.html","../../../../../src/libs/ui-govcz/src/verisoft-ui-govcz.ts"],"sourcesContent":["import { Pipe, PipeTransform } from \"@angular/core\";\r\nimport { ControlSeverity, ControlSeverityType, GovControlSeverity } from \"@verisoft/ui-core\";\r\n\r\n@Pipe({\r\n name: 'govColor',\r\n standalone: true,\r\n})\r\nexport class GovColorPipe implements PipeTransform {\r\n transform(color: ControlSeverityType | undefined): string | undefined {\r\n switch (color) {\r\n case ControlSeverity.danger:\r\n return GovControlSeverity.error;\r\n \r\n case ControlSeverity.info:\r\n return GovControlSeverity.neutral;\r\n\r\n case ControlSeverity.help:\r\n case ControlSeverity.contrast:\r\n return GovControlSeverity.primary;\r\n }\r\n\r\n return color;\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\nimport { GovFormMultiSelectItem } from '@gov-design-system-ce/components';\r\n\r\n@Pipe({\r\n name: 'govMultiselectOptions',\r\n standalone: true,\r\n})\r\nexport class GovMultiselectOptionsPipe implements PipeTransform {\r\n transform(\r\n options: any[] | undefined,\r\n optionLabel?: string,\r\n optionValue?: string,\r\n addEmptyOption = false,\r\n ): GovFormMultiSelectItem[] {\r\n if (!options?.length) return [];\r\n\r\n return this.convertToGovOption(options, addEmptyOption, optionLabel, optionValue);\r\n }\r\n\r\n private convertToGovOption(\r\n options: any[],\r\n addEmptyOption: boolean,\r\n optionLabel?: string,\r\n optionValue?: string\r\n ): GovFormMultiSelectItem[] {\r\n const convertedOptions: GovFormMultiSelectItem[] = [];\r\n options.forEach((obj) => {\r\n let stringKey = '';\r\n let numberKey = '';\r\n\r\n if (optionLabel && optionValue) {\r\n stringKey = optionLabel;\r\n numberKey = optionValue;\r\n } else {\r\n const keys = Object.keys(obj);\r\n\r\n keys.forEach((key) => {\r\n if (typeof obj[key] === 'string') {\r\n stringKey = key;\r\n } else if (typeof obj[key] === 'number') {\r\n numberKey = key;\r\n }\r\n });\r\n }\r\n\r\n convertedOptions.push({\r\n label: obj[stringKey] as string,\r\n value: (obj[numberKey] as string)?.toString() ?? 'VALUE NOT SET',\r\n });\r\n });\r\n\r\n if (addEmptyOption) {\r\n convertedOptions.unshift({\r\n label: '',\r\n value: 'null',\r\n });\r\n }\r\n\r\n return convertedOptions;\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from \"@angular/core\";\r\nimport { FieldSizeType } from \"@verisoft/ui-core\";\r\n\r\n@Pipe({\r\n name: 'govSize',\r\n standalone: true,\r\n})\r\nexport class GovSizePipe implements PipeTransform {\r\n transform(size: FieldSizeType | undefined): string | undefined {\r\n if (size) {\r\n return size.substring(0, 1);\r\n }\r\n\r\n if (typeof(size) === 'undefined') {\r\n return 'm';\r\n }\r\n\r\n return size;\r\n }\r\n}\r\n","import {\r\n ChangeDetectionStrategy,\r\n Component,\r\n EventEmitter,\r\n Input,\r\n Output,\r\n} from \"@angular/core\";\r\nimport { Params, RouterModule } from \"@angular/router\";\r\nimport { GovDesignSystemModule } from \"@gov-design-system-ce/angular\";\r\nimport { ButtonEvent, GovButtonCustomEvent } from \"@gov-design-system-ce/components\";\r\nimport { TranslateModule } from \"@ngx-translate/core\";\r\nimport {\r\n BUTTON_COMPONENT_TOKEN,\r\n ButtonCore,\r\n IconPositionType,\r\n IconPosition,\r\n FieldSize,\r\n FieldSizeType,\r\n ControlSeverity,\r\n ControlSeverityType,\r\n GovButtonType,\r\n GovButtonTypeType,\r\n} from \"@verisoft/ui-core\";\r\nimport { GovColorPipe, GovSizePipe } from \"../../pipes\";\r\n\r\n@Component({\r\n selector: \"v-button\",\r\n standalone: true,\r\n styleUrl: \"./button.component.scss\",\r\n templateUrl: './button.component.html',\r\n imports: [\r\n GovDesignSystemModule, RouterModule, GovSizePipe, GovColorPipe, TranslateModule\r\n ],\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n providers: [\r\n {\r\n provide: BUTTON_COMPONENT_TOKEN,\r\n useExisting: ButtonComponent,\r\n }\r\n ],\r\n})\r\nexport class ButtonComponent\r\n implements ButtonCore\r\n{\r\n @Input() label: string | undefined;\r\n @Input() icon: string | undefined;\r\n @Input() badge!: string;\r\n @Input() iconPos: IconPositionType = IconPosition.left;\r\n @Input() disabled = false;\r\n @Input() rounded!: boolean;\r\n @Input() outlined!: boolean;\r\n @Input() raised!: boolean;\r\n @Input() routerLink!: any[];\r\n @Input() size: FieldSizeType | undefined = FieldSize.medium;\r\n @Input() queryParams!: Params;\r\n @Input() severity: ControlSeverityType | undefined = ControlSeverity.primary;\r\n @Input() type: GovButtonTypeType = GovButtonType.solid;\r\n @Input() expanded = false;\r\n @Input() name!: string;\r\n\r\n // eslint-disable-next-line @angular-eslint/no-output-native\r\n @Output() click = new EventEmitter<any>();\r\n\r\n handleClick(event: GovButtonCustomEvent<ButtonEvent> | MouseEvent) {\r\n if (this.disabled) {\r\n event.stopPropagation();\r\n return;\r\n }\r\n\r\n this.click.emit(event);\r\n }\r\n}\r\n","<div class=\"g-button\">\r\n <a\r\n [routerLink]=\"routerLink ? routerLink : undefined\"\r\n [queryParams]=\"queryParams ? queryParams : undefined\"\r\n >\r\n <gov-button\r\n [type]=\"outlined === true ? 'outlined' : type\"\r\n [color]=\"severity | govColor\"\r\n [disabled]=\"disabled\"\r\n [size]=\"size | govSize\"\r\n [name]=\"name\"\r\n [expanded]=\"expanded\"\r\n (gov-click)=\"handleClick($event)\"\r\n (click)=\"handleClick($event)\"\r\n >\r\n @if (icon) {\r\n <gov-icon \r\n [name]=\"icon\"\r\n [slot]=\"iconPos === 'left' ? 'icon-start' : 'icon-end'\"\r\n />\r\n } @if (label) {\r\n {{ label | translate }}\r\n }\r\n </gov-button>\r\n </a>\r\n</div>\r\n","import { CommonIcons } from '@verisoft/ui-core';\r\n\r\nexport const Icons: CommonIcons = {\r\n add: 'plus-lg',\r\n minus: 'dash',\r\n delete: 'trash',\r\n filter: 'filter',\r\n download: 'upload',\r\n save: 'download',\r\n print: 'print-fill',\r\n edit: 'pencil',\r\n calendar: 'calendar',\r\n settings: 'gear',\r\n house: 'house-door-fill',\r\n chevronRight: 'chevron-right',\r\n chevronDown: 'chevron-down',\r\n chevronLeft: 'chevron-left',\r\n chevronUp: 'chevron-up',\r\n checkbox: 'check-square',\r\n warning: 'exclamation-triangle-fill',\r\n search: 'search',\r\n action: 'bars',\r\n user: 'user',\r\n logout: 'logout',\r\n crossCircle: 'x-circle',\r\n infoCircle: 'info-circle',\r\n cross: 'x-lg',\r\n arrowLeft: 'arrow-left',\r\n arrowRight: 'arrow-right',\r\n questionCircle: 'question-circle',\r\n checkCircle: 'check-circle',\r\n sitemap: 'diagram',\r\n check: 'check-lg',\r\n envelope: 'envelope',\r\n loader: 'loader',\r\n};\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component } from '@angular/core';\r\nimport { RouterModule } from '@angular/router';\r\nimport { GovDesignSystemModule } from '@gov-design-system-ce/angular';\r\nimport {\r\n BREADCRUMB_COMPONENT_TOKEN,\r\n BreadcrumbCoreComponent\r\n} from '@verisoft/ui-core';\r\nimport { Icons } from '../../icons';\r\n\r\n@Component({\r\n selector: 'v-breadcrumb',\r\n standalone: true,\r\n imports: [\r\n CommonModule,\r\n GovDesignSystemModule,\r\n RouterModule\r\n ],\r\n templateUrl: './breadcrumb.component.html',\r\n styleUrl: './breadcrumb.component.scss',\r\n providers: [\r\n {\r\n provide: BREADCRUMB_COMPONENT_TOKEN,\r\n useExisting: BreadcrumbComponent\r\n },\r\n ],\r\n})\r\nexport class BreadcrumbComponent extends BreadcrumbCoreComponent { \r\n icons = Icons;\r\n}\r\n","<div class=\"gov-breadcrums mt-3 mb-3\">\r\n <gov-breadcrumbs accessible-label=\"gov-breadcrums\">\r\n <ul>\r\n <li *ngIf=\"useHomeRoute\">\r\n <gov-icon [name]=\"icons.house\" />\r\n <a [routerLink]=\"'/'\">Home</a>\r\n </li>\r\n @if (items) { @for (item of items; track item; let index = $index) {\r\n <li>\r\n @if (index > 0 || useHomeRoute) {\r\n <gov-icon [name]=\"icons.chevronRight\" />\r\n }\r\n @if (item.icon) {\r\n <gov-icon [name]=\"item.icon\" />\r\n }\r\n <a [routerLink]=\"item.routerLink\">\r\n {{ item.label }}\r\n </a>\r\n </li>\r\n } }\r\n </ul>\r\n </gov-breadcrumbs>\r\n</div>\r\n","import { CommonModule } from \"@angular/common\";\r\nimport { Component, inject, Input, } from \"@angular/core\";\r\nimport { NgControl, ValidationErrors } from \"@angular/forms\";\r\nimport { GovDesignSystemModule } from '@gov-design-system-ce/angular';\r\nimport { ERROR_PROVIDER_TOKEN } from \"@verisoft/core\";\r\nimport { SlotPosition, SlotPositionType } from \"@verisoft/ui-core\";\r\nimport { Observable } from \"rxjs\";\r\nimport { Icons } from \"../../icons\";\r\n\r\n@Component({\r\n selector: \"v-validation-message\",\r\n templateUrl: \"./error.component.html\",\r\n styleUrl: \"./error.component.scss\",\r\n standalone: true,\r\n imports: [CommonModule, GovDesignSystemModule],\r\n})\r\nexport class ErrorComponent { \r\n @Input({required: true}) ngControl?: NgControl;\r\n \r\n @Input() errorSlot: SlotPositionType = SlotPosition.bottom\r\n \r\n @Input() messageSlot: SlotPositionType = SlotPosition.bottom\r\n \r\n readonly errorService = inject(ERROR_PROVIDER_TOKEN);\r\n icons = Icons\r\n\r\n getErrorMessage(errors: ValidationErrors): Observable<string> {\r\n return this.errorService.mapError(errors);\r\n }\r\n}","@if (ngControl && ngControl.errors) {\r\n<gov-form-message \r\n [slot]=\"errorSlot\" \r\n color=\"error\"\r\n>\r\n {{ getErrorMessage(ngControl.errors) | async }}\r\n <gov-icon \r\n [name]=\"icons.warning\" \r\n slot=\"validation-icon\" />\r\n</gov-form-message>\r\n}\r\n","import { CommonModule } from '@angular/common';\r\nimport { ChangeDetectionStrategy, Component, Input, Optional, Self } from '@angular/core';\r\nimport { ControlValueAccessor, NgControl, ReactiveFormsModule } from '@angular/forms';\r\nimport { GovDesignSystemModule } from '@gov-design-system-ce/angular';\r\nimport { TranslateModule } from '@ngx-translate/core';\r\nimport {\r\n BaseFormInputComponent,\r\n CalendarCore,\r\n CALENDAR_COMPONENT_TOKEN,\r\n FieldType,\r\n FieldSizeType,\r\n FieldSize,\r\n SlotPosition,\r\n SlotPositionType,\r\n} from '@verisoft/ui-core';\r\nimport { Icons } from '../../icons';\r\nimport { GovSizePipe } from '../../pipes';\r\nimport { ErrorComponent } from '../errors';\r\n\r\n@Component({\r\n selector: 'v-calendar',\r\n standalone: true,\r\n imports: [\r\n CommonModule,\r\n ReactiveFormsModule,\r\n GovDesignSystemModule,\r\n GovSizePipe,\r\n ErrorComponent,\r\n TranslateModule\r\n ],\r\n templateUrl: './calendar.component.html',\r\n styleUrl: './calendar.component.scss',\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n providers: [\r\n {\r\n provide: CALENDAR_COMPONENT_TOKEN,\r\n useExisting: CalendarComponent\r\n }\r\n ],\r\n})\r\n\r\nexport class CalendarComponent\r\n extends BaseFormInputComponent\r\n implements ControlValueAccessor, CalendarCore\r\n{\r\n @Input() icon!: string;\r\n\r\n @Input() floatLabel: string | undefined;\r\n\r\n @Input() maxDate!: Date;\r\n\r\n @Input() minDate!: Date;\r\n\r\n @Input() header!: string;\r\n\r\n @Input() footer!: string;\r\n\r\n @Input() selectionMode: 'single' | 'multiple' | 'range' | undefined;\r\n\r\n @Input() size: FieldSizeType = FieldSize.medium;\r\n\r\n @Input() errorSlot: SlotPositionType = SlotPosition.bottom;\r\n\r\n @Input() labelSlot: SlotPositionType = SlotPosition.top;\r\n\r\n @Input() messageSlot: SlotPositionType = SlotPosition.bottom;\r\n\r\n @Input() message!: string;\r\n\r\n @Input() name!: string;\r\n\r\n type = FieldType.date;\r\n\r\n icons = Icons;\r\n\r\n constructor(@Optional() @Self() ngControl: NgControl) {\r\n super(ngControl);\r\n }\r\n}\r\n","<gov-form-control class=\"mb-3\">\r\n @if (label) {\r\n <gov-form-label [slot]=\"labelSlot\" [size]=\"size | govSize\">\r\n {{ label | translate}}\r\n </gov-form-label>\r\n }\r\n <gov-form-group>\r\n <gov-form-input\r\n [formControl]=\"formControl\"\r\n [attr.input-type]=\"type\"\r\n [invalid]=\"ngControl?.errors ? true : false\"\r\n [size]=\"size | govSize\"\r\n [required]=\"required\"\r\n [readonly]=\"readonly\"\r\n [attr.disabled]=\"readonly ? 'true' : 'false'\"\r\n [name]=\"name\"\r\n />\r\n </gov-form-group>\r\n <v-validation-message [ngControl]=\"ngControl\"></v-validation-message>\r\n @if (message) {\r\n <gov-form-message \r\n [slot]=\"messageSlot\" \r\n color=\"neutral\"\r\n >\r\n {{ message }}\r\n </gov-form-message>\r\n }\r\n</gov-form-control>","import { CommonModule } from \"@angular/common\";\r\nimport {\r\n ChangeDetectionStrategy,\r\n Component,\r\n Optional,\r\n Self,\r\n Input,\r\n} from \"@angular/core\";\r\nimport { ControlValueAccessor, NgControl, ReactiveFormsModule } from \"@angular/forms\";\r\nimport { RouterModule } from \"@angular/router\";\r\nimport { GovDesignSystemModule } from \"@gov-design-system-ce/angular\";\r\nimport { TranslateModule } from \"@ngx-translate/core\";\r\nimport {\r\n BaseFormInputComponent,\r\n CHECKBOX_COMPONENT_TOKEN,\r\n CheckboxCore,\r\n FieldSize,\r\n FieldSizeType,\r\n} from \"@verisoft/ui-core\";\r\nimport { v4 as uuidv4 } from 'uuid';\r\nimport { Icons } from \"../../icons\";\r\nimport { GovSizePipe } from \"../../pipes\";\r\nimport { ErrorComponent } from \"../errors\";\r\n\r\n@Component({\r\n selector: \"v-checkbox\",\r\n standalone: true,\r\n styleUrl: \"./checkbox.component.scss\",\r\n templateUrl: './checkbox.component.html',\r\n imports: [\r\n CommonModule,\r\n GovDesignSystemModule,\r\n RouterModule,\r\n ReactiveFormsModule,\r\n GovSizePipe,\r\n ErrorComponent,\r\n TranslateModule\r\n ],\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n providers: [{\r\n provide: CHECKBOX_COMPONENT_TOKEN,\r\n useExisting: CheckboxComponent,\r\n }],\r\n})\r\nexport class CheckboxComponent\r\n extends BaseFormInputComponent\r\n implements ControlValueAccessor, CheckboxCore\r\n{\r\n @Input() size: FieldSizeType = FieldSize.medium;\r\n @Input() value!: string;\r\n @Input() name!: string;\r\n @Input() indeterminate = false;\r\n @Input() noLabel = false;\r\n \r\n protected readonly icons = Icons;\r\n\r\n constructor(@Optional() @Self() ngControl: NgControl) {\r\n super(ngControl);\r\n }\r\n\r\n id = uuidv4();\r\n}\r\n","<gov-form-control class=\"mt-3\">\r\n <gov-form-checkbox \r\n [formControl]=\"formControl\"\r\n [size]=\"size | govSize\"\r\n [value]=\"value\"\r\n [required]=\"required\"\r\n [attr.disabled]=\"disabled ? 'true' : 'false'\"\r\n [identifier]=\"id\"\r\n [indeterminate]=\"indeterminate\"\r\n [name]=\"name\"\r\n [invalid]=\"ngControl?.errors\"\r\n [noLabel]=\"noLabel\"\r\n [disabled]=\"disabled\"\r\n > \r\n <gov-form-label\r\n [size]=\"size\"\r\n slot=\"label\"\r\n >\r\n {{ label ?? '' | translate }}\r\n </gov-form-label>\r\n </gov-form-checkbox>\r\n <v-validation-message [ngControl]=\"ngControl\"></v-validation-message>\r\n</gov-form-control>\r\n","import {\r\n ChangeDetectionStrategy,\r\n Component,\r\n EventEmitter,\r\n inject,\r\n Input,\r\n OnChanges,\r\n Output,\r\n SimpleChanges,\r\n} from '@angular/core';\r\nimport {\r\n ACTION_BUTTON_GROUP_COMPONENT_TOKEN,\r\n ActionButton,\r\n ActionButtonGroupCore,\r\n ControlSeverityType,\r\n FieldSizeType,\r\n} from '@verisoft/ui-core';\r\nimport { TooltipModule } from 'primeng/tooltip';\r\nimport { Observable, Subject } from 'rxjs';\r\nimport { Icons } from '../../../../../icons';\r\nimport { ButtonComponent } from '../../../../button';\r\n\r\n@Component({\r\n selector: 'v-action-button',\r\n standalone: true,\r\n imports: [ButtonComponent, TooltipModule],\r\n templateUrl: './action-button.component.html',\r\n styleUrl: './action-button.component.scss',\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class ActionButtonComponent implements ActionButton, OnChanges {\r\n @Input() disabled = false;\r\n @Input() toolTip?: string;\r\n @Input() id?: string;\r\n @Input() icon?: string;\r\n @Input() outlined = false;\r\n @Input() raised = false;\r\n @Input() severity?: ControlSeverityType;\r\n @Input() label?: string;\r\n @Input() size?: FieldSizeType;\r\n // eslint-disable-next-line @angular-eslint/no-output-native\r\n @Output() click = new EventEmitter<MouseEvent>();\r\n\r\n icons = Icons\r\n\r\n private propertyChangeSubject = new Subject();\r\n\r\n propertyChanged: Observable<unknown> =\r\n this.propertyChangeSubject.asObservable();\r\n\r\n buttonGroup: ActionButtonGroupCore | null = inject<ActionButtonGroupCore>(\r\n ACTION_BUTTON_GROUP_COMPONENT_TOKEN,\r\n {\r\n optional: true,\r\n }\r\n );\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n const isValueChange = Object.keys(changes).some(\r\n (x) => !changes[x].firstChange\r\n );\r\n if (isValueChange) {\r\n this.propertyChangeSubject.next(null);\r\n }\r\n }\r\n\r\n handleClick(event: MouseEvent) {\r\n event.stopPropagation();\r\n this.click.emit(event);\r\n }\r\n}\r\n","<v-button\r\n [label]=\"label\"\r\n [disabled]=\"disabled\"\r\n [icon]=\"icon\"\r\n [pTooltip]=\"toolTip\"\r\n [outlined]=\"outlined\"\r\n tooltipPosition=\"bottom\"\r\n [size]=\"size\"\r\n [severity]=\"severity\"\r\n (click)=\"handleClick($event)\"\r\n></v-button>\r\n","import {\r\n AfterContentInit,\r\n ChangeDetectionStrategy,\r\n ChangeDetectorRef,\r\n Component,\r\n ContentChildren,\r\n Input,\r\n QueryList,\r\n} from '@angular/core';\r\nimport {\r\n ACTION_BUTTON_GROUP_COMPONENT_TOKEN,\r\n ActionButton,\r\n ActionButtonGroupCore,\r\n IconPositionType,\r\n queryListChanged,\r\n ScreenSizeService,\r\n UnsubscribeComponent,\r\n} from '@verisoft/ui-core';\r\nimport { MenuItem } from 'primeng/api';\r\nimport { MenuModule } from 'primeng/menu';\r\nimport {\r\n combineLatestWith,\r\n takeUntil,\r\n} from 'rxjs';\r\nimport { Icons } from '../../../icons';\r\nimport { ButtonComponent } from '../../button';\r\nimport { ActionButtonComponent } from './components/action-button/action-button.component';\r\n\r\n@Component({\r\n selector: 'v-action-button-group',\r\n standalone: true,\r\n imports: [MenuModule, ButtonComponent, ActionButtonComponent],\r\n templateUrl: './action-button-group.component.html',\r\n styleUrl: './action-button-group.component.scss',\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n providers: [\r\n {\r\n provide: ACTION_BUTTON_GROUP_COMPONENT_TOKEN,\r\n useExisting: ActionButtonGroupComponent,\r\n },\r\n ],\r\n})\r\nexport class ActionButtonGroupComponent\r\n extends UnsubscribeComponent\r\n implements AfterContentInit, ActionButtonGroupCore\r\n{\r\n @ContentChildren(ActionButtonComponent)\r\n actions!: QueryList<ActionButtonComponent>;\r\n\r\n @Input() maxItems = 3;\r\n\r\n @Input() maxItemsMobile = 0;\r\n\r\n @Input() items: ActionButton[] = [];\r\n\r\n @Input() menuIconPos: IconPositionType = 'right';\r\n\r\n @Input() menuIcon = Icons.action;\r\n\r\n @Input() label?: string;\r\n\r\n @Input() icon?: string;\r\n\r\n icons = Icons;\r\n allItems: ActionButton[] = [];\r\n visibleActions: ActionButton[] = [];\r\n menuItems: MenuItem[] = [];\r\n\r\n constructor(\r\n private readonly changeDetectorRef: ChangeDetectorRef,\r\n readonly screenSizeService: ScreenSizeService\r\n ) {\r\n super();\r\n }\r\n\r\n ngAfterContentInit(): void {\r\n this.subscribeItemChange();\r\n }\r\n\r\n fireClick(item: ActionButton, event: MouseEvent) {\r\n event.stopPropagation();\r\n item.click.emit();\r\n }\r\n\r\n private subscribeItemChange(): void {\r\n const screenResize$ = this.screenSizeService.isMobileBlock;\r\n\r\n const actions$ = queryListChanged(this.actions);\r\n\r\n screenResize$\r\n .pipe(takeUntil(this.destroyed$), combineLatestWith(actions$))\r\n .subscribe(([isMobile, actions]) => {\r\n this.computeItems(actions, isMobile);\r\n });\r\n }\r\n\r\n private computeItems(actions: ActionButton[], isMobile: boolean) {\r\n const allItems = [...(this.items ?? []), ...actions];\r\n const maxItems = isMobile ? this.maxItemsMobile : this.maxItems;\r\n this.visibleActions = allItems.slice(0, maxItems);\r\n this.menuItems = allItems.slice(maxItems).map(this.convertToMenuItem);\r\n this.changeDetectorRef.detectChanges();\r\n }\r\n\r\n private convertToMenuItem(item: ActionButton): MenuItem {\r\n return {\r\n label: item.label,\r\n icon: item.icon,\r\n command: () => {\r\n item.click.emit();\r\n },\r\n };\r\n }\r\n}\r\n","<div\r\n class=\"v-action-button-group align-items-center justify-content-center justify-content-md-end\"\r\n>\r\n <div class=\"v-action-button-group__actions d-flex gap-2\">\r\n @for (action of visibleActions; track action) {\r\n <v-action-button\r\n [disabled]=\"action.disabled\"\r\n [icon]=\"action.icon\"\r\n [id]=\"action.id\"\r\n [outlined]=\"action.outlined\"\r\n [raised]=\"action.raised\"\r\n [toolTip]=\"action.toolTip || action.label\"\r\n [severity]=\"action.severity\"\r\n [size]=\"action.size\"\r\n (click)=\"fireClick(action, $event)\"\r\n ></v-action-button>\r\n } @if (actions.length > visibleActions.length) {\r\n <v-button\r\n (click)=\"menu.toggle($event)\"\r\n [label]=\"label\"\r\n [iconPos]=\"menuIconPos\"\r\n [icon]=\"menuIcon\"\r\n />\r\n }\r\n </div>\r\n</div>\r\n<p-menu #menu [model]=\"menuItems\" [popup]=\"true\" appendTo=\"body\" />\r\n","import { Component, Input, ElementRef, Renderer2, AfterViewInit } from \"@angular/core\";\r\nimport { GovDesignSystemModule } from \"@gov-design-system-ce/angular\";\r\nimport { GovSizePipe } from \"../../pipes\";\r\n\r\n@Component({\r\n standalone: true,\r\n selector: \"v-tooltip\",\r\n templateUrl: './tooltip.component.html',\r\n styleUrl: \"./tooltip.component.scss\",\r\n imports: [\r\n GovDesignSystemModule,\r\n GovSizePipe\r\n ],\r\n})\r\nexport class TooltipComponent implements AfterViewInit {\r\n @Input() color: 'primary' | 'secondary' = 'primary';\r\n\r\n @Input() size: 'small' | 'medium' | 'large' = 'medium';\r\n\r\n @Input() position: 'top' | 'right' | 'bottom' | 'left' = 'top';\r\n\r\n @Input({ required: true }) message!: string;\r\n\r\n @Input() label = '?';\r\n\r\n isVisible = false;\r\n tooltipId: string | null = null;\r\n\r\n constructor(private el: ElementRef, private renderer: Renderer2) {}\r\n\r\n ngAfterViewInit() {\r\n const scrollContainer = document.querySelector('.gov-main-container-content');\r\n if (scrollContainer) {\r\n this.renderer.listen(scrollContainer, 'scroll', () => {\r\n if (this.isVisible && this.tooltipId) {\r\n const tooltipContent = document.querySelector(`[parent-id=\"${this.tooltipId}\"]`);\r\n if (tooltipContent) {\r\n this.renderer.setStyle(tooltipContent, 'visibility', 'hidden');\r\n this.isVisible = false;\r\n }\r\n }\r\n });\r\n }\r\n }\r\n\r\n toggleTooltip() {\r\n this.isVisible = !this.isVisible;\r\n const tooltip = this.el.nativeElement.querySelector('gov-tooltip');\r\n if (tooltip && !this.tooltipId) {\r\n this.tooltipId = tooltip.getAttribute('id');\r\n }\r\n const tooltipContent = document.querySelector(`[parent-id=\"${this.tooltipId}\"]`);\r\n if (tooltipContent) {\r\n this.renderer.setStyle(tooltipContent, 'visibility', this.isVisible ? 'visible' : 'hidden');\r\n }\r\n }\r\n}\r\n","<gov-tooltip\r\n class=\"ms-2\"\r\n [color]=\"color\"\r\n [size]=\"size | govSize\"\r\n [position]=\"position\"\r\n [message]=\"message\"\r\n (click)=\"toggleTooltip()\"\r\n>\r\n {{ label }}\r\n</gov-tooltip>","import { CommonModule } from '@angular/common';\r\nimport {\r\n ChangeDetectionStrategy,\r\n Component,\r\n Input,\r\n OnInit,\r\n Optional,\r\n Self,\r\n} from '@angular/core';\r\nimport {\r\n ControlValueAccessor,\r\n FormControl,\r\n NgControl,\r\n ReactiveFormsModule,\r\n Validators,\r\n} from '@angular/forms';\r\nimport { GovDesignSystemModule } from '@gov-design-system-ce/angular';\r\nimport { TranslateModule } from '@ngx-translate/core';\r\nimport {\r\n TextfieldCore,\r\n TEXTFIELD_COMPONENT_TOKEN,\r\n FieldType,\r\n BaseFormInputComponent,\r\n FieldSizeType,\r\n FieldSize,\r\n IconPositionType,\r\n IconPosition,\r\n SlotPositionType,\r\n SlotPosition,\r\n FieldTypeType,\r\n} from '@verisoft/ui-core';\r\nimport { GovSizePipe } from '../../pipes';\r\nimport { ErrorComponent } from '../errors';\r\nimport { TooltipComponent } from '../tooltip';\r\n@Component({\r\n selector: 'v-textfield',\r\n standalone: true,\r\n imports: [\r\n CommonModule,\r\n ReactiveFormsModule,\r\n GovDesignSystemModule,\r\n TooltipComponent,\r\n GovSizePipe,\r\n TranslateModule,\r\n ErrorComponent,\r\n ],\r\n templateUrl: './textfield.component.html',\r\n styleUrl: './textfield.component.scss',\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n providers: [\r\n {\r\n provide: TEXTFIELD_COMPONENT_TOKEN,\r\n useExisting: TextfieldComponent,\r\n },\r\n ],\r\n})\r\nexport class TextfieldComponent\r\n extends BaseFormInputComponent\r\n implements ControlValueAccessor, TextfieldCore, OnInit\r\n{\r\n @Input() floatLabel!: boolean;\r\n @Input() type: FieldTypeType = FieldType.text;\r\n @Input() minlength = 0;\r\n @Input() maxlength = 524288;\r\n @Input() min = -2147483648;\r\n @Input() max = 2147483647;\r\n @Input() prefix!: string;\r\n @Input() sufix!: string;\r\n @Input() message!: string;\r\n @Input() name!: string;\r\n @Input() role!: string;\r\n @Input() size: FieldSizeType | undefined = FieldSize.medium;\r\n @Input() icon!: string;\r\n @Input() iconPos: IconPositionType = IconPosition.right;\r\n @Input() labelSlot: SlotPositionType = SlotPosition.top;\r\n @Input() errorSlot: SlotPositionType = SlotPosition.bottom;\r\n @Input() messageSlot: SlotPositionType = SlotPosition.bottom;\r\n\r\n constructor(@Optional() @Self() ngControl: NgControl) {\r\n super(ngControl);\r\n if (ngControl) {\r\n ngControl.valueAccessor = this;\r\n }\r\n }\r\n\r\n override ngOnInit(): void {\r\n super.ngOnInit();\r\n\r\n if (!this.formControl && this.ngControl) {\r\n this.formControl = this.ngControl.control as FormControl;\r\n }\r\n\r\n if (this.formControl && this.type === FieldType.number) {\r\n this.setMinMaxNumberInputValidators();\r\n }\r\n }\r\n\r\n private setMinMaxNumberInputValidators(): void {\r\n if (!this.formControl) {\r\n return;\r\n }\r\n\r\n const validators = [];\r\n if (this.min !== undefined && this.min !== null) {\r\n validators.push(Validators.min(this.min));\r\n }\r\n if (this.max !== undefined && this.max !== null) {\r\n validators.push(Validators.max(this.max));\r\n }\r\n\r\n this.formControl.addValidators(validators);\r\n this.formControl.updateValueAndValidity({ onlySelf: true, emitEvent: true });\r\n }\r\n}\r\n","<gov-form-control class=\"mb-3\">\r\n @if (label) {\r\n <gov-form-label\r\n [slot]=\"labelSlot\"\r\n [size]=\"size | govSize\"\r\n >\r\n <div class=\"d-flex\">\r\n {{ label | translate }}\r\n @if (tooltip) {\r\n <v-tooltip [message]=\"tooltip | translate\" />\r\n }\r\n </div>\r\n </gov-form-label>\r\n }\r\n <gov-form-group>\r\n <gov-form-input\r\n [inputType]=\"type\"\r\n [formControl]=\"formControl\"\r\n [minlength]=\"minlength\"\r\n [maxlength]=\"maxlength\"\r\n [min]=\"min\"\r\n [max]=\"max\"\r\n [size]='size | govSize'\r\n [name]='name'\r\n [role]='role'\r\n [required]=\"required\"\r\n [attr.disabled]=\"disabled ? 'true' : 'false'\"\r\n [invalid]=\"ngControl?.errors ? true : false\"\r\n [placeholder]=\"placeholder\"\r\n >\r\n @if (icon) {\r\n <gov-icon\r\n [name]=\"icon\"\r\n [slot]=\"iconPos === 'left' ? 'icon-start' : 'icon-end'\"\r\n />\r\n } @if (prefix) {\r\n <p slot=\"prefix\">\r\n {{ prefix }}\r\n </p>\r\n } @if (sufix) {\r\n <p slot=\"sufix\">\r\n {{ sufix }}\r\n </p>\r\n }\r\n </gov-form-input>\r\n <v-validation-message [ngControl]=\"ngControl\"></v-validation-message>\r\n @if (message) {\r\n <gov-form-message\r\n [slot]=\"messageSlot\"\r\n color=\"neutral\"\r\n >\r\n {{ message }}\r\n </gov-form-message>\r\n }\r\n </gov-form-group>\r\n</gov-form-control>","import {\r\n ChangeDetectionStrategy,\r\n Component,\r\n Input,\r\n ViewEncapsulation,\r\n} from '@angular/core';\r\nimport { DropDownItemData } from './dropdown.model';\r\n\r\n@Component({\r\n selector: 'v-dropdown-item',\r\n standalone: true,\r\n templateUrl: './dropdown-item.component.html',\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n encapsulation: ViewEncapsulation.None,\r\n})\r\nexport class DropdownItemComponent<T> {\r\n @Input() item : DropDownItemData<T> | undefined;\r\n}\r\n","<li\r\n role=\"option\"\r\n class=\"v-dropdown__item\"\r\n [attr.aria-selected]=\"item?.selected\"\r\n [class.is-active]=\"item?.selected\"\r\n>\r\n {{item?.label}}\r\n</li>","import { ScrollingModule } from '@angular/cdk/scrolling';\r\nimport { CommonModule } from '@angular/common';\r\nimport {\r\n ChangeDetectionStrategy,\r\n ChangeDetectorRef,\r\n Component,\r\n ElementRef,\r\n EventEmitter,\r\n HostListener,\r\n Input,\r\n NO_ERRORS_SCHEMA,\r\n OnChanges,\r\n OnDestroy,\r\n OnInit,\r\n Optional,\r\n Output,\r\n Self,\r\n SimpleChanges,\r\n ViewChild,\r\n ViewEncapsulation,\r\n} from '@angular/core';\r\nimport {\r\n ControlValueAccessor,\r\n FormControl,\r\n NgControl,\r\n ReactiveFormsModule,\r\n} from '@angular/forms';\r\nimport { GovDesignSystemModule } from '@gov-design-system-ce/angular';\r\nimport { TranslateModule } from '@ngx-translate/core';\r\nimport { DEFAULT_PAGE_SIZE, FilterEvent, getValueByPath, LazyLoadEvent } from '@verisoft/core';\r\nimport {\r\n BaseFormInputComponent,\r\n DropdownCore,\r\n DROPDOWN_COMPONENT_TOKEN,\r\n FieldSizeType,\r\n FieldSize,\r\n} from '@verisoft/ui-core';\r\nimport { debounceTime, distinctUntilChanged, Subscription } from 'rxjs';\r\nimport { Icons } from '../../icons';\r\nimport { ErrorComponent } from '../errors';\r\nimport { TextfieldComponent } from '../textfield';\r\nimport { DropdownItemComponent } from './dropdown-item.component';\r\nimport { DropDownItemData } from './dropdown.model';\r\n\r\n@Component({\r\n selector: 'v-dropdown',\r\n standalone: true,\r\n imports: [\r\n CommonModule,\r\n ReactiveFormsModule,\r\n GovDesignSystemModule,\r\n ErrorComponent,\r\n DropdownItemComponent,\r\n TextfieldComponent,\r\n ScrollingModule,\r\n TranslateModule,\r\n ],\r\n templateUrl: './dropdown.component.html',\r\n styleUrl: './dropdown.component.scss',\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n encapsulation: ViewEncapsulation.None,\r\n providers: [\r\n {\r\n provide: DROPDOWN_COMPONENT_TOKEN,\r\n useExisting: DropdownComponent,\r\n },\r\n ],\r\n schemas: [\r\n NO_ERRORS_SCHEMA\r\n ],\r\n})\r\nexport class DropdownComponent<T>\r\n extends BaseFormInputComponent\r\n implements ControlValueAccessor, DropdownCore<T>, OnInit, OnChanges, OnDestroy {\r\n\r\n @ViewChild('filterTextField', { static: false }) filterTextField!: ElementRef;\r\n\r\n @Input() options: T[] | undefined = [];\r\n @Input() optionLabel: string | undefined;\r\n @Input() optionValue: string | undefined;\r\n @Input() dropdownIcon: string | undefined;\r\n @Input() floatLabel: string | undefined;\r\n @Input() lazy!: boolean;\r\n @Input() filter!: boolean;\r\n @Input() editable!: boolean;\r\n @Input() loading!: boolean;\r\n @Input() size: FieldSizeType = FieldSize.medium;\r\n @Input() showFilter = true;\r\n @Input() localSearch = true;\r\n @Input() forceMinWidth = false;\r\n\r\n @Output() changed = new EventEmitter<any>();\r\n @Output() showed = new EventEmitter<any>();\r\n @Output() cleared = new EventEmitter<any>();\r\n @Output() lazyLoad = new EventEmitter<LazyLoadEvent>();\r\n @Output() filtered = new EventEmitter<FilterEvent>();\r\n\r\n opened = false;\r\n icons = Icons;\r\n selectedItem: DropDownItemData<T> | undefined;\r\n filterControl = new FormControl('');\r\n filterSub: Subscription | undefined\r\n dropdownOptions: DropDownItemData<T>[] | undefined;\r\n private readonly pageSize = DEFAULT_PAGE_SIZE;\r\n private lastPage: number | undefined;\r\n\r\n get labelClasses() {\r\n return {\r\n disabled: this.ngControl?.disabled,\r\n error: this.ngControl?.invalid\r\n };\r\n }\r\n\r\n get inputClasses() {\r\n return {\r\n 'disabled-input': this.ngControl?.disabled,\r\n 'error-input': this.ngControl?.invalid\r\n };\r\n }\r\n\r\n constructor(@Optional() @Self() ngControl: NgControl,\r\n private changeDetectorRef: ChangeDetectorRef) {\r\n super(ngControl);\r\n }\r\n\r\n override ngOnInit() {\r\n super.ngOnInit();\r\n this.filterSub = this.filterControl.valueChanges.pipe(\r\n debounceTime(300),\r\n distinctUntilChanged()\r\n ).subscribe((value) => {\r\n this.filterOptions(value);\r\n });\r\n }\r\n\r\n override writeValue(value: any): void {\r\n const selectedItem = (value == undefined || value === \"\") ? undefined : (this.dropdownOptions?.find(x => x.value === value)\r\n ?? { value, label: '', option: undefined as T, selected: false } as unknown as DropDownItemData<T>)\r\n this.selectItem(selectedItem, false);\r\n\r\n this.changeDetectorRef.detectChanges();\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges) {\r\n if (changes['options'] || changes['loading']) {\r\n this.dropdownOptions = this.convertToOptions();\r\n if (this.selectedItem && !this.selectedItem?.item) {\r\n const item = this.dropdownOptions?.find(x => this.selectedItem?.value === x.value);\r\n if (item) {\r\n this.selectItem(item, false);\r\n }\r\n }\r\n }\r\n\r\n this.changeDetectorRef.detectChanges();\r\n }\r\n\r\n private convertToOptions(): DropDownItemData<T>[] | undefined {\r\n return this.options?.map((option) => ({\r\n label: (this.optionLabel ? getValueByPath(option, this.optionLabel) : option) as unknown as string,\r\n value: this.optionValue ? getValueByPath(option, this.optionValue) : option as unknown as string,\r\n item: option,\r\n selected: false,\r\n } as DropDownItemData<T>)\r\n );\r\n }\r\n\r\n ngOnDestroy() {\r\n this.filterSub?.unsubscribe();\r\n }\r\n\r\n toggleDropdown() {\r\n if (this.ngControl?.disabled) {\r\n return;\r\n }\r\n\r\n if (!this.opened) {\r\n this.openDropdown();\r\n } else {\r\n this.closeDropdown();\r\n }\r\n }\r\n\r\n protected clearSelection(event: MouseEvent) {\r\n event.stopPropagation();\r\n this.changed.emit(null);\r\n this.dropdownOptions = this.dropdownOptions?.map(x => ({ ...x, selected: false })) ?? [];\r\n this.ngControl?.control?.setValue(null);\r\n }\r\n\r\n private openDropdown() {\r\n this.opened = true;\r\n this.setFilterFocus();\r\n this.showed.emit();\r\n }\r\n\r\n selectItem(option: DropDownItemData<T> | undefined, emitChange: boolean) {\r\n if (option == undefined) {\r\n this.selectedItem = undefined;\r\n this.closeDropdown();\r\n return;\r\n }\r\n\r\n if (this.selectedItem && this.selectedItem != option) {\r\n this.selectedItem.selected = false;\r\n }\r\n\r\n option.selected = true;\r\n this.selectedItem = option;\r\n\r\n if (emitChange) {\r\n if (this.ngControl?.control?.value !== option.value) {\r\n this.changed.emit(option.value);\r\n this.ngControl?.control?.setValue(option?.value);\r\n }\r\n }\r\n\r\n this.closeDropdown();\r\n }\r\n\r\n @HostListener('document:click', ['$event'])\r\n onDocumentClick(event: MouseEvent) {\r\n const target = event.target as HTMLElement;\r\n if (!target.closest('v-dropdown')) {\r\n this.opened = false;\r\n }\r\n }\r\n\r\n onScroll(index: number) {\r\n this.loadDataForIndex(index);\r\n }\r\n\r\n onKeyDown(event: KeyboardEvent) {\r\n if (this.formControl.disabled || this.readonly || this.loading || !this.opened) {\r\n return;\r\n }\r\n\r\n switch (event.code) {\r\n case 'ArrowDown':\r\n break;\r\n\r\n case 'ArrowUp':\r\n break;\r\n\r\n case 'ArrowLeft':\r\n case 'ArrowRight':\r\n break;\r\n }\r\n }\r\n\r\n private loadDataForIndex(index: number) {\r\n if (this.lazy) {\r\n const currentPage = Math.floor(index / this.pageSize);\r\n const shouldLazyLoad = currentPage !== this.lastPage;\r\n if (shouldLazyLoad) {\r\n this.lastPage = currentPage;\r\n this.lazyLoad.emit({\r\n filter: this.createFilterObject(this.filterControl.value),\r\n offset: currentPage * this.pageSize,\r\n limit: this.pageSize,\r\n });\r\n }\r\n }\r\n }\r\n\r\n private setFilterFocus() {\r\n setTimeout(() => {\r\n this.filterTextField?.nativeElement?.querySelector(\"input\").focus();\r\n }, 200);\r\n }\r\n\r\n private closeDropdown() {\r\n this.opened = false;\r\n }\r\n\r\n private filterOptions(value: string | null) {\r\n if (!this.localSearch) {\r\n this.filtered.emit({\r\n filter: !value ? undefined : value,\r\n });\r\n }\r\n\r\n if (this.lazy) {\r\n this.loadDataForIndex(0);\r\n } else {\r\n const loweredFilterValue = value?.toLocaleLowerCase();\r\n this.dropdownOptions = !loweredFilterValue ?\r\n this.convertToOptions()\r\n : this.convertToOptions()?.filter(x => x.label?.toLocaleLowerCase()?.indexOf(loweredFilterValue) !== -1);\r\n this.changeDetectorRef.detectChanges();\r\n }\r\n }\r\n\r\n private createFilterObject(filterValue: string | null): Partial<T> {\r\n return (this.optionLabel ? { [this.optionLabel]: filterValue } : filterValue) as unknown as Partial<T>\r\n }\r\n}\r\n","<div\r\n class=\"v-dropdown mb-3\"\r\n (keydown)=\"onKeyDown($event)\"\r\n>\r\n <gov-form-control [disabled]=\"this.ngControl?.disabled\">\r\n <gov-form-label\r\n [slot]=\"label\"\r\n [ngClass]=\"labelClasses\"\r\n >\r\n <span [ngClass]=\"labelClasses\">\r\n {{ label ?? '' | translate }}\r\n @if (tooltip) {\r\n <v-tooltip [message]=\"tooltip | translate\" />\r\n }\r\n </span>\r\n </gov-form-label>\r\n <div\r\n class=\"gov-form-input\"\r\n [ngStyle]=\"forceMinWidth ? {'min-width': '16rem'} : {}\"\r\n [ngClass]=\"inputClasses\"\r\n >\r\n <div\r\n class=\"element d-flex gov-form-input-child\"\r\n [ngClass]=\"labelClasses\"\r\n (click)=\"toggleDropdown()\"\r\n >\r\n <div class=\"v-dropdown__value flex-grow-1 me-1\">{{ selectedItem?.label ?? placeholder }}</div>\r\n @if (clearable && ngControl?.enabled && selectedItem !== undefined && selectedItem !== null) {\r\n <gov-icon\r\n [name]=\"icons.cross\"\r\n size=\"m\"\r\n class=\"v-dropdown__clear me-1\"\r\n color=\"error\"\r\n (click)=\"clearSelection($event)\"\r\n />\r\n }\r\n @if (loading) {\r\n <div class=\"v-dropdown__loader\">\r\n <gov-icon [name]=\"icons.loader\" />\r\n </div>\r\n }\r\n <div class=\"v-dropdown__trigger\">\r\n <gov-icon [name]=\"opened ? icons.chevronUp : icons.chevronDown\" />\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"position-relative\">\r\n @if (opened) {\r\n <div class=\"v-dropdown__container\">\r\n @if (showFilter) {\r\n <div\r\n class=\"v-dropdown__filter\"\r\n #filterTextField\r\n (keydown)=\"onKeyDown($event)\"\r\n >\r\n <v-textfield\r\n placeholder=\"Search\"\r\n [formControl]=\"filterControl\"\r\n iconPos=\"right\"\r\n [icon]=\"icons.search\"\r\n />\r\n </div>\r\n }\r\n @if (!dropdownOptions?.length) {\r\n <div class=\"v-dropdown__no-item\">No option was found.</div>\r\n } @else {\r\n <ul\r\n role=\"listbox\"\r\n class=\"v-dropdown__list\"\r\n >\r\n <cdk-virtual-scroll-viewport\r\n [itemSize]=\"30\"\r\n class=\"v-dropdown__scroll\"\r\n (scrolledIndexChange)=\"onScroll($event)\"\r\n >\r\n <v-dropdown-item\r\n *cdkVirtualFor=\"let option of dropdownOptions;\"\r\n [item]=\"option\"\r\n (click)=\"selectItem(option, true)\"\r\n >\r\n </v-dropdown-item>\r\n </cdk-virtual-scroll-viewport>\r\n </ul>\r\n }\r\n </div>\r\n }\r\n </div>\r\n <v-validation-message [ngControl]=\"ngControl\"></v-validation-message>\r\n </gov-form-control>\r\n</div>\r\n","import { CommonModule } from '@angular/common';\r\nimport {\r\n ChangeDetectionStrategy,\r\n Component,\r\n EventEmitter,\r\n Input,\r\n OnChanges,\r\n Optional,\r\n Output,\r\n Self,\r\n SimpleChanges,\r\n inject,\r\n ChangeDetectorRef,\r\n} from '@angular/core';\r\nimport {\r\n ControlValueAccessor,\r\n NgControl,\r\n ReactiveFormsModule,\r\n} from '@angular/forms';\r\nimport { GovDesignSystemModule } from '@gov-design-system-ce/angular';\r\nimport {\r\n FilterEvent,\r\n LazyLoadEvent,\r\n} from '@verisoft/core';\r\nimport {\r\n BaseFormInputComponent,\r\n MULTISELECT_COMPONENT_TOKEN,\r\n MultiselectCore,\r\n FieldSize,\r\n FieldSizeType,\r\n SlotPosition,\r\n SlotPositionType,\r\n} from '@verisoft/ui-core';\r\nimport { Icons } from '../../icons';\r\nimport { GovMultiselectOptionsPipe, GovSizePipe } from '../../pipes';\r\nimport { ErrorComponent } from '../errors';\r\n\r\n@Component({\r\n selector: 'v-multiselect',\r\n standalone: true,\r\n imports: [\r\n CommonModule,\r\n ReactiveFormsModule,\r\n GovDesignSystemModule,\r\n GovSizePipe,\r\n GovMultiselectOptionsPipe,\r\n ErrorComponent,\r\n ],\r\n templateUrl: './multiselect.component.html',\r\n styleUrl: './multiselect.component.scss',\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n providers: [\r\n {\r\n provide: MULTISELECT_COMPONENT_TOKEN,\r\n useExisting: MultiselectComponent,\r\n },\r\n ],\r\n})\r\nexport class MultiselectComponent<T>\r\n extends BaseFormInputComponent\r\n implements ControlValueAccessor, OnChanges, MultiselectCore<T>\r\n{\r\n constructor(@Optional() @Self() ngControl: NgControl) {\r\n super(ngControl);\r\n }\r\n\r\n @Input() options: T[] | undefined = [];\r\n @Input() optionLabel!: string | undefined;\r\n @Input() optionValue!: string | undefined;\r\n @Input() dropdownIcon: string | undefined;\r\n @Input() floatLabel: string | undefined;\r\n @Input() editable = true;\r\n @Input() display!: 'flex' | 'block';\r\n @Input() errorSlot: SlotPositionType = SlotPosition.bottom;\r\n @Input() lazy!: boolean;\r\n @Input() filter!: boolean;\r\n @Input() loading = false;\r\n @Input() size: FieldSizeType = FieldSize.medium;\r\n\r\n @Output() changed = new EventEmitter<any>();\r\n @Output() showed = new EventEmitter<any>();\r\n @Output() cleared = new EventEmitter<any>();\r\n @Output() lazyLoad = new EventEmitter<LazyLoadEvent>();\r\n @Output() filtered = new EventEmitter<FilterEvent>();\r\n\r\n icons = Icons;\r\n\r\n lazyLoadOptions: LazyLoadEvent = {\r\n limit: 50,\r\n offset: 0,\r\n };\r\n\r\n cdRef = inject(ChangeDetectorRef);\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n if (changes['options'] && !changes['options'].firstChange) {\r\n this.cdRef.detectChanges();\r\n }\r\n }\r\n\r\n onLazyLoad(event: any): void {\r\n if (this.options && this.options.length - event.last <= 0) {\r\n this.lazyLoadOptions.offset = event.last;\r\n this.lazyLoad.emit(this.lazyLoadOptions);\r\n }\r\n }\r\n\r\n selectionChange(event: any): void {\r\n this.cleared.emit(event);\r\n }\r\n\r\n onDropdownShow(): void {\r\n this.showed.emit();\r\n }\r\n\r\n onDropdownClear(): void {\r\n this.cleared.emit();\r\n }\r\n}\r\n","<gov-form-control>\r\n <gov-form-label \r\n [slot]=\"label\"\r\n [size]=\"size | govSize\"\r\n >\r\n {{ label }}\r\n </gov-form-label>\r\n <gov-form-multi-select\r\n [size]=\"size | govSize\"\r\n [formControl]=\"formControl\"\r\n [required]=\"required\"\r\n [invalid]=\"ngControl && ngControl.errors\"\r\n [options]=\"options | govMultiselectOptions : optionLabel : optionValue\"\r\n [placeholder]=\"placeholder ?? ''\"\r\n (gov-focus)=\"onDropdownShow()\"\r\n (gov-remove)=\"onDropdownClear()\"\r\n (gov-change)=\"selectionChange($event)\"\r\n (lazyLoadEvent)=\"onLazyLoad($any($event))\"\r\n />\r\n <v-validation-message [ngControl]=\"ngControl\"></v-validation-message>\r\n</gov-form-control>\r\n","import { CommonModule } from '@angular/common';\r\nimport {\r\n ChangeDetectionStrategy,\r\n Component,\r\n Optional,\r\n Self,\r\n Input,\r\n OnInit,\r\n ChangeDetectorRef,\r\n} from '@angular/core';\r\nimport {\r\n ControlValueAccessor,\r\n NgControl,\r\n ReactiveFormsModule,\r\n} from '@angular/forms';\r\nimport { GovDesignSystemModule } from '@gov-design-system-ce/angular';\r\nimport {\r\n BaseFormInputComponent,\r\n TRISTATE_CHECKBOX_COMPONENT_TOKEN,\r\n TristateCheckboxCore,\r\n SlotPositionType,\r\n SlotPosition,\r\n FieldSizeType,\r\n FieldSize,\r\n} from '@verisoft/ui-core';\r\nimport { GovSizePipe } from '../../pipes';\r\nimport { ErrorComponent } from '../errors';\r\n\r\nenum States {\r\n None = -1,\r\n False = 0,\r\n True = 1,\r\n}\r\n\r\n@Component({\r\n selector: 'v-tristatecheckbox',\r\n standalone: true,\r\n styleUrls: ['./tristatecheckbox.component.scss'],\r\n templateUrl: './tristatecheckbox.component.html',\r\n imports: [\r\n CommonModule,\r\n GovDesignSystemModule,\r\n ReactiveFormsModule,\r\n ErrorComponent,\r\n GovSizePipe,\r\n ],\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n providers: [\r\n {\r\n provide: TRISTATE_CHECKBOX_COMPONENT_TOKEN,\r\n useExisting: TristatecheckboxComponent,\r\n },\r\n ],\r\n})\r\nexport class TristatecheckboxComponent\r\n extends BaseFormInputComponent\r\n implements ControlValueAccessor, TristateCheckboxCore, OnInit {\r\n\r\n @Input() size: FieldSizeType = FieldSize.medium;\r\n\r\n @Input() value!: string;\r\n\r\n @Input() name!: string;\r\n\r\n @Input() noLabel = false;\r\n\r\n @Input() errorSlot: SlotPositionType = SlotPosition.bottom;\r\n\r\n @Input() checked!: boolean;\r\n\r\n protected isChecked = States.None;\r\n\r\n constructor(\r\n @Optional() @Self() ngControl: NgControl,\r\n protected changeDetectorRef: ChangeDetectorRef\r\n ) {\r\n super(ngControl);\r\n }\r\n\r\n override writeValue(value: any): void {\r\n this.isChecked = value === true ? States.True : value === false ? States.False : States.None;\r\n this.changeDetectorRef.markForCheck();\r\n }\r\n\r\n protected toggleCheckbox(): void {\r\n this.isChecked = this.isChecked === States.False\r\n ? States.None\r\n : this.isChecked === States.None\r\n ? States.True\r\n : States.False;\r\n this.updateControlValue();\r\n this.changeDetectorRef.markForCheck();\r\n }\r\n\r\n private updateControlValue(): void {\r\n const newValue = this.getCurrentValue();\r\n this.formControl.setValue(newValue, { emitEvent: true });\r\n }\r\n\r\n private getCurrentValue(): boolean | null {\r\n return this.isChecked === States.True ? true : this.isChecked === States.False ? false : null;\r\n }\r\n}\r\n","<gov-form-control class=\"mt-3\">\r\n <gov-form-checkbox \r\n [formControl]=\"formControl\"\r\n [size]=\"size | govSize\"\r\n [value]=\"value\"\r\n [required]=\"required\"\r\n [attr.disabled]=\"disabled ? 'true' : 'false'\"\r\n [checked]=\"checked\"\r\n [indeterminate]=\"isChecked === 0\"\r\n [name]=\"name\"\r\n [invalid]=\"ngControl?.errors\"\r\n [noLabel]=\"noLabel\"\r\n (gov-change)=\"toggleCheckbox()\"\r\n > \r\n <gov-form-label\r\n [size]=\"size | govSize\"\r\n slot=\"label\"\r\n >\r\n {{ label }}\r\n </gov-form-label>\r\n </gov-form-checkbox>\r\n <v-validation-message [ngControl]=\"ngControl\"></v-validation-message>\r\n</gov-form-control>\r\n","import { CommonModule } from '@angular/common';\r\nimport {\r\n ChangeDetectionStrategy,\r\n Component,\r\n EventEmitter,\r\n Input,\r\n Output,\r\n} from '@angular/core';\r\nimport { ReactiveFormsModule } from '@angular/forms';\r\nimport {\r\n DatasourceType,\r\n FilterEvent,\r\n LazyLoadEvent,\r\n} from '@verisoft/core';\r\nimport {\r\n BaseFormInputComponent,\r\n DatasourceDirective,\r\n FieldSize,\r\n FieldSizeType,\r\n GENERIC_FIELD_COMPONENT_TOKEN,\r\n GenericFieldCore,\r\n GenericFieldType,\r\n GenericFieldTypeType,\r\n} from '@verisoft/ui-core';\r\nimport { Icons } from '../../../icons';\r\nimport { CalendarComponent } from '../../calendar';\r\nimport { CheckboxComponent } from '../../checkbox';\r\nimport { DropdownComponent } from '../../dropdown';\r\nimport { MultiselectComponent } from '../../multiselect';\r\nimport { TextfieldComponent } from '../../textfield';\r\nimport { TristatecheckboxComponent } from '../../tristatecheckbox';\r\n\r\n@Component({\r\n selector: 'v-generic-field',\r\n standalone: true,\r\n imports: [\r\n CommonModule,\r\n DropdownComponent,\r\n CalendarComponent,\r\n TristatecheckboxComponent,\r\n MultiselectComponent,\r\n TextfieldComponent,\r\n ReactiveFormsModule,\r\n CheckboxComponent,\r\n DatasourceDirective,\r\n],\r\n providers: [\r\n {\r\n provide: GENERIC_FIELD_COMPONENT_TOKEN,\r\n useExisting: GenericFieldComponent,\r\n },\r\n ],\r\n templateUrl: './generic-field.component.html',\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class GenericFieldComponent<T>\r\n extends BaseFormInputComponent\r\n implements GenericFieldCore<T>\r\n{\r\n @Input() type?: GenericFieldTypeType = GenericFieldType.text;\r\n\r\n @Input() floatLabel?: boolean;\r\n\r\n @Input() optionLabel: string | undefined;\r\n\r\n @Input() optionValue: string | undefined;\r\n\r\n @Input() options: T[] | undefined;\r\n\r\n @Input() size?: FieldSizeType = FieldSize.medium;\r\n\r\n @Input() loading = false;\r\n\r\n @Input() lazy = false;\r\n\r\n @Input() filter = true;\r\n\r\n @Input() datasource?: DatasourceType<T>\r\n\r\n @Input() filterField?: string;\r\n\r\n @Input() showFilter?: boolean;\r\n\r\n @Input() localSearch?: boolean;\r\n\r\n @Output() changed = new EventEmitter<any>();\r\n @Output() showed = new EventEmitter<any>();\r\n @Output() cleared = new EventEmitter<any>();\r\n @Output() lazyLoad = new EventEmitter<LazyLoadEvent>();\r\n @Output() filtered = new EventEmitter<FilterEvent>();\r\n\r\n fieldTypes = GenericFieldType;\r\n icons = Icons;\r\n}\r\n","@if (!type || type === fieldTypes.text) {\r\n<v-textfield\r\n [label]=\"label\"\r\n [floatLabel]=\"floatLabel === true\"\r\n [size]=\"size\"\r\n [formControl]=\"formControl\"\r\n/>\r\n} @else if (type === fieldTypes.dropdown && !datasource) {\r\n<v-dropdown\r\n [label]=\"!floatLabel ? label : ''\"\r\n [floatLabel]=\"floatLabel ? label : ''\"\r\n [testId]=\"testId\"\r\n [options]=\"options\"\r\n [optionLabel]=\"optionLabel\"\r\n [optionValue]=\"optionValue ?? optionLabel\"\r\n [loading]=\"loading\"\r\n [forceMinWidth]=\"true\"\r\n [formControl]=\"formControl\"\r\n [showFilter]=\"showFilter ?? false\"\r\n [localSearch]=\"localSearch ?? false\"\r\n (changeEvent)=\"changed.emit($event)\"\r\n (clearEvent)=\"cleared.emit($event)\"\r\n (lazyLoadEvent)=\"lazyLoad.emit($any($event))\"\r\n (showEvent)=\"showed.emit($event)\"\r\n/> \r\n} @else if (type === fieldTypes.dropdown && datasource) {\r\n <v-dropdown\r\n useDatasource\r\n [forceMinWidth]=\"true\"\r\n [datasource]=\"datasource\"\r\n [optionLabel]=\"optionLabel\"\r\n [optionValue]=\"optionValue ?? optionLabel\"\r\n [label]=\"!floatLabel ? label : ''\"\r\n [floatLabel]=\"floatLabel ? label : ''\"\r\n [testId]=\"testId\"\r\n [loading]=\"loading\"\r\n [formControl]=\"formControl\"\r\n [showFilter]=\"showFilter ?? false\"\r\n [filterField]=\"filterField ?? 'fulltext'\"\r\n [localSearch]=\"localSearch ?? false\"\r\n (changeEvent)=\"changed.emit($event)\"\r\n (clearEvent)=\"cleared.emit($event)\"\r\n (lazyLoadEvent)=\"lazyLoad.emit($any($event))\"\r\n (showEvent)=\"showed.emit($event)\"\r\n />\r\n} @else if (type === fieldTypes.multiselect && !datasource) {\r\n<v-multiselect\r\n [label]=\"!floatLabel ? label : ''\"\r\n [floatLabel]=\"floatLabel ? label : ''\"\r\n [testId]=\"testId\"\r\n [options]=\"options\"\r\n [optionLabel]=\"optionLabel\"\r\n [optionValue]=\"optionValue ?? optionLabel\"\r\n [loading]=\"loading\"\r\n [formControl]=\"formControl\"\r\n (changeEvent)=\"changed.emit($event)\"\r\n (clearEvent)=\"cleared.emit($event)\"\r\n (lazyLoadEvent)=\"lazyLoad.emit($any($event))\"\r\n (showEvent)=\"showed.emit($event)\"\r\n/>\r\n} @else if (type === fieldTypes.multiselect && datasource) {\r\n<v-multiselect\r\n useDatasource\r\n [datasource]=\"datasource\"\r\n [optionLabel]=\"optionLabel\"\r\n [optionValue]=\"optionValue ?? optionLabel\"\r\n [label]=\"!floatLabel ? label : ''\"\r\n [floatLabel]=\"floatLabel ? label : ''\"\r\n [testId]=\"testId\"\r\n [loading]=\"loading\"\r\n [formControl]=\"formControl\"\r\n (changeEvent)=\"changed.emit($event)\"\r\n (clearEvent)=\"cleared.emit($event)\"\r\n (lazyLoadEvent)=\"lazyLoad.emit($any($event))\"\r\n (showEvent)=\"showed.emit($event)\"\r\n/>\r\n} @else if (type === fieldTypes.checkbox) {\r\n<v-tristatecheckbox\r\n [label]=\"label\"\r\n [testId]=\"testId\"\r\n [formControl]=\"formControl\"\r\n/>\r\n} @else if (type === fieldTypes.simplecheckbox) {\r\n<v-checkbox\r\n [label]=\"label\"\r\n [testId]=\"testId\"\r\n [formControl]=\"formControl\"\r\n/>\r\n} @else if (type === fieldTypes.calendar) {\r\n<v-calendar\r\n [label]=\"!floatLabel ? label : ''\"\r\n [floatLabel]=\"floatLabel ? label : ''\"\r\n [testId]=\"testId\"\r\n [formControl]=\"formControl\"\r\n [icon]=\"icons.calendar\"\r\n/>\r\n}\r\n","import {\r\n UntypedFormControl,\r\n UntypedFormGroup,\r\n} from '@angular/forms';\r\nimport { GenericFieldDefinition } from '@verisoft/ui-core';\r\n\r\nexport function generateFormGroup(\r\n fields: GenericFieldDefinition[] | undefined,\r\n lastGroupValue: UntypedFormGroup | undefined,\r\n inputGroup: UntypedFormGroup | undefined,\r\n inputGroupChanged = false\r\n): UntypedFormGroup {\r\n const formGroup =\r\n (inputGroupChanged\r\n ? inputGroup ?? lastGroupValue\r\n : lastGroupValue ?? inputGroup) ?? new UntypedFormGroup({});\r\n\r\n fields?.forEach((field) => {\r\n const control = formGroup.get(field.name);\r\n if (!control) {\r\n formGroup.addControl(\r\n field.name,\r\n new UntypedFormControl(field.value, field.validator)\r\n );\r\n } else if (control && control.value !== field.value) {\r\n control.setValue(field.value);\r\n control.setValidators(field.validator ?? null);\r\n }\r\n else {\r\n control.setValidators(field.validator ?? null);\r\n }\r\n\r\n if (field.readonly && (control || formGroup.get(field.name))) {\r\n formGroup.get(field.name)?.disable();\r\n }\r\n });\r\n if (!inputGroupChanged) {\r\n for (const field in formGroup.controls) {\r\n const control = fields?.find((x) => x.name == field);\r\n if (!control) {\r\n formGroup.removeControl(field);\r\n }\r\n }\r\n }\r\n\r\n return formGroup;\r\n}\r\n\r\nexport function getColumnClass(value?: number): string | undefined {\r\n if (!value) {\r\n return undefined;\r\n }\r\n\r\n switch (value) {\r\n case 1:\r\n return 'col-12';\r\n case 2:\r\n return 'col-12 col-md-6';\r\n case 3:\r\n return 'col-12 col-md-4';\r\n case 4:\r\n return 'col-12 col-md-3';\r\n case 6:\r\n return 'col-12 col-md-2';\r\n }\r\n\r\n return 'col-12 col-md-1';\r\n}\r\n","import { CommonModule } from '@angular/common';\r\nimport {\r\n ChangeDetectionStrategy,\r\n Component,\r\n Input,\r\n OnChanges,\r\n SimpleChanges,\r\n} from '@angular/core';\r\nimport { ReactiveFormsModule, UntypedFormGroup } from '@angular/forms';\r\nimport { TranslateModule } from '@ngx-translate/core';\r\nimport { GenericFieldDefinition } from '@verisoft/ui-core';\r\nimport { GenericFieldComponent } from '../generic-field';\r\nimport {\r\n generateFormGroup,\r\n getColumnClass,\r\n} from './generic-form.model';\r\n\r\n@Component({\r\n selector: 'v-generic-form',\r\n standalone: true,\r\n imports: [\r\n CommonModule,\r\n GenericFieldComponent,\r\n ReactiveFormsModule,\r\n TranslateModule,\r\n ],\r\n templateUrl: './generic-form.component.html',\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class GenericFormComponent implements OnChanges {\r\n @Input() formGroup?: UntypedFormGroup;\r\n\r\n @Input() fields?: GenericFieldDefinition[];\r\n\r\n @Input() columns?: number;\r\n\r\n @Input() showAsRow!: boolean;\r\n\r\n formGroupComputed!: UntypedFormGroup;\r\n\r\n columnClass?: string;\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n if (changes['fields'] || changes['formGroup']) {\r\n this.formGroupComputed = generateFormGroup(\r\n this.fields,\r\n this.formGroupComputed,\r\n this.formGroup,\r\n !!changes['formGroup']\r\n );\r\n }\r\n\r\n if (changes['columns']) {\r\n this.columnClass = getColumnClass(this.columns);\r\n }\r\n }\r\n}\r\n","@if (formGroupComputed) {\r\n <div\r\n class=\"v-generic-form\"\r\n [ngClass]=\"showAsRow ? 'd-flex flex-row' : 'row'\"\r\n [formGroup]=\"formGroupComputed\"\r\n >\r\n @for(field of fields; track field) { @if (columnClass) {\r\n <div class=\"v-generic-form__column {{ columnClass }}\">\r\n <v-generic-field\r\n [type]=\"field.type\"\r\n [label]=\"field.label ?? 'NOT SET' | translate\"\r\n [floatLabel]=\"field.floatLabel\"\r\n [testId]=\"field.testId\"\r\n [options]=\"field.options\"\r\n [optionLabel]=\"field.optionLabel\"\r\n [optionValue]=\"field.optionValue ?? field.optionLabel\"\r\n [options]=\"field.options\"\r\n [size]=\"field.size\"\r\n [formControlName]=\"field.name\"\r\n [datasource]=\"field.datasource\"\r\n [showFilter]=\"field.showFilter\"\r\n [filterField]=\"field.filterField\"\r\n [localSearch]=\"field.localSearch\"\r\n ></v-generic-field>\r\n </div>\r\n } @else {\r\n <v-generic-field\r\n class=\"me-4\"\r\n [type]=\"field.type\"\r\n [label]=\"field.label ?? 'NOT SET' | translate\"\r\n [floatLabel]=\"field.floatLabel\"\r\n [testId]=\"field.testId\"\r\n [options]=\"field.options\"\r\n [optionLabel]=\"field.optionLabel\"\r\n [optionValue]=\"field.optionValue ?? field.optionLabel\"\r\n [options]=\"field.options\"\r\n [size]=\"field.size\"\r\n [formControlName]=\"field.name\"\r\n [datasource]=\"field.datasource\"\r\n [showFilter]=\"field.showFilter\"\r\n [filterField]=\"field.filterField\"\r\n [localSearch]=\"field.localSearch\"\r\n ></v-generic-field>\r\n } }\r\n </div>\r\n }\r\n","import { Directive, Input } from '@angular/core';\r\nimport { ValidatorFn } from '@angular/forms';\r\nimport { DatasourceType } from '@verisoft/core';\r\nimport { GenericFieldDefinition, GenericFieldType, GenericFieldTypeType } from '@verisoft/ui-core';\r\n\r\n@Directive({\r\n // eslint-disable-next-line @angular-eslint/directive-selector\r\n selector: 'v-filter-field',\r\n standalone: true,\r\n})\r\nexport class FilterFieldDirective implements GenericFieldDefinition {\r\n @Input({ required: true }) name!: string;\r\n\r\n @Input() type: GenericFieldTypeType | undefined = GenericFieldType.text;\r\n\r\n @Input() label: string | undefined;\r\n\r\n @Input() optionLabel!: string;\r\n\r\n @Input() optionValue: string | undefined;\r\n\r\n @Input() options: unknown[] | undefined;\r\n\r\n @Input() value?: unknown;\r\n\r\n @Input() validator?: ValidatorFn[];\r\n\r\n @Input() datasource: DatasourceType<any> | undefined;\r\n\r\n @Input() filterField?: string;\r\n\r\n @Input() showFilter?: boolean;\r\n\r\n @Input() localSearch?: boolean;\r\n}\r\n","import { FormGroup } from '@angular/forms';\r\n\r\nexport function getFilledControlCount(formGroup: FormGroup): number {\r\n let count = 0;\r\n Object.keys(formGroup.controls).forEach((key) => {\r\n const control = formGroup.get(key);\r\n if (control?.value) {\r\n if (typeof control.value === 'boolean') {\r\n count++;\r\n }\r\n if (typeof control.value === 'string' && control.value.trim() !== '') {\r\n count++;\r\n }\r\n }\r\n });\r\n\r\n return count;\r\n}\r\n","import { AsyncPipe } from '@angular/common';\r\nimport {\r\n AfterContentInit,\r\n ChangeDetectionStrategy,\r\n ChangeDetectorRef,\r\n Component,\r\n ContentChildren,\r\n forwardRef,\r\n inject,\r\n Input,\r\n OnChanges,\r\n OnInit,\r\n QueryList,\r\n SimpleChanges,\r\n} from '@angular/core';\r\nimport {\r\n FormGroup,\r\n NG_VALUE_ACCESSOR,\r\n ReactiveFormsModule,\r\n} from '@angular/forms';\r\nimport { BaseHttpService } from '@verisoft/core';\r\nimport {\r\n ButtonShortCutDirective,\r\n DEFAULT_DEBOUNCE_TIME,\r\n DialogService,\r\n FieldSize,\r\n FILTER_COMPONENT_TOKEN,\r\n FilterCore,\r\n GenericFieldDefinition,\r\n isFilterEmpty,\r\n ScreenSizeService,\r\n UnsubscribeComponent,\r\n} from '@verisoft/ui-core';\r\nimport { BadgeModule } from 'primeng/badge';\r\nimport {\r\n BehaviorSubject,\r\n combineLatestWith,\r\n debounceTime,\r\n distinctUntilChanged,\r\n map,\r\n Observable,\r\n startWith,\r\n takeUntil,\r\n} from 'rxjs';\r\nimport { Icons } from '../../../icons';\r\nimport { ButtonComponent } from '../../button';\r\nimport { TextfieldComponent } from '../../textfield';\r\nimport { generateFormGroup, GenericFormComponent } from '../generic-form';\r\nimport { FilterFieldDirective } from './directives/filter-field.directive';\r\nimport { getFilledControlCount } from './filter.model';\r\n\r\ntype FilterValueType = { [key: string]: unknown };\r\n\r\n@Component({\r\n selector: 'v-filter',\r\n standalone: true,\r\n imports: [\r\n AsyncPipe,\r\n ReactiveFormsModule,\r\n BadgeModule,\r\n TextfieldComponent,\r\n GenericFormComponent,\r\n ButtonComponent,\r\n ButtonShortCutDirective,\r\n ],\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: forwardRef(() => FilterComponent),\r\n multi: true,\r\n },\r\n {\r\n provide: FILTER_COMPONENT_TOKEN,\r\n useExisting: FilterComponent,\r\n },\r\n ],\r\n templateUrl: './filter.component.html',\r\n styleUrl: './filter.component.scss',\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class FilterComponent<T extends object>\r\n extends UnsubscribeComponent\r\n implements OnChanges, OnInit, AfterContentInit, FilterCore\r\n{\r\n @ContentChildren(FilterFieldDirective)\r\n fieldDeclarations!: QueryList<FilterFieldDirective>;\r\n\r\n @Input() fields: GenericFieldDefinition[] = [];\r\n\r\n @Input() filters: GenericFieldDefinition[] = [];\r\n\r\n @Input() title?: string;\r\n\r\n @Input() fulltextFieldName = 'searchField';\r\n\r\n @Input() showFulltext = true;\r\n\r\n @Input() showFilters = true;\r\n\r\n @Input() autoBind = true;\r\n\r\n @Input() debounceTime?: number = DEFAULT_DEBOUNCE_TIME;\r\n\r\n icons = Icons;\r\n\r\n fieldDefinitios$?: Observable<GenericFieldDefinition[]>;\r\n\r\n formGroup$?: Observable<FormGroup>;\r\n\r\n simpleFormFieldDefinitions$?: Observable<GenericFieldDefinition[]>;\r\n\r\n private searchField: GenericFieldDefinition = {\r\n name: this.fulltextFieldName,\r\n };\r\n\r\n private onTouch?: () => void;\r\n\r\n private onChange?: (value: FilterValueType | undefined) => void;\r\n\r\n private inputFields$ = new BehaviorSubject<\r\n GenericFieldDefinition[] | undefined\r\n >([...this.fields ?? [], ...this.filters ?? []]);\r\n\r\n FieldSize = FieldSize;\r\n\r\n protected screenSizeService = inject(ScreenSizeService);\r\n protected changeDetectorRef = inject(ChangeDetectorRef);\r\n protected dialogService = inject(DialogService);\r\n\r\n service!: BaseHttpService<T>;\r\n\r\n formGroup = new FormGroup({});\r\n\r\n filledFiltersCount$: Observable<string> = this.formGroup.valueChanges.pipe(\r\n startWith(this.formGroup),\r\n map(() => getFilledControlCount(this.formGroup).toString())\r\n );\r\n\r\n private lastFormFields: GenericFieldDefinition[] = [];\r\n\r\n ngOnInit(): void {\r\n this.formGroup.valueChanges\r\n .pipe(\r\n takeUntil(this.destroyed$),\r\n debounceTime(this.debounceTime ?? DEFAULT_DEBOUNCE_TIME),\r\n map((x) => this.convertFilter(x)),\r\n distinctUntilChanged()\r\n )\r\n .subscribe((value) => this.onChange?.(value));\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n if (changes['fields'] || changes['filters']) {\r\n this.inputFields$.next([...this.fields ?? [], ...this.filters ?? []]);\r\n }\r\n }\r\n\r\n ngAfterContentInit(): void {\r\n const fieldDeclaratios$: Observable<GenericFieldDefinition[]> =\r\n this.fieldDeclarations.changes.pipe(\r\n startWith({}),\r\n map(() => this.fieldDeclarations.toArray())\r\n );\r\n\r\n this.fieldDefinitios$ = this.inputFields$.pipe(\r\n combineLatestWith(fieldDeclaratios$),\r\n map(([inputs, views]) => {\r\n this.searchField.name = this.fulltextFieldName;\r\n this.lastFormFields = [this.searchField, ...(inputs ?? []), ...views];\r\n return this.lastFormFields;\r\n })\r\n );\r\n\r\n this.simpleFormFieldDefinitions$ = this.fieldDefinitios$.pipe(\r\n map((fields) => {\r\n return fields\r\n .filter((x) => x.name !== this.fulltextFieldName)\r\n .map((x) => ({ ...x, floatLabel: true, size: FieldSize.large }));\r\n })\r\n );\r\n\r\n this.formGroup$ = this.fieldDefinitios$.pipe(\r\n map((fields) =>\r\n generateFormGroup(fields, this.formGroup, undefined, false)\r\n )\r\n );\r\n\r\n this.changeDetectorRef.detectChanges();\r\n }\r\n\r\n protected openFilter() {\r\n const fields = this.lastFormFields.map((x) => ({\r\n ...x,\r\n label:\r\n x.name === this.fulltextFieldName ? 'Fulltext' : x.label ?? x.name,\r\n }));\r\n\r\n const formGroup = generateFormGroup(\r\n this.lastFormFields,\r\n undefined,\r\n undefined,\r\n false\r\n );\r\n formGroup.patchValue(this.formGroup.value);\r\n this.dialogService.showDialog({\r\n title: 'Set filters',\r\n headerIcon: this.icons.filter,\r\n severity: 'primary',\r\n componentType: GenericFormComponent,\r\n data: {\r\n formGroup,\r\n fields: fields,\r\n columns: 1,\r\n },\r\n confirmButtonFn: () => this.setFilterValues(formGroup),\r\n confirmButtonText: 'Apply',\r\n cancelButtonFn: () => this.clear(),\r\n cancelButtonText: 'Clear all',\r\n showCancelButton: true,\r\n closable: false,\r\n });\r\n }\r\n\r\n protected openSearch() {\r\n this.dialogService.showDialog({\r\n headerIcon: 'pi pi-search',\r\n severity: 'primary',\r\n innerHTML: '<p>Search</p>',\r\n confirmButtonFn: () => this.submitValue(),\r\n confirmButtonText: 'Apply',\r\n cancelButtonFn: () => this.clear(),\r\n cancelButtonText: 'Clear all',\r\n showCancelButton: true,\r\n closable: false,\r\n });\r\n }\r\n\r\n writeValue(data: FilterValueType): void {\r\n this.formGroup.patchValue(data);\r\n }\r\n\r\n registerOnChange(fn: (value: FilterValueType | undefined) => void): void {\r\n this.onChange = fn;\r\n }\r\n\r\n registerOnTouched(fn: () => void): void {\r\n this.onTouch = fn;\r\n }\r\n\r\n setDisabledState?(isDisabled: boolean): void {\r\n isDisabled ? this.formGroup.disable() : this.formGroup.enable();\r\n }\r\n\r\n submitValue() {\r\n if (!this.autoBind) {\r\n this.onChange?.(this.formGroup.value);\r\n }\r\n }\r\n\r\n setFilterValues(dialogFormGroup: FormGroup) {\r\n this.formGroup.setValue(dialogFormGroup.value);\r\n this.submitValue();\r\n }\r\n\r\n clear() {\r\n this.formGroup.reset();\r\n this.submitValue();\r\n }\r\n\r\n private convertFilter(\r\n value: FilterValueType | undefined\r\n ): FilterValueType | undefined {\r\n if (value == undefined) {\r\n return undefined;\r\n }\r\n\r\n const isEmpty = isFilterEmpty(value);\r\n if (isEmpty) {\r\n return undefined;\r\n }\r\n\r\n return value;\r\n }\r\n}\r\n","<div class=\"v-filter w-100 p-3 bg-primary\">\r\n @if (formGroup$ | async; as formGroup){\r\n <form [formGroup]=\"formGroup\" class=\"d-flex align-items-center\">\r\n @if (title) {\r\n <div class=\"v-filter_title pe-4\">\r\n <h2 class=\"text-white m-0\">{{ title }}</h2>\r\n </div>\r\n }\r\n <div class=\"v-filter__fulltext flex-grow-1 pe-4\">\r\n @if (showFulltext){\r\n <v-textfield\r\n class=\"d-none d-lg-block\"\r\n placeholder=\"Search\"\r\n size=\"large\"\r\n formControlName=\"searchField\"\r\n type=\"search\"\r\n [clearable]=\"true\"\r\n >\r\n </v-textfield>\r\n }\r\n </div>\r\n @if (simpleFormFieldDefinitions$ | async; as declaration){\r\n @if (showFilters)\r\n {\r\n <div class=\"v-filter_filters d-none d-sm-block me-2\">\r\n <v-generic-form\r\n [fields]=\"declaration\"\r\n [formGroup]=\"formGroup\"\r\n ></v-generic-form>\r\n <v-button label=\"X\" class=\"mt-3\" (click)=\"clear()\" />\r\n </div>\r\n }\r\n <div class=\"v-filter_action-buttons d-flex\">\r\n @if (declaration.length && !showFilters) {\r\n <v-button \r\n class=\"me-4\"\r\n [icon]=\"icons.filter\"\r\n [label]=\"$any(filledFiltersCount$ | async)\"\r\n (click)=\"openFilter()\"\r\n />\r\n } @if (!autoBind) {\r\n <v-button\r\n useShortCut\r\n [shortCutFn]=\"submitValue.bind(this)\"\r\n shortCutKey=\"Enter\"\r\n class=\"text-white mx-2\"\r\n [outlined]=\"true\"\r\n size=\"small\"\r\n label=\"Apply\"\r\n (click)=\"submitValue()\"\r\n ></v-button>\r\n <v-button\r\n useShortCut\r\n [shortCutFn]=\"clear.bind(this)\"\r\n shortCutKey=\"Escape\"\r\n class=\"text-white\"\r\n [outlined]=\"true\"\r\n size=\"small\"\r\n label=\"Clear\"\r\n (click)=\"clear()\"\r\n ></v-button>\r\n } \r\n </div>\r\n }\r\n <ng-content select=\"v-action-button-group\"></ng-content>\r\n </form>\r\n }\r\n</div>\r\n","import { CommonModule } from '@angular/common';\r\nimport { ChangeDetectionStrategy, Component, Input } from '@angular/core';\r\nimport { GovDesignSystemModule } from '@gov-design-system-ce/angular';\r\nimport { \r\n LOADER_COMPONENT_TOKEN, \r\n LoaderCore,\r\n FieldSize,\r\n FieldSizeType,\r\n} from '@verisoft/ui-core';\r\nimport { GovSizePipe } from '../../pipes';\r\n\r\n@Component({\r\n selector: 'v-loader',\r\n standalone: true,\r\n imports: [\r\n CommonModule, GovDesignSystemModule, GovSizePipe\r\n ],\r\n templateUrl: './loader.component.html',\r\n styleUrl: './loader.component.scss',\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n providers: [\r\n { \r\n provide: LOADER_COMPONENT_TOKEN, \r\n useExisting: LoaderComponent,\r\n }\r\n ],\r\n})\r\nexport class LoaderComponent \r\n implements LoaderCore \r\n{\r\n @Input() size: FieldSizeType = FieldSize.medium;\r\n @Input() message!: string;\r\n}","<div style=\"min-height: 300px;\">\r\n <gov-loading\r\n [size]=\"size | govSize\"\r\n >\r\n {{ message }}\r\n </gov-loading>\r\n</div>","import { Component, Input } from \"@angular/core\";\r\n\r\n@Component({\r\n standalone: true,\r\n selector: \"v-table-pagination-info\",\r\n templateUrl: \"./table-pagination-info.component.html\",\r\n})\r\nexport class TablePaginationInfoComponent {\r\n @Input() showingText = 'Showing'\r\n\r\n @Input() toText = 'to';\r\n\r\n @Input() ofText = 'of';\r\n\r\n @Input() entriesText = 'entries'\r\n\r\n @Input() currentPage = 0;\r\n\r\n @Input() pageSize = 0;\r\n\r\n @Input() total = 0;\r\n}\r\n","<span>\r\n {{ showingText }} {{ (currentPage - 1) * pageSize + 1 }} {{ toText }}\r\n {{\r\n currentPage * pageSize < total\r\n ? currentPage * pageSize\r\n : total\r\n }}\r\n {{ ofText }} {{ total }} {{ entriesText }}\r\n</span>","import { SortDirection, SortDirectionType } from '@verisoft/core';\r\n\r\nexport function getNextSortDirection(\r\n sortDirection: SortDirectionType | undefined,\r\n isNullable = false\r\n): SortDirectionType | undefined {\r\n return isNullable && sortDirection === SortDirection.desc\r\n ? undefined\r\n : !sortDirection || sortDirection === SortDirection.desc\r\n ? SortDirection.asc\r\n : SortDirection.desc;\r\n}\r\nexport function createCustomRoute<T>(row: T, entityKey?: string, customRoute?: string) {\r\n return customRoute && entityKey\r\n ? customRoute + (row as { [key: string]: string })[entityKey]\r\n : undefined;\r\n}\r\n","import { CommonModule, NgTemplateOutlet } from '@angular/common';\r\nimport {\r\n AfterViewInit,\r\n ChangeDetectionStrategy,\r\n ChangeDetectorRef,\r\n Component,\r\n ContentChild,\r\n ContentChildren,\r\n effect,\r\n EventEmitter,\r\n inject,\r\n Input,\r\n OnChanges,\r\n Output,\r\n QueryList,\r\n SimpleChanges,\r\n TemplateRef,\r\n} from '@angular/core';\r\nimport { ActivatedRoute, Router, RouterModule } from '@angular/router';\r\nimport { GovDesignSystemModule } from '@gov-design-system-ce/angular';\r\nimport {\r\n FormCheckboxEvent,\r\n FormSelectEvent,\r\n} from '@gov-design-system-ce/components';\r\nimport { TranslateModule } from '@ngx-translate/core';\r\nimport {\r\n DEFAULT_SEARCH_LIMIT,\r\n LazyLoadEvent,\r\n multiSort,\r\n Sort,\r\n SortDirectionType,\r\n} from '@verisoft/core';\r\nimport {\r\n ColumnDefinition,\r\n ColumnModel,\r\n ColumnProvider,\r\n DEFAULT_PAGINATION,\r\n FieldSize,\r\n FieldSizeType,\r\n MAX_COLUMN_CHAR_COUNT,\r\n RowModel,\r\n TABLE_COLUMN_PROVIDER,\r\n TABLE_COMPONENT_TOKEN,\r\n TableCore,\r\n TableSelectionMode,\r\n TableService,\r\n} from '@verisoft/ui-core';\r\nimport { Icons } from '../../icons';\r\nimport { GovSizePipe } from '../../pipes';\r\nimport { LoaderComponent } from '../loader';\r\nimport { TablePaginationInfoComponent } from './table-pagination-info.component';\r\nimport { getNextSortDirection } from './table.model';\r\n\r\n@Component({\r\n selector: 'v-table',\r\n standalone: true,\r\n imports: [\r\n CommonModule,\r\n RouterModule,\r\n GovDesignSystemModule,\r\n NgTemplateOutlet,\r\n TranslateModule,\r\n GovSizePipe,\r\n LoaderComponent,\r\n TablePaginationInfoComponent,\r\n ],\r\n templateUrl: './table.component.html',\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n styleUrl: './table.component.scss',\r\n providers: [\r\n {\r\n provide: TABLE_COMPONENT_TOKEN,\r\n useExisting: TableComponent,\r\n },\r\n ],\r\n})\r\nexport class TableComponent<T>\r\n implements OnChanges, AfterViewInit, TableCore<T>\r\n{\r\n @ContentChildren(TABLE_COLUMN_PROVIDER)\r\n viewColumns!: QueryList<ColumnProvider<T>>;\r\n\r\n @ContentChild('rowDetail', { static: false })\r\n rowDetailTemplate!: TemplateRef<{ $implicit: T }>;\r\n\r\n @ContentChild('rowDetailButton', { static: false })\r\n rowDetailButtonTemplate!: TemplateRef<{ $implicit: T }>;\r\n\r\n @Input() sorters!: Sort[];\r\n @Input() data!: T[];\r\n @Input() total = 0;\r\n @Input() filter: Partial<T> | undefined;\r\n @Input() extraFilter: Partial<T> | undefined;\r\n @Input() loading = false;\r\n @Input() scrollable = true;\r\n @Input() pageSize = DEFAULT_SEARCH_LIMIT;\r\n @Input() currentPage = 1;\r\n @Input() showPaginator = true;\r\n @Input() userTableWrapper = true;\r\n @Input() sortMultiple = false;\r\n @Input() lazy = false;\r\n @Input() selectionMode: 'single' | 'multiple' | undefined;\r\n @Input() selection: T[] = [];\r\n @Input() showPageSizePicker = true;\r\n @Input() entityKey: string | undefined;\r\n @Input() customRoute: string | undefined;\r\n @Input() disableCustomClicks = false;\r\n @Input() tableName?: string;\r\n @Input() size: FieldSizeType = FieldSize.medium;\r\n @Input() showActionButtons = false;\r\n @Input() maximumColumnLength = MAX_COLUMN_CHAR_COUNT;\r\n\r\n @Input()\r\n set columns(value: ColumnDefinition<T>[]) {\r\n this._columns = value;\r\n this.updateColumnModels();\r\n }\r\n\r\n get columns(): ColumnDefinition<T>[] {\r\n return this._columns;\r\n }\r\n\r\n @Output() selectionChange = new EventEmitter<T[]>();\r\n @Output() lazyLoad = new EventEmitter<LazyLoadEvent>();\r\n @Output() download = new EventEmitter<RowModel<T>[]>();\r\n @Output() delete = new EventEmitter<RowModel<T>[]>();\r\n @Output() save = new EventEmitter<RowModel<T>[]>();\r\n\r\n private readonly cdRef = inject(ChangeDetectorRef);\r\n private readonly router = inject(Router);\r\n private readonly route = inject(ActivatedRoute);\r\n private readonly service = inject(TableService);\r\n private _columns: ColumnDefinition<T, keyof T>[] = [];\r\n\r\n tableColumns: ColumnModel<T>[] = [];\r\n tableRows: RowModel<T>[] = [];\r\n pageSizeOptions = DEFAULT_PAGINATION.map((x: number) => ({ value: x.toString() }));\r\n allSelected = false;\r\n icons = Icons;\r\n\r\n get govPageSize() {\r\n return this.pageSize.toString();\r\n }\r\n\r\n get tableRowView(): RowModel<T>[] {\r\n if (this.lazy) {\r\n return this.tableRows;\r\n } else {\r\n const start = (this.currentPage - 1) * this.pageSize;\r\n const end = start + this.pageSize;\r\n return this.tableRows.slice(start, end);\r\n }\r\n }\r\n\r\n get selected(): RowModel<T>[] {\r\n return this.tableRows.filter(r => r.selected);\r\n }\r\n\r\n get selectedCount(): number {\r\n return this.selected.length;\r\n }\r\n\r\n constructor() {\r\n effect(() => {\r\n this.reactToSignals();\r\n })\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n if (changes['data']) {\r\n this.updateRowModels();\r\n if (!this.lazy && this.data) {\r\n this.total = this.data.length;\r\n }\r\n }\r\n\r\n if (changes['selection']) {\r\n this.selectSelected();\r\n }\r\n\r\n if (changes['filter']) {\r\n this.updateFilter();\r\n }\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n if (this.viewColumns?.length) {\r\n this.updateColumnModels();\r\n this.cdRef.detectChanges();\r\n }\r\n }\r\n\r\n protected sortColumn(column: ColumnModel<T>) {\r\n if (column.sortable) {\r\n column.sortDirection = getNextSortDirection(\r\n column.sortDirection,\r\n this.sortMultiple\r\n );\r\n\r\n if (!this.sortMultiple) {\r\n this.tableColumns\r\n .filter((x) => x !== column)\r\n .forEach((x) => {\r\n x.sortDirection = undefined;\r\n });\r\n }\r\n\r\n const sorts: Sort[] = this.getSorts().map((x) => ({\r\n field: 'row.' + x.field,\r\n direction: x.direction,\r\n }));\r\n\r\n if (!this.lazy) {\r\n this.tableRows = multiSort(this.tableRows, sorts);\r\n } else {\r\n this.fireLazyLoad();\r\n }\r\n }\r\n }\r\n\r\n protected changePage(event: { detail: { pagination: { currentPage: number } } }) {\r\n this.currentPage = event.detail.pagination.currentPage;\r\n this.fireLazyLoad();\r\n }\r\n\r\n protected changePageSize(event: CustomEvent<FormSelectEvent>) {\r\n this.pageSize = parseInt(event.detail.value);\r\n this.currentPage = 1;\r\n this.fireLazyLoad();\r\n }\r\n\r\n protected selectRow(row: RowModel<T>, event: MouseEvent) {\r\n if (event.ctrlKey || event.metaKey) {\r\n this.navigate(row, event);\r\n return;\r\n }\r\n\r\n if (this.selectionMode === 'single') {\r\n row.selected = !row.selected;\r\n this.tableRows.forEach((x) => (x !== row ? (x.selected = false) : null));\r\n this.fireSelectionChange();\r\n } else if (this.selectionMode === 'multiple') {\r\n row.selected = !row.selected;\r\n this.fireSelectionChange();\r\n }\r\n }\r\n\r\n protected navigate(row: RowModel<T>, event: MouseEvent) {\r\n if (this.disableCustomClicks) {\r\n return;\r\n }\r\n\r\n event.preventDefault();\r\n const targetUrl = this.createUrl(row);\r\n\r\n if (event.ctrlKey || event.metaKey) {\r\n setTimeout(() => {\r\n window.open(\r\n this.router.serializeUrl(this.router.createUrlTree([targetUrl], { relativeTo: this.route })),\r\n '_blank'\r\n );\r\n }, 0);\r\n } else {\r\n this.router.navigate([targetUrl], { relativeTo: this.route });\r\n }\r\n }\r\n\r\n protected navigateNewWindow(row: RowModel<T>, event: MouseEvent) {\r\n if (this.disableCustomClicks || event.button !== 1) {\r\n return;\r\n }\r\n\r\n event.preventDefault();\r\n const targetUrl = this.createUrl(row);\r\n\r\n window.open(this.router.serializeUrl(this.router.createUrlTree([targetUrl], { relativeTo: this.route })), '_blank');\r\n }\r\n\r\n protected toggleAll(event: CustomEvent<FormCheckboxEvent>) {\r\n this.allSelected = event.detail.checked;\r\n this.tableRows.forEach((x) => (x.selected = this.allSelected));\r\n this.fireSelectionChange();\r\n }\r\n\r\n protected toggleDetail(row: RowModel<T>) {\r\n row.expanded = !row.expanded;\r\n this.cdRef.detectChanges();\r\n }\r\n\r\n protected selectRowCheckbox(row: RowModel<T>, event: CustomEvent<FormCheckboxEvent>) {\r\n row.selected = event.detail.checked;\r\n this.allSelected = this.tableRows.every((x) => x.selected);\r\n this.fireSelectionChange();\r\n }\r\n\r\n protected truncate(text: string): string {\r\n return text.length > this.maximumColumnLength\r\n ? text.slice(0, this.maximumColumnLength) + '...'\r\n : text;\r\n }\r\n\r\n protected deselectAll() {\r\n this.allSelected = false;\r\n this.tableRows.forEach(x => (x.selected = this.allSelected));\r\n }\r\n\r\n private createUrl(row: RowModel<T>): string {\r\n if (row.customRoute) {\r\n return row.customRoute;\r\n }\r\n\r\n return row.id.toString();\r\n }\r\n\r\n private reactToSignals(): void {\r\n const reload = this.service.reload();\r\n\r\n if (typeof reload === 'symbol') {\r\n this.fireLazyLoad();\r\n } else if (reload.name === this.tableName) {\r\n this.fireLazyLoad()\r\n }\r\n\r\n this.deselectAll();\r\n }\r\n\r\n private updateColumnModels() {\r\n const viewColumns = this.viewColumns\r\n ?.toArray()\r\n .map((x) => x.getDefinition());\r\n this.tableColumns = [...(this._columns ?? []), ...(viewColumns ?? [])].map(\r\n (x) => new ColumnModel(x)\r\n );\r\n }\r\n\r\n private updateRowModels(): void {\r\n this.tableRows = (this.data ?? []).map(\r\n (x) => new RowModel(x, false, false, undefined, undefined, undefined, this.customRoute, this.entityKey)\r\n );\r\n }\r\n\r\n private fireSelectionChange() {\r\n const selectedRows = this.tableRows\r\n .filter((x) => x.selected)\r\n .map((x) => x.row);\r\n this.selectionChange.emit(selectedRows);\r\n }\r\n\r\n private selectSelected() {\r\n if (this.selection?.length && this.selectionMode) {\r\n const selection =\r\n this.selectionMode === TableSelectionMode.single\r\n ? [this.selection[0]]\r\n : this.selection;\r\n const selectionSet = new Set(selection);\r\n this.tableRows.forEach((item) => {\r\n item.selected = selectionSet.has(item.row);\r\n });\r\n\r\n this.allSelected = this.tableRows.every((x) => x.selected);\r\n }\r\n }\r\n\r\n private fireLazyLoad() {\r\n const lazyLoadEvent: LazyLoadEvent = {\r\n sort: this.getSorts(),\r\n offset: (this.currentPage - 1) * this.pageSize,\r\n limit: this.pageSize,\r\n filter: this.filter,\r\n };\r\n\r\n this.lazyLoad.emit(lazyLoadEvent);\r\n }\r\n\r\n private updateFilter() {\r\n this.fireLazyLoad();\r\n }\r\n\r\n private getSorts(): Sort[] {\r\n return this.tableColumns\r\n .filter((x) => x.sortable && x.sortDirection)\r\n .map((x) => ({\r\n field: x.id,\r\n direction: <SortDirectionType>x.sortDirection,\r\n }));\r\n }\r\n}\r\n","@if (selectionMode === 'multiple' && showActionButtons) {\r\n<gov-flex\r\n class=\"gov-table-complex__actions mt-2\"\r\n justify-content=\"space-between\"\r\n align-items=\"center\"\r\n>\r\n <div class=\"gov-table-complex__records-selected\">\r\n {{ selectedCount }} {{ ('TABLES.CHOSEN_RECORDS' | translate) ?? 'chosen records'}}\r\n </div>\r\n <div>\r\n <gov-button color=\"primary\" size=\"s\" type=\"solid\" (gov-click)=\"delete.emit(selected)\">\r\n {{ ('BUTTONS.DELETE' | translate) ?? 'Delete'}}\r\n </gov-button>\r\n <gov-button color=\"primary\" size=\"s\" type=\"solid\" (gov-click)=\"save.emit(selected)\">\r\n {{ ('BUTTONS.SAVE' | translate) ?? 'Save'}}\r\n </gov-button>\r\n <gov-button color=\"primary\" size=\"s\" type=\"solid\" (gov-click)=\"download.emit(selected)\">\r\n {{ ('BUTTONS.DOWNLOAD' | translate) ?? 'Download'}}\r\n </gov-button>\r\n <gov-button color=\"primary\" size=\"s\" type=\"solid\" (gov-click)=\"deselectAll()\">\r\n {{ ('BUTTONS.CANCEL' | translate) ?? 'Cancel'}}\r\n </gov-button>\r\n </div>\r\n</gov-flex>\r\n}\r\n\r\n<div\r\n class=\" v-table gov-table\"\r\n [attr.size]=\"size | govSize\"\r\n>\r\n <table class=\"v-table__table\">\r\n <thead class=\"v-table__head\">\r\n <tr class=\"v-table__header\">\r\n @if (this.rowDetailTemplate) {\r\n <th></th>\r\n } @if (selectionMode === 'multiple') {\r\n <th scope=\"col\">\r\n <gov-form-checkbox\r\n [checked]=\"allSelected\"\r\n (gov-change)=\"toggleAll($event)\"\r\n />\r\n </th>\r\n }\r\n @for (column of tableColumns; track column; let index = $index) {\r\n @if (column.visible && column.forceVisibility !== 'hidden') {\r\n <th\r\n scope=\"col\"\r\n [style]=\"{'text-align': column.textAlign}\"\r\n >\r\n <span\r\n class=\"gov-table--fit-width\"\r\n [class.v-table__sortable]=\"column.sortable\"\r\n [class.v-table__sortable--desc]=\"column.sortable && column.sortDirection === 'desc'\"\r\n [class.v-table__sortable--asc]=\"column.sortable && column.sortDirection === 'asc'\"\r\n (click)=\"sortColumn(column)\"\r\n >\r\n {{ column.headerGetter(column.id, index) | translate }}\r\n </span>\r\n </th>\r\n } @if (this.rowDetailButtonTemplate) {\r\n <th></th>\r\n }}\r\n </tr>\r\n </thead>\r\n @if (loading) {\r\n <v-loader />\r\n } @else {\r\n <tbody class=\"v-table__body\">\r\n @for (data of tableRowView; track data.id; let rowIndex = $index) {\r\n <tr\r\n class=\"v-table__row\"\r\n [class.gov-table--highlight]=\"data.selected && selectionMode\"\r\n (click)=\"selectRow(data, $event)\"\r\n (dblclick)=\"navigate(data, $event)\"\r\n (mousedown)=\"navigateNewWindow(data, $event)\"\r\n >\r\n @if (this.rowDetailTemplate) {\r\n <td>\r\n <gov-button\r\n [size]=\"size | govSize\"\r\n color=\"primary\"\r\n type=\"solid\"\r\n (gov-click)=\"toggleDetail(data)\"\r\n >\r\n <gov-icon\r\n [name]=\"data.expanded ? 'chevron-up' : 'chevron-down'\"\r\n [size]=\"size | govSize\"\r\n slot=\"icon-start\"\r\n ></gov-icon>\r\n </gov-button>\r\n </td>\r\n } @if (selectionMode === 'multiple') {\r\n <td class=\"gov-table--fit-content gov-table--border-right\">\r\n <gov-form-checkbox\r\n no-label\r\n [checked]=\"data.selected\"\r\n [size]=\"size | govSize\"\r\n (gov-change)=\"selectRowCheckbox(data, $event)\"\r\n ></gov-form-checkbox>\r\n </td>\r\n }\r\n @for (column of tableColumns; track column; let columnIndex = $index) {\r\n @if (column.visible && column.forceVisibility !== 'hidden') {\r\n <td\r\n [style]=\"{'text-align': column.textAlign}\"\r\n [class]=\"column.columnClass!\"\r\n [class.v-auto-cell]=\"column.template\"\r\n >\r\n @if (column.template) {\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n column.template;\r\n context: { $implicit: data.row }\r\n \"\r\n ></ng-container>\r\n } @else {\r\n <span\r\n [queryParams]=\"column.queryParams ? column.queryParams : undefined\"\r\n [routerLink]=\"column.routerLink ? column.routerLink(data.row) : undefined\"\r\n [innerHTML]=\"truncate(column.valueGetter(data.row, rowIndex))\"\r\n [attr.title]=\"\r\n column.valueGetter(data.row, rowIndex).length > maximumColumnLength\r\n ? column.valueGetter(data.row, rowIndex)\r\n : null\r\n \"\r\n ></span>\r\n }\r\n </td>\r\n @if (this.rowDetailButtonTemplate) {\r\n <td scope=\"\">\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n this.rowDetailButtonTemplate;\r\n context: { $implicit: data.row }\r\n \"\r\n ></ng-container>\r\n </td>\r\n }}}\r\n </tr>\r\n @if (this.rowDetailTemplate && data.expanded) {\r\n <tr>\r\n <td [attr.colspan]=\"tableColumns.length + 1\">\r\n <ng-container\r\n class=\"w-100\"\r\n *ngTemplateOutlet=\"\r\n this.rowDetailTemplate;\r\n context: { $implicit: data.row }\r\n \"\r\n ></ng-container>\r\n </td>\r\n </tr>\r\n } } @if (!tableRows.length && !loading){\r\n <td [attr.colspan]=\"tableColumns.length\">\r\n <gov-empty align=\"center\" [size]=\"size | govSize\">\r\n <gov-icon slot=\"icon\" name=\"empty-file\" type=\"colored\"/>\r\n <p slot=\"headline\">\r\n {{ ('TABLES.EMPTY' | translate) ?? 'No records were found!' }}\r\n </p>\r\n </gov-empty>\r\n </td>\r\n }\r\n </tbody>\r\n }\r\n </table>\r\n @if(showPaginator) {\r\n <div class=\"v-table__paginator d-flex pt-3 pb-3\">\r\n @if (tableRows.length) {\r\n <div class=\"mt-2\">\r\n <v-table-pagination-info\r\n [showingText]=\"'TABLES.PAGINATION.SHOWING' | translate\"\r\n [toText]=\"'TABLES.PAGINATION.TO' | translate\"\r\n [ofText]=\"'TABLES.PAGINATION.OF' | translate\"\r\n [entriesText]=\"'TABLES.PAGINATION.ENTRIES' | translate\"\r\n [currentPage]=\"currentPage\"\r\n [pageSize]=\"pageSize\"\r\n [total]=\"total\"\r\n />\r\n </div>\r\n <div class=\"ms-4\">\r\n <gov-form-select\r\n [options]=\"pageSizeOptions\"\r\n [value]=\"govPageSize\"\r\n (gov-change)=\"changePageSize($event)\"\r\n ></gov-form-select>\r\n </div>\r\n }\r\n <div class=\"ms-4\">\r\n <gov-pagination\r\n [current]=\"currentPage\"\r\n [pageSize]=\"pageSize\"\r\n [total]=\"total\"\r\n [type]=\"'button'\"\r\n (gov-page)=\"changePage($event)\"\r\n ></gov-pagination>\r\n </div>\r\n </div>\r\n }\r\n</div>\r\n","import { Directive } from '@angular/core';\r\nimport { FilterFieldDirective } from '../../filter';\r\n@Directive({\r\n // eslint-disable-next-line @angular-eslint/directive-selector\r\n selector: 'v-feature-list-filter-field',\r\n standalone: true,\r\n})\r\nexport class FeatureListFilterFieldDirective extends FilterFieldDirective {}","import { Pipe, PipeTransform } from \"@angular/core\";\r\nimport { GenericFieldDefinition, GenericFieldType } from \"@verisoft/ui-core\";\r\nimport { FeatureListColumnDefinition } from \"./feature-list-page.model\";\r\n\r\n@Pipe({\r\n name: 'featureListColumn',\r\n standalone: true,\r\n})\r\nexport class FeatureListFilterPipe<T> implements PipeTransform {\r\n transform(value: FeatureListColumnDefinition<T>[] | undefined): GenericFieldDefinition[] | undefined {\r\n if (!value){\r\n return undefined;\r\n }\r\n\r\n return value.filter(x => x.filter).map((x, index) => ({\r\n name: x.id,\r\n label: typeof x.headerName === 'function'? x.headerName(x.id, index) : x.headerName ?? '',\r\n type: x.type as GenericFieldType,\r\n }));\r\n }\r\n}","import { Component } from '@angular/core';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport {\r\n FEATURE_LIST_PAGE_CONFIG_PROPERTY,\r\n FeatureListPageConfig,\r\n} from './feature-list-page.model';\r\nimport { FeatureListComponent } from './feature-list.component';\r\n\r\n@Component({\r\n selector: 'v-feature-list-page',\r\n standalone: true,\r\n imports: [FeatureListComponent],\r\n template: `\r\n <v-feature-list\r\n [title]=\"config.title\"\r\n [tableName]=\"config.tableName\"\r\n [showAdd]=\"config.showAdd ?? true\"\r\n [showDownload]=\"config.showDownload ?? true\"\r\n [showDelete]=\"config.showDelete ?? true\"\r\n >\r\n </v-feature-list>\r\n `,\r\n})\r\nexport class FeatureListPageComponent {\r\n config!: FeatureListPageConfig;\r\n\r\n constructor(activatedRoute: ActivatedRoute) {\r\n this.config =\r\n activatedRoute.snapshot.data[FEATURE_LIST_PAGE_CONFIG_PROPERTY];\r\n }\r\n}\r\n","import { InjectionToken } from '@angular/core';\r\nimport { Route } from '@angular/router';\r\nimport { ColumnDefinition, GenericFieldTypeType } from '@verisoft/ui-core';\r\nimport { FeatureListPageComponent } from './feature-list-page.component';\r\n\r\nexport interface FeatureListPageConfig {\r\n title: string;\r\n datasource: string;\r\n tableName: string;\r\n showAdd?: boolean;\r\n showDownload?: boolean;\r\n showDelete?: boolean;\r\n}\r\n\r\nexport const FEATURE_LIST_PAGE_CONFIG_PROPERTY = 'feature_list_config';\r\n\r\nexport function addFeatureListPage(\r\n value: Partial<Route> & { config: FeatureListPageConfig }\r\n): Route {\r\n const { config, ...route } = value;\r\n return {\r\n component: FeatureListPageComponent,\r\n ...route,\r\n data: {\r\n [FEATURE_LIST_PAGE_CONFIG_PROPERTY]: config,\r\n ...(route.data ?? {}),\r\n },\r\n };\r\n}\r\n\r\nexport interface FeatureListColumnDefinition<T> extends ColumnDefinition<T> {\r\n filter?: boolean;\r\n type?: GenericFieldTypeType;\r\n}\r\n\r\nexport const FEATURE_LIST_COLUMN_PROVIDER = new InjectionToken(\r\n 'FEATURE_LIST_COLUMN_PROVIDER'\r\n);\r\n\r\nexport interface FeatureListColumnProvider<T> {\r\n getDefinition: () => FeatureListColumnDefinition<T>;\r\n}\r\n","import { HttpClient } from '@angular/common/http';\r\nimport {\r\n AfterViewInit,\r\n ChangeDetectionStrategy,\r\n ChangeDetectorRef,\r\n Component,\r\n ContentChildren,\r\n EventEmitter,\r\n inject,\r\n Input,\r\n Output,\r\n QueryList,\r\n ViewChild,\r\n} from '@angular/core';\r\nimport {\r\n AllDataRequestParams,\r\n BASE_URL_PATH,\r\n BaseHttpService,\r\n convertDatasource,\r\n DatasourceType,\r\n DEFAULT_PAGE_SIZE,\r\n} from '@verisoft/core';\r\nimport {\r\n ColumnModel,\r\n DialogService,\r\n downloadFile,\r\n GenericFieldDefinition,\r\n MAX_COLUMN_CHAR_COUNT,\r\n TableDatasourceDirective,\r\n TableFilterDirective,\r\n TableSelectionMode,\r\n TableSelectionModeType,\r\n} from '@verisoft/ui-core';\r\nimport { take, switchMap, forkJoin, Observable, of } from 'rxjs';\r\nimport { Icons } from '../../../icons';\r\nimport { TableComponent } from '../../table';\r\nimport {\r\n ActionButtonComponent,\r\n ActionButtonGroupComponent,\r\n} from '../action-button-group';\r\nimport { FilterComponent } from '../filter';\r\nimport { FeatureListFilterFieldDirective } from './directives/feature-list-filter-field.directive';\r\nimport { FeatureListFilterPipe } from './feature-list-filter.pipe';\r\nimport {\r\n FEATURE_LIST_COLUMN_PROVIDER,\r\n FeatureListColumnDefinition,\r\n FeatureListColumnProvider,\r\n} from './feature-list-page.model';\r\n\r\n@Component({\r\n selector: 'v-feature-list',\r\n imports: [\r\n TableComponent,\r\n TableDatasourceDirective,\r\n FilterComponent,\r\n TableFilterDirective,\r\n ActionButtonGroupComponent,\r\n ActionButtonComponent,\r\n FeatureListFilterPipe,\r\n ],\r\n standalone: true,\r\n templateUrl: './feature-list.component.html',\r\n styleUrls: ['./feature-list.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class FeatureListComponent<T> implements AfterViewInit {\r\n @ContentChildren(FEATURE_LIST_COLUMN_PROVIDER) viewColumns!: QueryList<\r\n FeatureListColumnProvider<T>\r\n >;\r\n\r\n @ContentChildren(FeatureListFilterFieldDirective)\r\n fieldDeclarations!: QueryList<FeatureListFilterFieldDirective>;\r\n\r\n @ViewChild(TableDatasourceDirective)\r\n tableDatasourceDirective!: TableDatasourceDirective<T>;\r\n\r\n @Input() autoBind = true;\r\n\r\n @Input() title!: string;\r\n\r\n @Input() columns!: FeatureListColumnDefinition<T>[];\r\n\r\n @Input() filters!: GenericFieldDefinition[];\r\n\r\n @Input() maxVisibleActions = 2;\r\n\r\n @Input({ required: true }) tableName!: string;\r\n\r\n @Input() ngrxFeatureKey?: string;\r\n\r\n @Input() maxVisibleMobileActions = 0;\r\n\r\n @Input() showExtendedFilter = false;\r\n\r\n @Input() showDownload = false;\r\n\r\n @Input() showDelete = false;\r\n\r\n @Input() showAdd = false;\r\n\r\n @Input() canDownload = true;\r\n\r\n @Input() canDelete = true;\r\n\r\n @Input() canAdd = true;\r\n\r\n @Input() useRouterFilter = true;\r\n\r\n @Input() fulltextFieldName = 'searchField';\r\n\r\n @Input() showFulltext = true;\r\n\r\n @Input() deleteConfirmMessage: string | undefined;\r\n\r\n @Input() autoDeleteEnabled = true;\r\n\r\n @Input() autoDownloadEnabled = true;\r\n\r\n @Input() downloadFileName = 'export.csv';\r\n\r\n @Input() datasource!: DatasourceType<T>;\r\n\r\n @Input() extraFilter!: any;\r\n\r\n @Input() disableCustomClicks = false;\r\n\r\n @Input() maximumColumnLength = MAX_COLUMN_CHAR_COUNT;\r\n\r\n @Output() addClick = new EventEmitter();\r\n\r\n @Output() downloadClick = new EventEmitter();\r\n\r\n @Output() deleteClick = new EventEmitter<T[]>();\r\n\r\n @Output() selectionChange = new EventEmitter();\r\n\r\n @Input() set selectionMode(mode: TableSelectionModeType | undefined) {\r\n this._selectionMode = mode;\r\n }\r\n\r\n get selectionMode(): TableSelectionModeType | undefined {\r\n return this.canDelete\r\n ? TableSelectionMode.single\r\n : this._selectionMode;\r\n }\r\n\r\n icons = Icons;\r\n\r\n private httpClient = inject(HttpClient);\r\n\r\n private baseUrl: string = inject(BASE_URL_PATH);\r\n\r\n private _selectionMode: TableSelectionModeType | undefined;\r\n\r\n private cdRef = inject(ChangeDetectorRef);\r\n\r\n private dialogService = inject(DialogService);\r\n\r\n selection: T[] = [];\r\n\r\n ngAfterViewInit(): void {\r\n if (this.viewColumns?.length) {\r\n const vewColumns = this.viewColumns\r\n ?.toArray()\r\n .map((x) => x.getDefinition());\r\n this.columns = [...(this.columns ?? []), ...(vewColumns ?? [])];\r\n this.cdRef.detectChanges();\r\n }\r\n\r\n if (this.fieldDeclarations?.length) {\r\n this.filters = this.fieldDeclarations?.toArray();\r\n }\r\n\r\n this.cdRef.detectChanges();\r\n }\r\n\r\n selectItems(items: T[]) {\r\n this.selection = items ?? [];\r\n\r\n if (this.selectionMode !== undefined) {\r\n this.selectionChange.emit(\r\n this.selectionMode === 'multiple'\r\n ? this.selection\r\n : this.selection[0]\r\n );\r\n }\r\n }\r\n\r\n startDeleteItems() {\r\n if (!this.selection.length) {\r\n return;\r\n }\r\n\r\n if (this.deleteConfirmMessage) {\r\n const message = this.deleteConfirmMessage;\r\n this.dialogService.showDialog({\r\n innerHTML: message,\r\n confirmButtonFn: () => this.deleteItems(this.selection),\r\n });\r\n } else {\r\n this.deleteItems(this.selection);\r\n }\r\n }\r\n\r\n startDownload() {\r\n this.downloadClick.emit();\r\n if (!this.autoDownloadEnabled) {\r\n return;\r\n }\r\n\r\n const dowloadFn = this.createDownloadFn(this.datasource);\r\n if (dowloadFn) {\r\n this.tableDatasourceDirective.params$\r\n .pipe(\r\n take(1),\r\n switchMap((params) => dowloadFn(params))\r\n )\r\n .subscribe((blob) => {\r\n downloadFile(this.downloadFileName, blob);\r\n });\r\n }\r\n }\r\n\r\n private deleteItems(items: T[]) {\r\n if (!this.autoDeleteEnabled) {\r\n this.deleteClick.emit(items);\r\n } else {\r\n this.forceDelete(items);\r\n }\r\n }\r\n\r\n private forceDelete(items: T[]) {\r\n const deleteFn = this.createDeleteFn(this.datasource);\r\n if (deleteFn) {\r\n const deleteMethods = items.map((x) => deleteFn(x));\r\n forkJoin(deleteMethods)\r\n .pipe(take(1))\r\n .subscribe(() => this.finishDeletion(items));\r\n } else {\r\n this.finishDeletion(items);\r\n }\r\n }\r\n\r\n private createDeleteFn(\r\n datasource: DatasourceType<T>\r\n ): ((item: T) => Observable<unknown>) | undefined {\r\n if (!datasource) {\r\n return undefined;\r\n }\r\n\r\n if (typeof datasource === 'string') {\r\n const service = new BaseHttpService<T>(\r\n this.httpClient,\r\n this.baseUrl,\r\n datasource\r\n );\r\n\r\n return (item: T) => service.delete((item as { id: string }).id);\r\n }\r\n\r\n if (datasource instanceof BaseHttpService) {\r\n return (item: T) => datasource.delete((item as { id: string }).id);\r\n }\r\n\r\n return undefined;\r\n }\r\n\r\n private createDownloadFn(\r\n datasource: DatasourceType<T>\r\n ): ((request: AllDataRequestParams<T>) => Observable<Blob>) | undefined {\r\n if (!datasource) {\r\n return undefined;\r\n }\r\n\r\n if (typeof datasource === 'string') {\r\n const service = new BaseHttpService<T>(\r\n this.httpClient,\r\n this.baseUrl,\r\n datasource\r\n );\r\n\r\n return (request: AllDataRequestParams<T>) => service.export(request);\r\n }\r\n\r\n if (datasource instanceof BaseHttpService) {\r\n return (request: AllDataRequestParams<T>) => datasource.export(request);\r\n }\r\n\r\n const fetchFunction = convertDatasource(\r\n datasource,\r\n this.baseUrl,\r\n this.httpClient\r\n );\r\n\r\n return (request: AllDataRequestParams<T>) => {\r\n const allData: T[] = [];\r\n let offset = 0;\r\n const fetchAllData = (): Observable<Blob> => {\r\n return fetchFunction({\r\n ...request,\r\n offset,\r\n limit: DEFAULT_PAGE_SIZE,\r\n }).pipe(\r\n take(1),\r\n switchMap((response) => {\r\n allData.push(...response.data);\r\n if (allData.length < response.total) {\r\n offset = offset + DEFAULT_PAGE_SIZE;\r\n return fetchAllData();\r\n } else {\r\n return of(this.convertToBlob(allData));\r\n }\r\n })\r\n );\r\n };\r\n\r\n return fetchAllData();\r\n };\r\n }\r\n\r\n private finishDeletion(items: T[]) {\r\n if (this.datasource && Array.isArray(this.datasource)) {\r\n this.datasource = this.datasource.filter((x) => !items.includes(x));\r\n } else {\r\n this.tableDatasourceDirective.reload();\r\n }\r\n\r\n this.deleteClick.emit(items);\r\n }\r\n\r\n private convertToBlob(data: T[]): Blob {\r\n const columnModel = this.columns.map((x) => new ColumnModel(x));\r\n const headers = columnModel.map((x, index) => x.headerGetter(x.id, index));\r\n const dataValues = data.map((row, rowIndex) =>\r\n columnModel.map((column) => column.valueGetter(row, rowIndex))\r\n );\r\n const csvData = [headers, ...dataValues]\r\n .map((row) => row.join(','))\r\n .join('\\n');\r\n return new Blob([csvData], { type: 'text/csv' });\r\n }\r\n}\r\n","<div class=\"feature-list__container full-height-container\">\r\n <v-filter\r\n #filter\r\n [title]=\"title\"\r\n [fields]=\"columns | featureListColumn\"\r\n [filters]=\"filters\"\r\n [fulltextFieldName]=\"fulltextFieldName\"\r\n [showFulltext]=\"showFulltext\"\r\n [showFilters]=\"showExtendedFilter\"\r\n >\r\n <v-action-button-group\r\n [maxItems]=\"maxVisibleActions\"\r\n [maxItemsMobile]=\"maxVisibleMobileActions\"\r\n >\r\n @if (showAdd) {\r\n <v-action-button\r\n [icon]=\"icons.add\"\r\n label=\"Add\"\r\n [disabled]=\"!canAdd\"\r\n (click)=\"addClick.emit()\"\r\n ></v-action-button>\r\n } @if (showDelete){\r\n <v-action-button\r\n [icon]=\"icons.delete\"\r\n label=\"Delete\"\r\n [disabled]=\"!canDelete || !selection.length\"\r\n (click)=\"startDeleteItems()\"\r\n ></v-action-button>\r\n } @if (showDownload){\r\n <v-action-button\r\n [icon]=\"icons.download\"\r\n label=\"Download\"\r\n [disabled]=\"!canDownload\"\r\n (click)=\"startDownload()\"\r\n ></v-action-button>\r\n }\r\n </v-action-button-group>\r\n </v-filter>\r\n <div class=\"feature-list__table-container full-height-container\">\r\n <div class=\"full-height-container\">\r\n <v-table\r\n useDatasource\r\n useFilter\r\n [filterComponent]=\"filter\"\r\n class=\"full-height-container\"\r\n [selectionMode]=\"selectionMode\"\r\n [tableName]=\"tableName\"\r\n [autoBind]=\"true\"\r\n [datasource]=\"datasource\"\r\n [columns]=\"columns\"\r\n [extraFilter]=\"extraFilter\"\r\n [maximumColumnLength]=\"maximumColumnLength\"\r\n [disableCustomClicks]=\"disableCustomClicks\"\r\n (selectionChange)=\"selectItems($event)\"\r\n >\r\n </v-table>\r\n </div>\r\n </div>\r\n</div>\r\n","import { Directive, Input } from '@angular/core';\r\nimport { GenericFieldType, GenericFieldTypeType, TableColumnDirective } from '@verisoft/ui-core';\r\nimport { FEATURE_LIST_COLUMN_PROVIDER, FeatureListColumnDefinition, FeatureListColumnProvider } from '../feature-list-page.model';\r\n\r\n@Directive({\r\n // eslint-disable-next-line @angular-eslint/directive-selector\r\n selector: 'v-feature-list-column',\r\n standalone: true,\r\n providers: [\r\n {\r\n provide: FEATURE_LIST_COLUMN_PROVIDER,\r\n useExisting: FeatureListColumnDirective,\r\n multi: true,\r\n },\r\n ],\r\n})\r\nexport class FeatureListColumnDirective<T>\r\n extends TableColumnDirective<T>\r\n implements FeatureListColumnProvider<T>\r\n{\r\n @Input() filter = false;\r\n\r\n @Input() type: GenericFieldTypeType = GenericFieldType.text;\r\n\r\n override getDefinition(): FeatureListColumnDefinition<T> {\r\n const definition = super.getDefinition() as FeatureListColumnDefinition<T>;\r\n definition.filter = this.filter;\r\n definition.type = this.type;\r\n definition.format = this.format;\r\n return definition;\r\n }\r\n}\r\n","/* eslint-disable @typescript-eslint/no-explicit-any */\r\nimport {\r\n Injectable,\r\n ViewContainerRef,\r\n Type,\r\n ComponentFactoryResolver,\r\n Injector,\r\n ComponentRef,\r\n ComponentFactory,\r\n OnChanges,\r\n SimpleChanges,\r\n SimpleChange,\r\n EventEmitter,\r\n OnDestroy,\r\n} from '@angular/core';\r\nimport { ExtendedComponent } from '@verisoft/ui-core';\r\nimport { Subscription } from 'rxjs';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class DynamicComponentFactoryService implements OnDestroy {\r\n constructor(private componentFactoryResolver: ComponentFactoryResolver) { }\r\n\r\n ngOnDestroy(): void {\r\n this.unsubscribeComponentEvents(this);\r\n }\r\n\r\n async createDynamicComponent<TComponent>(\r\n componentType: Type<TComponent>,\r\n viewContainerRef: ViewContainerRef,\r\n inputs: ExtendedComponent<TComponent>,\r\n injector: Injector | undefined = undefined\r\n ) {\r\n const componentFactory =\r\n this.componentFactoryResolver.resolveComponentFactory(componentType);\r\n viewContainerRef.clear();\r\n const component = viewContainerRef.createComponent(\r\n componentFactory,\r\n undefined,\r\n injector\r\n );\r\n this.setComponentDataInt(componentFactory, component, inputs);\r\n this.fireComponentEvents(component.instance, inputs);\r\n return component;\r\n }\r\n\r\n setComponentData<TComponent>(\r\n component: ComponentRef<TComponent>,\r\n inputs: Partial<TComponent>\r\n ) {\r\n const factory = this.componentFactoryResolver.resolveComponentFactory(\r\n component.componentType\r\n );\r\n\r\n this.setComponentDataInt(factory, component, inputs);\r\n }\r\n\r\n private unsubscribeComponentEvents<TComponent>(instance: TComponent) {\r\n const subscriptionStoreKey = '__outputSubscriptions__';\r\n const subscriptions = (instance as any)[subscriptionStoreKey] as Map<string, Subscription>;\r\n\r\n if (subscriptions) {\r\n subscriptions.forEach((sub) => sub.unsubscribe());\r\n subscriptions.clear();\r\n }\r\n }\r\n\r\n private fireComponentEvents<TComponent>(\r\n instance: TComponent,\r\n inputs: ExtendedComponent<TComponent>\r\n ) {\r\n if (!instance || typeof instance !== 'object') return;\r\n\r\n this.fireInputComponentEvents(instance, inputs);\r\n this.fireOutputComponentEvents(instance, inputs);\r\n }\r\n\r\n private setComponentDataInt<TComponent>(\r\n factory: ComponentFactory<TComponent>,\r\n component: ComponentRef<TComponent>,\r\n inputs: Partial<TComponent>\r\n ) {\r\n if (inputs) {\r\n const propertyNames = factory.inputs.map((x) => x.propName);\r\n const inputsHash = new Set(propertyNames);\r\n Object.keys(inputs)\r\n .filter((x) => inputsHash.has(x))\r\n .forEach((x) => {\r\n (<{ [key: string]: unknown }>component.instance)[x] = (<\r\n { [key: string]: unknown }\r\n >inputs)[x];\r\n });\r\n }\r\n }\r\n\r\n private fireInputComponentEvents<TComponent>(\r\n instance: TComponent,\r\n inputs: ExtendedComponent<TComponent>\r\n ) {\r\n const onChangeComponent = instance as unknown as OnChanges;\r\n if (onChangeComponent.ngOnChanges && inputs) {\r\n const changeEventArgs = Object.keys(inputs).reduce((changes: SimpleChanges, key: string) => {\r\n const inputValue = (inputs as { [key: string]: unknown })[key];\r\n changes[key] = new SimpleChange(undefined, inputValue, true);\r\n return changes;\r\n }, {} as SimpleChanges);\r\n\r\n onChangeComponent.ngOnChanges(changeEventArgs);\r\n }\r\n }\r\n\r\n private fireOutputComponentEvents<TComponent>(\r\n instance: TComponent & object,\r\n inputs: ExtendedComponent<TComponent>\r\n ) {\r\n const outputs = Object.keys(inputs).filter((key) => {\r\n const emitter = (instance as Record<string, any>)[key];\r\n return emitter instanceof EventEmitter;\r\n });\r\n\r\n const subscriptionStoreKey = '__outputSubscriptions__';\r\n if (!(subscriptionStoreKey in instance)) {\r\n (instance as any)[subscriptionStoreKey] = new Map<string, Subscription>();\r\n }\r\n const subscriptions = (instance as any)[subscriptionStoreKey] as Map<string, Subscription>;\r\n\r\n for (const outputKey of outputs) {\r\n const eventEmitter = (instance as Record<string, any>)[outputKey] as EventEmitter<any>;\r\n const callback = inputs[outputKey] as (value: any) => void;\r\n\r\n if (eventEmitter && typeof callback === 'function') {\r\n if (subscriptions.has(outputKey)) {\r\n subscriptions.get(outputKey)!.unsubscribe();\r\n }\r\n\r\n const subscription = eventEmitter.subscribe((value: any) => callback(value));\r\n subscriptions.set(outputKey, subscription);\r\n }\r\n }\r\n }\r\n}\r\n","import {\r\n AfterViewInit,\r\n ChangeDetectionStrategy,\r\n ChangeDetectorRef,\r\n Component,\r\n inject,\r\n Injector,\r\n Input,\r\n OnChanges,\r\n Type,\r\n ViewChild,\r\n ViewContainerRef,\r\n} from '@angular/core';\r\nimport { ExtendedComponent } from '@verisoft/ui-core';\r\nimport { DynamicComponentFactoryService } from './dynamic-component-factory.service';\r\n\r\n@Component({\r\n selector: 'v-dynamic-component',\r\n standalone: true,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n template: `<ng-container #dynamicContainer></ng-container>`,\r\n})\r\nexport class DynamicComponent<TComponent> implements AfterViewInit, OnChanges {\r\n @Input() componentType!: Type<TComponent>;\r\n\r\n @Input() data!: ExtendedComponent<TComponent>;\r\n\r\n @ViewChild('dynamicContainer', { read: ViewContainerRef, static: true })\r\n container!: ViewContainerRef;\r\n\r\n private factoryServices = inject(DynamicComponentFactoryService);\r\n\r\n private changeDetectorRef = inject(ChangeDetectorRef);\r\n\r\n private injector = inject(Injector);\r\n\r\n ngOnChanges(): void {\r\n this.createComponent();\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n this.createComponent();\r\n this.changeDetectorRef.detectChanges();\r\n }\r\n\r\n private createComponent() {\r\n if (this.container) {\r\n this.factoryServices.createDynamicComponent(\r\n this.componentType,\r\n this.container,\r\n this.data,\r\n this.injector\r\n );\r\n }\r\n }\r\n}\r\n","import { CommonModule } from '@angular/common';\r\nimport { ChangeDetectorRef, Component, OnInit } from '@angular/core';\r\nimport { GovDesignSystemModule } from '@gov-design-system-ce/angular';\r\nimport {\r\n CONFIRM_DIALOG_COMPONENT_TOKEN,\r\n ConfirmDialogCore,\r\n DialogData,\r\n DialogService,\r\n UnsubscribeComponent,\r\n} from '@verisoft/ui-core';\r\nimport { takeUntil } from 'rxjs';\r\nimport { GovColorPipe } from '../../pipes';\r\nimport { DynamicComponent } from '../shared-components';\r\n\r\n@Component({\r\n selector: 'v-confirm-dialog',\r\n standalone: true,\r\n imports: [\r\n CommonModule,\r\n GovDesignSystemModule,\r\n GovColorPipe,\r\n DynamicComponent,\r\n ],\r\n templateUrl: './confirm-dialog.component.html',\r\n styleUrl: './confirm-dialog.component.scss',\r\n providers: [\r\n {\r\n provide: CONFIRM_DIALOG_COMPONENT_TOKEN,\r\n useExisting: ConfirmDialogComponent,\r\n },\r\n ],\r\n})\r\nexport class ConfirmDialogComponent\r\n extends UnsubscribeComponent\r\n implements OnInit, ConfirmDialogCore\r\n{\r\n constructor(\r\n private readonly dialogService: DialogService,\r\n private readonly cdr: ChangeDetectorRef\r\n ) {\r\n super();\r\n }\r\n\r\n visible = false;\r\n protected closable = false;\r\n data: DialogData = { severity: 'primary', headerIcon: 'info-circle' };\r\n\r\n ngOnInit(): void {\r\n this.dialogService.showEvent\r\n .pipe(takeUntil(this.destroyed$))\r\n .subscribe((x: DialogData) => {\r\n this.data = x;\r\n this.visible = true;\r\n this.cdr.detectChanges();\r\n });\r\n\r\n this.dialogService.closeEvent\r\n .pipe(takeUntil(this.destroyed$))\r\n .subscribe(() => {\r\n this.data = {};\r\n this.visible = false;\r\n this.cdr.detectChanges();\r\n })\r\n }\r\n\r\n protected dialogClick(confirm: boolean) {\r\n const { confirmButtonFn, cancelButtonFn } = this.data;\r\n\r\n if (confirm && confirmButtonFn) {\r\n confirmButtonFn();\r\n }\r\n\r\n if (!confirm && cancelButtonFn) {\r\n cancelButtonFn();\r\n }\r\n\r\n this.visible = false;\r\n this.cdr.detectChanges();\r\n }\r\n}\r\n","<gov-dialog\r\n [open]=\"visible\"\r\n [attr.block-close]=\"data.closable !== undefined ? !data.closable : false\"\r\n [attr.block-backdrop-close]=\"data.closable !== undefined ? !data.closable : false\" \r\n [style.--dialog-max-width]=\"data.width\"\r\n [style.--dialog-max-height]=\"data.height\"\r\n role=\"dialog\"\r\n accessible-close-label=\"Close dialog box with more information\"\r\n (gov-close)=\"data.cancelButtonFn ? dialogClick(false) : (visible = false)\"\r\n>\r\n <gov-icon\r\n type=\"components\"\r\n [name]=\"data.headerIcon\"\r\n slot=\"icon\"\r\n [color]=\"data.severity | govColor\"\r\n />\r\n \r\n <h2 slot=\"title\">{{ data.title ?? 'Title' }}</h2>\r\n\r\n @if (data && data.innerHTML) {\r\n <div [innerHTML]=\"data.innerHTML\"></div>\r\n } @else if (data.componentType) {\r\n <v-dynamic-component\r\n [componentType]=\"data.componentType\"\r\n [data]=\"$any(data.data)\"\r\n ></v-dynamic-component>\r\n }\r\n\r\n <gov-button\r\n color=\"primary\"\r\n size=\"m\"\r\n type=\"solid\"\r\n slot=\"footer\"\r\n (gov-click)=\"data.confirmButtonFn ? dialogClick(true) : (visible = false)\"\r\n >\r\n {{ data.confirmButtonText ?? 'Yes'}}\r\n </gov-button>\r\n \r\n <gov-button\r\n [ngClass]=\"!data.showCancelButton ? 'd-none' : ''\"\r\n color=\"primary\"\r\n size=\"m\"\r\n type=\"outlined\"\r\n slot=\"footer\"\r\n [disabled]=\"!data.showCancelButton\"\r\n (gov-click)=\"data.cancelButtonFn ? dialogClick(false) : (visible = false)\"\r\n >\r\n {{ data.cancelButtonText ?? 'No' }}\r\n </gov-button>\r\n</gov-dialog>\r\n","import { AsyncPipe, CommonModule } from \"@angular/common\";\r\nimport {\r\n ChangeDetectionStrategy,\r\n Component,\r\n ContentChild,\r\n inject,\r\n Input,\r\n TemplateRef,\r\n} from \"@angular/core\";\r\nimport { Router, RouterModule } from \"@angular/router\";\r\nimport { GovDesignSystemModule } from \"@gov-design-system-ce/angular\";\r\nimport { HasPermissionDirective } from '@verisoft/security-core';\r\nimport {\r\n HEADER_COMPONENT_TOKEN,\r\n HeaderCore,\r\n MenuItem,\r\n SideMenuService,\r\n} from \"@verisoft/ui-core\";\r\nimport { Icons } from \"../../icons\";\r\n\r\n@Component({\r\n selector: \"v-header\",\r\n standalone: true,\r\n styleUrl: \"./header.component.scss\",\r\n templateUrl: './header.component.html',\r\n imports: [\r\n CommonModule,\r\n GovDesignSystemModule,\r\n AsyncPipe,\r\n RouterModule,\r\n HasPermissionDirective,\r\n ],\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n providers: [\r\n {\r\n provide: HEADER_COMPONENT_TOKEN,\r\n useExisting: HeaderComponent\r\n }\r\n ],\r\n})\r\nexport class HeaderComponent\r\n implements HeaderCore {\r\n\r\n @Input() title!: string;\r\n\r\n @Input() userName!: string;\r\n\r\n @Input() logoUrl!: string;\r\n\r\n @Input() userRole!: any;\r\n\r\n @Input() menuRef!: HTMLDivElement;\r\n\r\n @Input() items: MenuItem[] = [];\r\n\r\n @ContentChild('action', { static: false })\r\n actionTemplate!: TemplateRef<{ $implicit: any }>;\r\n\r\n protected icons = Icons;\r\n protected menuVisible = false;\r\n private openedIndexes: number[] = [];\r\n\r\n protected readonly tabsService = inject(SideMenuService);\r\n private readonly router = inject(Router);\r\n\r\n toggleMenu() {\r\n this.menuVisible = !this.menuVisible;\r\n }\r\n\r\n protected canRedirect(url?: string, canRedirect?: boolean) {\r\n if (url && canRedirect) {\r\n this.router.navigateByUrl(url);\r\n }\r\n }\r\n\r\n protected showOrHide(index: number, children?: number): void {\r\n if (children === 0) {\r\n return;\r\n }\r\n\r\n if (!this.openedIndexes.includes(index)) {\r\n this.openedIndexes = [...[], index];\r\n } else if (this.openedIndexes.includes(index)) {\r\n this.openedIndexes = this.openedIndexes.filter(x => x !== index);\r\n }\r\n }\r\n\r\n protected canBeShown(index: number) {\r\n return this.openedIndexes.includes(index);\r\n }\r\n}\r\n","<header class=\"gov-header\">\r\n <div class=\"gov-header__divider\">\r\n <div class=\"gov-header__content\">\r\n <gov-flex\r\n justify-content=\"space-between\"\r\n align-items=\"center\"\r\n responsive=\"false\"\r\n >\r\n <a\r\n href=\"/\"\r\n class=\"gov-header__logo\"\r\n aria-label=\"Zpět na úvodní stránku\"\r\n >\r\n <gov-flex\r\n align-items=\"center\"\r\n gap=\"s\"\r\n responsive=\"false\"\r\n >\r\n @if (logoUrl) {\r\n <img\r\n class=\"gov-header__logo-img\"\r\n src=\"{{ logoUrl }}\"\r\n width=\"125px\"\r\n height=\"43px\"\r\n alt=\"GAČR Logo\"\r\n >\r\n }\r\n </gov-flex>\r\n </a>\r\n </gov-flex>\r\n <gov-flex\r\n class=\"gov-header__action\"\r\n justify-content=\"space-between\"\r\n align-items=\"center\"\r\n gap=\"s\"\r\n >\r\n <gov-button\r\n color=\"primary\"\r\n size=\"m\"\r\n type=\"base\"\r\n >{{ userName }}</gov-button>\r\n <ng-content></ng-content>\r\n <ng-container *ngTemplateOutlet=\"\r\n this.actionTemplate;\r\n \"></ng-container>\r\n </gov-flex>\r\n </div>\r\n </div>\r\n <div class=\"gov-header__navigation\">\r\n <nav\r\n class=\"gov-navigation\"\r\n aria-label=\"Main navigation\"\r\n id=\"main-navigation\"\r\n >\r\n <ul>\r\n @for (tab of tabsService.menuItems$ | async; track tab; let index = $index) {\r\n <li\r\n *hasPermission=\"tab.data?.permissions ?? []\"\r\n class=\"gov-navigation--has-megamenu\"\r\n >\r\n <gov-button\r\n type=\"base\"\r\n color=\"primary\"\r\n size=\"l\"\r\n [attr.aria-label]=\"tab.label\"\r\n (gov-click)=\"\r\n showOrHide(index, tab.children?.length ?? 0);\r\n canRedirect(tab.url, !tab.children?.length)\r\n \"\r\n >\r\n {{ tab.label }}\r\n @if (tab.children?.length) {\r\n <gov-icon\r\n slot=\"icon-end\"\r\n size=\"s\"\r\n [name]=\"canBeShown(index) ? 'chevron-up' : 'chevron-down'\"\r\n ></gov-icon>\r\n }\r\n </gov-button>\r\n @if (canBeShown(index)) {\r\n <ul\r\n id=\"megamenu{{index}}\"\r\n class=\"gov-mega-menu gov-header__submenu\"\r\n [attr.aria-hidden]=\"canBeShown(index)\"\r\n >\r\n @for (child of tab.children; track child) {\r\n <li\r\n *hasPermission=\"child.data?.permissions ?? []\"\r\n class=\"gov-mega-menu__heading\"\r\n >\r\n <a\r\n [routerLink]=\"child.url\"\r\n (click)=\"showOrHide(index)\"\r\n >\r\n @if (child.icon) {\r\n <gov-icon\r\n [name]=\"child.icon\"\r\n size=\"m\"\r\n ></gov-icon>\r\n }\r\n <span>{{ child.label }}</span>\r\n </a>\r\n @if (child.children) { @for(miniChild of child.children; track miniChild) {\r\n <ul>\r\n <li *hasPermission=\"miniChild.data?.permissions ?? []\">\r\n <a\r\n [routerLink]=\"miniChild.url\"\r\n (click)=\"showOrHide(index)\"\r\n >{{ miniChild.label }}</a>\r\n </li>\r\n </ul>\r\n } }\r\n </li>\r\n }\r\n </ul>\r\n }\r\n </li>\r\n }\r\n </ul>\r\n </nav>\r\n </div>\r\n</header>","import { CommonModule } from '@angular/common';\r\nimport { ChangeDetectionStrategy, Component, Input, Optional, Self } from '@angular/core';\r\nimport { ControlValueAccessor, NgControl, ReactiveFormsModule } from '@angular/forms';\r\nimport { GovDesignSystemModule } from '@gov-design-system-ce/angular';\r\nimport { \r\n BaseFormInputComponent,\r\n FieldType,\r\n PASSWORD_COMPONENT_TOKEN,\r\n PasswordCore,\r\n SlotPosition,\r\n SlotPositionType,\r\n IconPosition,\r\n IconPositionType,\r\n FieldSize,\r\n FieldSizeType,\r\n PasswordStrength,\r\n} from '@verisoft/ui-core';\r\nimport zxcvbn from 'zxcvbn';\r\nimport { Icons } from '../../icons';\r\nimport { GovSizePipe } from '../../pipes';\r\nimport { ErrorComponent } from '../errors';\r\n\r\n@Component({\r\n selector: 'v-password',\r\n standalone: true,\r\n imports: [\r\n CommonModule,\r\n ReactiveFormsModule,\r\n GovDesignSystemModule,\r\n GovSizePipe,\r\n ErrorComponent,\r\n ],\r\n templateUrl: './password.component.html',\r\n styleUrl: './password.component.scss',\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n providers: [\r\n {\r\n provide: PASSWORD_COMPONENT_TOKEN,\r\n useExisting: PasswordComponent\r\n }\r\n ],\r\n})\r\n\r\nexport class PasswordComponent \r\n extends BaseFormInputComponent\r\n implements ControlValueAccessor, PasswordCore \r\n{\r\n @Input() toggleMask = true;\r\n @Input() feedback = false;\r\n @Input() labelSlot: SlotPositionType = SlotPosition.top;\r\n @Input() requiredStrength: PasswordStrength = PasswordStrength.None;\r\n @Input() message!: string;\r\n @Input() name! : string;\r\n @Input() role! : string;\r\n @Input() icon!: string;\r\n @Input() iconPos: IconPositionType = IconPosition.right;\r\n @Input() size: FieldSizeType | undefined = FieldSize.medium;\r\n @Input() messageSlot: SlotPositionType = SlotPosition.bottom;\r\n\r\n icons = Icons;\r\n passwordStrength: PasswordStrength = PasswordStrength.None;\r\n type = FieldType.password;\r\n\r\n constructor(@Optional() @Self() ngControl: NgControl) {\r\n super(ngControl);\r\n }\r\n\r\n valueChange(value: string) {\r\n if (!value) {\r\n this.passwordStrength = 0;\r\n return;\r\n }\r\n\r\n const result = zxcvbn(value);\r\n this.passwordStrength = result.score;\r\n\r\n if (!this.formControl) {\r\n return;\r\n }\r\n\r\n if (result.score < this.requiredStrength) {\r\n this.formControl.setErrors({passwordLowStrength: true}, {emitEvent: false})\r\n }\r\n }\r\n}\r\n","<gov-form-control class=\"mb-3\">\r\n @if (label) {\r\n <gov-form-label \r\n [slot]=\"labelSlot\"\r\n [size]=\"size | govSize\"\r\n >\r\n {{ label }}\r\n </gov-form-label>\r\n }\r\n <gov-form-group>\r\n @if (feedback) {\r\n <gov-form-password-power [power]=\"passwordStrength - 1\" />\r\n }\r\n <gov-form-input\r\n [formControl]=\"formControl\"\r\n [attr.input-type]=\"type\"\r\n [placeholder]=\"placeholder\"\r\n [invalid]=\"ngControl?.errors\"\r\n (ngModelChange)=\"valueChange($event)\"\r\n />\r\n </gov-form-group>\r\n <v-validation-message [ngControl]=\"ngControl\"></v-validation-message>\r\n @if (message) {\r\n <gov-form-message \r\n [slot]=\"messageSlot\" \r\n color=\"neutral\"\r\n >\r\n {{ message }}\r\n </gov-form-message>\r\n }\r\n</gov-form-control>\r\n","import { CommonModule } from '@angular/common';\r\nimport {\r\n ChangeDetectionStrategy,\r\n Component,\r\n Input,\r\n Optional,\r\n Self,\r\n} from '@angular/core';\r\nimport {\r\n ControlValueAccessor,\r\n NgControl,\r\n ReactiveFormsModule,\r\n} from '@angular/forms';\r\nimport { RouterModule } from '@angular/router';\r\nimport { GovDesignSystemModule } from '@gov-design-system-ce/angular';\r\nimport {\r\n BaseFormInputComponent,\r\n FieldSize,\r\n FieldSizeType,\r\n RADIOBUTTON_COMPONENT_TOKEN,\r\n RadiobuttonCore,\r\n RadioButtonItem,\r\n} from '@verisoft/ui-core';\r\nimport { Icons } from '../../icons';\r\nimport { GovSizePipe } from '../../pipes';\r\nimport { ErrorComponent } from '../errors';\r\n\r\n@Component({\r\n selector: \"v-radiobutton\",\r\n standalone: true,\r\n styleUrl: \"./radiobutton.component.scss\",\r\n templateUrl: './radiobutton.component.html',\r\n imports: [\r\n CommonModule, GovDesignSystemModule, RouterModule, ReactiveFormsModule, GovSizePipe, ErrorComponent\r\n ],\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n providers: [\r\n {\r\n provide: RADIOBUTTON_COMPONENT_TOKEN,\r\n useExisting: RadioButtonComponent,\r\n },\r\n ],\r\n})\r\n\r\nexport class RadioButtonComponent<T>\r\n extends BaseFormInputComponent\r\n implements ControlValueAccessor, RadiobuttonCore<T>\r\n{\r\n @Input() radioGroupName = Math.random().toString();\r\n @Input() items: RadioButtonItem<T>[] = [];\r\n @Input() size: FieldSizeType = FieldSize.medium;\r\n\r\n icons = Icons;\r\n\r\n constructor(@Optional() @Self() ngControl: NgControl) {\r\n super(ngControl);\r\n }\r\n}\r\n","<gov-form-control>\r\n <gov-form-radio-group [formControl]=\"formControl\">\r\n @if (items) { @for(item of items; track item) {\r\n <gov-form-radio\r\n [size]=\"size | govSize\"\r\n [value]=\"item.value\"\r\n [required]=\"required\"\r\n [identifier]=\"item.id\"\r\n [name]=\"radioGroupName\"\r\n [invalid]=\"ngControl?.errors\"\r\n [disabled]=\"formControl.disabled\"\r\n >\r\n <gov-form-label\r\n [size]=\"size | govSize\"\r\n slot=\"label\"\r\n >\r\n {{ label }}\r\n </gov-form-label>\r\n </gov-form-radio>\r\n } }\r\n </gov-form-radio-group>\r\n <v-validation-message [ngControl]=\"ngControl\"></v-validation-message>\r\n</gov-form-control>\r\n","import { CommonModule } from \"@angular/common\";\r\nimport { ChangeDetectionStrategy, Component, Input, Optional, Self } from \"@angular/core\";\r\nimport { ReactiveFormsModule, NgControl } from \"@angular/forms\";\r\nimport { GovDesignSystemModule } from \"@gov-design-system-ce/angular\";\r\nimport { SWITCH_COMPONENT_TOKEN, SwitchCore, BaseFormInputComponent, FieldSizeType, FieldSize } from \"@verisoft/ui-core\";\r\nimport { Icons } from \"../../icons\";\r\nimport { GovSizePipe } from \"../../pipes\";\r\nimport { ErrorComponent } from \"../errors\";\r\n\r\n@Component({\r\n selector: \"v-switch\",\r\n standalone: true,\r\n styleUrl: \"./switch.component.scss\",\r\n templateUrl: './switch.component.html',\r\n imports: [\r\n CommonModule, GovDesignSystemModule, ReactiveFormsModule, GovSizePipe, ErrorComponent\r\n ],\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n providers: [{\r\n provide: SWITCH_COMPONENT_TOKEN,\r\n useExisting: SwitchComponent,\r\n }],\r\n})\r\nexport class SwitchComponent\r\n extends BaseFormInputComponent\r\n implements SwitchCore\r\n{\r\n @Input() size: FieldSizeType = FieldSize.medium;\r\n @Input() noLabel = false;\r\n @Input() name!: string;\r\n\r\n icons = Icons;\r\n\r\n constructor(@Optional() @Self() ngControl: NgControl) {\r\n super(ngControl);\r\n }\r\n}","<gov-form-control>\r\n <gov-form-switch\r\n [formControl]=\"formControl\"\r\n [size]=\"size | govSize\"\r\n [required]=\"required\"\r\n [name]=\"name\"\r\n [invalid]=\"ngControl?.errors\"\r\n >\r\n @if (label && !noLabel) {\r\n <gov-form-label [size]=\"size\" slot=\"label\">\r\n {{ label }}\r\n </gov-form-label>\r\n }\r\n </gov-form-switch>\r\n <v-validation-message [ngControl]=\"ngControl\"></v-validation-message>\r\n</gov-form-control>\r\n","import { CommonModule } from '@angular/common';\r\nimport {\r\n ChangeDetectionStrategy,\r\n Component,\r\n EventEmitter,\r\n Input,\r\n Output,\r\n} from '@angular/core';\r\nimport { ReactiveFormsModule } from '@angular/forms';\r\nimport { GovDesignSystemModule } from '@gov-design-system-ce/angular';\r\nimport { FieldSizeType, FieldSize } from '@verisoft/ui-core';\r\nimport { Icons } from '../../icons';\r\nimport { GovSizePipe } from '../../pipes';\r\n\r\n@Component({\r\n selector: 'v-search',\r\n standalone: true,\r\n imports: [\r\n CommonModule,\r\n GovDesignSystemModule,\r\n GovSizePipe,\r\n ReactiveFormsModule,\r\n],\r\n templateUrl: './search.component.html',\r\n styleUrl: './search.component.scss',\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class SearchComponent {\r\n\r\n @Input() placeholder!: string;\r\n\r\n @Input() size: FieldSizeType = FieldSize.medium;\r\n\r\n @Output() searchTerm = new EventEmitter<string>();\r\n\r\n value!: string;\r\n\r\n icons = Icons\r\n\r\n setValue(event: any) {\r\n this.value = event.detail.value;\r\n }\r\n\r\n search() {\r\n this.searchTerm.emit(this.value);\r\n }\r\n}\r\n","<gov-form-control>\r\n <gov-form-group>\r\n <gov-form-search color=\"neutral\">\r\n <gov-form-input \r\n [placeholder]=\"placeholder\"\r\n [size]=\"size | govSize\"\r\n slot=\"input\"\r\n (gov-input)=\"setValue($event)\"\r\n />\r\n <gov-button\r\n [size]=\"size | govSize\"\r\n color=\"primary\"\r\n type=\"solid\"\r\n slot=\"button\"\r\n (gov-click)=\"search()\"\r\n >\r\n <gov-icon\r\n [name]=\"icons.search\"\r\n />\r\n </gov-button>\r\n </gov-form-search>\r\n </gov-form-group>\r\n</gov-form-control>","import { CommonModule } from '@angular/common';\r\nimport {\r\n ChangeDetectionStrategy,\r\n Component,\r\n Input,\r\n NO_ERRORS_SCHEMA,\r\n} from '@angular/core';\r\nimport { GovDesignSystemModule } from '@gov-design-system-ce/angular';\r\nimport { TranslateModule } from '@ngx-translate/core';\r\nimport {\r\n FieldSizeType,\r\n FieldSize,\r\n SECTION_COMPONENT_TOKEN,\r\n SectionCore,\r\n} from '@verisoft/ui-core';\r\nimport { Icons } from '../../icons';\r\nimport { GovSizePipe } from '../../pipes';\r\n\r\n@Component({\r\n selector: 'v-section',\r\n standalone: true,\r\n imports: [\r\n CommonModule,\r\n GovDesignSystemModule,\r\n GovSizePipe,\r\n TranslateModule,\r\n ],\r\n templateUrl: './section.component.html',\r\n styleUrl: './section.component.scss',\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n providers: [\r\n {\r\n provide: SECTION_COMPONENT_TOKEN,\r\n useExisting: SectionComponent,\r\n },\r\n ],\r\n schemas: [\r\n NO_ERRORS_SCHEMA\r\n ],\r\n})\r\nexport class SectionComponent\r\n implements SectionCore\r\n{\r\n @Input() title!: string;\r\n @Input() badge!: string;\r\n @Input() showContent = false;\r\n @Input() backgroundColor!: string;\r\n @Input() annotation!: string;\r\n @Input() identifier!: string;\r\n @Input() icon!: string;\r\n @Input() iconType!: string;\r\n @Input() size: FieldSizeType = FieldSize.medium;\r\n @Input() badgeSlot: 'prefix' | 'sufix' = 'sufix';\r\n @Input() open = false;\r\n\r\n icons = Icons;\r\n}\r\n","<gov-accordion>\r\n <gov-accordion-item \r\n [size]=\"size | govSize\"\r\n [identifier]=\"identifier\"\r\n [open]=\"open\"\r\n >\r\n @if (icon) {\r\n <gov-icon\r\n [name]=\"icons.chevronDown\"\r\n />\r\n } @if (title) {\r\n <h2 slot=\"label\">{{ title | translate }}</h2>\r\n } @if (badge) {\r\n <gov-badge \r\n inverse=\"true\"\r\n size=\"s\"\r\n [slot]=\"badgeSlot\"\r\n >\r\n {{ badge }}\r\n </gov-badge>\r\n } @if (annotation) {\r\n <p slot=\"annotation\">{{ annotation | translate }}</p>\r\n }\r\n <ng-content></ng-content>\r\n </gov-accordion-item>\r\n</gov-accordion>","import { CommonModule } from '@angular/common';\r\nimport { Component, EventEmitter, inject, Input, Output } from '@angular/core';\r\nimport { RouterModule } from '@angular/router';\r\nimport { GovDesignSystemModule } from '@gov-design-system-ce/angular';\r\nimport {\r\n MenuItem,\r\n SIDE_MENU_COMPONENT_TOKEN,\r\n SideMenuCore,\r\n SideMenuService,\r\n} from '@verisoft/ui-core';\r\nimport { Icons } from '../../icons';\r\n\r\n@Component({\r\n selector: 'v-side-menu',\r\n standalone: true,\r\n imports: [CommonModule, RouterModule, GovDesignSystemModule],\r\n templateUrl: './side-menu.component.html',\r\n styleUrl: './side-menu.component.scss',\r\n providers: [\r\n {\r\n provide: SIDE_MENU_COMPONENT_TOKEN,\r\n useExisting: SideMenuComponent,\r\n },\r\n ],\r\n})\r\nexport class SideMenuComponent implements SideMenuCore {\r\n menuService = inject(SideMenuService);\r\n\r\n @Input() items: MenuItem[] = [];\r\n\r\n @Input() logoUrl = '';\r\n\r\n @Input() userName!: string;\r\n\r\n @Input() userRole!: any | any[] | undefined;\r\n\r\n @Output() minimalized = new EventEmitter<boolean>();\r\n\r\n @Output() itemSelected = new EventEmitter<MenuItem>();\r\n\r\n icons = Icons;\r\n}\r\n","<div class=\"gov-sidemenu-inner\">\r\n <div class=\"gov-category-list__col gov-category-list__categories\">\r\n <div class=\"gov-category-list__col-inner\">\r\n <ul class=\"gov-list--plain gov-category-list__nav\">\r\n @for (item of items; track item) {\r\n @for (child of item.children; track child) {\r\n <li class=\"gov-category-list__nav-item\">\r\n <a \r\n class=\"gov-category-list__nav-link\"\r\n [routerLink]=\"child.url\"\r\n routerLinkActive=\"gov-category-list__nav-active\"\r\n title=\"{{child.label}}\"\r\n >\r\n <span class=\"gov-link gov-link--standalone\">{{child.label}}</span>\r\n @if (child.children) {\r\n <gov-icon [name]=\"icons.chevronDown\" />\r\n }\r\n </a>\r\n </li>\r\n }\r\n }\r\n </ul>\r\n </div>\r\n </div>\r\n</div>","import { NgModule, ModuleWithProviders } from '@angular/core';\r\nimport {\r\n MENU_TOKEN,\r\n MenuItem,\r\n SIDE_MENU_COMPONENT_TOKEN,\r\n SIDE_MENU_STATE_TOKEN,\r\n SideMenuModuleConfig,\r\n SideMenuProviderService,\r\n UnsubscribeComponent,\r\n} from '@verisoft/ui-core';\r\nimport { SideMenuComponent } from './side-menu.component';\r\n\r\n@NgModule({\r\n providers: [\r\n SideMenuProviderService,\r\n {\r\n provide: SIDE_MENU_COMPONENT_TOKEN,\r\n useExisting: SideMenuComponent,\r\n },\r\n {\r\n provide: SIDE_MENU_STATE_TOKEN,\r\n useValue: localStorage.getItem('SideMenuStateToken') ?? {\r\n expanded: [],\r\n minimalized: false,\r\n },\r\n },\r\n ],\r\n})\r\nexport class SideMenuModule extends UnsubscribeComponent {\r\n constructor(private readonly service: SideMenuProviderService) {\r\n super();\r\n }\r\n\r\n static forRoot(\r\n config?: SideMenuModuleConfig\r\n ): ModuleWithProviders<SideMenuModule> {\r\n const moduleWithProvider: ModuleWithProviders<SideMenuModule> = {\r\n ngModule: SideMenuModule,\r\n };\r\n\r\n if (config?.items) {\r\n moduleWithProvider.providers = [\r\n {\r\n provide: MENU_TOKEN,\r\n useValue: config.items,\r\n },\r\n ];\r\n }\r\n\r\n return moduleWithProvider;\r\n }\r\n\r\n static forChild(menu: MenuItem[]): ModuleWithProviders<SideMenuModule> {\r\n return {\r\n ngModule: SideMenuModule,\r\n providers: [\r\n {\r\n provide: MENU_TOKEN,\r\n useValue: menu,\r\n },\r\n ],\r\n };\r\n }\r\n}\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, Inject, Input, Optional } from '@angular/core';\r\nimport { GovDesignSystemModule } from '@gov-design-system-ce/angular';\r\nimport { SNACKBAR_COMPONENT_TOKEN, SnackbarCore } from '@verisoft/ui-core';\r\nimport { Icons } from '../../icons';\r\nimport { SnackbarConfig } from './snackbar.model';\r\n\r\n@Component({\r\n selector: 'v-snackbar',\r\n standalone: true,\r\n imports: [CommonModule, GovDesignSystemModule],\r\n templateUrl: './snackbar.component.html',\r\n styleUrl: './snackbar.component.scss',\r\n providers: [\r\n {\r\n provide: SNACKBAR_COMPONENT_TOKEN,\r\n useExisting: SnackbarComponent,\r\n },\r\n ],\r\n})\r\nexport class SnackbarComponent \r\n implements SnackbarCore\r\n{\r\n @Input({required: true}) message!: string;\r\n\r\n @Input() icon!: string;\r\n\r\n @Input() closeLabel!: string;\r\n\r\n @Input() color: \"error\" | \"neutral\" | \"primary\" | \"success\" | \"warning\" = \"primary\";\r\n\r\n @Input() gravity: \"bottom\" | \"top\" = \"top\";\r\n\r\n @Input() position: \"center\" | \"left\" | \"right\" = \"right\";\r\n\r\n @Input() time = 4000;\r\n\r\n @Input() type: \"bold\" | \"subtle\" = \"subtle\";\r\n\r\n icons = Icons;\r\n\r\n constructor(\r\n @Optional() @Inject('TOAST_CONFIG') public config: SnackbarConfig,\r\n ) { }\r\n}\r\n","<gov-toast\r\n [closeLabel]=\"config.closeLabel ?? closeLabel\"\r\n [color]=\"config.color || color\"\r\n [gravity]=\"config.gravity || gravity\"\r\n [position]=\"config.position || position\"\r\n [time]=\"config.time ?? time\"\r\n [type]=\"config.type || type\"\r\n>\r\n @if (config.icon || icon) {\r\n <gov-icon\r\n [name]=\"config.icon || icon\"\r\n />\r\n } {{ config.message || message }}\r\n</gov-toast>\r\n","import { Overlay, OverlayRef } from '@angular/cdk/overlay';\r\nimport * as portal from '@angular/cdk/portal';\r\nimport { Injectable, Injector } from '@angular/core';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { SnackbarComponent } from '../snackbar.component';\r\nimport { SnackbarConfig } from '../snackbar.model';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class SnackbarService {\r\n constructor(\r\n private overlay: Overlay,\r\n private translate: TranslateService,\r\n private injector: Injector\r\n ) {}\r\n\r\n showSuccess(message: string, icon?: string) {\r\n this.showToast({\r\n message: this.translate.instant(message),\r\n icon: icon,\r\n color: 'success',\r\n });\r\n }\r\n\r\n showInfo(message: string, icon?: string) {\r\n this.showToast({\r\n message: this.translate.instant(message),\r\n icon: icon,\r\n color: 'primary',\r\n });\r\n }\r\n\r\n showWarn(message: string, icon?: string) {\r\n this.showToast({\r\n message: this.translate.instant(message),\r\n icon: icon,\r\n color: 'warning',\r\n });\r\n }\r\n\r\n showError(message: string, icon?: string) {\r\n this.showToast({\r\n message: this.translate.instant(message),\r\n icon: icon,\r\n color: 'error',\r\n });\r\n }\r\n\r\n private showToast(config: SnackbarConfig) {\r\n const positionStrategy = this.overlay\r\n .position()\r\n .global();\r\n\r\n const overlayRef: OverlayRef = this.overlay.create({\r\n positionStrategy,\r\n hasBackdrop: false,\r\n scrollStrategy: this.overlay.scrollStrategies.noop(),\r\n });\r\n\r\n const toastPortal = new portal.ComponentPortal(SnackbarComponent, null, this.createInjector(config));\r\n overlayRef.attach(toastPortal);\r\n }\r\n\r\n private createInjector(config: any) {\r\n return Injector.create({\r\n providers: [\r\n { provide: 'TOAST_CONFIG', useValue: config },\r\n ],\r\n parent: this.injector,\r\n });\r\n }\r\n}\r\n","import { CommonModule } from '@angular/common';\r\nimport {\r\n ChangeDetectionStrategy,\r\n Component,\r\n Input,\r\n Optional,\r\n Self,\r\n} from '@angular/core';\r\nimport {\r\n ControlValueAccessor,\r\n NgControl,\r\n ReactiveFormsModule,\r\n} from '@angular/forms';\r\nimport { GovDesignSystemModule } from '@gov-design-system-ce/angular';\r\nimport { TranslateModule } from '@ngx-translate/core';\r\nimport {\r\n TextfieldCore,\r\n FieldType,\r\n BaseFormInputComponent,\r\n FieldSizeType,\r\n FieldSize,\r\n IconPositionType,\r\n IconPosition,\r\n SlotPositionType,\r\n SlotPosition,\r\n TEXTAREA_COMPONENT_TOKEN,\r\n} from '@verisoft/ui-core';\r\nimport { Icons } from '../../icons';\r\nimport { GovSizePipe } from '../../pipes';\r\nimport { ErrorComponent } from '../errors';\r\n@Component({\r\n selector: 'v-textarea',\r\n standalone: true,\r\n imports: [\r\n CommonModule,\r\n ReactiveFormsModule,\r\n GovDesignSystemModule,\r\n GovSizePipe,\r\n ErrorComponent,\r\n TranslateModule,\r\n ],\r\n templateUrl: './textarea.component.html',\r\n styleUrl: './textarea.component.scss',\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n providers: [\r\n {\r\n provide: TEXTAREA_COMPONENT_TOKEN,\r\n useExisting: TextareaComponent,\r\n },\r\n ],\r\n})\r\nexport class TextareaComponent\r\n extends BaseFormInputComponent\r\n implements ControlValueAccessor, TextfieldCore\r\n{\r\n @Input() floatLabel!: boolean;\r\n @Input() type = FieldType.text;\r\n @Input() minlength = 0;\r\n @Input() maxlength = 524288;\r\n @Input() prefix!: string;\r\n @Input() sufix!: string;\r\n @Input() message!: string;\r\n @Input() name! : string;\r\n @Input() role! : string;\r\n @Input() size: FieldSizeType = FieldSize.medium;\r\n @Input() icon!: string;\r\n @Input() iconPos: IconPositionType = IconPosition.right;\r\n @Input() labelSlot: SlotPositionType = SlotPosition.top;\r\n @Input() messageSlot: SlotPositionType = SlotPosition.bottom;\r\n @Input() rows = 0;\r\n @Input() cols = 0;\r\n\r\n icons = Icons;\r\n\r\n constructor(@Optional() @Self() ngControl: NgControl) {\r\n super(ngControl);\r\n }\r\n}\r\n","<gov-form-control class=\"mb-3\">\r\n @if (label) {\r\n <gov-form-label \r\n [slot]=\"labelSlot\"\r\n [size]=\"size | govSize\"\r\n >\r\n {{ label | translate }}\r\n </gov-form-label>\r\n }\r\n <gov-form-group>\r\n <gov-form-input [type]=\"type\"\r\n [formControl]=\"formControl\"\r\n [minlength]=\"minlength\" \r\n [maxlength]=\"maxlength\" \r\n [size]='size | govSize' \r\n [name]='name' \r\n [role]='role'\r\n [required]=\"required\"\r\n [readonly]=\"readonly\"\r\n [invalid]=\"ngControl?.errors ? true : false\"\r\n [multiline]=\"true\"\r\n [rows]=\"rows\"\r\n [cols]=\"cols\"\r\n >\r\n @if (icon) {\r\n <gov-icon\r\n [name]=\"icon\"\r\n [slot]=\"iconPos === 'left' ? 'icon-start' : 'icon-end'\"\r\n />\r\n } @if (prefix) {\r\n <p slot=\"prefix\">\r\n {{ prefix }}\r\n </p>\r\n } @if (sufix) {\r\n <p slot=\"sufix\">\r\n {{ sufix }}\r\n </p>\r\n }\r\n </gov-form-input>\r\n </gov-form-group>\r\n <v-validation-message [ngControl]=\"ngControl\"></v-validation-message>\r\n @if (message) {\r\n <gov-form-message \r\n [slot]=\"messageSlot\" \r\n color=\"neutral\"\r\n >\r\n {{ message | translate }}\r\n </gov-form-message>\r\n }\r\n</gov-form-control>\r\n","import { CommonModule } from '@angular/common';\r\nimport {\r\n ChangeDetectionStrategy,\r\n Component,\r\n Input,\r\n Optional,\r\n Self,\r\n} from '@angular/core';\r\nimport {\r\n ControlValueAccessor,\r\n NgControl,\r\n ReactiveFormsModule,\r\n} from '@angular/forms';\r\nimport { GovDesignSystemModule } from '@gov-design-system-ce/angular';\r\nimport {\r\n BaseFormInputComponent,\r\n FieldSize,\r\n FieldSizeType,\r\n FieldType,\r\n IconPositionType,\r\n IconPosition,\r\n FormFieldCore,\r\n FORM_FIELD_COMPONENT_TOKEN,\r\n FieldTypeType,\r\n SlotPosition,\r\n SlotPositionType,\r\n} from '@verisoft/ui-core';\r\nimport { Icons } from '../../icons';\r\nimport { GovSizePipe } from '../../pipes';\r\nimport { ErrorComponent } from '../errors';\r\n\r\n@Component({\r\n selector: 'v-form-field',\r\n standalone: true,\r\n imports: [\r\n CommonModule,\r\n ReactiveFormsModule,\r\n GovDesignSystemModule,\r\n GovSizePipe,\r\n ErrorComponent,\r\n ],\r\n templateUrl: './form-field.component.html',\r\n styleUrl: './form-field.component.scss',\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n providers: [\r\n {\r\n provide: FORM_FIELD_COMPONENT_TOKEN,\r\n useExisting: FormFieldComponent,\r\n },\r\n ],\r\n})\r\nexport class FormFieldComponent\r\n extends BaseFormInputComponent\r\n implements ControlValueAccessor, FormFieldCore\r\n{\r\n constructor(@Optional() @Self() ngControl: NgControl) {\r\n super(ngControl);\r\n }\r\n\r\n @Input() floatLabel!: boolean;\r\n @Input() type: FieldTypeType = FieldType.text;\r\n @Input() minlength = 0;\r\n @Input() maxlength = 524288;\r\n @Input() prefix!: string;\r\n @Input() sufix!: string;\r\n @Input() message!: string;\r\n @Input() name! : string;\r\n @Input() role! : string;\r\n @Input() autocorrect: 'on' | 'off' = 'on';\r\n @Input() size: FieldSizeType | undefined = FieldSize.medium;\r\n @Input() icon!: string;\r\n @Input() iconPos: IconPositionType = IconPosition.right;\r\n @Input() display!: 'flex' | 'block';\r\n @Input() labelSlot: SlotPositionType = SlotPosition.top;\r\n @Input() messageSlot: SlotPositionType = SlotPosition.bottom;\r\n\r\n icons = Icons;\r\n}\r\n","<gov-form-control>\r\n @if (label) {\r\n <gov-form-label \r\n [slot]=\"labelSlot\"\r\n [size]=\"size | govSize\"\r\n >\r\n {{ label }}\r\n </gov-form-label>\r\n }\r\n <gov-form-group>\r\n <ng-content />\r\n </gov-form-group>\r\n <v-validation-message [ngControl]=\"ngControl\"></v-validation-message>\r\n</gov-form-control>","import { CommonModule } from '@angular/common';\r\nimport {\r\n ChangeDetectionStrategy,\r\n Component,\r\n Input,\r\n Optional,\r\n Self,\r\n} from '@angular/core';\r\nimport {\r\n ControlValueAccessor,\r\n NgControl,\r\n ReactiveFormsModule,\r\n} from '@angular/forms';\r\nimport { GovDesignSystemModule } from '@gov-design-system-ce/angular';\r\nimport {\r\n BaseFormInputComponent,\r\n INPUT_GROUP_COMPONENT_TOKEN,\r\n InputGroupCore,\r\n InputGroupItem,\r\n FieldSizeType,\r\n FieldSize,\r\n IconPositionType,\r\n IconPosition,\r\n SlotPositionType,\r\n SlotPosition,\r\n FieldTypeType,\r\n FieldType,\r\n} from '@verisoft/ui-core';\r\nimport { Icons } from '../../icons';\r\nimport { GovSizePipe } from '../../pipes';\r\nimport { ErrorComponent } from '../errors';\r\n\r\n@Component({\r\n selector: 'v-input-group',\r\n standalone: true,\r\n imports: [\r\n CommonModule,\r\n ReactiveFormsModule,\r\n GovDesignSystemModule,\r\n GovSizePipe,\r\n ErrorComponent,\r\n ],\r\n templateUrl: './input-group.component.html',\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n providers: [\r\n {\r\n provide: INPUT_GROUP_COMPONENT_TOKEN,\r\n useExisting: InputGroupComponent,\r\n },\r\n ],\r\n})\r\nexport class InputGroupComponent\r\n extends BaseFormInputComponent\r\n implements ControlValueAccessor, InputGroupCore\r\n{\r\n @Input() floatLabel!: boolean;\r\n @Input() type: FieldTypeType = FieldType.text;\r\n @Input() minlength = 0;\r\n @Input() items!: InputGroupItem[];\r\n @Input() prefix!: string;\r\n @Input() sufix!: string;\r\n @Input() maxlength = 524288;\r\n @Input() name! : string;\r\n @Input() role! : string;\r\n @Input() message! : string;\r\n @Input() size: FieldSizeType | undefined = FieldSize.medium;\r\n @Input() icon!: string;\r\n @Input() iconPos: IconPositionType = IconPosition.right;\r\n @Input() labelSlot: SlotPositionType = SlotPosition.top;\r\n @Input() messageSlot: SlotPositionType = SlotPosition.bottom;\r\n\r\n icons = Icons;\r\n \r\n constructor(@Optional() @Self() ngControl: NgControl) {\r\n super(ngControl);\r\n }\r\n}\r\n","<gov-form-control>\r\n @if (label) {\r\n <gov-form-label \r\n [slot]=\"labelSlot\"\r\n [size]=\"size | govSize\"\r\n >\r\n {{ label }}\r\n </gov-form-label>\r\n }\r\n @if(prefix) {\r\n <gov-icon\r\n [name]=\"name\"\r\n />\r\n }\r\n <gov-form-input \r\n input-type=\"input-type\"\r\n [formControl]=\"formControl\"\r\n [minlength]=\"minlength\" \r\n [maxlength]=\"maxlength\" \r\n [size]='size | govSize' \r\n [name]='name' \r\n [role]='role'\r\n [required]=\"required\"\r\n [readonly]=\"readonly\"\r\n [invalid]=\"ngControl?.errors ? true : false\"\r\n />\r\n @if(sufix) {\r\n <gov-icon\r\n [name]=\"name\"\r\n />\r\n }\r\n <v-validation-message [ngControl]=\"ngControl\"></v-validation-message>\r\n @if (message) {\r\n <gov-form-message \r\n [slot]=\"messageSlot\" \r\n color=\"neutral\"\r\n >\r\n {{ message }}\r\n </gov-form-message>\r\n }\r\n</gov-form-control>\r\n","import { CommonModule } from '@angular/common';\r\nimport {\r\n ChangeDetectionStrategy,\r\n Component,\r\n Input,\r\n Optional,\r\n Self,\r\n} from '@angular/core';\r\nimport {\r\n ControlValueAccessor,\r\n NgControl,\r\n ReactiveFormsModule,\r\n} from '@angular/forms';\r\nimport { GovDesignSystemModule } from '@gov-design-system-ce/angular';\r\nimport {\r\n NumberInputCore,\r\n NUMBER_INPUT_COMPONENT_TOKEN,\r\n FieldType,\r\n BaseFormInputComponent,\r\n FieldSizeType,\r\n FieldSize,\r\n IconPositionType,\r\n IconPosition,\r\n SlotPositionType,\r\n SlotPosition,\r\n FieldTypeType,\r\n} from '@verisoft/ui-core';\r\nimport { Icons } from '../../icons';\r\nimport { GovSizePipe } from '../../pipes';\r\nimport { ErrorComponent } from '../errors';\r\n@Component({\r\n selector: 'v-number-input',\r\n standalone: true,\r\n imports: [\r\n CommonModule,\r\n ReactiveFormsModule,\r\n GovDesignSystemModule,\r\n GovSizePipe,\r\n ErrorComponent,\r\n ],\r\n templateUrl: './number-input.component.html',\r\n styleUrl: './number-input.component.scss',\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n providers: [\r\n {\r\n provide: NUMBER_INPUT_COMPONENT_TOKEN,\r\n useExisting: NumberInputComponent,\r\n },\r\n ],\r\n})\r\n\r\nexport class NumberInputComponent\r\n extends BaseFormInputComponent\r\n implements ControlValueAccessor, NumberInputCore\r\n{ \r\n @Input() mode!: string;\r\n @Input() currency!: string;\r\n @Input() min!: number;\r\n @Input() max!: number;\r\n @Input() step = 1;\r\n @Input() floatLabel!: boolean;\r\n @Input() type: FieldTypeType = FieldType.number;\r\n @Input() minlength = 0;\r\n @Input() maxlength = 524288;\r\n @Input() prefix!: string;\r\n @Input() sufix!: string;\r\n @Input() message!: string;\r\n @Input() name! : string;\r\n @Input() role! : string;\r\n @Input() size: FieldSizeType | undefined = FieldSize.medium;\r\n @Input() icon!: string;\r\n @Input() iconPos: IconPositionType = IconPosition.right;\r\n @Input() labelSlot: SlotPositionType = SlotPosition.top;\r\n @Input() errorSlot: SlotPositionType = SlotPosition.bottom;\r\n @Input() messageSlot: SlotPositionType = SlotPosition.bottom;\r\n\r\n icons = Icons;\r\n\r\n constructor(@Optional() @Self() ngControl: NgControl) {\r\n super(ngControl);\r\n }\r\n}\r\n","<gov-form-control>\r\n @if (label) {\r\n <gov-form-label \r\n [slot]=\"labelSlot\"\r\n [size]=\"size | govSize\"\r\n >\r\n {{ label }}\r\n </gov-form-label>\r\n }\r\n <gov-form-group>\r\n <gov-form-input \r\n [attr.input-type]=\"type\"\r\n [formControl]=\"formControl\"\r\n [minlength]=\"minlength\" \r\n [maxlength]=\"maxlength\" \r\n [size]='size | govSize' \r\n [name]='name' \r\n [role]='role'\r\n [required]=\"required\"\r\n [readonly]=\"readonly\"\r\n [invalid]=\"ngControl?.errors ? true : false\"\r\n >\r\n @if (icon) {\r\n <gov-icon\r\n [name]=\"icon\"\r\n [slot]=\"iconPos === 'left' ? 'icon-start' : 'icon-end'\"\r\n />\r\n } @if (prefix) {\r\n <p slot=\"prefix\">\r\n {{ prefix }}\r\n </p>\r\n } @if (sufix) {\r\n <p slot=\"sufix\">\r\n {{ sufix }}\r\n </p>\r\n }\r\n </gov-form-input>\r\n <v-validation-message [ngControl]=\"ngControl\"></v-validation-message>\r\n @if (message) {\r\n <gov-form-message \r\n [slot]=\"messageSlot\" \r\n color=\"neutral\"\r\n >\r\n {{ message }}\r\n </gov-form-message>\r\n }\r\n </gov-form-group>\r\n</gov-form-control>\r\n","import { CommonModule } from '@angular/common';\r\nimport {\r\n ChangeDetectionStrategy,\r\n Component,\r\n Input,\r\n} from '@angular/core';\r\nimport { GovDesignSystemModule } from '@gov-design-system-ce/angular';\r\nimport { TranslateModule } from '@ngx-translate/core';\r\nimport { PageHeaderCore } from '@verisoft/ui-core';\r\n\r\n@Component({\r\n selector: 'v-page-header',\r\n standalone: true,\r\n imports: [\r\n CommonModule,\r\n GovDesignSystemModule,\r\n TranslateModule,\r\n ],\r\n templateUrl: './page-header.component.html',\r\n styleUrl: './page-header.component.scss',\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class PageHeaderComponent implements PageHeaderCore {\r\n @Input() title = '';\r\n\r\n @Input() subtitle: string | undefined;\r\n\r\n @Input() showBackButton: boolean | undefined;\r\n}\r\n","<div class=\"d-flex gap-3 align-items-center\">\r\n <h2>{{ title | translate }}</h2>\r\n</div>","import { CommonModule } from '@angular/common';\r\nimport { ChangeDetectionStrategy, Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\r\nimport { GovDesignSystemModule } from '@gov-design-system-ce/angular';\r\nimport {\r\n StepperCore,\r\n STEPPER_COMPONENT_TOKEN,\r\n StepperItem,\r\n FieldSizeType,\r\n FieldSize,\r\n LayoutType,\r\n LayoutTypeType,\r\n} from '@verisoft/ui-core';\r\nimport { GovSizePipe } from '../../pipes';\r\nimport { ButtonComponent } from '../button';\r\n@Component({\r\n selector: 'v-stepper',\r\n standalone: true,\r\n imports: [\r\n CommonModule,\r\n ButtonComponent,\r\n GovDesignSystemModule,\r\n GovSizePipe,\r\n],\r\n templateUrl: './stepper.component.html',\r\n styleUrl: './stepper.component.scss',\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n providers: [\r\n { provide: STEPPER_COMPONENT_TOKEN, useExisting: StepperComponent },\r\n ],\r\n})\r\nexport class StepperComponent\r\n implements StepperCore, OnInit\r\n{\r\n @Input() items: StepperItem[] = [];\r\n @Input() size: FieldSizeType | undefined = FieldSize.medium;\r\n @Input() icon!: string;\r\n @Input() prefix!: string;\r\n @Input() annotation!: string;\r\n @Input() label!: string;\r\n @Input() layout: LayoutTypeType = LayoutType.horizontal;\r\n @Output() activeIndexChange = new EventEmitter<number>();\r\n\r\n steps = 0;\r\n currentStep = 0;\r\n\r\n ngOnInit(): void {\r\n this.steps = this.items.length;\r\n }\r\n\r\n previousStep(): void {\r\n if (this.currentStep > 0) {\r\n this.currentStep--;\r\n }\r\n }\r\n\r\n nextStep(): void {\r\n if (this.currentStep < this.items.length - 1) {\r\n this.currentStep++;\r\n }\r\n }\r\n}\r\n","<gov-stepper \r\n [ngClass]=\"layout === 'vertical' ? 'd-block' : 'd-flex justify-content-between'\"\r\n [size]=\"size | govSize\"\r\n>\r\n @for (item of items; track item; let index = $index) {\r\n <gov-stepper-item\r\n [ngClass]=\"{ 'active-step': index === currentStep }\"\r\n >\r\n <span \r\n slot=\"prefix\"\r\n [ngStyle]=\"{ 'background-color': index === currentStep ? 'var(--gov-color-primary-300)' : 'var(--gov-color-primary)' }\"\r\n >\r\n {{ item.prefix }}\r\n </span>\r\n <p slot=\"headline\">{{ item.header }}</p>\r\n <p slot=\"annotation\">{{ item.annotation }}</p>\r\n </gov-stepper-item>\r\n }\r\n</gov-stepper>\r\n<div class=\"d-flex pt-4 justify-content-between\">\r\n @if (currentStep > 0) {\r\n <v-button\r\n [label]=\"'Back'\"\r\n [size]=\"size\"\r\n (click)=\"previousStep()\"\r\n />\r\n }\r\n @if (currentStep < steps - 1) {\r\n <v-button\r\n [label]=\"'Next'\"\r\n [size]=\"size\"\r\n (click)=\"nextStep()\"\r\n />\r\n }\r\n</div>","import { Component, Input, ViewChild, TemplateRef } from '@angular/core';\r\nimport { TabViewItemCore } from '@verisoft/ui-core';\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'v-tab-view-item',\r\n template: `<ng-template #contentTemplate>\r\n <ng-content></ng-content>\r\n </ng-template>`\r\n })\r\nexport class TabViewItemComponent \r\nimplements TabViewItemCore {\r\n\r\n @Input() id?: string;\r\n @Input() index?: number;\r\n @Input() disabled = false;\r\n @Input() title!: string;\r\n @Input() content?: string;\r\n @Input() url?: string;\r\n\r\n @ViewChild('contentTemplate', { static: true })\r\n contentTemplate!: TemplateRef<any>;\r\n}\r\n","import {\r\n AfterContentInit,\r\n ChangeDetectorRef,\r\n Component,\r\n ContentChildren,\r\n EventEmitter,\r\n inject,\r\n Input,\r\n Output,\r\n QueryList,\r\n ViewEncapsulation,\r\n} from '@angular/core';\r\nimport { TabViewItemCore } from '@verisoft/ui-core';\r\nimport { TabViewItemComponent } from './tab-view-item.component';\r\n\r\n@Component({\r\n selector: 'v-tab-view',\r\n standalone: false,\r\n templateUrl: './tab-view.component.html',\r\n styleUrls: ['./tab-view.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n})\r\nexport class TabViewComponent implements AfterContentInit {\r\n\r\n @ContentChildren(TabViewItemComponent) tabs!: QueryList<TabViewItemComponent>;\r\n\r\n @Input() highlight = false;\r\n @Input() useRouting = false;\r\n @Input() items: TabViewItemCore[] = [];\r\n @Input() activeIndex = 0;\r\n\r\n @Output() activeIndexChange = new EventEmitter<number>();\r\n\r\n private readonly cd = inject(ChangeDetectorRef);\r\n\r\n ngAfterContentInit(): void {\r\n this.initTabs();\r\n }\r\n\r\n initTabs(): void {\r\n this.items = [...this.tabs.toArray(), ...this.items];\r\n this.cd.detectChanges();\r\n }\r\n\r\n changeTabIndex(index: number) {\r\n if (this.activeIndex !== index) {\r\n this.activeIndex = index;\r\n this.activeIndexChange.emit(this.activeIndex);\r\n }\r\n\r\n this.activeIndexChange.emit(index);\r\n this.cd.detectChanges();\r\n }\r\n\r\n setTabActive(options: TabViewItemComponent[]): void {\r\n options.forEach((_, index) => {\r\n index === this.activeIndex;\r\n });\r\n this.cd.detectChanges();\r\n }\r\n}","<div class=\"gov-tabs\">\r\n <div class=\"gov-tabs__tabs\" role=\"tablist\">\r\n @for (item of items; track item; let index = $index) {\r\n @if (useRouting) {\r\n <button\r\n [attr.index]=\"index\"\r\n class=\"gov-tabs__btn\"\r\n [routerLink]=\"item.url\"\r\n [routerLinkActive]=\"'active'\"\r\n #rls=\"routerLinkActive\"\r\n [attr.aria-selected]=\"rls.isActive\"\r\n [disabled]=\"item.disabled\"\r\n role=\"tab\"\r\n [attr.activeIndex]=\"activeIndex\"\r\n (click)=\"changeTabIndex(index)\"\r\n >\r\n {{ item.title | translate }}\r\n </button>\r\n } @else {\r\n <button\r\n [attr.index]=\"index\"\r\n class=\"gov-tabs__btn\"\r\n [attr.aria-selected]=\"activeIndex === index\"\r\n [disabled]=\"item.disabled\"\r\n role=\"tab\"\r\n [attr.activeIndex]=\"activeIndex\"\r\n (click)=\"changeTabIndex(index)\"\r\n >\r\n {{ item.title | translate }}\r\n </button>}\r\n }\r\n </div>\r\n <div class=\"gov-tabs__tabs\">\r\n @for (item of items; track item; let index = $index) {\r\n <div class=\"gov-tabs__tab\" [class.active]=\"activeIndex === index\" >\r\n <div class=\"gov-tabs__list\">\r\n <div class=\"gov-tabs__content\">\r\n @if (item.contentTemplate) {\r\n <ng-container *ngTemplateOutlet=\"item.contentTemplate\"></ng-container>\r\n } @else if (item.content) {\r\n {{ item.content }}\r\n }\r\n </div>\r\n </div>\r\n </div>\r\n }\r\n @if (useRouting) {\r\n <router-outlet class=\"gov-tabs__content\"></router-outlet>\r\n }\r\n </div>\r\n</div>","import { NgTemplateOutlet } from '@angular/common';\r\nimport { NgModule } from '@angular/core';\r\nimport { RouterLink, RouterLinkActive, RouterOutlet } from '@angular/router';\r\nimport { GovDesignSystemModule } from '@gov-design-system-ce/angular';\r\nimport { TranslateModule } from '@ngx-translate/core';\r\nimport { TAB_VIEW_COMPONENT_TOKEN } from '@verisoft/ui-core';\r\nimport { TabViewItemComponent } from './tab-view-item.component';\r\nimport { TabViewComponent } from './tab-view.component';\r\n\r\n@NgModule({\r\n imports: [\r\n RouterOutlet,\r\n NgTemplateOutlet,\r\n GovDesignSystemModule,\r\n RouterLinkActive,\r\n RouterLink,\r\n TranslateModule\r\n ],\r\n declarations: [TabViewComponent, TabViewItemComponent],\r\n exports: [TabViewComponent, TabViewItemComponent],\r\n providers: [\r\n { provide: TAB_VIEW_COMPONENT_TOKEN, useExisting: TabViewComponent },\r\n ],\r\n})\r\nexport class TabViewModule {}\r\n","import { Injectable } from '@angular/core';\r\nimport { defineCustomElements } from \"@gov-design-system-ce/components/loader\";\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class GovInitService {\r\n constructor() {\r\n defineCustomElements(window);\r\n }\r\n}\r\n","import { Component } from \"@angular/core\";\r\nimport { GovDesignSystemModule } from \"@gov-design-system-ce/angular\";\r\nimport { ButtonComponent } from \"./../../components\";\r\n\r\n@Component({\r\n standalone: true,\r\n selector: 'v-not-authenticated',\r\n templateUrl: \"./not-authenticated.component.html\",\r\n imports: [\r\n GovDesignSystemModule,\r\n ButtonComponent,\r\n ],\r\n})\r\nexport class NotAuthenticatedComponent { }\r\n","<gov-error-code>\r\n <gov-icon type=\"complex\" name=\"card-401\" slot=\"icon\"></gov-icon>\r\n <p>You are not logged in, please do so.</p>\r\n <v-button color=\"primary\" size=\"medium\" type=\"solid\" label=\"Login\" [routerLink]=\"['/login']\" />\r\n</gov-error-code>\r\n","import { Component } from \"@angular/core\";\r\nimport { GovDesignSystemModule } from \"@gov-design-system-ce/angular\";\r\nimport { ButtonComponent } from \"../../components\";\r\n\r\n@Component({\r\n standalone: true,\r\n selector: 'v-not-authorized',\r\n templateUrl: \"./not-authorized.component.html\",\r\n imports: [\r\n GovDesignSystemModule,\r\n ButtonComponent,\r\n ],\r\n})\r\nexport class NotAuthorizedComponent {\r\n goBack(): void {\r\n history.back();\r\n }\r\n}\r\n","<gov-error-code>\r\n <gov-icon type=\"complex\" name=\"card-403\" slot=\"icon\"></gov-icon>\r\n <p>You are not authorized to view this content.</p>\r\n <v-button color=\"primary\" size=\"medium\" type=\"solid\" label=\"Go back\" (click)=\"goBack()\" />\r\n</gov-error-code>\r\n","import { Component } from \"@angular/core\";\r\nimport { GovDesignSystemModule } from \"@gov-design-system-ce/angular\";\r\nimport { ButtonComponent } from \"../../components\";\r\n\r\n@Component({\r\n standalone: true,\r\n selector: 'v-not-found',\r\n templateUrl: \"./not-found.component.html\",\r\n imports: [\r\n GovDesignSystemModule,\r\n ButtonComponent\r\n ],\r\n})\r\nexport class NotFoundComponent {\r\n goBack(): void {\r\n history.back();\r\n }\r\n}\r\n","<gov-error-code>\r\n <gov-icon type=\"complex\" name=\"card-404\" slot=\"icon\"></gov-icon>\r\n <p>The item you are looking for does not exist.</p>\r\n <v-button color=\"primary\" size=\"medium\" type=\"solid\" label=\"Go back\" (click)=\"goBack()\" />\r\n</gov-error-code>\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1","i3","uuidv4","i2","i5","i4"],"mappings":"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"}