@onemrvapublic/design-system 22.0.0-develop.2 → 22.0.0-develop.21

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 (89) hide show
  1. package/README.md +3 -4
  2. package/assets/i18n/de.json +12 -0
  3. package/assets/i18n/en.json +12 -0
  4. package/assets/i18n/fr.json +12 -0
  5. package/assets/i18n/nl.json +12 -0
  6. package/fesm2022/onemrvapublic-design-system-card.mjs +21 -13
  7. package/fesm2022/onemrvapublic-design-system-card.mjs.map +1 -1
  8. package/fesm2022/onemrvapublic-design-system-collapsible-page-divider.mjs +3 -3
  9. package/fesm2022/onemrvapublic-design-system-flag-icon.mjs +3 -3
  10. package/fesm2022/onemrvapublic-design-system-layout.mjs +72 -100
  11. package/fesm2022/onemrvapublic-design-system-layout.mjs.map +1 -1
  12. package/fesm2022/onemrvapublic-design-system-mat-address.mjs +5 -6
  13. package/fesm2022/onemrvapublic-design-system-mat-address.mjs.map +1 -1
  14. package/fesm2022/onemrvapublic-design-system-mat-avatar.mjs +3 -3
  15. package/fesm2022/onemrvapublic-design-system-mat-breadcrumb.mjs +10 -10
  16. package/fesm2022/onemrvapublic-design-system-mat-carousel.mjs +23 -48
  17. package/fesm2022/onemrvapublic-design-system-mat-carousel.mjs.map +1 -1
  18. package/fesm2022/onemrvapublic-design-system-mat-choice-chip.mjs +3 -3
  19. package/fesm2022/onemrvapublic-design-system-mat-copy-to-clipboard.mjs +5 -5
  20. package/fesm2022/onemrvapublic-design-system-mat-copy-to-clipboard.mjs.map +1 -1
  21. package/fesm2022/onemrvapublic-design-system-mat-country-item.mjs +4 -5
  22. package/fesm2022/onemrvapublic-design-system-mat-country-item.mjs.map +1 -1
  23. package/fesm2022/onemrvapublic-design-system-mat-datepicker-header.mjs +5 -6
  24. package/fesm2022/onemrvapublic-design-system-mat-datepicker-header.mjs.map +1 -1
  25. package/fesm2022/onemrvapublic-design-system-mat-empty-row.mjs +3 -3
  26. package/fesm2022/onemrvapublic-design-system-mat-file-upload.mjs +25 -69
  27. package/fesm2022/onemrvapublic-design-system-mat-file-upload.mjs.map +1 -1
  28. package/fesm2022/onemrvapublic-design-system-mat-input-address.mjs +8 -9
  29. package/fesm2022/onemrvapublic-design-system-mat-input-address.mjs.map +1 -1
  30. package/fesm2022/onemrvapublic-design-system-mat-input-birthplace.mjs +5 -6
  31. package/fesm2022/onemrvapublic-design-system-mat-input-birthplace.mjs.map +1 -1
  32. package/fesm2022/onemrvapublic-design-system-mat-input-country.mjs +5 -6
  33. package/fesm2022/onemrvapublic-design-system-mat-input-country.mjs.map +1 -1
  34. package/fesm2022/onemrvapublic-design-system-mat-input-enterprise-number.mjs +5 -6
  35. package/fesm2022/onemrvapublic-design-system-mat-input-enterprise-number.mjs.map +1 -1
  36. package/fesm2022/onemrvapublic-design-system-mat-input-iban.mjs +6 -7
  37. package/fesm2022/onemrvapublic-design-system-mat-input-iban.mjs.map +1 -1
  38. package/fesm2022/onemrvapublic-design-system-mat-input-phone.mjs +7 -9
  39. package/fesm2022/onemrvapublic-design-system-mat-input-phone.mjs.map +1 -1
  40. package/fesm2022/onemrvapublic-design-system-mat-message-box.mjs +7 -7
  41. package/fesm2022/onemrvapublic-design-system-mat-multi-select.mjs +7 -7
  42. package/fesm2022/onemrvapublic-design-system-mat-navigation.mjs +9 -9
  43. package/fesm2022/onemrvapublic-design-system-mat-notification.mjs +5 -6
  44. package/fesm2022/onemrvapublic-design-system-mat-notification.mjs.map +1 -1
  45. package/fesm2022/onemrvapublic-design-system-mat-paginator.mjs +8 -8
  46. package/fesm2022/onemrvapublic-design-system-mat-paginator.mjs.map +1 -1
  47. package/fesm2022/onemrvapublic-design-system-mat-panel.mjs +22 -22
  48. package/fesm2022/onemrvapublic-design-system-mat-pop-over.mjs +13 -13
  49. package/fesm2022/onemrvapublic-design-system-mat-progress-bar.mjs +3 -3
  50. package/fesm2022/onemrvapublic-design-system-mat-select-search.mjs +13 -13
  51. package/fesm2022/onemrvapublic-design-system-mat-selectable-box.mjs +7 -7
  52. package/fesm2022/onemrvapublic-design-system-mat-side-menu.mjs +7 -7
  53. package/fesm2022/onemrvapublic-design-system-mat-skeleton.mjs +7 -7
  54. package/fesm2022/onemrvapublic-design-system-mat-spinner.mjs +10 -10
  55. package/fesm2022/onemrvapublic-design-system-mat-stepper.mjs +11 -38
  56. package/fesm2022/onemrvapublic-design-system-mat-stepper.mjs.map +1 -1
  57. package/fesm2022/onemrvapublic-design-system-mat-sticker.mjs +7 -7
  58. package/fesm2022/onemrvapublic-design-system-mat-table-of-content.mjs +11 -12
  59. package/fesm2022/onemrvapublic-design-system-mat-table-of-content.mjs.map +1 -1
  60. package/fesm2022/onemrvapublic-design-system-mat-task-list.mjs +16 -16
  61. package/fesm2022/onemrvapublic-design-system-mat-toast.mjs +7 -7
  62. package/fesm2022/onemrvapublic-design-system-mat-tooltip.mjs +12 -12
  63. package/fesm2022/onemrvapublic-design-system-mat-tooltip.mjs.map +1 -1
  64. package/fesm2022/onemrvapublic-design-system-page-error.mjs +10 -11
  65. package/fesm2022/onemrvapublic-design-system-page-error.mjs.map +1 -1
  66. package/fesm2022/onemrvapublic-design-system-page-not-found.mjs +16 -16
  67. package/fesm2022/onemrvapublic-design-system-shared.mjs +80 -80
  68. package/fesm2022/onemrvapublic-design-system-shared.mjs.map +1 -1
  69. package/fesm2022/onemrvapublic-design-system-timeline.mjs +563 -0
  70. package/fesm2022/onemrvapublic-design-system-timeline.mjs.map +1 -0
  71. package/fesm2022/onemrvapublic-design-system.mjs +1 -1
  72. package/fesm2022/onemrvapublic-design-system.mjs.map +1 -1
  73. package/mat-carousel/src/onemrva-mat-carousel.component.scss +18 -0
  74. package/mat-paginator/src/onemrva-mat-paginator.component.scss +5 -31
  75. package/mat-tooltip/src/onemrva-mat-tooltip.component.scss +1 -0
  76. package/package.json +6 -2
  77. package/theme/overrides/_form-field.scss +2 -0
  78. package/theme/overrides/_select.scss +2 -1
  79. package/theme/overrides/_table.scss +8 -11
  80. package/theme/palettes/_palette.scss +1 -1
  81. package/timeline/src/onemrva-timeline.component.scss +371 -0
  82. package/types/onemrvapublic-design-system-card.d.ts +8 -9
  83. package/types/onemrvapublic-design-system-layout.d.ts +1 -1
  84. package/types/onemrvapublic-design-system-mat-carousel.d.ts +0 -3
  85. package/types/onemrvapublic-design-system-mat-file-upload.d.ts +1 -1
  86. package/types/onemrvapublic-design-system-page-error.d.ts +1 -1
  87. package/types/onemrvapublic-design-system-shared.d.ts +1 -1
  88. package/types/onemrvapublic-design-system-timeline.d.ts +195 -0
  89. package/types/onemrvapublic-design-system.d.ts +1 -1
@@ -6,8 +6,7 @@ import { DateAdapter, MAT_DATE_FORMATS } from '@angular/material/core';
6
6
  import { MatDatepickerIntl, MatCalendar } from '@angular/material/datepicker';
7
7
  import * as i2 from '@angular/material/icon';
8
8
  import { MatIconModule } from '@angular/material/icon';
9
- import * as i3 from '@ngx-translate/core';
10
- import { TranslateModule } from '@ngx-translate/core';
9
+ import { TranslatePipe } from '@ngx-translate/core';
11
10
  import { MatTooltip } from '@angular/material/tooltip';
12
11
  import { DateTime } from 'luxon';
13
12
 
@@ -149,12 +148,12 @@ class OnemrvaMatDatepickerHeaderComponent {
149
148
  const maxYearLabel = this._dateAdapter.getYearName(this._dateAdapter.createDate(maxYearOfPage, 0, 1));
150
149
  return [minYearLabel, maxYearLabel];
151
150
  }
