@onemrvapublic/design-system 20.11.3 → 21.0.0-develop.2

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 (205) hide show
  1. package/README.md +5 -9
  2. package/fesm2022/onemrvapublic-design-system-flag-icon.mjs +14 -20
  3. package/fesm2022/onemrvapublic-design-system-flag-icon.mjs.map +1 -1
  4. package/fesm2022/onemrvapublic-design-system-layout.mjs +207 -290
  5. package/fesm2022/onemrvapublic-design-system-layout.mjs.map +1 -1
  6. package/fesm2022/onemrvapublic-design-system-mat-address.mjs +19 -25
  7. package/fesm2022/onemrvapublic-design-system-mat-address.mjs.map +1 -1
  8. package/fesm2022/onemrvapublic-design-system-mat-avatar.mjs +58 -223
  9. package/fesm2022/onemrvapublic-design-system-mat-avatar.mjs.map +1 -1
  10. package/fesm2022/onemrvapublic-design-system-mat-breadcrumb.mjs +47 -53
  11. package/fesm2022/onemrvapublic-design-system-mat-breadcrumb.mjs.map +1 -1
  12. package/fesm2022/onemrvapublic-design-system-mat-carousel.mjs +50 -71
  13. package/fesm2022/onemrvapublic-design-system-mat-carousel.mjs.map +1 -1
  14. package/fesm2022/onemrvapublic-design-system-mat-choice-chip.mjs +27 -29
  15. package/fesm2022/onemrvapublic-design-system-mat-choice-chip.mjs.map +1 -1
  16. package/fesm2022/onemrvapublic-design-system-mat-copy-to-clipboard.mjs +24 -42
  17. package/fesm2022/onemrvapublic-design-system-mat-copy-to-clipboard.mjs.map +1 -1
  18. package/fesm2022/onemrvapublic-design-system-mat-country-item.mjs +8 -12
  19. package/fesm2022/onemrvapublic-design-system-mat-country-item.mjs.map +1 -1
  20. package/fesm2022/onemrvapublic-design-system-mat-datepicker-header.mjs +4 -4
  21. package/fesm2022/onemrvapublic-design-system-mat-datepicker-header.mjs.map +1 -1
  22. package/fesm2022/onemrvapublic-design-system-mat-empty-row.mjs +10 -18
  23. package/fesm2022/onemrvapublic-design-system-mat-empty-row.mjs.map +1 -1
  24. package/fesm2022/onemrvapublic-design-system-mat-file-upload.mjs +98 -173
  25. package/fesm2022/onemrvapublic-design-system-mat-file-upload.mjs.map +1 -1
  26. package/fesm2022/onemrvapublic-design-system-mat-input-address.mjs +32 -52
  27. package/fesm2022/onemrvapublic-design-system-mat-input-address.mjs.map +1 -1
  28. package/fesm2022/onemrvapublic-design-system-mat-input-birthplace.mjs +10 -13
  29. package/fesm2022/onemrvapublic-design-system-mat-input-birthplace.mjs.map +1 -1
  30. package/fesm2022/onemrvapublic-design-system-mat-input-country.mjs +10 -13
  31. package/fesm2022/onemrvapublic-design-system-mat-input-country.mjs.map +1 -1
  32. package/fesm2022/onemrvapublic-design-system-mat-input-enterprise-number.mjs +24 -44
  33. package/fesm2022/onemrvapublic-design-system-mat-input-enterprise-number.mjs.map +1 -1
  34. package/fesm2022/onemrvapublic-design-system-mat-input-iban.mjs +22 -40
  35. package/fesm2022/onemrvapublic-design-system-mat-input-iban.mjs.map +1 -1
  36. package/fesm2022/onemrvapublic-design-system-mat-input-phone.mjs +26 -39
  37. package/fesm2022/onemrvapublic-design-system-mat-input-phone.mjs.map +1 -1
  38. package/fesm2022/onemrvapublic-design-system-mat-message-box.mjs +45 -180
  39. package/fesm2022/onemrvapublic-design-system-mat-message-box.mjs.map +1 -1
  40. package/fesm2022/onemrvapublic-design-system-mat-multi-select.mjs +38 -63
  41. package/fesm2022/onemrvapublic-design-system-mat-multi-select.mjs.map +1 -1
  42. package/fesm2022/onemrvapublic-design-system-mat-navigation.mjs +40 -65
  43. package/fesm2022/onemrvapublic-design-system-mat-navigation.mjs.map +1 -1
  44. package/fesm2022/onemrvapublic-design-system-mat-notification.mjs +19 -59
  45. package/fesm2022/onemrvapublic-design-system-mat-notification.mjs.map +1 -1
  46. package/fesm2022/onemrvapublic-design-system-mat-paginator.mjs +23 -49
  47. package/fesm2022/onemrvapublic-design-system-mat-paginator.mjs.map +1 -1
  48. package/fesm2022/onemrvapublic-design-system-mat-panel.mjs +61 -101
  49. package/fesm2022/onemrvapublic-design-system-mat-panel.mjs.map +1 -1
  50. package/fesm2022/onemrvapublic-design-system-mat-pop-over.mjs +30 -50
  51. package/fesm2022/onemrvapublic-design-system-mat-pop-over.mjs.map +1 -1
  52. package/fesm2022/onemrvapublic-design-system-mat-progress-bar.mjs +26 -38
  53. package/fesm2022/onemrvapublic-design-system-mat-progress-bar.mjs.map +1 -1
  54. package/fesm2022/onemrvapublic-design-system-mat-select-search.mjs +66 -105
  55. package/fesm2022/onemrvapublic-design-system-mat-select-search.mjs.map +1 -1
  56. package/fesm2022/onemrvapublic-design-system-mat-selectable-box.mjs +23 -43
  57. package/fesm2022/onemrvapublic-design-system-mat-selectable-box.mjs.map +1 -1
  58. package/fesm2022/onemrvapublic-design-system-mat-side-menu.mjs +15 -26
  59. package/fesm2022/onemrvapublic-design-system-mat-side-menu.mjs.map +1 -1
  60. package/fesm2022/onemrvapublic-design-system-mat-skeleton.mjs +62 -177
  61. package/fesm2022/onemrvapublic-design-system-mat-skeleton.mjs.map +1 -1
  62. package/fesm2022/onemrvapublic-design-system-mat-spinner.mjs +17 -21
  63. package/fesm2022/onemrvapublic-design-system-mat-spinner.mjs.map +1 -1
  64. package/fesm2022/onemrvapublic-design-system-mat-stepper.mjs +14 -22
  65. package/fesm2022/onemrvapublic-design-system-mat-stepper.mjs.map +1 -1
  66. package/fesm2022/onemrvapublic-design-system-mat-sticker.mjs +8 -8
  67. package/fesm2022/onemrvapublic-design-system-mat-sticker.mjs.map +1 -1
  68. package/fesm2022/onemrvapublic-design-system-mat-table-of-content.mjs +79 -93
  69. package/fesm2022/onemrvapublic-design-system-mat-table-of-content.mjs.map +1 -1
  70. package/fesm2022/onemrvapublic-design-system-mat-task-list.mjs +59 -94
  71. package/fesm2022/onemrvapublic-design-system-mat-task-list.mjs.map +1 -1
  72. package/fesm2022/onemrvapublic-design-system-mat-timepicker.mjs +178 -245
  73. package/fesm2022/onemrvapublic-design-system-mat-timepicker.mjs.map +1 -1
  74. package/fesm2022/onemrvapublic-design-system-mat-toast.mjs +7 -7
  75. package/fesm2022/onemrvapublic-design-system-mat-toast.mjs.map +1 -1
  76. package/fesm2022/onemrvapublic-design-system-mat-tooltip.mjs +33 -43
  77. package/fesm2022/onemrvapublic-design-system-mat-tooltip.mjs.map +1 -1
  78. package/fesm2022/onemrvapublic-design-system-page-error.mjs +33 -39
  79. package/fesm2022/onemrvapublic-design-system-page-error.mjs.map +1 -1
  80. package/fesm2022/onemrvapublic-design-system-page-not-found.mjs +38 -42
  81. package/fesm2022/onemrvapublic-design-system-page-not-found.mjs.map +1 -1
  82. package/fesm2022/onemrvapublic-design-system-shared.mjs +188 -312
  83. package/fesm2022/onemrvapublic-design-system-shared.mjs.map +1 -1
  84. package/fesm2022/onemrvapublic-design-system-utils.mjs.map +1 -1
  85. package/mat-choice-chip/src/onemrva-mat-choice-chip.component.scss +13 -3
  86. package/mat-empty-row/src/onemrva-mat-empty-row.component.scss +2 -2
  87. package/mat-file-upload/src/components/onemrva-mat-file-panel/onemrva-file-panel.component.scss +1 -1
  88. package/mat-input-phone/src/onemrva-mat-input-phone.component.scss +1 -1
  89. package/mat-panel/src/onemrva-mat-panel-content.scss +1 -1
  90. package/mat-skeleton/src/onemrva-mat-skeleton.component.scss +1 -1
  91. package/mat-table-of-content/src/onemrva-mat-table-of-content.component.scss +10 -2
  92. package/package.json +72 -62
  93. package/theme/index.scss +230 -0
  94. package/theme/overrides/_autocomplete.scss +9 -0
  95. package/theme/overrides/_button-toggle.scss +14 -0
  96. package/theme/overrides/_button.scss +140 -0
  97. package/theme/overrides/_card.scss +34 -0
  98. package/theme/overrides/_carousel.scss +13 -0
  99. package/theme/overrides/_checkbox.scss +49 -0
  100. package/theme/overrides/_chips.scss +42 -0
  101. package/theme/overrides/_datepicker.scss +10 -0
  102. package/theme/overrides/_dialogs.scss +118 -0
  103. package/theme/overrides/_divider.scss +9 -0
  104. package/theme/overrides/_drag-and-drop.scss +74 -0
  105. package/theme/overrides/_expansion.scss +51 -0
  106. package/theme/overrides/_fab.scss +45 -0
  107. package/theme/overrides/_form-field.scss +223 -0
  108. package/theme/overrides/_icon-button.scss +24 -0
  109. package/theme/overrides/_icon.scss +97 -0
  110. package/theme/overrides/_input.scss +18 -0
  111. package/theme/overrides/_layout.scss +35 -0
  112. package/theme/overrides/_menu.scss +45 -0
  113. package/theme/overrides/_option.scss +15 -0
  114. package/theme/overrides/_panel.scss +59 -0
  115. package/theme/overrides/_progress-bar.scss +29 -0
  116. package/theme/overrides/_radio.scss +16 -0
  117. package/theme/overrides/_select.scss +124 -0
  118. package/theme/overrides/_sidenav.scss +13 -0
  119. package/theme/overrides/_slide-toggle.scss +53 -0
  120. package/theme/overrides/_stepper.scss +196 -0
  121. package/theme/overrides/_stickers.scss +13 -0
  122. package/theme/overrides/_table.scss +115 -0
  123. package/theme/overrides/_tabs.scss +20 -0
  124. package/theme/overrides/_toast.scss +16 -0
  125. package/theme/overrides/_toc.scss +26 -0
  126. package/theme/overrides/_toolbar.scss +26 -0
  127. package/theme/overrides/_tooltip.scss +19 -0
  128. package/theme/palettes/_palette.scss +189 -0
  129. package/theme/utilities/_animations.scss +54 -0
  130. package/theme/utilities/_container.scss +14 -0
  131. package/theme/utilities/_fonts.scss +170 -0
  132. package/theme/utilities/_grid.scss +75 -0
  133. package/theme/utilities/_media.scss +33 -0
  134. package/theme/utilities/_palettes.scss +120 -0
  135. package/theme/utilities/_spacing.scss +86 -0
  136. package/theme/utilities/_tokens.scss +123 -0
  137. package/theme/utilities/_utilities.scss +351 -0
  138. package/theme/utilities/_variables.scss +42 -0
  139. package/types/onemrvapublic-design-system-flag-icon.d.ts +18 -0
  140. package/types/onemrvapublic-design-system-layout.d.ts +305 -0
  141. package/{mat-address/index.d.ts → types/onemrvapublic-design-system-mat-address.d.ts} +8 -8
  142. package/types/onemrvapublic-design-system-mat-avatar.d.ts +67 -0
  143. package/{mat-breadcrumb/index.d.ts → types/onemrvapublic-design-system-mat-breadcrumb.d.ts} +8 -6
  144. package/types/onemrvapublic-design-system-mat-carousel.d.ts +52 -0
  145. package/types/onemrvapublic-design-system-mat-choice-chip.d.ts +23 -0
  146. package/types/onemrvapublic-design-system-mat-copy-to-clipboard.d.ts +25 -0
  147. package/types/onemrvapublic-design-system-mat-country-item.d.ts +10 -0
  148. package/types/onemrvapublic-design-system-mat-empty-row.d.ts +18 -0
  149. package/{mat-file-upload/index.d.ts → types/onemrvapublic-design-system-mat-file-upload.d.ts} +53 -51
  150. package/types/onemrvapublic-design-system-mat-input-address.d.ts +32 -0
  151. package/{mat-input-birthplace/index.d.ts → types/onemrvapublic-design-system-mat-input-birthplace.d.ts} +10 -10
  152. package/{mat-input-country/index.d.ts → types/onemrvapublic-design-system-mat-input-country.d.ts} +2 -2
  153. package/types/onemrvapublic-design-system-mat-input-enterprise-number.d.ts +37 -0
  154. package/{mat-input-iban/index.d.ts → types/onemrvapublic-design-system-mat-input-iban.d.ts} +12 -13
  155. package/{mat-input-phone/index.d.ts → types/onemrvapublic-design-system-mat-input-phone.d.ts} +12 -12
  156. package/types/onemrvapublic-design-system-mat-message-box.d.ts +29 -0
  157. package/types/onemrvapublic-design-system-mat-multi-select.d.ts +57 -0
  158. package/types/onemrvapublic-design-system-mat-navigation.d.ts +55 -0
  159. package/types/onemrvapublic-design-system-mat-notification.d.ts +23 -0
  160. package/types/onemrvapublic-design-system-mat-paginator.d.ts +58 -0
  161. package/types/onemrvapublic-design-system-mat-panel.d.ts +66 -0
  162. package/types/onemrvapublic-design-system-mat-pop-over.d.ts +40 -0
  163. package/types/onemrvapublic-design-system-mat-progress-bar.d.ts +16 -0
  164. package/{mat-select-search/index.d.ts → types/onemrvapublic-design-system-mat-select-search.d.ts} +35 -35
  165. package/types/onemrvapublic-design-system-mat-selectable-box.d.ts +26 -0
  166. package/{mat-side-menu/index.d.ts → types/onemrvapublic-design-system-mat-side-menu.d.ts} +6 -6
  167. package/types/onemrvapublic-design-system-mat-skeleton.d.ts +82 -0
  168. package/{mat-spinner/index.d.ts → types/onemrvapublic-design-system-mat-spinner.d.ts} +3 -4
  169. package/{mat-stepper/index.d.ts → types/onemrvapublic-design-system-mat-stepper.d.ts} +3 -6
  170. package/types/onemrvapublic-design-system-mat-table-of-content.d.ts +85 -0
  171. package/types/onemrvapublic-design-system-mat-task-list.d.ts +56 -0
  172. package/{mat-timepicker/index.d.ts → types/onemrvapublic-design-system-mat-timepicker.d.ts} +50 -66
  173. package/types/onemrvapublic-design-system-mat-tooltip.d.ts +40 -0
  174. package/types/onemrvapublic-design-system-page-error.d.ts +29 -0
  175. package/{page-not-found/index.d.ts → types/onemrvapublic-design-system-page-not-found.d.ts} +6 -6
  176. package/{shared/index.d.ts → types/onemrvapublic-design-system-shared.d.ts} +47 -71
  177. package/flag-icon/index.d.ts +0 -18
  178. package/layout/index.d.ts +0 -295
  179. package/mat-avatar/index.d.ts +0 -187
  180. package/mat-carousel/index.d.ts +0 -52
  181. package/mat-choice-chip/index.d.ts +0 -21
  182. package/mat-copy-to-clipboard/index.d.ts +0 -25
  183. package/mat-country-item/index.d.ts +0 -10
  184. package/mat-empty-row/index.d.ts +0 -19
  185. package/mat-input-address/index.d.ts +0 -32
  186. package/mat-input-enterprise-number/index.d.ts +0 -37
  187. package/mat-message-box/index.d.ts +0 -101
  188. package/mat-multi-select/index.d.ts +0 -57
  189. package/mat-navigation/index.d.ts +0 -54
  190. package/mat-notification/index.d.ts +0 -43
  191. package/mat-paginator/index.d.ts +0 -58
  192. package/mat-panel/index.d.ts +0 -66
  193. package/mat-pop-over/index.d.ts +0 -40
  194. package/mat-progress-bar/index.d.ts +0 -18
  195. package/mat-selectable-box/index.d.ts +0 -29
  196. package/mat-skeleton/index.d.ts +0 -100
  197. package/mat-table-of-content/index.d.ts +0 -84
  198. package/mat-task-list/index.d.ts +0 -57
  199. package/mat-tooltip/index.d.ts +0 -40
  200. package/page-error/index.d.ts +0 -34
  201. /package/{mat-datepicker-header/index.d.ts → types/onemrvapublic-design-system-mat-datepicker-header.d.ts} +0 -0
  202. /package/{mat-sticker/index.d.ts → types/onemrvapublic-design-system-mat-sticker.d.ts} +0 -0
  203. /package/{mat-toast/index.d.ts → types/onemrvapublic-design-system-mat-toast.d.ts} +0 -0
  204. /package/{utils/index.d.ts → types/onemrvapublic-design-system-utils.d.ts} +0 -0
  205. /package/{index.d.ts → types/onemrvapublic-design-system.d.ts} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"onemrvapublic-design-system-mat-pop-over.mjs","sources":["../../../../projects/onemrva/design-system/mat-pop-over/src/onemrva-mat-pop-over-trigger.component.ts","../../../../projects/onemrva/design-system/mat-pop-over/src/onemrva-mat-pop-over-content.component.ts","../../../../projects/onemrva/design-system/mat-pop-over/src/onemrva-mat-pop-over.component.ts","../../../../projects/onemrva/design-system/mat-pop-over/src/onemrva-mat-pop-over.component.html","../../../../projects/onemrva/design-system/mat-pop-over/src/onemrva-mat-pop-over.module.ts","../../../../projects/onemrva/design-system/mat-pop-over/onemrvapublic-design-system-mat-pop-over.ts"],"sourcesContent":["import { Component, Input, TemplateRef, ViewChild } from '@angular/core';\n\nlet index = 0;\n\n@Component({\n selector: 'onemrva-mat-pop-over-trigger',\n template: '<ng-template><ng-content></ng-content></ng-template>',\n standalone: true,\n})\nexport class OnemrvaMatPopOverTriggerComponent {\n @Input() dataCy = `onemrvaMatPopOverTrigger_${++index}`;\n\n @ViewChild(TemplateRef) template?: TemplateRef<any>;\n}\n","import { Component, Input, TemplateRef, ViewChild } from '@angular/core';\n\nlet index = 0;\n\n@Component({\n selector: 'onemrva-mat-pop-over-content',\n template: '<ng-template><ng-content></ng-content></ng-template>',\n standalone: true,\n})\nexport class OnemrvaMatPopOverContentComponent {\n @Input() dataCy = `onemrvaMatPopOverContent_${++index}`;\n\n @ViewChild(TemplateRef) template?: TemplateRef<any>;\n}\n","import {\n AfterViewInit,\n ChangeDetectorRef,\n Component,\n ContentChild,\n inject,\n Input,\n} from '@angular/core';\nimport { OnemrvaMatPopOverTriggerComponent } from './onemrva-mat-pop-over-trigger.component';\nimport { OnemrvaMatPopOverContentComponent } from './onemrva-mat-pop-over-content.component';\nimport { NgClass, NgTemplateOutlet } from '@angular/common';\nlet NEXT_ID = 0;\n@Component({\n selector: 'onemrva-mat-pop-over',\n styleUrls: ['./onemrva-mat-pop-over.component.scss'],\n templateUrl: 'onemrva-mat-pop-over.component.html',\n standalone: true,\n imports: [NgTemplateOutlet, NgClass],\n})\nexport class OnemrvaMatPopOverComponent implements AfterViewInit {\n isOpen = false;\n\n @Input() position: 'top-left' | 'top-right' | 'bottom-left' | 'bottom-right' =\n 'bottom-right';\n\n @Input() dataCyTrigger = 'onemrva-po-trigger';\n @Input() dataCyPo = 'onemrva-po';\n\n @Input() poId: string = this.dataCyPo + '-' + NEXT_ID++; // HTML id for the trigger\n\n @ContentChild(OnemrvaMatPopOverTriggerComponent)\n trigger?: OnemrvaMatPopOverTriggerComponent;\n\n @ContentChild(OnemrvaMatPopOverContentComponent)\n content?: OnemrvaMatPopOverContentComponent;\n\n private readonly cd = inject(ChangeDetectorRef);\n\n ngAfterViewInit(): void {\n this.cd.detectChanges();\n }\n\n togglePopOver() {\n this.isOpen = !this.isOpen;\n }\n\n closePopOver() {\n this.isOpen = false;\n }\n}\n","<div class=\"onemrva-pop-over\">\n @if (isOpen) {\n <div class=\"onemrva-overlay\" tabindex=\"1\" (click)=\"closePopOver()\"></div>\n }\n <a\n tabindex=\"1\"\n class=\"onemrva-pop-over-trigger\"\n (click)=\"togglePopOver()\"\n [attr.data-cy]=\"dataCyTrigger\"\n role=\"button\"\n [attr.aria-expanded]=\"isOpen\"\n [id]=\"poId\"\n >\n @if (trigger?.template; as tpl) {\n <ng-container *ngTemplateOutlet=\"tpl\"></ng-container>\n }\n </a>\n\n @if (isOpen) {\n @if (content?.template; as tpl) {\n <div\n class=\"onemrva-pop-over-frame\"\n [ngClass]=\"position\"\n [attr.data-cy]=\"dataCyPo\"\n role=\"region\"\n [attr.aria-labelledby]=\"poId\"\n >\n <div class=\"onemrva-pop-over-content\" [ngClass]=\"position\">\n <ng-container *ngTemplateOutlet=\"tpl\"></ng-container>\n </div>\n </div>\n }\n }\n</div>\n","import { NgModule } from '@angular/core';\nimport { OnemrvaMatPopOverComponent } from './onemrva-mat-pop-over.component';\nimport { OnemrvaMatPopOverContentComponent } from './onemrva-mat-pop-over-content.component';\nimport { OnemrvaMatPopOverTriggerComponent } from './onemrva-mat-pop-over-trigger.component';\n\nconst components = [\n OnemrvaMatPopOverComponent,\n OnemrvaMatPopOverContentComponent,\n OnemrvaMatPopOverTriggerComponent,\n];\n\n@NgModule({\n declarations: [],\n imports: [...components],\n exports: [...components],\n})\nexport class OnemrvaMatPopOverModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["index"],"mappings":";;;;AAEA,IAAIA,OAAK,GAAG,CAAC;MAOA,iCAAiC,CAAA;AAL9C,IAAA,WAAA,GAAA;AAMW,QAAA,IAAA,CAAA,MAAM,GAAG,CAAA,yBAAA,EAA4B,EAAEA,OAAK,EAAE;AAGxD,IAAA;+GAJY,iCAAiC,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAAjC,iCAAiC,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,8BAAA,EAAA,MAAA,EAAA,EAAA,MAAA,EAAA,QAAA,EAAA,EAAA,WAAA,EAAA,CAAA,EAAA,YAAA,EAAA,UAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAGjC,WAAW,EAAA,WAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EANZ,sDAAsD,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,CAAA;;4FAGrD,iCAAiC,EAAA,UAAA,EAAA,CAAA;kBAL7C,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,8BAA8B;AACxC,oBAAA,QAAQ,EAAE,sDAAsD;AAChE,oBAAA,UAAU,EAAE,IAAI;AACjB,iBAAA;;sBAEE;;sBAEA,SAAS;uBAAC,WAAW;;;ACVxB,IAAI,KAAK,GAAG,CAAC;MAOA,iCAAiC,CAAA;AAL9C,IAAA,WAAA,GAAA;AAMW,QAAA,IAAA,CAAA,MAAM,GAAG,CAAA,yBAAA,EAA4B,EAAE,KAAK,EAAE;AAGxD,IAAA;+GAJY,iCAAiC,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAAjC,iCAAiC,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,8BAAA,EAAA,MAAA,EAAA,EAAA,MAAA,EAAA,QAAA,EAAA,EAAA,WAAA,EAAA,CAAA,EAAA,YAAA,EAAA,UAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAGjC,WAAW,EAAA,WAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EANZ,sDAAsD,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,CAAA;;4FAGrD,iCAAiC,EAAA,UAAA,EAAA,CAAA;kBAL7C,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,8BAA8B;AACxC,oBAAA,QAAQ,EAAE,sDAAsD;AAChE,oBAAA,UAAU,EAAE,IAAI;AACjB,iBAAA;;sBAEE;;sBAEA,SAAS;uBAAC,WAAW;;;ACDxB,IAAI,OAAO,GAAG,CAAC;MAQF,0BAA0B,CAAA;AAPvC,IAAA,WAAA,GAAA;QAQE,IAAA,CAAA,MAAM,GAAG,KAAK;QAEL,IAAA,CAAA,QAAQ,GACf,cAAc;QAEP,IAAA,CAAA,aAAa,GAAG,oBAAoB;QACpC,IAAA,CAAA,QAAQ,GAAG,YAAY;QAEvB,IAAA,CAAA,IAAI,GAAW,IAAI,CAAC,QAAQ,GAAG,GAAG,GAAG,OAAO,EAAE,CAAC;AAQvC,QAAA,IAAA,CAAA,EAAE,GAAG,MAAM,CAAC,iBAAiB,CAAC;AAahD,IAAA;IAXC,eAAe,GAAA;AACb,QAAA,IAAI,CAAC,EAAE,CAAC,aAAa,EAAE;IACzB;IAEA,aAAa,GAAA;AACX,QAAA,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,MAAM;IAC5B;IAEA,YAAY,GAAA;AACV,QAAA,IAAI,CAAC,MAAM,GAAG,KAAK;IACrB;+GA7BW,0BAA0B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAA1B,0BAA0B,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,sBAAA,EAAA,MAAA,EAAA,EAAA,QAAA,EAAA,UAAA,EAAA,aAAA,EAAA,eAAA,EAAA,QAAA,EAAA,UAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,OAAA,EAAA,CAAA,EAAA,YAAA,EAAA,SAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAWvB,iCAAiC,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,EAAA,YAAA,EAAA,SAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAGjC,iCAAiC,gDCjCjD,+5BAkCA,EAAA,MAAA,EAAA,CAAA,g6EAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EDjBY,gBAAgB,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,CAAA,yBAAA,EAAA,kBAAA,EAAA,0BAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAE,OAAO,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;;4FAExB,0BAA0B,EAAA,UAAA,EAAA,CAAA;kBAPtC,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,sBAAsB,cAGpB,IAAI,EAAA,OAAA,EACP,CAAC,gBAAgB,EAAE,OAAO,CAAC,EAAA,QAAA,EAAA,+5BAAA,EAAA,MAAA,EAAA,CAAA,g6EAAA,CAAA,EAAA;;sBAKnC;;sBAGA;;sBACA;;sBAEA;;sBAEA,YAAY;uBAAC,iCAAiC;;sBAG9C,YAAY;uBAAC,iCAAiC;;;AE5BjD,MAAM,UAAU,GAAG;IACjB,0BAA0B;IAC1B,iCAAiC;IACjC,iCAAiC;CAClC;MAOY,uBAAuB,CAAA;+GAAvB,uBAAuB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAvB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,uBAAuB,YAVlC,0BAA0B;YAC1B,iCAAiC;AACjC,YAAA,iCAAiC,aAFjC,0BAA0B;YAC1B,iCAAiC;YACjC,iCAAiC,CAAA,EAAA,CAAA,CAAA;gHAQtB,uBAAuB,EAAA,CAAA,CAAA;;4FAAvB,uBAAuB,EAAA,UAAA,EAAA,CAAA;kBALnC,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,YAAY,EAAE,EAAE;AAChB,oBAAA,OAAO,EAAE,CAAC,GAAG,UAAU,CAAC;AACxB,oBAAA,OAAO,EAAE,CAAC,GAAG,UAAU,CAAC;AACzB,iBAAA;;;ACfD;;AAEG;;;;"}
1
+ {"version":3,"file":"onemrvapublic-design-system-mat-pop-over.mjs","sources":["../../../../projects/onemrva/design-system/mat-pop-over/src/onemrva-mat-pop-over-trigger.component.ts","../../../../projects/onemrva/design-system/mat-pop-over/src/onemrva-mat-pop-over-content.component.ts","../../../../projects/onemrva/design-system/mat-pop-over/src/onemrva-mat-pop-over.component.ts","../../../../projects/onemrva/design-system/mat-pop-over/src/onemrva-mat-pop-over.component.html","../../../../projects/onemrva/design-system/mat-pop-over/src/onemrva-mat-pop-over.module.ts","../../../../projects/onemrva/design-system/mat-pop-over/onemrvapublic-design-system-mat-pop-over.ts"],"sourcesContent":["import { Component, TemplateRef, input, viewChild } from '@angular/core';\n\nlet index = 0;\n\n@Component({\n selector: 'onemrva-mat-pop-over-trigger',\n template: '<ng-template><ng-content /></ng-template>',\n standalone: true,\n})\nexport class OnemrvaMatPopOverTriggerComponent {\n readonly dataCy = input(`onemrvaMatPopOverTrigger_${++index}`);\n\n readonly template = viewChild(TemplateRef);\n}\n","import { Component, TemplateRef, input, viewChild } from '@angular/core';\n\nlet index = 0;\n\n@Component({\n selector: 'onemrva-mat-pop-over-content',\n template: '<ng-template><ng-content /></ng-template>',\n standalone: true,\n})\nexport class OnemrvaMatPopOverContentComponent {\n readonly dataCy = input(`onemrvaMatPopOverContent_${++index}`);\n\n readonly template = viewChild(TemplateRef);\n}\n","import {\n AfterViewInit,\n ChangeDetectorRef,\n Component,\n inject,\n input,\n contentChild,\n} from '@angular/core';\nimport { OnemrvaMatPopOverTriggerComponent } from './onemrva-mat-pop-over-trigger.component';\nimport { OnemrvaMatPopOverContentComponent } from './onemrva-mat-pop-over-content.component';\nimport { NgClass, NgTemplateOutlet } from '@angular/common';\nlet NEXT_ID = 0;\n@Component({\n selector: 'onemrva-mat-pop-over',\n styleUrls: ['./onemrva-mat-pop-over.component.scss'],\n templateUrl: 'onemrva-mat-pop-over.component.html',\n standalone: true,\n imports: [NgTemplateOutlet, NgClass],\n})\nexport class OnemrvaMatPopOverComponent implements AfterViewInit {\n isOpen = false;\n\n readonly position = input<\n 'top-left' | 'top-right' | 'bottom-left' | 'bottom-right'\n >('bottom-right');\n\n readonly dataCyTrigger = input('onemrva-po-trigger');\n readonly dataCyPo = input('onemrva-po');\n\n readonly poId = input<string>(this.dataCyPo + '-' + NEXT_ID++); // HTML id for the trigger\n\n readonly trigger = contentChild(OnemrvaMatPopOverTriggerComponent);\n\n readonly content = contentChild(OnemrvaMatPopOverContentComponent);\n\n private readonly cd = inject(ChangeDetectorRef);\n\n ngAfterViewInit(): void {\n this.cd.detectChanges();\n }\n\n togglePopOver() {\n this.isOpen = !this.isOpen;\n }\n\n closePopOver() {\n this.isOpen = false;\n }\n}\n","<div class=\"onemrva-pop-over\">\n @if (isOpen) {\n <div class=\"onemrva-overlay\" tabindex=\"1\" (click)=\"closePopOver()\"></div>\n }\n <a\n tabindex=\"1\"\n class=\"onemrva-pop-over-trigger\"\n (click)=\"togglePopOver()\"\n [attr.data-cy]=\"dataCyTrigger()\"\n role=\"button\"\n [attr.aria-expanded]=\"isOpen\"\n [id]=\"poId()\"\n >\n @if (trigger()?.template(); as tpl) {\n <ng-container *ngTemplateOutlet=\"tpl\" />\n }\n </a>\n\n @if (isOpen) {\n @if (content()?.template(); as tpl) {\n <div\n class=\"onemrva-pop-over-frame\"\n [ngClass]=\"position()\"\n [attr.data-cy]=\"dataCyPo()\"\n role=\"region\"\n [attr.aria-labelledby]=\"poId()\"\n >\n <div class=\"onemrva-pop-over-content\" [ngClass]=\"position()\">\n <ng-container *ngTemplateOutlet=\"tpl\" />\n </div>\n </div>\n }\n }\n</div>\n","import { NgModule } from '@angular/core';\nimport { OnemrvaMatPopOverComponent } from './onemrva-mat-pop-over.component';\nimport { OnemrvaMatPopOverContentComponent } from './onemrva-mat-pop-over-content.component';\nimport { OnemrvaMatPopOverTriggerComponent } from './onemrva-mat-pop-over-trigger.component';\n\nconst components = [\n OnemrvaMatPopOverComponent,\n OnemrvaMatPopOverContentComponent,\n OnemrvaMatPopOverTriggerComponent,\n];\n\n@NgModule({\n declarations: [],\n imports: [...components],\n exports: [...components],\n})\nexport class OnemrvaMatPopOverModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["index"],"mappings":"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"}
@@ -1,48 +1,36 @@
1
- import * as i1 from '@angular/common';
2
- import { CommonModule } from '@angular/common';
3
1
  import * as i0 from '@angular/core';
4
- import { HostBinding, Input, Component } from '@angular/core';
5
- import { tap, map } from 'rxjs';
2
+ import { input, computed, Component } from '@angular/core';
6
3
 
4
+ function clampToPercent(value) {
5
+ if (!Number.isFinite(value))
6
+ return 0;
7
+ return Math.max(0, Math.min(100, value));
8
+ }
7
9
  class OnemrvaMatProgressBarComponent {
8
10
  constructor() {
9
- this.dataCy = 'onemrva-mat-progress-bar';
10
- this.role = 'progressbar';
11
- this.ariaLabel = 'progress bar';
12
- this.success = false;
13
- }
14
- ngOnInit() {
15
- this.progress$ = this.value$.pipe(tap(value => {
16
- this.success = value >= 100;
17
- }), map(v => (v < 0 ? '0%' : v > 100 ? '100%' : v + '%')));
18
- if (!this.label$) {
19
- this.label$ = this.progress$;
20
- }
11
+ this.label = input('', ...(ngDevMode ? [{ debugName: "label" }] : []));
12
+ this.value = input.required(...(ngDevMode ? [{ debugName: "value" }] : []));
13
+ this.dataCy = input('onemrva-mat-progress-bar', ...(ngDevMode ? [{ debugName: "dataCy" }] : []));
14
+ this.ariaLabel = input('progress bar', ...(ngDevMode ? [{ debugName: "ariaLabel" }] : []));
15
+ this.progressNumber = computed(() => clampToPercent(this.value()), ...(ngDevMode ? [{ debugName: "progressNumber" }] : []));
16
+ this.progressValue = computed(() => `${this.progressNumber()}%`, ...(ngDevMode ? [{ debugName: "progressValue" }] : []));
17
+ this.isSuccess = computed(() => this.progressNumber() >= 100, ...(ngDevMode ? [{ debugName: "isSuccess" }] : []));
18
+ this.labelText = computed(() => {
19
+ const lbl = this.label()?.trim();
20
+ return lbl ? lbl : this.progressValue();
21
+ }, ...(ngDevMode ? [{ debugName: "labelText" }] : []));
21
22
  }
22
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: OnemrvaMatProgressBarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
23
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.15", type: OnemrvaMatProgressBarComponent, isStandalone: true, selector: "onemrva-mat-progress-bar", inputs: { label$: "label$", value$: "value$", dataCy: "dataCy", ariaLabel: "ariaLabel" }, host: { properties: { "attr.role": "this.role", "attr.aria-label": "this.ariaLabel", "class.mat-success": "this.success" } }, ngImport: i0, template: "<div class=\"onemrva-progress-bar\">\n <span class=\"onemrva-progress-bar-label\">{{ label$ | async }}</span>\n\n <div class=\"onemrva-progress-bar-outer mt-s\" #onemrvaProgressBar>\n <div\n class=\"onemrva-progress-bar-inner\"\n [ngStyle]=\"{ width: progress$ | async }\"\n [ngClass]=\"{ 'progress-success': (value$ | async)! >= 100 }\"\n [attr.data-cy]=\"dataCy\"\n [attr.value]=\"progress$ | async\"\n ></div>\n </div>\n</div>\n", styles: [":host{display:block}:host .onemrva-progress-bar .onemrva-progress-bar-outer{height:.25rem;border-radius:var(--button-border-radius);box-sizing:border-box;overflow:hidden;background-color:var(--mat-sys-outline-variant)}:host .onemrva-progress-bar .onemrva-progress-bar-outer .onemrva-progress-bar-inner{background-color:var(--mat-sys-primary);height:.25rem;box-sizing:border-box;border-radius:var(--button-border-radius);transition:width .3s ease-out}:host .onemrva-progress-bar-label{font-size:var(--mat-sys-label-small)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }] }); }
23
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: OnemrvaMatProgressBarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
24
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "21.1.1", type: OnemrvaMatProgressBarComponent, isStandalone: true, selector: "onemrva-mat-progress-bar", inputs: { label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: false, transformFunction: null }, value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: true, transformFunction: null }, dataCy: { classPropertyName: "dataCy", publicName: "dataCy", isSignal: true, isRequired: false, transformFunction: null }, ariaLabel: { classPropertyName: "ariaLabel", publicName: "ariaLabel", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "attr.role": "\"progressbar\"", "attr.aria-label": "ariaLabel()", "class.mat-success": "isSuccess()" } }, ngImport: i0, template: "<div class=\"onemrva-progress-bar\">\n <span class=\"onemrva-progress-bar-label\">{{ labelText() }}</span>\n\n <div class=\"onemrva-progress-bar-outer mt-s\" #onemrvaProgressBar>\n <div\n class=\"onemrva-progress-bar-inner\"\n [style.width]=\"progressValue()\"\n [class.progress-success]=\"isSuccess()\"\n [attr.data-cy]=\"dataCy()\"\n [attr.value]=\"progressValue()\"\n ></div>\n </div>\n</div>\n", styles: [":host{display:block}:host .onemrva-progress-bar .onemrva-progress-bar-outer{height:.25rem;border-radius:var(--button-border-radius);box-sizing:border-box;overflow:hidden;background-color:var(--mat-sys-outline-variant)}:host .onemrva-progress-bar .onemrva-progress-bar-outer .onemrva-progress-bar-inner{background-color:var(--mat-sys-primary);height:.25rem;box-sizing:border-box;border-radius:var(--button-border-radius);transition:width .3s ease-out}:host .onemrva-progress-bar-label{font-size:var(--mat-sys-label-small)}\n"] }); }
24
25
  }
