@dsivd/prestations-ng 19.0.0-beta.4 → 19.0.0-beta.6
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/ANGULAR_SIGNALS.md +3 -9
- package/CHANGELOG.md +16 -0
- package/CONTRIBUTING.md +4 -13
- package/README.md +1 -0
- package/UPGRADING_V19.md +1220 -0
- package/dsivd-prestations-ng-19.0.0-beta.6.tgz +0 -0
- package/fesm2022/dsivd-prestations-ng.mjs +7 -6
- package/fesm2022/dsivd-prestations-ng.mjs.map +1 -1
- package/package.json +1 -1
- package/types/dsivd-prestations-ng.d.ts +1 -1
- package/dsivd-prestations-ng-19.0.0-beta.4.tgz +0 -0
|
Binary file
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { Injectable, inject, model, input, viewChildren, viewChild, forwardRef, output, computed, linkedSignal, DestroyRef, effect, Directive, ChangeDetectorRef, Pipe, Component, contentChildren, InjectionToken, ElementRef, makeEnvironmentProviders, ErrorHandler, provideAppInitializer, importProvidersFrom,
|
|
2
|
+
import { Injectable, inject, model, input, viewChildren, viewChild, forwardRef, output, computed, linkedSignal, DestroyRef, effect, Directive, ChangeDetectorRef, Pipe, Component, contentChildren, InjectionToken, signal, ElementRef, makeEnvironmentProviders, ErrorHandler, provideAppInitializer, importProvidersFrom, NgZone, untracked, contentChild, TemplateRef } from '@angular/core';
|
|
3
3
|
import { takeUntilDestroyed, toObservable, outputToObservable } from '@angular/core/rxjs-interop';
|
|
4
4
|
import { Router, ActivatedRoute, RouterLink, NavigationStart, NavigationEnd } from '@angular/router';
|
|
5
5
|
import { Subject, BehaviorSubject, combineLatest, of, filter as filter$1, tap as tap$1, throwError, switchMap as switchMap$1, forkJoin, from, concatMap, toArray, EMPTY, startWith, merge, interval, withLatestFrom, map as map$1, concat } from 'rxjs';
|
|
@@ -3714,6 +3714,7 @@ class FoehnFeedbackNotificationComponent {
|
|
|
3714
3714
|
this.goodIconName = faFaceSmile;
|
|
3715
3715
|
this.mediumIconName = faFaceMeh;
|
|
3716
3716
|
this.badIconName = faFaceFrown;
|
|
3717
|
+
this.expanded = signal(false, ...(ngDevMode ? [{ debugName: "expanded" }] : /* istanbul ignore next */ []));
|
|
3717
3718
|
this.applicationInfoService = inject(ApplicationInfoService);
|
|
3718
3719
|
this.sessionInfo = inject(SessionInfo);
|
|
3719
3720
|
this.gesdemHandlerService = inject(GesdemHandlerService);
|
|
@@ -3739,7 +3740,7 @@ class FoehnFeedbackNotificationComponent {
|
|
|
3739
3740
|
}), map(([, etapeInfo, , meta]) => {
|
|
3740
3741
|
const visible = etapeInfo?.userFeedbackRequested;
|
|
3741
3742
|
const needFeedback = !localStorage.getItem(`${FEEDBACK_USAGERS_LOCAL_STORAGE_PREFIX}${this.getFullReference(meta)}`);
|
|
3742
|
-
this.expanded
|
|
3743
|
+
this.expanded.set(visible);
|
|
3743
3744
|
return needFeedback && visible;
|
|
3744
3745
|
}));
|
|
3745
3746
|
}
|
|
@@ -3795,7 +3796,7 @@ class FoehnFeedbackNotificationComponent {
|
|
|
3795
3796
|
return `${meta.reference}-${meta.currentAction}`;
|
|
3796
3797
|
}
|
|
3797
3798
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.17", ngImport: i0, type: FoehnFeedbackNotificationComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
3798
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.17", type: FoehnFeedbackNotificationComponent, isStandalone: true, selector: "foehn-feedback-notification", host: { listeners: { "window:scroll": "onWindowScroll()" } }, ngImport: i0, template: "<div\n id=\"feedback-container\"\n [class.expanded]=\"expanded\"\n [class.reduced]=\"!expanded\"\n [class.offset-bottom]=\"isScrollEnded\"\n [class.visible]=\"visible | async\"\n>\n <button\n type=\"button\"\n class=\"feedback-chevron btn btn-link\"\n (click)=\"expanded
|
|
3799
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.17", type: FoehnFeedbackNotificationComponent, isStandalone: true, selector: "foehn-feedback-notification", host: { listeners: { "window:scroll": "onWindowScroll()" } }, ngImport: i0, template: "<div\n id=\"feedback-container\"\n [class.expanded]=\"expanded()\"\n [class.reduced]=\"!expanded()\"\n [class.offset-bottom]=\"isScrollEnded\"\n [class.visible]=\"visible | async\"\n>\n <button\n type=\"button\"\n class=\"feedback-chevron btn btn-link\"\n (click)=\"expanded.set(!expanded())\"\n [attr.aria-expanded]=\"expanded()\"\n [attr.aria-controls]=\"'feedback-form'\"\n >\n @if (expanded()) {\n <foehn-icon-chevron-down\n [title]=\"\n 'foehn-feedback-notification.chevron-down' | fromDictionary\n \"\n />\n } @else {\n <foehn-icon-chevron-up\n [title]=\"\n 'foehn-feedback-notification.chevron-up' | fromDictionary\n \"\n />\n }\n </button>\n <div id=\"feedback-title\" class=\"h4\">\n @if (expanded()) {\n {{ 'foehn-feedback-notification.title-expanded' | fromDictionary }}\n } @else {\n {{ 'foehn-feedback-notification.title-reduced' | fromDictionary }}\n }\n </div>\n <div id=\"feedback-form\" [class.visible]=\"expanded()\">\n <p class=\"mb-0\">\n {{\n 'foehn-feedback-notification.question.Q_NOTIFICATION_FACILE_A_UTILISER'\n | fromDictionary\n }}\n </p>\n <ul class=\"vd-list-icons mb-0 d-flex justify-content-center\">\n <li>\n <a\n [href]=\"goodUrl | async\"\n target=\"_blank\"\n rel=\"opener\"\n class=\"smiley-link text-success\"\n (click)=\"hideNotification()\"\n >\n <fa-icon\n aria-hidden=\"true\"\n [title]=\"\n 'foehn-feedback-notification.icon.good'\n | fromDictionary\n \"\n [icon]=\"goodIconName\"\n />\n <span class=\"visually-hidden\">\n {{\n 'foehn-feedback-notification.icon.good'\n | fromDictionary\n }}\n </span>\n </a>\n </li>\n <li class=\"mx-2\">\n <a\n [href]=\"mediumUrl | async\"\n target=\"_blank\"\n rel=\"opener\"\n class=\"smiley-link text-warning\"\n (click)=\"hideNotification()\"\n >\n <fa-icon\n aria-hidden=\"true\"\n [title]=\"\n 'foehn-feedback-notification.icon.medium'\n | fromDictionary\n \"\n [icon]=\"mediumIconName\"\n />\n <span class=\"visually-hidden\">\n {{\n 'foehn-feedback-notification.icon.medium'\n | fromDictionary\n }}\n </span>\n </a>\n </li>\n <li>\n <a\n [href]=\"badUrl | async\"\n target=\"_blank\"\n rel=\"opener\"\n class=\"smiley-link text-danger\"\n (click)=\"hideNotification()\"\n >\n <fa-icon\n aria-hidden=\"true\"\n [title]=\"\n 'foehn-feedback-notification.icon.bad'\n | fromDictionary\n \"\n [icon]=\"badIconName\"\n />\n <span class=\"visually-hidden\">\n {{\n 'foehn-feedback-notification.icon.bad'\n | fromDictionary\n }}\n </span>\n </a>\n </li>\n </ul>\n </div>\n</div>\n", styles: ["#feedback-container{display:none;position:fixed;bottom:0;right:0;color:#fff;background-color:var(--vd-neutral-dark);border:1px white solid;border-bottom:0;z-index:99999;transition:all .3s}#feedback-container.visible{display:block;animation:popout 1s}#feedback-container.offset-bottom{bottom:23px}#feedback-container.expanded{padding:15px;width:420px;height:175px;background-color:var(--vd-neutral-dark);border-top-left-radius:20px;border-top-right-radius:20px}#feedback-container.expanded #feedback-title{margin-top:0;text-align:center}#feedback-container.reduced{width:230px;height:35px;text-align:left;padding-left:12px}#feedback-container.reduced #feedback-title{margin-top:5px}#feedback-container .feedback-chevron{position:absolute;top:0;right:0}#feedback-container.expanded .feedback-chevron{border-top-right-radius:50%}#feedback-container #feedback-form{display:none}#feedback-container #feedback-form.visible{display:block;animation:fadeIn .5s}#feedback-container #feedback-form a{border:solid 1px var(--vd-neutral-dark);border-radius:50%;padding-left:11px;padding-right:11px}#feedback-container #feedback-form a:focus{background-color:var(--vd-neutral-dark)}#feedback-container #feedback-form .smiley-link{font-size:60px}:host ::ng-deep #feedback-container #feedback-form svg{transition:all .2s}:host ::ng-deep #feedback-container #feedback-form svg:hover,:host ::ng-deep #feedback-container #feedback-form svg:focus{transform:scale(1.3)}@keyframes fadeIn{0%{opacity:0;transform:scale(0)}to{opacity:1;transform:scale(1)}}@media(min-width:577px){@keyframes popout{0%{bottom:-175px}to{bottom:0}}}@media(max-width:576px){#feedback-container{transform:scale(.8)}#feedback-container.expanded{right:-42px;bottom:-20px}#feedback-container.reduced{right:-29px;bottom:-3px}#feedback-container.expanded.offset-bottom{bottom:6px}#feedback-container.reduced.offset-bottom{bottom:20px}@keyframes popout{0%{bottom:-140px}to{bottom:-20px}}}\n"], dependencies: [{ kind: "component", type: FoehnIconChevronDownComponent, selector: "foehn-icon-chevron-down" }, { kind: "component", type: FoehnIconChevronUpComponent, selector: "foehn-icon-chevron-up" }, { kind: "component", type: FaIconComponent, selector: "fa-icon", inputs: ["icon", "title", "animation", "mask", "flip", "size", "pull", "border", "inverse", "symbol", "rotate", "fixedWidth", "transform", "a11yRole"], outputs: ["iconChange", "titleChange", "animationChange", "maskChange", "flipChange", "sizeChange", "pullChange", "borderChange", "inverseChange", "symbolChange", "rotateChange", "fixedWidthChange", "transformChange", "a11yRoleChange"] }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: SdkDictionaryPipe, name: "fromDictionary" }] }); }
|
|
3799
3800
|
}
|
|
3800
3801
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.17", ngImport: i0, type: FoehnFeedbackNotificationComponent, decorators: [{
|
|
3801
3802
|
type: Component,
|
|
@@ -3807,7 +3808,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.17", ngImpo
|
|
|
3807
3808
|
SdkDictionaryPipe,
|
|
3808
3809
|
], host: {
|
|
3809
3810
|
'(window:scroll)': 'onWindowScroll()',
|
|
3810
|
-
}, template: "<div\n id=\"feedback-container\"\n [class.expanded]=\"expanded\"\n [class.reduced]=\"!expanded\"\n [class.offset-bottom]=\"isScrollEnded\"\n [class.visible]=\"visible | async\"\n>\n <button\n type=\"button\"\n class=\"feedback-chevron btn btn-link\"\n (click)=\"expanded
|
|
3811
|
+
}, template: "<div\n id=\"feedback-container\"\n [class.expanded]=\"expanded()\"\n [class.reduced]=\"!expanded()\"\n [class.offset-bottom]=\"isScrollEnded\"\n [class.visible]=\"visible | async\"\n>\n <button\n type=\"button\"\n class=\"feedback-chevron btn btn-link\"\n (click)=\"expanded.set(!expanded())\"\n [attr.aria-expanded]=\"expanded()\"\n [attr.aria-controls]=\"'feedback-form'\"\n >\n @if (expanded()) {\n <foehn-icon-chevron-down\n [title]=\"\n 'foehn-feedback-notification.chevron-down' | fromDictionary\n \"\n />\n } @else {\n <foehn-icon-chevron-up\n [title]=\"\n 'foehn-feedback-notification.chevron-up' | fromDictionary\n \"\n />\n }\n </button>\n <div id=\"feedback-title\" class=\"h4\">\n @if (expanded()) {\n {{ 'foehn-feedback-notification.title-expanded' | fromDictionary }}\n } @else {\n {{ 'foehn-feedback-notification.title-reduced' | fromDictionary }}\n }\n </div>\n <div id=\"feedback-form\" [class.visible]=\"expanded()\">\n <p class=\"mb-0\">\n {{\n 'foehn-feedback-notification.question.Q_NOTIFICATION_FACILE_A_UTILISER'\n | fromDictionary\n }}\n </p>\n <ul class=\"vd-list-icons mb-0 d-flex justify-content-center\">\n <li>\n <a\n [href]=\"goodUrl | async\"\n target=\"_blank\"\n rel=\"opener\"\n class=\"smiley-link text-success\"\n (click)=\"hideNotification()\"\n >\n <fa-icon\n aria-hidden=\"true\"\n [title]=\"\n 'foehn-feedback-notification.icon.good'\n | fromDictionary\n \"\n [icon]=\"goodIconName\"\n />\n <span class=\"visually-hidden\">\n {{\n 'foehn-feedback-notification.icon.good'\n | fromDictionary\n }}\n </span>\n </a>\n </li>\n <li class=\"mx-2\">\n <a\n [href]=\"mediumUrl | async\"\n target=\"_blank\"\n rel=\"opener\"\n class=\"smiley-link text-warning\"\n (click)=\"hideNotification()\"\n >\n <fa-icon\n aria-hidden=\"true\"\n [title]=\"\n 'foehn-feedback-notification.icon.medium'\n | fromDictionary\n \"\n [icon]=\"mediumIconName\"\n />\n <span class=\"visually-hidden\">\n {{\n 'foehn-feedback-notification.icon.medium'\n | fromDictionary\n }}\n </span>\n </a>\n </li>\n <li>\n <a\n [href]=\"badUrl | async\"\n target=\"_blank\"\n rel=\"opener\"\n class=\"smiley-link text-danger\"\n (click)=\"hideNotification()\"\n >\n <fa-icon\n aria-hidden=\"true\"\n [title]=\"\n 'foehn-feedback-notification.icon.bad'\n | fromDictionary\n \"\n [icon]=\"badIconName\"\n />\n <span class=\"visually-hidden\">\n {{\n 'foehn-feedback-notification.icon.bad'\n | fromDictionary\n }}\n </span>\n </a>\n </li>\n </ul>\n </div>\n</div>\n", styles: ["#feedback-container{display:none;position:fixed;bottom:0;right:0;color:#fff;background-color:var(--vd-neutral-dark);border:1px white solid;border-bottom:0;z-index:99999;transition:all .3s}#feedback-container.visible{display:block;animation:popout 1s}#feedback-container.offset-bottom{bottom:23px}#feedback-container.expanded{padding:15px;width:420px;height:175px;background-color:var(--vd-neutral-dark);border-top-left-radius:20px;border-top-right-radius:20px}#feedback-container.expanded #feedback-title{margin-top:0;text-align:center}#feedback-container.reduced{width:230px;height:35px;text-align:left;padding-left:12px}#feedback-container.reduced #feedback-title{margin-top:5px}#feedback-container .feedback-chevron{position:absolute;top:0;right:0}#feedback-container.expanded .feedback-chevron{border-top-right-radius:50%}#feedback-container #feedback-form{display:none}#feedback-container #feedback-form.visible{display:block;animation:fadeIn .5s}#feedback-container #feedback-form a{border:solid 1px var(--vd-neutral-dark);border-radius:50%;padding-left:11px;padding-right:11px}#feedback-container #feedback-form a:focus{background-color:var(--vd-neutral-dark)}#feedback-container #feedback-form .smiley-link{font-size:60px}:host ::ng-deep #feedback-container #feedback-form svg{transition:all .2s}:host ::ng-deep #feedback-container #feedback-form svg:hover,:host ::ng-deep #feedback-container #feedback-form svg:focus{transform:scale(1.3)}@keyframes fadeIn{0%{opacity:0;transform:scale(0)}to{opacity:1;transform:scale(1)}}@media(min-width:577px){@keyframes popout{0%{bottom:-175px}to{bottom:0}}}@media(max-width:576px){#feedback-container{transform:scale(.8)}#feedback-container.expanded{right:-42px;bottom:-20px}#feedback-container.reduced{right:-29px;bottom:-3px}#feedback-container.expanded.offset-bottom{bottom:6px}#feedback-container.reduced.offset-bottom{bottom:20px}@keyframes popout{0%{bottom:-140px}to{bottom:-20px}}}\n"] }]
|
|
3811
3812
|
}], ctorParameters: () => [] });
|
|
3812
3813
|
|
|
3813
3814
|
class FoehnIconInfoCircleComponent extends AbstractIconComponent {
|
|
@@ -7464,11 +7465,11 @@ class FoehnPageModalComponent {
|
|
|
7464
7465
|
this.wrongPublicModalVisible = status;
|
|
7465
7466
|
}
|
|
7466
7467
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.17", ngImport: i0, type: FoehnPageModalComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
7467
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.17", type: FoehnPageModalComponent, isStandalone: true, selector: "foehn-page-modal", ngImport: i0, template: "<foehn-modal\n modalHeaderText=\"Acc\u00E8s non autoris\u00E9\"\n modalSize=\"modal-lg\"\n [isModalVisible]=\"wrongPublicModalVisible\"\n (isModalVisibleChange)=\"updateVisibilityStatus($event)\"\n [closeable]=\"false\"\n>\n <div class=\"modal-body\">\n Vous \u00EAtes connect\u00E9 pour le compte d\u2019un usager de type\n {{ getUserCategory() }}, or cette prestation est destin\u00E9e aux usagers de\n type :\n <ul>\n @for (pubCible of formattedPublicsCibles; track
|
|
7468
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.17", type: FoehnPageModalComponent, isStandalone: true, selector: "foehn-page-modal", ngImport: i0, template: "<foehn-modal\n modalHeaderText=\"Acc\u00E8s non autoris\u00E9\"\n modalSize=\"modal-lg\"\n [isModalVisible]=\"wrongPublicModalVisible\"\n (isModalVisibleChange)=\"updateVisibilityStatus($event)\"\n [closeable]=\"false\"\n>\n <div class=\"modal-body\">\n Vous \u00EAtes connect\u00E9 pour le compte d\u2019un usager de type\n {{ getUserCategory() }}, or cette prestation est destin\u00E9e aux usagers de\n type :\n <ul>\n @for (pubCible of formattedPublicsCibles; track pubCible) {\n <li>\n {{ pubCible }}\n </li>\n }\n </ul>\n </div>\n <div class=\"modal-body\">\n Vous pouvez choisir de vous reconnecter et de continuer, ou bien\n d'abandonner.\n </div>\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 <a\n class=\"btn btn-primary w-100\"\n [href]=\"getFullLoginUrl() | async\"\n >\n Se reconnecter\n </a>\n </div>\n <div class=\"ms-md-0 me-md-2 mb-2 mt-2\">\n <a class=\"btn btn-primary w-100\" [href]=\"getAbortUrl() | async\">\n Abandonner\n </a>\n </div>\n </div>\n </div>\n</foehn-modal>\n", dependencies: [{ kind: "component", type: FoehnModalComponent, selector: "foehn-modal", inputs: ["isModalVisible", "id", "modalBodyText", "modalHeaderText", "closeable", "draggable", "hideable", "modalTriggerHtmlElement", "name", "modalSize"], outputs: ["isModalVisibleChange"] }, { kind: "pipe", type: AsyncPipe, name: "async" }] }); }
|
|
7468
7469
|
}
|
|
7469
7470
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.17", ngImport: i0, type: FoehnPageModalComponent, decorators: [{
|
|
7470
7471
|
type: Component,
|
|
7471
|
-
args: [{ selector: 'foehn-page-modal', imports: [FoehnModalComponent, AsyncPipe], template: "<foehn-modal\n modalHeaderText=\"Acc\u00E8s non autoris\u00E9\"\n modalSize=\"modal-lg\"\n [isModalVisible]=\"wrongPublicModalVisible\"\n (isModalVisibleChange)=\"updateVisibilityStatus($event)\"\n [closeable]=\"false\"\n>\n <div class=\"modal-body\">\n Vous \u00EAtes connect\u00E9 pour le compte d\u2019un usager de type\n {{ getUserCategory() }}, or cette prestation est destin\u00E9e aux usagers de\n type :\n <ul>\n @for (pubCible of formattedPublicsCibles; track
|
|
7472
|
+
args: [{ selector: 'foehn-page-modal', imports: [FoehnModalComponent, AsyncPipe], template: "<foehn-modal\n modalHeaderText=\"Acc\u00E8s non autoris\u00E9\"\n modalSize=\"modal-lg\"\n [isModalVisible]=\"wrongPublicModalVisible\"\n (isModalVisibleChange)=\"updateVisibilityStatus($event)\"\n [closeable]=\"false\"\n>\n <div class=\"modal-body\">\n Vous \u00EAtes connect\u00E9 pour le compte d\u2019un usager de type\n {{ getUserCategory() }}, or cette prestation est destin\u00E9e aux usagers de\n type :\n <ul>\n @for (pubCible of formattedPublicsCibles; track pubCible) {\n <li>\n {{ pubCible }}\n </li>\n }\n </ul>\n </div>\n <div class=\"modal-body\">\n Vous pouvez choisir de vous reconnecter et de continuer, ou bien\n d'abandonner.\n </div>\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 <a\n class=\"btn btn-primary w-100\"\n [href]=\"getFullLoginUrl() | async\"\n >\n Se reconnecter\n </a>\n </div>\n <div class=\"ms-md-0 me-md-2 mb-2 mt-2\">\n <a class=\"btn btn-primary w-100\" [href]=\"getAbortUrl() | async\">\n Abandonner\n </a>\n </div>\n </div>\n </div>\n</foehn-modal>\n" }]
|
|
7472
7473
|
}] });
|
|
7473
7474
|
|
|
7474
7475
|
class FoehnTransmitWaitingModalComponent {
|