@gloww/gloww 19.0.0-beta.4 → 20.0.0-beta.3

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.
@@ -4,44 +4,34 @@ import { Subject, firstValueFrom, BehaviorSubject, Subscription, of, combineLate
4
4
  import * as i1 from '@angular/common/http';
5
5
  import { HttpClient, HttpParams, HttpEventType, HTTP_INTERCEPTORS, provideHttpClient, withInterceptorsFromDi, HttpResponse } from '@angular/common/http';
6
6
  import * as i3 from '@angular/common';
7
- import { Location, PlatformLocation, isPlatformBrowser, CommonModule } from '@angular/common';
7
+ import { Location, PlatformLocation, AsyncPipe, NgClass, isPlatformBrowser, NgStyle, CommonModule } from '@angular/common';
8
8
  import * as i1$2 from '@angular/material/dialog';
9
- import { MAT_DIALOG_DATA, MatDialogConfig, MatDialogModule } from '@angular/material/dialog';
10
- import * as i4 from '@angular/material/button';
11
- import { MatButtonModule } from '@angular/material/button';
9
+ import { MAT_DIALOG_DATA, MatDialogTitle, MatDialogContent, MatDialogActions, MatDialogConfig, MatDialogModule } from '@angular/material/dialog';
10
+ import { CdkScrollable } from '@angular/cdk/scrolling';
12
11
  import * as i2 from '@angular/router';
13
- import { NavigationEnd, RouterModule } from '@angular/router';
12
+ import { NavigationEnd, RouterLink, RouterModule } from '@angular/router';
13
+ import { MatButton, MatButtonModule } from '@angular/material/button';
14
14
  import * as i1$1 from '@angular/platform-browser';
15
15
  import { BrowserModule } from '@angular/platform-browser';
16
- import * as i6 from '@kolkov/angular-editor';
16
+ import * as i5 from '@kolkov/angular-editor';
17
17
  import { AngularEditorModule } from '@kolkov/angular-editor';
18
18
  import { switchMap, map, tap, filter, catchError, take, mergeMap, retryWhen, scan, delay, first, distinctUntilChanged, debounceTime } from 'rxjs/operators';
19
- import * as i14 from '@angular/material/sort';
20
19
  import { MatSort, MatSortModule } from '@angular/material/sort';
21
- import * as i13 from '@angular/material/paginator';
22
20
  import { MatPaginator, MatPaginatorModule } from '@angular/material/paginator';
23
- import * as i11 from '@angular/material/table';
24
- import { MatColumnDef, MatTableDataSource, MatTable, MatTableModule } from '@angular/material/table';
25
- import * as i10 from '@angular/material/progress-spinner';
26
- import { MatProgressSpinnerModule } from '@angular/material/progress-spinner';
27
- import * as i3$1 from '@angular/material/card';
28
- import { MatCardModule } from '@angular/material/card';
29
- import * as i1$4 from '@angular/material/icon';
30
- import { MatIconModule } from '@angular/material/icon';
31
- import * as i2$1 from '@angular/material/input';
32
- import { MatInputModule } from '@angular/material/input';
33
- import * as i7 from '@ctrl/ngx-codemirror';
34
- import { CodemirrorComponent, CodemirrorModule } from '@ctrl/ngx-codemirror';
21
+ import { MatColumnDef, MatTableDataSource, MatTable, MatHeaderCellDef, MatHeaderCell, MatCellDef, MatCell, MatHeaderRowDef, MatHeaderRow, MatRowDef, MatRow, MatTableModule } from '@angular/material/table';
22
+ import { MatProgressSpinner, MatProgressSpinnerModule } from '@angular/material/progress-spinner';
23
+ import { MatCard, MatCardContent, MatCardActions, MatCardHeader, MatCardTitle, MatCardModule } from '@angular/material/card';
24
+ import { MatIcon, MatIconModule } from '@angular/material/icon';
25
+ import { MatError, MatFormField, MatInput, MatLabel, MatInputModule, MatSuffix } from '@angular/material/input';
26
+ import * as i4 from '@ctrl/ngx-codemirror';
27
+ import { CodemirrorModule, CodemirrorComponent } from '@ctrl/ngx-codemirror';
35
28
  import * as i1$3 from '@angular/forms';
36
- import { NG_VALUE_ACCESSOR, UntypedFormControl, Validators, FormsModule, ReactiveFormsModule } from '@angular/forms';
37
- import * as i4$1 from '@angular/material/progress-bar';
38
- import { MatProgressBarModule } from '@angular/material/progress-bar';
39
- import * as i3$3 from '@angular/material/datepicker';
40
- import { MatDatepickerModule } from '@angular/material/datepicker';
41
- import * as i4$3 from 'ngx-mat-datetime-picker-v2';
29
+ import { NG_VALUE_ACCESSOR, FormsModule, UntypedFormControl, ReactiveFormsModule, Validators } from '@angular/forms';
30
+ import { MatProgressBar, MatProgressBarModule } from '@angular/material/progress-bar';
31
+ import { MatDatepickerInput, MatDatepickerToggle, MatDatepicker, MatDatepickerModule } from '@angular/material/datepicker';
32
+ import * as i2$1 from 'ngx-mat-datetime-picker-v2';
42
33
  import { NgxMatDatetimePickerModule, NgxMatTimepickerComponent, NgxMatNativeDateModule } from 'ngx-mat-datetime-picker-v2';
43
- import * as i3$2 from '@angular/material/select';
44
- import { MatSelectModule } from '@angular/material/select';
34
+ import { MatSelect, MatOption, MatSelectModule } from '@angular/material/select';
45
35
  import { trigger, state, style, transition, animate } from '@angular/animations';
46
36
  import prettier from 'node_modules/prettier/esm/standalone.mjs';
47
37
  import parserTypescript from 'node_modules/prettier/esm/parser-typescript.mjs';
@@ -51,13 +41,11 @@ import { MatToolbarModule } from '@angular/material/toolbar';
51
41
  import { MatSidenavModule } from '@angular/material/sidenav';
52
42
  import { MatFormFieldModule } from '@angular/material/form-field';
53
43
  import { jwtDecode } from 'jwt-decode';
54
- import * as i5 from '@angular/cdk/drag-drop';
55
- import { DragDropModule } from '@angular/cdk/drag-drop';
44
+ import { CdkDrag, CdkDragHandle, DragDropModule } from '@angular/cdk/drag-drop';
56
45
  import FileSaver from 'file-saver';
57
46
  import JSZip from 'jszip';
58
47
  import { TranslateDefaultParser } from '@ngx-translate/core';
59
- import * as i4$2 from '@angular/material/autocomplete';
60
- import { MatAutocompleteModule } from '@angular/material/autocomplete';
48
+ import { MatAutocompleteTrigger, MatAutocomplete, MatAutocompleteModule } from '@angular/material/autocomplete';
61
49
  import moment from 'moment';
62
50
  import { MAT_DATE_LOCALE } from '@angular/material/core';
63
51
  import { AngularResizeEventModule } from 'angular-resize-event';
@@ -231,14 +219,11 @@ class RouteDirective {
231
219
  this.router.navigate([goRoute]);
232
220
  }
233
221
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: RouteDirective, deps: [{ token: i0.ElementRef }, { token: i2.Router }], target: i0.ɵɵFactoryTarget.Directive }); }
234
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.18", type: RouteDirective, isStandalone: false, selector: "[glowwRoute]", inputs: { dlg: "dlg" }, host: { listeners: { "click": "onClick($event.target)" } }, ngImport: i0 }); }
222
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.18", type: RouteDirective, isStandalone: true, selector: "[glowwRoute]", inputs: { dlg: "dlg" }, host: { listeners: { "click": "onClick($event.target)" } }, ngImport: i0 }); }
235
223
  }
236
224
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: RouteDirective, decorators: [{
237
225
  type: Directive,
238
- args: [{
239
- selector: '[glowwRoute]',
240
- standalone: false
241
- }]
226
+ args: [{ selector: '[glowwRoute]' }]
242
227
  }], ctorParameters: () => [{ type: i0.ElementRef }, { type: i2.Router }], propDecorators: { dlg: [{
243
228
  type: Input
244
229
  }], onClick: [{
@@ -256,14 +241,11 @@ class SafeHtmlPipe {
256
241
  // return this.sanitizer.bypassSecurityTrustXxx(style); - see docs
257
242
  }
258
243
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: SafeHtmlPipe, deps: [{ token: i1$1.DomSanitizer }], target: i0.ɵɵFactoryTarget.Pipe }); }
259
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "20.3.18", ngImport: i0, type: SafeHtmlPipe, isStandalone: false, name: "safeHtml" }); }
244
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "20.3.18", ngImport: i0, type: SafeHtmlPipe, isStandalone: true, name: "safeHtml" }); }
260
245
  }
261
246
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: SafeHtmlPipe, decorators: [{
262
247
  type: Pipe,
263
- args: [{
264
- name: 'safeHtml',
265
- standalone: false
266
- }]
248
+ args: [{ name: 'safeHtml' }]
267
249
  }], ctorParameters: () => [{ type: i1$1.DomSanitizer }] });
268
250
 
269
251
  class ConfirmationComponent {
@@ -284,11 +266,11 @@ class ConfirmationComponent {
284
266
  this.dialogRef.close(false);
285
267
  }
286
268
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: ConfirmationComponent, deps: [{ token: i1$2.MatDialogRef }, { token: MAT_DIALOG_DATA }], target: i0.ɵɵFactoryTarget.Component }); }
287
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.18", type: ConfirmationComponent, isStandalone: false, selector: "glw-confirmation", ngImport: i0, template: "<h1 mat-dialog-title>\n {{title}}\n</h1>\n\n<div mat-dialog-content>\n <p [innerHTML]=\"message | safeHtml\" glowwRoute [dlg]=\"dialogRef\"></p>\n</div>\n\n@if (mode==='confirmation') {\n <mat-dialog-actions>\n <button mat-button (click)=\"onDismiss()\">No</button>\n <button mat-raised-button color=\"primary\" (click)=\"onConfirm()\">Yes</button>\n </mat-dialog-actions>\n}\n@if (mode==='alert') {\n <mat-dialog-actions>\n <button mat-raised-button color=\"primary\" (click)=\"onConfirm()\">OK</button>\n </mat-dialog-actions>\n}", styles: [""], dependencies: [{ kind: "directive", type: i1$2.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: i1$2.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "directive", type: i1$2.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "component", type: i4.MatButton, selector: " button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] ", inputs: ["matButton"], exportAs: ["matButton", "matAnchor"] }, { kind: "directive", type: RouteDirective, selector: "[glowwRoute]", inputs: ["dlg"] }, { kind: "pipe", type: SafeHtmlPipe, name: "safeHtml" }] }); }
269
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.18", type: ConfirmationComponent, isStandalone: true, selector: "glw-confirmation", ngImport: i0, template: "<h1 mat-dialog-title>\n {{title}}\n</h1>\n\n<div mat-dialog-content>\n <p [innerHTML]=\"message | safeHtml\" glowwRoute [dlg]=\"dialogRef\"></p>\n</div>\n\n@if (mode==='confirmation') {\n <mat-dialog-actions>\n <button mat-button (click)=\"onDismiss()\">No</button>\n <button mat-raised-button color=\"primary\" (click)=\"onConfirm()\">Yes</button>\n </mat-dialog-actions>\n}\n@if (mode==='alert') {\n <mat-dialog-actions>\n <button mat-raised-button color=\"primary\" (click)=\"onConfirm()\">OK</button>\n </mat-dialog-actions>\n}", styles: [""], dependencies: [{ kind: "directive", type: MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "directive", type: RouteDirective, selector: "[glowwRoute]", inputs: ["dlg"] }, { kind: "directive", type: MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "component", type: MatButton, selector: " button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] ", inputs: ["matButton"], exportAs: ["matButton", "matAnchor"] }, { kind: "pipe", type: SafeHtmlPipe, name: "safeHtml" }] }); }
288
270
  }
289
271
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: ConfirmationComponent, decorators: [{
290
272
  type: Component,
291
- args: [{ selector: 'glw-confirmation', standalone: false, template: "<h1 mat-dialog-title>\n {{title}}\n</h1>\n\n<div mat-dialog-content>\n <p [innerHTML]=\"message | safeHtml\" glowwRoute [dlg]=\"dialogRef\"></p>\n</div>\n\n@if (mode==='confirmation') {\n <mat-dialog-actions>\n <button mat-button (click)=\"onDismiss()\">No</button>\n <button mat-raised-button color=\"primary\" (click)=\"onConfirm()\">Yes</button>\n </mat-dialog-actions>\n}\n@if (mode==='alert') {\n <mat-dialog-actions>\n <button mat-raised-button color=\"primary\" (click)=\"onConfirm()\">OK</button>\n </mat-dialog-actions>\n}" }]
273
+ args: [{ selector: 'glw-confirmation', imports: [MatDialogTitle, CdkScrollable, MatDialogContent, RouteDirective, MatDialogActions, MatButton, SafeHtmlPipe], template: "<h1 mat-dialog-title>\n {{title}}\n</h1>\n\n<div mat-dialog-content>\n <p [innerHTML]=\"message | safeHtml\" glowwRoute [dlg]=\"dialogRef\"></p>\n</div>\n\n@if (mode==='confirmation') {\n <mat-dialog-actions>\n <button mat-button (click)=\"onDismiss()\">No</button>\n <button mat-raised-button color=\"primary\" (click)=\"onConfirm()\">Yes</button>\n </mat-dialog-actions>\n}\n@if (mode==='alert') {\n <mat-dialog-actions>\n <button mat-raised-button color=\"primary\" (click)=\"onConfirm()\">OK</button>\n </mat-dialog-actions>\n}" }]
292
274
  }], ctorParameters: () => [{ type: i1$2.MatDialogRef }, { type: ConfirmationModel, decorators: [{
293
275
  type: Inject,
294
276
  args: [MAT_DIALOG_DATA]
@@ -425,9 +407,9 @@ class SecureImgComponent {
425
407
  .pipe(map(e => this.domSanitizer.bypassSecurityTrustUrl(URL.createObjectURL(e))));
426
408
  }
427
409
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: SecureImgComponent, deps: [{ token: i1.HttpClient }, { token: i1$1.DomSanitizer }], target: i0.ɵɵFactoryTarget.Component }); }
428
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.18", type: SecureImgComponent, isStandalone: false, selector: "secure-img", inputs: { src: "src" }, usesOnChanges: true, ngImport: i0, template: `
410
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.18", type: SecureImgComponent, isStandalone: true, selector: "secure-img", inputs: { src: "src" }, usesOnChanges: true, ngImport: i0, template: `
429
411
  <img [src]="dataUrl$ | async" style="object-fit: contain;"/>
430
- `, isInline: true, dependencies: [{ kind: "pipe", type: i3.AsyncPipe, name: "async" }] }); }
412
+ `, isInline: true, dependencies: [{ kind: "pipe", type: AsyncPipe, name: "async" }] }); }
431
413
  }
432
414
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: SecureImgComponent, decorators: [{
433
415
  type: Component,
@@ -436,7 +418,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImpo
436
418
  template: `
437
419
  <img [src]="dataUrl$ | async" style="object-fit: contain;"/>
438
420
  `,
439
- standalone: false
421
+ imports: [AsyncPipe]
440
422
  }]
441
423
  }], ctorParameters: () => [{ type: i1.HttpClient }, { type: i1$1.DomSanitizer }], propDecorators: { src: [{
442
424
  type: Input
@@ -469,14 +451,11 @@ class FileSinkDirective {
469
451
  }
470
452
  }
471
453
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: FileSinkDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
472
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.18", type: FileSinkDirective, isStandalone: false, selector: "[glowwFileSink]", outputs: { fileDropped: "fileDropped" }, host: { listeners: { "dragover": "onDragOver($event)", "dragleave": "onDragLeave($event)", "drop": "ondrop($event)" }, properties: { "class.fileover": "this.fileOver" } }, ngImport: i0 }); }
454
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.18", type: FileSinkDirective, isStandalone: true, selector: "[glowwFileSink]", outputs: { fileDropped: "fileDropped" }, host: { listeners: { "dragover": "onDragOver($event)", "dragleave": "onDragLeave($event)", "drop": "ondrop($event)" }, properties: { "class.fileover": "this.fileOver" } }, ngImport: i0 }); }
473
455
  }
474
456
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: FileSinkDirective, decorators: [{
475
457
  type: Directive,
476
- args: [{
477
- selector: '[glowwFileSink]',
478
- standalone: false
479
- }]
458
+ args: [{ selector: '[glowwFileSink]' }]
480
459
  }], propDecorators: { fileOver: [{
481
460
  type: HostBinding,
482
461
  args: ['class.fileover']
@@ -602,13 +581,13 @@ class UploadFileComponent {
602
581
  this.onTouched();
603
582
  }
604
583
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: UploadFileComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
605
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.18", type: UploadFileComponent, isStandalone: false, selector: "gloww-upload-file", inputs: { multiple: "multiple", allowAltFileName: "allowAltFileName", acceptMime: "acceptMime" }, providers: [
584
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.18", type: UploadFileComponent, isStandalone: true, selector: "gloww-upload-file", inputs: { multiple: "multiple", allowAltFileName: "allowAltFileName", acceptMime: "acceptMime" }, providers: [
606
585
  {
607
586
  provide: NG_VALUE_ACCESSOR,
608
587
  multi: true,
609
588
  useExisting: UploadFileComponent
610
589
  }
611
- ], viewQueries: [{ propertyName: "fileUpload", first: true, predicate: ["fileUpload"], descendants: true }], ngImport: i0, template: "<mat-card appearance=\"outlined\" glowwFileSink (fileDropped)=\"onFileDropped($event)\" style=\"height:calc(100% - 40px)\">\n <mat-card-content style=\"min-height:100px;height:calc(100% - 60px)\">\n @if (files && files.length) {\n <div class=\"files-list\" style=\"height:calc(100% - 60px)\">\n @for (file of files; track file; let i = $index) {\n <div class=\"single-file\" [ngClass]=\"file.status\">\n <i class=\"fa-thin fa-file fa-lg\"></i>\n <div class=\"info\">\n <h4 class=\"name\">\n {{ file?.fileName }}\n </h4>\n <p class=\"size\">\n {{ formatBytes(file?.size) }}\n </p>\n <mat-progress-bar [value]=\"file.progress\"></mat-progress-bar>\n </div>\n <i class=\"fa-thin fa-trash fa-lg\" (click)=\"deleteFile(i)\"></i>\n </div>\n }\n </div>\n }\n @if (!files || !files.length) {\n <div style=\"height:calc(100% - 60px)\">No file(s) selected</div>\n }\n <input type=\"file\" #fileUpload id=\"fileUpload\" name=\"fileUpload\" [accept]=\"acceptMime\" style=\"display:none;\" [multiple]=\"multiple\" />\n </mat-card-content>\n <mat-card-actions style=\"text-align:center\">\n <button mat-raised-button color=\"accent\" (click)=\"SelectFiles()\">\n <i class=\"fal fa-file-upload\"></i> @if (!multiple) {\n <span>Select file or Drop a file</span>\n }\n @if (multiple) {\n <span>Select file(s) or drop file(s)</span>\n }\n </button>\n</mat-card-actions>\n</mat-card>", styles: ["ul{list-style:none;padding-left:0}ul li{padding-bottom:10px}.fileover{animation:shake 1s;animation-iteration-count:infinite}.files-list{margin-top:1.5rem}.files-list .single-file{display:flex;padding:.5rem;justify-content:space-between;align-items:center;border:dashed 1px #979797;margin-bottom:1rem;flex-grow:1}.files-list .single-file img.delete{margin-left:.5rem;cursor:pointer;align-self:flex-end}.files-list .single-file .name{font-size:14px;font-weight:500;color:#353f4a;margin:0}.files-list .single-file .size{font-size:12px;font-weight:500;color:#a4a4a4;margin:0;margin-bottom:.25rem}.files-list .single-file .info{width:100%}.Done{background-color:green}.Error{background-color:red}@keyframes shake{0%{transform:translate(1px,1px) rotate(0)}10%{transform:translate(-1px,-2px) rotate(-1deg)}20%{transform:translate(-3px) rotate(1deg)}30%{transform:translate(3px,2px) rotate(0)}40%{transform:translate(1px,-1px) rotate(1deg)}50%{transform:translate(-1px,2px) rotate(-1deg)}60%{transform:translate(-3px,1px) rotate(0)}70%{transform:translate(3px,1px) rotate(-1deg)}80%{transform:translate(-1px,-1px) rotate(1deg)}90%{transform:translate(1px,2px) rotate(0)}to{transform:translate(1px,-2px) rotate(-1deg)}}\n"], dependencies: [{ kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: i4.MatButton, selector: " button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] ", inputs: ["matButton"], exportAs: ["matButton", "matAnchor"] }, { kind: "component", type: i3$1.MatCard, selector: "mat-card", inputs: ["appearance"], exportAs: ["matCard"] }, { kind: "directive", type: i3$1.MatCardActions, selector: "mat-card-actions", inputs: ["align"], exportAs: ["matCardActions"] }, { kind: "directive", type: i3$1.MatCardContent, selector: "mat-card-content" }, { kind: "component", type: i4$1.MatProgressBar, selector: "mat-progress-bar", inputs: ["color", "value", "bufferValue", "mode"], outputs: ["animationEnd"], exportAs: ["matProgressBar"] }, { kind: "directive", type: FileSinkDirective, selector: "[glowwFileSink]", outputs: ["fileDropped"] }] }); }
590
+ ], viewQueries: [{ propertyName: "fileUpload", first: true, predicate: ["fileUpload"], descendants: true }], ngImport: i0, template: "<mat-card appearance=\"outlined\" glowwFileSink (fileDropped)=\"onFileDropped($event)\" style=\"height:calc(100% - 40px)\">\n <mat-card-content style=\"min-height:100px;height:calc(100% - 60px)\">\n @if (files && files.length) {\n <div class=\"files-list\" style=\"height:calc(100% - 60px)\">\n @for (file of files; track file; let i = $index) {\n <div class=\"single-file\" [ngClass]=\"file.status\">\n <i class=\"fa-thin fa-file fa-lg\"></i>\n <div class=\"info\">\n <h4 class=\"name\">\n {{ file?.fileName }}\n </h4>\n <p class=\"size\">\n {{ formatBytes(file?.size) }}\n </p>\n <mat-progress-bar [value]=\"file.progress\"></mat-progress-bar>\n </div>\n <i class=\"fa-thin fa-trash fa-lg\" (click)=\"deleteFile(i)\"></i>\n </div>\n }\n </div>\n }\n @if (!files || !files.length) {\n <div style=\"height:calc(100% - 60px)\">No file(s) selected</div>\n }\n <input type=\"file\" #fileUpload id=\"fileUpload\" name=\"fileUpload\" [accept]=\"acceptMime\" style=\"display:none;\" [multiple]=\"multiple\" />\n </mat-card-content>\n <mat-card-actions style=\"text-align:center\">\n <button mat-raised-button color=\"accent\" (click)=\"SelectFiles()\">\n <i class=\"fal fa-file-upload\"></i> @if (!multiple) {\n <span>Select file or Drop a file</span>\n }\n @if (multiple) {\n <span>Select file(s) or drop file(s)</span>\n }\n </button>\n</mat-card-actions>\n</mat-card>", styles: ["ul{list-style:none;padding-left:0}ul li{padding-bottom:10px}.fileover{animation:shake 1s;animation-iteration-count:infinite}.files-list{margin-top:1.5rem}.files-list .single-file{display:flex;padding:.5rem;justify-content:space-between;align-items:center;border:dashed 1px #979797;margin-bottom:1rem;flex-grow:1}.files-list .single-file img.delete{margin-left:.5rem;cursor:pointer;align-self:flex-end}.files-list .single-file .name{font-size:14px;font-weight:500;color:#353f4a;margin:0}.files-list .single-file .size{font-size:12px;font-weight:500;color:#a4a4a4;margin:0;margin-bottom:.25rem}.files-list .single-file .info{width:100%}.Done{background-color:green}.Error{background-color:red}@keyframes shake{0%{transform:translate(1px,1px) rotate(0)}10%{transform:translate(-1px,-2px) rotate(-1deg)}20%{transform:translate(-3px) rotate(1deg)}30%{transform:translate(3px,2px) rotate(0)}40%{transform:translate(1px,-1px) rotate(1deg)}50%{transform:translate(-1px,2px) rotate(-1deg)}60%{transform:translate(-3px,1px) rotate(0)}70%{transform:translate(3px,1px) rotate(-1deg)}80%{transform:translate(-1px,-1px) rotate(1deg)}90%{transform:translate(1px,2px) rotate(0)}to{transform:translate(1px,-2px) rotate(-1deg)}}\n"], dependencies: [{ kind: "component", type: MatCard, selector: "mat-card", inputs: ["appearance"], exportAs: ["matCard"] }, { kind: "directive", type: FileSinkDirective, selector: "[glowwFileSink]", outputs: ["fileDropped"] }, { kind: "directive", type: MatCardContent, selector: "mat-card-content" }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: MatProgressBar, selector: "mat-progress-bar", inputs: ["color", "value", "bufferValue", "mode"], outputs: ["animationEnd"], exportAs: ["matProgressBar"] }, { kind: "directive", type: MatCardActions, selector: "mat-card-actions", inputs: ["align"], exportAs: ["matCardActions"] }, { kind: "component", type: MatButton, selector: " button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] ", inputs: ["matButton"], exportAs: ["matButton", "matAnchor"] }] }); }
612
591
  }
