@onemrvapublic/design-system 1.0.0-beta.4 → 1.0.0-develop.1

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 (512) hide show
  1. package/README.md +9 -4
  2. package/assets/i18n/de.json +84 -12
  3. package/assets/i18n/en.json +78 -6
  4. package/assets/i18n/fr.json +79 -7
  5. package/assets/i18n/nl.json +84 -12
  6. package/fesm2022/onemrvapublic-design-system-flag-icon.mjs +49 -0
  7. package/fesm2022/onemrvapublic-design-system-flag-icon.mjs.map +1 -0
  8. package/fesm2022/onemrvapublic-design-system-layout.mjs +948 -0
  9. package/fesm2022/onemrvapublic-design-system-layout.mjs.map +1 -0
  10. package/fesm2022/onemrvapublic-design-system-mat-address.mjs +111 -0
  11. package/fesm2022/onemrvapublic-design-system-mat-address.mjs.map +1 -0
  12. package/fesm2022/onemrvapublic-design-system-mat-avatar.mjs +318 -0
  13. package/fesm2022/onemrvapublic-design-system-mat-avatar.mjs.map +1 -0
  14. package/fesm2022/onemrvapublic-design-system-mat-breadcrumb.mjs +125 -0
  15. package/fesm2022/onemrvapublic-design-system-mat-breadcrumb.mjs.map +1 -0
  16. package/fesm2022/onemrvapublic-design-system-mat-carousel.mjs +208 -0
  17. package/fesm2022/onemrvapublic-design-system-mat-carousel.mjs.map +1 -0
  18. package/fesm2022/onemrvapublic-design-system-mat-choice-chip.mjs +84 -0
  19. package/fesm2022/onemrvapublic-design-system-mat-choice-chip.mjs.map +1 -0
  20. package/fesm2022/onemrvapublic-design-system-mat-copy-to-clipboard.mjs +90 -0
  21. package/fesm2022/onemrvapublic-design-system-mat-copy-to-clipboard.mjs.map +1 -0
  22. package/fesm2022/onemrvapublic-design-system-mat-country-item.mjs +33 -0
  23. package/fesm2022/onemrvapublic-design-system-mat-country-item.mjs.map +1 -0
  24. package/fesm2022/onemrvapublic-design-system-mat-datepicker-header.mjs +211 -0
  25. package/fesm2022/onemrvapublic-design-system-mat-datepicker-header.mjs.map +1 -0
  26. package/fesm2022/onemrvapublic-design-system-mat-empty-row.mjs +42 -0
  27. package/fesm2022/onemrvapublic-design-system-mat-empty-row.mjs.map +1 -0
  28. package/fesm2022/onemrvapublic-design-system-mat-file-upload.mjs +810 -0
  29. package/fesm2022/onemrvapublic-design-system-mat-file-upload.mjs.map +1 -0
  30. package/fesm2022/onemrvapublic-design-system-mat-input-address.mjs +138 -0
  31. package/fesm2022/onemrvapublic-design-system-mat-input-address.mjs.map +1 -0
  32. package/fesm2022/onemrvapublic-design-system-mat-input-birthplace.mjs +135 -0
  33. package/fesm2022/onemrvapublic-design-system-mat-input-birthplace.mjs.map +1 -0
  34. package/fesm2022/onemrvapublic-design-system-mat-input-country.mjs +98 -0
  35. package/fesm2022/onemrvapublic-design-system-mat-input-country.mjs.map +1 -0
  36. package/fesm2022/onemrvapublic-design-system-mat-input-enterprise-number.mjs +189 -0
  37. package/fesm2022/onemrvapublic-design-system-mat-input-enterprise-number.mjs.map +1 -0
  38. package/fesm2022/onemrvapublic-design-system-mat-input-iban.mjs +308 -0
  39. package/fesm2022/onemrvapublic-design-system-mat-input-iban.mjs.map +1 -0
  40. package/fesm2022/onemrvapublic-design-system-mat-input-phone.mjs +295 -0
  41. package/fesm2022/onemrvapublic-design-system-mat-input-phone.mjs.map +1 -0
  42. package/fesm2022/onemrvapublic-design-system-mat-message-box.mjs +210 -0
  43. package/fesm2022/onemrvapublic-design-system-mat-message-box.mjs.map +1 -0
  44. package/fesm2022/onemrvapublic-design-system-mat-multi-select.mjs +225 -0
  45. package/fesm2022/onemrvapublic-design-system-mat-multi-select.mjs.map +1 -0
  46. package/fesm2022/onemrvapublic-design-system-mat-navigation.mjs +169 -0
  47. package/fesm2022/onemrvapublic-design-system-mat-navigation.mjs.map +1 -0
  48. package/fesm2022/onemrvapublic-design-system-mat-notification.mjs +103 -0
  49. package/fesm2022/onemrvapublic-design-system-mat-notification.mjs.map +1 -0
  50. package/fesm2022/onemrvapublic-design-system-mat-paginator.mjs +269 -0
  51. package/fesm2022/onemrvapublic-design-system-mat-paginator.mjs.map +1 -0
  52. package/fesm2022/onemrvapublic-design-system-mat-panel.mjs +185 -0
  53. package/fesm2022/onemrvapublic-design-system-mat-panel.mjs.map +1 -0
  54. package/fesm2022/onemrvapublic-design-system-mat-pop-over.mjs +118 -0
  55. package/fesm2022/onemrvapublic-design-system-mat-pop-over.mjs.map +1 -0
  56. package/fesm2022/onemrvapublic-design-system-mat-progress-bar.mjs +52 -0
  57. package/fesm2022/onemrvapublic-design-system-mat-progress-bar.mjs.map +1 -0
  58. package/fesm2022/onemrvapublic-design-system-mat-select-search.mjs +612 -0
  59. package/fesm2022/onemrvapublic-design-system-mat-select-search.mjs.map +1 -0
  60. package/fesm2022/onemrvapublic-design-system-mat-selectable-box.mjs +96 -0
  61. package/fesm2022/onemrvapublic-design-system-mat-selectable-box.mjs.map +1 -0
  62. package/fesm2022/onemrvapublic-design-system-mat-side-menu.mjs +72 -0
  63. package/fesm2022/onemrvapublic-design-system-mat-side-menu.mjs.map +1 -0
  64. package/fesm2022/onemrvapublic-design-system-mat-skeleton.mjs +241 -0
  65. package/fesm2022/onemrvapublic-design-system-mat-skeleton.mjs.map +1 -0
  66. package/fesm2022/onemrvapublic-design-system-mat-spinner.mjs +65 -0
  67. package/fesm2022/onemrvapublic-design-system-mat-spinner.mjs.map +1 -0
  68. package/fesm2022/onemrvapublic-design-system-mat-stepper.mjs +146 -0
  69. package/fesm2022/onemrvapublic-design-system-mat-stepper.mjs.map +1 -0
  70. package/fesm2022/onemrvapublic-design-system-mat-sticker.mjs +36 -0
  71. package/fesm2022/onemrvapublic-design-system-mat-sticker.mjs.map +1 -0
  72. package/fesm2022/onemrvapublic-design-system-mat-table-of-content.mjs +232 -0
  73. package/fesm2022/onemrvapublic-design-system-mat-table-of-content.mjs.map +1 -0
  74. package/fesm2022/onemrvapublic-design-system-mat-task-list.mjs +170 -0
  75. package/fesm2022/onemrvapublic-design-system-mat-task-list.mjs.map +1 -0
  76. package/fesm2022/onemrvapublic-design-system-mat-timepicker.mjs +1363 -0
  77. package/fesm2022/onemrvapublic-design-system-mat-timepicker.mjs.map +1 -0
  78. package/fesm2022/onemrvapublic-design-system-mat-toast.mjs +73 -0
  79. package/fesm2022/onemrvapublic-design-system-mat-toast.mjs.map +1 -0
  80. package/fesm2022/onemrvapublic-design-system-mat-tooltip.mjs +166 -0
  81. package/fesm2022/onemrvapublic-design-system-mat-tooltip.mjs.map +1 -0
  82. package/fesm2022/onemrvapublic-design-system-page-error.mjs +80 -0
  83. package/fesm2022/onemrvapublic-design-system-page-error.mjs.map +1 -0
  84. package/fesm2022/onemrvapublic-design-system-page-not-found.mjs +211 -0
  85. package/fesm2022/onemrvapublic-design-system-page-not-found.mjs.map +1 -0
  86. package/fesm2022/onemrvapublic-design-system-shared.mjs +2188 -0
  87. package/fesm2022/onemrvapublic-design-system-shared.mjs.map +1 -0
  88. package/fesm2022/onemrvapublic-design-system-utils.mjs +35 -0
  89. package/fesm2022/onemrvapublic-design-system-utils.mjs.map +1 -0
  90. package/fesm2022/onemrvapublic-design-system.mjs +10573 -0
  91. package/fesm2022/onemrvapublic-design-system.mjs.map +1 -0
  92. package/flag-icon/index.d.ts +18 -0
  93. package/flag-icon/src/flag-icon.component.scss +12 -0
  94. package/index.d.ts +3140 -0
  95. package/layout/index.d.ts +293 -0
  96. package/layout/src/components/layout/layout.component.scss +90 -80
  97. package/layout/src/components/layout-drawer-actions/layout-drawer-actions.component.scss +3 -2
  98. package/layout/src/components/layout-drawer-content/layout-drawer-content.component.scss +9 -0
  99. package/layout/src/components/layout-drawer-title/layout-drawer-title.component.scss +9 -5
  100. package/layout/src/components/layout-left-sidenav/layout-left-sidenav.component.scss +5 -0
  101. package/layout/src/components/layout-sidenav/layout-sidenav.component.scss +43 -0
  102. package/layout/src/index.scss +0 -1
  103. package/mat-address/index.d.ts +36 -0
  104. package/mat-address/src/onemrva-address.scss +14 -0
  105. package/mat-avatar/index.d.ts +187 -0
  106. package/mat-avatar/src/onemrva-mat-avatar.component.scss +79 -123
  107. package/mat-breadcrumb/index.d.ts +40 -0
  108. package/mat-breadcrumb/src/onemrva-mat-breadcrumb.component.scss +39 -53
  109. package/mat-carousel/index.d.ts +52 -0
  110. package/mat-carousel/src/mat-carousel-item/onemrva-mat-carousel-item.component.scss +10 -0
  111. package/mat-carousel/src/onemrva-mat-carousel.component.scss +38 -45
  112. package/mat-choice-chip/index.d.ts +20 -0
  113. package/mat-choice-chip/src/onemrva-mat-choice-chip.component.scss +83 -0
  114. package/mat-copy-to-clipboard/index.d.ts +26 -0
  115. package/mat-country-item/index.d.ts +10 -0
  116. package/{mat-input-birthplace/src/country-item.component.scss → mat-country-item/src/onemrva-mat-country-item.component.scss} +6 -1
  117. package/mat-datepicker-header/index.d.ts +44 -0
  118. package/mat-datepicker-header/src/onemrva-mat-datepicker-header.component.scss +8 -0
  119. package/mat-empty-row/index.d.ts +19 -0
  120. package/mat-empty-row/src/onemrva-mat-empty-row.component.scss +29 -0
  121. package/mat-file-upload/index.d.ts +301 -0
  122. package/mat-file-upload/src/components/onemrva-mat-file-panel/onemrva-file-panel.component.scss +48 -16
  123. package/mat-file-upload/src/components/onemrva-mat-file-upload/onemrva-mat-file-upload.component.scss +72 -218
  124. package/mat-input-address/index.d.ts +32 -0
  125. package/mat-input-address/src/onemrva-mat-input-address.component.scss +8 -0
  126. package/mat-input-birthplace/index.d.ts +36 -0
  127. package/mat-input-birthplace/src/onemrva-mat-input-birthplace.component.scss +4 -2
  128. package/mat-input-country/index.d.ts +32 -0
  129. package/mat-input-country/src/onemrva-mat-input-country.component.scss +13 -0
  130. package/mat-input-enterprise-number/index.d.ts +37 -0
  131. package/mat-input-enterprise-number/src/onemrva-mat-input-enterprise-number.component.scss +7 -0
  132. package/mat-input-iban/index.d.ts +79 -0
  133. package/mat-input-iban/src/onemrva-mat-input-iban.component.scss +10 -0
  134. package/mat-input-phone/index.d.ts +44 -0
  135. package/mat-message-box/index.d.ts +101 -0
  136. package/mat-message-box/src/onemrva-mat-message-box.component.scss +13 -65
  137. package/mat-multi-select/index.d.ts +57 -0
  138. package/mat-multi-select/src/onemrva-mat-multi-select.component.scss +35 -0
  139. package/mat-navigation/index.d.ts +54 -0
  140. package/mat-navigation/src/mat-navigation-item/onemrva-mat-navigation-item.component.scss +66 -0
  141. package/mat-navigation/src/onemrva-mat-navigation.component.scss +36 -0
  142. package/mat-notification/index.d.ts +43 -0
  143. package/mat-notification/src/onemrva-mat-notification.component.scss +26 -0
  144. package/mat-paginator/index.d.ts +58 -0
  145. package/mat-paginator/src/onemrva-mat-paginator.component.scss +146 -0
  146. package/mat-panel/index.d.ts +66 -0
  147. package/mat-panel/src/mat-expansion-panel-header-arrow-divider.scss +11 -0
  148. package/mat-panel/src/onemrva-mat-panel-content.scss +8 -0
  149. package/mat-panel/src/onemrva-mat-panel-icon.scss +7 -0
  150. package/mat-panel/src/onemrva-mat-panel-title.scss +13 -0
  151. package/mat-panel/src/onemrva-mat-panel.component.scss +75 -82
  152. package/mat-pop-over/index.d.ts +40 -0
  153. package/mat-pop-over/src/onemrva-mat-pop-over.component.scss +11 -11
  154. package/mat-progress-bar/index.d.ts +18 -0
  155. package/mat-progress-bar/src/onemrva-mat-progress-bar.component.scss +26 -0
  156. package/mat-select-search/index.d.ts +197 -0
  157. package/mat-select-search/src/mat-select-search.component.scss +62 -109
  158. package/mat-selectable-box/index.d.ts +29 -0
  159. package/mat-selectable-box/src/onemrva-mat-selectable-box.component.scss +68 -90
  160. package/mat-side-menu/index.d.ts +33 -0
  161. package/mat-side-menu/src/onemrva-mat-side-menu.component.scss +36 -38
  162. package/mat-skeleton/index.d.ts +100 -0
  163. package/mat-skeleton/src/onemrva-mat-skeleton.component.scss +10 -59
  164. package/mat-spinner/index.d.ts +25 -0
  165. package/mat-spinner/src/onemrva-mat-spinner.component.scss +21 -0
  166. package/mat-stepper/index.d.ts +36 -0
  167. package/mat-stepper/src/onemrva-mat-stepper.scss +40 -105
  168. package/mat-sticker/index.d.ts +14 -0
  169. package/mat-sticker/src/onemrva-mat-sticker.component.scss +26 -63
  170. package/mat-table-of-content/index.d.ts +84 -0
  171. package/mat-table-of-content/src/onemrva-mat-table-of-content.component.scss +57 -0
  172. package/mat-task-list/index.d.ts +57 -0
  173. package/mat-task-list/src/onemrva-mat-task-content.scss +11 -0
  174. package/mat-task-list/src/onemrva-mat-task-list.component.scss +0 -150
  175. package/mat-task-list/src/onemrva-mat-task-title.scss +16 -0
  176. package/mat-task-list/src/onemrva-mat-task.component.scss +67 -0
  177. package/mat-timepicker/index.d.ts +386 -0
  178. package/mat-timepicker/src/clock/clock.component.scss +13 -7
  179. package/mat-timepicker/src/timepicker-dialog/timepicker-dialog.component.scss +2 -7
  180. package/mat-toast/index.d.ts +30 -0
  181. package/mat-toast/src/onemrva-mat-toast.component.scss +7 -49
  182. package/mat-tooltip/index.d.ts +39 -0
  183. package/mat-tooltip/src/onemrva-mat-tooltip.component.scss +8 -5
  184. package/package.json +196 -26
  185. package/page-error/index.d.ts +34 -0
  186. package/page-error/src/page-error.component.scss +25 -0
  187. package/page-not-found/index.d.ts +54 -0
  188. package/page-not-found/src/page-not-found-mixin.component.scss +1 -1
  189. package/page-not-found/src/page-not-found.component.scss +2 -2
  190. package/shared/index.d.ts +541 -0
  191. package/utils/index.d.ts +32 -0
  192. package/.eslintrc.json +0 -33
  193. package/_index.scss +0 -34
  194. package/_utils.scss +0 -30
  195. package/core/index.ts +0 -3
  196. package/core/ng-package.json +0 -6
  197. package/core/src/lib/core.module.ts +0 -26
  198. package/core/src/lib/modules/index.ts +0 -1
  199. package/core/src/lib/modules/translate.loader.ts +0 -34
  200. package/core/src/lib/modules/translate.module.ts +0 -66
  201. package/core/src/lib/services/index.ts +0 -2
  202. package/core/src/lib/services/onemrva-error-handler.service.ts +0 -24
  203. package/core/src/lib/services/onemrva-missing-translation.service.ts +0 -12
  204. package/core/src/test.ts +0 -30
  205. package/layout/index.ts +0 -7
  206. package/layout/ng-package.json +0 -6
  207. package/layout/src/components/index.ts +0 -37
  208. package/layout/src/components/layout/_layout-mixin.component.scss +0 -189
  209. package/layout/src/components/layout/layout.component.html +0 -213
  210. package/layout/src/components/layout/layout.component.spec.ts +0 -59
  211. package/layout/src/components/layout/layout.component.ts +0 -185
  212. package/layout/src/components/layout-after-nav/layout-after-nav.component.spec.ts +0 -24
  213. package/layout/src/components/layout-after-nav/layout-after-nav.component.ts +0 -24
  214. package/layout/src/components/layout-content/layout-content.component.spec.ts +0 -24
  215. package/layout/src/components/layout-content/layout-content.component.ts +0 -24
  216. package/layout/src/components/layout-drawer-actions/layout-drawer-actions.component.html +0 -1
  217. package/layout/src/components/layout-drawer-actions/layout-drawer-actions.component.ts +0 -14
  218. package/layout/src/components/layout-drawer-content/layout-drawer-content.component.html +0 -1
  219. package/layout/src/components/layout-drawer-content/layout-drawer-content.component.ts +0 -14
  220. package/layout/src/components/layout-drawer-title/layout-drawer-title.component.html +0 -7
  221. package/layout/src/components/layout-drawer-title/layout-drawer-title.component.ts +0 -18
  222. package/layout/src/components/layout-footer/layout-footer.component.ts +0 -11
  223. package/layout/src/components/layout-login-menu/layout-login-menu.component.spec.ts +0 -24
  224. package/layout/src/components/layout-login-menu/layout-login-menu.component.ts +0 -24
  225. package/layout/src/components/layout-route/layout-route.component.html +0 -64
  226. package/layout/src/components/layout-route/layout-route.component.spec.ts +0 -24
  227. package/layout/src/components/layout-route/layout-route.component.ts +0 -57
  228. package/layout/src/components/layout-sidenav/layout-sidenav.component.html +0 -104
  229. package/layout/src/components/layout-sidenav/layout-sidenav.component.ts +0 -88
  230. package/layout/src/components/layout-sidenav-title/layout-sidenav-title.component.ts +0 -9
  231. package/layout/src/components/layout-subroute/layout-subroute.component.html +0 -43
  232. package/layout/src/components/layout-subroute/layout-subroute.component.spec.ts +0 -24
  233. package/layout/src/components/layout-subroute/layout-subroute.component.ts +0 -62
  234. package/layout/src/components/layout-title/layout-title.component.spec.ts +0 -24
  235. package/layout/src/components/layout-title/layout-title.component.ts +0 -24
  236. package/layout/src/decorators/coerce-boolean-input.decorator.ts +0 -19
  237. package/layout/src/decorators/observable-content.decorator.ts +0 -13
  238. package/layout/src/directives/drawer-host.directive.ts +0 -42
  239. package/layout/src/enums/environment.enum.ts +0 -6
  240. package/layout/src/layout.module.ts +0 -47
  241. package/layout/src/models/onem-language.model.ts +0 -4
  242. package/layout/src/models/onemrva-profile.model.ts +0 -57
  243. package/layout/src/services/drawer.service.ts +0 -30
  244. package/layout/src/striphtml.pipe.ts +0 -10
  245. package/layout/src/test.ts +0 -31
  246. package/mat-avatar/index.ts +0 -2
  247. package/mat-avatar/ng-package.json +0 -6
  248. package/mat-avatar/src/onemrva-mat-avatar.component.html +0 -21
  249. package/mat-avatar/src/onemrva-mat-avatar.component.ts +0 -421
  250. package/mat-avatar/src/onemrva-mat-avatar.module.ts +0 -11
  251. package/mat-avatar/src/onemrva-mat.avatar.component.spec.ts +0 -54
  252. package/mat-badge/index.ts +0 -6
  253. package/mat-badge/ng-package.json +0 -6
  254. package/mat-badge/src/onemrva-mat-badge.component.scss +0 -157
  255. package/mat-badge/src/onemrva-mat-badge.component.ts +0 -331
  256. package/mat-badge/src/onemrva-mat-badge.module.ts +0 -8
  257. package/mat-breadcrumb/index.ts +0 -7
  258. package/mat-breadcrumb/ng-package.json +0 -6
  259. package/mat-breadcrumb/src/onemrva-mat-breadcrumb.component.html +0 -37
  260. package/mat-breadcrumb/src/onemrva-mat-breadcrumb.component.ts +0 -16
  261. package/mat-breadcrumb/src/onemrva-mat-breadcrumb.model.ts +0 -4
  262. package/mat-breadcrumb/src/onemrva-mat-breadcrumb.module.ts +0 -12
  263. package/mat-breadcrumb/src/onemrva-mat-breadcrumb.service.ts +0 -65
  264. package/mat-carousel/index.ts +0 -2
  265. package/mat-carousel/ng-package.json +0 -6
  266. package/mat-carousel/src/mat-carousel-item/onemrva-mat-carousel-item.component.html +0 -5
  267. package/mat-carousel/src/mat-carousel-item/onemrva-mat-carousel-item.component.ts +0 -27
  268. package/mat-carousel/src/onemrva-mat-carousel-item.directive.ts +0 -8
  269. package/mat-carousel/src/onemrva-mat-carousel.component.html +0 -43
  270. package/mat-carousel/src/onemrva-mat-carousel.component.ts +0 -160
  271. package/mat-copy-to-clipboard/index.ts +0 -1
  272. package/mat-copy-to-clipboard/ng-package.json +0 -6
  273. package/mat-copy-to-clipboard/src/components/copy-to-clipboard.component.html +0 -14
  274. package/mat-copy-to-clipboard/src/components/copy-to-clipboard.component.ts +0 -76
  275. package/mat-datepicker-header/index.ts +0 -5
  276. package/mat-datepicker-header/ng-package.json +0 -6
  277. package/mat-datepicker-header/src/_onemrva-mat-datepicker-header.component.scss +0 -12
  278. package/mat-datepicker-header/src/onemrva-mat-datepicker-header.component.html +0 -54
  279. package/mat-datepicker-header/src/onemrva-mat-datepicker-header.component.ts +0 -283
  280. package/mat-file-upload/index.ts +0 -11
  281. package/mat-file-upload/ng-package.json +0 -6
  282. package/mat-file-upload/src/components/index.ts +0 -10
  283. package/mat-file-upload/src/components/onemrva-mat-file-panel/onemrva-file-panel.component.html +0 -59
  284. package/mat-file-upload/src/components/onemrva-mat-file-panel/onemrva-file-panel.component.ts +0 -79
  285. package/mat-file-upload/src/components/onemrva-mat-file-upload/onemrva-mat-file-upload.component.html +0 -58
  286. package/mat-file-upload/src/components/onemrva-mat-file-upload/onemrva-mat-file-upload.component.ts +0 -209
  287. package/mat-file-upload/src/directives/dnd.directive.ts +0 -41
  288. package/mat-file-upload/src/models/action-config.model.ts +0 -10
  289. package/mat-file-upload/src/models/progress-file.model.ts +0 -94
  290. package/mat-file-upload/src/onemrva-mat-file-upload-itf.store.ts +0 -79
  291. package/mat-file-upload/src/onemrva-mat-file-upload.module.ts +0 -28
  292. package/mat-file-upload/src/onemrva-mat-file-upload.service.ts +0 -68
  293. package/mat-file-upload/src/onemrva-mat-file-upload.store.ts +0 -482
  294. package/mat-input-bank-account/index.ts +0 -5
  295. package/mat-input-bank-account/ng-package.json +0 -6
  296. package/mat-input-bank-account/src/bank-account.component.html +0 -36
  297. package/mat-input-bank-account/src/bank-account.component.scss +0 -42
  298. package/mat-input-bank-account/src/bank-account.component.ts +0 -308
  299. package/mat-input-bank-account/src/onemrva-mat-input-bank-account.component.html +0 -11
  300. package/mat-input-bank-account/src/onemrva-mat-input-bank-account.component.scss +0 -14
  301. package/mat-input-bank-account/src/onemrva-mat-input-bank-account.component.ts +0 -82
  302. package/mat-input-birthplace/index.ts +0 -5
  303. package/mat-input-birthplace/ng-package.json +0 -6
  304. package/mat-input-birthplace/src/country-item.component.html +0 -8
  305. package/mat-input-birthplace/src/country-item.component.ts +0 -33
  306. package/mat-input-birthplace/src/onemrva-mat-input-birthplace.component.html +0 -28
  307. package/mat-input-birthplace/src/onemrva-mat-input-birthplace.component.ts +0 -129
  308. package/mat-input-country/index.ts +0 -6
  309. package/mat-input-country/ng-package.json +0 -6
  310. package/mat-input-country/src/countries.ts +0 -3198
  311. package/mat-input-country/src/onemrva-mat-input-country.component.html +0 -25
  312. package/mat-input-country/src/onemrva-mat-input-country.component.ts +0 -152
  313. package/mat-input-enterprise-number/index.ts +0 -5
  314. package/mat-input-enterprise-number/ng-package.json +0 -6
  315. package/mat-input-enterprise-number/src/onemrva-mat-input-enterprise-number.component.html +0 -42
  316. package/mat-input-enterprise-number/src/onemrva-mat-input-enterprise-number.component.ts +0 -212
  317. package/mat-input-phone/index.ts +0 -6
  318. package/mat-input-phone/ng-package.json +0 -6
  319. package/mat-input-phone/src/onemrva-mat-input-phone.component.html +0 -47
  320. package/mat-input-phone/src/onemrva-mat-input-phone.component.ts +0 -274
  321. package/mat-input-phone/src/phone-number.directive.ts +0 -46
  322. package/mat-message-box/index.ts +0 -2
  323. package/mat-message-box/ng-package.json +0 -6
  324. package/mat-message-box/src/onemrva-mat-message-box.component.html +0 -3
  325. package/mat-message-box/src/onemrva-mat-message-box.component.ts +0 -172
  326. package/mat-message-box/src/onemrva-mat-message-box.module.ts +0 -12
  327. package/mat-multi-select/index.ts +0 -2
  328. package/mat-multi-select/ng-package.json +0 -6
  329. package/mat-multi-select/src/_onemrva-mat-multi-select.component.scss +0 -66
  330. package/mat-multi-select/src/onemrva-mat-multi-select.component.html +0 -44
  331. package/mat-multi-select/src/onemrva-mat-multi-select.component.ts +0 -194
  332. package/mat-multi-select/src/onemrva-mat-multi-select.module.ts +0 -27
  333. package/mat-multi-select/src/onemrva-mat-select-counter.component.ts +0 -0
  334. package/mat-notification/index.ts +0 -1
  335. package/mat-notification/ng-package.json +0 -6
  336. package/mat-notification/src/_onemrva-mat-notification.component.scss +0 -102
  337. package/mat-notification/src/onemrva-mat-notification.component.html +0 -15
  338. package/mat-notification/src/onemrva-mat-notification.component.ts +0 -158
  339. package/mat-paginator/index.ts +0 -6
  340. package/mat-paginator/ng-package.json +0 -6
  341. package/mat-paginator/src/_onemrva-mat-paginator.component.scss +0 -122
  342. package/mat-paginator/src/onemrva-mat-paginator.component.html +0 -108
  343. package/mat-paginator/src/onemrva-mat-paginator.component.spec.ts +0 -184
  344. package/mat-paginator/src/onemrva-mat-paginator.component.ts +0 -216
  345. package/mat-paginator/src/onemrva-mat-paginator.module.ts +0 -21
  346. package/mat-panel/index.ts +0 -6
  347. package/mat-panel/ng-package.json +0 -6
  348. package/mat-panel/src/onemrva-mat-panel-content.component.ts +0 -11
  349. package/mat-panel/src/onemrva-mat-panel-content.html +0 -5
  350. package/mat-panel/src/onemrva-mat-panel-icon.component.ts +0 -11
  351. package/mat-panel/src/onemrva-mat-panel-icon.html +0 -5
  352. package/mat-panel/src/onemrva-mat-panel-title-action.component.ts +0 -11
  353. package/mat-panel/src/onemrva-mat-panel-title-action.html +0 -5
  354. package/mat-panel/src/onemrva-mat-panel-title.component.ts +0 -29
  355. package/mat-panel/src/onemrva-mat-panel-title.html +0 -8
  356. package/mat-panel/src/onemrva-mat-panel.component.html +0 -10
  357. package/mat-panel/src/onemrva-mat-panel.component.ts +0 -122
  358. package/mat-panel/src/onemrva-mat-panel.module.ts +0 -26
  359. package/mat-pop-over/index.ts +0 -4
  360. package/mat-pop-over/ng-package.json +0 -6
  361. package/mat-pop-over/src/onemrva-mat-pop-over-content.component.ts +0 -13
  362. package/mat-pop-over/src/onemrva-mat-pop-over-trigger.component.ts +0 -13
  363. package/mat-pop-over/src/onemrva-mat-pop-over.component.html +0 -29
  364. package/mat-pop-over/src/onemrva-mat-pop-over.component.ts +0 -46
  365. package/mat-pop-over/src/onemrva-mat-pop-over.module.ts +0 -19
  366. package/mat-progress-bar/index.ts +0 -1
  367. package/mat-progress-bar/ng-package.json +0 -6
  368. package/mat-progress-bar/src/_onemrva-mat-progress-bar-mixin.component.scss +0 -37
  369. package/mat-progress-bar/src/onemrva-mat-progress-bar.component.html +0 -13
  370. package/mat-progress-bar/src/onemrva-mat-progress-bar.component.ts +0 -27
  371. package/mat-select-search/index.ts +0 -3
  372. package/mat-select-search/ng-package.json +0 -6
  373. package/mat-select-search/src/default-options.ts +0 -48
  374. package/mat-select-search/src/mat-select-no-entries-found.directive.ts +0 -15
  375. package/mat-select-search/src/mat-select-search-clear.directive.ts +0 -13
  376. package/mat-select-search/src/mat-select-search.component.html +0 -82
  377. package/mat-select-search/src/mat-select-search.component.spec.ts +0 -790
  378. package/mat-select-search/src/mat-select-search.component.ts +0 -705
  379. package/mat-select-search/src/mat-select-search.module.ts +0 -52
  380. package/mat-selectable-box/index.ts +0 -6
  381. package/mat-selectable-box/ng-package.json +0 -6
  382. package/mat-selectable-box/src/onemrva-mat-selectable-box.component.ts +0 -99
  383. package/mat-selectable-box/src/onemrva-mat-selectable-box.module.ts +0 -30
  384. package/mat-side-menu/index.ts +0 -6
  385. package/mat-side-menu/ng-package.json +0 -6
  386. package/mat-side-menu/src/onemrva-mat-side-menu.component.html +0 -36
  387. package/mat-side-menu/src/onemrva-mat-side-menu.component.spec.ts +0 -66
  388. package/mat-side-menu/src/onemrva-mat-side-menu.component.ts +0 -58
  389. package/mat-side-menu/src/onemrva-mat-side-menu.module.ts +0 -14
  390. package/mat-skeleton/index.ts +0 -3
  391. package/mat-skeleton/ng-package.json +0 -6
  392. package/mat-skeleton/src/onemrva-mat-skeleton-enums.ts +0 -32
  393. package/mat-skeleton/src/onemrva-mat-skeleton.component.html +0 -14
  394. package/mat-skeleton/src/onemrva-mat-skeleton.component.ts +0 -187
  395. package/mat-skeleton/src/onemrva-mat-skeleton.module.ts +0 -10
  396. package/mat-spinner/index.ts +0 -7
  397. package/mat-spinner/ng-package.json +0 -6
  398. package/mat-spinner/src/_onemrva-mat-spinner.component.scss +0 -151
  399. package/mat-spinner/src/onemrva-mat-loading.directive.ts +0 -41
  400. package/mat-spinner/src/onemrva-mat-spinner.component.html +0 -2138
  401. package/mat-spinner/src/onemrva-mat-spinner.component.ts +0 -52
  402. package/mat-spinner/src/onemrva-mat-spinner.module.ts +0 -10
  403. package/mat-stepper/index.ts +0 -6
  404. package/mat-stepper/ng-package.json +0 -6
  405. package/mat-stepper/src/_stepper-variables.scss +0 -29
  406. package/mat-stepper/src/onemrva-mat-stepper.component.spec.ts +0 -22
  407. package/mat-stepper/src/onemrva-mat-stepper.component.ts +0 -57
  408. package/mat-stepper/src/onemrva-mat-stepper.html +0 -61
  409. package/mat-stepper/src/onemrva-mat-stepper.module.ts +0 -24
  410. package/mat-stepper/src/onemrva-stepper-animations.ts +0 -42
  411. package/mat-sticker/index.ts +0 -6
  412. package/mat-sticker/ng-package.json +0 -6
  413. package/mat-sticker/src/onemrva-mat-sticker.component.spec.ts +0 -16
  414. package/mat-sticker/src/onemrva-mat-sticker.component.ts +0 -58
  415. package/mat-sticker/src/onemrva-mat-sticker.module.ts +0 -10
  416. package/mat-table-of-content/index.ts +0 -8
  417. package/mat-table-of-content/ng-package.json +0 -6
  418. package/mat-table-of-content/src/_onemrva-mat-table-of-content.component.scss +0 -79
  419. package/mat-table-of-content/src/onemrva-mat-table-of-content.component.html +0 -23
  420. package/mat-table-of-content/src/onemrva-mat-table-of-content.component.ts +0 -126
  421. package/mat-table-of-content/src/onemrva-mat-table-of-content.directive.ts +0 -67
  422. package/mat-table-of-content/src/onemrva-mat-table-of-content.service.ts +0 -51
  423. package/mat-table-of-content/src/onemrva-mat-toc-anchor.model.ts +0 -24
  424. package/mat-task-list/index.ts +0 -5
  425. package/mat-task-list/ng-package.json +0 -6
  426. package/mat-task-list/src/onemrva-mat-task-content.component.ts +0 -11
  427. package/mat-task-list/src/onemrva-mat-task-content.html +0 -5
  428. package/mat-task-list/src/onemrva-mat-task-list.component.html +0 -1
  429. package/mat-task-list/src/onemrva-mat-task-list.component.ts +0 -39
  430. package/mat-task-list/src/onemrva-mat-task-list.module.ts +0 -31
  431. package/mat-task-list/src/onemrva-mat-task-title.component.ts +0 -24
  432. package/mat-task-list/src/onemrva-mat-task-title.html +0 -5
  433. package/mat-task-list/src/onemrva-mat-task.component.html +0 -23
  434. package/mat-task-list/src/onemrva-mat-task.component.ts +0 -121
  435. package/mat-timepicker/index.ts +0 -6
  436. package/mat-timepicker/ng-package.json +0 -6
  437. package/mat-timepicker/src/clock/clock.component.html +0 -109
  438. package/mat-timepicker/src/clock/clock.component.spec.ts +0 -38
  439. package/mat-timepicker/src/clock/clock.component.ts +0 -274
  440. package/mat-timepicker/src/interfaces-and-types.ts +0 -18
  441. package/mat-timepicker/src/onemrva-mat-timepicker.component.html +0 -0
  442. package/mat-timepicker/src/onemrva-mat-timepicker.component.ts +0 -300
  443. package/mat-timepicker/src/onemrva-mat-timepicker.module.ts +0 -40
  444. package/mat-timepicker/src/timepicker-dialog/timepicker-dialog.component.html +0 -53
  445. package/mat-timepicker/src/timepicker-dialog/timepicker-dialog.component.spec.ts +0 -41
  446. package/mat-timepicker/src/timepicker-dialog/timepicker-dialog.component.ts +0 -176
  447. package/mat-timepicker/src/timepicker-toggle/timepicker-toggle.component.html +0 -15
  448. package/mat-timepicker/src/timepicker-toggle/timepicker-toggle.component.ts +0 -140
  449. package/mat-timepicker/src/timepicker.directive.ts +0 -596
  450. package/mat-timepicker/src/util.ts +0 -109
  451. package/mat-toast/index.ts +0 -6
  452. package/mat-toast/ng-package.json +0 -6
  453. package/mat-toast/src/onemrva-mat-toast.component.ts +0 -36
  454. package/mat-toast/src/onemrva-mat-toast.module.ts +0 -11
  455. package/mat-tooltip/index.ts +0 -4
  456. package/mat-tooltip/ng-package.json +0 -6
  457. package/mat-tooltip/src/onemrva-mat-tooltip.component.ts +0 -21
  458. package/mat-tooltip/src/onemrva-mat-tooltip.directive.ts +0 -123
  459. package/mat-tooltip/src/onemrva-mat-tooltip.module.ts +0 -11
  460. package/ng-package.json +0 -25
  461. package/npm-shrinkwrap.json +0 -30
  462. package/page-not-found/index.ts +0 -5
  463. package/page-not-found/ng-package.json +0 -6
  464. package/page-not-found/src/page-not-found-action.component.ts +0 -9
  465. package/page-not-found/src/page-not-found-extra.component.ts +0 -9
  466. package/page-not-found/src/page-not-found-invader.component.ts +0 -93
  467. package/page-not-found/src/page-not-found.component.html +0 -47
  468. package/page-not-found/src/page-not-found.component.ts +0 -60
  469. package/page-not-found/src/page-not-found.module.ts +0 -24
  470. package/shared/index.ts +0 -17
  471. package/shared/ng-package.json +0 -6
  472. package/shared/src/lib/OnemrvaDateAdapter.ts +0 -78
  473. package/shared/src/lib/components/clipboard-icon/clipboard-icon.component.css +0 -0
  474. package/shared/src/lib/components/clipboard-icon/clipboard-icon.component.html +0 -1
  475. package/shared/src/lib/components/clipboard-icon/clipboard-icon.component.spec.ts +0 -21
  476. package/shared/src/lib/components/clipboard-icon/clipboard-icon.component.ts +0 -18
  477. package/shared/src/lib/containers/WebComponentOverlayContainer.ts +0 -90
  478. package/shared/src/lib/containers/index.ts +0 -1
  479. package/shared/src/lib/date.format.ts +0 -11
  480. package/shared/src/lib/directives/clipboard.directive.ts +0 -52
  481. package/shared/src/lib/directives/color.directive.ts +0 -46
  482. package/shared/src/lib/directives/digit-only.directive.ts +0 -46
  483. package/shared/src/lib/directives/if-width-is.directive.ts +0 -39
  484. package/shared/src/lib/directives/index.ts +0 -22
  485. package/shared/src/lib/directives/mask.directive.ts +0 -223
  486. package/shared/src/lib/directives/mat-row-clickable.directive.ts +0 -66
  487. package/shared/src/lib/interfaces/OnemRvaCommonCountry.interface.ts +0 -23
  488. package/shared/src/lib/interfaces/index.ts +0 -1
  489. package/shared/src/lib/pipes/index.ts +0 -2
  490. package/shared/src/lib/pipes/onemrva-bce.pipe.ts +0 -18
  491. package/shared/src/lib/pipes/onemrva-niss.pipe.ts +0 -18
  492. package/shared/src/lib/services/commonCountryLookup.service.ts +0 -50
  493. package/shared/src/lib/services/index.ts +0 -1
  494. package/shared/src/lib/shared.datepicker.module.ts +0 -60
  495. package/shared/src/lib/shared.module.ts +0 -10
  496. package/shared/src/lib/validators/bankAccountValidator.utils.ts +0 -61
  497. package/shared/src/lib/validators/onemrva-validators.spec.ts +0 -79
  498. package/shared/src/lib/validators/onemrva-validators.ts +0 -97
  499. package/shared/src/onemrva-validators.spec.ts +0 -14
  500. package/src/polyfills.ts +0 -52
  501. package/src/public-api.spec.ts +0 -7
  502. package/src/public-api.ts +0 -5
  503. package/tsconfig.lib.json +0 -12
  504. package/tsconfig.lib.prod.json +0 -10
  505. package/tsconfig.spec.json +0 -10
  506. package/utils/index.ts +0 -2
  507. package/utils/ng-package.json +0 -6
  508. package/utils/src/enum.utils.ts +0 -8
  509. package/utils/src/enums/color.enum.ts +0 -14
  510. package/utils/src/enums/index.ts +0 -2
  511. package/utils/src/enums/size.enum.ts +0 -11
  512. /package/{assets/.gitkeep → mat-navigation/src/mat-navigation-tree/onemrva-mat-navigation-tree.component.scss} +0 -0
