@dsivd/prestations-ng 15.4.2-BETA1 → 15.4.3-beta1

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.
package/CHANGELOG.md CHANGED
@@ -25,13 +25,28 @@ A change is considered **breaking** if you have to change your code or update yo
25
25
  - adding a new constructor argument in one of our service is OK, if you just have to update your constructor's signature and your call to `super(...)`
26
26
 
27
27
  ---
28
+ ## [unreleased]
29
+
30
+ ### Added
31
+
32
+ - [sdk-dictionary.service.ts](projects/prestations-ng/src/sdk-dictionary/sdk-dictionary.service.ts)
33
+ - added browser language detection. When browser language is not managed, default language is used.
34
+ - added `setDefaultLanguageCode(code: string): void` to change default language
35
+
36
+ ### Fixed
37
+
38
+ - [foehn-input-email.component.ts](projects/prestations-ng/src/foehn-input/foehn-input-email.component.ts)
39
+ - hiding default help-modal is now possible by setting `helpModal` attribute to `null` such as `[helpModal]="null"`
28
40
 
29
41
  ## [15.4.2]
30
42
 
31
43
  ### Added
32
-
33
44
  - [foehn-autocomplete.component.ts](projects/prestations-ng/src/foehn-autocomplete/foehn-autocomplete.component.ts)
34
45
  - add `@Input() elementSuggestionLabel: any` (fallback: elementLabel) to customize suggestion list item with some HTML
46
+
47
+ ### fixed
48
+ - [default-dictionary.ts](projects/prestations-ng/src/sdk-dictionary/default-dictionary.ts)
49
+ - fixed label for `foehn-textarea.chars-remaining.zero` (missing plurals)
35
50
 
36
51
  ## [15.4.1]
37
52
 
@@ -54,10 +54,10 @@ export class FoehnAgendaNavigationComponent {
54
54
  }
55
55
  }
56
56
  FoehnAgendaNavigationComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: FoehnAgendaNavigationComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