613
592
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: UploadFileComponent, decorators: [{
614
593
  type: Component,
@@ -618,7 +597,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImpo
618
597
  multi: true,
619
598
  useExisting: UploadFileComponent
620
599
  }
621
- ], standalone: false, template: "<mat-card appearance=\"outlined\" glowwFileSink (fileDropped)=\"onFileDropped($event)\" style=\"height:calc(100% - 40px)\">\n <mat-card-content style=\"min-height:100px;height:calc(100% - 60px)\">\n @if (files && files.length) {\n <div class=\"files-list\" style=\"height:calc(100% - 60px)\">\n @for (file of files; track file; let i = $index) {\n <div class=\"single-file\" [ngClass]=\"file.status\">\n <i class=\"fa-thin fa-file fa-lg\"></i>\n <div class=\"info\">\n <h4 class=\"name\">\n {{ file?.fileName }}\n </h4>\n <p class=\"size\">\n {{ formatBytes(file?.size) }}\n </p>\n <mat-progress-bar [value]=\"file.progress\"></mat-progress-bar>\n </div>\n <i class=\"fa-thin fa-trash fa-lg\" (click)=\"deleteFile(i)\"></i>\n </div>\n }\n </div>\n }\n @if (!files || !files.length) {\n <div style=\"height:calc(100% - 60px)\">No file(s) selected</div>\n }\n <input type=\"file\" #fileUpload id=\"fileUpload\" name=\"fileUpload\" [accept]=\"acceptMime\" style=\"display:none;\" [multiple]=\"multiple\" />\n </mat-card-content>\n <mat-card-actions style=\"text-align:center\">\n <button mat-raised-button color=\"accent\" (click)=\"SelectFiles()\">\n <i class=\"fal fa-file-upload\"></i> @if (!multiple) {\n <span>Select file or Drop a file</span>\n }\n @if (multiple) {\n <span>Select file(s) or drop file(s)</span>\n }\n </button>\n</mat-card-actions>\n</mat-card>", styles: ["ul{list-style:none;padding-left:0}ul li{padding-bottom:10px}.fileover{animation:shake 1s;animation-iteration-count:infinite}.files-list{margin-top:1.5rem}.files-list .single-file{display:flex;padding:.5rem;justify-content:space-between;align-items:center;border:dashed 1px #979797;margin-bottom:1rem;flex-grow:1}.files-list .single-file img.delete{margin-left:.5rem;cursor:pointer;align-self:flex-end}.files-list .single-file .name{font-size:14px;font-weight:500;color:#353f4a;margin:0}.files-list .single-file .size{font-size:12px;font-weight:500;color:#a4a4a4;margin:0;margin-bottom:.25rem}.files-list .single-file .info{width:100%}.Done{background-color:green}.Error{background-color:red}@keyframes shake{0%{transform:translate(1px,1px) rotate(0)}10%{transform:translate(-1px,-2px) rotate(-1deg)}20%{transform:translate(-3px) rotate(1deg)}30%{transform:translate(3px,2px) rotate(0)}40%{transform:translate(1px,-1px) rotate(1deg)}50%{transform:translate(-1px,2px) rotate(-1deg)}60%{transform:translate(-3px,1px) rotate(0)}70%{transform:translate(3px,1px) rotate(-1deg)}80%{transform:translate(-1px,-1px) rotate(1deg)}90%{transform:translate(1px,2px) rotate(0)}to{transform:translate(1px,-2px) rotate(-1deg)}}\n"] }]
600
+ ], imports: [MatCard, FileSinkDirective, MatCardContent, NgClass, MatProgressBar, MatCardActions, MatButton], template: "<mat-card appearance=\"outlined\" glowwFileSink (fileDropped)=\"onFileDropped($event)\" style=\"height:calc(100% - 40px)\">\n <mat-card-content style=\"min-height:100px;height:calc(100% - 60px)\">\n @if (files && files.length) {\n <div class=\"files-list\" style=\"height:calc(100% - 60px)\">\n @for (file of files; track file; let i = $index) {\n <div class=\"single-file\" [ngClass]=\"file.status\">\n <i class=\"fa-thin fa-file fa-lg\"></i>\n <div class=\"info\">\n <h4 class=\"name\">\n {{ file?.fileName }}\n </h4>\n <p class=\"size\">\n {{ formatBytes(file?.size) }}\n </p>\n <mat-progress-bar [value]=\"file.progress\"></mat-progress-bar>\n </div>\n <i class=\"fa-thin fa-trash fa-lg\" (click)=\"deleteFile(i)\"></i>\n </div>\n }\n </div>\n }\n @if (!files || !files.length) {\n <div style=\"height:calc(100% - 60px)\">No file(s) selected</div>\n }\n <input type=\"file\" #fileUpload id=\"fileUpload\" name=\"fileUpload\" [accept]=\"acceptMime\" style=\"display:none;\" [multiple]=\"multiple\" />\n </mat-card-content>\n <mat-card-actions style=\"text-align:center\">\n <button mat-raised-button color=\"accent\" (click)=\"SelectFiles()\">\n <i class=\"fal fa-file-upload\"></i> @if (!multiple) {\n <span>Select file or Drop a file</span>\n }\n @if (multiple) {\n <span>Select file(s) or drop file(s)</span>\n }\n </button>\n</mat-card-actions>\n</mat-card>", styles: ["ul{list-style:none;padding-left:0}ul li{padding-bottom:10px}.fileover{animation:shake 1s;animation-iteration-count:infinite}.files-list{margin-top:1.5rem}.files-list .single-file{display:flex;padding:.5rem;justify-content:space-between;align-items:center;border:dashed 1px #979797;margin-bottom:1rem;flex-grow:1}.files-list .single-file img.delete{margin-left:.5rem;cursor:pointer;align-self:flex-end}.files-list .single-file .name{font-size:14px;font-weight:500;color:#353f4a;margin:0}.files-list .single-file .size{font-size:12px;font-weight:500;color:#a4a4a4;margin:0;margin-bottom:.25rem}.files-list .single-file .info{width:100%}.Done{background-color:green}.Error{background-color:red}@keyframes shake{0%{transform:translate(1px,1px) rotate(0)}10%{transform:translate(-1px,-2px) rotate(-1deg)}20%{transform:translate(-3px) rotate(1deg)}30%{transform:translate(3px,2px) rotate(0)}40%{transform:translate(1px,-1px) rotate(1deg)}50%{transform:translate(-1px,2px) rotate(-1deg)}60%{transform:translate(-3px,1px) rotate(0)}70%{transform:translate(3px,1px) rotate(-1deg)}80%{transform:translate(-1px,-1px) rotate(1deg)}90%{transform:translate(1px,2px) rotate(0)}to{transform:translate(1px,-2px) rotate(-1deg)}}\n"] }]
622
601
  }], ctorParameters: () => [], propDecorators: { fileUpload: [{
623
602
  type: ViewChild,
624
603
  args: ['fileUpload']
@@ -708,11 +687,11 @@ class UploadDocComponent {
708
687
  }
709
688
  }
710
689
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: UploadDocComponent, deps: [{ token: i1$2.MatDialogRef }, { token: MAT_DIALOG_DATA }, { token: i1$3.UntypedFormBuilder }], target: i0.ɵɵFactoryTarget.Component }); }
711
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.18", type: UploadDocComponent, isStandalone: false, selector: "gloww-upload-doc", ngImport: i0, template: "<h2 mat-dialog-title>\r\n Association d'un nouveau document</h2>\r\n\r\n<mat-dialog-content>\r\n\r\n <gloww-upload-file [(ngModel)]=\"files\" [acceptMime]=\"acceptMime\" [multiple]=\"multiple\" [allowAltFileName]=\"allowAltFileName\"></gloww-upload-file>\r\n\r\n</mat-dialog-content>\r\n<mat-dialog-actions>\r\n <button mat-raised-button (click)=\"cancel()\">Close</button>\r\n <button mat-raised-button color=\"primary\" (click)=\"save()\">Save</button>\r\n</mat-dialog-actions>\r\n", styles: ["ul{list-style:\"none\";padding-left:0}ul li{padding-bottom:10px}\n"], dependencies: [{ kind: "directive", type: i1$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i1$2.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: i1$2.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "directive", type: i1$2.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "component", type: i4.MatButton, selector: " button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] ", inputs: ["matButton"], exportAs: ["matButton", "matAnchor"] }, { kind: "component", type: UploadFileComponent, selector: "gloww-upload-file", inputs: ["multiple", "allowAltFileName", "acceptMime"] }] }); }
690
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.18", type: UploadDocComponent, isStandalone: true, selector: "gloww-upload-doc", ngImport: i0, template: "<h2 mat-dialog-title>\r\n Association d'un nouveau document</h2>\r\n\r\n<mat-dialog-content>\r\n\r\n <gloww-upload-file [(ngModel)]=\"files\" [acceptMime]=\"acceptMime\" [multiple]=\"multiple\" [allowAltFileName]=\"allowAltFileName\"></gloww-upload-file>\r\n\r\n</mat-dialog-content>\r\n<mat-dialog-actions>\r\n <button mat-raised-button (click)=\"cancel()\">Close</button>\r\n <button mat-raised-button color=\"primary\" (click)=\"save()\">Save</button>\r\n</mat-dialog-actions>\r\n", styles: ["ul{list-style:\"none\";padding-left:0}ul li{padding-bottom:10px}\n"], dependencies: [{ kind: "directive", type: MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "component", type: UploadFileComponent, selector: "gloww-upload-file", inputs: ["multiple", "allowAltFileName", "acceptMime"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "component", type: MatButton, selector: " button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] ", inputs: ["matButton"], exportAs: ["matButton", "matAnchor"] }] }); }
712
691
  }
713
692
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: UploadDocComponent, decorators: [{
714
693
  type: Component,
715
- args: [{ selector: 'gloww-upload-doc', standalone: false, template: "<h2 mat-dialog-title>\r\n Association d'un nouveau document</h2>\r\n\r\n<mat-dialog-content>\r\n\r\n <gloww-upload-file [(ngModel)]=\"files\" [acceptMime]=\"acceptMime\" [multiple]=\"multiple\" [allowAltFileName]=\"allowAltFileName\"></gloww-upload-file>\r\n\r\n</mat-dialog-content>\r\n<mat-dialog-actions>\r\n <button mat-raised-button (click)=\"cancel()\">Close</button>\r\n <button mat-raised-button color=\"primary\" (click)=\"save()\">Save</button>\r\n</mat-dialog-actions>\r\n", styles: ["ul{list-style:\"none\";padding-left:0}ul li{padding-bottom:10px}\n"] }]
694
+ args: [{ selector: 'gloww-upload-doc', imports: [MatDialogTitle, CdkScrollable, MatDialogContent, UploadFileComponent, FormsModule, MatDialogActions, MatButton], template: "<h2 mat-dialog-title>\r\n Association d'un nouveau document</h2>\r\n\r\n<mat-dialog-content>\r\n\r\n <gloww-upload-file [(ngModel)]=\"files\" [acceptMime]=\"acceptMime\" [multiple]=\"multiple\" [allowAltFileName]=\"allowAltFileName\"></gloww-upload-file>\r\n\r\n</mat-dialog-content>\r\n<mat-dialog-actions>\r\n <button mat-raised-button (click)=\"cancel()\">Close</button>\r\n <button mat-raised-button color=\"primary\" (click)=\"save()\">Save</button>\r\n</mat-dialog-actions>\r\n", styles: ["ul{list-style:\"none\";padding-left:0}ul li{padding-bottom:10px}\n"] }]
716
695
  }], ctorParameters: () => [{ type: i1$2.MatDialogRef }, { type: undefined, decorators: [{
717
696
  type: Inject,
718
697
  args: [MAT_DIALOG_DATA]
@@ -723,11 +702,11 @@ class SearchFormComponent {
723
702
  ngOnInit() {
724
703
  }
725
704
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: SearchFormComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
726
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.18", type: SearchFormComponent, isStandalone: false, selector: "glw-search-form", ngImport: i0, template: "<ng-content></ng-content>", styles: [""] }); }
705
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.18", type: SearchFormComponent, isStandalone: true, selector: "glw-search-form", ngImport: i0, template: "<ng-content></ng-content>", styles: [""] }); }
727
706
  }
728
707
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: SearchFormComponent, decorators: [{
729
708
  type: Component,
730
- args: [{ selector: 'glw-search-form', standalone: false, template: "<ng-content></ng-content>" }]
709
+ args: [{ selector: 'glw-search-form', template: "<ng-content></ng-content>" }]
731
710
  }], ctorParameters: () => [] });
732
711
 
733
712
  class HeaderComponent {
@@ -735,11 +714,11 @@ class HeaderComponent {
735
714
  ngOnInit() {
736
715
  }
737
716
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: HeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
738
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.18", type: HeaderComponent, isStandalone: false, selector: "glw-header", ngImport: i0, template: "<ng-content></ng-content>", styles: [""] }); }
717
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.18", type: HeaderComponent, isStandalone: true, selector: "glw-header", ngImport: i0, template: "<ng-content></ng-content>", styles: [""] }); }
739
718
  }
740
719
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: HeaderComponent, decorators: [{
741
720
  type: Component,
742
- args: [{ selector: 'glw-header', standalone: false, template: "<ng-content></ng-content>" }]
721
+ args: [{ selector: 'glw-header', template: "<ng-content></ng-content>" }]
743
722
  }], ctorParameters: () => [] });
744
723
 
745
724
  class ResultTableComponent {
@@ -750,11 +729,11 @@ class ResultTableComponent {
750
729
  ngOnInit() {
751
730
  }
752
731
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: ResultTableComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
753
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.18", type: ResultTableComponent, isStandalone: false, selector: "glw-result-table", queries: [{ propertyName: "columnDefs", predicate: MatColumnDef }], ngImport: i0, template: "<ng-content></ng-content>", styles: [""] }); }
732
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.18", type: ResultTableComponent, isStandalone: true, selector: "glw-result-table", queries: [{ propertyName: "columnDefs", predicate: MatColumnDef }], ngImport: i0, template: "<ng-content></ng-content>", styles: [""] }); }
754
733
  }
755
734
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: ResultTableComponent, decorators: [{
756
735
  type: Component,
757
- args: [{ selector: 'glw-result-table', standalone: false, template: "<ng-content></ng-content>" }]
736
+ args: [{ selector: 'glw-result-table', template: "<ng-content></ng-content>" }]
758
737
  }], ctorParameters: () => [], propDecorators: { columnDefs: [{
759
738
  type: ContentChildren,
760
739
  args: [MatColumnDef]
@@ -770,11 +749,11 @@ class FilterFormComponent {
770
749
  this.filter.emit("xxx");
771
750
  }
772
751
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: FilterFormComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
773
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.18", type: FilterFormComponent, isStandalone: false, selector: "glw-filter-form", outputs: { filter: "filter" }, ngImport: i0, template: "<mat-card appearance=\"outlined\">\r\n <mat-card-content>\r\n <ng-content></ng-content>\r\n </mat-card-content>\r\n <mat-card-actions align=\"end\">\r\n <button mat-stroked-button color=\"accent\" (click)=\"onFilter()\">\r\n <mat-icon>search</mat-icon>\r\n Filter\r\n </button>\r\n </mat-card-actions>\r\n</mat-card>", styles: [""], dependencies: [{ kind: "component", type: i1$4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i4.MatButton, selector: " button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] ", inputs: ["matButton"], exportAs: ["matButton", "matAnchor"] }, { kind: "component", type: i3$1.MatCard, selector: "mat-card", inputs: ["appearance"], exportAs: ["matCard"] }, { kind: "directive", type: i3$1.MatCardActions, selector: "mat-card-actions", inputs: ["align"], exportAs: ["matCardActions"] }, { kind: "directive", type: i3$1.MatCardContent, selector: "mat-card-content" }] }); }
752
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.18", type: FilterFormComponent, isStandalone: true, selector: "glw-filter-form", outputs: { filter: "filter" }, ngImport: i0, template: "<mat-card appearance=\"outlined\">\r\n <mat-card-content>\r\n <ng-content></ng-content>\r\n </mat-card-content>\r\n <mat-card-actions align=\"end\">\r\n <button mat-stroked-button color=\"accent\" (click)=\"onFilter()\">\r\n <mat-icon>search</mat-icon>\r\n Filter\r\n </button>\r\n </mat-card-actions>\r\n</mat-card>", styles: [""], dependencies: [{ kind: "component", type: MatCard, selector: "mat-card", inputs: ["appearance"], exportAs: ["matCard"] }, { kind: "directive", type: MatCardContent, selector: "mat-card-content" }, { kind: "directive", type: MatCardActions, selector: "mat-card-actions", inputs: ["align"], exportAs: ["matCardActions"] }, { kind: "component", type: MatButton, selector: " button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] ", inputs: ["matButton"], exportAs: ["matButton", "matAnchor"] }, { kind: "component", type: MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }] }); }
774
753
  }
775
754
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: FilterFormComponent, decorators: [{
776
755
  type: Component,
777
- args: [{ selector: 'glw-filter-form', standalone: false, template: "<mat-card appearance=\"outlined\">\r\n <mat-card-content>\r\n <ng-content></ng-content>\r\n </mat-card-content>\r\n <mat-card-actions align=\"end\">\r\n <button mat-stroked-button color=\"accent\" (click)=\"onFilter()\">\r\n <mat-icon>search</mat-icon>\r\n Filter\r\n </button>\r\n </mat-card-actions>\r\n</mat-card>" }]
756
+ args: [{ selector: 'glw-filter-form', imports: [MatCard, MatCardContent, MatCardActions, MatButton, MatIcon], template: "<mat-card appearance=\"outlined\">\r\n <mat-card-content>\r\n <ng-content></ng-content>\r\n </mat-card-content>\r\n <mat-card-actions align=\"end\">\r\n <button mat-stroked-button color=\"accent\" (click)=\"onFilter()\">\r\n <mat-icon>search</mat-icon>\r\n Filter\r\n </button>\r\n </mat-card-actions>\r\n</mat-card>" }]
778
757
  }], ctorParameters: () => [], propDecorators: { filter: [{
779
758
  type: Output
780
759
  }] } });
@@ -1581,11 +1560,11 @@ class DisplayObjectsComponent {
1581
1560
  });
1582
1561
  }