152
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.1", ngImport: i0, type: OnemrvaMatDatepickerHeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
153
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "22.0.1", type: OnemrvaMatDatepickerHeaderComponent, isStandalone: true, selector: "onemrva-mat-datepicker-header", providers: [], ngImport: i0, template: "<div class=\"mat-calendar-header\">\n <div class=\"mat-calendar-controls\">\n <button\n mat-button\n type=\"button\"\n class=\"mat-calendar-period-button\"\n (click)=\"currentPeriodClicked()\"\n [attr.aria-label]=\"periodButtonLabel\"\n [attr.aria-describedby]=\"_periodButtonLabelId\"\n aria-live=\"polite\"\n >\n <span aria-hidden=\"true\">{{ periodButtonText }}</span>\n <svg\n class=\"mat-calendar-arrow\"\n [class.mat-calendar-invert]=\"calendar.currentView !== 'month'\"\n viewBox=\"0 0 10 5\"\n focusable=\"false\"\n aria-hidden=\"true\"\n >\n <polygon points=\"0,0 5,5 10,0\" />\n </svg>\n </button>\n\n <div class=\"mat-calendar-spacer\"></div>\n\n <ng-content />\n\n <button\n mat-icon-button\n type=\"button\"\n [disabled]=\"!previousEnabled()\"\n (click)=\"previousClicked()\"\n [attr.aria-label]=\"prevButtonLabel\"\n [matTooltip]=\"'Previous Month' | translate\"\n >\n <mat-icon>keyboard_arrow_left</mat-icon>\n </button>\n\n <button\n mat-icon-button\n type=\"button\"\n (click)=\"setToday()\"\n [attr.aria-label]=\"'Today' | translate\"\n [matTooltip]=\"'Today' | translate\"\n >\n <mat-icon>today</mat-icon>\n </button>\n\n <button\n mat-icon-button\n type=\"button\"\n [disabled]=\"!nextEnabled()\"\n (click)=\"nextClicked()\"\n [attr.aria-label]=\"nextButtonLabel\"\n [matTooltip]=\"'Next Month' | translate\"\n >\n <mat-icon>keyboard_arrow_right</mat-icon>\n </button>\n </div>\n</div>\n", styles: ["a.onemrva-calendar-header-today{font-size:12px;color:var(--mat-sys-primary);text-decoration:none}\n"], dependencies: [{ kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i1.MatButton, selector: " button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] ", inputs: ["matButton"], exportAs: ["matButton", "matAnchor"] }, { kind: "component", type: i1.MatIconButton, selector: "button[mat-icon-button], a[mat-icon-button], button[matIconButton], a[matIconButton]", exportAs: ["matButton", "matAnchor"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "directive", type: MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
151
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.4", ngImport: i0, type: OnemrvaMatDatepickerHeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
152
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "22.0.4", type: OnemrvaMatDatepickerHeaderComponent, isStandalone: true, selector: "onemrva-mat-datepicker-header", providers: [], ngImport: i0, template: "<div class=\"mat-calendar-header\">\n <div class=\"mat-calendar-controls\">\n <button\n mat-button\n type=\"button\"\n class=\"mat-calendar-period-button\"\n (click)=\"currentPeriodClicked()\"\n [attr.aria-label]=\"periodButtonLabel\"\n [attr.aria-describedby]=\"_periodButtonLabelId\"\n aria-live=\"polite\"\n >\n <span aria-hidden=\"true\">{{ periodButtonText }}</span>\n <svg\n class=\"mat-calendar-arrow\"\n [class.mat-calendar-invert]=\"calendar.currentView !== 'month'\"\n viewBox=\"0 0 10 5\"\n focusable=\"false\"\n aria-hidden=\"true\"\n >\n <polygon points=\"0,0 5,5 10,0\" />\n </svg>\n </button>\n\n <div class=\"mat-calendar-spacer\"></div>\n\n <ng-content />\n\n <button\n mat-icon-button\n type=\"button\"\n [disabled]=\"!previousEnabled()\"\n (click)=\"previousClicked()\"\n [attr.aria-label]=\"prevButtonLabel\"\n [matTooltip]=\"'Previous Month' | translate\"\n >\n <mat-icon>keyboard_arrow_left</mat-icon>\n </button>\n\n <button\n mat-icon-button\n type=\"button\"\n (click)=\"setToday()\"\n [attr.aria-label]=\"'Today' | translate\"\n [matTooltip]=\"'Today' | translate\"\n >\n <mat-icon>today</mat-icon>\n </button>\n\n <button\n mat-icon-button\n type=\"button\"\n [disabled]=\"!nextEnabled()\"\n (click)=\"nextClicked()\"\n [attr.aria-label]=\"nextButtonLabel\"\n [matTooltip]=\"'Next Month' | translate\"\n >\n <mat-icon>keyboard_arrow_right</mat-icon>\n </button>\n </div>\n</div>\n", styles: ["a.onemrva-calendar-header-today{font-size:12px;color:var(--mat-sys-primary);text-decoration:none}\n"], dependencies: [{ kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i1.MatButton, selector: " button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] ", inputs: ["matButton"], exportAs: ["matButton", "matAnchor"] }, { kind: "component", type: i1.MatIconButton, selector: "button[mat-icon-button], a[mat-icon-button], button[matIconButton], a[matIconButton]", exportAs: ["matButton", "matAnchor"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
154
153
  }
155
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.1", ngImport: i0, type: OnemrvaMatDatepickerHeaderComponent, decorators: [{
154
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.4", ngImport: i0, type: OnemrvaMatDatepickerHeaderComponent, decorators: [{
156
155
  type: Component,
157
- args: [{ selector: 'onemrva-mat-datepicker-header', standalone: true, imports: [MatButtonModule, MatIconModule, TranslateModule, MatTooltip], providers: [], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"mat-calendar-header\">\n <div class=\"mat-calendar-controls\">\n <button\n mat-button\n type=\"button\"\n class=\"mat-calendar-period-button\"\n (click)=\"currentPeriodClicked()\"\n [attr.aria-label]=\"periodButtonLabel\"\n [attr.aria-describedby]=\"_periodButtonLabelId\"\n aria-live=\"polite\"\n >\n <span aria-hidden=\"true\">{{ periodButtonText }}</span>\n <svg\n class=\"mat-calendar-arrow\"\n [class.mat-calendar-invert]=\"calendar.currentView !== 'month'\"\n viewBox=\"0 0 10 5\"\n focusable=\"false\"\n aria-hidden=\"true\"\n >\n <polygon points=\"0,0 5,5 10,0\" />\n </svg>\n </button>\n\n <div class=\"mat-calendar-spacer\"></div>\n\n <ng-content />\n\n <button\n mat-icon-button\n type=\"button\"\n [disabled]=\"!previousEnabled()\"\n (click)=\"previousClicked()\"\n [attr.aria-label]=\"prevButtonLabel\"\n [matTooltip]=\"'Previous Month' | translate\"\n >\n <mat-icon>keyboard_arrow_left</mat-icon>\n </button>\n\n <button\n mat-icon-button\n type=\"button\"\n (click)=\"setToday()\"\n [attr.aria-label]=\"'Today' | translate\"\n [matTooltip]=\"'Today' | translate\"\n >\n <mat-icon>today</mat-icon>\n </button>\n\n <button\n mat-icon-button\n type=\"button\"\n [disabled]=\"!nextEnabled()\"\n (click)=\"nextClicked()\"\n [attr.aria-label]=\"nextButtonLabel\"\n [matTooltip]=\"'Next Month' | translate\"\n >\n <mat-icon>keyboard_arrow_right</mat-icon>\n </button>\n </div>\n</div>\n", styles: ["a.onemrva-calendar-header-today{font-size:12px;color:var(--mat-sys-primary);text-decoration:none}\n"] }]
156
+ args: [{ selector: 'onemrva-mat-datepicker-header', standalone: true, imports: [MatButtonModule, MatIconModule, TranslatePipe, MatTooltip], providers: [], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"mat-calendar-header\">\n <div class=\"mat-calendar-controls\">\n <button\n mat-button\n type=\"button\"\n class=\"mat-calendar-period-button\"\n (click)=\"currentPeriodClicked()\"\n [attr.aria-label]=\"periodButtonLabel\"\n [attr.aria-describedby]=\"_periodButtonLabelId\"\n aria-live=\"polite\"\n >\n <span aria-hidden=\"true\">{{ periodButtonText }}</span>\n <svg\n class=\"mat-calendar-arrow\"\n [class.mat-calendar-invert]=\"calendar.currentView !== 'month'\"\n viewBox=\"0 0 10 5\"\n focusable=\"false\"\n aria-hidden=\"true\"\n >\n <polygon points=\"0,0 5,5 10,0\" />\n </svg>\n </button>\n\n <div class=\"mat-calendar-spacer\"></div>\n\n <ng-content />\n\n <button\n mat-icon-button\n type=\"button\"\n [disabled]=\"!previousEnabled()\"\n (click)=\"previousClicked()\"\n [attr.aria-label]=\"prevButtonLabel\"\n [matTooltip]=\"'Previous Month' | translate\"\n >\n <mat-icon>keyboard_arrow_left</mat-icon>\n </button>\n\n <button\n mat-icon-button\n type=\"button\"\n (click)=\"setToday()\"\n [attr.aria-label]=\"'Today' | translate\"\n [matTooltip]=\"'Today' | translate\"\n >\n <mat-icon>today</mat-icon>\n </button>\n\n <button\n mat-icon-button\n type=\"button\"\n [disabled]=\"!nextEnabled()\"\n (click)=\"nextClicked()\"\n [attr.aria-label]=\"nextButtonLabel\"\n [matTooltip]=\"'Next Month' | translate\"\n >\n <mat-icon>keyboard_arrow_right</mat-icon>\n </button>\n </div>\n</div>\n", styles: ["a.onemrva-calendar-header-today{font-size:12px;color:var(--mat-sys-primary);text-decoration:none}\n"] }]
158
157
  }] });
159
158
  function isSameMultiYearView(dateAdapter, date1, date2, minDate, maxDate) {
160
159
  const year1 = dateAdapter.getYear(date1);
@@ -1 +1 @@
1
- {"version":3,"file":"onemrvapublic-design-system-mat-datepicker-header.mjs","sources":["../../../../projects/onemrva/design-system/mat-datepicker-header/src/onemrva-mat-datepicker-header.component.ts","../../../../projects/onemrva/design-system/mat-datepicker-header/src/onemrva-mat-datepicker-header.component.html","../../../../projects/onemrva/design-system/mat-datepicker-header/index.ts","../../../../projects/onemrva/design-system/mat-datepicker-header/onemrvapublic-design-system-mat-datepicker-header.ts"],"sourcesContent":["import { Component, ChangeDetectionStrategy, inject } from '@angular/core';\nimport { MatButtonModule } from '@angular/material/button';\nimport {\n DateAdapter,\n MAT_DATE_FORMATS,\n MatDateFormats,\n} from '@angular/material/core';\nimport { MatCalendar, MatDatepickerIntl } from '@angular/material/datepicker';\nimport { MatIconModule } from '@angular/material/icon';\nimport { TranslateModule } from '@ngx-translate/core';\nimport { MatTooltip } from '@angular/material/tooltip';\nimport { DateTime } from 'luxon';\n\nconst YEARS_PER_PAGE = 24;\nlet calendarHeaderId = 1;\n\n@Component({\n selector: 'onemrva-mat-datepicker-header',\n standalone: true,\n imports: [MatButtonModule, MatIconModule, TranslateModule, MatTooltip],\n templateUrl: 'onemrva-mat-datepicker-header.component.html',\n styleUrl: 'onemrva-mat-datepicker-header.component.scss',\n providers: [],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class OnemrvaMatDatepickerHeaderComponent<D> {\n private _intl = inject(MatDatepickerIntl);\n calendar = inject<MatCalendar<D>>(MatCalendar);\n private _dateAdapter = inject<DateAdapter<D>>(DateAdapter, {\n optional: true,\n });\n private _dateFormats = inject<MatDateFormats>(MAT_DATE_FORMATS, {\n optional: true,\n });\n\n setToday() {\n if (this._dateAdapter?.constructor.name.includes('Luxon')) {\n (this.calendar as unknown as MatCalendar<DateTime>)._goToDateInView(\n DateTime.now(),\n 'month',\n );\n } else {\n (this.calendar as unknown as MatCalendar<Date>)._goToDateInView(\n new Date(),\n 'month',\n );\n }\n }\n\n /** The display text for the current calendar view. */\n get periodButtonText(): string {\n if (\n this.calendar.activeDate !== null &&\n this.calendar.currentView == 'month' &&\n this._dateAdapter &&\n this._dateFormats\n ) {\n return this._dateAdapter\n .format(\n this.calendar.activeDate,\n this._dateFormats.display.monthYearLabel,\n )\n .toLocaleUpperCase();\n }\n if (this.calendar.currentView == 'year' && this._dateAdapter) {\n return this._dateAdapter.getYearName(this.calendar.activeDate);\n }\n\n return this._intl.formatYearRange(...this._formatMinAndMaxYearLabels());\n }\n\n /** The aria description for the current calendar view. */\n get periodButtonDescription(): string {\n if (\n this.calendar.currentView == 'month' &&\n this._dateFormats &&\n this._dateAdapter\n ) {\n return this._dateAdapter\n .format(\n this.calendar.activeDate,\n this._dateFormats.display.monthYearLabel,\n )\n .toLocaleUpperCase();\n }\n if (this.calendar.currentView == 'year' && this._dateAdapter) {\n return this._dateAdapter.getYearName(this.calendar.activeDate);\n }\n\n // Format a label for the window of years displayed in the multi-year calendar view. Use\n // `formatYearRangeLabel` because it is TTS friendly.\n return this._intl.formatYearRangeLabel(\n ...this._formatMinAndMaxYearLabels(),\n );\n }\n\n /** The `aria-label` for changing the calendar view. */\n get periodButtonLabel(): string {\n return this.calendar.currentView == 'month'\n ? this._intl.switchToMultiYearViewLabel\n : this._intl.switchToMonthViewLabel;\n }\n\n /** The label for the previous button. */\n get prevButtonLabel(): string {\n return {\n month: this._intl.prevMonthLabel,\n year: this._intl.prevYearLabel,\n 'multi-year': this._intl.prevMultiYearLabel,\n }[this.calendar.currentView];\n }\n\n /** The label for the next button. */\n get nextButtonLabel(): string {\n return {\n month: this._intl.nextMonthLabel,\n year: this._intl.nextYearLabel,\n 'multi-year': this._intl.nextMultiYearLabel,\n }[this.calendar.currentView];\n }\n\n /** Handles user clicks on the period label. */\n currentPeriodClicked(): void {\n this.calendar.currentView =\n this.calendar.currentView == 'month' ? 'multi-year' : 'month';\n }\n\n /** Handles user clicks on the previous button. */\n previousClicked(): void {\n this.calendar.activeDate =\n this.calendar.currentView == 'month'\n ? this._dateAdapter!.addCalendarMonths(this.calendar.activeDate, -1)\n : this._dateAdapter!.addCalendarYears(\n this.calendar.activeDate,\n this.calendar.currentView == 'year' ? -1 : -YEARS_PER_PAGE,\n );\n }\n\n /** Handles user clicks on the next button. */\n nextClicked(): void {\n this.calendar.activeDate =\n this.calendar.currentView == 'month'\n ? this._dateAdapter!.addCalendarMonths(this.calendar.activeDate, 1)\n : this._dateAdapter!.addCalendarYears(\n this.calendar.activeDate,\n this.calendar.currentView == 'year' ? 1 : YEARS_PER_PAGE,\n );\n }\n\n /** Whether the previous period button is enabled. */\n previousEnabled(): boolean {\n if (!this.calendar.minDate) {\n return true;\n }\n return (\n !this.calendar.minDate ||\n !this._isSameView(this.calendar.activeDate, this.calendar.minDate)\n );\n }\n\n /** Whether the next period button is enabled. */\n nextEnabled(): boolean {\n return (\n !this.calendar.maxDate ||\n !this._isSameView(this.calendar.activeDate, this.calendar.maxDate)\n );\n }\n\n /** Whether the two dates represent the same view in the current view mode (month or year). */\n private _isSameView(date1: D, date2: D): boolean {\n if (this.calendar.currentView == 'month') {\n return (\n this._dateAdapter!.getYear(date1) ==\n this._dateAdapter!.getYear(date2) &&\n this._dateAdapter!.getMonth(date1) == this._dateAdapter!.getMonth(date2)\n );\n }\n if (this.calendar.currentView == 'year') {\n return (\n this._dateAdapter!.getYear(date1) == this._dateAdapter!.getYear(date2)\n );\n }\n // Otherwise we are in 'multi-year' view.\n return isSameMultiYearView(\n this._dateAdapter!,\n date1,\n date2,\n this.calendar.minDate,\n this.calendar.maxDate,\n );\n }\n\n /**\n * Format two individual labels for the minimum year and maximum year available in the multi-year\n * calendar view. Returns an array of two strings where the first string is the formatted label\n * for the minimum year, and the second string is the formatted label for the maximum year.\n */\n private _formatMinAndMaxYearLabels(): [\n minYearLabel: string,\n maxYearLabel: string,\n ] {\n // The offset from the active year to the \"slot\" for the starting year is the\n // *actual* first rendered year in the multi-year view, and the last year is\n // just yearsPerPage - 1 away.\n const activeYear = this._dateAdapter!.getYear(this.calendar.activeDate);\n const minYearOfPage =\n activeYear -\n getActiveOffset(\n this._dateAdapter!,\n this.calendar.activeDate,\n this.calendar.minDate,\n this.calendar.maxDate,\n );\n const maxYearOfPage = minYearOfPage + YEARS_PER_PAGE - 1;\n const minYearLabel = this._dateAdapter!.getYearName(\n this._dateAdapter!.createDate(minYearOfPage, 0, 1),\n );\n const maxYearLabel = this._dateAdapter!.getYearName(\n this._dateAdapter!.createDate(maxYearOfPage, 0, 1),\n );\n\n return [minYearLabel, maxYearLabel];\n }\n\n private _id = `mat-calendar-header-${calendarHeaderId++}`;\n\n _periodButtonLabelId = `${this._id}-period-label`;\n}\n\nfunction isSameMultiYearView<D>(\n dateAdapter: DateAdapter<D>,\n date1: D,\n date2: D,\n minDate: D | null,\n maxDate: D | null,\n): boolean {\n const year1 = dateAdapter.getYear(date1);\n const year2 = dateAdapter.getYear(date2);\n const startingYear = getStartingYear(dateAdapter, minDate, maxDate);\n return (\n Math.floor((year1 - startingYear) / YEARS_PER_PAGE) ===\n Math.floor((year2 - startingYear) / YEARS_PER_PAGE)\n );\n}\n\n/**\n * We pick a \"starting\" year such that either the maximum year would be at the end\n * or the minimum year would be at the beginning of a page.\n */\nfunction getStartingYear<D>(\n dateAdapter: DateAdapter<D>,\n minDate: D | null,\n maxDate: D | null,\n): number {\n let startingYear = 0;\n if (maxDate) {\n const maxYear = dateAdapter.getYear(maxDate);\n startingYear = maxYear - YEARS_PER_PAGE + 1;\n } else if (minDate) {\n startingYear = dateAdapter.getYear(minDate);\n }\n return startingYear;\n}\n\n/**\n * When the multi-year view is first opened, the active year will be in view.\n * So we compute how many years are between the active year and the *slot* where our\n * \"startingYear\" will render when paged into view.\n */\nfunction getActiveOffset<D>(\n dateAdapter: DateAdapter<D>,\n activeDate: D,\n minDate: D | null,\n maxDate: D | null,\n): number {\n const activeYear = dateAdapter.getYear(activeDate);\n return euclideanModulo(\n activeYear - getStartingYear(dateAdapter, minDate, maxDate),\n YEARS_PER_PAGE,\n );\n}\n\n/** Gets remainder that is non-negative, even if first number is negative */\nfunction euclideanModulo(a: number, b: number): number {\n return ((a % b) + b) % b;\n}\n","<div class=\"mat-calendar-header\">\n <div class=\"mat-calendar-controls\">\n <button\n mat-button\n type=\"button\"\n class=\"mat-calendar-period-button\"\n (click)=\"currentPeriodClicked()\"\n [attr.aria-label]=\"periodButtonLabel\"\n [attr.aria-describedby]=\"_periodButtonLabelId\"\n aria-live=\"polite\"\n >\n <span aria-hidden=\"true\">{{ periodButtonText }}</span>\n <svg\n class=\"mat-calendar-arrow\"\n [class.mat-calendar-invert]=\"calendar.currentView !== 'month'\"\n viewBox=\"0 0 10 5\"\n focusable=\"false\"\n aria-hidden=\"true\"\n >\n <polygon points=\"0,0 5,5 10,0\" />\n </svg>\n </button>\n\n <div class=\"mat-calendar-spacer\"></div>\n\n <ng-content />\n\n <button\n mat-icon-button\n type=\"button\"\n [disabled]=\"!previousEnabled()\"\n (click)=\"previousClicked()\"\n [attr.aria-label]=\"prevButtonLabel\"\n [matTooltip]=\"'Previous Month' | translate\"\n >\n <mat-icon>keyboard_arrow_left</mat-icon>\n </button>\n\n <button\n mat-icon-button\n type=\"button\"\n (click)=\"setToday()\"\n [attr.aria-label]=\"'Today' | translate\"\n [matTooltip]=\"'Today' | translate\"\n >\n <mat-icon>today</mat-icon>\n </button>\n\n <button\n mat-icon-button\n type=\"button\"\n [disabled]=\"!nextEnabled()\"\n (click)=\"nextClicked()\"\n [attr.aria-label]=\"nextButtonLabel\"\n [matTooltip]=\"'Next Month' | translate\"\n >\n <mat-icon>keyboard_arrow_right</mat-icon>\n </button>\n </div>\n</div>\n","/*\n * Public API Surface of mat-file upload\n */\n\nexport * from './src/onemrva-mat-datepicker-header.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-datepicker-header.mjs","sources":["../../../../projects/onemrva/design-system/mat-datepicker-header/src/onemrva-mat-datepicker-header.component.ts","../../../../projects/onemrva/design-system/mat-datepicker-header/src/onemrva-mat-datepicker-header.component.html","../../../../projects/onemrva/design-system/mat-datepicker-header/index.ts","../../../../projects/onemrva/design-system/mat-datepicker-header/onemrvapublic-design-system-mat-datepicker-header.ts"],"sourcesContent":["import { Component, ChangeDetectionStrategy, inject } from '@angular/core';\nimport { MatButtonModule } from '@angular/material/button';\nimport {\n DateAdapter,\n MAT_DATE_FORMATS,\n MatDateFormats,\n} from '@angular/material/core';\nimport { MatCalendar, MatDatepickerIntl } from '@angular/material/datepicker';\nimport { MatIconModule } from '@angular/material/icon';\nimport { TranslatePipe } from '@ngx-translate/core';\nimport { MatTooltip } from '@angular/material/tooltip';\nimport { DateTime } from 'luxon';\n\nconst YEARS_PER_PAGE = 24;\nlet calendarHeaderId = 1;\n\n@Component({\n selector: 'onemrva-mat-datepicker-header',\n standalone: true,\n imports: [MatButtonModule, MatIconModule, TranslatePipe, MatTooltip],\n templateUrl: 'onemrva-mat-datepicker-header.component.html',\n styleUrl: 'onemrva-mat-datepicker-header.component.scss',\n providers: [],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class OnemrvaMatDatepickerHeaderComponent<D> {\n private _intl = inject(MatDatepickerIntl);\n calendar = inject<MatCalendar<D>>(MatCalendar);\n private _dateAdapter = inject<DateAdapter<D>>(DateAdapter, {\n optional: true,\n });\n private _dateFormats = inject<MatDateFormats>(MAT_DATE_FORMATS, {\n optional: true,\n });\n\n setToday() {\n if (this._dateAdapter?.constructor.name.includes('Luxon')) {\n (this.calendar as unknown as MatCalendar<DateTime>)._goToDateInView(\n DateTime.now(),\n 'month',\n );\n } else {\n (this.calendar as unknown as MatCalendar<Date>)._goToDateInView(\n new Date(),\n 'month',\n );\n }\n }\n\n /** The display text for the current calendar view. */\n get periodButtonText(): string {\n if (\n this.calendar.activeDate !== null &&\n this.calendar.currentView == 'month' &&\n this._dateAdapter &&\n this._dateFormats\n ) {\n return this._dateAdapter\n .format(\n this.calendar.activeDate,\n this._dateFormats.display.monthYearLabel,\n )\n .toLocaleUpperCase();\n }\n if (this.calendar.currentView == 'year' && this._dateAdapter) {\n return this._dateAdapter.getYearName(this.calendar.activeDate);\n }\n\n return this._intl.formatYearRange(...this._formatMinAndMaxYearLabels());\n }\n\n /** The aria description for the current calendar view. */\n get periodButtonDescription(): string {\n if (\n this.calendar.currentView == 'month' &&\n this._dateFormats &&\n this._dateAdapter\n ) {\n return this._dateAdapter\n .format(\n this.calendar.activeDate,\n this._dateFormats.display.monthYearLabel,\n )\n .toLocaleUpperCase();\n }\n if (this.calendar.currentView == 'year' && this._dateAdapter) {\n return this._dateAdapter.getYearName(this.calendar.activeDate);\n }\n\n // Format a label for the window of years displayed in the multi-year calendar view. Use\n // `formatYearRangeLabel` because it is TTS friendly.\n return this._intl.formatYearRangeLabel(\n ...this._formatMinAndMaxYearLabels(),\n );\n }\n\n /** The `aria-label` for changing the calendar view. */\n get periodButtonLabel(): string {\n return this.calendar.currentView == 'month'\n ? this._intl.switchToMultiYearViewLabel\n : this._intl.switchToMonthViewLabel;\n }\n\n /** The label for the previous button. */\n get prevButtonLabel(): string {\n return {\n month: this._intl.prevMonthLabel,\n year: this._intl.prevYearLabel,\n 'multi-year': this._intl.prevMultiYearLabel,\n }[this.calendar.currentView];\n }\n\n /** The label for the next button. */\n get nextButtonLabel(): string {\n return {\n month: this._intl.nextMonthLabel,\n year: this._intl.nextYearLabel,\n 'multi-year': this._intl.nextMultiYearLabel,\n }[this.calendar.currentView];\n }\n\n /** Handles user clicks on the period label. */\n currentPeriodClicked(): void {\n this.calendar.currentView =\n this.calendar.currentView == 'month' ? 'multi-year' : 'month';\n }\n\n /** Handles user clicks on the previous button. */\n previousClicked(): void {\n this.calendar.activeDate =\n this.calendar.currentView == 'month'\n ? this._dateAdapter!.addCalendarMonths(this.calendar.activeDate, -1)\n : this._dateAdapter!.addCalendarYears(\n this.calendar.activeDate,\n this.calendar.currentView == 'year' ? -1 : -YEARS_PER_PAGE,\n );\n }\n\n /** Handles user clicks on the next button. */\n nextClicked(): void {\n this.calendar.activeDate =\n this.calendar.currentView == 'month'\n ? this._dateAdapter!.addCalendarMonths(this.calendar.activeDate, 1)\n : this._dateAdapter!.addCalendarYears(\n this.calendar.activeDate,\n this.calendar.currentView == 'year' ? 1 : YEARS_PER_PAGE,\n );\n }\n\n /** Whether the previous period button is enabled. */\n previousEnabled(): boolean {\n if (!this.calendar.minDate) {\n return true;\n }\n return (\n !this.calendar.minDate ||\n !this._isSameView(this.calendar.activeDate, this.calendar.minDate)\n );\n }\n\n /** Whether the next period button is enabled. */\n nextEnabled(): boolean {\n return (\n !this.calendar.maxDate ||\n !this._isSameView(this.calendar.activeDate, this.calendar.maxDate)\n );\n }\n\n /** Whether the two dates represent the same view in the current view mode (month or year). */\n private _isSameView(date1: D, date2: D): boolean {\n if (this.calendar.currentView == 'month') {\n return (\n this._dateAdapter!.getYear(date1) ==\n this._dateAdapter!.getYear(date2) &&\n this._dateAdapter!.getMonth(date1) == this._dateAdapter!.getMonth(date2)\n );\n }\n if (this.calendar.currentView == 'year') {\n return (\n this._dateAdapter!.getYear(date1) == this._dateAdapter!.getYear(date2)\n );\n }\n // Otherwise we are in 'multi-year' view.\n return isSameMultiYearView(\n this._dateAdapter!,\n date1,\n date2,\n this.calendar.minDate,\n this.calendar.maxDate,\n );\n }\n\n /**\n * Format two individual labels for the minimum year and maximum year available in the multi-year\n * calendar view. Returns an array of two strings where the first string is the formatted label\n * for the minimum year, and the second string is the formatted label for the maximum year.\n */\n private _formatMinAndMaxYearLabels(): [\n minYearLabel: string,\n maxYearLabel: string,\n ] {\n // The offset from the active year to the \"slot\" for the starting year is the\n // *actual* first rendered year in the multi-year view, and the last year is\n // just yearsPerPage - 1 away.\n const activeYear = this._dateAdapter!.getYear(this.calendar.activeDate);\n const minYearOfPage =\n activeYear -\n getActiveOffset(\n this._dateAdapter!,\n this.calendar.activeDate,\n this.calendar.minDate,\n this.calendar.maxDate,\n );\n const maxYearOfPage = minYearOfPage + YEARS_PER_PAGE - 1;\n const minYearLabel = this._dateAdapter!.getYearName(\n this._dateAdapter!.createDate(minYearOfPage, 0, 1),\n );\n const maxYearLabel = this._dateAdapter!.getYearName(\n this._dateAdapter!.createDate(maxYearOfPage, 0, 1),\n );\n\n return [minYearLabel, maxYearLabel];\n }\n\n private _id = `mat-calendar-header-${calendarHeaderId++}`;\n\n _periodButtonLabelId = `${this._id}-period-label`;\n}\n\nfunction isSameMultiYearView<D>(\n dateAdapter: DateAdapter<D>,\n date1: D,\n date2: D,\n minDate: D | null,\n maxDate: D | null,\n): boolean {\n const year1 = dateAdapter.getYear(date1);\n const year2 = dateAdapter.getYear(date2);\n const startingYear = getStartingYear(dateAdapter, minDate, maxDate);\n return (\n Math.floor((year1 - startingYear) / YEARS_PER_PAGE) ===\n Math.floor((year2 - startingYear) / YEARS_PER_PAGE)\n );\n}\n\n/**\n * We pick a \"starting\" year such that either the maximum year would be at the end\n * or the minimum year would be at the beginning of a page.\n */\nfunction getStartingYear<D>(\n dateAdapter: DateAdapter<D>,\n minDate: D | null,\n maxDate: D | null,\n): number {\n let startingYear = 0;\n if (maxDate) {\n const maxYear = dateAdapter.getYear(maxDate);\n startingYear = maxYear - YEARS_PER_PAGE + 1;\n } else if (minDate) {\n startingYear = dateAdapter.getYear(minDate);\n }\n return startingYear;\n}\n\n/**\n * When the multi-year view is first opened, the active year will be in view.\n * So we compute how many years are between the active year and the *slot* where our\n * \"startingYear\" will render when paged into view.\n */\nfunction getActiveOffset<D>(\n dateAdapter: DateAdapter<D>,\n activeDate: D,\n minDate: D | null,\n maxDate: D | null,\n): number {\n const activeYear = dateAdapter.getYear(activeDate);\n return euclideanModulo(\n activeYear - getStartingYear(dateAdapter, minDate, maxDate),\n YEARS_PER_PAGE,\n );\n}\n\n/** Gets remainder that is non-negative, even if first number is negative */\nfunction euclideanModulo(a: number, b: number): number {\n return ((a % b) + b) % b;\n}\n","<div class=\"mat-calendar-header\">\n <div class=\"mat-calendar-controls\">\n <button\n mat-button\n type=\"button\"\n class=\"mat-calendar-period-button\"\n (click)=\"currentPeriodClicked()\"\n [attr.aria-label]=\"periodButtonLabel\"\n [attr.aria-describedby]=\"_periodButtonLabelId\"\n aria-live=\"polite\"\n >\n <span aria-hidden=\"true\">{{ periodButtonText }}</span>\n <svg\n class=\"mat-calendar-arrow\"\n [class.mat-calendar-invert]=\"calendar.currentView !== 'month'\"\n viewBox=\"0 0 10 5\"\n focusable=\"false\"\n aria-hidden=\"true\"\n >\n <polygon points=\"0,0 5,5 10,0\" />\n </svg>\n </button>\n\n <div class=\"mat-calendar-spacer\"></div>\n\n <ng-content />\n\n <button\n mat-icon-button\n type=\"button\"\n [disabled]=\"!previousEnabled()\"\n (click)=\"previousClicked()\"\n [attr.aria-label]=\"prevButtonLabel\"\n [matTooltip]=\"'Previous Month' | translate\"\n >\n <mat-icon>keyboard_arrow_left</mat-icon>\n </button>\n\n <button\n mat-icon-button\n type=\"button\"\n (click)=\"setToday()\"\n [attr.aria-label]=\"'Today' | translate\"\n [matTooltip]=\"'Today' | translate\"\n >\n <mat-icon>today</mat-icon>\n </button>\n\n <button\n mat-icon-button\n type=\"button\"\n [disabled]=\"!nextEnabled()\"\n (click)=\"nextClicked()\"\n [attr.aria-label]=\"nextButtonLabel\"\n [matTooltip]=\"'Next Month' | translate\"\n >\n <mat-icon>keyboard_arrow_right</mat-icon>\n </button>\n </div>\n</div>\n","/*\n * Public API Surface of mat-file upload\n */\n\nexport * from './src/onemrva-mat-datepicker-header.component';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -21,10 +21,10 @@ class OnemrvaMatEmptyRowComponent {
21
21
  ...(ngDevMode ? [{ debugName: "imageAlt" }] : /* istanbul ignore next */ []));
22
22
  this.clear = output();
23
23
  }
24
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.1", ngImport: i0, type: OnemrvaMatEmptyRowComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
25
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.1", type: OnemrvaMatEmptyRowComponent, isStandalone: true, selector: "onemrva-mat-empty-row", inputs: { buttonText: { classPropertyName: "buttonText", publicName: "buttonText", isSignal: true, isRequired: false, transformFunction: null }, text: { classPropertyName: "text", publicName: "text", isSignal: true, isRequired: false, transformFunction: null }, imageAlt: { classPropertyName: "imageAlt", publicName: "imageAlt", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { clear: "clear" }, ngImport: i0, template: "<span class=\"img\">\n <img [ngSrc]=\"noresultimg\" alt=\"{{ imageAlt() }}\" fill priority />\n</span>\n<span class=\"text\">\n {{ text() }}\n <ng-content />\n</span>\n\n@if (buttonText()) {\n <button mat-stroked-button (click)=\"clear.emit(undefined)\">\n {{ buttonText() }}\n </button>\n}\n", styles: ["onemrva-mat-empty-row{display:grid;grid-template-columns:repeat(6,1fr);grid-template-rows:repeat(2,1fr);justify-items:center;gap:15px}onemrva-mat-empty-row span.img{grid-area:1/1/3/2;display:block;min-width:80px;min-height:80px;height:10vw;width:10vw;margin:32px;position:relative;float:left}onemrva-mat-empty-row span.text{grid-area:1/2/2/7;justify-self:start;align-self:end}onemrva-mat-empty-row button{grid-area:2/2/3/7;justify-self:start;align-self:start}\n"], dependencies: [{ kind: "directive", type: NgOptimizedImage, selector: "img[ngSrc]", inputs: ["ngSrc", "ngSrcset", "sizes", "width", "height", "decoding", "loading", "priority", "loaderParams", "disableOptimizedSrcset", "fill", "placeholder", "placeholderConfig", "src", "srcset"] }, { kind: "component", type: MatButton, selector: " button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] ", inputs: ["matButton"], exportAs: ["matButton", "matAnchor"] }], encapsulation: i0.ViewEncapsulation.None }); }
24
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.4", ngImport: i0, type: OnemrvaMatEmptyRowComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
25
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.4", type: OnemrvaMatEmptyRowComponent, isStandalone: true, selector: "onemrva-mat-empty-row", inputs: { buttonText: { classPropertyName: "buttonText", publicName: "buttonText", isSignal: true, isRequired: false, transformFunction: null }, text: { classPropertyName: "text", publicName: "text", isSignal: true, isRequired: false, transformFunction: null }, imageAlt: { classPropertyName: "imageAlt", publicName: "imageAlt", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { clear: "clear" }, ngImport: i0, template: "<span class=\"img\">\n <img [ngSrc]=\"noresultimg\" alt=\"{{ imageAlt() }}\" fill priority />\n</span>\n<span class=\"text\">\n {{ text() }}\n <ng-content />\n</span>\n\n@if (buttonText()) {\n <button mat-stroked-button (click)=\"clear.emit(undefined)\">\n {{ buttonText() }}\n </button>\n}\n", styles: ["onemrva-mat-empty-row{display:grid;grid-template-columns:repeat(6,1fr);grid-template-rows:repeat(2,1fr);justify-items:center;gap:15px}onemrva-mat-empty-row span.img{grid-area:1/1/3/2;display:block;min-width:80px;min-height:80px;height:10vw;width:10vw;margin:32px;position:relative;float:left}onemrva-mat-empty-row span.text{grid-area:1/2/2/7;justify-self:start;align-self:end}onemrva-mat-empty-row button{grid-area:2/2/3/7;justify-self:start;align-self:start}\n"], dependencies: [{ kind: "directive", type: NgOptimizedImage, selector: "img[ngSrc]", inputs: ["ngSrc", "ngSrcset", "sizes", "width", "height", "decoding", "loading", "priority", "loaderParams", "disableOptimizedSrcset", "fill", "placeholder", "placeholderConfig", "src", "srcset"] }, { kind: "component", type: MatButton, selector: " button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] ", inputs: ["matButton"], exportAs: ["matButton", "matAnchor"] }], encapsulation: i0.ViewEncapsulation.None }); }
26
26
  }
