@hestia-earth/ui-components 0.23.11 → 0.23.13

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.
@@ -1,10 +1,22 @@
1
- import { ElementRef, EventEmitter } from '@angular/core';
1
+ import { AfterViewInit, DestroyRef, ElementRef, EventEmitter, NgZone } from '@angular/core';
2
+ import { Subject } from 'rxjs';
2
3
  import * as i0 from "@angular/core";
3
- export declare class ClickOutsideDirective {
4
+ export declare class DocumentClickService {
5
+ private ngZone;
6
+ documentClick$: Subject<Event>;
7
+ constructor(ngZone: NgZone);
8
+ static ɵfac: i0.ɵɵFactoryDeclaration<DocumentClickService, never>;
9
+ static ɵprov: i0.ɵɵInjectableDeclaration<DocumentClickService>;
10
+ }
11
+ export declare class ClickOutsideDirective implements AfterViewInit {
4
12
  private elementRef;
13
+ private zone;
14
+ private destroyRef;
15
+ private documentClickService;
5
16
  clickOutside: EventEmitter<void>;
6
- constructor(elementRef: ElementRef);
7
- onClick(event: MouseEvent): void;
17
+ clickOutsideListenAfter: number;
18
+ constructor(elementRef: ElementRef, zone: NgZone, destroyRef: DestroyRef, documentClickService: DocumentClickService);
19
+ ngAfterViewInit(): void;
8
20
  static ɵfac: i0.ɵɵFactoryDeclaration<ClickOutsideDirective, never>;
9
- static ɵdir: i0.ɵɵDirectiveDeclaration<ClickOutsideDirective, "[clickOutside]", never, {}, { "clickOutside": "clickOutside"; }, never, never, false, never>;
21
+ static ɵdir: i0.ɵɵDirectiveDeclaration<ClickOutsideDirective, "[clickOutside]", never, { "clickOutsideListenAfter": { "alias": "clickOutsideListenAfter"; "required": false; }; }, { "clickOutside": "clickOutside"; }, never, never, false, never>;
10
22
  }
@@ -13,7 +13,7 @@ export declare class EngineModelsStageComponent {
13
13
  private defaultMaxStage;
14
14
  private node$;
15
15
  private headers;
16
- stage: import("@angular/core").Signal<string>;
16
+ stage: import("@angular/core").Signal<number>;
17
17
  maxStage: import("@angular/core").Signal<any>;
18
18
  inProgress: import("@angular/core").Signal<boolean>;
19
19
  constructor(nodeService: HeNodeService);
@@ -1,28 +1,60 @@
1
1
  /* eslint-disable @angular-eslint/directive-selector */
2
- import { Directive, EventEmitter, HostListener, Output } from '@angular/core';
2
+ import { Directive, EventEmitter, Injectable, Input, Output } from '@angular/core';
3
+ import { fromEvent, Subject, timer } from 'rxjs';
4
+ import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
5
+ import { skipUntil, take, tap } from 'rxjs/operators';
3
6
  import * as i0 from "@angular/core";
7
+ export class DocumentClickService {
8
+ constructor(ngZone) {
9
+ this.ngZone = ngZone;
10
+ this.documentClick$ = new Subject();
11
+ this.ngZone.runOutsideAngular(() => {
12
+ fromEvent(document, 'click')
13
+ .pipe(takeUntilDestroyed(), tap(event => this.documentClick$.next(event)))
14
+ .subscribe();
15
+ });
16
+ }
17
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: DocumentClickService, deps: [{ token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Injectable }); }
18
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: DocumentClickService, providedIn: 'root' }); }
19
+ }
20
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: DocumentClickService, decorators: [{
21
+ type: Injectable,
22
+ args: [{ providedIn: 'root' }]
23
+ }], ctorParameters: function () { return [{ type: i0.NgZone }]; } });
4
24
  export class ClickOutsideDirective {
5
- constructor(elementRef) {
25
+ constructor(elementRef, zone, destroyRef, documentClickService) {
6
26
  this.elementRef = elementRef;
27
+ this.zone = zone;
28
+ this.destroyRef = destroyRef;
29
+ this.documentClickService = documentClickService;
7
30
  this.clickOutside = new EventEmitter();
31
+ this.clickOutsideListenAfter = 0;
8
32
  }
9
- onClick(event) {
10
- if (!this.elementRef.nativeElement.contains(event.target)) {
11
- this.clickOutside.emit();
12
- }
33
+ ngAfterViewInit() {
34
+ const skip$ = timer(this.clickOutsideListenAfter).pipe(take(1));
35
+ this.zone.runOutsideAngular(() => {
36
+ this.documentClickService.documentClick$
37
+ .pipe(skipUntil(skip$), takeUntilDestroyed(this.destroyRef), tap(event => {
38
+ if (!this.elementRef.nativeElement.contains(event.target)) {
39
+ this.zone.run(() => {
40
+ this.clickOutside.emit();
41
+ });
42
+ }
43
+ }))
44
+ .subscribe();
45
+ });
13
46
  }
14
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: ClickOutsideDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
15
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.1.8", type: ClickOutsideDirective, selector: "[clickOutside]", outputs: { clickOutside: "clickOutside" }, host: { listeners: { "document:click": "onClick($event)" } }, ngImport: i0 }); }
47
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: ClickOutsideDirective, deps: [{ token: i0.ElementRef }, { token: i0.NgZone }, { token: i0.DestroyRef }, { token: DocumentClickService }], target: i0.ɵɵFactoryTarget.Directive }); }
48
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.1.8", type: ClickOutsideDirective, selector: "[clickOutside]", inputs: { clickOutsideListenAfter: "clickOutsideListenAfter" }, outputs: { clickOutside: "clickOutside" }, ngImport: i0 }); }
16
49
  }
17
50
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: ClickOutsideDirective, decorators: [{
18
51
  type: Directive,
19
52
  args: [{
20
53
  selector: '[clickOutside]'
21
54
  }]
22
- }], ctorParameters: function () { return [{ type: i0.ElementRef }]; }, propDecorators: { clickOutside: [{
55
+ }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.NgZone }, { type: i0.DestroyRef }, { type: DocumentClickService }]; }, propDecorators: { clickOutside: [{
23
56
  type: Output
24
- }], onClick: [{
25
- type: HostListener,
26
- args: ['document:click', ['$event']]
57
+ }], clickOutsideListenAfter: [{
58
+ type: Input
27
59
  }] } });
28
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpY2stb3V0c2lkZS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29tbW9uL2NsaWNrLW91dHNpZGUuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHVEQUF1RDtBQUN2RCxPQUFPLEVBQUUsU0FBUyxFQUFjLFlBQVksRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUsxRixNQUFNLE9BQU8scUJBQXFCO0lBSWhDLFlBQW9CLFVBQXNCO1FBQXRCLGVBQVUsR0FBVixVQUFVLENBQVk7UUFGbkMsaUJBQVksR0FBRyxJQUFJLFlBQVksRUFBUSxDQUFDO0lBRUYsQ0FBQztJQUc5QyxPQUFPLENBQUMsS0FBaUI7UUFDdkIsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLEVBQUU7WUFDekQsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLEVBQUUsQ0FBQztTQUMxQjtJQUNILENBQUM7OEdBWFUscUJBQXFCO2tHQUFyQixxQkFBcUI7OzJGQUFyQixxQkFBcUI7a0JBSGpDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGdCQUFnQjtpQkFDM0I7aUdBR1EsWUFBWTtzQkFEbEIsTUFBTTtnQkFNUCxPQUFPO3NCQUROLFlBQVk7dUJBQUMsZ0JBQWdCLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBAYW5ndWxhci1lc2xpbnQvZGlyZWN0aXZlLXNlbGVjdG9yICovXG5pbXBvcnQgeyBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIEV2ZW50RW1pdHRlciwgSG9zdExpc3RlbmVyLCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW2NsaWNrT3V0c2lkZV0nXG59KVxuZXhwb3J0IGNsYXNzIENsaWNrT3V0c2lkZURpcmVjdGl2ZSB7XG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgY2xpY2tPdXRzaWRlID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgZWxlbWVudFJlZjogRWxlbWVudFJlZikge31cblxuICBASG9zdExpc3RlbmVyKCdkb2N1bWVudDpjbGljaycsIFsnJGV2ZW50J10pXG4gIG9uQ2xpY2soZXZlbnQ6IE1vdXNlRXZlbnQpIHtcbiAgICBpZiAoIXRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmNvbnRhaW5zKGV2ZW50LnRhcmdldCkpIHtcbiAgICAgIHRoaXMuY2xpY2tPdXRzaWRlLmVtaXQoKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
60
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpY2stb3V0c2lkZS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29tbW9uL2NsaWNrLW91dHNpZGUuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHVEQUF1RDtBQUN2RCxPQUFPLEVBR0wsU0FBUyxFQUVULFlBQVksRUFDWixVQUFVLEVBQ1YsS0FBSyxFQUVMLE1BQU0sRUFDUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsU0FBUyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDakQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDaEUsT0FBTyxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7O0FBR3RELE1BQU0sT0FBTyxvQkFBb0I7SUFHL0IsWUFBMkIsTUFBYztRQUFkLFdBQU0sR0FBTixNQUFNLENBQVE7UUFGbEMsbUJBQWMsR0FBRyxJQUFJLE9BQU8sRUFBUyxDQUFDO1FBRzNDLElBQUksQ0FBQyxNQUFNLENBQUMsaUJBQWlCLENBQUMsR0FBRyxFQUFFO1lBQ2pDLFNBQVMsQ0FBQyxRQUFRLEVBQUUsT0FBTyxDQUFDO2lCQUN6QixJQUFJLENBQ0gsa0JBQWtCLEVBQUUsRUFDcEIsR0FBRyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FDOUM7aUJBQ0EsU0FBUyxFQUFFLENBQUM7UUFDakIsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDOzhHQVpVLG9CQUFvQjtrSEFBcEIsb0JBQW9CLGNBRFAsTUFBTTs7MkZBQ25CLG9CQUFvQjtrQkFEaEMsVUFBVTttQkFBQyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUU7O0FBbUJsQyxNQUFNLE9BQU8scUJBQXFCO0lBS2hDLFlBQ1UsVUFBc0IsRUFDdEIsSUFBWSxFQUNaLFVBQXNCLEVBQ3RCLG9CQUEwQztRQUgxQyxlQUFVLEdBQVYsVUFBVSxDQUFZO1FBQ3RCLFNBQUksR0FBSixJQUFJLENBQVE7UUFDWixlQUFVLEdBQVYsVUFBVSxDQUFZO1FBQ3RCLHlCQUFvQixHQUFwQixvQkFBb0IsQ0FBc0I7UUFSbkMsaUJBQVksR0FBRyxJQUFJLFlBQVksRUFBUSxDQUFDO1FBRXpDLDRCQUF1QixHQUFHLENBQUMsQ0FBQztJQU96QyxDQUFDO0lBRUosZUFBZTtRQUNiLE1BQU0sS0FBSyxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUMsdUJBQXVCLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDaEUsSUFBSSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLEVBQUU7WUFDL0IsSUFBSSxDQUFDLG9CQUFvQixDQUFDLGNBQWM7aUJBQ3JDLElBQUksQ0FDSCxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQ2hCLGtCQUFrQixDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsRUFDbkMsR0FBRyxDQUFDLEtBQUssQ0FBQyxFQUFFO2dCQUNWLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxFQUFFO29CQUN6RCxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUU7d0JBQ2pCLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxFQUFFLENBQUM7b0JBQzNCLENBQUMsQ0FBQyxDQUFDO2lCQUNKO1lBQ0gsQ0FBQyxDQUFDLENBQ0g7aUJBQ0EsU0FBUyxFQUFFLENBQUM7UUFDakIsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDOzhHQTdCVSxxQkFBcUI7a0dBQXJCLHFCQUFxQjs7MkZBQXJCLHFCQUFxQjtrQkFIakMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsZ0JBQWdCO2lCQUMzQjsrS0FFa0IsWUFBWTtzQkFBNUIsTUFBTTtnQkFFUyx1QkFBdUI7c0JBQXRDLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBAYW5ndWxhci1lc2xpbnQvZGlyZWN0aXZlLXNlbGVjdG9yICovXG5pbXBvcnQge1xuICBBZnRlclZpZXdJbml0LFxuICBEZXN0cm95UmVmLFxuICBEaXJlY3RpdmUsXG4gIEVsZW1lbnRSZWYsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5qZWN0YWJsZSxcbiAgSW5wdXQsXG4gIE5nWm9uZSxcbiAgT3V0cHV0XG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgZnJvbUV2ZW50LCBTdWJqZWN0LCB0aW1lciB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgdGFrZVVudGlsRGVzdHJveWVkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xuaW1wb3J0IHsgc2tpcFVudGlsLCB0YWtlLCB0YXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ3Jvb3QnIH0pXG5leHBvcnQgY2xhc3MgRG9jdW1lbnRDbGlja1NlcnZpY2Uge1xuICBwdWJsaWMgZG9jdW1lbnRDbGljayQgPSBuZXcgU3ViamVjdDxFdmVudD4oKTtcblxuICBwdWJsaWMgY29uc3RydWN0b3IocHJpdmF0ZSBuZ1pvbmU6IE5nWm9uZSkge1xuICAgIHRoaXMubmdab25lLnJ1bk91dHNpZGVBbmd1bGFyKCgpID0+IHtcbiAgICAgIGZyb21FdmVudChkb2N1bWVudCwgJ2NsaWNrJylcbiAgICAgICAgLnBpcGUoXG4gICAgICAgICAgdGFrZVVudGlsRGVzdHJveWVkKCksXG4gICAgICAgICAgdGFwKGV2ZW50ID0+IHRoaXMuZG9jdW1lbnRDbGljayQubmV4dChldmVudCkpXG4gICAgICAgIClcbiAgICAgICAgLnN1YnNjcmliZSgpO1xuICAgIH0pO1xuICB9XG59XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tjbGlja091dHNpZGVdJ1xufSlcbmV4cG9ydCBjbGFzcyBDbGlja091dHNpZGVEaXJlY3RpdmUgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0IHtcbiAgQE91dHB1dCgpIHB1YmxpYyBjbGlja091dHNpZGUgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG5cbiAgQElucHV0KCkgcHVibGljIGNsaWNrT3V0c2lkZUxpc3RlbkFmdGVyID0gMDtcblxuICBwdWJsaWMgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBlbGVtZW50UmVmOiBFbGVtZW50UmVmLFxuICAgIHByaXZhdGUgem9uZTogTmdab25lLFxuICAgIHByaXZhdGUgZGVzdHJveVJlZjogRGVzdHJveVJlZixcbiAgICBwcml2YXRlIGRvY3VtZW50Q2xpY2tTZXJ2aWNlOiBEb2N1bWVudENsaWNrU2VydmljZVxuICApIHt9XG5cbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIGNvbnN0IHNraXAkID0gdGltZXIodGhpcy5jbGlja091dHNpZGVMaXN0ZW5BZnRlcikucGlwZSh0YWtlKDEpKTtcbiAgICB0aGlzLnpvbmUucnVuT3V0c2lkZUFuZ3VsYXIoKCkgPT4ge1xuICAgICAgdGhpcy5kb2N1bWVudENsaWNrU2VydmljZS5kb2N1bWVudENsaWNrJFxuICAgICAgICAucGlwZShcbiAgICAgICAgICBza2lwVW50aWwoc2tpcCQpLFxuICAgICAgICAgIHRha2VVbnRpbERlc3Ryb3llZCh0aGlzLmRlc3Ryb3lSZWYpLFxuICAgICAgICAgIHRhcChldmVudCA9PiB7XG4gICAgICAgICAgICBpZiAoIXRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmNvbnRhaW5zKGV2ZW50LnRhcmdldCkpIHtcbiAgICAgICAgICAgICAgdGhpcy56b25lLnJ1bigoKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5jbGlja091dHNpZGUuZW1pdCgpO1xuICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9KVxuICAgICAgICApXG4gICAgICAgIC5zdWJzY3JpYmUoKTtcbiAgICB9KTtcbiAgfVxufVxuIl19
@@ -21,7 +21,7 @@ export class DropdownComponent {
21
21
  }