1583
1562
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: DisplayObjectsComponent, deps: [{ token: 'glowwService' }, { token: i0.ChangeDetectorRef }, { token: i1$2.MatDialog }, { token: i2.Router }, { token: i3.Location }, { token: AuthenticationService }, { token: i1$3.UntypedFormBuilder }, { token: i2.ActivatedRoute }], target: i0.ɵɵFactoryTarget.Component }); }
1584
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.18", type: DisplayObjectsComponent, isStandalone: false, selector: "glw-display-objects", inputs: { configuration: "configuration", displayObjLink: "displayObjLink", canDisplayObj: "canDisplayObj", canEdit: "canEdit", canDelete: "canDelete", canAdd: "canAdd", form: "form", SearchForm: "SearchForm", searchRequest: "searchRequest", postRequest: "postRequest", deleteRequest: "deleteRequest", putRequest: "putRequest", maxrows: "maxrows", mandatoryParams: "mandatoryParams", actions: "actions", dialogConfig: "dialogConfig", parent: "parent", columns: "columns", objectName: "objectName", primaryKey: "primaryKey", Editor: "Editor", AddEditor: "AddEditor" }, queries: [{ propertyName: "header", first: true, predicate: HeaderComponent, descendants: true }, { propertyName: "searchFormLayout", first: true, predicate: SearchFormComponent, descendants: true }, { propertyName: "filterFormLayout", first: true, predicate: FilterFormComponent, descendants: true }, { propertyName: "resultLayout", first: true, predicate: ResultTableComponent, descendants: true }], viewQueries: [{ propertyName: "table", first: true, predicate: MatTable, descendants: true }, { propertyName: "paginator", first: true, predicate: MatPaginator, descendants: true }, { propertyName: "sort", first: true, predicate: MatSort, descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div>\n <ng-content select=\"glw-header\"></ng-content>\n</div>\n\n@if (displayform) {\n <div>\n <mat-card appearance=\"outlined\">\n <mat-card-content>\n @if (resultException) {\n <mat-error>\n Unable to query : {{resultException}}\n </mat-error>\n }\n <ng-content select=\"glw-search-form\"></ng-content>\n <!--<ng-container *ngComponentOutlet=\"SearchForm; injector: objInjector\"></ng-container>-->\n @if (maxrows) {\n <div [formGroup]=\"form2\">\n <br />\n <mat-form-field>\n <mat-select placeholder=\"MaxRow\" formControlName=\"_MaxRow_\">\n @for (maxrow of maxrows; track maxrow) {\n <mat-option [value]=\"maxrow\">\n @if (maxrow) {\n <span>{{maxrow}} objects</span>\n }\n @if (!maxrow) {\n <span> Default</span>\n }\n </mat-option>\n }\n </mat-select>\n </mat-form-field>\n </div>\n }\n </mat-card-content>\n <mat-card-actions>\n <button mat-stroked-button color=\"accent\" (click)=\"onSearch()\">\n <mat-icon>search</mat-icon>\n Search\n </button>\n </mat-card-actions>\n </mat-card>\n </div>\n}\n\n<div [hidden]=\"!displayresult\">\n <!--*ngIf=\"displayresult\"-->\n <div class=\"mat-elevation-z8\" [hidden]=\"!dataSource\">\n <ng-content select=\"[filter]\"></ng-content>\n\n <!--*ngIf=\"dataSource; else Spinner\"-->\n <table mat-table [dataSource]=\"dataSource\" matSort>\n <ng-container matColumnDef=\"action\">\n <th mat-header-cell *matHeaderCellDef>\n @if (canAddThis()) {\n <i class=\"fal fa-plus\" (click)=\"AddObj()\">\n </i>\n }\n </th>\n <td mat-cell *matCellDef=\"let obj\">\n @if (canDisplayObjThis(obj)) {\n <i class=\"fal fa-eye\" [routerLink]=\"displayObjLinkThis(obj)\">\n </i>\n }\n @for (action of actions; track action) {\n @if (action.icon.icon && (!action.display || action.display(obj, action.name))) {\n <i [ngClass]=\"action.icon\" [routerLink]=\"action.routerLinkFct(obj)\">\n </i>\n }\n @if (!action.icon.icon && (!action.display || action.display(obj, action.name))) {\n <i [ngClass]=\"action.icon\" [routerLink]=\"action.routerLinkFct(obj)\"></i>\n }\n }\n @if (canDeleteThis(obj)) {\n <i class=\"fal fa-trash-alt\" (click)=\"DeleteObj(obj)\">\n </i>\n }\n @if (canEditThis(obj)) {\n <i class=\"fal fa-pencil\" (click)=\"EditObj(obj)\">\n </i>\n }\n </td>\n </ng-container>\n <ng-content select=\"glw-result-table\"></ng-content>\n <tr mat-header-row *matHeaderRowDef=\"columnsToDisplay\"></tr>\n <tr mat-row *matRowDef=\"let myRowData; columns: columnsToDisplay\"></tr>\n </table>\n <mat-paginator pageSize=\"10\"></mat-paginator>\n </div>\n <div #Spinner [hidden]=\"dataSource\">\n <mat-spinner></mat-spinner>\n </div>\n</div>\n", styles: ["table{width:100%}i{cursor:pointer;padding:5px}\n"], dependencies: [{ kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: i1$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i2$1.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i2$1.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "component", type: i1$4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i4.MatButton, selector: " button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] ", inputs: ["matButton"], exportAs: ["matButton", "matAnchor"] }, { kind: "component", type: i3$1.MatCard, selector: "mat-card", inputs: ["appearance"], exportAs: ["matCard"] }, { kind: "directive", type: i3$1.MatCardActions, selector: "mat-card-actions", inputs: ["align"], exportAs: ["matCardActions"] }, { kind: "directive", type: i3$1.MatCardContent, selector: "mat-card-content" }, { kind: "component", type: i10.MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "mode", "value", "diameter", "strokeWidth"], exportAs: ["matProgressSpinner"] }, { kind: "component", type: i11.MatTable, selector: "mat-table, table[mat-table]", exportAs: ["matTable"] }, { kind: "directive", type: i11.MatHeaderCellDef, selector: "[matHeaderCellDef]" }, { kind: "directive", type: i11.MatHeaderRowDef, selector: "[matHeaderRowDef]", inputs: ["matHeaderRowDef", "matHeaderRowDefSticky"] }, { kind: "directive", type: i11.MatColumnDef, selector: "[matColumnDef]", inputs: ["matColumnDef"] }, { kind: "directive", type: i11.MatCellDef, selector: "[matCellDef]" }, { kind: "directive", type: i11.MatRowDef, selector: "[matRowDef]", inputs: ["matRowDefColumns", "matRowDefWhen"] }, { kind: "directive", type: i11.MatHeaderCell, selector: "mat-header-cell, th[mat-header-cell]" }, { kind: "directive", type: i11.MatCell, selector: "mat-cell, td[mat-cell]" }, { kind: "component", type: i11.MatHeaderRow, selector: "mat-header-row, tr[mat-header-row]", exportAs: ["matHeaderRow"] }, { kind: "component", type: i11.MatRow, selector: "mat-row, tr[mat-row]", exportAs: ["matRow"] }, { kind: "component", type: i3$2.MatSelect, selector: "mat-select", inputs: ["aria-describedby", "panelClass", "disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator", "placeholder", "required", "multiple", "disableOptionCentering", "compareWith", "value", "aria-label", "aria-labelledby", "errorStateMatcher", "typeaheadDebounceInterval", "sortComparator", "id", "panelWidth", "canSelectNullableOptions"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }, { kind: "component", type: i3$2.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "component", type: i13.MatPaginator, selector: "mat-paginator", inputs: ["color", "pageIndex", "length", "pageSize", "pageSizeOptions", "hidePageSize", "showFirstLastButtons", "selectConfig", "disabled"], outputs: ["page"], exportAs: ["matPaginator"] }, { kind: "directive", type: i14.MatSort, selector: "[matSort]", inputs: ["matSortActive", "matSortStart", "matSortDirection", "matSortDisableClear", "matSortDisabled"], outputs: ["matSortChange"], exportAs: ["matSort"] }] }); }
1563
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.18", type: DisplayObjectsComponent, isStandalone: true, selector: "glw-display-objects", inputs: { configuration: "configuration", displayObjLink: "displayObjLink", canDisplayObj: "canDisplayObj", canEdit: "canEdit", canDelete: "canDelete", canAdd: "canAdd", form: "form", SearchForm: "SearchForm", searchRequest: "searchRequest", postRequest: "postRequest", deleteRequest: "deleteRequest", putRequest: "putRequest", maxrows: "maxrows", mandatoryParams: "mandatoryParams", actions: "actions", dialogConfig: "dialogConfig", parent: "parent", columns: "columns", objectName: "objectName", primaryKey: "primaryKey", Editor: "Editor", AddEditor: "AddEditor" }, queries: [{ propertyName: "header", first: true, predicate: HeaderComponent, descendants: true }, { propertyName: "searchFormLayout", first: true, predicate: SearchFormComponent, descendants: true }, { propertyName: "filterFormLayout", first: true, predicate: FilterFormComponent, descendants: true }, { propertyName: "resultLayout", first: true, predicate: ResultTableComponent, descendants: true }], viewQueries: [{ propertyName: "table", first: true, predicate: MatTable, descendants: true }, { propertyName: "paginator", first: true, predicate: MatPaginator, descendants: true }, { propertyName: "sort", first: true, predicate: MatSort, descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div>\n <ng-content select=\"glw-header\"></ng-content>\n</div>\n\n@if (displayform) {\n <div>\n <mat-card appearance=\"outlined\">\n <mat-card-content>\n @if (resultException) {\n <mat-error>\n Unable to query : {{resultException}}\n </mat-error>\n }\n <ng-content select=\"glw-search-form\"></ng-content>\n <!--<ng-container *ngComponentOutlet=\"SearchForm; injector: objInjector\"></ng-container>-->\n @if (maxrows) {\n <div [formGroup]=\"form2\">\n <br />\n <mat-form-field>\n <mat-select placeholder=\"MaxRow\" formControlName=\"_MaxRow_\">\n @for (maxrow of maxrows; track maxrow) {\n <mat-option [value]=\"maxrow\">\n @if (maxrow) {\n <span>{{maxrow}} objects</span>\n }\n @if (!maxrow) {\n <span> Default</span>\n }\n </mat-option>\n }\n </mat-select>\n </mat-form-field>\n </div>\n }\n </mat-card-content>\n <mat-card-actions>\n <button mat-stroked-button color=\"accent\" (click)=\"onSearch()\">\n <mat-icon>search</mat-icon>\n Search\n </button>\n </mat-card-actions>\n </mat-card>\n </div>\n}\n\n<div [hidden]=\"!displayresult\">\n <!--*ngIf=\"displayresult\"-->\n <div class=\"mat-elevation-z8\" [hidden]=\"!dataSource\">\n <ng-content select=\"[filter]\"></ng-content>\n\n <!--*ngIf=\"dataSource; else Spinner\"-->\n <table mat-table [dataSource]=\"dataSource\" matSort>\n <ng-container matColumnDef=\"action\">\n <th mat-header-cell *matHeaderCellDef>\n @if (canAddThis()) {\n <i class=\"fal fa-plus\" (click)=\"AddObj()\">\n </i>\n }\n </th>\n <td mat-cell *matCellDef=\"let obj\">\n @if (canDisplayObjThis(obj)) {\n <i class=\"fal fa-eye\" [routerLink]=\"displayObjLinkThis(obj)\">\n </i>\n }\n @for (action of actions; track action) {\n @if (action.icon.icon && (!action.display || action.display(obj, action.name))) {\n <i [ngClass]=\"action.icon\" [routerLink]=\"action.routerLinkFct(obj)\">\n </i>\n }\n @if (!action.icon.icon && (!action.display || action.display(obj, action.name))) {\n <i [ngClass]=\"action.icon\" [routerLink]=\"action.routerLinkFct(obj)\"></i>\n }\n }\n @if (canDeleteThis(obj)) {\n <i class=\"fal fa-trash-alt\" (click)=\"DeleteObj(obj)\">\n </i>\n }\n @if (canEditThis(obj)) {\n <i class=\"fal fa-pencil\" (click)=\"EditObj(obj)\">\n </i>\n }\n </td>\n </ng-container>\n <ng-content select=\"glw-result-table\"></ng-content>\n <tr mat-header-row *matHeaderRowDef=\"columnsToDisplay\"></tr>\n <tr mat-row *matRowDef=\"let myRowData; columns: columnsToDisplay\"></tr>\n </table>\n <mat-paginator pageSize=\"10\"></mat-paginator>\n </div>\n <div #Spinner [hidden]=\"dataSource\">\n <mat-spinner></mat-spinner>\n </div>\n</div>\n", styles: ["table{width:100%}i{cursor:pointer;padding:5px}\n"], dependencies: [{ kind: "component", type: MatCard, selector: "mat-card", inputs: ["appearance"], exportAs: ["matCard"] }, { kind: "directive", type: MatCardContent, selector: "mat-card-content" }, { kind: "directive", type: MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "component", type: MatSelect, selector: "mat-select", inputs: ["aria-describedby", "panelClass", "disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator", "placeholder", "required", "multiple", "disableOptionCentering", "compareWith", "value", "aria-label", "aria-labelledby", "errorStateMatcher", "typeaheadDebounceInterval", "sortComparator", "id", "panelWidth", "canSelectNullableOptions"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }, { kind: "component", type: MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "directive", type: MatCardActions, selector: "mat-card-actions", inputs: ["align"], exportAs: ["matCardActions"] }, { kind: "component", type: MatButton, selector: " button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] ", inputs: ["matButton"], exportAs: ["matButton", "matAnchor"] }, { kind: "component", type: MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: MatTable, selector: "mat-table, table[mat-table]", exportAs: ["matTable"] }, { kind: "directive", type: MatSort, selector: "[matSort]", inputs: ["matSortActive", "matSortStart", "matSortDirection", "matSortDisableClear", "matSortDisabled"], outputs: ["matSortChange"], exportAs: ["matSort"] }, { kind: "directive", type: MatColumnDef, selector: "[matColumnDef]", inputs: ["matColumnDef"] }, { kind: "directive", type: MatHeaderCellDef, selector: "[matHeaderCellDef]" }, { kind: "directive", type: MatHeaderCell, selector: "mat-header-cell, th[mat-header-cell]" }, { kind: "directive", type: MatCellDef, selector: "[matCellDef]" }, { kind: "directive", type: MatCell, selector: "mat-cell, td[mat-cell]" }, { kind: "directive", type: RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: MatHeaderRowDef, selector: "[matHeaderRowDef]", inputs: ["matHeaderRowDef", "matHeaderRowDefSticky"] }, { kind: "component", type: MatHeaderRow, selector: "mat-header-row, tr[mat-header-row]", exportAs: ["matHeaderRow"] }, { kind: "directive", type: MatRowDef, selector: "[matRowDef]", inputs: ["matRowDefColumns", "matRowDefWhen"] }, { kind: "component", type: MatRow, selector: "mat-row, tr[mat-row]", exportAs: ["matRow"] }, { kind: "component", type: MatPaginator, selector: "mat-paginator", inputs: ["color", "pageIndex", "length", "pageSize", "pageSizeOptions", "hidePageSize", "showFirstLastButtons", "selectConfig", "disabled"], outputs: ["page"], exportAs: ["matPaginator"] }, { kind: "component", type: MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "mode", "value", "diameter", "strokeWidth"], exportAs: ["matProgressSpinner"] }] }); }
1585
1564
  }
1586
1565
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: DisplayObjectsComponent, decorators: [{
1587
1566
  type: Component,
1588
- args: [{ selector: 'glw-display-objects', standalone: false, template: "<div>\n <ng-content select=\"glw-header\"></ng-content>\n</div>\n\n@if (displayform) {\n <div>\n <mat-card appearance=\"outlined\">\n <mat-card-content>\n @if (resultException) {\n <mat-error>\n Unable to query : {{resultException}}\n </mat-error>\n }\n <ng-content select=\"glw-search-form\"></ng-content>\n <!--<ng-container *ngComponentOutlet=\"SearchForm; injector: objInjector\"></ng-container>-->\n @if (maxrows) {\n <div [formGroup]=\"form2\">\n <br />\n <mat-form-field>\n <mat-select placeholder=\"MaxRow\" formControlName=\"_MaxRow_\">\n @for (maxrow of maxrows; track maxrow) {\n <mat-option [value]=\"maxrow\">\n @if (maxrow) {\n <span>{{maxrow}} objects</span>\n }\n @if (!maxrow) {\n <span> Default</span>\n }\n </mat-option>\n }\n </mat-select>\n </mat-form-field>\n </div>\n }\n </mat-card-content>\n <mat-card-actions>\n <button mat-stroked-button color=\"accent\" (click)=\"onSearch()\">\n <mat-icon>search</mat-icon>\n Search\n </button>\n </mat-card-actions>\n </mat-card>\n </div>\n}\n\n<div [hidden]=\"!displayresult\">\n <!--*ngIf=\"displayresult\"-->\n <div class=\"mat-elevation-z8\" [hidden]=\"!dataSource\">\n <ng-content select=\"[filter]\"></ng-content>\n\n <!--*ngIf=\"dataSource; else Spinner\"-->\n <table mat-table [dataSource]=\"dataSource\" matSort>\n <ng-container matColumnDef=\"action\">\n <th mat-header-cell *matHeaderCellDef>\n @if (canAddThis()) {\n <i class=\"fal fa-plus\" (click)=\"AddObj()\">\n </i>\n }\n </th>\n <td mat-cell *matCellDef=\"let obj\">\n @if (canDisplayObjThis(obj)) {\n <i class=\"fal fa-eye\" [routerLink]=\"displayObjLinkThis(obj)\">\n </i>\n }\n @for (action of actions; track action) {\n @if (action.icon.icon && (!action.display || action.display(obj, action.name))) {\n <i [ngClass]=\"action.icon\" [routerLink]=\"action.routerLinkFct(obj)\">\n </i>\n }\n @if (!action.icon.icon && (!action.display || action.display(obj, action.name))) {\n <i [ngClass]=\"action.icon\" [routerLink]=\"action.routerLinkFct(obj)\"></i>\n }\n }\n @if (canDeleteThis(obj)) {\n <i class=\"fal fa-trash-alt\" (click)=\"DeleteObj(obj)\">\n </i>\n }\n @if (canEditThis(obj)) {\n <i class=\"fal fa-pencil\" (click)=\"EditObj(obj)\">\n </i>\n }\n </td>\n </ng-container>\n <ng-content select=\"glw-result-table\"></ng-content>\n <tr mat-header-row *matHeaderRowDef=\"columnsToDisplay\"></tr>\n <tr mat-row *matRowDef=\"let myRowData; columns: columnsToDisplay\"></tr>\n </table>\n <mat-paginator pageSize=\"10\"></mat-paginator>\n </div>\n <div #Spinner [hidden]=\"dataSource\">\n <mat-spinner></mat-spinner>\n </div>\n</div>\n", styles: ["table{width:100%}i{cursor:pointer;padding:5px}\n"] }]
1567
+ args: [{ selector: 'glw-display-objects', imports: [MatCard, MatCardContent, MatError, FormsModule, ReactiveFormsModule, MatFormField, MatSelect, MatOption, MatCardActions, MatButton, MatIcon, MatTable, MatSort, MatColumnDef, MatHeaderCellDef, MatHeaderCell, MatCellDef, MatCell, RouterLink, NgClass, MatHeaderRowDef, MatHeaderRow, MatRowDef, MatRow, MatPaginator, MatProgressSpinner], template: "<div>\n <ng-content select=\"glw-header\"></ng-content>\n</div>\n\n@if (displayform) {\n <div>\n <mat-card appearance=\"outlined\">\n <mat-card-content>\n @if (resultException) {\n <mat-error>\n Unable to query : {{resultException}}\n </mat-error>\n }\n <ng-content select=\"glw-search-form\"></ng-content>\n <!--<ng-container *ngComponentOutlet=\"SearchForm; injector: objInjector\"></ng-container>-->\n @if (maxrows) {\n <div [formGroup]=\"form2\">\n <br />\n <mat-form-field>\n <mat-select placeholder=\"MaxRow\" formControlName=\"_MaxRow_\">\n @for (maxrow of maxrows; track maxrow) {\n <mat-option [value]=\"maxrow\">\n @if (maxrow) {\n <span>{{maxrow}} objects</span>\n }\n @if (!maxrow) {\n <span> Default</span>\n }\n </mat-option>\n }\n </mat-select>\n </mat-form-field>\n </div>\n }\n </mat-card-content>\n <mat-card-actions>\n <button mat-stroked-button color=\"accent\" (click)=\"onSearch()\">\n <mat-icon>search</mat-icon>\n Search\n </button>\n </mat-card-actions>\n </mat-card>\n </div>\n}\n\n<div [hidden]=\"!displayresult\">\n <!--*ngIf=\"displayresult\"-->\n <div class=\"mat-elevation-z8\" [hidden]=\"!dataSource\">\n <ng-content select=\"[filter]\"></ng-content>\n\n <!--*ngIf=\"dataSource; else Spinner\"-->\n <table mat-table [dataSource]=\"dataSource\" matSort>\n <ng-container matColumnDef=\"action\">\n <th mat-header-cell *matHeaderCellDef>\n @if (canAddThis()) {\n <i class=\"fal fa-plus\" (click)=\"AddObj()\">\n </i>\n }\n </th>\n <td mat-cell *matCellDef=\"let obj\">\n @if (canDisplayObjThis(obj)) {\n <i class=\"fal fa-eye\" [routerLink]=\"displayObjLinkThis(obj)\">\n </i>\n }\n @for (action of actions; track action) {\n @if (action.icon.icon && (!action.display || action.display(obj, action.name))) {\n <i [ngClass]=\"action.icon\" [routerLink]=\"action.routerLinkFct(obj)\">\n </i>\n }\n @if (!action.icon.icon && (!action.display || action.display(obj, action.name))) {\n <i [ngClass]=\"action.icon\" [routerLink]=\"action.routerLinkFct(obj)\"></i>\n }\n }\n @if (canDeleteThis(obj)) {\n <i class=\"fal fa-trash-alt\" (click)=\"DeleteObj(obj)\">\n </i>\n }\n @if (canEditThis(obj)) {\n <i class=\"fal fa-pencil\" (click)=\"EditObj(obj)\">\n </i>\n }\n </td>\n </ng-container>\n <ng-content select=\"glw-result-table\"></ng-content>\n <tr mat-header-row *matHeaderRowDef=\"columnsToDisplay\"></tr>\n <tr mat-row *matRowDef=\"let myRowData; columns: columnsToDisplay\"></tr>\n </table>\n <mat-paginator pageSize=\"10\"></mat-paginator>\n </div>\n <div #Spinner [hidden]=\"dataSource\">\n <mat-spinner></mat-spinner>\n </div>\n</div>\n", styles: ["table{width:100%}i{cursor:pointer;padding:5px}\n"] }]
1589
1568
  }], ctorParameters: () => [{ type: GlowwService, decorators: [{
1590
1569
  type: Inject,
1591
1570
  args: ['glowwService']
@@ -1679,11 +1658,11 @@ class PromptComponent {
1679
1658
  this.dialogRef.close(this.form.value.prompt);
1680
1659
  }
1681
1660
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: PromptComponent, deps: [{ token: i1$2.MatDialogRef }, { token: MAT_DIALOG_DATA }, { token: i1$3.UntypedFormBuilder }], target: i0.ɵɵFactoryTarget.Component }); }
1682
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.18", type: PromptComponent, isStandalone: false, selector: "gloww-prompt", ngImport: i0, template: "<h1 mat-dialog-title>\r\n {{title}}\r\n</h1>\r\n\r\n<div mat-dialog-content [formGroup]=\"form\">\r\n <p [innerHTML]=\"message | safeHtml\"></p>\r\n <mat-form-field>\r\n <input matInput placeholder=\"Prompt\" formControlName=\"prompt\" style=\"width: calc(100% - 32px);\">\r\n </mat-form-field>\r\n</div>\r\n\r\n<mat-dialog-actions>\r\n <button mat-button (click)=\"onCancel()\">Cancel</button>\r\n <button mat-raised-button color=\"primary\" (click)=\"onOK()\">Yes</button>\r\n</mat-dialog-actions>\r\n", styles: [""], dependencies: [{ kind: "directive", type: i1$3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i1$2.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: i1$2.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "directive", type: i1$2.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "directive", type: i2$1.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly", "disabledInteractive"], exportAs: ["matInput"] }, { kind: "component", type: i2$1.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "component", type: i4.MatButton, selector: " button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] ", inputs: ["matButton"], exportAs: ["matButton", "matAnchor"] }, { kind: "pipe", type: SafeHtmlPipe, name: "safeHtml" }] }); }
1661
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.18", type: PromptComponent, isStandalone: true, selector: "gloww-prompt", ngImport: i0, template: "<h1 mat-dialog-title>\r\n {{title}}\r\n</h1>\r\n\r\n<div mat-dialog-content [formGroup]=\"form\">\r\n <p [innerHTML]=\"message | safeHtml\"></p>\r\n <mat-form-field>\r\n <input matInput placeholder=\"Prompt\" formControlName=\"prompt\" style=\"width: calc(100% - 32px);\">\r\n </mat-form-field>\r\n</div>\r\n\r\n<mat-dialog-actions>\r\n <button mat-button (click)=\"onCancel()\">Cancel</button>\r\n <button mat-raised-button color=\"primary\" (click)=\"onOK()\">Yes</button>\r\n</mat-dialog-actions>\r\n", styles: [""], dependencies: [{ kind: "directive", type: MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly", "disabledInteractive"], exportAs: ["matInput"] }, { kind: "directive", type: MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "component", type: MatButton, selector: " button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] ", inputs: ["matButton"], exportAs: ["matButton", "matAnchor"] }, { kind: "pipe", type: SafeHtmlPipe, name: "safeHtml" }] }); }
1683
1662
  }
1684
1663
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: PromptComponent, decorators: [{
1685
1664
  type: Component,
1686
- args: [{ selector: 'gloww-prompt', standalone: false, template: "<h1 mat-dialog-title>\r\n {{title}}\r\n</h1>\r\n\r\n<div mat-dialog-content [formGroup]=\"form\">\r\n <p [innerHTML]=\"message | safeHtml\"></p>\r\n <mat-form-field>\r\n <input matInput placeholder=\"Prompt\" formControlName=\"prompt\" style=\"width: calc(100% - 32px);\">\r\n </mat-form-field>\r\n</div>\r\n\r\n<mat-dialog-actions>\r\n <button mat-button (click)=\"onCancel()\">Cancel</button>\r\n <button mat-raised-button color=\"primary\" (click)=\"onOK()\">Yes</button>\r\n</mat-dialog-actions>\r\n" }]
1665
+ args: [{ selector: 'gloww-prompt', imports: [MatDialogTitle, CdkScrollable, MatDialogContent, FormsModule, ReactiveFormsModule, MatFormField, MatInput, MatDialogActions, MatButton, SafeHtmlPipe], template: "<h1 mat-dialog-title>\r\n {{title}}\r\n</h1>\r\n\r\n<div mat-dialog-content [formGroup]=\"form\">\r\n <p [innerHTML]=\"message | safeHtml\"></p>\r\n <mat-form-field>\r\n <input matInput placeholder=\"Prompt\" formControlName=\"prompt\" style=\"width: calc(100% - 32px);\">\r\n </mat-form-field>\r\n</div>\r\n\r\n<mat-dialog-actions>\r\n <button mat-button (click)=\"onCancel()\">Cancel</button>\r\n <button mat-raised-button color=\"primary\" (click)=\"onOK()\">Yes</button>\r\n</mat-dialog-actions>\r\n" }]
1687
1666
  }], ctorParameters: () => [{ type: i1$2.MatDialogRef }, { type: PromptModel, decorators: [{
1688
1667
  type: Inject,
1689
1668
  args: [MAT_DIALOG_DATA]
@@ -1728,14 +1707,11 @@ class SecurePipe {
1728
1707
  .pipe(map(e => this.domSanitizer.bypassSecurityTrustUrl(URL.createObjectURL(e))), retryWithDelay(delayVal, retryVal));
1729
1708
  }
1730
1709
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: SecurePipe, deps: [{ token: i1.HttpClient }, { token: i1$1.DomSanitizer }], target: i0.ɵɵFactoryTarget.Pipe }); }
1731
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "20.3.18", ngImport: i0, type: SecurePipe, isStandalone: false, name: "secure" }); }
1710
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "20.3.18", ngImport: i0, type: SecurePipe, isStandalone: true, name: "secure" }); }
1732
1711
  }
1733
1712
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: SecurePipe, decorators: [{
1734
1713
  type: Pipe,
1735
- args: [{
1736
- name: 'secure',
1737
- standalone: false
1738
- }]
1714
+ args: [{ name: 'secure' }]
1739
1715
  }], ctorParameters: () => [{ type: i1.HttpClient }, { type: i1$1.DomSanitizer }] });
1740
1716
 