57
- FoehnAgendaNavigationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: FoehnAgendaNavigationComponent, selector: "foehn-agenda-navigation", inputs: { id: "id", calendar: "calendar", isSrOnly: "isSrOnly", minDate: "minDate", maxDate: "maxDate" }, outputs: { paginationChange: "paginationChange" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"row mb-3\" *ngIf=\"!!calendar\">\n <div class=\"col-12\">\n <nav\n class=\"vd-pagination calendar-week-navigation\"\n [attr.id]=\"id\"\n [attr.aria-label]=\"\n 'foehn-agenda-navigation.nav.aria-label' | fromDictionary\n \"\n >\n <ul class=\"vd-pagination__list\">\n <li\n class=\"vd-pagination__item vd-pagination__item--previous col-4\"\n *ngIf=\"!!calendar.previousWeek\"\n >\n <button\n [id]=\"id + 'ButtonPreviousWeek'\"\n class=\"btn-link vd-pagination__link vd-pagination__link-reset\"\n (click)=\"paginate(calendar.previousWeek)\"\n type=\"button\"\n >\n <span class=\"d-flex align-items-center\">\n <foehn-icon-chevron-left\n class=\"vd-pagination__title\"\n [title]=\"\n 'foehn-agenda-navigation.previous-week'\n | fromDictionary\n \"\n aria-hidden=\"true\"\n ></foehn-icon-chevron-left>\n <span\n class=\"vd-pagination__title ml-2 d-xs-none d-sm-block\"\n aria-hidden=\"true\"\n >\n {{\n 'foehn-agenda-navigation.previous-week'\n | fromDictionary\n }}\n </span>\n <span\n [id]=\"id + 'NavigationPreviousSrOnly'\"\n class=\"sr-only\"\n >\n {{\n 'foehn-agenda-navigation.previous-week-sr-only'\n | fromDictionary\n : {\n previousWeek:\n calendar.previousWeek\n .label\n }\n }}\n </span>\n </span>\n </button>\n </li>\n <li\n class=\"vd-pagination__item vd-pagination__item--previous col-4\"\n *ngIf=\"!calendar.previousWeek && !isSrOnly\"\n >\n <div\n [id]=\"id + 'NavigationPreviousDisabled'\"\n class=\"d-flex align-items-center link-week-disabled\"\n >\n <foehn-icon-chevron-left\n class=\"vd-pagination__title\"\n [title]=\"\n 'foehn-agenda-navigation.previous-week'\n | fromDictionary\n \"\n ></foehn-icon-chevron-left>\n <span\n class=\"vd-pagination__title ml-2 d-xs-none d-sm-block\"\n >\n {{\n 'foehn-agenda-navigation.previous-week'\n | fromDictionary\n }}\n </span>\n </div>\n </li>\n\n <li\n class=\"vd-pagination__item d-flex justify-content-center col-4\"\n *ngIf=\"!isSrOnly\"\n >\n <foehn-date-picker-button\n [model]=\"currentDay\"\n [minDate]=\"minDate\"\n [maxDate]=\"maxDate\"\n [selectedDateSrOnlyLabelKey]=\"\n 'foehn-agenda-navigation.date-picker-button.screen-reader.selected-date'\n \"\n (userInput)=\"datePickerUserInput($event)\"\n ></foehn-date-picker-button>\n </li>\n\n <li\n class=\"vd-pagination__item vd-pagination__item--next col-4 d-flex justify-content-end\"\n *ngIf=\"!!calendar.nextWeek\"\n >\n <button\n [id]=\"id + 'ButtonNextWeek'\"\n class=\"btn-link vd-pagination__link vd-pagination__link-reset\"\n (click)=\"paginate(calendar.nextWeek)\"\n type=\"button\"\n >\n <span class=\"d-flex align-items-center\">\n <span\n aria-hidden=\"true\"\n class=\"vd-pagination__title d-xs-none d-sm-block\"\n >\n {{\n 'foehn-agenda-navigation.next-week'\n | fromDictionary\n }}\n </span>\n <span\n [id]=\"id + 'NavigationNextSrOnly'\"\n class=\"sr-only\"\n >\n {{\n 'foehn-agenda-navigation.next-week-sr-only'\n | fromDictionary\n : {\n nextWeek:\n calendar.nextWeek.label\n }\n }}\n </span>\n <foehn-icon-chevron-right\n class=\"vd-pagination__title ml-2\"\n [title]=\"\n 'foehn-agenda-navigation.next-week'\n | fromDictionary\n \"\n aria-hidden=\"true\"\n ></foehn-icon-chevron-right>\n </span>\n </button>\n </li>\n <li\n class=\"vd-pagination__item vd-pagination__item--next col-4 d-flex justify-content-end\"\n *ngIf=\"!calendar.nextWeek && !isSrOnly\"\n >\n <div\n [id]=\"id + 'NavigationNextDisabled'\"\n class=\"d-flex align-items-center link-week-disabled\"\n >\n <span class=\"vd-pagination__title d-xs-none d-sm-block\">\n {{\n 'foehn-agenda-navigation.next-week'\n | fromDictionary\n }}\n </span>\n <foehn-icon-chevron-right\n class=\"vd-pagination__title ml-2\"\n [title]=\"\n 'foehn-agenda-navigation.next-week'\n | fromDictionary\n \"\n ></foehn-icon-chevron-right>\n </div>\n </li>\n </ul>\n </nav>\n </div>\n</div>\n", styles: [".calendar-week-navigation{margin-bottom:0}.calendar-week-navigation li.vd-pagination__item{margin-top:0}.calendar-week-navigation span.vd-pagination__title{font-size:1em;line-height:1.2em;color:var(--gray-dark)}.calendar-week-navigation foehn-icon-chevron-right.vd-pagination__title,.calendar-week-navigation foehn-icon-chevron-left.vd-pagination__title{font-size:1.5em;color:var(--gray-dark)}.calendar-week-navigation .link-week-disabled .vd-pagination__title{color:var(--vd-neutral-light);cursor:not-allowed}.calendar-week-navigation .vd-pagination__link-reset{background:none;border:none;font-weight:inherit;-webkit-text-decoration-line:none;text-decoration-line:none;text-align:inherit;cursor:pointer}.calendar-week-navigation .vd-pagination__link-reset:focus{background-color:var(--vd-focus)}nav ul{margin-bottom:0}\n"], components: [{ type: i1.FoehnIconChevronLeftComponent, selector: "foehn-icon-chevron-left" }, { type: i2.FoehnDatePickerButtonComponent, selector: "foehn-date-picker-button", inputs: ["id", "name", "minYear", "maxYear", "minDate", "maxDate", "displaySelectedDate", "selectedDateSrOnlyLabelKey", "model"], outputs: ["modelChange", "userInput"] }, { type: i3.FoehnIconChevronRightComponent, selector: "foehn-icon-chevron-right" }], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "fromDictionary": i5.SdkDictionaryPipe } });
57
+ FoehnAgendaNavigationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: FoehnAgendaNavigationComponent, selector: "foehn-agenda-navigation", inputs: { id: "id", calendar: "calendar", isSrOnly: "isSrOnly", minDate: "minDate", maxDate: "maxDate" }, outputs: { paginationChange: "paginationChange" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"row mb-3\" *ngIf=\"!!calendar\">\n <div class=\"col-12\">\n <nav\n class=\"vd-pagination calendar-week-navigation\"\n [attr.id]=\"id\"\n [attr.aria-label]=\"\n 'foehn-agenda-navigation.nav.aria-label' | fromDictionary\n \"\n >\n <ul class=\"vd-pagination__list\">\n <li\n class=\"vd-pagination__item vd-pagination__item--previous col-4\"\n *ngIf=\"!!calendar.previousWeek\"\n >\n <button\n [id]=\"id + 'ButtonPreviousWeek'\"\n class=\"btn-link vd-pagination__link vd-pagination__link-reset\"\n (click)=\"paginate(calendar.previousWeek)\"\n type=\"button\"\n >\n <span class=\"d-flex align-items-center\">\n <foehn-icon-chevron-left\n class=\"vd-pagination__title\"\n [title]=\"\n 'foehn-agenda-navigation.previous-week'\n | fromDictionary\n \"\n aria-hidden=\"true\"\n ></foehn-icon-chevron-left>\n <span\n class=\"vd-pagination__title ml-2 d-xs-none d-sm-block\"\n aria-hidden=\"true\"\n >\n {{\n 'foehn-agenda-navigation.previous-week'\n | fromDictionary\n }}\n </span>\n <span\n [id]=\"id + 'NavigationPreviousSrOnly'\"\n class=\"sr-only\"\n >\n {{\n 'foehn-agenda-navigation.previous-week-sr-only'\n | fromDictionary\n : {\n previousWeek:\n calendar.previousWeek\n .label\n }\n }}\n </span>\n </span>\n </button>\n </li>\n <li\n class=\"vd-pagination__item vd-pagination__item--previous col-4\"\n *ngIf=\"!calendar.previousWeek && !isSrOnly\"\n >\n <div\n [id]=\"id + 'NavigationPreviousDisabled'\"\n class=\"d-flex align-items-center link-week-disabled\"\n >\n <foehn-icon-chevron-left\n class=\"vd-pagination__title\"\n [title]=\"\n 'foehn-agenda-navigation.previous-week'\n | fromDictionary\n \"\n ></foehn-icon-chevron-left>\n <span\n class=\"vd-pagination__title ml-2 d-xs-none d-sm-block\"\n >\n {{\n 'foehn-agenda-navigation.previous-week'\n | fromDictionary\n }}\n </span>\n </div>\n </li>\n\n <li\n class=\"vd-pagination__item d-flex justify-content-center col-4\"\n *ngIf=\"!isSrOnly\"\n >\n <foehn-date-picker-button\n [model]=\"currentDay\"\n [minDate]=\"minDate\"\n [maxDate]=\"maxDate\"\n [selectedDateSrOnlyLabelKey]=\"\n 'foehn-agenda-navigation.date-picker-button.screen-reader.selected-date'\n \"\n (userInput)=\"datePickerUserInput($event)\"\n ></foehn-date-picker-button>\n </li>\n\n <li\n class=\"vd-pagination__item vd-pagination__item--next col-4 d-flex justify-content-end\"\n *ngIf=\"!!calendar.nextWeek\"\n >\n <button\n [id]=\"id + 'ButtonNextWeek'\"\n class=\"btn-link vd-pagination__link vd-pagination__link-reset\"\n (click)=\"paginate(calendar.nextWeek)\"\n type=\"button\"\n >\n <span class=\"d-flex align-items-center\">\n <span\n aria-hidden=\"true\"\n class=\"vd-pagination__title d-xs-none d-sm-block\"\n >\n {{\n 'foehn-agenda-navigation.next-week'\n | fromDictionary\n }}\n </span>\n <span\n [id]=\"id + 'NavigationNextSrOnly'\"\n class=\"sr-only\"\n >\n {{\n 'foehn-agenda-navigation.next-week-sr-only'\n | fromDictionary\n : {\n nextWeek:\n calendar.nextWeek.label\n }\n }}\n </span>\n <foehn-icon-chevron-right\n class=\"vd-pagination__title ml-2\"\n [title]=\"\n 'foehn-agenda-navigation.next-week'\n | fromDictionary\n \"\n aria-hidden=\"true\"\n ></foehn-icon-chevron-right>\n </span>\n </button>\n </li>\n <li\n class=\"vd-pagination__item vd-pagination__item--next col-4 d-flex justify-content-end\"\n *ngIf=\"!calendar.nextWeek && !isSrOnly\"\n >\n <div\n [id]=\"id + 'NavigationNextDisabled'\"\n class=\"d-flex align-items-center link-week-disabled\"\n >\n <span class=\"vd-pagination__title d-xs-none d-sm-block\">\n {{\n 'foehn-agenda-navigation.next-week'\n | fromDictionary\n }}\n </span>\n <foehn-icon-chevron-right\n class=\"vd-pagination__title ml-2\"\n [title]=\"\n 'foehn-agenda-navigation.next-week'\n | fromDictionary\n \"\n ></foehn-icon-chevron-right>\n </div>\n </li>\n </ul>\n </nav>\n </div>\n</div>\n", styles: [".calendar-week-navigation{margin-bottom:0}.calendar-week-navigation li.vd-pagination__item{margin-top:0}.calendar-week-navigation span.vd-pagination__title{font-size:1em;line-height:1.2em;color:var(--gray-dark)}.calendar-week-navigation foehn-icon-chevron-right.vd-pagination__title,.calendar-week-navigation foehn-icon-chevron-left.vd-pagination__title{font-size:1.5em;color:var(--gray-dark)}.calendar-week-navigation .link-week-disabled .vd-pagination__title{color:var(--vd-neutral-light);cursor:not-allowed}.calendar-week-navigation .vd-pagination__link-reset{background:none;border:none;font-weight:inherit;text-decoration-line:none;text-align:inherit;cursor:pointer}.calendar-week-navigation .vd-pagination__link-reset:focus{background-color:var(--vd-focus)}nav ul{margin-bottom:0}\n"], components: [{ type: i1.FoehnIconChevronLeftComponent, selector: "foehn-icon-chevron-left" }, { type: i2.FoehnDatePickerButtonComponent, selector: "foehn-date-picker-button", inputs: ["id", "name", "minYear", "maxYear", "minDate", "maxDate", "displaySelectedDate", "selectedDateSrOnlyLabelKey", "model"], outputs: ["modelChange", "userInput"] }, { type: i3.FoehnIconChevronRightComponent, selector: "foehn-icon-chevron-right" }], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "fromDictionary": i5.SdkDictionaryPipe } });
58
58
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: FoehnAgendaNavigationComponent, decorators: [{
59
59
  type: Component,
60
- args: [{ selector: 'foehn-agenda-navigation', template: "<div class=\"row mb-3\" *ngIf=\"!!calendar\">\n <div class=\"col-12\">\n <nav\n class=\"vd-pagination calendar-week-navigation\"\n [attr.id]=\"id\"\n [attr.aria-label]=\"\n 'foehn-agenda-navigation.nav.aria-label' | fromDictionary\n \"\n >\n <ul class=\"vd-pagination__list\">\n <li\n class=\"vd-pagination__item vd-pagination__item--previous col-4\"\n *ngIf=\"!!calendar.previousWeek\"\n >\n <button\n [id]=\"id + 'ButtonPreviousWeek'\"\n class=\"btn-link vd-pagination__link vd-pagination__link-reset\"\n (click)=\"paginate(calendar.previousWeek)\"\n type=\"button\"\n >\n <span class=\"d-flex align-items-center\">\n <foehn-icon-chevron-left\n class=\"vd-pagination__title\"\n [title]=\"\n 'foehn-agenda-navigation.previous-week'\n | fromDictionary\n \"\n aria-hidden=\"true\"\n ></foehn-icon-chevron-left>\n <span\n class=\"vd-pagination__title ml-2 d-xs-none d-sm-block\"\n aria-hidden=\"true\"\n >\n {{\n 'foehn-agenda-navigation.previous-week'\n | fromDictionary\n }}\n </span>\n <span\n [id]=\"id + 'NavigationPreviousSrOnly'\"\n class=\"sr-only\"\n >\n {{\n 'foehn-agenda-navigation.previous-week-sr-only'\n | fromDictionary\n : {\n previousWeek:\n calendar.previousWeek\n .label\n }\n }}\n </span>\n </span>\n </button>\n </li>\n <li\n class=\"vd-pagination__item vd-pagination__item--previous col-4\"\n *ngIf=\"!calendar.previousWeek && !isSrOnly\"\n >\n <div\n [id]=\"id + 'NavigationPreviousDisabled'\"\n class=\"d-flex align-items-center link-week-disabled\"\n >\n <foehn-icon-chevron-left\n class=\"vd-pagination__title\"\n [title]=\"\n 'foehn-agenda-navigation.previous-week'\n | fromDictionary\n \"\n ></foehn-icon-chevron-left>\n <span\n class=\"vd-pagination__title ml-2 d-xs-none d-sm-block\"\n >\n {{\n 'foehn-agenda-navigation.previous-week'\n | fromDictionary\n }}\n </span>\n </div>\n </li>\n\n <li\n class=\"vd-pagination__item d-flex justify-content-center col-4\"\n *ngIf=\"!isSrOnly\"\n >\n <foehn-date-picker-button\n [model]=\"currentDay\"\n [minDate]=\"minDate\"\n [maxDate]=\"maxDate\"\n [selectedDateSrOnlyLabelKey]=\"\n 'foehn-agenda-navigation.date-picker-button.screen-reader.selected-date'\n \"\n (userInput)=\"datePickerUserInput($event)\"\n ></foehn-date-picker-button>\n </li>\n\n <li\n class=\"vd-pagination__item vd-pagination__item--next col-4 d-flex justify-content-end\"\n *ngIf=\"!!calendar.nextWeek\"\n >\n <button\n [id]=\"id + 'ButtonNextWeek'\"\n class=\"btn-link vd-pagination__link vd-pagination__link-reset\"\n (click)=\"paginate(calendar.nextWeek)\"\n type=\"button\"\n >\n <span class=\"d-flex align-items-center\">\n <span\n aria-hidden=\"true\"\n class=\"vd-pagination__title d-xs-none d-sm-block\"\n >\n {{\n 'foehn-agenda-navigation.next-week'\n | fromDictionary\n }}\n </span>\n <span\n [id]=\"id + 'NavigationNextSrOnly'\"\n class=\"sr-only\"\n >\n {{\n 'foehn-agenda-navigation.next-week-sr-only'\n | fromDictionary\n : {\n nextWeek:\n calendar.nextWeek.label\n }\n }}\n </span>\n <foehn-icon-chevron-right\n class=\"vd-pagination__title ml-2\"\n [title]=\"\n 'foehn-agenda-navigation.next-week'\n | fromDictionary\n \"\n aria-hidden=\"true\"\n ></foehn-icon-chevron-right>\n </span>\n </button>\n </li>\n <li\n class=\"vd-pagination__item vd-pagination__item--next col-4 d-flex justify-content-end\"\n *ngIf=\"!calendar.nextWeek && !isSrOnly\"\n >\n <div\n [id]=\"id + 'NavigationNextDisabled'\"\n class=\"d-flex align-items-center link-week-disabled\"\n >\n <span class=\"vd-pagination__title d-xs-none d-sm-block\">\n {{\n 'foehn-agenda-navigation.next-week'\n | fromDictionary\n }}\n </span>\n <foehn-icon-chevron-right\n class=\"vd-pagination__title ml-2\"\n [title]=\"\n 'foehn-agenda-navigation.next-week'\n | fromDictionary\n \"\n ></foehn-icon-chevron-right>\n </div>\n </li>\n </ul>\n </nav>\n </div>\n</div>\n", styles: [".calendar-week-navigation{margin-bottom:0}.calendar-week-navigation li.vd-pagination__item{margin-top:0}.calendar-week-navigation span.vd-pagination__title{font-size:1em;line-height:1.2em;color:var(--gray-dark)}.calendar-week-navigation foehn-icon-chevron-right.vd-pagination__title,.calendar-week-navigation foehn-icon-chevron-left.vd-pagination__title{font-size:1.5em;color:var(--gray-dark)}.calendar-week-navigation .link-week-disabled .vd-pagination__title{color:var(--vd-neutral-light);cursor:not-allowed}.calendar-week-navigation .vd-pagination__link-reset{background:none;border:none;font-weight:inherit;-webkit-text-decoration-line:none;text-decoration-line:none;text-align:inherit;cursor:pointer}.calendar-week-navigation .vd-pagination__link-reset:focus{background-color:var(--vd-focus)}nav ul{margin-bottom:0}\n"] }]
60
+ args: [{ selector: 'foehn-agenda-navigation', template: "<div class=\"row mb-3\" *ngIf=\"!!calendar\">\n <div class=\"col-12\">\n <nav\n class=\"vd-pagination calendar-week-navigation\"\n [attr.id]=\"id\"\n [attr.aria-label]=\"\n 'foehn-agenda-navigation.nav.aria-label' | fromDictionary\n \"\n >\n <ul class=\"vd-pagination__list\">\n <li\n class=\"vd-pagination__item vd-pagination__item--previous col-4\"\n *ngIf=\"!!calendar.previousWeek\"\n >\n <button\n [id]=\"id + 'ButtonPreviousWeek'\"\n class=\"btn-link vd-pagination__link vd-pagination__link-reset\"\n (click)=\"paginate(calendar.previousWeek)\"\n type=\"button\"\n >\n <span class=\"d-flex align-items-center\">\n <foehn-icon-chevron-left\n class=\"vd-pagination__title\"\n [title]=\"\n 'foehn-agenda-navigation.previous-week'\n | fromDictionary\n \"\n aria-hidden=\"true\"\n ></foehn-icon-chevron-left>\n <span\n class=\"vd-pagination__title ml-2 d-xs-none d-sm-block\"\n aria-hidden=\"true\"\n >\n {{\n 'foehn-agenda-navigation.previous-week'\n | fromDictionary\n }}\n </span>\n <span\n [id]=\"id + 'NavigationPreviousSrOnly'\"\n class=\"sr-only\"\n >\n {{\n 'foehn-agenda-navigation.previous-week-sr-only'\n | fromDictionary\n : {\n previousWeek:\n calendar.previousWeek\n .label\n }\n }}\n </span>\n </span>\n </button>\n </li>\n <li\n class=\"vd-pagination__item vd-pagination__item--previous col-4\"\n *ngIf=\"!calendar.previousWeek && !isSrOnly\"\n >\n <div\n [id]=\"id + 'NavigationPreviousDisabled'\"\n class=\"d-flex align-items-center link-week-disabled\"\n >\n <foehn-icon-chevron-left\n class=\"vd-pagination__title\"\n [title]=\"\n 'foehn-agenda-navigation.previous-week'\n | fromDictionary\n \"\n ></foehn-icon-chevron-left>\n <span\n class=\"vd-pagination__title ml-2 d-xs-none d-sm-block\"\n >\n {{\n 'foehn-agenda-navigation.previous-week'\n | fromDictionary\n }}\n </span>\n </div>\n </li>\n\n <li\n class=\"vd-pagination__item d-flex justify-content-center col-4\"\n *ngIf=\"!isSrOnly\"\n >\n <foehn-date-picker-button\n [model]=\"currentDay\"\n [minDate]=\"minDate\"\n [maxDate]=\"maxDate\"\n [selectedDateSrOnlyLabelKey]=\"\n 'foehn-agenda-navigation.date-picker-button.screen-reader.selected-date'\n \"\n (userInput)=\"datePickerUserInput($event)\"\n ></foehn-date-picker-button>\n </li>\n\n <li\n class=\"vd-pagination__item vd-pagination__item--next col-4 d-flex justify-content-end\"\n *ngIf=\"!!calendar.nextWeek\"\n >\n <button\n [id]=\"id + 'ButtonNextWeek'\"\n class=\"btn-link vd-pagination__link vd-pagination__link-reset\"\n (click)=\"paginate(calendar.nextWeek)\"\n type=\"button\"\n >\n <span class=\"d-flex align-items-center\">\n <span\n aria-hidden=\"true\"\n class=\"vd-pagination__title d-xs-none d-sm-block\"\n >\n {{\n 'foehn-agenda-navigation.next-week'\n | fromDictionary\n }}\n </span>\n <span\n [id]=\"id + 'NavigationNextSrOnly'\"\n class=\"sr-only\"\n >\n {{\n 'foehn-agenda-navigation.next-week-sr-only'\n | fromDictionary\n : {\n nextWeek:\n calendar.nextWeek.label\n }\n }}\n </span>\n <foehn-icon-chevron-right\n class=\"vd-pagination__title ml-2\"\n [title]=\"\n 'foehn-agenda-navigation.next-week'\n | fromDictionary\n \"\n aria-hidden=\"true\"\n ></foehn-icon-chevron-right>\n </span>\n </button>\n </li>\n <li\n class=\"vd-pagination__item vd-pagination__item--next col-4 d-flex justify-content-end\"\n *ngIf=\"!calendar.nextWeek && !isSrOnly\"\n >\n <div\n [id]=\"id + 'NavigationNextDisabled'\"\n class=\"d-flex align-items-center link-week-disabled\"\n >\n <span class=\"vd-pagination__title d-xs-none d-sm-block\">\n {{\n 'foehn-agenda-navigation.next-week'\n | fromDictionary\n }}\n </span>\n <foehn-icon-chevron-right\n class=\"vd-pagination__title ml-2\"\n [title]=\"\n 'foehn-agenda-navigation.next-week'\n | fromDictionary\n \"\n ></foehn-icon-chevron-right>\n </div>\n </li>\n </ul>\n </nav>\n </div>\n</div>\n", styles: [".calendar-week-navigation{margin-bottom:0}.calendar-week-navigation li.vd-pagination__item{margin-top:0}.calendar-week-navigation span.vd-pagination__title{font-size:1em;line-height:1.2em;color:var(--gray-dark)}.calendar-week-navigation foehn-icon-chevron-right.vd-pagination__title,.calendar-week-navigation foehn-icon-chevron-left.vd-pagination__title{font-size:1.5em;color:var(--gray-dark)}.calendar-week-navigation .link-week-disabled .vd-pagination__title{color:var(--vd-neutral-light);cursor:not-allowed}.calendar-week-navigation .vd-pagination__link-reset{background:none;border:none;font-weight:inherit;text-decoration-line:none;text-align:inherit;cursor:pointer}.calendar-week-navigation .vd-pagination__link-reset:focus{background-color:var(--vd-focus)}nav ul{margin-bottom:0}\n"] }]
61
61
  }], propDecorators: { id: [{
62
62
  type: Input
63
63
  }], calendar: [{
@@ -15,17 +15,17 @@ export class FoehnInputEmailComponent extends FoehnInputStringComponent {
15
15
  super();
16
16
  this.ngZone = ngZone;
17
17
  this.dictionaryService = dictionaryService;
18
- }
19
- ngOnInit() {
20
- super.ngOnInit();
21
- this.type = 'email';
22
- this.autocomplete = 'email';
23
18
  this.helpModal = {
24
19
  title: this.dictionaryService.getKeySync('foehn-input-email.modal.title'),
25
20
  body: this.dictionaryService.getKeySync('foehn-input-email.modal.content'),
26
21
  modalSize: 'modal-xs'
27
22
  };
28
23
  }
24
+ ngOnInit() {
25
+ super.ngOnInit();
26
+ this.type = 'email';
27
+ this.autocomplete = 'email';
28
+ }
29
29
  onModelChange(value) {
30
30
  if (value === undefined || !!value) {
31
31
  this.updateNgModel(value);
@@ -55,4 +55,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
55
55
  }
56
56
  ], template: "<div\n class=\"form-group clearable-input-form-group\"\n [class.has-danger]=\"hasErrorsToDisplay()\"\n [class.vd-form-group-danger]=\"hasErrorsToDisplay()\"\n [attr.id]=\"buildId('Container')\"\n tabindex=\"-1\"\n>\n <div class=\"d-flex justify-content-between\">\n <label\n style=\"display: inline-block\"\n [attr.for]=\"buildChildId()\"\n *ngIf=\"label && type !== 'hidden'\"\n [ngClass]=\"isLabelSrOnly ? 'sr-only' : labelStyleModifier\"\n >\n <span [innerHTML]=\"label\"></span>\n <span\n *ngIf=\"!required && !hideNotRequiredExtraLabel\"\n aria-hidden=\"true\"\n >\n {{ 'foehn-input.optional' | fromDictionary }}\n </span>\n </label>\n\n <foehn-help-modal\n class=\"removePaddingButton\"\n *ngIf=\"!!helpModal\"\n [modalContent]=\"helpModal\"\n ></foehn-help-modal>\n </div>\n\n <foehn-validation-alerts [component]=\"this\"></foehn-validation-alerts>\n\n <small\n *ngIf=\"helpText && type !== 'hidden'\"\n [attr.id]=\"buildChildId() + 'Help'\"\n class=\"form-text text-secondary\"\n [innerHTML]=\"helpText\"\n ></small>\n\n <ng-content></ng-content>\n\n <input\n [class.is-invalid]=\"hasErrorsToDisplay() || hasInheritErrorFromParent()\"\n [class.clearable-input]=\"displayClearButton() | async\"\n class=\"form-control\"\n [name]=\"name || label\"\n [attr.maxlength]=\"getMaxLength()\"\n [attr.autocomplete]=\"getAutoComplete()\"\n [attr.autocapitalize]=\"autocapitalize\"\n [attr.disabled]=\"disabled ? 'disabled' : null\"\n [attr.type]=\"type\"\n [attr.pattern]=\"pattern\"\n [attr.min]=\"min\"\n [attr.max]=\"max\"\n [attr.id]=\"buildChildId()\"\n [attr.aria-describedby]=\"getDescribedBy()\"\n [attr.aria-invalid]=\"hasErrorsToDisplay() || null\"\n [attr.aria-required]=\"required || null\"\n [ngModel]=\"model\"\n (paste)=\"onPaste($event)\"\n (ngModelChange)=\"updateNgModel($event)\"\n (input)=\"handleChange(entryComponent.value)\"\n (keydown)=\"onKeydown($event)\"\n (blur)=\"onBlur($event)\"\n (focus)=\"onFocus($event)\"\n #entryComponent\n />\n\n <button\n type=\"button\"\n [id]=\"buildChildId() + 'ClearButton'\"\n *ngIf=\"displayClearButton() | async\"\n class=\"clearable-input-clear-button btn\"\n (click)=\"onClear()\"\n >\n <foehn-icon-times\n class=\"clearable-input-clear-button-icon\"\n title=\"R\u00E9initialiser le champs\"\n ></foehn-icon-times>\n </button>\n</div>\n", styles: ["input::-ms-clear{display:none}input.clearable-input{padding-right:30px}.clearable-input-form-group{position:relative}:host ::ng-deep foehn-help-modal>.btn{padding-top:0!important;margin-top:0!important}.clearable-input-clear-button{position:absolute;bottom:4px;right:4px;height:30px;width:30px;background:none;border:none}.clearable-input-clear-button-icon{top:4px;right:8px;position:absolute}:host ::ng-deep .clearable-input-clear-button.btn .svg-inline--fa{color:#595959!important}:host ::ng-deep .clearable-input-clear-button.btn:hover .svg-inline--fa{color:#000!important}.chars-remaining{color:#757575;font-size:.9rem}.char-count-exceeded{color:#c21f39}:host ::ng-deep .sameLine-list{display:inline;list-style:none;padding:0}:host ::ng-deep .sameLine-list li{display:inline;padding:3px}\n"] }]
57
57
  }], ctorParameters: function () { return [{ type: i0.NgZone }, { type: i1.SdkDictionaryService }]; } });