27
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.1", ngImport: i0, type: OnemrvaMatEmptyRowComponent, decorators: [{
27
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.4", ngImport: i0, type: OnemrvaMatEmptyRowComponent, decorators: [{
28
28
  type: Component,
29
29
  args: [{ selector: 'onemrva-mat-empty-row', standalone: true, imports: [NgOptimizedImage, MatButton], encapsulation: ViewEncapsulation.None, template: "<span class=\"img\">\n <img [ngSrc]=\"noresultimg\" alt=\"{{ imageAlt() }}\" fill priority />\n</span>\n<span class=\"text\">\n {{ text() }}\n <ng-content />\n</span>\n\n@if (buttonText()) {\n <button mat-stroked-button (click)=\"clear.emit(undefined)\">\n {{ buttonText() }}\n </button>\n}\n", styles: ["onemrva-mat-empty-row{display:grid;grid-template-columns:repeat(6,1fr);grid-template-rows:repeat(2,1fr);justify-items:center;gap:15px}onemrva-mat-empty-row span.img{grid-area:1/1/3/2;display:block;min-width:80px;min-height:80px;height:10vw;width:10vw;margin:32px;position:relative;float:left}onemrva-mat-empty-row span.text{grid-area:1/2/2/7;justify-self:start;align-self:end}onemrva-mat-empty-row button{grid-area:2/2/3/7;justify-self:start;align-self:start}\n"] }]