22
22
  }
23
23
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: DropdownComponent, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
24
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.8", type: DropdownComponent, selector: "he-dropdown", inputs: { tooltip: "tooltip", dropdownClass: "dropdownClass", dropdownButtonClass: "dropdownButtonClass", dropdownContentClass: "dropdownContentClass" }, host: { listeners: { "document:click": "onClick($event)" }, properties: { "id": "this.id" } }, ngImport: i0, template: "<div [class.is-active]=\"showDropdown\" (clickOutside)=\"showDropdown = false\" class=\"dropdown {{ dropdownClass }}\">\n <div (click)=\"showDropdown = !showDropdown\" class=\"dropdown-trigger\">\n <button\n [class.is-active]=\"showDropdown\"\n [disableTooltip]=\"showDropdown\"\n [attr.aria-controls]=\"menuId\"\n [ngbTooltip]=\"tooltip\"\n class=\"button {{ dropdownButtonClass }}\"\n aria-haspopup=\"true\"\n container=\"body\"\n placement=\"bottom\">\n <ng-content select=\"[label]\"></ng-content>\n </button>\n </div>\n\n <div class=\"dropdown-menu\" [id]=\"menuId\" role=\"menu\">\n <div (click)=\"showDropdown = false\" class=\"dropdown-content {{ dropdownContentClass }}\">\n <ng-content select=\"[menu]\"></ng-content>\n </div>\n </div>\n</div>\n", styles: [".dropdown-item>span{border-left:2px solid transparent}\n"], dependencies: [{ kind: "directive", type: i1.NgbTooltip, selector: "[ngbTooltip]", inputs: ["animation", "autoClose", "placement", "popperOptions", "triggers", "positionTarget", "container", "disableTooltip", "tooltipClass", "tooltipContext", "openDelay", "closeDelay", "ngbTooltip"], outputs: ["shown", "hidden"], exportAs: ["ngbTooltip"] }, { kind: "directive", type: i2.ClickOutsideDirective, selector: "[clickOutside]", outputs: ["clickOutside"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
24
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.8", type: DropdownComponent, selector: "he-dropdown", inputs: { tooltip: "tooltip", dropdownClass: "dropdownClass", dropdownButtonClass: "dropdownButtonClass", dropdownContentClass: "dropdownContentClass" }, host: { listeners: { "document:click": "onClick($event)" }, properties: { "id": "this.id" } }, ngImport: i0, template: "<div [class.is-active]=\"showDropdown\" (clickOutside)=\"showDropdown = false\" class=\"dropdown {{ dropdownClass }}\">\n <div (click)=\"showDropdown = !showDropdown\" class=\"dropdown-trigger\">\n <button\n [class.is-active]=\"showDropdown\"\n [disableTooltip]=\"showDropdown\"\n [attr.aria-controls]=\"menuId\"\n [ngbTooltip]=\"tooltip\"\n class=\"button {{ dropdownButtonClass }}\"\n aria-haspopup=\"true\"\n container=\"body\"\n placement=\"bottom\">\n <ng-content select=\"[label]\"></ng-content>\n </button>\n </div>\n\n <div class=\"dropdown-menu\" [id]=\"menuId\" role=\"menu\">\n <div (click)=\"showDropdown = false\" class=\"dropdown-content {{ dropdownContentClass }}\">\n <ng-content select=\"[menu]\"></ng-content>\n </div>\n </div>\n</div>\n", styles: [".dropdown-item>span{border-left:2px solid transparent}\n"], dependencies: [{ kind: "directive", type: i1.NgbTooltip, selector: "[ngbTooltip]", inputs: ["animation", "autoClose", "placement", "popperOptions", "triggers", "positionTarget", "container", "disableTooltip", "tooltipClass", "tooltipContext", "openDelay", "closeDelay", "ngbTooltip"], outputs: ["shown", "hidden"], exportAs: ["ngbTooltip"] }, { kind: "directive", type: i2.ClickOutsideDirective, selector: "[clickOutside]", inputs: ["clickOutsideListenAfter"], outputs: ["clickOutside"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
25
25
  }
26
26
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: DropdownComponent, decorators: [{
27
27
  type: Component,
@@ -41,7 +41,7 @@ export class SortSelectComponent {
41
41
  });
42
42
  }
43
43
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: SortSelectComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
44
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.8", type: SortSelectComponent, selector: "he-sort-select", inputs: { sortOptions: "sortOptions", alignment: "alignment", sortBy: "sortBy", sortOrder: "sortOrder" }, outputs: { sortChange: "sortChange" }, ngImport: i0, template: "<div\n (clickOutside)=\"showSortBy = false\"\n [class.is-active]=\"showSortBy\"\n [ngSwitch]=\"sortBySignal()\"\n [ngClass]=\"'is-' + alignment\"\n class=\"dropdown\">\n <div (click)=\"showSortBy = !showSortBy\" class=\"dropdown-trigger\">\n <button\n [class.is-active]=\"showSortBy\"\n [disableTooltip]=\"showSortBy\"\n aria-controls=\"sort-menu\"\n aria-haspopup=\"true\"\n class=\"button is-ghost\"\n container=\"body\"\n ngbTooltip=\"Sort options\"\n placement=\"bottom\">\n <fa-icon aria-hidden=\"true\" icon=\"sort-amount-up-alt\"></fa-icon>\n </button>\n </div>\n <div class=\"dropdown-menu\" id=\"sort-menu\" role=\"menu\">\n <div (click)=\"showSortBy = false\" class=\"dropdown-content\">\n <a\n (click)=\"sort(option)\"\n *ngFor=\"let option of sortOptions\"\n [class.is-selected]=\"sortBySignal() === option.id\"\n class=\"dropdown-item\">\n <fa-icon\n [icon]=\"arrowIcon\"\n [style.visibility]=\"sortBySignal() === option.id ? 'visible' : 'hidden'\"\n class=\"pr-2\"></fa-icon>\n <span [style.border-color]=\"option.color ?? 'transparent'\" class=\"pl-2 is-inline-block is-capitalized\">\n {{ option.label }}\n </span>\n </a>\n </div>\n </div>\n</div>\n", styles: [".dropdown-item>span{border-left:2px solid transparent}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i2.NgbTooltip, selector: "[ngbTooltip]", inputs: ["animation", "autoClose", "placement", "popperOptions", "triggers", "positionTarget", "container", "disableTooltip", "tooltipClass", "tooltipContext", "openDelay", "closeDelay", "ngbTooltip"], outputs: ["shown", "hidden"], exportAs: ["ngbTooltip"] }, { kind: "component", type: i3.FaIconComponent, selector: "fa-icon", inputs: ["icon", "title", "animation", "spin", "pulse", "mask", "styles", "flip", "size", "pull", "border", "inverse", "symbol", "rotate", "fixedWidth", "classes", "transform", "a11yRole"] }, { kind: "directive", type: i4.ClickOutsideDirective, selector: "[clickOutside]", outputs: ["clickOutside"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
44
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.8", type: SortSelectComponent, selector: "he-sort-select", inputs: { sortOptions: "sortOptions", alignment: "alignment", sortBy: "sortBy", sortOrder: "sortOrder" }, outputs: { sortChange: "sortChange" }, ngImport: i0, template: "<div\n (clickOutside)=\"showSortBy = false\"\n [class.is-active]=\"showSortBy\"\n [ngSwitch]=\"sortBySignal()\"\n [ngClass]=\"'is-' + alignment\"\n class=\"dropdown\">\n <div (click)=\"showSortBy = !showSortBy\" class=\"dropdown-trigger\">\n <button\n [class.is-active]=\"showSortBy\"\n [disableTooltip]=\"showSortBy\"\n aria-controls=\"sort-menu\"\n aria-haspopup=\"true\"\n class=\"button is-ghost\"\n container=\"body\"\n ngbTooltip=\"Sort options\"\n placement=\"bottom\">\n <fa-icon aria-hidden=\"true\" icon=\"sort-amount-up-alt\"></fa-icon>\n </button>\n </div>\n <div class=\"dropdown-menu\" id=\"sort-menu\" role=\"menu\">\n <div (click)=\"showSortBy = false\" class=\"dropdown-content\">\n <a\n (click)=\"sort(option)\"\n *ngFor=\"let option of sortOptions\"\n [class.is-selected]=\"sortBySignal() === option.id\"\n class=\"dropdown-item\">\n <fa-icon\n [icon]=\"arrowIcon\"\n [style.visibility]=\"sortBySignal() === option.id ? 'visible' : 'hidden'\"\n class=\"pr-2\"></fa-icon>\n <span [style.border-color]=\"option.color ?? 'transparent'\" class=\"pl-2 is-inline-block is-capitalized\">\n {{ option.label }}\n </span>\n </a>\n </div>\n </div>\n</div>\n", styles: [".dropdown-item>span{border-left:2px solid transparent}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i2.NgbTooltip, selector: "[ngbTooltip]", inputs: ["animation", "autoClose", "placement", "popperOptions", "triggers", "positionTarget", "container", "disableTooltip", "tooltipClass", "tooltipContext", "openDelay", "closeDelay", "ngbTooltip"], outputs: ["shown", "hidden"], exportAs: ["ngbTooltip"] }, { kind: "component", type: i3.FaIconComponent, selector: "fa-icon", inputs: ["icon", "title", "animation", "spin", "pulse", "mask", "styles", "flip", "size", "pull", "border", "inverse", "symbol", "rotate", "fixedWidth", "classes", "transform", "a11yRole"] }, { kind: "directive", type: i4.ClickOutsideDirective, selector: "[clickOutside]", inputs: ["clickOutsideListenAfter"], outputs: ["clickOutside"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
45
45
  }
46
46
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: SortSelectComponent, decorators: [{
47
47
  type: Component,
@@ -25,8 +25,8 @@ export class EngineModelsStageComponent {
25
25
  ...node,
26
26
  dataState: DataState.recalculated
27
27
  })), map(({ headers }) => headers)));
28
- this.stage = computed(() => this.headers()?.get('stage'));
29
- this.maxStage = computed(() => this.headers()?.get('maxstage') || this.defaultMaxStage());
28
+ this.stage = computed(() => +this.headers()?.get('stage'));
29
+ this.maxStage = computed(() => +this.headers()?.get('maxstage') || this.defaultMaxStage());
30
30
  this.inProgress = computed(() => this.stage() && this.stage() !== this.maxStage());
31
31
  }
32
32
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: EngineModelsStageComponent, deps: [{ token: i1.HeNodeService }], target: i0.ɵɵFactoryTarget.Component }); }
@@ -38,4 +38,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.8", ngImpor
38
38
  }], ctorParameters: function () { return [{ type: i1.HeNodeService }]; }, propDecorators: { node: [{
39
39
  type: Input
40
40
  }] } });