58
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9laG4taW5wdXQtZW1haWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvcHJlc3RhdGlvbnMtbmcvc3JjL2ZvZWhuLWlucHV0L2ZvZWhuLWlucHV0LWVtYWlsLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uL3Byb2plY3RzL3ByZXN0YXRpb25zLW5nL3NyYy9mb2Vobi1pbnB1dC9mb2Vobi1pbnB1dC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBa0IsTUFBTSxlQUFlLENBQUM7QUFDdEUsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDM0UsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDOUQsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7Ozs7Ozs7QUFldkMsTUFBTSxPQUFPLHdCQUNULFNBQVEseUJBQXlCO0lBRWpDLFlBQ1ksTUFBYyxFQUNkLGlCQUF1QztRQUUvQyxLQUFLLEVBQUUsQ0FBQztRQUhBLFdBQU0sR0FBTixNQUFNLENBQVE7UUFDZCxzQkFBaUIsR0FBakIsaUJBQWlCLENBQXNCO0lBR25ELENBQUM7SUFFRCxRQUFRO1FBQ0osS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ2pCLElBQUksQ0FBQyxJQUFJLEdBQUcsT0FBTyxDQUFDO1FBQ3BCLElBQUksQ0FBQyxZQUFZLEdBQUcsT0FBTyxDQUFDO1FBQzVCLElBQUksQ0FBQyxTQUFTLEdBQUc7WUFDYixLQUFLLEVBQUUsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFVBQVUsQ0FDcEMsK0JBQStCLENBQ2xDO1lBQ0QsSUFBSSxFQUFFLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxVQUFVLENBQ25DLGlDQUFpQyxDQUNwQztZQUNELFNBQVMsRUFBRSxVQUFVO1NBQ3hCLENBQUM7SUFDTixDQUFDO0lBRUQsYUFBYSxDQUFDLEtBQWE7UUFDdkIsSUFBSSxLQUFLLEtBQUssU0FBUyxJQUFJLENBQUMsQ0FBQyxLQUFLLEVBQUU7WUFDaEMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUM3QjthQUFNO1lBQ0gsSUFBSSxDQUFDLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO2dCQUN0RCxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQzdCLENBQUMsQ0FBQyxDQUFDO1NBQ047SUFDTCxDQUFDOztzSEFqQ1Esd0JBQXdCOzBHQUF4Qix3QkFBd0IsNENBUnRCO1FBQ1A7WUFDSSxPQUFPLEVBQUUsbUJBQW1CO1lBQzVCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsd0JBQXdCLENBQUM7WUFDdkQsS0FBSyxFQUFFLElBQUk7U0FDZDtLQUNKLGlEQ2hCTCxpd0ZBaUZBOzRGRC9EYSx3QkFBd0I7a0JBWnBDLFNBQVM7K0JBQ0ksbUJBQW1CLGFBR2xCO3dCQUNQOzRCQUNJLE9BQU8sRUFBRSxtQkFBbUI7NEJBQzVCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLHlCQUF5QixDQUFDOzRCQUN2RCxLQUFLLEVBQUUsSUFBSTt5QkFDZDtxQkFDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgZm9yd2FyZFJlZiwgTmdab25lLCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvZWhuSW5wdXRTdHJpbmdDb21wb25lbnQgfSBmcm9tICcuL2ZvZWhuLWlucHV0LXN0cmluZy5jb21wb25lbnQnO1xuaW1wb3J0IHsgRm9laG5JbnB1dENvbXBvbmVudCB9IGZyb20gJy4vZm9laG4taW5wdXQuY29tcG9uZW50JztcbmltcG9ydCB7IGZpcnN0IH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgU2RrRGljdGlvbmFyeVNlcnZpY2UgfSBmcm9tICcuLi9zZGstZGljdGlvbmFyeS9zZGstZGljdGlvbmFyeS5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdmb2Vobi1pbnB1dC1lbWFpbCcsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2ZvZWhuLWlucHV0LmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9mb2Vobi1pbnB1dC5jb21wb25lbnQuY3NzJ10sXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICAgIHByb3ZpZGU6IEZvZWhuSW5wdXRDb21wb25lbnQsXG4gICAgICAgICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBGb2VobklucHV0RW1haWxDb21wb25lbnQpLFxuICAgICAgICAgICAgbXVsdGk6IHRydWVcbiAgICAgICAgfVxuICAgIF1cbn0pXG5leHBvcnQgY2xhc3MgRm9laG5JbnB1dEVtYWlsQ29tcG9uZW50XG4gICAgZXh0ZW5kcyBGb2VobklucHV0U3RyaW5nQ29tcG9uZW50XG4gICAgaW1wbGVtZW50cyBPbkluaXQge1xuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIG5nWm9uZTogTmdab25lLFxuICAgICAgICBwcml2YXRlIGRpY3Rpb25hcnlTZXJ2aWNlOiBTZGtEaWN0aW9uYXJ5U2VydmljZVxuICAgICkge1xuICAgICAgICBzdXBlcigpO1xuICAgIH1cblxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICBzdXBlci5uZ09uSW5pdCgpO1xuICAgICAgICB0aGlzLnR5cGUgPSAnZW1haWwnO1xuICAgICAgICB0aGlzLmF1dG9jb21wbGV0ZSA9ICdlbWFpbCc7XG4gICAgICAgIHRoaXMuaGVscE1vZGFsID0ge1xuICAgICAgICAgICAgdGl0bGU6IHRoaXMuZGljdGlvbmFyeVNlcnZpY2UuZ2V0S2V5U3luYyhcbiAgICAgICAgICAgICAgICAnZm9laG4taW5wdXQtZW1haWwubW9kYWwudGl0bGUnXG4gICAgICAgICAgICApLFxuICAgICAgICAgICAgYm9keTogdGhpcy5kaWN0aW9uYXJ5U2VydmljZS5nZXRLZXlTeW5jKFxuICAgICAgICAgICAgICAgICdmb2Vobi1pbnB1dC1lbWFpbC5tb2RhbC5jb250ZW50J1xuICAgICAgICAgICAgKSxcbiAgICAgICAgICAgIG1vZGFsU2l6ZTogJ21vZGFsLXhzJ1xuICAgICAgICB9O1xuICAgIH1cblxuICAgIG9uTW9kZWxDaGFuZ2UodmFsdWU6IHN0cmluZyk6IHZvaWQge1xuICAgICAgICBpZiAodmFsdWUgPT09IHVuZGVmaW5lZCB8fCAhIXZhbHVlKSB7XG4gICAgICAgICAgICB0aGlzLnVwZGF0ZU5nTW9kZWwodmFsdWUpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5uZ1pvbmUub25NaWNyb3Rhc2tFbXB0eS5waXBlKGZpcnN0KCkpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy51cGRhdGVOZ01vZGVsKG51bGwpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCI8ZGl2XG4gICAgY2xhc3M9XCJmb3JtLWdyb3VwIGNsZWFyYWJsZS1pbnB1dC1mb3JtLWdyb3VwXCJcbiAgICBbY2xhc3MuaGFzLWRhbmdlcl09XCJoYXNFcnJvcnNUb0Rpc3BsYXkoKVwiXG4gICAgW2NsYXNzLnZkLWZvcm0tZ3JvdXAtZGFuZ2VyXT1cImhhc0Vycm9yc1RvRGlzcGxheSgpXCJcbiAgICBbYXR0ci5pZF09XCJidWlsZElkKCdDb250YWluZXInKVwiXG4gICAgdGFiaW5kZXg9XCItMVwiXG4+XG4gICAgPGRpdiBjbGFzcz1cImQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtYmV0d2VlblwiPlxuICAgICAgICA8bGFiZWxcbiAgICAgICAgICAgIHN0eWxlPVwiZGlzcGxheTogaW5saW5lLWJsb2NrXCJcbiAgICAgICAgICAgIFthdHRyLmZvcl09XCJidWlsZENoaWxkSWQoKVwiXG4gICAgICAgICAgICAqbmdJZj1cImxhYmVsICYmIHR5cGUgIT09ICdoaWRkZW4nXCJcbiAgICAgICAgICAgIFtuZ0NsYXNzXT1cImlzTGFiZWxTck9ubHkgPyAnc3Itb25seScgOiBsYWJlbFN0eWxlTW9kaWZpZXJcIlxuICAgICAgICA+XG4gICAgICAgICAgICA8c3BhbiBbaW5uZXJIVE1MXT1cImxhYmVsXCI+PC9zcGFuPlxuICAgICAgICAgICAgPHNwYW5cbiAgICAgICAgICAgICAgICAqbmdJZj1cIiFyZXF1aXJlZCAmJiAhaGlkZU5vdFJlcXVpcmVkRXh0cmFMYWJlbFwiXG4gICAgICAgICAgICAgICAgYXJpYS1oaWRkZW49XCJ0cnVlXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICB7eyAnZm9laG4taW5wdXQub3B0aW9uYWwnIHwgZnJvbURpY3Rpb25hcnkgfX1cbiAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgPC9sYWJlbD5cblxuICAgICAgICA8Zm9laG4taGVscC1tb2RhbFxuICAgICAgICAgICAgY2xhc3M9XCJyZW1vdmVQYWRkaW5nQnV0dG9uXCJcbiAgICAgICAgICAgICpuZ0lmPVwiISFoZWxwTW9kYWxcIlxuICAgICAgICAgICAgW21vZGFsQ29udGVudF09XCJoZWxwTW9kYWxcIlxuICAgICAgICA+PC9mb2Vobi1oZWxwLW1vZGFsPlxuICAgIDwvZGl2PlxuXG4gICAgPGZvZWhuLXZhbGlkYXRpb24tYWxlcnRzIFtjb21wb25lbnRdPVwidGhpc1wiPjwvZm9laG4tdmFsaWRhdGlvbi1hbGVydHM+XG5cbiAgICA8c21hbGxcbiAgICAgICAgKm5nSWY9XCJoZWxwVGV4dCAmJiB0eXBlICE9PSAnaGlkZGVuJ1wiXG4gICAgICAgIFthdHRyLmlkXT1cImJ1aWxkQ2hpbGRJZCgpICsgJ0hlbHAnXCJcbiAgICAgICAgY2xhc3M9XCJmb3JtLXRleHQgdGV4dC1zZWNvbmRhcnlcIlxuICAgICAgICBbaW5uZXJIVE1MXT1cImhlbHBUZXh0XCJcbiAgICA+PC9zbWFsbD5cblxuICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cblxuICAgIDxpbnB1dFxuICAgICAgICBbY2xhc3MuaXMtaW52YWxpZF09XCJoYXNFcnJvcnNUb0Rpc3BsYXkoKSB8fCBoYXNJbmhlcml0RXJyb3JGcm9tUGFyZW50KClcIlxuICAgICAgICBbY2xhc3MuY2xlYXJhYmxlLWlucHV0XT1cImRpc3BsYXlDbGVhckJ1dHRvbigpIHwgYXN5bmNcIlxuICAgICAgICBjbGFzcz1cImZvcm0tY29udHJvbFwiXG4gICAgICAgIFtuYW1lXT1cIm5hbWUgfHwgbGFiZWxcIlxuICAgICAgICBbYXR0ci5tYXhsZW5ndGhdPVwiZ2V0TWF4TGVuZ3RoKClcIlxuICAgICAgICBbYXR0ci5hdXRvY29tcGxldGVdPVwiZ2V0QXV0b0NvbXBsZXRlKClcIlxuICAgICAgICBbYXR0ci5hdXRvY2FwaXRhbGl6ZV09XCJhdXRvY2FwaXRhbGl6ZVwiXG4gICAgICAgIFthdHRyLmRpc2FibGVkXT1cImRpc2FibGVkID8gJ2Rpc2FibGVkJyA6IG51bGxcIlxuICAgICAgICBbYXR0ci50eXBlXT1cInR5cGVcIlxuICAgICAgICBbYXR0ci5wYXR0ZXJuXT1cInBhdHRlcm5cIlxuICAgICAgICBbYXR0ci5taW5dPVwibWluXCJcbiAgICAgICAgW2F0dHIubWF4XT1cIm1heFwiXG4gICAgICAgIFthdHRyLmlkXT1cImJ1aWxkQ2hpbGRJZCgpXCJcbiAgICAgICAgW2F0dHIuYXJpYS1kZXNjcmliZWRieV09XCJnZXREZXNjcmliZWRCeSgpXCJcbiAgICAgICAgW2F0dHIuYXJpYS1pbnZhbGlkXT1cImhhc0Vycm9yc1RvRGlzcGxheSgpIHx8IG51bGxcIlxuICAgICAgICBbYXR0ci5hcmlhLXJlcXVpcmVkXT1cInJlcXVpcmVkIHx8IG51bGxcIlxuICAgICAgICBbbmdNb2RlbF09XCJtb2RlbFwiXG4gICAgICAgIChwYXN0ZSk9XCJvblBhc3RlKCRldmVudClcIlxuICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJ1cGRhdGVOZ01vZGVsKCRldmVudClcIlxuICAgICAgICAoaW5wdXQpPVwiaGFuZGxlQ2hhbmdlKGVudHJ5Q29tcG9uZW50LnZhbHVlKVwiXG4gICAgICAgIChrZXlkb3duKT1cIm9uS2V5ZG93bigkZXZlbnQpXCJcbiAgICAgICAgKGJsdXIpPVwib25CbHVyKCRldmVudClcIlxuICAgICAgICAoZm9jdXMpPVwib25Gb2N1cygkZXZlbnQpXCJcbiAgICAgICAgI2VudHJ5Q29tcG9uZW50XG4gICAgLz5cblxuICAgIDxidXR0b25cbiAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgIFtpZF09XCJidWlsZENoaWxkSWQoKSArICdDbGVhckJ1dHRvbidcIlxuICAgICAgICAqbmdJZj1cImRpc3BsYXlDbGVhckJ1dHRvbigpIHwgYXN5bmNcIlxuICAgICAgICBjbGFzcz1cImNsZWFyYWJsZS1pbnB1dC1jbGVhci1idXR0b24gYnRuXCJcbiAgICAgICAgKGNsaWNrKT1cIm9uQ2xlYXIoKVwiXG4gICAgPlxuICAgICAgICA8Zm9laG4taWNvbi10aW1lc1xuICAgICAgICAgICAgY2xhc3M9XCJjbGVhcmFibGUtaW5wdXQtY2xlYXItYnV0dG9uLWljb25cIlxuICAgICAgICAgICAgdGl0bGU9XCJSw6lpbml0aWFsaXNlciBsZSBjaGFtcHNcIlxuICAgICAgICA+PC9mb2Vobi1pY29uLXRpbWVzPlxuICAgIDwvYnV0dG9uPlxuPC9kaXY+XG4iXX0=
58
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9laG4taW5wdXQtZW1haWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvcHJlc3RhdGlvbnMtbmcvc3JjL2ZvZWhuLWlucHV0L2ZvZWhuLWlucHV0LWVtYWlsLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uL3Byb2plY3RzL3ByZXN0YXRpb25zLW5nL3NyYy9mb2Vobi1pbnB1dC9mb2Vobi1pbnB1dC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBa0IsTUFBTSxlQUFlLENBQUM7QUFDdEUsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDM0UsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDOUQsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7Ozs7Ozs7QUFldkMsTUFBTSxPQUFPLHdCQUNULFNBQVEseUJBQXlCO0lBRWpDLFlBQ1ksTUFBYyxFQUNkLGlCQUF1QztRQUUvQyxLQUFLLEVBQUUsQ0FBQztRQUhBLFdBQU0sR0FBTixNQUFNLENBQVE7UUFDZCxzQkFBaUIsR0FBakIsaUJBQWlCLENBQXNCO1FBRy9DLElBQUksQ0FBQyxTQUFTLEdBQUc7WUFDYixLQUFLLEVBQUUsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFVBQVUsQ0FDcEMsK0JBQStCLENBQ2xDO1lBQ0QsSUFBSSxFQUFFLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxVQUFVLENBQ25DLGlDQUFpQyxDQUNwQztZQUNELFNBQVMsRUFBRSxVQUFVO1NBQ3hCLENBQUM7SUFDTixDQUFDO0lBRUQsUUFBUTtRQUNKLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUNqQixJQUFJLENBQUMsSUFBSSxHQUFHLE9BQU8sQ0FBQztRQUNwQixJQUFJLENBQUMsWUFBWSxHQUFHLE9BQU8sQ0FBQztJQUNoQyxDQUFDO0lBRUQsYUFBYSxDQUFDLEtBQWE7UUFDdkIsSUFBSSxLQUFLLEtBQUssU0FBUyxJQUFJLENBQUMsQ0FBQyxLQUFLLEVBQUU7WUFDaEMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUM3QjthQUFNO1lBQ0gsSUFBSSxDQUFDLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO2dCQUN0RCxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQzdCLENBQUMsQ0FBQyxDQUFDO1NBQ047SUFDTCxDQUFDOztzSEFqQ1Esd0JBQXdCOzBHQUF4Qix3QkFBd0IsNENBUnRCO1FBQ1A7WUFDSSxPQUFPLEVBQUUsbUJBQW1CO1lBQzVCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsd0JBQXdCLENBQUM7WUFDdkQsS0FBSyxFQUFFLElBQUk7U0FDZDtLQUNKLGlEQ2hCTCxpd0ZBaUZBOzRGRC9EYSx3QkFBd0I7a0JBWnBDLFNBQVM7K0JBQ0ksbUJBQW1CLGFBR2xCO3dCQUNQOzRCQUNJLE9BQU8sRUFBRSxtQkFBbUI7NEJBQzVCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLHlCQUF5QixDQUFDOzRCQUN2RCxLQUFLLEVBQUUsSUFBSTt5QkFDZDtxQkFDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgZm9yd2FyZFJlZiwgTmdab25lLCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvZWhuSW5wdXRTdHJpbmdDb21wb25lbnQgfSBmcm9tICcuL2ZvZWhuLWlucHV0LXN0cmluZy5jb21wb25lbnQnO1xuaW1wb3J0IHsgRm9laG5JbnB1dENvbXBvbmVudCB9IGZyb20gJy4vZm9laG4taW5wdXQuY29tcG9uZW50JztcbmltcG9ydCB7IGZpcnN0IH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgU2RrRGljdGlvbmFyeVNlcnZpY2UgfSBmcm9tICcuLi9zZGstZGljdGlvbmFyeS9zZGstZGljdGlvbmFyeS5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdmb2Vobi1pbnB1dC1lbWFpbCcsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2ZvZWhuLWlucHV0LmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9mb2Vobi1pbnB1dC5jb21wb25lbnQuY3NzJ10sXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICAgIHByb3ZpZGU6IEZvZWhuSW5wdXRDb21wb25lbnQsXG4gICAgICAgICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBGb2VobklucHV0RW1haWxDb21wb25lbnQpLFxuICAgICAgICAgICAgbXVsdGk6IHRydWVcbiAgICAgICAgfVxuICAgIF1cbn0pXG5leHBvcnQgY2xhc3MgRm9laG5JbnB1dEVtYWlsQ29tcG9uZW50XG4gICAgZXh0ZW5kcyBGb2VobklucHV0U3RyaW5nQ29tcG9uZW50XG4gICAgaW1wbGVtZW50cyBPbkluaXQge1xuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIG5nWm9uZTogTmdab25lLFxuICAgICAgICBwcml2YXRlIGRpY3Rpb25hcnlTZXJ2aWNlOiBTZGtEaWN0aW9uYXJ5U2VydmljZVxuICAgICkge1xuICAgICAgICBzdXBlcigpO1xuICAgICAgICB0aGlzLmhlbHBNb2RhbCA9IHtcbiAgICAgICAgICAgIHRpdGxlOiB0aGlzLmRpY3Rpb25hcnlTZXJ2aWNlLmdldEtleVN5bmMoXG4gICAgICAgICAgICAgICAgJ2ZvZWhuLWlucHV0LWVtYWlsLm1vZGFsLnRpdGxlJ1xuICAgICAgICAgICAgKSxcbiAgICAgICAgICAgIGJvZHk6IHRoaXMuZGljdGlvbmFyeVNlcnZpY2UuZ2V0S2V5U3luYyhcbiAgICAgICAgICAgICAgICAnZm9laG4taW5wdXQtZW1haWwubW9kYWwuY29udGVudCdcbiAgICAgICAgICAgICksXG4gICAgICAgICAgICBtb2RhbFNpemU6ICdtb2RhbC14cydcbiAgICAgICAgfTtcbiAgICB9XG5cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgc3VwZXIubmdPbkluaXQoKTtcbiAgICAgICAgdGhpcy50eXBlID0gJ2VtYWlsJztcbiAgICAgICAgdGhpcy5hdXRvY29tcGxldGUgPSAnZW1haWwnO1xuICAgIH1cblxuICAgIG9uTW9kZWxDaGFuZ2UodmFsdWU6IHN0cmluZyk6IHZvaWQge1xuICAgICAgICBpZiAodmFsdWUgPT09IHVuZGVmaW5lZCB8fCAhIXZhbHVlKSB7XG4gICAgICAgICAgICB0aGlzLnVwZGF0ZU5nTW9kZWwodmFsdWUpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5uZ1pvbmUub25NaWNyb3Rhc2tFbXB0eS5waXBlKGZpcnN0KCkpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy51cGRhdGVOZ01vZGVsKG51bGwpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCI8ZGl2XG4gICAgY2xhc3M9XCJmb3JtLWdyb3VwIGNsZWFyYWJsZS1pbnB1dC1mb3JtLWdyb3VwXCJcbiAgICBbY2xhc3MuaGFzLWRhbmdlcl09XCJoYXNFcnJvcnNUb0Rpc3BsYXkoKVwiXG4gICAgW2NsYXNzLnZkLWZvcm0tZ3JvdXAtZGFuZ2VyXT1cImhhc0Vycm9yc1RvRGlzcGxheSgpXCJcbiAgICBbYXR0ci5pZF09XCJidWlsZElkKCdDb250YWluZXInKVwiXG4gICAgdGFiaW5kZXg9XCItMVwiXG4+XG4gICAgPGRpdiBjbGFzcz1cImQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtYmV0d2VlblwiPlxuICAgICAgICA8bGFiZWxcbiAgICAgICAgICAgIHN0eWxlPVwiZGlzcGxheTogaW5saW5lLWJsb2NrXCJcbiAgICAgICAgICAgIFthdHRyLmZvcl09XCJidWlsZENoaWxkSWQoKVwiXG4gICAgICAgICAgICAqbmdJZj1cImxhYmVsICYmIHR5cGUgIT09ICdoaWRkZW4nXCJcbiAgICAgICAgICAgIFtuZ0NsYXNzXT1cImlzTGFiZWxTck9ubHkgPyAnc3Itb25seScgOiBsYWJlbFN0eWxlTW9kaWZpZXJcIlxuICAgICAgICA+XG4gICAgICAgICAgICA8c3BhbiBbaW5uZXJIVE1MXT1cImxhYmVsXCI+PC9zcGFuPlxuICAgICAgICAgICAgPHNwYW5cbiAgICAgICAgICAgICAgICAqbmdJZj1cIiFyZXF1aXJlZCAmJiAhaGlkZU5vdFJlcXVpcmVkRXh0cmFMYWJlbFwiXG4gICAgICAgICAgICAgICAgYXJpYS1oaWRkZW49XCJ0cnVlXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICB7eyAnZm9laG4taW5wdXQub3B0aW9uYWwnIHwgZnJvbURpY3Rpb25hcnkgfX1cbiAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgPC9sYWJlbD5cblxuICAgICAgICA8Zm9laG4taGVscC1tb2RhbFxuICAgICAgICAgICAgY2xhc3M9XCJyZW1vdmVQYWRkaW5nQnV0dG9uXCJcbiAgICAgICAgICAgICpuZ0lmPVwiISFoZWxwTW9kYWxcIlxuICAgICAgICAgICAgW21vZGFsQ29udGVudF09XCJoZWxwTW9kYWxcIlxuICAgICAgICA+PC9mb2Vobi1oZWxwLW1vZGFsPlxuICAgIDwvZGl2PlxuXG4gICAgPGZvZWhuLXZhbGlkYXRpb24tYWxlcnRzIFtjb21wb25lbnRdPVwidGhpc1wiPjwvZm9laG4tdmFsaWRhdGlvbi1hbGVydHM+XG5cbiAgICA8c21hbGxcbiAgICAgICAgKm5nSWY9XCJoZWxwVGV4dCAmJiB0eXBlICE9PSAnaGlkZGVuJ1wiXG4gICAgICAgIFthdHRyLmlkXT1cImJ1aWxkQ2hpbGRJZCgpICsgJ0hlbHAnXCJcbiAgICAgICAgY2xhc3M9XCJmb3JtLXRleHQgdGV4dC1zZWNvbmRhcnlcIlxuICAgICAgICBbaW5uZXJIVE1MXT1cImhlbHBUZXh0XCJcbiAgICA+PC9zbWFsbD5cblxuICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cblxuICAgIDxpbnB1dFxuICAgICAgICBbY2xhc3MuaXMtaW52YWxpZF09XCJoYXNFcnJvcnNUb0Rpc3BsYXkoKSB8fCBoYXNJbmhlcml0RXJyb3JGcm9tUGFyZW50KClcIlxuICAgICAgICBbY2xhc3MuY2xlYXJhYmxlLWlucHV0XT1cImRpc3BsYXlDbGVhckJ1dHRvbigpIHwgYXN5bmNcIlxuICAgICAgICBjbGFzcz1cImZvcm0tY29udHJvbFwiXG4gICAgICAgIFtuYW1lXT1cIm5hbWUgfHwgbGFiZWxcIlxuICAgICAgICBbYXR0ci5tYXhsZW5ndGhdPVwiZ2V0TWF4TGVuZ3RoKClcIlxuICAgICAgICBbYXR0ci5hdXRvY29tcGxldGVdPVwiZ2V0QXV0b0NvbXBsZXRlKClcIlxuICAgICAgICBbYXR0ci5hdXRvY2FwaXRhbGl6ZV09XCJhdXRvY2FwaXRhbGl6ZVwiXG4gICAgICAgIFthdHRyLmRpc2FibGVkXT1cImRpc2FibGVkID8gJ2Rpc2FibGVkJyA6IG51bGxcIlxuICAgICAgICBbYXR0ci50eXBlXT1cInR5cGVcIlxuICAgICAgICBbYXR0ci5wYXR0ZXJuXT1cInBhdHRlcm5cIlxuICAgICAgICBbYXR0ci5taW5dPVwibWluXCJcbiAgICAgICAgW2F0dHIubWF4XT1cIm1heFwiXG4gICAgICAgIFthdHRyLmlkXT1cImJ1aWxkQ2hpbGRJZCgpXCJcbiAgICAgICAgW2F0dHIuYXJpYS1kZXNjcmliZWRieV09XCJnZXREZXNjcmliZWRCeSgpXCJcbiAgICAgICAgW2F0dHIuYXJpYS1pbnZhbGlkXT1cImhhc0Vycm9yc1RvRGlzcGxheSgpIHx8IG51bGxcIlxuICAgICAgICBbYXR0ci5hcmlhLXJlcXVpcmVkXT1cInJlcXVpcmVkIHx8IG51bGxcIlxuICAgICAgICBbbmdNb2RlbF09XCJtb2RlbFwiXG4gICAgICAgIChwYXN0ZSk9XCJvblBhc3RlKCRldmVudClcIlxuICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJ1cGRhdGVOZ01vZGVsKCRldmVudClcIlxuICAgICAgICAoaW5wdXQpPVwiaGFuZGxlQ2hhbmdlKGVudHJ5Q29tcG9uZW50LnZhbHVlKVwiXG4gICAgICAgIChrZXlkb3duKT1cIm9uS2V5ZG93bigkZXZlbnQpXCJcbiAgICAgICAgKGJsdXIpPVwib25CbHVyKCRldmVudClcIlxuICAgICAgICAoZm9jdXMpPVwib25Gb2N1cygkZXZlbnQpXCJcbiAgICAgICAgI2VudHJ5Q29tcG9uZW50XG4gICAgLz5cblxuICAgIDxidXR0b25cbiAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgIFtpZF09XCJidWlsZENoaWxkSWQoKSArICdDbGVhckJ1dHRvbidcIlxuICAgICAgICAqbmdJZj1cImRpc3BsYXlDbGVhckJ1dHRvbigpIHwgYXN5bmNcIlxuICAgICAgICBjbGFzcz1cImNsZWFyYWJsZS1pbnB1dC1jbGVhci1idXR0b24gYnRuXCJcbiAgICAgICAgKGNsaWNrKT1cIm9uQ2xlYXIoKVwiXG4gICAgPlxuICAgICAgICA8Zm9laG4taWNvbi10aW1lc1xuICAgICAgICAgICAgY2xhc3M9XCJjbGVhcmFibGUtaW5wdXQtY2xlYXItYnV0dG9uLWljb25cIlxuICAgICAgICAgICAgdGl0bGU9XCJSw6lpbml0aWFsaXNlciBsZSBjaGFtcHNcIlxuICAgICAgICA+PC9mb2Vobi1pY29uLXRpbWVzPlxuICAgIDwvYnV0dG9uPlxuPC9kaXY+XG4iXX0=
@@ -97,10 +97,10 @@ export class FoehnListComponent {
97
97
  }