30
30
  }], propDecorators: { buttonText: [{ type: i0.Input, args: [{ isSignal: true, alias: "buttonText", required: false }] }], text: [{ type: i0.Input, args: [{ isSignal: true, alias: "text", required: false }] }], imageAlt: [{ type: i0.Input, args: [{ isSignal: true, alias: "imageAlt", required: false }] }], clear: [{ type: i0.Output, args: ["clear"] }] } });
@@ -5,11 +5,10 @@ import * as i1 from '@angular/material/button';
5
5
  import { MatButtonModule } from '@angular/material/button';
6
6
  import { MatIcon, MatIconModule } from '@angular/material/icon';
7
7
  import { MatTooltip, MatTooltipModule } from '@angular/material/tooltip';
8
- import { TranslatePipe, TranslateService, TranslateModule } from '@ngx-translate/core';
8
+ import { TranslatePipe, TranslateService, TranslateDirective } from '@ngx-translate/core';
9
9
  import { MatProgressBar } from '@angular/material/progress-bar';
10
10
  import { MatDialog, MatDialogModule } from '@angular/material/dialog';
11
11
  import { BehaviorSubject, of, interval, take, map, catchError, tap, mergeMap, withLatestFrom, filter, throttle, takeWhile, switchMap, forkJoin, merge, Subject } from 'rxjs';