41
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW5naW5lLW1vZGVscy1zdGFnZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvZW5naW5lL2VuZ2luZS1tb2RlbHMtc3RhZ2UvZW5naW5lLW1vZGVscy1zdGFnZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9zcmMvZW5naW5lL2VuZ2luZS1tb2RlbHMtc3RhZ2UvZW5naW5lLW1vZGVscy1zdGFnZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBa0IsUUFBUSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM1RyxPQUFPLEVBQVUsUUFBUSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDeEQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQzlDLE9BQU8sRUFBRSxZQUFZLEVBQUUsUUFBUSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDcEUsT0FBTyxFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUUsUUFBUSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7QUFJdkQsd0JBQXdCO0FBQ3hCLE1BQU0sQ0FBQyxNQUFNLFNBQVMsR0FBRztJQUN2QixDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO0lBQ25CLENBQUMsUUFBUSxDQUFDLGdCQUFnQixDQUFDLEVBQUUsQ0FBQztJQUM5QixDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDO0NBQ25CLENBQUM7QUFRRixNQUFNLE9BQU8sMEJBQTBCO0lBR3JDLElBQWEsSUFBSSxDQUFDLEtBQXVCO1FBQ3ZDLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3hCLENBQUM7SUFxQkQsWUFBb0IsV0FBMEI7UUFBMUIsZ0JBQVcsR0FBWCxXQUFXLENBQWU7UUF6QnRDLFVBQUssR0FBNEMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBTTlELG9CQUFlLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ25FLFVBQUssR0FBRyxZQUFZLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ2pDLFlBQU8sR0FBRyxRQUFRLENBQ3hCLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUNiLE1BQU0sQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsRUFDdEIsUUFBUSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQ2QsSUFBSSxDQUFDLFdBQVcsQ0FBQyxlQUFlLENBQUM7WUFDL0IsR0FBRyxJQUFJO1lBQ1AsU0FBUyxFQUFFLFNBQVMsQ0FBQyxZQUFZO1NBQ2xDLENBQUMsQ0FDSCxFQUNELEdBQUcsQ0FBQyxDQUFDLEVBQUUsT0FBTyxFQUFFLEVBQUUsRUFBRSxDQUFDLE9BQU8sQ0FBQyxDQUM5QixDQUNGLENBQUM7UUFFSyxVQUFLLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsRUFBRSxHQUFHLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQztRQUNyRCxhQUFRLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsRUFBRSxHQUFHLENBQUMsVUFBVSxDQUFDLElBQUksSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDLENBQUM7UUFDckYsZUFBVSxHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLElBQUksSUFBSSxDQUFDLEtBQUssRUFBRSxLQUFLLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDO0lBRXBDLENBQUM7OEdBMUJ2QywwQkFBMEI7a0dBQTFCLDBCQUEwQix3RkNyQnZDLGdNQUtBOzsyRkRnQmEsMEJBQTBCO2tCQU50QyxTQUFTOytCQUNFLHdCQUF3QixtQkFHakIsdUJBQXVCLENBQUMsTUFBTTtvR0FLbEMsSUFBSTtzQkFBaEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIElucHV0LCBXcml0YWJsZVNpZ25hbCwgY29tcHV0ZWQsIHNpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSlNPTkxELCBOb2RlVHlwZSB9IGZyb20gJ0BoZXN0aWEtZWFydGgvc2NoZW1hJztcbmltcG9ydCB7IERhdGFTdGF0ZSB9IGZyb20gJ0BoZXN0aWEtZWFydGgvYXBpJztcbmltcG9ydCB7IHRvT2JzZXJ2YWJsZSwgdG9TaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5pbXBvcnQgeyBmaWx0ZXIsIG1hcCwgbWVyZ2VNYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IEhlTm9kZVNlcnZpY2UgfSBmcm9tICcuLi8uLi9ub2RlJztcblxuLy8gVE9ETzogcmVtb3ZlIGZhbGxiYWNrXG5leHBvcnQgY29uc3QgTUFYX1NUQUdFID0ge1xuICBbTm9kZVR5cGUuQ3ljbGVdOiAyLFxuICBbTm9kZVR5cGUuSW1wYWN0QXNzZXNzbWVudF06IDEsXG4gIFtOb2RlVHlwZS5TaXRlXTogMlxufTtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaGUtZW5naW5lLW1vZGVscy1zdGFnZScsXG4gIHRlbXBsYXRlVXJsOiAnLi9lbmdpbmUtbW9kZWxzLXN0YWdlLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZW5naW5lLW1vZGVscy1zdGFnZS5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBFbmdpbmVNb2RlbHNTdGFnZUNvbXBvbmVudCB7XG4gIHByaXZhdGUgX25vZGU6IFdyaXRhYmxlU2lnbmFsPEpTT05MRDxOb2RlVHlwZT4gfCBudWxsPiA9IHNpZ25hbChudWxsKTtcblxuICBASW5wdXQoKSBzZXQgbm9kZSh2YWx1ZTogSlNPTkxEPE5vZGVUeXBlPikge1xuICAgIHRoaXMuX25vZGUuc2V0KHZhbHVlKTtcbiAgfVxuXG4gIHByaXZhdGUgZGVmYXVsdE1heFN0YWdlID0gY29tcHV0ZWQoKCkgPT4gTUFYX1NUQUdFW3RoaXMuX25vZGUoKVsnQHR5cGUnXV0pO1xuICBwcml2YXRlIG5vZGUkID0gdG9PYnNlcnZhYmxlKHRoaXMuX25vZGUpO1xuICBwcml2YXRlIGhlYWRlcnMgPSB0b1NpZ25hbChcbiAgICB0aGlzLm5vZGUkLnBpcGUoXG4gICAgICBmaWx0ZXIobm9kZSA9PiAhIW5vZGUpLFxuICAgICAgbWVyZ2VNYXAobm9kZSA9PlxuICAgICAgICB0aGlzLm5vZGVTZXJ2aWNlLmdldFdpdGhIZWFkZXJzJCh7XG4gICAgICAgICAgLi4ubm9kZSxcbiAgICAgICAgICBkYXRhU3RhdGU6IERhdGFTdGF0ZS5yZWNhbGN1bGF0ZWRcbiAgICAgICAgfSlcbiAgICAgICksXG4gICAgICBtYXAoKHsgaGVhZGVycyB9KSA9PiBoZWFkZXJzKVxuICAgIClcbiAgKTtcblxuICBwdWJsaWMgc3RhZ2UgPSBjb21wdXRlZCgoKSA9PiB0aGlzLmhlYWRlcnMoKT8uZ2V0KCdzdGFnZScpKTtcbiAgcHVibGljIG1heFN0YWdlID0gY29tcHV0ZWQoKCkgPT4gdGhpcy5oZWFkZXJzKCk/LmdldCgnbWF4c3RhZ2UnKSB8fCB0aGlzLmRlZmF1bHRNYXhTdGFnZSgpKTtcbiAgcHVibGljIGluUHJvZ3Jlc3MgPSBjb21wdXRlZCgoKSA9PiB0aGlzLnN0YWdlKCkgJiYgdGhpcy5zdGFnZSgpICE9PSB0aGlzLm1heFN0YWdlKCkpO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgbm9kZVNlcnZpY2U6IEhlTm9kZVNlcnZpY2UpIHt9XG59XG4iLCI8bmctY29udGFpbmVyICpuZ0lmPVwiaW5Qcm9ncmVzcygpXCI+XG4gIDxzcGFuIGNsYXNzPVwidGFnIGlzLXdhcm5pbmdcIj5cbiAgICA8c3Bhbj5DYWxjdWxhdGlvbiBpbiBwcm9ncmVzcyAoc3RhZ2Uge3sgc3RhZ2UoKSB9fSBvdXQgb2Yge3sgbWF4U3RhZ2UoKSB9fSk8L3NwYW4+XG4gIDwvc3Bhbj5cbjwvbmctY29udGFpbmVyPlxuIl19
41
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW5naW5lLW1vZGVscy1zdGFnZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvZW5naW5lL2VuZ2luZS1tb2RlbHMtc3RhZ2UvZW5naW5lLW1vZGVscy1zdGFnZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9zcmMvZW5naW5lL2VuZ2luZS1tb2RlbHMtc3RhZ2UvZW5naW5lLW1vZGVscy1zdGFnZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBa0IsUUFBUSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM1RyxPQUFPLEVBQVUsUUFBUSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDeEQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQzlDLE9BQU8sRUFBRSxZQUFZLEVBQUUsUUFBUSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDcEUsT0FBTyxFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUUsUUFBUSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7QUFJdkQsd0JBQXdCO0FBQ3hCLE1BQU0sQ0FBQyxNQUFNLFNBQVMsR0FBRztJQUN2QixDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO0lBQ25CLENBQUMsUUFBUSxDQUFDLGdCQUFnQixDQUFDLEVBQUUsQ0FBQztJQUM5QixDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDO0NBQ25CLENBQUM7QUFRRixNQUFNLE9BQU8sMEJBQTBCO0lBR3JDLElBQWEsSUFBSSxDQUFDLEtBQXVCO1FBQ3ZDLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3hCLENBQUM7SUFxQkQsWUFBb0IsV0FBMEI7UUFBMUIsZ0JBQVcsR0FBWCxXQUFXLENBQWU7UUF6QnRDLFVBQUssR0FBNEMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBTTlELG9CQUFlLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ25FLFVBQUssR0FBRyxZQUFZLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ2pDLFlBQU8sR0FBRyxRQUFRLENBQ3hCLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUNiLE1BQU0sQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsRUFDdEIsUUFBUSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQ2QsSUFBSSxDQUFDLFdBQVcsQ0FBQyxlQUFlLENBQUM7WUFDL0IsR0FBRyxJQUFJO1lBQ1AsU0FBUyxFQUFFLFNBQVMsQ0FBQyxZQUFZO1NBQ2xDLENBQUMsQ0FDSCxFQUNELEdBQUcsQ0FBQyxDQUFDLEVBQUUsT0FBTyxFQUFFLEVBQUUsRUFBRSxDQUFDLE9BQU8sQ0FBQyxDQUM5QixDQUNGLENBQUM7UUFFSyxVQUFLLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxFQUFFLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDO1FBQ3RELGFBQVEsR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLEVBQUUsR0FBRyxDQUFDLFVBQVUsQ0FBQyxJQUFJLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQyxDQUFDO1FBQ3RGLGVBQVUsR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxJQUFJLElBQUksQ0FBQyxLQUFLLEVBQUUsS0FBSyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQztJQUVwQyxDQUFDOzhHQTFCdkMsMEJBQTBCO2tHQUExQiwwQkFBMEIsd0ZDckJ2QyxnTUFLQTs7MkZEZ0JhLDBCQUEwQjtrQkFOdEMsU0FBUzsrQkFDRSx3QkFBd0IsbUJBR2pCLHVCQUF1QixDQUFDLE1BQU07b0dBS2xDLElBQUk7c0JBQWhCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBJbnB1dCwgV3JpdGFibGVTaWduYWwsIGNvbXB1dGVkLCBzaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEpTT05MRCwgTm9kZVR5cGUgfSBmcm9tICdAaGVzdGlhLWVhcnRoL3NjaGVtYSc7XG5pbXBvcnQgeyBEYXRhU3RhdGUgfSBmcm9tICdAaGVzdGlhLWVhcnRoL2FwaSc7XG5pbXBvcnQgeyB0b09ic2VydmFibGUsIHRvU2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xuaW1wb3J0IHsgZmlsdGVyLCBtYXAsIG1lcmdlTWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQgeyBIZU5vZGVTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vbm9kZSc7XG5cbi8vIFRPRE86IHJlbW92ZSBmYWxsYmFja1xuZXhwb3J0IGNvbnN0IE1BWF9TVEFHRSA9IHtcbiAgW05vZGVUeXBlLkN5Y2xlXTogMixcbiAgW05vZGVUeXBlLkltcGFjdEFzc2Vzc21lbnRdOiAxLFxuICBbTm9kZVR5cGUuU2l0ZV06IDJcbn07XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2hlLWVuZ2luZS1tb2RlbHMtc3RhZ2UnLFxuICB0ZW1wbGF0ZVVybDogJy4vZW5naW5lLW1vZGVscy1zdGFnZS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2VuZ2luZS1tb2RlbHMtc3RhZ2UuY29tcG9uZW50LnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgRW5naW5lTW9kZWxzU3RhZ2VDb21wb25lbnQge1xuICBwcml2YXRlIF9ub2RlOiBXcml0YWJsZVNpZ25hbDxKU09OTEQ8Tm9kZVR5cGU+IHwgbnVsbD4gPSBzaWduYWwobnVsbCk7XG5cbiAgQElucHV0KCkgc2V0IG5vZGUodmFsdWU6IEpTT05MRDxOb2RlVHlwZT4pIHtcbiAgICB0aGlzLl9ub2RlLnNldCh2YWx1ZSk7XG4gIH1cblxuICBwcml2YXRlIGRlZmF1bHRNYXhTdGFnZSA9IGNvbXB1dGVkKCgpID0+IE1BWF9TVEFHRVt0aGlzLl9ub2RlKClbJ0B0eXBlJ11dKTtcbiAgcHJpdmF0ZSBub2RlJCA9IHRvT2JzZXJ2YWJsZSh0aGlzLl9ub2RlKTtcbiAgcHJpdmF0ZSBoZWFkZXJzID0gdG9TaWduYWwoXG4gICAgdGhpcy5ub2RlJC5waXBlKFxuICAgICAgZmlsdGVyKG5vZGUgPT4gISFub2RlKSxcbiAgICAgIG1lcmdlTWFwKG5vZGUgPT5cbiAgICAgICAgdGhpcy5ub2RlU2VydmljZS5nZXRXaXRoSGVhZGVycyQoe1xuICAgICAgICAgIC4uLm5vZGUsXG4gICAgICAgICAgZGF0YVN0YXRlOiBEYXRhU3RhdGUucmVjYWxjdWxhdGVkXG4gICAgICAgIH0pXG4gICAgICApLFxuICAgICAgbWFwKCh7IGhlYWRlcnMgfSkgPT4gaGVhZGVycylcbiAgICApXG4gICk7XG5cbiAgcHVibGljIHN0YWdlID0gY29tcHV0ZWQoKCkgPT4gK3RoaXMuaGVhZGVycygpPy5nZXQoJ3N0YWdlJykpO1xuICBwdWJsaWMgbWF4U3RhZ2UgPSBjb21wdXRlZCgoKSA9PiArdGhpcy5oZWFkZXJzKCk/LmdldCgnbWF4c3RhZ2UnKSB8fCB0aGlzLmRlZmF1bHRNYXhTdGFnZSgpKTtcbiAgcHVibGljIGluUHJvZ3Jlc3MgPSBjb21wdXRlZCgoKSA9PiB0aGlzLnN0YWdlKCkgJiYgdGhpcy5zdGFnZSgpICE9PSB0aGlzLm1heFN0YWdlKCkpO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgbm9kZVNlcnZpY2U6IEhlTm9kZVNlcnZpY2UpIHt9XG59XG4iLCI8bmctY29udGFpbmVyICpuZ0lmPVwiaW5Qcm9ncmVzcygpXCI+XG4gIDxzcGFuIGNsYXNzPVwidGFnIGlzLXdhcm5pbmdcIj5cbiAgICA8c3Bhbj5DYWxjdWxhdGlvbiBpbiBwcm9ncmVzcyAoc3RhZ2Uge3sgc3RhZ2UoKSB9fSBvdXQgb2Yge3sgbWF4U3RhZ2UoKSB9fSk8L3NwYW4+XG4gIDwvc3Bhbj5cbjwvbmctY29udGFpbmVyPlxuIl19
@@ -128,7 +128,7 @@ export class EngineOrchestratorEditComponent {
128
128
  });
129
129
  }