1741
1717
  class MenuListItemComponent {
@@ -1806,7 +1782,7 @@ class MenuListItemComponent {
1806
1782
  return this.item.hidden();
1807
1783
  }
1808
1784
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: MenuListItemComponent, deps: [{ token: 'glowwService' }, { token: NavService }, { token: i2.Router }], target: i0.ɵɵFactoryTarget.Component }); }
1809
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.18", type: MenuListItemComponent, isStandalone: false, selector: "gloww-menu-list-item", inputs: { item: "item", depth: "depth" }, host: { properties: { "attr.aria-expanded": "this.ariaExpanded" } }, ngImport: i0, template: "@if (item) {\n @if (!(_hidden | async)) {\n <div class=\"thisMenu\" (click)=\"onItemSelected(item)\" [class.disabled]=\"(_disabled | async)\">\n <a mat-list-item\n [ngStyle]=\"{'padding-left': (depth * 12) + 'px'}\"\n [ngClass]=\"{'active': isActive(item) && !(_disabled | async), 'expanded': expanded}\"\n class=\"menu-list-item\"\n [routerLink]=\"routerLink(item)\">\n <mat-icon class=\"routeIcon\">\n <i [ngClass]=\"item.icon\" [ngStyle]=\"item.iconStyle\"></i>\n </mat-icon>\n <span class=\"menu-label\">{{item.displayName}}</span>\n </a>\n @if (item.children?.length && !(_disabled | async)) {\n <div class=\"expand-container\">\n <mat-icon [@indicatorRotate]=\"expanded ? 'expanded': 'collapsed'\" class=\"expandIcon\">\n expand_more\n </mat-icon>\n </div>\n }\n </div>\n }\n @if (expanded && !(_disabled | async)) {\n <div>\n @for (child of item.children; track child) {\n <gloww-menu-list-item [item]=\"child\" [depth]=\"depth+1\">\n </gloww-menu-list-item>\n }\n </div>\n }\n}", styles: [".thisMenu{display:flex;flex-direction:row;align-items:center;outline:none;width:calc(100% - 20px);margin:10px;cursor:pointer}.menu-list-item{display:flex;align-items:center;flex:1;padding:8px 0;text-decoration:none;color:inherit;min-width:0}.menu-list-item .routeIcon{margin-right:20px;flex-shrink:0}.menu-list-item .menu-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.expand-container{display:flex;align-items:center;justify-content:center;flex-shrink:0}mat-icon{height:32px;width:40px;display:flex;align-items:center;justify-content:center}.expandIcon{cursor:pointer}:disabled,.disabled{color:#d3d3d3!important;pointer-events:none}:disabled mat-icon i,.disabled mat-icon i{color:#d3d3d3!important}\n"], dependencies: [{ kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i3.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i2.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "component", type: i1$4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: MenuListItemComponent, selector: "gloww-menu-list-item", inputs: ["item", "depth"] }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }], animations: [
1785
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.18", type: MenuListItemComponent, isStandalone: true, selector: "gloww-menu-list-item", inputs: { item: "item", depth: "depth" }, host: { properties: { "attr.aria-expanded": "this.ariaExpanded" } }, ngImport: i0, template: "@if (item) {\n @if (!(_hidden | async)) {\n <div class=\"thisMenu\" (click)=\"onItemSelected(item)\" [class.disabled]=\"(_disabled | async)\">\n <a mat-list-item\n [ngStyle]=\"{'padding-left': (depth * 12) + 'px'}\"\n [ngClass]=\"{'active': isActive(item) && !(_disabled | async), 'expanded': expanded}\"\n class=\"menu-list-item\"\n [routerLink]=\"routerLink(item)\">\n <mat-icon class=\"routeIcon\">\n <i [ngClass]=\"item.icon\" [ngStyle]=\"item.iconStyle\"></i>\n </mat-icon>\n <span class=\"menu-label\">{{item.displayName}}</span>\n </a>\n @if (item.children?.length && !(_disabled | async)) {\n <div class=\"expand-container\">\n <mat-icon [@indicatorRotate]=\"expanded ? 'expanded': 'collapsed'\" class=\"expandIcon\">\n expand_more\n </mat-icon>\n </div>\n }\n </div>\n }\n @if (expanded && !(_disabled | async)) {\n <div>\n @for (child of item.children; track child) {\n <gloww-menu-list-item [item]=\"child\" [depth]=\"depth+1\">\n </gloww-menu-list-item>\n }\n </div>\n }\n}", styles: [".thisMenu{display:flex;flex-direction:row;align-items:center;outline:none;width:calc(100% - 20px);margin:10px;cursor:pointer}.menu-list-item{display:flex;align-items:center;flex:1;padding:8px 0;text-decoration:none;color:inherit;min-width:0}.menu-list-item .routeIcon{margin-right:20px;flex-shrink:0}.menu-list-item .menu-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.expand-container{display:flex;align-items:center;justify-content:center;flex-shrink:0}mat-icon{height:32px;width:40px;display:flex;align-items:center;justify-content:center}.expandIcon{cursor:pointer}:disabled,.disabled{color:#d3d3d3!important;pointer-events:none}:disabled mat-icon i,.disabled mat-icon i{color:#d3d3d3!important}\n"], dependencies: [{ kind: "component", type: MenuListItemComponent, selector: "gloww-menu-list-item", inputs: ["item", "depth"] }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "component", type: MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: GlowwModule }, { kind: "pipe", type: AsyncPipe, name: "async" }], animations: [
1810
1786
  trigger('indicatorRotate', [
1811
1787
  state('collapsed', style({ transform: 'rotate(0deg)' })),
1812
1788
  state('expanded', style({ transform: 'rotate(180deg)' })),
@@ -1822,7 +1798,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImpo
1822
1798
  state('expanded', style({ transform: 'rotate(180deg)' })),
1823
1799
  transition('expanded <=> collapsed', animate('225ms cubic-bezier(0.4,0.0,0.2,1)'))
1824
1800
  ])
1825
- ], standalone: false, template: "@if (item) {\n @if (!(_hidden | async)) {\n <div class=\"thisMenu\" (click)=\"onItemSelected(item)\" [class.disabled]=\"(_disabled | async)\">\n <a mat-list-item\n [ngStyle]=\"{'padding-left': (depth * 12) + 'px'}\"\n [ngClass]=\"{'active': isActive(item) && !(_disabled | async), 'expanded': expanded}\"\n class=\"menu-list-item\"\n [routerLink]=\"routerLink(item)\">\n <mat-icon class=\"routeIcon\">\n <i [ngClass]=\"item.icon\" [ngStyle]=\"item.iconStyle\"></i>\n </mat-icon>\n <span class=\"menu-label\">{{item.displayName}}</span>\n </a>\n @if (item.children?.length && !(_disabled | async)) {\n <div class=\"expand-container\">\n <mat-icon [@indicatorRotate]=\"expanded ? 'expanded': 'collapsed'\" class=\"expandIcon\">\n expand_more\n </mat-icon>\n </div>\n }\n </div>\n }\n @if (expanded && !(_disabled | async)) {\n <div>\n @for (child of item.children; track child) {\n <gloww-menu-list-item [item]=\"child\" [depth]=\"depth+1\">\n </gloww-menu-list-item>\n }\n </div>\n }\n}", styles: [".thisMenu{display:flex;flex-direction:row;align-items:center;outline:none;width:calc(100% - 20px);margin:10px;cursor:pointer}.menu-list-item{display:flex;align-items:center;flex:1;padding:8px 0;text-decoration:none;color:inherit;min-width:0}.menu-list-item .routeIcon{margin-right:20px;flex-shrink:0}.menu-list-item .menu-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.expand-container{display:flex;align-items:center;justify-content:center;flex-shrink:0}mat-icon{height:32px;width:40px;display:flex;align-items:center;justify-content:center}.expandIcon{cursor:pointer}:disabled,.disabled{color:#d3d3d3!important;pointer-events:none}:disabled mat-icon i,.disabled mat-icon i{color:#d3d3d3!important}\n"] }]
1801
+ ], imports: [NgStyle, NgClass, RouterLink, MatIcon, GlowwModule, AsyncPipe], template: "@if (item) {\n @if (!(_hidden | async)) {\n <div class=\"thisMenu\" (click)=\"onItemSelected(item)\" [class.disabled]=\"(_disabled | async)\">\n <a mat-list-item\n [ngStyle]=\"{'padding-left': (depth * 12) + 'px'}\"\n [ngClass]=\"{'active': isActive(item) && !(_disabled | async), 'expanded': expanded}\"\n class=\"menu-list-item\"\n [routerLink]=\"routerLink(item)\">\n <mat-icon class=\"routeIcon\">\n <i [ngClass]=\"item.icon\" [ngStyle]=\"item.iconStyle\"></i>\n </mat-icon>\n <span class=\"menu-label\">{{item.displayName}}</span>\n </a>\n @if (item.children?.length && !(_disabled | async)) {\n <div class=\"expand-container\">\n <mat-icon [@indicatorRotate]=\"expanded ? 'expanded': 'collapsed'\" class=\"expandIcon\">\n expand_more\n </mat-icon>\n </div>\n }\n </div>\n }\n @if (expanded && !(_disabled | async)) {\n <div>\n @for (child of item.children; track child) {\n <gloww-menu-list-item [item]=\"child\" [depth]=\"depth+1\">\n </gloww-menu-list-item>\n }\n </div>\n }\n}", styles: [".thisMenu{display:flex;flex-direction:row;align-items:center;outline:none;width:calc(100% - 20px);margin:10px;cursor:pointer}.menu-list-item{display:flex;align-items:center;flex:1;padding:8px 0;text-decoration:none;color:inherit;min-width:0}.menu-list-item .routeIcon{margin-right:20px;flex-shrink:0}.menu-list-item .menu-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.expand-container{display:flex;align-items:center;justify-content:center;flex-shrink:0}mat-icon{height:32px;width:40px;display:flex;align-items:center;justify-content:center}.expandIcon{cursor:pointer}:disabled,.disabled{color:#d3d3d3!important;pointer-events:none}:disabled mat-icon i,.disabled mat-icon i{color:#d3d3d3!important}\n"] }]
1826
1802
  }], ctorParameters: () => [{ type: GlowwService, decorators: [{
1827
1803
  type: Inject,
1828
1804
  args: ['glowwService']
@@ -1952,13 +1928,13 @@ class CodeEditorComponent {
1952
1928
  }
1953
1929
  }
1954
1930
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: CodeEditorComponent, deps: [{ token: SnippetsService }, { token: GlowwService }], target: i0.ɵɵFactoryTarget.Component }); }
1955
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.18", type: CodeEditorComponent, isStandalone: false, selector: "gloww-code-editor", inputs: { _value: ["value", "_value"], display: "display", mode: "mode", formatter: "formatter", formatterOptions: "formatterOptions", snippets: "snippets", snippetsPath: "snippetsPath" }, providers: [
1931
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.18", type: CodeEditorComponent, isStandalone: true, selector: "gloww-code-editor", inputs: { _value: ["value", "_value"], display: "display", mode: "mode", formatter: "formatter", formatterOptions: "formatterOptions", snippets: "snippets", snippetsPath: "snippetsPath" }, providers: [
1956
1932
  {
1957
1933
  provide: NG_VALUE_ACCESSOR,
1958
1934
  multi: true,
1959
1935
  useExisting: CodeEditorComponent
1960
1936
  }
1961
- ], viewQueries: [{ propertyName: "codeMirrorComponent", first: true, predicate: CodemirrorComponent, descendants: true }], ngImport: i0, template: "<div class=\"editor-container mainDiv\">\n <mat-label>{{display}}</mat-label>\n\n @if (snippets?.length) {\n <div class=\"snippet-header\">\n <mat-select [(ngModel)]=\"currentSnippet\" class=\"snippet-select\">\n @for (snippet of snippets; track snippet) {\n <mat-option [value]=\"snippet\">{{snippet.name}}</mat-option>\n }\n </mat-select>\n <button mat-stroked-button color=\"primary\" type=\"button\" (click)=\"insert()\">Insert</button>\n </div>\n }\n\n <ngx-codemirror\n [(ngModel)]=\"value\"\n [options]=\"{lineNumbers: true, theme: 'eclipse', indentWithTabs:true, indentUnit: 4, matchBrackets: true, mode: mode, fixedGutter:false, extraKeys: extraKeys}\"\n class=\"editor-full-width\">\n </ngx-codemirror>\n</div>", styles: [".CodeMirror{resize:both;padding:0;margin:0}.sameSize{padding:0;margin:0;border:1px solid}.mainDiv{display:flex;flex-direction:column;align-items:stretch;width:100%;height:100%;min-height:100%}.snippet-header{display:flex;flex-direction:row;align-items:center;gap:8px;width:100%}.snippet-select{flex:1 1 auto}.editor-full-width{width:100%}\n"], dependencies: [{ kind: "directive", type: i1$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i2$1.MatLabel, selector: "mat-label" }, { kind: "component", type: i4.MatButton, selector: " button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] ", inputs: ["matButton"], exportAs: ["matButton", "matAnchor"] }, { kind: "component", type: i3$2.MatSelect, selector: "mat-select", inputs: ["aria-describedby", "panelClass", "disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator", "placeholder", "required", "multiple", "disableOptionCentering", "compareWith", "value", "aria-label", "aria-labelledby", "errorStateMatcher", "typeaheadDebounceInterval", "sortComparator", "id", "panelWidth", "canSelectNullableOptions"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }, { kind: "component", type: i3$2.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "component", type: i7.CodemirrorComponent, selector: "ngx-codemirror", inputs: ["className", "name", "autoFocus", "options", "preserveScrollPosition"], outputs: ["cursorActivity", "focusChange", "scroll", "drop"] }], encapsulation: i0.ViewEncapsulation.None }); }
1937
+ ], viewQueries: [{ propertyName: "codeMirrorComponent", first: true, predicate: CodemirrorComponent, descendants: true }], ngImport: i0, template: "<div class=\"editor-container mainDiv\">\n <mat-label>{{display}}</mat-label>\n\n @if (snippets?.length) {\n <div class=\"snippet-header\">\n <mat-select [(ngModel)]=\"currentSnippet\" class=\"snippet-select\">\n @for (snippet of snippets; track snippet) {\n <mat-option [value]=\"snippet\">{{snippet.name}}</mat-option>\n }\n </mat-select>\n <button mat-stroked-button color=\"primary\" type=\"button\" (click)=\"insert()\">Insert</button>\n </div>\n }\n\n <ngx-codemirror\n [(ngModel)]=\"value\"\n [options]=\"{lineNumbers: true, theme: 'eclipse', indentWithTabs:true, indentUnit: 4, matchBrackets: true, mode: mode, fixedGutter:false, extraKeys: extraKeys}\"\n class=\"editor-full-width\">\n </ngx-codemirror>\n</div>", styles: [".CodeMirror{resize:both;padding:0;margin:0}.sameSize{padding:0;margin:0;border:1px solid}.mainDiv{display:flex;flex-direction:column;align-items:stretch;width:100%;height:100%;min-height:100%}.snippet-header{display:flex;flex-direction:row;align-items:center;gap:8px;width:100%}.snippet-select{flex:1 1 auto}.editor-full-width{width:100%}\n"], dependencies: [{ kind: "directive", type: MatLabel, selector: "mat-label" }, { kind: "component", type: MatSelect, selector: "mat-select", inputs: ["aria-describedby", "panelClass", "disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator", "placeholder", "required", "multiple", "disableOptionCentering", "compareWith", "value", "aria-label", "aria-labelledby", "errorStateMatcher", "typeaheadDebounceInterval", "sortComparator", "id", "panelWidth", "canSelectNullableOptions"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "component", type: MatButton, selector: " button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] ", inputs: ["matButton"], exportAs: ["matButton", "matAnchor"] }, { kind: "ngmodule", type: CodemirrorModule }, { kind: "component", type: i4.CodemirrorComponent, selector: "ngx-codemirror", inputs: ["className", "name", "autoFocus", "options", "preserveScrollPosition"], outputs: ["cursorActivity", "focusChange", "scroll", "drop"] }], encapsulation: i0.ViewEncapsulation.None }); }
1962
1938
  }
1963
1939
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: CodeEditorComponent, decorators: [{
1964
1940
  type: Component,
@@ -1968,7 +1944,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImpo
1968
1944
  multi: true,
1969
1945
  useExisting: CodeEditorComponent
1970
1946
  }
1971
- ], standalone: false, template: "<div class=\"editor-container mainDiv\">\n <mat-label>{{display}}</mat-label>\n\n @if (snippets?.length) {\n <div class=\"snippet-header\">\n <mat-select [(ngModel)]=\"currentSnippet\" class=\"snippet-select\">\n @for (snippet of snippets; track snippet) {\n <mat-option [value]=\"snippet\">{{snippet.name}}</mat-option>\n }\n </mat-select>\n <button mat-stroked-button color=\"primary\" type=\"button\" (click)=\"insert()\">Insert</button>\n </div>\n }\n\n <ngx-codemirror\n [(ngModel)]=\"value\"\n [options]=\"{lineNumbers: true, theme: 'eclipse', indentWithTabs:true, indentUnit: 4, matchBrackets: true, mode: mode, fixedGutter:false, extraKeys: extraKeys}\"\n class=\"editor-full-width\">\n </ngx-codemirror>\n</div>", styles: [".CodeMirror{resize:both;padding:0;margin:0}.sameSize{padding:0;margin:0;border:1px solid}.mainDiv{display:flex;flex-direction:column;align-items:stretch;width:100%;height:100%;min-height:100%}.snippet-header{display:flex;flex-direction:row;align-items:center;gap:8px;width:100%}.snippet-select{flex:1 1 auto}.editor-full-width{width:100%}\n"] }]
1947
+ ], imports: [MatLabel, MatSelect, FormsModule, MatOption, MatButton, CodemirrorModule], template: "<div class=\"editor-container mainDiv\">\n <mat-label>{{display}}</mat-label>\n\n @if (snippets?.length) {\n <div class=\"snippet-header\">\n <mat-select [(ngModel)]=\"currentSnippet\" class=\"snippet-select\">\n @for (snippet of snippets; track snippet) {\n <mat-option [value]=\"snippet\">{{snippet.name}}</mat-option>\n }\n </mat-select>\n <button mat-stroked-button color=\"primary\" type=\"button\" (click)=\"insert()\">Insert</button>\n </div>\n }\n\n <ngx-codemirror\n [(ngModel)]=\"value\"\n [options]=\"{lineNumbers: true, theme: 'eclipse', indentWithTabs:true, indentUnit: 4, matchBrackets: true, mode: mode, fixedGutter:false, extraKeys: extraKeys}\"\n class=\"editor-full-width\">\n </ngx-codemirror>\n</div>", styles: [".CodeMirror{resize:both;padding:0;margin:0}.sameSize{padding:0;margin:0;border:1px solid}.mainDiv{display:flex;flex-direction:column;align-items:stretch;width:100%;height:100%;min-height:100%}.snippet-header{display:flex;flex-direction:row;align-items:center;gap:8px;width:100%}.snippet-select{flex:1 1 auto}.editor-full-width{width:100%}\n"] }]
1972
1948
  }], ctorParameters: () => [{ type: SnippetsService }, { type: GlowwService }], propDecorators: { _value: [{
1973
1949
  type: Input,
1974
1950
  args: ['value']
@@ -1995,6 +1971,24 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImpo
1995
1971
  args: [CodemirrorComponent]
1996
1972
  }] } });
1997
1973
 
1974
+ class HtmlFormatPipe {
1975
+ constructor(_sanitizer) {
1976
+ this._sanitizer = _sanitizer;
1977
+ }
1978
+ transform(value, ...args) {
1979
+ const newval = value.replace(/(^\s*\w|\.\s\w)/g, m => m.toUpperCase()).replace(/\s\./ig, '').replace(/\s*Nouvelle ligne\s*.\s*/ig, '<br/>').trim();
1980
+ if (!this._sanitizer)
1981
+ return newval;
1982
+ return this._sanitizer.bypassSecurityTrustHtml(newval);
1983
+ }
1984
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: HtmlFormatPipe, deps: [{ token: i1$1.DomSanitizer }], target: i0.ɵɵFactoryTarget.Pipe }); }
1985
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "20.3.18", ngImport: i0, type: HtmlFormatPipe, isStandalone: true, name: "htmlFormat" }); }
1986
+ }
1987
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: HtmlFormatPipe, decorators: [{
1988
+ type: Pipe,
1989
+ args: [{ name: 'htmlFormat' }]
1990
+ }], ctorParameters: () => [{ type: i1$1.DomSanitizer }] });
1991
+
1998
1992
  class SocialNetworkComponent {
1999
1993
  // oAuthAssociations: string[];
2000
1994
  // oAuthProviders: string[];
@@ -2024,11 +2018,11 @@ class SocialNetworkComponent {
2024
2018
  console.log(provider);
2025
2019
  }
2026
2020
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: SocialNetworkComponent, deps: [{ token: AuthenticationService }], target: i0.ɵɵFactoryTarget.Component }); }
2027
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.18", type: SocialNetworkComponent, isStandalone: false, selector: "gloww-social-network", inputs: { oAuthProviders: "oAuthProviders" }, outputs: { callback: "callback" }, ngImport: i0, template: "@if (oAuthProviders) {\n <div class=\"social-network-container\">\n @for (provider of oAuthProviders; track provider) {\n <a (click)=\"execute(provider)\" class=\"provider-link\" [title]=\"provider\">\n <i [ngClass]=\"icons[provider.toString()]\"></i>\n </a>\n }\n </div>\n}", styles: [".social-network-container{display:flex;flex-direction:row;justify-content:center;align-items:center;gap:20px;width:100%;margin:15px 0}.provider-link{cursor:pointer;transition:transform .2s ease-in-out;display:flex;align-items:center;justify-content:center}.provider-link:hover{transform:scale(1.2)}.provider-link i{font-size:24px}\n"], dependencies: [{ kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] }); }
2021
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.18", type: SocialNetworkComponent, isStandalone: true, selector: "gloww-social-network", inputs: { oAuthProviders: "oAuthProviders" }, outputs: { callback: "callback" }, ngImport: i0, template: "@if (oAuthProviders) {\n <div class=\"social-network-container\">\n @for (provider of oAuthProviders; track provider) {\n <a (click)=\"execute(provider)\" class=\"provider-link\" [title]=\"provider\">\n <i [ngClass]=\"icons[provider.toString()]\"></i>\n </a>\n }\n </div>\n}", styles: [".social-network-container{display:flex;flex-direction:row;justify-content:center;align-items:center;gap:20px;width:100%;margin:15px 0}.provider-link{cursor:pointer;transition:transform .2s ease-in-out;display:flex;align-items:center;justify-content:center}.provider-link:hover{transform:scale(1.2)}.provider-link i{font-size:24px}\n"], dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] }); }
2028
2022
  }