12
- import { trigger, state, style, transition, animate, keyframes } from '@angular/animations';
13
12
  import { ComponentStore } from '@ngrx/component-store';
14
13
  import { HttpEventType, HttpResponse } from '@angular/common/http';
15
14
  import { OnemRvaCDNMimeService } from '@onemrvapublic/design-system/shared';
@@ -125,10 +124,10 @@ class OnemrvaFilePanelComponent {
125
124
  }
126
125
  this.panelClick.emit(this.file());
127
126
  }
128
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.1", ngImport: i0, type: OnemrvaFilePanelComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
129
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.1", type: OnemrvaFilePanelComponent, isStandalone: true, selector: "file-panel", inputs: { id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: false, transformFunction: null }, dataCy: { classPropertyName: "dataCy", publicName: "dataCy", isSignal: true, isRequired: false, transformFunction: null }, file: { classPropertyName: "file", publicName: "file", isSignal: true, isRequired: true, transformFunction: null }, actions: { classPropertyName: "actions", publicName: "actions", isSignal: true, isRequired: false, transformFunction: null }, showProgress: { classPropertyName: "showProgress", publicName: "showProgress", isSignal: true, isRequired: false, transformFunction: null }, displayDate: { classPropertyName: "displayDate", publicName: "displayDate", isSignal: true, isRequired: false, transformFunction: null }, maxFileSize: { classPropertyName: "maxFileSize", publicName: "maxFileSize", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { panelClick: "panelClick" }, host: { attributes: { "tabindex": "0" }, listeners: { "click": "onPanelClick()", "keydown.enter": "onPanelClick()", "keydown.space": "$event.preventDefault(); onPanelClick()" }, properties: { "attr.id": "id()", "attr.data-cy": "dataCy()", "class.mat-accent": "isAccent()", "class.mat-error": "isError()", "class.mat-warn": "isWarn()", "class.mat-success": "isSuccess()", "class.mat-primary": "isPrimary()", "class.disabled": "disabled()", "class.no-hover": "isError() || isWarn()" } }, ngImport: i0, template: "<div class=\"file-panel-title\" [attr.data-cy]=\"dataCy()\">\n <span class=\"file-name show-icon\">\n {{ file().name }}\n </span>\n <div class=\"file-panel-title-action\">\n @if (finalActions().length > 0) {\n @for (action of finalActions(); track action.dataCy) {\n <button\n mat-icon-button\n color=\"primary\"\n [tabindex]=\"0\"\n [attr.data-cy]=\"action.dataCy\"\n matTooltip=\"{{ action.tooltipCode | translate }}\"\n [attr.aria-label]=\"action.ariaLabel || (action.ariaCode | translate)\"\n (click)=\"onActionClick($event, action)\"\n (keydown.enter)=\"onActionClick($event, action)\"\n (keydown.space)=\"onActionClick($event, action)\"\n >\n <mat-icon>{{ action.iconName }}</mat-icon>\n </button>\n }\n }\n </div>\n</div>\n\n<ng-content>\n @if (displayDate()) {\n <div class=\"fileInfos\">\n <span>{{ displayDate() }}</span>\n\n @if (file().size > 0) {\n <span class=\"float-right\">{{ size() }}</span>\n }\n </div>\n @if (showProgress() && file().enableProgressBar) {\n <mat-progress-bar\n data-cy=\"file-upload-progress\"\n mode=\"determinate\"\n aria-label=\"progress\"\n [value]=\"progress()\"\n />\n }\n } @else if (file().message) {\n <p class=\"message\">\n {{ file().message | translate: { limit: formattedSize(file().maxSize) } }}\n </p>\n }\n</ng-content>\n", styles: [":host{flex:1 1 100%;-webkit-user-select:none;user-select:none;border-radius:var(--border-radius);background-color:var(--mat-sys-primary-container);border:1px solid var(--mat-sys-primary-container);padding:var(--double-spacer);display:flex;flex-direction:column}:host .file-panel-title{font:var(--mat-sys-title-medium);display:flex;flex-direction:row;justify-content:space-between;width:100%}:host .file-panel-title-action{display:flex;align-items:center;max-height:1em}:host .file-panel-title-action button{color:#6e68ae}:host .file-panel-content{padding:0}:host .file-panel-content p:last-child{margin:0}:host .fileInfos{display:inline-block;width:100%;height:1.5rem;font:var(--mat-sys-body-medium)}:host .fileInfos .float-right{margin-right:var(--spacer)}:host .file-panel-title{font:var(--mat-sys-title-medium);margin-bottom:0;color:var(--mat-sys-on-primary-container);display:flex;align-items:center}:host .file-panel-title .file-name{display:flex;align-items:center;gap:0 var(--spacer)}:host .file-panel-title:before{margin-right:var(--spacer);margin-top:var(--quarter-spacer)}:host .file-panel-title .mat-progress-bar-fill:after{background:var(--mat-sys-primary)}:host .file-panel-title .mat-progress-bar-buffer{background-color:var(--mat-sys-primary-container)}:host.disabled{opacity:.4}:host:hover:not(.disabled):not(.no-hover){border:1px solid var(--Surface-Outline-Variant, #d7d5ed);cursor:pointer}:host:hover:not(.disabled):not(.no-hover) .file-name{text-decoration:underline}\n"], dependencies: [{ kind: "component", type: MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "component", type: MatProgressBar, selector: "mat-progress-bar", inputs: ["color", "value", "bufferValue", "mode"], outputs: ["animationEnd"], exportAs: ["matProgressBar"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i1.MatIconButton, selector: "button[mat-icon-button], a[mat-icon-button], button[matIconButton], a[matIconButton]", exportAs: ["matButton", "matAnchor"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
127
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.4", ngImport: i0, type: OnemrvaFilePanelComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
128
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.4", type: OnemrvaFilePanelComponent, isStandalone: true, selector: "file-panel", inputs: { id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: false, transformFunction: null }, dataCy: { classPropertyName: "dataCy", publicName: "dataCy", isSignal: true, isRequired: false, transformFunction: null }, file: { classPropertyName: "file", publicName: "file", isSignal: true, isRequired: true, transformFunction: null }, actions: { classPropertyName: "actions", publicName: "actions", isSignal: true, isRequired: false, transformFunction: null }, showProgress: { classPropertyName: "showProgress", publicName: "showProgress", isSignal: true, isRequired: false, transformFunction: null }, displayDate: { classPropertyName: "displayDate", publicName: "displayDate", isSignal: true, isRequired: false, transformFunction: null }, maxFileSize: { classPropertyName: "maxFileSize", publicName: "maxFileSize", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { panelClick: "panelClick" }, host: { attributes: { "tabindex": "0" }, listeners: { "click": "onPanelClick()", "keydown.enter": "onPanelClick()", "keydown.space": "$event.preventDefault(); onPanelClick()" }, properties: { "attr.id": "id()", "attr.data-cy": "dataCy()", "class.mat-accent": "isAccent()", "class.mat-error": "isError()", "class.mat-warn": "isWarn()", "class.mat-success": "isSuccess()", "class.mat-primary": "isPrimary()", "class.disabled": "disabled()", "class.no-hover": "isError() || isWarn()" } }, ngImport: i0, template: "<div class=\"file-panel-title\" [attr.data-cy]=\"dataCy()\">\n <span class=\"file-name show-icon\">\n {{ file().name }}\n </span>\n <div class=\"file-panel-title-action\">\n @if (finalActions().length > 0) {\n @for (action of finalActions(); track action.dataCy) {\n <button\n mat-icon-button\n color=\"primary\"\n [tabindex]=\"0\"\n [attr.data-cy]=\"action.dataCy\"\n matTooltip=\"{{ action.tooltipCode | translate }}\"\n [attr.aria-label]=\"action.ariaLabel || (action.ariaCode | translate)\"\n (click)=\"onActionClick($event, action)\"\n (keydown.enter)=\"onActionClick($event, action)\"\n (keydown.space)=\"onActionClick($event, action)\"\n >\n <mat-icon>{{ action.iconName }}</mat-icon>\n </button>\n }\n }\n </div>\n</div>\n\n<ng-content>\n @if (displayDate()) {\n <div class=\"fileInfos\">\n <span>{{ displayDate() }}</span>\n\n @if (file().size > 0) {\n <span class=\"float-right\">{{ size() }}</span>\n }\n </div>\n @if (showProgress() && file().enableProgressBar) {\n <mat-progress-bar\n data-cy=\"file-upload-progress\"\n mode=\"determinate\"\n aria-label=\"progress\"\n [value]=\"progress()\"\n />\n }\n } @else if (file().message) {\n <p class=\"message\">\n {{ file().message | translate: { limit: formattedSize(file().maxSize) } }}\n </p>\n }\n</ng-content>\n", styles: [":host{flex:1 1 100%;-webkit-user-select:none;user-select:none;border-radius:var(--border-radius);background-color:var(--mat-sys-primary-container);border:1px solid var(--mat-sys-primary-container);padding:var(--double-spacer);display:flex;flex-direction:column}:host .file-panel-title{font:var(--mat-sys-title-medium);display:flex;flex-direction:row;justify-content:space-between;width:100%}:host .file-panel-title-action{display:flex;align-items:center;max-height:1em}:host .file-panel-title-action button{color:#6e68ae}:host .file-panel-content{padding:0}:host .file-panel-content p:last-child{margin:0}:host .fileInfos{display:inline-block;width:100%;height:1.5rem;font:var(--mat-sys-body-medium)}:host .fileInfos .float-right{margin-right:var(--spacer)}:host .file-panel-title{font:var(--mat-sys-title-medium);margin-bottom:0;color:var(--mat-sys-on-primary-container);display:flex;align-items:center}:host .file-panel-title .file-name{display:flex;align-items:center;gap:0 var(--spacer)}:host .file-panel-title:before{margin-right:var(--spacer);margin-top:var(--quarter-spacer)}:host .file-panel-title .mat-progress-bar-fill:after{background:var(--mat-sys-primary)}:host .file-panel-title .mat-progress-bar-buffer{background-color:var(--mat-sys-primary-container)}:host.disabled{opacity:.4}:host:hover:not(.disabled):not(.no-hover){border:1px solid var(--Surface-Outline-Variant, #d7d5ed);cursor:pointer}:host:hover:not(.disabled):not(.no-hover) .file-name{text-decoration:underline}\n"], dependencies: [{ kind: "component", type: MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "component", type: MatProgressBar, selector: "mat-progress-bar", inputs: ["color", "value", "bufferValue", "mode"], outputs: ["animationEnd"], exportAs: ["matProgressBar"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i1.MatIconButton, selector: "button[mat-icon-button], a[mat-icon-button], button[matIconButton], a[matIconButton]", exportAs: ["matButton", "matAnchor"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
130
129
  }
131
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.1", ngImport: i0, type: OnemrvaFilePanelComponent, decorators: [{
130
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.4", ngImport: i0, type: OnemrvaFilePanelComponent, decorators: [{
132
131
  type: Component,
133
132
  args: [{ selector: 'file-panel', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
134
133
  MatIcon,
@@ -188,10 +187,10 @@ class OnemrvaMatFileUploadService {
188
187
  alert(`Missing download implementation for file ID ${id}`);
189
188
  return of(true);
190
189
  }
191
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.1", ngImport: i0, type: OnemrvaMatFileUploadService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
192
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "22.0.1", ngImport: i0, type: OnemrvaMatFileUploadService, providedIn: 'root' }); }
190
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.4", ngImport: i0, type: OnemrvaMatFileUploadService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
191
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "22.0.4", ngImport: i0, type: OnemrvaMatFileUploadService, providedIn: 'root' }); }
193
192
  }
194
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.1", ngImport: i0, type: OnemrvaMatFileUploadService, decorators: [{
193
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.4", ngImport: i0, type: OnemrvaMatFileUploadService, decorators: [{
195
194
  type: Injectable,
196
195
  args: [{
197
196
  providedIn: 'root',
@@ -497,10 +496,10 @@ class OnemrvaMatFileUploadStore extends ComponentStore {
497
496
  if (this.customValidationFn)
498
497
  this.fn = this.customValidationFn;
499
498
  }
500
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.1", ngImport: i0, type: OnemrvaMatFileUploadStore, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
501
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "22.0.1", ngImport: i0, type: OnemrvaMatFileUploadStore }); }
499
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.4", ngImport: i0, type: OnemrvaMatFileUploadStore, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
500
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "22.0.4", ngImport: i0, type: OnemrvaMatFileUploadStore }); }
502
501
  }