130
130
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: EngineOrchestratorEditComponent, deps: [{ token: i1.HeEngineService }, { token: i2.HeSearchService }], target: i0.ɵɵFactoryTarget.Component }); }
131
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.8", type: EngineOrchestratorEditComponent, selector: "he-engine-orchestrator-edit", inputs: { config: "config", nodeType: "nodeType" }, usesOnChanges: true, ngImport: i0, template: "<p>\n <i>\n The configuration below is a preview of the\n <a [href]=\"configUrl\" target=\"_blank\">JSON configuration file</a>\n used for the orchestration of the Hestia's calculations.\n </i>\n</p>\n<p>\n <i>Note: not all models might be represented accurately.</i>\n</p>\n\n<div class=\"is-size-7 is-italic\">\n <div class=\"columns is-mobile is-multiline is-vcentered is-variable is-1 my-0\">\n <div class=\"column\">\n <div class=\"pl-3 model-parallel my-3\">\n <span>Models running in parallel</span>\n </div>\n </div>\n\n <div class=\"column is-narrow has-text-right\">\n <div\n class=\"dropdown is-right has-text-left is-dropdown-filters\"\n [class.is-active]=\"showConfig\"\n (clickOutside)=\"showConfig = false\">\n <div class=\"dropdown-trigger\" (click)=\"showConfig = !showConfig\">\n <button\n class=\"button is-ghost\"\n [class.is-active]=\"showConfig\"\n aria-haspopup=\"true\"\n aria-controls=\"option-menu\"\n ngbTooltip=\"Filters\"\n placement=\"bottom\"\n container=\"body\"\n [disableTooltip]=\"showConfig\">\n <span class=\"icon is-small\">\n <fa-icon icon=\"cog\" aria-hidden=\"true\"></fa-icon>\n </span>\n </button>\n </div>\n <div class=\"dropdown-menu\" id=\"option-menu\" role=\"menu\">\n <div class=\"dropdown-content\">\n <div class=\"dropdown-item\">\n <div class=\"field\">\n <div class=\"control is-expanded has-icons-right\">\n <input\n type=\"text\"\n class=\"input search-input is-secondary is-small\"\n [(ngModel)]=\"search\"\n name=\"collection\"\n placeholder=\"Filter by key, name or model\"\n (input)=\"filterModels()\" />\n <a class=\"icon is-small is-right\" (click)=\"search = ''; filterModels()\">\n <fa-icon icon=\"times\"></fa-icon>\n </a>\n </div>\n </div>\n\n <div class=\"field is-relative\">\n <input\n type=\"checkbox\"\n class=\"switch is-small is-rounded is-secondary\"\n [(ngModel)]=\"showAdvanced\"\n id=\"showAdvanced\"\n (change)=\"filterModels()\" />\n <label class=\"is-size-7\" for=\"showAdvanced\">\n <span>Show advanced data</span>\n </label>\n </div>\n\n <div class=\"field is-relative\">\n <input\n type=\"checkbox\"\n class=\"switch is-small is-rounded is-secondary\"\n [(ngModel)]=\"onlyGapFilled\"\n id=\"onlyGapFilled\"\n (change)=\"filterModels()\" />\n <label class=\"is-size-7\" for=\"onlyGapFilled\">\n <span>Show only gap-filled data</span>\n </label>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n\n <div class=\"column is-narrow has-text-right\">\n <div\n class=\"dropdown is-right has-text-left\"\n [class.is-active]=\"showDisplayBy\"\n (clickOutside)=\"showDisplayBy = false\">\n <div class=\"dropdown-trigger\" (click)=\"showDisplayBy = !showDisplayBy\">\n <button\n class=\"button is-ghost\"\n aria-haspopup=\"true\"\n aria-controls=\"display-menu\"\n ngbTooltip=\"Display options\"\n placement=\"bottom\"\n container=\"body\"\n [disableTooltip]=\"showDisplayBy\">\n <ng-container [ngSwitch]=\"displayBy\">\n <ng-container *ngSwitchCase=\"'list'\">\n <span class=\"icon is-small\">\n <fa-icon icon=\"list\" aria-hidden=\"true\"></fa-icon>\n </span>\n </ng-container>\n <ng-container *ngSwitchCase=\"'type'\">\n <span class=\"icon is-small\">\n <fa-icon icon=\"table\" aria-hidden=\"true\"></fa-icon>\n </span>\n </ng-container>\n </ng-container>\n </button>\n </div>\n <div class=\"dropdown-menu\" id=\"display-menu\" role=\"menu\">\n <div class=\"dropdown-content\" (click)=\"showDisplayBy = false\">\n <a class=\"dropdown-item\" [class.is-selected]=\"displayBy === 'list'\" (click)=\"displayBy = 'list'\">\n <fa-icon icon=\"list\" aria-hidden=\"true\"></fa-icon>\n <span class=\"pl-2\">Display by Priority</span>\n </a>\n <a class=\"dropdown-item\" [class.is-selected]=\"displayBy === 'type'\" (click)=\"displayBy = 'type'\">\n <fa-icon icon=\"table\" aria-hidden=\"true\"></fa-icon>\n <span class=\"pl-2\">Display by Type</span>\n </a>\n </div>\n </div>\n </div>\n </div>\n </div>\n</div>\n\n<ng-container *ngIf=\"displayBy === 'list' && models\">\n <div class=\"pl-3\">\n <ng-container *ngTemplateOutlet=\"modelList; context: { $implicit: models }\"></ng-container>\n </div>\n</ng-container>\n\n<ng-container *ngIf=\"displayBy === 'type' && groupedModels\">\n <div class=\"tabs\">\n <ul>\n <li\n *ngFor=\"let group of groupedModels | keys; trackBy: trackByKey\"\n [class.is-active]=\"selectedGroupedKey === group.key\">\n <a (click)=\"selectedGroupedKey = group.key\">\n <span class=\"pl-2\">{{ group.key }} ({{ group.value.length }})</span>\n </a>\n </li>\n </ul>\n </div>\n\n <div class=\"pl-3\">\n <ng-container\n *ngTemplateOutlet=\"modelList; context: { $implicit: groupedModels[selectedGroupedKey] }\"></ng-container>\n </div>\n</ng-container>\n\n<ng-template #termLink let-value>\n <ng-template #defaultLabel>\n <span>{{ value | keyToLabel }}</span>\n </ng-template>\n\n <ng-container *ngIf=\"termsById[value]; else defaultLabel\">\n <he-node-link [node]=\"termsById[value]\" [showExternalLink]=\"true\">\n <span>{{ termsById[value].name }}</span>\n </he-node-link>\n </ng-container>\n</ng-template>\n\n<ng-template #modelList let-data>\n <div *ngFor=\"let v of data\">\n <ng-container *ngTemplateOutlet=\"model; context: { $implicit: v }\"></ng-container>\n </div>\n</ng-template>\n\n<ng-template #model let-data>\n <ng-container *ngIf=\"isArray(data) && data.length\">\n <div class=\"pl-3 model-parallel\">\n <ng-container *ngTemplateOutlet=\"modelList; context: { $implicit: data }\"></ng-container>\n </div>\n\n <hr />\n </ng-container>\n <ng-container *ngIf=\"!isArray(data)\">\n <div class=\"card mb-2 model-serie is-size-6\">\n <div class=\"card-content p-3\">\n <span class=\"is-capitalized\">{{ data.key | keyToLabel }}</span>\n :\n <ng-template #defaultView>\n <span class=\"default-value\">{{ data.value }}</span>\n\n <p>\n <span class=\"pr-1\">Model:</span>\n <span class=\"pr-2\">\n <ng-container *ngTemplateOutlet=\"termLink; context: { $implicit: data.model }\"></ng-container>\n </span>\n </p>\n </ng-template>\n\n <ng-template #modelFromPathLink>\n <ng-container *ngIf=\"modelPathLink$(data) | async as link; else defaultView\">\n <ng-container\n *ngTemplateOutlet=\"modelPathLink; context: { model: data.model, value: data.value, link }\"></ng-container>\n </ng-container>\n </ng-template>\n\n <ng-container *ngIf=\"modelLink$(data) | async as link; else modelFromPathLink\">\n <ng-container\n *ngTemplateOutlet=\"modelLink; context: { model: data.model, value: data.value, link }\"></ng-container>\n </ng-container>\n\n <div *ngIf=\"showAdvanced\">\n <div *ngIf=\"data.runStrategy\">\n <span class=\"pr-1\">Run strategy:</span>\n <ng-container\n *ngTemplateOutlet=\"strategiesLink; context: { strategy: data.runStrategy, type: 'run' }\"></ng-container>\n\n <div class=\"pl-3 is-size-7\" *ngIf=\"data.runArgs\">\n <p><b>Run arguments:</b></p>\n <ng-container *ngTemplateOutlet=\"strategiesArgs; context: { $implicit: data.runArgs }\"></ng-container>\n </div>\n </div>\n <div *ngIf=\"data.mergeStrategy\">\n <span class=\"pr-1\">Merge strategy:</span>\n <ng-container\n *ngTemplateOutlet=\"\n strategiesLink;\n context: { strategy: data.mergeStrategy, type: 'merge' }\n \"></ng-container>\n\n <div class=\"pl-3 is-size-7\" *ngIf=\"data.mergeArgs\">\n <p><b>Merge arguments:</b></p>\n <ng-container *ngTemplateOutlet=\"strategiesArgs; context: { $implicit: data.mergeArgs }\"></ng-container>\n </div>\n </div>\n </div>\n </div>\n </div>\n </ng-container>\n</ng-template>\n\n<ng-template #modelLinkKey let-model=\"model\" let-link=\"link\">\n <a [href]=\"modelKeyUrl(link, model)\" target=\"_blank\">{{ modelKeyName(link.modelKey) }}</a>\n</ng-template>\n\n<ng-template #modelLink let-model=\"model\" let-link=\"link\" let-value=\"value\">\n <ng-container *ngIf=\"link.term\">\n <ng-container *ngTemplateOutlet=\"termLink; context: { $implicit: link.term }\"></ng-container>\n </ng-container>\n\n <span *ngIf=\"!link.term && !link?.modelKey\" class=\"default-value\">{{ value }}</span>\n\n <ng-container *ngIf=\"!link.term && link?.modelKey\">\n <ng-container *ngTemplateOutlet=\"modelLinkKey; context: { link, model }\"></ng-container>\n </ng-container>\n\n <p class=\"model-link\">\n <span class=\"pr-1\">Model:</span>\n <span class=\"pr-2\">\n <ng-container *ngTemplateOutlet=\"termLink; context: { $implicit: model }\"></ng-container>\n </span>\n\n <a class=\"is-size-7\" [href]=\"link.docPath\" target=\"_blank\">\n <span class=\"pr-1\">(View Docs)</span>\n <fa-icon icon=\"external-link-alt\"></fa-icon>\n </a>\n </p>\n</ng-template>\n\n<ng-template #modelPathLink let-model=\"model\" let-link=\"link\" let-value=\"value\">\n <span *ngIf=\"!link?.modelKey\" class=\"default-value\">{{ value }}</span>\n\n <ng-container *ngIf=\"link?.modelKey\">\n <ng-container *ngTemplateOutlet=\"modelLinkKey; context: { link, model }\"></ng-container>\n </ng-container>\n\n <p class=\"model-path-link\">\n <span class=\"pr-1\">Model:</span>\n <span class=\"pr-2\">\n <ng-container *ngTemplateOutlet=\"termLink; context: { $implicit: model }\"></ng-container>\n </span>\n\n <a class=\"is-size-7\" [href]=\"link.docPath\" target=\"_blank\">\n <span class=\"pr-1\">(View Docs)</span>\n <fa-icon icon=\"external-link-alt\"></fa-icon>\n </a>\n </p>\n</ng-template>\n\n<ng-template #strategiesLink let-strategy=\"strategy\" let-type=\"type\">\n <span class=\"pr-2 is-inline-block\">\n <code>{{ strategy }}</code>\n </span>\n\n <a\n class=\"is-size-7\"\n [href]=\"strategiesDocs + '/' + type + '/' + (type === 'merge' ? 'merge_' : '') + strategy + '.md'\"\n target=\"_blank\">\n <span class=\"pr-1\">(View Docs)</span>\n <fa-icon icon=\"external-link-alt\"></fa-icon>\n </a>\n</ng-template>\n\n<ng-template #strategiesArgs let-args>\n <div class=\"pl-2\">\n <p *ngFor=\"let arg of args | keys\">\n <span class=\"has-text-underline\">{{ arg.key }}</span>\n :\n <code>{{ arg.value | json }}</code>\n </p>\n </div>\n</ng-template>\n", styles: [":host{display:block}.model-parallel{border-left:3px solid #4a4a4a}.dropdown.is-dropdown-filters .dropdown-content{min-width:250px}\n"], dependencies: [{ kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i3.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i3.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i4.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: i4.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i5.NgbTooltip, selector: "[ngbTooltip]", inputs: ["animation", "autoClose", "placement", "popperOptions", "triggers", "positionTarget", "container", "disableTooltip", "tooltipClass", "tooltipContext", "openDelay", "closeDelay", "ngbTooltip"], outputs: ["shown", "hidden"], exportAs: ["ngbTooltip"] }, { kind: "component", type: i6.FaIconComponent, selector: "fa-icon", inputs: ["icon", "title", "animation", "spin", "pulse", "mask", "styles", "flip", "size", "pull", "border", "inverse", "symbol", "rotate", "fixedWidth", "classes", "transform", "a11yRole"] }, { kind: "directive", type: i7.ClickOutsideDirective, selector: "[clickOutside]", outputs: ["clickOutside"] }, { kind: "component", type: i8.NodeLinkComponent, selector: "he-node-link", inputs: ["node", "showExternalLink", "linkClass"] }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }, { kind: "pipe", type: i3.JsonPipe, name: "json" }, { kind: "pipe", type: i9.KeysPipe, name: "keys" }, { kind: "pipe", type: i10.KeyToLabelPipe, name: "keyToLabel" }] }); }
131
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.8", type: EngineOrchestratorEditComponent, selector: "he-engine-orchestrator-edit", inputs: { config: "config", nodeType: "nodeType" }, usesOnChanges: true, ngImport: i0, template: "<p>\n <i>\n The configuration below is a preview of the\n <a [href]=\"configUrl\" target=\"_blank\">JSON configuration file</a>\n used for the orchestration of the Hestia's calculations.\n </i>\n</p>\n<p>\n <i>Note: not all models might be represented accurately.</i>\n</p>\n\n<div class=\"is-size-7 is-italic\">\n <div class=\"columns is-mobile is-multiline is-vcentered is-variable is-1 my-0\">\n <div class=\"column\">\n <div class=\"pl-3 model-parallel my-3\">\n <span>Models running in parallel</span>\n </div>\n </div>\n\n <div class=\"column is-narrow has-text-right\">\n <div\n class=\"dropdown is-right has-text-left is-dropdown-filters\"\n [class.is-active]=\"showConfig\"\n (clickOutside)=\"showConfig = false\">\n <div class=\"dropdown-trigger\" (click)=\"showConfig = !showConfig\">\n <button\n class=\"button is-ghost\"\n [class.is-active]=\"showConfig\"\n aria-haspopup=\"true\"\n aria-controls=\"option-menu\"\n ngbTooltip=\"Filters\"\n placement=\"bottom\"\n container=\"body\"\n [disableTooltip]=\"showConfig\">\n <span class=\"icon is-small\">\n <fa-icon icon=\"cog\" aria-hidden=\"true\"></fa-icon>\n </span>\n </button>\n </div>\n <div class=\"dropdown-menu\" id=\"option-menu\" role=\"menu\">\n <div class=\"dropdown-content\">\n <div class=\"dropdown-item\">\n <div class=\"field\">\n <div class=\"control is-expanded has-icons-right\">\n <input\n type=\"text\"\n class=\"input search-input is-secondary is-small\"\n [(ngModel)]=\"search\"\n name=\"collection\"\n placeholder=\"Filter by key, name or model\"\n (input)=\"filterModels()\" />\n <a class=\"icon is-small is-right\" (click)=\"search = ''; filterModels()\">\n <fa-icon icon=\"times\"></fa-icon>\n </a>\n </div>\n </div>\n\n <div class=\"field is-relative\">\n <input\n type=\"checkbox\"\n class=\"switch is-small is-rounded is-secondary\"\n [(ngModel)]=\"showAdvanced\"\n id=\"showAdvanced\"\n (change)=\"filterModels()\" />\n <label class=\"is-size-7\" for=\"showAdvanced\">\n <span>Show advanced data</span>\n </label>\n </div>\n\n <div class=\"field is-relative\">\n <input\n type=\"checkbox\"\n class=\"switch is-small is-rounded is-secondary\"\n [(ngModel)]=\"onlyGapFilled\"\n id=\"onlyGapFilled\"\n (change)=\"filterModels()\" />\n <label class=\"is-size-7\" for=\"onlyGapFilled\">\n <span>Show only gap-filled data</span>\n </label>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n\n <div class=\"column is-narrow has-text-right\">\n <div\n class=\"dropdown is-right has-text-left\"\n [class.is-active]=\"showDisplayBy\"\n (clickOutside)=\"showDisplayBy = false\">\n <div class=\"dropdown-trigger\" (click)=\"showDisplayBy = !showDisplayBy\">\n <button\n class=\"button is-ghost\"\n aria-haspopup=\"true\"\n aria-controls=\"display-menu\"\n ngbTooltip=\"Display options\"\n placement=\"bottom\"\n container=\"body\"\n [disableTooltip]=\"showDisplayBy\">\n <ng-container [ngSwitch]=\"displayBy\">\n <ng-container *ngSwitchCase=\"'list'\">\n <span class=\"icon is-small\">\n <fa-icon icon=\"list\" aria-hidden=\"true\"></fa-icon>\n </span>\n </ng-container>\n <ng-container *ngSwitchCase=\"'type'\">\n <span class=\"icon is-small\">\n <fa-icon icon=\"table\" aria-hidden=\"true\"></fa-icon>\n </span>\n </ng-container>\n </ng-container>\n </button>\n </div>\n <div class=\"dropdown-menu\" id=\"display-menu\" role=\"menu\">\n <div class=\"dropdown-content\" (click)=\"showDisplayBy = false\">\n <a class=\"dropdown-item\" [class.is-selected]=\"displayBy === 'list'\" (click)=\"displayBy = 'list'\">\n <fa-icon icon=\"list\" aria-hidden=\"true\"></fa-icon>\n <span class=\"pl-2\">Display by Priority</span>\n </a>\n <a class=\"dropdown-item\" [class.is-selected]=\"displayBy === 'type'\" (click)=\"displayBy = 'type'\">\n <fa-icon icon=\"table\" aria-hidden=\"true\"></fa-icon>\n <span class=\"pl-2\">Display by Type</span>\n </a>\n </div>\n </div>\n </div>\n </div>\n </div>\n</div>\n\n<ng-container *ngIf=\"displayBy === 'list' && models\">\n <div class=\"pl-3\">\n <ng-container *ngTemplateOutlet=\"modelList; context: { $implicit: models }\"></ng-container>\n </div>\n</ng-container>\n\n<ng-container *ngIf=\"displayBy === 'type' && groupedModels\">\n <div class=\"tabs\">\n <ul>\n <li\n *ngFor=\"let group of groupedModels | keys; trackBy: trackByKey\"\n [class.is-active]=\"selectedGroupedKey === group.key\">\n <a (click)=\"selectedGroupedKey = group.key\">\n <span class=\"pl-2\">{{ group.key }} ({{ group.value.length }})</span>\n </a>\n </li>\n </ul>\n </div>\n\n <div class=\"pl-3\">\n <ng-container\n *ngTemplateOutlet=\"modelList; context: { $implicit: groupedModels[selectedGroupedKey] }\"></ng-container>\n </div>\n</ng-container>\n\n<ng-template #termLink let-value>\n <ng-template #defaultLabel>\n <span>{{ value | keyToLabel }}</span>\n </ng-template>\n\n <ng-container *ngIf=\"termsById[value]; else defaultLabel\">\n <he-node-link [node]=\"termsById[value]\" [showExternalLink]=\"true\">\n <span>{{ termsById[value].name }}</span>\n </he-node-link>\n </ng-container>\n</ng-template>\n\n<ng-template #modelList let-data>\n <div *ngFor=\"let v of data\">\n <ng-container *ngTemplateOutlet=\"model; context: { $implicit: v }\"></ng-container>\n </div>\n</ng-template>\n\n<ng-template #model let-data>\n <ng-container *ngIf=\"isArray(data) && data.length\">\n <div class=\"pl-3 model-parallel\">\n <ng-container *ngTemplateOutlet=\"modelList; context: { $implicit: data }\"></ng-container>\n </div>\n\n <hr />\n </ng-container>\n <ng-container *ngIf=\"!isArray(data)\">\n <div class=\"card mb-2 model-serie is-size-6\">\n <div class=\"card-content p-3\">\n <span class=\"is-capitalized\">{{ data.key | keyToLabel }}</span>\n :\n <ng-template #defaultView>\n <span class=\"default-value\">{{ data.value }}</span>\n\n <p>\n <span class=\"pr-1\">Model:</span>\n <span class=\"pr-2\">\n <ng-container *ngTemplateOutlet=\"termLink; context: { $implicit: data.model }\"></ng-container>\n </span>\n </p>\n </ng-template>\n\n <ng-template #modelFromPathLink>\n <ng-container *ngIf=\"modelPathLink$(data) | async as link; else defaultView\">\n <ng-container\n *ngTemplateOutlet=\"modelPathLink; context: { model: data.model, value: data.value, link }\"></ng-container>\n </ng-container>\n </ng-template>\n\n <ng-container *ngIf=\"modelLink$(data) | async as link; else modelFromPathLink\">\n <ng-container\n *ngTemplateOutlet=\"modelLink; context: { model: data.model, value: data.value, link }\"></ng-container>\n </ng-container>\n\n <div *ngIf=\"showAdvanced\">\n <div *ngIf=\"data.runStrategy\">\n <span class=\"pr-1\">Run strategy:</span>\n <ng-container\n *ngTemplateOutlet=\"strategiesLink; context: { strategy: data.runStrategy, type: 'run' }\"></ng-container>\n\n <div class=\"pl-3 is-size-7\" *ngIf=\"data.runArgs\">\n <p><b>Run arguments:</b></p>\n <ng-container *ngTemplateOutlet=\"strategiesArgs; context: { $implicit: data.runArgs }\"></ng-container>\n </div>\n </div>\n <div *ngIf=\"data.mergeStrategy\">\n <span class=\"pr-1\">Merge strategy:</span>\n <ng-container\n *ngTemplateOutlet=\"\n strategiesLink;\n context: { strategy: data.mergeStrategy, type: 'merge' }\n \"></ng-container>\n\n <div class=\"pl-3 is-size-7\" *ngIf=\"data.mergeArgs\">\n <p><b>Merge arguments:</b></p>\n <ng-container *ngTemplateOutlet=\"strategiesArgs; context: { $implicit: data.mergeArgs }\"></ng-container>\n </div>\n </div>\n </div>\n </div>\n </div>\n </ng-container>\n</ng-template>\n\n<ng-template #modelLinkKey let-model=\"model\" let-link=\"link\">\n <a [href]=\"modelKeyUrl(link, model)\" target=\"_blank\">{{ modelKeyName(link.modelKey) }}</a>\n</ng-template>\n\n<ng-template #modelLink let-model=\"model\" let-link=\"link\" let-value=\"value\">\n <ng-container *ngIf=\"link.term\">\n <ng-container *ngTemplateOutlet=\"termLink; context: { $implicit: link.term }\"></ng-container>\n </ng-container>\n\n <span *ngIf=\"!link.term && !link?.modelKey\" class=\"default-value\">{{ value }}</span>\n\n <ng-container *ngIf=\"!link.term && link?.modelKey\">\n <ng-container *ngTemplateOutlet=\"modelLinkKey; context: { link, model }\"></ng-container>\n </ng-container>\n\n <p class=\"model-link\">\n <span class=\"pr-1\">Model:</span>\n <span class=\"pr-2\">\n <ng-container *ngTemplateOutlet=\"termLink; context: { $implicit: model }\"></ng-container>\n </span>\n\n <a class=\"is-size-7\" [href]=\"link.docPath\" target=\"_blank\">\n <span class=\"pr-1\">(View Docs)</span>\n <fa-icon icon=\"external-link-alt\"></fa-icon>\n </a>\n </p>\n</ng-template>\n\n<ng-template #modelPathLink let-model=\"model\" let-link=\"link\" let-value=\"value\">\n <span *ngIf=\"!link?.modelKey\" class=\"default-value\">{{ value }}</span>\n\n <ng-container *ngIf=\"link?.modelKey\">\n <ng-container *ngTemplateOutlet=\"modelLinkKey; context: { link, model }\"></ng-container>\n </ng-container>\n\n <p class=\"model-path-link\">\n <span class=\"pr-1\">Model:</span>\n <span class=\"pr-2\">\n <ng-container *ngTemplateOutlet=\"termLink; context: { $implicit: model }\"></ng-container>\n </span>\n\n <a class=\"is-size-7\" [href]=\"link.docPath\" target=\"_blank\">\n <span class=\"pr-1\">(View Docs)</span>\n <fa-icon icon=\"external-link-alt\"></fa-icon>\n </a>\n </p>\n</ng-template>\n\n<ng-template #strategiesLink let-strategy=\"strategy\" let-type=\"type\">\n <span class=\"pr-2 is-inline-block\">\n <code>{{ strategy }}</code>\n </span>\n\n <a\n class=\"is-size-7\"\n [href]=\"strategiesDocs + '/' + type + '/' + (type === 'merge' ? 'merge_' : '') + strategy + '.md'\"\n target=\"_blank\">\n <span class=\"pr-1\">(View Docs)</span>\n <fa-icon icon=\"external-link-alt\"></fa-icon>\n </a>\n</ng-template>\n\n<ng-template #strategiesArgs let-args>\n <div class=\"pl-2\">\n <p *ngFor=\"let arg of args | keys\">\n <span class=\"has-text-underline\">{{ arg.key }}</span>\n :\n <code>{{ arg.value | json }}</code>\n </p>\n </div>\n</ng-template>\n", styles: [":host{display:block}.model-parallel{border-left:3px solid #4a4a4a}.dropdown.is-dropdown-filters .dropdown-content{min-width:250px}\n"], dependencies: [{ kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i3.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i3.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i4.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: i4.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i5.NgbTooltip, selector: "[ngbTooltip]", inputs: ["animation", "autoClose", "placement", "popperOptions", "triggers", "positionTarget", "container", "disableTooltip", "tooltipClass", "tooltipContext", "openDelay", "closeDelay", "ngbTooltip"], outputs: ["shown", "hidden"], exportAs: ["ngbTooltip"] }, { kind: "component", type: i6.FaIconComponent, selector: "fa-icon", inputs: ["icon", "title", "animation", "spin", "pulse", "mask", "styles", "flip", "size", "pull", "border", "inverse", "symbol", "rotate", "fixedWidth", "classes", "transform", "a11yRole"] }, { kind: "directive", type: i7.ClickOutsideDirective, selector: "[clickOutside]", inputs: ["clickOutsideListenAfter"], outputs: ["clickOutside"] }, { kind: "component", type: i8.NodeLinkComponent, selector: "he-node-link", inputs: ["node", "showExternalLink", "linkClass"] }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }, { kind: "pipe", type: i3.JsonPipe, name: "json" }, { kind: "pipe", type: i9.KeysPipe, name: "keys" }, { kind: "pipe", type: i10.KeyToLabelPipe, name: "keyToLabel" }] }); }
132
132
  }