2029
2023
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: SocialNetworkComponent, decorators: [{
2030
2024
  type: Component,
2031
- args: [{ selector: 'gloww-social-network', standalone: false, template: "@if (oAuthProviders) {\n <div class=\"social-network-container\">\n @for (provider of oAuthProviders; track provider) {\n <a (click)=\"execute(provider)\" class=\"provider-link\" [title]=\"provider\">\n <i [ngClass]=\"icons[provider.toString()]\"></i>\n </a>\n }\n </div>\n}", styles: [".social-network-container{display:flex;flex-direction:row;justify-content:center;align-items:center;gap:20px;width:100%;margin:15px 0}.provider-link{cursor:pointer;transition:transform .2s ease-in-out;display:flex;align-items:center;justify-content:center}.provider-link:hover{transform:scale(1.2)}.provider-link i{font-size:24px}\n"] }]
2025
+ args: [{ selector: 'gloww-social-network', imports: [NgClass], template: "@if (oAuthProviders) {\n <div class=\"social-network-container\">\n @for (provider of oAuthProviders; track provider) {\n <a (click)=\"execute(provider)\" class=\"provider-link\" [title]=\"provider\">\n <i [ngClass]=\"icons[provider.toString()]\"></i>\n </a>\n }\n </div>\n}", styles: [".social-network-container{display:flex;flex-direction:row;justify-content:center;align-items:center;gap:20px;width:100%;margin:15px 0}.provider-link{cursor:pointer;transition:transform .2s ease-in-out;display:flex;align-items:center;justify-content:center}.provider-link:hover{transform:scale(1.2)}.provider-link i{font-size:24px}\n"] }]
2032
2026
  }], ctorParameters: () => [{ type: AuthenticationService }], propDecorators: { oAuthProviders: [{
2033
2027
  type: Input
2034
2028
  }], callback: [{
@@ -2184,11 +2178,11 @@ class LoginComponent {
2184
2178
  }, error => { });
2185
2179
  }
2186
2180
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: LoginComponent, deps: [{ token: i1$3.UntypedFormBuilder }, { token: i2.ActivatedRoute }, { token: i2.Router }, { token: AuthenticationService }, { token: AuthenticationServiceConfig, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
2187
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.18", type: LoginComponent, isStandalone: false, selector: "gloww-login", ngImport: i0, template: "<div class=\"login-wrapper center-layout\">\n <mat-card appearance=\"outlined\" class=\"login-card\">\n <mat-card-header>\n <mat-card-title>Connexion</mat-card-title>\n </mat-card-header>\n\n @if (state==1) {\n <form class=\"example-form\" [formGroup]=\"loginForm\" (ngSubmit)=\"onConnect()\">\n <mat-card-content class=\"form-grid\">\n @if (error) {\n <span class=\"error-msg full-width\">{{error}}</span>\n }\n @if (showDomain) {\n <mat-form-field class=\"full-width\">\n <mat-label>Domain</mat-label>\n <input matInput formControlName=\"domain\" (change)=\"resetError()\">\n </mat-form-field>\n }\n <mat-form-field class=\"full-width\">\n <mat-label>Username</mat-label>\n <input matInput formControlName=\"username\" (change)=\"resetError()\">\n </mat-form-field>\n <mat-form-field class=\"full-width\">\n <mat-label>Password</mat-label>\n <input matInput formControlName=\"password\" type=\"password\" (change)=\"resetError()\">\n </mat-form-field>\n </mat-card-content>\n <div class=\"action-buttons-row\">\n <button mat-raised-button color=\"primary\" type=\"submit\">Me Connecter</button>\n <button mat-stroked-button color=\"primary\" type=\"button\" (click)=\"state=2; resetError();\">\n Mot de passe oubli\u00E9\n </button>\n </div>\n <div class=\"social-divider\">\n <gloww-social-network (callback)=\"OAuthSignIn($event)\" [oAuthProviders]=\"oAuthProviders\"></gloww-social-network>\n </div>\n </form>\n }\n\n @if (state==2) {\n <form class=\"example-form\" [formGroup]=\"lostPasswordForm\" (ngSubmit)=\"onAskResetPasswordCode()\">\n <mat-card-content class=\"form-grid\">\n @if (error) {\n <span class=\"error-msg full-width\">{{error}}</span>\n }\n </mat-card-content>\n <div class=\"action-buttons-column\">\n <button mat-raised-button color=\"primary\" class=\"btn-block\" type=\"submit\">Demande de r\u00E9initialisation</button>\n <button mat-stroked-button color=\"primary\" class=\"btn-block\" (click)=\"state=3\">J'ai un code</button>\n </div>\n </form>\n }\n\n </mat-card>\n</div>", styles: ["body{background-image:url(https://lh4.googleusercontent.com/-XplyTa1Za-I/VMSgIyAYkHI/AAAAAAAADxM/oL-rD6VP4ts/w1184-h666/Android-Lollipop-wallpapers-Google-Now-Wallpaper-2.png);background-position:center;background-size:cover;background-repeat:no-repeat;min-height:100vh;font-family:Roboto,sans-serif;margin:0}.login-wrapper{height:100vh;display:flex}.center-layout{justify-content:center;align-items:center}.login-card{padding:40px 70px 50px!important;max-width:500px;width:100%}.login-card mat-card-header{text-align:center;display:block;font-weight:700;margin-bottom:20px}.login-card mat-card-header mat-card-title{font-size:30px;margin:0}.form-grid{display:flex;flex-flow:row wrap;justify-content:space-between;align-items:center}.full-width{flex:1 1 100%;width:100%}.error-msg{color:red;font-weight:700;margin-bottom:10px}.action-buttons-row{display:flex;flex-direction:row;justify-content:flex-end;align-items:center;gap:20px;margin-top:20px}.action-buttons-column{display:flex;flex-direction:column;gap:10px;margin-top:20px}.action-buttons-column .btn-block{width:100%}.social-divider{margin-top:20px;padding-top:20px;border-top:1px solid #eee}.SocialNetwork a{margin:10px}.SocialNetwork a i{padding:10px}\n"], dependencies: [{ kind: "directive", type: i1$3.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i4.MatButton, selector: " button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] ", inputs: ["matButton"], exportAs: ["matButton", "matAnchor"] }, { kind: "directive", type: i2$1.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly", "disabledInteractive"], exportAs: ["matInput"] }, { kind: "component", type: i2$1.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i2$1.MatLabel, selector: "mat-label" }, { kind: "component", type: i3$1.MatCard, selector: "mat-card", inputs: ["appearance"], exportAs: ["matCard"] }, { kind: "directive", type: i3$1.MatCardContent, selector: "mat-card-content" }, { kind: "component", type: i3$1.MatCardHeader, selector: "mat-card-header" }, { kind: "directive", type: i3$1.MatCardTitle, selector: "mat-card-title, [mat-card-title], [matCardTitle]" }, { kind: "component", type: SocialNetworkComponent, selector: "gloww-social-network", inputs: ["oAuthProviders"], outputs: ["callback"] }] }); }
2181
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.18", type: LoginComponent, isStandalone: true, selector: "gloww-login", ngImport: i0, template: "<div class=\"login-wrapper center-layout\">\n <mat-card appearance=\"outlined\" class=\"login-card\">\n <mat-card-header>\n <mat-card-title>Connexion</mat-card-title>\n </mat-card-header>\n\n @if (state==1) {\n <form class=\"example-form\" [formGroup]=\"loginForm\" (ngSubmit)=\"onConnect()\">\n <mat-card-content class=\"form-grid\">\n @if (error) {\n <span class=\"error-msg full-width\">{{error}}</span>\n }\n @if (showDomain) {\n <mat-form-field class=\"full-width\">\n <mat-label>Domain</mat-label>\n <input matInput formControlName=\"domain\" (change)=\"resetError()\">\n </mat-form-field>\n }\n <mat-form-field class=\"full-width\">\n <mat-label>Username</mat-label>\n <input matInput formControlName=\"username\" (change)=\"resetError()\">\n </mat-form-field>\n <mat-form-field class=\"full-width\">\n <mat-label>Password</mat-label>\n <input matInput formControlName=\"password\" type=\"password\" (change)=\"resetError()\">\n </mat-form-field>\n </mat-card-content>\n <div class=\"action-buttons-row\">\n <button mat-raised-button color=\"primary\" type=\"submit\">Me Connecter</button>\n <button mat-stroked-button color=\"primary\" type=\"button\" (click)=\"state=2; resetError();\">\n Mot de passe oubli\u00E9\n </button>\n </div>\n <div class=\"social-divider\">\n <gloww-social-network (callback)=\"OAuthSignIn($event)\" [oAuthProviders]=\"oAuthProviders\"></gloww-social-network>\n </div>\n </form>\n }\n\n @if (state==2) {\n <form class=\"example-form\" [formGroup]=\"lostPasswordForm\" (ngSubmit)=\"onAskResetPasswordCode()\">\n <mat-card-content class=\"form-grid\">\n @if (error) {\n <span class=\"error-msg full-width\">{{error}}</span>\n }\n </mat-card-content>\n <div class=\"action-buttons-column\">\n <button mat-raised-button color=\"primary\" class=\"btn-block\" type=\"submit\">Demande de r\u00E9initialisation</button>\n <button mat-stroked-button color=\"primary\" class=\"btn-block\" (click)=\"state=3\">J'ai un code</button>\n </div>\n </form>\n }\n\n </mat-card>\n</div>", styles: ["body{background-image:url(https://lh4.googleusercontent.com/-XplyTa1Za-I/VMSgIyAYkHI/AAAAAAAADxM/oL-rD6VP4ts/w1184-h666/Android-Lollipop-wallpapers-Google-Now-Wallpaper-2.png);background-position:center;background-size:cover;background-repeat:no-repeat;min-height:100vh;font-family:Roboto,sans-serif;margin:0}.login-wrapper{height:100vh;display:flex}.center-layout{justify-content:center;align-items:center}.login-card{padding:40px 70px 50px!important;max-width:500px;width:100%}.login-card mat-card-header{text-align:center;display:block;font-weight:700;margin-bottom:20px}.login-card mat-card-header mat-card-title{font-size:30px;margin:0}.form-grid{display:flex;flex-flow:row wrap;justify-content:space-between;align-items:center}.full-width{flex:1 1 100%;width:100%}.error-msg{color:red;font-weight:700;margin-bottom:10px}.action-buttons-row{display:flex;flex-direction:row;justify-content:flex-end;align-items:center;gap:20px;margin-top:20px}.action-buttons-column{display:flex;flex-direction:column;gap:10px;margin-top:20px}.action-buttons-column .btn-block{width:100%}.social-divider{margin-top:20px;padding-top:20px;border-top:1px solid #eee}.SocialNetwork a{margin:10px}.SocialNetwork a i{padding:10px}\n"], dependencies: [{ kind: "component", type: MatCard, selector: "mat-card", inputs: ["appearance"], exportAs: ["matCard"] }, { kind: "component", type: MatCardHeader, selector: "mat-card-header" }, { kind: "directive", type: MatCardTitle, selector: "mat-card-title, [mat-card-title], [matCardTitle]" }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$3.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: MatCardContent, selector: "mat-card-content" }, { kind: "component", type: MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: MatLabel, selector: "mat-label" }, { kind: "directive", type: MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly", "disabledInteractive"], exportAs: ["matInput"] }, { kind: "component", type: MatButton, selector: " button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] ", inputs: ["matButton"], exportAs: ["matButton", "matAnchor"] }, { kind: "component", type: SocialNetworkComponent, selector: "gloww-social-network", inputs: ["oAuthProviders"], outputs: ["callback"] }] }); }
2188
2182
  }
2189
2183
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: LoginComponent, decorators: [{
2190
2184
  type: Component,
2191
- args: [{ selector: 'gloww-login', standalone: false, template: "<div class=\"login-wrapper center-layout\">\n <mat-card appearance=\"outlined\" class=\"login-card\">\n <mat-card-header>\n <mat-card-title>Connexion</mat-card-title>\n </mat-card-header>\n\n @if (state==1) {\n <form class=\"example-form\" [formGroup]=\"loginForm\" (ngSubmit)=\"onConnect()\">\n <mat-card-content class=\"form-grid\">\n @if (error) {\n <span class=\"error-msg full-width\">{{error}}</span>\n }\n @if (showDomain) {\n <mat-form-field class=\"full-width\">\n <mat-label>Domain</mat-label>\n <input matInput formControlName=\"domain\" (change)=\"resetError()\">\n </mat-form-field>\n }\n <mat-form-field class=\"full-width\">\n <mat-label>Username</mat-label>\n <input matInput formControlName=\"username\" (change)=\"resetError()\">\n </mat-form-field>\n <mat-form-field class=\"full-width\">\n <mat-label>Password</mat-label>\n <input matInput formControlName=\"password\" type=\"password\" (change)=\"resetError()\">\n </mat-form-field>\n </mat-card-content>\n <div class=\"action-buttons-row\">\n <button mat-raised-button color=\"primary\" type=\"submit\">Me Connecter</button>\n <button mat-stroked-button color=\"primary\" type=\"button\" (click)=\"state=2; resetError();\">\n Mot de passe oubli\u00E9\n </button>\n </div>\n <div class=\"social-divider\">\n <gloww-social-network (callback)=\"OAuthSignIn($event)\" [oAuthProviders]=\"oAuthProviders\"></gloww-social-network>\n </div>\n </form>\n }\n\n @if (state==2) {\n <form class=\"example-form\" [formGroup]=\"lostPasswordForm\" (ngSubmit)=\"onAskResetPasswordCode()\">\n <mat-card-content class=\"form-grid\">\n @if (error) {\n <span class=\"error-msg full-width\">{{error}}</span>\n }\n </mat-card-content>\n <div class=\"action-buttons-column\">\n <button mat-raised-button color=\"primary\" class=\"btn-block\" type=\"submit\">Demande de r\u00E9initialisation</button>\n <button mat-stroked-button color=\"primary\" class=\"btn-block\" (click)=\"state=3\">J'ai un code</button>\n </div>\n </form>\n }\n\n </mat-card>\n</div>", styles: ["body{background-image:url(https://lh4.googleusercontent.com/-XplyTa1Za-I/VMSgIyAYkHI/AAAAAAAADxM/oL-rD6VP4ts/w1184-h666/Android-Lollipop-wallpapers-Google-Now-Wallpaper-2.png);background-position:center;background-size:cover;background-repeat:no-repeat;min-height:100vh;font-family:Roboto,sans-serif;margin:0}.login-wrapper{height:100vh;display:flex}.center-layout{justify-content:center;align-items:center}.login-card{padding:40px 70px 50px!important;max-width:500px;width:100%}.login-card mat-card-header{text-align:center;display:block;font-weight:700;margin-bottom:20px}.login-card mat-card-header mat-card-title{font-size:30px;margin:0}.form-grid{display:flex;flex-flow:row wrap;justify-content:space-between;align-items:center}.full-width{flex:1 1 100%;width:100%}.error-msg{color:red;font-weight:700;margin-bottom:10px}.action-buttons-row{display:flex;flex-direction:row;justify-content:flex-end;align-items:center;gap:20px;margin-top:20px}.action-buttons-column{display:flex;flex-direction:column;gap:10px;margin-top:20px}.action-buttons-column .btn-block{width:100%}.social-divider{margin-top:20px;padding-top:20px;border-top:1px solid #eee}.SocialNetwork a{margin:10px}.SocialNetwork a i{padding:10px}\n"] }]
2185
+ args: [{ selector: 'gloww-login', imports: [MatCard, MatCardHeader, MatCardTitle, FormsModule, ReactiveFormsModule, MatCardContent, MatFormField, MatLabel, MatInput, MatButton, SocialNetworkComponent], template: "<div class=\"login-wrapper center-layout\">\n <mat-card appearance=\"outlined\" class=\"login-card\">\n <mat-card-header>\n <mat-card-title>Connexion</mat-card-title>\n </mat-card-header>\n\n @if (state==1) {\n <form class=\"example-form\" [formGroup]=\"loginForm\" (ngSubmit)=\"onConnect()\">\n <mat-card-content class=\"form-grid\">\n @if (error) {\n <span class=\"error-msg full-width\">{{error}}</span>\n }\n @if (showDomain) {\n <mat-form-field class=\"full-width\">\n <mat-label>Domain</mat-label>\n <input matInput formControlName=\"domain\" (change)=\"resetError()\">\n </mat-form-field>\n }\n <mat-form-field class=\"full-width\">\n <mat-label>Username</mat-label>\n <input matInput formControlName=\"username\" (change)=\"resetError()\">\n </mat-form-field>\n <mat-form-field class=\"full-width\">\n <mat-label>Password</mat-label>\n <input matInput formControlName=\"password\" type=\"password\" (change)=\"resetError()\">\n </mat-form-field>\n </mat-card-content>\n <div class=\"action-buttons-row\">\n <button mat-raised-button color=\"primary\" type=\"submit\">Me Connecter</button>\n <button mat-stroked-button color=\"primary\" type=\"button\" (click)=\"state=2; resetError();\">\n Mot de passe oubli\u00E9\n </button>\n </div>\n <div class=\"social-divider\">\n <gloww-social-network (callback)=\"OAuthSignIn($event)\" [oAuthProviders]=\"oAuthProviders\"></gloww-social-network>\n </div>\n </form>\n }\n\n @if (state==2) {\n <form class=\"example-form\" [formGroup]=\"lostPasswordForm\" (ngSubmit)=\"onAskResetPasswordCode()\">\n <mat-card-content class=\"form-grid\">\n @if (error) {\n <span class=\"error-msg full-width\">{{error}}</span>\n }\n </mat-card-content>\n <div class=\"action-buttons-column\">\n <button mat-raised-button color=\"primary\" class=\"btn-block\" type=\"submit\">Demande de r\u00E9initialisation</button>\n <button mat-stroked-button color=\"primary\" class=\"btn-block\" (click)=\"state=3\">J'ai un code</button>\n </div>\n </form>\n }\n\n </mat-card>\n</div>", styles: ["body{background-image:url(https://lh4.googleusercontent.com/-XplyTa1Za-I/VMSgIyAYkHI/AAAAAAAADxM/oL-rD6VP4ts/w1184-h666/Android-Lollipop-wallpapers-Google-Now-Wallpaper-2.png);background-position:center;background-size:cover;background-repeat:no-repeat;min-height:100vh;font-family:Roboto,sans-serif;margin:0}.login-wrapper{height:100vh;display:flex}.center-layout{justify-content:center;align-items:center}.login-card{padding:40px 70px 50px!important;max-width:500px;width:100%}.login-card mat-card-header{text-align:center;display:block;font-weight:700;margin-bottom:20px}.login-card mat-card-header mat-card-title{font-size:30px;margin:0}.form-grid{display:flex;flex-flow:row wrap;justify-content:space-between;align-items:center}.full-width{flex:1 1 100%;width:100%}.error-msg{color:red;font-weight:700;margin-bottom:10px}.action-buttons-row{display:flex;flex-direction:row;justify-content:flex-end;align-items:center;gap:20px;margin-top:20px}.action-buttons-column{display:flex;flex-direction:column;gap:10px;margin-top:20px}.action-buttons-column .btn-block{width:100%}.social-divider{margin-top:20px;padding-top:20px;border-top:1px solid #eee}.SocialNetwork a{margin:10px}.SocialNetwork a i{padding:10px}\n"] }]
2192
2186
  }], ctorParameters: () => [{ type: i1$3.UntypedFormBuilder }, { type: i2.ActivatedRoute }, { type: i2.Router }, { type: AuthenticationService }, { type: AuthenticationServiceConfig, decorators: [{
2193
2187
  type: Optional
2194
2188
  }] }] });
@@ -2295,11 +2289,11 @@ class ChangePasswordDlgComponent {
2295
2289
  this.dialogRef.close();
2296
2290
  }
2297
2291
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: ChangePasswordDlgComponent, deps: [{ token: i1$3.UntypedFormBuilder }, { token: i1$2.MatDialogRef }, { token: AuthenticationService }], target: i0.ɵɵFactoryTarget.Component }); }
2298
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.18", type: ChangePasswordDlgComponent, isStandalone: false, selector: "gloww-change-password-dlg", ngImport: i0, template: "<h2 mat-dialog-title>Change Password</h2>\n\n<form class=\"password-form\" [formGroup]=\"form\" (ngSubmit)=\"onSubmit()\">\n <mat-dialog-content>\n <div class=\"form-container\">\n @if (error) {\n <div class=\"error-msg full-width\">\n {{error}}\n </div>\n }\n\n <mat-form-field class=\"full-width\" appearance=\"outline\">\n <mat-label>Old Password</mat-label>\n <input matInput formControlName=\"oldpassword\" type=\"password\" (change)=\"resetError()\">\n </mat-form-field>\n\n <mat-form-field class=\"full-width\" appearance=\"outline\">\n <mat-label>New Password</mat-label>\n <input matInput formControlName=\"newpassword\" type=\"password\" (change)=\"resetError()\">\n </mat-form-field>\n\n <mat-form-field class=\"full-width\" appearance=\"outline\">\n <mat-label>Confirmation</mat-label>\n <input matInput formControlName=\"confirmationpassword\" type=\"password\" (change)=\"resetError()\">\n </mat-form-field>\n </div>\n </mat-dialog-content>\n\n <mat-dialog-actions align=\"end\">\n <button mat-button (click)=\"cancel()\">Cancel</button>\n <button mat-raised-button color=\"primary\" type=\"submit\" [disabled]=\"form.invalid\">\n Change Password\n </button>\n </mat-dialog-actions>\n</form>", styles: [".form-container{display:flex;flex-direction:column;align-items:stretch;gap:8px;padding-top:10px}.full-width{width:100%;flex:1 1 100%}.error-msg{color:red;font-weight:700;margin-bottom:10px;font-size:.9em}mat-dialog-actions{gap:12px;padding:16px 0!important}@media(max-width:600px){.btn-block{width:100%;margin:5px 0}}\n"], dependencies: [{ kind: "directive", type: i1$3.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i4.MatButton, selector: " button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] ", inputs: ["matButton"], exportAs: ["matButton", "matAnchor"] }, { kind: "directive", type: i2$1.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly", "disabledInteractive"], exportAs: ["matInput"] }, { kind: "component", type: i2$1.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i2$1.MatLabel, selector: "mat-label" }, { kind: "directive", type: i1$2.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: i1$2.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "directive", type: i1$2.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }] }); }
2292
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.18", type: ChangePasswordDlgComponent, isStandalone: true, selector: "gloww-change-password-dlg", ngImport: i0, template: "<h2 mat-dialog-title>Change Password</h2>\n\n<form class=\"password-form\" [formGroup]=\"form\" (ngSubmit)=\"onSubmit()\">\n <mat-dialog-content>\n <div class=\"form-container\">\n @if (error) {\n <div class=\"error-msg full-width\">\n {{error}}\n </div>\n }\n\n <mat-form-field class=\"full-width\" appearance=\"outline\">\n <mat-label>Old Password</mat-label>\n <input matInput formControlName=\"oldpassword\" type=\"password\" (change)=\"resetError()\">\n </mat-form-field>\n\n <mat-form-field class=\"full-width\" appearance=\"outline\">\n <mat-label>New Password</mat-label>\n <input matInput formControlName=\"newpassword\" type=\"password\" (change)=\"resetError()\">\n </mat-form-field>\n\n <mat-form-field class=\"full-width\" appearance=\"outline\">\n <mat-label>Confirmation</mat-label>\n <input matInput formControlName=\"confirmationpassword\" type=\"password\" (change)=\"resetError()\">\n </mat-form-field>\n </div>\n </mat-dialog-content>\n\n <mat-dialog-actions align=\"end\">\n <button mat-button (click)=\"cancel()\">Cancel</button>\n <button mat-raised-button color=\"primary\" type=\"submit\" [disabled]=\"form.invalid\">\n Change Password\n </button>\n </mat-dialog-actions>\n</form>", styles: [".form-container{display:flex;flex-direction:column;align-items:stretch;gap:8px;padding-top:10px}.full-width{width:100%;flex:1 1 100%}.error-msg{color:red;font-weight:700;margin-bottom:10px;font-size:.9em}mat-dialog-actions{gap:12px;padding:16px 0!important}@media(max-width:600px){.btn-block{width:100%;margin:5px 0}}\n"], dependencies: [{ kind: "directive", type: MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$3.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "component", type: MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: MatLabel, selector: "mat-label" }, { kind: "directive", type: MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly", "disabledInteractive"], exportAs: ["matInput"] }, { kind: "directive", type: MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "component", type: MatButton, selector: " button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] ", inputs: ["matButton"], exportAs: ["matButton", "matAnchor"] }] }); }
2299
2293
  }
2300
2294
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: ChangePasswordDlgComponent, decorators: [{
2301
2295
  type: Component,
2302
- args: [{ selector: 'gloww-change-password-dlg', standalone: false, template: "<h2 mat-dialog-title>Change Password</h2>\n\n<form class=\"password-form\" [formGroup]=\"form\" (ngSubmit)=\"onSubmit()\">\n <mat-dialog-content>\n <div class=\"form-container\">\n @if (error) {\n <div class=\"error-msg full-width\">\n {{error}}\n </div>\n }\n\n <mat-form-field class=\"full-width\" appearance=\"outline\">\n <mat-label>Old Password</mat-label>\n <input matInput formControlName=\"oldpassword\" type=\"password\" (change)=\"resetError()\">\n </mat-form-field>\n\n <mat-form-field class=\"full-width\" appearance=\"outline\">\n <mat-label>New Password</mat-label>\n <input matInput formControlName=\"newpassword\" type=\"password\" (change)=\"resetError()\">\n </mat-form-field>\n\n <mat-form-field class=\"full-width\" appearance=\"outline\">\n <mat-label>Confirmation</mat-label>\n <input matInput formControlName=\"confirmationpassword\" type=\"password\" (change)=\"resetError()\">\n </mat-form-field>\n </div>\n </mat-dialog-content>\n\n <mat-dialog-actions align=\"end\">\n <button mat-button (click)=\"cancel()\">Cancel</button>\n <button mat-raised-button color=\"primary\" type=\"submit\" [disabled]=\"form.invalid\">\n Change Password\n </button>\n </mat-dialog-actions>\n</form>", styles: [".form-container{display:flex;flex-direction:column;align-items:stretch;gap:8px;padding-top:10px}.full-width{width:100%;flex:1 1 100%}.error-msg{color:red;font-weight:700;margin-bottom:10px;font-size:.9em}mat-dialog-actions{gap:12px;padding:16px 0!important}@media(max-width:600px){.btn-block{width:100%;margin:5px 0}}\n"] }]
2296
+ args: [{ selector: 'gloww-change-password-dlg', imports: [MatDialogTitle, FormsModule, ReactiveFormsModule, CdkScrollable, MatDialogContent, MatFormField, MatLabel, MatInput, MatDialogActions, MatButton], template: "<h2 mat-dialog-title>Change Password</h2>\n\n<form class=\"password-form\" [formGroup]=\"form\" (ngSubmit)=\"onSubmit()\">\n <mat-dialog-content>\n <div class=\"form-container\">\n @if (error) {\n <div class=\"error-msg full-width\">\n {{error}}\n </div>\n }\n\n <mat-form-field class=\"full-width\" appearance=\"outline\">\n <mat-label>Old Password</mat-label>\n <input matInput formControlName=\"oldpassword\" type=\"password\" (change)=\"resetError()\">\n </mat-form-field>\n\n <mat-form-field class=\"full-width\" appearance=\"outline\">\n <mat-label>New Password</mat-label>\n <input matInput formControlName=\"newpassword\" type=\"password\" (change)=\"resetError()\">\n </mat-form-field>\n\n <mat-form-field class=\"full-width\" appearance=\"outline\">\n <mat-label>Confirmation</mat-label>\n <input matInput formControlName=\"confirmationpassword\" type=\"password\" (change)=\"resetError()\">\n </mat-form-field>\n </div>\n </mat-dialog-content>\n\n <mat-dialog-actions align=\"end\">\n <button mat-button (click)=\"cancel()\">Cancel</button>\n <button mat-raised-button color=\"primary\" type=\"submit\" [disabled]=\"form.invalid\">\n Change Password\n </button>\n </mat-dialog-actions>\n</form>", styles: [".form-container{display:flex;flex-direction:column;align-items:stretch;gap:8px;padding-top:10px}.full-width{width:100%;flex:1 1 100%}.error-msg{color:red;font-weight:700;margin-bottom:10px;font-size:.9em}mat-dialog-actions{gap:12px;padding:16px 0!important}@media(max-width:600px){.btn-block{width:100%;margin:5px 0}}\n"] }]
2303
2297
  }], ctorParameters: () => [{ type: i1$3.UntypedFormBuilder }, { type: i1$2.MatDialogRef }, { type: AuthenticationService }] });
2304
2298
 
2305
2299
  class SocialNetworkDlgComponent {
@@ -2338,11 +2332,11 @@ class SocialNetworkDlgComponent {
2338
2332
  });
2339
2333
  }