503
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.1", ngImport: i0, type: OnemrvaMatFileUploadStore, decorators: [{
502
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.4", ngImport: i0, type: OnemrvaMatFileUploadStore, decorators: [{
504
503
  type: Injectable
505
504
  }], ctorParameters: () => [] });
506
505
 
@@ -532,10 +531,10 @@ class DndDirective {
532
531
  this.fileDropped.emit(files);
533
532
  }
534
533
  }
535
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.1", ngImport: i0, type: DndDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
536
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.0.1", type: DndDirective, isStandalone: true, selector: "[appDnd]", outputs: { fileDropped: "fileDropped" }, host: { listeners: { "dragover": "onDragOver($event)", "dragleave": "onDragLeave($event)", "drop": "ondrop($event)" }, properties: { "class.fileover": "fileOver()" } }, ngImport: i0 }); }
534
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.4", ngImport: i0, type: DndDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
535
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.0.4", type: DndDirective, isStandalone: true, selector: "[appDnd]", outputs: { fileDropped: "fileDropped" }, host: { listeners: { "dragover": "onDragOver($event)", "dragleave": "onDragLeave($event)", "drop": "ondrop($event)" }, properties: { "class.fileover": "fileOver()" } }, ngImport: i0 }); }
537
536
  }
538
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.1", ngImport: i0, type: DndDirective, decorators: [{
537
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.4", ngImport: i0, type: DndDirective, decorators: [{
539
538
  type: Directive,