133
133
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: EngineOrchestratorEditComponent, decorators: [{
134
134
  type: Component,
@@ -2,7 +2,7 @@ import { NgModule } from '@angular/core';
2
2
  import { CommonModule } from '@angular/common';
3
3
  import { FontAwesomeModule } from '@fortawesome/angular-fontawesome';
4
4
  import { faCircle as farCircle, faClone as farClone, faIdBadge as farIdBadge } from '@fortawesome/free-regular-svg-icons';
5
- import { faAngleDoubleLeft, faAngleDoubleRight, faAngleDown, faAngleLeft, faAngleRight, faArrowUpRightFromSquare, faBookOpen, faBuilding, faCalculator, faCaretDown, faChartBar, faCheck, faCheckCircle, faCircle, faClipboard, faClipboardList, faClone, faCog, faComments, faCopy, faDotCircle, faDownload, faDrawPolygon, faEdit, faEllipsisV, faExclamationTriangle, faExternalLinkAlt, faFilter, faInfoCircle, faLink, faList, faListAlt, faLongArrowAltDown, faLongArrowAltLeft, faLongArrowAltRight, faLongArrowAltUp, faMap, faMapMarked, faMapMarkedAlt, faMinus, faPlus, faPlusCircle, faQuestionCircle, faSearch, faSeedling, faSortAmountUpAlt, faSpellCheck, faSpinner, faSquareArrowUpRight, faTable, faTimes, faTimesCircle, faUser } from '@fortawesome/free-solid-svg-icons';
5
+ import { faAngleDoubleLeft, faAngleDoubleRight, faAngleDown, faAngleLeft, faAngleRight, faArrowUpRightFromSquare, faBookOpen, faBuilding, faCalculator, faCaretDown, faCaretRight, faChartBar, faCheck, faCheckCircle, faCircle, faClipboard, faClipboardList, faClone, faCog, faComments, faCopy, faDotCircle, faDownload, faDrawPolygon, faEdit, faEllipsisV, faExclamationTriangle, faExternalLinkAlt, faFilter, faInfoCircle, faLink, faList, faListAlt, faLongArrowAltDown, faLongArrowAltLeft, faLongArrowAltRight, faLongArrowAltUp, faMap, faMapMarked, faMapMarkedAlt, faMinus, faPlus, faPlusCircle, faQuestionCircle, faSearch, faSeedling, faSortAmountUpAlt, faSpellCheck, faSpinner, faSquareArrowUpRight, faTable, faTimes, faTimesCircle, faUser } from '@fortawesome/free-solid-svg-icons';
6
6
  import * as i0 from "@angular/core";
7
7
  import * as i1 from "@fortawesome/angular-fontawesome";
8
8
  export class HeFontawesomeModule {
@@ -11,7 +11,7 @@ export class HeFontawesomeModule {
11
11
  // free-regular
12
12
  farClone, farCircle, farIdBadge,
13
13
  // free-solid
14
- faAngleDoubleLeft, faAngleDoubleRight, faAngleDown, faAngleLeft, faAngleRight, faBookOpen, faBuilding, faCalculator, faChartBar, faCheck, faCheckCircle, faCircle, faClipboard, faClipboardList, faClone, faCog, faCaretDown, faComments, faDownload, faDotCircle, faDrawPolygon, faEdit, faEllipsisV, faExclamationTriangle, faExternalLinkAlt, faFilter, faInfoCircle, faLink, faList, faListAlt, faLongArrowAltDown, faLongArrowAltUp, faLongArrowAltLeft, faLongArrowAltRight, faMap, faMapMarked, faMapMarkedAlt, faMinus, faPlus, faPlusCircle, faQuestionCircle, faSearch, faSeedling, faSortAmountUpAlt, faSpellCheck, faSpinner, faTable, faTimes, faTimesCircle, faUser, faCopy, faSquareArrowUpRight, faArrowUpRightFromSquare);
14
+ faAngleDoubleLeft, faAngleDoubleRight, faAngleDown, faAngleLeft, faAngleRight, faBookOpen, faBuilding, faCalculator, faChartBar, faCheck, faCheckCircle, faCircle, faClipboard, faClipboardList, faClone, faCog, faCaretDown, faCaretRight, faComments, faDownload, faDotCircle, faDrawPolygon, faEdit, faEllipsisV, faExclamationTriangle, faExternalLinkAlt, faFilter, faInfoCircle, faLink, faList, faListAlt, faLongArrowAltDown, faLongArrowAltUp, faLongArrowAltLeft, faLongArrowAltRight, faMap, faMapMarked, faMapMarkedAlt, faMinus, faPlus, faPlusCircle, faQuestionCircle, faSearch, faSeedling, faSortAmountUpAlt, faSpellCheck, faSpinner, faTable, faTimes, faTimesCircle, faUser, faCopy, faSquareArrowUpRight, faArrowUpRightFromSquare);
15
15
  }
16
16
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: HeFontawesomeModule, deps: [{ token: i1.FaIconLibrary }], target: i0.ɵɵFactoryTarget.NgModule }); }
17
17
  static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.1.8", ngImport: i0, type: HeFontawesomeModule, imports: [CommonModule, FontAwesomeModule], exports: [FontAwesomeModule] }); }
@@ -24,4 +24,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.8", ngImpor
24
24
  exports: [FontAwesomeModule]
25
25
  }]
26
26
  }], ctorParameters: function () { return [{ type: i1.FaIconLibrary }]; } });