98
98
  }
99
99
  FoehnListComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: FoehnListComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
100
- FoehnListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: FoehnListComponent, selector: "foehn-list", inputs: { itemsPerPage: "itemsPerPage", id: "id", previousLabel: "previousLabel", nextLabel: "nextLabel", fixedPageCount: "fixedPageCount", list: "list", trackByFn: "trackByFn" }, outputs: { pageChange: "pageChange" }, queries: [{ propertyName: "templateVariable", first: true, predicate: TemplateRef, descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div class=\"row\" [id]=\"id\">\n <div class=\"col-lg-12 col-md-12 col-sm-12 col-xs-12\">\n <ul class=\"list-unstyled\">\n <li\n *ngFor=\"\n let item of filteredList;\n let index = index;\n trackBy: trackByFn\n \"\n >\n <ng-template\n [ngTemplateOutlet]=\"templateVariable\"\n [ngTemplateOutletContext]=\"{ item: item, index: index }\"\n ></ng-template>\n </li>\n </ul>\n\n <div class=\"row d-flex justify-content-between p-1\">\n <div class=\"col-lg-3 col-md-3 col-sm-6 col-xs-6\">\n <nav\n class=\"vd-pagination\"\n aria-label=\"Pagination\"\n *ngIf=\"hasPreviousPage()\"\n >\n <ul class=\"vd-pagination__list\">\n <li\n class=\"vd-pagination__item vd-pagination__item--previous\"\n >\n <button\n class=\"btn-link vd-pagination__link btn-no-extra vd-pagination__link-reset\"\n (click)=\"previousPage()\"\n >\n <span class=\"vd-pagination__title\">\n <foehn-icon-chevron-left></foehn-icon-chevron-left>\n {{ previousLabel }}\n </span>\n <span class=\"sr-only\">:</span>\n <span class=\"vd-pagination__label\">\n {{ currentPage - 1 }} sur {{ pagesCount() }}\n </span>\n </button>\n </li>\n </ul>\n </nav>\n </div>\n\n <div class=\"col-lg-3 col-md-3 col-sm-6 col-xs-6\">\n <nav\n class=\"vd-pagination\"\n aria-label=\"Pagination\"\n *ngIf=\"hasNextPage()\"\n >\n <ul class=\"vd-pagination__list\">\n <li\n class=\"vd-pagination__item vd-pagination__item--next\"\n >\n <button\n class=\"btn-link vd-pagination__link btn-no-extra vd-pagination__link-reset\"\n (click)=\"nextPage()\"\n >\n <span class=\"vd-pagination__title\">\n {{ nextLabel }}\n <foehn-icon-chevron-right></foehn-icon-chevron-right>\n </span>\n <span class=\"sr-only\">:</span>\n <span class=\"vd-pagination__label\">\n {{ currentPage + 1 }} sur {{ pagesCount() }}\n </span>\n </button>\n </li>\n </ul>\n </nav>\n </div>\n </div>\n </div>\n</div>\n", styles: [".btn-no-extra{padding:0;border:none;font-weight:400;-webkit-text-decoration-line:none;text-decoration-line:none}.vd-pagination__link-reset{background:none;border:none;font-weight:inherit;-webkit-text-decoration-line:none;text-decoration-line:none;text-align:inherit;cursor:pointer}.vd-pagination__link-reset:focus{background-color:var(--vd-focus)}\n"], components: [{ type: i1.FoehnIconChevronLeftComponent, selector: "foehn-icon-chevron-left" }, { type: i2.FoehnIconChevronRightComponent, selector: "foehn-icon-chevron-right" }], directives: [{ type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
100
+ FoehnListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: FoehnListComponent, selector: "foehn-list", inputs: { itemsPerPage: "itemsPerPage", id: "id", previousLabel: "previousLabel", nextLabel: "nextLabel", fixedPageCount: "fixedPageCount", list: "list", trackByFn: "trackByFn" }, outputs: { pageChange: "pageChange" }, queries: [{ propertyName: "templateVariable", first: true, predicate: TemplateRef, descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div class=\"row\" [id]=\"id\">\n <div class=\"col-lg-12 col-md-12 col-sm-12 col-xs-12\">\n <ul class=\"list-unstyled\">\n <li\n *ngFor=\"\n let item of filteredList;\n let index = index;\n trackBy: trackByFn\n \"\n >\n <ng-template\n [ngTemplateOutlet]=\"templateVariable\"\n [ngTemplateOutletContext]=\"{ item: item, index: index }\"\n ></ng-template>\n </li>\n </ul>\n\n <div class=\"row d-flex justify-content-between p-1\">\n <div class=\"col-lg-3 col-md-3 col-sm-6 col-xs-6\">\n <nav\n class=\"vd-pagination\"\n aria-label=\"Pagination\"\n *ngIf=\"hasPreviousPage()\"\n >\n <ul class=\"vd-pagination__list\">\n <li\n class=\"vd-pagination__item vd-pagination__item--previous\"\n >\n <button\n class=\"btn-link vd-pagination__link btn-no-extra vd-pagination__link-reset\"\n (click)=\"previousPage()\"\n >\n <span class=\"vd-pagination__title\">\n <foehn-icon-chevron-left></foehn-icon-chevron-left>\n {{ previousLabel }}\n </span>\n <span class=\"sr-only\">:</span>\n <span class=\"vd-pagination__label\">\n {{ currentPage - 1 }} sur {{ pagesCount() }}\n </span>\n </button>\n </li>\n </ul>\n </nav>\n </div>\n\n <div class=\"col-lg-3 col-md-3 col-sm-6 col-xs-6\">\n <nav\n class=\"vd-pagination\"\n aria-label=\"Pagination\"\n *ngIf=\"hasNextPage()\"\n >\n <ul class=\"vd-pagination__list\">\n <li\n class=\"vd-pagination__item vd-pagination__item--next\"\n >\n <button\n class=\"btn-link vd-pagination__link btn-no-extra vd-pagination__link-reset\"\n (click)=\"nextPage()\"\n >\n <span class=\"vd-pagination__title\">\n {{ nextLabel }}\n <foehn-icon-chevron-right></foehn-icon-chevron-right>\n </span>\n <span class=\"sr-only\">:</span>\n <span class=\"vd-pagination__label\">\n {{ currentPage + 1 }} sur {{ pagesCount() }}\n </span>\n </button>\n </li>\n </ul>\n </nav>\n </div>\n </div>\n </div>\n</div>\n", styles: [".btn-no-extra{padding:0;border:none;font-weight:400;text-decoration-line:none}.vd-pagination__link-reset{background:none;border:none;font-weight:inherit;text-decoration-line:none;text-align:inherit;cursor:pointer}.vd-pagination__link-reset:focus{background-color:var(--vd-focus)}\n"], components: [{ type: i1.FoehnIconChevronLeftComponent, selector: "foehn-icon-chevron-left" }, { type: i2.FoehnIconChevronRightComponent, selector: "foehn-icon-chevron-right" }], directives: [{ type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
101
101
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: FoehnListComponent, decorators: [{
102
102
  type: Component,
103
- args: [{ selector: 'foehn-list', template: "<div class=\"row\" [id]=\"id\">\n <div class=\"col-lg-12 col-md-12 col-sm-12 col-xs-12\">\n <ul class=\"list-unstyled\">\n <li\n *ngFor=\"\n let item of filteredList;\n let index = index;\n trackBy: trackByFn\n \"\n >\n <ng-template\n [ngTemplateOutlet]=\"templateVariable\"\n [ngTemplateOutletContext]=\"{ item: item, index: index }\"\n ></ng-template>\n </li>\n </ul>\n\n <div class=\"row d-flex justify-content-between p-1\">\n <div class=\"col-lg-3 col-md-3 col-sm-6 col-xs-6\">\n <nav\n class=\"vd-pagination\"\n aria-label=\"Pagination\"\n *ngIf=\"hasPreviousPage()\"\n >\n <ul class=\"vd-pagination__list\">\n <li\n class=\"vd-pagination__item vd-pagination__item--previous\"\n >\n <button\n class=\"btn-link vd-pagination__link btn-no-extra vd-pagination__link-reset\"\n (click)=\"previousPage()\"\n >\n <span class=\"vd-pagination__title\">\n <foehn-icon-chevron-left></foehn-icon-chevron-left>\n {{ previousLabel }}\n </span>\n <span class=\"sr-only\">:</span>\n <span class=\"vd-pagination__label\">\n {{ currentPage - 1 }} sur {{ pagesCount() }}\n </span>\n </button>\n </li>\n </ul>\n </nav>\n </div>\n\n <div class=\"col-lg-3 col-md-3 col-sm-6 col-xs-6\">\n <nav\n class=\"vd-pagination\"\n aria-label=\"Pagination\"\n *ngIf=\"hasNextPage()\"\n >\n <ul class=\"vd-pagination__list\">\n <li\n class=\"vd-pagination__item vd-pagination__item--next\"\n >\n <button\n class=\"btn-link vd-pagination__link btn-no-extra vd-pagination__link-reset\"\n (click)=\"nextPage()\"\n >\n <span class=\"vd-pagination__title\">\n {{ nextLabel }}\n <foehn-icon-chevron-right></foehn-icon-chevron-right>\n </span>\n <span class=\"sr-only\">:</span>\n <span class=\"vd-pagination__label\">\n {{ currentPage + 1 }} sur {{ pagesCount() }}\n </span>\n </button>\n </li>\n </ul>\n </nav>\n </div>\n </div>\n </div>\n</div>\n", styles: [".btn-no-extra{padding:0;border:none;font-weight:400;-webkit-text-decoration-line:none;text-decoration-line:none}.vd-pagination__link-reset{background:none;border:none;font-weight:inherit;-webkit-text-decoration-line:none;text-decoration-line:none;text-align:inherit;cursor:pointer}.vd-pagination__link-reset:focus{background-color:var(--vd-focus)}\n"] }]
103
+ args: [{ selector: 'foehn-list', template: "<div class=\"row\" [id]=\"id\">\n <div class=\"col-lg-12 col-md-12 col-sm-12 col-xs-12\">\n <ul class=\"list-unstyled\">\n <li\n *ngFor=\"\n let item of filteredList;\n let index = index;\n trackBy: trackByFn\n \"\n >\n <ng-template\n [ngTemplateOutlet]=\"templateVariable\"\n [ngTemplateOutletContext]=\"{ item: item, index: index }\"\n ></ng-template>\n </li>\n </ul>\n\n <div class=\"row d-flex justify-content-between p-1\">\n <div class=\"col-lg-3 col-md-3 col-sm-6 col-xs-6\">\n <nav\n class=\"vd-pagination\"\n aria-label=\"Pagination\"\n *ngIf=\"hasPreviousPage()\"\n >\n <ul class=\"vd-pagination__list\">\n <li\n class=\"vd-pagination__item vd-pagination__item--previous\"\n >\n <button\n class=\"btn-link vd-pagination__link btn-no-extra vd-pagination__link-reset\"\n (click)=\"previousPage()\"\n >\n <span class=\"vd-pagination__title\">\n <foehn-icon-chevron-left></foehn-icon-chevron-left>\n {{ previousLabel }}\n </span>\n <span class=\"sr-only\">:</span>\n <span class=\"vd-pagination__label\">\n {{ currentPage - 1 }} sur {{ pagesCount() }}\n </span>\n </button>\n </li>\n </ul>\n </nav>\n </div>\n\n <div class=\"col-lg-3 col-md-3 col-sm-6 col-xs-6\">\n <nav\n class=\"vd-pagination\"\n aria-label=\"Pagination\"\n *ngIf=\"hasNextPage()\"\n >\n <ul class=\"vd-pagination__list\">\n <li\n class=\"vd-pagination__item vd-pagination__item--next\"\n >\n <button\n class=\"btn-link vd-pagination__link btn-no-extra vd-pagination__link-reset\"\n (click)=\"nextPage()\"\n >\n <span class=\"vd-pagination__title\">\n {{ nextLabel }}\n <foehn-icon-chevron-right></foehn-icon-chevron-right>\n </span>\n <span class=\"sr-only\">:</span>\n <span class=\"vd-pagination__label\">\n {{ currentPage + 1 }} sur {{ pagesCount() }}\n </span>\n </button>\n </li>\n </ul>\n </nav>\n </div>\n </div>\n </div>\n</div>\n", styles: [".btn-no-extra{padding:0;border:none;font-weight:400;text-decoration-line:none}.vd-pagination__link-reset{background:none;border:none;font-weight:inherit;text-decoration-line:none;text-align:inherit;cursor:pointer}.vd-pagination__link-reset:focus{background-color:var(--vd-focus)}\n"] }]
104
104
  }], propDecorators: {
105
105
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
106
106
  templateVariable: [{
@@ -66,10 +66,10 @@ export class FoehnNavigationComponent {
66
66
  }
67
67
  }
68
68
  FoehnNavigationComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: FoehnNavigationComponent, deps: [{ token: i1.FoehnNavigationService }, { token: i2.ActivatedRoute }], target: i0.ɵɵFactoryTarget.Component });
69
- FoehnNavigationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: FoehnNavigationComponent, selector: "foehn-navigation", inputs: { nextLabel: "nextLabel", prevLabel: "prevLabel", transmitLabel: "transmitLabel", continueLaterLabel: "continueLaterLabel", showContinueLaterButton: "showContinueLaterButton", showNextButton: "showNextButton" }, outputs: { onNext: "onNext", onPrevious: "onPrevious" }, ngImport: i0, template: "<gesdem-action-recovery-registration\n *ngIf=\"showContinueLaterButton\"\n [continueLaterLabel]=\"continueLaterLabel | fromDictionary\"\n></gesdem-action-recovery-registration>\n\n<nav class=\"vd-pagination\" id=\"foehn_navContainer\" aria-label=\"Pagination\">\n <ul class=\"vd-pagination__list\">\n <li\n class=\"vd-pagination__item vd-pagination__item--previous\"\n *ngIf=\"canShowPreviousButton()\"\n >\n <button\n id=\"prevButton\"\n type=\"button\"\n class=\"btn-link vd-pagination__link vd-pagination__link-reset\"\n (click)=\"$event.preventDefault(); goToPrevious()\"\n >\n <span class=\"vd-pagination__title\">\n <foehn-icon-chevron-left\n class=\"mr-1\"\n aria-hidden=\"true\"\n ></foehn-icon-chevron-left>\n {{ prevLabel | fromDictionary }}\n </span>\n <span class=\"sr-only\" *ngIf=\"isLinearRouting()\">:</span>\n <span class=\"vd-pagination__label\" *ngIf=\"isLinearRouting()\">\n {{ getPreviousRouteIndex() }}\n {{\n 'foehn-navigation.route.index.separator'\n | fromDictionary\n }}\n {{ getTotalRoutesSize() }}\n </span>\n </button>\n </li>\n <li\n class=\"vd-pagination__item vd-pagination__item--next\"\n *ngIf=\"!isLastFormPage() && canShowNextButton()\"\n >\n <button\n id=\"nextButton\"\n type=\"submit\"\n class=\"btn-link vd-pagination__link vd-pagination__link-reset\"\n (click)=\"$event.preventDefault(); goToNext()\"\n >\n <span class=\"vd-pagination__title\">\n {{ nextLabel | fromDictionary }}\n <foehn-icon-chevron-right\n class=\"ml-1\"\n aria-hidden=\"true\"\n ></foehn-icon-chevron-right>\n </span>\n <span class=\"sr-only\" *ngIf=\"isLinearRouting()\">:</span>\n <span class=\"vd-pagination__label\" *ngIf=\"isLinearRouting()\">\n {{ getNextRouteIndex() }}\n {{\n 'foehn-navigation.route.index.separator'\n | fromDictionary\n }}\n {{ getTotalRoutesSize() }}\n </span>\n </button>\n </li>\n <li\n class=\"vd-pagination__item vd-pagination__item--next\"\n *ngIf=\"isLastFormPage() && canShowNextButton()\"\n >\n <button\n *ngIf=\"isLastFormPage() && canShowNextButton()\"\n type=\"submit\"\n id=\"transmitButton\"\n (click)=\"goToNext()\"\n class=\"btn btn-success vd-btn-pagination-submit\"\n >\n {{ transmitLabel | fromDictionary }}\n </button>\n </li>\n </ul>\n</nav>\n", styles: [".vd-pagination__link-reset{background:none;border:none;font-weight:inherit;-webkit-text-decoration-line:none;text-decoration-line:none;text-align:inherit;cursor:pointer}.vd-pagination__link-reset:focus{background-color:var(--vd-focus)}\n"], components: [{ type: i3.GesdemActionRecoveryRegistrationComponent, selector: "gesdem-action-recovery-registration", inputs: ["continueLaterLabel"] }, { type: i4.FoehnIconChevronLeftComponent, selector: "foehn-icon-chevron-left" }, { type: i5.FoehnIconChevronRightComponent, selector: "foehn-icon-chevron-right" }], directives: [{ type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "fromDictionary": i7.SdkDictionaryPipe } });
69
+ FoehnNavigationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: FoehnNavigationComponent, selector: "foehn-navigation", inputs: { nextLabel: "nextLabel", prevLabel: "prevLabel", transmitLabel: "transmitLabel", continueLaterLabel: "continueLaterLabel", showContinueLaterButton: "showContinueLaterButton", showNextButton: "showNextButton" }, outputs: { onNext: "onNext", onPrevious: "onPrevious" }, ngImport: i0, template: "<gesdem-action-recovery-registration\n *ngIf=\"showContinueLaterButton\"\n [continueLaterLabel]=\"continueLaterLabel | fromDictionary\"\n></gesdem-action-recovery-registration>\n\n<nav class=\"vd-pagination\" id=\"foehn_navContainer\" aria-label=\"Pagination\">\n <ul class=\"vd-pagination__list\">\n <li\n class=\"vd-pagination__item vd-pagination__item--previous\"\n *ngIf=\"canShowPreviousButton()\"\n >\n <button\n id=\"prevButton\"\n type=\"button\"\n class=\"btn-link vd-pagination__link vd-pagination__link-reset\"\n (click)=\"$event.preventDefault(); goToPrevious()\"\n >\n <span class=\"vd-pagination__title\">\n <foehn-icon-chevron-left\n class=\"mr-1\"\n aria-hidden=\"true\"\n ></foehn-icon-chevron-left>\n {{ prevLabel | fromDictionary }}\n </span>\n <span class=\"sr-only\" *ngIf=\"isLinearRouting()\">:</span>\n <span class=\"vd-pagination__label\" *ngIf=\"isLinearRouting()\">\n {{ getPreviousRouteIndex() }}\n {{\n 'foehn-navigation.route.index.separator'\n | fromDictionary\n }}\n {{ getTotalRoutesSize() }}\n </span>\n </button>\n </li>\n <li\n class=\"vd-pagination__item vd-pagination__item--next\"\n *ngIf=\"!isLastFormPage() && canShowNextButton()\"\n >\n <button\n id=\"nextButton\"\n type=\"submit\"\n class=\"btn-link vd-pagination__link vd-pagination__link-reset\"\n (click)=\"$event.preventDefault(); goToNext()\"\n >\n <span class=\"vd-pagination__title\">\n {{ nextLabel | fromDictionary }}\n <foehn-icon-chevron-right\n class=\"ml-1\"\n aria-hidden=\"true\"\n ></foehn-icon-chevron-right>\n </span>\n <span class=\"sr-only\" *ngIf=\"isLinearRouting()\">:</span>\n <span class=\"vd-pagination__label\" *ngIf=\"isLinearRouting()\">\n {{ getNextRouteIndex() }}\n {{\n 'foehn-navigation.route.index.separator'\n | fromDictionary\n }}\n {{ getTotalRoutesSize() }}\n </span>\n </button>\n </li>\n <li\n class=\"vd-pagination__item vd-pagination__item--next\"\n *ngIf=\"isLastFormPage() && canShowNextButton()\"\n >\n <button\n *ngIf=\"isLastFormPage() && canShowNextButton()\"\n type=\"submit\"\n id=\"transmitButton\"\n (click)=\"goToNext()\"\n class=\"btn btn-success vd-btn-pagination-submit\"\n >\n {{ transmitLabel | fromDictionary }}\n </button>\n </li>\n </ul>\n</nav>\n", styles: [".vd-pagination__link-reset{background:none;border:none;font-weight:inherit;text-decoration-line:none;text-align:inherit;cursor:pointer}.vd-pagination__link-reset:focus{background-color:var(--vd-focus)}\n"], components: [{ type: i3.GesdemActionRecoveryRegistrationComponent, selector: "gesdem-action-recovery-registration", inputs: ["continueLaterLabel"] }, { type: i4.FoehnIconChevronLeftComponent, selector: "foehn-icon-chevron-left" }, { type: i5.FoehnIconChevronRightComponent, selector: "foehn-icon-chevron-right" }], directives: [{ type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "fromDictionary": i7.SdkDictionaryPipe } });
70
70
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: FoehnNavigationComponent, decorators: [{
71
71
  type: Component,
72
- args: [{ selector: 'foehn-navigation', template: "<gesdem-action-recovery-registration\n *ngIf=\"showContinueLaterButton\"\n [continueLaterLabel]=\"continueLaterLabel | fromDictionary\"\n></gesdem-action-recovery-registration>\n\n<nav class=\"vd-pagination\" id=\"foehn_navContainer\" aria-label=\"Pagination\">\n <ul class=\"vd-pagination__list\">\n <li\n class=\"vd-pagination__item vd-pagination__item--previous\"\n *ngIf=\"canShowPreviousButton()\"\n >\n <button\n id=\"prevButton\"\n type=\"button\"\n class=\"btn-link vd-pagination__link vd-pagination__link-reset\"\n (click)=\"$event.preventDefault(); goToPrevious()\"\n >\n <span class=\"vd-pagination__title\">\n <foehn-icon-chevron-left\n class=\"mr-1\"\n aria-hidden=\"true\"\n ></foehn-icon-chevron-left>\n {{ prevLabel | fromDictionary }}\n </span>\n <span class=\"sr-only\" *ngIf=\"isLinearRouting()\">:</span>\n <span class=\"vd-pagination__label\" *ngIf=\"isLinearRouting()\">\n {{ getPreviousRouteIndex() }}\n {{\n 'foehn-navigation.route.index.separator'\n | fromDictionary\n }}\n {{ getTotalRoutesSize() }}\n </span>\n </button>\n </li>\n <li\n class=\"vd-pagination__item vd-pagination__item--next\"\n *ngIf=\"!isLastFormPage() && canShowNextButton()\"\n >\n <button\n id=\"nextButton\"\n type=\"submit\"\n class=\"btn-link vd-pagination__link vd-pagination__link-reset\"\n (click)=\"$event.preventDefault(); goToNext()\"\n >\n <span class=\"vd-pagination__title\">\n {{ nextLabel | fromDictionary }}\n <foehn-icon-chevron-right\n class=\"ml-1\"\n aria-hidden=\"true\"\n ></foehn-icon-chevron-right>\n </span>\n <span class=\"sr-only\" *ngIf=\"isLinearRouting()\">:</span>\n <span class=\"vd-pagination__label\" *ngIf=\"isLinearRouting()\">\n {{ getNextRouteIndex() }}\n {{\n 'foehn-navigation.route.index.separator'\n | fromDictionary\n }}\n {{ getTotalRoutesSize() }}\n </span>\n </button>\n </li>\n <li\n class=\"vd-pagination__item vd-pagination__item--next\"\n *ngIf=\"isLastFormPage() && canShowNextButton()\"\n >\n <button\n *ngIf=\"isLastFormPage() && canShowNextButton()\"\n type=\"submit\"\n id=\"transmitButton\"\n (click)=\"goToNext()\"\n class=\"btn btn-success vd-btn-pagination-submit\"\n >\n {{ transmitLabel | fromDictionary }}\n </button>\n </li>\n </ul>\n</nav>\n", styles: [".vd-pagination__link-reset{background:none;border:none;font-weight:inherit;-webkit-text-decoration-line:none;text-decoration-line:none;text-align:inherit;cursor:pointer}.vd-pagination__link-reset:focus{background-color:var(--vd-focus)}\n"] }]
72
+ args: [{ selector: 'foehn-navigation', template: "<gesdem-action-recovery-registration\n *ngIf=\"showContinueLaterButton\"\n [continueLaterLabel]=\"continueLaterLabel | fromDictionary\"\n></gesdem-action-recovery-registration>\n\n<nav class=\"vd-pagination\" id=\"foehn_navContainer\" aria-label=\"Pagination\">\n <ul class=\"vd-pagination__list\">\n <li\n class=\"vd-pagination__item vd-pagination__item--previous\"\n *ngIf=\"canShowPreviousButton()\"\n >\n <button\n id=\"prevButton\"\n type=\"button\"\n class=\"btn-link vd-pagination__link vd-pagination__link-reset\"\n (click)=\"$event.preventDefault(); goToPrevious()\"\n >\n <span class=\"vd-pagination__title\">\n <foehn-icon-chevron-left\n class=\"mr-1\"\n aria-hidden=\"true\"\n ></foehn-icon-chevron-left>\n {{ prevLabel | fromDictionary }}\n </span>\n <span class=\"sr-only\" *ngIf=\"isLinearRouting()\">:</span>\n <span class=\"vd-pagination__label\" *ngIf=\"isLinearRouting()\">\n {{ getPreviousRouteIndex() }}\n {{\n 'foehn-navigation.route.index.separator'\n | fromDictionary\n }}\n {{ getTotalRoutesSize() }}\n </span>\n </button>\n </li>\n <li\n class=\"vd-pagination__item vd-pagination__item--next\"\n *ngIf=\"!isLastFormPage() && canShowNextButton()\"\n >\n <button\n id=\"nextButton\"\n type=\"submit\"\n class=\"btn-link vd-pagination__link vd-pagination__link-reset\"\n (click)=\"$event.preventDefault(); goToNext()\"\n >\n <span class=\"vd-pagination__title\">\n {{ nextLabel | fromDictionary }}\n <foehn-icon-chevron-right\n class=\"ml-1\"\n aria-hidden=\"true\"\n ></foehn-icon-chevron-right>\n </span>\n <span class=\"sr-only\" *ngIf=\"isLinearRouting()\">:</span>\n <span class=\"vd-pagination__label\" *ngIf=\"isLinearRouting()\">\n {{ getNextRouteIndex() }}\n {{\n 'foehn-navigation.route.index.separator'\n | fromDictionary\n }}\n {{ getTotalRoutesSize() }}\n </span>\n </button>\n </li>\n <li\n class=\"vd-pagination__item vd-pagination__item--next\"\n *ngIf=\"isLastFormPage() && canShowNextButton()\"\n >\n <button\n *ngIf=\"isLastFormPage() && canShowNextButton()\"\n type=\"submit\"\n id=\"transmitButton\"\n (click)=\"goToNext()\"\n class=\"btn btn-success vd-btn-pagination-submit\"\n >\n {{ transmitLabel | fromDictionary }}\n </button>\n </li>\n </ul>\n</nav>\n", styles: [".vd-pagination__link-reset{background:none;border:none;font-weight:inherit;text-decoration-line:none;text-align:inherit;cursor:pointer}.vd-pagination__link-reset:focus{background-color:var(--vd-focus)}\n"] }]
73
73
  }], ctorParameters: function () { return [{ type: i1.FoehnNavigationService }, { type: i2.ActivatedRoute }]; }, propDecorators: {
74
74
  // eslint-disable-next-line @angular-eslint/no-output-on-prefix
75
75
  onNext: [{
@@ -114,10 +114,10 @@ export class FoehnTableComponent {
114
114
  }
115
115
  }
116
116
  FoehnTableComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: FoehnTableComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
117
- FoehnTableComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: FoehnTableComponent, selector: "foehn-table", inputs: { itemsPerPage: "itemsPerPage", id: "id", previousLabel: "previousLabel", nextLabel: "nextLabel", totalElements: "totalElements", fixedPageCount: "fixedPageCount", columnsConfiguration: "columnsConfiguration", sort: "sort", list: "list", trackByFn: "trackByFn" }, outputs: { pageChange: "pageChange", sortChange: "sortChange" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"row\" [id]=\"id\">\n <div class=\"col-12\">\n <h4 *ngIf=\"!!totalElements && totalElements === 1\">\n {{ 'foehn-table.totalElements.1' | fromDictionary }}\n </h4>\n <h4 *ngIf=\"!!totalElements && totalElements !== 1\">\n {{\n 'foehn-table.totalElements'\n | fromDictionary: { total: totalElements.toString() }\n }}\n </h4>\n </div>\n\n <div class=\"col-12 table-responsive\">\n <table class=\"table table-hover\">\n <thead class=\"vd-bg-pattern-bars-gray\">\n <tr>\n <th\n scope=\"col\"\n *ngFor=\"let col of columnsConfiguration\"\n [id]=\"col.id\"\n >\n <ng-container\n *ngIf=\"!filteredList.length || !col.sortAttribute\"\n >\n <span\n [innerHTML]=\"\n col.columnLabelKey | fromDictionary\n \"\n ></span>\n </ng-container>\n\n <ng-container\n *ngIf=\"!!filteredList.length && !!col.sortAttribute\"\n >\n <a\n href=\"#\"\n class=\"vd-text-thin\"\n (click)=\"\n $event.preventDefault();\n triggerSort(col.sortAttribute)\n \"\n [title]=\"\n 'Trier par ' +\n (col.columnLabelKey | fromDictionary)\n \"\n >\n <span\n [innerHTML]=\"\n col.columnLabelKey | fromDictionary\n \"\n ></span>\n <ng-container\n *ngIf=\"\n sort.sortAttribute === col.sortAttribute\n \"\n >\n <span\n class=\"ml-3\"\n *ngIf=\"sort.sortDirection === 'ASC'\"\n >\n <foehn-icon-chevron-up></foehn-icon-chevron-up>\n </span>\n <span\n class=\"ml-3\"\n *ngIf=\"sort.sortDirection === 'DESC'\"\n >\n <foehn-icon-chevron-down></foehn-icon-chevron-down>\n </span>\n </ng-container>\n </a>\n </ng-container>\n </th>\n </tr>\n </thead>\n <tbody>\n <tr\n *ngFor=\"\n let item of filteredList;\n let index = index;\n trackBy: trackByFn\n \"\n >\n <td\n *ngFor=\"let col of columnsConfiguration\"\n [id]=\"col.id + '-' + index\"\n >\n <ng-container *ngIf=\"!!col.isImportant\">\n <span\n *ngIf=\"col.isImportant(item)\"\n class=\"cell-vertical-align-middle\"\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"30\"\n height=\"30\"\n style=\"color: var(--red)\"\n fill=\"currentColor\"\n class=\"bi bi-exclamation\"\n viewBox=\"0 0 16 16\"\n >\n <path\n d=\"M7.002 11a1 1 0 1 1 2 0 1 1 0 0 1-2 0zM7.1 4.995a.905.905 0 1 1 1.8 0l-.35 3.507a.553.553 0 0 1-1.1 0L7.1 4.995z\"\n />\n </svg>\n </span>\n </ng-container>\n\n <ng-container *ngIf=\"!!col.iconGetter\">\n <span\n *ngIf=\"col.iconGetter(item) as iconDef\"\n class=\"cell-vertical-align-middle mr-2\"\n >\n <fa-icon\n aria-hidden=\"true\"\n [icon]=\"iconDef.icon\"\n [title]=\"iconDef.label\"\n ></fa-icon>\n <span class=\"sr-only\">{{ iconDef.label }}</span>\n </span>\n </ng-container>\n\n <ng-container *ngIf=\"!!col.template\">\n <ng-template\n [ngTemplateOutlet]=\"col.template\"\n [ngTemplateOutletContext]=\"{\n item: item,\n index: index\n }\"\n ></ng-template>\n </ng-container>\n\n <ng-container *ngIf=\"!col.template\">\n <ng-container *ngIf=\"!col.routerLinkGetter\">\n <span\n [innerHTML]=\"col.valueGetter(item)\"\n class=\"cell-vertical-align-middle\"\n ></span>\n </ng-container>\n\n <ng-container *ngIf=\"!!col.routerLinkGetter\">\n <a\n [routerLink]=\"col.routerLinkGetter(item)\"\n queryParamsHandling=\"merge\"\n class=\"cell-vertical-align-middle\"\n >\n <span\n [innerHTML]=\"col.valueGetter(item)\"\n ></span>\n </a>\n </ng-container>\n </ng-container>\n </td>\n </tr>\n <tr *ngIf=\"!!columnsConfiguration && !filteredList.length\">\n <td [colSpan]=\"columnsConfiguration.length\">\n <div class=\"w-100 text-center\">\n {{ 'foehn-table.totalElements.0' | fromDictionary }}\n </div>\n </td>\n </tr>\n </tbody>\n </table>\n\n <div class=\"row d-flex justify-content-between p-1\">\n <div class=\"col-lg-3 col-md-3 col-sm-6 col-xs-6\">\n <nav\n class=\"vd-pagination\"\n aria-label=\"Pagination\"\n *ngIf=\"hasPreviousPage()\"\n >\n <ul class=\"vd-pagination__list\">\n <li\n class=\"vd-pagination__item vd-pagination__item--previous\"\n >\n <button\n class=\"btn-link vd-pagination__link btn-no-extra vd-pagination__link-reset\"\n (click)=\"previousPage()\"\n >\n <span class=\"vd-pagination__title\">\n <foehn-icon-chevron-left></foehn-icon-chevron-left>\n {{ previousLabel }}\n </span>\n <span class=\"sr-only\">:</span>\n <span class=\"vd-pagination__label\">\n {{ currentPage - 1 }} sur {{ pagesCount() }}\n </span>\n </button>\n </li>\n </ul>\n </nav>\n </div>\n\n <div class=\"col-lg-3 col-md-3 col-sm-6 col-xs-6\">\n <nav\n class=\"vd-pagination\"\n aria-label=\"Pagination\"\n *ngIf=\"hasNextPage()\"\n >\n <ul class=\"vd-pagination__list\">\n <li\n class=\"vd-pagination__item vd-pagination__item--next\"\n >\n <button\n class=\"btn-link vd-pagination__link btn-no-extra vd-pagination__link-reset\"\n (click)=\"nextPage()\"\n >\n <span class=\"vd-pagination__title\">\n {{ nextLabel }}\n <foehn-icon-chevron-right></foehn-icon-chevron-right>\n </span>\n <span class=\"sr-only\">:</span>\n <span class=\"vd-pagination__label\">\n {{ currentPage + 1 }} sur {{ pagesCount() }}\n </span>\n </button>\n </li>\n </ul>\n </nav>\n </div>\n </div>\n </div>\n</div>\n", styles: [".btn-no-extra{padding:0;border:none;font-weight:400;-webkit-text-decoration-line:none;text-decoration-line:none}.vd-pagination__link-reset{background:none;border:none;font-weight:inherit;-webkit-text-decoration-line:none;text-decoration-line:none;text-align:inherit;cursor:pointer}.vd-pagination__link-reset:focus{background-color:var(--vd-focus)}.cell-vertical-align-middle{vertical-align:middle}\n"], components: [{ type: i1.FoehnIconChevronUpComponent, selector: "foehn-icon-chevron-up" }, { type: i2.FoehnIconChevronDownComponent, selector: "foehn-icon-chevron-down" }, { type: i3.FaIconComponent, selector: "fa-icon", inputs: ["icon", "title", "spin", "pulse", "mask", "styles", "flip", "size", "pull", "border", "inverse", "symbol", "rotate", "fixedWidth", "classes", "transform", "a11yRole"] }, { type: i4.FoehnIconChevronLeftComponent, selector: "foehn-icon-chevron-left" }, { type: i5.FoehnIconChevronRightComponent, selector: "foehn-icon-chevron-right" }], directives: [{ type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i6.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i6.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i7.RouterLinkWithHref, selector: "a[routerLink],area[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "preserveFragment", "skipLocationChange", "replaceUrl", "state", "relativeTo", "routerLink"] }], pipes: { "fromDictionary": i8.SdkDictionaryPipe } });
117
+ FoehnTableComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: FoehnTableComponent, selector: "foehn-table", inputs: { itemsPerPage: "itemsPerPage", id: "id", previousLabel: "previousLabel", nextLabel: "nextLabel", totalElements: "totalElements", fixedPageCount: "fixedPageCount", columnsConfiguration: "columnsConfiguration", sort: "sort", list: "list", trackByFn: "trackByFn" }, outputs: { pageChange: "pageChange", sortChange: "sortChange" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"row\" [id]=\"id\">\n <div class=\"col-12\">\n <h4 *ngIf=\"!!totalElements && totalElements === 1\">\n {{ 'foehn-table.totalElements.1' | fromDictionary }}\n </h4>\n <h4 *ngIf=\"!!totalElements && totalElements !== 1\">\n {{\n 'foehn-table.totalElements'\n | fromDictionary: { total: totalElements.toString() }\n }}\n </h4>\n </div>\n\n <div class=\"col-12 table-responsive\">\n <table class=\"table table-hover\">\n <thead class=\"vd-bg-pattern-bars-gray\">\n <tr>\n <th\n scope=\"col\"\n *ngFor=\"let col of columnsConfiguration\"\n [id]=\"col.id\"\n >\n <ng-container\n *ngIf=\"!filteredList.length || !col.sortAttribute\"\n >\n <span\n [innerHTML]=\"\n col.columnLabelKey | fromDictionary\n \"\n ></span>\n </ng-container>\n\n <ng-container\n *ngIf=\"!!filteredList.length && !!col.sortAttribute\"\n >\n <a\n href=\"#\"\n class=\"vd-text-thin\"\n (click)=\"\n $event.preventDefault();\n triggerSort(col.sortAttribute)\n \"\n [title]=\"\n 'Trier par ' +\n (col.columnLabelKey | fromDictionary)\n \"\n >\n <span\n [innerHTML]=\"\n col.columnLabelKey | fromDictionary\n \"\n ></span>\n <ng-container\n *ngIf=\"\n sort.sortAttribute === col.sortAttribute\n \"\n >\n <span\n class=\"ml-3\"\n *ngIf=\"sort.sortDirection === 'ASC'\"\n >\n <foehn-icon-chevron-up></foehn-icon-chevron-up>\n </span>\n <span\n class=\"ml-3\"\n *ngIf=\"sort.sortDirection === 'DESC'\"\n >\n <foehn-icon-chevron-down></foehn-icon-chevron-down>\n </span>\n </ng-container>\n </a>\n </ng-container>\n </th>\n </tr>\n </thead>\n <tbody>\n <tr\n *ngFor=\"\n let item of filteredList;\n let index = index;\n trackBy: trackByFn\n \"\n >\n <td\n *ngFor=\"let col of columnsConfiguration\"\n [id]=\"col.id + '-' + index\"\n >\n <ng-container *ngIf=\"!!col.isImportant\">\n <span\n *ngIf=\"col.isImportant(item)\"\n class=\"cell-vertical-align-middle\"\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"30\"\n height=\"30\"\n style=\"color: var(--red)\"\n fill=\"currentColor\"\n class=\"bi bi-exclamation\"\n viewBox=\"0 0 16 16\"\n >\n <path\n d=\"M7.002 11a1 1 0 1 1 2 0 1 1 0 0 1-2 0zM7.1 4.995a.905.905 0 1 1 1.8 0l-.35 3.507a.553.553 0 0 1-1.1 0L7.1 4.995z\"\n />\n </svg>\n </span>\n </ng-container>\n\n <ng-container *ngIf=\"!!col.iconGetter\">\n <span\n *ngIf=\"col.iconGetter(item) as iconDef\"\n class=\"cell-vertical-align-middle mr-2\"\n >\n <fa-icon\n aria-hidden=\"true\"\n [icon]=\"iconDef.icon\"\n [title]=\"iconDef.label\"\n ></fa-icon>\n <span class=\"sr-only\">{{ iconDef.label }}</span>\n </span>\n </ng-container>\n\n <ng-container *ngIf=\"!!col.template\">\n <ng-template\n [ngTemplateOutlet]=\"col.template\"\n [ngTemplateOutletContext]=\"{\n item: item,\n index: index\n }\"\n ></ng-template>\n </ng-container>\n\n <ng-container *ngIf=\"!col.template\">\n <ng-container *ngIf=\"!col.routerLinkGetter\">\n <span\n [innerHTML]=\"col.valueGetter(item)\"\n class=\"cell-vertical-align-middle\"\n ></span>\n </ng-container>\n\n <ng-container *ngIf=\"!!col.routerLinkGetter\">\n <a\n [routerLink]=\"col.routerLinkGetter(item)\"\n queryParamsHandling=\"merge\"\n class=\"cell-vertical-align-middle\"\n >\n <span\n [innerHTML]=\"col.valueGetter(item)\"\n ></span>\n </a>\n </ng-container>\n </ng-container>\n </td>\n </tr>\n <tr *ngIf=\"!!columnsConfiguration && !filteredList.length\">\n <td [colSpan]=\"columnsConfiguration.length\">\n <div class=\"w-100 text-center\">\n {{ 'foehn-table.totalElements.0' | fromDictionary }}\n </div>\n </td>\n </tr>\n </tbody>\n </table>\n\n <div class=\"row d-flex justify-content-between p-1\">\n <div class=\"col-lg-3 col-md-3 col-sm-6 col-xs-6\">\n <nav\n class=\"vd-pagination\"\n aria-label=\"Pagination\"\n *ngIf=\"hasPreviousPage()\"\n >\n <ul class=\"vd-pagination__list\">\n <li\n class=\"vd-pagination__item vd-pagination__item--previous\"\n >\n <button\n class=\"btn-link vd-pagination__link btn-no-extra vd-pagination__link-reset\"\n (click)=\"previousPage()\"\n >\n <span class=\"vd-pagination__title\">\n <foehn-icon-chevron-left></foehn-icon-chevron-left>\n {{ previousLabel }}\n </span>\n <span class=\"sr-only\">:</span>\n <span class=\"vd-pagination__label\">\n {{ currentPage - 1 }} sur {{ pagesCount() }}\n </span>\n </button>\n </li>\n </ul>\n </nav>\n </div>\n\n <div class=\"col-lg-3 col-md-3 col-sm-6 col-xs-6\">\n <nav\n class=\"vd-pagination\"\n aria-label=\"Pagination\"\n *ngIf=\"hasNextPage()\"\n >\n <ul class=\"vd-pagination__list\">\n <li\n class=\"vd-pagination__item vd-pagination__item--next\"\n >\n <button\n class=\"btn-link vd-pagination__link btn-no-extra vd-pagination__link-reset\"\n (click)=\"nextPage()\"\n >\n <span class=\"vd-pagination__title\">\n {{ nextLabel }}\n <foehn-icon-chevron-right></foehn-icon-chevron-right>\n </span>\n <span class=\"sr-only\">:</span>\n <span class=\"vd-pagination__label\">\n {{ currentPage + 1 }} sur {{ pagesCount() }}\n </span>\n </button>\n </li>\n </ul>\n </nav>\n </div>\n </div>\n </div>\n</div>\n", styles: [".btn-no-extra{padding:0;border:none;font-weight:400;text-decoration-line:none}.vd-pagination__link-reset{background:none;border:none;font-weight:inherit;text-decoration-line:none;text-align:inherit;cursor:pointer}.vd-pagination__link-reset:focus{background-color:var(--vd-focus)}.cell-vertical-align-middle{vertical-align:middle}\n"], components: [{ type: i1.FoehnIconChevronUpComponent, selector: "foehn-icon-chevron-up" }, { type: i2.FoehnIconChevronDownComponent, selector: "foehn-icon-chevron-down" }, { type: i3.FaIconComponent, selector: "fa-icon", inputs: ["icon", "title", "spin", "pulse", "mask", "styles", "flip", "size", "pull", "border", "inverse", "symbol", "rotate", "fixedWidth", "classes", "transform", "a11yRole"] }, { type: i4.FoehnIconChevronLeftComponent, selector: "foehn-icon-chevron-left" }, { type: i5.FoehnIconChevronRightComponent, selector: "foehn-icon-chevron-right" }], directives: [{ type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i6.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i6.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i7.RouterLinkWithHref, selector: "a[routerLink],area[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "preserveFragment", "skipLocationChange", "replaceUrl", "state", "relativeTo", "routerLink"] }], pipes: { "fromDictionary": i8.SdkDictionaryPipe } });
118
118
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: FoehnTableComponent, decorators: [{
119
119
  type: Component,
120
- args: [{ selector: 'foehn-table', template: "<div class=\"row\" [id]=\"id\">\n <div class=\"col-12\">\n <h4 *ngIf=\"!!totalElements && totalElements === 1\">\n {{ 'foehn-table.totalElements.1' | fromDictionary }}\n </h4>\n <h4 *ngIf=\"!!totalElements && totalElements !== 1\">\n {{\n 'foehn-table.totalElements'\n | fromDictionary: { total: totalElements.toString() }\n }}\n </h4>\n </div>\n\n <div class=\"col-12 table-responsive\">\n <table class=\"table table-hover\">\n <thead class=\"vd-bg-pattern-bars-gray\">\n <tr>\n <th\n scope=\"col\"\n *ngFor=\"let col of columnsConfiguration\"\n [id]=\"col.id\"\n >\n <ng-container\n *ngIf=\"!filteredList.length || !col.sortAttribute\"\n >\n <span\n [innerHTML]=\"\n col.columnLabelKey | fromDictionary\n \"\n ></span>\n </ng-container>\n\n <ng-container\n *ngIf=\"!!filteredList.length && !!col.sortAttribute\"\n >\n <a\n href=\"#\"\n class=\"vd-text-thin\"\n (click)=\"\n $event.preventDefault();\n triggerSort(col.sortAttribute)\n \"\n [title]=\"\n 'Trier par ' +\n (col.columnLabelKey | fromDictionary)\n \"\n >\n <span\n [innerHTML]=\"\n col.columnLabelKey | fromDictionary\n \"\n ></span>\n <ng-container\n *ngIf=\"\n sort.sortAttribute === col.sortAttribute\n \"\n >\n <span\n class=\"ml-3\"\n *ngIf=\"sort.sortDirection === 'ASC'\"\n >\n <foehn-icon-chevron-up></foehn-icon-chevron-up>\n </span>\n <span\n class=\"ml-3\"\n *ngIf=\"sort.sortDirection === 'DESC'\"\n >\n <foehn-icon-chevron-down></foehn-icon-chevron-down>\n </span>\n </ng-container>\n </a>\n </ng-container>\n </th>\n </tr>\n </thead>\n <tbody>\n <tr\n *ngFor=\"\n let item of filteredList;\n let index = index;\n trackBy: trackByFn\n \"\n >\n <td\n *ngFor=\"let col of columnsConfiguration\"\n [id]=\"col.id + '-' + index\"\n >\n <ng-container *ngIf=\"!!col.isImportant\">\n <span\n *ngIf=\"col.isImportant(item)\"\n class=\"cell-vertical-align-middle\"\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"30\"\n height=\"30\"\n style=\"color: var(--red)\"\n fill=\"currentColor\"\n class=\"bi bi-exclamation\"\n viewBox=\"0 0 16 16\"\n >\n <path\n d=\"M7.002 11a1 1 0 1 1 2 0 1 1 0 0 1-2 0zM7.1 4.995a.905.905 0 1 1 1.8 0l-.35 3.507a.553.553 0 0 1-1.1 0L7.1 4.995z\"\n />\n </svg>\n </span>\n </ng-container>\n\n <ng-container *ngIf=\"!!col.iconGetter\">\n <span\n *ngIf=\"col.iconGetter(item) as iconDef\"\n class=\"cell-vertical-align-middle mr-2\"\n >\n <fa-icon\n aria-hidden=\"true\"\n [icon]=\"iconDef.icon\"\n [title]=\"iconDef.label\"\n ></fa-icon>\n <span class=\"sr-only\">{{ iconDef.label }}</span>\n </span>\n </ng-container>\n\n <ng-container *ngIf=\"!!col.template\">\n <ng-template\n [ngTemplateOutlet]=\"col.template\"\n [ngTemplateOutletContext]=\"{\n item: item,\n index: index\n }\"\n ></ng-template>\n </ng-container>\n\n <ng-container *ngIf=\"!col.template\">\n <ng-container *ngIf=\"!col.routerLinkGetter\">\n <span\n [innerHTML]=\"col.valueGetter(item)\"\n class=\"cell-vertical-align-middle\"\n ></span>\n </ng-container>\n\n <ng-container *ngIf=\"!!col.routerLinkGetter\">\n <a\n [routerLink]=\"col.routerLinkGetter(item)\"\n queryParamsHandling=\"merge\"\n class=\"cell-vertical-align-middle\"\n >\n <span\n [innerHTML]=\"col.valueGetter(item)\"\n ></span>\n </a>\n </ng-container>\n </ng-container>\n </td>\n </tr>\n <tr *ngIf=\"!!columnsConfiguration && !filteredList.length\">\n <td [colSpan]=\"columnsConfiguration.length\">\n <div class=\"w-100 text-center\">\n {{ 'foehn-table.totalElements.0' | fromDictionary }}\n </div>\n </td>\n </tr>\n </tbody>\n </table>\n\n <div class=\"row d-flex justify-content-between p-1\">\n <div class=\"col-lg-3 col-md-3 col-sm-6 col-xs-6\">\n <nav\n class=\"vd-pagination\"\n aria-label=\"Pagination\"\n *ngIf=\"hasPreviousPage()\"\n >\n <ul class=\"vd-pagination__list\">\n <li\n class=\"vd-pagination__item vd-pagination__item--previous\"\n >\n <button\n class=\"btn-link vd-pagination__link btn-no-extra vd-pagination__link-reset\"\n (click)=\"previousPage()\"\n >\n <span class=\"vd-pagination__title\">\n <foehn-icon-chevron-left></foehn-icon-chevron-left>\n {{ previousLabel }}\n </span>\n <span class=\"sr-only\">:</span>\n <span class=\"vd-pagination__label\">\n {{ currentPage - 1 }} sur {{ pagesCount() }}\n </span>\n </button>\n </li>\n </ul>\n </nav>\n </div>\n\n <div class=\"col-lg-3 col-md-3 col-sm-6 col-xs-6\">\n <nav\n class=\"vd-pagination\"\n aria-label=\"Pagination\"\n *ngIf=\"hasNextPage()\"\n >\n <ul class=\"vd-pagination__list\">\n <li\n class=\"vd-pagination__item vd-pagination__item--next\"\n >\n <button\n class=\"btn-link vd-pagination__link btn-no-extra vd-pagination__link-reset\"\n (click)=\"nextPage()\"\n >\n <span class=\"vd-pagination__title\">\n {{ nextLabel }}\n <foehn-icon-chevron-right></foehn-icon-chevron-right>\n </span>\n <span class=\"sr-only\">:</span>\n <span class=\"vd-pagination__label\">\n {{ currentPage + 1 }} sur {{ pagesCount() }}\n </span>\n </button>\n </li>\n </ul>\n </nav>\n </div>\n </div>\n </div>\n</div>\n", styles: [".btn-no-extra{padding:0;border:none;font-weight:400;-webkit-text-decoration-line:none;text-decoration-line:none}.vd-pagination__link-reset{background:none;border:none;font-weight:inherit;-webkit-text-decoration-line:none;text-decoration-line:none;text-align:inherit;cursor:pointer}.vd-pagination__link-reset:focus{background-color:var(--vd-focus)}.cell-vertical-align-middle{vertical-align:middle}\n"] }]
120
+ args: [{ selector: 'foehn-table', template: "<div class=\"row\" [id]=\"id\">\n <div class=\"col-12\">\n <h4 *ngIf=\"!!totalElements && totalElements === 1\">\n {{ 'foehn-table.totalElements.1' | fromDictionary }}\n </h4>\n <h4 *ngIf=\"!!totalElements && totalElements !== 1\">\n {{\n 'foehn-table.totalElements'\n | fromDictionary: { total: totalElements.toString() }\n }}\n </h4>\n </div>\n\n <div class=\"col-12 table-responsive\">\n <table class=\"table table-hover\">\n <thead class=\"vd-bg-pattern-bars-gray\">\n <tr>\n <th\n scope=\"col\"\n *ngFor=\"let col of columnsConfiguration\"\n [id]=\"col.id\"\n >\n <ng-container\n *ngIf=\"!filteredList.length || !col.sortAttribute\"\n >\n <span\n [innerHTML]=\"\n col.columnLabelKey | fromDictionary\n \"\n ></span>\n </ng-container>\n\n <ng-container\n *ngIf=\"!!filteredList.length && !!col.sortAttribute\"\n >\n <a\n href=\"#\"\n class=\"vd-text-thin\"\n (click)=\"\n $event.preventDefault();\n triggerSort(col.sortAttribute)\n \"\n [title]=\"\n 'Trier par ' +\n (col.columnLabelKey | fromDictionary)\n \"\n >\n <span\n [innerHTML]=\"\n col.columnLabelKey | fromDictionary\n \"\n ></span>\n <ng-container\n *ngIf=\"\n sort.sortAttribute === col.sortAttribute\n \"\n >\n <span\n class=\"ml-3\"\n *ngIf=\"sort.sortDirection === 'ASC'\"\n >\n <foehn-icon-chevron-up></foehn-icon-chevron-up>\n </span>\n <span\n class=\"ml-3\"\n *ngIf=\"sort.sortDirection === 'DESC'\"\n >\n <foehn-icon-chevron-down></foehn-icon-chevron-down>\n </span>\n </ng-container>\n </a>\n </ng-container>\n </th>\n </tr>\n </thead>\n <tbody>\n <tr\n *ngFor=\"\n let item of filteredList;\n let index = index;\n trackBy: trackByFn\n \"\n >\n <td\n *ngFor=\"let col of columnsConfiguration\"\n [id]=\"col.id + '-' + index\"\n >\n <ng-container *ngIf=\"!!col.isImportant\">\n <span\n *ngIf=\"col.isImportant(item)\"\n class=\"cell-vertical-align-middle\"\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"30\"\n height=\"30\"\n style=\"color: var(--red)\"\n fill=\"currentColor\"\n class=\"bi bi-exclamation\"\n viewBox=\"0 0 16 16\"\n >\n <path\n d=\"M7.002 11a1 1 0 1 1 2 0 1 1 0 0 1-2 0zM7.1 4.995a.905.905 0 1 1 1.8 0l-.35 3.507a.553.553 0 0 1-1.1 0L7.1 4.995z\"\n />\n </svg>\n </span>\n </ng-container>\n\n <ng-container *ngIf=\"!!col.iconGetter\">\n <span\n *ngIf=\"col.iconGetter(item) as iconDef\"\n class=\"cell-vertical-align-middle mr-2\"\n >\n <fa-icon\n aria-hidden=\"true\"\n [icon]=\"iconDef.icon\"\n [title]=\"iconDef.label\"\n ></fa-icon>\n <span class=\"sr-only\">{{ iconDef.label }}</span>\n </span>\n </ng-container>\n\n <ng-container *ngIf=\"!!col.template\">\n <ng-template\n [ngTemplateOutlet]=\"col.template\"\n [ngTemplateOutletContext]=\"{\n item: item,\n index: index\n }\"\n ></ng-template>\n </ng-container>\n\n <ng-container *ngIf=\"!col.template\">\n <ng-container *ngIf=\"!col.routerLinkGetter\">\n <span\n [innerHTML]=\"col.valueGetter(item)\"\n class=\"cell-vertical-align-middle\"\n ></span>\n </ng-container>\n\n <ng-container *ngIf=\"!!col.routerLinkGetter\">\n <a\n [routerLink]=\"col.routerLinkGetter(item)\"\n queryParamsHandling=\"merge\"\n class=\"cell-vertical-align-middle\"\n >\n <span\n [innerHTML]=\"col.valueGetter(item)\"\n ></span>\n </a>\n </ng-container>\n </ng-container>\n </td>\n </tr>\n <tr *ngIf=\"!!columnsConfiguration && !filteredList.length\">\n <td [colSpan]=\"columnsConfiguration.length\">\n <div class=\"w-100 text-center\">\n {{ 'foehn-table.totalElements.0' | fromDictionary }}\n </div>\n </td>\n </tr>\n </tbody>\n </table>\n\n <div class=\"row d-flex justify-content-between p-1\">\n <div class=\"col-lg-3 col-md-3 col-sm-6 col-xs-6\">\n <nav\n class=\"vd-pagination\"\n aria-label=\"Pagination\"\n *ngIf=\"hasPreviousPage()\"\n >\n <ul class=\"vd-pagination__list\">\n <li\n class=\"vd-pagination__item vd-pagination__item--previous\"\n >\n <button\n class=\"btn-link vd-pagination__link btn-no-extra vd-pagination__link-reset\"\n (click)=\"previousPage()\"\n >\n <span class=\"vd-pagination__title\">\n <foehn-icon-chevron-left></foehn-icon-chevron-left>\n {{ previousLabel }}\n </span>\n <span class=\"sr-only\">:</span>\n <span class=\"vd-pagination__label\">\n {{ currentPage - 1 }} sur {{ pagesCount() }}\n </span>\n </button>\n </li>\n </ul>\n </nav>\n </div>\n\n <div class=\"col-lg-3 col-md-3 col-sm-6 col-xs-6\">\n <nav\n class=\"vd-pagination\"\n aria-label=\"Pagination\"\n *ngIf=\"hasNextPage()\"\n >\n <ul class=\"vd-pagination__list\">\n <li\n class=\"vd-pagination__item vd-pagination__item--next\"\n >\n <button\n class=\"btn-link vd-pagination__link btn-no-extra vd-pagination__link-reset\"\n (click)=\"nextPage()\"\n >\n <span class=\"vd-pagination__title\">\n {{ nextLabel }}\n <foehn-icon-chevron-right></foehn-icon-chevron-right>\n </span>\n <span class=\"sr-only\">:</span>\n <span class=\"vd-pagination__label\">\n {{ currentPage + 1 }} sur {{ pagesCount() }}\n </span>\n </button>\n </li>\n </ul>\n </nav>\n </div>\n </div>\n </div>\n</div>\n", styles: [".btn-no-extra{padding:0;border:none;font-weight:400;text-decoration-line:none}.vd-pagination__link-reset{background:none;border:none;font-weight:inherit;text-decoration-line:none;text-align:inherit;cursor:pointer}.vd-pagination__link-reset:focus{background-color:var(--vd-focus)}.cell-vertical-align-middle{vertical-align:middle}\n"] }]
121
121
  }], propDecorators: { itemsPerPage: [{
122
122
  type: Input
123
123
  }], id: [{