540
539
  args: [{
541
540
  selector: '[appDnd]',
@@ -679,56 +678,12 @@ class OnemrvaMatFileUploadComponent {
679
678
  this.fileDropRef().nativeElement.value = null;
680
679
  });
681
680
  }
682
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.1", ngImport: i0, type: OnemrvaMatFileUploadComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
683
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.1", type: OnemrvaMatFileUploadComponent, isStandalone: true, selector: "onemrva-mat-file-upload", inputs: { accept: { classPropertyName: "accept", publicName: "accept", isSignal: true, isRequired: false, transformFunction: null }, maxFileSize: { classPropertyName: "maxFileSize", publicName: "maxFileSize", isSignal: true, isRequired: false, transformFunction: null }, numberOfFiles: { classPropertyName: "numberOfFiles", publicName: "numberOfFiles", isSignal: true, isRequired: false, transformFunction: null }, maxTotalFileSize: { classPropertyName: "maxTotalFileSize", publicName: "maxTotalFileSize", isSignal: true, isRequired: false, transformFunction: null }, uploadOnDrop: { classPropertyName: "uploadOnDrop", publicName: "uploadOnDrop", isSignal: true, isRequired: false, transformFunction: null }, initialFiles: { classPropertyName: "initialFiles", publicName: "initialFiles", isSignal: true, isRequired: false, transformFunction: null }, errorMessage: { classPropertyName: "errorMessage", publicName: "errorMessage", isSignal: true, isRequired: false, transformFunction: null }, hideExtensions: { classPropertyName: "hideExtensions", publicName: "hideExtensions", isSignal: true, isRequired: false, transformFunction: null }, dropFilesHereTextTranslationKey: { classPropertyName: "dropFilesHereTextTranslationKey", publicName: "dropFilesHereTextTranslationKey", isSignal: true, isRequired: false, transformFunction: null }, filePanelTemplate: { classPropertyName: "filePanelTemplate", publicName: "filePanelTemplate", isSignal: true, isRequired: true, transformFunction: null }, dataCy: { classPropertyName: "dataCy", publicName: "dataCy", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "attr.data-cy": "dataCy()" } }, viewQueries: [{ propertyName: "fileDropRef", first: true, predicate: ["fileDropRef"], descendants: true, isSignal: true }], ngImport: i0, template: "@if (files$ | async; as files) {\n <div\n class=\"onemrva-mat-file-upload-drop-area\"\n appDnd\n (fileDropped)=\"onFileDropped($event)\"\n [class.filein]=\"files.length > 0\"\n >\n <input\n type=\"file\"\n #fileDropRef\n [attr.id]=\"inputId\"\n role=\"button\"\n multiple\n (change)=\"fileBrowseHandler($event)\"\n accept=\"{{ acceptString$ | async }}\"\n />\n @if (numberOfFiles() === 0 || numberOfFiles() > files.length) {\n <div class=\"download-outer\">\n <div class=\"download-icon\">\n <mat-icon class=\"onemrva-upload xxlarge\">download</mat-icon>\n </div>\n\n <div class=\"download-text\">\n {{ dropFilesHereTextTranslationKey() | translate }}\n {{ 'file.upload.or' | translate }}\n <label for=\"{{ inputId }}\" class=\"content\">\n {{ 'file.upload.browse.for.file' | translate }} </label\n ><br />\n @if (maxFileSize() > 0) {\n <span class=\"restrictions\">\n {{ 'file.upload.maximum' | translate }}\n {{ maxFileSizeFormatted }}\n\n @if (accept().length > 0) {\n <span>{{ '| ' }}</span>\n }\n\n {{ acceptString$ | async }}\n </span>\n }\n </div>\n </div>\n }\n <ul class=\"files-list\">\n @for (file of files; track file.id) {\n <li>\n <ng-container\n *ngTemplateOutlet=\"\n filePanelTemplate();\n context: { file, $implicit: file }\n \"\n />\n </li>\n }\n </ul>\n </div>\n @if (fileUploadErrorMessage$ | async; as fileUploadErrorMessage) {\n <mat-error>\n {{\n fileUploadErrorMessage\n | translate\n : {\n limit: numberOfFiles(),\n maxTotalFileSize: formattedSize(maxTotalFileSize()),\n }\n }}\n @if (errorMessage() !== '') {\n [ {{ errorMessage() }} ]\n }\n </mat-error>\n }\n}\n", styles: [":host .mat-mdc-form-field-error{margin-bottom:var(--spacer);padding:var(--spacer) 1em;background-color:var(--mat-sys-error-container);color:var(--mat-sys-on-error-container);border-bottom:1px solid var(--mat-sys-error);display:flex;line-height:1.125rem}:host .mat-mdc-form-field-error:before{font-family:var(--icon-font);content:\"\\e000\";float:left;font-size:1rem;font-variation-settings:\"FILL\" 1;margin-right:var(--spacer);vertical-align:baseline;flex:0 0 var(--double-spacer)}:host ul{list-style:none;margin-block-start:0;margin-block-end:0;margin-inline-start:0;margin-inline-end:0;padding-inline-start:0}:host ul li{width:100%}:host .onemrva-mat-file-upload-drop-area{padding:var(--triple-spacer);text-align:left;border:dashed 2px var(--mat-sys-outline);position:relative;border-radius:var(--border-radius);transition:background-color .3s ease-in-out,border .3s ease-in-out}:host .onemrva-mat-file-upload-drop-area mat-icon{color:var(--mat-sys-primary)}:host .onemrva-mat-file-upload-drop-area.fu-error{border:dashed 2px var(--mat-sys-error)}:host .onemrva-mat-file-upload-drop-area input[type=file]{display:none}:host .onemrva-mat-file-upload-drop-area .download-outer{display:flex;width:100%;margin:0}:host .onemrva-mat-file-upload-drop-area .download-outer .download-icon{padding-right:var(--double-spacer)}:host .onemrva-mat-file-upload-drop-area .download-outer .download-text label{display:block;color:var(--mat-sys-primary);text-decoration:underline;cursor:pointer;font-weight:700}:host .onemrva-mat-file-upload-drop-area .download-outer .download-text .restrictions{display:block;color:var(--mat-sys-on-surface-variant);margin-bottom:0}:host .onemrva-mat-file-upload-drop-area.filein .download-outer{margin:0 0 var(--triple-spacer) 0}:host .onemrva-mat-file-upload-drop-area.fileover{background:var(--mat-sys-primary-container);border:2px dashed var(--mat-sys-primary)}:host .onemrva-mat-file-upload-drop-area .files-list{display:flex;flex-flow:row wrap;gap:var(--double-spacer)}\n"], dependencies: [{ kind: "component", type: MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "directive", type: DndDirective, selector: "[appDnd]", outputs: ["fileDropped"] }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: TranslatePipe, name: "translate" }], animations: [
684
- trigger('inOutAnimation', [
685
- state('in', style({ opacity: 1 })),
686
- transition(':enter', [
687
- animate(300, keyframes([
688
- style({ opacity: 0, offset: 0 }),
689
- style({ opacity: 0.25, offset: 0.25 }),
690
- style({ opacity: 0.5, offset: 0.5 }),
691
- style({ opacity: 0.75, offset: 0.75 }),
692
- style({ opacity: 1, offset: 1 }),
693
- ])),
694
- ]),
695
- transition(':leave', [
696
- animate(300, keyframes([
697
- style({ opacity: 1, offset: 0 }),
698
- style({ opacity: 0.75, offset: 0.25 }),
699
- style({ opacity: 0.5, offset: 0.5 }),
700
- style({ opacity: 0.25, offset: 0.75 }),
701
- style({ opacity: 0, offset: 1 }),
702
- ])),
703
- ]),
704
- ]),
705
- ] }); }
681
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.4", ngImport: i0, type: OnemrvaMatFileUploadComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
682
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.4", type: OnemrvaMatFileUploadComponent, isStandalone: true, selector: "onemrva-mat-file-upload", inputs: { accept: { classPropertyName: "accept", publicName: "accept", isSignal: true, isRequired: false, transformFunction: null }, maxFileSize: { classPropertyName: "maxFileSize", publicName: "maxFileSize", isSignal: true, isRequired: false, transformFunction: null }, numberOfFiles: { classPropertyName: "numberOfFiles", publicName: "numberOfFiles", isSignal: true, isRequired: false, transformFunction: null }, maxTotalFileSize: { classPropertyName: "maxTotalFileSize", publicName: "maxTotalFileSize", isSignal: true, isRequired: false, transformFunction: null }, uploadOnDrop: { classPropertyName: "uploadOnDrop", publicName: "uploadOnDrop", isSignal: true, isRequired: false, transformFunction: null }, initialFiles: { classPropertyName: "initialFiles", publicName: "initialFiles", isSignal: true, isRequired: false, transformFunction: null }, errorMessage: { classPropertyName: "errorMessage", publicName: "errorMessage", isSignal: true, isRequired: false, transformFunction: null }, hideExtensions: { classPropertyName: "hideExtensions", publicName: "hideExtensions", isSignal: true, isRequired: false, transformFunction: null }, dropFilesHereTextTranslationKey: { classPropertyName: "dropFilesHereTextTranslationKey", publicName: "dropFilesHereTextTranslationKey", isSignal: true, isRequired: false, transformFunction: null }, filePanelTemplate: { classPropertyName: "filePanelTemplate", publicName: "filePanelTemplate", isSignal: true, isRequired: true, transformFunction: null }, dataCy: { classPropertyName: "dataCy", publicName: "dataCy", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "attr.data-cy": "dataCy()" } }, viewQueries: [{ propertyName: "fileDropRef", first: true, predicate: ["fileDropRef"], descendants: true, isSignal: true }], ngImport: i0, template: "@if (files$ | async; as files) {\n <div\n class=\"onemrva-mat-file-upload-drop-area\"\n appDnd\n (fileDropped)=\"onFileDropped($event)\"\n [class.filein]=\"files.length > 0\"\n >\n <input\n type=\"file\"\n #fileDropRef\n [attr.id]=\"inputId\"\n role=\"button\"\n multiple\n (change)=\"fileBrowseHandler($event)\"\n accept=\"{{ acceptString$ | async }}\"\n />\n @if (numberOfFiles() === 0 || numberOfFiles() > files.length) {\n <div class=\"download-outer\">\n <div class=\"download-icon\">\n <mat-icon class=\"onemrva-upload xxlarge\">download</mat-icon>\n </div>\n\n <div class=\"download-text\">\n {{ dropFilesHereTextTranslationKey() | translate }}\n {{ 'file.upload.or' | translate }}\n <label for=\"{{ inputId }}\" class=\"content\">\n {{ 'file.upload.browse.for.file' | translate }} </label\n ><br />\n @if (maxFileSize() > 0) {\n <span class=\"restrictions\">\n {{ 'file.upload.maximum' | translate }}\n {{ maxFileSizeFormatted }}\n\n @if (accept().length > 0) {\n <span>{{ '| ' }}</span>\n }\n\n {{ acceptString$ | async }}\n </span>\n }\n </div>\n </div>\n }\n <ul class=\"files-list\">\n @for (file of files; track file.id) {\n <li>\n <ng-container\n *ngTemplateOutlet=\"\n filePanelTemplate();\n context: { file, $implicit: file }\n \"\n />\n </li>\n }\n </ul>\n </div>\n @if (fileUploadErrorMessage$ | async; as fileUploadErrorMessage) {\n <mat-error>\n {{\n fileUploadErrorMessage\n | translate\n : {\n limit: numberOfFiles(),\n maxTotalFileSize: formattedSize(maxTotalFileSize()),\n }\n }}\n @if (errorMessage() !== '') {\n [ {{ errorMessage() }} ]\n }\n </mat-error>\n }\n}\n", styles: [":host .mat-mdc-form-field-error{margin-bottom:var(--spacer);padding:var(--spacer) 1em;background-color:var(--mat-sys-error-container);color:var(--mat-sys-on-error-container);border-bottom:1px solid var(--mat-sys-error);display:flex;line-height:1.125rem}:host .mat-mdc-form-field-error:before{font-family:var(--icon-font);content:\"\\e000\";float:left;font-size:1rem;font-variation-settings:\"FILL\" 1;margin-right:var(--spacer);vertical-align:baseline;flex:0 0 var(--double-spacer)}:host ul{list-style:none;margin-block-start:0;margin-block-end:0;margin-inline-start:0;margin-inline-end:0;padding-inline-start:0}:host ul li{width:100%}:host .onemrva-mat-file-upload-drop-area{padding:var(--triple-spacer);text-align:left;border:dashed 2px var(--mat-sys-outline);position:relative;border-radius:var(--border-radius);transition:background-color .3s ease-in-out,border .3s ease-in-out}:host .onemrva-mat-file-upload-drop-area mat-icon{color:var(--mat-sys-primary)}:host .onemrva-mat-file-upload-drop-area.fu-error{border:dashed 2px var(--mat-sys-error)}:host .onemrva-mat-file-upload-drop-area input[type=file]{display:none}:host .onemrva-mat-file-upload-drop-area .download-outer{display:flex;width:100%;margin:0}:host .onemrva-mat-file-upload-drop-area .download-outer .download-icon{padding-right:var(--double-spacer)}:host .onemrva-mat-file-upload-drop-area .download-outer .download-text label{display:block;color:var(--mat-sys-primary);text-decoration:underline;cursor:pointer;font-weight:700}:host .onemrva-mat-file-upload-drop-area .download-outer .download-text .restrictions{display:block;color:var(--mat-sys-on-surface-variant);margin-bottom:0}:host .onemrva-mat-file-upload-drop-area.filein .download-outer{margin:0 0 var(--triple-spacer) 0}:host .onemrva-mat-file-upload-drop-area.fileover{background:var(--mat-sys-primary-container);border:2px dashed var(--mat-sys-primary)}:host .onemrva-mat-file-upload-drop-area .files-list{display:flex;flex-flow:row wrap;gap:var(--double-spacer)}\n"], dependencies: [{ kind: "component", type: MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "directive", type: DndDirective, selector: "[appDnd]", outputs: ["fileDropped"] }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: TranslatePipe, name: "translate" }] }); }
706
683
  }