27
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9udGF3ZXNvbWUubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2ZvbnRhd2Vzb21lL2ZvbnRhd2Vzb21lLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQWlCLGlCQUFpQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDcEYsT0FBTyxFQUNMLFFBQVEsSUFBSSxTQUFTLEVBQ3JCLE9BQU8sSUFBSSxRQUFRLEVBQ25CLFNBQVMsSUFBSSxVQUFVLEVBQ3hCLE1BQU0scUNBQXFDLENBQUM7QUFDN0MsT0FBTyxFQUNMLGlCQUFpQixFQUNqQixrQkFBa0IsRUFDbEIsV0FBVyxFQUNYLFdBQVcsRUFDWCxZQUFZLEVBQ1osd0JBQXdCLEVBQ3hCLFVBQVUsRUFDVixVQUFVLEVBQ1YsWUFBWSxFQUNaLFdBQVcsRUFDWCxVQUFVLEVBQ1YsT0FBTyxFQUNQLGFBQWEsRUFDYixRQUFRLEVBQ1IsV0FBVyxFQUNYLGVBQWUsRUFDZixPQUFPLEVBQ1AsS0FBSyxFQUNMLFVBQVUsRUFDVixNQUFNLEVBQ04sV0FBVyxFQUNYLFVBQVUsRUFDVixhQUFhLEVBQ2IsTUFBTSxFQUNOLFdBQVcsRUFDWCxxQkFBcUIsRUFDckIsaUJBQWlCLEVBQ2pCLFFBQVEsRUFDUixZQUFZLEVBQ1osTUFBTSxFQUNOLE1BQU0sRUFDTixTQUFTLEVBQ1Qsa0JBQWtCLEVBQ2xCLGtCQUFrQixFQUNsQixtQkFBbUIsRUFDbkIsZ0JBQWdCLEVBQ2hCLEtBQUssRUFDTCxXQUFXLEVBQ1gsY0FBYyxFQUNkLE9BQU8sRUFDUCxNQUFNLEVBQ04sWUFBWSxFQUNaLGdCQUFnQixFQUNoQixRQUFRLEVBQ1IsVUFBVSxFQUNWLGlCQUFpQixFQUNqQixZQUFZLEVBQ1osU0FBUyxFQUNULG9CQUFvQixFQUNwQixPQUFPLEVBQ1AsT0FBTyxFQUNQLGFBQWEsRUFDYixNQUFNLEVBQ1AsTUFBTSxtQ0FBbUMsQ0FBQzs7O0FBTTNDLE1BQU0sT0FBTyxtQkFBbUI7SUFDOUIsWUFBWSxPQUFzQjtRQUNoQyxPQUFPLENBQUMsUUFBUTtRQUNkLGVBQWU7UUFDZixRQUFRLEVBQ1IsU0FBUyxFQUNULFVBQVU7UUFDVixhQUFhO1FBQ2IsaUJBQWlCLEVBQ2pCLGtCQUFrQixFQUNsQixXQUFXLEVBQ1gsV0FBVyxFQUNYLFlBQVksRUFDWixVQUFVLEVBQ1YsVUFBVSxFQUNWLFlBQVksRUFDWixVQUFVLEVBQ1YsT0FBTyxFQUNQLGFBQWEsRUFDYixRQUFRLEVBQ1IsV0FBVyxFQUNYLGVBQWUsRUFDZixPQUFPLEVBQ1AsS0FBSyxFQUNMLFdBQVcsRUFDWCxVQUFVLEVBQ1YsVUFBVSxFQUNWLFdBQVcsRUFDWCxhQUFhLEVBQ2IsTUFBTSxFQUNOLFdBQVcsRUFDWCxxQkFBcUIsRUFDckIsaUJBQWlCLEVBQ2pCLFFBQVEsRUFDUixZQUFZLEVBQ1osTUFBTSxFQUNOLE1BQU0sRUFDTixTQUFTLEVBQ1Qsa0JBQWtCLEVBQ2xCLGdCQUFnQixFQUNoQixrQkFBa0IsRUFDbEIsbUJBQW1CLEVBQ25CLEtBQUssRUFDTCxXQUFXLEVBQ1gsY0FBYyxFQUNkLE9BQU8sRUFDUCxNQUFNLEVBQ04sWUFBWSxFQUNaLGdCQUFnQixFQUNoQixRQUFRLEVBQ1IsVUFBVSxFQUNWLGlCQUFpQixFQUNqQixZQUFZLEVBQ1osU0FBUyxFQUNULE9BQU8sRUFDUCxPQUFPLEVBQ1AsYUFBYSxFQUNiLE1BQU0sRUFDTixNQUFNLEVBQ04sb0JBQW9CLEVBQ3BCLHdCQUF3QixDQUN6QixDQUFDO0lBQ0osQ0FBQzs4R0E5RFUsbUJBQW1COytHQUFuQixtQkFBbUIsWUFIcEIsWUFBWSxFQUFFLGlCQUFpQixhQUMvQixpQkFBaUI7K0dBRWhCLG1CQUFtQixZQUhwQixZQUFZLEVBQUUsaUJBQWlCLEVBQy9CLGlCQUFpQjs7MkZBRWhCLG1CQUFtQjtrQkFKL0IsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUUsQ0FBQyxZQUFZLEVBQUUsaUJBQWlCLENBQUM7b0JBQzFDLE9BQU8sRUFBRSxDQUFDLGlCQUFpQixDQUFDO2lCQUM3QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgRmFJY29uTGlicmFyeSwgRm9udEF3ZXNvbWVNb2R1bGUgfSBmcm9tICdAZm9ydGF3ZXNvbWUvYW5ndWxhci1mb250YXdlc29tZSc7XG5pbXBvcnQge1xuICBmYUNpcmNsZSBhcyBmYXJDaXJjbGUsXG4gIGZhQ2xvbmUgYXMgZmFyQ2xvbmUsXG4gIGZhSWRCYWRnZSBhcyBmYXJJZEJhZGdlXG59IGZyb20gJ0Bmb3J0YXdlc29tZS9mcmVlLXJlZ3VsYXItc3ZnLWljb25zJztcbmltcG9ydCB7XG4gIGZhQW5nbGVEb3VibGVMZWZ0LFxuICBmYUFuZ2xlRG91YmxlUmlnaHQsXG4gIGZhQW5nbGVEb3duLFxuICBmYUFuZ2xlTGVmdCxcbiAgZmFBbmdsZVJpZ2h0LFxuICBmYUFycm93VXBSaWdodEZyb21TcXVhcmUsXG4gIGZhQm9va09wZW4sXG4gIGZhQnVpbGRpbmcsXG4gIGZhQ2FsY3VsYXRvcixcbiAgZmFDYXJldERvd24sXG4gIGZhQ2hhcnRCYXIsXG4gIGZhQ2hlY2ssXG4gIGZhQ2hlY2tDaXJjbGUsXG4gIGZhQ2lyY2xlLFxuICBmYUNsaXBib2FyZCxcbiAgZmFDbGlwYm9hcmRMaXN0LFxuICBmYUNsb25lLFxuICBmYUNvZyxcbiAgZmFDb21tZW50cyxcbiAgZmFDb3B5LFxuICBmYURvdENpcmNsZSxcbiAgZmFEb3dubG9hZCxcbiAgZmFEcmF3UG9seWdvbixcbiAgZmFFZGl0LFxuICBmYUVsbGlwc2lzVixcbiAgZmFFeGNsYW1hdGlvblRyaWFuZ2xlLFxuICBmYUV4dGVybmFsTGlua0FsdCxcbiAgZmFGaWx0ZXIsXG4gIGZhSW5mb0NpcmNsZSxcbiAgZmFMaW5rLFxuICBmYUxpc3QsXG4gIGZhTGlzdEFsdCxcbiAgZmFMb25nQXJyb3dBbHREb3duLFxuICBmYUxvbmdBcnJvd0FsdExlZnQsXG4gIGZhTG9uZ0Fycm93QWx0UmlnaHQsXG4gIGZhTG9uZ0Fycm93QWx0VXAsXG4gIGZhTWFwLFxuICBmYU1hcE1hcmtlZCxcbiAgZmFNYXBNYXJrZWRBbHQsXG4gIGZhTWludXMsXG4gIGZhUGx1cyxcbiAgZmFQbHVzQ2lyY2xlLFxuICBmYVF1ZXN0aW9uQ2lyY2xlLFxuICBmYVNlYXJjaCxcbiAgZmFTZWVkbGluZyxcbiAgZmFTb3J0QW1vdW50VXBBbHQsXG4gIGZhU3BlbGxDaGVjayxcbiAgZmFTcGlubmVyLFxuICBmYVNxdWFyZUFycm93VXBSaWdodCxcbiAgZmFUYWJsZSxcbiAgZmFUaW1lcyxcbiAgZmFUaW1lc0NpcmNsZSxcbiAgZmFVc2VyXG59IGZyb20gJ0Bmb3J0YXdlc29tZS9mcmVlLXNvbGlkLXN2Zy1pY29ucyc7XG5cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIEZvbnRBd2Vzb21lTW9kdWxlXSxcbiAgZXhwb3J0czogW0ZvbnRBd2Vzb21lTW9kdWxlXVxufSlcbmV4cG9ydCBjbGFzcyBIZUZvbnRhd2Vzb21lTW9kdWxlIHtcbiAgY29uc3RydWN0b3IobGlicmFyeTogRmFJY29uTGlicmFyeSkge1xuICAgIGxpYnJhcnkuYWRkSWNvbnMoXG4gICAgICAvLyBmcmVlLXJlZ3VsYXJcbiAgICAgIGZhckNsb25lLFxuICAgICAgZmFyQ2lyY2xlLFxuICAgICAgZmFySWRCYWRnZSxcbiAgICAgIC8vIGZyZWUtc29saWRcbiAgICAgIGZhQW5nbGVEb3VibGVMZWZ0LFxuICAgICAgZmFBbmdsZURvdWJsZVJpZ2h0LFxuICAgICAgZmFBbmdsZURvd24sXG4gICAgICBmYUFuZ2xlTGVmdCxcbiAgICAgIGZhQW5nbGVSaWdodCxcbiAgICAgIGZhQm9va09wZW4sXG4gICAgICBmYUJ1aWxkaW5nLFxuICAgICAgZmFDYWxjdWxhdG9yLFxuICAgICAgZmFDaGFydEJhcixcbiAgICAgIGZhQ2hlY2ssXG4gICAgICBmYUNoZWNrQ2lyY2xlLFxuICAgICAgZmFDaXJjbGUsXG4gICAgICBmYUNsaXBib2FyZCxcbiAgICAgIGZhQ2xpcGJvYXJkTGlzdCxcbiAgICAgIGZhQ2xvbmUsXG4gICAgICBmYUNvZyxcbiAgICAgIGZhQ2FyZXREb3duLFxuICAgICAgZmFDb21tZW50cyxcbiAgICAgIGZhRG93bmxvYWQsXG4gICAgICBmYURvdENpcmNsZSxcbiAgICAgIGZhRHJhd1BvbHlnb24sXG4gICAgICBmYUVkaXQsXG4gICAgICBmYUVsbGlwc2lzVixcbiAgICAgIGZhRXhjbGFtYXRpb25UcmlhbmdsZSxcbiAgICAgIGZhRXh0ZXJuYWxMaW5rQWx0LFxuICAgICAgZmFGaWx0ZXIsXG4gICAgICBmYUluZm9DaXJjbGUsXG4gICAgICBmYUxpbmssXG4gICAgICBmYUxpc3QsXG4gICAgICBmYUxpc3RBbHQsXG4gICAgICBmYUxvbmdBcnJvd0FsdERvd24sXG4gICAgICBmYUxvbmdBcnJvd0FsdFVwLFxuICAgICAgZmFMb25nQXJyb3dBbHRMZWZ0LFxuICAgICAgZmFMb25nQXJyb3dBbHRSaWdodCxcbiAgICAgIGZhTWFwLFxuICAgICAgZmFNYXBNYXJrZWQsXG4gICAgICBmYU1hcE1hcmtlZEFsdCxcbiAgICAgIGZhTWludXMsXG4gICAgICBmYVBsdXMsXG4gICAgICBmYVBsdXNDaXJjbGUsXG4gICAgICBmYVF1ZXN0aW9uQ2lyY2xlLFxuICAgICAgZmFTZWFyY2gsXG4gICAgICBmYVNlZWRsaW5nLFxuICAgICAgZmFTb3J0QW1vdW50VXBBbHQsXG4gICAgICBmYVNwZWxsQ2hlY2ssXG4gICAgICBmYVNwaW5uZXIsXG4gICAgICBmYVRhYmxlLFxuICAgICAgZmFUaW1lcyxcbiAgICAgIGZhVGltZXNDaXJjbGUsXG4gICAgICBmYVVzZXIsXG4gICAgICBmYUNvcHksXG4gICAgICBmYVNxdWFyZUFycm93VXBSaWdodCxcbiAgICAgIGZhQXJyb3dVcFJpZ2h0RnJvbVNxdWFyZVxuICAgICk7XG4gIH1cbn1cbiJdfQ==
27
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9udGF3ZXNvbWUubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2ZvbnRhd2Vzb21lL2ZvbnRhd2Vzb21lLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQWlCLGlCQUFpQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDcEYsT0FBTyxFQUNMLFFBQVEsSUFBSSxTQUFTLEVBQ3JCLE9BQU8sSUFBSSxRQUFRLEVBQ25CLFNBQVMsSUFBSSxVQUFVLEVBQ3hCLE1BQU0scUNBQXFDLENBQUM7QUFDN0MsT0FBTyxFQUNMLGlCQUFpQixFQUNqQixrQkFBa0IsRUFDbEIsV0FBVyxFQUNYLFdBQVcsRUFDWCxZQUFZLEVBQ1osd0JBQXdCLEVBQ3hCLFVBQVUsRUFDVixVQUFVLEVBQ1YsWUFBWSxFQUNaLFdBQVcsRUFDWCxZQUFZLEVBQ1osVUFBVSxFQUNWLE9BQU8sRUFDUCxhQUFhLEVBQ2IsUUFBUSxFQUNSLFdBQVcsRUFDWCxlQUFlLEVBQ2YsT0FBTyxFQUNQLEtBQUssRUFDTCxVQUFVLEVBQ1YsTUFBTSxFQUNOLFdBQVcsRUFDWCxVQUFVLEVBQ1YsYUFBYSxFQUNiLE1BQU0sRUFDTixXQUFXLEVBQ1gscUJBQXFCLEVBQ3JCLGlCQUFpQixFQUNqQixRQUFRLEVBQ1IsWUFBWSxFQUNaLE1BQU0sRUFDTixNQUFNLEVBQ04sU0FBUyxFQUNULGtCQUFrQixFQUNsQixrQkFBa0IsRUFDbEIsbUJBQW1CLEVBQ25CLGdCQUFnQixFQUNoQixLQUFLLEVBQ0wsV0FBVyxFQUNYLGNBQWMsRUFDZCxPQUFPLEVBQ1AsTUFBTSxFQUNOLFlBQVksRUFDWixnQkFBZ0IsRUFDaEIsUUFBUSxFQUNSLFVBQVUsRUFDVixpQkFBaUIsRUFDakIsWUFBWSxFQUNaLFNBQVMsRUFDVCxvQkFBb0IsRUFDcEIsT0FBTyxFQUNQLE9BQU8sRUFDUCxhQUFhLEVBQ2IsTUFBTSxFQUNQLE1BQU0sbUNBQW1DLENBQUM7OztBQU0zQyxNQUFNLE9BQU8sbUJBQW1CO0lBQzlCLFlBQVksT0FBc0I7UUFDaEMsT0FBTyxDQUFDLFFBQVE7UUFDZCxlQUFlO1FBQ2YsUUFBUSxFQUNSLFNBQVMsRUFDVCxVQUFVO1FBQ1YsYUFBYTtRQUNiLGlCQUFpQixFQUNqQixrQkFBa0IsRUFDbEIsV0FBVyxFQUNYLFdBQVcsRUFDWCxZQUFZLEVBQ1osVUFBVSxFQUNWLFVBQVUsRUFDVixZQUFZLEVBQ1osVUFBVSxFQUNWLE9BQU8sRUFDUCxhQUFhLEVBQ2IsUUFBUSxFQUNSLFdBQVcsRUFDWCxlQUFlLEVBQ2YsT0FBTyxFQUNQLEtBQUssRUFDTCxXQUFXLEVBQ1gsWUFBWSxFQUNaLFVBQVUsRUFDVixVQUFVLEVBQ1YsV0FBVyxFQUNYLGFBQWEsRUFDYixNQUFNLEVBQ04sV0FBVyxFQUNYLHFCQUFxQixFQUNyQixpQkFBaUIsRUFDakIsUUFBUSxFQUNSLFlBQVksRUFDWixNQUFNLEVBQ04sTUFBTSxFQUNOLFNBQVMsRUFDVCxrQkFBa0IsRUFDbEIsZ0JBQWdCLEVBQ2hCLGtCQUFrQixFQUNsQixtQkFBbUIsRUFDbkIsS0FBSyxFQUNMLFdBQVcsRUFDWCxjQUFjLEVBQ2QsT0FBTyxFQUNQLE1BQU0sRUFDTixZQUFZLEVBQ1osZ0JBQWdCLEVBQ2hCLFFBQVEsRUFDUixVQUFVLEVBQ1YsaUJBQWlCLEVBQ2pCLFlBQVksRUFDWixTQUFTLEVBQ1QsT0FBTyxFQUNQLE9BQU8sRUFDUCxhQUFhLEVBQ2IsTUFBTSxFQUNOLE1BQU0sRUFDTixvQkFBb0IsRUFDcEIsd0JBQXdCLENBQ3pCLENBQUM7SUFDSixDQUFDOzhHQS9EVSxtQkFBbUI7K0dBQW5CLG1CQUFtQixZQUhwQixZQUFZLEVBQUUsaUJBQWlCLGFBQy9CLGlCQUFpQjsrR0FFaEIsbUJBQW1CLFlBSHBCLFlBQVksRUFBRSxpQkFBaUIsRUFDL0IsaUJBQWlCOzsyRkFFaEIsbUJBQW1CO2tCQUovQixRQUFRO21CQUFDO29CQUNSLE9BQU8sRUFBRSxDQUFDLFlBQVksRUFBRSxpQkFBaUIsQ0FBQztvQkFDMUMsT0FBTyxFQUFFLENBQUMsaUJBQWlCLENBQUM7aUJBQzdCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBGYUljb25MaWJyYXJ5LCBGb250QXdlc29tZU1vZHVsZSB9IGZyb20gJ0Bmb3J0YXdlc29tZS9hbmd1bGFyLWZvbnRhd2Vzb21lJztcbmltcG9ydCB7XG4gIGZhQ2lyY2xlIGFzIGZhckNpcmNsZSxcbiAgZmFDbG9uZSBhcyBmYXJDbG9uZSxcbiAgZmFJZEJhZGdlIGFzIGZhcklkQmFkZ2Vcbn0gZnJvbSAnQGZvcnRhd2Vzb21lL2ZyZWUtcmVndWxhci1zdmctaWNvbnMnO1xuaW1wb3J0IHtcbiAgZmFBbmdsZURvdWJsZUxlZnQsXG4gIGZhQW5nbGVEb3VibGVSaWdodCxcbiAgZmFBbmdsZURvd24sXG4gIGZhQW5nbGVMZWZ0LFxuICBmYUFuZ2xlUmlnaHQsXG4gIGZhQXJyb3dVcFJpZ2h0RnJvbVNxdWFyZSxcbiAgZmFCb29rT3BlbixcbiAgZmFCdWlsZGluZyxcbiAgZmFDYWxjdWxhdG9yLFxuICBmYUNhcmV0RG93bixcbiAgZmFDYXJldFJpZ2h0LFxuICBmYUNoYXJ0QmFyLFxuICBmYUNoZWNrLFxuICBmYUNoZWNrQ2lyY2xlLFxuICBmYUNpcmNsZSxcbiAgZmFDbGlwYm9hcmQsXG4gIGZhQ2xpcGJvYXJkTGlzdCxcbiAgZmFDbG9uZSxcbiAgZmFDb2csXG4gIGZhQ29tbWVudHMsXG4gIGZhQ29weSxcbiAgZmFEb3RDaXJjbGUsXG4gIGZhRG93bmxvYWQsXG4gIGZhRHJhd1BvbHlnb24sXG4gIGZhRWRpdCxcbiAgZmFFbGxpcHNpc1YsXG4gIGZhRXhjbGFtYXRpb25UcmlhbmdsZSxcbiAgZmFFeHRlcm5hbExpbmtBbHQsXG4gIGZhRmlsdGVyLFxuICBmYUluZm9DaXJjbGUsXG4gIGZhTGluayxcbiAgZmFMaXN0LFxuICBmYUxpc3RBbHQsXG4gIGZhTG9uZ0Fycm93QWx0RG93bixcbiAgZmFMb25nQXJyb3dBbHRMZWZ0LFxuICBmYUxvbmdBcnJvd0FsdFJpZ2h0LFxuICBmYUxvbmdBcnJvd0FsdFVwLFxuICBmYU1hcCxcbiAgZmFNYXBNYXJrZWQsXG4gIGZhTWFwTWFya2VkQWx0LFxuICBmYU1pbnVzLFxuICBmYVBsdXMsXG4gIGZhUGx1c0NpcmNsZSxcbiAgZmFRdWVzdGlvbkNpcmNsZSxcbiAgZmFTZWFyY2gsXG4gIGZhU2VlZGxpbmcsXG4gIGZhU29ydEFtb3VudFVwQWx0LFxuICBmYVNwZWxsQ2hlY2ssXG4gIGZhU3Bpbm5lcixcbiAgZmFTcXVhcmVBcnJvd1VwUmlnaHQsXG4gIGZhVGFibGUsXG4gIGZhVGltZXMsXG4gIGZhVGltZXNDaXJjbGUsXG4gIGZhVXNlclxufSBmcm9tICdAZm9ydGF3ZXNvbWUvZnJlZS1zb2xpZC1zdmctaWNvbnMnO1xuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBGb250QXdlc29tZU1vZHVsZV0sXG4gIGV4cG9ydHM6IFtGb250QXdlc29tZU1vZHVsZV1cbn0pXG5leHBvcnQgY2xhc3MgSGVGb250YXdlc29tZU1vZHVsZSB7XG4gIGNvbnN0cnVjdG9yKGxpYnJhcnk6IEZhSWNvbkxpYnJhcnkpIHtcbiAgICBsaWJyYXJ5LmFkZEljb25zKFxuICAgICAgLy8gZnJlZS1yZWd1bGFyXG4gICAgICBmYXJDbG9uZSxcbiAgICAgIGZhckNpcmNsZSxcbiAgICAgIGZhcklkQmFkZ2UsXG4gICAgICAvLyBmcmVlLXNvbGlkXG4gICAgICBmYUFuZ2xlRG91YmxlTGVmdCxcbiAgICAgIGZhQW5nbGVEb3VibGVSaWdodCxcbiAgICAgIGZhQW5nbGVEb3duLFxuICAgICAgZmFBbmdsZUxlZnQsXG4gICAgICBmYUFuZ2xlUmlnaHQsXG4gICAgICBmYUJvb2tPcGVuLFxuICAgICAgZmFCdWlsZGluZyxcbiAgICAgIGZhQ2FsY3VsYXRvcixcbiAgICAgIGZhQ2hhcnRCYXIsXG4gICAgICBmYUNoZWNrLFxuICAgICAgZmFDaGVja0NpcmNsZSxcbiAgICAgIGZhQ2lyY2xlLFxuICAgICAgZmFDbGlwYm9hcmQsXG4gICAgICBmYUNsaXBib2FyZExpc3QsXG4gICAgICBmYUNsb25lLFxuICAgICAgZmFDb2csXG4gICAgICBmYUNhcmV0RG93bixcbiAgICAgIGZhQ2FyZXRSaWdodCxcbiAgICAgIGZhQ29tbWVudHMsXG4gICAgICBmYURvd25sb2FkLFxuICAgICAgZmFEb3RDaXJjbGUsXG4gICAgICBmYURyYXdQb2x5Z29uLFxuICAgICAgZmFFZGl0LFxuICAgICAgZmFFbGxpcHNpc1YsXG4gICAgICBmYUV4Y2xhbWF0aW9uVHJpYW5nbGUsXG4gICAgICBmYUV4dGVybmFsTGlua0FsdCxcbiAgICAgIGZhRmlsdGVyLFxuICAgICAgZmFJbmZvQ2lyY2xlLFxuICAgICAgZmFMaW5rLFxuICAgICAgZmFMaXN0LFxuICAgICAgZmFMaXN0QWx0LFxuICAgICAgZmFMb25nQXJyb3dBbHREb3duLFxuICAgICAgZmFMb25nQXJyb3dBbHRVcCxcbiAgICAgIGZhTG9uZ0Fycm93QWx0TGVmdCxcbiAgICAgIGZhTG9uZ0Fycm93QWx0UmlnaHQsXG4gICAgICBmYU1hcCxcbiAgICAgIGZhTWFwTWFya2VkLFxuICAgICAgZmFNYXBNYXJrZWRBbHQsXG4gICAgICBmYU1pbnVzLFxuICAgICAgZmFQbHVzLFxuICAgICAgZmFQbHVzQ2lyY2xlLFxuICAgICAgZmFRdWVzdGlvbkNpcmNsZSxcbiAgICAgIGZhU2VhcmNoLFxuICAgICAgZmFTZWVkbGluZyxcbiAgICAgIGZhU29ydEFtb3VudFVwQWx0LFxuICAgICAgZmFTcGVsbENoZWNrLFxuICAgICAgZmFTcGlubmVyLFxuICAgICAgZmFUYWJsZSxcbiAgICAgIGZhVGltZXMsXG4gICAgICBmYVRpbWVzQ2lyY2xlLFxuICAgICAgZmFVc2VyLFxuICAgICAgZmFDb3B5LFxuICAgICAgZmFTcXVhcmVBcnJvd1VwUmlnaHQsXG4gICAgICBmYUFycm93VXBSaWdodEZyb21TcXVhcmVcbiAgICApO1xuICB9XG59XG4iXX0=
@@ -94,7 +94,7 @@ export class NodeCsvSelectHeadersComponent {
94
94
  });