2340
2334
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: SocialNetworkDlgComponent, deps: [{ token: i1$2.MatDialogRef }, { token: AuthenticationService }, { token: i1$2.MatDialog }, { token: AuthenticationServiceConfig, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
2341
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.18", type: SocialNetworkDlgComponent, isStandalone: false, selector: "gloww-social-network-dlg", ngImport: i0, template: "<h2 mat-dialog-title>Gestion des identifications par r\u00E9seaux sociaux</h2>\r\n<mat-dialog-content>\r\n <h3>Associations \u00E9tablies</h3>\r\n <p>Choisissez l'association que vous souhaitez supprimer</p>\r\n <gloww-social-network (callback)=\"OAuthDeleteAssociation($event)\" [oAuthProviders]=\"oAuthAssociations\"></gloww-social-network>\r\n <h3>Nouvelle association</h3>\r\n <p>Choisissez le provider</p>\r\n <gloww-social-network (callback)=\"OAuthAddAssociation($event)\" [oAuthProviders]=\"oAuthProviders\"></gloww-social-network>\r\n</mat-dialog-content>\r\n<mat-dialog-actions>\r\n <button mat-stroked-button color=\"accent\" class=\"btn-block\" (click)=\"OK() \">OK</button>\r\n</mat-dialog-actions>", styles: [".dummy{color:red}\n"], dependencies: [{ kind: "component", type: i4.MatButton, selector: " button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] ", inputs: ["matButton"], exportAs: ["matButton", "matAnchor"] }, { kind: "directive", type: i1$2.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: i1$2.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "directive", type: i1$2.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "component", type: SocialNetworkComponent, selector: "gloww-social-network", inputs: ["oAuthProviders"], outputs: ["callback"] }] }); }
2335
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.18", type: SocialNetworkDlgComponent, isStandalone: true, selector: "gloww-social-network-dlg", ngImport: i0, template: "<h2 mat-dialog-title>Gestion des identifications par r\u00E9seaux sociaux</h2>\r\n<mat-dialog-content>\r\n <h3>Associations \u00E9tablies</h3>\r\n <p>Choisissez l'association que vous souhaitez supprimer</p>\r\n <gloww-social-network (callback)=\"OAuthDeleteAssociation($event)\" [oAuthProviders]=\"oAuthAssociations\"></gloww-social-network>\r\n <h3>Nouvelle association</h3>\r\n <p>Choisissez le provider</p>\r\n <gloww-social-network (callback)=\"OAuthAddAssociation($event)\" [oAuthProviders]=\"oAuthProviders\"></gloww-social-network>\r\n</mat-dialog-content>\r\n<mat-dialog-actions>\r\n <button mat-stroked-button color=\"accent\" class=\"btn-block\" (click)=\"OK() \">OK</button>\r\n</mat-dialog-actions>", styles: [".dummy{color:red}\n"], dependencies: [{ kind: "directive", type: MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "component", type: SocialNetworkComponent, selector: "gloww-social-network", inputs: ["oAuthProviders"], outputs: ["callback"] }, { kind: "directive", type: MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "component", type: MatButton, selector: " button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] ", inputs: ["matButton"], exportAs: ["matButton", "matAnchor"] }] }); }
2342
2336
  }
2343
2337
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: SocialNetworkDlgComponent, decorators: [{
2344
2338
  type: Component,
2345
- args: [{ selector: 'gloww-social-network-dlg', standalone: false, template: "<h2 mat-dialog-title>Gestion des identifications par r\u00E9seaux sociaux</h2>\r\n<mat-dialog-content>\r\n <h3>Associations \u00E9tablies</h3>\r\n <p>Choisissez l'association que vous souhaitez supprimer</p>\r\n <gloww-social-network (callback)=\"OAuthDeleteAssociation($event)\" [oAuthProviders]=\"oAuthAssociations\"></gloww-social-network>\r\n <h3>Nouvelle association</h3>\r\n <p>Choisissez le provider</p>\r\n <gloww-social-network (callback)=\"OAuthAddAssociation($event)\" [oAuthProviders]=\"oAuthProviders\"></gloww-social-network>\r\n</mat-dialog-content>\r\n<mat-dialog-actions>\r\n <button mat-stroked-button color=\"accent\" class=\"btn-block\" (click)=\"OK() \">OK</button>\r\n</mat-dialog-actions>", styles: [".dummy{color:red}\n"] }]
2339
+ args: [{ selector: 'gloww-social-network-dlg', imports: [MatDialogTitle, CdkScrollable, MatDialogContent, SocialNetworkComponent, MatDialogActions, MatButton], template: "<h2 mat-dialog-title>Gestion des identifications par r\u00E9seaux sociaux</h2>\r\n<mat-dialog-content>\r\n <h3>Associations \u00E9tablies</h3>\r\n <p>Choisissez l'association que vous souhaitez supprimer</p>\r\n <gloww-social-network (callback)=\"OAuthDeleteAssociation($event)\" [oAuthProviders]=\"oAuthAssociations\"></gloww-social-network>\r\n <h3>Nouvelle association</h3>\r\n <p>Choisissez le provider</p>\r\n <gloww-social-network (callback)=\"OAuthAddAssociation($event)\" [oAuthProviders]=\"oAuthProviders\"></gloww-social-network>\r\n</mat-dialog-content>\r\n<mat-dialog-actions>\r\n <button mat-stroked-button color=\"accent\" class=\"btn-block\" (click)=\"OK() \">OK</button>\r\n</mat-dialog-actions>", styles: [".dummy{color:red}\n"] }]
2346
2340
  }], ctorParameters: () => [{ type: i1$2.MatDialogRef }, { type: AuthenticationService }, { type: i1$2.MatDialog }, { type: AuthenticationServiceConfig, decorators: [{
2347
2341
  type: Optional
2348
2342
  }] }] });
@@ -2397,11 +2391,11 @@ class UserMenuComponent {
2397
2391
  });
2398
2392
  }
2399
2393
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: UserMenuComponent, deps: [{ token: AuthenticationService }, { token: i1$2.MatDialog }, { token: i2.Router }], target: i0.ɵɵFactoryTarget.Component }); }
2400
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.18", type: UserMenuComponent, isStandalone: false, selector: "gloww-user-menu", inputs: { size: "size", imageUser: "imageUser", loginpage: "loginpage" }, ngImport: i0, template: "@if (connected) {\n <div>\n <span (click)=\"toggleMenuUser()\">\n @if (imageUser) {\n <img [src]=\"imageUser\" style=\"height:40px;float:left; padding-left:20px\" />\n }\n @if (!imageUser) {\n <i [ngClass]=\"'fal fa-user '+size\" style=\"float:left; padding-left:10px\">\n <!--[size]=\"size\"-->\n </i>\n }\n </span>\n @if (showMenuUser) {\n <div class=\"menuUser\">\n <ul class=\"menuSec\" style=\"border: solid lightgrey;\">\n <li (click)=\"ChangePassword()\">\n <i class=\"fal fa-key-skeleton\"></i>Change Password\n </li>\n @if (oAuthProviders && oAuthProviders.length) {\n <li (click)=\"Configuration()\">\n <i class=\"fal fa-tools\"></i>Configuration\n </li>\n }\n <li (click)=\"Logout()\">\n <i class=\"fal fa-sign-out\"></i>D\u00E9connexion\n </li>\n </ul>\n </div>\n }\n </div>\n}\n@if (!connected && loginpage) {\n <div>\n <span style=\"height:40px;float:left; padding-left:20px\" [routerLink]=\"loginpage\">Connexion</span>\n </div>\n}\n", styles: [".menuUser{position:relative}.menuUser ul{text-align:left;position:absolute;top:30px;left:-115px;width:150px;padding:10px;z-index:20;background-color:#fff;font-size:13px;color:#000}.menuUser ul li{height:30px;list-style-type:none}.menuUser ul li i{padding-right:10px;height:30px}ul.menuSec li{cursor:pointer}\n"], dependencies: [{ kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }] }); }
2394
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.18", type: UserMenuComponent, isStandalone: true, selector: "gloww-user-menu", inputs: { size: "size", imageUser: "imageUser", loginpage: "loginpage" }, ngImport: i0, template: "@if (connected) {\n <div>\n <span (click)=\"toggleMenuUser()\">\n @if (imageUser) {\n <img [src]=\"imageUser\" style=\"height:40px;float:left; padding-left:20px\" />\n }\n @if (!imageUser) {\n <i [ngClass]=\"'fal fa-user '+size\" style=\"float:left; padding-left:10px\">\n <!--[size]=\"size\"-->\n </i>\n }\n </span>\n @if (showMenuUser) {\n <div class=\"menuUser\">\n <ul class=\"menuSec\" style=\"border: solid lightgrey;\">\n <li (click)=\"ChangePassword()\">\n <i class=\"fal fa-key-skeleton\"></i>Change Password\n </li>\n @if (oAuthProviders && oAuthProviders.length) {\n <li (click)=\"Configuration()\">\n <i class=\"fal fa-tools\"></i>Configuration\n </li>\n }\n <li (click)=\"Logout()\">\n <i class=\"fal fa-sign-out\"></i>D\u00E9connexion\n </li>\n </ul>\n </div>\n }\n </div>\n}\n@if (!connected && loginpage) {\n <div>\n <span style=\"height:40px;float:left; padding-left:20px\" [routerLink]=\"loginpage\">Connexion</span>\n </div>\n}\n", styles: [".menuUser{position:relative}.menuUser ul{text-align:left;position:absolute;top:30px;left:-115px;width:150px;padding:10px;z-index:20;background-color:#fff;font-size:13px;color:#000}.menuUser ul li{height:30px;list-style-type:none}.menuUser ul li i{padding-right:10px;height:30px}ul.menuSec li{cursor:pointer}\n"], dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }] }); }
2401
2395
  }
2402
2396
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: UserMenuComponent, decorators: [{
2403
2397
  type: Component,
2404
- args: [{ selector: 'gloww-user-menu', standalone: false, template: "@if (connected) {\n <div>\n <span (click)=\"toggleMenuUser()\">\n @if (imageUser) {\n <img [src]=\"imageUser\" style=\"height:40px;float:left; padding-left:20px\" />\n }\n @if (!imageUser) {\n <i [ngClass]=\"'fal fa-user '+size\" style=\"float:left; padding-left:10px\">\n <!--[size]=\"size\"-->\n </i>\n }\n </span>\n @if (showMenuUser) {\n <div class=\"menuUser\">\n <ul class=\"menuSec\" style=\"border: solid lightgrey;\">\n <li (click)=\"ChangePassword()\">\n <i class=\"fal fa-key-skeleton\"></i>Change Password\n </li>\n @if (oAuthProviders && oAuthProviders.length) {\n <li (click)=\"Configuration()\">\n <i class=\"fal fa-tools\"></i>Configuration\n </li>\n }\n <li (click)=\"Logout()\">\n <i class=\"fal fa-sign-out\"></i>D\u00E9connexion\n </li>\n </ul>\n </div>\n }\n </div>\n}\n@if (!connected && loginpage) {\n <div>\n <span style=\"height:40px;float:left; padding-left:20px\" [routerLink]=\"loginpage\">Connexion</span>\n </div>\n}\n", styles: [".menuUser{position:relative}.menuUser ul{text-align:left;position:absolute;top:30px;left:-115px;width:150px;padding:10px;z-index:20;background-color:#fff;font-size:13px;color:#000}.menuUser ul li{height:30px;list-style-type:none}.menuUser ul li i{padding-right:10px;height:30px}ul.menuSec li{cursor:pointer}\n"] }]
2398
+ args: [{ selector: 'gloww-user-menu', imports: [NgClass, RouterLink], template: "@if (connected) {\n <div>\n <span (click)=\"toggleMenuUser()\">\n @if (imageUser) {\n <img [src]=\"imageUser\" style=\"height:40px;float:left; padding-left:20px\" />\n }\n @if (!imageUser) {\n <i [ngClass]=\"'fal fa-user '+size\" style=\"float:left; padding-left:10px\">\n <!--[size]=\"size\"-->\n </i>\n }\n </span>\n @if (showMenuUser) {\n <div class=\"menuUser\">\n <ul class=\"menuSec\" style=\"border: solid lightgrey;\">\n <li (click)=\"ChangePassword()\">\n <i class=\"fal fa-key-skeleton\"></i>Change Password\n </li>\n @if (oAuthProviders && oAuthProviders.length) {\n <li (click)=\"Configuration()\">\n <i class=\"fal fa-tools\"></i>Configuration\n </li>\n }\n <li (click)=\"Logout()\">\n <i class=\"fal fa-sign-out\"></i>D\u00E9connexion\n </li>\n </ul>\n </div>\n }\n </div>\n}\n@if (!connected && loginpage) {\n <div>\n <span style=\"height:40px;float:left; padding-left:20px\" [routerLink]=\"loginpage\">Connexion</span>\n </div>\n}\n", styles: [".menuUser{position:relative}.menuUser ul{text-align:left;position:absolute;top:30px;left:-115px;width:150px;padding:10px;z-index:20;background-color:#fff;font-size:13px;color:#000}.menuUser ul li{height:30px;list-style-type:none}.menuUser ul li i{padding-right:10px;height:30px}ul.menuSec li{cursor:pointer}\n"] }]
2405
2399
  }], ctorParameters: () => [{ type: AuthenticationService }, { type: i1$2.MatDialog }, { type: i2.Router }], propDecorators: { size: [{
2406
2400
  type: Input
2407
2401
  }], imageUser: [{
@@ -2575,11 +2569,7 @@ class GlowwSecurityModule {
2575
2569
  };
2576
2570
  }
2577
2571
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: GlowwSecurityModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
2578
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.18", ngImport: i0, type: GlowwSecurityModule, declarations: [LoginComponent,
2579
- ChangePasswordDlgComponent,
2580
- UserMenuComponent,
2581
- SocialNetworkDlgComponent,
2582
- SocialNetworkComponent], imports: [CommonModule,
2572
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.18", ngImport: i0, type: GlowwSecurityModule, imports: [CommonModule,
2583
2573
  FormsModule,
2584
2574
  ReactiveFormsModule,
2585
2575
  BrowserModule,
@@ -2591,7 +2581,11 @@ class GlowwSecurityModule {
2591
2581
  MatFormFieldModule,
2592
2582
  MatCardModule,
2593
2583
  MatDialogModule,
2594
- RouterModule], exports: [LoginComponent, RouterModule, UserMenuComponent] }); }
2584
+ RouterModule, LoginComponent,
2585
+ ChangePasswordDlgComponent,
2586
+ UserMenuComponent,
2587
+ SocialNetworkDlgComponent,
2588
+ SocialNetworkComponent], exports: [LoginComponent, RouterModule, UserMenuComponent] }); }
2595
2589
  static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: GlowwSecurityModule, providers: [provideHttpClient(withInterceptorsFromDi())], imports: [CommonModule,
2596
2590
  FormsModule,
2597
2591
  ReactiveFormsModule,
@@ -2604,17 +2598,13 @@ class GlowwSecurityModule {
2604
2598
  MatFormFieldModule,
2605
2599
  MatCardModule,
2606
2600
  MatDialogModule,
2607
- RouterModule, RouterModule] }); }
2601
+ RouterModule, LoginComponent,
2602
+ ChangePasswordDlgComponent,
2603
+ SocialNetworkDlgComponent, RouterModule] }); }
2608
2604
  }
2609
2605
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: GlowwSecurityModule, decorators: [{
2610
2606
  type: NgModule,
2611
- args: [{ declarations: [
2612
- LoginComponent,
2613
- ChangePasswordDlgComponent,
2614
- UserMenuComponent,
2615
- SocialNetworkDlgComponent,
2616
- SocialNetworkComponent
2617
- ],
2607
+ args: [{
2618
2608
  exports: [LoginComponent, RouterModule, UserMenuComponent], imports: [CommonModule,
2619
2609
  FormsModule,
2620
2610
  ReactiveFormsModule,
@@ -2627,29 +2617,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImpo
2627
2617
  MatFormFieldModule,
2628
2618
  MatCardModule,
2629
2619
  MatDialogModule,
2630
- RouterModule], providers: [provideHttpClient(withInterceptorsFromDi())] }]
2631
- }] });
2632
-
2633
- class HtmlFormatPipe {
2634
- constructor(_sanitizer) {
2635
- this._sanitizer = _sanitizer;
2636
- }
2637
- transform(value, ...args) {
2638
- const newval = value.replace(/(^\s*\w|\.\s\w)/g, m => m.toUpperCase()).replace(/\s\./ig, '').replace(/\s*Nouvelle ligne\s*.\s*/ig, '<br/>').trim();
2639
- if (!this._sanitizer)
2640
- return newval;
2641
- return this._sanitizer.bypassSecurityTrustHtml(newval);
2642
- }
2643
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: HtmlFormatPipe, deps: [{ token: i1$1.DomSanitizer }], target: i0.ɵɵFactoryTarget.Pipe }); }
2644
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "20.3.18", ngImport: i0, type: HtmlFormatPipe, isStandalone: false, name: "htmlFormat" }); }
2645
- }
2646
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: HtmlFormatPipe, decorators: [{
2647
- type: Pipe,
2648
- args: [{
2649
- name: 'htmlFormat',
2650
- standalone: false
2620
+ RouterModule, LoginComponent,
2621
+ ChangePasswordDlgComponent,
2622
+ UserMenuComponent,
2623
+ SocialNetworkDlgComponent,
2624
+ SocialNetworkComponent], providers: [provideHttpClient(withInterceptorsFromDi())]
2651
2625
  }]
2652
- }], ctorParameters: () => [{ type: i1$1.DomSanitizer }] });
2626
+ }] });
2653
2627
 
2654
2628
  class HtmlEditorComponent {
2655
2629
  cancel() {
@@ -2789,13 +2763,13 @@ class HtmlEditorComponent {
2789
2763
  return currentUser.IsAdministrator === 1 || currentUser.isAdministrator === 1;
2790
2764
  }
2791
2765
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: HtmlEditorComponent, deps: [{ token: i1$1.DomSanitizer }, { token: AuthenticationService }, { token: VoiceRecognitionService }, { token: i1$2.MatDialog }], target: i0.ɵɵFactoryTarget.Component }); }
2792
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.18", type: HtmlEditorComponent, isStandalone: false, selector: "gloww-html-editor", inputs: { placeHolder: "placeHolder", _value: ["value", "_value"] }, providers: [
2766
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.18", type: HtmlEditorComponent, isStandalone: true, selector: "gloww-html-editor", inputs: { placeHolder: "placeHolder", _value: ["value", "_value"] }, providers: [
2793
2767
  {
2794
2768
  provide: NG_VALUE_ACCESSOR,
2795
2769
  multi: true,
2796
2770
  useExisting: HtmlEditorComponent
2797
2771
  }
2798
- ], viewQueries: [{ propertyName: "voiceRecognitionTemplate", first: true, predicate: ["voiceRecognitionDlg"], descendants: true }], ngImport: i0, template: "<div>\r\n <angular-editor [(ngModel)]=\"value\" [config]=\"editorConfig\" [placeholder]=\"placeHolder\"></angular-editor>\r\n</div>\r\n<ng-template #voiceRecognitionDlg>\r\n <mat-dialog-content>\r\n <div>La reconnaissance vocale est activ\u00E9e. Veuillez dicter le texte \u00E0 ins\u00E9rer.</div>\r\n <div [innerHTML]=\"voiceRecognitionService.text | htmlFormat\" style=\"width:500px;height:300px;border:1px solid; border-color: blue;\"></div>\r\n </mat-dialog-content>\r\n\r\n <mat-dialog-actions>\r\n <button class=\"mat-raised-button\" (click)=\"cancel()\">Close</button>\r\n <button class=\"mat-raised-button mat-primary\" (click)=\"paste()\">Paste</button>\r\n </mat-dialog-actions>\r\n</ng-template>\r\n", styles: [""], dependencies: [{ kind: "directive", type: i1$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i1$2.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "directive", type: i1$2.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "component", type: i6.AngularEditorComponent, selector: "angular-editor", inputs: ["id", "config", "placeholder", "tabIndex"], outputs: ["html", "viewMode", "blur", "focus"] }, { kind: "pipe", type: HtmlFormatPipe, name: "htmlFormat" }] }); }
2772
+ ], viewQueries: [{ propertyName: "voiceRecognitionTemplate", first: true, predicate: ["voiceRecognitionDlg"], descendants: true }], ngImport: i0, template: "<div>\r\n <angular-editor [(ngModel)]=\"value\" [config]=\"editorConfig\" [placeholder]=\"placeHolder\"></angular-editor>\r\n</div>\r\n<ng-template #voiceRecognitionDlg>\r\n <mat-dialog-content>\r\n <div>La reconnaissance vocale est activ\u00E9e. Veuillez dicter le texte \u00E0 ins\u00E9rer.</div>\r\n <div [innerHTML]=\"voiceRecognitionService.text | htmlFormat\" style=\"width:500px;height:300px;border:1px solid; border-color: blue;\"></div>\r\n </mat-dialog-content>\r\n\r\n <mat-dialog-actions>\r\n <button class=\"mat-raised-button\" (click)=\"cancel()\">Close</button>\r\n <button class=\"mat-raised-button mat-primary\" (click)=\"paste()\">Paste</button>\r\n </mat-dialog-actions>\r\n</ng-template>\r\n", styles: [""], dependencies: [{ kind: "ngmodule", type: AngularEditorModule }, { kind: "component", type: i5.AngularEditorComponent, selector: "angular-editor", inputs: ["id", "config", "placeholder", "tabIndex"], outputs: ["html", "viewMode", "blur", "focus"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "directive", type: MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "pipe", type: HtmlFormatPipe, name: "htmlFormat" }] }); }
2799
2773
  }
2800
2774
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: HtmlEditorComponent, decorators: [{
2801
2775
  type: Component,
@@ -2805,7 +2779,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImpo
2805
2779
  multi: true,
2806
2780
  useExisting: HtmlEditorComponent
2807
2781
  }
2808
- ], standalone: false, template: "<div>\r\n <angular-editor [(ngModel)]=\"value\" [config]=\"editorConfig\" [placeholder]=\"placeHolder\"></angular-editor>\r\n</div>\r\n<ng-template #voiceRecognitionDlg>\r\n <mat-dialog-content>\r\n <div>La reconnaissance vocale est activ\u00E9e. Veuillez dicter le texte \u00E0 ins\u00E9rer.</div>\r\n <div [innerHTML]=\"voiceRecognitionService.text | htmlFormat\" style=\"width:500px;height:300px;border:1px solid; border-color: blue;\"></div>\r\n </mat-dialog-content>\r\n\r\n <mat-dialog-actions>\r\n <button class=\"mat-raised-button\" (click)=\"cancel()\">Close</button>\r\n <button class=\"mat-raised-button mat-primary\" (click)=\"paste()\">Paste</button>\r\n </mat-dialog-actions>\r\n</ng-template>\r\n" }]
2782
+ ], imports: [AngularEditorModule, FormsModule, CdkScrollable, MatDialogContent, MatDialogActions, HtmlFormatPipe], template: "<div>\r\n <angular-editor [(ngModel)]=\"value\" [config]=\"editorConfig\" [placeholder]=\"placeHolder\"></angular-editor>\r\n</div>\r\n<ng-template #voiceRecognitionDlg>\r\n <mat-dialog-content>\r\n <div>La reconnaissance vocale est activ\u00E9e. Veuillez dicter le texte \u00E0 ins\u00E9rer.</div>\r\n <div [innerHTML]=\"voiceRecognitionService.text | htmlFormat\" style=\"width:500px;height:300px;border:1px solid; border-color: blue;\"></div>\r\n </mat-dialog-content>\r\n\r\n <mat-dialog-actions>\r\n <button class=\"mat-raised-button\" (click)=\"cancel()\">Close</button>\r\n <button class=\"mat-raised-button mat-primary\" (click)=\"paste()\">Paste</button>\r\n </mat-dialog-actions>\r\n</ng-template>\r\n" }]
2809
2783
  }], ctorParameters: () => [{ type: i1$1.DomSanitizer }, { type: AuthenticationService }, { type: VoiceRecognitionService }, { type: i1$2.MatDialog }], propDecorators: { voiceRecognitionTemplate: [{
2810
2784
  type: ViewChild,
2811
2785
  args: ['voiceRecognitionDlg']
@@ -2882,11 +2856,11 @@ class FileEditComponent {
2882
2856
  }
2883
2857
  }
2884
2858
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: FileEditComponent, deps: [{ token: i1$3.UntypedFormBuilder }, { token: i1$2.MatDialogRef }, { token: MAT_DIALOG_DATA }], target: i0.ɵɵFactoryTarget.Component }); }
2885
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.18", type: FileEditComponent, isStandalone: false, selector: "gloww-file-edit", viewQueries: [{ propertyName: "codeMirrorComponent", first: true, predicate: CodemirrorComponent, descendants: true }], ngImport: i0, template: "<div cdkDrag cdkDragRootElement=\".cdk-overlay-pane\" class=\"dlg\">\r\n <h2 mat-dialog-title cdkDragHandle>Ajout/Edition d'un fichier</h2>\r\n \r\n <mat-dialog-content [formGroup]=\"form\" class=\"dialog-form-content\">\r\n <div class=\"column-layout fill-container\">\r\n <mat-form-field appearance=\"outline\" class=\"width-100\">\r\n <mat-label>Path</mat-label>\r\n <input matInput [readonly]=\"true\" placeholder=\"Path\" formControlName=\"path\">\r\n </mat-form-field>\r\n\r\n <div class=\"editor-flex-grow\">\r\n <gloww-code-editor [mode]=\"getMode()\" formControlName=\"content\"></gloww-code-editor>\r\n </div>\r\n </div>\r\n </mat-dialog-content>\r\n\r\n <mat-dialog-actions align=\"end\">\r\n <button mat-raised-button (click)=\"cancel()\">Close</button>\r\n <button mat-raised-button color=\"primary\" (click)=\"save()\">Save</button>\r\n </mat-dialog-actions>\r\n</div>", styles: [".cm-tab{background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAMCAYAAAAkuj5RAAAAAXNSR0IArs4c6QAAAGFJREFUSMft1LsRQFAQheHPowAKoACx3IgEKtaEHujDjORSgWTH/ZOdnZOcM/sgk/kFFWY0qV8foQwS4MKBCS3qR6ixBJvElOobYAtivseIE120FaowJPN75GMu8j/LfMwNjh4HUpwg4LUAAAAASUVORK5CYII=);background-position:right;background-repeat:no-repeat}.xxCodeMirror{height:100%}.dialog-form-content{display:flex;flex-direction:column;overflow:hidden}.column-layout{display:flex;flex-direction:column;align-items:stretch}.fill-container{width:100%;height:100%;min-height:100%}.width-100{width:100%}.editor-flex-grow{flex:1 1 auto;display:flex;flex-direction:column;min-height:0}.editor-flex-grow gloww-code-editor{height:100%;width:100%}\n"], dependencies: [{ kind: "directive", type: i1$3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i1$2.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: i1$2.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "directive", type: i1$2.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "directive", type: i2$1.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly", "disabledInteractive"], exportAs: ["matInput"] }, { kind: "component", type: i2$1.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i2$1.MatLabel, selector: "mat-label" }, { kind: "component", type: i4.MatButton, selector: " button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] ", inputs: ["matButton"], exportAs: ["matButton", "matAnchor"] }, { kind: "directive", type: i5.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer", "cdkDragScale"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "directive", type: i5.CdkDragHandle, selector: "[cdkDragHandle]", inputs: ["cdkDragHandleDisabled"] }, { kind: "component", type: CodeEditorComponent, selector: "gloww-code-editor", inputs: ["value", "display", "mode", "formatter", "formatterOptions", "snippets", "snippetsPath"] }], encapsulation: i0.ViewEncapsulation.None }); }
2859
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.18", type: FileEditComponent, isStandalone: true, selector: "gloww-file-edit", viewQueries: [{ propertyName: "codeMirrorComponent", first: true, predicate: CodemirrorComponent, descendants: true }], ngImport: i0, template: "<div cdkDrag cdkDragRootElement=\".cdk-overlay-pane\" class=\"dlg\">\r\n <h2 mat-dialog-title cdkDragHandle>Ajout/Edition d'un fichier</h2>\r\n \r\n <mat-dialog-content [formGroup]=\"form\" class=\"dialog-form-content\">\r\n <div class=\"column-layout fill-container\">\r\n <mat-form-field appearance=\"outline\" class=\"width-100\">\r\n <mat-label>Path</mat-label>\r\n <input matInput [readonly]=\"true\" placeholder=\"Path\" formControlName=\"path\">\r\n </mat-form-field>\r\n\r\n <div class=\"editor-flex-grow\">\r\n <gloww-code-editor [mode]=\"getMode()\" formControlName=\"content\"></gloww-code-editor>\r\n </div>\r\n </div>\r\n </mat-dialog-content>\r\n\r\n <mat-dialog-actions align=\"end\">\r\n <button mat-raised-button (click)=\"cancel()\">Close</button>\r\n <button mat-raised-button color=\"primary\" (click)=\"save()\">Save</button>\r\n </mat-dialog-actions>\r\n</div>", styles: [".cm-tab{background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAMCAYAAAAkuj5RAAAAAXNSR0IArs4c6QAAAGFJREFUSMft1LsRQFAQheHPowAKoACx3IgEKtaEHujDjORSgWTH/ZOdnZOcM/sgk/kFFWY0qV8foQwS4MKBCS3qR6ixBJvElOobYAtivseIE120FaowJPN75GMu8j/LfMwNjh4HUpwg4LUAAAAASUVORK5CYII=);background-position:right;background-repeat:no-repeat}.xxCodeMirror{height:100%}.dialog-form-content{display:flex;flex-direction:column;overflow:hidden}.column-layout{display:flex;flex-direction:column;align-items:stretch}.fill-container{width:100%;height:100%;min-height:100%}.width-100{width:100%}.editor-flex-grow{flex:1 1 auto;display:flex;flex-direction:column;min-height:0}.editor-flex-grow gloww-code-editor{height:100%;width:100%}\n"], dependencies: [{ kind: "directive", type: CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer", "cdkDragScale"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "directive", type: MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: CdkDragHandle, selector: "[cdkDragHandle]", inputs: ["cdkDragHandleDisabled"] }, { kind: "directive", type: MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: MatLabel, selector: "mat-label" }, { kind: "directive", type: MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly", "disabledInteractive"], exportAs: ["matInput"] }, { kind: "component", type: CodeEditorComponent, selector: "gloww-code-editor", inputs: ["value", "display", "mode", "formatter", "formatterOptions", "snippets", "snippetsPath"] }, { kind: "directive", type: MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "component", type: MatButton, selector: " button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] ", inputs: ["matButton"], exportAs: ["matButton", "matAnchor"] }], encapsulation: i0.ViewEncapsulation.None }); }
2886
2860
  }