707
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.1", ngImport: i0, type: OnemrvaMatFileUploadComponent, decorators: [{
684
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.4", ngImport: i0, type: OnemrvaMatFileUploadComponent, decorators: [{
708
685
  type: Component,
709
- args: [{ selector: 'onemrva-mat-file-upload', standalone: true, animations: [
710
- trigger('inOutAnimation', [
711
- state('in', style({ opacity: 1 })),
712
- transition(':enter', [
713
- animate(300, keyframes([
714
- style({ opacity: 0, offset: 0 }),
715
- style({ opacity: 0.25, offset: 0.25 }),
716
- style({ opacity: 0.5, offset: 0.5 }),
717
- style({ opacity: 0.75, offset: 0.75 }),
718
- style({ opacity: 1, offset: 1 }),
719
- ])),
720
- ]),
721
- transition(':leave', [
722
- animate(300, keyframes([
723
- style({ opacity: 1, offset: 0 }),
724
- style({ opacity: 0.75, offset: 0.25 }),
725
- style({ opacity: 0.5, offset: 0.5 }),
726
- style({ opacity: 0.25, offset: 0.75 }),
727
- style({ opacity: 0, offset: 1 }),
728
- ])),
729
- ]),
730
- ]),
731
- ], imports: [
686
+ args: [{ selector: 'onemrva-mat-file-upload', standalone: true, imports: [
732
687
  AsyncPipe,
733
688
  MatIcon,
734
689
  TranslatePipe,
@@ -746,27 +701,27 @@ const components = [
746
701
  ];
747
702
 
748
703
  class OnemrvaMatFileUploadModule {
749
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.1", ngImport: i0, type: OnemrvaMatFileUploadModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
750
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "22.0.1", ngImport: i0, type: OnemrvaMatFileUploadModule, imports: [OnemrvaFilePanelComponent, OnemrvaMatFileUploadComponent, DndDirective,
704
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.4", ngImport: i0, type: OnemrvaMatFileUploadModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
705
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "22.0.4", ngImport: i0, type: OnemrvaMatFileUploadModule, imports: [OnemrvaFilePanelComponent, OnemrvaMatFileUploadComponent, DndDirective,
751
706
  CommonModule,
752
707
  ReactiveFormsModule,
753
708
  MatButtonModule,
754
709
  MatTooltipModule,
755
710
  MatDialogModule,
756
- TranslateModule,
711
+ TranslatePipe,
712
+ TranslateDirective,
757
713
  MatIconModule,
758
714
  MatInputModule], exports: [OnemrvaFilePanelComponent, OnemrvaMatFileUploadComponent, DndDirective] }); }
759
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "22.0.1", ngImport: i0, type: OnemrvaMatFileUploadModule, providers: [OnemrvaMatFileUploadStore, OnemrvaMatFileUploadService], imports: [components,
715
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "22.0.4", ngImport: i0, type: OnemrvaMatFileUploadModule, providers: [OnemrvaMatFileUploadStore, OnemrvaMatFileUploadService], imports: [components,
760
716
  CommonModule,
761
717
  ReactiveFormsModule,
762
718
  MatButtonModule,
763
719
  MatTooltipModule,
764
720
  MatDialogModule,
765
- TranslateModule,
766
721
  MatIconModule,
767
722
  MatInputModule] }); }
768
723
  }
769
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.1", ngImport: i0, type: OnemrvaMatFileUploadModule, decorators: [{
724
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.4", ngImport: i0, type: OnemrvaMatFileUploadModule, decorators: [{
770
725
  type: NgModule,
771
726
  args: [{
772
727
  declarations: [],
@@ -778,7 +733,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.1", ngImpor
778
733
  MatButtonModule,
779
734
  MatTooltipModule,
780
735
  MatDialogModule,
781
- TranslateModule,
736
+ TranslatePipe,
737
+ TranslateDirective,
782
738
  MatIconModule,
783
739
  MatInputModule,
784
740
  ],