95
95
  }
96
96
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: NodeCsvSelectHeadersComponent, deps: [{ token: i1.HeSchemaService }], target: i0.ɵɵFactoryTarget.Component }); }
97
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.8", type: NodeCsvSelectHeadersComponent, selector: "he-node-csv-select-headers", inputs: { csv: "csv", keys: "keys", includeDefaultCSV: "includeDefaultCSV" }, outputs: { headersChanged: "headersChanged" }, ngImport: i0, template: "<p class=\"mb-2\">Please select which columns you would like to include:</p>\n\n<p class=\"my-2 is-size-7\">\n <i>You can drag and drop the headers to sort them as they would appear in the CSV file.</i>\n</p>\n\n<div class=\"columns toggle-all mx-4 pb-1 mb-0\">\n <div class=\"column\">\n <label class=\"checkbox ml-1\">\n <input type=\"checkbox\" class=\"selector\" [(ngModel)]=\"allSelected\" (change)=\"toggleAll(); refresh()\" />\n <span class=\"ml-2\">Toggle All</span>\n </label>\n </div>\n\n <div class=\"column is-narrow has-text-right\">\n <div\n class=\"dropdown is-right has-text-left\"\n [class.is-active]=\"showSelectTermFields\"\n (clickOutside)=\"showSelectTermFields = false\">\n <div class=\"dropdown-trigger\" (click)=\"showSelectTermFields = !showSelectTermFields\">\n <button class=\"button is-small\" aria-haspopup=\"true\" aria-controls=\"select-menu\">\n <span>Advanced Filters</span>\n <span class=\"icon is-small\">\n <fa-icon icon=\"filter\" aria-hidden=\"true\"></fa-icon>\n </span>\n </button>\n </div>\n <div class=\"dropdown-menu\" id=\"select-menu\" role=\"menu\">\n <div class=\"dropdown-content\">\n <a class=\"dropdown-item\">\n <label class=\"checkbox ml-1\">\n <input type=\"checkbox\" class=\"selector\" [(ngModel)]=\"showNonIncluded\" (change)=\"refresh()\" />\n <span class=\"ml-2\">\n Include\n <code>internal</code>\n fields\n </span>\n </label>\n </a>\n <div class=\"dropdown-item\">\n <p>Toggle Term Fields</p>\n </div>\n <a class=\"dropdown-item\" *ngFor=\"let field of termFields\">\n <label class=\"checkbox ml-1\">\n <input\n type=\"checkbox\"\n class=\"selector\"\n [(ngModel)]=\"termFieldSelected[field]\"\n (change)=\"toggleTermField(field)\" />\n <span class=\"ml-2\">{{ field }}</span>\n </label>\n </a>\n </div>\n </div>\n </div>\n </div>\n</div>\n\n<div class=\"drag-container\" *ngIf=\"!loading; else loader\">\n <div class=\"card\" *ngFor=\"let group of headers | keys\">\n <header class=\"card-header\" *ngIf=\"group.key\">\n <div class=\"card-header-title\">\n <label class=\"checkbox ml-1\">\n <input\n type=\"checkbox\"\n class=\"selector\"\n [indeterminate]=\"group.value.partialSelected\"\n [(ngModel)]=\"group.value.selected\"\n (change)=\"updateGroup(group.key); refresh()\" />\n <span class=\"ml-2\">{{ group.key }}</span>\n </label>\n </div>\n <span\n class=\"card-header-icon has-text-secondary\"\n aria-label=\"open / close\"\n (click)=\"group.value.open = !group.value.open\"\n pointer>\n <span class=\"icon\">\n <fa-icon icon=\"angle-down\" [class.is-hidden]=\"!group.value.open\"></fa-icon>\n <fa-icon icon=\"angle-left\" [class.is-hidden]=\"group.value.open\"></fa-icon>\n </span>\n </span>\n </header>\n\n <div class=\"card-content p-3\" [class.is-hidden]=\"!group.value.open\">\n <ul cdkDropList (cdkDropListDropped)=\"dropHeader($event, group.key)\">\n <ng-container *ngFor=\"let header of group.value.headers\">\n <ng-container *ngIf=\"header.included || showNonIncluded\">\n <li cdkDrag>\n <label class=\"checkbox ml-2\">\n <input\n type=\"checkbox\"\n class=\"selector\"\n [(ngModel)]=\"header.selected\"\n (change)=\"updateGroupHeader(group.key); refresh()\" />\n <span class=\"ml-2\">{{ header.header }}</span>\n </label>\n </li>\n </ng-container>\n </ng-container>\n </ul>\n </div>\n </div>\n</div>\n\n<ng-template #loader>\n <div class=\"has-text-center py-3\">\n <fa-icon icon=\"spinner\" [pulse]=\"true\" size=\"lg\"></fa-icon>\n </div>\n</ng-template>\n", styles: [".toggle-all{border-bottom:1px solid #4a4a4a}.drag-container,.table-container{max-height:45vh;overflow-y:auto}.cdk-drag-preview{border-radius:3px;box-shadow:0 5px 5px -3px #0003,0 8px 10px 1px #00000024,0 3px 14px 2px #0000001f;list-style:none}.cdk-drag-placeholder{opacity:0}.cdk-drag-animating{transition:transform .25s cubic-bezier(0,0,.2,1)}\n"], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i4.CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "cdkDropListData", "cdkDropListOrientation", "id", "cdkDropListLockAxis", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListAutoScrollDisabled", "cdkDropListAutoScrollStep"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { kind: "directive", type: i4.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "component", type: i5.FaIconComponent, selector: "fa-icon", inputs: ["icon", "title", "animation", "spin", "pulse", "mask", "styles", "flip", "size", "pull", "border", "inverse", "symbol", "rotate", "fixedWidth", "classes", "transform", "a11yRole"] }, { kind: "directive", type: i6.ClickOutsideDirective, selector: "[clickOutside]", outputs: ["clickOutside"] }, { kind: "pipe", type: i7.KeysPipe, name: "keys" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
97
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.8", type: NodeCsvSelectHeadersComponent, selector: "he-node-csv-select-headers", inputs: { csv: "csv", keys: "keys", includeDefaultCSV: "includeDefaultCSV" }, outputs: { headersChanged: "headersChanged" }, ngImport: i0, template: "<p class=\"mb-2\">Please select which columns you would like to include:</p>\n\n<p class=\"my-2 is-size-7\">\n <i>You can drag and drop the headers to sort them as they would appear in the CSV file.</i>\n</p>\n\n<div class=\"columns toggle-all mx-4 pb-1 mb-0\">\n <div class=\"column\">\n <label class=\"checkbox ml-1\">\n <input type=\"checkbox\" class=\"selector\" [(ngModel)]=\"allSelected\" (change)=\"toggleAll(); refresh()\" />\n <span class=\"ml-2\">Toggle All</span>\n </label>\n </div>\n\n <div class=\"column is-narrow has-text-right\">\n <div\n class=\"dropdown is-right has-text-left\"\n [class.is-active]=\"showSelectTermFields\"\n (clickOutside)=\"showSelectTermFields = false\">\n <div class=\"dropdown-trigger\" (click)=\"showSelectTermFields = !showSelectTermFields\">\n <button class=\"button is-small\" aria-haspopup=\"true\" aria-controls=\"select-menu\">\n <span>Advanced Filters</span>\n <span class=\"icon is-small\">\n <fa-icon icon=\"filter\" aria-hidden=\"true\"></fa-icon>\n </span>\n </button>\n </div>\n <div class=\"dropdown-menu\" id=\"select-menu\" role=\"menu\">\n <div class=\"dropdown-content\">\n <a class=\"dropdown-item\">\n <label class=\"checkbox ml-1\">\n <input type=\"checkbox\" class=\"selector\" [(ngModel)]=\"showNonIncluded\" (change)=\"refresh()\" />\n <span class=\"ml-2\">\n Include\n <code>internal</code>\n fields\n </span>\n </label>\n </a>\n <div class=\"dropdown-item\">\n <p>Toggle Term Fields</p>\n </div>\n <a class=\"dropdown-item\" *ngFor=\"let field of termFields\">\n <label class=\"checkbox ml-1\">\n <input\n type=\"checkbox\"\n class=\"selector\"\n [(ngModel)]=\"termFieldSelected[field]\"\n (change)=\"toggleTermField(field)\" />\n <span class=\"ml-2\">{{ field }}</span>\n </label>\n </a>\n </div>\n </div>\n </div>\n </div>\n</div>\n\n<div class=\"drag-container\" *ngIf=\"!loading; else loader\">\n <div class=\"card\" *ngFor=\"let group of headers | keys\">\n <header class=\"card-header\" *ngIf=\"group.key\">\n <div class=\"card-header-title\">\n <label class=\"checkbox ml-1\">\n <input\n type=\"checkbox\"\n class=\"selector\"\n [indeterminate]=\"group.value.partialSelected\"\n [(ngModel)]=\"group.value.selected\"\n (change)=\"updateGroup(group.key); refresh()\" />\n <span class=\"ml-2\">{{ group.key }}</span>\n </label>\n </div>\n <span\n class=\"card-header-icon has-text-secondary\"\n aria-label=\"open / close\"\n (click)=\"group.value.open = !group.value.open\"\n pointer>\n <span class=\"icon\">\n <fa-icon icon=\"angle-down\" [class.is-hidden]=\"!group.value.open\"></fa-icon>\n <fa-icon icon=\"angle-left\" [class.is-hidden]=\"group.value.open\"></fa-icon>\n </span>\n </span>\n </header>\n\n <div class=\"card-content p-3\" [class.is-hidden]=\"!group.value.open\">\n <ul cdkDropList (cdkDropListDropped)=\"dropHeader($event, group.key)\">\n <ng-container *ngFor=\"let header of group.value.headers\">\n <ng-container *ngIf=\"header.included || showNonIncluded\">\n <li cdkDrag>\n <label class=\"checkbox ml-2\">\n <input\n type=\"checkbox\"\n class=\"selector\"\n [(ngModel)]=\"header.selected\"\n (change)=\"updateGroupHeader(group.key); refresh()\" />\n <span class=\"ml-2\">{{ header.header }}</span>\n </label>\n </li>\n </ng-container>\n </ng-container>\n </ul>\n </div>\n </div>\n</div>\n\n<ng-template #loader>\n <div class=\"has-text-center py-3\">\n <fa-icon icon=\"spinner\" [pulse]=\"true\" size=\"lg\"></fa-icon>\n </div>\n</ng-template>\n", styles: [".toggle-all{border-bottom:1px solid #4a4a4a}.drag-container,.table-container{max-height:45vh;overflow-y:auto}.cdk-drag-preview{border-radius:3px;box-shadow:0 5px 5px -3px #0003,0 8px 10px 1px #00000024,0 3px 14px 2px #0000001f;list-style:none}.cdk-drag-placeholder{opacity:0}.cdk-drag-animating{transition:transform .25s cubic-bezier(0,0,.2,1)}\n"], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i4.CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "cdkDropListData", "cdkDropListOrientation", "id", "cdkDropListLockAxis", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListAutoScrollDisabled", "cdkDropListAutoScrollStep"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { kind: "directive", type: i4.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "component", type: i5.FaIconComponent, selector: "fa-icon", inputs: ["icon", "title", "animation", "spin", "pulse", "mask", "styles", "flip", "size", "pull", "border", "inverse", "symbol", "rotate", "fixedWidth", "classes", "transform", "a11yRole"] }, { kind: "directive", type: i6.ClickOutsideDirective, selector: "[clickOutside]", inputs: ["clickOutsideListenAfter"], outputs: ["clickOutside"] }, { kind: "pipe", type: i7.KeysPipe, name: "keys" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
98
98
  }
