@onemrvapublic/design-system 18.2.5-develop.2 → 18.2.5-develop.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (145) hide show
  1. package/esm2022/flag-icon/src/flag-icon.component.mjs +1 -1
  2. package/esm2022/layout/src/components/index.mjs +1 -1
  3. package/esm2022/layout/src/components/layout/layout.component.mjs +1 -1
  4. package/esm2022/layout/src/components/layout-drawer-title/layout-drawer-title.component.mjs +1 -1
  5. package/esm2022/layout/src/components/layout-footer/layout-footer.component.mjs +2 -3
  6. package/esm2022/layout/src/components/layout-sidenav/layout-sidenav.component.mjs +1 -1
  7. package/esm2022/layout/src/models/onemrva-profile.model.mjs +1 -1
  8. package/esm2022/layout/src/services/drawer.service.mjs +2 -2
  9. package/esm2022/mat-avatar/src/onemrva-mat-avatar.component.mjs +1 -1
  10. package/esm2022/mat-badge/src/onemrva-mat-badge.component.mjs +1 -2
  11. package/esm2022/mat-carousel/src/mat-carousel-item/onemrva-mat-carousel-item.component.mjs +1 -1
  12. package/esm2022/mat-carousel/src/onemrva-mat-carousel.component.mjs +5 -8
  13. package/esm2022/mat-copy-to-clipboard/src/components/copy-to-clipboard.component.mjs +1 -1
  14. package/esm2022/mat-file-upload/src/components/onemrva-mat-file-panel/onemrva-file-panel.component.mjs +1 -1
  15. package/esm2022/mat-file-upload/src/components/onemrva-mat-file-upload/onemrva-mat-file-upload.component.mjs +1 -1
  16. package/esm2022/mat-file-upload/src/directives/dnd.directive.mjs +1 -1
  17. package/esm2022/mat-file-upload/src/models/progress-file.model.mjs +1 -1
  18. package/esm2022/mat-input-bank-account/src/bank-account.component.mjs +11 -4
  19. package/esm2022/mat-input-bank-account/src/onemrva-mat-input-bank-account.component.mjs +3 -3
  20. package/esm2022/mat-input-birthplace/src/onemrva-mat-input-birthplace.component.mjs +1 -1
  21. package/esm2022/mat-input-country/src/onemrva-mat-input-country.component.mjs +1 -1
  22. package/esm2022/mat-input-enterprise-number/src/onemrva-mat-input-enterprise-number.component.mjs +1 -1
  23. package/esm2022/mat-input-phone/src/onemrva-mat-input-phone.component.mjs +1 -1
  24. package/esm2022/mat-input-phone/src/phone-number.directive.mjs +2 -3
  25. package/esm2022/mat-message-box/src/onemrva-mat-message-box.component.mjs +1 -1
  26. package/esm2022/mat-multi-select/src/onemrva-mat-multi-select.component.mjs +15 -7
  27. package/esm2022/mat-notification/src/onemrva-mat-notification.component.mjs +1 -1
  28. package/esm2022/mat-paginator/src/onemrva-mat-paginator.component.mjs +4 -4
  29. package/esm2022/mat-panel/src/onemrva-mat-panel.component.mjs +6 -6
  30. package/esm2022/mat-pop-over/src/onemrva-mat-pop-over-content.component.mjs +1 -1
  31. package/esm2022/mat-pop-over/src/onemrva-mat-pop-over-trigger.component.mjs +1 -1
  32. package/esm2022/mat-pop-over/src/onemrva-mat-pop-over.component.mjs +3 -3
  33. package/esm2022/mat-progress-bar/src/onemrva-mat-progress-bar.component.mjs +3 -3
  34. package/esm2022/mat-select-search/src/mat-select-search.component.mjs +4 -3
  35. package/esm2022/mat-selectable-box/src/onemrva-mat-selectable-box.component.mjs +1 -1
  36. package/esm2022/mat-side-menu/src/onemrva-mat-side-menu.component.mjs +3 -3
  37. package/esm2022/mat-skeleton/src/onemrva-mat-skeleton-enums.mjs +1 -1
  38. package/esm2022/mat-skeleton/src/onemrva-mat-skeleton.component.mjs +14 -14
  39. package/esm2022/mat-spinner/src/onemrva-mat-loading.directive.mjs +1 -1
  40. package/esm2022/mat-stepper/src/onemrva-mat-stepper.component.mjs +7 -4
  41. package/esm2022/mat-sticker/src/onemrva-mat-sticker.component.mjs +5 -5
  42. package/esm2022/mat-table-of-content/src/onemrva-mat-table-of-content.component.mjs +3 -4
  43. package/esm2022/mat-table-of-content/src/onemrva-mat-table-of-content.directive.mjs +1 -1
  44. package/esm2022/mat-table-of-content/src/onemrva-mat-table-of-content.service.mjs +1 -1
  45. package/esm2022/mat-table-of-content/src/onemrva-mat-toc-anchor.model.mjs +1 -1
  46. package/esm2022/mat-task-list/src/onemrva-mat-task-list.component.mjs +1 -1
  47. package/esm2022/mat-task-list/src/onemrva-mat-task.component.mjs +2 -1
  48. package/esm2022/mat-timepicker/src/clock/clock.component.mjs +3 -3
  49. package/esm2022/mat-timepicker/src/interfaces-and-types.mjs +1 -1
  50. package/esm2022/mat-timepicker/src/onemrva-mat-timepicker.component.mjs +1 -1
  51. package/esm2022/mat-timepicker/src/timepicker-dialog/timepicker-dialog.component.mjs +3 -3
  52. package/esm2022/mat-timepicker/src/timepicker-toggle/timepicker-toggle.component.mjs +1 -1
  53. package/esm2022/mat-timepicker/src/timepicker.directive.mjs +3 -24
  54. package/esm2022/mat-tooltip/src/onemrva-mat-tooltip.directive.mjs +1 -1
  55. package/esm2022/page-not-found/src/page-not-found-invader.component.mjs +5 -4
  56. package/esm2022/shared/src/lib/adapters/date.adapter.mjs +1 -1
  57. package/esm2022/shared/src/lib/containers/WebComponentOverlayContainer.mjs +4 -4
  58. package/esm2022/shared/src/lib/directives/clipboard.directive.mjs +1 -1
  59. package/esm2022/shared/src/lib/directives/color.directive.mjs +2 -2
  60. package/esm2022/shared/src/lib/directives/digit-only.directive.mjs +2 -3
  61. package/esm2022/shared/src/lib/directives/mask.directive.mjs +1 -1
  62. package/esm2022/shared/src/lib/directives/mat-row-clickable.directive.mjs +2 -2
  63. package/esm2022/shared/src/lib/loaders/onemrva-translate-cdn-loader.mjs +1 -1
  64. package/esm2022/shared/src/lib/loaders/onemrva-translate-http-loader.mjs +1 -1
  65. package/esm2022/shared/src/lib/services/cache.service.mjs +2 -3
  66. package/esm2022/shared/src/lib/services/cdn.service.mjs +1 -1
  67. package/esm2022/shared/src/lib/services/country-lookup.service.mjs +1 -1
  68. package/esm2022/shared/src/lib/shared.datepicker.module.mjs +1 -1
  69. package/esm2022/shared/src/lib/validators/bank-account.validator.utils.mjs +1 -1
  70. package/esm2022/utils/src/enum.utils.mjs +1 -1
  71. package/fesm2022/onemrvapublic-design-system-flag-icon.mjs.map +1 -1
  72. package/fesm2022/onemrvapublic-design-system-layout.mjs +2 -3
  73. package/fesm2022/onemrvapublic-design-system-layout.mjs.map +1 -1
  74. package/fesm2022/onemrvapublic-design-system-mat-avatar.mjs.map +1 -1
  75. package/fesm2022/onemrvapublic-design-system-mat-badge.mjs +0 -1
  76. package/fesm2022/onemrvapublic-design-system-mat-badge.mjs.map +1 -1
  77. package/fesm2022/onemrvapublic-design-system-mat-carousel.mjs +4 -7
  78. package/fesm2022/onemrvapublic-design-system-mat-carousel.mjs.map +1 -1
  79. package/fesm2022/onemrvapublic-design-system-mat-copy-to-clipboard.mjs.map +1 -1
  80. package/fesm2022/onemrvapublic-design-system-mat-file-upload.mjs.map +1 -1
  81. package/fesm2022/onemrvapublic-design-system-mat-input-bank-account.mjs +12 -5
  82. package/fesm2022/onemrvapublic-design-system-mat-input-bank-account.mjs.map +1 -1
  83. package/fesm2022/onemrvapublic-design-system-mat-input-birthplace.mjs.map +1 -1
  84. package/fesm2022/onemrvapublic-design-system-mat-input-country.mjs.map +1 -1
  85. package/fesm2022/onemrvapublic-design-system-mat-input-enterprise-number.mjs.map +1 -1
  86. package/fesm2022/onemrvapublic-design-system-mat-input-phone.mjs +1 -2
  87. package/fesm2022/onemrvapublic-design-system-mat-input-phone.mjs.map +1 -1
  88. package/fesm2022/onemrvapublic-design-system-mat-message-box.mjs.map +1 -1
  89. package/fesm2022/onemrvapublic-design-system-mat-multi-select.mjs +14 -6
  90. package/fesm2022/onemrvapublic-design-system-mat-multi-select.mjs.map +1 -1
  91. package/fesm2022/onemrvapublic-design-system-mat-notification.mjs.map +1 -1
  92. package/fesm2022/onemrvapublic-design-system-mat-paginator.mjs +3 -3
  93. package/fesm2022/onemrvapublic-design-system-mat-paginator.mjs.map +1 -1
  94. package/fesm2022/onemrvapublic-design-system-mat-panel.mjs +5 -5
  95. package/fesm2022/onemrvapublic-design-system-mat-panel.mjs.map +1 -1
  96. package/fesm2022/onemrvapublic-design-system-mat-pop-over.mjs +2 -2
  97. package/fesm2022/onemrvapublic-design-system-mat-pop-over.mjs.map +1 -1
  98. package/fesm2022/onemrvapublic-design-system-mat-progress-bar.mjs +2 -2
  99. package/fesm2022/onemrvapublic-design-system-mat-progress-bar.mjs.map +1 -1
  100. package/fesm2022/onemrvapublic-design-system-mat-select-search.mjs +3 -2
  101. package/fesm2022/onemrvapublic-design-system-mat-select-search.mjs.map +1 -1
  102. package/fesm2022/onemrvapublic-design-system-mat-selectable-box.mjs.map +1 -1
  103. package/fesm2022/onemrvapublic-design-system-mat-side-menu.mjs +2 -2
  104. package/fesm2022/onemrvapublic-design-system-mat-side-menu.mjs.map +1 -1
  105. package/fesm2022/onemrvapublic-design-system-mat-skeleton.mjs +13 -13
  106. package/fesm2022/onemrvapublic-design-system-mat-skeleton.mjs.map +1 -1
  107. package/fesm2022/onemrvapublic-design-system-mat-spinner.mjs.map +1 -1
  108. package/fesm2022/onemrvapublic-design-system-mat-stepper.mjs +6 -3
  109. package/fesm2022/onemrvapublic-design-system-mat-stepper.mjs.map +1 -1
  110. package/fesm2022/onemrvapublic-design-system-mat-sticker.mjs +4 -4
  111. package/fesm2022/onemrvapublic-design-system-mat-sticker.mjs.map +1 -1
  112. package/fesm2022/onemrvapublic-design-system-mat-table-of-content.mjs +2 -3
  113. package/fesm2022/onemrvapublic-design-system-mat-table-of-content.mjs.map +1 -1
  114. package/fesm2022/onemrvapublic-design-system-mat-task-list.mjs +1 -0
  115. package/fesm2022/onemrvapublic-design-system-mat-task-list.mjs.map +1 -1
  116. package/fesm2022/onemrvapublic-design-system-mat-timepicker.mjs +6 -27
  117. package/fesm2022/onemrvapublic-design-system-mat-timepicker.mjs.map +1 -1
  118. package/fesm2022/onemrvapublic-design-system-mat-tooltip.mjs.map +1 -1
  119. package/fesm2022/onemrvapublic-design-system-page-not-found.mjs +4 -3
  120. package/fesm2022/onemrvapublic-design-system-page-not-found.mjs.map +1 -1
  121. package/fesm2022/onemrvapublic-design-system-shared.mjs +7 -9
  122. package/fesm2022/onemrvapublic-design-system-shared.mjs.map +1 -1
  123. package/fesm2022/onemrvapublic-design-system-utils.mjs.map +1 -1
  124. package/layout/src/components/index.d.ts +10 -1
  125. package/layout/src/components/layout/_layout-mixin.component.scss +1 -4
  126. package/layout/src/components/layout-footer/layout-footer.component.d.ts +0 -1
  127. package/layout/src/services/drawer.service.d.ts +0 -1
  128. package/mat-file-upload/src/components/onemrva-mat-file-upload/onemrva-mat-file-upload.component.d.ts +1 -1
  129. package/mat-input-bank-account/src/onemrva-mat-input-bank-account.component.d.ts +0 -1
  130. package/mat-input-phone/src/phone-number.directive.d.ts +0 -1
  131. package/mat-paginator/src/onemrva-mat-paginator.component.d.ts +1 -1
  132. package/mat-panel/src/onemrva-mat-panel.component.d.ts +1 -1
  133. package/mat-skeleton/src/onemrva-mat-skeleton-enums.d.ts +1 -3
  134. package/mat-skeleton/src/onemrva-mat-skeleton.component.d.ts +1 -2
  135. package/mat-sticker/src/onemrva-mat-sticker.component.d.ts +0 -1
  136. package/mat-table-of-content/src/onemrva-mat-toc-anchor.model.d.ts +1 -3
  137. package/mat-timepicker/src/interfaces-and-types.d.ts +1 -5
  138. package/package.json +1 -1
  139. package/page-not-found/src/page-not-found-invader.component.d.ts +0 -1
  140. package/shared/src/lib/directives/color.directive.d.ts +0 -1
  141. package/shared/src/lib/directives/digit-only.directive.d.ts +0 -1
  142. package/shared/src/lib/directives/mat-row-clickable.directive.d.ts +0 -1
  143. package/shared/src/lib/services/cache.service.d.ts +0 -1
  144. package/shared/src/lib/services/country-lookup.service.d.ts +2 -2
  145. package/utils/src/enum.utils.d.ts +1 -3
@@ -49,6 +49,7 @@ class BankAccountComponent {
49
49
  }
50
50
  set disabled(value) {
51
51
  this._disabled = coerceBooleanProperty(value);
52
+ // eslint-disable-next-line @typescript-eslint/no-unused-expressions
52
53
  this._disabled ? this.parts.disable() : this.parts.enable();
53
54
  this.stateChanges.next();
54
55
  }
@@ -81,8 +82,12 @@ class BankAccountComponent {
81
82
  this.touched = false;
82
83
  this.controlType = 'bank-account-input';
83
84
  this.id = `bank-account-input-${BankAccountComponent.nextId++}`;
84
- this.onChange = (_) => { };
85
- this.onTouched = () => { };
85
+ this.onChange = (_) => {
86
+ //
87
+ };
88
+ this.onTouched = () => {
89
+ //
90
+ };
86
91
  this._placeholder = '';
87
92
  this._required = false;
88
93
  this._disabled = false;
@@ -149,7 +154,9 @@ class BankAccountComponent {
149
154
  const controlElement = this._elementRef.nativeElement.querySelector('.bank-account-input-group');
150
155
  controlElement.setAttribute('aria-describedby', ids.join(' '));
151
156
  }
152
- onContainerClick() { }
157
+ onContainerClick() {
158
+ //
159
+ }
153
160
  writeValue(iban) {
154
161
  this.value = iban;
155
162
  }
@@ -225,7 +232,7 @@ class OnemrvaMatInputBankAccountComponent {
225
232
  this.destroyNotifier$ = new Subject();
226
233
  }
227
234
  ngOnInit() {
228
- this.accountNumber.addValidators(bankAccountValidator());
235
+ this.accountNumber.addValidators([bankAccountValidator]);
229
236
  }
230
237
  errors() {
231
238
  const bankNumberErrors = this.accountNumber.errors;
@@ -259,7 +266,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImpor
259
266
  MatSelectSearchModule,
260
267
  BankAccountComponent,
261
268
  ], encapsulation: ViewEncapsulation.None, template: "<mat-form-field class=\"onemrva-bank-account-input\">\n <mat-label>{{ key | translate }}</mat-label>\n\n <bank-account [formControl]=\"accountNumber\" />\n\n <mat-hint *ngIf=\"hint !== ''\">{{ hint }}</mat-hint>\n\n <mat-error>\n {{ errors() | translate }}\n </mat-error>\n</mat-form-field>\n", styles: [".onemrva-bank-account-input .mat-mdc-select-arrow-wrapper{margin-left:4px}.onemrva-bank-account-input .mat-mdc-form-field-infix{min-width:320px!important}.onemrva-bank-account-input .mat-mdc-form-field-infix .onemrva-bank-account-text{padding-left:4px;vertical-align:middle}\n"] }]
