@lucca-front/ng 22.1.0-rc.2 → 22.1.0-rc.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/fesm2022/lucca-front-ng-core-select.mjs +2 -2
- package/fesm2022/lucca-front-ng-core-select.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-date2.mjs +7 -2
- package/fesm2022/lucca-front-ng-date2.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-filter-pills.mjs +20 -6
- package/fesm2022/lucca-front-ng-filter-pills.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-segmented-control-tabs.mjs +39 -8
- package/fesm2022/lucca-front-ng-segmented-control-tabs.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-segmented-control.mjs +2 -2
- package/fesm2022/lucca-front-ng-segmented-control.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-user-popover.mjs +2 -8
- package/fesm2022/lucca-front-ng-user-popover.mjs.map +1 -1
- package/package.json +4 -4
- package/types/lucca-front-ng-date2.d.ts +10 -14
- package/types/lucca-front-ng-filter-pills.d.ts +24 -10
- package/types/lucca-front-ng-segmented-control-tabs.d.ts +24 -2
- package/types/lucca-front-ng-user-popover.d.ts +1 -5
|
@@ -69,7 +69,7 @@ class SegmentedControlComponent {
|
|
|
69
69
|
provide: LU_SEGMENTEDCONTROL_INSTANCE,
|
|
70
70
|
useExisting: forwardRef(() => SegmentedControlComponent),
|
|
71
71
|
},
|
|
72
|
-
], hostDirectives: [{ directive: i1$1.NoopValueAccessorDirective }], ngImport: i0, template: '<ng-content />', isInline: true, styles: ["@layer components{.segmentedControl,.viewTabs{--components-segmentedControl-borderRadius: var(--pr-t-border-radius-default);--components-segmentedControl-padding: var(--pr-t-spacings-100) var(--pr-t-spacings-200);--components-segmentedControl-font: var(--pr-t-font-body-M);--components-segmentedControl-background: transparent;--components-segmentedControl-shadow: none;--components-segmentedControl-color: var(--pr-t-color-text);--components-segmentedControl-cursor: pointer;--components-segmentedControl-dividerInset: var(--pr-t-spacings-100);--components-segmentedControl-direction: row;--components-segmentedControl-width: fit-content;--components-segmentedControl-zIndex: 0;--components-segmentedControl-wrap: wrap;--components-segmentedControl-whiteSpace: normal;padding:0;margin:0;list-style-type:none;display:flex;flex-wrap:var(--components-segmentedControl-wrap);inline-size:var(--components-segmentedControl-width);flex-direction:var(--components-segmentedControl-direction);box-shadow:0 0 0 var(--commons-divider-width) var(--palettes-neutral-100);border-radius:var(--components-segmentedControl-borderRadius);background-color:var(--palettes-neutral-0);font:var(--components-segmentedControl-font);gap:var(--commons-divider-width);white-space:var(--components-segmentedControl-whiteSpace)}.segmentedControl .button.mod-disclosure,.viewTabs .button.mod-disclosure{margin-block:calc(var(--pr-t-spacings-25) * -1)}.segmentedControl .button.mod-disclosure:focus-visible,.viewTabs .button.mod-disclosure:focus-visible{outline:2px solid var(--palettes-700, var(--palettes-product-700));outline-offset:0}.segmentedControl .button.mod-disclosure:last-child,.viewTabs .button.mod-disclosure:last-child{margin-inline-end:calc(var(--pr-t-spacings-100) * -1)}.segmentedControl-item-input{border:0;clip-path:rect(1px 1px 1px 1px);margin:-1px;overflow:hidden;padding:0;position:absolute;block-size:1px;inline-size:1px;white-space:nowrap;contain:paint}.segmentedControl-item-input:focus-visible+.segmentedControl-item-action{outline:2px solid var(--palettes-700, var(--palettes-product-700));outline-offset:3px}.segmentedControl-item,.viewTabs-item{flex-grow:1;position:relative;z-index:1}.segmentedControl-item:before,.segmentedControl-item:after,.viewTabs-item:before,.viewTabs-item:after{content:\"\";border-width:0;inset:var(--components-segmentedControl-dividerInset);border-color:var(--palettes-neutral-100);position:absolute;border-style:solid}.segmentedControl-item:before,.viewTabs-item:before{inset-inline-end:calc(var(--commons-divider-width) * -1);border-inline-start-width:var(--commons-divider-width);inset-inline-start:auto}.segmentedControl-item:after,.viewTabs-item:after{inset-block-end:calc(var(--commons-divider-width) * -1);border-block-start-width:var(--commons-divider-width);inset-block-start:auto}.segmentedControl-item-action,.viewTabs-item-tab{inline-size:100%;border:0;margin:0;padding:var(--components-segmentedControl-padding);background-color:var(--components-segmentedControl-background);box-shadow:var(--components-segmentedControl-shadow);border-radius:var(--components-segmentedControl-borderRadius);gap:var(--pr-t-spacings-100);color:var(--components-segmentedControl-color);text-align:center;justify-content:center;display:flex;align-items:center;position:relative;cursor:var(--components-segmentedControl-cursor);z-index:var(--components-segmentedControl-zIndex);font:inherit;transition-property:box-shadow;transition-duration:var(--commons-animations-durations-fast)}.segmentedControl-item-action:focus-visible,.viewTabs-item-tab:focus-visible{outline:2px solid var(--palettes-700, var(--palettes-product-700));outline-offset:3px}.segmentedControl-item-action:hover,.viewTabs-item-tab:hover{--components-segmentedControl-shadow: 0 0 0 var(--commons-divider-width) var(--palettes-400, var(--palettes-product-400)), var(--pr-t-elevation-shadow-raised);--components-segmentedControl-zIndex: 1}.segmentedControl-item-action:active,.viewTabs-item-tab:active{--components-segmentedControl-background: var(--palettes-neutral-0);--components-segmentedControl-shadow: 0 0 0 var(--commons-divider-width) var(--palettes-500, var(--palettes-product-500)), var(--pr-t-elevation-shadow-raised)}.segmentedControl_panel,.viewTabs_panel{display:var(--components-segmentedControl-display, block);border-radius:var(--pr-t-border-radius-default)}.segmentedControl_panel:focus-visible,.viewTabs_panel:focus-visible{outline:2px solid var(--palettes-700, var(--palettes-product-700));outline-offset:2px}}@layer mods{.segmentedControl.mod-S,.viewTabs.mod-S{--components-segmentedControl-padding: var(--pr-t-spacings-75) var(--pr-t-spacings-150);--components-segmentedControl-font: var(--pr-t-font-body-S);--components-segmentedControl-dividerInset: var(--pr-t-spacings-75)}.segmentedControl.mod-S .numericBadge,.viewTabs.mod-S .numericBadge{--components-numericBadge-size: 1.25rem;--components-numericBadge-borderRadius: var(--pr-t-border-radius-small);--components-numericBadge-font: var(--pr-t-font-body-XS)}.segmentedControl.mod-vertical,.viewTabs.mod-vertical{--components-segmentedControl-direction: column;--components-segmentedControl-width: auto}@media not all and (min-width:30em){.segmentedControl,.viewTabs{--components-segmentedControl-direction: column;--components-segmentedControl-width: auto}}}@layer mods{.segmentedControl-item-input:checked+.segmentedControl-item-action,.segmentedControl-item-action[aria-selected=true],.segmentedControl-item-input:checked+.viewTabs-item-tab,.viewTabs-item-tab[aria-selected=true]{--components-segmentedControl-background: var(--palettes-50, var(--palettes-product-50));--components-segmentedControl-shadow: 0 0 0 var(--commons-divider-width) var(--palettes-500, var(--palettes-product-500));--components-segmentedControl-color: var(--palettes-800, var(--palettes-product-800));--components-segmentedControl-cursor: default;--components-segmentedControl-backgroundContent: none;--components-segmentedControl-zIndex: 1}.segmentedControl-item-input:checked+.segmentedControl-item-action .numericBadge,.segmentedControl-item-action[aria-selected=true] .numericBadge,.segmentedControl-item-input:checked+.viewTabs-item-tab .numericBadge,.viewTabs-item-tab[aria-selected=true] .numericBadge{--components-numericBadge-background: var(--palettes-200, var(--palettes-product-200));--components-numericBadge-color: var(--palettes-800, var(--palettes-product-800))}.segmentedControl-item-input:checked+.segmentedControl-item-action .numericBadge.is-loading,.segmentedControl-item-action[aria-selected=true] .numericBadge.is-loading,.segmentedControl-item-input:checked+.viewTabs-item-tab .numericBadge.is-loading,.viewTabs-item-tab[aria-selected=true] .numericBadge.is-loading{--components-numericBadge-loadingColor: var(--palettes-500, var(--palettes-product-500));--components-numericBadge-color: transparent}.segmentedControl-item-action:disabled,.segmentedControl-item-input:disabled~.segmentedControl-item-action{--components-segmentedControl-background: var(--palettes-neutral-100);--components-segmentedControl-shadow: 0 0 0 var(--commons-divider-width) var(--palettes-neutral-200);--components-segmentedControl-color: var(--pr-t-color-text-disabled);--components-segmentedControl-cursor: default}.segmentedControl-item-action:disabled .numericBadge,.segmentedControl-item-input:disabled~.segmentedControl-item-action .numericBadge{--components-numericBadge-background: var(--palettes-neutral-200);--components-numericBadge-color: var(--palettes-neutral-500)}.segmentedControl-item-action:disabled .numericBadge.is-loading,.segmentedControl-item-input:disabled~.segmentedControl-item-action .numericBadge.is-loading{--components-numericBadge-color: transparent}.segmentedControl_panel:not(.is-active,.active),.viewTabs_panel:not(.is-active,.active){--components-segmentedControl-display: none}}\n"], dependencies: [{ kind: "ngmodule", type: ReactiveFormsModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
72
|
+
], hostDirectives: [{ directive: i1$1.NoopValueAccessorDirective }], ngImport: i0, template: '<ng-content />', isInline: true, styles: ["@layer components{.segmentedControl,.viewTabs{--components-segmentedControl-borderRadius: var(--pr-t-border-radius-default);--components-segmentedControl-padding: var(--pr-t-spacings-100) var(--pr-t-spacings-200);--components-segmentedControl-font: var(--pr-t-font-body-M);--components-segmentedControl-background: transparent;--components-segmentedControl-shadow: none;--components-segmentedControl-color: var(--pr-t-color-text);--components-segmentedControl-cursor: pointer;--components-segmentedControl-dividerInset: var(--pr-t-spacings-100);--components-segmentedControl-direction: row;--components-segmentedControl-width: fit-content;--components-segmentedControl-zIndex: 0;--components-segmentedControl-wrap: wrap;--components-segmentedControl-whiteSpace: normal;padding:0;margin:0;list-style-type:none;display:flex;flex-wrap:var(--components-segmentedControl-wrap);inline-size:var(--components-segmentedControl-width);flex-direction:var(--components-segmentedControl-direction);box-shadow:0 0 0 var(--commons-divider-width) var(--palettes-neutral-100);border-radius:var(--components-segmentedControl-borderRadius);background-color:var(--palettes-neutral-0);font:var(--components-segmentedControl-font);gap:var(--commons-divider-width);white-space:var(--components-segmentedControl-whiteSpace)}.segmentedControl .button.mod-disclosure,.viewTabs .button.mod-disclosure{margin-block:calc(var(--pr-t-spacings-25) * -1)}.segmentedControl .button.mod-disclosure:focus-visible,.viewTabs .button.mod-disclosure:focus-visible{outline:2px solid var(--palettes-700, var(--palettes-product-700));outline-offset:0}.segmentedControl .button.mod-disclosure:last-child,.viewTabs .button.mod-disclosure:last-child{margin-inline-end:calc(var(--pr-t-spacings-100) * -1)}.segmentedControl-item-input{border:0;clip-path:rect(1px 1px 1px 1px);margin:-1px;overflow:hidden;padding:0;position:absolute;block-size:1px;inline-size:1px;white-space:nowrap;contain:paint}.segmentedControl-item-input:focus-visible+.segmentedControl-item-action{outline:2px solid var(--palettes-700, var(--palettes-product-700));outline-offset:3px}.segmentedControl-item,.viewTabs-item{flex-grow:1;position:relative;z-index:1}.segmentedControl-item:before,.segmentedControl-item:after,.viewTabs-item:before,.viewTabs-item:after{content:\"\";border-width:0;inset:var(--components-segmentedControl-dividerInset);border-color:var(--palettes-neutral-100);position:absolute;border-style:solid}.segmentedControl-item:before,.viewTabs-item:before{inset-inline-end:calc(var(--commons-divider-width) * -1);border-inline-start-width:var(--commons-divider-width);inset-inline-start:auto}.segmentedControl-item:after,.viewTabs-item:after{inset-block-end:calc(var(--commons-divider-width) * -1);border-block-start-width:var(--commons-divider-width);inset-block-start:auto}.segmentedControl-item-action,.viewTabs-item-tab{inline-size:100%;border:0;margin:0;padding:var(--components-segmentedControl-padding);background-color:var(--components-segmentedControl-background);box-shadow:var(--components-segmentedControl-shadow);border-radius:var(--components-segmentedControl-borderRadius);gap:var(--pr-t-spacings-100);color:var(--components-segmentedControl-color);text-align:center;justify-content:center;display:flex;align-items:center;position:relative;cursor:var(--components-segmentedControl-cursor);z-index:var(--components-segmentedControl-zIndex);font:inherit;transition-property:box-shadow;transition-duration:var(--commons-animations-durations-fast)}.segmentedControl-item-action:focus-visible,.viewTabs-item-tab:focus-visible{outline:2px solid var(--palettes-700, var(--palettes-product-700));outline-offset:3px}.segmentedControl-item-action:hover,.viewTabs-item-tab:hover{--components-segmentedControl-shadow: 0 0 0 var(--commons-divider-width) var(--palettes-400, var(--palettes-product-400)), var(--pr-t-elevation-shadow-raised);--components-segmentedControl-zIndex: 1}.segmentedControl-item-action:active,.viewTabs-item-tab:active{--components-segmentedControl-background: var(--palettes-neutral-0);--components-segmentedControl-shadow: 0 0 0 var(--commons-divider-width) var(--palettes-500, var(--palettes-product-500)), var(--pr-t-elevation-shadow-raised)}.segmentedControl-item-action-tooltip{display:contents}.segmentedControl_panel,.viewTabs_panel{display:var(--components-segmentedControl-display, block);border-radius:var(--pr-t-border-radius-default)}.segmentedControl_panel:focus-visible,.viewTabs_panel:focus-visible{outline:2px solid var(--palettes-700, var(--palettes-product-700));outline-offset:2px}}@layer mods{.segmentedControl.mod-S,.viewTabs.mod-S{--icon-size: 1.25rem;--components-segmentedControl-padding: var(--pr-t-spacings-75) var(--pr-t-spacings-150);--components-segmentedControl-font: var(--pr-t-font-body-S);--components-segmentedControl-dividerInset: var(--pr-t-spacings-75)}.segmentedControl.mod-S .numericBadge,.viewTabs.mod-S .numericBadge{--components-numericBadge-size: 1.25rem;--components-numericBadge-borderRadius: var(--pr-t-border-radius-small);--components-numericBadge-font: var(--pr-t-font-body-XS)}.segmentedControl.mod-vertical,.viewTabs.mod-vertical{--components-segmentedControl-direction: column;--components-segmentedControl-width: auto}@media not all and (min-width:30em){.segmentedControl,.viewTabs{--components-segmentedControl-direction: column;--components-segmentedControl-width: auto}}}@layer mods{.segmentedControl-item-input:checked+.segmentedControl-item-action,.segmentedControl-item-action[aria-selected=true],.segmentedControl-item-input:checked+.viewTabs-item-tab,.viewTabs-item-tab[aria-selected=true]{--components-segmentedControl-background: var(--palettes-50, var(--palettes-product-50));--components-segmentedControl-shadow: 0 0 0 var(--commons-divider-width) var(--palettes-500, var(--palettes-product-500));--components-segmentedControl-color: var(--palettes-800, var(--palettes-product-800));--components-segmentedControl-cursor: default;--components-segmentedControl-backgroundContent: none;--components-segmentedControl-zIndex: 1}.segmentedControl-item-input:checked+.segmentedControl-item-action .numericBadge,.segmentedControl-item-action[aria-selected=true] .numericBadge,.segmentedControl-item-input:checked+.viewTabs-item-tab .numericBadge,.viewTabs-item-tab[aria-selected=true] .numericBadge{--components-numericBadge-background: var(--palettes-200, var(--palettes-product-200));--components-numericBadge-color: var(--palettes-800, var(--palettes-product-800))}.segmentedControl-item-input:checked+.segmentedControl-item-action .numericBadge.is-loading,.segmentedControl-item-action[aria-selected=true] .numericBadge.is-loading,.segmentedControl-item-input:checked+.viewTabs-item-tab .numericBadge.is-loading,.viewTabs-item-tab[aria-selected=true] .numericBadge.is-loading{--components-numericBadge-loadingColor: var(--palettes-500, var(--palettes-product-500));--components-numericBadge-color: transparent}.segmentedControl-item-action:disabled,.segmentedControl-item-input:disabled~.segmentedControl-item-action{--components-segmentedControl-background: var(--palettes-neutral-100);--components-segmentedControl-shadow: 0 0 0 var(--commons-divider-width) var(--palettes-neutral-200);--components-segmentedControl-color: var(--pr-t-color-text-disabled);--components-segmentedControl-cursor: default}.segmentedControl-item-action:disabled .numericBadge,.segmentedControl-item-input:disabled~.segmentedControl-item-action .numericBadge{--components-numericBadge-background: var(--palettes-neutral-200);--components-numericBadge-color: var(--palettes-neutral-500)}.segmentedControl-item-action:disabled .numericBadge.is-loading,.segmentedControl-item-input:disabled~.segmentedControl-item-action .numericBadge.is-loading{--components-numericBadge-color: transparent}.segmentedControl_panel:not(.is-active,.active),.viewTabs_panel:not(.is-active,.active){--components-segmentedControl-display: none}}\n"], dependencies: [{ kind: "ngmodule", type: ReactiveFormsModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
73
73
|
}
|
|
74
74
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.4", ngImport: i0, type: SegmentedControlComponent, decorators: [{
|
|
75
75
|
type: Component,
|
|
@@ -85,7 +85,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.4", ngImpor
|
|
|
85
85
|
provide: LU_SEGMENTEDCONTROL_INSTANCE,
|
|
86
86
|
useExisting: forwardRef(() => SegmentedControlComponent),
|
|
87
87
|
},
|
|
88
|
-
], styles: ["@layer components{.segmentedControl,.viewTabs{--components-segmentedControl-borderRadius: var(--pr-t-border-radius-default);--components-segmentedControl-padding: var(--pr-t-spacings-100) var(--pr-t-spacings-200);--components-segmentedControl-font: var(--pr-t-font-body-M);--components-segmentedControl-background: transparent;--components-segmentedControl-shadow: none;--components-segmentedControl-color: var(--pr-t-color-text);--components-segmentedControl-cursor: pointer;--components-segmentedControl-dividerInset: var(--pr-t-spacings-100);--components-segmentedControl-direction: row;--components-segmentedControl-width: fit-content;--components-segmentedControl-zIndex: 0;--components-segmentedControl-wrap: wrap;--components-segmentedControl-whiteSpace: normal;padding:0;margin:0;list-style-type:none;display:flex;flex-wrap:var(--components-segmentedControl-wrap);inline-size:var(--components-segmentedControl-width);flex-direction:var(--components-segmentedControl-direction);box-shadow:0 0 0 var(--commons-divider-width) var(--palettes-neutral-100);border-radius:var(--components-segmentedControl-borderRadius);background-color:var(--palettes-neutral-0);font:var(--components-segmentedControl-font);gap:var(--commons-divider-width);white-space:var(--components-segmentedControl-whiteSpace)}.segmentedControl .button.mod-disclosure,.viewTabs .button.mod-disclosure{margin-block:calc(var(--pr-t-spacings-25) * -1)}.segmentedControl .button.mod-disclosure:focus-visible,.viewTabs .button.mod-disclosure:focus-visible{outline:2px solid var(--palettes-700, var(--palettes-product-700));outline-offset:0}.segmentedControl .button.mod-disclosure:last-child,.viewTabs .button.mod-disclosure:last-child{margin-inline-end:calc(var(--pr-t-spacings-100) * -1)}.segmentedControl-item-input{border:0;clip-path:rect(1px 1px 1px 1px);margin:-1px;overflow:hidden;padding:0;position:absolute;block-size:1px;inline-size:1px;white-space:nowrap;contain:paint}.segmentedControl-item-input:focus-visible+.segmentedControl-item-action{outline:2px solid var(--palettes-700, var(--palettes-product-700));outline-offset:3px}.segmentedControl-item,.viewTabs-item{flex-grow:1;position:relative;z-index:1}.segmentedControl-item:before,.segmentedControl-item:after,.viewTabs-item:before,.viewTabs-item:after{content:\"\";border-width:0;inset:var(--components-segmentedControl-dividerInset);border-color:var(--palettes-neutral-100);position:absolute;border-style:solid}.segmentedControl-item:before,.viewTabs-item:before{inset-inline-end:calc(var(--commons-divider-width) * -1);border-inline-start-width:var(--commons-divider-width);inset-inline-start:auto}.segmentedControl-item:after,.viewTabs-item:after{inset-block-end:calc(var(--commons-divider-width) * -1);border-block-start-width:var(--commons-divider-width);inset-block-start:auto}.segmentedControl-item-action,.viewTabs-item-tab{inline-size:100%;border:0;margin:0;padding:var(--components-segmentedControl-padding);background-color:var(--components-segmentedControl-background);box-shadow:var(--components-segmentedControl-shadow);border-radius:var(--components-segmentedControl-borderRadius);gap:var(--pr-t-spacings-100);color:var(--components-segmentedControl-color);text-align:center;justify-content:center;display:flex;align-items:center;position:relative;cursor:var(--components-segmentedControl-cursor);z-index:var(--components-segmentedControl-zIndex);font:inherit;transition-property:box-shadow;transition-duration:var(--commons-animations-durations-fast)}.segmentedControl-item-action:focus-visible,.viewTabs-item-tab:focus-visible{outline:2px solid var(--palettes-700, var(--palettes-product-700));outline-offset:3px}.segmentedControl-item-action:hover,.viewTabs-item-tab:hover{--components-segmentedControl-shadow: 0 0 0 var(--commons-divider-width) var(--palettes-400, var(--palettes-product-400)), var(--pr-t-elevation-shadow-raised);--components-segmentedControl-zIndex: 1}.segmentedControl-item-action:active,.viewTabs-item-tab:active{--components-segmentedControl-background: var(--palettes-neutral-0);--components-segmentedControl-shadow: 0 0 0 var(--commons-divider-width) var(--palettes-500, var(--palettes-product-500)), var(--pr-t-elevation-shadow-raised)}.segmentedControl_panel,.viewTabs_panel{display:var(--components-segmentedControl-display, block);border-radius:var(--pr-t-border-radius-default)}.segmentedControl_panel:focus-visible,.viewTabs_panel:focus-visible{outline:2px solid var(--palettes-700, var(--palettes-product-700));outline-offset:2px}}@layer mods{.segmentedControl.mod-S,.viewTabs.mod-S{--components-segmentedControl-padding: var(--pr-t-spacings-75) var(--pr-t-spacings-150);--components-segmentedControl-font: var(--pr-t-font-body-S);--components-segmentedControl-dividerInset: var(--pr-t-spacings-75)}.segmentedControl.mod-S .numericBadge,.viewTabs.mod-S .numericBadge{--components-numericBadge-size: 1.25rem;--components-numericBadge-borderRadius: var(--pr-t-border-radius-small);--components-numericBadge-font: var(--pr-t-font-body-XS)}.segmentedControl.mod-vertical,.viewTabs.mod-vertical{--components-segmentedControl-direction: column;--components-segmentedControl-width: auto}@media not all and (min-width:30em){.segmentedControl,.viewTabs{--components-segmentedControl-direction: column;--components-segmentedControl-width: auto}}}@layer mods{.segmentedControl-item-input:checked+.segmentedControl-item-action,.segmentedControl-item-action[aria-selected=true],.segmentedControl-item-input:checked+.viewTabs-item-tab,.viewTabs-item-tab[aria-selected=true]{--components-segmentedControl-background: var(--palettes-50, var(--palettes-product-50));--components-segmentedControl-shadow: 0 0 0 var(--commons-divider-width) var(--palettes-500, var(--palettes-product-500));--components-segmentedControl-color: var(--palettes-800, var(--palettes-product-800));--components-segmentedControl-cursor: default;--components-segmentedControl-backgroundContent: none;--components-segmentedControl-zIndex: 1}.segmentedControl-item-input:checked+.segmentedControl-item-action .numericBadge,.segmentedControl-item-action[aria-selected=true] .numericBadge,.segmentedControl-item-input:checked+.viewTabs-item-tab .numericBadge,.viewTabs-item-tab[aria-selected=true] .numericBadge{--components-numericBadge-background: var(--palettes-200, var(--palettes-product-200));--components-numericBadge-color: var(--palettes-800, var(--palettes-product-800))}.segmentedControl-item-input:checked+.segmentedControl-item-action .numericBadge.is-loading,.segmentedControl-item-action[aria-selected=true] .numericBadge.is-loading,.segmentedControl-item-input:checked+.viewTabs-item-tab .numericBadge.is-loading,.viewTabs-item-tab[aria-selected=true] .numericBadge.is-loading{--components-numericBadge-loadingColor: var(--palettes-500, var(--palettes-product-500));--components-numericBadge-color: transparent}.segmentedControl-item-action:disabled,.segmentedControl-item-input:disabled~.segmentedControl-item-action{--components-segmentedControl-background: var(--palettes-neutral-100);--components-segmentedControl-shadow: 0 0 0 var(--commons-divider-width) var(--palettes-neutral-200);--components-segmentedControl-color: var(--pr-t-color-text-disabled);--components-segmentedControl-cursor: default}.segmentedControl-item-action:disabled .numericBadge,.segmentedControl-item-input:disabled~.segmentedControl-item-action .numericBadge{--components-numericBadge-background: var(--palettes-neutral-200);--components-numericBadge-color: var(--palettes-neutral-500)}.segmentedControl-item-action:disabled .numericBadge.is-loading,.segmentedControl-item-input:disabled~.segmentedControl-item-action .numericBadge.is-loading{--components-numericBadge-color: transparent}.segmentedControl_panel:not(.is-active,.active),.viewTabs_panel:not(.is-active,.active){--components-segmentedControl-display: none}}\n"] }]
|
|
88
|
+
], styles: ["@layer components{.segmentedControl,.viewTabs{--components-segmentedControl-borderRadius: var(--pr-t-border-radius-default);--components-segmentedControl-padding: var(--pr-t-spacings-100) var(--pr-t-spacings-200);--components-segmentedControl-font: var(--pr-t-font-body-M);--components-segmentedControl-background: transparent;--components-segmentedControl-shadow: none;--components-segmentedControl-color: var(--pr-t-color-text);--components-segmentedControl-cursor: pointer;--components-segmentedControl-dividerInset: var(--pr-t-spacings-100);--components-segmentedControl-direction: row;--components-segmentedControl-width: fit-content;--components-segmentedControl-zIndex: 0;--components-segmentedControl-wrap: wrap;--components-segmentedControl-whiteSpace: normal;padding:0;margin:0;list-style-type:none;display:flex;flex-wrap:var(--components-segmentedControl-wrap);inline-size:var(--components-segmentedControl-width);flex-direction:var(--components-segmentedControl-direction);box-shadow:0 0 0 var(--commons-divider-width) var(--palettes-neutral-100);border-radius:var(--components-segmentedControl-borderRadius);background-color:var(--palettes-neutral-0);font:var(--components-segmentedControl-font);gap:var(--commons-divider-width);white-space:var(--components-segmentedControl-whiteSpace)}.segmentedControl .button.mod-disclosure,.viewTabs .button.mod-disclosure{margin-block:calc(var(--pr-t-spacings-25) * -1)}.segmentedControl .button.mod-disclosure:focus-visible,.viewTabs .button.mod-disclosure:focus-visible{outline:2px solid var(--palettes-700, var(--palettes-product-700));outline-offset:0}.segmentedControl .button.mod-disclosure:last-child,.viewTabs .button.mod-disclosure:last-child{margin-inline-end:calc(var(--pr-t-spacings-100) * -1)}.segmentedControl-item-input{border:0;clip-path:rect(1px 1px 1px 1px);margin:-1px;overflow:hidden;padding:0;position:absolute;block-size:1px;inline-size:1px;white-space:nowrap;contain:paint}.segmentedControl-item-input:focus-visible+.segmentedControl-item-action{outline:2px solid var(--palettes-700, var(--palettes-product-700));outline-offset:3px}.segmentedControl-item,.viewTabs-item{flex-grow:1;position:relative;z-index:1}.segmentedControl-item:before,.segmentedControl-item:after,.viewTabs-item:before,.viewTabs-item:after{content:\"\";border-width:0;inset:var(--components-segmentedControl-dividerInset);border-color:var(--palettes-neutral-100);position:absolute;border-style:solid}.segmentedControl-item:before,.viewTabs-item:before{inset-inline-end:calc(var(--commons-divider-width) * -1);border-inline-start-width:var(--commons-divider-width);inset-inline-start:auto}.segmentedControl-item:after,.viewTabs-item:after{inset-block-end:calc(var(--commons-divider-width) * -1);border-block-start-width:var(--commons-divider-width);inset-block-start:auto}.segmentedControl-item-action,.viewTabs-item-tab{inline-size:100%;border:0;margin:0;padding:var(--components-segmentedControl-padding);background-color:var(--components-segmentedControl-background);box-shadow:var(--components-segmentedControl-shadow);border-radius:var(--components-segmentedControl-borderRadius);gap:var(--pr-t-spacings-100);color:var(--components-segmentedControl-color);text-align:center;justify-content:center;display:flex;align-items:center;position:relative;cursor:var(--components-segmentedControl-cursor);z-index:var(--components-segmentedControl-zIndex);font:inherit;transition-property:box-shadow;transition-duration:var(--commons-animations-durations-fast)}.segmentedControl-item-action:focus-visible,.viewTabs-item-tab:focus-visible{outline:2px solid var(--palettes-700, var(--palettes-product-700));outline-offset:3px}.segmentedControl-item-action:hover,.viewTabs-item-tab:hover{--components-segmentedControl-shadow: 0 0 0 var(--commons-divider-width) var(--palettes-400, var(--palettes-product-400)), var(--pr-t-elevation-shadow-raised);--components-segmentedControl-zIndex: 1}.segmentedControl-item-action:active,.viewTabs-item-tab:active{--components-segmentedControl-background: var(--palettes-neutral-0);--components-segmentedControl-shadow: 0 0 0 var(--commons-divider-width) var(--palettes-500, var(--palettes-product-500)), var(--pr-t-elevation-shadow-raised)}.segmentedControl-item-action-tooltip{display:contents}.segmentedControl_panel,.viewTabs_panel{display:var(--components-segmentedControl-display, block);border-radius:var(--pr-t-border-radius-default)}.segmentedControl_panel:focus-visible,.viewTabs_panel:focus-visible{outline:2px solid var(--palettes-700, var(--palettes-product-700));outline-offset:2px}}@layer mods{.segmentedControl.mod-S,.viewTabs.mod-S{--icon-size: 1.25rem;--components-segmentedControl-padding: var(--pr-t-spacings-75) var(--pr-t-spacings-150);--components-segmentedControl-font: var(--pr-t-font-body-S);--components-segmentedControl-dividerInset: var(--pr-t-spacings-75)}.segmentedControl.mod-S .numericBadge,.viewTabs.mod-S .numericBadge{--components-numericBadge-size: 1.25rem;--components-numericBadge-borderRadius: var(--pr-t-border-radius-small);--components-numericBadge-font: var(--pr-t-font-body-XS)}.segmentedControl.mod-vertical,.viewTabs.mod-vertical{--components-segmentedControl-direction: column;--components-segmentedControl-width: auto}@media not all and (min-width:30em){.segmentedControl,.viewTabs{--components-segmentedControl-direction: column;--components-segmentedControl-width: auto}}}@layer mods{.segmentedControl-item-input:checked+.segmentedControl-item-action,.segmentedControl-item-action[aria-selected=true],.segmentedControl-item-input:checked+.viewTabs-item-tab,.viewTabs-item-tab[aria-selected=true]{--components-segmentedControl-background: var(--palettes-50, var(--palettes-product-50));--components-segmentedControl-shadow: 0 0 0 var(--commons-divider-width) var(--palettes-500, var(--palettes-product-500));--components-segmentedControl-color: var(--palettes-800, var(--palettes-product-800));--components-segmentedControl-cursor: default;--components-segmentedControl-backgroundContent: none;--components-segmentedControl-zIndex: 1}.segmentedControl-item-input:checked+.segmentedControl-item-action .numericBadge,.segmentedControl-item-action[aria-selected=true] .numericBadge,.segmentedControl-item-input:checked+.viewTabs-item-tab .numericBadge,.viewTabs-item-tab[aria-selected=true] .numericBadge{--components-numericBadge-background: var(--palettes-200, var(--palettes-product-200));--components-numericBadge-color: var(--palettes-800, var(--palettes-product-800))}.segmentedControl-item-input:checked+.segmentedControl-item-action .numericBadge.is-loading,.segmentedControl-item-action[aria-selected=true] .numericBadge.is-loading,.segmentedControl-item-input:checked+.viewTabs-item-tab .numericBadge.is-loading,.viewTabs-item-tab[aria-selected=true] .numericBadge.is-loading{--components-numericBadge-loadingColor: var(--palettes-500, var(--palettes-product-500));--components-numericBadge-color: transparent}.segmentedControl-item-action:disabled,.segmentedControl-item-input:disabled~.segmentedControl-item-action{--components-segmentedControl-background: var(--palettes-neutral-100);--components-segmentedControl-shadow: 0 0 0 var(--commons-divider-width) var(--palettes-neutral-200);--components-segmentedControl-color: var(--pr-t-color-text-disabled);--components-segmentedControl-cursor: default}.segmentedControl-item-action:disabled .numericBadge,.segmentedControl-item-input:disabled~.segmentedControl-item-action .numericBadge{--components-numericBadge-background: var(--palettes-neutral-200);--components-numericBadge-color: var(--palettes-neutral-500)}.segmentedControl-item-action:disabled .numericBadge.is-loading,.segmentedControl-item-input:disabled~.segmentedControl-item-action .numericBadge.is-loading{--components-numericBadge-color: transparent}.segmentedControl_panel:not(.is-active,.active),.viewTabs_panel:not(.is-active,.active){--components-segmentedControl-display: none}}\n"] }]
|
|
89
89
|
}], propDecorators: { small: [{ type: i0.Input, args: [{ isSignal: true, alias: "small", required: false }] }], vertical: [{ type: i0.Input, args: [{ isSignal: true, alias: "vertical", required: false }] }], ariaLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaLabel", required: false }] }] } });
|
|
90
90
|
|
|
91
91
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lucca-front-ng-segmented-control.mjs","sources":["../../../packages/ng/segmented-control/segmented-control.token.ts","../../../packages/ng/segmented-control/filter/filter.component.ts","../../../packages/ng/segmented-control/filter/filter.component.html","../../../packages/ng/segmented-control/segmented-control.component.ts","../../../packages/ng/segmented-control/lucca-front-ng-segmented-control.ts"],"sourcesContent":["import { InjectionToken } from '@angular/core';\nimport { SegmentedControlComponent } from './segmented-control.component';\n\nexport const LU_SEGMENTEDCONTROL_INSTANCE = new InjectionToken<SegmentedControlComponent>('LU_SEGMENTEDCONTROL_INSTANCE');\n","import { ChangeDetectionStrategy, Component, inject, input, ViewEncapsulation } from '@angular/core';\nimport { ReactiveFormsModule } from '@angular/forms';\nimport { luBooleanAttribute, PortalContent, PortalDirective } from '@lucca-front/ng/core';\nimport { LU_SEGMENTEDCONTROL_INSTANCE } from '../segmented-control.token';\n\nlet nextId = 0;\n\n@Component({\n\tselector: 'lu-segmented-control-filter',\n\ttemplateUrl: './filter.component.html',\n\tencapsulation: ViewEncapsulation.None,\n\timports: [ReactiveFormsModule, PortalDirective],\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\thost: {\n\t\tclass: 'segmentedControl-item',\n\t},\n})\nexport class SegmentedControlFilterComponent<T = unknown> {\n\tprotected segmentedControlRef = inject(LU_SEGMENTEDCONTROL_INSTANCE);\n\n\t/**\n\t * Disabled the segmented control filter\n\t */\n\treadonly disabled = input(false, { transform: luBooleanAttribute });\n\n\t/**\n\t * Defines filtered value used\n\t */\n\treadonly value = input.required<T>();\n\n\t/**\n\t * Changes the text displayed by the segmented control filter\n\t */\n\treadonly label = input<PortalContent>();\n\n\treadonly id = `${this.segmentedControlRef.id}item${nextId++}`;\n\treadonly name = this.segmentedControlRef.id;\n\n\tpublic get formControl() {\n\t\treturn this.segmentedControlRef.ngControl.control;\n\t}\n}\n","<input\n\ttype=\"radio\"\n\tclass=\"segmentedControl-item-input\"\n\t[name]=\"name\"\n\t[attr.name]=\"name\"\n\t[formControl]=\"formControl\"\n\t[value]=\"value()\"\n\t[attr.id]=\"id\"\n\t[attr.disabled]=\"formControl.disabled || disabled() ? 'disabled' : null\"\n/>\n<label [attr.for]=\"id\" class=\"segmentedControl-item-action\">\n\t@if (label(); as label) {\n\t\t<ng-container *luPortal=\"label\" />\n\t}\n</label>\n","import { ChangeDetectionStrategy, Component, forwardRef, inject, input, ViewEncapsulation } from '@angular/core';\nimport { ReactiveFormsModule } from '@angular/forms';\nimport { LU_FILTER_BAR_INSTANCE } from '@lucca-front/ng/filter-pills';\nimport { luBooleanAttribute } from '@lucca-front/ng/core';\nimport { injectNgControl, NoopValueAccessorDirective } from '@lucca-front/ng/forms';\nimport { LU_SEGMENTEDCONTROL_INSTANCE } from './segmented-control.token';\n\nlet nextId = 0;\n\n@Component({\n\tselector: 'lu-segmented-control',\n\ttemplate: '<ng-content />',\n\tstyleUrl: './segmented-control.component.scss',\n\tencapsulation: ViewEncapsulation.None,\n\timports: [ReactiveFormsModule],\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\thostDirectives: [NoopValueAccessorDirective],\n\thost: {\n\t\trole: 'radiogroup',\n\t\tclass: 'segmentedControl',\n\t\t'[class.mod-S]': 'small()',\n\t\t'[class.mod-vertical]': 'vertical()',\n\t\t'[class.filterBar-segmentedControl]': '!!insideFilterBar',\n\t\t'[attr.aria-label]': 'ariaLabel()',\n\t},\n\tproviders: [\n\t\t{\n\t\t\tprovide: LU_SEGMENTEDCONTROL_INSTANCE,\n\t\t\tuseExisting: forwardRef(() => SegmentedControlComponent),\n\t\t},\n\t],\n})\nexport class SegmentedControlComponent {\n\tngControl = injectNgControl();\n\n\treadonly insideFilterBar = inject(LU_FILTER_BAR_INSTANCE, { optional: true });\n\n\t/**\n\t * Applies small size to segmented control\n\t */\n\treadonly small = input(false, { transform: luBooleanAttribute });\n\n\t/**\n\t * Display segmented control vertically\n\t */\n\treadonly vertical = input(false, { transform: luBooleanAttribute });\n\n\t/**\n\t * Accessible name for the group of options, exposed to assistive technologies\n\t */\n\treadonly ariaLabel = input<string | null>(null);\n\n\treadonly id = `segmentedControl${nextId++}`;\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["nextId","i1"],"mappings":"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
|
|
1
|
+
{"version":3,"file":"lucca-front-ng-segmented-control.mjs","sources":["../../../packages/ng/segmented-control/segmented-control.token.ts","../../../packages/ng/segmented-control/filter/filter.component.ts","../../../packages/ng/segmented-control/filter/filter.component.html","../../../packages/ng/segmented-control/segmented-control.component.ts","../../../packages/ng/segmented-control/lucca-front-ng-segmented-control.ts"],"sourcesContent":["import { InjectionToken } from '@angular/core';\nimport { SegmentedControlComponent } from './segmented-control.component';\n\nexport const LU_SEGMENTEDCONTROL_INSTANCE = new InjectionToken<SegmentedControlComponent>('LU_SEGMENTEDCONTROL_INSTANCE');\n","import { ChangeDetectionStrategy, Component, inject, input, ViewEncapsulation } from '@angular/core';\nimport { ReactiveFormsModule } from '@angular/forms';\nimport { luBooleanAttribute, PortalContent, PortalDirective } from '@lucca-front/ng/core';\nimport { LU_SEGMENTEDCONTROL_INSTANCE } from '../segmented-control.token';\n\nlet nextId = 0;\n\n@Component({\n\tselector: 'lu-segmented-control-filter',\n\ttemplateUrl: './filter.component.html',\n\tencapsulation: ViewEncapsulation.None,\n\timports: [ReactiveFormsModule, PortalDirective],\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\thost: {\n\t\tclass: 'segmentedControl-item',\n\t},\n})\nexport class SegmentedControlFilterComponent<T = unknown> {\n\tprotected segmentedControlRef = inject(LU_SEGMENTEDCONTROL_INSTANCE);\n\n\t/**\n\t * Disabled the segmented control filter\n\t */\n\treadonly disabled = input(false, { transform: luBooleanAttribute });\n\n\t/**\n\t * Defines filtered value used\n\t */\n\treadonly value = input.required<T>();\n\n\t/**\n\t * Changes the text displayed by the segmented control filter\n\t */\n\treadonly label = input<PortalContent>();\n\n\treadonly id = `${this.segmentedControlRef.id}item${nextId++}`;\n\treadonly name = this.segmentedControlRef.id;\n\n\tpublic get formControl() {\n\t\treturn this.segmentedControlRef.ngControl.control;\n\t}\n}\n","<input\n\ttype=\"radio\"\n\tclass=\"segmentedControl-item-input\"\n\t[name]=\"name\"\n\t[attr.name]=\"name\"\n\t[formControl]=\"formControl\"\n\t[value]=\"value()\"\n\t[attr.id]=\"id\"\n\t[attr.disabled]=\"formControl.disabled || disabled() ? 'disabled' : null\"\n/>\n<label [attr.for]=\"id\" class=\"segmentedControl-item-action\">\n\t@if (label(); as label) {\n\t\t<ng-container *luPortal=\"label\" />\n\t}\n</label>\n","import { ChangeDetectionStrategy, Component, forwardRef, inject, input, ViewEncapsulation } from '@angular/core';\nimport { ReactiveFormsModule } from '@angular/forms';\nimport { LU_FILTER_BAR_INSTANCE } from '@lucca-front/ng/filter-pills';\nimport { luBooleanAttribute } from '@lucca-front/ng/core';\nimport { injectNgControl, NoopValueAccessorDirective } from '@lucca-front/ng/forms';\nimport { LU_SEGMENTEDCONTROL_INSTANCE } from './segmented-control.token';\n\nlet nextId = 0;\n\n@Component({\n\tselector: 'lu-segmented-control',\n\ttemplate: '<ng-content />',\n\tstyleUrl: './segmented-control.component.scss',\n\tencapsulation: ViewEncapsulation.None,\n\timports: [ReactiveFormsModule],\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\thostDirectives: [NoopValueAccessorDirective],\n\thost: {\n\t\trole: 'radiogroup',\n\t\tclass: 'segmentedControl',\n\t\t'[class.mod-S]': 'small()',\n\t\t'[class.mod-vertical]': 'vertical()',\n\t\t'[class.filterBar-segmentedControl]': '!!insideFilterBar',\n\t\t'[attr.aria-label]': 'ariaLabel()',\n\t},\n\tproviders: [\n\t\t{\n\t\t\tprovide: LU_SEGMENTEDCONTROL_INSTANCE,\n\t\t\tuseExisting: forwardRef(() => SegmentedControlComponent),\n\t\t},\n\t],\n})\nexport class SegmentedControlComponent {\n\tngControl = injectNgControl();\n\n\treadonly insideFilterBar = inject(LU_FILTER_BAR_INSTANCE, { optional: true });\n\n\t/**\n\t * Applies small size to segmented control\n\t */\n\treadonly small = input(false, { transform: luBooleanAttribute });\n\n\t/**\n\t * Display segmented control vertically\n\t */\n\treadonly vertical = input(false, { transform: luBooleanAttribute });\n\n\t/**\n\t * Accessible name for the group of options, exposed to assistive technologies\n\t */\n\treadonly ariaLabel = input<string | null>(null);\n\n\treadonly id = `segmentedControl${nextId++}`;\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["nextId","i1"],"mappings":"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"}
|
|
@@ -7,7 +7,7 @@ import { IconComponent } from '@lucca-front/ng/icon';
|
|
|
7
7
|
import { LinkComponent } from '@lucca-front/ng/link';
|
|
8
8
|
import { POPOVER_CONFIG, PopoverDirective } from '@lucca-front/ng/popover2';
|
|
9
9
|
import { SkeletonUserPopoverComponent } from '@lucca-front/ng/skeleton';
|
|
10
|
-
import { Observable,
|
|
10
|
+
import { Observable, BehaviorSubject, switchMap, catchError, of, tap, combineLatest } from 'rxjs';
|
|
11
11
|
import { shareReplay, map } from 'rxjs/operators';
|
|
12
12
|
import { HttpClient } from '@angular/common/http';
|
|
13
13
|
import { isFuture, isToday, isTomorrow } from 'date-fns';
|
|
@@ -198,12 +198,6 @@ function cacheImage(accessor) {
|
|
|
198
198
|
}
|
|
199
199
|
|
|
200
200
|
const LU_USER_POPOVER_USER = new InjectionToken('user-popover-user');
|
|
201
|
-
/**
|
|
202
|
-
* @deprecated no longer needed as popover is always activated
|
|
203
|
-
*/
|
|
204
|
-
const USER_POPOVER_IS_ACTIVATED = new InjectionToken('user-popover-is-activated', {
|
|
205
|
-
factory: () => of(true),
|
|
206
|
-
});
|
|
207
201
|
/**
|
|
208
202
|
* @deprecated no longer needed as user popover uses `luPopover2`
|
|
209
203
|
*/
|
|
@@ -360,5 +354,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.4", ngImpor
|
|
|
360
354
|
* Generated bundle index. Do not edit.
|
|
361
355
|
*/
|
|
362
356
|
|
|
363
|
-
export { LU_POPUP_EMPLOYEE_TRANSLATIONS, LU_USER_POPOVER_USER, LuUserPopoverComponent, LuUserPopoverDirective,
|
|
357
|
+
export { LU_POPUP_EMPLOYEE_TRANSLATIONS, LU_USER_POPOVER_USER, LuUserPopoverComponent, LuUserPopoverDirective, luPopupEmployeeTranslations, provideLuUserPopover };
|
|
364
358
|
//# sourceMappingURL=lucca-front-ng-user-popover.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lucca-front-ng-user-popover.mjs","sources":["../../../packages/ng/user-popover/translations.ts","../../../packages/ng/user-popover/popup-employee.translate.ts","../../../packages/ng/user-popover/service/user-popover.store.ts","../../../packages/ng/user-popover/user-popover.providers.ts","../../../packages/ng/user-popover/card/pipe/is-future.pipe.ts","../../../packages/ng/user-popover/card/pipe/leave-ends-display.pipe.ts","../../../packages/ng/user-popover/card/trigger/user-popover.component.ts","../../../packages/ng/user-popover/card/trigger/user-popover.component.html","../../../packages/ng/user-popover/card/trigger/lu-user-popover.directive.ts","../../../packages/ng/user-popover/lucca-front-ng-user-popover.ts"],"sourcesContent":["export const Translations = {\n\ten: {\n\t\tEMPLOYEE_CARD_PANEL_COMING_ON_LABEL: 'Arrival expected on {{date}}',\n\t\tEMPLOYEE_CARD_PANEL_ABSENCE_LABEL: 'Absent',\n\t\tEMPLOYEE_CARD_PANEL_MORNING_LABEL: 'Morning',\n\t\tEMPLOYEE_CARD_PANEL_PRESENT_LABEL: 'Present',\n\t\tEMPLOYEE_CARD_PANEL_EMPLOYEE_HAS_LEAVED_LABEL: 'Left',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TODAY_LABEL: 'Today',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TODAY_LABEL_MORNING: 'This morning',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TOMORROW_LABEL: 'Until tomorrow',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TOMORROW_MORNING_LABEL: 'Until tomorrow morning',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_DATE_LABEL: 'Until {{date}} inclusive',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_MORNING_DATE_LABEL: 'Until {{date}} morning',\n\t\tEMPLOYEE_CARD_PANEL_WORKING_LOCATION: 'Location',\n\t\tEMPLOYEE_CARD_PANEL_PLANNING: 'Planning',\n\t},\n\tde: {\n\t\tEMPLOYEE_CARD_PANEL_COMING_ON_LABEL: 'Geplanter Dienstantritt am {{date}}',\n\t\tEMPLOYEE_CARD_PANEL_ABSENCE_LABEL: 'Abwesend',\n\t\tEMPLOYEE_CARD_PANEL_MORNING_LABEL: 'Vormittag',\n\t\tEMPLOYEE_CARD_PANEL_PRESENT_LABEL: 'Anwesend',\n\t\tEMPLOYEE_CARD_PANEL_EMPLOYEE_HAS_LEAVED_LABEL: 'Ausgeschieden',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TODAY_LABEL: 'Heute',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TODAY_LABEL_MORNING: 'Heute Morgen',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TOMORROW_LABEL: 'Bis morgen',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TOMORROW_MORNING_LABEL: 'Bis morgen Vormittag',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_DATE_LABEL: 'Bis einschließlich {{date}}',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_MORNING_DATE_LABEL: 'Bis {{date}} morgens',\n\t\tEMPLOYEE_CARD_PANEL_WORKING_LOCATION: 'Standort',\n\t\tEMPLOYEE_CARD_PANEL_PLANNING: 'Planning',\n\t},\n\tfr: {\n\t\tEMPLOYEE_CARD_PANEL_COMING_ON_LABEL: 'Arrivée prévue le {{date}}',\n\t\tEMPLOYEE_CARD_PANEL_ABSENCE_LABEL: 'Absent',\n\t\tEMPLOYEE_CARD_PANEL_MORNING_LABEL: 'Matin',\n\t\tEMPLOYEE_CARD_PANEL_PRESENT_LABEL: 'Présent(e)',\n\t\tEMPLOYEE_CARD_PANEL_EMPLOYEE_HAS_LEAVED_LABEL: 'Parti(e)',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TODAY_LABEL: \"Aujourd'hui\",\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TODAY_LABEL_MORNING: 'Ce matin',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TOMORROW_LABEL: \"Jusqu'à demain\",\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TOMORROW_MORNING_LABEL: 'Jusqu’à demain matin',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_DATE_LABEL: \"Jusqu'au {{date}} inclus\",\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_MORNING_DATE_LABEL: \"Jusqu'au {{date}} matin\",\n\t\tEMPLOYEE_CARD_PANEL_WORKING_LOCATION: 'Emplacement',\n\t\tEMPLOYEE_CARD_PANEL_PLANNING: 'Planning',\n\t},\n\tit: {\n\t\tEMPLOYEE_CARD_PANEL_COMING_ON_LABEL: 'Arrivo previsto il{{date}}',\n\t\tEMPLOYEE_CARD_PANEL_ABSENCE_LABEL: 'Assente',\n\t\tEMPLOYEE_CARD_PANEL_MORNING_LABEL: 'Mattina',\n\t\tEMPLOYEE_CARD_PANEL_PRESENT_LABEL: 'Presente',\n\t\tEMPLOYEE_CARD_PANEL_EMPLOYEE_HAS_LEAVED_LABEL: 'Ex',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TODAY_LABEL: 'Oggi',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TODAY_LABEL_MORNING: 'Questa mattina',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TOMORROW_LABEL: 'Fino a domani',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TOMORROW_MORNING_LABEL: 'Fino a domani mattina',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_DATE_LABEL: 'Fino al {{date}} incluso',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_MORNING_DATE_LABEL: 'Fino al mattino del {{date}}',\n\t\tEMPLOYEE_CARD_PANEL_WORKING_LOCATION: 'Posizione',\n\t\tEMPLOYEE_CARD_PANEL_PLANNING: 'Planning',\n\t},\n\tnl: {\n\t\tEMPLOYEE_CARD_PANEL_COMING_ON_LABEL: 'Verwachte aankomst op {{date}}',\n\t\tEMPLOYEE_CARD_PANEL_ABSENCE_LABEL: 'Afwezig',\n\t\tEMPLOYEE_CARD_PANEL_MORNING_LABEL: 'Ochtend',\n\t\tEMPLOYEE_CARD_PANEL_PRESENT_LABEL: 'Aanwezig',\n\t\tEMPLOYEE_CARD_PANEL_EMPLOYEE_HAS_LEAVED_LABEL: 'Vertrokken',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TODAY_LABEL: 'Vandaag',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TODAY_LABEL_MORNING: 'Vanochtend',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TOMORROW_LABEL: 'Tot morgen',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TOMORROW_MORNING_LABEL: 'Tot morgenochtend',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_DATE_LABEL: 'Tot en met {{date}}',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_MORNING_DATE_LABEL: 'Tot {{date}} ochtend',\n\t\tEMPLOYEE_CARD_PANEL_WORKING_LOCATION: 'Locatie',\n\t\tEMPLOYEE_CARD_PANEL_PLANNING: 'Planning',\n\t},\n\t'nl-BE': {\n\t\tEMPLOYEE_CARD_PANEL_COMING_ON_LABEL: 'Verwachte aankomst op {{date}}',\n\t\tEMPLOYEE_CARD_PANEL_ABSENCE_LABEL: 'Afwezig',\n\t\tEMPLOYEE_CARD_PANEL_MORNING_LABEL: 'Ochtend',\n\t\tEMPLOYEE_CARD_PANEL_PRESENT_LABEL: 'Aanwezig',\n\t\tEMPLOYEE_CARD_PANEL_EMPLOYEE_HAS_LEAVED_LABEL: 'Vertrokken',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TODAY_LABEL: 'Vandaag',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TODAY_LABEL_MORNING: 'Vanochtend',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TOMORROW_LABEL: 'Tot morgen',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TOMORROW_MORNING_LABEL: 'Tot morgenochtend',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_DATE_LABEL: 'Tot en met {{date}}',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_MORNING_DATE_LABEL: 'Tot {{date}} ochtend',\n\t\tEMPLOYEE_CARD_PANEL_WORKING_LOCATION: 'Locatie',\n\t\tEMPLOYEE_CARD_PANEL_PLANNING: 'Planning',\n\t},\n\tes: {\n\t\tEMPLOYEE_CARD_PANEL_COMING_ON_LABEL: 'Llegada prevista el {{date}}',\n\t\tEMPLOYEE_CARD_PANEL_ABSENCE_LABEL: 'Ausente',\n\t\tEMPLOYEE_CARD_PANEL_MORNING_LABEL: 'Por la mañana',\n\t\tEMPLOYEE_CARD_PANEL_PRESENT_LABEL: 'Presente',\n\t\tEMPLOYEE_CARD_PANEL_EMPLOYEE_HAS_LEAVED_LABEL: 'Se ha marchado',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TODAY_LABEL: 'Hoy',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TODAY_LABEL_MORNING: 'Esta mañana',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TOMORROW_LABEL: 'Hasta mañana',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TOMORROW_MORNING_LABEL: 'Hasta mañana por la mañana',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_DATE_LABEL: 'Hasta el {{date}} incluido',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_MORNING_DATE_LABEL: 'Hasta el {{date}} por la mañana',\n\t\tEMPLOYEE_CARD_PANEL_WORKING_LOCATION: 'Ubicación',\n\t\tEMPLOYEE_CARD_PANEL_PLANNING: 'Planning',\n\t},\n\tpt: {\n\t\tEMPLOYEE_CARD_PANEL_COMING_ON_LABEL: 'Chegada prevista para {{date}}',\n\t\tEMPLOYEE_CARD_PANEL_ABSENCE_LABEL: 'Ausente',\n\t\tEMPLOYEE_CARD_PANEL_MORNING_LABEL: 'Manhã',\n\t\tEMPLOYEE_CARD_PANEL_PRESENT_LABEL: 'Presente',\n\t\tEMPLOYEE_CARD_PANEL_EMPLOYEE_HAS_LEAVED_LABEL: 'Papel',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TODAY_LABEL: 'Até hoje',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TODAY_LABEL_MORNING: 'Esta manhã',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TOMORROW_LABEL: 'Até amanhã',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TOMORROW_MORNING_LABEL: 'Até amanhã de manhã',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_DATE_LABEL: 'Até {{date}} incluído',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_MORNING_DATE_LABEL: 'Até {{date}} de manhã',\n\t\tEMPLOYEE_CARD_PANEL_WORKING_LOCATION: 'Localização',\n\t\tEMPLOYEE_CARD_PANEL_PLANNING: 'Planning',\n\t},\n};\n","import { InjectionToken } from '@angular/core';\nimport { LuTranslation } from '@lucca-front/ng/core';\nimport { Translations } from './translations';\n\nexport const LU_POPUP_EMPLOYEE_TRANSLATIONS = new InjectionToken('LuPopupEmployeeTranslations', {\n\tfactory: () => luPopupEmployeeTranslations,\n});\n\nexport interface LuPopupEmployeeTranslations {\n\tEMPLOYEE_CARD_PANEL_COMING_ON_LABEL: string;\n\tEMPLOYEE_CARD_PANEL_ABSENCE_LABEL: string;\n\tEMPLOYEE_CARD_PANEL_MORNING_LABEL: string;\n\tEMPLOYEE_CARD_PANEL_PRESENT_LABEL: string;\n\tEMPLOYEE_CARD_PANEL_EMPLOYEE_HAS_LEAVED_LABEL: string;\n\tEMPLOYEE_CARD_PANEL_UNTIL_TODAY_LABEL: string;\n\tEMPLOYEE_CARD_PANEL_UNTIL_TODAY_LABEL_MORNING: string;\n\tEMPLOYEE_CARD_PANEL_UNTIL_TOMORROW_LABEL: string;\n\tEMPLOYEE_CARD_PANEL_UNTIL_TOMORROW_MORNING_LABEL: string;\n\tEMPLOYEE_CARD_PANEL_UNTIL_DATE_LABEL: string;\n\tEMPLOYEE_CARD_PANEL_UNTIL_MORNING_DATE_LABEL: string;\n\tEMPLOYEE_CARD_PANEL_WORKING_LOCATION: string;\n\tEMPLOYEE_CARD_PANEL_PLANNING: string;\n}\n\nexport const luPopupEmployeeTranslations: LuTranslation<LuPopupEmployeeTranslations> = Translations;\n","import { HttpClient } from '@angular/common/http';\nimport { inject, Injectable } from '@angular/core';\nimport { Observable, OperatorFunction } from 'rxjs';\nimport { shareReplay } from 'rxjs/operators';\n\nimport { ILuUserPopoverStore } from './user-popover-service.model';\nimport { LuUserPopover } from '../user-popover.model';\n\n@Injectable({\n\tprovidedIn: 'root',\n})\nexport class LuUserPopoverStore implements ILuUserPopoverStore {\n\t#http = inject(HttpClient);\n\t#cache = new Map<number, Observable<LuUserPopover>>();\n\tprotected _api = '/work-locations/api/employee-profile-card';\n\n\tpublic get(id: number): Observable<LuUserPopover> {\n\t\tif (this.#cache.has(id)) {\n\t\t\treturn this.#cache.get(id)!;\n\t\t}\n\t\tconst userPopoverObservable = this.#http.get<LuUserPopover>(`${this._api}/${id}`).pipe(\n\t\t\tcacheImage((c) => c.pictureHref),\n\t\t\tshareReplay(1),\n\t\t);\n\n\t\tthis.#cache.set(id, userPopoverObservable);\n\t\treturn userPopoverObservable;\n\t}\n\n\tpublic clearCache(userId?: number) {\n\t\tif (userId) {\n\t\t\tthis.#cache.delete(userId);\n\t\t} else {\n\t\t\tthis.#cache.clear();\n\t\t}\n\t}\n}\n\nexport function cacheImage<T>(accessor: (value: T) => string | undefined): OperatorFunction<T, T> {\n\treturn (source: Observable<T>): Observable<T> =>\n\t\tnew Observable((subscriber) => {\n\t\t\tsource.subscribe({\n\t\t\t\tnext(value) {\n\t\t\t\t\tconst imagePath = accessor(value);\n\t\t\t\t\tif (!imagePath) {\n\t\t\t\t\t\tsubscriber.next(value);\n\t\t\t\t\t}\n\t\t\t\t\tconst img = new Image();\n\t\t\t\t\timg.src = imagePath!;\n\t\t\t\t\timg.onload = () => {\n\t\t\t\t\t\tsubscriber.next(value);\n\t\t\t\t\t};\n\t\t\t\t\timg.onerror = () => {\n\t\t\t\t\t\tsubscriber.next(value);\n\t\t\t\t\t};\n\t\t\t\t},\n\t\t\t\terror(err: Error) {\n\t\t\t\t\tsubscriber.error(err);\n\t\t\t\t},\n\t\t\t});\n\t\t});\n}\n","import { Observable, of } from 'rxjs';\nimport { InjectionToken, makeEnvironmentProviders, Signal } from '@angular/core';\nimport { ILuUser } from '@lucca-front/ng/user';\n\nexport const LU_USER_POPOVER_USER = new InjectionToken<Signal<ILuUser>>('user-popover-user');\n\n/**\n * @deprecated no longer needed as popover is always activated\n */\nexport const USER_POPOVER_IS_ACTIVATED = new InjectionToken<Observable<boolean>>('user-popover-is-activated', {\n\tfactory: () => of(true),\n});\n\n/**\n * @deprecated no longer needed as user popover uses `luPopover2`\n */\nexport function provideLuUserPopover() {\n\treturn makeEnvironmentProviders([]);\n}\n","import { Pipe, PipeTransform } from '@angular/core';\nimport { isFuture, isToday } from 'date-fns';\n\n@Pipe({\n\tname: 'isFuture',\n})\nexport class IsFuturePipe implements PipeTransform {\n\tpublic transform(value: Date | undefined): boolean {\n\t\treturn !!value && isFuture(value);\n\t}\n}\n\n@Pipe({\n\tname: 'isFutureOrToday',\n})\nexport class IsFutureOrTodayPipe implements PipeTransform {\n\tpublic transform(value: Date | undefined): boolean {\n\t\treturn !value || isFuture(value) || isToday(value);\n\t}\n}\n","import { formatDate } from '@angular/common';\nimport { inject, LOCALE_ID, Pipe, PipeTransform } from '@angular/core';\nimport { getIntl } from '@lucca-front/ng/core';\nimport { isToday, isTomorrow } from 'date-fns';\nimport { LU_POPUP_EMPLOYEE_TRANSLATIONS } from '../../popup-employee.translate';\n\n@Pipe({\n\tname: 'leaveEndsDisplay',\n})\nexport class LeaveEndsDisplayPipe implements PipeTransform {\n\treadonly intl = getIntl(LU_POPUP_EMPLOYEE_TRANSLATIONS);\n\treadonly locale = inject(LOCALE_ID);\n\tpublic transform(leaveEndsOn: Date, leaveEndIsFirstHalfDay: boolean): string {\n\t\tif (isToday(leaveEndsOn)) {\n\t\t\tif (leaveEndIsFirstHalfDay) {\n\t\t\t\treturn this.intl.EMPLOYEE_CARD_PANEL_UNTIL_TODAY_LABEL_MORNING;\n\t\t\t} else {\n\t\t\t\treturn this.intl.EMPLOYEE_CARD_PANEL_UNTIL_TODAY_LABEL;\n\t\t\t}\n\t\t} else if (isTomorrow(leaveEndsOn)) {\n\t\t\tif (leaveEndIsFirstHalfDay) {\n\t\t\t\treturn this.intl.EMPLOYEE_CARD_PANEL_UNTIL_TOMORROW_MORNING_LABEL;\n\t\t\t}\n\t\t\treturn this.intl.EMPLOYEE_CARD_PANEL_UNTIL_TOMORROW_LABEL;\n\t\t} else {\n\t\t\tif (leaveEndIsFirstHalfDay) {\n\t\t\t\treturn this.intl.EMPLOYEE_CARD_PANEL_UNTIL_MORNING_DATE_LABEL.replace('{{date}}', formatDate(leaveEndsOn, 'longDate', this.locale));\n\t\t\t}\n\t\t\treturn this.intl.EMPLOYEE_CARD_PANEL_UNTIL_DATE_LABEL.replace('{{date}}', formatDate(leaveEndsOn, 'longDate', this.locale));\n\t\t}\n\t}\n}\n","import { AsyncPipe, DatePipe, NgTemplateOutlet } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject, input, Signal } from '@angular/core';\nimport { toObservable } from '@angular/core/rxjs-interop';\nimport { intlInputOptions, IntlParamsPipe } from '@lucca-front/ng/core';\nimport { IconComponent } from '@lucca-front/ng/icon';\nimport { LinkComponent } from '@lucca-front/ng/link';\nimport { POPOVER_CONFIG } from '@lucca-front/ng/popover2';\nimport { SkeletonUserPopoverComponent } from '@lucca-front/ng/skeleton';\nimport { ILuUser } from '@lucca-front/ng/user';\nimport { BehaviorSubject, catchError, combineLatest, Observable, of, switchMap, tap } from 'rxjs';\nimport { map, shareReplay } from 'rxjs/operators';\nimport { LU_POPUP_EMPLOYEE_TRANSLATIONS } from '../../popup-employee.translate';\nimport { LuUserPopoverStore } from '../../service/user-popover.store';\nimport { LuUserPopover } from '../../user-popover.model';\nimport { LU_USER_POPOVER_USER } from '../../user-popover.providers';\nimport { IsFutureOrTodayPipe, IsFuturePipe } from '../pipe/is-future.pipe';\nimport { LeaveEndsDisplayPipe } from '../pipe/leave-ends-display.pipe';\n\n@Component({\n\tselector: 'lu-user-popover-content',\n\ttemplateUrl: './user-popover.component.html',\n\tstyleUrl: './user-popover.component.scss',\n\timports: [AsyncPipe, NgTemplateOutlet, DatePipe, IntlParamsPipe, IsFuturePipe, IsFutureOrTodayPipe, LeaveEndsDisplayPipe, IconComponent, LinkComponent, SkeletonUserPopoverComponent],\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class LuUserPopoverComponent {\n\tluUser = inject<Signal<ILuUser>>(LU_USER_POPOVER_USER);\n\n\t#popoverRef = inject(POPOVER_CONFIG).ref;\n\n\t#service = inject(LuUserPopoverStore);\n\n\treadonly intl = input(...intlInputOptions(LU_POPUP_EMPLOYEE_TRANSLATIONS));\n\n\treadonly #errorImage$ = new BehaviorSubject<boolean>(false);\n\n\tskeletonWidths = [this.getRandomPercent(), this.getRandomPercent(), this.getRandomPercent(), this.getRandomPercent()];\n\n\tpublic readonly employee$: Observable<LuUserPopover> = toObservable(this.luUser).pipe(\n\t\tswitchMap((user) =>\n\t\t\tthis.#service.get(user.id).pipe(\n\t\t\t\tcatchError(() =>\n\t\t\t\t\tof({\n\t\t\t\t\t\tid: user.id,\n\t\t\t\t\t\tfirstName: user.firstName,\n\t\t\t\t\t\tlastName: user.lastName,\n\t\t\t\t\t\tleaveEndIsFirstHalfDay: false,\n\t\t\t\t\t}),\n\t\t\t\t),\n\t\t\t),\n\t\t),\n\t\ttap(() => this.#popoverRef.updatePosition()),\n\t\tshareReplay(1),\n\t);\n\n\tpublic readonly userPictureDisplay$ = combineLatest([this.employee$, this.#errorImage$]).pipe(\n\t\tmap(([employee, isError]) => {\n\t\t\tif (employee.pictureHref && !isError) {\n\t\t\t\treturn 'img';\n\t\t\t} else {\n\t\t\t\treturn 'initials';\n\t\t\t}\n\t\t}),\n\t);\n\n\tpublic readonly userPictureHref$ = this.employee$.pipe(map((employee) => employee.pictureHref));\n\n\tpublic readonly userInitials$ = this.employee$.pipe(\n\t\tmap((employee) => {\n\t\t\tconst initials = `${employee.firstName[0]}${employee.lastName[0]}`;\n\n\t\t\treturn {\n\t\t\t\tinitials,\n\t\t\t\tcolor: `${employee.firstName} ${employee.lastName}`.split('').reduce((sum, a) => sum + a.charCodeAt(0), 0) % 360,\n\t\t\t};\n\t\t}),\n\t);\n\n\tpictureError() {\n\t\tthis.#errorImage$.next(true);\n\t}\n\n\tgetRandomPercent(min: number = 33, max: number = 66): string {\n\t\treturn `${Math.floor(Math.random() * (max - min) + min).toString()}%`;\n\t}\n}\n","@if (employee$ | async; as employee) {\n\t<div class=\"userPopover pr-u-animatedFadeIn\">\n\t\t<section class=\"userPopover-details\">\n\t\t\t<div class=\"userPopover-details-avatar avatar\">\n\t\t\t\t@switch (userPictureDisplay$ | async) {\n\t\t\t\t\t@case (\"img\") {\n\t\t\t\t\t\t<img\n\t\t\t\t\t\t\tclass=\"avatar-picture\"\n\t\t\t\t\t\t\t[src]=\"userPictureHref$ | async\"\n\t\t\t\t\t\t\t[alt]=\"(userInitials$ | async)?.initials\"\n\t\t\t\t\t\t\t(error)=\"pictureError()\"\n\t\t\t\t\t\t\ttranslate=\"no\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t}\n\t\t\t\t\t@case (\"initials\") {\n\t\t\t\t\t\t@if (userInitials$ | async; as initials) {\n\t\t\t\t\t\t\t<div class=\"avatar-picture\" style.background-color=\"hsl({{ initials.color }}, 60%, 60%)\">\n\t\t\t\t\t\t\t\t<span class=\"avatar-picture-initials\" translate=\"no\">{{ initials.initials }}</span>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t</div>\n\t\t\t<div class=\"userPopover-details-info\">\n\t\t\t\t<h1 class=\"userPopover-details-info-name pr-u-ellipsis\">\n\t\t\t\t\t@if (!employee._links?.hrCard?.href) {\n\t\t\t\t\t\t<ng-container *ngTemplateOutlet=\"fullNameDisplay\" />\n\t\t\t\t\t} @else {\n\t\t\t\t\t\t<a luLink class=\"userPopover-details-info-name-linkOptional\" [href]=\"employee._links?.hrCard?.href\" external hiddenIcon>\n\t\t\t\t\t\t\t<ng-container *ngTemplateOutlet=\"fullNameDisplay\" />\n\t\t\t\t\t\t</a>\n\t\t\t\t\t}\n\t\t\t\t</h1>\n\t\t\t\t<ng-template #fullNameDisplay\n\t\t\t\t\t><span translate=\"no\">{{ employee.firstName }} {{ employee.lastName }}</span></ng-template\n\t\t\t\t>\n\t\t\t\t@if (employee.jobTitle) {\n\t\t\t\t\t<p class=\"userPopover-details-info-detail pr-u-ellipsis\">{{ employee.jobTitle }}</p>\n\t\t\t\t}\n\t\t\t\t@if (employee.userDepartment?.name) {\n\t\t\t\t\t<p class=\"userPopover-details-info-detail pr-u-ellipsis\">{{ employee.userDepartment?.name }}</p>\n\t\t\t\t}\n\n\t\t\t\t<p class=\"userPopover-details-info-detail pr-u-marginTopXS\">\n\t\t\t\t\t<!-- HORS CONTRAT-->\n\t\t\t\t\t@if (employee.dtContractStart | isFuture) {\n\t\t\t\t\t\t<span class=\"userPopover-details-info-detail-workplace\">\n\t\t\t\t\t\t\t<lu-icon icon=\"calendarPlanning\" size=\"S\" />\n\t\t\t\t\t\t\t<span class=\"userPopover-details-info-detail-link-state\">\n\t\t\t\t\t\t\t\t{{\n\t\t\t\t\t\t\t\t\tintl().EMPLOYEE_CARD_PANEL_COMING_ON_LABEL | intlParams: { date: (employee.dtContractStart | date: \"shortDate\") ?? \"\" }\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t</span>\n\t\t\t\t\t}\n\t\t\t\t\t<!-- Contrat terminé -->\n\t\t\t\t\t@if (!(employee.dtContractStart | isFuture) && !(employee.dtContractEnd | isFutureOrToday)) {\n\t\t\t\t\t\t<span class=\"userPopover-details-info-detail-workplace\">\n\t\t\t\t\t\t\t<lu-icon icon=\"calendarStrikethrough\" size=\"S\" />\n\t\t\t\t\t\t\t<span class=\"userPopover-details-info-detail-link-state\"> {{ intl().EMPLOYEE_CARD_PANEL_EMPLOYEE_HAS_LEAVED_LABEL }} </span>\n\t\t\t\t\t\t</span>\n\t\t\t\t\t}\n\n\t\t\t\t\t<!-- EN CONTRAT-->\n\t\t\t\t\t@if (employee._links?.schedule && !(employee.dtContractStart | isFuture) && (employee.dtContractEnd | isFutureOrToday)) {\n\t\t\t\t\t\t<span class=\"userPopover-details-info-detail-workplace\">\n\t\t\t\t\t\t\t@if (employee.isWorkingNow && employee.currentWorkLocation) {\n\t\t\t\t\t\t\t\t<lu-icon icon=\"mapPin\" size=\"S\" />\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t@if (!employee.isWorkingNow || !employee.currentWorkLocation) {\n\t\t\t\t\t\t\t\t<lu-icon icon=\"calendarPlanning\" size=\"S\" />\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t<a\n\t\t\t\t\t\t\t\tluLink\n\t\t\t\t\t\t\t\tclass=\"userPopover-details-info-detail-workplace-state\"\n\t\t\t\t\t\t\t\t[href]=\"employee._links?.schedule?.href\"\n\t\t\t\t\t\t\t\texternal\n\t\t\t\t\t\t\t\thiddenIcon\n\t\t\t\t\t\t\t\tdecorationHover\n\t\t\t\t\t\t\t\tneutral\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t@if (employee.isWorkingNow) {\n\t\t\t\t\t\t\t\t\t@if (employee.currentWorkLocation) {\n\t\t\t\t\t\t\t\t\t\t{{ employee.currentWorkLocation.name }}\n\t\t\t\t\t\t\t\t\t\t@if (employee.currentWorkLocation.area) {\n\t\t\t\t\t\t\t\t\t\t\t<span class=\"pr-u-colorTextSubtle\"> – {{ employee.currentWorkLocation.area.name }}</span>\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t@if (!employee.currentWorkLocation) {\n\t\t\t\t\t\t\t\t\t\t{{ intl().EMPLOYEE_CARD_PANEL_PRESENT_LABEL }}\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t} @else {\n\t\t\t\t\t\t\t\t\t@if (!(employee.dtContractStart | isFuture) && (employee.dtContractEnd | isFutureOrToday)) {\n\t\t\t\t\t\t\t\t\t\t{{ intl().EMPLOYEE_CARD_PANEL_ABSENCE_LABEL }}\n\t\t\t\t\t\t\t\t\t\t@if (employee.leaveEndsOn) {\n\t\t\t\t\t\t\t\t\t\t\t<span class=\"pr-u-colorTextSubtle\"\n\t\t\t\t\t\t\t\t\t\t\t\t> – {{ employee.leaveEndsOn | leaveEndsDisplay: employee.leaveEndIsFirstHalfDay }}\n\t\t\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t</span>\n\t\t\t\t\t}\n\t\t\t\t</p>\n\t\t\t</div>\n\t\t</section>\n\t</div>\n} @else {\n\t<lu-skeleton-user-popover />\n}\n","import { Directive, input, linkedSignal } from '@angular/core';\nimport { PopoverDirective } from '@lucca-front/ng/popover2';\nimport { ILuUser } from '@lucca-front/ng/user';\nimport { LU_USER_POPOVER_USER } from '../../user-popover.providers';\nimport { LuUserPopoverComponent } from './user-popover.component';\n\n@Directive({\n\tselector: '[luUserPopover]',\n\thost: {\n\t\t'[attr.aria-expanded]': 'opened()',\n\t},\n\texportAs: 'LuUserPopoverDirective',\n})\nexport class LuUserPopoverDirective extends PopoverDirective {\n\treadonly luUserPopover = input.required<ILuUser>();\n\n\treadonly luUserPopoverDisabled = input<boolean>(false);\n\n\toverride readonly luPopoverDisabled = linkedSignal(() => this.luUserPopoverDisabled());\n\n\toverride readonly additionalProviders = [{ provide: LU_USER_POPOVER_USER, useValue: this.luUserPopover }];\n\n\tconstructor() {\n\t\tsuper();\n\t\tthis.customPositions.set([\n\t\t\t{ overlayX: 'start', overlayY: 'bottom', originX: 'start', originY: 'top' },\n\t\t\t{ overlayX: 'start', overlayY: 'top', originX: 'start', originY: 'bottom' },\n\t\t]);\n\t\tthis.luPopoverTrigger.set('hover+focus');\n\t\tthis.luPopoverNoCloseButton.set(true);\n\t\tthis.content.set(LuUserPopoverComponent);\n\t}\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"lucca-front-ng-user-popover.mjs","sources":["../../../packages/ng/user-popover/translations.ts","../../../packages/ng/user-popover/popup-employee.translate.ts","../../../packages/ng/user-popover/service/user-popover.store.ts","../../../packages/ng/user-popover/user-popover.providers.ts","../../../packages/ng/user-popover/card/pipe/is-future.pipe.ts","../../../packages/ng/user-popover/card/pipe/leave-ends-display.pipe.ts","../../../packages/ng/user-popover/card/trigger/user-popover.component.ts","../../../packages/ng/user-popover/card/trigger/user-popover.component.html","../../../packages/ng/user-popover/card/trigger/lu-user-popover.directive.ts","../../../packages/ng/user-popover/lucca-front-ng-user-popover.ts"],"sourcesContent":["export const Translations = {\n\ten: {\n\t\tEMPLOYEE_CARD_PANEL_COMING_ON_LABEL: 'Arrival expected on {{date}}',\n\t\tEMPLOYEE_CARD_PANEL_ABSENCE_LABEL: 'Absent',\n\t\tEMPLOYEE_CARD_PANEL_MORNING_LABEL: 'Morning',\n\t\tEMPLOYEE_CARD_PANEL_PRESENT_LABEL: 'Present',\n\t\tEMPLOYEE_CARD_PANEL_EMPLOYEE_HAS_LEAVED_LABEL: 'Left',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TODAY_LABEL: 'Today',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TODAY_LABEL_MORNING: 'This morning',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TOMORROW_LABEL: 'Until tomorrow',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TOMORROW_MORNING_LABEL: 'Until tomorrow morning',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_DATE_LABEL: 'Until {{date}} inclusive',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_MORNING_DATE_LABEL: 'Until {{date}} morning',\n\t\tEMPLOYEE_CARD_PANEL_WORKING_LOCATION: 'Location',\n\t\tEMPLOYEE_CARD_PANEL_PLANNING: 'Planning',\n\t},\n\tde: {\n\t\tEMPLOYEE_CARD_PANEL_COMING_ON_LABEL: 'Geplanter Dienstantritt am {{date}}',\n\t\tEMPLOYEE_CARD_PANEL_ABSENCE_LABEL: 'Abwesend',\n\t\tEMPLOYEE_CARD_PANEL_MORNING_LABEL: 'Vormittag',\n\t\tEMPLOYEE_CARD_PANEL_PRESENT_LABEL: 'Anwesend',\n\t\tEMPLOYEE_CARD_PANEL_EMPLOYEE_HAS_LEAVED_LABEL: 'Ausgeschieden',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TODAY_LABEL: 'Heute',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TODAY_LABEL_MORNING: 'Heute Morgen',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TOMORROW_LABEL: 'Bis morgen',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TOMORROW_MORNING_LABEL: 'Bis morgen Vormittag',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_DATE_LABEL: 'Bis einschließlich {{date}}',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_MORNING_DATE_LABEL: 'Bis {{date}} morgens',\n\t\tEMPLOYEE_CARD_PANEL_WORKING_LOCATION: 'Standort',\n\t\tEMPLOYEE_CARD_PANEL_PLANNING: 'Planning',\n\t},\n\tfr: {\n\t\tEMPLOYEE_CARD_PANEL_COMING_ON_LABEL: 'Arrivée prévue le {{date}}',\n\t\tEMPLOYEE_CARD_PANEL_ABSENCE_LABEL: 'Absent',\n\t\tEMPLOYEE_CARD_PANEL_MORNING_LABEL: 'Matin',\n\t\tEMPLOYEE_CARD_PANEL_PRESENT_LABEL: 'Présent(e)',\n\t\tEMPLOYEE_CARD_PANEL_EMPLOYEE_HAS_LEAVED_LABEL: 'Parti(e)',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TODAY_LABEL: \"Aujourd'hui\",\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TODAY_LABEL_MORNING: 'Ce matin',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TOMORROW_LABEL: \"Jusqu'à demain\",\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TOMORROW_MORNING_LABEL: 'Jusqu’à demain matin',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_DATE_LABEL: \"Jusqu'au {{date}} inclus\",\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_MORNING_DATE_LABEL: \"Jusqu'au {{date}} matin\",\n\t\tEMPLOYEE_CARD_PANEL_WORKING_LOCATION: 'Emplacement',\n\t\tEMPLOYEE_CARD_PANEL_PLANNING: 'Planning',\n\t},\n\tit: {\n\t\tEMPLOYEE_CARD_PANEL_COMING_ON_LABEL: 'Arrivo previsto il{{date}}',\n\t\tEMPLOYEE_CARD_PANEL_ABSENCE_LABEL: 'Assente',\n\t\tEMPLOYEE_CARD_PANEL_MORNING_LABEL: 'Mattina',\n\t\tEMPLOYEE_CARD_PANEL_PRESENT_LABEL: 'Presente',\n\t\tEMPLOYEE_CARD_PANEL_EMPLOYEE_HAS_LEAVED_LABEL: 'Ex',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TODAY_LABEL: 'Oggi',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TODAY_LABEL_MORNING: 'Questa mattina',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TOMORROW_LABEL: 'Fino a domani',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TOMORROW_MORNING_LABEL: 'Fino a domani mattina',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_DATE_LABEL: 'Fino al {{date}} incluso',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_MORNING_DATE_LABEL: 'Fino al mattino del {{date}}',\n\t\tEMPLOYEE_CARD_PANEL_WORKING_LOCATION: 'Posizione',\n\t\tEMPLOYEE_CARD_PANEL_PLANNING: 'Planning',\n\t},\n\tnl: {\n\t\tEMPLOYEE_CARD_PANEL_COMING_ON_LABEL: 'Verwachte aankomst op {{date}}',\n\t\tEMPLOYEE_CARD_PANEL_ABSENCE_LABEL: 'Afwezig',\n\t\tEMPLOYEE_CARD_PANEL_MORNING_LABEL: 'Ochtend',\n\t\tEMPLOYEE_CARD_PANEL_PRESENT_LABEL: 'Aanwezig',\n\t\tEMPLOYEE_CARD_PANEL_EMPLOYEE_HAS_LEAVED_LABEL: 'Vertrokken',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TODAY_LABEL: 'Vandaag',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TODAY_LABEL_MORNING: 'Vanochtend',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TOMORROW_LABEL: 'Tot morgen',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TOMORROW_MORNING_LABEL: 'Tot morgenochtend',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_DATE_LABEL: 'Tot en met {{date}}',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_MORNING_DATE_LABEL: 'Tot {{date}} ochtend',\n\t\tEMPLOYEE_CARD_PANEL_WORKING_LOCATION: 'Locatie',\n\t\tEMPLOYEE_CARD_PANEL_PLANNING: 'Planning',\n\t},\n\t'nl-BE': {\n\t\tEMPLOYEE_CARD_PANEL_COMING_ON_LABEL: 'Verwachte aankomst op {{date}}',\n\t\tEMPLOYEE_CARD_PANEL_ABSENCE_LABEL: 'Afwezig',\n\t\tEMPLOYEE_CARD_PANEL_MORNING_LABEL: 'Ochtend',\n\t\tEMPLOYEE_CARD_PANEL_PRESENT_LABEL: 'Aanwezig',\n\t\tEMPLOYEE_CARD_PANEL_EMPLOYEE_HAS_LEAVED_LABEL: 'Vertrokken',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TODAY_LABEL: 'Vandaag',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TODAY_LABEL_MORNING: 'Vanochtend',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TOMORROW_LABEL: 'Tot morgen',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TOMORROW_MORNING_LABEL: 'Tot morgenochtend',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_DATE_LABEL: 'Tot en met {{date}}',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_MORNING_DATE_LABEL: 'Tot {{date}} ochtend',\n\t\tEMPLOYEE_CARD_PANEL_WORKING_LOCATION: 'Locatie',\n\t\tEMPLOYEE_CARD_PANEL_PLANNING: 'Planning',\n\t},\n\tes: {\n\t\tEMPLOYEE_CARD_PANEL_COMING_ON_LABEL: 'Llegada prevista el {{date}}',\n\t\tEMPLOYEE_CARD_PANEL_ABSENCE_LABEL: 'Ausente',\n\t\tEMPLOYEE_CARD_PANEL_MORNING_LABEL: 'Por la mañana',\n\t\tEMPLOYEE_CARD_PANEL_PRESENT_LABEL: 'Presente',\n\t\tEMPLOYEE_CARD_PANEL_EMPLOYEE_HAS_LEAVED_LABEL: 'Se ha marchado',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TODAY_LABEL: 'Hoy',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TODAY_LABEL_MORNING: 'Esta mañana',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TOMORROW_LABEL: 'Hasta mañana',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TOMORROW_MORNING_LABEL: 'Hasta mañana por la mañana',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_DATE_LABEL: 'Hasta el {{date}} incluido',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_MORNING_DATE_LABEL: 'Hasta el {{date}} por la mañana',\n\t\tEMPLOYEE_CARD_PANEL_WORKING_LOCATION: 'Ubicación',\n\t\tEMPLOYEE_CARD_PANEL_PLANNING: 'Planning',\n\t},\n\tpt: {\n\t\tEMPLOYEE_CARD_PANEL_COMING_ON_LABEL: 'Chegada prevista para {{date}}',\n\t\tEMPLOYEE_CARD_PANEL_ABSENCE_LABEL: 'Ausente',\n\t\tEMPLOYEE_CARD_PANEL_MORNING_LABEL: 'Manhã',\n\t\tEMPLOYEE_CARD_PANEL_PRESENT_LABEL: 'Presente',\n\t\tEMPLOYEE_CARD_PANEL_EMPLOYEE_HAS_LEAVED_LABEL: 'Papel',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TODAY_LABEL: 'Até hoje',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TODAY_LABEL_MORNING: 'Esta manhã',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TOMORROW_LABEL: 'Até amanhã',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TOMORROW_MORNING_LABEL: 'Até amanhã de manhã',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_DATE_LABEL: 'Até {{date}} incluído',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_MORNING_DATE_LABEL: 'Até {{date}} de manhã',\n\t\tEMPLOYEE_CARD_PANEL_WORKING_LOCATION: 'Localização',\n\t\tEMPLOYEE_CARD_PANEL_PLANNING: 'Planning',\n\t},\n};\n","import { InjectionToken } from '@angular/core';\nimport { LuTranslation } from '@lucca-front/ng/core';\nimport { Translations } from './translations';\n\nexport const LU_POPUP_EMPLOYEE_TRANSLATIONS = new InjectionToken('LuPopupEmployeeTranslations', {\n\tfactory: () => luPopupEmployeeTranslations,\n});\n\nexport interface LuPopupEmployeeTranslations {\n\tEMPLOYEE_CARD_PANEL_COMING_ON_LABEL: string;\n\tEMPLOYEE_CARD_PANEL_ABSENCE_LABEL: string;\n\tEMPLOYEE_CARD_PANEL_MORNING_LABEL: string;\n\tEMPLOYEE_CARD_PANEL_PRESENT_LABEL: string;\n\tEMPLOYEE_CARD_PANEL_EMPLOYEE_HAS_LEAVED_LABEL: string;\n\tEMPLOYEE_CARD_PANEL_UNTIL_TODAY_LABEL: string;\n\tEMPLOYEE_CARD_PANEL_UNTIL_TODAY_LABEL_MORNING: string;\n\tEMPLOYEE_CARD_PANEL_UNTIL_TOMORROW_LABEL: string;\n\tEMPLOYEE_CARD_PANEL_UNTIL_TOMORROW_MORNING_LABEL: string;\n\tEMPLOYEE_CARD_PANEL_UNTIL_DATE_LABEL: string;\n\tEMPLOYEE_CARD_PANEL_UNTIL_MORNING_DATE_LABEL: string;\n\tEMPLOYEE_CARD_PANEL_WORKING_LOCATION: string;\n\tEMPLOYEE_CARD_PANEL_PLANNING: string;\n}\n\nexport const luPopupEmployeeTranslations: LuTranslation<LuPopupEmployeeTranslations> = Translations;\n","import { HttpClient } from '@angular/common/http';\nimport { inject, Injectable } from '@angular/core';\nimport { Observable, OperatorFunction } from 'rxjs';\nimport { shareReplay } from 'rxjs/operators';\n\nimport { ILuUserPopoverStore } from './user-popover-service.model';\nimport { LuUserPopover } from '../user-popover.model';\n\n@Injectable({\n\tprovidedIn: 'root',\n})\nexport class LuUserPopoverStore implements ILuUserPopoverStore {\n\t#http = inject(HttpClient);\n\t#cache = new Map<number, Observable<LuUserPopover>>();\n\tprotected _api = '/work-locations/api/employee-profile-card';\n\n\tpublic get(id: number): Observable<LuUserPopover> {\n\t\tif (this.#cache.has(id)) {\n\t\t\treturn this.#cache.get(id)!;\n\t\t}\n\t\tconst userPopoverObservable = this.#http.get<LuUserPopover>(`${this._api}/${id}`).pipe(\n\t\t\tcacheImage((c) => c.pictureHref),\n\t\t\tshareReplay(1),\n\t\t);\n\n\t\tthis.#cache.set(id, userPopoverObservable);\n\t\treturn userPopoverObservable;\n\t}\n\n\tpublic clearCache(userId?: number) {\n\t\tif (userId) {\n\t\t\tthis.#cache.delete(userId);\n\t\t} else {\n\t\t\tthis.#cache.clear();\n\t\t}\n\t}\n}\n\nexport function cacheImage<T>(accessor: (value: T) => string | undefined): OperatorFunction<T, T> {\n\treturn (source: Observable<T>): Observable<T> =>\n\t\tnew Observable((subscriber) => {\n\t\t\tsource.subscribe({\n\t\t\t\tnext(value) {\n\t\t\t\t\tconst imagePath = accessor(value);\n\t\t\t\t\tif (!imagePath) {\n\t\t\t\t\t\tsubscriber.next(value);\n\t\t\t\t\t}\n\t\t\t\t\tconst img = new Image();\n\t\t\t\t\timg.src = imagePath!;\n\t\t\t\t\timg.onload = () => {\n\t\t\t\t\t\tsubscriber.next(value);\n\t\t\t\t\t};\n\t\t\t\t\timg.onerror = () => {\n\t\t\t\t\t\tsubscriber.next(value);\n\t\t\t\t\t};\n\t\t\t\t},\n\t\t\t\terror(err: Error) {\n\t\t\t\t\tsubscriber.error(err);\n\t\t\t\t},\n\t\t\t});\n\t\t});\n}\n","import { InjectionToken, makeEnvironmentProviders, Signal } from '@angular/core';\nimport { ILuUser } from '@lucca-front/ng/user';\n\nexport const LU_USER_POPOVER_USER = new InjectionToken<Signal<ILuUser>>('user-popover-user');\n\n/**\n * @deprecated no longer needed as user popover uses `luPopover2`\n */\nexport function provideLuUserPopover() {\n\treturn makeEnvironmentProviders([]);\n}\n","import { Pipe, PipeTransform } from '@angular/core';\nimport { isFuture, isToday } from 'date-fns';\n\n@Pipe({\n\tname: 'isFuture',\n})\nexport class IsFuturePipe implements PipeTransform {\n\tpublic transform(value: Date | undefined): boolean {\n\t\treturn !!value && isFuture(value);\n\t}\n}\n\n@Pipe({\n\tname: 'isFutureOrToday',\n})\nexport class IsFutureOrTodayPipe implements PipeTransform {\n\tpublic transform(value: Date | undefined): boolean {\n\t\treturn !value || isFuture(value) || isToday(value);\n\t}\n}\n","import { formatDate } from '@angular/common';\nimport { inject, LOCALE_ID, Pipe, PipeTransform } from '@angular/core';\nimport { getIntl } from '@lucca-front/ng/core';\nimport { isToday, isTomorrow } from 'date-fns';\nimport { LU_POPUP_EMPLOYEE_TRANSLATIONS } from '../../popup-employee.translate';\n\n@Pipe({\n\tname: 'leaveEndsDisplay',\n})\nexport class LeaveEndsDisplayPipe implements PipeTransform {\n\treadonly intl = getIntl(LU_POPUP_EMPLOYEE_TRANSLATIONS);\n\treadonly locale = inject(LOCALE_ID);\n\tpublic transform(leaveEndsOn: Date, leaveEndIsFirstHalfDay: boolean): string {\n\t\tif (isToday(leaveEndsOn)) {\n\t\t\tif (leaveEndIsFirstHalfDay) {\n\t\t\t\treturn this.intl.EMPLOYEE_CARD_PANEL_UNTIL_TODAY_LABEL_MORNING;\n\t\t\t} else {\n\t\t\t\treturn this.intl.EMPLOYEE_CARD_PANEL_UNTIL_TODAY_LABEL;\n\t\t\t}\n\t\t} else if (isTomorrow(leaveEndsOn)) {\n\t\t\tif (leaveEndIsFirstHalfDay) {\n\t\t\t\treturn this.intl.EMPLOYEE_CARD_PANEL_UNTIL_TOMORROW_MORNING_LABEL;\n\t\t\t}\n\t\t\treturn this.intl.EMPLOYEE_CARD_PANEL_UNTIL_TOMORROW_LABEL;\n\t\t} else {\n\t\t\tif (leaveEndIsFirstHalfDay) {\n\t\t\t\treturn this.intl.EMPLOYEE_CARD_PANEL_UNTIL_MORNING_DATE_LABEL.replace('{{date}}', formatDate(leaveEndsOn, 'longDate', this.locale));\n\t\t\t}\n\t\t\treturn this.intl.EMPLOYEE_CARD_PANEL_UNTIL_DATE_LABEL.replace('{{date}}', formatDate(leaveEndsOn, 'longDate', this.locale));\n\t\t}\n\t}\n}\n","import { AsyncPipe, DatePipe, NgTemplateOutlet } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject, input, Signal } from '@angular/core';\nimport { toObservable } from '@angular/core/rxjs-interop';\nimport { intlInputOptions, IntlParamsPipe } from '@lucca-front/ng/core';\nimport { IconComponent } from '@lucca-front/ng/icon';\nimport { LinkComponent } from '@lucca-front/ng/link';\nimport { POPOVER_CONFIG } from '@lucca-front/ng/popover2';\nimport { SkeletonUserPopoverComponent } from '@lucca-front/ng/skeleton';\nimport { ILuUser } from '@lucca-front/ng/user';\nimport { BehaviorSubject, catchError, combineLatest, Observable, of, switchMap, tap } from 'rxjs';\nimport { map, shareReplay } from 'rxjs/operators';\nimport { LU_POPUP_EMPLOYEE_TRANSLATIONS } from '../../popup-employee.translate';\nimport { LuUserPopoverStore } from '../../service/user-popover.store';\nimport { LuUserPopover } from '../../user-popover.model';\nimport { LU_USER_POPOVER_USER } from '../../user-popover.providers';\nimport { IsFutureOrTodayPipe, IsFuturePipe } from '../pipe/is-future.pipe';\nimport { LeaveEndsDisplayPipe } from '../pipe/leave-ends-display.pipe';\n\n@Component({\n\tselector: 'lu-user-popover-content',\n\ttemplateUrl: './user-popover.component.html',\n\tstyleUrl: './user-popover.component.scss',\n\timports: [AsyncPipe, NgTemplateOutlet, DatePipe, IntlParamsPipe, IsFuturePipe, IsFutureOrTodayPipe, LeaveEndsDisplayPipe, IconComponent, LinkComponent, SkeletonUserPopoverComponent],\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class LuUserPopoverComponent {\n\tluUser = inject<Signal<ILuUser>>(LU_USER_POPOVER_USER);\n\n\t#popoverRef = inject(POPOVER_CONFIG).ref;\n\n\t#service = inject(LuUserPopoverStore);\n\n\treadonly intl = input(...intlInputOptions(LU_POPUP_EMPLOYEE_TRANSLATIONS));\n\n\treadonly #errorImage$ = new BehaviorSubject<boolean>(false);\n\n\tskeletonWidths = [this.getRandomPercent(), this.getRandomPercent(), this.getRandomPercent(), this.getRandomPercent()];\n\n\tpublic readonly employee$: Observable<LuUserPopover> = toObservable(this.luUser).pipe(\n\t\tswitchMap((user) =>\n\t\t\tthis.#service.get(user.id).pipe(\n\t\t\t\tcatchError(() =>\n\t\t\t\t\tof({\n\t\t\t\t\t\tid: user.id,\n\t\t\t\t\t\tfirstName: user.firstName,\n\t\t\t\t\t\tlastName: user.lastName,\n\t\t\t\t\t\tleaveEndIsFirstHalfDay: false,\n\t\t\t\t\t}),\n\t\t\t\t),\n\t\t\t),\n\t\t),\n\t\ttap(() => this.#popoverRef.updatePosition()),\n\t\tshareReplay(1),\n\t);\n\n\tpublic readonly userPictureDisplay$ = combineLatest([this.employee$, this.#errorImage$]).pipe(\n\t\tmap(([employee, isError]) => {\n\t\t\tif (employee.pictureHref && !isError) {\n\t\t\t\treturn 'img';\n\t\t\t} else {\n\t\t\t\treturn 'initials';\n\t\t\t}\n\t\t}),\n\t);\n\n\tpublic readonly userPictureHref$ = this.employee$.pipe(map((employee) => employee.pictureHref));\n\n\tpublic readonly userInitials$ = this.employee$.pipe(\n\t\tmap((employee) => {\n\t\t\tconst initials = `${employee.firstName[0]}${employee.lastName[0]}`;\n\n\t\t\treturn {\n\t\t\t\tinitials,\n\t\t\t\tcolor: `${employee.firstName} ${employee.lastName}`.split('').reduce((sum, a) => sum + a.charCodeAt(0), 0) % 360,\n\t\t\t};\n\t\t}),\n\t);\n\n\tpictureError() {\n\t\tthis.#errorImage$.next(true);\n\t}\n\n\tgetRandomPercent(min: number = 33, max: number = 66): string {\n\t\treturn `${Math.floor(Math.random() * (max - min) + min).toString()}%`;\n\t}\n}\n","@if (employee$ | async; as employee) {\n\t<div class=\"userPopover pr-u-animatedFadeIn\">\n\t\t<section class=\"userPopover-details\">\n\t\t\t<div class=\"userPopover-details-avatar avatar\">\n\t\t\t\t@switch (userPictureDisplay$ | async) {\n\t\t\t\t\t@case (\"img\") {\n\t\t\t\t\t\t<img\n\t\t\t\t\t\t\tclass=\"avatar-picture\"\n\t\t\t\t\t\t\t[src]=\"userPictureHref$ | async\"\n\t\t\t\t\t\t\t[alt]=\"(userInitials$ | async)?.initials\"\n\t\t\t\t\t\t\t(error)=\"pictureError()\"\n\t\t\t\t\t\t\ttranslate=\"no\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t}\n\t\t\t\t\t@case (\"initials\") {\n\t\t\t\t\t\t@if (userInitials$ | async; as initials) {\n\t\t\t\t\t\t\t<div class=\"avatar-picture\" style.background-color=\"hsl({{ initials.color }}, 60%, 60%)\">\n\t\t\t\t\t\t\t\t<span class=\"avatar-picture-initials\" translate=\"no\">{{ initials.initials }}</span>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t</div>\n\t\t\t<div class=\"userPopover-details-info\">\n\t\t\t\t<h1 class=\"userPopover-details-info-name pr-u-ellipsis\">\n\t\t\t\t\t@if (!employee._links?.hrCard?.href) {\n\t\t\t\t\t\t<ng-container *ngTemplateOutlet=\"fullNameDisplay\" />\n\t\t\t\t\t} @else {\n\t\t\t\t\t\t<a luLink class=\"userPopover-details-info-name-linkOptional\" [href]=\"employee._links?.hrCard?.href\" external hiddenIcon>\n\t\t\t\t\t\t\t<ng-container *ngTemplateOutlet=\"fullNameDisplay\" />\n\t\t\t\t\t\t</a>\n\t\t\t\t\t}\n\t\t\t\t</h1>\n\t\t\t\t<ng-template #fullNameDisplay\n\t\t\t\t\t><span translate=\"no\">{{ employee.firstName }} {{ employee.lastName }}</span></ng-template\n\t\t\t\t>\n\t\t\t\t@if (employee.jobTitle) {\n\t\t\t\t\t<p class=\"userPopover-details-info-detail pr-u-ellipsis\">{{ employee.jobTitle }}</p>\n\t\t\t\t}\n\t\t\t\t@if (employee.userDepartment?.name) {\n\t\t\t\t\t<p class=\"userPopover-details-info-detail pr-u-ellipsis\">{{ employee.userDepartment?.name }}</p>\n\t\t\t\t}\n\n\t\t\t\t<p class=\"userPopover-details-info-detail pr-u-marginTopXS\">\n\t\t\t\t\t<!-- HORS CONTRAT-->\n\t\t\t\t\t@if (employee.dtContractStart | isFuture) {\n\t\t\t\t\t\t<span class=\"userPopover-details-info-detail-workplace\">\n\t\t\t\t\t\t\t<lu-icon icon=\"calendarPlanning\" size=\"S\" />\n\t\t\t\t\t\t\t<span class=\"userPopover-details-info-detail-link-state\">\n\t\t\t\t\t\t\t\t{{\n\t\t\t\t\t\t\t\t\tintl().EMPLOYEE_CARD_PANEL_COMING_ON_LABEL | intlParams: { date: (employee.dtContractStart | date: \"shortDate\") ?? \"\" }\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t</span>\n\t\t\t\t\t}\n\t\t\t\t\t<!-- Contrat terminé -->\n\t\t\t\t\t@if (!(employee.dtContractStart | isFuture) && !(employee.dtContractEnd | isFutureOrToday)) {\n\t\t\t\t\t\t<span class=\"userPopover-details-info-detail-workplace\">\n\t\t\t\t\t\t\t<lu-icon icon=\"calendarStrikethrough\" size=\"S\" />\n\t\t\t\t\t\t\t<span class=\"userPopover-details-info-detail-link-state\"> {{ intl().EMPLOYEE_CARD_PANEL_EMPLOYEE_HAS_LEAVED_LABEL }} </span>\n\t\t\t\t\t\t</span>\n\t\t\t\t\t}\n\n\t\t\t\t\t<!-- EN CONTRAT-->\n\t\t\t\t\t@if (employee._links?.schedule && !(employee.dtContractStart | isFuture) && (employee.dtContractEnd | isFutureOrToday)) {\n\t\t\t\t\t\t<span class=\"userPopover-details-info-detail-workplace\">\n\t\t\t\t\t\t\t@if (employee.isWorkingNow && employee.currentWorkLocation) {\n\t\t\t\t\t\t\t\t<lu-icon icon=\"mapPin\" size=\"S\" />\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t@if (!employee.isWorkingNow || !employee.currentWorkLocation) {\n\t\t\t\t\t\t\t\t<lu-icon icon=\"calendarPlanning\" size=\"S\" />\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t<a\n\t\t\t\t\t\t\t\tluLink\n\t\t\t\t\t\t\t\tclass=\"userPopover-details-info-detail-workplace-state\"\n\t\t\t\t\t\t\t\t[href]=\"employee._links?.schedule?.href\"\n\t\t\t\t\t\t\t\texternal\n\t\t\t\t\t\t\t\thiddenIcon\n\t\t\t\t\t\t\t\tdecorationHover\n\t\t\t\t\t\t\t\tneutral\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t@if (employee.isWorkingNow) {\n\t\t\t\t\t\t\t\t\t@if (employee.currentWorkLocation) {\n\t\t\t\t\t\t\t\t\t\t{{ employee.currentWorkLocation.name }}\n\t\t\t\t\t\t\t\t\t\t@if (employee.currentWorkLocation.area) {\n\t\t\t\t\t\t\t\t\t\t\t<span class=\"pr-u-colorTextSubtle\"> – {{ employee.currentWorkLocation.area.name }}</span>\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t@if (!employee.currentWorkLocation) {\n\t\t\t\t\t\t\t\t\t\t{{ intl().EMPLOYEE_CARD_PANEL_PRESENT_LABEL }}\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t} @else {\n\t\t\t\t\t\t\t\t\t@if (!(employee.dtContractStart | isFuture) && (employee.dtContractEnd | isFutureOrToday)) {\n\t\t\t\t\t\t\t\t\t\t{{ intl().EMPLOYEE_CARD_PANEL_ABSENCE_LABEL }}\n\t\t\t\t\t\t\t\t\t\t@if (employee.leaveEndsOn) {\n\t\t\t\t\t\t\t\t\t\t\t<span class=\"pr-u-colorTextSubtle\"\n\t\t\t\t\t\t\t\t\t\t\t\t> – {{ employee.leaveEndsOn | leaveEndsDisplay: employee.leaveEndIsFirstHalfDay }}\n\t\t\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t</span>\n\t\t\t\t\t}\n\t\t\t\t</p>\n\t\t\t</div>\n\t\t</section>\n\t</div>\n} @else {\n\t<lu-skeleton-user-popover />\n}\n","import { Directive, input, linkedSignal } from '@angular/core';\nimport { PopoverDirective } from '@lucca-front/ng/popover2';\nimport { ILuUser } from '@lucca-front/ng/user';\nimport { LU_USER_POPOVER_USER } from '../../user-popover.providers';\nimport { LuUserPopoverComponent } from './user-popover.component';\n\n@Directive({\n\tselector: '[luUserPopover]',\n\thost: {\n\t\t'[attr.aria-expanded]': 'opened()',\n\t},\n\texportAs: 'LuUserPopoverDirective',\n})\nexport class LuUserPopoverDirective extends PopoverDirective {\n\treadonly luUserPopover = input.required<ILuUser>();\n\n\treadonly luUserPopoverDisabled = input<boolean>(false);\n\n\toverride readonly luPopoverDisabled = linkedSignal(() => this.luUserPopoverDisabled());\n\n\toverride readonly additionalProviders = [{ provide: LU_USER_POPOVER_USER, useValue: this.luUserPopover }];\n\n\tconstructor() {\n\t\tsuper();\n\t\tthis.customPositions.set([\n\t\t\t{ overlayX: 'start', overlayY: 'bottom', originX: 'start', originY: 'top' },\n\t\t\t{ overlayX: 'start', overlayY: 'top', originX: 'start', originY: 'bottom' },\n\t\t]);\n\t\tthis.luPopoverTrigger.set('hover+focus');\n\t\tthis.luPopoverNoCloseButton.set(true);\n\t\tthis.content.set(LuUserPopoverComponent);\n\t}\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@lucca-front/ng",
|
|
3
|
-
"version": "22.1.0-rc.
|
|
3
|
+
"version": "22.1.0-rc.4",
|
|
4
4
|
"description": "A library of icons made by the team @Lucca",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -28,9 +28,9 @@
|
|
|
28
28
|
"@angular/core": "^22.0.0",
|
|
29
29
|
"@angular/cdk": "^22.0.0",
|
|
30
30
|
"@angular/animations": "^22.0.0",
|
|
31
|
-
"@lucca-front/icons": "22.1.0-rc.
|
|
32
|
-
"@lucca-front/scss": "22.1.0-rc.
|
|
33
|
-
"@lucca/prisme": "22.1.0-rc.
|
|
31
|
+
"@lucca-front/icons": "22.1.0-rc.4",
|
|
32
|
+
"@lucca-front/scss": "22.1.0-rc.4",
|
|
33
|
+
"@lucca/prisme": "22.1.0-rc.4",
|
|
34
34
|
"@types/dompurify": "^3.0.0",
|
|
35
35
|
"isomorphic-dompurify": "^2.17.0",
|
|
36
36
|
"marked": "^14.1.0",
|
|
@@ -21,26 +21,22 @@ interface CellStatus {
|
|
|
21
21
|
|
|
22
22
|
interface DateRangeInput {
|
|
23
23
|
class?: `palette-${Palette}` | string;
|
|
24
|
-
|
|
25
|
-
* Start bound of the range. Optional: a range can be open on its start, for instance when
|
|
26
|
-
* a filter only expresses an "until" date.
|
|
27
|
-
*/
|
|
28
|
-
start?: Date | string | null;
|
|
29
|
-
/**
|
|
30
|
-
* End bound of the range. Optional: a range can be open on its end, for instance when
|
|
31
|
-
* a filter only expresses a "from" date.
|
|
32
|
-
*/
|
|
24
|
+
start: Date | string;
|
|
33
25
|
end?: Date | string | null;
|
|
34
26
|
label?: string;
|
|
35
27
|
scope?: CalendarMode;
|
|
36
28
|
}
|
|
37
29
|
interface DateRange extends DateRangeInput {
|
|
38
|
-
start
|
|
30
|
+
start: Date;
|
|
39
31
|
end?: Date | null;
|
|
40
32
|
}
|
|
41
33
|
|
|
34
|
+
interface OpenDateRange extends Omit<DateRange, 'start'> {
|
|
35
|
+
start?: Date | null;
|
|
36
|
+
}
|
|
37
|
+
|
|
42
38
|
interface RangeInfo {
|
|
43
|
-
range?:
|
|
39
|
+
range?: OpenDateRange;
|
|
44
40
|
/**
|
|
45
41
|
* Bound the range is anchored on: its start when it has one, its end otherwise.
|
|
46
42
|
* A range without start date is rendered from its end, the same way an incomplete
|
|
@@ -149,7 +145,7 @@ declare class Calendar2Component implements OnInit {
|
|
|
149
145
|
getWeekRowClasses(week: CalendarCellInfo[]): Record<string, boolean>;
|
|
150
146
|
getWeekDayCellClasses(day: CalendarCellInfo, isLastDay: boolean): Record<string, boolean>;
|
|
151
147
|
getRangeInfo(date: Date, scope: CalendarMode | null, isOverflow?: boolean): {
|
|
152
|
-
range:
|
|
148
|
+
range: OpenDateRange;
|
|
153
149
|
anchor: Date;
|
|
154
150
|
isStart: boolean;
|
|
155
151
|
isEnd: boolean;
|
|
@@ -299,8 +295,8 @@ declare class DateRangeInputComponent extends AbstractDateComponent implements O
|
|
|
299
295
|
readonly startUserTextInput: _angular_core.WritableSignal<string>;
|
|
300
296
|
readonly endTextInputRef: Signal<ElementRef<HTMLInputElement>>;
|
|
301
297
|
readonly endUserTextInput: _angular_core.WritableSignal<string>;
|
|
302
|
-
readonly initialValue: _angular_core.WritableSignal<
|
|
303
|
-
readonly selectedRange: _angular_core.WritableSignal<
|
|
298
|
+
readonly initialValue: _angular_core.WritableSignal<OpenDateRange>;
|
|
299
|
+
readonly selectedRange: _angular_core.WritableSignal<OpenDateRange>;
|
|
304
300
|
readonly dateHovered: _angular_core.WritableSignal<Date>;
|
|
305
301
|
readonly placeholder: _angular_core.InputSignal<string>;
|
|
306
302
|
readonly widthAuto: _angular_core.InputSignalWithTransform<boolean, boolean | "" | "false" | "true">;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as _angular_core from '@angular/core';
|
|
2
|
-
import { ElementRef, TemplateRef, InjectionToken } from '@angular/core';
|
|
2
|
+
import { ElementRef, TemplateRef, Signal, WritableSignal, InjectionToken } from '@angular/core';
|
|
3
3
|
import * as _lucca_front_ng_filter_pills from '@lucca-front/ng/filter-pills';
|
|
4
4
|
import { ConnectionPositionPair } from '@angular/cdk/overlay';
|
|
5
5
|
import { LuccaIcon } from '@lucca-front/icons';
|
|
@@ -62,6 +62,14 @@ declare class FilterPillComponent implements FilterPillHostComponent {
|
|
|
62
62
|
static ɵcmp: _angular_core.ɵɵComponentDeclaration<FilterPillComponent, "lu-filter-pill", never, { "intl": { "alias": "intl"; "required": false; "isSignal": true; }; "name": { "alias": "name"; "required": false; "isSignal": true; }; "optional": { "alias": "optional"; "required": false; "isSignal": true; }; "grouping": { "alias": "grouping"; "required": false; "isSignal": true; }; "iconOnly": { "alias": "iconOnly"; "required": false; "isSignal": true; }; "backdrop": { "alias": "backdrop"; "required": false; "isSignal": true; }; "displayed": { "alias": "displayed"; "required": false; "isSignal": true; }; "label": { "alias": "label"; "required": true; "isSignal": true; }; "placeholderOverride": { "alias": "placeholder"; "required": false; "isSignal": true; }; "icon": { "alias": "icon"; "required": false; "isSignal": true; }; }, { "displayed": "displayedChange"; }, ["childInputComponentRef"], ["*"], true, never>;
|
|
63
63
|
}
|
|
64
64
|
|
|
65
|
+
/**
|
|
66
|
+
* Shape of `lu-segmented-control-tabs` used by the filter bar, typed structurally
|
|
67
|
+
* since importing the component would create a cycle between entrypoints
|
|
68
|
+
*/
|
|
69
|
+
interface FilterBarSegmentedControlTabs {
|
|
70
|
+
readonly tablistTemplate: Signal<TemplateRef<unknown>>;
|
|
71
|
+
readonly externalTablist: WritableSignal<boolean>;
|
|
72
|
+
}
|
|
65
73
|
declare class FilterBarComponent {
|
|
66
74
|
readonly intl: _angular_core.InputSignalWithTransform<_lucca_front_ng_filter_pills.LuFilterPillsLabel, Partial<_lucca_front_ng_filter_pills.LuFilterPillsLabel>>;
|
|
67
75
|
/**
|
|
@@ -69,19 +77,25 @@ declare class FilterBarComponent {
|
|
|
69
77
|
* telling assistive technology users that the results list updates automatically
|
|
70
78
|
*/
|
|
71
79
|
readonly manualApply: _angular_core.InputSignalWithTransform<boolean, boolean | "" | "false" | "true">;
|
|
80
|
+
/**
|
|
81
|
+
* Segmented control tabs whose tablist is displayed at the end of the filter bar, in its scroll box.
|
|
82
|
+
* Its panels stay where the `lu-segmented-control-tabs` is declared.
|
|
83
|
+
* The `luFilterPillAddonAfter` addon is displayed after the tabs, separated by a divider.
|
|
84
|
+
*/
|
|
85
|
+
readonly segmentedControlTabs: _angular_core.InputSignal<FilterBarSegmentedControlTabs>;
|
|
72
86
|
readonly autoApplyAnnouncementId: string;
|
|
73
|
-
readonly addonBefore:
|
|
74
|
-
readonly addonAfter:
|
|
75
|
-
readonly pills:
|
|
76
|
-
readonly optionalPills:
|
|
77
|
-
protected readonly displayedOptionalPills:
|
|
87
|
+
readonly addonBefore: WritableSignal<TemplateRef<unknown>>;
|
|
88
|
+
readonly addonAfter: WritableSignal<TemplateRef<unknown>>;
|
|
89
|
+
readonly pills: Signal<readonly FilterPillComponent[]>;
|
|
90
|
+
readonly optionalPills: Signal<FilterPillComponent[]>;
|
|
91
|
+
protected readonly displayedOptionalPills: Signal<FilterPillComponent[]>;
|
|
78
92
|
/** Mirrors the search clue of the optional filters select, which filters its options on its own. */
|
|
79
|
-
protected readonly clue:
|
|
93
|
+
protected readonly clue: WritableSignal<string>;
|
|
80
94
|
/**
|
|
81
95
|
* The panel builds a group out of each run of consecutive options, so the pills of a same group
|
|
82
96
|
* have to be listed together. Groups keep the order of their first pill, ungrouped pills come first.
|
|
83
97
|
*/
|
|
84
|
-
protected readonly optionalPillOptions:
|
|
98
|
+
protected readonly optionalPillOptions: Signal<FilterPillComponent[]>;
|
|
85
99
|
/** Optional pills are identified by their instance, they have no serializable value to compare. */
|
|
86
100
|
protected readonly optionalPillComparer: LuOptionComparer$1<FilterPillComponent>;
|
|
87
101
|
private readonly optionalPillsSelect;
|
|
@@ -89,7 +103,7 @@ declare class FilterBarComponent {
|
|
|
89
103
|
constructor();
|
|
90
104
|
protected displayOptionalPills(pills: FilterPillComponent[]): void;
|
|
91
105
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<FilterBarComponent, never>;
|
|
92
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<FilterBarComponent, "lu-filter-bar", never, { "intl": { "alias": "intl"; "required": false; "isSignal": true; }; "manualApply": { "alias": "manualApply"; "required": false; "isSignal": true; }; }, {}, ["pills"], ["*"], true, never>;
|
|
106
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<FilterBarComponent, "lu-filter-bar", never, { "intl": { "alias": "intl"; "required": false; "isSignal": true; }; "manualApply": { "alias": "manualApply"; "required": false; "isSignal": true; }; "segmentedControlTabs": { "alias": "segmentedControlTabs"; "required": false; "isSignal": true; }; }, {}, ["pills"], ["*"], true, never>;
|
|
93
107
|
}
|
|
94
108
|
|
|
95
109
|
declare const LU_FILTER_BAR_INSTANCE: InjectionToken<FilterBarComponent>;
|
|
@@ -154,4 +168,4 @@ interface LuFilterPillsLabel {
|
|
|
154
168
|
declare const luFilterPillsTranslations: LuTranslation<LuFilterPillsLabel>;
|
|
155
169
|
|
|
156
170
|
export { FilterBarComponent, FilterPillAddonAfterDirective, FilterPillAddonBeforeDirective, FilterPillComponent, FilterViewSelectorComponent, LU_FILTER_BAR_INSTANCE, LU_FILTER_PILLS_TRANSLATIONS, filterViewDefaultOptionComparer, filterViewDefaultOptionKey, luFilterPillsTranslations };
|
|
157
|
-
export type { LuFilterPillsLabel, LuOptionComparer };
|
|
171
|
+
export type { FilterBarSegmentedControlTabs, LuFilterPillsLabel, LuOptionComparer };
|
|
@@ -1,18 +1,32 @@
|
|
|
1
1
|
import * as _angular_core from '@angular/core';
|
|
2
|
-
import { AfterContentInit, ElementRef } from '@angular/core';
|
|
2
|
+
import { AfterContentInit, ElementRef, TemplateRef } from '@angular/core';
|
|
3
3
|
import * as _lucca_front_ng_segmented_control_tabs from '@lucca-front/ng/segmented-control-tabs';
|
|
4
|
+
import { LuccaIcon } from '@lucca-front/icons';
|
|
4
5
|
import { PortalContent } from '@lucca-front/ng/core';
|
|
5
6
|
import * as i1 from '@lucca-front/ng/forms';
|
|
6
7
|
|
|
7
8
|
declare class SegmentedControlTabsPanelComponent<T = unknown> {
|
|
8
9
|
protected segmentedControlTabsRef: _lucca_front_ng_segmented_control_tabs.SegmentedControlTabsComponent<unknown>;
|
|
9
10
|
readonly label: _angular_core.InputSignal<PortalContent>;
|
|
11
|
+
/**
|
|
12
|
+
* Icon displayed before the tab label
|
|
13
|
+
*/
|
|
14
|
+
readonly icon: _angular_core.InputSignal<LuccaIcon>;
|
|
15
|
+
/**
|
|
16
|
+
* Hide the tab label, while keeping it in DOM for screen readers, and display it as a tooltip on hover and focus of the tab.
|
|
17
|
+
* Requires a text label, ignored otherwise.
|
|
18
|
+
*/
|
|
19
|
+
readonly hiddenLabel: _angular_core.InputSignalWithTransform<boolean, boolean | "" | "false" | "true">;
|
|
20
|
+
/**
|
|
21
|
+
* Text label of a tab whose label is hidden, null otherwise
|
|
22
|
+
*/
|
|
23
|
+
readonly hiddenLabelText: _angular_core.Signal<string>;
|
|
10
24
|
readonly value: _angular_core.InputSignal<T>;
|
|
11
25
|
readonly id: number;
|
|
12
26
|
readonly panelId: string;
|
|
13
27
|
readonly labelId: string;
|
|
14
28
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<SegmentedControlTabsPanelComponent<any>, never>;
|
|
15
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<SegmentedControlTabsPanelComponent<any>, "lu-segmented-control-tabs-panel", never, { "label": { "alias": "label"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": true; "isSignal": true; }; }, {}, never, ["*"], true, never>;
|
|
29
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<SegmentedControlTabsPanelComponent<any>, "lu-segmented-control-tabs-panel", never, { "label": { "alias": "label"; "required": false; "isSignal": true; }; "icon": { "alias": "icon"; "required": false; "isSignal": true; }; "hiddenLabel": { "alias": "hiddenLabel"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": true; "isSignal": true; }; }, {}, never, ["*"], true, never>;
|
|
16
30
|
}
|
|
17
31
|
|
|
18
32
|
declare class SegmentedControlTabsComponent<T = unknown> implements AfterContentInit {
|
|
@@ -32,6 +46,14 @@ declare class SegmentedControlTabsComponent<T = unknown> implements AfterContent
|
|
|
32
46
|
readonly id: string;
|
|
33
47
|
readonly tabs: _angular_core.Signal<readonly SegmentedControlTabsPanelComponent<T>[]>;
|
|
34
48
|
readonly tabButtons: _angular_core.Signal<readonly ElementRef<HTMLButtonElement>[]>;
|
|
49
|
+
/**
|
|
50
|
+
* Tablist template, rendered by the component itself unless a host (e.g. `lu-filter-bar`) renders it elsewhere
|
|
51
|
+
*/
|
|
52
|
+
readonly tablistTemplate: _angular_core.Signal<TemplateRef<unknown>>;
|
|
53
|
+
/**
|
|
54
|
+
* Set by a host rendering the tablist itself, so the component only renders its panels
|
|
55
|
+
*/
|
|
56
|
+
readonly externalTablist: _angular_core.WritableSignal<boolean>;
|
|
35
57
|
readonly currentIndex: _angular_core.Signal<number>;
|
|
36
58
|
previous(): void;
|
|
37
59
|
next(): void;
|
|
@@ -80,10 +80,6 @@ interface LuPopupEmployeeTranslations {
|
|
|
80
80
|
declare const luPopupEmployeeTranslations: LuTranslation<LuPopupEmployeeTranslations>;
|
|
81
81
|
|
|
82
82
|
declare const LU_USER_POPOVER_USER: InjectionToken<Signal<ILuUser>>;
|
|
83
|
-
/**
|
|
84
|
-
* @deprecated no longer needed as popover is always activated
|
|
85
|
-
*/
|
|
86
|
-
declare const USER_POPOVER_IS_ACTIVATED: InjectionToken<Observable<boolean>>;
|
|
87
83
|
/**
|
|
88
84
|
* @deprecated no longer needed as user popover uses `luPopover2`
|
|
89
85
|
*/
|
|
@@ -102,5 +98,5 @@ declare class LuUserPopoverDirective extends PopoverDirective {
|
|
|
102
98
|
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<LuUserPopoverDirective, "[luUserPopover]", ["LuUserPopoverDirective"], { "luUserPopover": { "alias": "luUserPopover"; "required": true; "isSignal": true; }; "luUserPopoverDisabled": { "alias": "luUserPopoverDisabled"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
103
99
|
}
|
|
104
100
|
|
|
105
|
-
export { LU_POPUP_EMPLOYEE_TRANSLATIONS, LU_USER_POPOVER_USER, LuUserPopoverComponent, LuUserPopoverDirective,
|
|
101
|
+
export { LU_POPUP_EMPLOYEE_TRANSLATIONS, LU_USER_POPOVER_USER, LuUserPopoverComponent, LuUserPopoverDirective, luPopupEmployeeTranslations, provideLuUserPopover };
|
|
106
102
|
export type { LuPopupEmployeeTranslations };
|