99
99
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: NodeCsvSelectHeadersComponent, decorators: [{
100
100
  type: Component,
@@ -48,7 +48,7 @@ export class SelectOptionComponent {
48
48
  provide: SELECT_OPTION_TOKEN,
49
49
  useExisting: forwardRef(() => SelectOptionComponent)
50
50
  }
51
- ], ngImport: i0, template: "<input (keyup.enter)=\"checkboxClicked($event)\" *ngIf=\"isMultiple()\" [checked]=\"isChecked\" type=\"checkbox\" />\n\n<div class=\"option-content\">\n <ng-content></ng-content>\n</div>\n", styles: [":host{display:flex;gap:.6em;align-items:center;padding:.5em 1em;box-sizing:border-box;border-radius:3px;border:transparent 1px solid;cursor:pointer}:host:hover{background-color:#e5f2f8}:host.selected{background:#fefaf0}:host.disabled{opacity:.5;pointer-events:none}:host.active{border:var(--color-text-light, #bbcdd5) 1px dashed;background:#fefaf0}.option-content{width:100%;color:#193957;font-feature-settings:\"calt\" off;font-family:Lato,BlinkMacSystemFont,-apple-system,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,Helvetica,Arial,sans-serif;font-size:14px;font-style:normal;font-weight:400;line-height:128.571%}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
51
+ ], ngImport: i0, template: "<input (keyup.enter)=\"checkboxClicked($event)\" *ngIf=\"isMultiple()\" [checked]=\"isChecked\" type=\"checkbox\" />\n\n<div class=\"option-content\">\n <ng-content></ng-content>\n</div>\n", styles: [":host{display:flex;gap:.6em;align-items:center;padding:.5em 1em;box-sizing:border-box;border-radius:3px;border:transparent 1px solid;cursor:pointer}:host:hover{background-color:#e5f2f8}:host.selected{background:#fefaf0}:host.disabled{opacity:.5;pointer-events:none}:host.active{border:var(--color-text-light, #bbcdd5) 1px dashed;background:#fefaf0}.option-content{width:100%;word-break:break-word;color:#193957;font-feature-settings:\"calt\" off;font-family:Lato,BlinkMacSystemFont,-apple-system,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,Helvetica,Arial,sans-serif;font-size:14px;font-style:normal;font-weight:400;line-height:128.571%}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
52
52
  }
53
53
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: SelectOptionComponent, decorators: [{
54
54
  type: Component,
@@ -57,7 +57,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.8", ngImpor
57
57
  provide: SELECT_OPTION_TOKEN,
58
58
  useExisting: forwardRef(() => SelectOptionComponent)
59
59
  }
60
- ], template: "<input (keyup.enter)=\"checkboxClicked($event)\" *ngIf=\"isMultiple()\" [checked]=\"isChecked\" type=\"checkbox\" />\n\n<div class=\"option-content\">\n <ng-content></ng-content>\n</div>\n", styles: [":host{display:flex;gap:.6em;align-items:center;padding:.5em 1em;box-sizing:border-box;border-radius:3px;border:transparent 1px solid;cursor:pointer}:host:hover{background-color:#e5f2f8}:host.selected{background:#fefaf0}:host.disabled{opacity:.5;pointer-events:none}:host.active{border:var(--color-text-light, #bbcdd5) 1px dashed;background:#fefaf0}.option-content{width:100%;color:#193957;font-feature-settings:\"calt\" off;font-family:Lato,BlinkMacSystemFont,-apple-system,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,Helvetica,Arial,sans-serif;font-size:14px;font-style:normal;font-weight:400;line-height:128.571%}\n"] }]
60
+ ], template: "<input (keyup.enter)=\"checkboxClicked($event)\" *ngIf=\"isMultiple()\" [checked]=\"isChecked\" type=\"checkbox\" />\n\n<div class=\"option-content\">\n <ng-content></ng-content>\n</div>\n", styles: [":host{display:flex;gap:.6em;align-items:center;padding:.5em 1em;box-sizing:border-box;border-radius:3px;border:transparent 1px solid;cursor:pointer}:host:hover{background-color:#e5f2f8}:host.selected{background:#fefaf0}:host.disabled{opacity:.5;pointer-events:none}:host.active{border:var(--color-text-light, #bbcdd5) 1px dashed;background:#fefaf0}.option-content{width:100%;word-break:break-word;color:#193957;font-feature-settings:\"calt\" off;font-family:Lato,BlinkMacSystemFont,-apple-system,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,Helvetica,Arial,sans-serif;font-size:14px;font-style:normal;font-weight:400;line-height:128.571%}\n"] }]
61
61
  }], propDecorators: { value: [{
62
62
  type: Input
63
63
  }], staticChecked: [{
@@ -77,7 +77,7 @@ export class SelectOptionGroupComponent {
77
77
  provide: OPTION_GROUP_TOKEN,
78
78
  useExisting: forwardRef(() => SelectOptionGroupComponent)
79
79
  }
80
- ], queries: [{ propertyName: "_descendants", predicate: NODE_ELEMENT_TOKEN, descendants: true }], ngImport: i0, template: "<header\n (click)=\"onGroupLabelClick($event)\"\n (keyup.enter)=\"onGroupLabelClick($event)\"\n class=\"option-group-header | is-align-items-center\">\n <p class=\"option-group-label\">{{ label }}</p>\n <fa-icon [icon]=\"suffixIcon\"></fa-icon>\n</header>\n\n<div class=\"option-group-option-container\">\n <ng-content *ngIf=\"expanded\"></ng-content>\n</div>\n", styles: [":host{display:flex;flex-direction:column;box-sizing:border-box;cursor:pointer}:host.active>.option-group-header{border-top-color:#249da5;border-bottom-color:#249da5;background-color:Rgba(123,123,222,.15)}:host .option-group-header:hover,:host .option-group-header:focus,:host .option-group-header:active,:host .option-group-header:focus-visible{border-top-color:#249da5;border-bottom-color:#249da5}:host:first-child .option-group-header:hover,:host:first-child .option-group-header:focus,:host:first-child .option-group-header:active,:host:first-child .option-group-header:focus-visible{border-top-color:transparent}:host:last-child:not(.expanded) .option-group-header:hover,:host:last-child:not(.expanded) .option-group-header:focus,:host:last-child:not(.expanded) .option-group-header:active,:host:last-child:not(.expanded) .option-group-header:focus-visible{border-bottom-color:transparent}.option-group-option-container{margin-left:1em}.option-group-header{display:grid;grid-template-columns:1fr auto;gap:.5em;padding:.5em 1em;border:transparent 1px solid;border-top-color:#f5f5f5;border-bottom-color:#f5f5f5;font-size:14px;font-style:normal;font-weight:600;line-height:128.571%}.option-group-header:focus-visible{outline:transparent}.option-group-label{color:#193957;font-feature-settings:\"calt\" off}.option-content{transition:transform .32s ease-out;width:100%}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.FaIconComponent, selector: "fa-icon", inputs: ["icon", "title", "animation", "spin", "pulse", "mask", "styles", "flip", "size", "pull", "border", "inverse", "symbol", "rotate", "fixedWidth", "classes", "transform", "a11yRole"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
80
+ ], queries: [{ propertyName: "_descendants", predicate: NODE_ELEMENT_TOKEN, descendants: true }], ngImport: i0, template: "<header\n (click)=\"onGroupLabelClick($event)\"\n (keyup.enter)=\"onGroupLabelClick($event)\"\n class=\"option-group-header | is-align-items-center\">\n <p class=\"option-group-label\">{{ label }}</p>\n <fa-icon [icon]=\"suffixIcon\"></fa-icon>\n</header>\n\n<div class=\"option-group-option-container\">\n <ng-content *ngIf=\"expanded\"></ng-content>\n</div>\n", styles: [":host{display:flex;flex-direction:column;box-sizing:border-box;cursor:pointer}:host.active>.option-group-header{border-top-color:#249da5;border-bottom-color:#249da5;background-color:Rgba(123,123,222,.15)}:host .option-group-header:hover,:host .option-group-header:focus,:host .option-group-header:active,:host .option-group-header:focus-visible{border-top-color:#249da5;border-bottom-color:#249da5}:host:first-child .option-group-header:hover,:host:first-child .option-group-header:focus,:host:first-child .option-group-header:active,:host:first-child .option-group-header:focus-visible{border-top-color:transparent}:host:last-child:not(.expanded) .option-group-header:hover,:host:last-child:not(.expanded) .option-group-header:focus,:host:last-child:not(.expanded) .option-group-header:active,:host:last-child:not(.expanded) .option-group-header:focus-visible{border-bottom-color:transparent}.option-group-option-container{margin-left:1em}.option-group-header{display:grid;grid-template-columns:1fr auto;gap:.5em;padding:.5em 1em;border:transparent 1px solid;border-top-color:#f5f5f5;border-bottom-color:#f5f5f5;font-size:14px;font-style:normal;font-weight:600;line-height:128.571%}.option-group-header:focus-visible{outline:transparent}.option-group-label{color:#193957;font-feature-settings:\"calt\" off;word-break:break-word}.option-content{transition:transform .32s ease-out;width:100%}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.FaIconComponent, selector: "fa-icon", inputs: ["icon", "title", "animation", "spin", "pulse", "mask", "styles", "flip", "size", "pull", "border", "inverse", "symbol", "rotate", "fixedWidth", "classes", "transform", "a11yRole"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
81
81
  }
82
82
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: SelectOptionGroupComponent, decorators: [{
83
83
  type: Component,
@@ -86,7 +86,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.8", ngImpor
86
86
  provide: OPTION_GROUP_TOKEN,
87
87
  useExisting: forwardRef(() => SelectOptionGroupComponent)
88
88
  }
89
- ], template: "<header\n (click)=\"onGroupLabelClick($event)\"\n (keyup.enter)=\"onGroupLabelClick($event)\"\n class=\"option-group-header | is-align-items-center\">\n <p class=\"option-group-label\">{{ label }}</p>\n <fa-icon [icon]=\"suffixIcon\"></fa-icon>\n</header>\n\n<div class=\"option-group-option-container\">\n <ng-content *ngIf=\"expanded\"></ng-content>\n</div>\n", styles: [":host{display:flex;flex-direction:column;box-sizing:border-box;cursor:pointer}:host.active>.option-group-header{border-top-color:#249da5;border-bottom-color:#249da5;background-color:Rgba(123,123,222,.15)}:host .option-group-header:hover,:host .option-group-header:focus,:host .option-group-header:active,:host .option-group-header:focus-visible{border-top-color:#249da5;border-bottom-color:#249da5}:host:first-child .option-group-header:hover,:host:first-child .option-group-header:focus,:host:first-child .option-group-header:active,:host:first-child .option-group-header:focus-visible{border-top-color:transparent}:host:last-child:not(.expanded) .option-group-header:hover,:host:last-child:not(.expanded) .option-group-header:focus,:host:last-child:not(.expanded) .option-group-header:active,:host:last-child:not(.expanded) .option-group-header:focus-visible{border-bottom-color:transparent}.option-group-option-container{margin-left:1em}.option-group-header{display:grid;grid-template-columns:1fr auto;gap:.5em;padding:.5em 1em;border:transparent 1px solid;border-top-color:#f5f5f5;border-bottom-color:#f5f5f5;font-size:14px;font-style:normal;font-weight:600;line-height:128.571%}.option-group-header:focus-visible{outline:transparent}.option-group-label{color:#193957;font-feature-settings:\"calt\" off}.option-content{transition:transform .32s ease-out;width:100%}\n"] }]
89
+ ], template: "<header\n (click)=\"onGroupLabelClick($event)\"\n (keyup.enter)=\"onGroupLabelClick($event)\"\n class=\"option-group-header | is-align-items-center\">\n <p class=\"option-group-label\">{{ label }}</p>\n <fa-icon [icon]=\"suffixIcon\"></fa-icon>\n</header>\n\n<div class=\"option-group-option-container\">\n <ng-content *ngIf=\"expanded\"></ng-content>\n</div>\n", styles: [":host{display:flex;flex-direction:column;box-sizing:border-box;cursor:pointer}:host.active>.option-group-header{border-top-color:#249da5;border-bottom-color:#249da5;background-color:Rgba(123,123,222,.15)}:host .option-group-header:hover,:host .option-group-header:focus,:host .option-group-header:active,:host .option-group-header:focus-visible{border-top-color:#249da5;border-bottom-color:#249da5}:host:first-child .option-group-header:hover,:host:first-child .option-group-header:focus,:host:first-child .option-group-header:active,:host:first-child .option-group-header:focus-visible{border-top-color:transparent}:host:last-child:not(.expanded) .option-group-header:hover,:host:last-child:not(.expanded) .option-group-header:focus,:host:last-child:not(.expanded) .option-group-header:active,:host:last-child:not(.expanded) .option-group-header:focus-visible{border-bottom-color:transparent}.option-group-option-container{margin-left:1em}.option-group-header{display:grid;grid-template-columns:1fr auto;gap:.5em;padding:.5em 1em;border:transparent 1px solid;border-top-color:#f5f5f5;border-bottom-color:#f5f5f5;font-size:14px;font-style:normal;font-weight:600;line-height:128.571%}.option-group-header:focus-visible{outline:transparent}.option-group-label{color:#193957;font-feature-settings:\"calt\" off;word-break:break-word}.option-content{transition:transform .32s ease-out;width:100%}\n"] }]
90
90
  }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: undefined, decorators: [{
91
91
  type: Inject,
92
92
  args: [SELECT_TOKEN]