@dsivd/prestations-ng 17.0.0-beta.6 → 17.0.0-beta.7
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 +5 -0
- package/ESLINT_MIGRATION_GUIDE.md +2 -1
- package/dsivd-prestations-ng-17.0.0-beta.7.tgz +0 -0
- package/esm2022/foehn-address/foehn-input-foreign-street.component.mjs +3 -4
- package/esm2022/foehn-agenda/foehn-agenda-timeslot-panel/foehn-agenda-timeslot-panel.component.mjs +3 -3
- package/esm2022/foehn-checkables/foehn-checkable-group.component.mjs +33 -31
- package/esm2022/foehn-confirm-modal/foehn-confirm-modal.component.mjs +3 -3
- package/esm2022/foehn-date-picker/foehn-date-picker.component.mjs +3 -3
- package/esm2022/foehn-dropdown-menu/foehn-dropdown-menu.component.mjs +3 -3
- package/esm2022/foehn-list/foehn-list.component.mjs +3 -3
- package/esm2022/foehn-menu-prestation/foehn-list-summary/foehn-list-summary.component.mjs +3 -3
- package/esm2022/foehn-modal/foehn-modal.component.mjs +3 -3
- package/esm2022/foehn-multiselect-autocomplete/foehn-multiselect-autocomplete.component.mjs +3 -3
- package/esm2022/foehn-page/foehn-page-expiration-timer/interval.helper.mjs +2 -2
- package/esm2022/foehn-page/foehn-page.component.mjs +3 -3
- package/esm2022/foehn-table/foehn-table.component.mjs +7 -3
- package/esm2022/foehn-upload/foehn-bo-multi-upload/bo-multi-upload.service.mjs +2 -2
- package/esm2022/foehn-upload/foehn-multi-upload/multi-upload.service.mjs +2 -2
- package/esm2022/foehn-upload/uploader.helper.mjs +5 -13
- package/esm2022/gesdem-action-recovery/gesdem-action-recovery-registration/gesdem-action-recovery-registration.component.mjs +3 -3
- package/esm2022/sdk-dictionary/default-dictionary.mjs +2 -1
- package/esm2022/sdk-drafts/drafts-container.component.mjs +3 -3
- package/esm2022/sdk-support-alert/support-alert-container.component.mjs +3 -3
- package/esm2022/sdk-support-alert/support-alert.component.mjs +10 -12
- package/fesm2022/dsivd-prestations-ng.mjs +81 -84
- package/fesm2022/dsivd-prestations-ng.mjs.map +1 -1
- package/foehn-checkables/foehn-checkable-group.component.d.ts +2 -1
- package/foehn-table/foehn-table.component.d.ts +3 -1
- package/package.json +1 -1
- package/dsivd-prestations-ng-17.0.0-beta.6.tgz +0 -0
|
@@ -1063,6 +1063,7 @@ const DEFAULT_DICTIONARY = {
|
|
|
1063
1063
|
'foehn-date-picker.screen-reader.actual-month-displayed': 'Mois actuellement affiché :',
|
|
1064
1064
|
'foehn-date-picker.screen-reader.month-input.label': 'Sélectionner un mois',
|
|
1065
1065
|
'foehn-date-picker.screen-reader.year-input.label': 'Sélectionner une année',
|
|
1066
|
+
'foehn-date-picker.screen-reader.grid.title': 'Sélecteur de dates',
|
|
1066
1067
|
'epayment-form.errors.title': "Le paiement n'a pu être effectué",
|
|
1067
1068
|
'epayment-form.errors.back': 'Vous avez abandonné le paiement électronique.',
|
|
1068
1069
|
'epayment-form.errors.cancel': 'Vous avez abandonné le paiement électronique.',
|
|
@@ -2495,9 +2496,7 @@ class UploaderHelper {
|
|
|
2495
2496
|
return fileSizeInBytes < this.fileMinSizeInBytes;
|
|
2496
2497
|
}
|
|
2497
2498
|
isFileNameLengthValid(filename, overrideMaxFileNameLength) {
|
|
2498
|
-
const maxFileLenght =
|
|
2499
|
-
? overrideMaxFileNameLength
|
|
2500
|
-
: this.maxFileNameLength;
|
|
2499
|
+
const maxFileLenght = overrideMaxFileNameLength || this.maxFileNameLength;
|
|
2501
2500
|
return filename.length <= maxFileLenght;
|
|
2502
2501
|
}
|
|
2503
2502
|
isFileNameNameValid(filename, overrideIllegalCharacters) {
|
|
@@ -2518,9 +2517,7 @@ class UploaderHelper {
|
|
|
2518
2517
|
return `.${filename.split('.').pop()}`;
|
|
2519
2518
|
}
|
|
2520
2519
|
isFileExtensionValid(fileExtension, overrideAcceptedExtensions) {
|
|
2521
|
-
const acceptedExtensions =
|
|
2522
|
-
? overrideAcceptedExtensions
|
|
2523
|
-
: this.accept;
|
|
2520
|
+
const acceptedExtensions = overrideAcceptedExtensions || this.accept;
|
|
2524
2521
|
return (!!fileExtension &&
|
|
2525
2522
|
acceptedExtensions
|
|
2526
2523
|
.toUpperCase()
|
|
@@ -2720,18 +2717,14 @@ class UploaderHelper {
|
|
|
2720
2717
|
return formattedErrorMsg.replace('%2$s', fileExtensions);
|
|
2721
2718
|
}
|
|
2722
2719
|
if (errorCode.startsWith('FILENAME_TOO_LONG')) {
|
|
2723
|
-
const maxFileNameLength = (overrideMaxFileNameLength
|
|
2724
|
-
? overrideMaxFileNameLength
|
|
2725
|
-
: this.maxFileNameLength).toString();
|
|
2720
|
+
const maxFileNameLength = (overrideMaxFileNameLength || this.maxFileNameLength).toString();
|
|
2726
2721
|
return formattedErrorMsg.replace('%2$s', maxFileNameLength);
|
|
2727
2722
|
}
|
|
2728
2723
|
if (errorCode.startsWith('FILE_TOO_SMALL')) {
|
|
2729
2724
|
return formattedErrorMsg.replace('%2$s', this.fileMinSizeInBytes.toString());
|
|
2730
2725
|
}
|
|
2731
2726
|
if (errorCode.startsWith('FILENAME_SHOULD_NOT_CONTAIN')) {
|
|
2732
|
-
let fileNameIllegalCharacters = (overrideIllegalCharacters
|
|
2733
|
-
? overrideIllegalCharacters
|
|
2734
|
-
: this.illegalCharacters).replace(/,/g, '');
|
|
2727
|
+
let fileNameIllegalCharacters = (overrideIllegalCharacters || this.illegalCharacters).replace(/,/g, '');
|
|
2735
2728
|
fileNameIllegalCharacters += PERMANENT_ILLEGAL_CHARACTERS.join('');
|
|
2736
2729
|
return formattedErrorMsg.replace('%2$s', fileNameIllegalCharacters);
|
|
2737
2730
|
}
|
|
@@ -2916,7 +2909,7 @@ class MultiUploadService {
|
|
|
2916
2909
|
}));
|
|
2917
2910
|
}
|
|
2918
2911
|
manageBeneficiaryRequiredError(httpErrorResponse) {
|
|
2919
|
-
if (
|
|
2912
|
+
if (httpErrorResponse) {
|
|
2920
2913
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
2921
2914
|
const { error } = httpErrorResponse;
|
|
2922
2915
|
if (error?.code === 'BENEFICIARY_REQUIRED') {
|
|
@@ -4092,11 +4085,11 @@ class FoehnModalComponent {
|
|
|
4092
4085
|
}
|
|
4093
4086
|
}
|
|
4094
4087
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: FoehnModalComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
4095
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.3", type: FoehnModalComponent, selector: "foehn-modal", inputs: { id: "id", name: "name", modalSize: "modalSize", modalBodyText: "modalBodyText", modalHeaderText: "modalHeaderText", closeable: "closeable", modalTriggerHtmlElement: "modalTriggerHtmlElement", isModalVisible: "isModalVisible" }, outputs: { isModalVisibleChange: "isModalVisibleChange" }, host: { listeners: { "keyup": "handleKeyboardEvent($event)" } }, viewQueries: [{ propertyName: "modalBody", first: true, predicate: ["modalBody"], descendants: true }, { propertyName: "modalTitle", first: true, predicate: ["modalTitle"], descendants: true }, { propertyName: "specificfooter", first: true, predicate: ["specificfooter"], descendants: true }, { propertyName: "modalDefaultCloseBtn", first: true, predicate: ["modalDefaultCloseBtn"], descendants: true }], ngImport: i0, template: "<div\n class=\"modal\"\n [id]=\"id || name\"\n role=\"dialog\"\n aria-labelledby=\"modalTitle\"\n aria-describedby=\"modalBody\"\n style=\"display: block\"\n *ngIf=\"isModalVisible\"\n cdkTrapFocus\n>\n <div class=\"modal-dialog modal-dialog-centered\" [ngClass]=\"modalSize\">\n <div class=\"modal-content\">\n <div\n class=\"modal-header d-flex\"\n [ngClass]=\"{ 'flex-row-reverse': closeable }\"\n >\n <button\n *ngIf=\"closeable\"\n (click)=\"isModalVisible = false\"\n type=\"button\"\n class=\"btn btn-close\"\n [attr.aria-label]=\"\n 'foehn-modal.btn-close.aria-label' | fromDictionary\n \"\n id=\"closeButton\"\n ></button>\n <h2\n class=\"modal-title h5\"\n id=\"modalTitle\"\n #modalTitle\n [innerHTML]=\"modalHeaderText\"\n ></h2>\n </div>\n <div class=\"modal-body\" id=\"modalBody\" #modalBody tabindex=\"-1\">\n <div *ngIf=\"modalBodyText\" [innerHTML]=\"modalBodyText\"></div>\n <ng-content></ng-content>\n </div>\n <div class=\"modal-footer w-100 d-block\">\n <div #specificfooter id=\"specificfooter\">\n <ng-content select=\"[modal-footer]\"></ng-content>\n </div>\n <ng-container *ngIf=\"!specificfooter.innerHTML.trim()\">\n <div modal-footer class=\"w-100\">\n <div class=\"d-md-flex\">\n <div class=\"ms-md-auto me-md-2 mb-2 mt-2\">\n <button\n (click)=\"isModalVisible = false\"\n class=\"btn btn-secondary w-100\"\n [attr.aria-label]=\"\n 'foehn-modal.btn-close.aria-label'\n | fromDictionary\n \"\n #modalDefaultCloseBtn\n >\n {{\n 'foehn-modal.btn-close.title'\n | fromDictionary\n }}\n </button>\n </div>\n </div>\n </div>\n </ng-container>\n </div>\n </div>\n </div>\n</div>\n", styles: [".modal{top:0;left:0;height:100%;width:100%;position:fixed;z-index:9999;overflow:auto;background-color:#000;background-color:#0006}.modal-title{margin-top:.5em!important}.modal-logo{width:30px}.modal-footer{padding-top:20px}.modal-content{-webkit-animation-name:redirect-animatetop;-webkit-animation-duration:.4s;animation-name:redirect-animatetop;animation-duration:.4s}@-webkit-keyframes redirect-animatetop{0%{top:-300px;opacity:0}to{top:0;opacity:1}}@keyframes redirect-animatetop{0%{top:-300px;opacity:0}to{top:0;opacity:1}}.redirect-modal-header{padding:14px 16px 10px;background-color:#152025;color:#fff}.redirect-modal-body{padding:10px 16px}.redirect-modal-footer{padding:14px 16px 10px;background-color:#152025;color:#fff}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2$1.CdkTrapFocus, selector: "[cdkTrapFocus]", inputs: ["cdkTrapFocus", "cdkTrapFocusAutoCapture"], exportAs: ["cdkTrapFocus"] }, { kind: "pipe", type: SdkDictionaryPipe, name: "fromDictionary" }] }); }
|
|
4088
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.3", type: FoehnModalComponent, selector: "foehn-modal", inputs: { id: "id", name: "name", modalSize: "modalSize", modalBodyText: "modalBodyText", modalHeaderText: "modalHeaderText", closeable: "closeable", modalTriggerHtmlElement: "modalTriggerHtmlElement", isModalVisible: "isModalVisible" }, outputs: { isModalVisibleChange: "isModalVisibleChange" }, host: { listeners: { "keyup": "handleKeyboardEvent($event)" } }, viewQueries: [{ propertyName: "modalBody", first: true, predicate: ["modalBody"], descendants: true }, { propertyName: "modalTitle", first: true, predicate: ["modalTitle"], descendants: true }, { propertyName: "specificfooter", first: true, predicate: ["specificfooter"], descendants: true }, { propertyName: "modalDefaultCloseBtn", first: true, predicate: ["modalDefaultCloseBtn"], descendants: true }], ngImport: i0, template: "<div\n class=\"modal\"\n [id]=\"id || name\"\n role=\"dialog\"\n aria-labelledby=\"modalTitle\"\n aria-describedby=\"modalBody\"\n style=\"display: block\"\n *ngIf=\"isModalVisible\"\n cdkTrapFocus\n>\n <div class=\"modal-dialog modal-dialog-centered\" [ngClass]=\"modalSize\">\n <div class=\"modal-content\">\n <div\n class=\"modal-header d-flex\"\n [ngClass]=\"{ 'flex-row-reverse': closeable }\"\n >\n <button\n *ngIf=\"closeable\"\n (click)=\"isModalVisible = false\"\n type=\"button\"\n class=\"btn btn-close\"\n [attr.aria-label]=\"\n 'foehn-modal.btn-close.aria-label' | fromDictionary\n \"\n id=\"closeButton\"\n ></button>\n <h2\n class=\"modal-title h5\"\n id=\"modalTitle\"\n #modalTitle\n [innerHTML]=\"modalHeaderText\"\n ></h2>\n </div>\n <div class=\"modal-body\" id=\"modalBody\" #modalBody tabindex=\"-1\">\n <div *ngIf=\"modalBodyText\" [innerHTML]=\"modalBodyText\"></div>\n <ng-content></ng-content>\n </div>\n <div class=\"modal-footer w-100 d-block\">\n <div #specificfooter id=\"specificfooter\">\n <ng-content select=\"[modal-footer]\"></ng-content>\n </div>\n <ng-container *ngIf=\"!specificfooter.innerHTML.trim()\">\n <div modal-footer class=\"w-100\">\n <div class=\"d-md-flex\">\n <div class=\"ms-md-auto me-md-2 mb-2 mt-2\">\n <button\n type=\"button\"\n (click)=\"isModalVisible = false\"\n class=\"btn btn-secondary w-100\"\n [attr.aria-label]=\"\n 'foehn-modal.btn-close.aria-label'\n | fromDictionary\n \"\n #modalDefaultCloseBtn\n >\n {{\n 'foehn-modal.btn-close.title'\n | fromDictionary\n }}\n </button>\n </div>\n </div>\n </div>\n </ng-container>\n </div>\n </div>\n </div>\n</div>\n", styles: [".modal{top:0;left:0;height:100%;width:100%;position:fixed;z-index:9999;overflow:auto;background-color:#000;background-color:#0006}.modal-title{margin-top:.5em!important}.modal-logo{width:30px}.modal-footer{padding-top:20px}.modal-content{-webkit-animation-name:redirect-animatetop;-webkit-animation-duration:.4s;animation-name:redirect-animatetop;animation-duration:.4s}@-webkit-keyframes redirect-animatetop{0%{top:-300px;opacity:0}to{top:0;opacity:1}}@keyframes redirect-animatetop{0%{top:-300px;opacity:0}to{top:0;opacity:1}}.redirect-modal-header{padding:14px 16px 10px;background-color:#152025;color:#fff}.redirect-modal-body{padding:10px 16px}.redirect-modal-footer{padding:14px 16px 10px;background-color:#152025;color:#fff}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2$1.CdkTrapFocus, selector: "[cdkTrapFocus]", inputs: ["cdkTrapFocus", "cdkTrapFocusAutoCapture"], exportAs: ["cdkTrapFocus"] }, { kind: "pipe", type: SdkDictionaryPipe, name: "fromDictionary" }] }); }
|
|
4096
4089
|
}
|
|
4097
4090
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: FoehnModalComponent, decorators: [{
|
|
4098
4091
|
type: Component,
|
|
4099
|
-
args: [{ selector: 'foehn-modal', template: "<div\n class=\"modal\"\n [id]=\"id || name\"\n role=\"dialog\"\n aria-labelledby=\"modalTitle\"\n aria-describedby=\"modalBody\"\n style=\"display: block\"\n *ngIf=\"isModalVisible\"\n cdkTrapFocus\n>\n <div class=\"modal-dialog modal-dialog-centered\" [ngClass]=\"modalSize\">\n <div class=\"modal-content\">\n <div\n class=\"modal-header d-flex\"\n [ngClass]=\"{ 'flex-row-reverse': closeable }\"\n >\n <button\n *ngIf=\"closeable\"\n (click)=\"isModalVisible = false\"\n type=\"button\"\n class=\"btn btn-close\"\n [attr.aria-label]=\"\n 'foehn-modal.btn-close.aria-label' | fromDictionary\n \"\n id=\"closeButton\"\n ></button>\n <h2\n class=\"modal-title h5\"\n id=\"modalTitle\"\n #modalTitle\n [innerHTML]=\"modalHeaderText\"\n ></h2>\n </div>\n <div class=\"modal-body\" id=\"modalBody\" #modalBody tabindex=\"-1\">\n <div *ngIf=\"modalBodyText\" [innerHTML]=\"modalBodyText\"></div>\n <ng-content></ng-content>\n </div>\n <div class=\"modal-footer w-100 d-block\">\n <div #specificfooter id=\"specificfooter\">\n <ng-content select=\"[modal-footer]\"></ng-content>\n </div>\n <ng-container *ngIf=\"!specificfooter.innerHTML.trim()\">\n <div modal-footer class=\"w-100\">\n <div class=\"d-md-flex\">\n <div class=\"ms-md-auto me-md-2 mb-2 mt-2\">\n <button\n (click)=\"isModalVisible = false\"\n class=\"btn btn-secondary w-100\"\n [attr.aria-label]=\"\n 'foehn-modal.btn-close.aria-label'\n | fromDictionary\n \"\n #modalDefaultCloseBtn\n >\n {{\n 'foehn-modal.btn-close.title'\n | fromDictionary\n }}\n </button>\n </div>\n </div>\n </div>\n </ng-container>\n </div>\n </div>\n </div>\n</div>\n", styles: [".modal{top:0;left:0;height:100%;width:100%;position:fixed;z-index:9999;overflow:auto;background-color:#000;background-color:#0006}.modal-title{margin-top:.5em!important}.modal-logo{width:30px}.modal-footer{padding-top:20px}.modal-content{-webkit-animation-name:redirect-animatetop;-webkit-animation-duration:.4s;animation-name:redirect-animatetop;animation-duration:.4s}@-webkit-keyframes redirect-animatetop{0%{top:-300px;opacity:0}to{top:0;opacity:1}}@keyframes redirect-animatetop{0%{top:-300px;opacity:0}to{top:0;opacity:1}}.redirect-modal-header{padding:14px 16px 10px;background-color:#152025;color:#fff}.redirect-modal-body{padding:10px 16px}.redirect-modal-footer{padding:14px 16px 10px;background-color:#152025;color:#fff}\n"] }]
|
|
4092
|
+
args: [{ selector: 'foehn-modal', template: "<div\n class=\"modal\"\n [id]=\"id || name\"\n role=\"dialog\"\n aria-labelledby=\"modalTitle\"\n aria-describedby=\"modalBody\"\n style=\"display: block\"\n *ngIf=\"isModalVisible\"\n cdkTrapFocus\n>\n <div class=\"modal-dialog modal-dialog-centered\" [ngClass]=\"modalSize\">\n <div class=\"modal-content\">\n <div\n class=\"modal-header d-flex\"\n [ngClass]=\"{ 'flex-row-reverse': closeable }\"\n >\n <button\n *ngIf=\"closeable\"\n (click)=\"isModalVisible = false\"\n type=\"button\"\n class=\"btn btn-close\"\n [attr.aria-label]=\"\n 'foehn-modal.btn-close.aria-label' | fromDictionary\n \"\n id=\"closeButton\"\n ></button>\n <h2\n class=\"modal-title h5\"\n id=\"modalTitle\"\n #modalTitle\n [innerHTML]=\"modalHeaderText\"\n ></h2>\n </div>\n <div class=\"modal-body\" id=\"modalBody\" #modalBody tabindex=\"-1\">\n <div *ngIf=\"modalBodyText\" [innerHTML]=\"modalBodyText\"></div>\n <ng-content></ng-content>\n </div>\n <div class=\"modal-footer w-100 d-block\">\n <div #specificfooter id=\"specificfooter\">\n <ng-content select=\"[modal-footer]\"></ng-content>\n </div>\n <ng-container *ngIf=\"!specificfooter.innerHTML.trim()\">\n <div modal-footer class=\"w-100\">\n <div class=\"d-md-flex\">\n <div class=\"ms-md-auto me-md-2 mb-2 mt-2\">\n <button\n type=\"button\"\n (click)=\"isModalVisible = false\"\n class=\"btn btn-secondary w-100\"\n [attr.aria-label]=\"\n 'foehn-modal.btn-close.aria-label'\n | fromDictionary\n \"\n #modalDefaultCloseBtn\n >\n {{\n 'foehn-modal.btn-close.title'\n | fromDictionary\n }}\n </button>\n </div>\n </div>\n </div>\n </ng-container>\n </div>\n </div>\n </div>\n</div>\n", styles: [".modal{top:0;left:0;height:100%;width:100%;position:fixed;z-index:9999;overflow:auto;background-color:#000;background-color:#0006}.modal-title{margin-top:.5em!important}.modal-logo{width:30px}.modal-footer{padding-top:20px}.modal-content{-webkit-animation-name:redirect-animatetop;-webkit-animation-duration:.4s;animation-name:redirect-animatetop;animation-duration:.4s}@-webkit-keyframes redirect-animatetop{0%{top:-300px;opacity:0}to{top:0;opacity:1}}@keyframes redirect-animatetop{0%{top:-300px;opacity:0}to{top:0;opacity:1}}.redirect-modal-header{padding:14px 16px 10px;background-color:#152025;color:#fff}.redirect-modal-body{padding:10px 16px}.redirect-modal-footer{padding:14px 16px 10px;background-color:#152025;color:#fff}\n"] }]
|
|
4100
4093
|
}], propDecorators: { id: [{
|
|
4101
4094
|
type: Input
|
|
4102
4095
|
}], name: [{
|
|
@@ -4622,7 +4615,7 @@ class IntervalHelper {
|
|
|
4622
4615
|
const calculatedTimeout = nextAt - Date.now();
|
|
4623
4616
|
// Verify browser tab inactivity
|
|
4624
4617
|
if (calculatedTimeout < 0) {
|
|
4625
|
-
if (
|
|
4618
|
+
if (errorCallBack) {
|
|
4626
4619
|
clear();
|
|
4627
4620
|
return errorCallBack();
|
|
4628
4621
|
}
|
|
@@ -5120,15 +5113,19 @@ class FoehnTableComponent {
|
|
|
5120
5113
|
this.filteredList = this._list.slice(start, start + this.itemsPerPage);
|
|
5121
5114
|
}
|
|
5122
5115
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: FoehnTableComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
5123
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.3", 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=\"\n let col of columnsConfiguration;\n trackBy: trackFoehnTableColumnConfiguration\n \"\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=\"ms-3\"\n *ngIf=\"sort.sortDirection === 'ASC'\"\n >\n <foehn-icon-chevron-up></foehn-icon-chevron-up>\n </span>\n <span\n class=\"ms-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=\"\n let col of columnsConfiguration;\n trackBy: trackFoehnTableColumnConfiguration\n \"\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: 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 me-2\"\n >\n <fa-icon\n aria-hidden=\"true\"\n [icon]=\"iconDef.icon\"\n [title]=\"iconDef.label\"\n ></fa-icon>\n <span class=\"visually-hidden\">\n {{ iconDef.label }}\n </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 <span\n [innerHTML]=\"col.valueGetter(item)\"\n class=\"cell-vertical-align-middle\"\n ></span>\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=\"visually-hidden\">:</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=\"visually-hidden\">:</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"], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: FoehnIconChevronDownComponent, selector: "foehn-icon-chevron-down" }, { kind: "component", type: FoehnIconChevronUpComponent, selector: "foehn-icon-chevron-up" }, { kind: "component", type: i1$2.FaIconComponent, selector: "fa-icon", inputs: ["icon", "title", "animation", "spin", "pulse", "mask", "styles", "flip", "size", "pull", "border", "inverse", "symbol", "rotate", "fixedWidth", "classes", "transform", "a11yRole"] }, { kind: "component", type: FoehnIconChevronLeftComponent, selector: "foehn-icon-chevron-left" }, { kind: "component", type: FoehnIconChevronRightComponent, selector: "foehn-icon-chevron-right" }, { kind: "pipe", type: SdkDictionaryPipe, name: "fromDictionary" }] }); }
|
|
5116
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.3", type: FoehnTableComponent, selector: "foehn-table", inputs: { itemsPerPage: "itemsPerPage", id: "id", title: "title", titleSrOnly: "titleSrOnly", 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 <caption\n *ngIf=\"title?.length\"\n [class.visually-hidden]=\"titleSrOnly\"\n >\n {{ title }}\n </caption>\n <thead class=\"vd-bg-pattern-bars-gray\">\n <tr>\n <th\n scope=\"col\"\n *ngFor=\"\n let col of columnsConfiguration;\n trackBy: trackFoehnTableColumnConfiguration\n \"\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=\"ms-3\"\n *ngIf=\"sort.sortDirection === 'ASC'\"\n >\n <foehn-icon-chevron-up></foehn-icon-chevron-up>\n </span>\n <span\n class=\"ms-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=\"\n let col of columnsConfiguration;\n trackBy: trackFoehnTableColumnConfiguration\n \"\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: 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 me-2\"\n >\n <fa-icon\n aria-hidden=\"true\"\n [icon]=\"iconDef.icon\"\n [title]=\"iconDef.label\"\n ></fa-icon>\n <span class=\"visually-hidden\">\n {{ iconDef.label }}\n </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 <span\n [innerHTML]=\"col.valueGetter(item)\"\n class=\"cell-vertical-align-middle\"\n ></span>\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 type=\"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=\"visually-hidden\">:</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 type=\"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=\"visually-hidden\">:</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"], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: FoehnIconChevronDownComponent, selector: "foehn-icon-chevron-down" }, { kind: "component", type: FoehnIconChevronUpComponent, selector: "foehn-icon-chevron-up" }, { kind: "component", type: i1$2.FaIconComponent, selector: "fa-icon", inputs: ["icon", "title", "animation", "spin", "pulse", "mask", "styles", "flip", "size", "pull", "border", "inverse", "symbol", "rotate", "fixedWidth", "classes", "transform", "a11yRole"] }, { kind: "component", type: FoehnIconChevronLeftComponent, selector: "foehn-icon-chevron-left" }, { kind: "component", type: FoehnIconChevronRightComponent, selector: "foehn-icon-chevron-right" }, { kind: "pipe", type: SdkDictionaryPipe, name: "fromDictionary" }] }); }
|
|
5124
5117
|
}
|
|
5125
5118
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: FoehnTableComponent, decorators: [{
|
|
5126
5119
|
type: Component,
|
|
5127
|
-
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=\"\n let col of columnsConfiguration;\n trackBy: trackFoehnTableColumnConfiguration\n \"\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=\"ms-3\"\n *ngIf=\"sort.sortDirection === 'ASC'\"\n >\n <foehn-icon-chevron-up></foehn-icon-chevron-up>\n </span>\n <span\n class=\"ms-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=\"\n let col of columnsConfiguration;\n trackBy: trackFoehnTableColumnConfiguration\n \"\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: 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 me-2\"\n >\n <fa-icon\n aria-hidden=\"true\"\n [icon]=\"iconDef.icon\"\n [title]=\"iconDef.label\"\n ></fa-icon>\n <span class=\"visually-hidden\">\n {{ iconDef.label }}\n </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 <span\n [innerHTML]=\"col.valueGetter(item)\"\n class=\"cell-vertical-align-middle\"\n ></span>\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=\"visually-hidden\">:</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=\"visually-hidden\">:</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"] }]
|
|
5120
|
+
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 <caption\n *ngIf=\"title?.length\"\n [class.visually-hidden]=\"titleSrOnly\"\n >\n {{ title }}\n </caption>\n <thead class=\"vd-bg-pattern-bars-gray\">\n <tr>\n <th\n scope=\"col\"\n *ngFor=\"\n let col of columnsConfiguration;\n trackBy: trackFoehnTableColumnConfiguration\n \"\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=\"ms-3\"\n *ngIf=\"sort.sortDirection === 'ASC'\"\n >\n <foehn-icon-chevron-up></foehn-icon-chevron-up>\n </span>\n <span\n class=\"ms-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=\"\n let col of columnsConfiguration;\n trackBy: trackFoehnTableColumnConfiguration\n \"\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: 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 me-2\"\n >\n <fa-icon\n aria-hidden=\"true\"\n [icon]=\"iconDef.icon\"\n [title]=\"iconDef.label\"\n ></fa-icon>\n <span class=\"visually-hidden\">\n {{ iconDef.label }}\n </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 <span\n [innerHTML]=\"col.valueGetter(item)\"\n class=\"cell-vertical-align-middle\"\n ></span>\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 type=\"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=\"visually-hidden\">:</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 type=\"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=\"visually-hidden\">:</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"] }]
|
|
5128
5121
|
}], propDecorators: { itemsPerPage: [{
|
|
5129
5122
|
type: Input
|
|
5130
5123
|
}], id: [{
|
|
5131
5124
|
type: Input
|
|
5125
|
+
}], title: [{
|
|
5126
|
+
type: Input
|
|
5127
|
+
}], titleSrOnly: [{
|
|
5128
|
+
type: Input
|
|
5132
5129
|
}], previousLabel: [{
|
|
5133
5130
|
type: Input
|
|
5134
5131
|
}], nextLabel: [{
|
|
@@ -5222,11 +5219,11 @@ class DraftsContainerComponent {
|
|
|
5222
5219
|
: url.replace('{etapeId}/', '');
|
|
5223
5220
|
}
|
|
5224
5221
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: DraftsContainerComponent, deps: [{ token: DraftsService }, { token: DateHelper }, { token: i1$1.Router }, { token: ApplicationInfoService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
5225
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.3", type: DraftsContainerComponent, selector: "sdk-drafts-container", inputs: { etapeId: "etapeId", draftsUrl: "draftsUrl" }, viewQueries: [{ propertyName: "referenceLink", first: true, predicate: ["referenceLink"], descendants: true }, { propertyName: "detailLink", first: true, predicate: ["detailLink"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<ng-container *ngIf=\"draftsToDisplay | async as drafts\">\n <div class=\"d-flex flex-column container mt-2\" *ngIf=\"!!drafts.length\">\n <div class=\"mb-2 mt-2\">\n <button\n id=\"showDraftsButton\"\n class=\"btn btn-link pe-0 ps-0\"\n (click)=\"showDrafts()\"\n #showDraftsButton\n >\n <foehn-icon-pencil></foehn-icon-pencil>\n <span class=\"me-2\"></span>\n <span\n class=\"ps-0 me-0\"\n [innerHTML]=\"\n 'draft-container.button.show-drafts'\n | fromDictionary\n : { draftsLength: drafts.length.toString() }\n \"\n ></span>\n </button>\n </div>\n\n <foehn-modal\n [modalHeaderText]=\"'draft-container.modal.title' | fromDictionary\"\n [isModalVisible]=\"!draftsHidden\"\n (isModalVisibleChange)=\"draftsHidden = !$event\"\n [modalTriggerHtmlElement]=\"showDraftsButton\"\n modalSize=\"modal-lg\"\n >\n <h3 class=\"mt-0 h4\" [innerHTML]=\"etapeTitle | async\"></h3>\n\n <foehn-table\n id=\"draftTable\"\n [list]=\"drafts\"\n [columnsConfiguration]=\"columnsConfiguration\"\n [sort]=\"{ sortDirection: 'DESC' }\"\n [itemsPerPage]=\"5\"\n ></foehn-table>\n\n <div modal-footer class=\"w-100\">\n <div class=\"d-flex\">\n <a\n id=\"allDraftsButton\"\n class=\"btn btn-primary\"\n [href]=\"\n (espaceSecuriseUrl | async) +\n 'demandes/search/MINE/INITIAL'\n \"\n >\n {{\n 'draft-container.modal.drafts-in-es.button'\n | fromDictionary\n }}\n </a>\n\n <button\n id=\"hideDraftsButton\"\n class=\"btn btn-secondary ms-auto\"\n (click)=\"draftsHidden = true\"\n >\n {{\n 'draft-container.modal.close.button'\n | fromDictionary\n }}\n </button>\n </div>\n </div>\n </foehn-modal>\n </div>\n</ng-container>\n\n<ng-template #referenceLink let-draft=\"item\" let-index=\"index\">\n <a\n href=\"#\"\n (click)=\"$event.preventDefault(); resumeDraft(draft)\"\n [title]=\"\n 'draft-container.list.reference.link'\n | fromDictionary: { reference: draft.reference }\n \"\n >\n {{ draft.reference }}\n </a>\n</ng-template>\n\n<ng-template #detailLink let-draft=\"item\" let-index=\"index\">\n <a\n [href]=\"(espaceSecuriseUrl | async) + 'demandes/' + draft.reference\"\n [title]=\"\n 'draft-container.list.details-in-es.link'\n | fromDictionary: { reference: draft.reference }\n \"\n >\n <foehn-icon-search\n [title]=\"\n 'draft-container.list.details-in-es.link'\n | fromDictionary: { reference: draft.reference }\n \"\n ></foehn-icon-search>\n </a>\n</ng-template>\n", styles: [":host ::ng-deep foehn-icon-pencil .svg-inline--fa{color:var(--vd-primary-dark)!important}:host ::ng-deep a#allDraftsButton>foehn-icon-external-link-alt .svg-inline--fa{color:#fff!important}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: FoehnIconSearchComponent, selector: "foehn-icon-search" }, { kind: "component", type: FoehnIconPencilComponent, selector: "foehn-icon-pencil" }, { kind: "component", type: FoehnTableComponent, selector: "foehn-table", inputs: ["itemsPerPage", "id", "previousLabel", "nextLabel", "totalElements", "fixedPageCount", "columnsConfiguration", "sort", "list", "trackByFn"], outputs: ["pageChange", "sortChange"] }, { kind: "component", type: FoehnModalComponent, selector: "foehn-modal", inputs: ["id", "name", "modalSize", "modalBodyText", "modalHeaderText", "closeable", "modalTriggerHtmlElement", "isModalVisible"], outputs: ["isModalVisibleChange"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }, { kind: "pipe", type: SdkDictionaryPipe, name: "fromDictionary" }] }); }
|
|
5222
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.3", type: DraftsContainerComponent, selector: "sdk-drafts-container", inputs: { etapeId: "etapeId", draftsUrl: "draftsUrl" }, viewQueries: [{ propertyName: "referenceLink", first: true, predicate: ["referenceLink"], descendants: true }, { propertyName: "detailLink", first: true, predicate: ["detailLink"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<ng-container *ngIf=\"draftsToDisplay | async as drafts\">\n <div class=\"d-flex flex-column container mt-2\" *ngIf=\"!!drafts.length\">\n <div class=\"mb-2 mt-2\">\n <button\n id=\"showDraftsButton\"\n type=\"button\"\n class=\"btn btn-link pe-0 ps-0\"\n (click)=\"showDrafts()\"\n #showDraftsButton\n >\n <foehn-icon-pencil></foehn-icon-pencil>\n <span class=\"me-2\"></span>\n <span\n class=\"ps-0 me-0\"\n [innerHTML]=\"\n 'draft-container.button.show-drafts'\n | fromDictionary\n : { draftsLength: drafts.length.toString() }\n \"\n ></span>\n </button>\n </div>\n\n <foehn-modal\n [modalHeaderText]=\"'draft-container.modal.title' | fromDictionary\"\n [isModalVisible]=\"!draftsHidden\"\n (isModalVisibleChange)=\"draftsHidden = !$event\"\n [modalTriggerHtmlElement]=\"showDraftsButton\"\n modalSize=\"modal-lg\"\n >\n <h3 class=\"mt-0 h4\" [innerHTML]=\"etapeTitle | async\"></h3>\n\n <foehn-table\n id=\"draftTable\"\n [list]=\"drafts\"\n [columnsConfiguration]=\"columnsConfiguration\"\n [sort]=\"{ sortDirection: 'DESC' }\"\n [itemsPerPage]=\"5\"\n ></foehn-table>\n\n <div modal-footer class=\"w-100\">\n <div class=\"d-flex\">\n <a\n id=\"allDraftsButton\"\n class=\"btn btn-primary\"\n [href]=\"\n (espaceSecuriseUrl | async) +\n 'demandes/search/MINE/INITIAL'\n \"\n >\n {{\n 'draft-container.modal.drafts-in-es.button'\n | fromDictionary\n }}\n </a>\n\n <button\n id=\"hideDraftsButton\"\n type=\"button\"\n class=\"btn btn-secondary ms-auto\"\n (click)=\"draftsHidden = true\"\n >\n {{\n 'draft-container.modal.close.button'\n | fromDictionary\n }}\n </button>\n </div>\n </div>\n </foehn-modal>\n </div>\n</ng-container>\n\n<ng-template #referenceLink let-draft=\"item\" let-index=\"index\">\n <a\n href=\"#\"\n (click)=\"$event.preventDefault(); resumeDraft(draft)\"\n [title]=\"\n 'draft-container.list.reference.link'\n | fromDictionary: { reference: draft.reference }\n \"\n >\n {{ draft.reference }}\n </a>\n</ng-template>\n\n<ng-template #detailLink let-draft=\"item\" let-index=\"index\">\n <a\n [href]=\"(espaceSecuriseUrl | async) + 'demandes/' + draft.reference\"\n [title]=\"\n 'draft-container.list.details-in-es.link'\n | fromDictionary: { reference: draft.reference }\n \"\n >\n <foehn-icon-search\n [title]=\"\n 'draft-container.list.details-in-es.link'\n | fromDictionary: { reference: draft.reference }\n \"\n ></foehn-icon-search>\n </a>\n</ng-template>\n", styles: [":host ::ng-deep foehn-icon-pencil .svg-inline--fa{color:var(--vd-primary-dark)!important}:host ::ng-deep a#allDraftsButton>foehn-icon-external-link-alt .svg-inline--fa{color:#fff!important}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: FoehnIconSearchComponent, selector: "foehn-icon-search" }, { kind: "component", type: FoehnIconPencilComponent, selector: "foehn-icon-pencil" }, { kind: "component", type: FoehnTableComponent, selector: "foehn-table", inputs: ["itemsPerPage", "id", "title", "titleSrOnly", "previousLabel", "nextLabel", "totalElements", "fixedPageCount", "columnsConfiguration", "sort", "list", "trackByFn"], outputs: ["pageChange", "sortChange"] }, { kind: "component", type: FoehnModalComponent, selector: "foehn-modal", inputs: ["id", "name", "modalSize", "modalBodyText", "modalHeaderText", "closeable", "modalTriggerHtmlElement", "isModalVisible"], outputs: ["isModalVisibleChange"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }, { kind: "pipe", type: SdkDictionaryPipe, name: "fromDictionary" }] }); }
|
|
5226
5223
|
}
|
|
5227
5224
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: DraftsContainerComponent, decorators: [{
|
|
5228
5225
|
type: Component,
|
|
5229
|
-
args: [{ selector: 'sdk-drafts-container', template: "<ng-container *ngIf=\"draftsToDisplay | async as drafts\">\n <div class=\"d-flex flex-column container mt-2\" *ngIf=\"!!drafts.length\">\n <div class=\"mb-2 mt-2\">\n <button\n id=\"showDraftsButton\"\n class=\"btn btn-link pe-0 ps-0\"\n (click)=\"showDrafts()\"\n #showDraftsButton\n >\n <foehn-icon-pencil></foehn-icon-pencil>\n <span class=\"me-2\"></span>\n <span\n class=\"ps-0 me-0\"\n [innerHTML]=\"\n 'draft-container.button.show-drafts'\n | fromDictionary\n : { draftsLength: drafts.length.toString() }\n \"\n ></span>\n </button>\n </div>\n\n <foehn-modal\n [modalHeaderText]=\"'draft-container.modal.title' | fromDictionary\"\n [isModalVisible]=\"!draftsHidden\"\n (isModalVisibleChange)=\"draftsHidden = !$event\"\n [modalTriggerHtmlElement]=\"showDraftsButton\"\n modalSize=\"modal-lg\"\n >\n <h3 class=\"mt-0 h4\" [innerHTML]=\"etapeTitle | async\"></h3>\n\n <foehn-table\n id=\"draftTable\"\n [list]=\"drafts\"\n [columnsConfiguration]=\"columnsConfiguration\"\n [sort]=\"{ sortDirection: 'DESC' }\"\n [itemsPerPage]=\"5\"\n ></foehn-table>\n\n <div modal-footer class=\"w-100\">\n <div class=\"d-flex\">\n <a\n id=\"allDraftsButton\"\n class=\"btn btn-primary\"\n [href]=\"\n (espaceSecuriseUrl | async) +\n 'demandes/search/MINE/INITIAL'\n \"\n >\n {{\n 'draft-container.modal.drafts-in-es.button'\n | fromDictionary\n }}\n </a>\n\n <button\n id=\"hideDraftsButton\"\n class=\"btn btn-secondary ms-auto\"\n (click)=\"draftsHidden = true\"\n >\n {{\n 'draft-container.modal.close.button'\n | fromDictionary\n }}\n </button>\n </div>\n </div>\n </foehn-modal>\n </div>\n</ng-container>\n\n<ng-template #referenceLink let-draft=\"item\" let-index=\"index\">\n <a\n href=\"#\"\n (click)=\"$event.preventDefault(); resumeDraft(draft)\"\n [title]=\"\n 'draft-container.list.reference.link'\n | fromDictionary: { reference: draft.reference }\n \"\n >\n {{ draft.reference }}\n </a>\n</ng-template>\n\n<ng-template #detailLink let-draft=\"item\" let-index=\"index\">\n <a\n [href]=\"(espaceSecuriseUrl | async) + 'demandes/' + draft.reference\"\n [title]=\"\n 'draft-container.list.details-in-es.link'\n | fromDictionary: { reference: draft.reference }\n \"\n >\n <foehn-icon-search\n [title]=\"\n 'draft-container.list.details-in-es.link'\n | fromDictionary: { reference: draft.reference }\n \"\n ></foehn-icon-search>\n </a>\n</ng-template>\n", styles: [":host ::ng-deep foehn-icon-pencil .svg-inline--fa{color:var(--vd-primary-dark)!important}:host ::ng-deep a#allDraftsButton>foehn-icon-external-link-alt .svg-inline--fa{color:#fff!important}\n"] }]
|
|
5226
|
+
args: [{ selector: 'sdk-drafts-container', template: "<ng-container *ngIf=\"draftsToDisplay | async as drafts\">\n <div class=\"d-flex flex-column container mt-2\" *ngIf=\"!!drafts.length\">\n <div class=\"mb-2 mt-2\">\n <button\n id=\"showDraftsButton\"\n type=\"button\"\n class=\"btn btn-link pe-0 ps-0\"\n (click)=\"showDrafts()\"\n #showDraftsButton\n >\n <foehn-icon-pencil></foehn-icon-pencil>\n <span class=\"me-2\"></span>\n <span\n class=\"ps-0 me-0\"\n [innerHTML]=\"\n 'draft-container.button.show-drafts'\n | fromDictionary\n : { draftsLength: drafts.length.toString() }\n \"\n ></span>\n </button>\n </div>\n\n <foehn-modal\n [modalHeaderText]=\"'draft-container.modal.title' | fromDictionary\"\n [isModalVisible]=\"!draftsHidden\"\n (isModalVisibleChange)=\"draftsHidden = !$event\"\n [modalTriggerHtmlElement]=\"showDraftsButton\"\n modalSize=\"modal-lg\"\n >\n <h3 class=\"mt-0 h4\" [innerHTML]=\"etapeTitle | async\"></h3>\n\n <foehn-table\n id=\"draftTable\"\n [list]=\"drafts\"\n [columnsConfiguration]=\"columnsConfiguration\"\n [sort]=\"{ sortDirection: 'DESC' }\"\n [itemsPerPage]=\"5\"\n ></foehn-table>\n\n <div modal-footer class=\"w-100\">\n <div class=\"d-flex\">\n <a\n id=\"allDraftsButton\"\n class=\"btn btn-primary\"\n [href]=\"\n (espaceSecuriseUrl | async) +\n 'demandes/search/MINE/INITIAL'\n \"\n >\n {{\n 'draft-container.modal.drafts-in-es.button'\n | fromDictionary\n }}\n </a>\n\n <button\n id=\"hideDraftsButton\"\n type=\"button\"\n class=\"btn btn-secondary ms-auto\"\n (click)=\"draftsHidden = true\"\n >\n {{\n 'draft-container.modal.close.button'\n | fromDictionary\n }}\n </button>\n </div>\n </div>\n </foehn-modal>\n </div>\n</ng-container>\n\n<ng-template #referenceLink let-draft=\"item\" let-index=\"index\">\n <a\n href=\"#\"\n (click)=\"$event.preventDefault(); resumeDraft(draft)\"\n [title]=\"\n 'draft-container.list.reference.link'\n | fromDictionary: { reference: draft.reference }\n \"\n >\n {{ draft.reference }}\n </a>\n</ng-template>\n\n<ng-template #detailLink let-draft=\"item\" let-index=\"index\">\n <a\n [href]=\"(espaceSecuriseUrl | async) + 'demandes/' + draft.reference\"\n [title]=\"\n 'draft-container.list.details-in-es.link'\n | fromDictionary: { reference: draft.reference }\n \"\n >\n <foehn-icon-search\n [title]=\"\n 'draft-container.list.details-in-es.link'\n | fromDictionary: { reference: draft.reference }\n \"\n ></foehn-icon-search>\n </a>\n</ng-template>\n", styles: [":host ::ng-deep foehn-icon-pencil .svg-inline--fa{color:var(--vd-primary-dark)!important}:host ::ng-deep a#allDraftsButton>foehn-icon-external-link-alt .svg-inline--fa{color:#fff!important}\n"] }]
|
|
5230
5227
|
}], ctorParameters: () => [{ type: DraftsService }, { type: DateHelper }, { type: i1$1.Router }, { type: ApplicationInfoService }], propDecorators: { referenceLink: [{
|
|
5231
5228
|
type: ViewChild,
|
|
5232
5229
|
args: ['referenceLink']
|
|
@@ -5512,37 +5509,20 @@ class FoehnCheckableGroupComponent extends FoehnInputComponent {
|
|
|
5512
5509
|
}
|
|
5513
5510
|
return this.elementDisabled(element);
|
|
5514
5511
|
}
|
|
5515
|
-
onCheck(element,
|
|
5512
|
+
onCheck(element, valueEmitted, fireModelChange = true) {
|
|
5516
5513
|
const value = this.getValue(element);
|
|
5517
5514
|
if (this.multiple) {
|
|
5518
|
-
|
|
5519
|
-
|
|
5520
|
-
}
|
|
5521
|
-
const modelArray = this.model;
|
|
5522
|
-
if (!!selectEvent) {
|
|
5523
|
-
if (this.findIndexInModel(value) < 0) {
|
|
5524
|
-
modelArray.push(value);
|
|
5525
|
-
}
|
|
5526
|
-
}
|
|
5527
|
-
else {
|
|
5528
|
-
const indexInModel = this.findIndexInModel(value);
|
|
5529
|
-
if (indexInModel >= 0) {
|
|
5530
|
-
modelArray.splice(indexInModel, 1);
|
|
5531
|
-
}
|
|
5532
|
-
}
|
|
5533
|
-
if (fireModelChange) {
|
|
5534
|
-
this.model = [...modelArray];
|
|
5535
|
-
}
|
|
5515
|
+
this.onCheckMultiple(value, valueEmitted, fireModelChange);
|
|
5516
|
+
return;
|
|
5536
5517
|
}
|
|
5537
|
-
|
|
5538
|
-
|
|
5539
|
-
|
|
5540
|
-
|
|
5541
|
-
|
|
5542
|
-
|
|
5543
|
-
|
|
5544
|
-
|
|
5545
|
-
}
|
|
5518
|
+
// Single select value
|
|
5519
|
+
if (valueEmitted) {
|
|
5520
|
+
this.model = value;
|
|
5521
|
+
return;
|
|
5522
|
+
}
|
|
5523
|
+
// Single unselect value
|
|
5524
|
+
if (this.areValuesEquals(this.model, value)) {
|
|
5525
|
+
this.model = null;
|
|
5546
5526
|
}
|
|
5547
5527
|
}
|
|
5548
5528
|
isElementSelected(element) {
|
|
@@ -5553,7 +5533,7 @@ class FoehnCheckableGroupComponent extends FoehnInputComponent {
|
|
|
5553
5533
|
return this.areValuesEquals(this.model, value);
|
|
5554
5534
|
}
|
|
5555
5535
|
reset() {
|
|
5556
|
-
if (
|
|
5536
|
+
if (this.defaultElementValue) {
|
|
5557
5537
|
this.updateNgModel(this.defaultElementValue);
|
|
5558
5538
|
}
|
|
5559
5539
|
else {
|
|
@@ -5624,7 +5604,7 @@ class FoehnCheckableGroupComponent extends FoehnInputComponent {
|
|
|
5624
5604
|
emptyGroup.elements = [];
|
|
5625
5605
|
for (const element of this.elements) {
|
|
5626
5606
|
const groupId = this.getGroup(element);
|
|
5627
|
-
if (
|
|
5607
|
+
if (groupId) {
|
|
5628
5608
|
let elementsOfGroup = elementsByGroup.get(groupId);
|
|
5629
5609
|
if (!elementsOfGroup) {
|
|
5630
5610
|
elementsOfGroup = [];
|
|
@@ -5683,6 +5663,25 @@ class FoehnCheckableGroupComponent extends FoehnInputComponent {
|
|
|
5683
5663
|
this.fetchElementsFromUrl();
|
|
5684
5664
|
}
|
|
5685
5665
|
}
|
|
5666
|
+
onCheckMultiple(value, valueEmitted, fireModelChange = true) {
|
|
5667
|
+
if (!this.model) {
|
|
5668
|
+
this.model = [];
|
|
5669
|
+
}
|
|
5670
|
+
const modelArray = this.model;
|
|
5671
|
+
const index = this.findIndexInModel(value);
|
|
5672
|
+
// Add element when it does not exist
|
|
5673
|
+
if (valueEmitted && index < 0) {
|
|
5674
|
+
modelArray.push(value);
|
|
5675
|
+
}
|
|
5676
|
+
// Remove existing element
|
|
5677
|
+
if (!valueEmitted && index >= 0) {
|
|
5678
|
+
modelArray.splice(index, 1);
|
|
5679
|
+
}
|
|
5680
|
+
// Update model
|
|
5681
|
+
if (fireModelChange) {
|
|
5682
|
+
this.model = [...modelArray];
|
|
5683
|
+
}
|
|
5684
|
+
}
|
|
5686
5685
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: FoehnCheckableGroupComponent, deps: [{ token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
5687
5686
|
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.3", type: FoehnCheckableGroupComponent, inputs: { elements: "elements", elementsUrl: "elementsUrl", elementValue: "elementValue", elementLabel: "elementLabel", elementValueIdentity: "elementValueIdentity", elementDisabled: "elementDisabled", elementGroup: "elementGroup", defaultElementValue: "defaultElementValue" }, outputs: { elementsLoaded: "elementsLoaded" }, usesInheritance: true, usesOnChanges: true, ngImport: i0 }); }
|
|
5688
5687
|
}
|
|
@@ -5927,11 +5926,11 @@ class FoehnDropdownMenuComponent {
|
|
|
5927
5926
|
}
|
|
5928
5927
|
}
|
|
5929
5928
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: FoehnDropdownMenuComponent, deps: [{ token: i1$1.Router }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
5930
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.3", type: FoehnDropdownMenuComponent, selector: "foehn-dropdown-menu", inputs: { id: "id", label: "label", model: "model", btnCssClass: "btnCssClass" }, host: { listeners: { "keyup": "handleKeyboardUpEvent($event)", "keydown": "handleKeyboardDownEvent($event)" }, properties: { "attr.id": "this.hostId" } }, viewQueries: [{ propertyName: "buttonTrigger", first: true, predicate: ["buttonTrigger"], descendants: true, static: true }, { propertyName: "entryPoint", first: true, predicate: ["entryPoint"], descendants: true }, { propertyName: "selectedFocusList", predicate: ["selectedFocusList"], descendants: true }], ngImport: i0, template: "<nav\n [attr.id]=\"buildId('NavContainer')\"\n tabindex=\"-1\"\n [attr.aria-label]=\"'foehn-dropdown-menu.aria-label' | fromDictionary\"\n>\n <button\n [attr.id]=\"buildId('TriggerButton')\"\n class=\"d-flex align-items-center btn\"\n [ngClass]=\"btnCssClass\"\n (click)=\"toggleDropdownVisibility()\"\n (focusin)=\"handleFocusIn()\"\n (focusout)=\"handleFocusOut()\"\n [attr.aria-haspopup]=\"true\"\n [attr.aria-expanded]=\"isDropdownVisible\"\n [attr.aria-controls]=\"'dropdown-menu-list'\"\n [attr.aria-label]=\"label || null\"\n #buttonTrigger\n >\n <ng-content></ng-content>\n </button>\n\n <div class=\"dropdown-menu-container\" *ngIf=\"!!model && isDropdownVisible\">\n <ul\n id=\"dropdown-menu-list\"\n class=\"parent-list list-group\"\n (focusin)=\"handleFocusIn()\"\n (focusout)=\"handleFocusOut()\"\n [style.left.px]=\"popupPosition.left\"\n [style.top.px]=\"popupPosition.top\"\n tabindex=\"-1\"\n #entryPoint\n >\n <ng-container *ngFor=\"let group of model; let i = index\">\n <ng-container *ngIf=\"!!group.title\">\n <li\n *ngIf=\"i > 0\"\n class=\"list-group-item item-divider\"\n [attr.role]=\"'separator'\"\n ></li>\n <li\n class=\"list-group-item list-group-title\"\n tabindex=\"0\"\n #selectedFocusList\n >\n <strong *ngIf=\"!!group.title\">{{ group.title }}</strong>\n <ul class=\"child-list list-group\">\n <li\n *ngFor=\"let item of group.items\"\n class=\"list-group-item\"\n #selectedFocusList\n >\n <ng-container\n [ngTemplateOutlet]=\"itemLink\"\n [ngTemplateOutletContext]=\"{ item: item }\"\n ></ng-container>\n </li>\n </ul>\n </li>\n </ng-container>\n <ng-container *ngIf=\"!group.title\">\n <li\n *ngIf=\"i > 0\"\n class=\"list-group-item item-divider\"\n [attr.role]=\"'separator'\"\n ></li>\n <li\n *ngFor=\"let item of group.items; let j = index\"\n class=\"list-group-item\"\n #selectedFocusList\n >\n <ng-container\n [ngTemplateOutlet]=\"itemLink\"\n [ngTemplateOutletContext]=\"{ item: item }\"\n ></ng-container>\n </li>\n </ng-container>\n </ng-container>\n </ul>\n </div>\n</nav>\n\n<ng-template #itemLink let-item=\"item\">\n <a\n *ngIf=\"!!item.routerLink\"\n [attr.title]=\"item.title\"\n [routerLink]=\"item.routerLink\"\n [innerHTML]=\"item.label\"\n [attr.use-router]=\"true\"\n ></a>\n <a\n *ngIf=\"!item.routerLink\"\n [attr.title]=\"item.title\"\n [attr.href]=\"item.href\"\n [attr.target]=\"item.target\"\n [innerHTML]=\"item.label\"\n [attr.use-router]=\"false\"\n ></a>\n</ng-template>\n", styles: [":host ::ng-deep .btn .svg-inline--fa{color:#000!important}nav button:after{display:inline-block;width:0;height:0;margin-left:.3em;content:\"\";border-top:.4em solid;border-right:.4em solid transparent;border-bottom:0;border-left:.4em solid transparent}nav button.btn-link:after{color:#000}.dropdown-menu-container{position:relative;width:100%}.dropdown-menu-container .parent-list{position:absolute;top:0;left:0;z-index:9999;box-shadow:0 4px 8px #0003,0 6px 20px #00000030;background-color:#fff;width:max-content;max-width:350px}.dropdown-menu-container .list-group-item{border:0;padding:0}.dropdown-menu-container li.item-divider{border-top:1px solid #ddd!important}.dropdown-menu-container li a{width:100%;color:inherit;display:block;padding:.75rem;word-break:break-word}.dropdown-menu-container li.list-group-title strong{padding-left:.75rem}.dropdown-menu-container ul.child-list a{padding-left:1.5rem}.dropdown-menu-container li a:focus{box-shadow:none}.dropdown-menu-container li.list-group-item:hover,.dropdown-menu-container li.list-group-item a:focus{background-color:var(--vd-primary-dark);outline:none;color:#fff}.dropdown-menu-container .list-group-title{padding-top:.5rem}.dropdown-menu-container li.list-group-title:hover{background:none;color:inherit}.dropdown-menu-container li.list-group-title:focus{outline:0;box-shadow:inset 0 1px 1px #00000013,0 0 0 .2rem var(--vd-focus)}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1$1.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "pipe", type: SdkDictionaryPipe, name: "fromDictionary" }] }); }
|
|
5929
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.3", type: FoehnDropdownMenuComponent, selector: "foehn-dropdown-menu", inputs: { id: "id", label: "label", model: "model", btnCssClass: "btnCssClass" }, host: { listeners: { "keyup": "handleKeyboardUpEvent($event)", "keydown": "handleKeyboardDownEvent($event)" }, properties: { "attr.id": "this.hostId" } }, viewQueries: [{ propertyName: "buttonTrigger", first: true, predicate: ["buttonTrigger"], descendants: true, static: true }, { propertyName: "entryPoint", first: true, predicate: ["entryPoint"], descendants: true }, { propertyName: "selectedFocusList", predicate: ["selectedFocusList"], descendants: true }], ngImport: i0, template: "<nav\n [attr.id]=\"buildId('NavContainer')\"\n tabindex=\"-1\"\n [attr.aria-label]=\"'foehn-dropdown-menu.aria-label' | fromDictionary\"\n>\n <button\n [attr.id]=\"buildId('TriggerButton')\"\n type=\"button\"\n class=\"d-flex align-items-center btn\"\n [ngClass]=\"btnCssClass\"\n (click)=\"toggleDropdownVisibility()\"\n (focusin)=\"handleFocusIn()\"\n (focusout)=\"handleFocusOut()\"\n [attr.aria-haspopup]=\"true\"\n [attr.aria-expanded]=\"isDropdownVisible\"\n [attr.aria-controls]=\"'dropdown-menu-list'\"\n [attr.aria-label]=\"label || null\"\n #buttonTrigger\n >\n <ng-content></ng-content>\n </button>\n\n <div class=\"dropdown-menu-container\" *ngIf=\"!!model && isDropdownVisible\">\n <ul\n id=\"dropdown-menu-list\"\n class=\"parent-list list-group\"\n (focusin)=\"handleFocusIn()\"\n (focusout)=\"handleFocusOut()\"\n [style.left.px]=\"popupPosition.left\"\n [style.top.px]=\"popupPosition.top\"\n tabindex=\"-1\"\n #entryPoint\n >\n <ng-container *ngFor=\"let group of model; let i = index\">\n <ng-container *ngIf=\"!!group.title\">\n <li\n *ngIf=\"i > 0\"\n class=\"list-group-item item-divider\"\n [attr.role]=\"'separator'\"\n ></li>\n <li\n class=\"list-group-item list-group-title\"\n tabindex=\"0\"\n #selectedFocusList\n >\n <strong *ngIf=\"!!group.title\">{{ group.title }}</strong>\n <ul class=\"child-list list-group\">\n <li\n *ngFor=\"let item of group.items\"\n class=\"list-group-item\"\n #selectedFocusList\n >\n <ng-container\n [ngTemplateOutlet]=\"itemLink\"\n [ngTemplateOutletContext]=\"{ item: item }\"\n ></ng-container>\n </li>\n </ul>\n </li>\n </ng-container>\n <ng-container *ngIf=\"!group.title\">\n <li\n *ngIf=\"i > 0\"\n class=\"list-group-item item-divider\"\n [attr.role]=\"'separator'\"\n ></li>\n <li\n *ngFor=\"let item of group.items; let j = index\"\n class=\"list-group-item\"\n #selectedFocusList\n >\n <ng-container\n [ngTemplateOutlet]=\"itemLink\"\n [ngTemplateOutletContext]=\"{ item: item }\"\n ></ng-container>\n </li>\n </ng-container>\n </ng-container>\n </ul>\n </div>\n</nav>\n\n<ng-template #itemLink let-item=\"item\">\n <a\n *ngIf=\"!!item.routerLink\"\n [attr.title]=\"item.title\"\n [routerLink]=\"item.routerLink\"\n [innerHTML]=\"item.label\"\n [attr.use-router]=\"true\"\n ></a>\n <a\n *ngIf=\"!item.routerLink\"\n [attr.title]=\"item.title\"\n [attr.href]=\"item.href\"\n [attr.target]=\"item.target\"\n [innerHTML]=\"item.label\"\n [attr.use-router]=\"false\"\n ></a>\n</ng-template>\n", styles: [":host ::ng-deep .btn .svg-inline--fa{color:#000!important}nav button:after{display:inline-block;width:0;height:0;margin-left:.3em;content:\"\";border-top:.4em solid;border-right:.4em solid transparent;border-bottom:0;border-left:.4em solid transparent}nav button.btn-link:after{color:#000}.dropdown-menu-container{position:relative;width:100%}.dropdown-menu-container .parent-list{position:absolute;top:0;left:0;z-index:9999;box-shadow:0 4px 8px #0003,0 6px 20px #00000030;background-color:#fff;width:max-content;max-width:350px}.dropdown-menu-container .list-group-item{border:0;padding:0}.dropdown-menu-container li.item-divider{border-top:1px solid #ddd!important}.dropdown-menu-container li a{width:100%;color:inherit;display:block;padding:.75rem;word-break:break-word}.dropdown-menu-container li.list-group-title strong{padding-left:.75rem}.dropdown-menu-container ul.child-list a{padding-left:1.5rem}.dropdown-menu-container li a:focus{box-shadow:none}.dropdown-menu-container li.list-group-item:hover,.dropdown-menu-container li.list-group-item a:focus{background-color:var(--vd-primary-dark);outline:none;color:#fff}.dropdown-menu-container .list-group-title{padding-top:.5rem}.dropdown-menu-container li.list-group-title:hover{background:none;color:inherit}.dropdown-menu-container li.list-group-title:focus{outline:0;box-shadow:inset 0 1px 1px #00000013,0 0 0 .2rem var(--vd-focus)}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1$1.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "pipe", type: SdkDictionaryPipe, name: "fromDictionary" }] }); }
|
|
5931
5930
|
}
|
|
5932
5931
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: FoehnDropdownMenuComponent, decorators: [{
|
|
5933
5932
|
type: Component,
|
|
5934
|
-
args: [{ selector: 'foehn-dropdown-menu', template: "<nav\n [attr.id]=\"buildId('NavContainer')\"\n tabindex=\"-1\"\n [attr.aria-label]=\"'foehn-dropdown-menu.aria-label' | fromDictionary\"\n>\n <button\n [attr.id]=\"buildId('TriggerButton')\"\n class=\"d-flex align-items-center btn\"\n [ngClass]=\"btnCssClass\"\n (click)=\"toggleDropdownVisibility()\"\n (focusin)=\"handleFocusIn()\"\n (focusout)=\"handleFocusOut()\"\n [attr.aria-haspopup]=\"true\"\n [attr.aria-expanded]=\"isDropdownVisible\"\n [attr.aria-controls]=\"'dropdown-menu-list'\"\n [attr.aria-label]=\"label || null\"\n #buttonTrigger\n >\n <ng-content></ng-content>\n </button>\n\n <div class=\"dropdown-menu-container\" *ngIf=\"!!model && isDropdownVisible\">\n <ul\n id=\"dropdown-menu-list\"\n class=\"parent-list list-group\"\n (focusin)=\"handleFocusIn()\"\n (focusout)=\"handleFocusOut()\"\n [style.left.px]=\"popupPosition.left\"\n [style.top.px]=\"popupPosition.top\"\n tabindex=\"-1\"\n #entryPoint\n >\n <ng-container *ngFor=\"let group of model; let i = index\">\n <ng-container *ngIf=\"!!group.title\">\n <li\n *ngIf=\"i > 0\"\n class=\"list-group-item item-divider\"\n [attr.role]=\"'separator'\"\n ></li>\n <li\n class=\"list-group-item list-group-title\"\n tabindex=\"0\"\n #selectedFocusList\n >\n <strong *ngIf=\"!!group.title\">{{ group.title }}</strong>\n <ul class=\"child-list list-group\">\n <li\n *ngFor=\"let item of group.items\"\n class=\"list-group-item\"\n #selectedFocusList\n >\n <ng-container\n [ngTemplateOutlet]=\"itemLink\"\n [ngTemplateOutletContext]=\"{ item: item }\"\n ></ng-container>\n </li>\n </ul>\n </li>\n </ng-container>\n <ng-container *ngIf=\"!group.title\">\n <li\n *ngIf=\"i > 0\"\n class=\"list-group-item item-divider\"\n [attr.role]=\"'separator'\"\n ></li>\n <li\n *ngFor=\"let item of group.items; let j = index\"\n class=\"list-group-item\"\n #selectedFocusList\n >\n <ng-container\n [ngTemplateOutlet]=\"itemLink\"\n [ngTemplateOutletContext]=\"{ item: item }\"\n ></ng-container>\n </li>\n </ng-container>\n </ng-container>\n </ul>\n </div>\n</nav>\n\n<ng-template #itemLink let-item=\"item\">\n <a\n *ngIf=\"!!item.routerLink\"\n [attr.title]=\"item.title\"\n [routerLink]=\"item.routerLink\"\n [innerHTML]=\"item.label\"\n [attr.use-router]=\"true\"\n ></a>\n <a\n *ngIf=\"!item.routerLink\"\n [attr.title]=\"item.title\"\n [attr.href]=\"item.href\"\n [attr.target]=\"item.target\"\n [innerHTML]=\"item.label\"\n [attr.use-router]=\"false\"\n ></a>\n</ng-template>\n", styles: [":host ::ng-deep .btn .svg-inline--fa{color:#000!important}nav button:after{display:inline-block;width:0;height:0;margin-left:.3em;content:\"\";border-top:.4em solid;border-right:.4em solid transparent;border-bottom:0;border-left:.4em solid transparent}nav button.btn-link:after{color:#000}.dropdown-menu-container{position:relative;width:100%}.dropdown-menu-container .parent-list{position:absolute;top:0;left:0;z-index:9999;box-shadow:0 4px 8px #0003,0 6px 20px #00000030;background-color:#fff;width:max-content;max-width:350px}.dropdown-menu-container .list-group-item{border:0;padding:0}.dropdown-menu-container li.item-divider{border-top:1px solid #ddd!important}.dropdown-menu-container li a{width:100%;color:inherit;display:block;padding:.75rem;word-break:break-word}.dropdown-menu-container li.list-group-title strong{padding-left:.75rem}.dropdown-menu-container ul.child-list a{padding-left:1.5rem}.dropdown-menu-container li a:focus{box-shadow:none}.dropdown-menu-container li.list-group-item:hover,.dropdown-menu-container li.list-group-item a:focus{background-color:var(--vd-primary-dark);outline:none;color:#fff}.dropdown-menu-container .list-group-title{padding-top:.5rem}.dropdown-menu-container li.list-group-title:hover{background:none;color:inherit}.dropdown-menu-container li.list-group-title:focus{outline:0;box-shadow:inset 0 1px 1px #00000013,0 0 0 .2rem var(--vd-focus)}\n"] }]
|
|
5933
|
+
args: [{ selector: 'foehn-dropdown-menu', template: "<nav\n [attr.id]=\"buildId('NavContainer')\"\n tabindex=\"-1\"\n [attr.aria-label]=\"'foehn-dropdown-menu.aria-label' | fromDictionary\"\n>\n <button\n [attr.id]=\"buildId('TriggerButton')\"\n type=\"button\"\n class=\"d-flex align-items-center btn\"\n [ngClass]=\"btnCssClass\"\n (click)=\"toggleDropdownVisibility()\"\n (focusin)=\"handleFocusIn()\"\n (focusout)=\"handleFocusOut()\"\n [attr.aria-haspopup]=\"true\"\n [attr.aria-expanded]=\"isDropdownVisible\"\n [attr.aria-controls]=\"'dropdown-menu-list'\"\n [attr.aria-label]=\"label || null\"\n #buttonTrigger\n >\n <ng-content></ng-content>\n </button>\n\n <div class=\"dropdown-menu-container\" *ngIf=\"!!model && isDropdownVisible\">\n <ul\n id=\"dropdown-menu-list\"\n class=\"parent-list list-group\"\n (focusin)=\"handleFocusIn()\"\n (focusout)=\"handleFocusOut()\"\n [style.left.px]=\"popupPosition.left\"\n [style.top.px]=\"popupPosition.top\"\n tabindex=\"-1\"\n #entryPoint\n >\n <ng-container *ngFor=\"let group of model; let i = index\">\n <ng-container *ngIf=\"!!group.title\">\n <li\n *ngIf=\"i > 0\"\n class=\"list-group-item item-divider\"\n [attr.role]=\"'separator'\"\n ></li>\n <li\n class=\"list-group-item list-group-title\"\n tabindex=\"0\"\n #selectedFocusList\n >\n <strong *ngIf=\"!!group.title\">{{ group.title }}</strong>\n <ul class=\"child-list list-group\">\n <li\n *ngFor=\"let item of group.items\"\n class=\"list-group-item\"\n #selectedFocusList\n >\n <ng-container\n [ngTemplateOutlet]=\"itemLink\"\n [ngTemplateOutletContext]=\"{ item: item }\"\n ></ng-container>\n </li>\n </ul>\n </li>\n </ng-container>\n <ng-container *ngIf=\"!group.title\">\n <li\n *ngIf=\"i > 0\"\n class=\"list-group-item item-divider\"\n [attr.role]=\"'separator'\"\n ></li>\n <li\n *ngFor=\"let item of group.items; let j = index\"\n class=\"list-group-item\"\n #selectedFocusList\n >\n <ng-container\n [ngTemplateOutlet]=\"itemLink\"\n [ngTemplateOutletContext]=\"{ item: item }\"\n ></ng-container>\n </li>\n </ng-container>\n </ng-container>\n </ul>\n </div>\n</nav>\n\n<ng-template #itemLink let-item=\"item\">\n <a\n *ngIf=\"!!item.routerLink\"\n [attr.title]=\"item.title\"\n [routerLink]=\"item.routerLink\"\n [innerHTML]=\"item.label\"\n [attr.use-router]=\"true\"\n ></a>\n <a\n *ngIf=\"!item.routerLink\"\n [attr.title]=\"item.title\"\n [attr.href]=\"item.href\"\n [attr.target]=\"item.target\"\n [innerHTML]=\"item.label\"\n [attr.use-router]=\"false\"\n ></a>\n</ng-template>\n", styles: [":host ::ng-deep .btn .svg-inline--fa{color:#000!important}nav button:after{display:inline-block;width:0;height:0;margin-left:.3em;content:\"\";border-top:.4em solid;border-right:.4em solid transparent;border-bottom:0;border-left:.4em solid transparent}nav button.btn-link:after{color:#000}.dropdown-menu-container{position:relative;width:100%}.dropdown-menu-container .parent-list{position:absolute;top:0;left:0;z-index:9999;box-shadow:0 4px 8px #0003,0 6px 20px #00000030;background-color:#fff;width:max-content;max-width:350px}.dropdown-menu-container .list-group-item{border:0;padding:0}.dropdown-menu-container li.item-divider{border-top:1px solid #ddd!important}.dropdown-menu-container li a{width:100%;color:inherit;display:block;padding:.75rem;word-break:break-word}.dropdown-menu-container li.list-group-title strong{padding-left:.75rem}.dropdown-menu-container ul.child-list a{padding-left:1.5rem}.dropdown-menu-container li a:focus{box-shadow:none}.dropdown-menu-container li.list-group-item:hover,.dropdown-menu-container li.list-group-item a:focus{background-color:var(--vd-primary-dark);outline:none;color:#fff}.dropdown-menu-container .list-group-title{padding-top:.5rem}.dropdown-menu-container li.list-group-title:hover{background:none;color:inherit}.dropdown-menu-container li.list-group-title:focus{outline:0;box-shadow:inset 0 1px 1px #00000013,0 0 0 .2rem var(--vd-focus)}\n"] }]
|
|
5935
5934
|
}], ctorParameters: () => [{ type: i1$1.Router }], propDecorators: { selectedFocusList: [{
|
|
5936
5935
|
type: ViewChildren,
|
|
5937
5936
|
args: ['selectedFocusList']
|
|
@@ -6299,23 +6298,21 @@ class SupportAlertComponent {
|
|
|
6299
6298
|
this.supportAlertService.hideAlert(alert);
|
|
6300
6299
|
}
|
|
6301
6300
|
getAlertClass(alert) {
|
|
6302
|
-
|
|
6303
|
-
|
|
6304
|
-
|
|
6305
|
-
|
|
6306
|
-
|
|
6307
|
-
|
|
6308
|
-
return 'alert-danger';
|
|
6309
|
-
default:
|
|
6310
|
-
return 'alert-info';
|
|
6301
|
+
let alertClass = 'alert-info';
|
|
6302
|
+
if (alert.level === SupportAlertLevel.WARNING) {
|
|
6303
|
+
alertClass = 'alert-warning';
|
|
6304
|
+
}
|
|
6305
|
+
else if (alert.level === SupportAlertLevel.IMPORTANT) {
|
|
6306
|
+
alertClass = 'alert-danger';
|
|
6311
6307
|
}
|
|
6308
|
+
return alertClass + (alert.blocking ? '' : ' alert-dismissible');
|
|
6312
6309
|
}
|
|
6313
6310
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: SupportAlertComponent, deps: [{ token: SupportAlertService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
6314
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.3", type: SupportAlertComponent, selector: "sdk-support-alert", inputs: { alert: "alert" }, ngImport: i0, template: "<
|
|
6311
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.3", type: SupportAlertComponent, selector: "sdk-support-alert", inputs: { alert: "alert" }, ngImport: i0, template: "<div\n [class]=\"'alert fade show ' + getAlertClass(alert)\"\n role=\"alert\"\n *ngIf=\"!!alert\"\n>\n <h3\n class=\"alert-heading mt-0 h5\"\n *ngIf=\"alert.messageTitle && alert.messageTitle.length > 0\"\n [innerHtml]=\"alert.messageTitle\"\n ></h3>\n\n <div [innerHtml]=\"alert.messageBody\"></div>\n\n <button\n *ngIf=\"!alert.blocking\"\n type=\"button\"\n class=\"btn btn-close\"\n aria-label=\"Cacher ce message\"\n title=\"Cacher ce message\"\n (click)=\"hideAlert(alert)\"\n ></button>\n</div>\n", dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
|
|
6315
6312
|
}
|
|
6316
6313
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: SupportAlertComponent, decorators: [{
|
|
6317
6314
|
type: Component,
|
|
6318
|
-
args: [{ selector: 'sdk-support-alert', template: "<
|
|
6315
|
+
args: [{ selector: 'sdk-support-alert', template: "<div\n [class]=\"'alert fade show ' + getAlertClass(alert)\"\n role=\"alert\"\n *ngIf=\"!!alert\"\n>\n <h3\n class=\"alert-heading mt-0 h5\"\n *ngIf=\"alert.messageTitle && alert.messageTitle.length > 0\"\n [innerHtml]=\"alert.messageTitle\"\n ></h3>\n\n <div [innerHtml]=\"alert.messageBody\"></div>\n\n <button\n *ngIf=\"!alert.blocking\"\n type=\"button\"\n class=\"btn btn-close\"\n aria-label=\"Cacher ce message\"\n title=\"Cacher ce message\"\n (click)=\"hideAlert(alert)\"\n ></button>\n</div>\n" }]
|
|
6319
6316
|
}], ctorParameters: () => [{ type: SupportAlertService }], propDecorators: { alert: [{
|
|
6320
6317
|
type: Input
|
|
6321
6318
|
}] } });
|
|
@@ -6353,11 +6350,11 @@ class SupportAlertContainerComponent {
|
|
|
6353
6350
|
return url.replace('{etapeId}', etapeId);
|
|
6354
6351
|
}
|
|
6355
6352
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: SupportAlertContainerComponent, deps: [{ token: SupportAlertService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
6356
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.3", type: SupportAlertContainerComponent, selector: "sdk-support-alert-container", inputs: { etapeId: "etapeId", supportAlertUrl: "supportAlertUrl" }, usesOnChanges: true, ngImport: i0, template: "<
|
|
6353
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.3", type: SupportAlertContainerComponent, selector: "sdk-support-alert-container", inputs: { etapeId: "etapeId", supportAlertUrl: "supportAlertUrl" }, usesOnChanges: true, ngImport: i0, template: "<section class=\"d-flex flex-column container mt-2\" *ngIf=\"hasAlerts | async\">\n <h2 class=\"visually-hidden\">Messages de support</h2>\n <div class=\"mb-2 mt-2\" *ngIf=\"hasHiddenAlerts | async\">\n <button\n type=\"button\"\n class=\"btn btn-link pe-0 ps-0\"\n (click)=\"restoreAllAlerts()\"\n >\n Afficher tous les messages\n </button>\n </div>\n <sdk-support-alert\n *ngFor=\"let alert of alertsToDisplay | async\"\n [alert]=\"alert\"\n ></sdk-support-alert>\n</section>\n", dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: SupportAlertComponent, selector: "sdk-support-alert", inputs: ["alert"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }] }); }
|
|
6357
6354
|
}
|
|
6358
6355
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: SupportAlertContainerComponent, decorators: [{
|
|
6359
6356
|
type: Component,
|
|
6360
|
-
args: [{ selector: 'sdk-support-alert-container', template: "<
|
|
6357
|
+
args: [{ selector: 'sdk-support-alert-container', template: "<section class=\"d-flex flex-column container mt-2\" *ngIf=\"hasAlerts | async\">\n <h2 class=\"visually-hidden\">Messages de support</h2>\n <div class=\"mb-2 mt-2\" *ngIf=\"hasHiddenAlerts | async\">\n <button\n type=\"button\"\n class=\"btn btn-link pe-0 ps-0\"\n (click)=\"restoreAllAlerts()\"\n >\n Afficher tous les messages\n </button>\n </div>\n <sdk-support-alert\n *ngFor=\"let alert of alertsToDisplay | async\"\n [alert]=\"alert\"\n ></sdk-support-alert>\n</section>\n" }]
|
|
6361
6358
|
}], ctorParameters: () => [{ type: SupportAlertService }], propDecorators: { etapeId: [{
|
|
6362
6359
|
type: Input
|
|
6363
6360
|
}], supportAlertUrl: [{
|
|
@@ -6392,11 +6389,11 @@ class FoehnConfirmModalComponent {
|
|
|
6392
6389
|
this.isVisible = status;
|
|
6393
6390
|
}
|
|
6394
6391
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: FoehnConfirmModalComponent, deps: [{ token: FoehnConfirmModalService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
6395
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.3", type: FoehnConfirmModalComponent, selector: "foehn-confirm-modal", ngImport: i0, template: "<foehn-modal\n [modalHeaderText]=\"modalContent.title || 'Confirmation'\"\n modalSize=\"modal-md\"\n [isModalVisible]=\"isVisible\"\n (isModalVisibleChange)=\"updateVisibilityStatus($event)\"\n [closeable]=\"\n modalContent.closeable !== null && modalContent.closeable !== undefined\n ? modalContent.closeable\n : true\n \"\n *ngIf=\"content | async as modalContent\"\n>\n <p [innerHTML]=\"modalContent.htmlContent\"></p>\n\n <div modal-footer>\n <div class=\"d-flex justify-content-end me-2 mb-2 mt-2\">\n <button\n id=\"cancelButton\"\n class=\"btn btn-secondary\"\n (click)=\"cancel()\"\n >\n {{ modalContent.cancelButtonLabel || 'Annuler' }}\n </button>\n <button\n id=\"confirmButton\"\n class=\"btn btn-primary ms-3\"\n (click)=\"ok()\"\n >\n {{ modalContent.okButtonLabel || 'Confirmer' }}\n </button>\n </div>\n </div>\n</foehn-modal>\n", dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: FoehnModalComponent, selector: "foehn-modal", inputs: ["id", "name", "modalSize", "modalBodyText", "modalHeaderText", "closeable", "modalTriggerHtmlElement", "isModalVisible"], outputs: ["isModalVisibleChange"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }] }); }
|
|
6392
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.3", type: FoehnConfirmModalComponent, selector: "foehn-confirm-modal", ngImport: i0, template: "<foehn-modal\n [modalHeaderText]=\"modalContent.title || 'Confirmation'\"\n modalSize=\"modal-md\"\n [isModalVisible]=\"isVisible\"\n (isModalVisibleChange)=\"updateVisibilityStatus($event)\"\n [closeable]=\"\n modalContent.closeable !== null && modalContent.closeable !== undefined\n ? modalContent.closeable\n : true\n \"\n *ngIf=\"content | async as modalContent\"\n>\n <p [innerHTML]=\"modalContent.htmlContent\"></p>\n\n <div modal-footer>\n <div class=\"d-flex justify-content-end me-2 mb-2 mt-2\">\n <button\n id=\"cancelButton\"\n type=\"button\"\n class=\"btn btn-secondary\"\n (click)=\"cancel()\"\n >\n {{ modalContent.cancelButtonLabel || 'Annuler' }}\n </button>\n <button\n id=\"confirmButton\"\n type=\"button\"\n class=\"btn btn-primary ms-3\"\n (click)=\"ok()\"\n >\n {{ modalContent.okButtonLabel || 'Confirmer' }}\n </button>\n </div>\n </div>\n</foehn-modal>\n", dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: FoehnModalComponent, selector: "foehn-modal", inputs: ["id", "name", "modalSize", "modalBodyText", "modalHeaderText", "closeable", "modalTriggerHtmlElement", "isModalVisible"], outputs: ["isModalVisibleChange"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }] }); }
|
|
6396
6393
|
}
|
|
6397
6394
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: FoehnConfirmModalComponent, decorators: [{
|
|
6398
6395
|
type: Component,
|
|
6399
|
-
args: [{ selector: 'foehn-confirm-modal', template: "<foehn-modal\n [modalHeaderText]=\"modalContent.title || 'Confirmation'\"\n modalSize=\"modal-md\"\n [isModalVisible]=\"isVisible\"\n (isModalVisibleChange)=\"updateVisibilityStatus($event)\"\n [closeable]=\"\n modalContent.closeable !== null && modalContent.closeable !== undefined\n ? modalContent.closeable\n : true\n \"\n *ngIf=\"content | async as modalContent\"\n>\n <p [innerHTML]=\"modalContent.htmlContent\"></p>\n\n <div modal-footer>\n <div class=\"d-flex justify-content-end me-2 mb-2 mt-2\">\n <button\n id=\"cancelButton\"\n class=\"btn btn-secondary\"\n (click)=\"cancel()\"\n >\n {{ modalContent.cancelButtonLabel || 'Annuler' }}\n </button>\n <button\n id=\"confirmButton\"\n class=\"btn btn-primary ms-3\"\n (click)=\"ok()\"\n >\n {{ modalContent.okButtonLabel || 'Confirmer' }}\n </button>\n </div>\n </div>\n</foehn-modal>\n" }]
|
|
6396
|
+
args: [{ selector: 'foehn-confirm-modal', template: "<foehn-modal\n [modalHeaderText]=\"modalContent.title || 'Confirmation'\"\n modalSize=\"modal-md\"\n [isModalVisible]=\"isVisible\"\n (isModalVisibleChange)=\"updateVisibilityStatus($event)\"\n [closeable]=\"\n modalContent.closeable !== null && modalContent.closeable !== undefined\n ? modalContent.closeable\n : true\n \"\n *ngIf=\"content | async as modalContent\"\n>\n <p [innerHTML]=\"modalContent.htmlContent\"></p>\n\n <div modal-footer>\n <div class=\"d-flex justify-content-end me-2 mb-2 mt-2\">\n <button\n id=\"cancelButton\"\n type=\"button\"\n class=\"btn btn-secondary\"\n (click)=\"cancel()\"\n >\n {{ modalContent.cancelButtonLabel || 'Annuler' }}\n </button>\n <button\n id=\"confirmButton\"\n type=\"button\"\n class=\"btn btn-primary ms-3\"\n (click)=\"ok()\"\n >\n {{ modalContent.okButtonLabel || 'Confirmer' }}\n </button>\n </div>\n </div>\n</foehn-modal>\n" }]
|
|
6400
6397
|
}], ctorParameters: () => [{ type: FoehnConfirmModalService }] });
|
|
6401
6398
|
|
|
6402
6399
|
class FoehnIconExternalLinkAltComponent extends AbstractIconComponent {
|
|
@@ -6826,11 +6823,11 @@ class FoehnPageComponent {
|
|
|
6826
6823
|
this.pageTitle = title;
|
|
6827
6824
|
}
|
|
6828
6825
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: FoehnPageComponent, deps: [{ token: i1$3.Title }, { token: FoehnPageService }, { token: SupportAlertService }, { token: FoehnNavigationService }, { token: ApplicationInfoService }, { token: GesdemEventService }, { token: BreadcrumbEventService }, { token: i1$1.Router }, { token: SessionInfo }, { token: FoehnPageModalService }, { token: SdkDictionaryService }, { token: SdkStatisticsService }, { token: DemandeExpirationService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
6829
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.3", type: FoehnPageComponent, selector: "foehn-page", inputs: { appTitle: "appTitle", footerLinks: "footerLinks", supportAlertEnabled: "supportAlertEnabled", draftsEnabled: "draftsEnabled", supportAlertUrl: "supportAlertUrl", draftsUrl: "draftsUrl", etapeId: "etapeId", userConnectedAsDisplayed: "userConnectedAsDisplayed", statusProgressBarHidden: "statusProgressBarHidden", confirmLeavingAlert: "confirmLeavingAlert", showDefaultContactFooterLink: "showDefaultContactFooterLink", showDefaultGuideFooterLink: "showDefaultGuideFooterLink", showDefaultTermOfUseLink: "showDefaultTermOfUseLink", showDefaultSecurityBestPracticeLink: "showDefaultSecurityBestPracticeLink", routerLinkAppTitle: "routerLinkAppTitle" }, usesOnChanges: true, ngImport: i0, template: "<foehn-page-expiration-timer\n *ngIf=\"(displayDemandeExpirationTimer | async) === true\"\n id=\"foehn-page-expiration-timer\"\n></foehn-page-expiration-timer>\n<foehn-header\n id=\"foehn_header\"\n [title]=\"appTitle\"\n [routerLinkAppTitle]=\"routerLinkAppTitle\"\n [showSecuredAreaLoginButton]=\"showSecuredAreaLoginButton | async\"\n></foehn-header>\n<foehn-growl id=\"foehn_growl\"></foehn-growl>\n<div class=\"vd-bg-pattern-gray\">\n <div class=\"container\">\n <foehn-breadcrumb\n [confirmLeavingAlert]=\"confirmLeavingAlert\"\n ></foehn-breadcrumb>\n </div>\n</div>\n<main id=\"main\">\n <div class=\"vd-bg-pattern-gray\">\n <div class=\"container\">\n <!-- Fix annoying flickering when the page loads -->\n <div class=\"h1 mt-0\" *ngIf=\"!pageTitle\"> </div>\n <h1\n [tabIndex]=\"-1\"\n class=\"mt-0\"\n id=\"page-title\"\n *ngIf=\"!!pageTitle\"\n [innerHTML]=\"pageTitle\"\n ></h1>\n </div>\n </div>\n\n <foehn-status-progress-bar\n [hidden]=\"\n statusProgressBarHidden || !!(hasBlockingSupportAlert | async)\n \"\n ></foehn-status-progress-bar>\n\n <section\n *ngIf=\"!isBrowserSupported\"\n class=\"container alert alert-danger\"\n id=\"browser_not_supported_block\"\n role=\"alert\"\n >\n <p class=\"alert-heading\">\n <strong>\n {{ 'foehn-page.browser-not-supported' | fromDictionary }}\n </strong>\n </p>\n <p class=\"mb-0\">\n {{ 'foehn-page.browser-download-invitation' | fromDictionary }}\n <ng-container *ngIf=\"!isApplePlatform\">\n <a\n [title]=\"browserLinkTitlePrefix + ' Edge'\"\n href=\"https://www.microsoft.com/fr-ch/windows/microsoft-edge\"\n target=\"_blank\"\n >\n Edge\n <span class=\"visually-hidden\">\n {{ 'foehn-page.external-link.srOnly' | fromDictionary }}\n </span>\n <span aria-hidden=\"true\">\n <foehn-icon-external-link-alt></foehn-icon-external-link-alt>\n </span>\n </a>\n ,\n </ng-container>\n <ng-container *ngIf=\"isApplePlatform\">\n <a\n [title]=\"browserLinkTitlePrefix + ' Safari'\"\n href=\"https://support.apple.com/downloads/safari\"\n target=\"_blank\"\n >\n Safari\n <span class=\"visually-hidden\">\n {{ 'foehn-page.external-link.srOnly' | fromDictionary }}\n </span>\n <span aria-hidden=\"true\">\n <foehn-icon-external-link-alt></foehn-icon-external-link-alt>\n </span>\n </a>\n ,\n </ng-container>\n <a\n [title]=\"browserLinkTitlePrefix + ' Firefox'\"\n href=\"https://www.mozilla.org/fr/firefox/\"\n target=\"_blank\"\n >\n Firefox\n <span class=\"visually-hidden\">\n {{ 'foehn-page.external-link.srOnly' | fromDictionary }}\n </span>\n <span aria-hidden=\"true\">\n <foehn-icon-external-link-alt></foehn-icon-external-link-alt>\n </span>\n </a>\n {{ 'foehn-page.browser-download-list.ou' | fromDictionary }}\n <a\n [title]=\"browserLinkTitlePrefix + ' Chrome'\"\n href=\"https://www.google.com/intl/fr/chrome/\"\n target=\"_blank\"\n >\n Chrome\n <span class=\"visually-hidden\">\n {{ 'foehn-page.external-link.srOnly' | fromDictionary }}\n </span>\n <span aria-hidden=\"true\">\n <foehn-icon-external-link-alt></foehn-icon-external-link-alt>\n </span>\n </a>\n .\n </p>\n <div class=\"row mt-3\">\n <div class=\"col-md-12\">\n <button\n id=\"browser_not_supported_bypass\"\n class=\"float-end btn btn-danger\"\n *ngIf=\"!browserNotSupportedBypass\"\n (click)=\"browserNotSupportedBypass = true\"\n >\n {{\n 'foehn-page.continue-with-same-browser' | fromDictionary\n }}\n </button>\n </div>\n </div>\n </section>\n\n <sdk-support-alert-container\n *ngIf=\"supportAlertEnabled\"\n [etapeId]=\"etapeId\"\n [supportAlertUrl]=\"supportAlertUrl\"\n ></sdk-support-alert-container>\n <sdk-drafts-container\n *ngIf=\"draftsEnabled\"\n [etapeId]=\"etapeId\"\n [draftsUrl]=\"draftsUrl\"\n ></sdk-drafts-container>\n <ng-container\n *ngIf=\"\n !(hasBlockingSupportAlert | async) &&\n (isBrowserSupported || browserNotSupportedBypass)\n \"\n >\n <div class=\"container mt-5\" id=\"page_content\">\n <foehn-user-connected-as\n *ngIf=\"displayUserCategory | async\"\n ></foehn-user-connected-as>\n </div>\n <ng-content></ng-content>\n </ng-container>\n</main>\n<foehn-footer\n id=\"foehn_footer\"\n [links]=\"footerLinks\"\n [showDefaultContactLink]=\"showDefaultContactFooterLink\"\n [showDefaultGuideLink]=\"showDefaultGuideFooterLink\"\n [showDefaultTermOfUseLink]=\"showDefaultTermOfUseLink\"\n [showDefaultSecurityBestPracticeLink]=\"showDefaultSecurityBestPracticeLink\"\n></foehn-footer>\n<foehn-page-modal></foehn-page-modal>\n<foehn-confirm-modal></foehn-confirm-modal>\n<foehn-transmit-waiting-modal></foehn-transmit-waiting-modal>\n", styles: ["#loginAndContinueButton{text-decoration:underline}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: DraftsContainerComponent, selector: "sdk-drafts-container", inputs: ["etapeId", "draftsUrl"] }, { kind: "component", type: FoehnBreadcrumbComponent, selector: "foehn-breadcrumb", inputs: ["breadcrumbItems", "currentNav", "confirmLeavingAlert"] }, { kind: "component", type: FoehnGrowlComponent, selector: "foehn-growl" }, { kind: "component", type: FoehnHeaderComponent, selector: "foehn-header", inputs: ["title", "showSecuredAreaLoginButton", "routerLinkAppTitle", "userInfo"] }, { kind: "component", type: FoehnFooterComponent, selector: "foehn-footer", inputs: ["links", "showDefaultContactLink", "showDefaultGuideLink", "showDefaultTermOfUseLink", "showDefaultSecurityBestPracticeLink"] }, { kind: "component", type: FoehnUserConnectedAsComponent, selector: "foehn-user-connected-as" }, { kind: "component", type: SupportAlertContainerComponent, selector: "sdk-support-alert-container", inputs: ["etapeId", "supportAlertUrl"] }, { kind: "component", type: FoehnConfirmModalComponent, selector: "foehn-confirm-modal" }, { kind: "component", type: FoehnIconExternalLinkAltComponent, selector: "foehn-icon-external-link-alt" }, { kind: "component", type: FoehnStatusProgressBarComponent, selector: "foehn-status-progress-bar", inputs: ["hidden"] }, { kind: "component", type: FoehnPageModalComponent, selector: "foehn-page-modal" }, { kind: "component", type: FoehnPageExpirationTimerComponent, selector: "foehn-page-expiration-timer" }, { kind: "component", type: FoehnTransmitWaitingModalComponent, selector: "foehn-transmit-waiting-modal" }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }, { kind: "pipe", type: SdkDictionaryPipe, name: "fromDictionary" }] }); }
|
|
6826
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.3", type: FoehnPageComponent, selector: "foehn-page", inputs: { appTitle: "appTitle", footerLinks: "footerLinks", supportAlertEnabled: "supportAlertEnabled", draftsEnabled: "draftsEnabled", supportAlertUrl: "supportAlertUrl", draftsUrl: "draftsUrl", etapeId: "etapeId", userConnectedAsDisplayed: "userConnectedAsDisplayed", statusProgressBarHidden: "statusProgressBarHidden", confirmLeavingAlert: "confirmLeavingAlert", showDefaultContactFooterLink: "showDefaultContactFooterLink", showDefaultGuideFooterLink: "showDefaultGuideFooterLink", showDefaultTermOfUseLink: "showDefaultTermOfUseLink", showDefaultSecurityBestPracticeLink: "showDefaultSecurityBestPracticeLink", routerLinkAppTitle: "routerLinkAppTitle" }, usesOnChanges: true, ngImport: i0, template: "<foehn-page-expiration-timer\n *ngIf=\"(displayDemandeExpirationTimer | async) === true\"\n id=\"foehn-page-expiration-timer\"\n></foehn-page-expiration-timer>\n<foehn-header\n id=\"foehn_header\"\n [title]=\"appTitle\"\n [routerLinkAppTitle]=\"routerLinkAppTitle\"\n [showSecuredAreaLoginButton]=\"showSecuredAreaLoginButton | async\"\n></foehn-header>\n<foehn-growl id=\"foehn_growl\"></foehn-growl>\n<div class=\"vd-bg-pattern-gray\">\n <div class=\"container\">\n <foehn-breadcrumb\n [confirmLeavingAlert]=\"confirmLeavingAlert\"\n ></foehn-breadcrumb>\n </div>\n</div>\n<main id=\"main\">\n <div class=\"vd-bg-pattern-gray\">\n <div class=\"container\">\n <!-- Fix annoying flickering when the page loads -->\n <div class=\"h1 mt-0\" *ngIf=\"!pageTitle\"> </div>\n <h1\n [tabIndex]=\"-1\"\n class=\"mt-0\"\n id=\"page-title\"\n *ngIf=\"!!pageTitle\"\n [innerHTML]=\"pageTitle\"\n ></h1>\n </div>\n </div>\n\n <foehn-status-progress-bar\n [hidden]=\"\n statusProgressBarHidden || !!(hasBlockingSupportAlert | async)\n \"\n ></foehn-status-progress-bar>\n\n <section\n *ngIf=\"!isBrowserSupported\"\n class=\"container alert alert-danger\"\n id=\"browser_not_supported_block\"\n role=\"alert\"\n >\n <p class=\"alert-heading\">\n <strong>\n {{ 'foehn-page.browser-not-supported' | fromDictionary }}\n </strong>\n </p>\n <p class=\"mb-0\">\n {{ 'foehn-page.browser-download-invitation' | fromDictionary }}\n <ng-container *ngIf=\"!isApplePlatform\">\n <a\n [title]=\"browserLinkTitlePrefix + ' Edge'\"\n href=\"https://www.microsoft.com/fr-ch/windows/microsoft-edge\"\n target=\"_blank\"\n rel=\"noopener\"\n >\n Edge\n <span class=\"visually-hidden\">\n {{ 'foehn-page.external-link.srOnly' | fromDictionary }}\n </span>\n <span aria-hidden=\"true\">\n <foehn-icon-external-link-alt></foehn-icon-external-link-alt>\n </span>\n </a>\n ,\n </ng-container>\n <ng-container *ngIf=\"isApplePlatform\">\n <a\n [title]=\"browserLinkTitlePrefix + ' Safari'\"\n href=\"https://support.apple.com/downloads/safari\"\n target=\"_blank\"\n rel=\"noopener\"\n >\n Safari\n <span class=\"visually-hidden\">\n {{ 'foehn-page.external-link.srOnly' | fromDictionary }}\n </span>\n <span aria-hidden=\"true\">\n <foehn-icon-external-link-alt></foehn-icon-external-link-alt>\n </span>\n </a>\n ,\n </ng-container>\n <a\n [title]=\"browserLinkTitlePrefix + ' Firefox'\"\n href=\"https://www.mozilla.org/fr/firefox/\"\n target=\"_blank\"\n rel=\"noopener\"\n >\n Firefox\n <span class=\"visually-hidden\">\n {{ 'foehn-page.external-link.srOnly' | fromDictionary }}\n </span>\n <span aria-hidden=\"true\">\n <foehn-icon-external-link-alt></foehn-icon-external-link-alt>\n </span>\n </a>\n {{ 'foehn-page.browser-download-list.ou' | fromDictionary }}\n <a\n [title]=\"browserLinkTitlePrefix + ' Chrome'\"\n href=\"https://www.google.com/intl/fr/chrome/\"\n target=\"_blank\"\n rel=\"noopener\"\n >\n Chrome\n <span class=\"visually-hidden\">\n {{ 'foehn-page.external-link.srOnly' | fromDictionary }}\n </span>\n <span aria-hidden=\"true\">\n <foehn-icon-external-link-alt></foehn-icon-external-link-alt>\n </span>\n </a>\n .\n </p>\n <div class=\"row mt-3\">\n <div class=\"col-md-12\">\n <button\n id=\"browser_not_supported_bypass\"\n type=\"button\"\n class=\"float-end btn btn-danger\"\n *ngIf=\"!browserNotSupportedBypass\"\n (click)=\"browserNotSupportedBypass = true\"\n >\n {{\n 'foehn-page.continue-with-same-browser' | fromDictionary\n }}\n </button>\n </div>\n </div>\n </section>\n\n <sdk-support-alert-container\n *ngIf=\"supportAlertEnabled\"\n [etapeId]=\"etapeId\"\n [supportAlertUrl]=\"supportAlertUrl\"\n ></sdk-support-alert-container>\n <sdk-drafts-container\n *ngIf=\"draftsEnabled\"\n [etapeId]=\"etapeId\"\n [draftsUrl]=\"draftsUrl\"\n ></sdk-drafts-container>\n <ng-container\n *ngIf=\"\n !(hasBlockingSupportAlert | async) &&\n (isBrowserSupported || browserNotSupportedBypass)\n \"\n >\n <div class=\"container mt-5\" id=\"page_content\">\n <foehn-user-connected-as\n *ngIf=\"displayUserCategory | async\"\n ></foehn-user-connected-as>\n </div>\n <ng-content></ng-content>\n </ng-container>\n</main>\n<foehn-footer\n id=\"foehn_footer\"\n [links]=\"footerLinks\"\n [showDefaultContactLink]=\"showDefaultContactFooterLink\"\n [showDefaultGuideLink]=\"showDefaultGuideFooterLink\"\n [showDefaultTermOfUseLink]=\"showDefaultTermOfUseLink\"\n [showDefaultSecurityBestPracticeLink]=\"showDefaultSecurityBestPracticeLink\"\n></foehn-footer>\n<foehn-page-modal></foehn-page-modal>\n<foehn-confirm-modal></foehn-confirm-modal>\n<foehn-transmit-waiting-modal></foehn-transmit-waiting-modal>\n", styles: ["#loginAndContinueButton{text-decoration:underline}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: DraftsContainerComponent, selector: "sdk-drafts-container", inputs: ["etapeId", "draftsUrl"] }, { kind: "component", type: FoehnBreadcrumbComponent, selector: "foehn-breadcrumb", inputs: ["breadcrumbItems", "currentNav", "confirmLeavingAlert"] }, { kind: "component", type: FoehnGrowlComponent, selector: "foehn-growl" }, { kind: "component", type: FoehnHeaderComponent, selector: "foehn-header", inputs: ["title", "showSecuredAreaLoginButton", "routerLinkAppTitle", "userInfo"] }, { kind: "component", type: FoehnFooterComponent, selector: "foehn-footer", inputs: ["links", "showDefaultContactLink", "showDefaultGuideLink", "showDefaultTermOfUseLink", "showDefaultSecurityBestPracticeLink"] }, { kind: "component", type: FoehnUserConnectedAsComponent, selector: "foehn-user-connected-as" }, { kind: "component", type: SupportAlertContainerComponent, selector: "sdk-support-alert-container", inputs: ["etapeId", "supportAlertUrl"] }, { kind: "component", type: FoehnConfirmModalComponent, selector: "foehn-confirm-modal" }, { kind: "component", type: FoehnIconExternalLinkAltComponent, selector: "foehn-icon-external-link-alt" }, { kind: "component", type: FoehnStatusProgressBarComponent, selector: "foehn-status-progress-bar", inputs: ["hidden"] }, { kind: "component", type: FoehnPageModalComponent, selector: "foehn-page-modal" }, { kind: "component", type: FoehnPageExpirationTimerComponent, selector: "foehn-page-expiration-timer" }, { kind: "component", type: FoehnTransmitWaitingModalComponent, selector: "foehn-transmit-waiting-modal" }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }, { kind: "pipe", type: SdkDictionaryPipe, name: "fromDictionary" }] }); }
|
|
6830
6827
|
}
|
|
6831
6828
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: FoehnPageComponent, decorators: [{
|
|
6832
6829
|
type: Component,
|
|
6833
|
-
args: [{ selector: 'foehn-page', template: "<foehn-page-expiration-timer\n *ngIf=\"(displayDemandeExpirationTimer | async) === true\"\n id=\"foehn-page-expiration-timer\"\n></foehn-page-expiration-timer>\n<foehn-header\n id=\"foehn_header\"\n [title]=\"appTitle\"\n [routerLinkAppTitle]=\"routerLinkAppTitle\"\n [showSecuredAreaLoginButton]=\"showSecuredAreaLoginButton | async\"\n></foehn-header>\n<foehn-growl id=\"foehn_growl\"></foehn-growl>\n<div class=\"vd-bg-pattern-gray\">\n <div class=\"container\">\n <foehn-breadcrumb\n [confirmLeavingAlert]=\"confirmLeavingAlert\"\n ></foehn-breadcrumb>\n </div>\n</div>\n<main id=\"main\">\n <div class=\"vd-bg-pattern-gray\">\n <div class=\"container\">\n <!-- Fix annoying flickering when the page loads -->\n <div class=\"h1 mt-0\" *ngIf=\"!pageTitle\"> </div>\n <h1\n [tabIndex]=\"-1\"\n class=\"mt-0\"\n id=\"page-title\"\n *ngIf=\"!!pageTitle\"\n [innerHTML]=\"pageTitle\"\n ></h1>\n </div>\n </div>\n\n <foehn-status-progress-bar\n [hidden]=\"\n statusProgressBarHidden || !!(hasBlockingSupportAlert | async)\n \"\n ></foehn-status-progress-bar>\n\n <section\n *ngIf=\"!isBrowserSupported\"\n class=\"container alert alert-danger\"\n id=\"browser_not_supported_block\"\n role=\"alert\"\n >\n <p class=\"alert-heading\">\n <strong>\n {{ 'foehn-page.browser-not-supported' | fromDictionary }}\n </strong>\n </p>\n <p class=\"mb-0\">\n {{ 'foehn-page.browser-download-invitation' | fromDictionary }}\n <ng-container *ngIf=\"!isApplePlatform\">\n <a\n [title]=\"browserLinkTitlePrefix + ' Edge'\"\n href=\"https://www.microsoft.com/fr-ch/windows/microsoft-edge\"\n target=\"_blank\"\n >\n Edge\n <span class=\"visually-hidden\">\n {{ 'foehn-page.external-link.srOnly' | fromDictionary }}\n </span>\n <span aria-hidden=\"true\">\n <foehn-icon-external-link-alt></foehn-icon-external-link-alt>\n </span>\n </a>\n ,\n </ng-container>\n <ng-container *ngIf=\"isApplePlatform\">\n <a\n [title]=\"browserLinkTitlePrefix + ' Safari'\"\n href=\"https://support.apple.com/downloads/safari\"\n target=\"_blank\"\n >\n Safari\n <span class=\"visually-hidden\">\n {{ 'foehn-page.external-link.srOnly' | fromDictionary }}\n </span>\n <span aria-hidden=\"true\">\n <foehn-icon-external-link-alt></foehn-icon-external-link-alt>\n </span>\n </a>\n ,\n </ng-container>\n <a\n [title]=\"browserLinkTitlePrefix + ' Firefox'\"\n href=\"https://www.mozilla.org/fr/firefox/\"\n target=\"_blank\"\n >\n Firefox\n <span class=\"visually-hidden\">\n {{ 'foehn-page.external-link.srOnly' | fromDictionary }}\n </span>\n <span aria-hidden=\"true\">\n <foehn-icon-external-link-alt></foehn-icon-external-link-alt>\n </span>\n </a>\n {{ 'foehn-page.browser-download-list.ou' | fromDictionary }}\n <a\n [title]=\"browserLinkTitlePrefix + ' Chrome'\"\n href=\"https://www.google.com/intl/fr/chrome/\"\n target=\"_blank\"\n >\n Chrome\n <span class=\"visually-hidden\">\n {{ 'foehn-page.external-link.srOnly' | fromDictionary }}\n </span>\n <span aria-hidden=\"true\">\n <foehn-icon-external-link-alt></foehn-icon-external-link-alt>\n </span>\n </a>\n .\n </p>\n <div class=\"row mt-3\">\n <div class=\"col-md-12\">\n <button\n id=\"browser_not_supported_bypass\"\n class=\"float-end btn btn-danger\"\n *ngIf=\"!browserNotSupportedBypass\"\n (click)=\"browserNotSupportedBypass = true\"\n >\n {{\n 'foehn-page.continue-with-same-browser' | fromDictionary\n }}\n </button>\n </div>\n </div>\n </section>\n\n <sdk-support-alert-container\n *ngIf=\"supportAlertEnabled\"\n [etapeId]=\"etapeId\"\n [supportAlertUrl]=\"supportAlertUrl\"\n ></sdk-support-alert-container>\n <sdk-drafts-container\n *ngIf=\"draftsEnabled\"\n [etapeId]=\"etapeId\"\n [draftsUrl]=\"draftsUrl\"\n ></sdk-drafts-container>\n <ng-container\n *ngIf=\"\n !(hasBlockingSupportAlert | async) &&\n (isBrowserSupported || browserNotSupportedBypass)\n \"\n >\n <div class=\"container mt-5\" id=\"page_content\">\n <foehn-user-connected-as\n *ngIf=\"displayUserCategory | async\"\n ></foehn-user-connected-as>\n </div>\n <ng-content></ng-content>\n </ng-container>\n</main>\n<foehn-footer\n id=\"foehn_footer\"\n [links]=\"footerLinks\"\n [showDefaultContactLink]=\"showDefaultContactFooterLink\"\n [showDefaultGuideLink]=\"showDefaultGuideFooterLink\"\n [showDefaultTermOfUseLink]=\"showDefaultTermOfUseLink\"\n [showDefaultSecurityBestPracticeLink]=\"showDefaultSecurityBestPracticeLink\"\n></foehn-footer>\n<foehn-page-modal></foehn-page-modal>\n<foehn-confirm-modal></foehn-confirm-modal>\n<foehn-transmit-waiting-modal></foehn-transmit-waiting-modal>\n", styles: ["#loginAndContinueButton{text-decoration:underline}\n"] }]
|
|
6830
|
+
args: [{ selector: 'foehn-page', template: "<foehn-page-expiration-timer\n *ngIf=\"(displayDemandeExpirationTimer | async) === true\"\n id=\"foehn-page-expiration-timer\"\n></foehn-page-expiration-timer>\n<foehn-header\n id=\"foehn_header\"\n [title]=\"appTitle\"\n [routerLinkAppTitle]=\"routerLinkAppTitle\"\n [showSecuredAreaLoginButton]=\"showSecuredAreaLoginButton | async\"\n></foehn-header>\n<foehn-growl id=\"foehn_growl\"></foehn-growl>\n<div class=\"vd-bg-pattern-gray\">\n <div class=\"container\">\n <foehn-breadcrumb\n [confirmLeavingAlert]=\"confirmLeavingAlert\"\n ></foehn-breadcrumb>\n </div>\n</div>\n<main id=\"main\">\n <div class=\"vd-bg-pattern-gray\">\n <div class=\"container\">\n <!-- Fix annoying flickering when the page loads -->\n <div class=\"h1 mt-0\" *ngIf=\"!pageTitle\"> </div>\n <h1\n [tabIndex]=\"-1\"\n class=\"mt-0\"\n id=\"page-title\"\n *ngIf=\"!!pageTitle\"\n [innerHTML]=\"pageTitle\"\n ></h1>\n </div>\n </div>\n\n <foehn-status-progress-bar\n [hidden]=\"\n statusProgressBarHidden || !!(hasBlockingSupportAlert | async)\n \"\n ></foehn-status-progress-bar>\n\n <section\n *ngIf=\"!isBrowserSupported\"\n class=\"container alert alert-danger\"\n id=\"browser_not_supported_block\"\n role=\"alert\"\n >\n <p class=\"alert-heading\">\n <strong>\n {{ 'foehn-page.browser-not-supported' | fromDictionary }}\n </strong>\n </p>\n <p class=\"mb-0\">\n {{ 'foehn-page.browser-download-invitation' | fromDictionary }}\n <ng-container *ngIf=\"!isApplePlatform\">\n <a\n [title]=\"browserLinkTitlePrefix + ' Edge'\"\n href=\"https://www.microsoft.com/fr-ch/windows/microsoft-edge\"\n target=\"_blank\"\n rel=\"noopener\"\n >\n Edge\n <span class=\"visually-hidden\">\n {{ 'foehn-page.external-link.srOnly' | fromDictionary }}\n </span>\n <span aria-hidden=\"true\">\n <foehn-icon-external-link-alt></foehn-icon-external-link-alt>\n </span>\n </a>\n ,\n </ng-container>\n <ng-container *ngIf=\"isApplePlatform\">\n <a\n [title]=\"browserLinkTitlePrefix + ' Safari'\"\n href=\"https://support.apple.com/downloads/safari\"\n target=\"_blank\"\n rel=\"noopener\"\n >\n Safari\n <span class=\"visually-hidden\">\n {{ 'foehn-page.external-link.srOnly' | fromDictionary }}\n </span>\n <span aria-hidden=\"true\">\n <foehn-icon-external-link-alt></foehn-icon-external-link-alt>\n </span>\n </a>\n ,\n </ng-container>\n <a\n [title]=\"browserLinkTitlePrefix + ' Firefox'\"\n href=\"https://www.mozilla.org/fr/firefox/\"\n target=\"_blank\"\n rel=\"noopener\"\n >\n Firefox\n <span class=\"visually-hidden\">\n {{ 'foehn-page.external-link.srOnly' | fromDictionary }}\n </span>\n <span aria-hidden=\"true\">\n <foehn-icon-external-link-alt></foehn-icon-external-link-alt>\n </span>\n </a>\n {{ 'foehn-page.browser-download-list.ou' | fromDictionary }}\n <a\n [title]=\"browserLinkTitlePrefix + ' Chrome'\"\n href=\"https://www.google.com/intl/fr/chrome/\"\n target=\"_blank\"\n rel=\"noopener\"\n >\n Chrome\n <span class=\"visually-hidden\">\n {{ 'foehn-page.external-link.srOnly' | fromDictionary }}\n </span>\n <span aria-hidden=\"true\">\n <foehn-icon-external-link-alt></foehn-icon-external-link-alt>\n </span>\n </a>\n .\n </p>\n <div class=\"row mt-3\">\n <div class=\"col-md-12\">\n <button\n id=\"browser_not_supported_bypass\"\n type=\"button\"\n class=\"float-end btn btn-danger\"\n *ngIf=\"!browserNotSupportedBypass\"\n (click)=\"browserNotSupportedBypass = true\"\n >\n {{\n 'foehn-page.continue-with-same-browser' | fromDictionary\n }}\n </button>\n </div>\n </div>\n </section>\n\n <sdk-support-alert-container\n *ngIf=\"supportAlertEnabled\"\n [etapeId]=\"etapeId\"\n [supportAlertUrl]=\"supportAlertUrl\"\n ></sdk-support-alert-container>\n <sdk-drafts-container\n *ngIf=\"draftsEnabled\"\n [etapeId]=\"etapeId\"\n [draftsUrl]=\"draftsUrl\"\n ></sdk-drafts-container>\n <ng-container\n *ngIf=\"\n !(hasBlockingSupportAlert | async) &&\n (isBrowserSupported || browserNotSupportedBypass)\n \"\n >\n <div class=\"container mt-5\" id=\"page_content\">\n <foehn-user-connected-as\n *ngIf=\"displayUserCategory | async\"\n ></foehn-user-connected-as>\n </div>\n <ng-content></ng-content>\n </ng-container>\n</main>\n<foehn-footer\n id=\"foehn_footer\"\n [links]=\"footerLinks\"\n [showDefaultContactLink]=\"showDefaultContactFooterLink\"\n [showDefaultGuideLink]=\"showDefaultGuideFooterLink\"\n [showDefaultTermOfUseLink]=\"showDefaultTermOfUseLink\"\n [showDefaultSecurityBestPracticeLink]=\"showDefaultSecurityBestPracticeLink\"\n></foehn-footer>\n<foehn-page-modal></foehn-page-modal>\n<foehn-confirm-modal></foehn-confirm-modal>\n<foehn-transmit-waiting-modal></foehn-transmit-waiting-modal>\n", styles: ["#loginAndContinueButton{text-decoration:underline}\n"] }]
|
|
6834
6831
|
}], ctorParameters: () => [{ type: i1$3.Title }, { type: FoehnPageService }, { type: SupportAlertService }, { type: FoehnNavigationService }, { type: ApplicationInfoService }, { type: GesdemEventService }, { type: BreadcrumbEventService }, { type: i1$1.Router }, { type: SessionInfo }, { type: FoehnPageModalService }, { type: SdkDictionaryService }, { type: SdkStatisticsService }, { type: DemandeExpirationService }], propDecorators: { appTitle: [{
|
|
6835
6832
|
type: Input
|
|
6836
6833
|
}], footerLinks: [{
|
|
@@ -9207,11 +9204,11 @@ class FoehnDatePickerComponent {
|
|
|
9207
9204
|
return false;
|
|
9208
9205
|
}
|
|
9209
9206
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: FoehnDatePickerComponent, deps: [{ token: SdkDictionaryService }, { token: i0.NgZone }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
9210
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.3", type: FoehnDatePickerComponent, selector: "foehn-date-picker", inputs: { id: "id", name: "name", minYear: "minYear", maxYear: "maxYear", minDate: "minDate", maxDate: "maxDate", datepickerTriggerHtmlElement: "datepickerTriggerHtmlElement", closeable: "closeable", isDatepickerVisible: "isDatepickerVisible", model: "model" }, outputs: { modelChange: "modelChange", userInput: "userInput", isDatepickerVisibleChange: "isDatepickerVisibleChange" }, host: { listeners: { "keyup": "handleKeyboardUpEvent($event)", "keydown": "handleKeyboardDownEvent($event)" }, properties: { "attr.id": "this.hostId" } }, viewQueries: [{ propertyName: "daysButtonsElemRef", predicate: ["dayButtonElemRef"], descendants: true }], ngImport: i0, template: "<div\n [id]=\"buildId('datepicker_wrapper')\"\n class=\"datepicker_wrapper\"\n *ngIf=\"isDatepickerVisible\"\n [cdkTrapFocus]=\"!!datepickerTriggerHtmlElement\"\n tabindex=\"-1\"\n role=\"application\"\n [attr.aria-label]=\"\n 'foehn-date-picker.container.aria-label' | fromDictionary\n \"\n>\n <button\n *ngIf=\"closeable\"\n (click)=\"isDatepickerVisible = false\"\n type=\"button\"\n class=\"btn btn-close\"\n [attr.aria-label]=\"\n 'foehn-date-picker.close-button.aria-label' | fromDictionary\n \"\n [id]=\"buildId('closeButton')\"\n ></button>\n <div\n [id]=\"buildId('datepicker_header')\"\n class=\"d-flex justify-content-between datepicker_header\"\n >\n <ng-container *ngIf=\"currentMonthYear | async as monthYear\">\n <button\n [id]=\"buildId('previous-month')\"\n class=\"btn btn-link datepicker-nav-month-btn\"\n (click)=\"previousMonth()\"\n [attr.disabled]=\"isPreviousMonthDisabled(monthYear)\"\n >\n <foehn-icon-chevron-left\n [title]=\"\n 'foehn-date-picker.previous-month-button.title'\n | fromDictionary\n \"\n ></foehn-icon-chevron-left>\n </button>\n <span\n [id]=\"buildId('month-year-label')\"\n aria-live=\"polite\"\n class=\"visually-hidden\"\n >\n {{\n 'foehn-date-picker.screen-reader.actual-month-displayed'\n | fromDictionary\n }}\n {{ getMonthAsReadable(monthYear.month) }} {{ monthYear.year }}\n </span>\n <foehn-select\n [id]=\"buildId('month-input')\"\n class=\"align-self-center month-input\"\n [label]=\"\n 'foehn-date-picker.screen-reader.month-input.label'\n | fromDictionary\n \"\n [isLabelSrOnly]=\"true\"\n [elements]=\"monthListItem\"\n [model]=\"monthYear.month\"\n [required]=\"true\"\n (userInput)=\"userInputMonth($event)\"\n ></foehn-select>\n <foehn-select\n [id]=\"buildId('year-input')\"\n class=\"align-self-center\"\n [label]=\"\n 'foehn-date-picker.screen-reader.year-input.label'\n | fromDictionary\n \"\n [isLabelSrOnly]=\"true\"\n [elements]=\"yearListItem\"\n [model]=\"monthYear.year\"\n [required]=\"true\"\n (userInput)=\"userInputYear($event)\"\n ></foehn-select>\n <button\n [id]=\"buildId('next-month')\"\n class=\"btn btn-link datepicker-nav-month-btn\"\n (click)=\"nextMonth()\"\n [attr.disabled]=\"isNextMonthDisabled(monthYear)\"\n >\n <foehn-icon-chevron-right\n [title]=\"\n 'foehn-date-picker.next-month-button.title'\n | fromDictionary\n \"\n ></foehn-icon-chevron-right>\n </button>\n </ng-container>\n </div>\n <table\n [id]=\"buildId('datepicker_table')\"\n role=\"grid\"\n (focusin)=\"onDaysFocusin()\"\n (focusout)=\"onDaysFocusout()\"\n >\n <thead role=\"presentation\" aria-hidden=\"true\">\n <tr role=\"row\">\n <th\n scope=\"col\"\n role=\"columnheader\"\n *ngFor=\"let weekday of weekDays\"\n >\n <foehn-abbr\n [text]=\"weekday.substring(0, 2)\"\n [title]=\"weekday\"\n ></foehn-abbr>\n </th>\n </tr>\n </thead>\n <tbody role=\"presentation\">\n <tr role=\"row\" *ngFor=\"let week of weeks; let indexRow = index\">\n <td\n role=\"gridcell\"\n *ngFor=\"let dayOfWeek of week; let indexColumn = index\"\n >\n <button\n class=\"btn w-100\"\n #dayButtonElemRef\n [hidden]=\"!dayOfWeek.isCurrentMonth\"\n [id]=\"buildId('day_' + indexRow + '_' + indexColumn)\"\n [tabindex]=\"getDayTabIndex(dayOfWeek)\"\n [class.btn-info]=\"\n !isToday(dayOfWeek.date) &&\n !isSelected(dayOfWeek.date)\n \"\n [class.btn-secondary]=\"\n isToday(dayOfWeek.date) &&\n !isSelected(dayOfWeek.date)\n \"\n [class.btn-primary]=\"isSelected(dayOfWeek.date)\"\n [attr.aria-label]=\"\n weekDays[indexColumn] +\n ' ' +\n dayOfWeek.dateAsReadable\n \"\n [attr.data-is-today]=\"isToday(dayOfWeek.date)\"\n [attr.data-is-selected]=\"isSelected(dayOfWeek.date)\"\n [attr.data-row-index]=\"indexRow\"\n [attr.data-column-index]=\"indexColumn\"\n [attr.day-number]=\"dayOfWeek.dayOfMonth\"\n [attr.disabled]=\"getDayDisabledAttribute(dayOfWeek)\"\n (click)=\"handleUserInput(dayOfWeek.date)\"\n >\n {{ dayOfWeek.dayOfMonth }}\n </button>\n </td>\n </tr>\n </tbody>\n </table>\n</div>\n", styles: [":host ::ng-deep .btn-link .svg-inline--fa{color:#aaa!important}:host ::ng-deep .btn-link .svg-inline--fa:hover{color:#000!important}:host ::ng-deep thead th abbr[title]{text-decoration:underline dotted 1px!important}:host ::ng-deep foehn-select select.form-select{padding:0 0 0 3px;margin:0;height:30px;border-color:#aaa;background-image:none;appearance:auto!important;box-shadow:none}:host ::ng-deep foehn-select select.form-select:hover{border-color:#000;cursor:pointer}:host ::ng-deep foehn-select select.form-select:focus,:host ::ng-deep .btn:focus{box-shadow:0 0 0 2px var(--vd-focus)}:host ::ng-deep foehn-select .form-group{margin-bottom:0!important}.datepicker_header{margin:4px 0}.datepicker_wrapper{max-width:245px;min-width:224px;padding:4px;outline:1px solid #dfdfdf;background-color:#fff}.datepicker_wrapper .h4{margin-bottom:0}.datepicker_wrapper table{width:100%}.datepicker_wrapper thead th{text-align:center;font-weight:400}.datepicker_wrapper .btn{padding:2px 4px}:host ::ng-deep .datepicker_wrapper button.btn-close{position:absolute;right:-24px;top:-24px;background-color:#fff;border:1px solid #dfdfdf;border-radius:50%;width:31px;height:35px;opacity:1;scale:.7}.datepicker_wrapper .month-input{width:50%;margin-right:5px}.btn-info:disabled{cursor:not-allowed}.datepicker-nav-month-btn:disabled{opacity:.2}table tr td>button.btn-info:hover,table tr td>button.btn-secondary:hover,table tr td>button.btn-primary:hover{box-shadow:0 0 0 2px var(--vd-focus)}table tr td>button.btn-info:disabled{box-shadow:none}table tr td>button.btn-info{background-color:var(--vd-neutral-light);border-color:var(--vd-neutral-light)}table tr td>button.btn-info:hover{background-color:var(--vd-neutral-lighter);border-color:var(--vd-neutral-lighter)}
|
|
9207
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.3", type: FoehnDatePickerComponent, selector: "foehn-date-picker", inputs: { id: "id", name: "name", minYear: "minYear", maxYear: "maxYear", minDate: "minDate", maxDate: "maxDate", datepickerTriggerHtmlElement: "datepickerTriggerHtmlElement", closeable: "closeable", isDatepickerVisible: "isDatepickerVisible", model: "model" }, outputs: { modelChange: "modelChange", userInput: "userInput", isDatepickerVisibleChange: "isDatepickerVisibleChange" }, host: { listeners: { "keyup": "handleKeyboardUpEvent($event)", "keydown": "handleKeyboardDownEvent($event)" }, properties: { "attr.id": "this.hostId" } }, viewQueries: [{ propertyName: "daysButtonsElemRef", predicate: ["dayButtonElemRef"], descendants: true }], ngImport: i0, template: "<div\n [id]=\"buildId('datepicker_wrapper')\"\n class=\"datepicker_wrapper\"\n *ngIf=\"isDatepickerVisible\"\n [cdkTrapFocus]=\"!!datepickerTriggerHtmlElement\"\n tabindex=\"-1\"\n role=\"application\"\n [attr.aria-label]=\"\n 'foehn-date-picker.container.aria-label' | fromDictionary\n \"\n>\n <button\n *ngIf=\"closeable\"\n (click)=\"isDatepickerVisible = false\"\n type=\"button\"\n class=\"btn btn-close\"\n [attr.aria-label]=\"\n 'foehn-date-picker.close-button.aria-label' | fromDictionary\n \"\n [id]=\"buildId('closeButton')\"\n ></button>\n <div\n [id]=\"buildId('datepicker_header')\"\n class=\"d-flex justify-content-between datepicker_header\"\n >\n <ng-container *ngIf=\"currentMonthYear | async as monthYear\">\n <button\n [id]=\"buildId('previous-month')\"\n type=\"button\"\n class=\"btn btn-link datepicker-nav-month-btn\"\n (click)=\"previousMonth()\"\n [attr.disabled]=\"isPreviousMonthDisabled(monthYear)\"\n >\n <foehn-icon-chevron-left\n [title]=\"\n 'foehn-date-picker.previous-month-button.title'\n | fromDictionary\n \"\n ></foehn-icon-chevron-left>\n </button>\n <span\n [id]=\"buildId('month-year-label')\"\n aria-live=\"polite\"\n class=\"visually-hidden\"\n >\n {{\n 'foehn-date-picker.screen-reader.actual-month-displayed'\n | fromDictionary\n }}\n {{ getMonthAsReadable(monthYear.month) }} {{ monthYear.year }}\n </span>\n <foehn-select\n [id]=\"buildId('month-input')\"\n class=\"align-self-center month-input\"\n [label]=\"\n 'foehn-date-picker.screen-reader.month-input.label'\n | fromDictionary\n \"\n [isLabelSrOnly]=\"true\"\n [elements]=\"monthListItem\"\n [model]=\"monthYear.month\"\n [required]=\"true\"\n (userInput)=\"userInputMonth($event)\"\n ></foehn-select>\n <foehn-select\n [id]=\"buildId('year-input')\"\n class=\"align-self-center\"\n [label]=\"\n 'foehn-date-picker.screen-reader.year-input.label'\n | fromDictionary\n \"\n [isLabelSrOnly]=\"true\"\n [elements]=\"yearListItem\"\n [model]=\"monthYear.year\"\n [required]=\"true\"\n (userInput)=\"userInputYear($event)\"\n ></foehn-select>\n <button\n [id]=\"buildId('next-month')\"\n type=\"button\"\n class=\"btn btn-link datepicker-nav-month-btn\"\n (click)=\"nextMonth()\"\n [attr.disabled]=\"isNextMonthDisabled(monthYear)\"\n >\n <foehn-icon-chevron-right\n [title]=\"\n 'foehn-date-picker.next-month-button.title'\n | fromDictionary\n \"\n ></foehn-icon-chevron-right>\n </button>\n </ng-container>\n </div>\n <table\n [id]=\"buildId('datepicker_table')\"\n role=\"grid\"\n (focusin)=\"onDaysFocusin()\"\n (focusout)=\"onDaysFocusout()\"\n >\n <caption class=\"visually-hidden\">\n {{ 'foehn-date-picker.screen-reader.grid.title' | fromDictionary }}\n </caption>\n <thead role=\"presentation\" aria-hidden=\"true\">\n <tr role=\"row\">\n <th\n scope=\"col\"\n role=\"columnheader\"\n *ngFor=\"let weekday of weekDays\"\n >\n <foehn-abbr\n [text]=\"weekday.substring(0, 2)\"\n [title]=\"weekday\"\n ></foehn-abbr>\n </th>\n </tr>\n </thead>\n <tbody role=\"presentation\">\n <tr role=\"row\" *ngFor=\"let week of weeks; let indexRow = index\">\n <td\n role=\"gridcell\"\n *ngFor=\"let dayOfWeek of week; let indexColumn = index\"\n >\n <button\n type=\"button\"\n class=\"btn w-100\"\n #dayButtonElemRef\n [hidden]=\"!dayOfWeek.isCurrentMonth\"\n [id]=\"buildId('day_' + indexRow + '_' + indexColumn)\"\n [tabindex]=\"getDayTabIndex(dayOfWeek)\"\n [class.btn-info]=\"\n !isToday(dayOfWeek.date) &&\n !isSelected(dayOfWeek.date)\n \"\n [class.btn-secondary]=\"\n isToday(dayOfWeek.date) &&\n !isSelected(dayOfWeek.date)\n \"\n [class.btn-primary]=\"isSelected(dayOfWeek.date)\"\n [attr.aria-label]=\"\n weekDays[indexColumn] +\n ' ' +\n dayOfWeek.dateAsReadable\n \"\n [attr.data-is-today]=\"isToday(dayOfWeek.date)\"\n [attr.data-is-selected]=\"isSelected(dayOfWeek.date)\"\n [attr.data-row-index]=\"indexRow\"\n [attr.data-column-index]=\"indexColumn\"\n [attr.day-number]=\"dayOfWeek.dayOfMonth\"\n [attr.disabled]=\"getDayDisabledAttribute(dayOfWeek)\"\n (click)=\"handleUserInput(dayOfWeek.date)\"\n >\n {{ dayOfWeek.dayOfMonth }}\n </button>\n </td>\n </tr>\n </tbody>\n </table>\n</div>\n", styles: [":host ::ng-deep .btn-link .svg-inline--fa{color:#aaa!important}:host ::ng-deep .btn-link .svg-inline--fa:hover{color:#000!important}:host ::ng-deep thead th abbr[title]{text-decoration:underline dotted 1px!important}:host ::ng-deep foehn-select select.form-select{padding:0 0 0 3px;margin:0;height:30px;border-color:#aaa;background-image:none;appearance:auto!important;box-shadow:none}:host ::ng-deep foehn-select select.form-select:hover{border-color:#000;cursor:pointer}:host ::ng-deep foehn-select select.form-select:focus,:host ::ng-deep .btn:focus{box-shadow:0 0 0 2px var(--vd-focus)}:host ::ng-deep foehn-select .form-group{margin-bottom:0!important}.datepicker_header{margin:4px 0}.datepicker_wrapper{max-width:245px;min-width:224px;padding:4px;outline:1px solid #dfdfdf;background-color:#fff}.datepicker_wrapper .h4{margin-bottom:0}.datepicker_wrapper table{width:100%}.datepicker_wrapper thead th{text-align:center;font-weight:400}.datepicker_wrapper .btn{padding:2px 4px}:host ::ng-deep .datepicker_wrapper button.btn-close{position:absolute;right:-24px;top:-24px;background-color:#fff;border:1px solid #dfdfdf;border-radius:50%;width:31px;height:35px;opacity:1;scale:.7}.datepicker_wrapper .month-input{width:50%;margin-right:5px}.btn-info:disabled{cursor:not-allowed}.datepicker-nav-month-btn:disabled{opacity:.2}table tr td>button.btn-info:hover,table tr td>button.btn-secondary:hover,table tr td>button.btn-primary:hover{box-shadow:0 0 0 2px var(--vd-focus)}table tr td>button.btn-info:disabled{box-shadow:none;opacity:.3}table tr td>button.btn-info{background-color:var(--vd-neutral-light);border-color:var(--vd-neutral-light)}table tr td>button.btn-info:hover{background-color:var(--vd-neutral-lighter);border-color:var(--vd-neutral-lighter)}\n"], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: FoehnIconChevronLeftComponent, selector: "foehn-icon-chevron-left" }, { kind: "component", type: FoehnIconChevronRightComponent, selector: "foehn-icon-chevron-right" }, { kind: "directive", type: i2$1.CdkTrapFocus, selector: "[cdkTrapFocus]", inputs: ["cdkTrapFocus", "cdkTrapFocusAutoCapture"], exportAs: ["cdkTrapFocus"] }, { kind: "component", type: FoehnSelectComponent, selector: "foehn-select", inputs: ["multiple", "noSelectionLabel"] }, { kind: "component", type: FoehnAbbrComponent, selector: "foehn-abbr", inputs: ["title", "text"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }, { kind: "pipe", type: SdkDictionaryPipe, name: "fromDictionary" }] }); }
|
|
9211
9208
|
}
|
|
9212
9209
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: FoehnDatePickerComponent, decorators: [{
|
|
9213
9210
|
type: Component,
|
|
9214
|
-
args: [{ selector: 'foehn-date-picker', template: "<div\n [id]=\"buildId('datepicker_wrapper')\"\n class=\"datepicker_wrapper\"\n *ngIf=\"isDatepickerVisible\"\n [cdkTrapFocus]=\"!!datepickerTriggerHtmlElement\"\n tabindex=\"-1\"\n role=\"application\"\n [attr.aria-label]=\"\n 'foehn-date-picker.container.aria-label' | fromDictionary\n \"\n>\n <button\n *ngIf=\"closeable\"\n (click)=\"isDatepickerVisible = false\"\n type=\"button\"\n class=\"btn btn-close\"\n [attr.aria-label]=\"\n 'foehn-date-picker.close-button.aria-label' | fromDictionary\n \"\n [id]=\"buildId('closeButton')\"\n ></button>\n <div\n [id]=\"buildId('datepicker_header')\"\n class=\"d-flex justify-content-between datepicker_header\"\n >\n <ng-container *ngIf=\"currentMonthYear | async as monthYear\">\n <button\n [id]=\"buildId('previous-month')\"\n class=\"btn btn-link datepicker-nav-month-btn\"\n (click)=\"previousMonth()\"\n [attr.disabled]=\"isPreviousMonthDisabled(monthYear)\"\n >\n <foehn-icon-chevron-left\n [title]=\"\n 'foehn-date-picker.previous-month-button.title'\n | fromDictionary\n \"\n ></foehn-icon-chevron-left>\n </button>\n <span\n [id]=\"buildId('month-year-label')\"\n aria-live=\"polite\"\n class=\"visually-hidden\"\n >\n {{\n 'foehn-date-picker.screen-reader.actual-month-displayed'\n | fromDictionary\n }}\n {{ getMonthAsReadable(monthYear.month) }} {{ monthYear.year }}\n </span>\n <foehn-select\n [id]=\"buildId('month-input')\"\n class=\"align-self-center month-input\"\n [label]=\"\n 'foehn-date-picker.screen-reader.month-input.label'\n | fromDictionary\n \"\n [isLabelSrOnly]=\"true\"\n [elements]=\"monthListItem\"\n [model]=\"monthYear.month\"\n [required]=\"true\"\n (userInput)=\"userInputMonth($event)\"\n ></foehn-select>\n <foehn-select\n [id]=\"buildId('year-input')\"\n class=\"align-self-center\"\n [label]=\"\n 'foehn-date-picker.screen-reader.year-input.label'\n | fromDictionary\n \"\n [isLabelSrOnly]=\"true\"\n [elements]=\"yearListItem\"\n [model]=\"monthYear.year\"\n [required]=\"true\"\n (userInput)=\"userInputYear($event)\"\n ></foehn-select>\n <button\n [id]=\"buildId('next-month')\"\n class=\"btn btn-link datepicker-nav-month-btn\"\n (click)=\"nextMonth()\"\n [attr.disabled]=\"isNextMonthDisabled(monthYear)\"\n >\n <foehn-icon-chevron-right\n [title]=\"\n 'foehn-date-picker.next-month-button.title'\n | fromDictionary\n \"\n ></foehn-icon-chevron-right>\n </button>\n </ng-container>\n </div>\n <table\n [id]=\"buildId('datepicker_table')\"\n role=\"grid\"\n (focusin)=\"onDaysFocusin()\"\n (focusout)=\"onDaysFocusout()\"\n >\n <thead role=\"presentation\" aria-hidden=\"true\">\n <tr role=\"row\">\n <th\n scope=\"col\"\n role=\"columnheader\"\n *ngFor=\"let weekday of weekDays\"\n >\n <foehn-abbr\n [text]=\"weekday.substring(0, 2)\"\n [title]=\"weekday\"\n ></foehn-abbr>\n </th>\n </tr>\n </thead>\n <tbody role=\"presentation\">\n <tr role=\"row\" *ngFor=\"let week of weeks; let indexRow = index\">\n <td\n role=\"gridcell\"\n *ngFor=\"let dayOfWeek of week; let indexColumn = index\"\n >\n <button\n class=\"btn w-100\"\n #dayButtonElemRef\n [hidden]=\"!dayOfWeek.isCurrentMonth\"\n [id]=\"buildId('day_' + indexRow + '_' + indexColumn)\"\n [tabindex]=\"getDayTabIndex(dayOfWeek)\"\n [class.btn-info]=\"\n !isToday(dayOfWeek.date) &&\n !isSelected(dayOfWeek.date)\n \"\n [class.btn-secondary]=\"\n isToday(dayOfWeek.date) &&\n !isSelected(dayOfWeek.date)\n \"\n [class.btn-primary]=\"isSelected(dayOfWeek.date)\"\n [attr.aria-label]=\"\n weekDays[indexColumn] +\n ' ' +\n dayOfWeek.dateAsReadable\n \"\n [attr.data-is-today]=\"isToday(dayOfWeek.date)\"\n [attr.data-is-selected]=\"isSelected(dayOfWeek.date)\"\n [attr.data-row-index]=\"indexRow\"\n [attr.data-column-index]=\"indexColumn\"\n [attr.day-number]=\"dayOfWeek.dayOfMonth\"\n [attr.disabled]=\"getDayDisabledAttribute(dayOfWeek)\"\n (click)=\"handleUserInput(dayOfWeek.date)\"\n >\n {{ dayOfWeek.dayOfMonth }}\n </button>\n </td>\n </tr>\n </tbody>\n </table>\n</div>\n", styles: [":host ::ng-deep .btn-link .svg-inline--fa{color:#aaa!important}:host ::ng-deep .btn-link .svg-inline--fa:hover{color:#000!important}:host ::ng-deep thead th abbr[title]{text-decoration:underline dotted 1px!important}:host ::ng-deep foehn-select select.form-select{padding:0 0 0 3px;margin:0;height:30px;border-color:#aaa;background-image:none;appearance:auto!important;box-shadow:none}:host ::ng-deep foehn-select select.form-select:hover{border-color:#000;cursor:pointer}:host ::ng-deep foehn-select select.form-select:focus,:host ::ng-deep .btn:focus{box-shadow:0 0 0 2px var(--vd-focus)}:host ::ng-deep foehn-select .form-group{margin-bottom:0!important}.datepicker_header{margin:4px 0}.datepicker_wrapper{max-width:245px;min-width:224px;padding:4px;outline:1px solid #dfdfdf;background-color:#fff}.datepicker_wrapper .h4{margin-bottom:0}.datepicker_wrapper table{width:100%}.datepicker_wrapper thead th{text-align:center;font-weight:400}.datepicker_wrapper .btn{padding:2px 4px}:host ::ng-deep .datepicker_wrapper button.btn-close{position:absolute;right:-24px;top:-24px;background-color:#fff;border:1px solid #dfdfdf;border-radius:50%;width:31px;height:35px;opacity:1;scale:.7}.datepicker_wrapper .month-input{width:50%;margin-right:5px}.btn-info:disabled{cursor:not-allowed}.datepicker-nav-month-btn:disabled{opacity:.2}table tr td>button.btn-info:hover,table tr td>button.btn-secondary:hover,table tr td>button.btn-primary:hover{box-shadow:0 0 0 2px var(--vd-focus)}table tr td>button.btn-info:disabled{box-shadow:none}table tr td>button.btn-info{background-color:var(--vd-neutral-light);border-color:var(--vd-neutral-light)}table tr td>button.btn-info:hover{background-color:var(--vd-neutral-lighter);border-color:var(--vd-neutral-lighter)}
|
|
9211
|
+
args: [{ selector: 'foehn-date-picker', template: "<div\n [id]=\"buildId('datepicker_wrapper')\"\n class=\"datepicker_wrapper\"\n *ngIf=\"isDatepickerVisible\"\n [cdkTrapFocus]=\"!!datepickerTriggerHtmlElement\"\n tabindex=\"-1\"\n role=\"application\"\n [attr.aria-label]=\"\n 'foehn-date-picker.container.aria-label' | fromDictionary\n \"\n>\n <button\n *ngIf=\"closeable\"\n (click)=\"isDatepickerVisible = false\"\n type=\"button\"\n class=\"btn btn-close\"\n [attr.aria-label]=\"\n 'foehn-date-picker.close-button.aria-label' | fromDictionary\n \"\n [id]=\"buildId('closeButton')\"\n ></button>\n <div\n [id]=\"buildId('datepicker_header')\"\n class=\"d-flex justify-content-between datepicker_header\"\n >\n <ng-container *ngIf=\"currentMonthYear | async as monthYear\">\n <button\n [id]=\"buildId('previous-month')\"\n type=\"button\"\n class=\"btn btn-link datepicker-nav-month-btn\"\n (click)=\"previousMonth()\"\n [attr.disabled]=\"isPreviousMonthDisabled(monthYear)\"\n >\n <foehn-icon-chevron-left\n [title]=\"\n 'foehn-date-picker.previous-month-button.title'\n | fromDictionary\n \"\n ></foehn-icon-chevron-left>\n </button>\n <span\n [id]=\"buildId('month-year-label')\"\n aria-live=\"polite\"\n class=\"visually-hidden\"\n >\n {{\n 'foehn-date-picker.screen-reader.actual-month-displayed'\n | fromDictionary\n }}\n {{ getMonthAsReadable(monthYear.month) }} {{ monthYear.year }}\n </span>\n <foehn-select\n [id]=\"buildId('month-input')\"\n class=\"align-self-center month-input\"\n [label]=\"\n 'foehn-date-picker.screen-reader.month-input.label'\n | fromDictionary\n \"\n [isLabelSrOnly]=\"true\"\n [elements]=\"monthListItem\"\n [model]=\"monthYear.month\"\n [required]=\"true\"\n (userInput)=\"userInputMonth($event)\"\n ></foehn-select>\n <foehn-select\n [id]=\"buildId('year-input')\"\n class=\"align-self-center\"\n [label]=\"\n 'foehn-date-picker.screen-reader.year-input.label'\n | fromDictionary\n \"\n [isLabelSrOnly]=\"true\"\n [elements]=\"yearListItem\"\n [model]=\"monthYear.year\"\n [required]=\"true\"\n (userInput)=\"userInputYear($event)\"\n ></foehn-select>\n <button\n [id]=\"buildId('next-month')\"\n type=\"button\"\n class=\"btn btn-link datepicker-nav-month-btn\"\n (click)=\"nextMonth()\"\n [attr.disabled]=\"isNextMonthDisabled(monthYear)\"\n >\n <foehn-icon-chevron-right\n [title]=\"\n 'foehn-date-picker.next-month-button.title'\n | fromDictionary\n \"\n ></foehn-icon-chevron-right>\n </button>\n </ng-container>\n </div>\n <table\n [id]=\"buildId('datepicker_table')\"\n role=\"grid\"\n (focusin)=\"onDaysFocusin()\"\n (focusout)=\"onDaysFocusout()\"\n >\n <caption class=\"visually-hidden\">\n {{ 'foehn-date-picker.screen-reader.grid.title' | fromDictionary }}\n </caption>\n <thead role=\"presentation\" aria-hidden=\"true\">\n <tr role=\"row\">\n <th\n scope=\"col\"\n role=\"columnheader\"\n *ngFor=\"let weekday of weekDays\"\n >\n <foehn-abbr\n [text]=\"weekday.substring(0, 2)\"\n [title]=\"weekday\"\n ></foehn-abbr>\n </th>\n </tr>\n </thead>\n <tbody role=\"presentation\">\n <tr role=\"row\" *ngFor=\"let week of weeks; let indexRow = index\">\n <td\n role=\"gridcell\"\n *ngFor=\"let dayOfWeek of week; let indexColumn = index\"\n >\n <button\n type=\"button\"\n class=\"btn w-100\"\n #dayButtonElemRef\n [hidden]=\"!dayOfWeek.isCurrentMonth\"\n [id]=\"buildId('day_' + indexRow + '_' + indexColumn)\"\n [tabindex]=\"getDayTabIndex(dayOfWeek)\"\n [class.btn-info]=\"\n !isToday(dayOfWeek.date) &&\n !isSelected(dayOfWeek.date)\n \"\n [class.btn-secondary]=\"\n isToday(dayOfWeek.date) &&\n !isSelected(dayOfWeek.date)\n \"\n [class.btn-primary]=\"isSelected(dayOfWeek.date)\"\n [attr.aria-label]=\"\n weekDays[indexColumn] +\n ' ' +\n dayOfWeek.dateAsReadable\n \"\n [attr.data-is-today]=\"isToday(dayOfWeek.date)\"\n [attr.data-is-selected]=\"isSelected(dayOfWeek.date)\"\n [attr.data-row-index]=\"indexRow\"\n [attr.data-column-index]=\"indexColumn\"\n [attr.day-number]=\"dayOfWeek.dayOfMonth\"\n [attr.disabled]=\"getDayDisabledAttribute(dayOfWeek)\"\n (click)=\"handleUserInput(dayOfWeek.date)\"\n >\n {{ dayOfWeek.dayOfMonth }}\n </button>\n </td>\n </tr>\n </tbody>\n </table>\n</div>\n", styles: [":host ::ng-deep .btn-link .svg-inline--fa{color:#aaa!important}:host ::ng-deep .btn-link .svg-inline--fa:hover{color:#000!important}:host ::ng-deep thead th abbr[title]{text-decoration:underline dotted 1px!important}:host ::ng-deep foehn-select select.form-select{padding:0 0 0 3px;margin:0;height:30px;border-color:#aaa;background-image:none;appearance:auto!important;box-shadow:none}:host ::ng-deep foehn-select select.form-select:hover{border-color:#000;cursor:pointer}:host ::ng-deep foehn-select select.form-select:focus,:host ::ng-deep .btn:focus{box-shadow:0 0 0 2px var(--vd-focus)}:host ::ng-deep foehn-select .form-group{margin-bottom:0!important}.datepicker_header{margin:4px 0}.datepicker_wrapper{max-width:245px;min-width:224px;padding:4px;outline:1px solid #dfdfdf;background-color:#fff}.datepicker_wrapper .h4{margin-bottom:0}.datepicker_wrapper table{width:100%}.datepicker_wrapper thead th{text-align:center;font-weight:400}.datepicker_wrapper .btn{padding:2px 4px}:host ::ng-deep .datepicker_wrapper button.btn-close{position:absolute;right:-24px;top:-24px;background-color:#fff;border:1px solid #dfdfdf;border-radius:50%;width:31px;height:35px;opacity:1;scale:.7}.datepicker_wrapper .month-input{width:50%;margin-right:5px}.btn-info:disabled{cursor:not-allowed}.datepicker-nav-month-btn:disabled{opacity:.2}table tr td>button.btn-info:hover,table tr td>button.btn-secondary:hover,table tr td>button.btn-primary:hover{box-shadow:0 0 0 2px var(--vd-focus)}table tr td>button.btn-info:disabled{box-shadow:none;opacity:.3}table tr td>button.btn-info{background-color:var(--vd-neutral-light);border-color:var(--vd-neutral-light)}table tr td>button.btn-info:hover{background-color:var(--vd-neutral-lighter);border-color:var(--vd-neutral-lighter)}\n"] }]
|
|
9215
9212
|
}], ctorParameters: () => [{ type: SdkDictionaryService }, { type: i0.NgZone }, { type: i0.ChangeDetectorRef }], propDecorators: { id: [{
|
|
9216
9213
|
type: Input
|
|
9217
9214
|
}], name: [{
|
|
@@ -10857,7 +10854,7 @@ class FoehnInputForeignStreetComponent extends FoehnInputComponent {
|
|
|
10857
10854
|
useExisting: forwardRef(() => FoehnInputForeignStreetComponent),
|
|
10858
10855
|
multi: true
|
|
10859
10856
|
}
|
|
10860
|
-
], usesInheritance: true, ngImport: i0, template: "<
|
|
10857
|
+
], usesInheritance: true, ngImport: i0, template: "<foehn-input-text\n [label]=\"label\"\n [name]=\"name + '.longName'\"\n [(model)]=\"longName\"\n (modelChange)=\"updateStreet()\"\n [required]=\"required\"\n [helpText]=\"helpText\"\n (userInput)=\"handleUserInput()\"\n [disabled]=\"disabled\"\n [isLabelSrOnly]=\"isLabelSrOnly\"\n [autocomplete]=\"'address-line1'\"\n [isErrorInherited]=\"hasErrorsToDisplay()\"\n>\n <ng-content></ng-content>\n</foehn-input-text>\n", dependencies: [{ kind: "component", type: FoehnInputTextComponent, selector: "foehn-input-text", inputs: ["numberOnly"] }] }); }
|
|
10861
10858
|
}
|
|
10862
10859
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: FoehnInputForeignStreetComponent, decorators: [{
|
|
10863
10860
|
type: Component,
|
|
@@ -10867,7 +10864,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImpor
|
|
|
10867
10864
|
useExisting: forwardRef(() => FoehnInputForeignStreetComponent),
|
|
10868
10865
|
multi: true
|
|
10869
10866
|
}
|
|
10870
|
-
], template: "<
|
|
10867
|
+
], template: "<foehn-input-text\n [label]=\"label\"\n [name]=\"name + '.longName'\"\n [(model)]=\"longName\"\n (modelChange)=\"updateStreet()\"\n [required]=\"required\"\n [helpText]=\"helpText\"\n (userInput)=\"handleUserInput()\"\n [disabled]=\"disabled\"\n [isLabelSrOnly]=\"isLabelSrOnly\"\n [autocomplete]=\"'address-line1'\"\n [isErrorInherited]=\"hasErrorsToDisplay()\"\n>\n <ng-content></ng-content>\n</foehn-input-text>\n" }]
|
|
10871
10868
|
}] });
|
|
10872
10869
|
|
|
10873
10870
|
// eslint-disable max-classes-per-file
|
|
@@ -11616,7 +11613,7 @@ class FoehnMultiselectAutocompleteComponent extends FoehnAutocompleteComponent {
|
|
|
11616
11613
|
useExisting: forwardRef(() => FoehnMultiselectAutocompleteComponent),
|
|
11617
11614
|
multi: true
|
|
11618
11615
|
}
|
|
11619
|
-
], viewQueries: [{ propertyName: "autocompleteComponent", first: true, predicate: ["autocompleteComponent"], descendants: true }, { propertyName: "alertMessageContainer", first: true, predicate: ["alertMessageContainer"], descendants: true }, { propertyName: "defaultDeleteFocusArea", first: true, predicate: ["defaultDeleteFocusArea"], descendants: true }, { propertyName: "selectedElemRef", predicate: ["selectedElemRef"], descendants: true }, { propertyName: "defaultElemRef", predicate: ["defaultElemRef"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<div\n class=\"form-group container-box\"\n [class.has-danger]=\"hasErrorsToDisplay()\"\n [class.vd-form-group-danger]=\"hasErrorsToDisplay()\"\n>\n <foehn-autocomplete\n #autocompleteComponent\n [name]=\"name\"\n [label]=\"label\"\n [elements]=\"elements\"\n [elementsUrl]=\"elementsUrl\"\n [elementValue]=\"elementValue\"\n [elementLabel]=\"elementLabel\"\n [elementSuggestionLabel]=\"elementSuggestionLabel\"\n [elementValueIdentity]=\"elementValueIdentity\"\n [elementDisabled]=\"elementDisabled\"\n [elementGroup]=\"elementGroup\"\n [allowCustomValue]=\"false\"\n [searchValueMinCharsCount]=\"searchValueMinCharsCount\"\n [customValueModelGenerator]=\"customValueModelGenerator\"\n [required]=\"required\"\n [disabled]=\"disabled\"\n (userInput)=\"addItem($event)\"\n [(model)]=\"autocompleteInputValue\"\n (elementsLoaded)=\"onAutocompleteElementsLoaded($event)\"\n [showErrorWhenDisabled]=\"showErrorWhenDisabled\"\n [hideNotRequiredExtraLabel]=\"hideNotRequiredExtraLabel\"\n [itemHeightInSuggestionListInPx]=\"itemHeightInSuggestionListInPx\"\n [caseSensitiveSearch]=\"caseSensitiveSearch\"\n >\n <small\n *ngIf=\"!showEmptyListMessage\"\n [attr.id]=\"buildChildId('Help')\"\n class=\"form-text text-secondary\"\n [innerHTML]=\"\n helpText\n ? helpText\n : ('foehn-multiselect-autocomplete.autocomplete.screen-reader.label'\n | fromDictionary)\n \"\n ></small>\n\n <ng-content></ng-content>\n\n <div\n [id]=\"buildChildId('AlertMessageContainer')\"\n role=\"status\"\n #alertMessageContainer\n >\n <p\n *ngIf=\"showEmptyListMessage\"\n class=\"alert alert-info mb-0\"\n tabindex=\"0\"\n >\n {{\n 'foehn-multiselect-autocomplete.autocomplete.empty-message'\n | fromDictionary\n }}\n </p>\n </div>\n </foehn-autocomplete>\n\n <div class=\"selected-list-container pt-2\" tabindex=\"-1\">\n <small\n *ngIf=\"hasDefaultDeleteFocusArea()\"\n class=\"form-text text-secondary my-0\"\n [tabindex]=\"0\"\n [innerHTML]=\"noElementsSelectedLabel | fromDictionary\"\n #defaultDeleteFocusArea\n ></small>\n\n <p\n [id]=\"buildChildId('srOnlyAnnouncements')\"\n class=\"visually-hidden\"\n aria-live=\"polite\"\n aria-atomic=\"true\"\n >\n {{ srAnnouncements }}\n </p>\n\n <fieldset\n *ngIf=\"!!model?.length\"\n class=\"mb-0\"\n [attr.aria-describedby]=\"buildChildId('Label')\"\n >\n <legend\n [id]=\"buildChildId('Legend')\"\n class=\"form-text text-secondary small mb-0\"\n [innerHTML]=\"selectedItemsListLegend | fromDictionary\"\n ></legend>\n\n <div class=\"selected-list d-flex align-content-stretch flex-wrap\">\n <ng-container\n *ngFor=\"\n let element of model;\n let index = index;\n trackBy: trackByFn\n \"\n >\n <span\n *ngIf=\"!canBeDeleted(index)\"\n class=\"badge rounded-pill bg-secondary me-1 mb-1 py-2 px-3 d-flex align-items-center\"\n [tabindex]=\"disabled ? -1 : 0\"\n [attr.aria-describedby]=\"buildChildId('Legend')\"\n #defaultElemRef\n >\n {{ getBadgeLabel(element) }}\n <span class=\"visually-hidden\">\n {{\n 'foehn-multiselect-autocomplete.sr-default-selected-element'\n | fromDictionary\n }}\n </span>\n </span>\n <button\n *ngIf=\"canBeDeleted(index)\"\n class=\"btn btn-primary badge rounded-pill me-1 mb-1 py-2 px-3 d-flex align-items-center\"\n [tabindex]=\"0\"\n [attr.aria-label]=\"getDeleteButtonAriaLabel(element)\"\n [attr.aria-describedby]=\"buildChildId('Legend')\"\n [title]=\"getDeleteButtonAriaLabel(element)\"\n (click)=\"removeItem(element, index)\"\n #selectedElemRef\n >\n {{ getBadgeLabel(element) }}\n <foehn-icon-times\n aria-hidden=\"true\"\n class=\"ms-2\"\n [title]=\"getDeleteButtonAriaLabel(element)\"\n ></foehn-icon-times>\n </button>\n </ng-container>\n </div>\n </fieldset>\n </div>\n</div>\n", styles: ["foehn-autocomplete p.alert:focus{outline:0;box-shadow:inset 0 1px 1px #00000013,0 0 0 .2rem var(--vd-focus)}:host ::ng-deep foehn-autocomplete .form-group{margin-bottom:0!important}.selected-list-container button>.btn,.btn-link{line-height:inherit;padding:0}.selected-list-container .btn{text-transform:none}:host ::ng-deep .btn .svg-inline--fa{color:#fff!important}.selected-list-container span.rounded-pill:focus{outline:0;box-shadow:inset 0 1px 1px #00000013,0 0 0 .2rem var(--vd-focus)}.container-box{border:1px solid #ededed;background-color:#fbfbfb;padding:.5rem}.container-box.vd-form-group-danger{border-left:5px solid var(--vd-danger);padding-left:1rem}:host ::ng-deep foehn-autocomplete div.vd-form-group-danger{border-left:0;padding-left:0}\n"], dependencies: [{ kind: "component", type: FoehnAutocompleteComponent, selector: "foehn-autocomplete", inputs: ["searchValueMinCharsCount", "allowCustomValue", "isSuggestionListDynamic", "customValueModelGenerator", "itemHeightInSuggestionListInPx", "elementSuggestionLabel", "caseSensitiveSearch", "disabled"], outputs: ["userSearchInput"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: FoehnIconTimesComponent, selector: "foehn-icon-times" }, { kind: "pipe", type: SdkDictionaryPipe, name: "fromDictionary" }] }); }
|
|
11616
|
+
], viewQueries: [{ propertyName: "autocompleteComponent", first: true, predicate: ["autocompleteComponent"], descendants: true }, { propertyName: "alertMessageContainer", first: true, predicate: ["alertMessageContainer"], descendants: true }, { propertyName: "defaultDeleteFocusArea", first: true, predicate: ["defaultDeleteFocusArea"], descendants: true }, { propertyName: "selectedElemRef", predicate: ["selectedElemRef"], descendants: true }, { propertyName: "defaultElemRef", predicate: ["defaultElemRef"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<div\n class=\"form-group container-box\"\n [class.has-danger]=\"hasErrorsToDisplay()\"\n [class.vd-form-group-danger]=\"hasErrorsToDisplay()\"\n>\n <foehn-autocomplete\n #autocompleteComponent\n [name]=\"name\"\n [label]=\"label\"\n [elements]=\"elements\"\n [elementsUrl]=\"elementsUrl\"\n [elementValue]=\"elementValue\"\n [elementLabel]=\"elementLabel\"\n [elementSuggestionLabel]=\"elementSuggestionLabel\"\n [elementValueIdentity]=\"elementValueIdentity\"\n [elementDisabled]=\"elementDisabled\"\n [elementGroup]=\"elementGroup\"\n [allowCustomValue]=\"false\"\n [searchValueMinCharsCount]=\"searchValueMinCharsCount\"\n [customValueModelGenerator]=\"customValueModelGenerator\"\n [required]=\"required\"\n [disabled]=\"disabled\"\n (userInput)=\"addItem($event)\"\n [(model)]=\"autocompleteInputValue\"\n (elementsLoaded)=\"onAutocompleteElementsLoaded($event)\"\n [showErrorWhenDisabled]=\"showErrorWhenDisabled\"\n [hideNotRequiredExtraLabel]=\"hideNotRequiredExtraLabel\"\n [itemHeightInSuggestionListInPx]=\"itemHeightInSuggestionListInPx\"\n [caseSensitiveSearch]=\"caseSensitiveSearch\"\n >\n <small\n *ngIf=\"!showEmptyListMessage\"\n [attr.id]=\"buildChildId('Help')\"\n class=\"form-text text-secondary\"\n [innerHTML]=\"\n helpText\n ? helpText\n : ('foehn-multiselect-autocomplete.autocomplete.screen-reader.label'\n | fromDictionary)\n \"\n ></small>\n\n <ng-content></ng-content>\n\n <div\n [id]=\"buildChildId('AlertMessageContainer')\"\n role=\"status\"\n #alertMessageContainer\n >\n <p\n *ngIf=\"showEmptyListMessage\"\n class=\"alert alert-info mb-0\"\n tabindex=\"0\"\n >\n {{\n 'foehn-multiselect-autocomplete.autocomplete.empty-message'\n | fromDictionary\n }}\n </p>\n </div>\n </foehn-autocomplete>\n\n <div class=\"selected-list-container pt-2\" tabindex=\"-1\">\n <small\n *ngIf=\"hasDefaultDeleteFocusArea()\"\n class=\"form-text text-secondary my-0\"\n [tabindex]=\"0\"\n [innerHTML]=\"noElementsSelectedLabel | fromDictionary\"\n #defaultDeleteFocusArea\n ></small>\n\n <p\n [id]=\"buildChildId('srOnlyAnnouncements')\"\n class=\"visually-hidden\"\n aria-live=\"polite\"\n aria-atomic=\"true\"\n >\n {{ srAnnouncements }}\n </p>\n\n <fieldset\n *ngIf=\"!!model?.length\"\n class=\"mb-0\"\n [attr.aria-describedby]=\"buildChildId('Label')\"\n >\n <legend\n [id]=\"buildChildId('Legend')\"\n class=\"form-text text-secondary small mb-0\"\n [innerHTML]=\"selectedItemsListLegend | fromDictionary\"\n ></legend>\n\n <div class=\"selected-list d-flex align-content-stretch flex-wrap\">\n <ng-container\n *ngFor=\"\n let element of model;\n let index = index;\n trackBy: trackByFn\n \"\n >\n <span\n *ngIf=\"!canBeDeleted(index)\"\n class=\"badge rounded-pill bg-secondary me-1 mb-1 py-2 px-3 d-flex align-items-center\"\n [tabindex]=\"disabled ? -1 : 0\"\n [attr.aria-describedby]=\"buildChildId('Legend')\"\n #defaultElemRef\n >\n {{ getBadgeLabel(element) }}\n <span class=\"visually-hidden\">\n {{\n 'foehn-multiselect-autocomplete.sr-default-selected-element'\n | fromDictionary\n }}\n </span>\n </span>\n <button\n *ngIf=\"canBeDeleted(index)\"\n type=\"button\"\n class=\"btn btn-primary badge rounded-pill me-1 mb-1 py-2 px-3 d-flex align-items-center\"\n [tabindex]=\"0\"\n [attr.aria-label]=\"getDeleteButtonAriaLabel(element)\"\n [attr.aria-describedby]=\"buildChildId('Legend')\"\n [title]=\"getDeleteButtonAriaLabel(element)\"\n (click)=\"removeItem(element, index)\"\n #selectedElemRef\n >\n {{ getBadgeLabel(element) }}\n <foehn-icon-times\n aria-hidden=\"true\"\n class=\"ms-2\"\n [title]=\"getDeleteButtonAriaLabel(element)\"\n ></foehn-icon-times>\n </button>\n </ng-container>\n </div>\n </fieldset>\n </div>\n</div>\n", styles: ["foehn-autocomplete p.alert:focus{outline:0;box-shadow:inset 0 1px 1px #00000013,0 0 0 .2rem var(--vd-focus)}:host ::ng-deep foehn-autocomplete .form-group{margin-bottom:0!important}.selected-list-container button>.btn,.btn-link{line-height:inherit;padding:0}.selected-list-container .btn{text-transform:none}:host ::ng-deep .btn .svg-inline--fa{color:#fff!important}.selected-list-container span.rounded-pill:focus{outline:0;box-shadow:inset 0 1px 1px #00000013,0 0 0 .2rem var(--vd-focus)}.container-box{border:1px solid #ededed;background-color:#fbfbfb;padding:.5rem}.container-box.vd-form-group-danger{border-left:5px solid var(--vd-danger);padding-left:1rem}:host ::ng-deep foehn-autocomplete div.vd-form-group-danger{border-left:0;padding-left:0}\n"], dependencies: [{ kind: "component", type: FoehnAutocompleteComponent, selector: "foehn-autocomplete", inputs: ["searchValueMinCharsCount", "allowCustomValue", "isSuggestionListDynamic", "customValueModelGenerator", "itemHeightInSuggestionListInPx", "elementSuggestionLabel", "caseSensitiveSearch", "disabled"], outputs: ["userSearchInput"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: FoehnIconTimesComponent, selector: "foehn-icon-times" }, { kind: "pipe", type: SdkDictionaryPipe, name: "fromDictionary" }] }); }
|
|
11620
11617
|
}
|
|
11621
11618
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: FoehnMultiselectAutocompleteComponent, decorators: [{
|
|
11622
11619
|
type: Component,
|
|
@@ -11626,7 +11623,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImpor
|
|
|
11626
11623
|
useExisting: forwardRef(() => FoehnMultiselectAutocompleteComponent),
|
|
11627
11624
|
multi: true
|
|
11628
11625
|
}
|
|
11629
|
-
], template: "<div\n class=\"form-group container-box\"\n [class.has-danger]=\"hasErrorsToDisplay()\"\n [class.vd-form-group-danger]=\"hasErrorsToDisplay()\"\n>\n <foehn-autocomplete\n #autocompleteComponent\n [name]=\"name\"\n [label]=\"label\"\n [elements]=\"elements\"\n [elementsUrl]=\"elementsUrl\"\n [elementValue]=\"elementValue\"\n [elementLabel]=\"elementLabel\"\n [elementSuggestionLabel]=\"elementSuggestionLabel\"\n [elementValueIdentity]=\"elementValueIdentity\"\n [elementDisabled]=\"elementDisabled\"\n [elementGroup]=\"elementGroup\"\n [allowCustomValue]=\"false\"\n [searchValueMinCharsCount]=\"searchValueMinCharsCount\"\n [customValueModelGenerator]=\"customValueModelGenerator\"\n [required]=\"required\"\n [disabled]=\"disabled\"\n (userInput)=\"addItem($event)\"\n [(model)]=\"autocompleteInputValue\"\n (elementsLoaded)=\"onAutocompleteElementsLoaded($event)\"\n [showErrorWhenDisabled]=\"showErrorWhenDisabled\"\n [hideNotRequiredExtraLabel]=\"hideNotRequiredExtraLabel\"\n [itemHeightInSuggestionListInPx]=\"itemHeightInSuggestionListInPx\"\n [caseSensitiveSearch]=\"caseSensitiveSearch\"\n >\n <small\n *ngIf=\"!showEmptyListMessage\"\n [attr.id]=\"buildChildId('Help')\"\n class=\"form-text text-secondary\"\n [innerHTML]=\"\n helpText\n ? helpText\n : ('foehn-multiselect-autocomplete.autocomplete.screen-reader.label'\n | fromDictionary)\n \"\n ></small>\n\n <ng-content></ng-content>\n\n <div\n [id]=\"buildChildId('AlertMessageContainer')\"\n role=\"status\"\n #alertMessageContainer\n >\n <p\n *ngIf=\"showEmptyListMessage\"\n class=\"alert alert-info mb-0\"\n tabindex=\"0\"\n >\n {{\n 'foehn-multiselect-autocomplete.autocomplete.empty-message'\n | fromDictionary\n }}\n </p>\n </div>\n </foehn-autocomplete>\n\n <div class=\"selected-list-container pt-2\" tabindex=\"-1\">\n <small\n *ngIf=\"hasDefaultDeleteFocusArea()\"\n class=\"form-text text-secondary my-0\"\n [tabindex]=\"0\"\n [innerHTML]=\"noElementsSelectedLabel | fromDictionary\"\n #defaultDeleteFocusArea\n ></small>\n\n <p\n [id]=\"buildChildId('srOnlyAnnouncements')\"\n class=\"visually-hidden\"\n aria-live=\"polite\"\n aria-atomic=\"true\"\n >\n {{ srAnnouncements }}\n </p>\n\n <fieldset\n *ngIf=\"!!model?.length\"\n class=\"mb-0\"\n [attr.aria-describedby]=\"buildChildId('Label')\"\n >\n <legend\n [id]=\"buildChildId('Legend')\"\n class=\"form-text text-secondary small mb-0\"\n [innerHTML]=\"selectedItemsListLegend | fromDictionary\"\n ></legend>\n\n <div class=\"selected-list d-flex align-content-stretch flex-wrap\">\n <ng-container\n *ngFor=\"\n let element of model;\n let index = index;\n trackBy: trackByFn\n \"\n >\n <span\n *ngIf=\"!canBeDeleted(index)\"\n class=\"badge rounded-pill bg-secondary me-1 mb-1 py-2 px-3 d-flex align-items-center\"\n [tabindex]=\"disabled ? -1 : 0\"\n [attr.aria-describedby]=\"buildChildId('Legend')\"\n #defaultElemRef\n >\n {{ getBadgeLabel(element) }}\n <span class=\"visually-hidden\">\n {{\n 'foehn-multiselect-autocomplete.sr-default-selected-element'\n | fromDictionary\n }}\n </span>\n </span>\n <button\n *ngIf=\"canBeDeleted(index)\"\n class=\"btn btn-primary badge rounded-pill me-1 mb-1 py-2 px-3 d-flex align-items-center\"\n [tabindex]=\"0\"\n [attr.aria-label]=\"getDeleteButtonAriaLabel(element)\"\n [attr.aria-describedby]=\"buildChildId('Legend')\"\n [title]=\"getDeleteButtonAriaLabel(element)\"\n (click)=\"removeItem(element, index)\"\n #selectedElemRef\n >\n {{ getBadgeLabel(element) }}\n <foehn-icon-times\n aria-hidden=\"true\"\n class=\"ms-2\"\n [title]=\"getDeleteButtonAriaLabel(element)\"\n ></foehn-icon-times>\n </button>\n </ng-container>\n </div>\n </fieldset>\n </div>\n</div>\n", styles: ["foehn-autocomplete p.alert:focus{outline:0;box-shadow:inset 0 1px 1px #00000013,0 0 0 .2rem var(--vd-focus)}:host ::ng-deep foehn-autocomplete .form-group{margin-bottom:0!important}.selected-list-container button>.btn,.btn-link{line-height:inherit;padding:0}.selected-list-container .btn{text-transform:none}:host ::ng-deep .btn .svg-inline--fa{color:#fff!important}.selected-list-container span.rounded-pill:focus{outline:0;box-shadow:inset 0 1px 1px #00000013,0 0 0 .2rem var(--vd-focus)}.container-box{border:1px solid #ededed;background-color:#fbfbfb;padding:.5rem}.container-box.vd-form-group-danger{border-left:5px solid var(--vd-danger);padding-left:1rem}:host ::ng-deep foehn-autocomplete div.vd-form-group-danger{border-left:0;padding-left:0}\n"] }]
|
|
11626
|
+
], template: "<div\n class=\"form-group container-box\"\n [class.has-danger]=\"hasErrorsToDisplay()\"\n [class.vd-form-group-danger]=\"hasErrorsToDisplay()\"\n>\n <foehn-autocomplete\n #autocompleteComponent\n [name]=\"name\"\n [label]=\"label\"\n [elements]=\"elements\"\n [elementsUrl]=\"elementsUrl\"\n [elementValue]=\"elementValue\"\n [elementLabel]=\"elementLabel\"\n [elementSuggestionLabel]=\"elementSuggestionLabel\"\n [elementValueIdentity]=\"elementValueIdentity\"\n [elementDisabled]=\"elementDisabled\"\n [elementGroup]=\"elementGroup\"\n [allowCustomValue]=\"false\"\n [searchValueMinCharsCount]=\"searchValueMinCharsCount\"\n [customValueModelGenerator]=\"customValueModelGenerator\"\n [required]=\"required\"\n [disabled]=\"disabled\"\n (userInput)=\"addItem($event)\"\n [(model)]=\"autocompleteInputValue\"\n (elementsLoaded)=\"onAutocompleteElementsLoaded($event)\"\n [showErrorWhenDisabled]=\"showErrorWhenDisabled\"\n [hideNotRequiredExtraLabel]=\"hideNotRequiredExtraLabel\"\n [itemHeightInSuggestionListInPx]=\"itemHeightInSuggestionListInPx\"\n [caseSensitiveSearch]=\"caseSensitiveSearch\"\n >\n <small\n *ngIf=\"!showEmptyListMessage\"\n [attr.id]=\"buildChildId('Help')\"\n class=\"form-text text-secondary\"\n [innerHTML]=\"\n helpText\n ? helpText\n : ('foehn-multiselect-autocomplete.autocomplete.screen-reader.label'\n | fromDictionary)\n \"\n ></small>\n\n <ng-content></ng-content>\n\n <div\n [id]=\"buildChildId('AlertMessageContainer')\"\n role=\"status\"\n #alertMessageContainer\n >\n <p\n *ngIf=\"showEmptyListMessage\"\n class=\"alert alert-info mb-0\"\n tabindex=\"0\"\n >\n {{\n 'foehn-multiselect-autocomplete.autocomplete.empty-message'\n | fromDictionary\n }}\n </p>\n </div>\n </foehn-autocomplete>\n\n <div class=\"selected-list-container pt-2\" tabindex=\"-1\">\n <small\n *ngIf=\"hasDefaultDeleteFocusArea()\"\n class=\"form-text text-secondary my-0\"\n [tabindex]=\"0\"\n [innerHTML]=\"noElementsSelectedLabel | fromDictionary\"\n #defaultDeleteFocusArea\n ></small>\n\n <p\n [id]=\"buildChildId('srOnlyAnnouncements')\"\n class=\"visually-hidden\"\n aria-live=\"polite\"\n aria-atomic=\"true\"\n >\n {{ srAnnouncements }}\n </p>\n\n <fieldset\n *ngIf=\"!!model?.length\"\n class=\"mb-0\"\n [attr.aria-describedby]=\"buildChildId('Label')\"\n >\n <legend\n [id]=\"buildChildId('Legend')\"\n class=\"form-text text-secondary small mb-0\"\n [innerHTML]=\"selectedItemsListLegend | fromDictionary\"\n ></legend>\n\n <div class=\"selected-list d-flex align-content-stretch flex-wrap\">\n <ng-container\n *ngFor=\"\n let element of model;\n let index = index;\n trackBy: trackByFn\n \"\n >\n <span\n *ngIf=\"!canBeDeleted(index)\"\n class=\"badge rounded-pill bg-secondary me-1 mb-1 py-2 px-3 d-flex align-items-center\"\n [tabindex]=\"disabled ? -1 : 0\"\n [attr.aria-describedby]=\"buildChildId('Legend')\"\n #defaultElemRef\n >\n {{ getBadgeLabel(element) }}\n <span class=\"visually-hidden\">\n {{\n 'foehn-multiselect-autocomplete.sr-default-selected-element'\n | fromDictionary\n }}\n </span>\n </span>\n <button\n *ngIf=\"canBeDeleted(index)\"\n type=\"button\"\n class=\"btn btn-primary badge rounded-pill me-1 mb-1 py-2 px-3 d-flex align-items-center\"\n [tabindex]=\"0\"\n [attr.aria-label]=\"getDeleteButtonAriaLabel(element)\"\n [attr.aria-describedby]=\"buildChildId('Legend')\"\n [title]=\"getDeleteButtonAriaLabel(element)\"\n (click)=\"removeItem(element, index)\"\n #selectedElemRef\n >\n {{ getBadgeLabel(element) }}\n <foehn-icon-times\n aria-hidden=\"true\"\n class=\"ms-2\"\n [title]=\"getDeleteButtonAriaLabel(element)\"\n ></foehn-icon-times>\n </button>\n </ng-container>\n </div>\n </fieldset>\n </div>\n</div>\n", styles: ["foehn-autocomplete p.alert:focus{outline:0;box-shadow:inset 0 1px 1px #00000013,0 0 0 .2rem var(--vd-focus)}:host ::ng-deep foehn-autocomplete .form-group{margin-bottom:0!important}.selected-list-container button>.btn,.btn-link{line-height:inherit;padding:0}.selected-list-container .btn{text-transform:none}:host ::ng-deep .btn .svg-inline--fa{color:#fff!important}.selected-list-container span.rounded-pill:focus{outline:0;box-shadow:inset 0 1px 1px #00000013,0 0 0 .2rem var(--vd-focus)}.container-box{border:1px solid #ededed;background-color:#fbfbfb;padding:.5rem}.container-box.vd-form-group-danger{border-left:5px solid var(--vd-danger);padding-left:1rem}:host ::ng-deep foehn-autocomplete div.vd-form-group-danger{border-left:0;padding-left:0}\n"] }]
|
|
11630
11627
|
}], ctorParameters: () => [{ type: i0.NgZone }, { type: SdkDictionaryService }], propDecorators: { hostName: [{
|
|
11631
11628
|
type: HostBinding,
|
|
11632
11629
|
args: ['attr.name']
|
|
@@ -12095,11 +12092,11 @@ class GesdemActionRecoveryRegistrationComponent {
|
|
|
12095
12092
|
currentEtapeInfo.idMetierPrestation);
|
|
12096
12093
|
}
|
|
12097
12094
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: GesdemActionRecoveryRegistrationComponent, deps: [{ token: GesdemActionRecoveryService }, { token: ValidationHandlerService }, { token: FoehnPageService }, { token: GesdemEventService }, { token: GesdemHandlerService }, { token: ApplicationInfoService }, { token: SessionInfo }, { token: i1$1.Router }, { token: SdkEventsLoggerService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
12098
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.3", type: GesdemActionRecoveryRegistrationComponent, selector: "gesdem-action-recovery-registration", inputs: { continueLaterLabel: "continueLaterLabel", continueLaterAlreadyRegisteredLabel: "continueLaterAlreadyRegisteredLabel", continueLaterConnectedLabel: "continueLaterConnectedLabel", triggerOnPageChange: "triggerOnPageChange" }, viewQueries: [{ propertyName: "modalTrigger", first: true, predicate: ["modalTrigger"], descendants: true }, { propertyName: "form", first: true, predicate: FoehnFormComponent, descendants: true }], ngImport: i0, template: "<button\n type=\"button\"\n id=\"continueLaterButton\"\n class=\"btn btn-link pe-0 ps-0 no-text-transform\"\n *ngIf=\"canContinueLater | async\"\n [innerHTML]=\"modalTriggerLabel | async\"\n (click)=\"saveAndOpenModal()\"\n #modalTrigger\n></button>\n\n<ng-container *ngIf=\"currentInfoReprise | async as currentInfo\">\n <div\n class=\"small\"\n [innerHTML]=\"\n 'gesdem-action-recovery-registration.current-info.preview'\n | fromDictionary\n : {\n recoveryMail: currentInfo.email,\n lastRegistration:\n (currentInfo.lastUpdate | displayDate)\n }\n \"\n ></div>\n</ng-container>\n\n<foehn-modal\n *ngIf=\"currentEtapeInfo | async as etapeInfo\"\n id=\"action-recovery-registration-modal\"\n [modalSize]=\"!(isConnectedCyber | async) ? 'modal-lg' : 'modal-md'\"\n [modalHeaderText]=\"\n 'gesdem-action-recovery-registration.modalHeaderText' | fromDictionary\n \"\n [isModalVisible]=\"isModalVisible\"\n (isModalVisibleChange)=\"updateVisibilityStatus($event)\"\n>\n <ng-container *ngIf=\"!!(isConnectedCyber | async)\">\n <span\n [innerHTML]=\"\n 'gesdem-action-recovery-registration.connected.info'\n | fromDictionary\n \"\n ></span>\n\n <a href=\"/100002/demandes/search/MINE/INITIAL\">\n <foehn-icon-pencil\n class=\"h3\"\n aria-hidden=\"true\"\n [title]=\"\n 'gesdem-action-recovery-registration.connected.info.draft-link-text'\n | fromDictionary\n \"\n ></foehn-icon-pencil>\n <span\n [innerHTML]=\"\n 'gesdem-action-recovery-registration.connected.info.draft-link-text'\n | fromDictionary\n \"\n ></span>\n </a>\n </ng-container>\n\n <ng-container *ngIf=\"!(isConnectedCyber | async)\">\n <ng-container\n *ngIf=\"\n currentInfoReprise | async as currentInfo;\n else noCurrentInfo\n \"\n >\n <div\n class=\"alert alert-info\"\n *ngIf=\"!mailSent\"\n [innerHTML]=\"\n 'gesdem-action-recovery-registration.not-connected.current-info'\n | fromDictionary\n : {\n lastRegistration:\n (currentInfo.lastUpdate | displayDate),\n draftDemRetentionDaysPublic:\n etapeInfo.draftDemRetentionDaysPublic?.toString()\n }\n \"\n ></div>\n\n <div\n class=\"alert alert-info\"\n *ngIf=\"mailSent\"\n [innerHTML]=\"\n 'gesdem-action-recovery-registration.not-connected.info.sent'\n | fromDictionary\n : {\n recoveryMail: currentInfo.email,\n recoveryMobile: currentInfo.mobile,\n draftDemRetentionDaysPublic:\n etapeInfo.draftDemRetentionDaysPublic?.toString()\n }\n \"\n ></div>\n </ng-container>\n\n <foehn-form *ngIf=\"!mailSent\" [shouldDisplayAlertSummary]=\"false\">\n <foehn-input-email\n [label]=\"\n 'gesdem-action-recovery-registration.not-connected.email.label'\n | fromDictionary\n \"\n [helpText]=\"\n 'gesdem-action-recovery-registration.not-connected.email.help-text'\n | fromDictionary\n \"\n [(model)]=\"model.email\"\n name=\"email\"\n [required]=\"true\"\n ></foehn-input-email>\n\n <foehn-input-phone\n [label]=\"\n 'gesdem-action-recovery-registration.not-connected.mobile.label'\n | fromDictionary\n \"\n [acceptInternational]=\"true\"\n [acceptMobilePhone]=\"true\"\n [acceptPhone]=\"false\"\n [(model)]=\"model.mobile\"\n name=\"mobile\"\n [required]=\"true\"\n ></foehn-input-phone>\n\n <foehn-input-text\n [label]=\"\n 'gesdem-action-recovery-registration.not-connected.reference-interne.label'\n | fromDictionary\n \"\n [helpText]=\"\n 'gesdem-action-recovery-registration.not-connected.reference-interne.help-text'\n | fromDictionary\n \"\n [(model)]=\"model.referenceInterne\"\n name=\"referenceInterne\"\n [required]=\"false\"\n ></foehn-input-text>\n </foehn-form>\n </ng-container>\n\n <div modal-footer class=\"w-100\">\n <div class=\"d-md-flex\">\n <div class=\"ms-md-auto me-md-2 mb-2 mt-2\">\n <button\n id=\"continueLaterModalCancelButton\"\n (click)=\"close()\"\n class=\"btn btn-secondary w-100\"\n [innerHTML]=\"\n 'gesdem-action-recovery-registration.cancel.button'\n | fromDictionary\n \"\n ></button>\n </div>\n <div\n *ngIf=\"!(isConnectedCyber | async)\"\n class=\"ms-md-0 me-md-2 mb-2 mt-2\"\n >\n <button\n id=\"continueLaterModalSaveButton\"\n type=\"submit\"\n (click)=\"sendAndClose()\"\n class=\"btn btn-success w-100\"\n *ngIf=\"!mailSent\"\n [innerHTML]=\"\n 'gesdem-action-recovery-registration.save.button'\n | fromDictionary\n \"\n ></button>\n </div>\n </div>\n </div>\n</foehn-modal>\n\n<ng-template #noCurrentInfo>\n <div\n class=\"alert alert-info\"\n [innerHTML]=\"\n 'gesdem-action-recovery-registration.not-connected.not-registered.info'\n | fromDictionary\n : {\n draftDemRetentionDaysPublic: (\n currentEtapeInfo | async\n ).draftDemRetentionDaysPublic?.toString()\n }\n \"\n ></div>\n</ng-template>\n", styles: [".no-text-transform{text-transform:none;cursor:pointer}:host ::ng-deep foehn-icon-pencil .svg-inline--fa{color:#4a4a4b!important;margin-right:10px}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: FoehnInputTextComponent, selector: "foehn-input-text", inputs: ["numberOnly"] }, { kind: "component", type: FoehnInputEmailComponent, selector: "foehn-input-email" }, { kind: "component", type: FoehnInputPhoneComponent, selector: "foehn-input-phone", inputs: ["acceptInternational", "acceptMobilePhone", "acceptPhone"] }, { kind: "component", type: FoehnIconPencilComponent, selector: "foehn-icon-pencil" }, { kind: "component", type: FoehnFormComponent, selector: "foehn-form", inputs: ["shouldDisplayAlertSummary"] }, { kind: "component", type: FoehnModalComponent, selector: "foehn-modal", inputs: ["id", "name", "modalSize", "modalBodyText", "modalHeaderText", "closeable", "modalTriggerHtmlElement", "isModalVisible"], outputs: ["isModalVisibleChange"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }, { kind: "pipe", type: SdkDictionaryPipe, name: "fromDictionary" }, { kind: "pipe", type: DisplayDatePipe, name: "displayDate" }] }); }
|
|
12095
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.3", type: GesdemActionRecoveryRegistrationComponent, selector: "gesdem-action-recovery-registration", inputs: { continueLaterLabel: "continueLaterLabel", continueLaterAlreadyRegisteredLabel: "continueLaterAlreadyRegisteredLabel", continueLaterConnectedLabel: "continueLaterConnectedLabel", triggerOnPageChange: "triggerOnPageChange" }, viewQueries: [{ propertyName: "modalTrigger", first: true, predicate: ["modalTrigger"], descendants: true }, { propertyName: "form", first: true, predicate: FoehnFormComponent, descendants: true }], ngImport: i0, template: "<button\n type=\"button\"\n id=\"continueLaterButton\"\n class=\"btn btn-link pe-0 ps-0 no-text-transform\"\n *ngIf=\"canContinueLater | async\"\n [innerHTML]=\"modalTriggerLabel | async\"\n (click)=\"saveAndOpenModal()\"\n #modalTrigger\n></button>\n\n<ng-container *ngIf=\"currentInfoReprise | async as currentInfo\">\n <div\n class=\"small\"\n [innerHTML]=\"\n 'gesdem-action-recovery-registration.current-info.preview'\n | fromDictionary\n : {\n recoveryMail: currentInfo.email,\n lastRegistration:\n (currentInfo.lastUpdate | displayDate)\n }\n \"\n ></div>\n</ng-container>\n\n<foehn-modal\n *ngIf=\"currentEtapeInfo | async as etapeInfo\"\n id=\"action-recovery-registration-modal\"\n [modalSize]=\"!(isConnectedCyber | async) ? 'modal-lg' : 'modal-md'\"\n [modalHeaderText]=\"\n 'gesdem-action-recovery-registration.modalHeaderText' | fromDictionary\n \"\n [isModalVisible]=\"isModalVisible\"\n (isModalVisibleChange)=\"updateVisibilityStatus($event)\"\n>\n <ng-container *ngIf=\"!!(isConnectedCyber | async)\">\n <span\n [innerHTML]=\"\n 'gesdem-action-recovery-registration.connected.info'\n | fromDictionary\n \"\n ></span>\n\n <a href=\"/100002/demandes/search/MINE/INITIAL\">\n <foehn-icon-pencil\n class=\"h3\"\n aria-hidden=\"true\"\n [title]=\"\n 'gesdem-action-recovery-registration.connected.info.draft-link-text'\n | fromDictionary\n \"\n ></foehn-icon-pencil>\n <span\n [innerHTML]=\"\n 'gesdem-action-recovery-registration.connected.info.draft-link-text'\n | fromDictionary\n \"\n ></span>\n </a>\n </ng-container>\n\n <ng-container *ngIf=\"!(isConnectedCyber | async)\">\n <ng-container\n *ngIf=\"\n currentInfoReprise | async as currentInfo;\n else noCurrentInfo\n \"\n >\n <div\n class=\"alert alert-info\"\n *ngIf=\"!mailSent\"\n [innerHTML]=\"\n 'gesdem-action-recovery-registration.not-connected.current-info'\n | fromDictionary\n : {\n lastRegistration:\n (currentInfo.lastUpdate | displayDate),\n draftDemRetentionDaysPublic:\n etapeInfo.draftDemRetentionDaysPublic?.toString()\n }\n \"\n ></div>\n\n <div\n class=\"alert alert-info\"\n *ngIf=\"mailSent\"\n [innerHTML]=\"\n 'gesdem-action-recovery-registration.not-connected.info.sent'\n | fromDictionary\n : {\n recoveryMail: currentInfo.email,\n recoveryMobile: currentInfo.mobile,\n draftDemRetentionDaysPublic:\n etapeInfo.draftDemRetentionDaysPublic?.toString()\n }\n \"\n ></div>\n </ng-container>\n\n <foehn-form *ngIf=\"!mailSent\" [shouldDisplayAlertSummary]=\"false\">\n <foehn-input-email\n [label]=\"\n 'gesdem-action-recovery-registration.not-connected.email.label'\n | fromDictionary\n \"\n [helpText]=\"\n 'gesdem-action-recovery-registration.not-connected.email.help-text'\n | fromDictionary\n \"\n [(model)]=\"model.email\"\n name=\"email\"\n [required]=\"true\"\n ></foehn-input-email>\n\n <foehn-input-phone\n [label]=\"\n 'gesdem-action-recovery-registration.not-connected.mobile.label'\n | fromDictionary\n \"\n [acceptInternational]=\"true\"\n [acceptMobilePhone]=\"true\"\n [acceptPhone]=\"false\"\n [(model)]=\"model.mobile\"\n name=\"mobile\"\n [required]=\"true\"\n ></foehn-input-phone>\n\n <foehn-input-text\n [label]=\"\n 'gesdem-action-recovery-registration.not-connected.reference-interne.label'\n | fromDictionary\n \"\n [helpText]=\"\n 'gesdem-action-recovery-registration.not-connected.reference-interne.help-text'\n | fromDictionary\n \"\n [(model)]=\"model.referenceInterne\"\n name=\"referenceInterne\"\n [required]=\"false\"\n ></foehn-input-text>\n </foehn-form>\n </ng-container>\n\n <div modal-footer class=\"w-100\">\n <div class=\"d-md-flex\">\n <div class=\"ms-md-auto me-md-2 mb-2 mt-2\">\n <button\n id=\"continueLaterModalCancelButton\"\n type=\"button\"\n (click)=\"close()\"\n class=\"btn btn-secondary w-100\"\n [innerHTML]=\"\n 'gesdem-action-recovery-registration.cancel.button'\n | fromDictionary\n \"\n ></button>\n </div>\n <div\n *ngIf=\"!(isConnectedCyber | async)\"\n class=\"ms-md-0 me-md-2 mb-2 mt-2\"\n >\n <button\n id=\"continueLaterModalSaveButton\"\n type=\"submit\"\n (click)=\"sendAndClose()\"\n class=\"btn btn-success w-100\"\n *ngIf=\"!mailSent\"\n [innerHTML]=\"\n 'gesdem-action-recovery-registration.save.button'\n | fromDictionary\n \"\n ></button>\n </div>\n </div>\n </div>\n</foehn-modal>\n\n<ng-template #noCurrentInfo>\n <div\n class=\"alert alert-info\"\n [innerHTML]=\"\n 'gesdem-action-recovery-registration.not-connected.not-registered.info'\n | fromDictionary\n : {\n draftDemRetentionDaysPublic: (\n currentEtapeInfo | async\n ).draftDemRetentionDaysPublic?.toString()\n }\n \"\n ></div>\n</ng-template>\n", styles: [".no-text-transform{text-transform:none;cursor:pointer}:host ::ng-deep foehn-icon-pencil .svg-inline--fa{color:#4a4a4b!important;margin-right:10px}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: FoehnInputTextComponent, selector: "foehn-input-text", inputs: ["numberOnly"] }, { kind: "component", type: FoehnInputEmailComponent, selector: "foehn-input-email" }, { kind: "component", type: FoehnInputPhoneComponent, selector: "foehn-input-phone", inputs: ["acceptInternational", "acceptMobilePhone", "acceptPhone"] }, { kind: "component", type: FoehnIconPencilComponent, selector: "foehn-icon-pencil" }, { kind: "component", type: FoehnFormComponent, selector: "foehn-form", inputs: ["shouldDisplayAlertSummary"] }, { kind: "component", type: FoehnModalComponent, selector: "foehn-modal", inputs: ["id", "name", "modalSize", "modalBodyText", "modalHeaderText", "closeable", "modalTriggerHtmlElement", "isModalVisible"], outputs: ["isModalVisibleChange"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }, { kind: "pipe", type: SdkDictionaryPipe, name: "fromDictionary" }, { kind: "pipe", type: DisplayDatePipe, name: "displayDate" }] }); }
|
|
12099
12096
|
}
|
|
12100
12097
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: GesdemActionRecoveryRegistrationComponent, decorators: [{
|
|
12101
12098
|
type: Component,
|
|
12102
|
-
args: [{ selector: 'gesdem-action-recovery-registration', template: "<button\n type=\"button\"\n id=\"continueLaterButton\"\n class=\"btn btn-link pe-0 ps-0 no-text-transform\"\n *ngIf=\"canContinueLater | async\"\n [innerHTML]=\"modalTriggerLabel | async\"\n (click)=\"saveAndOpenModal()\"\n #modalTrigger\n></button>\n\n<ng-container *ngIf=\"currentInfoReprise | async as currentInfo\">\n <div\n class=\"small\"\n [innerHTML]=\"\n 'gesdem-action-recovery-registration.current-info.preview'\n | fromDictionary\n : {\n recoveryMail: currentInfo.email,\n lastRegistration:\n (currentInfo.lastUpdate | displayDate)\n }\n \"\n ></div>\n</ng-container>\n\n<foehn-modal\n *ngIf=\"currentEtapeInfo | async as etapeInfo\"\n id=\"action-recovery-registration-modal\"\n [modalSize]=\"!(isConnectedCyber | async) ? 'modal-lg' : 'modal-md'\"\n [modalHeaderText]=\"\n 'gesdem-action-recovery-registration.modalHeaderText' | fromDictionary\n \"\n [isModalVisible]=\"isModalVisible\"\n (isModalVisibleChange)=\"updateVisibilityStatus($event)\"\n>\n <ng-container *ngIf=\"!!(isConnectedCyber | async)\">\n <span\n [innerHTML]=\"\n 'gesdem-action-recovery-registration.connected.info'\n | fromDictionary\n \"\n ></span>\n\n <a href=\"/100002/demandes/search/MINE/INITIAL\">\n <foehn-icon-pencil\n class=\"h3\"\n aria-hidden=\"true\"\n [title]=\"\n 'gesdem-action-recovery-registration.connected.info.draft-link-text'\n | fromDictionary\n \"\n ></foehn-icon-pencil>\n <span\n [innerHTML]=\"\n 'gesdem-action-recovery-registration.connected.info.draft-link-text'\n | fromDictionary\n \"\n ></span>\n </a>\n </ng-container>\n\n <ng-container *ngIf=\"!(isConnectedCyber | async)\">\n <ng-container\n *ngIf=\"\n currentInfoReprise | async as currentInfo;\n else noCurrentInfo\n \"\n >\n <div\n class=\"alert alert-info\"\n *ngIf=\"!mailSent\"\n [innerHTML]=\"\n 'gesdem-action-recovery-registration.not-connected.current-info'\n | fromDictionary\n : {\n lastRegistration:\n (currentInfo.lastUpdate | displayDate),\n draftDemRetentionDaysPublic:\n etapeInfo.draftDemRetentionDaysPublic?.toString()\n }\n \"\n ></div>\n\n <div\n class=\"alert alert-info\"\n *ngIf=\"mailSent\"\n [innerHTML]=\"\n 'gesdem-action-recovery-registration.not-connected.info.sent'\n | fromDictionary\n : {\n recoveryMail: currentInfo.email,\n recoveryMobile: currentInfo.mobile,\n draftDemRetentionDaysPublic:\n etapeInfo.draftDemRetentionDaysPublic?.toString()\n }\n \"\n ></div>\n </ng-container>\n\n <foehn-form *ngIf=\"!mailSent\" [shouldDisplayAlertSummary]=\"false\">\n <foehn-input-email\n [label]=\"\n 'gesdem-action-recovery-registration.not-connected.email.label'\n | fromDictionary\n \"\n [helpText]=\"\n 'gesdem-action-recovery-registration.not-connected.email.help-text'\n | fromDictionary\n \"\n [(model)]=\"model.email\"\n name=\"email\"\n [required]=\"true\"\n ></foehn-input-email>\n\n <foehn-input-phone\n [label]=\"\n 'gesdem-action-recovery-registration.not-connected.mobile.label'\n | fromDictionary\n \"\n [acceptInternational]=\"true\"\n [acceptMobilePhone]=\"true\"\n [acceptPhone]=\"false\"\n [(model)]=\"model.mobile\"\n name=\"mobile\"\n [required]=\"true\"\n ></foehn-input-phone>\n\n <foehn-input-text\n [label]=\"\n 'gesdem-action-recovery-registration.not-connected.reference-interne.label'\n | fromDictionary\n \"\n [helpText]=\"\n 'gesdem-action-recovery-registration.not-connected.reference-interne.help-text'\n | fromDictionary\n \"\n [(model)]=\"model.referenceInterne\"\n name=\"referenceInterne\"\n [required]=\"false\"\n ></foehn-input-text>\n </foehn-form>\n </ng-container>\n\n <div modal-footer class=\"w-100\">\n <div class=\"d-md-flex\">\n <div class=\"ms-md-auto me-md-2 mb-2 mt-2\">\n <button\n id=\"continueLaterModalCancelButton\"\n (click)=\"close()\"\n class=\"btn btn-secondary w-100\"\n [innerHTML]=\"\n 'gesdem-action-recovery-registration.cancel.button'\n | fromDictionary\n \"\n ></button>\n </div>\n <div\n *ngIf=\"!(isConnectedCyber | async)\"\n class=\"ms-md-0 me-md-2 mb-2 mt-2\"\n >\n <button\n id=\"continueLaterModalSaveButton\"\n type=\"submit\"\n (click)=\"sendAndClose()\"\n class=\"btn btn-success w-100\"\n *ngIf=\"!mailSent\"\n [innerHTML]=\"\n 'gesdem-action-recovery-registration.save.button'\n | fromDictionary\n \"\n ></button>\n </div>\n </div>\n </div>\n</foehn-modal>\n\n<ng-template #noCurrentInfo>\n <div\n class=\"alert alert-info\"\n [innerHTML]=\"\n 'gesdem-action-recovery-registration.not-connected.not-registered.info'\n | fromDictionary\n : {\n draftDemRetentionDaysPublic: (\n currentEtapeInfo | async\n ).draftDemRetentionDaysPublic?.toString()\n }\n \"\n ></div>\n</ng-template>\n", styles: [".no-text-transform{text-transform:none;cursor:pointer}:host ::ng-deep foehn-icon-pencil .svg-inline--fa{color:#4a4a4b!important;margin-right:10px}\n"] }]
|
|
12099
|
+
args: [{ selector: 'gesdem-action-recovery-registration', template: "<button\n type=\"button\"\n id=\"continueLaterButton\"\n class=\"btn btn-link pe-0 ps-0 no-text-transform\"\n *ngIf=\"canContinueLater | async\"\n [innerHTML]=\"modalTriggerLabel | async\"\n (click)=\"saveAndOpenModal()\"\n #modalTrigger\n></button>\n\n<ng-container *ngIf=\"currentInfoReprise | async as currentInfo\">\n <div\n class=\"small\"\n [innerHTML]=\"\n 'gesdem-action-recovery-registration.current-info.preview'\n | fromDictionary\n : {\n recoveryMail: currentInfo.email,\n lastRegistration:\n (currentInfo.lastUpdate | displayDate)\n }\n \"\n ></div>\n</ng-container>\n\n<foehn-modal\n *ngIf=\"currentEtapeInfo | async as etapeInfo\"\n id=\"action-recovery-registration-modal\"\n [modalSize]=\"!(isConnectedCyber | async) ? 'modal-lg' : 'modal-md'\"\n [modalHeaderText]=\"\n 'gesdem-action-recovery-registration.modalHeaderText' | fromDictionary\n \"\n [isModalVisible]=\"isModalVisible\"\n (isModalVisibleChange)=\"updateVisibilityStatus($event)\"\n>\n <ng-container *ngIf=\"!!(isConnectedCyber | async)\">\n <span\n [innerHTML]=\"\n 'gesdem-action-recovery-registration.connected.info'\n | fromDictionary\n \"\n ></span>\n\n <a href=\"/100002/demandes/search/MINE/INITIAL\">\n <foehn-icon-pencil\n class=\"h3\"\n aria-hidden=\"true\"\n [title]=\"\n 'gesdem-action-recovery-registration.connected.info.draft-link-text'\n | fromDictionary\n \"\n ></foehn-icon-pencil>\n <span\n [innerHTML]=\"\n 'gesdem-action-recovery-registration.connected.info.draft-link-text'\n | fromDictionary\n \"\n ></span>\n </a>\n </ng-container>\n\n <ng-container *ngIf=\"!(isConnectedCyber | async)\">\n <ng-container\n *ngIf=\"\n currentInfoReprise | async as currentInfo;\n else noCurrentInfo\n \"\n >\n <div\n class=\"alert alert-info\"\n *ngIf=\"!mailSent\"\n [innerHTML]=\"\n 'gesdem-action-recovery-registration.not-connected.current-info'\n | fromDictionary\n : {\n lastRegistration:\n (currentInfo.lastUpdate | displayDate),\n draftDemRetentionDaysPublic:\n etapeInfo.draftDemRetentionDaysPublic?.toString()\n }\n \"\n ></div>\n\n <div\n class=\"alert alert-info\"\n *ngIf=\"mailSent\"\n [innerHTML]=\"\n 'gesdem-action-recovery-registration.not-connected.info.sent'\n | fromDictionary\n : {\n recoveryMail: currentInfo.email,\n recoveryMobile: currentInfo.mobile,\n draftDemRetentionDaysPublic:\n etapeInfo.draftDemRetentionDaysPublic?.toString()\n }\n \"\n ></div>\n </ng-container>\n\n <foehn-form *ngIf=\"!mailSent\" [shouldDisplayAlertSummary]=\"false\">\n <foehn-input-email\n [label]=\"\n 'gesdem-action-recovery-registration.not-connected.email.label'\n | fromDictionary\n \"\n [helpText]=\"\n 'gesdem-action-recovery-registration.not-connected.email.help-text'\n | fromDictionary\n \"\n [(model)]=\"model.email\"\n name=\"email\"\n [required]=\"true\"\n ></foehn-input-email>\n\n <foehn-input-phone\n [label]=\"\n 'gesdem-action-recovery-registration.not-connected.mobile.label'\n | fromDictionary\n \"\n [acceptInternational]=\"true\"\n [acceptMobilePhone]=\"true\"\n [acceptPhone]=\"false\"\n [(model)]=\"model.mobile\"\n name=\"mobile\"\n [required]=\"true\"\n ></foehn-input-phone>\n\n <foehn-input-text\n [label]=\"\n 'gesdem-action-recovery-registration.not-connected.reference-interne.label'\n | fromDictionary\n \"\n [helpText]=\"\n 'gesdem-action-recovery-registration.not-connected.reference-interne.help-text'\n | fromDictionary\n \"\n [(model)]=\"model.referenceInterne\"\n name=\"referenceInterne\"\n [required]=\"false\"\n ></foehn-input-text>\n </foehn-form>\n </ng-container>\n\n <div modal-footer class=\"w-100\">\n <div class=\"d-md-flex\">\n <div class=\"ms-md-auto me-md-2 mb-2 mt-2\">\n <button\n id=\"continueLaterModalCancelButton\"\n type=\"button\"\n (click)=\"close()\"\n class=\"btn btn-secondary w-100\"\n [innerHTML]=\"\n 'gesdem-action-recovery-registration.cancel.button'\n | fromDictionary\n \"\n ></button>\n </div>\n <div\n *ngIf=\"!(isConnectedCyber | async)\"\n class=\"ms-md-0 me-md-2 mb-2 mt-2\"\n >\n <button\n id=\"continueLaterModalSaveButton\"\n type=\"submit\"\n (click)=\"sendAndClose()\"\n class=\"btn btn-success w-100\"\n *ngIf=\"!mailSent\"\n [innerHTML]=\"\n 'gesdem-action-recovery-registration.save.button'\n | fromDictionary\n \"\n ></button>\n </div>\n </div>\n </div>\n</foehn-modal>\n\n<ng-template #noCurrentInfo>\n <div\n class=\"alert alert-info\"\n [innerHTML]=\"\n 'gesdem-action-recovery-registration.not-connected.not-registered.info'\n | fromDictionary\n : {\n draftDemRetentionDaysPublic: (\n currentEtapeInfo | async\n ).draftDemRetentionDaysPublic?.toString()\n }\n \"\n ></div>\n</ng-template>\n", styles: [".no-text-transform{text-transform:none;cursor:pointer}:host ::ng-deep foehn-icon-pencil .svg-inline--fa{color:#4a4a4b!important;margin-right:10px}\n"] }]
|
|
12103
12100
|
}], ctorParameters: () => [{ type: GesdemActionRecoveryService }, { type: ValidationHandlerService }, { type: FoehnPageService }, { type: GesdemEventService }, { type: GesdemHandlerService }, { type: ApplicationInfoService }, { type: SessionInfo }, { type: i1$1.Router }, { type: SdkEventsLoggerService }], propDecorators: { continueLaterLabel: [{
|
|
12104
12101
|
type: Input
|
|
12105
12102
|
}], continueLaterAlreadyRegisteredLabel: [{
|
|
@@ -12457,11 +12454,11 @@ class FoehnListComponent {
|
|
|
12457
12454
|
this.filteredList = this._list.slice(start, start + this.itemsPerPage);
|
|
12458
12455
|
}
|
|
12459
12456
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: FoehnListComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
12460
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.3", 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=\"visually-hidden\">:</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=\"visually-hidden\">:</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"], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: FoehnIconChevronLeftComponent, selector: "foehn-icon-chevron-left" }, { kind: "component", type: FoehnIconChevronRightComponent, selector: "foehn-icon-chevron-right" }] }); }
|
|
12457
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.3", 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 type=\"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=\"visually-hidden\">:</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 type=\"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=\"visually-hidden\">:</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"], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: FoehnIconChevronLeftComponent, selector: "foehn-icon-chevron-left" }, { kind: "component", type: FoehnIconChevronRightComponent, selector: "foehn-icon-chevron-right" }] }); }
|
|
12461
12458
|
}
|
|
12462
12459
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: FoehnListComponent, decorators: [{
|
|
12463
12460
|
type: Component,
|
|
12464
|
-
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=\"visually-hidden\">:</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=\"visually-hidden\">:</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"] }]
|
|
12461
|
+
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 type=\"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=\"visually-hidden\">:</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 type=\"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=\"visually-hidden\">:</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"] }]
|
|
12465
12462
|
}], propDecorators: {
|
|
12466
12463
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
12467
12464
|
templateVariable: [{
|
|
@@ -13785,7 +13782,7 @@ class BoMultiUploadService {
|
|
|
13785
13782
|
}));
|
|
13786
13783
|
}
|
|
13787
13784
|
manageBeneficiaryRequiredError(httpErrorResponse) {
|
|
13788
|
-
if (
|
|
13785
|
+
if (httpErrorResponse) {
|
|
13789
13786
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
13790
13787
|
const { error } = httpErrorResponse;
|
|
13791
13788
|
if (error?.code === 'BENEFICIARY_REQUIRED') {
|
|
@@ -14888,7 +14885,7 @@ class FoehnListSummaryComponent extends FoehnInputComponent {
|
|
|
14888
14885
|
useExisting: forwardRef(() => FoehnListSummaryComponent),
|
|
14889
14886
|
multi: true
|
|
14890
14887
|
}
|
|
14891
|
-
], viewQueries: [{ propertyName: "tableActionButtons", first: true, predicate: ["tableActionButtons"], descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<section\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 <label\n class=\"form-label\"\n [attr.for]=\"buildChildId()\"\n *ngIf=\"label && type !== 'hidden'\"\n [ngClass]=\"isLabelSrOnly ? 'visually-hidden' : 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-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 <section *ngIf=\"!showAsTable\">\n <ul class=\"list-unstyled\" aria-describedby=\"sommaire-help-alt\">\n <li\n [id]=\"'list-summary-' + item.trackingIndex\"\n class=\"mt-3 border-bottom\"\n *ngFor=\"\n let item of list;\n let itemIndex = index;\n trackBy: trackFoehnListItem\n \"\n >\n <div class=\"d-flex align-items-baseline flex-wrap\">\n <h4 class=\"mt-0 me-3\">{{ getListItemTitle(item) }}</h4>\n <span class=\"ms-auto\">\n <foehn-error-pill\n [incompleteIndicatorOnly]=\"true\"\n [errorPrefix]=\"name + '[' + itemIndex + ']'\"\n ></foehn-error-pill>\n </span>\n </div>\n <dl class=\"mb-0\">\n <ng-container\n *ngFor=\"\n let itemParam of listItemDescriptions;\n trackBy: trackFoehnListItemDescription\n \"\n >\n <div\n class=\"d-flex flex-wrap item-line\"\n *ngIf=\"showLine(item, itemParam)\"\n >\n <dt class=\"me-1\">\n {{ itemParam.label }}\n </dt>\n <dd class=\"ms-auto text-end\">\n {{ itemParam.getFormattedValue(item) }}\n </dd>\n </div>\n </ng-container>\n </dl>\n <ul class=\"list-inline mb-3 mt-0\">\n <li class=\"list-inline-item\">\n <a\n [id]=\"buildChildId('-edit-link-' + itemIndex)\"\n href=\"#\"\n (click)=\"\n $event.preventDefault(); editItem(itemIndex)\n \"\n >\n Modifier\n </a>\n <span class=\"visually-hidden\">\n {{ getListItemTitle(item) }}\n </span>\n </li>\n <li class=\"list-inline-item\">\n \n <a\n [id]=\"buildChildId('-delete-link-' + itemIndex)\"\n href=\"#\"\n (click)=\"\n $event.preventDefault(); removeItem(itemIndex)\n \"\n >\n Supprimer\n <span class=\"visually-hidden\">\n {{ getListItemTitle(item) }}\n </span>\n </a>\n </li>\n </ul>\n </li>\n </ul>\n </section>\n\n <section *ngIf=\"showAsTable && !!tableConfiguration?.length\">\n <foehn-table\n [id]=\"buildChildName('table')\"\n *ngIf=\"!!listCopyForTable?.length\"\n [list]=\"listCopyForTable\"\n [itemsPerPage]=\"1000000\"\n [columnsConfiguration]=\"tableConfiguration\"\n [sort]=\"tableSort\"\n (sortChange)=\"changeSort($event)\"\n [trackByFn]=\"trackFoehnListItem\"\n ></foehn-table>\n </section>\n\n <section [ngClass]=\"{ 'mt-5': !showAsTable }\">\n <h2 class=\"visually-hidden\">Action</h2>\n <ul class=\"list-inline mb-3\">\n <li class=\"list-inline-item\">\n <button\n [id]=\"buildChildId('-add-button')\"\n class=\"btn btn-primary\"\n (click)=\"editItem()\"\n >\n Ajouter\n </button>\n </li>\n </ul>\n </section>\n</section>\n\n<ng-template #tableActionButtons let-index=\"index\">\n <div class=\"d-inline-flex\">\n <button\n [id]=\"buildChildId('-edit-button-' + index)\"\n class=\"btn bg-transparent me-3\"\n (click)=\"editItem(index)\"\n >\n <foehn-icon-edit [title]=\"'Modifier'\"></foehn-icon-edit>\n </button>\n <button\n [id]=\"buildChildId('-delete-button-' + index)\"\n class=\"btn bg-transparent\"\n (click)=\"removeItem(index)\"\n >\n <foehn-icon-trash-alt [title]=\"'Supprimer'\"></foehn-icon-trash-alt>\n </button>\n </div>\n</ng-template>\n", styles: [":host ::ng-deep .bg-transparent.btn .svg-inline--fa{color:var(--vd-neutral-darker)!important}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: FoehnValidationAlertsComponent, selector: "foehn-validation-alerts", inputs: ["component", "shouldErrorsBeLive"] }, { kind: "component", type: FoehnTableComponent, selector: "foehn-table", inputs: ["itemsPerPage", "id", "previousLabel", "nextLabel", "totalElements", "fixedPageCount", "columnsConfiguration", "sort", "list", "trackByFn"], outputs: ["pageChange", "sortChange"] }, { kind: "component", type: FoehnIconEditComponent, selector: "foehn-icon-edit" }, { kind: "component", type: FoehnIconTrashAltComponent, selector: "foehn-icon-trash-alt" }, { kind: "component", type: FoehnErrorPillComponent, selector: "foehn-error-pill", inputs: ["errorPrefix", "incompleteIndicatorOnly"] }, { kind: "pipe", type: SdkDictionaryPipe, name: "fromDictionary" }] }); }
|
|
14888
|
+
], viewQueries: [{ propertyName: "tableActionButtons", first: true, predicate: ["tableActionButtons"], descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<section\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 <label\n class=\"form-label\"\n [attr.for]=\"buildChildId()\"\n *ngIf=\"label && type !== 'hidden'\"\n [ngClass]=\"isLabelSrOnly ? 'visually-hidden' : 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-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 <section *ngIf=\"!showAsTable\">\n <ul class=\"list-unstyled\" aria-describedby=\"sommaire-help-alt\">\n <li\n [id]=\"'list-summary-' + item.trackingIndex\"\n class=\"mt-3 border-bottom\"\n *ngFor=\"\n let item of list;\n let itemIndex = index;\n trackBy: trackFoehnListItem\n \"\n >\n <div class=\"d-flex align-items-baseline flex-wrap\">\n <h4 class=\"mt-0 me-3\">{{ getListItemTitle(item) }}</h4>\n <span class=\"ms-auto\">\n <foehn-error-pill\n [incompleteIndicatorOnly]=\"true\"\n [errorPrefix]=\"name + '[' + itemIndex + ']'\"\n ></foehn-error-pill>\n </span>\n </div>\n <dl class=\"mb-0\">\n <ng-container\n *ngFor=\"\n let itemParam of listItemDescriptions;\n trackBy: trackFoehnListItemDescription\n \"\n >\n <div\n class=\"d-flex flex-wrap item-line\"\n *ngIf=\"showLine(item, itemParam)\"\n >\n <dt class=\"me-1\">\n {{ itemParam.label }}\n </dt>\n <dd class=\"ms-auto text-end\">\n {{ itemParam.getFormattedValue(item) }}\n </dd>\n </div>\n </ng-container>\n </dl>\n <ul class=\"list-inline mb-3 mt-0\">\n <li class=\"list-inline-item\">\n <a\n [id]=\"buildChildId('-edit-link-' + itemIndex)\"\n href=\"#\"\n (click)=\"\n $event.preventDefault(); editItem(itemIndex)\n \"\n >\n Modifier\n </a>\n <span class=\"visually-hidden\">\n {{ getListItemTitle(item) }}\n </span>\n </li>\n <li class=\"list-inline-item\">\n \n <a\n [id]=\"buildChildId('-delete-link-' + itemIndex)\"\n href=\"#\"\n (click)=\"\n $event.preventDefault(); removeItem(itemIndex)\n \"\n >\n Supprimer\n <span class=\"visually-hidden\">\n {{ getListItemTitle(item) }}\n </span>\n </a>\n </li>\n </ul>\n </li>\n </ul>\n </section>\n\n <section *ngIf=\"showAsTable && !!tableConfiguration?.length\">\n <foehn-table\n [id]=\"buildChildName('table')\"\n *ngIf=\"!!listCopyForTable?.length\"\n [list]=\"listCopyForTable\"\n [itemsPerPage]=\"1000000\"\n [columnsConfiguration]=\"tableConfiguration\"\n [sort]=\"tableSort\"\n (sortChange)=\"changeSort($event)\"\n [trackByFn]=\"trackFoehnListItem\"\n ></foehn-table>\n </section>\n\n <section [ngClass]=\"{ 'mt-5': !showAsTable }\">\n <h2 class=\"visually-hidden\">Action</h2>\n <ul class=\"list-inline mb-3\">\n <li class=\"list-inline-item\">\n <button\n [id]=\"buildChildId('-add-button')\"\n type=\"button\"\n class=\"btn btn-primary\"\n (click)=\"editItem()\"\n >\n Ajouter\n </button>\n </li>\n </ul>\n </section>\n</section>\n\n<ng-template #tableActionButtons let-index=\"index\">\n <div class=\"d-inline-flex\">\n <button\n [id]=\"buildChildId('-edit-button-' + index)\"\n type=\"button\"\n class=\"btn bg-transparent me-3\"\n (click)=\"editItem(index)\"\n >\n <foehn-icon-edit [title]=\"'Modifier'\"></foehn-icon-edit>\n </button>\n <button\n [id]=\"buildChildId('-delete-button-' + index)\"\n type=\"button\"\n class=\"btn bg-transparent\"\n (click)=\"removeItem(index)\"\n >\n <foehn-icon-trash-alt [title]=\"'Supprimer'\"></foehn-icon-trash-alt>\n </button>\n </div>\n</ng-template>\n", styles: [":host ::ng-deep .bg-transparent.btn .svg-inline--fa{color:var(--vd-neutral-darker)!important}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: FoehnValidationAlertsComponent, selector: "foehn-validation-alerts", inputs: ["component", "shouldErrorsBeLive"] }, { kind: "component", type: FoehnTableComponent, selector: "foehn-table", inputs: ["itemsPerPage", "id", "title", "titleSrOnly", "previousLabel", "nextLabel", "totalElements", "fixedPageCount", "columnsConfiguration", "sort", "list", "trackByFn"], outputs: ["pageChange", "sortChange"] }, { kind: "component", type: FoehnIconEditComponent, selector: "foehn-icon-edit" }, { kind: "component", type: FoehnIconTrashAltComponent, selector: "foehn-icon-trash-alt" }, { kind: "component", type: FoehnErrorPillComponent, selector: "foehn-error-pill", inputs: ["errorPrefix", "incompleteIndicatorOnly"] }, { kind: "pipe", type: SdkDictionaryPipe, name: "fromDictionary" }] }); }
|
|
14892
14889
|
}
|
|
14893
14890
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: FoehnListSummaryComponent, decorators: [{
|
|
14894
14891
|
type: Component,
|
|
@@ -14898,7 +14895,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImpor
|
|
|
14898
14895
|
useExisting: forwardRef(() => FoehnListSummaryComponent),
|
|
14899
14896
|
multi: true
|
|
14900
14897
|
}
|
|
14901
|
-
], template: "<section\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 <label\n class=\"form-label\"\n [attr.for]=\"buildChildId()\"\n *ngIf=\"label && type !== 'hidden'\"\n [ngClass]=\"isLabelSrOnly ? 'visually-hidden' : 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-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 <section *ngIf=\"!showAsTable\">\n <ul class=\"list-unstyled\" aria-describedby=\"sommaire-help-alt\">\n <li\n [id]=\"'list-summary-' + item.trackingIndex\"\n class=\"mt-3 border-bottom\"\n *ngFor=\"\n let item of list;\n let itemIndex = index;\n trackBy: trackFoehnListItem\n \"\n >\n <div class=\"d-flex align-items-baseline flex-wrap\">\n <h4 class=\"mt-0 me-3\">{{ getListItemTitle(item) }}</h4>\n <span class=\"ms-auto\">\n <foehn-error-pill\n [incompleteIndicatorOnly]=\"true\"\n [errorPrefix]=\"name + '[' + itemIndex + ']'\"\n ></foehn-error-pill>\n </span>\n </div>\n <dl class=\"mb-0\">\n <ng-container\n *ngFor=\"\n let itemParam of listItemDescriptions;\n trackBy: trackFoehnListItemDescription\n \"\n >\n <div\n class=\"d-flex flex-wrap item-line\"\n *ngIf=\"showLine(item, itemParam)\"\n >\n <dt class=\"me-1\">\n {{ itemParam.label }}\n </dt>\n <dd class=\"ms-auto text-end\">\n {{ itemParam.getFormattedValue(item) }}\n </dd>\n </div>\n </ng-container>\n </dl>\n <ul class=\"list-inline mb-3 mt-0\">\n <li class=\"list-inline-item\">\n <a\n [id]=\"buildChildId('-edit-link-' + itemIndex)\"\n href=\"#\"\n (click)=\"\n $event.preventDefault(); editItem(itemIndex)\n \"\n >\n Modifier\n </a>\n <span class=\"visually-hidden\">\n {{ getListItemTitle(item) }}\n </span>\n </li>\n <li class=\"list-inline-item\">\n \n <a\n [id]=\"buildChildId('-delete-link-' + itemIndex)\"\n href=\"#\"\n (click)=\"\n $event.preventDefault(); removeItem(itemIndex)\n \"\n >\n Supprimer\n <span class=\"visually-hidden\">\n {{ getListItemTitle(item) }}\n </span>\n </a>\n </li>\n </ul>\n </li>\n </ul>\n </section>\n\n <section *ngIf=\"showAsTable && !!tableConfiguration?.length\">\n <foehn-table\n [id]=\"buildChildName('table')\"\n *ngIf=\"!!listCopyForTable?.length\"\n [list]=\"listCopyForTable\"\n [itemsPerPage]=\"1000000\"\n [columnsConfiguration]=\"tableConfiguration\"\n [sort]=\"tableSort\"\n (sortChange)=\"changeSort($event)\"\n [trackByFn]=\"trackFoehnListItem\"\n ></foehn-table>\n </section>\n\n <section [ngClass]=\"{ 'mt-5': !showAsTable }\">\n <h2 class=\"visually-hidden\">Action</h2>\n <ul class=\"list-inline mb-3\">\n <li class=\"list-inline-item\">\n <button\n [id]=\"buildChildId('-add-button')\"\n class=\"btn btn-primary\"\n (click)=\"editItem()\"\n >\n Ajouter\n </button>\n </li>\n </ul>\n </section>\n</section>\n\n<ng-template #tableActionButtons let-index=\"index\">\n <div class=\"d-inline-flex\">\n <button\n [id]=\"buildChildId('-edit-button-' + index)\"\n class=\"btn bg-transparent me-3\"\n (click)=\"editItem(index)\"\n >\n <foehn-icon-edit [title]=\"'Modifier'\"></foehn-icon-edit>\n </button>\n <button\n [id]=\"buildChildId('-delete-button-' + index)\"\n class=\"btn bg-transparent\"\n (click)=\"removeItem(index)\"\n >\n <foehn-icon-trash-alt [title]=\"'Supprimer'\"></foehn-icon-trash-alt>\n </button>\n </div>\n</ng-template>\n", styles: [":host ::ng-deep .bg-transparent.btn .svg-inline--fa{color:var(--vd-neutral-darker)!important}\n"] }]
|
|
14898
|
+
], template: "<section\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 <label\n class=\"form-label\"\n [attr.for]=\"buildChildId()\"\n *ngIf=\"label && type !== 'hidden'\"\n [ngClass]=\"isLabelSrOnly ? 'visually-hidden' : 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-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 <section *ngIf=\"!showAsTable\">\n <ul class=\"list-unstyled\" aria-describedby=\"sommaire-help-alt\">\n <li\n [id]=\"'list-summary-' + item.trackingIndex\"\n class=\"mt-3 border-bottom\"\n *ngFor=\"\n let item of list;\n let itemIndex = index;\n trackBy: trackFoehnListItem\n \"\n >\n <div class=\"d-flex align-items-baseline flex-wrap\">\n <h4 class=\"mt-0 me-3\">{{ getListItemTitle(item) }}</h4>\n <span class=\"ms-auto\">\n <foehn-error-pill\n [incompleteIndicatorOnly]=\"true\"\n [errorPrefix]=\"name + '[' + itemIndex + ']'\"\n ></foehn-error-pill>\n </span>\n </div>\n <dl class=\"mb-0\">\n <ng-container\n *ngFor=\"\n let itemParam of listItemDescriptions;\n trackBy: trackFoehnListItemDescription\n \"\n >\n <div\n class=\"d-flex flex-wrap item-line\"\n *ngIf=\"showLine(item, itemParam)\"\n >\n <dt class=\"me-1\">\n {{ itemParam.label }}\n </dt>\n <dd class=\"ms-auto text-end\">\n {{ itemParam.getFormattedValue(item) }}\n </dd>\n </div>\n </ng-container>\n </dl>\n <ul class=\"list-inline mb-3 mt-0\">\n <li class=\"list-inline-item\">\n <a\n [id]=\"buildChildId('-edit-link-' + itemIndex)\"\n href=\"#\"\n (click)=\"\n $event.preventDefault(); editItem(itemIndex)\n \"\n >\n Modifier\n </a>\n <span class=\"visually-hidden\">\n {{ getListItemTitle(item) }}\n </span>\n </li>\n <li class=\"list-inline-item\">\n \n <a\n [id]=\"buildChildId('-delete-link-' + itemIndex)\"\n href=\"#\"\n (click)=\"\n $event.preventDefault(); removeItem(itemIndex)\n \"\n >\n Supprimer\n <span class=\"visually-hidden\">\n {{ getListItemTitle(item) }}\n </span>\n </a>\n </li>\n </ul>\n </li>\n </ul>\n </section>\n\n <section *ngIf=\"showAsTable && !!tableConfiguration?.length\">\n <foehn-table\n [id]=\"buildChildName('table')\"\n *ngIf=\"!!listCopyForTable?.length\"\n [list]=\"listCopyForTable\"\n [itemsPerPage]=\"1000000\"\n [columnsConfiguration]=\"tableConfiguration\"\n [sort]=\"tableSort\"\n (sortChange)=\"changeSort($event)\"\n [trackByFn]=\"trackFoehnListItem\"\n ></foehn-table>\n </section>\n\n <section [ngClass]=\"{ 'mt-5': !showAsTable }\">\n <h2 class=\"visually-hidden\">Action</h2>\n <ul class=\"list-inline mb-3\">\n <li class=\"list-inline-item\">\n <button\n [id]=\"buildChildId('-add-button')\"\n type=\"button\"\n class=\"btn btn-primary\"\n (click)=\"editItem()\"\n >\n Ajouter\n </button>\n </li>\n </ul>\n </section>\n</section>\n\n<ng-template #tableActionButtons let-index=\"index\">\n <div class=\"d-inline-flex\">\n <button\n [id]=\"buildChildId('-edit-button-' + index)\"\n type=\"button\"\n class=\"btn bg-transparent me-3\"\n (click)=\"editItem(index)\"\n >\n <foehn-icon-edit [title]=\"'Modifier'\"></foehn-icon-edit>\n </button>\n <button\n [id]=\"buildChildId('-delete-button-' + index)\"\n type=\"button\"\n class=\"btn bg-transparent\"\n (click)=\"removeItem(index)\"\n >\n <foehn-icon-trash-alt [title]=\"'Supprimer'\"></foehn-icon-trash-alt>\n </button>\n </div>\n</ng-template>\n", styles: [":host ::ng-deep .bg-transparent.btn .svg-inline--fa{color:var(--vd-neutral-darker)!important}\n"] }]
|
|
14902
14899
|
}], ctorParameters: () => [{ type: FoehnConfirmModalService }, { type: i0.NgZone }], propDecorators: { tableActionButtons: [{
|
|
14903
14900
|
type: ViewChild,
|
|
14904
14901
|
args: ['tableActionButtons']
|
|
@@ -15421,7 +15418,7 @@ class FoehnAgendaTimeslotPanelComponent extends FoehnInputComponent {
|
|
|
15421
15418
|
useExisting: forwardRef(() => FoehnAgendaTimeslotPanelComponent),
|
|
15422
15419
|
multi: true
|
|
15423
15420
|
}
|
|
15424
|
-
], viewQueries: [{ propertyName: "timeSlotButtonsElemRef", predicate: ["timeSlotButtonsElemRef"], descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<section\n *ngIf=\"calendar | async as loadedCalendar\"\n class=\"panel panel-default mb-3\"\n>\n <div class=\"panel-heading mt-2 mb-2 py-2 d-flex align-items-baseline\">\n <h3 class=\"h5 ms-3 mt-0 mb-0\">\n {{ capitalCaseFirstLetter(currentWeek.day) }}\n <span class=\"visually-hidden\" *ngIf=\"!!isSelected(timeInputValue)\">\n {{\n 'foehn-agenda-timeslot-panel.selected-time'\n | fromDictionary: { timeSelectedValue: timeInputValue }\n }}\n </span>\n </h3>\n <small *ngIf=\"!!currentWeek.timeSlots.length\" class=\"visually-hidden\">\n {{\n 'foehn-agenda-timeslot-panel.nbr-dispo'\n | fromDictionary\n : {\n nbElements:\n currentWeek.timeSlots.length.toString()\n }\n }}\n </small>\n <small\n *ngIf=\"!currentWeek.timeSlots.length\"\n class=\"fst-italic align-self-end ms-2\"\n >\n {{ 'foehn-agenda-timeslot-panel.no-dispo' | fromDictionary }}\n </small>\n </div>\n\n <div\n *ngIf=\"!!currentWeek.timeSlots.length\"\n class=\"panel-body d-flex flex-wrap ms-auto me-auto ps-3 g-0\"\n (focusin)=\"onTimeFocusin()\"\n (focusout)=\"onTimeFocusout()\"\n role=\"application\"\n >\n <button\n *ngFor=\"let timeSlot of timeSlots; let index = index\"\n class=\"btn me-2 mb-2\"\n #timeSlotButtonsElemRef\n [attr.id]=\"\n cleanIdForQuerySelector(currentWeek.day + '-' + timeSlot)\n \"\n [tabindex]=\"getTimeSlotTabIndex(timeSlot, index)\"\n [class.btn-info]=\"!isSelected(timeSlot)\"\n [class.btn-primary]=\"isSelected(timeSlot)\"\n (click)=\"\n handleUserInput(\n currentWeek.day,\n currentWeek.date,\n timeSlot,\n loadedCalendar\n )\n \"\n [attr.aria-label]=\"\n getButtonTimeSlotAriaLabel(currentWeek.day, timeSlot)\n \"\n >\n {{ timeSlot }}\n </button>\n <div\n class=\"col-12 d-flex justify-content-end mb-1\"\n *ngIf=\"currentWeek.timeSlots.length > nbVisibleElements && canClose\"\n >\n <button\n class=\"btn btn-link show-more\"\n #timeSlotButtonsElemRef\n (click)=\"togglePanel()\"\n [attr.aria-label]=\"\n (isClosed\n ? 'foehn-agenda-timeslot-panel.show-more-sr-only'\n : 'foehn-agenda-timeslot-panel.show-less'\n )\n | fromDictionary\n : {\n nbrElementsHidden:\n timeslotRemaining.toString()\n }\n \"\n >\n {{\n (isClosed\n ? 'foehn.agenda-timeslot-panel.show-more'\n : 'foehn-agenda-timeslot-panel.show-less'\n )\n | fromDictionary\n : {\n nbrElementsHidden:\n timeslotRemaining.toString()\n }\n }}\n </button>\n </div>\n </div>\n</section>\n", styles: [".panel-default{border:1px solid #dfdfdf}.panel-heading{position:sticky;background-color:#fff;width:100%;top:0}.panel-heading small{font-size:.9rem}.panel-heading:focus{outline:0;box-shadow:inset 0 1px 1px #00000013,0 0 0 .2rem var(--vd-focus)}.panel-body .btn-info{background-color:var(--vd-neutral-light);border-color:var(--vd-neutral-light)}.panel-body .btn-info:hover{background-color:var(--vd-neutral-lighter);border-color:var(--vd-neutral-lighter)}.panel-body .btn-info,.panel-body .btn-primary{padding-right:.4rem;padding-left:.4rem}.panel-body .btn-info:hover,.panel-body .btn-primary:hover{box-shadow:0 0 0 .2rem var(--vd-focus)}.panel-body .btn-link{padding:0}.show-more{cursor:pointer;font-size:.9rem}\n"], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }, { kind: "pipe", type: SdkDictionaryPipe, name: "fromDictionary" }] }); }
|
|
15421
|
+
], viewQueries: [{ propertyName: "timeSlotButtonsElemRef", predicate: ["timeSlotButtonsElemRef"], descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<section\n *ngIf=\"calendar | async as loadedCalendar\"\n class=\"panel panel-default mb-3\"\n>\n <div class=\"panel-heading mt-2 mb-2 py-2 d-flex align-items-baseline\">\n <h3 class=\"h5 ms-3 mt-0 mb-0\">\n {{ capitalCaseFirstLetter(currentWeek.day) }}\n <span class=\"visually-hidden\" *ngIf=\"!!isSelected(timeInputValue)\">\n {{\n 'foehn-agenda-timeslot-panel.selected-time'\n | fromDictionary: { timeSelectedValue: timeInputValue }\n }}\n </span>\n </h3>\n <small *ngIf=\"!!currentWeek.timeSlots.length\" class=\"visually-hidden\">\n {{\n 'foehn-agenda-timeslot-panel.nbr-dispo'\n | fromDictionary\n : {\n nbElements:\n currentWeek.timeSlots.length.toString()\n }\n }}\n </small>\n <small\n *ngIf=\"!currentWeek.timeSlots.length\"\n class=\"fst-italic align-self-end ms-2\"\n >\n {{ 'foehn-agenda-timeslot-panel.no-dispo' | fromDictionary }}\n </small>\n </div>\n\n <div\n *ngIf=\"!!currentWeek.timeSlots.length\"\n class=\"panel-body d-flex flex-wrap ms-auto me-auto ps-3 g-0\"\n (focusin)=\"onTimeFocusin()\"\n (focusout)=\"onTimeFocusout()\"\n role=\"application\"\n >\n <button\n *ngFor=\"let timeSlot of timeSlots; let index = index\"\n type=\"button\"\n class=\"btn me-2 mb-2\"\n #timeSlotButtonsElemRef\n [attr.id]=\"\n cleanIdForQuerySelector(currentWeek.day + '-' + timeSlot)\n \"\n [tabindex]=\"getTimeSlotTabIndex(timeSlot, index)\"\n [class.btn-info]=\"!isSelected(timeSlot)\"\n [class.btn-primary]=\"isSelected(timeSlot)\"\n (click)=\"\n handleUserInput(\n currentWeek.day,\n currentWeek.date,\n timeSlot,\n loadedCalendar\n )\n \"\n [attr.aria-label]=\"\n getButtonTimeSlotAriaLabel(currentWeek.day, timeSlot)\n \"\n >\n {{ timeSlot }}\n </button>\n <div\n class=\"col-12 d-flex justify-content-end mb-1\"\n *ngIf=\"currentWeek.timeSlots.length > nbVisibleElements && canClose\"\n >\n <button\n type=\"button\"\n class=\"btn btn-link show-more\"\n #timeSlotButtonsElemRef\n (click)=\"togglePanel()\"\n [attr.aria-label]=\"\n (isClosed\n ? 'foehn-agenda-timeslot-panel.show-more-sr-only'\n : 'foehn-agenda-timeslot-panel.show-less'\n )\n | fromDictionary\n : {\n nbrElementsHidden:\n timeslotRemaining.toString()\n }\n \"\n >\n {{\n (isClosed\n ? 'foehn.agenda-timeslot-panel.show-more'\n : 'foehn-agenda-timeslot-panel.show-less'\n )\n | fromDictionary\n : {\n nbrElementsHidden:\n timeslotRemaining.toString()\n }\n }}\n </button>\n </div>\n </div>\n</section>\n", styles: [".panel-default{border:1px solid #dfdfdf}.panel-heading{position:sticky;background-color:#fff;width:100%;top:0}.panel-heading small{font-size:.9rem}.panel-heading:focus{outline:0;box-shadow:inset 0 1px 1px #00000013,0 0 0 .2rem var(--vd-focus)}.panel-body .btn-info{background-color:var(--vd-neutral-light);border-color:var(--vd-neutral-light)}.panel-body .btn-info:hover{background-color:var(--vd-neutral-lighter);border-color:var(--vd-neutral-lighter)}.panel-body .btn-info,.panel-body .btn-primary{padding-right:.4rem;padding-left:.4rem}.panel-body .btn-info:hover,.panel-body .btn-primary:hover{box-shadow:0 0 0 .2rem var(--vd-focus)}.panel-body .btn-link{padding:0}.show-more{cursor:pointer;font-size:.9rem}\n"], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }, { kind: "pipe", type: SdkDictionaryPipe, name: "fromDictionary" }] }); }
|
|
15425
15422
|
}
|
|
15426
15423
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: FoehnAgendaTimeslotPanelComponent, decorators: [{
|
|
15427
15424
|
type: Component,
|
|
@@ -15431,7 +15428,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImpor
|
|
|
15431
15428
|
useExisting: forwardRef(() => FoehnAgendaTimeslotPanelComponent),
|
|
15432
15429
|
multi: true
|
|
15433
15430
|
}
|
|
15434
|
-
], template: "<section\n *ngIf=\"calendar | async as loadedCalendar\"\n class=\"panel panel-default mb-3\"\n>\n <div class=\"panel-heading mt-2 mb-2 py-2 d-flex align-items-baseline\">\n <h3 class=\"h5 ms-3 mt-0 mb-0\">\n {{ capitalCaseFirstLetter(currentWeek.day) }}\n <span class=\"visually-hidden\" *ngIf=\"!!isSelected(timeInputValue)\">\n {{\n 'foehn-agenda-timeslot-panel.selected-time'\n | fromDictionary: { timeSelectedValue: timeInputValue }\n }}\n </span>\n </h3>\n <small *ngIf=\"!!currentWeek.timeSlots.length\" class=\"visually-hidden\">\n {{\n 'foehn-agenda-timeslot-panel.nbr-dispo'\n | fromDictionary\n : {\n nbElements:\n currentWeek.timeSlots.length.toString()\n }\n }}\n </small>\n <small\n *ngIf=\"!currentWeek.timeSlots.length\"\n class=\"fst-italic align-self-end ms-2\"\n >\n {{ 'foehn-agenda-timeslot-panel.no-dispo' | fromDictionary }}\n </small>\n </div>\n\n <div\n *ngIf=\"!!currentWeek.timeSlots.length\"\n class=\"panel-body d-flex flex-wrap ms-auto me-auto ps-3 g-0\"\n (focusin)=\"onTimeFocusin()\"\n (focusout)=\"onTimeFocusout()\"\n role=\"application\"\n >\n <button\n *ngFor=\"let timeSlot of timeSlots; let index = index\"\n class=\"btn me-2 mb-2\"\n #timeSlotButtonsElemRef\n [attr.id]=\"\n cleanIdForQuerySelector(currentWeek.day + '-' + timeSlot)\n \"\n [tabindex]=\"getTimeSlotTabIndex(timeSlot, index)\"\n [class.btn-info]=\"!isSelected(timeSlot)\"\n [class.btn-primary]=\"isSelected(timeSlot)\"\n (click)=\"\n handleUserInput(\n currentWeek.day,\n currentWeek.date,\n timeSlot,\n loadedCalendar\n )\n \"\n [attr.aria-label]=\"\n getButtonTimeSlotAriaLabel(currentWeek.day, timeSlot)\n \"\n >\n {{ timeSlot }}\n </button>\n <div\n class=\"col-12 d-flex justify-content-end mb-1\"\n *ngIf=\"currentWeek.timeSlots.length > nbVisibleElements && canClose\"\n >\n <button\n class=\"btn btn-link show-more\"\n #timeSlotButtonsElemRef\n (click)=\"togglePanel()\"\n [attr.aria-label]=\"\n (isClosed\n ? 'foehn-agenda-timeslot-panel.show-more-sr-only'\n : 'foehn-agenda-timeslot-panel.show-less'\n )\n | fromDictionary\n : {\n nbrElementsHidden:\n timeslotRemaining.toString()\n }\n \"\n >\n {{\n (isClosed\n ? 'foehn.agenda-timeslot-panel.show-more'\n : 'foehn-agenda-timeslot-panel.show-less'\n )\n | fromDictionary\n : {\n nbrElementsHidden:\n timeslotRemaining.toString()\n }\n }}\n </button>\n </div>\n </div>\n</section>\n", styles: [".panel-default{border:1px solid #dfdfdf}.panel-heading{position:sticky;background-color:#fff;width:100%;top:0}.panel-heading small{font-size:.9rem}.panel-heading:focus{outline:0;box-shadow:inset 0 1px 1px #00000013,0 0 0 .2rem var(--vd-focus)}.panel-body .btn-info{background-color:var(--vd-neutral-light);border-color:var(--vd-neutral-light)}.panel-body .btn-info:hover{background-color:var(--vd-neutral-lighter);border-color:var(--vd-neutral-lighter)}.panel-body .btn-info,.panel-body .btn-primary{padding-right:.4rem;padding-left:.4rem}.panel-body .btn-info:hover,.panel-body .btn-primary:hover{box-shadow:0 0 0 .2rem var(--vd-focus)}.panel-body .btn-link{padding:0}.show-more{cursor:pointer;font-size:.9rem}\n"] }]
|
|
15431
|
+
], template: "<section\n *ngIf=\"calendar | async as loadedCalendar\"\n class=\"panel panel-default mb-3\"\n>\n <div class=\"panel-heading mt-2 mb-2 py-2 d-flex align-items-baseline\">\n <h3 class=\"h5 ms-3 mt-0 mb-0\">\n {{ capitalCaseFirstLetter(currentWeek.day) }}\n <span class=\"visually-hidden\" *ngIf=\"!!isSelected(timeInputValue)\">\n {{\n 'foehn-agenda-timeslot-panel.selected-time'\n | fromDictionary: { timeSelectedValue: timeInputValue }\n }}\n </span>\n </h3>\n <small *ngIf=\"!!currentWeek.timeSlots.length\" class=\"visually-hidden\">\n {{\n 'foehn-agenda-timeslot-panel.nbr-dispo'\n | fromDictionary\n : {\n nbElements:\n currentWeek.timeSlots.length.toString()\n }\n }}\n </small>\n <small\n *ngIf=\"!currentWeek.timeSlots.length\"\n class=\"fst-italic align-self-end ms-2\"\n >\n {{ 'foehn-agenda-timeslot-panel.no-dispo' | fromDictionary }}\n </small>\n </div>\n\n <div\n *ngIf=\"!!currentWeek.timeSlots.length\"\n class=\"panel-body d-flex flex-wrap ms-auto me-auto ps-3 g-0\"\n (focusin)=\"onTimeFocusin()\"\n (focusout)=\"onTimeFocusout()\"\n role=\"application\"\n >\n <button\n *ngFor=\"let timeSlot of timeSlots; let index = index\"\n type=\"button\"\n class=\"btn me-2 mb-2\"\n #timeSlotButtonsElemRef\n [attr.id]=\"\n cleanIdForQuerySelector(currentWeek.day + '-' + timeSlot)\n \"\n [tabindex]=\"getTimeSlotTabIndex(timeSlot, index)\"\n [class.btn-info]=\"!isSelected(timeSlot)\"\n [class.btn-primary]=\"isSelected(timeSlot)\"\n (click)=\"\n handleUserInput(\n currentWeek.day,\n currentWeek.date,\n timeSlot,\n loadedCalendar\n )\n \"\n [attr.aria-label]=\"\n getButtonTimeSlotAriaLabel(currentWeek.day, timeSlot)\n \"\n >\n {{ timeSlot }}\n </button>\n <div\n class=\"col-12 d-flex justify-content-end mb-1\"\n *ngIf=\"currentWeek.timeSlots.length > nbVisibleElements && canClose\"\n >\n <button\n type=\"button\"\n class=\"btn btn-link show-more\"\n #timeSlotButtonsElemRef\n (click)=\"togglePanel()\"\n [attr.aria-label]=\"\n (isClosed\n ? 'foehn-agenda-timeslot-panel.show-more-sr-only'\n : 'foehn-agenda-timeslot-panel.show-less'\n )\n | fromDictionary\n : {\n nbrElementsHidden:\n timeslotRemaining.toString()\n }\n \"\n >\n {{\n (isClosed\n ? 'foehn.agenda-timeslot-panel.show-more'\n : 'foehn-agenda-timeslot-panel.show-less'\n )\n | fromDictionary\n : {\n nbrElementsHidden:\n timeslotRemaining.toString()\n }\n }}\n </button>\n </div>\n </div>\n</section>\n", styles: [".panel-default{border:1px solid #dfdfdf}.panel-heading{position:sticky;background-color:#fff;width:100%;top:0}.panel-heading small{font-size:.9rem}.panel-heading:focus{outline:0;box-shadow:inset 0 1px 1px #00000013,0 0 0 .2rem var(--vd-focus)}.panel-body .btn-info{background-color:var(--vd-neutral-light);border-color:var(--vd-neutral-light)}.panel-body .btn-info:hover{background-color:var(--vd-neutral-lighter);border-color:var(--vd-neutral-lighter)}.panel-body .btn-info,.panel-body .btn-primary{padding-right:.4rem;padding-left:.4rem}.panel-body .btn-info:hover,.panel-body .btn-primary:hover{box-shadow:0 0 0 .2rem var(--vd-focus)}.panel-body .btn-link{padding:0}.show-more{cursor:pointer;font-size:.9rem}\n"] }]
|
|
15435
15432
|
}], ctorParameters: () => [{ type: SdkDictionaryService }], propDecorators: { timeSlotButtonsElemRef: [{
|
|
15436
15433
|
type: ViewChildren,
|
|
15437
15434
|
args: ['timeSlotButtonsElemRef']
|