@@ -0,0 +1,98 @@
1
+ import * as i5 from '@angular/common';
2
+ import { CommonModule } from '@angular/common';
3
+ import * as i0 from '@angular/core';
4
+ import { EventEmitter, input, inject, Output, ViewEncapsulation, Component } from '@angular/core';
5
+ import * as i4 from '@angular/forms';
6
+ import { FormControl, ReactiveFormsModule } from '@angular/forms';
7
+ import { MatFormFieldModule } from '@angular/material/form-field';
8
+ import * as i1 from '@angular/material/input';
9
+ import { MatInputModule } from '@angular/material/input';
10
+ import * as i2 from '@angular/material/select';
11
+ import { MatSelectModule } from '@angular/material/select';
12
+ import * as i6 from '@ngx-translate/core';
13
+ import { TranslateModule } from '@ngx-translate/core';
14
+ import { debounceTime, startWith, combineLatestWith, map } from 'rxjs';
15
+ import * as i3 from '@onemrvapublic/design-system/mat-select-search';
16
+ import { MatSelectSearchModule } from '@onemrvapublic/design-system/mat-select-search';
17
+ import { OnemRvaCDNCountryService } from '@onemrvapublic/design-system/shared';
18
+ import { OnemrvaCountryItemComponent } from '@onemrvapublic/design-system/mat-country-item';
19
+
20
+ class OnemrvaMatInputCountryComponent {
21
+ setValue(country) {
22
+ this.country().setValue(country.code);
23
+ this.getCountry.emit(country);
24
+ }
25
+ constructor() {
26
+ this.getCountry = new EventEmitter();
27
+ this.country = input.required(...(ngDevMode ? [{ debugName: "country" }] : []));
28
+ this.readonly = input(false, ...(ngDevMode ? [{ debugName: "readonly" }] : []));
29
+ this.disabled = input(false, ...(ngDevMode ? [{ debugName: "disabled" }] : []));
30
+ this.label = input('Country', ...(ngDevMode ? [{ debugName: "label" }] : []));
31
+ this.noEntriesFoundLabel = input('Not found', ...(ngDevMode ? [{ debugName: "noEntriesFoundLabel" }] : []));
32
+ this.hint = input('', ...(ngDevMode ? [{ debugName: "hint" }] : []));
33
+ this.placeholderLabel = input('Search', ...(ngDevMode ? [{ debugName: "placeholderLabel" }] : []));
34
+ this.searchAriaLabel = input('', ...(ngDevMode ? [{ debugName: "searchAriaLabel" }] : []));
35
+ this.filterCtrl = new FormControl('');
36
+ this.cdn = inject(OnemRvaCDNCountryService);
37
+ this.countries$ = this.cdn.getCountries();
38
+ this.filteredCountries$ = this.filterCtrl.valueChanges.pipe(debounceTime(400), startWith(''), // ✅ Explicitly setting type
39
+ combineLatestWith(this.countries$), map(([search, countries]) => {
40
+ return countries.filter((country) => {
41
+ if (!search || search.trim() === '')
42
+ return true; // ✅ Avoids returning an entire array
43
+ return country.name?.toLowerCase().includes(search.toLowerCase());
44
+ });
45
+ }));
46
+ }
47
+ ngOnInit() {
48
+ this.selectedCountry$ = this.country().valueChanges.pipe(startWith(this.country().getRawValue()), // ✅ Explicitly set type
49
+ combineLatestWith(this.countries$), map(([value, countries]) => {
50
+ // ✅ Explicitly defining types
51
+ return countries.find((country) => value !== null &&
52
+ country.code.toLowerCase() ===
53
+ value.substring(0, country.code.length).toLowerCase());
54
+ }));
55
+ }
56
+ handleClick(e) {
57
+ e.stopPropagation();
58
+ }
59
+ errors() {
60
+ for (const k in this.country().errors) {
61
+ if (k === 'required') {
62
+ return 'input.country.required';
63
+ }
64
+ }
65
+ return 'input.country.unknown.error';
66
+ }
67
+ getCounrtyCode() {
68
+ return this.country().getRawValue()?.toLowerCase() ?? null;
69
+ }
70
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.7", ngImport: i0, type: OnemrvaMatInputCountryComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
71
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.1.7", type: OnemrvaMatInputCountryComponent, isStandalone: true, selector: "onemrva-mat-input-country", inputs: { country: { classPropertyName: "country", publicName: "country", isSignal: true, isRequired: true, transformFunction: null }, readonly: { classPropertyName: "readonly", publicName: "readonly", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: false, transformFunction: null }, noEntriesFoundLabel: { classPropertyName: "noEntriesFoundLabel", publicName: "noEntriesFoundLabel", isSignal: true, isRequired: false, transformFunction: null }, hint: { classPropertyName: "hint", publicName: "hint", isSignal: true, isRequired: false, transformFunction: null }, placeholderLabel: { classPropertyName: "placeholderLabel", publicName: "placeholderLabel", isSignal: true, isRequired: false, transformFunction: null }, searchAriaLabel: { classPropertyName: "searchAriaLabel", publicName: "searchAriaLabel", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { getCountry: "getCountry" }, ngImport: i0, template: "<mat-form-field class=\"onemrva-input-country\">\n <mat-label>{{ label() }}</mat-label>\n <mat-select class=\"onemrva-country-select\" [formControl]=\"country()\">\n <mat-select-trigger>\n <mat-country-item\n [countryCode]=\"getCounrtyCode()\"\n [countryName]=\"(selectedCountry$ | async)?.name\"\n />\n </mat-select-trigger>\n <mat-option>\n <mat-select-search\n [formControl]=\"filterCtrl\"\n [ariaLabel]=\"searchAriaLabel()\"\n [noEntriesFoundLabel]=\"noEntriesFoundLabel()\"\n [placeholderLabel]=\"placeholderLabel()\"\n ></mat-select-search>\n </mat-option>\n @for (country of filteredCountries$ | async; track $index) {\n <mat-option [value]=\"country.code.toLowerCase()\">\n <mat-country-item\n [countryCode]=\"country.code.toLowerCase()\"\n [countryName]=\"country.name\"\n />\n </mat-option>\n }\n </mat-select>\n @if (hint() !== '') {\n <mat-hint>{{ hint() }}</mat-hint>\n }\n @if (country().invalid) {\n <mat-error>{{ errors() | translate }}</mat-error>\n }\n</mat-form-field>\n", styles: ["mat-form-field.onemrva-input-country{width:100%}:host mat-option.mdc-list-item .country{position:relative;display:block;padding-top:var(--half-spacer)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: MatInputModule }, { kind: "component", type: i1.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i1.MatLabel, selector: "mat-label" }, { kind: "directive", type: i1.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i1.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "ngmodule", type: MatFormFieldModule }, { kind: "ngmodule", type: MatSelectModule }, { kind: "component", type: i2.MatSelect, selector: "mat-select", inputs: ["aria-describedby", "panelClass", "disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator", "placeholder", "required", "multiple", "disableOptionCentering", "compareWith", "value", "aria-label", "aria-labelledby", "errorStateMatcher", "typeaheadDebounceInterval", "sortComparator", "id", "panelWidth", "canSelectNullableOptions"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }, { kind: "directive", type: i2.MatSelectTrigger, selector: "mat-select-trigger" }, { kind: "component", type: i2.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "ngmodule", type: MatSelectSearchModule }, { kind: "component", type: i3.MatSelectSearchComponent, selector: "mat-select-search", inputs: ["placeholderLabel", "type", "closeIcon", "closeSvgIcon", "noEntriesFoundLabel", "clearSearchInput", "searching", "disableInitialFocus", "enableClearOnEscapePressed", "preventHomeEndKeyPropagation", "disableScrollToActiveOnOptionsChanged", "ariaLabel", "showToggleAllCheckbox", "toggleAllCheckboxChecked", "toggleAllCheckboxIndeterminate", "toggleAllCheckboxTooltipMessage", "toggleAllCheckboxTooltipPosition", "hideClearSearchButton", "alwaysRestoreSelectedOptionsMulti"], outputs: ["toggleAll"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "component", type: OnemrvaCountryItemComponent, selector: "mat-country-item", inputs: ["countryCode", "countryName"] }, { kind: "pipe", type: i5.AsyncPipe, name: "async" }, { kind: "pipe", type: i6.TranslatePipe, name: "translate" }], encapsulation: i0.ViewEncapsulation.None }); }
72
+ }
73
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.7", ngImport: i0, type: OnemrvaMatInputCountryComponent, decorators: [{
74
+ type: Component,
75
+ args: [{ selector: 'onemrva-mat-input-country', standalone: true, imports: [
76
+ CommonModule,
77
+ MatInputModule,
78
+ MatFormFieldModule,
79
+ MatSelectModule,
80
+ MatSelectSearchModule,
81
+ ReactiveFormsModule,
82
+ TranslateModule,
83
+ OnemrvaCountryItemComponent,
84
+ ], encapsulation: ViewEncapsulation.None, template: "<mat-form-field class=\"onemrva-input-country\">\n <mat-label>{{ label() }}</mat-label>\n <mat-select class=\"onemrva-country-select\" [formControl]=\"country()\">\n <mat-select-trigger>\n <mat-country-item\n [countryCode]=\"getCounrtyCode()\"\n [countryName]=\"(selectedCountry$ | async)?.name\"\n />\n </mat-select-trigger>\n <mat-option>\n <mat-select-search\n [formControl]=\"filterCtrl\"\n [ariaLabel]=\"searchAriaLabel()\"\n [noEntriesFoundLabel]=\"noEntriesFoundLabel()\"\n [placeholderLabel]=\"placeholderLabel()\"\n ></mat-select-search>\n </mat-option>\n @for (country of filteredCountries$ | async; track $index) {\n <mat-option [value]=\"country.code.toLowerCase()\">\n <mat-country-item\n [countryCode]=\"country.code.toLowerCase()\"\n [countryName]=\"country.name\"\n />\n </mat-option>\n }\n </mat-select>\n @if (hint() !== '') {\n <mat-hint>{{ hint() }}</mat-hint>\n }\n @if (country().invalid) {\n <mat-error>{{ errors() | translate }}</mat-error>\n }\n</mat-form-field>\n", styles: ["mat-form-field.onemrva-input-country{width:100%}:host mat-option.mdc-list-item .country{position:relative;display:block;padding-top:var(--half-spacer)}\n"] }]
85
+ }], ctorParameters: () => [], propDecorators: { getCountry: [{
86
+ type: Output
87
+ }] } });
88
+
89
+ /*
90
+ * Public API Surface of mat-bank-account-input
91
+ */
92
+
93
+ /**
94
+ * Generated bundle index. Do not edit.
95
+ */
96
+
97
+ export { OnemrvaMatInputCountryComponent };
98
+ //# sourceMappingURL=onemrvapublic-design-system-mat-input-country.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"onemrvapublic-design-system-mat-input-country.mjs","sources":["../../../../projects/onemrva/design-system/mat-input-country/src/onemrva-mat-input-country.component.ts","../../../../projects/onemrva/design-system/mat-input-country/src/onemrva-mat-input-country.component.html","../../../../projects/onemrva/design-system/mat-input-country/index.ts","../../../../projects/onemrva/design-system/mat-input-country/onemrvapublic-design-system-mat-input-country.ts"],"sourcesContent":["import { CommonModule } from '@angular/common';\nimport {\n Component,\n effect,\n EventEmitter,\n inject,\n input,\n OnInit,\n Output,\n ViewEncapsulation,\n} from '@angular/core';\nimport { FormControl, ReactiveFormsModule } from '@angular/forms';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatInputModule } from '@angular/material/input';\nimport { MatSelectModule } from '@angular/material/select';\nimport { TranslateModule } from '@ngx-translate/core';\nimport {\n Observable,\n map,\n startWith,\n debounceTime,\n combineLatestWith,\n} from 'rxjs';\nimport { MatSelectSearchModule } from '@onemrvapublic/design-system/mat-select-search';\nimport {\n OnemRvaCDNCountryService,\n OnemrvaMaterialCountry,\n} from '@onemrvapublic/design-system/shared';\nimport { OnemrvaCountryItemComponent } from '@onemrvapublic/design-system/mat-country-item';\n\n@Component({\n selector: 'onemrva-mat-input-country',\n styleUrls: ['onemrva-mat-input-country.component.scss'],\n templateUrl: 'onemrva-mat-input-country.component.html',\n standalone: true,\n imports: [\n CommonModule,\n MatInputModule,\n MatFormFieldModule,\n MatSelectModule,\n MatSelectSearchModule,\n ReactiveFormsModule,\n TranslateModule,\n OnemrvaCountryItemComponent,\n ],\n encapsulation: ViewEncapsulation.None,\n})\nexport class OnemrvaMatInputCountryComponent implements OnInit {\n @Output() getCountry = new EventEmitter<any>();\n\n country = input.required<FormControl<string | null>>();\n\n readonly = input(false);\n disabled = input(false);\n\n label = input('Country');\n noEntriesFoundLabel = input('Not found');\n hint = input('');\n placeholderLabel = input('Search');\n searchAriaLabel = input('');\n\n public filterCtrl: FormControl<string | null> = new FormControl<string>('');\n\n public countries$: Observable<OnemrvaMaterialCountry[]>;\n public filteredCountries$: Observable<OnemrvaMaterialCountry[]>;\n public selectedCountry$?: Observable<OnemrvaMaterialCountry | undefined>;\n\n public setValue(country: OnemrvaMaterialCountry) {\n this.country().setValue(country.code);\n this.getCountry.emit(country);\n }\n\n private readonly cdn = inject(OnemRvaCDNCountryService);\n\n constructor() {\n this.countries$ = this.cdn.getCountries();\n\n this.filteredCountries$ = this.filterCtrl.valueChanges.pipe(\n debounceTime(400),\n startWith<string | null>(''), // ✅ Explicitly setting type\n combineLatestWith(this.countries$),\n map(([search, countries]: [string | null, OnemrvaMaterialCountry[]]) => {\n return countries.filter((country: OnemrvaMaterialCountry) => {\n if (!search || search.trim() === '') return true; // ✅ Avoids returning an entire array\n return country.name?.toLowerCase().includes(search.toLowerCase());\n });\n }),\n );\n }\n\n ngOnInit(): void {\n this.selectedCountry$ = this.country().valueChanges.pipe(\n startWith<string | null>(this.country().getRawValue()), // ✅ Explicitly set type\n combineLatestWith(this.countries$),\n map(([value, countries]: [string | null, OnemrvaMaterialCountry[]]) => {\n // ✅ Explicitly defining types\n return countries.find(\n (country: OnemrvaMaterialCountry) =>\n value !== null &&\n country.code.toLowerCase() ===\n value.substring(0, country.code.length).toLowerCase(),\n );\n }),\n );\n }\n\n handleClick(e: any) {\n e.stopPropagation();\n }\n\n public errors() {\n for (const k in this.country().errors) {\n if (k === 'required') {\n return 'input.country.required';\n }\n }\n return 'input.country.unknown.error';\n }\n\n getCounrtyCode() {\n return this.country().getRawValue()?.toLowerCase() ?? null;\n }\n}\n","<mat-form-field class=\"onemrva-input-country\">\n <mat-label>{{ label() }}</mat-label>\n <mat-select class=\"onemrva-country-select\" [formControl]=\"country()\">\n <mat-select-trigger>\n <mat-country-item\n [countryCode]=\"getCounrtyCode()\"\n [countryName]=\"(selectedCountry$ | async)?.name\"\n />\n </mat-select-trigger>\n <mat-option>\n <mat-select-search\n [formControl]=\"filterCtrl\"\n [ariaLabel]=\"searchAriaLabel()\"\n [noEntriesFoundLabel]=\"noEntriesFoundLabel()\"\n [placeholderLabel]=\"placeholderLabel()\"\n ></mat-select-search>\n </mat-option>\n @for (country of filteredCountries$ | async; track $index) {\n <mat-option [value]=\"country.code.toLowerCase()\">\n <mat-country-item\n [countryCode]=\"country.code.toLowerCase()\"\n [countryName]=\"country.name\"\n />\n </mat-option>\n }\n </mat-select>\n @if (hint() !== '') {\n <mat-hint>{{ hint() }}</mat-hint>\n }\n @if (country().invalid) {\n <mat-error>{{ errors() | translate }}</mat-error>\n }\n</mat-form-field>\n","/*\n * Public API Surface of mat-bank-account-input\n */\n\nexport * from './src/onemrva-mat-input-country.component';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,189 @@
1
+ import * as i5 from '@angular/common';
2
+ import { CommonModule } from '@angular/common';
3
+ import * as i0 from '@angular/core';
4
+ import { EventEmitter, inject, ViewChild, Output, Input, ViewEncapsulation, Component } from '@angular/core';
5
+ import * as i3 from '@angular/forms';
6
+ import { FormControl, Validators, ReactiveFormsModule } from '@angular/forms';
7
+ import { MatFormFieldModule } from '@angular/material/form-field';
8
+ import * as i1 from '@angular/material/input';
9
+ import { MatInputModule } from '@angular/material/input';
10
+ import * as i2 from '@angular/material/select';
11
+ import { MatSelectModule } from '@angular/material/select';
12
+ import * as i6 from '@ngx-translate/core';
13
+ import { TranslateModule } from '@ngx-translate/core';
14
+ import { Subject, debounceTime, startWith, combineLatestWith, map, takeUntil, zip } from 'rxjs';
15
+ import * as i4 from '@onemrvapublic/design-system/mat-select-search';
16
+ import { MatSelectSearchModule } from '@onemrvapublic/design-system/mat-select-search';
17
+ import { OnemRvaCDNCountryService } from '@onemrvapublic/design-system/shared';
18
+ import { FlagIconComponent } from '@onemrvapublic/design-system/flag-icon';
19
+
20
+ class OnemrvaMatInputEnterpriseNumberComponent {
21
+ constructor() {
22
+ this.readonly = false;
23
+ this.label = 'VIES';
24
+ this.noEntriesFoundLabel = 'Not found';
25
+ this.placeholderLabel = 'Search';
26
+ this.defaultCountry = 'BE';
27
+ this.searchAriaLabel = '';
28
+ this.hint = '';
29
+ this.getCountry = new EventEmitter();
30
+ this.countryCode = new FormControl('');
31
+ this.filterCtrl = new FormControl('');
32
+ this.destroyNotifier$ = new Subject();
33
+ this.cdn = inject(OnemRvaCDNCountryService);
34
+ this.countries$ = this.cdn.getCountriesByZone('EU');
35
+ this.filteredCountries$ = this.filterCtrl.valueChanges.pipe(debounceTime(400), startWith(''), // ✅ Explicitly define type
36
+ combineLatestWith(this.countries$), map(([search, countries]) => {
37
+ // ✅ Explicit Tuple Types
38
+ return countries.filter((country) => {
39
+ if (!search || search.trim() === '')
40
+ return true;
41
+ return country.name?.toLowerCase().includes(search.toLowerCase());
42
+ });
43
+ }));
44
+ }
45
+ get number() {
46
+ return this.enterpriseNumber;
47
+ }
48
+ setCode(country) {
49
+ this.clearValidators();
50
+ if (country) {
51
+ this.countryCode.setValue(country.code);
52
+ this.formatEnterpriseNumber(country);
53
+ }
54
+ }
55
+ ngOnInit() {
56
+ this.number.valueChanges
57
+ .pipe(startWith(this.number.getRawValue()), takeUntil(this.destroyNotifier$))
58
+ .subscribe(number => {
59
+ if (number === '0') {
60
+ this.cdn
61
+ .findCountryFromCode(this.defaultCountry)
62
+ .pipe(takeUntil(this.destroyNotifier$))
63
+ .subscribe(country => {
64
+ if (country) {
65
+ number = country.pattern.substring(0, 2) + number;
66
+ this.number.setValue(number, { emitEvent: false });
67
+ this.countryCode.setValue(country.code);
68
+ }
69
+ else {
70
+ this.countryCode.setValue('');
71
+ }
72
+ });
73
+ }
74
+ else {
75
+ if (number.length > 1) {
76
+ this.cdn
77
+ .findCountryFromVIESCode(number)
78
+ .pipe(takeUntil(this.destroyNotifier$))
79
+ .subscribe(country => {
80
+ if (country) {
81
+ this.countryCode.setValue(country.code);
82
+ }
83
+ });
84
+ }
85
+ }
86
+ });
87
+ this.countryCode.valueChanges
88
+ .pipe(takeUntil(this.destroyNotifier$))
89
+ .subscribe(value => {
90
+ let number = this.number.getRawValue();
91
+ zip(this.cdn.findCountryFromVIESCode(number), this.cdn.findCountryFromCode(value)).subscribe(([countryFromVies, countryFromCode]) => {
92
+ if (countryFromVies) {
93
+ number = number.replace(countryFromVies.pattern.substring(0, 2), '');
94
+ }
95
+ if (countryFromCode) {
96
+ this.getCountry.next(countryFromCode);
97
+ number = countryFromCode.pattern.substring(0, 2) + number;
98
+ //this.formatEnterpriseNumber(countryFromCode); /// done twice ?
99
+ }
100
+ this.number.setValue(number, { emitEvent: false });
101
+ this.formatEnterpriseNumber(countryFromCode);
102
+ setTimeout(() => {
103
+ this.numberInput.nativeElement.focus();
104
+ }, 100);
105
+ });
106
+ });
107
+ }
108
+ clearValidators() {
109
+ let required = false;
110
+ if (this.number.hasValidator(Validators.required)) {
111
+ required = true;
112
+ }
113
+ this.number.clearValidators();
114
+ if (required) {
115
+ this.number.addValidators(Validators.required);
116
+ }
117
+ }
118
+ formatEnterpriseNumber(country) {
119
+ this.clearValidators();
120
+ if (this.countryCode.getRawValue() !== '' && country) {
121
+ this.enterpriseNumber.addValidators(Validators.pattern(new RegExp(country.pattern)));
122
+ }
123
+ }
124
+ ngOnDestroy() {
125
+ this.destroyNotifier$.next();
126
+ this.destroyNotifier$.complete();
127
+ }
128
+ handleClick(e) {
129
+ e.stopPropagation();
130
+ }
131
+ errors() {
132
+ for (const k in this.number.errors) {
133
+ if (k === 'required') {
134
+ return 'input.vies.required';
135
+ }
136
+ else {
137
+ return 'input.vies.invalid';
138
+ }
139
+ }
140
+ return 'input.vies.unknown.error';
141
+ }
142
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.7", ngImport: i0, type: OnemrvaMatInputEnterpriseNumberComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
143
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.1.7", type: OnemrvaMatInputEnterpriseNumberComponent, isStandalone: true, selector: "onemrva-mat-input-enterprise-number", inputs: { readonly: "readonly", enterpriseNumber: "enterpriseNumber", label: "label", noEntriesFoundLabel: "noEntriesFoundLabel", placeholderLabel: "placeholderLabel", defaultCountry: "defaultCountry", searchAriaLabel: "searchAriaLabel", hint: "hint" }, outputs: { getCountry: "getCountry" }, viewQueries: [{ propertyName: "numberInput", first: true, predicate: ["numberInput"], descendants: true }], ngImport: i0, template: "<ng-container>\n <mat-form-field class=\"onemrva-input-enterprise-number\">\n <mat-label>{{ label }}</mat-label>\n <input\n (click)=\"handleClick($event)\"\n type=\"text\"\n matInput\n #numberInput\n placeholder=\"\"\n [formControl]=\"enterpriseNumber\"\n class=\"onemrva-text-enterprise-number\"\n />\n <mat-select\n matTextPrefix\n class=\"onemrva-phone-number-select\"\n [formControl]=\"countryCode\"\n >\n <mat-select-trigger>\n <flag-icon [countryCode]=\"countryCode.getRawValue()\" />\n </mat-select-trigger>\n\n <mat-option>\n <mat-select-search\n [formControl]=\"filterCtrl\"\n [ariaLabel]=\"searchAriaLabel\"\n [noEntriesFoundLabel]=\"noEntriesFoundLabel\"\n [placeholderLabel]=\"placeholderLabel\"\n ></mat-select-search>\n </mat-option>\n\n @for (country of filteredCountries$ | async; track country.code) {\n <mat-option [value]=\"country.code\">\n <flag-icon [countryCode]=\"country.code\" />&nbsp;&nbsp;{{\n country.name\n }}\n </mat-option>\n }\n </mat-select>\n @if (hint !== '') {\n <mat-hint>{{ hint }}</mat-hint>\n }\n @if (number.invalid) {\n <mat-error>{{ errors() | translate }}</mat-error>\n }\n </mat-form-field>\n</ng-container>\n", styles: [".onemrva-input-enterprise-number .mdc-text-field--disabled mat-select .mat-mdc-select-arrow{opacity:.5}.onemrva-input-enterprise-number mat-select{padding:0 0 0 8px}.onemrva-input-enterprise-number mat-select .mat-mdc-select-placeholder{width:1em!important;display:block!important}.onemrva-input-enterprise-number mat-select .mat-mdc-select-placeholder:before{width:1em!important;height:1em!important;background:#eee!important;visibility:visible!important;margin:10px 0!important}.onemrva-input-enterprise-number mat-select .mat-mdc-select-value{padding-right:8px}.onemrva-input-enterprise-number .onemrva-text-enterprise-number{padding-left:12px!important;vertical-align:middle}.onemrva-input-enterprise-number .mat-mdc-form-field-text-prefix mat-select{line-height:14px!important}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: MatInputModule }, { kind: "directive", type: i1.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly", "disabledInteractive"], exportAs: ["matInput"] }, { kind: "component", type: i1.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i1.MatLabel, selector: "mat-label" }, { kind: "directive", type: i1.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i1.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "directive", type: i1.MatPrefix, selector: "[matPrefix], [matIconPrefix], [matTextPrefix]", inputs: ["matTextPrefix"] }, { kind: "ngmodule", type: MatFormFieldModule }, { kind: "ngmodule", type: MatSelectModule }, { kind: "component", type: i2.MatSelect, selector: "mat-select", inputs: ["aria-describedby", "panelClass", "disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator", "placeholder", "required", "multiple", "disableOptionCentering", "compareWith", "value", "aria-label", "aria-labelledby", "errorStateMatcher", "typeaheadDebounceInterval", "sortComparator", "id", "panelWidth", "canSelectNullableOptions"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }, { kind: "directive", type: i2.MatSelectTrigger, selector: "mat-select-trigger" }, { kind: "component", type: i2.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "component", type: FlagIconComponent, selector: "flag-icon", inputs: ["countryCode", "mode", "width"] }, { kind: "ngmodule", type: MatSelectSearchModule }, { kind: "component", type: i4.MatSelectSearchComponent, selector: "mat-select-search", inputs: ["placeholderLabel", "type", "closeIcon", "closeSvgIcon", "noEntriesFoundLabel", "clearSearchInput", "searching", "disableInitialFocus", "enableClearOnEscapePressed", "preventHomeEndKeyPropagation", "disableScrollToActiveOnOptionsChanged", "ariaLabel", "showToggleAllCheckbox", "toggleAllCheckboxChecked", "toggleAllCheckboxIndeterminate", "toggleAllCheckboxTooltipMessage", "toggleAllCheckboxTooltipPosition", "hideClearSearchButton", "alwaysRestoreSelectedOptionsMulti"], outputs: ["toggleAll"] }, { kind: "pipe", type: i5.AsyncPipe, name: "async" }, { kind: "pipe", type: i6.TranslatePipe, name: "translate" }], encapsulation: i0.ViewEncapsulation.None }); }
144
+ }
145
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.7", ngImport: i0, type: OnemrvaMatInputEnterpriseNumberComponent, decorators: [{
146
+ type: Component,
147
+ args: [{ selector: 'onemrva-mat-input-enterprise-number', standalone: true, imports: [
148
+ CommonModule,
149
+ MatInputModule,
150
+ MatFormFieldModule,
151
+ MatSelectModule,
152
+ ReactiveFormsModule,
153
+ TranslateModule,
154
+ FlagIconComponent,
155
+ MatSelectSearchModule,
156
+ ], encapsulation: ViewEncapsulation.None, template: "<ng-container>\n <mat-form-field class=\"onemrva-input-enterprise-number\">\n <mat-label>{{ label }}</mat-label>\n <input\n (click)=\"handleClick($event)\"\n type=\"text\"\n matInput\n #numberInput\n placeholder=\"\"\n [formControl]=\"enterpriseNumber\"\n class=\"onemrva-text-enterprise-number\"\n />\n <mat-select\n matTextPrefix\n class=\"onemrva-phone-number-select\"\n [formControl]=\"countryCode\"\n >\n <mat-select-trigger>\n <flag-icon [countryCode]=\"countryCode.getRawValue()\" />\n </mat-select-trigger>\n\n <mat-option>\n <mat-select-search\n [formControl]=\"filterCtrl\"\n [ariaLabel]=\"searchAriaLabel\"\n [noEntriesFoundLabel]=\"noEntriesFoundLabel\"\n [placeholderLabel]=\"placeholderLabel\"\n ></mat-select-search>\n </mat-option>\n\n @for (country of filteredCountries$ | async; track country.code) {\n <mat-option [value]=\"country.code\">\n <flag-icon [countryCode]=\"country.code\" />&nbsp;&nbsp;{{\n country.name\n }}\n </mat-option>\n }\n </mat-select>\n @if (hint !== '') {\n <mat-hint>{{ hint }}</mat-hint>\n }\n @if (number.invalid) {\n <mat-error>{{ errors() | translate }}</mat-error>\n }\n </mat-form-field>\n</ng-container>\n", styles: [".onemrva-input-enterprise-number .mdc-text-field--disabled mat-select .mat-mdc-select-arrow{opacity:.5}.onemrva-input-enterprise-number mat-select{padding:0 0 0 8px}.onemrva-input-enterprise-number mat-select .mat-mdc-select-placeholder{width:1em!important;display:block!important}.onemrva-input-enterprise-number mat-select .mat-mdc-select-placeholder:before{width:1em!important;height:1em!important;background:#eee!important;visibility:visible!important;margin:10px 0!important}.onemrva-input-enterprise-number mat-select .mat-mdc-select-value{padding-right:8px}.onemrva-input-enterprise-number .onemrva-text-enterprise-number{padding-left:12px!important;vertical-align:middle}.onemrva-input-enterprise-number .mat-mdc-form-field-text-prefix mat-select{line-height:14px!important}\n"] }]
157
+ }], ctorParameters: () => [], propDecorators: { readonly: [{
158
+ type: Input
159
+ }], enterpriseNumber: [{
160
+ type: Input
161
+ }], label: [{
162
+ type: Input
163
+ }], noEntriesFoundLabel: [{
164
+ type: Input
165
+ }], placeholderLabel: [{
166
+ type: Input
167
+ }], defaultCountry: [{
168
+ type: Input
169
+ }], searchAriaLabel: [{
170
+ type: Input
171
+ }], hint: [{
172
+ type: Input
173
+ }], getCountry: [{
174
+ type: Output
175
+ }], numberInput: [{
176
+ type: ViewChild,
177
+ args: ['numberInput']
178
+ }] } });
179
+
180
+ /*
181
+ * Public API Surface of mat-bank-account-input
182
+ */
183
+
184
+ /**
185
+ * Generated bundle index. Do not edit.
186
+ */
187
+
188
+ export { OnemrvaMatInputEnterpriseNumberComponent };
189
+ //# sourceMappingURL=onemrvapublic-design-system-mat-input-enterprise-number.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"onemrvapublic-design-system-mat-input-enterprise-number.mjs","sources":["../../../../projects/onemrva/design-system/mat-input-enterprise-number/src/onemrva-mat-input-enterprise-number.component.ts","../../../../projects/onemrva/design-system/mat-input-enterprise-number/src/onemrva-mat-input-enterprise-number.component.html","../../../../projects/onemrva/design-system/mat-input-enterprise-number/index.ts","../../../../projects/onemrva/design-system/mat-input-enterprise-number/onemrvapublic-design-system-mat-input-enterprise-number.ts"],"sourcesContent":["import { CommonModule } from '@angular/common';\nimport {\n Component,\n ElementRef,\n EventEmitter,\n inject,\n Input,\n OnDestroy,\n OnInit,\n Output,\n ViewChild,\n ViewEncapsulation,\n} from '@angular/core';\nimport { FormControl, ReactiveFormsModule, Validators } from '@angular/forms';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatInputModule } from '@angular/material/input';\nimport { MatSelectModule } from '@angular/material/select';\nimport { TranslateModule } from '@ngx-translate/core';\nimport {\n combineLatestWith,\n debounceTime,\n map,\n Observable,\n startWith,\n Subject,\n takeUntil,\n zip,\n} from 'rxjs';\nimport { MatSelectSearchModule } from '@onemrvapublic/design-system/mat-select-search';\nimport {\n OnemRvaCDNCountryService,\n OnemrvaMaterialCountry,\n} from '@onemrvapublic/design-system/shared';\nimport { FlagIconComponent } from '@onemrvapublic/design-system/flag-icon';\n\n@Component({\n selector: 'onemrva-mat-input-enterprise-number',\n styleUrls: ['onemrva-mat-input-enterprise-number.component.scss'],\n templateUrl: 'onemrva-mat-input-enterprise-number.component.html',\n standalone: true,\n imports: [\n CommonModule,\n MatInputModule,\n MatFormFieldModule,\n MatSelectModule,\n ReactiveFormsModule,\n TranslateModule,\n FlagIconComponent,\n MatSelectSearchModule,\n ],\n encapsulation: ViewEncapsulation.None,\n})\nexport class OnemrvaMatInputEnterpriseNumberComponent\n implements OnInit, OnDestroy\n{\n @Input()\n readonly = false;\n\n @Input() enterpriseNumber!: FormControl;\n @Input() label = 'VIES';\n @Input() noEntriesFoundLabel = 'Not found';\n @Input() placeholderLabel = 'Search';\n @Input() defaultCountry = 'BE';\n @Input() searchAriaLabel = '';\n @Input() hint = '';\n @Output() getCountry = new EventEmitter<any>();\n @ViewChild('numberInput') numberInput!: ElementRef;\n\n countryCode: FormControl = new FormControl('');\n\n public filterCtrl: FormControl<string | null> = new FormControl<string>('');\n\n destroyNotifier$ = new Subject<void>();\n\n private readonly cdn = inject(OnemRvaCDNCountryService);\n public countries$: Observable<OnemrvaMaterialCountry[]> =\n this.cdn.getCountriesByZone('EU');\n public filteredCountries$: Observable<OnemrvaMaterialCountry[]>;\n\n constructor() {\n this.filteredCountries$ = this.filterCtrl.valueChanges.pipe(\n debounceTime(400),\n startWith<string | null>(''), // ✅ Explicitly define type\n combineLatestWith(this.countries$),\n map(([search, countries]: [string | null, OnemrvaMaterialCountry[]]) => {\n // ✅ Explicit Tuple Types\n return countries.filter((country: OnemrvaMaterialCountry) => {\n if (!search || search.trim() === '') return true;\n return country.name?.toLowerCase().includes(search.toLowerCase());\n });\n }),\n );\n }\n\n get number(): FormControl {\n return this.enterpriseNumber as FormControl;\n }\n\n setCode(country: OnemrvaMaterialCountry | null) {\n this.clearValidators();\n if (country) {\n this.countryCode.setValue(country.code);\n this.formatEnterpriseNumber(country);\n }\n }\n\n ngOnInit(): void {\n this.number.valueChanges\n .pipe(\n startWith(this.number.getRawValue()),\n takeUntil(this.destroyNotifier$),\n )\n .subscribe(number => {\n if (number === '0') {\n this.cdn\n .findCountryFromCode(this.defaultCountry)\n .pipe(takeUntil(this.destroyNotifier$))\n .subscribe(country => {\n if (country) {\n number = country.pattern.substring(0, 2) + number;\n this.number.setValue(number, { emitEvent: false });\n this.countryCode.setValue(country.code);\n } else {\n this.countryCode.setValue('');\n }\n });\n } else {\n if (number.length > 1) {\n this.cdn\n .findCountryFromVIESCode(number)\n .pipe(takeUntil(this.destroyNotifier$))\n .subscribe(country => {\n if (country) {\n this.countryCode.setValue(country.code);\n }\n });\n }\n }\n });\n\n this.countryCode.valueChanges\n .pipe(takeUntil(this.destroyNotifier$))\n .subscribe(value => {\n let number = this.number.getRawValue();\n zip(\n this.cdn.findCountryFromVIESCode(number),\n this.cdn.findCountryFromCode(value),\n ).subscribe(([countryFromVies, countryFromCode]) => {\n if (countryFromVies) {\n number = number.replace(\n countryFromVies.pattern.substring(0, 2),\n '',\n );\n }\n if (countryFromCode) {\n this.getCountry.next(countryFromCode);\n number = countryFromCode.pattern.substring(0, 2) + number;\n //this.formatEnterpriseNumber(countryFromCode); /// done twice ?\n }\n this.number.setValue(number, { emitEvent: false });\n this.formatEnterpriseNumber(countryFromCode);\n setTimeout(() => {\n this.numberInput.nativeElement.focus();\n }, 100);\n });\n });\n }\n\n clearValidators() {\n let required = false;\n if (this.number.hasValidator(Validators.required)) {\n required = true;\n }\n this.number.clearValidators();\n if (required) {\n this.number.addValidators(Validators.required);\n }\n }\n\n formatEnterpriseNumber(country: OnemrvaMaterialCountry | undefined) {\n this.clearValidators();\n if (this.countryCode.getRawValue() !== '' && country) {\n this.enterpriseNumber.addValidators(\n Validators.pattern(new RegExp(country.pattern)),\n );\n }\n }\n\n ngOnDestroy() {\n this.destroyNotifier$.next();\n this.destroyNotifier$.complete();\n }\n\n handleClick(e: any) {\n e.stopPropagation();\n }\n\n errors() {\n for (const k in this.number.errors) {\n if (k === 'required') {\n return 'input.vies.required';\n } else {\n return 'input.vies.invalid';\n }\n }\n return 'input.vies.unknown.error';\n }\n}\n","<ng-container>\n <mat-form-field class=\"onemrva-input-enterprise-number\">\n <mat-label>{{ label }}</mat-label>\n <input\n (click)=\"handleClick($event)\"\n type=\"text\"\n matInput\n #numberInput\n placeholder=\"\"\n [formControl]=\"enterpriseNumber\"\n class=\"onemrva-text-enterprise-number\"\n />\n <mat-select\n matTextPrefix\n class=\"onemrva-phone-number-select\"\n [formControl]=\"countryCode\"\n >\n <mat-select-trigger>\n <flag-icon [countryCode]=\"countryCode.getRawValue()\" />\n </mat-select-trigger>\n\n <mat-option>\n <mat-select-search\n [formControl]=\"filterCtrl\"\n [ariaLabel]=\"searchAriaLabel\"\n [noEntriesFoundLabel]=\"noEntriesFoundLabel\"\n [placeholderLabel]=\"placeholderLabel\"\n ></mat-select-search>\n </mat-option>\n\n @for (country of filteredCountries$ | async; track country.code) {\n <mat-option [value]=\"country.code\">\n <flag-icon [countryCode]=\"country.code\" />&nbsp;&nbsp;{{\n country.name\n }}\n </mat-option>\n }\n </mat-select>\n @if (hint !== '') {\n <mat-hint>{{ hint }}</mat-hint>\n }\n @if (number.invalid) {\n <mat-error>{{ errors() | translate }}</mat-error>\n }\n </mat-form-field>\n</ng-container>\n","/*\n * Public API Surface of mat-bank-account-input\n */\n\nexport * from './src/onemrva-mat-input-enterprise-number.component';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}