2887
2861
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: FileEditComponent, decorators: [{
2888
2862
  type: Component,
2889
- args: [{ selector: 'gloww-file-edit', encapsulation: ViewEncapsulation.None, standalone: false, template: "<div cdkDrag cdkDragRootElement=\".cdk-overlay-pane\" class=\"dlg\">\r\n <h2 mat-dialog-title cdkDragHandle>Ajout/Edition d'un fichier</h2>\r\n \r\n <mat-dialog-content [formGroup]=\"form\" class=\"dialog-form-content\">\r\n <div class=\"column-layout fill-container\">\r\n <mat-form-field appearance=\"outline\" class=\"width-100\">\r\n <mat-label>Path</mat-label>\r\n <input matInput [readonly]=\"true\" placeholder=\"Path\" formControlName=\"path\">\r\n </mat-form-field>\r\n\r\n <div class=\"editor-flex-grow\">\r\n <gloww-code-editor [mode]=\"getMode()\" formControlName=\"content\"></gloww-code-editor>\r\n </div>\r\n </div>\r\n </mat-dialog-content>\r\n\r\n <mat-dialog-actions align=\"end\">\r\n <button mat-raised-button (click)=\"cancel()\">Close</button>\r\n <button mat-raised-button color=\"primary\" (click)=\"save()\">Save</button>\r\n </mat-dialog-actions>\r\n</div>", styles: [".cm-tab{background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAMCAYAAAAkuj5RAAAAAXNSR0IArs4c6QAAAGFJREFUSMft1LsRQFAQheHPowAKoACx3IgEKtaEHujDjORSgWTH/ZOdnZOcM/sgk/kFFWY0qV8foQwS4MKBCS3qR6ixBJvElOobYAtivseIE120FaowJPN75GMu8j/LfMwNjh4HUpwg4LUAAAAASUVORK5CYII=);background-position:right;background-repeat:no-repeat}.xxCodeMirror{height:100%}.dialog-form-content{display:flex;flex-direction:column;overflow:hidden}.column-layout{display:flex;flex-direction:column;align-items:stretch}.fill-container{width:100%;height:100%;min-height:100%}.width-100{width:100%}.editor-flex-grow{flex:1 1 auto;display:flex;flex-direction:column;min-height:0}.editor-flex-grow gloww-code-editor{height:100%;width:100%}\n"] }]
2863
+ args: [{ selector: 'gloww-file-edit', encapsulation: ViewEncapsulation.None, imports: [CdkDrag, MatDialogTitle, CdkDragHandle, CdkScrollable, MatDialogContent, FormsModule, ReactiveFormsModule, MatFormField, MatLabel, MatInput, CodeEditorComponent, MatDialogActions, MatButton], template: "<div cdkDrag cdkDragRootElement=\".cdk-overlay-pane\" class=\"dlg\">\r\n <h2 mat-dialog-title cdkDragHandle>Ajout/Edition d'un fichier</h2>\r\n \r\n <mat-dialog-content [formGroup]=\"form\" class=\"dialog-form-content\">\r\n <div class=\"column-layout fill-container\">\r\n <mat-form-field appearance=\"outline\" class=\"width-100\">\r\n <mat-label>Path</mat-label>\r\n <input matInput [readonly]=\"true\" placeholder=\"Path\" formControlName=\"path\">\r\n </mat-form-field>\r\n\r\n <div class=\"editor-flex-grow\">\r\n <gloww-code-editor [mode]=\"getMode()\" formControlName=\"content\"></gloww-code-editor>\r\n </div>\r\n </div>\r\n </mat-dialog-content>\r\n\r\n <mat-dialog-actions align=\"end\">\r\n <button mat-raised-button (click)=\"cancel()\">Close</button>\r\n <button mat-raised-button color=\"primary\" (click)=\"save()\">Save</button>\r\n </mat-dialog-actions>\r\n</div>", styles: [".cm-tab{background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAMCAYAAAAkuj5RAAAAAXNSR0IArs4c6QAAAGFJREFUSMft1LsRQFAQheHPowAKoACx3IgEKtaEHujDjORSgWTH/ZOdnZOcM/sgk/kFFWY0qV8foQwS4MKBCS3qR6ixBJvElOobYAtivseIE120FaowJPN75GMu8j/LfMwNjh4HUpwg4LUAAAAASUVORK5CYII=);background-position:right;background-repeat:no-repeat}.xxCodeMirror{height:100%}.dialog-form-content{display:flex;flex-direction:column;overflow:hidden}.column-layout{display:flex;flex-direction:column;align-items:stretch}.fill-container{width:100%;height:100%;min-height:100%}.width-100{width:100%}.editor-flex-grow{flex:1 1 auto;display:flex;flex-direction:column;min-height:0}.editor-flex-grow gloww-code-editor{height:100%;width:100%}\n"] }]
2890
2864
  }], ctorParameters: () => [{ type: i1$3.UntypedFormBuilder }, { type: i1$2.MatDialogRef }, { type: undefined, decorators: [{
2891
2865
  type: Inject,
2892
2866
  args: [MAT_DIALOG_DATA]
@@ -3130,11 +3104,11 @@ class FoldersComponent {
3130
3104
  }
3131
3105
  }
3132
3106
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: FoldersComponent, deps: [{ token: FolderService }, { token: i2.Router }, { token: i2.ActivatedRoute }, { token: i1$2.MatDialog }], target: i0.ɵɵFactoryTarget.Component }); }
3133
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.18", type: FoldersComponent, isStandalone: false, selector: "gloww-folders", ngImport: i0, template: "<h1>\n <i class=\"fal fa-folder\" size=\"40px\"></i> /{{currentDir}}\n @if (currentDir) {\n <i class=\"fal fa-level-up\" [routerLink]=\"getRouterLink()\"></i>\n }\n</h1>\n@if (directoryContent) {\n <div>\n <i class=\"fal fa-folder-plus\" (click)=\"addFolder()\" size=\"30px\"></i>\n <ul>\n @for (d of directoryContent.directories; track d) {\n <li>\n <i class=\"fal fa-folder\"></i><a [routerLink]=\"getRouterLink(d)\">{{d}}</a>\n </li>\n }\n </ul>\n <i class=\"fal fa-file-plus\" (click)=\"addFile()\" size=\"30px\"></i>\n <i class=\"fal fa-file-upload\" (click)=\"addFileUpload()\" size=\"30px\"></i>\n <ul>\n @for (f of directoryContent.files; track f) {\n <li>\n @if (isEditable(f)) {\n <a (click)=\"Edit(f)\" href=\"javascript:void(0);\">\n <i class=\"fal fa-file\"></i> {{f}}\n </a>\n } @else {\n <i class=\"fal fa-file fa-disabled\"></i> <a (click)=\"downloadFile(f)\" target=\"_blank\" href=\"javascript:void(0);\">{{f}}</a>\n }\n </li>\n }\n </ul>\n </div>\n} @else {\n <mat-spinner></mat-spinner>\n}\n", styles: ["ul{list-style:none}.fa-disabled{opacity:.6;cursor:not-allowed}i{margin:5px;height:20px}\n"], dependencies: [{ kind: "directive", type: i2.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "component", type: i10.MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "mode", "value", "diameter", "strokeWidth"], exportAs: ["matProgressSpinner"] }] }); }
3107
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.18", type: FoldersComponent, isStandalone: true, selector: "gloww-folders", ngImport: i0, template: "<h1>\n <i class=\"fal fa-folder\" size=\"40px\"></i> /{{currentDir}}\n @if (currentDir) {\n <i class=\"fal fa-level-up\" [routerLink]=\"getRouterLink()\"></i>\n }\n</h1>\n@if (directoryContent) {\n <div>\n <i class=\"fal fa-folder-plus\" (click)=\"addFolder()\" size=\"30px\"></i>\n <ul>\n @for (d of directoryContent.directories; track d) {\n <li>\n <i class=\"fal fa-folder\"></i><a [routerLink]=\"getRouterLink(d)\">{{d}}</a>\n </li>\n }\n </ul>\n <i class=\"fal fa-file-plus\" (click)=\"addFile()\" size=\"30px\"></i>\n <i class=\"fal fa-file-upload\" (click)=\"addFileUpload()\" size=\"30px\"></i>\n <ul>\n @for (f of directoryContent.files; track f) {\n <li>\n @if (isEditable(f)) {\n <a (click)=\"Edit(f)\" href=\"javascript:void(0);\">\n <i class=\"fal fa-file\"></i> {{f}}\n </a>\n } @else {\n <i class=\"fal fa-file fa-disabled\"></i> <a (click)=\"downloadFile(f)\" target=\"_blank\" href=\"javascript:void(0);\">{{f}}</a>\n }\n </li>\n }\n </ul>\n </div>\n} @else {\n <mat-spinner></mat-spinner>\n}\n", styles: ["ul{list-style:none}.fa-disabled{opacity:.6;cursor:not-allowed}i{margin:5px;height:20px}\n"], dependencies: [{ kind: "directive", type: RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "component", type: MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "mode", "value", "diameter", "strokeWidth"], exportAs: ["matProgressSpinner"] }] }); }
3134
3108
  }
3135
3109
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: FoldersComponent, decorators: [{
3136
3110
  type: Component,
3137
- args: [{ selector: 'gloww-folders', standalone: false, template: "<h1>\n <i class=\"fal fa-folder\" size=\"40px\"></i> /{{currentDir}}\n @if (currentDir) {\n <i class=\"fal fa-level-up\" [routerLink]=\"getRouterLink()\"></i>\n }\n</h1>\n@if (directoryContent) {\n <div>\n <i class=\"fal fa-folder-plus\" (click)=\"addFolder()\" size=\"30px\"></i>\n <ul>\n @for (d of directoryContent.directories; track d) {\n <li>\n <i class=\"fal fa-folder\"></i><a [routerLink]=\"getRouterLink(d)\">{{d}}</a>\n </li>\n }\n </ul>\n <i class=\"fal fa-file-plus\" (click)=\"addFile()\" size=\"30px\"></i>\n <i class=\"fal fa-file-upload\" (click)=\"addFileUpload()\" size=\"30px\"></i>\n <ul>\n @for (f of directoryContent.files; track f) {\n <li>\n @if (isEditable(f)) {\n <a (click)=\"Edit(f)\" href=\"javascript:void(0);\">\n <i class=\"fal fa-file\"></i> {{f}}\n </a>\n } @else {\n <i class=\"fal fa-file fa-disabled\"></i> <a (click)=\"downloadFile(f)\" target=\"_blank\" href=\"javascript:void(0);\">{{f}}</a>\n }\n </li>\n }\n </ul>\n </div>\n} @else {\n <mat-spinner></mat-spinner>\n}\n", styles: ["ul{list-style:none}.fa-disabled{opacity:.6;cursor:not-allowed}i{margin:5px;height:20px}\n"] }]
3111
+ args: [{ selector: 'gloww-folders', imports: [RouterLink, MatProgressSpinner], template: "<h1>\n <i class=\"fal fa-folder\" size=\"40px\"></i> /{{currentDir}}\n @if (currentDir) {\n <i class=\"fal fa-level-up\" [routerLink]=\"getRouterLink()\"></i>\n }\n</h1>\n@if (directoryContent) {\n <div>\n <i class=\"fal fa-folder-plus\" (click)=\"addFolder()\" size=\"30px\"></i>\n <ul>\n @for (d of directoryContent.directories; track d) {\n <li>\n <i class=\"fal fa-folder\"></i><a [routerLink]=\"getRouterLink(d)\">{{d}}</a>\n </li>\n }\n </ul>\n <i class=\"fal fa-file-plus\" (click)=\"addFile()\" size=\"30px\"></i>\n <i class=\"fal fa-file-upload\" (click)=\"addFileUpload()\" size=\"30px\"></i>\n <ul>\n @for (f of directoryContent.files; track f) {\n <li>\n @if (isEditable(f)) {\n <a (click)=\"Edit(f)\" href=\"javascript:void(0);\">\n <i class=\"fal fa-file\"></i> {{f}}\n </a>\n } @else {\n <i class=\"fal fa-file fa-disabled\"></i> <a (click)=\"downloadFile(f)\" target=\"_blank\" href=\"javascript:void(0);\">{{f}}</a>\n }\n </li>\n }\n </ul>\n </div>\n} @else {\n <mat-spinner></mat-spinner>\n}\n", styles: ["ul{list-style:none}.fa-disabled{opacity:.6;cursor:not-allowed}i{margin:5px;height:20px}\n"] }]
3138
3112
  }], ctorParameters: () => [{ type: FolderService }, { type: i2.Router }, { type: i2.ActivatedRoute }, { type: i1$2.MatDialog }] });
3139
3113
 
3140
3114
  class DownloadProgressComponent {
@@ -3239,11 +3213,11 @@ class DownloadProgressComponent {
3239
3213
  this.dialogRef.close();
3240
3214
  }
3241
3215
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: DownloadProgressComponent, deps: [{ token: i1$2.MatDialogRef }, { token: MAT_DIALOG_DATA }, { token: i1.HttpClient }], target: i0.ɵɵFactoryTarget.Component }); }
3242
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.18", type: DownloadProgressComponent, isStandalone: false, selector: "gloww-download-progress", ngImport: i0, template: "<h2 mat-dialog-title>Progression Download</h2>\n\n<mat-dialog-content>\n <H3>{{message}}</H3>\n @if (percent>0) {\n <mat-progress-bar [value]=\"percent\"></mat-progress-bar>\n }\n @if (done>=0) {\n <div>\n <mat-progress-bar [value]=\"done*100/files.length\"></mat-progress-bar> {{done}}/{{files.length}}\n <br />\n <ul>\n @for ( file of current; track file; let i = $index) {\n <li>\n <span id=\"file-label\">{{file.url}}</span>\n <mat-progress-bar [value]=\"file.loaded*100/file.total\"></mat-progress-bar>\n </li>\n }\n </ul>\n </div>\n }\n</mat-dialog-content>\n\n\n<mat-dialog-actions>\n <!--<button class=\"mat-raised-button\" (click)=\"cancel()\">Close</button>\n <button class=\"mat-raised-button mat-primary\" (click)=\"save()\">Save</button>-->\n</mat-dialog-actions>", styles: [""], dependencies: [{ kind: "directive", type: i1$2.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: i1$2.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "directive", type: i1$2.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "component", type: i4$1.MatProgressBar, selector: "mat-progress-bar", inputs: ["color", "value", "bufferValue", "mode"], outputs: ["animationEnd"], exportAs: ["matProgressBar"] }] }); }
3216
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.18", type: DownloadProgressComponent, isStandalone: true, selector: "gloww-download-progress", ngImport: i0, template: "<h2 mat-dialog-title>Progression Download</h2>\n\n<mat-dialog-content>\n <H3>{{message}}</H3>\n @if (percent>0) {\n <mat-progress-bar [value]=\"percent\"></mat-progress-bar>\n }\n @if (done>=0) {\n <div>\n <mat-progress-bar [value]=\"done*100/files.length\"></mat-progress-bar> {{done}}/{{files.length}}\n <br />\n <ul>\n @for ( file of current; track file; let i = $index) {\n <li>\n <span id=\"file-label\">{{file.url}}</span>\n <mat-progress-bar [value]=\"file.loaded*100/file.total\"></mat-progress-bar>\n </li>\n }\n </ul>\n </div>\n }\n</mat-dialog-content>\n\n\n<mat-dialog-actions>\n <!--<button class=\"mat-raised-button\" (click)=\"cancel()\">Close</button>\n <button class=\"mat-raised-button mat-primary\" (click)=\"save()\">Save</button>-->\n</mat-dialog-actions>", styles: [""], dependencies: [{ kind: "directive", type: MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "component", type: MatProgressBar, selector: "mat-progress-bar", inputs: ["color", "value", "bufferValue", "mode"], outputs: ["animationEnd"], exportAs: ["matProgressBar"] }, { kind: "directive", type: MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }] }); }
3243
3217
  }
3244
3218
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: DownloadProgressComponent, decorators: [{
3245
3219
  type: Component,
3246
- args: [{ selector: 'gloww-download-progress', standalone: false, template: "<h2 mat-dialog-title>Progression Download</h2>\n\n<mat-dialog-content>\n <H3>{{message}}</H3>\n @if (percent>0) {\n <mat-progress-bar [value]=\"percent\"></mat-progress-bar>\n }\n @if (done>=0) {\n <div>\n <mat-progress-bar [value]=\"done*100/files.length\"></mat-progress-bar> {{done}}/{{files.length}}\n <br />\n <ul>\n @for ( file of current; track file; let i = $index) {\n <li>\n <span id=\"file-label\">{{file.url}}</span>\n <mat-progress-bar [value]=\"file.loaded*100/file.total\"></mat-progress-bar>\n </li>\n }\n </ul>\n </div>\n }\n</mat-dialog-content>\n\n\n<mat-dialog-actions>\n <!--<button class=\"mat-raised-button\" (click)=\"cancel()\">Close</button>\n <button class=\"mat-raised-button mat-primary\" (click)=\"save()\">Save</button>-->\n</mat-dialog-actions>" }]
3220
+ args: [{ selector: 'gloww-download-progress', imports: [MatDialogTitle, CdkScrollable, MatDialogContent, MatProgressBar, MatDialogActions], template: "<h2 mat-dialog-title>Progression Download</h2>\n\n<mat-dialog-content>\n <H3>{{message}}</H3>\n @if (percent>0) {\n <mat-progress-bar [value]=\"percent\"></mat-progress-bar>\n }\n @if (done>=0) {\n <div>\n <mat-progress-bar [value]=\"done*100/files.length\"></mat-progress-bar> {{done}}/{{files.length}}\n <br />\n <ul>\n @for ( file of current; track file; let i = $index) {\n <li>\n <span id=\"file-label\">{{file.url}}</span>\n <mat-progress-bar [value]=\"file.loaded*100/file.total\"></mat-progress-bar>\n </li>\n }\n </ul>\n </div>\n }\n</mat-dialog-content>\n\n\n<mat-dialog-actions>\n <!--<button class=\"mat-raised-button\" (click)=\"cancel()\">Close</button>\n <button class=\"mat-raised-button mat-primary\" (click)=\"save()\">Save</button>-->\n</mat-dialog-actions>" }]
3247
3221
  }], ctorParameters: () => [{ type: i1$2.MatDialogRef }, { type: undefined, decorators: [{
3248
3222
  type: Inject,
3249
3223
  args: [MAT_DIALOG_DATA]
@@ -3264,11 +3238,11 @@ class SecureAComponent {
3264
3238
  this.dialog.open(DownloadProgressComponent, dialogConfig).afterClosed().subscribe();
3265
3239
  }
3266
3240
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: SecureAComponent, deps: [{ token: i1$2.MatDialog }], target: i0.ɵɵFactoryTarget.Component }); }
3267
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.18", type: SecureAComponent, isStandalone: false, selector: "gloww-secure-a", inputs: { href: "href", name: "name" }, ngImport: i0, template: "<a (click)=\"click()\" href=\"javascript:void(0);\">\r\n <ng-content></ng-content>\r\n</a>", styles: [""] }); }
3241
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.18", type: SecureAComponent, isStandalone: true, selector: "gloww-secure-a", inputs: { href: "href", name: "name" }, ngImport: i0, template: "<a (click)=\"click()\" href=\"javascript:void(0);\">\r\n <ng-content></ng-content>\r\n</a>", styles: [""] }); }
3268
3242
  }
3269
3243
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: SecureAComponent, decorators: [{
3270
3244
  type: Component,
3271
- args: [{ selector: 'gloww-secure-a', standalone: false, template: "<a (click)=\"click()\" href=\"javascript:void(0);\">\r\n <ng-content></ng-content>\r\n</a>" }]
3245
+ args: [{ selector: 'gloww-secure-a', template: "<a (click)=\"click()\" href=\"javascript:void(0);\">\r\n <ng-content></ng-content>\r\n</a>" }]
3272
3246
  }], ctorParameters: () => [{ type: i1$2.MatDialog }], propDecorators: { href: [{
3273
3247
  type: Input
3274
3248
  }], name: [{
@@ -3280,11 +3254,11 @@ class DummyComponent {
3280
3254
  ngOnInit() {
3281
3255
  }
3282
3256
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: DummyComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
3283
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.18", type: DummyComponent, isStandalone: false, selector: "gloww-dummy", ngImport: i0, template: "<p>dummy works!</p>\r\n", styles: [""] }); }
3257
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.18", type: DummyComponent, isStandalone: true, selector: "gloww-dummy", ngImport: i0, template: "<p>dummy works!</p>\r\n", styles: [""] }); }
3284
3258
  }
3285
3259
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: DummyComponent, decorators: [{
3286
3260
  type: Component,
3287
- args: [{ selector: 'gloww-dummy', standalone: false, template: "<p>dummy works!</p>\r\n" }]
3261
+ args: [{ selector: 'gloww-dummy', template: "<p>dummy works!</p>\r\n" }]
3288
3262
  }], ctorParameters: () => [] });
3289
3263
 
3290
3264
  class SelectComponent {
@@ -3361,13 +3335,13 @@ class SelectComponent {
3361
3335
  }
3362
3336
  }
3363
3337
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: SelectComponent, deps: [{ token: 'glowwService' }, { token: i1$3.UntypedFormBuilder }], target: i0.ɵɵFactoryTarget.Component }); }
3364
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.18", type: SelectComponent, isStandalone: false, selector: "gloww-select", inputs: { _value: ["value", "_value"], objectName: "objectName", returnField: "returnField", displayField: "displayField", displayFct: "displayFct", placeHolder: "placeHolder", data: "data", compareField: "compareField", compareWith: "compareWith", searchRequest: "searchRequest" }, providers: [
3338
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.18", type: SelectComponent, isStandalone: true, selector: "gloww-select", inputs: { _value: ["value", "_value"], objectName: "objectName", returnField: "returnField", displayField: "displayField", displayFct: "displayFct", placeHolder: "placeHolder", data: "data", compareField: "compareField", compareWith: "compareWith", searchRequest: "searchRequest" }, providers: [
3365
3339
  {
3366
3340
  provide: NG_VALUE_ACCESSOR,
3367
3341
  multi: true,
3368
3342
  useExisting: SelectComponent
3369
3343
  }
