@dflat-core/web 1.7.2070 → 1.7.2071

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.
@@ -3,7 +3,7 @@ import { DefaultTreeviewI18n, TreeviewConfig, TreeviewI18n, TreeviewItem, Treevi
3
3
  import { CoreDataModule } from "@dflat-core/web/core-data";
4
4
  import { ApiErrorTypes, ConditionalResults, CoreModelModule, FilterType, ImageFormats, User } from "@dflat-core/web/core-model";
5
5
  import * as i4$2 from "@dflat-core/web/core-ux";
6
- import { Action, BaseComponent, BaseEditorComponent, BaseEntityEditor, CanDeactivateGuard, CoreUxModule, DefaultLayoutComponent, DialogType, DynamicFormComponent, EntitySections, EntitySelectors, MessageSeverity, NewEditorComponent, PP_SERVICE, SelectorMapperServiceBase, downloadFile, filterFromId } from "@dflat-core/web/core-ux";
6
+ import { Action, BaseComponent, BaseEditorComponent, BaseEntityEditor, CanDeactivateGuard, CoreUxModule, DefaultLayoutComponent, DialogType, DynamicFormComponent, EntitySections, EntitySelectors, MessageSeverity, NewEditorComponent, PP_SERVICE, PageTabRouteReuseStrategy, SelectorMapperServiceBase, downloadFile, filterFromId } from "@dflat-core/web/core-ux";
7
7
  import * as i0 from "@angular/core";
8
8
  import { ChangeDetectionStrategy, Component, Directive, EventEmitter, Inject, Injectable, InjectionToken, Input, LOCALE_ID, NgModule, Optional, Output, ViewChild, ViewEncapsulation, effect, inject, runInInjectionContext, viewChild } from "@angular/core";
9
9
  import { Observable, Subject, combineLatest, forkJoin, map, of, takeUntil } from "rxjs";
@@ -20,7 +20,7 @@ import { AddressDataService, CompanyDataService, CountryDataService, CurrencyDat
20
20
  import * as i1$2 from "ngx-bootstrap/modal";
21
21
  import { ModalModule, ModalOptions } from "ngx-bootstrap/modal";
22
22
  import * as i2$1 from "@angular/router";
23
- import { RouterModule } from "@angular/router";
23
+ import { RouteReuseStrategy, RouterModule } from "@angular/router";
24
24
  import * as i4$1 from "@kolkov/angular-editor";
25
25
  import { AngularEditorModule } from "@kolkov/angular-editor";
26
26
  import { NgSelectModule } from "@ng-select/ng-select";
@@ -22516,7 +22516,7 @@ var DFlatLayoutComponent = class DFlatLayoutComponent extends DefaultLayoutCompo
22516
22516
  selector: "msw-layout",
22517
22517
  usesInheritance: true,
22518
22518
  ngImport: i0,
22519
- template: "<div class=\"base-container\">\r\n <div class=\"base-topbar\">\r\n <div class=\"left-topbar\">\r\n <button class=\"btn btn-primary btn-lg sidebar-button\" (click)=\"onToggleButtonClick()\">\r\n <i class=\"fa fa-bars\"></i>\r\n </button>\r\n\r\n <div (click)=\"this.backHome()\">\r\n <img [src]=\"this.appInfo.LogoUrl\" class=\"mini-logo-lg\" />\r\n </div>\r\n <div (click)=\"this.backHome()\">\r\n <span class=\"dflat-logo\"><b>{{this.appInfo.Name}}</b></span>\r\n </div>\r\n </div>\r\n <div class=\"center-topbar\">\r\n <ng-container *ngIf=\"this.app.FilterService.filterChanged$ | async\">\r\n <div class=\"search-bar-container\">\r\n <input class=\"search form-control search-bar-action\"\r\n (keyup.enter)=\"handleKeyboardEnter(this.app.FilterService.Keywords)\"\r\n type=\"text\"\r\n name=\"keyword\"\r\n [placeholder]=\"this.searchText\"\r\n #uniquename=\"ngModel\"\r\n [(ngModel)]=\"this.app.FilterService.Keywords\"/>\r\n </div>\r\n </ng-container>\r\n </div>\r\n </div>\r\n <div class=\"base-main\">\r\n <div class=\"sidebar-outcontainer\">\r\n <div class=\"sidebar-incontainer\">\r\n <div #sidebar ngClass=\"sidebar-container visible\"\r\n [class.uncollapsed]=\"sidebarVisible\"\r\n [class.collapsed]=\"!sidebarVisible\"\r\n (mouseleave)=\"hideSidebar($event)\"\r\n >\r\n <msw-user-menu class=\"user-menu\"\r\n [menuItems]=\"mylinks\"\r\n [compact]=\"!sidebarVisible\"\r\n (itemClick)=\"this.hideSidebar(null)\">\r\n </msw-user-menu>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"main-content\">\r\n <div class=\"main-component\">\r\n <router-outlet></router-outlet>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n<ng-http-loader\r\n [backdrop]=\"false\"\r\n [backgroundColor]=\"'transparent'\"\r\n [debounceDelay]=\"100\"\r\n [extraDuration]=\"300\"\r\n [minDuration]=\"300\"\r\n [opacity]=\"'1'\"\r\n [entryComponent]=\"spinnerComponent\">\r\n</ng-http-loader>\r\n",
22519
+ template: "<div class=\"base-container\">\r\n <div class=\"base-topbar\">\r\n <div class=\"left-topbar\">\r\n <button class=\"btn btn-primary btn-lg sidebar-button\" (click)=\"onToggleButtonClick()\">\r\n <i class=\"fa fa-bars\"></i>\r\n </button>\r\n\r\n <div (click)=\"this.backHome()\">\r\n <img [src]=\"this.appInfo.LogoUrl\" class=\"mini-logo-lg\" />\r\n </div>\r\n <div (click)=\"this.backHome()\">\r\n <span class=\"dflat-logo\"><b>{{this.appInfo.Name}}</b></span>\r\n </div>\r\n </div>\r\n <!-- Onglets des écrans ouverts depuis le menu, à droite du logo (voir PageTabService). -->\r\n <alg-page-tabs class=\"page-tabs-topbar\"></alg-page-tabs>\r\n <div class=\"center-topbar\">\r\n <ng-container *ngIf=\"this.app.FilterService.filterChanged$ | async\">\r\n <div class=\"search-bar-container\">\r\n <input class=\"search form-control search-bar-action\"\r\n (keyup.enter)=\"handleKeyboardEnter(this.app.FilterService.Keywords)\"\r\n type=\"text\"\r\n name=\"keyword\"\r\n [placeholder]=\"this.searchText\"\r\n #uniquename=\"ngModel\"\r\n [(ngModel)]=\"this.app.FilterService.Keywords\"/>\r\n </div>\r\n </ng-container>\r\n </div>\r\n </div>\r\n <div class=\"base-main\">\r\n <div class=\"sidebar-outcontainer\">\r\n <div class=\"sidebar-incontainer\">\r\n <div #sidebar ngClass=\"sidebar-container visible\"\r\n [class.uncollapsed]=\"sidebarVisible\"\r\n [class.collapsed]=\"!sidebarVisible\"\r\n (mouseleave)=\"hideSidebar($event)\"\r\n >\r\n <msw-user-menu class=\"user-menu\"\r\n [menuItems]=\"mylinks\"\r\n [compact]=\"!sidebarVisible\"\r\n (itemClick)=\"this.hideSidebar(null)\">\r\n </msw-user-menu>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"main-content\">\r\n <div class=\"main-component\">\r\n <router-outlet></router-outlet>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n<ng-http-loader\r\n [backdrop]=\"false\"\r\n [backgroundColor]=\"'transparent'\"\r\n [debounceDelay]=\"100\"\r\n [extraDuration]=\"300\"\r\n [minDuration]=\"300\"\r\n [opacity]=\"'1'\"\r\n [entryComponent]=\"spinnerComponent\">\r\n</ng-http-loader>\r\n",
22520
22520
  styles: [".home-page{font-family:Open sans,sans-serif;background:#fff;-webkit-font-smoothing:antialiased;height:100%;width:100%;padding:16px}.main-container{margin:0 50px}.main-container-modal{width:calc(100% - 50px);margin:10px 25px 0}.moyen-titre{font-weight:700;font-size:24px;color:#4d5a81;margin:8px 0;border-bottom:solid 1px #DBE4FF}.grand-titre{font-weight:700;font-size:28px;color:#4d5a81;margin:0 0 8px}.petit-titre{font-weight:700;font-size:16px;color:#4d5a81;margin:0 0 8px}.petit-titre.underlined{border-bottom:solid 1px #4D5A81}.paragraph{padding:0 15px}.paragraph-highlight{padding:5px 15px 0 12px;border-left:5px solid #8EA7F8;border-bottom:1px solid #DBE4FF;border-top:1px solid #DBE4FF;border-right:1px solid #DBE4FF;background-color:#f7faff}.highlight{background-color:#f7faff;border:1px solid #DBE4FF;border-radius:5px;padding:15px;color:#3c5dc4;margin:0 0 16px}.highlight p{margin-bottom:0}.highlight:before{position:relative;display:block;float:left;width:24px;height:24px;content:\" \";background-size:24px 24px;-webkit-background-size:24px 24px;background-image:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"53.294\" height=\"50.629\" viewBox=\"0 0 53.294 50.629\">%0D%0A <path id=\"allerg\\e8ne\" d=\"M830.494,25.793l-5.814,6.783.727,8.963-8.721,1.938-4.6,7.752L803.847,47.6l-8.236,3.634-4.6-7.51-8.721-1.938.727-8.963L777.2,26.035l5.814-6.783-.727-8.963,8.721-1.938L795.61.6l8.236,3.634L812.083.6l4.6,7.752,8.721,1.938-.727,8.963Zm-24.467,2.422V13.681h-4.845V28.216Zm0,9.69V33.06h-4.845v4.845Z\" transform=\"translate(-777.2 -0.6)\"/>%0D%0A</svg>%0D%0A');background-repeat:no-repeat;margin:0 8px 24px 0;filter:invert(31%) sepia(51%) saturate(1323%) hue-rotate(199deg) brightness(99%) contrast(94%)}.notification{background-color:#dbe4ff;border:1px solid #C4D0F9;border-radius:5px;color:#4d5a81;margin:16px;padding:5px 15px;text-align:justify}.notification:before{position:relative;display:block;float:left;width:24px;height:24px;content:\" \";background-size:24px 24px;-webkit-background-size:24px 24px;background-image:url('data:image/svg+xml,<svg aria-hidden=\"true\" focusable=\"false\" data-prefix=\"fas\" data-icon=\"info-circle\" class=\"svg-inline--fa fa-info-circle fa-w-16\" role=\"img\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\"><path fill=\"currentColor\" d=\"M256 8C119.043 8 8 119.083 8 256c0 136.997 111.043 248 248 248s248-111.003 248-248C504 119.083 392.957 8 256 8zm0 110c23.196 0 42 18.804 42 42s-18.804 42-42 42-42-18.804-42-42 18.804-42 42-42zm56 254c0 6.627-5.373 12-12 12h-88c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h12v-64h-12c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h64c6.627 0 12 5.373 12 12v100h12c6.627 0 12 5.373 12 12v24z\"></path></svg>');background-repeat:no-repeat;margin:0 8px 0 0;filter:invert(31%) sepia(8%) saturate(2329%) hue-rotate(188deg) brightness(103%) contrast(85%)}.notification-text{padding:0 15px 0 30px;font-size:16px}.sidebar-incontainer{height:100%;overflow-y:auto;overflow-x:hidden;-ms-overflow-style:none;scrollbar-width:none}.sidebar-outcontainer{height:100%;background:#3c5dc4;-ms-overflow-style:none;scrollbar-width:none}.sidebar-outcontainer::-webkit-scrollbar{display:none}.sidebar-button{width:50px;font-size:16px}.btn.btn-primary:hover,.btn.btn-primary:focus,.btn.btn-primary:active{color:#f7faff;background-color:#4465c9;border-color:#4465c9}.base-container{display:flex;width:100%;height:100%;flex-direction:column;flex-grow:1;flex-shrink:0;overflow:auto}.base-topbar{display:flex;flex-grow:0;flex-shrink:0;width:100%;height:50px;background:#4465c9;align-content:center}.right-topbar{display:flex;margin-left:auto;order:2}.base-main{flex-grow:1;flex-shrink:0;height:50%;display:flex;flex-direction:row;justify-content:stretch;align-content:flex-start;flex-wrap:nowrap}.footer{display:none;width:100%;height:30px;background:#3c5dc4;color:#fff;padding:5px}.main-content{display:flex;flex-direction:column;width:100%;height:100%;flex-grow:1;flex-shrink:1;overflow:auto;margin-left:0}.left-topbar{display:flex;align-content:center}.left-topbar>div{height:50px}.left-topbar>div>span{line-height:50px;vertical-align:middle}.sidebar-container{display:flex;flex-direction:column;overflow-y:scroll;height:calc(100% - 50px);min-width:230px;width:230px;background:#3c5dc4;position:fixed;transform:translate(-100%);transition:transform .25s ease-in-out;z-index:2000}.sidebar-container.collapsed{margin-left:-230px;transition:ease-in .1s all}.sidebar-container.uncollapsed{margin-left:0;width:230px;min-width:230px;transition:ease-in .1s all}.sidebar-hover-zone{position:fixed;top:50px;left:0;width:50px;height:calc(100% - 50px);z-index:1000;background:#3c5dc4}.sidebar-container.visible{transform:translate(0)}.menu-container{display:flex;flex-direction:column;flex:1}.main-component{width:100%;height:100%;overflow:auto}.mini-logo3D-lg{width:auto;height:80px;background:#4465c9;padding:0 30px 0 0;margin-left:0;margin-top:0;cursor:pointer}.mini-logo-lg{width:auto;height:40px;background:transparent;filter:brightness(0) invert(1);padding:5px;margin-left:0;margin-top:5px;cursor:pointer}.dflat-logo{font-family:ErasITC-Bold,Eras ITC,Eras Light ITC,sans-serif;font-size:16pt;color:#fff;cursor:pointer}.breadcrumb-panel{height:44x;width:100%;border-bottom:solid 1px var(--main-bg-color)}.search-bar-container{margin-left:55px;margin-top:-5px}.search{border-radius:5px;border:1px solid #8FA3DF;background-color:#4465c9;padding-left:30px;margin-top:14px;width:400px;color:#fff}::placeholder{color:#8fa3df}.search-bar-container:before{position:relative;display:block;float:left;width:16px;height:16px;content:\" \";background-size:16px 16px;-webkit-background-size:16px 16px;background-image:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"49.485\" height=\"49.485\" viewBox=\"0 0 49.485 49.485\">%0D%0A <path id=\"Recherche\" d=\"M31.88,37.039A20.324,20.324,0,1,1,12.411,1.6,20.324,20.324,0,0,1,37.039,31.88L49.485,44.326l-5.158,5.158ZM10.373,10.373a14.07,14.07,0,1,0,9.948-4.12A13.977,13.977,0,0,0,10.373,10.373Z\"/>%0D%0A</svg>%0D%0A');background-repeat:no-repeat;margin:9px -40px 0 9px;filter:invert(60%) sepia(57%) saturate(394%) hue-rotate(191deg) brightness(99%) contrast(96%)}.user-menu{display:flex;flex-direction:column;padding:10px}.mini-logo-histo{display:flex;justify-content:flex-end;width:auto;height:40px;background:#4465c9;padding:5px;margin-left:0;margin-top:5px;cursor:pointer}@media screen and (max-width:500px){.search{width:150px}}\n"],
22521
22521
  dependencies: [
22522
22522
  {
@@ -22558,6 +22558,11 @@ var DFlatLayoutComponent = class DFlatLayoutComponent extends DefaultLayoutCompo
22558
22558
  outputs: ["ngModelChange"],
22559
22559
  exportAs: ["ngModel"]
22560
22560
  },
22561
+ {
22562
+ kind: "component",
22563
+ type: i4$2.PageTabsComponent,
22564
+ selector: "alg-page-tabs"
22565
+ },
22561
22566
  {
22562
22567
  kind: "component",
22563
22568
  type: i8.NgHttpLoaderComponent,
@@ -22623,7 +22628,7 @@ i0.ɵɵngDeclareClassMetadata({
22623
22628
  selector: "msw-layout",
22624
22629
  changeDetection: ChangeDetectionStrategy.Eager,
22625
22630
  standalone: false,
22626
- template: "<div class=\"base-container\">\r\n <div class=\"base-topbar\">\r\n <div class=\"left-topbar\">\r\n <button class=\"btn btn-primary btn-lg sidebar-button\" (click)=\"onToggleButtonClick()\">\r\n <i class=\"fa fa-bars\"></i>\r\n </button>\r\n\r\n <div (click)=\"this.backHome()\">\r\n <img [src]=\"this.appInfo.LogoUrl\" class=\"mini-logo-lg\" />\r\n </div>\r\n <div (click)=\"this.backHome()\">\r\n <span class=\"dflat-logo\"><b>{{this.appInfo.Name}}</b></span>\r\n </div>\r\n </div>\r\n <div class=\"center-topbar\">\r\n <ng-container *ngIf=\"this.app.FilterService.filterChanged$ | async\">\r\n <div class=\"search-bar-container\">\r\n <input class=\"search form-control search-bar-action\"\r\n (keyup.enter)=\"handleKeyboardEnter(this.app.FilterService.Keywords)\"\r\n type=\"text\"\r\n name=\"keyword\"\r\n [placeholder]=\"this.searchText\"\r\n #uniquename=\"ngModel\"\r\n [(ngModel)]=\"this.app.FilterService.Keywords\"/>\r\n </div>\r\n </ng-container>\r\n </div>\r\n </div>\r\n <div class=\"base-main\">\r\n <div class=\"sidebar-outcontainer\">\r\n <div class=\"sidebar-incontainer\">\r\n <div #sidebar ngClass=\"sidebar-container visible\"\r\n [class.uncollapsed]=\"sidebarVisible\"\r\n [class.collapsed]=\"!sidebarVisible\"\r\n (mouseleave)=\"hideSidebar($event)\"\r\n >\r\n <msw-user-menu class=\"user-menu\"\r\n [menuItems]=\"mylinks\"\r\n [compact]=\"!sidebarVisible\"\r\n (itemClick)=\"this.hideSidebar(null)\">\r\n </msw-user-menu>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"main-content\">\r\n <div class=\"main-component\">\r\n <router-outlet></router-outlet>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n<ng-http-loader\r\n [backdrop]=\"false\"\r\n [backgroundColor]=\"'transparent'\"\r\n [debounceDelay]=\"100\"\r\n [extraDuration]=\"300\"\r\n [minDuration]=\"300\"\r\n [opacity]=\"'1'\"\r\n [entryComponent]=\"spinnerComponent\">\r\n</ng-http-loader>\r\n",
22631
+ template: "<div class=\"base-container\">\r\n <div class=\"base-topbar\">\r\n <div class=\"left-topbar\">\r\n <button class=\"btn btn-primary btn-lg sidebar-button\" (click)=\"onToggleButtonClick()\">\r\n <i class=\"fa fa-bars\"></i>\r\n </button>\r\n\r\n <div (click)=\"this.backHome()\">\r\n <img [src]=\"this.appInfo.LogoUrl\" class=\"mini-logo-lg\" />\r\n </div>\r\n <div (click)=\"this.backHome()\">\r\n <span class=\"dflat-logo\"><b>{{this.appInfo.Name}}</b></span>\r\n </div>\r\n </div>\r\n <!-- Onglets des écrans ouverts depuis le menu, à droite du logo (voir PageTabService). -->\r\n <alg-page-tabs class=\"page-tabs-topbar\"></alg-page-tabs>\r\n <div class=\"center-topbar\">\r\n <ng-container *ngIf=\"this.app.FilterService.filterChanged$ | async\">\r\n <div class=\"search-bar-container\">\r\n <input class=\"search form-control search-bar-action\"\r\n (keyup.enter)=\"handleKeyboardEnter(this.app.FilterService.Keywords)\"\r\n type=\"text\"\r\n name=\"keyword\"\r\n [placeholder]=\"this.searchText\"\r\n #uniquename=\"ngModel\"\r\n [(ngModel)]=\"this.app.FilterService.Keywords\"/>\r\n </div>\r\n </ng-container>\r\n </div>\r\n </div>\r\n <div class=\"base-main\">\r\n <div class=\"sidebar-outcontainer\">\r\n <div class=\"sidebar-incontainer\">\r\n <div #sidebar ngClass=\"sidebar-container visible\"\r\n [class.uncollapsed]=\"sidebarVisible\"\r\n [class.collapsed]=\"!sidebarVisible\"\r\n (mouseleave)=\"hideSidebar($event)\"\r\n >\r\n <msw-user-menu class=\"user-menu\"\r\n [menuItems]=\"mylinks\"\r\n [compact]=\"!sidebarVisible\"\r\n (itemClick)=\"this.hideSidebar(null)\">\r\n </msw-user-menu>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"main-content\">\r\n <div class=\"main-component\">\r\n <router-outlet></router-outlet>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n<ng-http-loader\r\n [backdrop]=\"false\"\r\n [backgroundColor]=\"'transparent'\"\r\n [debounceDelay]=\"100\"\r\n [extraDuration]=\"300\"\r\n [minDuration]=\"300\"\r\n [opacity]=\"'1'\"\r\n [entryComponent]=\"spinnerComponent\">\r\n</ng-http-loader>\r\n",
22627
22632
  styles: [".home-page{font-family:Open sans,sans-serif;background:#fff;-webkit-font-smoothing:antialiased;height:100%;width:100%;padding:16px}.main-container{margin:0 50px}.main-container-modal{width:calc(100% - 50px);margin:10px 25px 0}.moyen-titre{font-weight:700;font-size:24px;color:#4d5a81;margin:8px 0;border-bottom:solid 1px #DBE4FF}.grand-titre{font-weight:700;font-size:28px;color:#4d5a81;margin:0 0 8px}.petit-titre{font-weight:700;font-size:16px;color:#4d5a81;margin:0 0 8px}.petit-titre.underlined{border-bottom:solid 1px #4D5A81}.paragraph{padding:0 15px}.paragraph-highlight{padding:5px 15px 0 12px;border-left:5px solid #8EA7F8;border-bottom:1px solid #DBE4FF;border-top:1px solid #DBE4FF;border-right:1px solid #DBE4FF;background-color:#f7faff}.highlight{background-color:#f7faff;border:1px solid #DBE4FF;border-radius:5px;padding:15px;color:#3c5dc4;margin:0 0 16px}.highlight p{margin-bottom:0}.highlight:before{position:relative;display:block;float:left;width:24px;height:24px;content:\" \";background-size:24px 24px;-webkit-background-size:24px 24px;background-image:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"53.294\" height=\"50.629\" viewBox=\"0 0 53.294 50.629\">%0D%0A <path id=\"allerg\\e8ne\" d=\"M830.494,25.793l-5.814,6.783.727,8.963-8.721,1.938-4.6,7.752L803.847,47.6l-8.236,3.634-4.6-7.51-8.721-1.938.727-8.963L777.2,26.035l5.814-6.783-.727-8.963,8.721-1.938L795.61.6l8.236,3.634L812.083.6l4.6,7.752,8.721,1.938-.727,8.963Zm-24.467,2.422V13.681h-4.845V28.216Zm0,9.69V33.06h-4.845v4.845Z\" transform=\"translate(-777.2 -0.6)\"/>%0D%0A</svg>%0D%0A');background-repeat:no-repeat;margin:0 8px 24px 0;filter:invert(31%) sepia(51%) saturate(1323%) hue-rotate(199deg) brightness(99%) contrast(94%)}.notification{background-color:#dbe4ff;border:1px solid #C4D0F9;border-radius:5px;color:#4d5a81;margin:16px;padding:5px 15px;text-align:justify}.notification:before{position:relative;display:block;float:left;width:24px;height:24px;content:\" \";background-size:24px 24px;-webkit-background-size:24px 24px;background-image:url('data:image/svg+xml,<svg aria-hidden=\"true\" focusable=\"false\" data-prefix=\"fas\" data-icon=\"info-circle\" class=\"svg-inline--fa fa-info-circle fa-w-16\" role=\"img\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\"><path fill=\"currentColor\" d=\"M256 8C119.043 8 8 119.083 8 256c0 136.997 111.043 248 248 248s248-111.003 248-248C504 119.083 392.957 8 256 8zm0 110c23.196 0 42 18.804 42 42s-18.804 42-42 42-42-18.804-42-42 18.804-42 42-42zm56 254c0 6.627-5.373 12-12 12h-88c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h12v-64h-12c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h64c6.627 0 12 5.373 12 12v100h12c6.627 0 12 5.373 12 12v24z\"></path></svg>');background-repeat:no-repeat;margin:0 8px 0 0;filter:invert(31%) sepia(8%) saturate(2329%) hue-rotate(188deg) brightness(103%) contrast(85%)}.notification-text{padding:0 15px 0 30px;font-size:16px}.sidebar-incontainer{height:100%;overflow-y:auto;overflow-x:hidden;-ms-overflow-style:none;scrollbar-width:none}.sidebar-outcontainer{height:100%;background:#3c5dc4;-ms-overflow-style:none;scrollbar-width:none}.sidebar-outcontainer::-webkit-scrollbar{display:none}.sidebar-button{width:50px;font-size:16px}.btn.btn-primary:hover,.btn.btn-primary:focus,.btn.btn-primary:active{color:#f7faff;background-color:#4465c9;border-color:#4465c9}.base-container{display:flex;width:100%;height:100%;flex-direction:column;flex-grow:1;flex-shrink:0;overflow:auto}.base-topbar{display:flex;flex-grow:0;flex-shrink:0;width:100%;height:50px;background:#4465c9;align-content:center}.right-topbar{display:flex;margin-left:auto;order:2}.base-main{flex-grow:1;flex-shrink:0;height:50%;display:flex;flex-direction:row;justify-content:stretch;align-content:flex-start;flex-wrap:nowrap}.footer{display:none;width:100%;height:30px;background:#3c5dc4;color:#fff;padding:5px}.main-content{display:flex;flex-direction:column;width:100%;height:100%;flex-grow:1;flex-shrink:1;overflow:auto;margin-left:0}.left-topbar{display:flex;align-content:center}.left-topbar>div{height:50px}.left-topbar>div>span{line-height:50px;vertical-align:middle}.sidebar-container{display:flex;flex-direction:column;overflow-y:scroll;height:calc(100% - 50px);min-width:230px;width:230px;background:#3c5dc4;position:fixed;transform:translate(-100%);transition:transform .25s ease-in-out;z-index:2000}.sidebar-container.collapsed{margin-left:-230px;transition:ease-in .1s all}.sidebar-container.uncollapsed{margin-left:0;width:230px;min-width:230px;transition:ease-in .1s all}.sidebar-hover-zone{position:fixed;top:50px;left:0;width:50px;height:calc(100% - 50px);z-index:1000;background:#3c5dc4}.sidebar-container.visible{transform:translate(0)}.menu-container{display:flex;flex-direction:column;flex:1}.main-component{width:100%;height:100%;overflow:auto}.mini-logo3D-lg{width:auto;height:80px;background:#4465c9;padding:0 30px 0 0;margin-left:0;margin-top:0;cursor:pointer}.mini-logo-lg{width:auto;height:40px;background:transparent;filter:brightness(0) invert(1);padding:5px;margin-left:0;margin-top:5px;cursor:pointer}.dflat-logo{font-family:ErasITC-Bold,Eras ITC,Eras Light ITC,sans-serif;font-size:16pt;color:#fff;cursor:pointer}.breadcrumb-panel{height:44x;width:100%;border-bottom:solid 1px var(--main-bg-color)}.search-bar-container{margin-left:55px;margin-top:-5px}.search{border-radius:5px;border:1px solid #8FA3DF;background-color:#4465c9;padding-left:30px;margin-top:14px;width:400px;color:#fff}::placeholder{color:#8fa3df}.search-bar-container:before{position:relative;display:block;float:left;width:16px;height:16px;content:\" \";background-size:16px 16px;-webkit-background-size:16px 16px;background-image:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"49.485\" height=\"49.485\" viewBox=\"0 0 49.485 49.485\">%0D%0A <path id=\"Recherche\" d=\"M31.88,37.039A20.324,20.324,0,1,1,12.411,1.6,20.324,20.324,0,0,1,37.039,31.88L49.485,44.326l-5.158,5.158ZM10.373,10.373a14.07,14.07,0,1,0,9.948-4.12A13.977,13.977,0,0,0,10.373,10.373Z\"/>%0D%0A</svg>%0D%0A');background-repeat:no-repeat;margin:9px -40px 0 9px;filter:invert(60%) sepia(57%) saturate(394%) hue-rotate(191deg) brightness(99%) contrast(96%)}.user-menu{display:flex;flex-direction:column;padding:10px}.mini-logo-histo{display:flex;justify-content:flex-end;width:auto;height:40px;background:#4465c9;padding:5px;margin-left:0;margin-top:5px;cursor:pointer}@media screen and (max-width:500px){.search{width:150px}}\n"]
22628
22633
  }]
22629
22634
  }],
@@ -24064,6 +24069,10 @@ var DflatAppModule = class DflatAppModule {
24064
24069
  {
24065
24070
  provide: SelectorMapperServiceBase,
24066
24071
  useClass: SystemSelectorMapperService
24072
+ },
24073
+ {
24074
+ provide: RouteReuseStrategy,
24075
+ useClass: PageTabRouteReuseStrategy
24067
24076
  }
24068
24077
  ],
24069
24078
  imports: [
@@ -24130,6 +24139,10 @@ i0.ɵɵngDeclareClassMetadata({
24130
24139
  {
24131
24140
  provide: SelectorMapperServiceBase,
24132
24141
  useClass: SystemSelectorMapperService
24142
+ },
24143
+ {
24144
+ provide: RouteReuseStrategy,
24145
+ useClass: PageTabRouteReuseStrategy
24133
24146
  }
24134
24147
  ]
24135
24148
  }]