262
- }], ctorParameters: () => [], propDecorators: { accountNumber: [{
269
+ }], propDecorators: { accountNumber: [{
263
270
  type: Input
264
271
  }], key: [{
265
272
  type: Input
@@ -1 +1 @@
1
- {"version":3,"file":"onemrvapublic-design-system-mat-input-bank-account.mjs","sources":["../../../../projects/onemrva/design-system/mat-input-bank-account/src/bank-account.component.ts","../../../../projects/onemrva/design-system/mat-input-bank-account/src/bank-account.component.html","../../../../projects/onemrva/design-system/mat-input-bank-account/src/onemrva-mat-input-bank-account.component.ts","../../../../projects/onemrva/design-system/mat-input-bank-account/src/onemrva-mat-input-bank-account.component.html","../../../../projects/onemrva/design-system/mat-input-bank-account/index.ts","../../../../projects/onemrva/design-system/mat-input-bank-account/onemrvapublic-design-system-mat-input-bank-account.ts"],"sourcesContent":["import { FocusMonitor } from '@angular/cdk/a11y';\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\nimport {\n ChangeDetectorRef,\n Component,\n ElementRef,\n Inject,\n Input,\n OnDestroy,\n OnInit,\n Optional,\n Self,\n ViewChild,\n} from '@angular/core';\nimport {\n ControlValueAccessor,\n FormBuilder,\n FormControl,\n FormGroup,\n NgControl,\n FormsModule,\n ReactiveFormsModule,\n AbstractControl,\n Validators,\n} from '@angular/forms';\nimport {\n MAT_FORM_FIELD,\n MatFormField,\n MatFormFieldControl,\n} from '@angular/material/form-field';\nimport {\n combineLatestWith,\n distinctUntilChanged,\n map,\n Observable,\n of,\n pairwise,\n startWith,\n Subject,\n takeUntil,\n} from 'rxjs';\nimport { MatSelectModule } from '@angular/material/select';\nimport { MatSelectSearchModule } from '@onemrvapublic/design-system/mat-select-search';\nimport {\n bankAccountValidator,\n IBAN_SUPPORTED_COUNTRIES,\n} from '@onemrvapublic/design-system/shared';\nimport { CommonModule } from '@angular/common';\nimport { extractIBAN, friendlyFormatIBAN } from 'ibantools';\n\n/** Custom `MatFormFieldControl` for bank account number input. */\n@Component({\n selector: 'bank-account',\n templateUrl: 'bank-account.component.html',\n styleUrl: 'bank-account.component.scss',\n providers: [\n { provide: MatFormFieldControl, useExisting: BankAccountComponent },\n ],\n // eslint-disable-next-line\n host: {\n '[class.example-floating]': 'shouldLabelFloat',\n '[id]': 'id',\n },\n standalone: true,\n imports: [\n CommonModule,\n FormsModule,\n ReactiveFormsModule,\n MatSelectModule,\n MatSelectSearchModule,\n ],\n})\nexport class BankAccountComponent\n implements\n ControlValueAccessor,\n MatFormFieldControl<string>,\n OnDestroy,\n OnInit\n{\n static nextId = 0;\n\n @ViewChild('countryCode ') countryCode!: HTMLInputElement;\n @ViewChild('bban') bban!: HTMLInputElement;\n\n filterCtrl: FormControl<string | null> = new FormControl<string>('');\n parts: FormGroup<{\n countryCode: FormControl<string | null>;\n bban: FormControl<string | null>;\n }>;\n\n countryCodes$: Observable<any> = of([]);\n stateChanges = new Subject<void>();\n destroyNotifier$: Subject<void> = new Subject();\n focused = false;\n touched = false;\n controlType = 'bank-account-input';\n id = `bank-account-input-${BankAccountComponent.nextId++}`;\n onChange = (_: any) => {};\n onTouched = () => {};\n\n get empty() {\n const {\n value: { countryCode, bban },\n } = this.parts;\n\n return !countryCode && !bban;\n }\n\n get shouldLabelFloat() {\n return this.focused || !this.empty;\n }\n\n // @ts-expect-error test\n // eslint-disable-next-line\n @Input('aria-describedby') userAriaDescribedBy: string;\n\n @Input()\n get placeholder(): string {\n return this._placeholder;\n }\n\n set placeholder(value: string) {\n this._placeholder = value;\n this.stateChanges.next();\n }\n\n private _placeholder: string = '';\n\n @Input()\n get required(): boolean {\n return this._required;\n }\n\n set required(value: BooleanInput) {\n this._required = coerceBooleanProperty(value);\n this.stateChanges.next();\n }\n\n private _required = false;\n\n @Input()\n get disabled(): boolean {\n return this._disabled;\n }\n\n set disabled(value: BooleanInput) {\n this._disabled = coerceBooleanProperty(value);\n this._disabled ? this.parts.disable() : this.parts.enable();\n this.stateChanges.next();\n }\n\n private _disabled = false;\n\n @Input()\n get value(): string {\n const {\n value: { countryCode, bban },\n } = this.parts;\n return `${countryCode ?? ''}${bban ?? ''}`;\n }\n\n set value(iban: string | null) {\n const { countryCode, bban } = extractIBAN(iban || '');\n\n this.parts.setValue({\n countryCode: countryCode || null,\n bban: bban || null,\n });\n this.stateChanges.next();\n }\n\n get errorState(): boolean {\n return this.parts.invalid && this.touched;\n }\n\n constructor(\n formBuilder: FormBuilder,\n private _focusMonitor: FocusMonitor,\n private _elementRef: ElementRef<HTMLElement>,\n private _cd: ChangeDetectorRef,\n @Optional() @Inject(MAT_FORM_FIELD) public _formField: MatFormField,\n @Optional() @Self() public ngControl: NgControl,\n ) {\n if (this.ngControl != null) {\n this.ngControl.valueAccessor = this;\n }\n\n this.parts = formBuilder.group(\n {\n countryCode: ['', [Validators.maxLength(2)]],\n bban: ['', [Validators.required]],\n },\n {\n validators: [bankAccountValidator()],\n },\n );\n }\n\n ngOnInit() {\n this.countryCodes$ = this.getCountryCodes();\n\n this.parts.valueChanges\n .pipe(\n startWith({ countryCode: '', bban: '' }),\n pairwise(),\n distinctUntilChanged(),\n takeUntil(this.destroyNotifier$),\n )\n .subscribe(([_prevIban, { countryCode, bban }]) => {\n this.touched = true;\n if (!bban || bban.length <= 2) {\n return;\n }\n\n const potentialCountryCode = bban?.substring(0, 2);\n\n if (potentialCountryCode?.match(/^[A-Za-z]{2}/)) {\n const restOfTheBankNumber = bban?.substring(2);\n return this.parts.setValue({\n countryCode: potentialCountryCode,\n ...getBban(potentialCountryCode, restOfTheBankNumber),\n });\n }\n\n return this.parts.patchValue(\n {\n ...getBban(countryCode, bban),\n },\n { emitEvent: false },\n );\n });\n }\n\n ngOnDestroy() {\n this.destroyNotifier$.next();\n this.destroyNotifier$.complete();\n this.stateChanges.complete();\n this._focusMonitor.stopMonitoring(this._elementRef);\n }\n\n getCountryCodes() {\n return this.filterCtrl.valueChanges.pipe(\n startWith(''),\n combineLatestWith(of(IBAN_SUPPORTED_COUNTRIES)),\n map(([filterVal, countryCodes]) => {\n return countryCodes.filter(code => {\n if (!filterVal) {\n return true;\n }\n\n return code.toLowerCase().includes(filterVal.toLowerCase());\n });\n }),\n );\n }\n\n autoFocusNext(\n control: AbstractControl,\n nextElement?: HTMLInputElement,\n ): void {\n if (!control.errors && nextElement) {\n this._focusMonitor.focusVia(nextElement, 'program');\n }\n }\n\n //\n // autoFocusPrev(control: AbstractControl, prevElement: HTMLInputElement): void {\n // if (control.value.length < 1) {\n // this._focusMonitor.focusVia(prevElement, 'program');\n // }\n // }\n\n setDescribedByIds(ids: string[]) {\n const controlElement = this._elementRef.nativeElement.querySelector(\n '.bank-account-input-group',\n )!;\n controlElement.setAttribute('aria-describedby', ids.join(' '));\n }\n\n onContainerClick() {}\n\n writeValue(iban: string | null): void {\n this.value = iban;\n }\n\n registerOnChange(fn: any): void {\n this.onChange = fn;\n }\n\n registerOnTouched(fn: any): void {\n this.onTouched = fn;\n }\n\n setDisabledState(isDisabled: boolean): void {\n this.disabled = isDisabled;\n }\n\n _handleInput(control: AbstractControl, nextElement?: HTMLInputElement): void {\n this.autoFocusNext(control, nextElement);\n this.onChange(this.value);\n }\n}\n\nconst getBban = (countryCode: string | null | undefined = '', bban: string) => {\n return {\n bban: friendlyFormatIBAN(`${countryCode}${bban}`)?.substring(2) || null,\n };\n};\n","<div\n role=\"group\"\n class=\"bank-account-input-group\"\n [formGroup]=\"parts\"\n [attr.aria-labelledby]=\"_formField.getLabelId()\"\n>\n <mat-select\n class=\"country-code-select\"\n matTextPrefix\n formControlName=\"countryCode\"\n placeholder=\"XX\"\n (selectionChange)=\"_handleInput(parts.controls.countryCode)\"\n #countryCode\n >\n <mat-option>\n <mat-select-search\n [formControl]=\"filterCtrl\"\n noEntriesFoundLabel=\"no-entries-label\"\n placeholderLabel=\"placeholderLabel\"\n ></mat-select-search>\n </mat-option>\n\n <mat-option *ngFor=\"let country of countryCodes$ | async\" [value]=\"country\">\n <span>{{ country }}</span>\n </mat-option>\n </mat-select>\n\n <input\n id=\"bban-input\"\n name=\"bban-input\"\n class=\"bban-input\"\n formControlName=\"bban\"\n (input)=\"_handleInput(parts.controls.bban)\"\n #bban\n />\n</div>\n","import { CommonModule } from '@angular/common';\nimport {\n Component,\n Input,\n OnDestroy,\n OnInit,\n ViewEncapsulation,\n} from '@angular/core';\nimport { FormControl, ReactiveFormsModule } from '@angular/forms';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatInputModule } from '@angular/material/input';\nimport { MatSelectModule } from '@angular/material/select';\nimport { TranslateModule } from '@ngx-translate/core';\n\nimport { Subject } from 'rxjs';\n\nimport { MatSelectSearchModule } from '@onemrvapublic/design-system/mat-select-search';\nimport { BankAccountComponent } from './bank-account.component';\nimport { bankAccountValidator } from '@onemrvapublic/design-system/shared';\nimport { ValidationErrorsIBAN } from 'ibantools';\n\n@Component({\n selector: 'onemrva-mat-input-bank-account',\n styleUrls: ['onemrva-mat-input-bank-account.component.scss'],\n templateUrl: 'onemrva-mat-input-bank-account.component.html',\n standalone: true,\n imports: [\n CommonModule,\n MatInputModule,\n MatFormFieldModule,\n MatSelectModule,\n ReactiveFormsModule,\n TranslateModule,\n MatSelectSearchModule,\n BankAccountComponent,\n ],\n encapsulation: ViewEncapsulation.None,\n})\nexport class OnemrvaMatInputBankAccountComponent implements OnInit, OnDestroy {\n @Input() accountNumber!: FormControl<string | null>;\n @Input() key: string = 'accountNumber';\n @Input() hint: string = '';\n\n destroyNotifier$: Subject<void> = new Subject();\n\n constructor() {}\n\n ngOnInit() {\n this.accountNumber.addValidators(bankAccountValidator());\n }\n\n errors() {\n const bankNumberErrors = this.accountNumber.errors;\n\n if (!bankNumberErrors) {\n return '';\n }\n\n if (\n bankNumberErrors[\n ValidationErrorsIBAN[ValidationErrorsIBAN.WrongBBANLength]\n ]\n ) {\n return 'bankAccountInput.length';\n }\n\n if (\n bankNumberErrors[\n ValidationErrorsIBAN[ValidationErrorsIBAN.WrongIBANChecksum]\n ]\n ) {\n return 'bankAccountInput.wrong-iban-checksum';\n }\n\n return 'bankAccountInput.invalid';\n }\n\n ngOnDestroy() {\n this.destroyNotifier$.next();\n this.destroyNotifier$.complete();\n }\n}\n","<mat-form-field class=\"onemrva-bank-account-input\">\n <mat-label>{{ key | translate }}</mat-label>\n\n <bank-account [formControl]=\"accountNumber\" />\n\n <mat-hint *ngIf=\"hint !== ''\">{{ hint }}</mat-hint>\n\n <mat-error>\n {{ errors() | translate }}\n </mat-error>\n</mat-form-field>\n","/*\n * Public API Surface of mat-bank-account-input\n */\n\nexport * from './src/onemrva-mat-input-bank-account.component';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i4","i1","i2","i3"],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAkDA;MAsBa,oBAAoB,CAAA;aAOxB,IAAM,CAAA,MAAA,GAAG,CAAH,CAAK,EAAA;AAqBlB,IAAA,IAAI,KAAK,GAAA;AACP,QAAA,MAAM,EACJ,KAAK,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,GAC7B,GAAG,IAAI,CAAC,KAAK,CAAC;AAEf,QAAA,OAAO,CAAC,WAAW,IAAI,CAAC,IAAI,CAAC;KAC9B;AAED,IAAA,IAAI,gBAAgB,GAAA;QAClB,OAAO,IAAI,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC;KACpC;AAMD,IAAA,IACI,WAAW,GAAA;QACb,OAAO,IAAI,CAAC,YAAY,CAAC;KAC1B;IAED,IAAI,WAAW,CAAC,KAAa,EAAA;AAC3B,QAAA,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;AAC1B,QAAA,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC;KAC1B;AAID,IAAA,IACI,QAAQ,GAAA;QACV,OAAO,IAAI,CAAC,SAAS,CAAC;KACvB;IAED,IAAI,QAAQ,CAAC,KAAmB,EAAA;AAC9B,QAAA,IAAI,CAAC,SAAS,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;AAC9C,QAAA,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC;KAC1B;AAID,IAAA,IACI,QAAQ,GAAA;QACV,OAAO,IAAI,CAAC,SAAS,CAAC;KACvB;IAED,IAAI,QAAQ,CAAC,KAAmB,EAAA;AAC9B,QAAA,IAAI,CAAC,SAAS,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;QAC9C,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;AAC5D,QAAA,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC;KAC1B;AAID,IAAA,IACI,KAAK,GAAA;AACP,QAAA,MAAM,EACJ,KAAK,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,GAC7B,GAAG,IAAI,CAAC,KAAK,CAAC;QACf,OAAO,CAAA,EAAG,WAAW,IAAI,EAAE,GAAG,IAAI,IAAI,EAAE,CAAA,CAAE,CAAC;KAC5C;IAED,IAAI,KAAK,CAAC,IAAmB,EAAA;AAC3B,QAAA,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,GAAG,WAAW,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;AAEtD,QAAA,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC;YAClB,WAAW,EAAE,WAAW,IAAI,IAAI;YAChC,IAAI,EAAE,IAAI,IAAI,IAAI;AACnB,SAAA,CAAC,CAAC;AACH,QAAA,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC;KAC1B;AAED,IAAA,IAAI,UAAU,GAAA;QACZ,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC;KAC3C;IAED,WACE,CAAA,WAAwB,EAChB,aAA2B,EAC3B,WAAoC,EACpC,GAAsB,EACa,UAAwB,EACxC,SAAoB,EAAA;QAJvC,IAAa,CAAA,aAAA,GAAb,aAAa,CAAc;QAC3B,IAAW,CAAA,WAAA,GAAX,WAAW,CAAyB;QACpC,IAAG,CAAA,GAAA,GAAH,GAAG,CAAmB;QACa,IAAU,CAAA,UAAA,GAAV,UAAU,CAAc;QACxC,IAAS,CAAA,SAAA,GAAT,SAAS,CAAW;AAjGjD,QAAA,IAAA,CAAA,UAAU,GAA+B,IAAI,WAAW,CAAS,EAAE,CAAC,CAAC;AAMrE,QAAA,IAAA,CAAA,aAAa,GAAoB,EAAE,CAAC,EAAE,CAAC,CAAC;AACxC,QAAA,IAAA,CAAA,YAAY,GAAG,IAAI,OAAO,EAAQ,CAAC;AACnC,QAAA,IAAA,CAAA,gBAAgB,GAAkB,IAAI,OAAO,EAAE,CAAC;QAChD,IAAO,CAAA,OAAA,GAAG,KAAK,CAAC;QAChB,IAAO,CAAA,OAAA,GAAG,KAAK,CAAC;QAChB,IAAW,CAAA,WAAA,GAAG,oBAAoB,CAAC;AACnC,QAAA,IAAA,CAAA,EAAE,GAAG,CAAsB,mBAAA,EAAA,oBAAoB,CAAC,MAAM,EAAE,EAAE,CAAC;AAC3D,QAAA,IAAA,CAAA,QAAQ,GAAG,CAAC,CAAM,KAAI,GAAG,CAAC;AAC1B,QAAA,IAAA,CAAA,SAAS,GAAG,MAAK,GAAG,CAAC;QA4Bb,IAAY,CAAA,YAAA,GAAW,EAAE,CAAC;QAY1B,IAAS,CAAA,SAAA,GAAG,KAAK,CAAC;QAalB,IAAS,CAAA,SAAA,GAAG,KAAK,CAAC;AAgCxB,QAAA,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,EAAE;AAC1B,YAAA,IAAI,CAAC,SAAS,CAAC,aAAa,GAAG,IAAI,CAAC;SACrC;AAED,QAAA,IAAI,CAAC,KAAK,GAAG,WAAW,CAAC,KAAK,CAC5B;AACE,YAAA,WAAW,EAAE,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;YAC5C,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;SAClC,EACD;AACE,YAAA,UAAU,EAAE,CAAC,oBAAoB,EAAE,CAAC;AACrC,SAAA,CACF,CAAC;KACH;IAED,QAAQ,GAAA;AACN,QAAA,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;QAE5C,IAAI,CAAC,KAAK,CAAC,YAAY;aACpB,IAAI,CACH,SAAS,CAAC,EAAE,WAAW,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,EACxC,QAAQ,EAAE,EACV,oBAAoB,EAAE,EACtB,SAAS,CAAC,IAAI,CAAC,gBAAgB,CAAC,CACjC;AACA,aAAA,SAAS,CAAC,CAAC,CAAC,SAAS,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,KAAI;AAChD,YAAA,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;YACpB,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,IAAI,CAAC,EAAE;gBAC7B,OAAO;aACR;YAED,MAAM,oBAAoB,GAAG,IAAI,EAAE,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;AAEnD,YAAA,IAAI,oBAAoB,EAAE,KAAK,CAAC,cAAc,CAAC,EAAE;gBAC/C,MAAM,mBAAmB,GAAG,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC;AAC/C,gBAAA,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC;AACzB,oBAAA,WAAW,EAAE,oBAAoB;AACjC,oBAAA,GAAG,OAAO,CAAC,oBAAoB,EAAE,mBAAmB,CAAC;AACtD,iBAAA,CAAC,CAAC;aACJ;AAED,YAAA,OAAO,IAAI,CAAC,KAAK,CAAC,UAAU,CAC1B;AACE,gBAAA,GAAG,OAAO,CAAC,WAAW,EAAE,IAAI,CAAC;AAC9B,aAAA,EACD,EAAE,SAAS,EAAE,KAAK,EAAE,CACrB,CAAC;AACJ,SAAC,CAAC,CAAC;KACN;IAED,WAAW,GAAA;AACT,QAAA,IAAI,CAAC,gBAAgB,CAAC,IAAI,EAAE,CAAC;AAC7B,QAAA,IAAI,CAAC,gBAAgB,CAAC,QAAQ,EAAE,CAAC;AACjC,QAAA,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC;QAC7B,IAAI,CAAC,aAAa,CAAC,cAAc,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;KACrD;IAED,eAAe,GAAA;AACb,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,IAAI,CACtC,SAAS,CAAC,EAAE,CAAC,EACb,iBAAiB,CAAC,EAAE,CAAC,wBAAwB,CAAC,CAAC,EAC/C,GAAG,CAAC,CAAC,CAAC,SAAS,EAAE,YAAY,CAAC,KAAI;AAChC,YAAA,OAAO,YAAY,CAAC,MAAM,CAAC,IAAI,IAAG;gBAChC,IAAI,CAAC,SAAS,EAAE;AACd,oBAAA,OAAO,IAAI,CAAC;iBACb;AAED,gBAAA,OAAO,IAAI,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC,CAAC;AAC9D,aAAC,CAAC,CAAC;SACJ,CAAC,CACH,CAAC;KACH;IAED,aAAa,CACX,OAAwB,EACxB,WAA8B,EAAA;AAE9B,QAAA,IAAI,CAAC,OAAO,CAAC,MAAM,IAAI,WAAW,EAAE;YAClC,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;SACrD;KACF;;;;;;;AASD,IAAA,iBAAiB,CAAC,GAAa,EAAA;AAC7B,QAAA,MAAM,cAAc,GAAG,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,aAAa,CACjE,2BAA2B,CAC3B,CAAC;AACH,QAAA,cAAc,CAAC,YAAY,CAAC,kBAAkB,EAAE,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;KAChE;AAED,IAAA,gBAAgB,MAAK;AAErB,IAAA,UAAU,CAAC,IAAmB,EAAA;AAC5B,QAAA,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;KACnB;AAED,IAAA,gBAAgB,CAAC,EAAO,EAAA;AACtB,QAAA,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;KACpB;AAED,IAAA,iBAAiB,CAAC,EAAO,EAAA;AACvB,QAAA,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;KACrB;AAED,IAAA,gBAAgB,CAAC,UAAmB,EAAA;AAClC,QAAA,IAAI,CAAC,QAAQ,GAAG,UAAU,CAAC;KAC5B;IAED,YAAY,CAAC,OAAwB,EAAE,WAA8B,EAAA;AACnE,QAAA,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;AACzC,QAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KAC3B;AApOU,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,oBAAoB,oIA4GT,cAAc,EAAA,QAAA,EAAA,IAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,SAAA,EAAA,QAAA,EAAA,IAAA,EAAA,IAAA,EAAA,IAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AA5GzB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,oBAAoB,EAjBpB,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,cAAA,EAAA,MAAA,EAAA,EAAA,mBAAA,EAAA,CAAA,kBAAA,EAAA,qBAAA,CAAA,EAAA,WAAA,EAAA,aAAA,EAAA,QAAA,EAAA,UAAA,EAAA,QAAA,EAAA,UAAA,EAAA,KAAA,EAAA,OAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,wBAAA,EAAA,kBAAA,EAAA,IAAA,EAAA,IAAA,EAAA,EAAA,EAAA,SAAA,EAAA;AACT,YAAA,EAAE,OAAO,EAAE,mBAAmB,EAAE,WAAW,EAAE,oBAAoB,EAAE;SACpE,ECzDH,WAAA,EAAA,CAAA,EAAA,YAAA,EAAA,aAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,cAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,EAAA,YAAA,EAAA,MAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,MAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA,g7BAoCA,ED6BI,MAAA,EAAA,CAAA,oSAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,YAAY,EACZ,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,cAAA,EAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,EAAA,CAAA,SAAA,EAAA,IAAA,EAAA,OAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,WAAW,kjBACX,mBAAmB,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,oBAAA,EAAA,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,CAAA,aAAA,EAAA,UAAA,EAAA,SAAA,CAAA,EAAA,OAAA,EAAA,CAAA,eAAA,CAAA,EAAA,QAAA,EAAA,CAAA,QAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,kBAAA,EAAA,QAAA,EAAA,aAAA,EAAA,MAAA,EAAA,CAAA,WAAA,CAAA,EAAA,OAAA,EAAA,CAAA,UAAA,CAAA,EAAA,QAAA,EAAA,CAAA,QAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,eAAA,EAAA,QAAA,EAAA,mBAAA,EAAA,MAAA,EAAA,CAAA,iBAAA,EAAA,UAAA,EAAA,SAAA,CAAA,EAAA,OAAA,EAAA,CAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EACnB,eAAe,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,SAAA,EAAA,QAAA,EAAA,+CAAA,EAAA,MAAA,EAAA,CAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,SAAA,EAAA,QAAA,EAAA,YAAA,EAAA,MAAA,EAAA,CAAA,kBAAA,EAAA,YAAA,EAAA,UAAA,EAAA,eAAA,EAAA,UAAA,EAAA,8BAAA,EAAA,aAAA,EAAA,UAAA,EAAA,UAAA,EAAA,wBAAA,EAAA,aAAA,EAAA,OAAA,EAAA,YAAA,EAAA,iBAAA,EAAA,mBAAA,EAAA,2BAAA,EAAA,gBAAA,EAAA,IAAA,EAAA,YAAA,CAAA,EAAA,OAAA,EAAA,CAAA,cAAA,EAAA,QAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,aAAA,CAAA,EAAA,QAAA,EAAA,CAAA,WAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,SAAA,EAAA,QAAA,EAAA,YAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,IAAA,EAAA,UAAA,CAAA,EAAA,OAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,QAAA,EAAA,CAAA,WAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EACf,qBAAqB,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,wBAAA,EAAA,QAAA,EAAA,mBAAA,EAAA,MAAA,EAAA,CAAA,kBAAA,EAAA,MAAA,EAAA,WAAA,EAAA,cAAA,EAAA,qBAAA,EAAA,kBAAA,EAAA,WAAA,EAAA,qBAAA,EAAA,4BAAA,EAAA,8BAAA,EAAA,uCAAA,EAAA,WAAA,EAAA,uBAAA,EAAA,0BAAA,EAAA,gCAAA,EAAA,iCAAA,EAAA,kCAAA,EAAA,uBAAA,EAAA,mCAAA,CAAA,EAAA,OAAA,EAAA,CAAA,WAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA;;2FAGZ,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBArBhC,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,cAAc,EAGb,SAAA,EAAA;AACT,wBAAA,EAAE,OAAO,EAAE,mBAAmB,EAAE,WAAW,sBAAsB,EAAE;qBACpE,EAEK,IAAA,EAAA;AACJ,wBAAA,0BAA0B,EAAE,kBAAkB;AAC9C,wBAAA,MAAM,EAAE,IAAI;AACb,qBAAA,EAAA,UAAA,EACW,IAAI,EACP,OAAA,EAAA;wBACP,YAAY;wBACZ,WAAW;wBACX,mBAAmB;wBACnB,eAAe;wBACf,qBAAqB;AACtB,qBAAA,EAAA,QAAA,EAAA,g7BAAA,EAAA,MAAA,EAAA,CAAA,oSAAA,CAAA,EAAA,CAAA;;0BA8GE,QAAQ;;0BAAI,MAAM;2BAAC,cAAc,CAAA;;0BACjC,QAAQ;;0BAAI,IAAI;yCApGQ,WAAW,EAAA,CAAA;sBAArC,SAAS;uBAAC,cAAc,CAAA;gBACN,IAAI,EAAA,CAAA;sBAAtB,SAAS;uBAAC,MAAM,CAAA;gBAgCU,mBAAmB,EAAA,CAAA;sBAA7C,KAAK;uBAAC,kBAAkB,CAAA;gBAGrB,WAAW,EAAA,CAAA;sBADd,KAAK;gBAaF,QAAQ,EAAA,CAAA;sBADX,KAAK;gBAaF,QAAQ,EAAA,CAAA;sBADX,KAAK;gBAcF,KAAK,EAAA,CAAA;sBADR,KAAK;;AAsJR,MAAM,OAAO,GAAG,CAAC,WAAA,GAAyC,EAAE,EAAE,IAAY,KAAI;IAC5E,OAAO;AACL,QAAA,IAAI,EAAE,kBAAkB,CAAC,CAAA,EAAG,WAAW,CAAG,EAAA,IAAI,CAAE,CAAA,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC,IAAI,IAAI;KACxE,CAAC;AACJ,CAAC;;ME7QY,mCAAmC,CAAA;AAO9C,IAAA,WAAA,GAAA;QALS,IAAG,CAAA,GAAA,GAAW,eAAe,CAAC;QAC9B,IAAI,CAAA,IAAA,GAAW,EAAE,CAAC;AAE3B,QAAA,IAAA,CAAA,gBAAgB,GAAkB,IAAI,OAAO,EAAE,CAAC;KAEhC;IAEhB,QAAQ,GAAA;QACN,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,oBAAoB,EAAE,CAAC,CAAC;KAC1D;IAED,MAAM,GAAA;AACJ,QAAA,MAAM,gBAAgB,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC;QAEnD,IAAI,CAAC,gBAAgB,EAAE;AACrB,YAAA,OAAO,EAAE,CAAC;SACX;QAED,IACE,gBAAgB,CACd,oBAAoB,CAAC,oBAAoB,CAAC,eAAe,CAAC,CAC3D,EACD;AACA,YAAA,OAAO,yBAAyB,CAAC;SAClC;QAED,IACE,gBAAgB,CACd,oBAAoB,CAAC,oBAAoB,CAAC,iBAAiB,CAAC,CAC7D,EACD;AACA,YAAA,OAAO,sCAAsC,CAAC;SAC/C;AAED,QAAA,OAAO,0BAA0B,CAAC;KACnC;IAED,WAAW,GAAA;AACT,QAAA,IAAI,CAAC,gBAAgB,CAAC,IAAI,EAAE,CAAC;AAC7B,QAAA,IAAI,CAAC,gBAAgB,CAAC,QAAQ,EAAE,CAAC;KAClC;8GA1CU,mCAAmC,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAAnC,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,mCAAmC,gKCtChD,8SAWA,EAAA,MAAA,EAAA,CAAA,sRAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EDgBI,YAAY,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EACZ,cAAc,EACd,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,IAAA,CAAA,YAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,CAAA,oBAAA,EAAA,OAAA,EAAA,YAAA,EAAA,YAAA,EAAA,iBAAA,EAAA,WAAA,CAAA,EAAA,QAAA,EAAA,CAAA,cAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,QAAA,EAAA,QAAA,EAAA,WAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,OAAA,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,IAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,QAAA,EAAA,QAAA,EAAA,uBAAA,EAAA,MAAA,EAAA,CAAA,IAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,kBAAkB,EAClB,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,eAAe,8BACf,mBAAmB,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,EAAA,CAAA,eAAA,EAAA,QAAA,EAAA,2CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,EAAA,CAAA,oBAAA,EAAA,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,CAAA,aAAA,EAAA,UAAA,EAAA,SAAA,CAAA,EAAA,OAAA,EAAA,CAAA,eAAA,CAAA,EAAA,QAAA,EAAA,CAAA,QAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EACnB,eAAe,EACf,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,EAAA,CAAA,aAAA,EAAA,IAAA,EAAA,WAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,qBAAqB,+BACrB,oBAAoB,EAAA,QAAA,EAAA,cAAA,EAAA,MAAA,EAAA,CAAA,kBAAA,EAAA,aAAA,EAAA,UAAA,EAAA,UAAA,EAAA,OAAA,CAAA,EAAA,CAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA,EAAA;;2FAIX,mCAAmC,EAAA,UAAA,EAAA,CAAA;kBAjB/C,SAAS;+BACE,gCAAgC,EAAA,UAAA,EAG9B,IAAI,EACP,OAAA,EAAA;wBACP,YAAY;wBACZ,cAAc;wBACd,kBAAkB;wBAClB,eAAe;wBACf,mBAAmB;wBACnB,eAAe;wBACf,qBAAqB;wBACrB,oBAAoB;qBACrB,EACc,aAAA,EAAA,iBAAiB,CAAC,IAAI,EAAA,QAAA,EAAA,8SAAA,EAAA,MAAA,EAAA,CAAA,sRAAA,CAAA,EAAA,CAAA;wDAG5B,aAAa,EAAA,CAAA;sBAArB,KAAK;gBACG,GAAG,EAAA,CAAA;sBAAX,KAAK;gBACG,IAAI,EAAA,CAAA;sBAAZ,KAAK;;;AEzCR;;AAEG;;ACFH;;AAEG;;;;"}
1
+ {"version":3,"file":"onemrvapublic-design-system-mat-input-bank-account.mjs","sources":["../../../../projects/onemrva/design-system/mat-input-bank-account/src/bank-account.component.ts","../../../../projects/onemrva/design-system/mat-input-bank-account/src/bank-account.component.html","../../../../projects/onemrva/design-system/mat-input-bank-account/src/onemrva-mat-input-bank-account.component.ts","../../../../projects/onemrva/design-system/mat-input-bank-account/src/onemrva-mat-input-bank-account.component.html","../../../../projects/onemrva/design-system/mat-input-bank-account/index.ts","../../../../projects/onemrva/design-system/mat-input-bank-account/onemrvapublic-design-system-mat-input-bank-account.ts"],"sourcesContent":["import { FocusMonitor } from '@angular/cdk/a11y';\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\nimport {\n ChangeDetectorRef,\n Component,\n ElementRef,\n Inject,\n Input,\n OnDestroy,\n OnInit,\n Optional,\n Self,\n ViewChild,\n} from '@angular/core';\nimport {\n ControlValueAccessor,\n FormBuilder,\n FormControl,\n FormGroup,\n NgControl,\n FormsModule,\n ReactiveFormsModule,\n AbstractControl,\n Validators,\n} from '@angular/forms';\nimport {\n MAT_FORM_FIELD,\n MatFormField,\n MatFormFieldControl,\n} from '@angular/material/form-field';\nimport {\n combineLatestWith,\n distinctUntilChanged,\n map,\n Observable,\n of,\n pairwise,\n startWith,\n Subject,\n takeUntil,\n} from 'rxjs';\nimport { MatSelectModule } from '@angular/material/select';\nimport { MatSelectSearchModule } from '@onemrvapublic/design-system/mat-select-search';\nimport {\n bankAccountValidator,\n IBAN_SUPPORTED_COUNTRIES,\n} from '@onemrvapublic/design-system/shared';\nimport { CommonModule } from '@angular/common';\nimport { extractIBAN, friendlyFormatIBAN } from 'ibantools';\n\n/** Custom `MatFormFieldControl` for bank account number input. */\n@Component({\n selector: 'bank-account',\n templateUrl: 'bank-account.component.html',\n styleUrl: 'bank-account.component.scss',\n providers: [\n { provide: MatFormFieldControl, useExisting: BankAccountComponent },\n ],\n\n host: {\n '[class.example-floating]': 'shouldLabelFloat',\n '[id]': 'id',\n },\n standalone: true,\n imports: [\n CommonModule,\n FormsModule,\n ReactiveFormsModule,\n MatSelectModule,\n MatSelectSearchModule,\n ],\n})\nexport class BankAccountComponent\n implements\n ControlValueAccessor,\n MatFormFieldControl<string>,\n OnDestroy,\n OnInit\n{\n static nextId = 0;\n\n @ViewChild('countryCode ') countryCode!: HTMLInputElement;\n @ViewChild('bban') bban!: HTMLInputElement;\n\n filterCtrl: FormControl<string | null> = new FormControl<string>('');\n parts: FormGroup<{\n countryCode: FormControl<string | null>;\n bban: FormControl<string | null>;\n }>;\n\n countryCodes$: Observable<any> = of([]);\n stateChanges = new Subject<void>();\n destroyNotifier$ = new Subject<void>();\n focused = false;\n touched = false;\n controlType = 'bank-account-input';\n id = `bank-account-input-${BankAccountComponent.nextId++}`;\n onChange = (_: any) => {\n //\n };\n onTouched = () => {\n //\n };\n\n get empty() {\n const {\n value: { countryCode, bban },\n } = this.parts;\n\n return !countryCode && !bban;\n }\n\n get shouldLabelFloat() {\n return this.focused || !this.empty;\n }\n\n // @ts-expect-error test\n // eslint-disable-next-line\n @Input('aria-describedby') userAriaDescribedBy: string;\n\n @Input()\n get placeholder(): string {\n return this._placeholder;\n }\n\n set placeholder(value: string) {\n this._placeholder = value;\n this.stateChanges.next();\n }\n\n private _placeholder = '';\n\n @Input()\n get required(): boolean {\n return this._required;\n }\n\n set required(value: BooleanInput) {\n this._required = coerceBooleanProperty(value);\n this.stateChanges.next();\n }\n\n private _required = false;\n\n @Input()\n get disabled(): boolean {\n return this._disabled;\n }\n\n set disabled(value: BooleanInput) {\n this._disabled = coerceBooleanProperty(value);\n // eslint-disable-next-line @typescript-eslint/no-unused-expressions\n this._disabled ? this.parts.disable() : this.parts.enable();\n this.stateChanges.next();\n }\n\n private _disabled = false;\n\n @Input()\n get value(): string {\n const {\n value: { countryCode, bban },\n } = this.parts;\n return `${countryCode ?? ''}${bban ?? ''}`;\n }\n\n set value(iban: string | null) {\n const { countryCode, bban } = extractIBAN(iban || '');\n\n this.parts.setValue({\n countryCode: countryCode || null,\n bban: bban || null,\n });\n this.stateChanges.next();\n }\n\n get errorState(): boolean {\n return this.parts.invalid && this.touched;\n }\n\n constructor(\n formBuilder: FormBuilder,\n private _focusMonitor: FocusMonitor,\n private _elementRef: ElementRef<HTMLElement>,\n private _cd: ChangeDetectorRef,\n @Optional() @Inject(MAT_FORM_FIELD) public _formField: MatFormField,\n @Optional() @Self() public ngControl: NgControl,\n ) {\n if (this.ngControl != null) {\n this.ngControl.valueAccessor = this;\n }\n\n this.parts = formBuilder.group(\n {\n countryCode: ['', [Validators.maxLength(2)]],\n bban: ['', [Validators.required]],\n },\n {\n validators: [bankAccountValidator()],\n },\n );\n }\n\n ngOnInit() {\n this.countryCodes$ = this.getCountryCodes();\n\n this.parts.valueChanges\n .pipe(\n startWith({ countryCode: '', bban: '' }),\n pairwise(),\n distinctUntilChanged(),\n takeUntil(this.destroyNotifier$),\n )\n .subscribe(([_prevIban, { countryCode, bban }]) => {\n this.touched = true;\n if (!bban || bban.length <= 2) {\n return;\n }\n\n const potentialCountryCode = bban?.substring(0, 2);\n\n if (potentialCountryCode?.match(/^[A-Za-z]{2}/)) {\n const restOfTheBankNumber = bban?.substring(2);\n return this.parts.setValue({\n countryCode: potentialCountryCode,\n ...getBban(potentialCountryCode, restOfTheBankNumber),\n });\n }\n\n return this.parts.patchValue(\n {\n ...getBban(countryCode, bban),\n },\n { emitEvent: false },\n );\n });\n }\n\n ngOnDestroy() {\n this.destroyNotifier$.next();\n this.destroyNotifier$.complete();\n this.stateChanges.complete();\n this._focusMonitor.stopMonitoring(this._elementRef);\n }\n\n getCountryCodes() {\n return this.filterCtrl.valueChanges.pipe(\n startWith(''),\n combineLatestWith(of(IBAN_SUPPORTED_COUNTRIES)),\n map(([filterVal, countryCodes]) => {\n return countryCodes.filter(code => {\n if (!filterVal) {\n return true;\n }\n\n return code.toLowerCase().includes(filterVal.toLowerCase());\n });\n }),\n );\n }\n\n autoFocusNext(\n control: AbstractControl,\n nextElement?: HTMLInputElement,\n ): void {\n if (!control.errors && nextElement) {\n this._focusMonitor.focusVia(nextElement, 'program');\n }\n }\n\n //\n // autoFocusPrev(control: AbstractControl, prevElement: HTMLInputElement): void {\n // if (control.value.length < 1) {\n // this._focusMonitor.focusVia(prevElement, 'program');\n // }\n // }\n\n setDescribedByIds(ids: string[]) {\n const controlElement = this._elementRef.nativeElement.querySelector(\n '.bank-account-input-group',\n )!;\n controlElement.setAttribute('aria-describedby', ids.join(' '));\n }\n\n onContainerClick() {\n //\n }\n\n writeValue(iban: string | null): void {\n this.value = iban;\n }\n\n registerOnChange(fn: any): void {\n this.onChange = fn;\n }\n\n registerOnTouched(fn: any): void {\n this.onTouched = fn;\n }\n\n setDisabledState(isDisabled: boolean): void {\n this.disabled = isDisabled;\n }\n\n _handleInput(control: AbstractControl, nextElement?: HTMLInputElement): void {\n this.autoFocusNext(control, nextElement);\n this.onChange(this.value);\n }\n}\n\nconst getBban = (countryCode: string | null | undefined = '', bban: string) => {\n return {\n bban: friendlyFormatIBAN(`${countryCode}${bban}`)?.substring(2) || null,\n };\n};\n","<div\n role=\"group\"\n class=\"bank-account-input-group\"\n [formGroup]=\"parts\"\n [attr.aria-labelledby]=\"_formField.getLabelId()\"\n>\n <mat-select\n class=\"country-code-select\"\n matTextPrefix\n formControlName=\"countryCode\"\n placeholder=\"XX\"\n (selectionChange)=\"_handleInput(parts.controls.countryCode)\"\n #countryCode\n >\n <mat-option>\n <mat-select-search\n [formControl]=\"filterCtrl\"\n noEntriesFoundLabel=\"no-entries-label\"\n placeholderLabel=\"placeholderLabel\"\n ></mat-select-search>\n </mat-option>\n\n <mat-option *ngFor=\"let country of countryCodes$ | async\" [value]=\"country\">\n <span>{{ country }}</span>\n </mat-option>\n </mat-select>\n\n <input\n id=\"bban-input\"\n name=\"bban-input\"\n class=\"bban-input\"\n formControlName=\"bban\"\n (input)=\"_handleInput(parts.controls.bban)\"\n #bban\n />\n</div>\n","import { CommonModule } from '@angular/common';\nimport {\n Component,\n Input,\n OnDestroy,\n OnInit,\n ViewEncapsulation,\n} from '@angular/core';\nimport { FormControl, ReactiveFormsModule } from '@angular/forms';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatInputModule } from '@angular/material/input';\nimport { MatSelectModule } from '@angular/material/select';\nimport { TranslateModule } from '@ngx-translate/core';\n\nimport { Subject } from 'rxjs';\n\nimport { MatSelectSearchModule } from '@onemrvapublic/design-system/mat-select-search';\nimport { BankAccountComponent } from './bank-account.component';\nimport { bankAccountValidator } from '@onemrvapublic/design-system/shared';\nimport { ValidationErrorsIBAN } from 'ibantools';\n\n@Component({\n selector: 'onemrva-mat-input-bank-account',\n styleUrls: ['onemrva-mat-input-bank-account.component.scss'],\n templateUrl: 'onemrva-mat-input-bank-account.component.html',\n standalone: true,\n imports: [\n CommonModule,\n MatInputModule,\n MatFormFieldModule,\n MatSelectModule,\n ReactiveFormsModule,\n TranslateModule,\n MatSelectSearchModule,\n BankAccountComponent,\n ],\n encapsulation: ViewEncapsulation.None,\n})\nexport class OnemrvaMatInputBankAccountComponent implements OnInit, OnDestroy {\n @Input() accountNumber!: FormControl<string | null>;\n @Input() key = 'accountNumber';\n @Input() hint = '';\n\n destroyNotifier$ = new Subject<void>();\n\n ngOnInit() {\n this.accountNumber.addValidators([bankAccountValidator]);\n }\n\n errors() {\n const bankNumberErrors = this.accountNumber.errors;\n\n if (!bankNumberErrors) {\n return '';\n }\n\n if (\n bankNumberErrors[\n ValidationErrorsIBAN[ValidationErrorsIBAN.WrongBBANLength]\n ]\n ) {\n return 'bankAccountInput.length';\n }\n\n if (\n bankNumberErrors[\n ValidationErrorsIBAN[ValidationErrorsIBAN.WrongIBANChecksum]\n ]\n ) {\n return 'bankAccountInput.wrong-iban-checksum';\n }\n\n return 'bankAccountInput.invalid';\n }\n\n ngOnDestroy() {\n this.destroyNotifier$.next();\n this.destroyNotifier$.complete();\n }\n}\n","<mat-form-field class=\"onemrva-bank-account-input\">\n <mat-label>{{ key | translate }}</mat-label>\n\n <bank-account [formControl]=\"accountNumber\" />\n\n <mat-hint *ngIf=\"hint !== ''\">{{ hint }}</mat-hint>\n\n <mat-error>\n {{ errors() | translate }}\n </mat-error>\n</mat-form-field>\n","/*\n * Public API Surface of mat-bank-account-input\n */\n\nexport * from './src/onemrva-mat-input-bank-account.component';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i4","i1","i2","i3"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"onemrvapublic-design-system-mat-input-birthplace.mjs","sources":["../../../../projects/onemrva/design-system/mat-input-birthplace/src/country-item.component.ts","../../../../projects/onemrva/design-system/mat-input-birthplace/src/country-item.component.html","../../../../projects/onemrva/design-system/mat-input-birthplace/src/onemrva-mat-input-birthplace.component.ts","../../../../projects/onemrva/design-system/mat-input-birthplace/src/onemrva-mat-input-birthplace.component.html","../../../../projects/onemrva/design-system/mat-input-birthplace/index.ts","../../../../projects/onemrva/design-system/mat-input-birthplace/onemrvapublic-design-system-mat-input-birthplace.ts"],"sourcesContent":["import { CommonModule } from '@angular/common';\nimport { Component, Input, ViewEncapsulation } from '@angular/core';\nimport { TranslateModule, TranslateService } from '@ngx-translate/core';\n\nimport { OnemRvaCommonCountry } from '@onemrvapublic/design-system/shared';\nimport { FlagIconComponent } from '@onemrvapublic/design-system/flag-icon';\n\n@Component({\n selector: 'country-item',\n styleUrls: ['./country-item.component.scss'],\n templateUrl: './country-item.component.html',\n standalone: true,\n imports: [CommonModule, TranslateModule, FlagIconComponent],\n encapsulation: ViewEncapsulation.None,\n})\nexport class OnemrvaCountryItemComponent {\n @Input() country: OnemRvaCommonCountry | null = null;\n\n constructor(public translate: TranslateService) {}\n\n public get countryDescription() {\n switch (this.translate.currentLang) {\n case 'nl':\n return this.country?.descNl?.toLowerCase();\n case 'fr':\n return this.country?.descFr?.toLowerCase();\n default:\n return this.country?.descFr?.toLowerCase();\n }\n }\n}\n","<div class=\"onemrva-country-item\">\n <flag-icon [countryCode]=\"country?.singlePropertiesMap?.codeSepa\" />\n <span class=\"description\">{{ countryDescription }}</span>\n</div>\n","import { CommonModule } from '@angular/common';\nimport {\n Component,\n EventEmitter,\n Input,\n OnDestroy,\n OnInit,\n Output,\n ViewEncapsulation,\n} from '@angular/core';\nimport { FormControl, ReactiveFormsModule } from '@angular/forms';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatInputModule } from '@angular/material/input';\nimport { MatSelectModule } from '@angular/material/select';\nimport { TranslateModule, TranslateService } from '@ngx-translate/core';\nimport {\n Observable,\n Subject,\n map,\n startWith,\n debounceTime,\n takeUntil,\n of,\n combineLatest,\n} from 'rxjs';\nimport { MatSelectSearchModule } from '@onemrvapublic/design-system/mat-select-search';\nimport { OnemrvaCountryItemComponent } from './country-item.component';\nimport { CommonCountryLookupService } from '@onemrvapublic/design-system/shared';\nimport { OnemRvaCommonCountry } from '@onemrvapublic/design-system/shared';\n\n@Component({\n selector: 'onemrva-mat-input-birthplace',\n styleUrls: ['onemrva-mat-input-birthplace.component.scss'],\n templateUrl: 'onemrva-mat-input-birthplace.component.html',\n standalone: true,\n imports: [\n CommonModule,\n MatInputModule,\n MatFormFieldModule,\n MatSelectModule,\n MatSelectSearchModule,\n ReactiveFormsModule,\n TranslateModule,\n OnemrvaCountryItemComponent,\n ],\n encapsulation: ViewEncapsulation.None,\n})\nexport class OnemrvaMatInputBirthPlaceComponent implements OnInit, OnDestroy {\n @Input()\n readonly: boolean = false;\n\n @Input() countryCode: FormControl<string | null> = new FormControl(null);\n\n @Input() label: string = 'Country';\n @Input() noEntriesFoundLabel = 'Not found';\n @Input() hint: string = '';\n @Input() placeholderLabel = 'Search';\n @Input() searchAriaLabel = '';\n @Output() getCountry = new EventEmitter<any>();\n\n public filterCtrl: FormControl<string | null> = new FormControl<string>('');\n\n destroyNotifier$: Subject<void> = new Subject();\n\n public filteredCountries$: Observable<OnemRvaCommonCountry[]> = of([]);\n\n private countries$ = this.commonCountryLookupService.getCountries();\n\n constructor(\n private translateService: TranslateService,\n private commonCountryLookupService: CommonCountryLookupService,\n ) {\n this.filteredCountries$ = combineLatest([\n this.filterCtrl.valueChanges.pipe(startWith('')),\n this.countries$,\n ]).pipe(\n debounceTime(400),\n map(([search, countries]) => {\n return countries.filter((country: OnemRvaCommonCountry) => {\n if (!search || search === '') return countries;\n if (country.descNl === undefined) return false;\n return (\n country.descNl.toLowerCase().indexOf(search.toLowerCase()) > -1\n );\n });\n }),\n map(country =>\n country.sort((a, b) => {\n return a.descNl.localeCompare(b.descNl);\n }),\n ),\n );\n }\n\n public get country() {\n return this.commonCountryLookupService.getCountryByCode(\n this.countryCode.value,\n );\n }\n\n ngOnInit(): void {\n this.countryCode.valueChanges.pipe(\n startWith(this.countryCode),\n takeUntil(this.destroyNotifier$),\n );\n }\n\n ngOnDestroy() {\n this.destroyNotifier$.next();\n this.destroyNotifier$.complete();\n }\n\n trackById(index: number, country: OnemRvaCommonCountry) {\n return country.code;\n }\n\n errors() {\n // if (this.countryCode.errors !== null) {\n // for (const k in this.countryCode.errors) {\n // if (k === 'required') {\n // return 'input.country.required';\n // } else {\n // return 'input.country.invalid';\n // }\n // }\n // }\n return 'input.country.unknown.error';\n }\n}\n","<mat-form-field class=\"onemrva-input-country-common\">\n <mat-label>{{ label }}</mat-label>\n <mat-select\n class=\"onemrva-country-select-common\"\n [formControl]=\"countryCode\"\n [placeholder]=\"placeholderLabel\"\n >\n <mat-select-trigger>\n <country-item [country]=\"country | async\" />\n </mat-select-trigger>\n <mat-option>\n <mat-select-search\n [formControl]=\"filterCtrl\"\n [ariaLabel]=\"searchAriaLabel\"\n [noEntriesFoundLabel]=\"noEntriesFoundLabel\"\n [placeholderLabel]=\"placeholderLabel\"\n ></mat-select-search>\n </mat-option>\n <mat-option\n *ngFor=\"let country of filteredCountries$ | async; trackBy: trackById\"\n [value]=\"country.code\"\n >\n <country-item [country]=\"country\" />\n </mat-option>\n </mat-select>\n <mat-hint *ngIf=\"hint !== ''\">{{ hint }}</mat-hint>\n <mat-error *ngIf=\"countryCode.invalid\">{{ errors() | translate }}</mat-error>\n</mat-form-field>\n","/*\n * Public API Surface of mat-bank-account-input\n */\n\nexport * from './src/onemrva-mat-input-birthplace.component';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"onemrvapublic-design-system-mat-input-birthplace.mjs","sources":["../../../../projects/onemrva/design-system/mat-input-birthplace/src/country-item.component.ts","../../../../projects/onemrva/design-system/mat-input-birthplace/src/country-item.component.html","../../../../projects/onemrva/design-system/mat-input-birthplace/src/onemrva-mat-input-birthplace.component.ts","../../../../projects/onemrva/design-system/mat-input-birthplace/src/onemrva-mat-input-birthplace.component.html","../../../../projects/onemrva/design-system/mat-input-birthplace/index.ts","../../../../projects/onemrva/design-system/mat-input-birthplace/onemrvapublic-design-system-mat-input-birthplace.ts"],"sourcesContent":["import { CommonModule } from '@angular/common';\nimport { Component, Input, ViewEncapsulation } from '@angular/core';\nimport { TranslateModule, TranslateService } from '@ngx-translate/core';\n\nimport { OnemRvaCommonCountry } from '@onemrvapublic/design-system/shared';\nimport { FlagIconComponent } from '@onemrvapublic/design-system/flag-icon';\n\n@Component({\n selector: 'country-item',\n styleUrls: ['./country-item.component.scss'],\n templateUrl: './country-item.component.html',\n standalone: true,\n imports: [CommonModule, TranslateModule, FlagIconComponent],\n encapsulation: ViewEncapsulation.None,\n})\nexport class OnemrvaCountryItemComponent {\n @Input() country: OnemRvaCommonCountry | null = null;\n\n constructor(public translate: TranslateService) {}\n\n public get countryDescription() {\n switch (this.translate.currentLang) {\n case 'nl':\n return this.country?.descNl?.toLowerCase();\n case 'fr':\n return this.country?.descFr?.toLowerCase();\n default:\n return this.country?.descFr?.toLowerCase();\n }\n }\n}\n","<div class=\"onemrva-country-item\">\n <flag-icon [countryCode]=\"country?.singlePropertiesMap?.codeSepa\" />\n <span class=\"description\">{{ countryDescription }}</span>\n</div>\n","import { CommonModule } from '@angular/common';\nimport {\n Component,\n EventEmitter,\n Input,\n OnDestroy,\n OnInit,\n Output,\n ViewEncapsulation,\n} from '@angular/core';\nimport { FormControl, ReactiveFormsModule } from '@angular/forms';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatInputModule } from '@angular/material/input';\nimport { MatSelectModule } from '@angular/material/select';\nimport { TranslateModule, TranslateService } from '@ngx-translate/core';\nimport {\n Observable,\n Subject,\n map,\n startWith,\n debounceTime,\n takeUntil,\n of,\n combineLatest,\n} from 'rxjs';\nimport { MatSelectSearchModule } from '@onemrvapublic/design-system/mat-select-search';\nimport { OnemrvaCountryItemComponent } from './country-item.component';\nimport { CommonCountryLookupService } from '@onemrvapublic/design-system/shared';\nimport { OnemRvaCommonCountry } from '@onemrvapublic/design-system/shared';\n\n@Component({\n selector: 'onemrva-mat-input-birthplace',\n styleUrls: ['onemrva-mat-input-birthplace.component.scss'],\n templateUrl: 'onemrva-mat-input-birthplace.component.html',\n standalone: true,\n imports: [\n CommonModule,\n MatInputModule,\n MatFormFieldModule,\n MatSelectModule,\n MatSelectSearchModule,\n ReactiveFormsModule,\n TranslateModule,\n OnemrvaCountryItemComponent,\n ],\n encapsulation: ViewEncapsulation.None,\n})\nexport class OnemrvaMatInputBirthPlaceComponent implements OnInit, OnDestroy {\n @Input()\n readonly = false;\n\n @Input() countryCode = new FormControl<string | null>(null);\n\n @Input() label = 'Country';\n @Input() noEntriesFoundLabel = 'Not found';\n @Input() hint = '';\n @Input() placeholderLabel = 'Search';\n @Input() searchAriaLabel = '';\n @Output() getCountry = new EventEmitter<any>();\n\n public filterCtrl: FormControl<string | null> = new FormControl<string>('');\n\n destroyNotifier$ = new Subject<void>();\n\n public filteredCountries$: Observable<OnemRvaCommonCountry[]> = of([]);\n\n private countries$ = this.commonCountryLookupService.getCountries();\n\n constructor(\n private translateService: TranslateService,\n private commonCountryLookupService: CommonCountryLookupService,\n ) {\n this.filteredCountries$ = combineLatest([\n this.filterCtrl.valueChanges.pipe(startWith('')),\n this.countries$,\n ]).pipe(\n debounceTime(400),\n map(([search, countries]) => {\n return countries.filter((country: OnemRvaCommonCountry) => {\n if (!search || search === '') return countries;\n if (country.descNl === undefined) return false;\n return (\n country.descNl.toLowerCase().indexOf(search.toLowerCase()) > -1\n );\n });\n }),\n map(country =>\n country.sort((a, b) => {\n return a.descNl.localeCompare(b.descNl);\n }),\n ),\n );\n }\n\n public get country() {\n return this.commonCountryLookupService.getCountryByCode(\n this.countryCode.value,\n );\n }\n\n ngOnInit(): void {\n this.countryCode.valueChanges.pipe(\n startWith(this.countryCode),\n takeUntil(this.destroyNotifier$),\n );\n }\n\n ngOnDestroy() {\n this.destroyNotifier$.next();\n this.destroyNotifier$.complete();\n }\n\n trackById(index: number, country: OnemRvaCommonCountry) {\n return country.code;\n }\n\n errors() {\n // if (this.countryCode.errors !== null) {\n // for (const k in this.countryCode.errors) {\n // if (k === 'required') {\n // return 'input.country.required';\n // } else {\n // return 'input.country.invalid';\n // }\n // }\n // }\n return 'input.country.unknown.error';\n }\n}\n","<mat-form-field class=\"onemrva-input-country-common\">\n <mat-label>{{ label }}</mat-label>\n <mat-select\n class=\"onemrva-country-select-common\"\n [formControl]=\"countryCode\"\n [placeholder]=\"placeholderLabel\"\n >\n <mat-select-trigger>\n <country-item [country]=\"country | async\" />\n </mat-select-trigger>\n <mat-option>\n <mat-select-search\n [formControl]=\"filterCtrl\"\n [ariaLabel]=\"searchAriaLabel\"\n [noEntriesFoundLabel]=\"noEntriesFoundLabel\"\n [placeholderLabel]=\"placeholderLabel\"\n ></mat-select-search>\n </mat-option>\n <mat-option\n *ngFor=\"let country of filteredCountries$ | async; trackBy: trackById\"\n [value]=\"country.code\"\n >\n <country-item [country]=\"country\" />\n </mat-option>\n </mat-select>\n <mat-hint *ngIf=\"hint !== ''\">{{ hint }}</mat-hint>\n <mat-error *ngIf=\"countryCode.invalid\">{{ errors() | translate }}</mat-error>\n</mat-form-field>\n","/*\n * Public API Surface of mat-bank-account-input\n */\n\nexport * from './src/onemrva-mat-input-birthplace.component';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"onemrvapublic-design-system-mat-input-country.mjs","sources":["../../../../projects/onemrva/design-system/mat-input-country/src/onemrva-mat-input-country.component.ts","../../../../projects/onemrva/design-system/mat-input-country/src/onemrva-mat-input-country.component.html","../../../../projects/onemrva/design-system/mat-input-country/index.ts","../../../../projects/onemrva/design-system/mat-input-country/onemrvapublic-design-system-mat-input-country.ts"],"sourcesContent":["import { CommonModule } from '@angular/common';\nimport {\n Component,\n EventEmitter,\n Input,\n OnInit,\n Output,\n ViewEncapsulation,\n} from '@angular/core';\nimport { FormControl, ReactiveFormsModule } from '@angular/forms';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatInputModule } from '@angular/material/input';\nimport { MatSelectModule } from '@angular/material/select';\nimport { TranslateModule } from '@ngx-translate/core';\nimport {\n Observable,\n map,\n startWith,\n debounceTime,\n combineLatestWith,\n} from 'rxjs';\nimport { MatSelectSearchModule } from '@onemrvapublic/design-system/mat-select-search';\nimport { FlagIconComponent } from '@onemrvapublic/design-system/flag-icon';\nimport {\n OnemRvaCDNCountryService,\n OnemrvaMaterialCountry,\n} from '@onemrvapublic/design-system/shared';\n\n@Component({\n selector: 'onemrva-mat-input-country',\n styleUrls: ['onemrva-mat-input-country.component.scss'],\n templateUrl: 'onemrva-mat-input-country.component.html',\n standalone: true,\n imports: [\n CommonModule,\n MatInputModule,\n MatFormFieldModule,\n MatSelectModule,\n MatSelectSearchModule,\n ReactiveFormsModule,\n TranslateModule,\n FlagIconComponent,\n ],\n encapsulation: ViewEncapsulation.None,\n})\nexport class OnemrvaMatInputCountryComponent implements OnInit {\n @Input()\n readonly: boolean = false;\n\n @Input() country!: FormControl;\n\n @Input() label: string = 'Country';\n @Input() noEntriesFoundLabel = 'Not found';\n @Input() hint: string = '';\n @Input() placeholderLabel = 'Search';\n @Input() searchAriaLabel = '';\n @Output() getCountry = new EventEmitter<any>();\n\n public filterCtrl: FormControl<string | null> = new FormControl<string>('');\n\n public countries$: Observable<OnemrvaMaterialCountry[]>;\n public filteredCountries$: Observable<OnemrvaMaterialCountry[]>;\n public selectedCountry$?: Observable<OnemrvaMaterialCountry | undefined>;\n\n constructor(private cdn: OnemRvaCDNCountryService) {\n this.countries$ = this.cdn.getCountries();\n\n this.filteredCountries$ = this.filterCtrl.valueChanges.pipe(\n debounceTime(400),\n startWith(''),\n combineLatestWith(this.countries$),\n map(([search, countries]) => {\n return countries.filter((country: OnemrvaMaterialCountry) => {\n if (!search || search === '') return countries;\n if (country.name === undefined) return false;\n return country.name.toLowerCase().indexOf(search.toLowerCase()) > -1;\n });\n }),\n );\n }\n\n ngOnInit(): void {\n this.selectedCountry$ = this.country.valueChanges.pipe(\n startWith(this.country.getRawValue()),\n combineLatestWith(this.countries$),\n map(([value, countries]) => {\n return countries.find(\n (country: OnemrvaMaterialCountry) =>\n country.code === value?.substring(0, country.code.length),\n );\n }),\n );\n }\n\n handleClick(e: any) {\n e.stopPropagation();\n }\n\n public errors() {\n for (const k in this.country.errors) {\n if (k === 'required') {\n return 'input.country.required';\n }\n }\n return 'input.country.unknown.error';\n }\n}\n","<mat-form-field class=\"onemrva-input-country\">\n <mat-label>{{ label }}</mat-label>\n <mat-select class=\"onemrva-country-select\" [formControl]=\"country\">\n <mat-select-trigger>\n <flag-icon [countryCode]=\"country.getRawValue()\" />&nbsp;&nbsp;{{\n (selectedCountry$ | async)?.name\n }}\n </mat-select-trigger>\n <mat-option>\n <mat-select-search\n [formControl]=\"filterCtrl\"\n [ariaLabel]=\"searchAriaLabel\"\n [noEntriesFoundLabel]=\"noEntriesFoundLabel\"\n [placeholderLabel]=\"placeholderLabel\"\n ></mat-select-search>\n </mat-option>\n <mat-option\n *ngFor=\"let country of filteredCountries$ | async\"\n [value]=\"country.code\"\n ><span class=\"country\">\n <flag-icon [countryCode]=\"country.code\" />&nbsp;&nbsp;{{ country.name }}\n </span>\n </mat-option>\n </mat-select>\n <mat-hint *ngIf=\"hint !== ''\">{{ hint }}</mat-hint>\n <mat-error *ngIf=\"country.invalid\">{{ errors() | translate }}</mat-error>\n</mat-form-field>\n","/*\n * Public API Surface of mat-bank-account-input\n */\n\nexport * from './src/onemrva-mat-input-country.component';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"onemrvapublic-design-system-mat-input-country.mjs","sources":["../../../../projects/onemrva/design-system/mat-input-country/src/onemrva-mat-input-country.component.ts","../../../../projects/onemrva/design-system/mat-input-country/src/onemrva-mat-input-country.component.html","../../../../projects/onemrva/design-system/mat-input-country/index.ts","../../../../projects/onemrva/design-system/mat-input-country/onemrvapublic-design-system-mat-input-country.ts"],"sourcesContent":["import { CommonModule } from '@angular/common';\nimport {\n Component,\n EventEmitter,\n Input,\n OnInit,\n Output,\n ViewEncapsulation,\n} from '@angular/core';\nimport { FormControl, ReactiveFormsModule } from '@angular/forms';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatInputModule } from '@angular/material/input';\nimport { MatSelectModule } from '@angular/material/select';\nimport { TranslateModule } from '@ngx-translate/core';\nimport {\n Observable,\n map,\n startWith,\n debounceTime,\n combineLatestWith,\n} from 'rxjs';\nimport { MatSelectSearchModule } from '@onemrvapublic/design-system/mat-select-search';\nimport { FlagIconComponent } from '@onemrvapublic/design-system/flag-icon';\nimport {\n OnemRvaCDNCountryService,\n OnemrvaMaterialCountry,\n} from '@onemrvapublic/design-system/shared';\n\n@Component({\n selector: 'onemrva-mat-input-country',\n styleUrls: ['onemrva-mat-input-country.component.scss'],\n templateUrl: 'onemrva-mat-input-country.component.html',\n standalone: true,\n imports: [\n CommonModule,\n MatInputModule,\n MatFormFieldModule,\n MatSelectModule,\n MatSelectSearchModule,\n ReactiveFormsModule,\n TranslateModule,\n FlagIconComponent,\n ],\n encapsulation: ViewEncapsulation.None,\n})\nexport class OnemrvaMatInputCountryComponent implements OnInit {\n @Input()\n readonly = false;\n\n @Input() country!: FormControl;\n\n @Input() label = 'Country';\n @Input() noEntriesFoundLabel = 'Not found';\n @Input() hint = '';\n @Input() placeholderLabel = 'Search';\n @Input() searchAriaLabel = '';\n @Output() getCountry = new EventEmitter<any>();\n\n public filterCtrl: FormControl<string | null> = new FormControl<string>('');\n\n public countries$: Observable<OnemrvaMaterialCountry[]>;\n public filteredCountries$: Observable<OnemrvaMaterialCountry[]>;\n public selectedCountry$?: Observable<OnemrvaMaterialCountry | undefined>;\n\n constructor(private cdn: OnemRvaCDNCountryService) {\n this.countries$ = this.cdn.getCountries();\n\n this.filteredCountries$ = this.filterCtrl.valueChanges.pipe(\n debounceTime(400),\n startWith(''),\n combineLatestWith(this.countries$),\n map(([search, countries]) => {\n return countries.filter((country: OnemrvaMaterialCountry) => {\n if (!search || search === '') return countries;\n if (country.name === undefined) return false;\n return country.name.toLowerCase().indexOf(search.toLowerCase()) > -1;\n });\n }),\n );\n }\n\n ngOnInit(): void {\n this.selectedCountry$ = this.country.valueChanges.pipe(\n startWith(this.country.getRawValue()),\n combineLatestWith(this.countries$),\n map(([value, countries]) => {\n return countries.find(\n (country: OnemrvaMaterialCountry) =>\n country.code === value?.substring(0, country.code.length),\n );\n }),\n );\n }\n\n handleClick(e: any) {\n e.stopPropagation();\n }\n\n public errors() {\n for (const k in this.country.errors) {\n if (k === 'required') {\n return 'input.country.required';\n }\n }\n return 'input.country.unknown.error';\n }\n}\n","<mat-form-field class=\"onemrva-input-country\">\n <mat-label>{{ label }}</mat-label>\n <mat-select class=\"onemrva-country-select\" [formControl]=\"country\">\n <mat-select-trigger>\n <flag-icon [countryCode]=\"country.getRawValue()\" />&nbsp;&nbsp;{{\n (selectedCountry$ | async)?.name\n }}\n </mat-select-trigger>\n <mat-option>\n <mat-select-search\n [formControl]=\"filterCtrl\"\n [ariaLabel]=\"searchAriaLabel\"\n [noEntriesFoundLabel]=\"noEntriesFoundLabel\"\n [placeholderLabel]=\"placeholderLabel\"\n ></mat-select-search>\n </mat-option>\n <mat-option\n *ngFor=\"let country of filteredCountries$ | async\"\n [value]=\"country.code\"\n ><span class=\"country\">\n <flag-icon [countryCode]=\"country.code\" />&nbsp;&nbsp;{{ country.name }}\n </span>\n </mat-option>\n </mat-select>\n <mat-hint *ngIf=\"hint !== ''\">{{ hint }}</mat-hint>\n <mat-error *ngIf=\"country.invalid\">{{ errors() | translate }}</mat-error>\n</mat-form-field>\n","/*\n * Public API Surface of mat-bank-account-input\n */\n\nexport * from './src/onemrva-mat-input-country.component';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"onemrvapublic-design-system-mat-input-enterprise-number.mjs","sources":["../../../../projects/onemrva/design-system/mat-input-enterprise-number/src/onemrva-mat-input-enterprise-number.component.ts","../../../../projects/onemrva/design-system/mat-input-enterprise-number/src/onemrva-mat-input-enterprise-number.component.html","../../../../projects/onemrva/design-system/mat-input-enterprise-number/index.ts","../../../../projects/onemrva/design-system/mat-input-enterprise-number/onemrvapublic-design-system-mat-input-enterprise-number.ts"],"sourcesContent":["import { CommonModule } from '@angular/common';\nimport {\n Component,\n ElementRef,\n EventEmitter,\n Input,\n OnDestroy,\n OnInit,\n Output,\n ViewChild,\n ViewEncapsulation,\n} from '@angular/core';\nimport { FormControl, ReactiveFormsModule, Validators } from '@angular/forms';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatInputModule } from '@angular/material/input';\nimport { MatSelectModule } from '@angular/material/select';\nimport { TranslateModule } from '@ngx-translate/core';\nimport { NgxMaskDirective } from 'ngx-mask';\nimport {\n combineLatestWith,\n debounceTime,\n map,\n Observable,\n startWith,\n Subject,\n takeUntil,\n zip,\n} from 'rxjs';\nimport { MatSelectSearchModule } from '@onemrvapublic/design-system/mat-select-search';\nimport {\n OnemRvaCDNCountryService,\n OnemrvaMaterialCountry,\n} from '@onemrvapublic/design-system/shared';\nimport { FlagIconComponent } from '@onemrvapublic/design-system/flag-icon';\n\n@Component({\n selector: 'onemrva-mat-input-enterprise-number',\n styleUrls: ['onemrva-mat-input-enterprise-number.component.scss'],\n templateUrl: 'onemrva-mat-input-enterprise-number.component.html',\n standalone: true,\n imports: [\n CommonModule,\n MatInputModule,\n MatFormFieldModule,\n MatSelectModule,\n ReactiveFormsModule,\n TranslateModule,\n FlagIconComponent,\n NgxMaskDirective,\n MatSelectSearchModule,\n ],\n encapsulation: ViewEncapsulation.None,\n})\nexport class OnemrvaMatInputEnterpriseNumberComponent\n implements OnInit, OnDestroy\n{\n @Input()\n readonly: boolean = false;\n\n @Input() enterpriseNumber!: FormControl;\n @Input() label: string = 'VIES';\n @Input() noEntriesFoundLabel = 'Not found';\n @Input() placeholderLabel = 'Search';\n @Input() defaultCountry: string = 'BE';\n @Input() searchAriaLabel = '';\n @Input() hint: string = '';\n @Output() getCountry = new EventEmitter<any>();\n @ViewChild('numberInput') numberInput!: ElementRef;\n\n countryCode: FormControl = new FormControl('');\n\n public filterCtrl: FormControl<string | null> = new FormControl<string>('');\n\n destroyNotifier$: Subject<void> = new Subject();\n\n mask$!: Observable<string | undefined>;\n\n public countries$: Observable<OnemrvaMaterialCountry[]> =\n this.cdn.getCountriesByZone('EU');\n public filteredCountries$: Observable<OnemrvaMaterialCountry[]>;\n\n constructor(private cdn: OnemRvaCDNCountryService) {\n this.filteredCountries$ = this.filterCtrl.valueChanges.pipe(\n debounceTime(400),\n startWith(''),\n combineLatestWith(this.countries$),\n map(([search, countries]) => {\n return countries.filter((country: OnemrvaMaterialCountry) => {\n if (!search || search === '') return countries;\n if (country.name === undefined) return false;\n return country.name.toLowerCase().indexOf(search.toLowerCase()) > -1;\n });\n }),\n );\n }\n\n get number(): FormControl {\n return this.enterpriseNumber as FormControl;\n }\n\n private setCode(country: OnemrvaMaterialCountry | null) {\n this.clearValidators();\n if (country) {\n this.countryCode.setValue(country.code);\n this.formatEnterpriseNumber(country);\n }\n }\n\n ngOnInit(): void {\n this.number.valueChanges\n .pipe(\n startWith(this.number.getRawValue()),\n takeUntil(this.destroyNotifier$),\n )\n .subscribe(number => {\n if (number === '0') {\n this.cdn\n .findCountryFromCode(this.defaultCountry)\n .pipe(takeUntil(this.destroyNotifier$))\n .subscribe(country => {\n if (country) {\n number = country.pattern.substring(0, 2) + number;\n this.number.setValue(number, { emitEvent: false });\n this.countryCode.setValue(country.code);\n } else {\n this.countryCode.setValue('');\n }\n });\n } else {\n if (number.length > 1) {\n this.cdn\n .findCountryFromVIESCode(number)\n .pipe(takeUntil(this.destroyNotifier$))\n .subscribe(country => {\n if (country) {\n this.countryCode.setValue(country.code);\n }\n });\n }\n }\n });\n\n this.countryCode.valueChanges\n .pipe(takeUntil(this.destroyNotifier$))\n .subscribe(value => {\n let number = this.number.getRawValue();\n zip(\n this.cdn.findCountryFromVIESCode(number),\n this.cdn.findCountryFromCode(value),\n ).subscribe(([countryFromVies, countryFromCode]) => {\n if (countryFromVies) {\n number = number.replace(\n countryFromVies.pattern.substring(0, 2),\n '',\n );\n }\n if (countryFromCode) {\n this.getCountry.next(countryFromCode);\n number = countryFromCode.pattern.substring(0, 2) + number;\n this.formatEnterpriseNumber(countryFromCode);\n }\n this.number.setValue(number, { emitEvent: false });\n this.formatEnterpriseNumber(countryFromCode);\n });\n });\n }\n\n private clearValidators() {\n let required = false;\n if (this.number.hasValidator(Validators.required)) {\n required = true;\n }\n this.number.clearValidators();\n if (required) {\n this.number.addValidators(Validators.required);\n }\n }\n\n private formatEnterpriseNumber(country: OnemrvaMaterialCountry | undefined) {\n this.clearValidators();\n if (this.countryCode.getRawValue() !== '' && country) {\n this.enterpriseNumber.addValidators(\n Validators.pattern(new RegExp(country.pattern)),\n );\n }\n }\n\n ngOnDestroy() {\n this.destroyNotifier$.next();\n this.destroyNotifier$.complete();\n }\n\n handleClick(e: any) {\n e.stopPropagation();\n }\n\n errors() {\n for (const k in this.number.errors) {\n if (k === 'required') {\n return 'input.vies.required';\n } else {\n return 'input.vies.invalid';\n }\n }\n return 'input.vies.unknown.error';\n }\n}\n","<ng-container>\n <mat-form-field class=\"onemrva-input-enterprise-number\">\n <mat-label>{{ label }}</mat-label>\n <input\n (click)=\"handleClick($event)\"\n type=\"text\"\n matInput\n #numberInput\n placeholder=\"\"\n [formControl]=\"enterpriseNumber\"\n class=\"onemrva-text-enterprise-number\"\n [mask]=\"mask$ | async\"\n />\n <mat-select\n matTextPrefix\n class=\"onemrva-phone-number-select\"\n [formControl]=\"countryCode\"\n >\n <mat-select-trigger>\n <flag-icon [countryCode]=\"countryCode.getRawValue()\" />\n </mat-select-trigger>\n\n <mat-option>\n <mat-select-search\n [formControl]=\"filterCtrl\"\n [ariaLabel]=\"searchAriaLabel\"\n [noEntriesFoundLabel]=\"noEntriesFoundLabel\"\n [placeholderLabel]=\"placeholderLabel\"\n ></mat-select-search>\n </mat-option>\n\n <mat-option\n *ngFor=\"let country of filteredCountries$ | async\"\n [value]=\"country.code\"\n >\n <flag-icon [countryCode]=\"country.code\" />&nbsp;&nbsp;{{ country.name }}\n </mat-option>\n </mat-select>\n <mat-hint *ngIf=\"hint !== ''\">{{ hint }}</mat-hint>\n <mat-error *ngIf=\"number.invalid\">{{ errors() | translate }}</mat-error>\n </mat-form-field>\n</ng-container>\n","/*\n * Public API Surface of mat-bank-account-input\n */\n\nexport * from './src/onemrva-mat-input-enterprise-number.component';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"onemrvapublic-design-system-mat-input-enterprise-number.mjs","sources":["../../../../projects/onemrva/design-system/mat-input-enterprise-number/src/onemrva-mat-input-enterprise-number.component.ts","../../../../projects/onemrva/design-system/mat-input-enterprise-number/src/onemrva-mat-input-enterprise-number.component.html","../../../../projects/onemrva/design-system/mat-input-enterprise-number/index.ts","../../../../projects/onemrva/design-system/mat-input-enterprise-number/onemrvapublic-design-system-mat-input-enterprise-number.ts"],"sourcesContent":["import { CommonModule } from '@angular/common';\nimport {\n Component,\n ElementRef,\n EventEmitter,\n Input,\n OnDestroy,\n OnInit,\n Output,\n ViewChild,\n ViewEncapsulation,\n} from '@angular/core';\nimport { FormControl, ReactiveFormsModule, Validators } from '@angular/forms';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatInputModule } from '@angular/material/input';\nimport { MatSelectModule } from '@angular/material/select';\nimport { TranslateModule } from '@ngx-translate/core';\nimport { NgxMaskDirective } from 'ngx-mask';\nimport {\n combineLatestWith,\n debounceTime,\n map,\n Observable,\n startWith,\n Subject,\n takeUntil,\n zip,\n} from 'rxjs';\nimport { MatSelectSearchModule } from '@onemrvapublic/design-system/mat-select-search';\nimport {\n OnemRvaCDNCountryService,\n OnemrvaMaterialCountry,\n} from '@onemrvapublic/design-system/shared';\nimport { FlagIconComponent } from '@onemrvapublic/design-system/flag-icon';\n\n@Component({\n selector: 'onemrva-mat-input-enterprise-number',\n styleUrls: ['onemrva-mat-input-enterprise-number.component.scss'],\n templateUrl: 'onemrva-mat-input-enterprise-number.component.html',\n standalone: true,\n imports: [\n CommonModule,\n MatInputModule,\n MatFormFieldModule,\n MatSelectModule,\n ReactiveFormsModule,\n TranslateModule,\n FlagIconComponent,\n NgxMaskDirective,\n MatSelectSearchModule,\n ],\n encapsulation: ViewEncapsulation.None,\n})\nexport class OnemrvaMatInputEnterpriseNumberComponent\n implements OnInit, OnDestroy\n{\n @Input()\n readonly = false;\n\n @Input() enterpriseNumber!: FormControl;\n @Input() label = 'VIES';\n @Input() noEntriesFoundLabel = 'Not found';\n @Input() placeholderLabel = 'Search';\n @Input() defaultCountry = 'BE';\n @Input() searchAriaLabel = '';\n @Input() hint = '';\n @Output() getCountry = new EventEmitter<any>();\n @ViewChild('numberInput') numberInput!: ElementRef;\n\n countryCode: FormControl = new FormControl('');\n\n public filterCtrl: FormControl<string | null> = new FormControl<string>('');\n\n destroyNotifier$ = new Subject<void>();\n\n mask$!: Observable<string | undefined>;\n\n public countries$: Observable<OnemrvaMaterialCountry[]> =\n this.cdn.getCountriesByZone('EU');\n public filteredCountries$: Observable<OnemrvaMaterialCountry[]>;\n\n constructor(private cdn: OnemRvaCDNCountryService) {\n this.filteredCountries$ = this.filterCtrl.valueChanges.pipe(\n debounceTime(400),\n startWith(''),\n combineLatestWith(this.countries$),\n map(([search, countries]) => {\n return countries.filter((country: OnemrvaMaterialCountry) => {\n if (!search || search === '') return countries;\n if (country.name === undefined) return false;\n return country.name.toLowerCase().indexOf(search.toLowerCase()) > -1;\n });\n }),\n );\n }\n\n get number(): FormControl {\n return this.enterpriseNumber as FormControl;\n }\n\n private setCode(country: OnemrvaMaterialCountry | null) {\n this.clearValidators();\n if (country) {\n this.countryCode.setValue(country.code);\n this.formatEnterpriseNumber(country);\n }\n }\n\n ngOnInit(): void {\n this.number.valueChanges\n .pipe(\n startWith(this.number.getRawValue()),\n takeUntil(this.destroyNotifier$),\n )\n .subscribe(number => {\n if (number === '0') {\n this.cdn\n .findCountryFromCode(this.defaultCountry)\n .pipe(takeUntil(this.destroyNotifier$))\n .subscribe(country => {\n if (country) {\n number = country.pattern.substring(0, 2) + number;\n this.number.setValue(number, { emitEvent: false });\n this.countryCode.setValue(country.code);\n } else {\n this.countryCode.setValue('');\n }\n });\n } else {\n if (number.length > 1) {\n this.cdn\n .findCountryFromVIESCode(number)\n .pipe(takeUntil(this.destroyNotifier$))\n .subscribe(country => {\n if (country) {\n this.countryCode.setValue(country.code);\n }\n });\n }\n }\n });\n\n this.countryCode.valueChanges\n .pipe(takeUntil(this.destroyNotifier$))\n .subscribe(value => {\n let number = this.number.getRawValue();\n zip(\n this.cdn.findCountryFromVIESCode(number),\n this.cdn.findCountryFromCode(value),\n ).subscribe(([countryFromVies, countryFromCode]) => {\n if (countryFromVies) {\n number = number.replace(\n countryFromVies.pattern.substring(0, 2),\n '',\n );\n }\n if (countryFromCode) {\n this.getCountry.next(countryFromCode);\n number = countryFromCode.pattern.substring(0, 2) + number;\n this.formatEnterpriseNumber(countryFromCode);\n }\n this.number.setValue(number, { emitEvent: false });\n this.formatEnterpriseNumber(countryFromCode);\n });\n });\n }\n\n private clearValidators() {\n let required = false;\n if (this.number.hasValidator(Validators.required)) {\n required = true;\n }\n this.number.clearValidators();\n if (required) {\n this.number.addValidators(Validators.required);\n }\n }\n\n private formatEnterpriseNumber(country: OnemrvaMaterialCountry | undefined) {\n this.clearValidators();\n if (this.countryCode.getRawValue() !== '' && country) {\n this.enterpriseNumber.addValidators(\n Validators.pattern(new RegExp(country.pattern)),\n );\n }\n }\n\n ngOnDestroy() {\n this.destroyNotifier$.next();\n this.destroyNotifier$.complete();\n }\n\n handleClick(e: any) {\n e.stopPropagation();\n }\n\n errors() {\n for (const k in this.number.errors) {\n if (k === 'required') {\n return 'input.vies.required';\n } else {\n return 'input.vies.invalid';\n }\n }\n return 'input.vies.unknown.error';\n }\n}\n","<ng-container>\n <mat-form-field class=\"onemrva-input-enterprise-number\">\n <mat-label>{{ label }}</mat-label>\n <input\n (click)=\"handleClick($event)\"\n type=\"text\"\n matInput\n #numberInput\n placeholder=\"\"\n [formControl]=\"enterpriseNumber\"\n class=\"onemrva-text-enterprise-number\"\n [mask]=\"mask$ | async\"\n />\n <mat-select\n matTextPrefix\n class=\"onemrva-phone-number-select\"\n [formControl]=\"countryCode\"\n >\n <mat-select-trigger>\n <flag-icon [countryCode]=\"countryCode.getRawValue()\" />\n </mat-select-trigger>\n\n <mat-option>\n <mat-select-search\n [formControl]=\"filterCtrl\"\n [ariaLabel]=\"searchAriaLabel\"\n [noEntriesFoundLabel]=\"noEntriesFoundLabel\"\n [placeholderLabel]=\"placeholderLabel\"\n ></mat-select-search>\n </mat-option>\n\n <mat-option\n *ngFor=\"let country of filteredCountries$ | async\"\n [value]=\"country.code\"\n >\n <flag-icon [countryCode]=\"country.code\" />&nbsp;&nbsp;{{ country.name }}\n </mat-option>\n </mat-select>\n <mat-hint *ngIf=\"hint !== ''\">{{ hint }}</mat-hint>\n <mat-error *ngIf=\"number.invalid\">{{ errors() | translate }}</mat-error>\n </mat-form-field>\n</ng-container>\n","/*\n * Public API Surface of mat-bank-account-input\n */\n\nexport * from './src/onemrva-mat-input-enterprise-number.component';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -21,7 +21,6 @@ import * as i1 from '@onemrvapublic/design-system/shared';
21
21
  import * as i6 from '@angular/material/core';
22
22
 
23
23
  class PhoneNumberDirective {
24
- constructor() { }
25
24
  onKeyDown(event) {
26
25
  const e = event;
27
26
  const allowedKey = [
@@ -65,7 +64,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImpor
65
64
  selector: '[phoneNumber]',
66
65
  standalone: true,
67
66
  }]
68
- }], ctorParameters: () => [], propDecorators: { onKeyDown: [{
67
+ }], propDecorators: { onKeyDown: [{
69
68
  type: HostListener,
70
69
  args: ['keydown', ['$event']]
71
70
  }] } });
@@ -1 +1 @@
1
- {"version":3,"file":"onemrvapublic-design-system-mat-input-phone.mjs","sources":["../../../../projects/onemrva/design-system/mat-input-phone/src/phone-number.directive.ts","../../../../projects/onemrva/design-system/mat-input-phone/src/onemrva-mat-input-phone.component.ts","../../../../projects/onemrva/design-system/mat-input-phone/src/onemrva-mat-input-phone.component.html","../../../../projects/onemrva/design-system/mat-input-phone/index.ts","../../../../projects/onemrva/design-system/mat-input-phone/onemrvapublic-design-system-mat-input-phone.ts"],"sourcesContent":["import { Directive, HostListener } from '@angular/core';\n\n@Directive({\n selector: '[phoneNumber]',\n standalone: true,\n})\nexport class PhoneNumberDirective {\n constructor() {}\n\n @HostListener('keydown', ['$event']) onKeyDown(event: any) {\n const e = <KeyboardEvent>event;\n\n const allowedKey = [\n '0',\n '1',\n '2',\n '3',\n '4',\n '5',\n '6',\n '7',\n '8',\n '9',\n ' ',\n 'Backspace',\n 'Delete',\n 'Tab',\n '+',\n '-',\n 'Enter',\n 'ArrowLeft',\n 'ArrowRight',\n 'ArrowUp',\n 'ArrowDown',\n 'Home',\n 'End',\n ];\n\n if (allowedKey.indexOf(e.key) >= 0) return;\n\n const allowedCtrlShortcuts = ['a', 'c', 'x', 'v'];\n if (e.ctrlKey && allowedCtrlShortcuts.indexOf(e.key) >= 0) return;\n\n e.preventDefault();\n }\n}\n","import { CommonModule } from '@angular/common';\nimport {\n Component,\n ElementRef,\n EventEmitter,\n Input,\n OnDestroy,\n OnInit,\n Output,\n ViewChild,\n ViewEncapsulation,\n} from '@angular/core';\nimport {\n AbstractControl,\n FormControl,\n ReactiveFormsModule,\n ValidationErrors,\n ValidatorFn,\n Validators,\n} from '@angular/forms';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatInputModule } from '@angular/material/input';\nimport { MatSelectModule } from '@angular/material/select';\nimport { TranslateModule } from '@ngx-translate/core';\nimport {\n Observable,\n Subject,\n map,\n startWith,\n debounceTime,\n takeUntil,\n combineLatestWith,\n zip,\n} from 'rxjs';\nimport { MatSelectSearchModule } from '@onemrvapublic/design-system/mat-select-search';\nimport { PhoneNumberDirective } from './phone-number.directive';\nimport parsePhoneNumber from 'libphonenumber-js';\nimport { FlagIconComponent } from '@onemrvapublic/design-system/flag-icon';\nimport {\n OnemRvaCDNCountryService,\n OnemrvaMaterialCountry,\n} from '@onemrvapublic/design-system/shared';\n\n@Component({\n selector: 'onemrva-mat-input-phone',\n styleUrls: ['onemrva-mat-input-phone.component.scss'],\n templateUrl: 'onemrva-mat-input-phone.component.html',\n standalone: true,\n imports: [\n CommonModule,\n MatInputModule,\n MatFormFieldModule,\n MatSelectModule,\n MatSelectSearchModule,\n ReactiveFormsModule,\n TranslateModule,\n PhoneNumberDirective,\n FlagIconComponent,\n ],\n encapsulation: ViewEncapsulation.None,\n})\nexport class OnemrvaMatInputPhoneComponent implements OnInit, OnDestroy {\n @Input()\n readonly: boolean = false;\n\n @Input() phoneNumber!: FormControl;\n @Input() label: string = 'Phone number';\n @Input() noEntriesFoundLabel = 'Not found';\n @Input() placeholderLabel = 'Search';\n @Input() defaultPrefix: string = '+32';\n @Input() searchAriaLabel = '';\n @Input() hint: string = '';\n @Output() getCountry = new EventEmitter<any>();\n @ViewChild('numberInput') numberInput!: ElementRef;\n\n countryCode: FormControl = new FormControl('');\n\n public filterCtrl: FormControl<string | null> = new FormControl<string>('');\n\n destroyNotifier$: Subject<void> = new Subject();\n\n public countries$: Observable<OnemrvaMaterialCountry[]> =\n this.cdn.getCountries();\n public filteredCountries$: Observable<OnemrvaMaterialCountry[]>;\n\n constructor(private cdn: OnemRvaCDNCountryService) {\n this.filteredCountries$ = this.filterCtrl.valueChanges.pipe(\n debounceTime(400),\n startWith(''),\n combineLatestWith(this.countries$),\n map(([search, countries]) => {\n return countries.filter((country: OnemrvaMaterialCountry) => {\n if (!search || search === '') return countries;\n if (country.name === undefined) return false;\n return country.name.toLowerCase().indexOf(search.toLowerCase()) > -1;\n });\n }),\n );\n }\n\n get number(): FormControl {\n return this.phoneNumber as FormControl;\n }\n\n ngOnInit(): void {\n this.number.valueChanges\n .pipe(\n startWith(this.number.getRawValue()),\n takeUntil(this.destroyNotifier$),\n )\n .subscribe(number => {\n if (number !== '') {\n if (number.substring(0, 1) !== '+')\n this.countryCode.setValue('', { emitEvent: false });\n if (number === '0') {\n this.cdn\n .findCountryFromPrefix(this.defaultPrefix)\n .pipe(takeUntil(this.destroyNotifier$))\n .subscribe(country => {\n if (country) {\n //this.getCountry.next(country);\n this.number.setValue(this.defaultPrefix, {\n emitEvent: false,\n });\n this.countryCode.setValue(country.code, { emitEvent: false });\n } else {\n this.countryCode.setValue('');\n }\n this.formatPhoneNumber();\n });\n } else {\n this.cdn\n .findCountryFromPrefix(number)\n .pipe(takeUntil(this.destroyNotifier$))\n .subscribe(country => {\n if (country) {\n //this.getCountry.next(country);\n this.countryCode.setValue(country.code);\n } else {\n this.countryCode.setValue('');\n }\n this.formatPhoneNumber();\n });\n }\n }\n });\n\n this.countryCode.valueChanges\n .pipe(takeUntil(this.destroyNotifier$))\n .subscribe(value => {\n let number = this.number.getRawValue();\n zip(\n this.cdn.findCountryFromPrefix(number),\n this.cdn.findCountryFromCode(value),\n ).subscribe(([countryFromVies, countryFromCode]) => {\n // Perform your action here using countryFromVies and countryFromCode\n if (countryFromVies) {\n number = number.replace(countryFromVies.dial_code, '');\n }\n if (countryFromCode) {\n this.getCountry.next(countryFromCode);\n if (number.substring(0, 1) === '+') {\n number = number.replace('+', '');\n }\n number = countryFromCode.dial_code + number;\n this.number.setValue(number, { emitEvent: false });\n this.formatPhoneNumber();\n }\n setTimeout(() => {\n this.numberInput.nativeElement.focus();\n }, 200);\n });\n });\n }\n\n handleClick(e: any) {\n e.stopPropagation();\n }\n\n private clearValidators() {\n let required = false;\n if (this.number.hasValidator(Validators.required)) {\n required = true;\n }\n this.number.clearValidators();\n if (required) {\n this.number.addValidators(Validators.required);\n }\n }\n\n private formatPhoneNumber() {\n this.clearValidators();\n if (this.countryCode.getRawValue() !== '') {\n this.number.addValidators([\n this.phoneNumberValidator(this.countryCode.getRawValue()),\n ]);\n }\n try {\n const parsedPhone = parsePhoneNumber(this.number.getRawValue());\n const code = parsedPhone?.country;\n if (code) {\n this.countryCode.setValue(code, { emitEvent: false });\n this.clearValidators();\n this.number.addValidators([this.phoneNumberValidator(code)]);\n this.number.setValue(parsedPhone?.format('INTERNATIONAL'), {\n emitEvent: false,\n });\n } else {\n this.number.addValidators([genericValidator('input.phone.invalid')]);\n }\n } catch (e: any) {\n this.number.addValidators([genericValidator(e.message)]);\n }\n }\n\n ngOnDestroy() {\n this.destroyNotifier$.next();\n this.destroyNotifier$.complete();\n }\n\n errors() {\n for (const k in this.number.errors) {\n if (k === 'required') {\n return 'input.phone.required';\n } else {\n return 'input.phone.invalid';\n }\n }\n return 'input.phone.unknown.error';\n }\n\n phoneNumberValidator(code: string): ValidatorFn {\n return (_control: AbstractControl): ValidationErrors | null => {\n let number: string = this.countryCode + _control.getRawValue();\n\n if (number === '') {\n return null;\n }\n\n try {\n number = number.replace(code, '');\n const parsedNumber = parsePhoneNumber(number);\n\n if (parsedNumber?.isValid()) {\n return null;\n }\n } catch (e: any) {\n console.warn(e.message);\n return { phoneNumber: { value: 'input.phone.invalid' } };\n }\n return { phoneNumber: { value: 'input.phone.invalid' } };\n };\n }\n}\n\nfunction genericValidator(message: string): ValidatorFn {\n return (_control: AbstractControl): ValidationErrors | null => {\n return { phoneNumber: { value: message } };\n };\n}\n","<ng-container>\n <mat-form-field class=\"onemrva-input-phone-number\">\n <mat-label>{{ label }}</mat-label>\n\n <input\n (click)=\"handleClick($event)\"\n type=\"tel\"\n matInput\n phoneNumber\n #numberInput\n placeholder=\"+32 475 12 34 56\"\n [formControl]=\"phoneNumber\"\n class=\"onemrva-text-number\"\n [readOnly]=\"readonly\"\n />\n <mat-select\n matTextPrefix\n class=\"onemrva-phone-number-select\"\n [formControl]=\"countryCode\"\n >\n <mat-select-trigger>\n <flag-icon [countryCode]=\"countryCode.getRawValue()\" />\n </mat-select-trigger>\n <mat-option>\n <mat-select-search\n [formControl]=\"filterCtrl\"\n [ariaLabel]=\"searchAriaLabel\"\n [noEntriesFoundLabel]=\"noEntriesFoundLabel\"\n [placeholderLabel]=\"placeholderLabel\"\n ></mat-select-search>\n </mat-option>\n <mat-option\n *ngFor=\"let country of filteredCountries$ | async\"\n [value]=\"country.code\"\n >\n <flag-icon [countryCode]=\"country.code\" />\n &nbsp;&nbsp;&nbsp;\n {{ country.name }}\n &nbsp;&nbsp;&nbsp;\n <span class=\"dialcode\">\n {{ country.dial_code }}\n </span>\n </mat-option>\n </mat-select>\n <mat-hint *ngIf=\"hint !== ''\">{{ hint }}</mat-hint>\n <mat-error *ngIf=\"number.invalid\">{{ errors() | translate }}</mat-error>\n </mat-form-field>\n</ng-container>\n","/*\n * Public API Surface of mat-bank-account-input\n */\n\nexport * from './src/onemrva-mat-input-phone.component';\nexport * from './src/phone-number.directive';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"onemrvapublic-design-system-mat-input-phone.mjs","sources":["../../../../projects/onemrva/design-system/mat-input-phone/src/phone-number.directive.ts","../../../../projects/onemrva/design-system/mat-input-phone/src/onemrva-mat-input-phone.component.ts","../../../../projects/onemrva/design-system/mat-input-phone/src/onemrva-mat-input-phone.component.html","../../../../projects/onemrva/design-system/mat-input-phone/index.ts","../../../../projects/onemrva/design-system/mat-input-phone/onemrvapublic-design-system-mat-input-phone.ts"],"sourcesContent":["import { Directive, HostListener } from '@angular/core';\n\n@Directive({\n selector: '[phoneNumber]',\n standalone: true,\n})\nexport class PhoneNumberDirective {\n @HostListener('keydown', ['$event']) onKeyDown(event: any) {\n const e = event as KeyboardEvent;\n\n const allowedKey = [\n '0',\n '1',\n '2',\n '3',\n '4',\n '5',\n '6',\n '7',\n '8',\n '9',\n ' ',\n 'Backspace',\n 'Delete',\n 'Tab',\n '+',\n '-',\n 'Enter',\n 'ArrowLeft',\n 'ArrowRight',\n 'ArrowUp',\n 'ArrowDown',\n 'Home',\n 'End',\n ];\n\n if (allowedKey.indexOf(e.key) >= 0) return;\n\n const allowedCtrlShortcuts = ['a', 'c', 'x', 'v'];\n if (e.ctrlKey && allowedCtrlShortcuts.indexOf(e.key) >= 0) return;\n\n e.preventDefault();\n }\n}\n","import { CommonModule } from '@angular/common';\nimport {\n Component,\n ElementRef,\n EventEmitter,\n Input,\n OnDestroy,\n OnInit,\n Output,\n ViewChild,\n ViewEncapsulation,\n} from '@angular/core';\nimport {\n AbstractControl,\n FormControl,\n ReactiveFormsModule,\n ValidationErrors,\n ValidatorFn,\n Validators,\n} from '@angular/forms';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatInputModule } from '@angular/material/input';\nimport { MatSelectModule } from '@angular/material/select';\nimport { TranslateModule } from '@ngx-translate/core';\nimport {\n Observable,\n Subject,\n map,\n startWith,\n debounceTime,\n takeUntil,\n combineLatestWith,\n zip,\n} from 'rxjs';\nimport { MatSelectSearchModule } from '@onemrvapublic/design-system/mat-select-search';\nimport { PhoneNumberDirective } from './phone-number.directive';\nimport parsePhoneNumber from 'libphonenumber-js';\nimport { FlagIconComponent } from '@onemrvapublic/design-system/flag-icon';\nimport {\n OnemRvaCDNCountryService,\n OnemrvaMaterialCountry,\n} from '@onemrvapublic/design-system/shared';\n\n@Component({\n selector: 'onemrva-mat-input-phone',\n styleUrls: ['onemrva-mat-input-phone.component.scss'],\n templateUrl: 'onemrva-mat-input-phone.component.html',\n standalone: true,\n imports: [\n CommonModule,\n MatInputModule,\n MatFormFieldModule,\n MatSelectModule,\n MatSelectSearchModule,\n ReactiveFormsModule,\n TranslateModule,\n PhoneNumberDirective,\n FlagIconComponent,\n ],\n encapsulation: ViewEncapsulation.None,\n})\nexport class OnemrvaMatInputPhoneComponent implements OnInit, OnDestroy {\n @Input()\n readonly = false;\n\n @Input() phoneNumber!: FormControl;\n @Input() label = 'Phone number';\n @Input() noEntriesFoundLabel = 'Not found';\n @Input() placeholderLabel = 'Search';\n @Input() defaultPrefix = '+32';\n @Input() searchAriaLabel = '';\n @Input() hint = '';\n @Output() getCountry = new EventEmitter<any>();\n @ViewChild('numberInput') numberInput!: ElementRef;\n\n countryCode: FormControl = new FormControl('');\n\n public filterCtrl: FormControl<string | null> = new FormControl<string>('');\n\n destroyNotifier$ = new Subject<void>();\n\n public countries$: Observable<OnemrvaMaterialCountry[]> =\n this.cdn.getCountries();\n public filteredCountries$: Observable<OnemrvaMaterialCountry[]>;\n\n constructor(private cdn: OnemRvaCDNCountryService) {\n this.filteredCountries$ = this.filterCtrl.valueChanges.pipe(\n debounceTime(400),\n startWith(''),\n combineLatestWith(this.countries$),\n map(([search, countries]) => {\n return countries.filter((country: OnemrvaMaterialCountry) => {\n if (!search || search === '') return countries;\n if (country.name === undefined) return false;\n return country.name.toLowerCase().indexOf(search.toLowerCase()) > -1;\n });\n }),\n );\n }\n\n get number(): FormControl {\n return this.phoneNumber as FormControl;\n }\n\n ngOnInit(): void {\n this.number.valueChanges\n .pipe(\n startWith(this.number.getRawValue()),\n takeUntil(this.destroyNotifier$),\n )\n .subscribe(number => {\n if (number !== '') {\n if (number.substring(0, 1) !== '+')\n this.countryCode.setValue('', { emitEvent: false });\n if (number === '0') {\n this.cdn\n .findCountryFromPrefix(this.defaultPrefix)\n .pipe(takeUntil(this.destroyNotifier$))\n .subscribe(country => {\n if (country) {\n //this.getCountry.next(country);\n this.number.setValue(this.defaultPrefix, {\n emitEvent: false,\n });\n this.countryCode.setValue(country.code, { emitEvent: false });\n } else {\n this.countryCode.setValue('');\n }\n this.formatPhoneNumber();\n });\n } else {\n this.cdn\n .findCountryFromPrefix(number)\n .pipe(takeUntil(this.destroyNotifier$))\n .subscribe(country => {\n if (country) {\n //this.getCountry.next(country);\n this.countryCode.setValue(country.code);\n } else {\n this.countryCode.setValue('');\n }\n this.formatPhoneNumber();\n });\n }\n }\n });\n\n this.countryCode.valueChanges\n .pipe(takeUntil(this.destroyNotifier$))\n .subscribe(value => {\n let number = this.number.getRawValue();\n zip(\n this.cdn.findCountryFromPrefix(number),\n this.cdn.findCountryFromCode(value),\n ).subscribe(([countryFromVies, countryFromCode]) => {\n // Perform your action here using countryFromVies and countryFromCode\n if (countryFromVies) {\n number = number.replace(countryFromVies.dial_code, '');\n }\n if (countryFromCode) {\n this.getCountry.next(countryFromCode);\n if (number.substring(0, 1) === '+') {\n number = number.replace('+', '');\n }\n number = countryFromCode.dial_code + number;\n this.number.setValue(number, { emitEvent: false });\n this.formatPhoneNumber();\n }\n setTimeout(() => {\n this.numberInput.nativeElement.focus();\n }, 200);\n });\n });\n }\n\n handleClick(e: any) {\n e.stopPropagation();\n }\n\n private clearValidators() {\n let required = false;\n if (this.number.hasValidator(Validators.required)) {\n required = true;\n }\n this.number.clearValidators();\n if (required) {\n this.number.addValidators(Validators.required);\n }\n }\n\n private formatPhoneNumber() {\n this.clearValidators();\n if (this.countryCode.getRawValue() !== '') {\n this.number.addValidators([\n this.phoneNumberValidator(this.countryCode.getRawValue()),\n ]);\n }\n try {\n const parsedPhone = parsePhoneNumber(this.number.getRawValue());\n const code = parsedPhone?.country;\n if (code) {\n this.countryCode.setValue(code, { emitEvent: false });\n this.clearValidators();\n this.number.addValidators([this.phoneNumberValidator(code)]);\n this.number.setValue(parsedPhone?.format('INTERNATIONAL'), {\n emitEvent: false,\n });\n } else {\n this.number.addValidators([genericValidator('input.phone.invalid')]);\n }\n } catch (e: any) {\n this.number.addValidators([genericValidator(e.message)]);\n }\n }\n\n ngOnDestroy() {\n this.destroyNotifier$.next();\n this.destroyNotifier$.complete();\n }\n\n errors() {\n for (const k in this.number.errors) {\n if (k === 'required') {\n return 'input.phone.required';\n } else {\n return 'input.phone.invalid';\n }\n }\n return 'input.phone.unknown.error';\n }\n\n phoneNumberValidator(code: string): ValidatorFn {\n return (_control: AbstractControl): ValidationErrors | null => {\n let number: string = this.countryCode + _control.getRawValue();\n\n if (number === '') {\n return null;\n }\n\n try {\n number = number.replace(code, '');\n const parsedNumber = parsePhoneNumber(number);\n\n if (parsedNumber?.isValid()) {\n return null;\n }\n } catch (e: any) {\n console.warn(e.message);\n return { phoneNumber: { value: 'input.phone.invalid' } };\n }\n return { phoneNumber: { value: 'input.phone.invalid' } };\n };\n }\n}\n\nfunction genericValidator(message: string): ValidatorFn {\n return (_control: AbstractControl): ValidationErrors | null => {\n return { phoneNumber: { value: message } };\n };\n}\n","<ng-container>\n <mat-form-field class=\"onemrva-input-phone-number\">\n <mat-label>{{ label }}</mat-label>\n\n <input\n (click)=\"handleClick($event)\"\n type=\"tel\"\n matInput\n phoneNumber\n #numberInput\n placeholder=\"+32 475 12 34 56\"\n [formControl]=\"phoneNumber\"\n class=\"onemrva-text-number\"\n [readOnly]=\"readonly\"\n />\n <mat-select\n matTextPrefix\n class=\"onemrva-phone-number-select\"\n [formControl]=\"countryCode\"\n >\n <mat-select-trigger>\n <flag-icon [countryCode]=\"countryCode.getRawValue()\" />\n </mat-select-trigger>\n <mat-option>\n <mat-select-search\n [formControl]=\"filterCtrl\"\n [ariaLabel]=\"searchAriaLabel\"\n [noEntriesFoundLabel]=\"noEntriesFoundLabel\"\n [placeholderLabel]=\"placeholderLabel\"\n ></mat-select-search>\n </mat-option>\n <mat-option\n *ngFor=\"let country of filteredCountries$ | async\"\n [value]=\"country.code\"\n >\n <flag-icon [countryCode]=\"country.code\" />\n &nbsp;&nbsp;&nbsp;\n {{ country.name }}\n &nbsp;&nbsp;&nbsp;\n <span class=\"dialcode\">\n {{ country.dial_code }}\n </span>\n </mat-option>\n </mat-select>\n <mat-hint *ngIf=\"hint !== ''\">{{ hint }}</mat-hint>\n <mat-error *ngIf=\"number.invalid\">{{ errors() | translate }}</mat-error>\n </mat-form-field>\n</ng-container>\n","/*\n * Public API Surface of mat-bank-account-input\n */\n\nexport * from './src/onemrva-mat-input-phone.component';\nexport * from './src/phone-number.directive';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"onemrvapublic-design-system-mat-message-box.mjs","sources":["../../../../projects/onemrva/design-system/mat-message-box/src/onemrva-mat-message-box.component.ts","../../../../projects/onemrva/design-system/mat-message-box/src/onemrva-mat-message-box.component.html","../../../../projects/onemrva/design-system/mat-message-box/src/onemrva-mat-message-box.module.ts","../../../../projects/onemrva/design-system/mat-message-box/onemrvapublic-design-system-mat-message-box.ts"],"sourcesContent":["import {\n AfterViewInit,\n Component,\n ElementRef,\n HostBinding,\n Input,\n ViewChild,\n} from '@angular/core';\nimport { OnemrvaMatColor } from '@onemrvapublic/design-system/utils';\n\nlet NEXT_ID = 0;\n\n@Component({\n selector: 'onemrva-mat-message-box',\n templateUrl: 'onemrva-mat-message-box.component.html',\n})\nexport class OnemrvaMatMessageBoxComponent implements AfterViewInit {\n @Input()\n public label: false | string = false;\n\n @Input()\n public messageCode: string = '';\n\n @ViewChild('mbcontent')\n public mbcontent!: ElementRef;\n /**\n * Returns the `aria-label` attribute of the element.\n *\n * @example\n * ```typescript\n * let elementLabel = this.<element>.ariaLabel;\n * ```\n *\n */\n @HostBinding('attr.aria-label')\n public ariaLabel = 'message-box';\n\n /**\n * Returns the `role` attribute of the element.\n *\n * @example\n * ```typescript\n * let elementRole = this.<element>.role;\n * ```\n */\n @HostBinding('attr.role')\n public role = 'alert';\n\n /**\n * Host `class.onemrva-mat-message-box` binding.\n *\n * @hidden\n * @internal\n */\n @HostBinding('class.onemrva-mat-message-box')\n public cssClass = 'onemrva-mat-message-box';\n\n /**\n * Sets the `id` of the element. If not set, the first component instance will have `id` = `\"onemrva-mat-*-0\"`.\n *\n * @example\n * ```html\n * <onemrva-mat-* id=\"my-first-*\"></onemrva-mat-*>\n * ```\n */\n @HostBinding('attr.id')\n @Input()\n public id = `onemrva-mat-message-box-${NEXT_ID++}`;\n\n /**\n * Sets the `data-cy` of the element. If not set, the first component instance will have `data-cy` = `\"onemrva-mat-*-0\"`.\n *\n * @example\n * ```html\n * <onemrva-mat-* id=\"my-first-*\"></onemrva-mat-*>\n * ```\n */\n @HostBinding('attr.data-cy')\n @Input()\n public dataCy = `onemrva-mat-message-box-${NEXT_ID++}`;\n\n /**\n * @hidden\n * @internal\n */\n private _color: OnemrvaMatColor = OnemrvaMatColor.NONE;\n\n /**\n * Returns the color of the element.\n *\n * @example\n * ```typescript\n * let color = this.<element>.color;\n * ```\n */\n @Input()\n public get color(): OnemrvaMatColor {\n return this._color;\n }\n\n /**\n * Sets the size of the element.\n * By default, the size is `\"small\"`. It can be set to `\"medium\"` or `\"large\"`.\n *\n * @example\n * ```html\n * <onemrva-mat-* size=\"large\"></onemrva-mat-*>\n * ```\n */\n public set color(value: OnemrvaMatColor) {\n switch (value) {\n case OnemrvaMatColor.SUCCESS:\n case OnemrvaMatColor.WARN:\n case OnemrvaMatColor.NONE:\n case OnemrvaMatColor.INFO:\n case OnemrvaMatColor.GRAYSCALE:\n case OnemrvaMatColor.ERROR:\n this._color = value;\n break;\n default:\n this._color = OnemrvaMatColor.INFO;\n }\n }\n\n /** @hidden @internal */\n @HostBinding('class.mat-error')\n public get _isError(): boolean {\n return this.color === OnemrvaMatColor.ERROR;\n }\n /** @hidden @internal */\n @HostBinding('class.mat-warn')\n public get _isWarn(): boolean {\n return this.color === OnemrvaMatColor.WARN;\n }\n /** @hidden @internal */\n @HostBinding('class.mat-success')\n public get _isSuccess(): boolean {\n return this.color === OnemrvaMatColor.SUCCESS;\n }\n /** @hidden @internal */\n @HostBinding('class.mat-grayscale')\n public get isGrayscale(): boolean {\n return (\n this.color === OnemrvaMatColor.GRAYSCALE ||\n this.color === OnemrvaMatColor.NONE\n );\n }\n /** @hidden @internal */\n @HostBinding('class.mat-info')\n public get _isInfo(): boolean {\n return (\n this.color !== OnemrvaMatColor.ERROR &&\n this.color !== OnemrvaMatColor.WARN &&\n this.color !== OnemrvaMatColor.NONE &&\n this.color !== OnemrvaMatColor.ACCENT &&\n this.color !== OnemrvaMatColor.GRAYSCALE &&\n this.color !== OnemrvaMatColor.SUCCESS\n );\n }\n\n ngAfterViewInit(): void {\n if (this.messageCode !== '') {\n console.warn(\n 'messageCode input has been deprecated in message-box component, please review documentation to fix this!',\n );\n this.mbcontent.nativeElement.insertAdjacentHTML(\n 'beforeend',\n this.messageCode,\n );\n }\n }\n}\n","<div #mbcontent>\n <ng-content></ng-content>\n</div>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { MatIconModule } from '@angular/material/icon';\nimport { TranslateModule } from '@ngx-translate/core';\nimport { OnemrvaMatMessageBoxComponent } from './onemrva-mat-message-box.component';\n\n@NgModule({\n declarations: [OnemrvaMatMessageBoxComponent],\n imports: [CommonModule, MatIconModule, TranslateModule],\n exports: [OnemrvaMatMessageBoxComponent],\n})\nexport class OnemrvaMatMessageBoxModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"onemrvapublic-design-system-mat-message-box.mjs","sources":["../../../../projects/onemrva/design-system/mat-message-box/src/onemrva-mat-message-box.component.ts","../../../../projects/onemrva/design-system/mat-message-box/src/onemrva-mat-message-box.component.html","../../../../projects/onemrva/design-system/mat-message-box/src/onemrva-mat-message-box.module.ts","../../../../projects/onemrva/design-system/mat-message-box/onemrvapublic-design-system-mat-message-box.ts"],"sourcesContent":["import {\n AfterViewInit,\n Component,\n ElementRef,\n HostBinding,\n Input,\n ViewChild,\n} from '@angular/core';\nimport { OnemrvaMatColor } from '@onemrvapublic/design-system/utils';\n\nlet NEXT_ID = 0;\n\n@Component({\n selector: 'onemrva-mat-message-box',\n templateUrl: 'onemrva-mat-message-box.component.html',\n})\nexport class OnemrvaMatMessageBoxComponent implements AfterViewInit {\n @Input()\n public label: false | string = false;\n\n @Input()\n public messageCode = '';\n\n @ViewChild('mbcontent')\n public mbcontent!: ElementRef;\n /**\n * Returns the `aria-label` attribute of the element.\n *\n * @example\n * ```typescript\n * let elementLabel = this.<element>.ariaLabel;\n * ```\n *\n */\n @HostBinding('attr.aria-label')\n public ariaLabel = 'message-box';\n\n /**\n * Returns the `role` attribute of the element.\n *\n * @example\n * ```typescript\n * let elementRole = this.<element>.role;\n * ```\n */\n @HostBinding('attr.role')\n public role = 'alert';\n\n /**\n * Host `class.onemrva-mat-message-box` binding.\n *\n * @hidden\n * @internal\n */\n @HostBinding('class.onemrva-mat-message-box')\n public cssClass = 'onemrva-mat-message-box';\n\n /**\n * Sets the `id` of the element. If not set, the first component instance will have `id` = `\"onemrva-mat-*-0\"`.\n *\n * @example\n * ```html\n * <onemrva-mat-* id=\"my-first-*\"></onemrva-mat-*>\n * ```\n */\n @HostBinding('attr.id')\n @Input()\n public id = `onemrva-mat-message-box-${NEXT_ID++}`;\n\n /**\n * Sets the `data-cy` of the element. If not set, the first component instance will have `data-cy` = `\"onemrva-mat-*-0\"`.\n *\n * @example\n * ```html\n * <onemrva-mat-* id=\"my-first-*\"></onemrva-mat-*>\n * ```\n */\n @HostBinding('attr.data-cy')\n @Input()\n public dataCy = `onemrva-mat-message-box-${NEXT_ID++}`;\n\n /**\n * @hidden\n * @internal\n */\n private _color: OnemrvaMatColor = OnemrvaMatColor.NONE;\n\n /**\n * Returns the color of the element.\n *\n * @example\n * ```typescript\n * let color = this.<element>.color;\n * ```\n */\n @Input()\n public get color(): OnemrvaMatColor {\n return this._color;\n }\n\n /**\n * Sets the size of the element.\n * By default, the size is `\"small\"`. It can be set to `\"medium\"` or `\"large\"`.\n *\n * @example\n * ```html\n * <onemrva-mat-* size=\"large\"></onemrva-mat-*>\n * ```\n */\n public set color(value: OnemrvaMatColor) {\n switch (value) {\n case OnemrvaMatColor.SUCCESS:\n case OnemrvaMatColor.WARN:\n case OnemrvaMatColor.NONE:\n case OnemrvaMatColor.INFO:\n case OnemrvaMatColor.GRAYSCALE:\n case OnemrvaMatColor.ERROR:\n this._color = value;\n break;\n default:\n this._color = OnemrvaMatColor.INFO;\n }\n }\n\n /** @hidden @internal */\n @HostBinding('class.mat-error')\n public get _isError(): boolean {\n return this.color === OnemrvaMatColor.ERROR;\n }\n /** @hidden @internal */\n @HostBinding('class.mat-warn')\n public get _isWarn(): boolean {\n return this.color === OnemrvaMatColor.WARN;\n }\n /** @hidden @internal */\n @HostBinding('class.mat-success')\n public get _isSuccess(): boolean {\n return this.color === OnemrvaMatColor.SUCCESS;\n }\n /** @hidden @internal */\n @HostBinding('class.mat-grayscale')\n public get isGrayscale(): boolean {\n return (\n this.color === OnemrvaMatColor.GRAYSCALE ||\n this.color === OnemrvaMatColor.NONE\n );\n }\n /** @hidden @internal */\n @HostBinding('class.mat-info')\n public get _isInfo(): boolean {\n return (\n this.color !== OnemrvaMatColor.ERROR &&\n this.color !== OnemrvaMatColor.WARN &&\n this.color !== OnemrvaMatColor.NONE &&\n this.color !== OnemrvaMatColor.ACCENT &&\n this.color !== OnemrvaMatColor.GRAYSCALE &&\n this.color !== OnemrvaMatColor.SUCCESS\n );\n }\n\n ngAfterViewInit(): void {\n if (this.messageCode !== '') {\n console.warn(\n 'messageCode input has been deprecated in message-box component, please review documentation to fix this!',\n );\n this.mbcontent.nativeElement.insertAdjacentHTML(\n 'beforeend',\n this.messageCode,\n );\n }\n }\n}\n","<div #mbcontent>\n <ng-content></ng-content>\n</div>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { MatIconModule } from '@angular/material/icon';\nimport { TranslateModule } from '@ngx-translate/core';\nimport { OnemrvaMatMessageBoxComponent } from './onemrva-mat-message-box.component';\n\n@NgModule({\n declarations: [OnemrvaMatMessageBoxComponent],\n imports: [CommonModule, MatIconModule, TranslateModule],\n exports: [OnemrvaMatMessageBoxComponent],\n})\nexport class OnemrvaMatMessageBoxModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}