3370
- ], ngImport: i0, template: "<form [formGroup]=\"form\">\n @if (error) {\n <div style=\"color:red\">{{error}}</div>\n }\n <mat-form-field>\n <mat-select [placeholder]=\"placeHolder\" formControlName=\"select\" [compareWith]=\"compareWith\">\n @for (item of items; track item) {\n <mat-option [value]=\"item\">{{displayObj(item)}}</mat-option>\n }\n </mat-select>\n </mat-form-field>\n</form>", styles: [""], dependencies: [{ kind: "directive", type: i1$3.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i2$1.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "component", type: i3$2.MatSelect, selector: "mat-select", inputs: ["aria-describedby", "panelClass", "disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator", "placeholder", "required", "multiple", "disableOptionCentering", "compareWith", "value", "aria-label", "aria-labelledby", "errorStateMatcher", "typeaheadDebounceInterval", "sortComparator", "id", "panelWidth", "canSelectNullableOptions"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }, { kind: "component", type: i3$2.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }] }); }
3344
+ ], ngImport: i0, template: "<form [formGroup]=\"form\">\n @if (error) {\n <div style=\"color:red\">{{error}}</div>\n }\n <mat-form-field>\n <mat-select [placeholder]=\"placeHolder\" formControlName=\"select\" [compareWith]=\"compareWith\">\n @for (item of items; track item) {\n <mat-option [value]=\"item\">{{displayObj(item)}}</mat-option>\n }\n </mat-select>\n </mat-form-field>\n</form>", styles: [""], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$3.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "component", type: MatSelect, selector: "mat-select", inputs: ["aria-describedby", "panelClass", "disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator", "placeholder", "required", "multiple", "disableOptionCentering", "compareWith", "value", "aria-label", "aria-labelledby", "errorStateMatcher", "typeaheadDebounceInterval", "sortComparator", "id", "panelWidth", "canSelectNullableOptions"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }, { kind: "component", type: MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }] }); }
3371
3345
  }
3372
3346
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: SelectComponent, decorators: [{
3373
3347
  type: Component,
@@ -3377,7 +3351,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImpo
3377
3351
  multi: true,
3378
3352
  useExisting: SelectComponent
3379
3353
  }
3380
- ], standalone: false, template: "<form [formGroup]=\"form\">\n @if (error) {\n <div style=\"color:red\">{{error}}</div>\n }\n <mat-form-field>\n <mat-select [placeholder]=\"placeHolder\" formControlName=\"select\" [compareWith]=\"compareWith\">\n @for (item of items; track item) {\n <mat-option [value]=\"item\">{{displayObj(item)}}</mat-option>\n }\n </mat-select>\n </mat-form-field>\n</form>" }]
3354
+ ], imports: [FormsModule, ReactiveFormsModule, MatFormField, MatSelect, MatOption], template: "<form [formGroup]=\"form\">\n @if (error) {\n <div style=\"color:red\">{{error}}</div>\n }\n <mat-form-field>\n <mat-select [placeholder]=\"placeHolder\" formControlName=\"select\" [compareWith]=\"compareWith\">\n @for (item of items; track item) {\n <mat-option [value]=\"item\">{{displayObj(item)}}</mat-option>\n }\n </mat-select>\n </mat-form-field>\n</form>" }]
3381
3355
  }], ctorParameters: () => [{ type: undefined, decorators: [{
3382
3356
  type: Inject,
3383
3357
  args: ['glowwService']
@@ -3499,13 +3473,13 @@ class AutoCompleteComponent {
3499
3473
  }
3500
3474
  }
3501
3475
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: AutoCompleteComponent, deps: [{ token: 'glowwService' }, { token: i1$3.UntypedFormBuilder }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
3502
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.18", type: AutoCompleteComponent, isStandalone: false, selector: "gloww-auto-complete", inputs: { _value: ["value", "_value"], objectName: "objectName", searchField: "searchField", returnField: "returnField", displayField: "displayField", displayExpr: "displayExpr", displayFct: "displayFct", placeHolder: "placeHolder", data: "data", searchRequest: "searchRequest" }, providers: [
3476
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.18", type: AutoCompleteComponent, isStandalone: true, selector: "gloww-auto-complete", inputs: { _value: ["value", "_value"], objectName: "objectName", searchField: "searchField", returnField: "returnField", displayField: "displayField", displayExpr: "displayExpr", displayFct: "displayFct", placeHolder: "placeHolder", data: "data", searchRequest: "searchRequest" }, providers: [
3503
3477
  {
3504
3478
  provide: NG_VALUE_ACCESSOR,
3505
3479
  multi: true,
3506
3480
  useExisting: forwardRef(() => AutoCompleteComponent)
3507
3481
  }
3508
- ], ngImport: i0, template: "<div [formGroup]=\"form\" style=\"width:100%\" class=\"mainDiv\">\n <div style=\"color:red\">{{error}}</div>\n <mat-form-field style=\"width:100%\" class=\"autocff\">\n <input type=\"text\" matInput formControlName=\"__result\" [matAutocomplete]=\"auto\" [placeholder]=\"placeHolder\">\n </mat-form-field>\n <mat-autocomplete #auto=\"matAutocomplete\" [displayWith]=\"displayObj.bind(this)\">\n @for (option of options; track option) {\n <mat-option [value]=\"option\" [innerHTML]=\"displayObj(option) | safeHtml\">\n </mat-option>\n }\n </mat-autocomplete>\n</div>", styles: [""], dependencies: [{ kind: "directive", type: i1$3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i2$1.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly", "disabledInteractive"], exportAs: ["matInput"] }, { kind: "component", type: i2$1.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "component", type: i3$2.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "component", type: i4$2.MatAutocomplete, selector: "mat-autocomplete", inputs: ["aria-label", "aria-labelledby", "displayWith", "autoActiveFirstOption", "autoSelectActiveOption", "requireSelection", "panelWidth", "disableRipple", "class", "hideSingleSelectionIndicator"], outputs: ["optionSelected", "opened", "closed", "optionActivated"], exportAs: ["matAutocomplete"] }, { kind: "directive", type: i4$2.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", inputs: ["matAutocomplete", "matAutocompletePosition", "matAutocompleteConnectedTo", "autocomplete", "matAutocompleteDisabled"], exportAs: ["matAutocompleteTrigger"] }, { kind: "pipe", type: SafeHtmlPipe, name: "safeHtml" }], encapsulation: i0.ViewEncapsulation.None }); }
3482
+ ], ngImport: i0, template: "<div [formGroup]=\"form\" style=\"width:100%\" class=\"mainDiv\">\n <div style=\"color:red\">{{error}}</div>\n <mat-form-field style=\"width:100%\" class=\"autocff\">\n <input type=\"text\" matInput formControlName=\"__result\" [matAutocomplete]=\"auto\" [placeholder]=\"placeHolder\">\n </mat-form-field>\n <mat-autocomplete #auto=\"matAutocomplete\" [displayWith]=\"displayObj.bind(this)\">\n @for (option of options; track option) {\n <mat-option [value]=\"option\" [innerHTML]=\"displayObj(option) | safeHtml\">\n </mat-option>\n }\n </mat-autocomplete>\n</div>", styles: [""], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly", "disabledInteractive"], exportAs: ["matInput"] }, { kind: "directive", type: MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", inputs: ["matAutocomplete", "matAutocompletePosition", "matAutocompleteConnectedTo", "autocomplete", "matAutocompleteDisabled"], exportAs: ["matAutocompleteTrigger"] }, { kind: "component", type: MatAutocomplete, selector: "mat-autocomplete", inputs: ["aria-label", "aria-labelledby", "displayWith", "autoActiveFirstOption", "autoSelectActiveOption", "requireSelection", "panelWidth", "disableRipple", "class", "hideSingleSelectionIndicator"], outputs: ["optionSelected", "opened", "closed", "optionActivated"], exportAs: ["matAutocomplete"] }, { kind: "component", type: MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "pipe", type: SafeHtmlPipe, name: "safeHtml" }], encapsulation: i0.ViewEncapsulation.None }); }
3509
3483
  }
3510
3484
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: AutoCompleteComponent, decorators: [{
3511
3485
  type: Component,
@@ -3515,7 +3489,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImpo
3515
3489
  multi: true,
3516
3490
  useExisting: forwardRef(() => AutoCompleteComponent)
3517
3491
  }
3518
- ], standalone: false, template: "<div [formGroup]=\"form\" style=\"width:100%\" class=\"mainDiv\">\n <div style=\"color:red\">{{error}}</div>\n <mat-form-field style=\"width:100%\" class=\"autocff\">\n <input type=\"text\" matInput formControlName=\"__result\" [matAutocomplete]=\"auto\" [placeholder]=\"placeHolder\">\n </mat-form-field>\n <mat-autocomplete #auto=\"matAutocomplete\" [displayWith]=\"displayObj.bind(this)\">\n @for (option of options; track option) {\n <mat-option [value]=\"option\" [innerHTML]=\"displayObj(option) | safeHtml\">\n </mat-option>\n }\n </mat-autocomplete>\n</div>" }]
3492
+ ], imports: [FormsModule, ReactiveFormsModule, MatFormField, MatInput, MatAutocompleteTrigger, MatAutocomplete, MatOption, SafeHtmlPipe], template: "<div [formGroup]=\"form\" style=\"width:100%\" class=\"mainDiv\">\n <div style=\"color:red\">{{error}}</div>\n <mat-form-field style=\"width:100%\" class=\"autocff\">\n <input type=\"text\" matInput formControlName=\"__result\" [matAutocomplete]=\"auto\" [placeholder]=\"placeHolder\">\n </mat-form-field>\n <mat-autocomplete #auto=\"matAutocomplete\" [displayWith]=\"displayObj.bind(this)\">\n @for (option of options; track option) {\n <mat-option [value]=\"option\" [innerHTML]=\"displayObj(option) | safeHtml\">\n </mat-option>\n }\n </mat-autocomplete>\n</div>" }]
3519
3493
  }], ctorParameters: () => [{ type: undefined, decorators: [{
3520
3494
  type: Inject,
3521
3495
  args: ['glowwService']
@@ -3587,13 +3561,13 @@ class DatetimeComponent {
3587
3561
  //throw new Error('Method not implemented.');
3588
3562
  }
3589
3563
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: DatetimeComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
3590
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.18", type: DatetimeComponent, isStandalone: false, selector: "gloww-datetime", inputs: { _value: ["value", "_value"], display: "display", placeHolder: "placeHolder", mode: "mode", showSpinners: "showSpinners", showSeconds: "showSeconds", disableMinute: "disableMinute" }, providers: [
3564
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.18", type: DatetimeComponent, isStandalone: true, selector: "gloww-datetime", inputs: { _value: ["value", "_value"], display: "display", placeHolder: "placeHolder", mode: "mode", showSpinners: "showSpinners", showSeconds: "showSeconds", disableMinute: "disableMinute" }, providers: [
3591
3565
  {
3592
3566
  provide: NG_VALUE_ACCESSOR,
3593
3567
  multi: true,
3594
3568
  useExisting: DatetimeComponent
3595
3569
  }
3596
- ], ngImport: i0, template: "<div style=\"width:100%\">\n @if (mode==='date') {\n <mat-form-field>\n <mat-label>{{display}}</mat-label>\n <input matInput [matDatepicker]=\"picker\" [placeholder]=\"placeHolder\" [(ngModel)]=\"value\">\n <mat-datepicker-toggle matSuffix [for]=\"picker\"></mat-datepicker-toggle>\n <mat-datepicker #picker></mat-datepicker>\n </mat-form-field>\n }\n\n @if (mode==='datetime') {\n <mat-form-field>\n <mat-label>{{display}}</mat-label>\n <input matInput [ngxMatDatetimePicker]=\"pickerDT\" [placeholder]=\"placeHolder\" [(ngModel)]=\"value\">\n <mat-datepicker-toggle matSuffix [for]=\"$any(pickerDT)\"></mat-datepicker-toggle>\n <ngx-mat-datetime-picker #pickerDT [showSpinners]=\"showSpinners\" [showSeconds]=\"showSeconds\" [touchUi]=\"true\" [disableMinute]=\"disableMinute\">\n </ngx-mat-datetime-picker>\n </mat-form-field>\n }\n</div>\n", styles: [""], dependencies: [{ kind: "directive", type: i1$3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i2$1.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly", "disabledInteractive"], exportAs: ["matInput"] }, { kind: "component", type: i2$1.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i2$1.MatLabel, selector: "mat-label" }, { kind: "directive", type: i2$1.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "component", type: i3$3.MatDatepicker, selector: "mat-datepicker", exportAs: ["matDatepicker"] }, { kind: "directive", type: i3$3.MatDatepickerInput, selector: "input[matDatepicker]", inputs: ["matDatepicker", "min", "max", "matDatepickerFilter"], exportAs: ["matDatepickerInput"] }, { kind: "component", type: i3$3.MatDatepickerToggle, selector: "mat-datepicker-toggle", inputs: ["for", "tabIndex", "aria-label", "disabled", "disableRipple"], exportAs: ["matDatepickerToggle"] }, { kind: "component", type: i4$3.NgxMatDatetimepicker, selector: "ngx-mat-datetime-picker", exportAs: ["ngxMatDatetimePicker"] }, { kind: "directive", type: i4$3.NgxMatDatepickerInput, selector: "input[ngxMatDatetimePicker]", inputs: ["ngxMatDatetimePicker", "min", "max", "matDatepickerFilter"], exportAs: ["ngxMatDatepickerInput"] }] }); }
3570
+ ], ngImport: i0, template: "<div style=\"width:100%\">\n @if (mode==='date') {\n <mat-form-field>\n <mat-label>{{display}}</mat-label>\n <input matInput [matDatepicker]=\"picker\" [placeholder]=\"placeHolder\" [(ngModel)]=\"value\">\n <mat-datepicker-toggle matSuffix [for]=\"picker\"></mat-datepicker-toggle>\n <mat-datepicker #picker></mat-datepicker>\n </mat-form-field>\n }\n\n @if (mode==='datetime') {\n <mat-form-field>\n <mat-label>{{display}}</mat-label>\n <input matInput [ngxMatDatetimePicker]=\"pickerDT\" [placeholder]=\"placeHolder\" [(ngModel)]=\"value\">\n <mat-datepicker-toggle matSuffix [for]=\"$any(pickerDT)\"></mat-datepicker-toggle>\n <ngx-mat-datetime-picker #pickerDT [showSpinners]=\"showSpinners\" [showSeconds]=\"showSeconds\" [touchUi]=\"true\" [disableMinute]=\"disableMinute\">\n </ngx-mat-datetime-picker>\n </mat-form-field>\n }\n</div>\n", styles: [""], dependencies: [{ kind: "component", type: MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: MatLabel, selector: "mat-label" }, { kind: "directive", type: MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly", "disabledInteractive"], exportAs: ["matInput"] }, { kind: "directive", type: MatDatepickerInput, selector: "input[matDatepicker]", inputs: ["matDatepicker", "min", "max", "matDatepickerFilter"], exportAs: ["matDatepickerInput"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: MatDatepickerToggle, selector: "mat-datepicker-toggle", inputs: ["for", "tabIndex", "aria-label", "disabled", "disableRipple"], exportAs: ["matDatepickerToggle"] }, { kind: "directive", type: MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "component", type: MatDatepicker, selector: "mat-datepicker", exportAs: ["matDatepicker"] }, { kind: "ngmodule", type: NgxMatDatetimePickerModule }, { kind: "component", type: i2$1.NgxMatDatetimepicker, selector: "ngx-mat-datetime-picker", exportAs: ["ngxMatDatetimePicker"] }, { kind: "directive", type: i2$1.NgxMatDatepickerInput, selector: "input[ngxMatDatetimePicker]", inputs: ["ngxMatDatetimePicker", "min", "max", "matDatepickerFilter"], exportAs: ["ngxMatDatepickerInput"] }] }); }
3597
3571
  }
3598
3572
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: DatetimeComponent, decorators: [{
3599
3573
  type: Component,
@@ -3603,7 +3577,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImpo
3603
3577
  multi: true,
3604
3578
  useExisting: DatetimeComponent
3605
3579
  }
3606
- ], standalone: false, template: "<div style=\"width:100%\">\n @if (mode==='date') {\n <mat-form-field>\n <mat-label>{{display}}</mat-label>\n <input matInput [matDatepicker]=\"picker\" [placeholder]=\"placeHolder\" [(ngModel)]=\"value\">\n <mat-datepicker-toggle matSuffix [for]=\"picker\"></mat-datepicker-toggle>\n <mat-datepicker #picker></mat-datepicker>\n </mat-form-field>\n }\n\n @if (mode==='datetime') {\n <mat-form-field>\n <mat-label>{{display}}</mat-label>\n <input matInput [ngxMatDatetimePicker]=\"pickerDT\" [placeholder]=\"placeHolder\" [(ngModel)]=\"value\">\n <mat-datepicker-toggle matSuffix [for]=\"$any(pickerDT)\"></mat-datepicker-toggle>\n <ngx-mat-datetime-picker #pickerDT [showSpinners]=\"showSpinners\" [showSeconds]=\"showSeconds\" [touchUi]=\"true\" [disableMinute]=\"disableMinute\">\n </ngx-mat-datetime-picker>\n </mat-form-field>\n }\n</div>\n" }]
3580
+ ], imports: [MatFormField, MatLabel, MatInput, MatDatepickerInput, FormsModule, MatDatepickerToggle, MatSuffix, MatDatepicker, NgxMatDatetimePickerModule], template: "<div style=\"width:100%\">\n @if (mode==='date') {\n <mat-form-field>\n <mat-label>{{display}}</mat-label>\n <input matInput [matDatepicker]=\"picker\" [placeholder]=\"placeHolder\" [(ngModel)]=\"value\">\n <mat-datepicker-toggle matSuffix [for]=\"picker\"></mat-datepicker-toggle>\n <mat-datepicker #picker></mat-datepicker>\n </mat-form-field>\n }\n\n @if (mode==='datetime') {\n <mat-form-field>\n <mat-label>{{display}}</mat-label>\n <input matInput [ngxMatDatetimePicker]=\"pickerDT\" [placeholder]=\"placeHolder\" [(ngModel)]=\"value\">\n <mat-datepicker-toggle matSuffix [for]=\"$any(pickerDT)\"></mat-datepicker-toggle>\n <ngx-mat-datetime-picker #pickerDT [showSpinners]=\"showSpinners\" [showSeconds]=\"showSeconds\" [touchUi]=\"true\" [disableMinute]=\"disableMinute\">\n </ngx-mat-datetime-picker>\n </mat-form-field>\n }\n</div>\n" }]
3607
3581
  }], ctorParameters: () => [], propDecorators: { _value: [{
3608
3582
  type: Input,
3609
3583
  args: ['value']
@@ -3683,32 +3657,7 @@ class GlowwModule {
3683
3657
  };
3684
3658
  }
3685
3659
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: GlowwModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
3686
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.18", ngImport: i0, type: GlowwModule, declarations: [UploadDocComponent,
3687
- SafeHtmlPipe,
3688
- DisplayObjectsComponent,
3689
- HeaderComponent,
3690
- ResultTableComponent,
3691
- SearchFormComponent,
3692
- ConfirmationComponent,
3693
- PromptComponent,
3694
- SecurePipe,
3695
- SecureImgComponent,
3696
- MenuListItemComponent,
3697
- CodeEditorComponent,
3698
- HtmlEditorComponent,
3699
- HtmlFormatPipe,
3700
- UploadFileComponent,
3701
- FileSinkDirective,
3702
- FileEditComponent,
3703
- FoldersComponent,
3704
- DownloadProgressComponent,
3705
- SecureAComponent,
3706
- DummyComponent,
3707
- SelectComponent,
3708
- AutoCompleteComponent,
3709
- DatetimeComponent,
3710
- RouteDirective,
3711
- FilterFormComponent], imports: [CommonModule,
3660
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.18", ngImport: i0, type: GlowwModule, imports: [CommonModule,
3712
3661
  BrowserModule,
3713
3662
  RouterModule,
3714
3663
  FormsModule,
@@ -3734,7 +3683,33 @@ class GlowwModule {
3734
3683
  NgxMatNativeDateModule, // Existe selon ta liste
3735
3684
  //NgxMatMomentModule,
3736
3685
  DragDropModule,
3737
- AngularResizeEventModule], exports: [SafeHtmlPipe,
3686
+ AngularResizeEventModule,
3687
+ UploadDocComponent,
3688
+ SafeHtmlPipe,
3689
+ DisplayObjectsComponent,
3690
+ HeaderComponent,
3691
+ ResultTableComponent,
3692
+ SearchFormComponent,
3693
+ ConfirmationComponent,
3694
+ PromptComponent,
3695
+ SecurePipe,
3696
+ SecureImgComponent,
3697
+ MenuListItemComponent,
3698
+ CodeEditorComponent,
3699
+ HtmlEditorComponent,
3700
+ HtmlFormatPipe,
3701
+ UploadFileComponent,
3702
+ FileSinkDirective,
3703
+ FileEditComponent,
3704
+ FoldersComponent,
3705
+ DownloadProgressComponent,
3706
+ SecureAComponent,
3707
+ DummyComponent,
3708
+ SelectComponent,
3709
+ AutoCompleteComponent,
3710
+ DatetimeComponent,
3711
+ RouteDirective,
3712
+ FilterFormComponent], exports: [SafeHtmlPipe,
3738
3713
  UploadDocComponent,
3739
3714
  UploadFileComponent,
3740
3715
  DisplayObjectsComponent,
@@ -3788,41 +3763,28 @@ class GlowwModule {
3788
3763
  NgxMatNativeDateModule, // Existe selon ta liste
3789
3764
  //NgxMatMomentModule,
3790
3765
  DragDropModule,
3791
- AngularResizeEventModule, MatDatepickerModule,
3766
+ AngularResizeEventModule,
3767
+ UploadDocComponent,
3768
+ DisplayObjectsComponent,
3769
+ ConfirmationComponent,
3770
+ PromptComponent,
3771
+ MenuListItemComponent,
3772
+ CodeEditorComponent,
3773
+ HtmlEditorComponent,
3774
+ UploadFileComponent,
3775
+ FileEditComponent,
3776
+ FoldersComponent,
3777
+ DownloadProgressComponent,
3778
+ SelectComponent,
3779
+ AutoCompleteComponent,
3780
+ DatetimeComponent,
3781
+ FilterFormComponent, MatDatepickerModule,
3792
3782
  NgxMatDatetimePickerModule, // Attention : ta liste dit "NgxMatTimepickerComponent"
3793
3783
  NgxMatNativeDateModule] }); }
3794
3784
  }
3795
3785
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImport: i0, type: GlowwModule, decorators: [{
3796
3786
  type: NgModule,
3797
3787
  args: [{
3798
- declarations: [
3799
- UploadDocComponent,
3800
- SafeHtmlPipe,
3801
- DisplayObjectsComponent,
3802
- HeaderComponent,
3803
- ResultTableComponent,
3804
- SearchFormComponent,
3805
- ConfirmationComponent,
3806
- PromptComponent,
3807
- SecurePipe,
3808
- SecureImgComponent,
3809
- MenuListItemComponent,
3810
- CodeEditorComponent,
3811
- HtmlEditorComponent,
3812
- HtmlFormatPipe,
3813
- UploadFileComponent,
3814
- FileSinkDirective,
3815
- FileEditComponent,
3816
- FoldersComponent,
3817
- DownloadProgressComponent,
3818
- SecureAComponent,
3819
- DummyComponent,
3820
- SelectComponent,
3821
- AutoCompleteComponent,
3822
- DatetimeComponent,
3823
- RouteDirective,
3824
- FilterFormComponent
3825
- ],
3826
3788
  imports: [
3827
3789
  CommonModule,
3828
3790
  BrowserModule,
@@ -3850,7 +3812,33 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.18", ngImpo
3850
3812
  NgxMatNativeDateModule, // Existe selon ta liste
3851
3813
  //NgxMatMomentModule,
3852
3814
  DragDropModule,
3853
- AngularResizeEventModule
3815
+ AngularResizeEventModule,
3816
+ UploadDocComponent,
3817
+ SafeHtmlPipe,
3818
+ DisplayObjectsComponent,
3819
+ HeaderComponent,
3820
+ ResultTableComponent,
3821
+ SearchFormComponent,
3822
+ ConfirmationComponent,
3823
+ PromptComponent,
3824
+ SecurePipe,
3825
+ SecureImgComponent,
3826
+ MenuListItemComponent,
3827
+ CodeEditorComponent,
3828
+ HtmlEditorComponent,
3829
+ HtmlFormatPipe,
3830
+ UploadFileComponent,
3831
+ FileSinkDirective,
3832
+ FileEditComponent,
3833
+ FoldersComponent,
3834
+ DownloadProgressComponent,
3835
+ SecureAComponent,
3836
+ DummyComponent,
3837
+ SelectComponent,
3838
+ AutoCompleteComponent,
3839
+ DatetimeComponent,
3840
+ RouteDirective,
3841
+ FilterFormComponent
3854
3842
  ],
3855
3843
  providers: [],
3856
3844
  exports: [