25
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: OnemrvaMatProgressBarComponent, decorators: [{
26
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: OnemrvaMatProgressBarComponent, decorators: [{
26
27
  type: Component,
27
- args: [{ selector: 'onemrva-mat-progress-bar', standalone: true, imports: [CommonModule], template: "<div class=\"onemrva-progress-bar\">\n <span class=\"onemrva-progress-bar-label\">{{ label$ | async }}</span>\n\n <div class=\"onemrva-progress-bar-outer mt-s\" #onemrvaProgressBar>\n <div\n class=\"onemrva-progress-bar-inner\"\n [ngStyle]=\"{ width: progress$ | async }\"\n [ngClass]=\"{ 'progress-success': (value$ | async)! >= 100 }\"\n [attr.data-cy]=\"dataCy\"\n [attr.value]=\"progress$ | async\"\n ></div>\n </div>\n</div>\n", styles: [":host{display:block}:host .onemrva-progress-bar .onemrva-progress-bar-outer{height:.25rem;border-radius:var(--button-border-radius);box-sizing:border-box;overflow:hidden;background-color:var(--mat-sys-outline-variant)}:host .onemrva-progress-bar .onemrva-progress-bar-outer .onemrva-progress-bar-inner{background-color:var(--mat-sys-primary);height:.25rem;box-sizing:border-box;border-radius:var(--button-border-radius);transition:width .3s ease-out}:host .onemrva-progress-bar-label{font-size:var(--mat-sys-label-small)}\n"] }]
28
- }], propDecorators: { label$: [{
29
- type: Input
30
- }], value$: [{
31
- type: Input
32
- }], dataCy: [{
33
- type: Input
34
- }], role: [{
35
- type: HostBinding,
36
- args: ['attr.role']
37
- }], ariaLabel: [{
38
- type: HostBinding,
39
- args: ['attr.aria-label']
40
- }, {
41
- type: Input
42
- }], success: [{
43
- type: HostBinding,
44
- args: ['class.mat-success']
45
- }] } });
28
+ args: [{ selector: 'onemrva-mat-progress-bar', standalone: true, host: {
29
+ '[attr.role]': '"progressbar"',
30
+ '[attr.aria-label]': 'ariaLabel()',
31
+ '[class.mat-success]': 'isSuccess()',
32
+ }, template: "<div class=\"onemrva-progress-bar\">\n <span class=\"onemrva-progress-bar-label\">{{ labelText() }}</span>\n\n <div class=\"onemrva-progress-bar-outer mt-s\" #onemrvaProgressBar>\n <div\n class=\"onemrva-progress-bar-inner\"\n [style.width]=\"progressValue()\"\n [class.progress-success]=\"isSuccess()\"\n [attr.data-cy]=\"dataCy()\"\n [attr.value]=\"progressValue()\"\n ></div>\n </div>\n</div>\n", styles: [":host{display:block}:host .onemrva-progress-bar .onemrva-progress-bar-outer{height:.25rem;border-radius:var(--button-border-radius);box-sizing:border-box;overflow:hidden;background-color:var(--mat-sys-outline-variant)}:host .onemrva-progress-bar .onemrva-progress-bar-outer .onemrva-progress-bar-inner{background-color:var(--mat-sys-primary);height:.25rem;box-sizing:border-box;border-radius:var(--button-border-radius);transition:width .3s ease-out}:host .onemrva-progress-bar-label{font-size:var(--mat-sys-label-small)}\n"] }]
33
+ }], propDecorators: { label: [{ type: i0.Input, args: [{ isSignal: true, alias: "label", required: false }] }], value: [{ type: i0.Input, args: [{ isSignal: true, alias: "value", required: true }] }], dataCy: [{ type: i0.Input, args: [{ isSignal: true, alias: "dataCy", required: false }] }], ariaLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaLabel", required: false }] }] } });
46
34
 
47
35
  /**
48
36
  * Generated bundle index. Do not edit.
@@ -1 +1 @@
1
- {"version":3,"file":"onemrvapublic-design-system-mat-progress-bar.mjs","sources":["../../../../projects/onemrva/design-system/mat-progress-bar/src/onemrva-mat-progress-bar.component.ts","../../../../projects/onemrva/design-system/mat-progress-bar/src/onemrva-mat-progress-bar.component.html","../../../../projects/onemrva/design-system/mat-progress-bar/onemrvapublic-design-system-mat-progress-bar.ts"],"sourcesContent":["import { CommonModule } from '@angular/common';\nimport { Component, HostBinding, Input, OnInit } from '@angular/core';\nimport { map, Observable, tap } from 'rxjs';\n\n@Component({\n selector: 'onemrva-mat-progress-bar',\n standalone: true,\n imports: [CommonModule],\n templateUrl: 'onemrva-mat-progress-bar.component.html',\n styleUrl: 'onemrva-mat-progress-bar.component.scss',\n})\nexport class OnemrvaMatProgressBarComponent implements OnInit {\n @Input() label$?: Observable<string>;\n @Input() value$!: Observable<number>;\n @Input() dataCy = 'onemrva-mat-progress-bar';\n\n @HostBinding('attr.role')\n public role = 'progressbar';\n\n @HostBinding('attr.aria-label')\n @Input()\n public ariaLabel = 'progress bar';\n\n progress$!: Observable<string>;\n\n ngOnInit() {\n this.progress$ = this.value$.pipe(\n tap(value => {\n this.success = value >= 100;\n }),\n map(v => (v < 0 ? '0%' : v > 100 ? '100%' : v + '%')),\n );\n\n if (!this.label$) {\n this.label$ = this.progress$;\n }\n }\n\n @HostBinding('class.mat-success')\n success = false;\n}\n","<div class=\"onemrva-progress-bar\">\n <span class=\"onemrva-progress-bar-label\">{{ label$ | async }}</span>\n\n <div class=\"onemrva-progress-bar-outer mt-s\" #onemrvaProgressBar>\n <div\n class=\"onemrva-progress-bar-inner\"\n [ngStyle]=\"{ width: progress$ | async }\"\n [ngClass]=\"{ 'progress-success': (value$ | async)! >= 100 }\"\n [attr.data-cy]=\"dataCy\"\n [attr.value]=\"progress$ | async\"\n ></div>\n </div>\n</div>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;MAWa,8BAA8B,CAAA;AAP3C,IAAA,WAAA,GAAA;QAUW,IAAA,CAAA,MAAM,GAAG,0BAA0B;QAGrC,IAAA,CAAA,IAAI,GAAG,aAAa;QAIpB,IAAA,CAAA,SAAS,GAAG,cAAc;QAkBjC,IAAA,CAAA,OAAO,GAAG,KAAK;AAChB,IAAA;IAfC,QAAQ,GAAA;AACN,QAAA,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAC/B,GAAG,CAAC,KAAK,IAAG;AACV,YAAA,IAAI,CAAC,OAAO,GAAG,KAAK,IAAI,GAAG;AAC7B,QAAA,CAAC,CAAC,EACF,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,GAAG,GAAG,GAAG,MAAM,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC,CACtD;AAED,QAAA,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;AAChB,YAAA,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,SAAS;QAC9B;IACF;+GAzBW,8BAA8B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAA9B,8BAA8B,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,0BAAA,EAAA,MAAA,EAAA,EAAA,MAAA,EAAA,QAAA,EAAA,MAAA,EAAA,QAAA,EAAA,MAAA,EAAA,QAAA,EAAA,SAAA,EAAA,WAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,WAAA,EAAA,WAAA,EAAA,iBAAA,EAAA,gBAAA,EAAA,mBAAA,EAAA,cAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECX3C,mdAaA,EAAA,MAAA,EAAA,CAAA,6gBAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EDNY,YAAY,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,EAAA,CAAA,SAAA,EAAA,IAAA,EAAA,OAAA,EAAA,CAAA,EAAA,CAAA,CAAA;;4FAIX,8BAA8B,EAAA,UAAA,EAAA,CAAA;kBAP1C,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,0BAA0B,EAAA,UAAA,EACxB,IAAI,EAAA,OAAA,EACP,CAAC,YAAY,CAAC,EAAA,QAAA,EAAA,mdAAA,EAAA,MAAA,EAAA,CAAA,6gBAAA,CAAA,EAAA;;sBAKtB;;sBACA;;sBACA;;sBAEA,WAAW;uBAAC,WAAW;;sBAGvB,WAAW;uBAAC,iBAAiB;;sBAC7B;;sBAkBA,WAAW;uBAAC,mBAAmB;;;AEtClC;;AAEG;;;;"}
1
+ {"version":3,"file":"onemrvapublic-design-system-mat-progress-bar.mjs","sources":["../../../../projects/onemrva/design-system/mat-progress-bar/src/onemrva-mat-progress-bar.component.ts","../../../../projects/onemrva/design-system/mat-progress-bar/src/onemrva-mat-progress-bar.component.html","../../../../projects/onemrva/design-system/mat-progress-bar/onemrvapublic-design-system-mat-progress-bar.ts"],"sourcesContent":["import { Component, computed, input } from '@angular/core';\n\nfunction clampToPercent(value: number): number {\n if (!Number.isFinite(value)) return 0;\n return Math.max(0, Math.min(100, value));\n}\n\n@Component({\n selector: 'onemrva-mat-progress-bar',\n standalone: true,\n templateUrl: 'onemrva-mat-progress-bar.component.html',\n styleUrl: 'onemrva-mat-progress-bar.component.scss',\n host: {\n '[attr.role]': '\"progressbar\"',\n '[attr.aria-label]': 'ariaLabel()',\n '[class.mat-success]': 'isSuccess()',\n },\n})\nexport class OnemrvaMatProgressBarComponent {\n readonly label = input<string>('');\n readonly value = input.required<number>();\n readonly dataCy = input('onemrva-mat-progress-bar');\n readonly ariaLabel = input('progress bar');\n\n readonly progressNumber = computed(() => clampToPercent(this.value()));\n readonly progressValue = computed(() => `${this.progressNumber()}%`);\n readonly isSuccess = computed(() => this.progressNumber() >= 100);\n\n readonly labelText = computed(() => {\n const lbl = this.label()?.trim();\n return lbl ? lbl : this.progressValue();\n });\n}\n","<div class=\"onemrva-progress-bar\">\n <span class=\"onemrva-progress-bar-label\">{{ labelText() }}</span>\n\n <div class=\"onemrva-progress-bar-outer mt-s\" #onemrvaProgressBar>\n <div\n class=\"onemrva-progress-bar-inner\"\n [style.width]=\"progressValue()\"\n [class.progress-success]=\"isSuccess()\"\n [attr.data-cy]=\"dataCy()\"\n [attr.value]=\"progressValue()\"\n ></div>\n </div>\n</div>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;AAEA,SAAS,cAAc,CAAC,KAAa,EAAA;AACnC,IAAA,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC;AAAE,QAAA,OAAO,CAAC;AACrC,IAAA,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;AAC1C;MAaa,8BAA8B,CAAA;AAX3C,IAAA,WAAA,GAAA;AAYW,QAAA,IAAA,CAAA,KAAK,GAAG,KAAK,CAAS,EAAE,iDAAC;AACzB,QAAA,IAAA,CAAA,KAAK,GAAG,KAAK,CAAC,QAAQ,gDAAU;AAChC,QAAA,IAAA,CAAA,MAAM,GAAG,KAAK,CAAC,0BAA0B,kDAAC;AAC1C,QAAA,IAAA,CAAA,SAAS,GAAG,KAAK,CAAC,cAAc,qDAAC;AAEjC,QAAA,IAAA,CAAA,cAAc,GAAG,QAAQ,CAAC,MAAM,cAAc,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,0DAAC;AAC7D,QAAA,IAAA,CAAA,aAAa,GAAG,QAAQ,CAAC,MAAM,CAAA,EAAG,IAAI,CAAC,cAAc,EAAE,CAAA,CAAA,CAAG,yDAAC;AAC3D,QAAA,IAAA,CAAA,SAAS,GAAG,QAAQ,CAAC,MAAM,IAAI,CAAC,cAAc,EAAE,IAAI,GAAG,qDAAC;AAExD,QAAA,IAAA,CAAA,SAAS,GAAG,QAAQ,CAAC,MAAK;YACjC,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE;AAChC,YAAA,OAAO,GAAG,GAAG,GAAG,GAAG,IAAI,CAAC,aAAa,EAAE;AACzC,QAAA,CAAC,qDAAC;AACH,IAAA;8GAdY,8BAA8B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAA9B,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,8BAA8B,8sBClB3C,ibAaA,EAAA,MAAA,EAAA,CAAA,6gBAAA,CAAA,EAAA,CAAA,CAAA;;2FDKa,8BAA8B,EAAA,UAAA,EAAA,CAAA;kBAX1C,SAAS;+BACE,0BAA0B,EAAA,UAAA,EACxB,IAAI,EAAA,IAAA,EAGV;AACJ,wBAAA,aAAa,EAAE,eAAe;AAC9B,wBAAA,mBAAmB,EAAE,aAAa;AAClC,wBAAA,qBAAqB,EAAE,aAAa;AACrC,qBAAA,EAAA,QAAA,EAAA,ibAAA,EAAA,MAAA,EAAA,CAAA,6gBAAA,CAAA,EAAA;;;AEhBH;;AAEG;;;;"}
@@ -1,7 +1,7 @@
1
1
  import { A, Z, ZERO, NINE, SPACE, HOME, END, ENTER, ESCAPE, UP_ARROW, DOWN_ARROW } from '@angular/cdk/keycodes';
2
2
  import { ViewportRuler } from '@angular/cdk/scrolling';
3
3
  import * as i0 from '@angular/core';
4
- import { Directive, InjectionToken, EventEmitter, QueryList, inject, ChangeDetectorRef, ElementRef, forwardRef, ContentChild, ViewChild, Output, Input, ChangeDetectionStrategy, Component, NgModule } from '@angular/core';
4
+ import { Directive, InjectionToken, input, output, viewChild, ElementRef, contentChild, QueryList, inject, ChangeDetectorRef, forwardRef, ChangeDetectionStrategy, Component, NgModule } from '@angular/core';
5
5
  import * as i1 from '@angular/forms';
6
6
  import { FormControl, ReactiveFormsModule, NG_VALUE_ACCESSOR } from '@angular/forms';
7
7
  import { MatOption } from '@angular/material/core';
@@ -9,7 +9,7 @@ import { MatFormField } from '@angular/material/form-field';
9
9
  import { MatSelect } from '@angular/material/select';
10
10
  import { BehaviorSubject, of, combineLatest, Subject } from 'rxjs';
11
11
  import { switchMap, map, startWith, delay, takeUntil, take, tap, filter } from 'rxjs/operators';
12
- import { NgClass, AsyncPipe } from '@angular/common';
12
+ import { AsyncPipe } from '@angular/common';
13
13
  import { MatCheckbox } from '@angular/material/checkbox';
14
14
  import { MatTooltip } from '@angular/material/tooltip';
15
15
  import { MatIcon } from '@angular/material/icon';
@@ -26,10 +26,10 @@ import { MatDivider } from '@angular/material/divider';
26
26
  * </mat-select-search>
27
27
  */
28
28
  class MatSelectSearchClearDirective {
29
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: MatSelectSearchClearDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
30
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.15", type: MatSelectSearchClearDirective, isStandalone: true, selector: "[matSelectSearchClear]", ngImport: i0 }); }
29
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: MatSelectSearchClearDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
30
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.1.1", type: MatSelectSearchClearDirective, isStandalone: true, selector: "[matSelectSearchClear]", ngImport: i0 }); }
31
31
  }
32
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: MatSelectSearchClearDirective, decorators: [{
32
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: MatSelectSearchClearDirective, decorators: [{
33
33
  type: Directive,
34
34
  args: [{
35
35
  selector: '[matSelectSearchClear]',
@@ -81,10 +81,10 @@ const MAT_SELECTSEARCH_DEFAULT_OPTIONS = new InjectionToken('mat-selectsearch-de
81
81
  * </mat-select-search>
82
82
  */
83
83
  class MatSelectNoEntriesFoundDirective {
84
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: MatSelectNoEntriesFoundDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
85
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.15", type: MatSelectNoEntriesFoundDirective, isStandalone: true, selector: "[matSelectNoEntriesFound]", ngImport: i0 }); }
84
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: MatSelectNoEntriesFoundDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
85
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.1.1", type: MatSelectNoEntriesFoundDirective, isStandalone: true, selector: "[matSelectNoEntriesFound]", ngImport: i0 }); }
86
86
  }
87
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: MatSelectNoEntriesFoundDirective, decorators: [{
87
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: MatSelectNoEntriesFoundDirective, decorators: [{
88
88
  type: Directive,
89
89
  args: [{
90
90
  selector: '[matSelectNoEntriesFound]',
@@ -112,53 +112,61 @@ class MatSelectSearchComponent {
112
112
  }
113
113
  constructor() {
114
114
  /** Label of the search placeholder */
115
- this.placeholderLabel = 'Search';
115
+ this.placeholderLabel = input('Search', ...(ngDevMode ? [{ debugName: "placeholderLabel" }] : []));
116
116
  /** Type of the search input field */
117
- this.type = 'text';
117
+ this.type = input('text', ...(ngDevMode ? [{ debugName: "type" }] : []));
118
118
  /** Font-based icon used for displaying Close-Icon */
119
- this.closeIcon = 'close';
119
+ this.closeIcon = input('close', ...(ngDevMode ? [{ debugName: "closeIcon" }] : []));
120
120
  /** Svg-based icon used for displaying Close-Icon. If set, closeIcon is overridden */
121
- this.closeSvgIcon = '';
121
+ this.closeSvgIcon = input('', ...(ngDevMode ? [{ debugName: "closeSvgIcon" }] : []));
122
122
  /** Label to be shown when no entries are found. Set to null if no message should be shown. */
123
- this.noEntriesFoundLabel = 'Nothing found';
123
+ this.noEntriesFoundLabel = input('Nothing found', ...(ngDevMode ? [{ debugName: "noEntriesFoundLabel" }] : []));
124
124
  /**
125
125
  * Whether or not the search field should be cleared after the dropdown menu is closed.
126
126
  */
127
- this.clearSearchInput = true;
127
+ this.clearSearchInput = input(true, ...(ngDevMode ? [{ debugName: "clearSearchInput" }] : []));
128
128
  /** Whether to show the search-in-progress indicator */
129
- this.searching = false;
129
+ this.searching = input(false, ...(ngDevMode ? [{ debugName: "searching" }] : []));
130
130
  /** Disables initial focusing of the input field */
131
- this.disableInitialFocus = false;
131
+ this.disableInitialFocus = input(false, ...(ngDevMode ? [{ debugName: "disableInitialFocus" }] : []));
132
132
  /** Enable clear input on escape pressed */
133
- this.enableClearOnEscapePressed = false;
133
+ this.enableClearOnEscapePressed = input(false, ...(ngDevMode ? [{ debugName: "enableClearOnEscapePressed" }] : []));
134
134
  /**
135
135
  * Prevents home / end key being propagated to mat-select,
136
136
  * allowing to move the cursor within the search input instead of navigating the options
137
137
  */
138
- this.preventHomeEndKeyPropagation = false;
138
+ this.preventHomeEndKeyPropagation = input(false, ...(ngDevMode ? [{ debugName: "preventHomeEndKeyPropagation" }] : []));
139
139
  /** Disables scrolling to active options when option list changes. Useful for server-side search */
140
- this.disableScrollToActiveOnOptionsChanged = false;
140
+ this.disableScrollToActiveOnOptionsChanged = input(false, ...(ngDevMode ? [{ debugName: "disableScrollToActiveOnOptionsChanged" }] : []));
141
141
  /** Adds 508 screen reader support for search box */
142
- this.ariaLabel = 'dropdown search';
142
+ this.ariaLabel = input('dropdown search', ...(ngDevMode ? [{ debugName: "ariaLabel" }] : []));
143
143
  /** Whether to show Select All Checkbox (for mat-select[multi=true]) */
144
- this.showToggleAllCheckbox = false;
144
+ this.showToggleAllCheckbox = input(false, ...(ngDevMode ? [{ debugName: "showToggleAllCheckbox" }] : []));
145
145
  /** select all checkbox checked state */
146
- this.toggleAllCheckboxChecked = false;
146
+ this.toggleAllCheckboxChecked = input(false, ...(ngDevMode ? [{ debugName: "toggleAllCheckboxChecked" }] : []));
147
147
  /** select all checkbox indeterminate state */
148
- this.toggleAllCheckboxIndeterminate = false;
148
+ this.toggleAllCheckboxIndeterminate = input(false, ...(ngDevMode ? [{ debugName: "toggleAllCheckboxIndeterminate" }] : []));
149
149
  /** Display a message in a tooltip on the toggle-all checkbox */
150
- this.toggleAllCheckboxTooltipMessage = '';
150
+ this.toggleAllCheckboxTooltipMessage = input('', ...(ngDevMode ? [{ debugName: "toggleAllCheckboxTooltipMessage" }] : []));
151
151
  /** Define the position of the tooltip on the toggle-all checkbox. */
152
- this.toggleAllCheckboxTooltipPosition = 'below';
152
+ this.toggleAllCheckboxTooltipPosition = input('below', ...(ngDevMode ? [{ debugName: "toggleAllCheckboxTooltipPosition" }] : []));
153
153
  /** Show/Hide the search clear button of the search input */
154
- this.hideClearSearchButton = false;
154
+ this.hideClearSearchButton = input(false, ...(ngDevMode ? [{ debugName: "hideClearSearchButton" }] : []));
155
155
  /**
156
156
  * Always restore selected options on selectionChange for mode multi (e.g. for lazy loading/infinity scrolling).
157
157
  * Defaults to false, so selected options are only restored while filtering is active.
158
158
  */
159
- this.alwaysRestoreSelectedOptionsMulti = false;
159
+ this.alwaysRestoreSelectedOptionsMulti = input(false, ...(ngDevMode ? [{ debugName: "alwaysRestoreSelectedOptionsMulti" }] : []));
160
160
  /** Output emitter to send to parent component with the toggle all boolean */
161
- this.toggleAll = new EventEmitter();
161
+ this.toggleAll = output();
162
+ /** Reference to the search input field */
163
+ this.searchSelectInput = viewChild('searchSelectInput', { ...(ngDevMode ? { debugName: "searchSelectInput" } : {}), read: ElementRef });
164
+ /** Reference to the search input field */
165
+ this.innerSelectSearch = viewChild('innerSelectSearch', { ...(ngDevMode ? { debugName: "innerSelectSearch" } : {}), read: ElementRef });
166
+ /** Reference to custom search input clear icon */
167
+ this.clearIcon = contentChild(MatSelectSearchClearDirective, ...(ngDevMode ? [{ debugName: "clearIcon" }] : []));
168
+ /** Reference to custom no entries found element */
169
+ this.noEntriesFound = contentChild(MatSelectNoEntriesFoundDirective, ...(ngDevMode ? [{ debugName: "noEntriesFound" }] : []));
162
170
  this.onTouched = (_) => {
163
171
  //
164
172
  };
@@ -173,7 +181,7 @@ class MatSelectSearchComponent {
173
181
  this._formControl.valueChanges,
174
182
  this.optionsLength$,
175
183
  ]).pipe(map(([_, optionsLength]) => {
176
- return (this.noEntriesFoundLabel !== '' &&
184
+ return (this.noEntriesFoundLabel() !== '' &&
177
185
  optionsLength === this.getOptionsLengthOffset());
178
186
  }));
179
187
  /** Subject that emits when the component has been destroyed. */
@@ -218,13 +226,13 @@ class MatSelectSearchComponent {
218
226
  if (opened) {
219
227
  this.updateInputWidth();
220
228
  // focus the search field when opening
221
- if (!this.disableInitialFocus) {
229
+ if (!this.disableInitialFocus()) {
222
230
  this._focus();
223
231
  }
224
232
  }
225
233
  else {
226
234
  // clear it when closing
227
- if (this.clearSearchInput) {
235
+ if (this.clearSearchInput()) {
228
236
  this._reset();
229
237
  }
230
238
  }
@@ -316,7 +324,7 @@ class MatSelectSearchComponent {
316
324
  this._onDestroy.complete();
317
325
  }
318
326
  _isToggleAllCheckboxVisible() {
319
- return this.matSelect.multiple && this.showToggleAllCheckbox;
327
+ return this.matSelect.multiple && this.showToggleAllCheckbox();
320
328
  }
321
329
  /**
322
330
  * Handles the key down event with MatSelect.
@@ -329,7 +337,7 @@ class MatSelectSearchComponent {
329
337
  (event.keyCode >= A && event.keyCode <= Z) ||
330
338
  (event.keyCode >= ZERO && event.keyCode <= NINE) ||
331
339
  event.keyCode === SPACE ||
332
- (this.preventHomeEndKeyPropagation &&
340
+ (this.preventHomeEndKeyPropagation() &&
333
341
  (event.keyCode === HOME || event.keyCode === END))) {
334
342
  event.stopPropagation();
335
343
  }
@@ -338,7 +346,7 @@ class MatSelectSearchComponent {
338
346
  setTimeout(() => this._focus());
339
347
  }
340
348
  // Special case if click Escape, if input is empty, close the dropdown, if not, empty out the search field
341
- if (this.enableClearOnEscapePressed === true &&
349
+ if (this.enableClearOnEscapePressed() &&
342
350
  event.keyCode === ESCAPE &&
343
351
  this.value) {
344
352
  this._reset(true);
@@ -360,7 +368,7 @@ class MatSelectSearchComponent {
360
368
  const temp = this._options.toArray();
361
369
  this.activeDescendant = temp[index]._getHostElement();
362
370
  this.activeDescendant.setAttribute('aria-selected', 'true');
363
- this.searchSelectInput?.nativeElement.setAttribute('aria-activedescendant', ariaActiveDescendantId);
371
+ this.searchSelectInput()?.nativeElement.setAttribute('aria-activedescendant', ariaActiveDescendantId);
364
372
  }
365
373
  }
366
374
  }
@@ -384,7 +392,8 @@ class MatSelectSearchComponent {
384
392
  * Focuses the search input field
385
393
  */
386
394
  _focus() {
387
- if (!this.searchSelectInput || !this.matSelect.panel) {
395
+ const searchSelectInput = this.searchSelectInput();
396
+ if (!searchSelectInput || !this.matSelect.panel) {
388
397
  return;
389
398
  }
390
399
  // save and restore scrollTop of panel, since it will be reset by focus()
@@ -392,7 +401,7 @@ class MatSelectSearchComponent {
392
401
  const panel = this.matSelect.panel.nativeElement;
393
402
  const scrollTop = panel.scrollTop;
394
403
  // focus
395
- this.searchSelectInput.nativeElement.focus();
404
+ searchSelectInput.nativeElement.focus();
396
405
  panel.scrollTop = scrollTop;
397
406
  }
398
407
  /**
@@ -427,7 +436,7 @@ class MatSelectSearchComponent {
427
436
  .subscribe(values => {
428
437
  let restoreSelectedValues = false;
429
438
  if (this.matSelect.multiple) {
430
- if ((this.alwaysRestoreSelectedOptionsMulti ||
439
+ if ((this.alwaysRestoreSelectedOptionsMulti() ||
431
440
  (this._formControl.value && this._formControl.value.length)) &&
432
441
  this.previousSelectedValues &&
433
442
  Array.isArray(this.previousSelectedValues)) {
@@ -457,10 +466,11 @@ class MatSelectSearchComponent {
457
466
  * And support all Operation Systems
458
467
  */
459
468
  updateInputWidth() {
460
- if (!this.innerSelectSearch || !this.innerSelectSearch.nativeElement) {
469
+ const innerSelectSearch = this.innerSelectSearch();
470
+ if (!innerSelectSearch || !innerSelectSearch.nativeElement) {
461
471
  return;
462
472
  }
463
- let element = this.innerSelectSearch.nativeElement;
473
+ let element = innerSelectSearch.nativeElement;
464
474
  if (element.parentElement !== null) {
465
475
  let panelElement = null;
466
476
  while ((element = element.parentElement)) {
@@ -470,7 +480,7 @@ class MatSelectSearchComponent {
470
480
  }
471
481
  }
472
482
  if (panelElement !== null) {
473
- this.innerSelectSearch.nativeElement.style.width =
483
+ innerSelectSearch.nativeElement.style.width =
474
484
  panelElement.clientWidth + 'px';
475
485
  }
476
486
  }
@@ -488,18 +498,18 @@ class MatSelectSearchComponent {
488
498
  }
489
499
  unselectActiveDescendant() {
490
500
  this.activeDescendant?.removeAttribute('aria-selected');
491
- this.searchSelectInput?.nativeElement.removeAttribute('aria-activedescendant');
501
+ this.searchSelectInput()?.nativeElement.removeAttribute('aria-activedescendant');
492
502
  }
493
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: MatSelectSearchComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
494
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", type: MatSelectSearchComponent, isStandalone: true, selector: "mat-select-search", inputs: { placeholderLabel: "placeholderLabel", type: "type", closeIcon: "closeIcon", closeSvgIcon: "closeSvgIcon", noEntriesFoundLabel: "noEntriesFoundLabel", clearSearchInput: "clearSearchInput", searching: "searching", disableInitialFocus: "disableInitialFocus", enableClearOnEscapePressed: "enableClearOnEscapePressed", preventHomeEndKeyPropagation: "preventHomeEndKeyPropagation", disableScrollToActiveOnOptionsChanged: "disableScrollToActiveOnOptionsChanged", ariaLabel: "ariaLabel", showToggleAllCheckbox: "showToggleAllCheckbox", toggleAllCheckboxChecked: "toggleAllCheckboxChecked", toggleAllCheckboxIndeterminate: "toggleAllCheckboxIndeterminate", toggleAllCheckboxTooltipMessage: "toggleAllCheckboxTooltipMessage", toggleAllCheckboxTooltipPosition: "toggleAllCheckboxTooltipPosition", hideClearSearchButton: "hideClearSearchButton", alwaysRestoreSelectedOptionsMulti: "alwaysRestoreSelectedOptionsMulti" }, outputs: { toggleAll: "toggleAll" }, providers: [
503
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: MatSelectSearchComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
504
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.1.1", type: MatSelectSearchComponent, isStandalone: true, selector: "mat-select-search", inputs: { placeholderLabel: { classPropertyName: "placeholderLabel", publicName: "placeholderLabel", isSignal: true, isRequired: false, transformFunction: null }, type: { classPropertyName: "type", publicName: "type", isSignal: true, isRequired: false, transformFunction: null }, closeIcon: { classPropertyName: "closeIcon", publicName: "closeIcon", isSignal: true, isRequired: false, transformFunction: null }, closeSvgIcon: { classPropertyName: "closeSvgIcon", publicName: "closeSvgIcon", isSignal: true, isRequired: false, transformFunction: null }, noEntriesFoundLabel: { classPropertyName: "noEntriesFoundLabel", publicName: "noEntriesFoundLabel", isSignal: true, isRequired: false, transformFunction: null }, clearSearchInput: { classPropertyName: "clearSearchInput", publicName: "clearSearchInput", isSignal: true, isRequired: false, transformFunction: null }, searching: { classPropertyName: "searching", publicName: "searching", isSignal: true, isRequired: false, transformFunction: null }, disableInitialFocus: { classPropertyName: "disableInitialFocus", publicName: "disableInitialFocus", isSignal: true, isRequired: false, transformFunction: null }, enableClearOnEscapePressed: { classPropertyName: "enableClearOnEscapePressed", publicName: "enableClearOnEscapePressed", isSignal: true, isRequired: false, transformFunction: null }, preventHomeEndKeyPropagation: { classPropertyName: "preventHomeEndKeyPropagation", publicName: "preventHomeEndKeyPropagation", isSignal: true, isRequired: false, transformFunction: null }, disableScrollToActiveOnOptionsChanged: { classPropertyName: "disableScrollToActiveOnOptionsChanged", publicName: "disableScrollToActiveOnOptionsChanged", isSignal: true, isRequired: false, transformFunction: null }, ariaLabel: { classPropertyName: "ariaLabel", publicName: "ariaLabel", isSignal: true, isRequired: false, transformFunction: null }, showToggleAllCheckbox: { classPropertyName: "showToggleAllCheckbox", publicName: "showToggleAllCheckbox", isSignal: true, isRequired: false, transformFunction: null }, toggleAllCheckboxChecked: { classPropertyName: "toggleAllCheckboxChecked", publicName: "toggleAllCheckboxChecked", isSignal: true, isRequired: false, transformFunction: null }, toggleAllCheckboxIndeterminate: { classPropertyName: "toggleAllCheckboxIndeterminate", publicName: "toggleAllCheckboxIndeterminate", isSignal: true, isRequired: false, transformFunction: null }, toggleAllCheckboxTooltipMessage: { classPropertyName: "toggleAllCheckboxTooltipMessage", publicName: "toggleAllCheckboxTooltipMessage", isSignal: true, isRequired: false, transformFunction: null }, toggleAllCheckboxTooltipPosition: { classPropertyName: "toggleAllCheckboxTooltipPosition", publicName: "toggleAllCheckboxTooltipPosition", isSignal: true, isRequired: false, transformFunction: null }, hideClearSearchButton: { classPropertyName: "hideClearSearchButton", publicName: "hideClearSearchButton", isSignal: true, isRequired: false, transformFunction: null }, alwaysRestoreSelectedOptionsMulti: { classPropertyName: "alwaysRestoreSelectedOptionsMulti", publicName: "alwaysRestoreSelectedOptionsMulti", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { toggleAll: "toggleAll" }, providers: [
495
505
  {
496
506
  provide: NG_VALUE_ACCESSOR,
497
507
  useExisting: forwardRef(() => MatSelectSearchComponent),
498
508
  multi: true,
499
509
  },
500
- ], queries: [{ propertyName: "clearIcon", first: true, predicate: MatSelectSearchClearDirective, descendants: true }, { propertyName: "noEntriesFound", first: true, predicate: MatSelectNoEntriesFoundDirective, descendants: true }], viewQueries: [{ propertyName: "searchSelectInput", first: true, predicate: ["searchSelectInput"], descendants: true, read: ElementRef, static: true }, { propertyName: "innerSelectSearch", first: true, predicate: ["innerSelectSearch"], descendants: true, read: ElementRef, static: true }], ngImport: i0, template: "<!--\nCopyright (c) 2018 Bithost GmbH All Rights Reserved.\n\nUse of this source code is governed by an MIT-style license that can be\nfound in the LICENSE file at https://angular.io/license\n-->\n<!-- Placeholder to adjust vertical offset of the mat-option elements -->\n<input matInput class=\"mat-select-search-input mat-select-search-hidden\" />\n\n<!-- Note: the mat-datepicker-content mat-tab-header are needed to inherit the material theme colors, see PR #22 -->\n<div\n #innerSelectSearch\n class=\"mat-select-search-inner mat-typography mat-datepicker-content mat-tab-header\"\n [ngClass]=\"{\n 'mat-select-search-inner-multiple': matSelect.multiple,\n 'mat-select-search-inner-toggle-all': _isToggleAllCheckboxVisible(),\n }\"\n>\n @if (_isToggleAllCheckboxVisible()) {\n <mat-checkbox\n class=\"mat-select-search-toggle-all-checkbox\"\n [checked]=\"toggleAllCheckboxChecked\"\n [indeterminate]=\"toggleAllCheckboxIndeterminate\"\n [matTooltip]=\"toggleAllCheckboxTooltipMessage\"\n matTooltipClass=\"ngx-mat-select-search-toggle-all-tooltip\"\n [matTooltipPosition]=\"toggleAllCheckboxTooltipPosition\"\n (change)=\"_emitSelectAllBooleanToParent($event.checked)\"\n ></mat-checkbox>\n }\n <input\n class=\"mat-select-search-input\"\n autocomplete=\"off\"\n [type]=\"type\"\n [formControl]=\"_formControl\"\n #searchSelectInput\n (keydown)=\"_handleKeydown($event)\"\n (keyup)=\"_handleKeyup($event)\"\n (blur)=\"onBlur()\"\n [placeholder]=\"placeholderLabel\"\n [attr.aria-label]=\"ariaLabel\"\n />\n @if (value === '' && !searching) {\n <mat-icon class=\"suffix\">search</mat-icon>\n }\n @if (searching) {\n <mat-spinner class=\"mat-select-search-spinner\" diameter=\"16\"></mat-spinner>\n }\n @if (!hideClearSearchButton && value && !searching) {\n <button\n mat-icon-button\n aria-label=\"Clear\"\n (click)=\"_reset(true)\"\n class=\"mat-select-search-clear\"\n >\n @if (clearIcon) {\n <ng-content select=\"[matSelectSearchClear]\"></ng-content>\n } @else {\n <mat-icon [svgIcon]=\"closeSvgIcon\">\n {{ !closeSvgIcon ? closeIcon : null }}\n </mat-icon>\n }\n </button>\n }\n\n <ng-content select=\".mat-select-search-custom-header-content\"></ng-content>\n\n <mat-divider></mat-divider>\n</div>\n\n@if (_showNoEntriesFound$ | async) {\n <div class=\"mat-select-search-no-entries-found\">\n @if (noEntriesFound) {\n <ng-content select=\"[matSelectNoEntriesFound]\"></ng-content>\n } @else {\n {{ noEntriesFoundLabel }}\n }\n </div>\n}\n", styles: [":host .mat-select-search-hidden{visibility:hidden}:host .mat-select-search-inner{position:absolute;top:0;left:0;width:100%;z-index:100;font-size:inherit;box-shadow:none}:host .mat-select-search-inner.mat-select-search-inner-multiple.mat-select-search-inner-toggle-all{display:flex;align-items:center}:host .suffix{position:absolute;top:var(--spacer-and-half);right:var(--spacer)}:host .mat-select-search-input{box-sizing:border-box;width:100%;border:none;font-family:inherit;font-size:inherit;color:currentColor;outline:none;background:var(--mat-sys-surface);line-height:var(--input-height);height:var(--input-height);padding:var(--spacer)}:host-context([dir=rtl]) :host .mat-select-search-input{padding-right:var(--double-spacer)}:host .mat-select-search-inner-toggle-all .mat-select-search-input{padding-left:var(--half-spacer)}:host .mat-select-search-no-entries-found{padding-top:var(--spacer);padding-bottom:var(--spacer)}:host .mat-select-search-clear{position:absolute;right:var(--half-spacer);top:0}:host-context([dir=rtl]) :host .mat-select-search-clear{right:auto;left:var(--half-spacer)}:host .mat-select-search-spinner{position:absolute;right:var(--double-spacer);top:calc(50% - var(--spacer))}:host-context([dir=rtl]) :host .mat-select-search-spinner{right:auto;left:var(--double-spacer)}\n"], dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: MatCheckbox, selector: "mat-checkbox", inputs: ["aria-label", "aria-labelledby", "aria-describedby", "aria-expanded", "aria-controls", "aria-owns", "id", "required", "labelPosition", "name", "value", "disableRipple", "tabIndex", "color", "disabledInteractive", "checked", "disabled", "indeterminate"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }, { kind: "directive", type: MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.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: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "mode", "value", "diameter", "strokeWidth"], exportAs: ["matProgressSpinner"] }, { kind: "component", type: MatIconButton, selector: "button[mat-icon-button], a[mat-icon-button], button[matIconButton], a[matIconButton]", exportAs: ["matButton", "matAnchor"] }, { kind: "directive", type: 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: MatDivider, selector: "mat-divider", inputs: ["vertical", "inset"] }, { kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
510
+ ], queries: [{ propertyName: "clearIcon", first: true, predicate: MatSelectSearchClearDirective, descendants: true, isSignal: true }, { propertyName: "noEntriesFound", first: true, predicate: MatSelectNoEntriesFoundDirective, descendants: true, isSignal: true }], viewQueries: [{ propertyName: "searchSelectInput", first: true, predicate: ["searchSelectInput"], descendants: true, read: ElementRef, isSignal: true }, { propertyName: "innerSelectSearch", first: true, predicate: ["innerSelectSearch"], descendants: true, read: ElementRef, isSignal: true }], ngImport: i0, template: "<!--\nCopyright (c) 2018 Bithost GmbH All Rights Reserved.\n\nUse of this source code is governed by an MIT-style license that can be\nfound in the LICENSE file at https://angular.io/license\n-->\n<!-- Placeholder to adjust vertical offset of the mat-option elements -->\n<input matInput class=\"mat-select-search-input mat-select-search-hidden\" />\n\n<!-- Note: the mat-datepicker-content mat-tab-header are needed to inherit the material theme colors, see PR #22 -->\n<div\n #innerSelectSearch\n class=\"mat-select-search-inner mat-typography mat-datepicker-content mat-tab-header\"\n [class]=\"{\n 'mat-select-search-inner-multiple': matSelect.multiple,\n 'mat-select-search-inner-toggle-all': _isToggleAllCheckboxVisible(),\n }\"\n>\n @if (_isToggleAllCheckboxVisible()) {\n <mat-checkbox\n class=\"mat-select-search-toggle-all-checkbox\"\n [checked]=\"toggleAllCheckboxChecked()\"\n [indeterminate]=\"toggleAllCheckboxIndeterminate()\"\n [matTooltip]=\"toggleAllCheckboxTooltipMessage()\"\n matTooltipClass=\"ngx-mat-select-search-toggle-all-tooltip\"\n [matTooltipPosition]=\"toggleAllCheckboxTooltipPosition()\"\n (change)=\"_emitSelectAllBooleanToParent($event.checked)\"\n />\n }\n <input\n class=\"mat-select-search-input\"\n autocomplete=\"off\"\n [type]=\"type()\"\n [formControl]=\"_formControl\"\n #searchSelectInput\n (keydown)=\"_handleKeydown($event)\"\n (keyup)=\"_handleKeyup($event)\"\n (blur)=\"onBlur()\"\n [placeholder]=\"placeholderLabel()\"\n [attr.aria-label]=\"ariaLabel()\"\n />\n @if (value === '' && !searching()) {\n <mat-icon class=\"suffix\">search</mat-icon>\n }\n @if (searching()) {\n <mat-spinner class=\"mat-select-search-spinner\" diameter=\"16\" />\n }\n @if (!hideClearSearchButton() && value && !searching()) {\n <button\n mat-icon-button\n aria-label=\"Clear\"\n (click)=\"_reset(true)\"\n class=\"mat-select-search-clear\"\n >\n @if (clearIcon()) {\n <ng-content select=\"[matSelectSearchClear]\" />\n } @else {\n <mat-icon [svgIcon]=\"closeSvgIcon()\">\n {{ !closeSvgIcon() ? closeIcon() : null }}\n </mat-icon>\n }\n </button>\n }\n\n <ng-content select=\".mat-select-search-custom-header-content\" />\n\n <mat-divider />\n</div>\n\n@if (_showNoEntriesFound$ | async) {\n <div class=\"mat-select-search-no-entries-found\">\n @if (noEntriesFound()) {\n <ng-content select=\"[matSelectNoEntriesFound]\" />\n } @else {\n {{ noEntriesFoundLabel() }}\n }\n </div>\n}\n", styles: [":host .mat-select-search-hidden{visibility:hidden}:host .mat-select-search-inner{position:absolute;top:0;left:0;width:100%;z-index:100;font-size:inherit;box-shadow:none}:host .mat-select-search-inner.mat-select-search-inner-multiple.mat-select-search-inner-toggle-all{display:flex;align-items:center}:host .suffix{position:absolute;top:var(--spacer-and-half);right:var(--spacer)}:host .mat-select-search-input{box-sizing:border-box;width:100%;border:none;font-family:inherit;font-size:inherit;color:currentColor;outline:none;background:var(--mat-sys-surface);line-height:var(--input-height);height:var(--input-height);padding:var(--spacer)}:host-context([dir=rtl]) :host .mat-select-search-input{padding-right:var(--double-spacer)}:host .mat-select-search-inner-toggle-all .mat-select-search-input{padding-left:var(--half-spacer)}:host .mat-select-search-no-entries-found{padding-top:var(--spacer);padding-bottom:var(--spacer)}:host .mat-select-search-clear{position:absolute;right:var(--half-spacer);top:0}:host-context([dir=rtl]) :host .mat-select-search-clear{right:auto;left:var(--half-spacer)}:host .mat-select-search-spinner{position:absolute;right:var(--double-spacer);top:calc(50% - var(--spacer))}:host-context([dir=rtl]) :host .mat-select-search-spinner{right:auto;left:var(--double-spacer)}\n"], dependencies: [{ kind: "component", type: MatCheckbox, selector: "mat-checkbox", inputs: ["aria-label", "aria-labelledby", "aria-describedby", "aria-expanded", "aria-controls", "aria-owns", "id", "required", "labelPosition", "name", "value", "disableRipple", "tabIndex", "color", "disabledInteractive", "checked", "disabled", "indeterminate"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }, { kind: "directive", type: MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.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: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "mode", "value", "diameter", "strokeWidth"], exportAs: ["matProgressSpinner"] }, { kind: "component", type: MatIconButton, selector: "button[mat-icon-button], a[mat-icon-button], button[matIconButton], a[matIconButton]", exportAs: ["matButton", "matAnchor"] }, { kind: "directive", type: 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: MatDivider, selector: "mat-divider", inputs: ["vertical", "inset"] }, { kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
501
511
  }
502
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: MatSelectSearchComponent, decorators: [{
512
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: MatSelectSearchComponent, decorators: [{
503
513
  type: Component,
504
514
  args: [{ selector: 'mat-select-search', providers: [
505
515
  {
@@ -508,7 +518,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
508
518
  multi: true,
509
519
  },
510
520
  ], changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
511
- NgClass,
512
521
  MatCheckbox,
513
522
  MatTooltip,
514
523
  ReactiveFormsModule,
@@ -518,60 +527,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
518
527
  MatInput,
519
528
  MatDivider,
520
529
  AsyncPipe,
521
- ], template: "<!--\nCopyright (c) 2018 Bithost GmbH All Rights Reserved.\n\nUse of this source code is governed by an MIT-style license that can be\nfound in the LICENSE file at https://angular.io/license\n-->\n<!-- Placeholder to adjust vertical offset of the mat-option elements -->\n<input matInput class=\"mat-select-search-input mat-select-search-hidden\" />\n\n<!-- Note: the mat-datepicker-content mat-tab-header are needed to inherit the material theme colors, see PR #22 -->\n<div\n #innerSelectSearch\n class=\"mat-select-search-inner mat-typography mat-datepicker-content mat-tab-header\"\n [ngClass]=\"{\n 'mat-select-search-inner-multiple': matSelect.multiple,\n 'mat-select-search-inner-toggle-all': _isToggleAllCheckboxVisible(),\n }\"\n>\n @if (_isToggleAllCheckboxVisible()) {\n <mat-checkbox\n class=\"mat-select-search-toggle-all-checkbox\"\n [checked]=\"toggleAllCheckboxChecked\"\n [indeterminate]=\"toggleAllCheckboxIndeterminate\"\n [matTooltip]=\"toggleAllCheckboxTooltipMessage\"\n matTooltipClass=\"ngx-mat-select-search-toggle-all-tooltip\"\n [matTooltipPosition]=\"toggleAllCheckboxTooltipPosition\"\n (change)=\"_emitSelectAllBooleanToParent($event.checked)\"\n ></mat-checkbox>\n }\n <input\n class=\"mat-select-search-input\"\n autocomplete=\"off\"\n [type]=\"type\"\n [formControl]=\"_formControl\"\n #searchSelectInput\n (keydown)=\"_handleKeydown($event)\"\n (keyup)=\"_handleKeyup($event)\"\n (blur)=\"onBlur()\"\n [placeholder]=\"placeholderLabel\"\n [attr.aria-label]=\"ariaLabel\"\n />\n @if (value === '' && !searching) {\n <mat-icon class=\"suffix\">search</mat-icon>\n }\n @if (searching) {\n <mat-spinner class=\"mat-select-search-spinner\" diameter=\"16\"></mat-spinner>\n }\n @if (!hideClearSearchButton && value && !searching) {\n <button\n mat-icon-button\n aria-label=\"Clear\"\n (click)=\"_reset(true)\"\n class=\"mat-select-search-clear\"\n >\n @if (clearIcon) {\n <ng-content select=\"[matSelectSearchClear]\"></ng-content>\n } @else {\n <mat-icon [svgIcon]=\"closeSvgIcon\">\n {{ !closeSvgIcon ? closeIcon : null }}\n </mat-icon>\n }\n </button>\n }\n\n <ng-content select=\".mat-select-search-custom-header-content\"></ng-content>\n\n <mat-divider></mat-divider>\n</div>\n\n@if (_showNoEntriesFound$ | async) {\n <div class=\"mat-select-search-no-entries-found\">\n @if (noEntriesFound) {\n <ng-content select=\"[matSelectNoEntriesFound]\"></ng-content>\n } @else {\n {{ noEntriesFoundLabel }}\n }\n </div>\n}\n", styles: [":host .mat-select-search-hidden{visibility:hidden}:host .mat-select-search-inner{position:absolute;top:0;left:0;width:100%;z-index:100;font-size:inherit;box-shadow:none}:host .mat-select-search-inner.mat-select-search-inner-multiple.mat-select-search-inner-toggle-all{display:flex;align-items:center}:host .suffix{position:absolute;top:var(--spacer-and-half);right:var(--spacer)}:host .mat-select-search-input{box-sizing:border-box;width:100%;border:none;font-family:inherit;font-size:inherit;color:currentColor;outline:none;background:var(--mat-sys-surface);line-height:var(--input-height);height:var(--input-height);padding:var(--spacer)}:host-context([dir=rtl]) :host .mat-select-search-input{padding-right:var(--double-spacer)}:host .mat-select-search-inner-toggle-all .mat-select-search-input{padding-left:var(--half-spacer)}:host .mat-select-search-no-entries-found{padding-top:var(--spacer);padding-bottom:var(--spacer)}:host .mat-select-search-clear{position:absolute;right:var(--half-spacer);top:0}:host-context([dir=rtl]) :host .mat-select-search-clear{right:auto;left:var(--half-spacer)}:host .mat-select-search-spinner{position:absolute;right:var(--double-spacer);top:calc(50% - var(--spacer))}:host-context([dir=rtl]) :host .mat-select-search-spinner{right:auto;left:var(--double-spacer)}\n"] }]
522
- }], ctorParameters: () => [], propDecorators: { placeholderLabel: [{
523
- type: Input
524
- }], type: [{
525
- type: Input
526
- }], closeIcon: [{
527
- type: Input
528
- }], closeSvgIcon: [{
529
- type: Input
530
- }], noEntriesFoundLabel: [{
531
- type: Input
532
- }], clearSearchInput: [{
533
- type: Input
534
- }], searching: [{
535
- type: Input
536
- }], disableInitialFocus: [{
537
- type: Input
538
- }], enableClearOnEscapePressed: [{
539
- type: Input
540
- }], preventHomeEndKeyPropagation: [{
541
- type: Input
542
- }], disableScrollToActiveOnOptionsChanged: [{
543
- type: Input
544
- }], ariaLabel: [{
545
- type: Input
546
- }], showToggleAllCheckbox: [{
547
- type: Input
548
- }], toggleAllCheckboxChecked: [{
549
- type: Input
550
- }], toggleAllCheckboxIndeterminate: [{
551
- type: Input
552
- }], toggleAllCheckboxTooltipMessage: [{
553
- type: Input
554
- }], toggleAllCheckboxTooltipPosition: [{
555
- type: Input
556
- }], hideClearSearchButton: [{
557
- type: Input
558
- }], alwaysRestoreSelectedOptionsMulti: [{
559
- type: Input
560
- }], toggleAll: [{
561
- type: Output
562
- }], searchSelectInput: [{
563
- type: ViewChild,
564
- args: ['searchSelectInput', { read: ElementRef, static: true }]
565
- }], innerSelectSearch: [{
566
- type: ViewChild,
567
- args: ['innerSelectSearch', { read: ElementRef, static: true }]
568
- }], clearIcon: [{
569
- type: ContentChild,
570
- args: [MatSelectSearchClearDirective]
571
- }], noEntriesFound: [{
572
- type: ContentChild,
573
- args: [MatSelectNoEntriesFoundDirective]
574
- }] } });
530
+ ], template: "<!--\nCopyright (c) 2018 Bithost GmbH All Rights Reserved.\n\nUse of this source code is governed by an MIT-style license that can be\nfound in the LICENSE file at https://angular.io/license\n-->\n<!-- Placeholder to adjust vertical offset of the mat-option elements -->\n<input matInput class=\"mat-select-search-input mat-select-search-hidden\" />\n\n<!-- Note: the mat-datepicker-content mat-tab-header are needed to inherit the material theme colors, see PR #22 -->\n<div\n #innerSelectSearch\n class=\"mat-select-search-inner mat-typography mat-datepicker-content mat-tab-header\"\n [class]=\"{\n 'mat-select-search-inner-multiple': matSelect.multiple,\n 'mat-select-search-inner-toggle-all': _isToggleAllCheckboxVisible(),\n }\"\n>\n @if (_isToggleAllCheckboxVisible()) {\n <mat-checkbox\n class=\"mat-select-search-toggle-all-checkbox\"\n [checked]=\"toggleAllCheckboxChecked()\"\n [indeterminate]=\"toggleAllCheckboxIndeterminate()\"\n [matTooltip]=\"toggleAllCheckboxTooltipMessage()\"\n matTooltipClass=\"ngx-mat-select-search-toggle-all-tooltip\"\n [matTooltipPosition]=\"toggleAllCheckboxTooltipPosition()\"\n (change)=\"_emitSelectAllBooleanToParent($event.checked)\"\n />\n }\n <input\n class=\"mat-select-search-input\"\n autocomplete=\"off\"\n [type]=\"type()\"\n [formControl]=\"_formControl\"\n #searchSelectInput\n (keydown)=\"_handleKeydown($event)\"\n (keyup)=\"_handleKeyup($event)\"\n (blur)=\"onBlur()\"\n [placeholder]=\"placeholderLabel()\"\n [attr.aria-label]=\"ariaLabel()\"\n />\n @if (value === '' && !searching()) {\n <mat-icon class=\"suffix\">search</mat-icon>\n }\n @if (searching()) {\n <mat-spinner class=\"mat-select-search-spinner\" diameter=\"16\" />\n }\n @if (!hideClearSearchButton() && value && !searching()) {\n <button\n mat-icon-button\n aria-label=\"Clear\"\n (click)=\"_reset(true)\"\n class=\"mat-select-search-clear\"\n >\n @if (clearIcon()) {\n <ng-content select=\"[matSelectSearchClear]\" />\n } @else {\n <mat-icon [svgIcon]=\"closeSvgIcon()\">\n {{ !closeSvgIcon() ? closeIcon() : null }}\n </mat-icon>\n }\n </button>\n }\n\n <ng-content select=\".mat-select-search-custom-header-content\" />\n\n <mat-divider />\n</div>\n\n@if (_showNoEntriesFound$ | async) {\n <div class=\"mat-select-search-no-entries-found\">\n @if (noEntriesFound()) {\n <ng-content select=\"[matSelectNoEntriesFound]\" />\n } @else {\n {{ noEntriesFoundLabel() }}\n }\n </div>\n}\n", styles: [":host .mat-select-search-hidden{visibility:hidden}:host .mat-select-search-inner{position:absolute;top:0;left:0;width:100%;z-index:100;font-size:inherit;box-shadow:none}:host .mat-select-search-inner.mat-select-search-inner-multiple.mat-select-search-inner-toggle-all{display:flex;align-items:center}:host .suffix{position:absolute;top:var(--spacer-and-half);right:var(--spacer)}:host .mat-select-search-input{box-sizing:border-box;width:100%;border:none;font-family:inherit;font-size:inherit;color:currentColor;outline:none;background:var(--mat-sys-surface);line-height:var(--input-height);height:var(--input-height);padding:var(--spacer)}:host-context([dir=rtl]) :host .mat-select-search-input{padding-right:var(--double-spacer)}:host .mat-select-search-inner-toggle-all .mat-select-search-input{padding-left:var(--half-spacer)}:host .mat-select-search-no-entries-found{padding-top:var(--spacer);padding-bottom:var(--spacer)}:host .mat-select-search-clear{position:absolute;right:var(--half-spacer);top:0}:host-context([dir=rtl]) :host .mat-select-search-clear{right:auto;left:var(--half-spacer)}:host .mat-select-search-spinner{position:absolute;right:var(--double-spacer);top:calc(50% - var(--spacer))}:host-context([dir=rtl]) :host .mat-select-search-spinner{right:auto;left:var(--double-spacer)}\n"] }]
531
+ }], ctorParameters: () => [], propDecorators: { placeholderLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "placeholderLabel", required: false }] }], type: [{ type: i0.Input, args: [{ isSignal: true, alias: "type", required: false }] }], closeIcon: [{ type: i0.Input, args: [{ isSignal: true, alias: "closeIcon", required: false }] }], closeSvgIcon: [{ type: i0.Input, args: [{ isSignal: true, alias: "closeSvgIcon", required: false }] }], noEntriesFoundLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "noEntriesFoundLabel", required: false }] }], clearSearchInput: [{ type: i0.Input, args: [{ isSignal: true, alias: "clearSearchInput", required: false }] }], searching: [{ type: i0.Input, args: [{ isSignal: true, alias: "searching", required: false }] }], disableInitialFocus: [{ type: i0.Input, args: [{ isSignal: true, alias: "disableInitialFocus", required: false }] }], enableClearOnEscapePressed: [{ type: i0.Input, args: [{ isSignal: true, alias: "enableClearOnEscapePressed", required: false }] }], preventHomeEndKeyPropagation: [{ type: i0.Input, args: [{ isSignal: true, alias: "preventHomeEndKeyPropagation", required: false }] }], disableScrollToActiveOnOptionsChanged: [{ type: i0.Input, args: [{ isSignal: true, alias: "disableScrollToActiveOnOptionsChanged", required: false }] }], ariaLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaLabel", required: false }] }], showToggleAllCheckbox: [{ type: i0.Input, args: [{ isSignal: true, alias: "showToggleAllCheckbox", required: false }] }], toggleAllCheckboxChecked: [{ type: i0.Input, args: [{ isSignal: true, alias: "toggleAllCheckboxChecked", required: false }] }], toggleAllCheckboxIndeterminate: [{ type: i0.Input, args: [{ isSignal: true, alias: "toggleAllCheckboxIndeterminate", required: false }] }], toggleAllCheckboxTooltipMessage: [{ type: i0.Input, args: [{ isSignal: true, alias: "toggleAllCheckboxTooltipMessage", required: false }] }], toggleAllCheckboxTooltipPosition: [{ type: i0.Input, args: [{ isSignal: true, alias: "toggleAllCheckboxTooltipPosition", required: false }] }], hideClearSearchButton: [{ type: i0.Input, args: [{ isSignal: true, alias: "hideClearSearchButton", required: false }] }], alwaysRestoreSelectedOptionsMulti: [{ type: i0.Input, args: [{ isSignal: true, alias: "alwaysRestoreSelectedOptionsMulti", required: false }] }], toggleAll: [{ type: i0.Output, args: ["toggleAll"] }], searchSelectInput: [{ type: i0.ViewChild, args: ['searchSelectInput', { ...{
532
+ read: ElementRef,
533
+ }, isSignal: true }] }], innerSelectSearch: [{ type: i0.ViewChild, args: ['innerSelectSearch', { ...{
534
+ read: ElementRef,
535
+ }, isSignal: true }] }], clearIcon: [{ type: i0.ContentChild, args: [i0.forwardRef(() => MatSelectSearchClearDirective), { isSignal: true }] }], noEntriesFound: [{ type: i0.ContentChild, args: [i0.forwardRef(() => MatSelectNoEntriesFoundDirective), { isSignal: true }] }] } });
575
536
 
576
537
  /**
577
538
  * Copyright (c) 2018 Bithost GmbH All Rights Reserved.
@@ -580,15 +541,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
580
541
  * found in the LICENSE file at https://angular.io/license
581
542
  */
582
543
  class MatSelectSearchModule {
583
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: MatSelectSearchModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
584
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.15", ngImport: i0, type: MatSelectSearchModule, imports: [MatSelectSearchComponent,
544
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: MatSelectSearchModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
545
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.1.1", ngImport: i0, type: MatSelectSearchModule, imports: [MatSelectSearchComponent,
585
546
  MatSelectSearchClearDirective,
586
547
  MatSelectNoEntriesFoundDirective], exports: [MatSelectSearchComponent,
587
548
  MatSelectSearchClearDirective,
588
549
  MatSelectNoEntriesFoundDirective] }); }
589
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: MatSelectSearchModule, imports: [MatSelectSearchComponent] }); }
550
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: MatSelectSearchModule, imports: [MatSelectSearchComponent] }); }
590
551
  }
591
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: MatSelectSearchModule, decorators: [{
552
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: MatSelectSearchModule, decorators: [{
592
553
  type: NgModule,
593
554
  args: [{
594
555
  imports: [