@firestitch/popover 18.0.0 → 18.0.2

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.
@@ -6,6 +6,7 @@ export declare class FsPopoverRef {
6
6
  private readonly _autoClose$;
7
7
  private readonly _componentLoading$;
8
8
  private _maxWidth;
9
+ private _maxHeight;
9
10
  private _wrapperClass;
10
11
  private _loadingDiameter;
11
12
  private _loading;
@@ -27,6 +28,7 @@ export declare class FsPopoverRef {
27
28
  get componentLoading(): boolean;
28
29
  get wrapperClass(): string;
29
30
  get maxWidth(): number;
31
+ get maxHeight(): number;
30
32
  show(): void;
31
33
  close(): void;
32
34
  updatePosition(): void;
@@ -2,5 +2,5 @@ import { FsPopoverDirective } from '../../directives/popover.directive';
2
2
  import * as i0 from "@angular/core";
3
3
  export declare class FsPopoverComponent extends FsPopoverDirective {
4
4
  static ɵfac: i0.ɵɵFactoryDeclaration<FsPopoverComponent, never>;
5
- static ɵcmp: i0.ɵɵComponentDeclaration<FsPopoverComponent, "fs-popover", never, {}, {}, never, ["*"], false, never>;
5
+ static ɵcmp: i0.ɵɵComponentDeclaration<FsPopoverComponent, "fs-popover", never, {}, {}, never, ["*"], true, never>;
6
6
  }
@@ -1,4 +1,4 @@
1
- import { ComponentRef, ElementRef, EmbeddedViewRef, OnDestroy, NgZone, OnInit, Renderer2 } from '@angular/core';
1
+ import { ComponentRef, ElementRef, EmbeddedViewRef, OnDestroy, OnInit } from '@angular/core';
2
2
  import { BasePortalOutlet, CdkPortalOutlet, ComponentPortal, TemplatePortal } from '@angular/cdk/portal';
3
3
  import { FsPopoverRef } from '../../class/popover-ref';
4
4
  import * as i0 from "@angular/core";
@@ -14,8 +14,9 @@ export declare class FsPopoverWrapperComponent extends BasePortalOutlet implemen
14
14
  private _contentChangesObserver;
15
15
  private _updatePosition;
16
16
  private _destroy$;
17
- constructor(popoverRef: FsPopoverRef, _el: ElementRef, _zone: NgZone, _renderer: Renderer2);
17
+ constructor();
18
18
  set maxWidth(value: number);
19
+ set maxHeight(value: number);
19
20
  set wrapperClass(value: string);
20
21
  ngOnInit(): void;
21
22
  ngOnDestroy(): void;
@@ -36,5 +37,5 @@ export declare class FsPopoverWrapperComponent extends BasePortalOutlet implemen
36
37
  private _observeContentChanges;
37
38
  private _listenUpdatePositionRequests;
38
39
  static ɵfac: i0.ɵɵFactoryDeclaration<FsPopoverWrapperComponent, never>;
39
- static ɵcmp: i0.ɵɵComponentDeclaration<FsPopoverWrapperComponent, "fs-popover-wrapper", never, {}, {}, never, never, false, never>;
40
+ static ɵcmp: i0.ɵɵComponentDeclaration<FsPopoverWrapperComponent, "fs-popover-wrapper", never, {}, {}, never, never, true, never>;
40
41
  }
@@ -1,21 +1,15 @@
1
- import { ElementRef, NgZone, OnDestroy, OnInit, TemplateRef, OnChanges, SimpleChanges } from '@angular/core';
2
- import { Router } from '@angular/router';
1
+ import { OnChanges, OnDestroy, OnInit, SimpleChanges, TemplateRef } from '@angular/core';
3
2
  import { Observable } from 'rxjs';
4
3
  import { Position } from '../enums/position';
5
- import { FsPopoverService } from '../services/popover.service';
6
4
  import * as i0 from "@angular/core";
7
5
  export declare class FsPopoverDirective implements OnInit, OnChanges, OnDestroy {
8
- private _elRef;
9
- private _popoverService;
10
- private _ngZone;
11
- private _router;
12
- private _guid;
13
6
  text: string;
14
7
  template: TemplateRef<any>;
15
8
  data: any;
16
9
  leaveDelay: number;
17
10
  showDelay: number;
18
11
  maxWidth: number;
12
+ maxHeight: number;
19
13
  wrapperClass: string;
20
14
  autoShow: boolean;
21
15
  autoClose: boolean;
@@ -36,7 +30,12 @@ export declare class FsPopoverDirective implements OnInit, OnChanges, OnDestroy
36
30
  private _mouseLeave$;
37
31
  private _popoverClosed$;
38
32
  private _destroy$;
39
- constructor(_elRef: ElementRef, _popoverService: FsPopoverService, _ngZone: NgZone, _router: Router);
33
+ private _elRef;
34
+ private _popoverService;
35
+ private _ngZone;
36
+ private _router;
37
+ private _guid;
38
+ constructor();
40
39
  get openTimer$(): Observable<number>;
41
40
  get closeTimer$(): Observable<number>;
42
41
  ngOnInit(): void;
@@ -50,6 +49,6 @@ export declare class FsPopoverDirective implements OnInit, OnChanges, OnDestroy
50
49
  private _openPopover;
51
50
  private _listenMouseHostLeave$;
52
51
  private _mouseLeftTheTargets;
53
- static ɵfac: i0.ɵɵFactoryDeclaration<FsPopoverDirective, [null, null, null, { optional: true; }]>;
54
- static ɵdir: i0.ɵɵDirectiveDeclaration<FsPopoverDirective, "[fsPopover]", never, { "text": { "alias": "text"; "required": false; }; "template": { "alias": "template"; "required": false; }; "data": { "alias": "data"; "required": false; }; "leaveDelay": { "alias": "leaveDelay"; "required": false; }; "showDelay": { "alias": "showDelay"; "required": false; }; "maxWidth": { "alias": "maxWidth"; "required": false; }; "wrapperClass": { "alias": "wrapperClass"; "required": false; }; "autoShow": { "alias": "autoShow"; "required": false; }; "autoClose": { "alias": "autoClose"; "required": false; }; "loadingDiameter": { "alias": "loadingDiameter"; "required": false; }; "loading": { "alias": "loading"; "required": false; }; "indication": { "alias": "indication"; "required": false; }; "position": { "alias": "position"; "required": false; }; "theme": { "alias": "theme"; "required": false; }; "size": { "alias": "size"; "required": false; }; "trigger": { "alias": "trigger"; "required": false; }; "enabled": { "alias": "enabled"; "required": false; }; }, {}, never, never, false, never>;
52
+ static ɵfac: i0.ɵɵFactoryDeclaration<FsPopoverDirective, never>;
53
+ static ɵdir: i0.ɵɵDirectiveDeclaration<FsPopoverDirective, "[fsPopover]", never, { "text": { "alias": "text"; "required": false; }; "template": { "alias": "template"; "required": false; }; "data": { "alias": "data"; "required": false; }; "leaveDelay": { "alias": "leaveDelay"; "required": false; }; "showDelay": { "alias": "showDelay"; "required": false; }; "maxWidth": { "alias": "maxWidth"; "required": false; }; "maxHeight": { "alias": "maxHeight"; "required": false; }; "wrapperClass": { "alias": "wrapperClass"; "required": false; }; "autoShow": { "alias": "autoShow"; "required": false; }; "autoClose": { "alias": "autoClose"; "required": false; }; "loadingDiameter": { "alias": "loadingDiameter"; "required": false; }; "loading": { "alias": "loading"; "required": false; }; "indication": { "alias": "indication"; "required": false; }; "position": { "alias": "position"; "required": false; }; "theme": { "alias": "theme"; "required": false; }; "size": { "alias": "size"; "required": false; }; "trigger": { "alias": "trigger"; "required": false; }; "enabled": { "alias": "enabled"; "required": false; }; }, {}, never, never, true, never>;
55
54
  }
@@ -1,11 +1,8 @@
1
1
  import * as i0 from "@angular/core";
2
2
  import * as i1 from "./components/popover/popover.component";
3
- import * as i2 from "./components/popover-wrapper/popover-wrapper.component";
4
- import * as i3 from "./directives/popover.directive";
5
- import * as i4 from "@angular/common";
6
- import * as i5 from "@angular/cdk/portal";
3
+ import * as i2 from "./directives/popover.directive";
7
4
  export declare class FsPopoverModule {
8
5
  static ɵfac: i0.ɵɵFactoryDeclaration<FsPopoverModule, never>;
9
- static ɵmod: i0.ɵɵNgModuleDeclaration<FsPopoverModule, [typeof i1.FsPopoverComponent, typeof i2.FsPopoverWrapperComponent, typeof i3.FsPopoverDirective], [typeof i4.CommonModule, typeof i5.PortalModule], [typeof i1.FsPopoverComponent, typeof i3.FsPopoverDirective]>;
6
+ static ɵmod: i0.ɵɵNgModuleDeclaration<FsPopoverModule, never, [typeof i1.FsPopoverComponent, typeof i2.FsPopoverDirective], [typeof i1.FsPopoverComponent, typeof i2.FsPopoverDirective]>;
10
7
  static ɵinj: i0.ɵɵInjectorDeclaration<FsPopoverModule>;
11
8
  }
@@ -1,4 +1,3 @@
1
1
  import { Injector } from '@angular/core';
2
- import { PortalInjector } from '@angular/cdk/portal';
3
2
  import { FsPopoverRef } from '../class/popover-ref';
4
- export declare function createInjector(popoverRef: FsPopoverRef, parentInjector: Injector): PortalInjector;
3
+ export declare function createInjector(popoverRef: FsPopoverRef, parentInjector: Injector): Injector;
@@ -2,6 +2,7 @@ import { OverlayRef } from '@angular/cdk/overlay';
2
2
  import { FsPopoverRef } from '../class/popover-ref';
3
3
  export interface IPopoverConfig {
4
4
  maxWidth?: number;
5
+ maxHeight?: number;
5
6
  wrapperClass?: string;
6
7
  autoShow?: boolean;
7
8
  autoClose?: boolean;
@@ -1,5 +1,4 @@
1
- import { ElementRef, Injector, TemplateRef } from '@angular/core';
2
- import { Overlay } from '@angular/cdk/overlay';
1
+ import { ElementRef, TemplateRef } from '@angular/core';
3
2
  import { Position } from './../enums/position';
4
3
  import { FsPopoverRef } from '../class/popover-ref';
5
4
  import * as i0 from "@angular/core";
@@ -8,7 +7,6 @@ export declare class FsPopoverService {
8
7
  private _overlay;
9
8
  private _activeElement;
10
9
  private _activeElementGUID;
11
- constructor(_injector: Injector, _overlay: Overlay);
12
10
  get hasActivePopover(): boolean;
13
11
  get activeElementGUID(): string;
14
12
  setActivePopoverGUID(value: string): void;
@@ -6,6 +6,7 @@ export class FsPopoverRef {
6
6
  _autoClose$ = new BehaviorSubject(true);
7
7
  _componentLoading$ = new BehaviorSubject(true);
8
8
  _maxWidth;
9
+ _maxHeight;
9
10
  _wrapperClass;
10
11
  _loadingDiameter;
11
12
  _loading;
@@ -64,6 +65,9 @@ export class FsPopoverRef {
64
65
  get maxWidth() {
65
66
  return this._maxWidth;
66
67
  }
68
+ get maxHeight() {
69
+ return this._maxHeight;
70
+ }
67
71
  show() {
68
72
  setTimeout(() => {
69
73
  this._componentLoading$.next(false);
@@ -82,6 +86,7 @@ export class FsPopoverRef {
82
86
  _init(config) {
83
87
  this._wrapperClass = config.wrapperClass;
84
88
  this._maxWidth = config.maxWidth;
89
+ this._maxHeight = config.maxHeight;
85
90
  this._loading = config.loading;
86
91
  this._loadingDiameter = config.loadingDiameter;
87
92
  this._size = config.size;
@@ -90,4 +95,4 @@ export class FsPopoverRef {
90
95
  this._autoClose$.next(config.autoClose);
91
96
  }
92
97
  }
93
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9wb3Zlci1yZWYuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYXBwL2NsYXNzL3BvcG92ZXItcmVmLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFBRSxlQUFlLEVBQUUsYUFBYSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3RELE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUtyQyxNQUFNLE9BQU8sWUFBWTtJQUVoQixVQUFVLENBQWE7SUFFYixVQUFVLEdBQUcsSUFBSSxlQUFlLENBQVUsSUFBSSxDQUFDLENBQUM7SUFDaEQsV0FBVyxHQUFHLElBQUksZUFBZSxDQUFVLElBQUksQ0FBQyxDQUFDO0lBQ2pELGtCQUFrQixHQUFHLElBQUksZUFBZSxDQUFVLElBQUksQ0FBQyxDQUFDO0lBQ2pFLFNBQVMsQ0FBUztJQUNsQixhQUFhLENBQVM7SUFDdEIsZ0JBQWdCLENBQVM7SUFDekIsUUFBUSxDQUFVO0lBQ2xCLE1BQU0sQ0FBUztJQUNmLEtBQUssQ0FBUztJQUV0QixZQUFZLFNBQXlCLEVBQUU7UUFDckMsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNyQixDQUFDO0lBRUQsSUFBVyxlQUFlO1FBQ3hCLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDO0lBQy9CLENBQUM7SUFFRCxJQUFXLElBQUk7UUFDYixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUM7SUFDcEIsQ0FBQztJQUVELElBQVcsS0FBSztRQUNkLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQztJQUNyQixDQUFDO0lBRUQsSUFBVyxPQUFPO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUN2QixDQUFDO0lBRUQsSUFBVyxTQUFTO1FBQ2xCLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUN4QyxDQUFDO0lBRUQsSUFBVyxRQUFRO1FBQ2pCLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUNwQyxDQUFDO0lBRUQsSUFBVyxRQUFRLENBQUMsS0FBYztRQUNoQyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM5QixDQUFDO0lBRUQsSUFBVyxVQUFVO1FBQ25CLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUN6QyxDQUFDO0lBRUQsSUFBVyxTQUFTO1FBQ2xCLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUNyQyxDQUFDO0lBRUQsSUFBVyxTQUFTLENBQUMsS0FBYztRQUNqQyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMvQixDQUFDO0lBRUQsSUFBVyxpQkFBaUI7UUFDMUIsT0FBTyxhQUFhLENBQUM7WUFDbkIsSUFBSSxDQUFDLFNBQVM7WUFDZCxJQUFJLENBQUMsaUJBQWlCO1NBQ3ZCLENBQUMsQ0FBQyxJQUFJLENBQ0wsR0FBRyxDQUFDLENBQUMsQ0FBQyxRQUFRLEVBQUUsZ0JBQWdCLENBQUMsRUFBRSxFQUFFO1lBQ25DLE9BQU8sUUFBUSxJQUFJLENBQUMsZ0JBQWdCLENBQUM7UUFDdkMsQ0FBQyxDQUFDLENBQ0gsQ0FBQTtJQUNILENBQUM7SUFFRCxJQUFXLGlCQUFpQjtRQUMxQixPQUFPLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUNoRCxDQUFDO0lBRUQsSUFBVyxnQkFBZ0I7UUFDekIsT0FBTyxJQUFJLENBQUMsa0JBQWtCLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDNUMsQ0FBQztJQUVELElBQVcsWUFBWTtRQUNyQixPQUFPLElBQUksQ0FBQyxhQUFhLENBQUM7SUFDNUIsQ0FBQztJQUVELElBQVcsUUFBUTtRQUNqQixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUM7SUFDeEIsQ0FBQztJQUVNLElBQUk7UUFDVCxVQUFVLENBQUMsR0FBRyxFQUFFO1lBQ2QsSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUNwQyxVQUFVLENBQUMsR0FBRyxFQUFFO2dCQUNkLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztZQUN4QixDQUFDLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVNLEtBQUs7UUFDVixJQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQ3pCLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDckMsQ0FBQztJQUVNLGNBQWM7UUFDbkIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxjQUFjLEVBQUUsQ0FBQztJQUNuQyxDQUFDO0lBRU8sS0FBSyxDQUFDLE1BQXNCO1FBQ2xDLElBQUksQ0FBQyxhQUFhLEdBQUcsTUFBTSxDQUFDLFlBQVksQ0FBQztRQUN6QyxJQUFJLENBQUMsU0FBUyxHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQUM7UUFDakMsSUFBSSxDQUFDLFFBQVEsR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDO1FBQy9CLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxNQUFNLENBQUMsZUFBZSxDQUFDO1FBQy9DLElBQUksQ0FBQyxLQUFLLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQztRQUN6QixJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUM7UUFDM0IsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ3RDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUMxQyxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBPdmVybGF5UmVmIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL292ZXJsYXknO1xuXG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIGNvbWJpbmVMYXRlc3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgSVBvcG92ZXJDb25maWcgfSBmcm9tICcuLi9pbnRlcmZhY2VzL3BvcG92ZXItY29uZmlnLmludGVyZmFjZSc7XG5cblxuZXhwb3J0IGNsYXNzIEZzUG9wb3ZlclJlZiB7XG5cbiAgcHVibGljIG92ZXJsYXlSZWY6IE92ZXJsYXlSZWY7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBfYXV0b1Nob3ckID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPih0cnVlKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfYXV0b0Nsb3NlJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4odHJ1ZSk7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2NvbXBvbmVudExvYWRpbmckID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPih0cnVlKTtcbiAgcHJpdmF0ZSBfbWF4V2lkdGg6IG51bWJlcjtcbiAgcHJpdmF0ZSBfd3JhcHBlckNsYXNzOiBzdHJpbmc7XG4gIHByaXZhdGUgX2xvYWRpbmdEaWFtZXRlcjogbnVtYmVyO1xuICBwcml2YXRlIF9sb2FkaW5nOiBib29sZWFuO1xuICBwcml2YXRlIF90aGVtZTogc3RyaW5nO1xuICBwcml2YXRlIF9zaXplOiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3IoY29uZmlnOiBJUG9wb3ZlckNvbmZpZyA9IHt9KSB7XG4gICAgdGhpcy5faW5pdChjb25maWcpO1xuICB9XG5cbiAgcHVibGljIGdldCBsb2FkaW5nRGlhbWV0ZXIoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2xvYWRpbmdEaWFtZXRlcjtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgc2l6ZSgpIHtcbiAgICByZXR1cm4gdGhpcy5fc2l6ZTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgdGhlbWUoKSB7XG4gICAgcmV0dXJuIHRoaXMuX3RoZW1lO1xuICB9XG5cbiAgcHVibGljIGdldCBsb2FkaW5nKCkge1xuICAgIHJldHVybiB0aGlzLl9sb2FkaW5nO1xuICB9XG5cbiAgcHVibGljIGdldCBhdXRvU2hvdyQoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2F1dG9TaG93JC5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgYXV0b1Nob3coKSB7XG4gICAgcmV0dXJuIHRoaXMuX2F1dG9TaG93JC5nZXRWYWx1ZSgpO1xuICB9XG5cbiAgcHVibGljIHNldCBhdXRvU2hvdyh2YWx1ZTogYm9vbGVhbikge1xuICAgIHRoaXMuX2F1dG9TaG93JC5uZXh0KHZhbHVlKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgYXV0b0Nsb3NlJCgpIHtcbiAgICByZXR1cm4gdGhpcy5fYXV0b0Nsb3NlJC5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgYXV0b0Nsb3NlKCkge1xuICAgIHJldHVybiB0aGlzLl9hdXRvQ2xvc2UkLmdldFZhbHVlKCk7XG4gIH1cblxuICBwdWJsaWMgc2V0IGF1dG9DbG9zZSh2YWx1ZTogYm9vbGVhbikge1xuICAgIHRoaXMuX2F1dG9DbG9zZSQubmV4dCh2YWx1ZSk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGNvbXBvbmVudFZpc2libGUkKCkge1xuICAgIHJldHVybiBjb21iaW5lTGF0ZXN0KFtcbiAgICAgIHRoaXMuYXV0b1Nob3ckLFxuICAgICAgdGhpcy5jb21wb25lbnRMb2FkaW5nJCxcbiAgICBdKS5waXBlKFxuICAgICAgbWFwKChbYXV0b1Nob3csIGNvbXBvbmVudExvYWRpbmddKSA9PiB7XG4gICAgICAgIHJldHVybiBhdXRvU2hvdyB8fCAhY29tcG9uZW50TG9hZGluZztcbiAgICAgIH0pXG4gICAgKVxuICB9XG5cbiAgcHVibGljIGdldCBjb21wb25lbnRMb2FkaW5nJCgpIHtcbiAgICByZXR1cm4gdGhpcy5fY29tcG9uZW50TG9hZGluZyQuYXNPYnNlcnZhYmxlKCk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGNvbXBvbmVudExvYWRpbmcoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2NvbXBvbmVudExvYWRpbmckLmdldFZhbHVlKCk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHdyYXBwZXJDbGFzcygpIHtcbiAgICByZXR1cm4gdGhpcy5fd3JhcHBlckNsYXNzO1xuICB9XG5cbiAgcHVibGljIGdldCBtYXhXaWR0aCgpIHtcbiAgICByZXR1cm4gdGhpcy5fbWF4V2lkdGg7XG4gIH1cblxuICBwdWJsaWMgc2hvdygpIHtcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIHRoaXMuX2NvbXBvbmVudExvYWRpbmckLm5leHQoZmFsc2UpO1xuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgIHRoaXMudXBkYXRlUG9zaXRpb24oKTtcbiAgICAgIH0pO1xuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIGNsb3NlKCkge1xuICAgIHRoaXMub3ZlcmxheVJlZi5kZXRhY2goKTtcbiAgICB0aGlzLl9jb21wb25lbnRMb2FkaW5nJC5uZXh0KHRydWUpO1xuICB9XG5cbiAgcHVibGljIHVwZGF0ZVBvc2l0aW9uKCkge1xuICAgIHRoaXMub3ZlcmxheVJlZi51cGRhdGVQb3NpdGlvbigpO1xuICB9XG5cbiAgcHJpdmF0ZSBfaW5pdChjb25maWc6IElQb3BvdmVyQ29uZmlnKSB7XG4gICAgdGhpcy5fd3JhcHBlckNsYXNzID0gY29uZmlnLndyYXBwZXJDbGFzcztcbiAgICB0aGlzLl9tYXhXaWR0aCA9IGNvbmZpZy5tYXhXaWR0aDtcbiAgICB0aGlzLl9sb2FkaW5nID0gY29uZmlnLmxvYWRpbmc7XG4gICAgdGhpcy5fbG9hZGluZ0RpYW1ldGVyID0gY29uZmlnLmxvYWRpbmdEaWFtZXRlcjtcbiAgICB0aGlzLl9zaXplID0gY29uZmlnLnNpemU7XG4gICAgdGhpcy5fdGhlbWUgPSBjb25maWcudGhlbWU7XG4gICAgdGhpcy5fYXV0b1Nob3ckLm5leHQoY29uZmlnLmF1dG9TaG93KTtcbiAgICB0aGlzLl9hdXRvQ2xvc2UkLm5leHQoY29uZmlnLmF1dG9DbG9zZSk7XG4gIH1cbn1cbiJdfQ==
98
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9wb3Zlci1yZWYuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYXBwL2NsYXNzL3BvcG92ZXItcmVmLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFBRSxlQUFlLEVBQUUsYUFBYSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3RELE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUtyQyxNQUFNLE9BQU8sWUFBWTtJQUVoQixVQUFVLENBQWE7SUFFYixVQUFVLEdBQUcsSUFBSSxlQUFlLENBQVUsSUFBSSxDQUFDLENBQUM7SUFDaEQsV0FBVyxHQUFHLElBQUksZUFBZSxDQUFVLElBQUksQ0FBQyxDQUFDO0lBQ2pELGtCQUFrQixHQUFHLElBQUksZUFBZSxDQUFVLElBQUksQ0FBQyxDQUFDO0lBQ2pFLFNBQVMsQ0FBUztJQUNsQixVQUFVLENBQVM7SUFDbkIsYUFBYSxDQUFTO0lBQ3RCLGdCQUFnQixDQUFTO0lBQ3pCLFFBQVEsQ0FBVTtJQUNsQixNQUFNLENBQVM7SUFDZixLQUFLLENBQVM7SUFFdEIsWUFBWSxTQUF5QixFQUFFO1FBQ3JDLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDckIsQ0FBQztJQUVELElBQVcsZUFBZTtRQUN4QixPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQztJQUMvQixDQUFDO0lBRUQsSUFBVyxJQUFJO1FBQ2IsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDO0lBQ3BCLENBQUM7SUFFRCxJQUFXLEtBQUs7UUFDZCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUM7SUFDckIsQ0FBQztJQUVELElBQVcsT0FBTztRQUNoQixPQUFPLElBQUksQ0FBQyxRQUFRLENBQUM7SUFDdkIsQ0FBQztJQUVELElBQVcsU0FBUztRQUNsQixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDeEMsQ0FBQztJQUVELElBQVcsUUFBUTtRQUNqQixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDcEMsQ0FBQztJQUVELElBQVcsUUFBUSxDQUFDLEtBQWM7UUFDaEMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDOUIsQ0FBQztJQUVELElBQVcsVUFBVTtRQUNuQixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDekMsQ0FBQztJQUVELElBQVcsU0FBUztRQUNsQixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDckMsQ0FBQztJQUVELElBQVcsU0FBUyxDQUFDLEtBQWM7UUFDakMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDL0IsQ0FBQztJQUVELElBQVcsaUJBQWlCO1FBQzFCLE9BQU8sYUFBYSxDQUFDO1lBQ25CLElBQUksQ0FBQyxTQUFTO1lBQ2QsSUFBSSxDQUFDLGlCQUFpQjtTQUN2QixDQUFDLENBQUMsSUFBSSxDQUNMLEdBQUcsQ0FBQyxDQUFDLENBQUMsUUFBUSxFQUFFLGdCQUFnQixDQUFDLEVBQUUsRUFBRTtZQUNuQyxPQUFPLFFBQVEsSUFBSSxDQUFDLGdCQUFnQixDQUFDO1FBQ3ZDLENBQUMsQ0FBQyxDQUNILENBQUE7SUFDSCxDQUFDO0lBRUQsSUFBVyxpQkFBaUI7UUFDMUIsT0FBTyxJQUFJLENBQUMsa0JBQWtCLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDaEQsQ0FBQztJQUVELElBQVcsZ0JBQWdCO1FBQ3pCLE9BQU8sSUFBSSxDQUFDLGtCQUFrQixDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQzVDLENBQUM7SUFFRCxJQUFXLFlBQVk7UUFDckIsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDO0lBQzVCLENBQUM7SUFFRCxJQUFXLFFBQVE7UUFDakIsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDO0lBQ3hCLENBQUM7SUFFRCxJQUFXLFNBQVM7UUFDbEIsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDO0lBQ3pCLENBQUM7SUFFTSxJQUFJO1FBQ1QsVUFBVSxDQUFDLEdBQUcsRUFBRTtZQUNkLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDcEMsVUFBVSxDQUFDLEdBQUcsRUFBRTtnQkFDZCxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7WUFDeEIsQ0FBQyxDQUFDLENBQUM7UUFDTCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTSxLQUFLO1FBQ1YsSUFBSSxDQUFDLFVBQVUsQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUN6QixJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3JDLENBQUM7SUFFTSxjQUFjO1FBQ25CLElBQUksQ0FBQyxVQUFVLENBQUMsY0FBYyxFQUFFLENBQUM7SUFDbkMsQ0FBQztJQUVPLEtBQUssQ0FBQyxNQUFzQjtRQUNsQyxJQUFJLENBQUMsYUFBYSxHQUFHLE1BQU0sQ0FBQyxZQUFZLENBQUM7UUFDekMsSUFBSSxDQUFDLFNBQVMsR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDO1FBQ2pDLElBQUksQ0FBQyxVQUFVLEdBQUcsTUFBTSxDQUFDLFNBQVMsQ0FBQztRQUNuQyxJQUFJLENBQUMsUUFBUSxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUM7UUFDL0IsSUFBSSxDQUFDLGdCQUFnQixHQUFHLE1BQU0sQ0FBQyxlQUFlLENBQUM7UUFDL0MsSUFBSSxDQUFDLEtBQUssR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDO1FBQ3pCLElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQztRQUMzQixJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDdEMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQzFDLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE92ZXJsYXlSZWYgfSBmcm9tICdAYW5ndWxhci9jZGsvb3ZlcmxheSc7XG5cbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgY29tYmluZUxhdGVzdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgbWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQgeyBJUG9wb3ZlckNvbmZpZyB9IGZyb20gJy4uL2ludGVyZmFjZXMvcG9wb3Zlci1jb25maWcuaW50ZXJmYWNlJztcblxuXG5leHBvcnQgY2xhc3MgRnNQb3BvdmVyUmVmIHtcblxuICBwdWJsaWMgb3ZlcmxheVJlZjogT3ZlcmxheVJlZjtcblxuICBwcml2YXRlIHJlYWRvbmx5IF9hdXRvU2hvdyQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KHRydWUpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9hdXRvQ2xvc2UkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPih0cnVlKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfY29tcG9uZW50TG9hZGluZyQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KHRydWUpO1xuICBwcml2YXRlIF9tYXhXaWR0aDogbnVtYmVyO1xuICBwcml2YXRlIF9tYXhIZWlnaHQ6IG51bWJlcjtcbiAgcHJpdmF0ZSBfd3JhcHBlckNsYXNzOiBzdHJpbmc7XG4gIHByaXZhdGUgX2xvYWRpbmdEaWFtZXRlcjogbnVtYmVyO1xuICBwcml2YXRlIF9sb2FkaW5nOiBib29sZWFuO1xuICBwcml2YXRlIF90aGVtZTogc3RyaW5nO1xuICBwcml2YXRlIF9zaXplOiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3IoY29uZmlnOiBJUG9wb3ZlckNvbmZpZyA9IHt9KSB7XG4gICAgdGhpcy5faW5pdChjb25maWcpO1xuICB9XG5cbiAgcHVibGljIGdldCBsb2FkaW5nRGlhbWV0ZXIoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2xvYWRpbmdEaWFtZXRlcjtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgc2l6ZSgpIHtcbiAgICByZXR1cm4gdGhpcy5fc2l6ZTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgdGhlbWUoKSB7XG4gICAgcmV0dXJuIHRoaXMuX3RoZW1lO1xuICB9XG5cbiAgcHVibGljIGdldCBsb2FkaW5nKCkge1xuICAgIHJldHVybiB0aGlzLl9sb2FkaW5nO1xuICB9XG5cbiAgcHVibGljIGdldCBhdXRvU2hvdyQoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2F1dG9TaG93JC5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgYXV0b1Nob3coKSB7XG4gICAgcmV0dXJuIHRoaXMuX2F1dG9TaG93JC5nZXRWYWx1ZSgpO1xuICB9XG5cbiAgcHVibGljIHNldCBhdXRvU2hvdyh2YWx1ZTogYm9vbGVhbikge1xuICAgIHRoaXMuX2F1dG9TaG93JC5uZXh0KHZhbHVlKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgYXV0b0Nsb3NlJCgpIHtcbiAgICByZXR1cm4gdGhpcy5fYXV0b0Nsb3NlJC5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgYXV0b0Nsb3NlKCkge1xuICAgIHJldHVybiB0aGlzLl9hdXRvQ2xvc2UkLmdldFZhbHVlKCk7XG4gIH1cblxuICBwdWJsaWMgc2V0IGF1dG9DbG9zZSh2YWx1ZTogYm9vbGVhbikge1xuICAgIHRoaXMuX2F1dG9DbG9zZSQubmV4dCh2YWx1ZSk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGNvbXBvbmVudFZpc2libGUkKCkge1xuICAgIHJldHVybiBjb21iaW5lTGF0ZXN0KFtcbiAgICAgIHRoaXMuYXV0b1Nob3ckLFxuICAgICAgdGhpcy5jb21wb25lbnRMb2FkaW5nJCxcbiAgICBdKS5waXBlKFxuICAgICAgbWFwKChbYXV0b1Nob3csIGNvbXBvbmVudExvYWRpbmddKSA9PiB7XG4gICAgICAgIHJldHVybiBhdXRvU2hvdyB8fCAhY29tcG9uZW50TG9hZGluZztcbiAgICAgIH0pXG4gICAgKVxuICB9XG5cbiAgcHVibGljIGdldCBjb21wb25lbnRMb2FkaW5nJCgpIHtcbiAgICByZXR1cm4gdGhpcy5fY29tcG9uZW50TG9hZGluZyQuYXNPYnNlcnZhYmxlKCk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGNvbXBvbmVudExvYWRpbmcoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2NvbXBvbmVudExvYWRpbmckLmdldFZhbHVlKCk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHdyYXBwZXJDbGFzcygpIHtcbiAgICByZXR1cm4gdGhpcy5fd3JhcHBlckNsYXNzO1xuICB9XG5cbiAgcHVibGljIGdldCBtYXhXaWR0aCgpIHtcbiAgICByZXR1cm4gdGhpcy5fbWF4V2lkdGg7XG4gIH1cblxuICBwdWJsaWMgZ2V0IG1heEhlaWdodCgpIHtcbiAgICByZXR1cm4gdGhpcy5fbWF4SGVpZ2h0O1xuICB9XG5cbiAgcHVibGljIHNob3coKSB7XG4gICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICB0aGlzLl9jb21wb25lbnRMb2FkaW5nJC5uZXh0KGZhbHNlKTtcbiAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICB0aGlzLnVwZGF0ZVBvc2l0aW9uKCk7XG4gICAgICB9KTtcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBjbG9zZSgpIHtcbiAgICB0aGlzLm92ZXJsYXlSZWYuZGV0YWNoKCk7XG4gICAgdGhpcy5fY29tcG9uZW50TG9hZGluZyQubmV4dCh0cnVlKTtcbiAgfVxuXG4gIHB1YmxpYyB1cGRhdGVQb3NpdGlvbigpIHtcbiAgICB0aGlzLm92ZXJsYXlSZWYudXBkYXRlUG9zaXRpb24oKTtcbiAgfVxuXG4gIHByaXZhdGUgX2luaXQoY29uZmlnOiBJUG9wb3ZlckNvbmZpZykge1xuICAgIHRoaXMuX3dyYXBwZXJDbGFzcyA9IGNvbmZpZy53cmFwcGVyQ2xhc3M7XG4gICAgdGhpcy5fbWF4V2lkdGggPSBjb25maWcubWF4V2lkdGg7XG4gICAgdGhpcy5fbWF4SGVpZ2h0ID0gY29uZmlnLm1heEhlaWdodDtcbiAgICB0aGlzLl9sb2FkaW5nID0gY29uZmlnLmxvYWRpbmc7XG4gICAgdGhpcy5fbG9hZGluZ0RpYW1ldGVyID0gY29uZmlnLmxvYWRpbmdEaWFtZXRlcjtcbiAgICB0aGlzLl9zaXplID0gY29uZmlnLnNpemU7XG4gICAgdGhpcy5fdGhlbWUgPSBjb25maWcudGhlbWU7XG4gICAgdGhpcy5fYXV0b1Nob3ckLm5leHQoY29uZmlnLmF1dG9TaG93KTtcbiAgICB0aGlzLl9hdXRvQ2xvc2UkLm5leHQoY29uZmlnLmF1dG9DbG9zZSk7XG4gIH1cbn1cbiJdfQ==
@@ -1,15 +1,15 @@
1
1
  import { ChangeDetectionStrategy, Component } from '@angular/core';
2
2
  import { FsPopoverDirective } from '../../directives/popover.directive';
3
+ import { NgClass } from '@angular/common';
3
4
  import * as i0 from "@angular/core";
4
- import * as i1 from "@angular/common";
5
5
  export class FsPopoverComponent extends FsPopoverDirective {
6
6
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: FsPopoverComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
7
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.7", type: FsPopoverComponent, selector: "fs-popover", host: { classAttribute: "fs-popover-component" }, usesInheritance: true, ngImport: i0, template: "<span [ngClass]=\"{'popover-container': enabled}\">\n <ng-content></ng-content>\n</span>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
7
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.7", type: FsPopoverComponent, isStandalone: true, selector: "fs-popover", host: { classAttribute: "fs-popover-component" }, usesInheritance: true, ngImport: i0, template: "<span [ngClass]=\"{'popover-container': enabled}\">\n <ng-content></ng-content>\n</span>\n", dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
8
8
  }
9
9
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: FsPopoverComponent, decorators: [{
10
10
  type: Component,
11
11
  args: [{ selector: 'fs-popover', changeDetection: ChangeDetectionStrategy.OnPush, host: {
12
12
  'class': 'fs-popover-component',
13
- }, template: "<span [ngClass]=\"{'popover-container': enabled}\">\n <ng-content></ng-content>\n</span>\n" }]
13
+ }, standalone: true, imports: [NgClass], template: "<span [ngClass]=\"{'popover-container': enabled}\">\n <ng-content></ng-content>\n</span>\n" }]
14
14
  }] });
15
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9wb3Zlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2NvbXBvbmVudHMvcG9wb3Zlci9wb3BvdmVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvY29tcG9uZW50cy9wb3BvdmVyL3BvcG92ZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQzs7O0FBV3hFLE1BQU0sT0FBTyxrQkFBbUIsU0FBUSxrQkFBa0I7dUdBQTdDLGtCQUFrQjsyRkFBbEIsa0JBQWtCLDJIQ1ovQiw2RkFHQTs7MkZEU2Esa0JBQWtCO2tCQVI5QixTQUFTOytCQUNFLFlBQVksbUJBRUwsdUJBQXVCLENBQUMsTUFBTSxRQUN6Qzt3QkFDSixPQUFPLEVBQUUsc0JBQXNCO3FCQUNoQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZzUG9wb3ZlckRpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZXMvcG9wb3Zlci5kaXJlY3RpdmUnO1xuXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2ZzLXBvcG92ZXInLFxuICB0ZW1wbGF0ZVVybDogJ3BvcG92ZXIuY29tcG9uZW50Lmh0bWwnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgaG9zdDoge1xuICAgICdjbGFzcyc6ICdmcy1wb3BvdmVyLWNvbXBvbmVudCcsXG4gIH1cbn0pXG5leHBvcnQgY2xhc3MgRnNQb3BvdmVyQ29tcG9uZW50IGV4dGVuZHMgRnNQb3BvdmVyRGlyZWN0aXZlIHt9XG4iLCI8c3BhbiBbbmdDbGFzc109XCJ7J3BvcG92ZXItY29udGFpbmVyJzogZW5hYmxlZH1cIj5cbiAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuPC9zcGFuPlxuIl19
15
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9wb3Zlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2NvbXBvbmVudHMvcG9wb3Zlci9wb3BvdmVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvY29tcG9uZW50cy9wb3BvdmVyL3BvcG92ZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUN4RSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0saUJBQWlCLENBQUM7O0FBYTFDLE1BQU0sT0FBTyxrQkFBbUIsU0FBUSxrQkFBa0I7dUdBQTdDLGtCQUFrQjsyRkFBbEIsa0JBQWtCLCtJQ2YvQiw2RkFHQSw0Q0RVYyxPQUFPOzsyRkFFUixrQkFBa0I7a0JBVjlCLFNBQVM7K0JBQ0ksWUFBWSxtQkFFTCx1QkFBdUIsQ0FBQyxNQUFNLFFBQ3pDO3dCQUNGLE9BQU8sRUFBRSxzQkFBc0I7cUJBQ2xDLGNBQ1csSUFBSSxXQUNQLENBQUMsT0FBTyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRnNQb3BvdmVyRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlcy9wb3BvdmVyLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBOZ0NsYXNzIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcblxuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2ZzLXBvcG92ZXInLFxuICAgIHRlbXBsYXRlVXJsOiAncG9wb3Zlci5jb21wb25lbnQuaHRtbCcsXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgaG9zdDoge1xuICAgICAgICAnY2xhc3MnOiAnZnMtcG9wb3Zlci1jb21wb25lbnQnLFxuICAgIH0sXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBpbXBvcnRzOiBbTmdDbGFzc11cbn0pXG5leHBvcnQgY2xhc3MgRnNQb3BvdmVyQ29tcG9uZW50IGV4dGVuZHMgRnNQb3BvdmVyRGlyZWN0aXZlIHt9XG4iLCI8c3BhbiBbbmdDbGFzc109XCJ7J3BvcG92ZXItY29udGFpbmVyJzogZW5hYmxlZH1cIj5cbiAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuPC9zcGFuPlxuIl19
@@ -1,17 +1,15 @@
1
- import { ChangeDetectionStrategy, Component, ElementRef, ViewChild, NgZone, Renderer2, } from '@angular/core';
1
+ import { ChangeDetectionStrategy, Component, ElementRef, NgZone, Renderer2, ViewChild, inject } from '@angular/core';
2
2
  import { BasePortalOutlet, CdkPortalOutlet, } from '@angular/cdk/portal';
3
3
  import { fromEvent, Subject } from 'rxjs';
4
4
  import { debounceTime, filter, takeUntil } from 'rxjs/operators';
5
5
  import { FsPopoverRef } from '../../class/popover-ref';
6
+ import { NgClass, AsyncPipe } from '@angular/common';
6
7
  import * as i0 from "@angular/core";
7
- import * as i1 from "../../class/popover-ref";
8
- import * as i2 from "@angular/common";
9
- import * as i3 from "@angular/cdk/portal";
10
8
  export class FsPopoverWrapperComponent extends BasePortalOutlet {
11
- popoverRef;
12
- _el;
13
- _zone;
14
- _renderer;
9
+ popoverRef = inject(FsPopoverRef);
10
+ _el = inject(ElementRef);
11
+ _zone = inject(NgZone);
12
+ _renderer = inject(Renderer2);
15
13
  _portalOutlet;
16
14
  spinner;
17
15
  content;
@@ -19,18 +17,18 @@ export class FsPopoverWrapperComponent extends BasePortalOutlet {
19
17
  _contentChangesObserver;
20
18
  _updatePosition = new Subject();
21
19
  _destroy$ = new Subject();
22
- constructor(popoverRef, _el, _zone, _renderer) {
20
+ constructor() {
23
21
  super();
24
- this.popoverRef = popoverRef;
25
- this._el = _el;
26
- this._zone = _zone;
27
- this._renderer = _renderer;
28
22
  this._updateClass();
29
23
  this.wrapperClass = this.popoverRef.wrapperClass;
30
24
  this.maxWidth = this.popoverRef.maxWidth;
25
+ this.maxHeight = this.popoverRef.maxHeight;
31
26
  }
32
27
  set maxWidth(value) {
33
- this._el.nativeElement.style.maxWidth = value ? value + 'px' : void 0;
28
+ this._el.nativeElement.style.maxWidth = value ? `${value}px` : void 0;
29
+ }
30
+ set maxHeight(value) {
31
+ this._el.nativeElement.style.setProperty('--fs-popover-max-height', value ? `${value}px` : null);
34
32
  }
35
33
  set wrapperClass(value) {
36
34
  this._wrapperClass = value;
@@ -76,13 +74,13 @@ export class FsPopoverWrapperComponent extends BasePortalOutlet {
76
74
  }
77
75
  _watchMousePosition() {
78
76
  const componentVisibilityChange$ = this.popoverRef.componentVisible$
79
- .pipe(filter((value) => value === true));
77
+ .pipe(filter((value) => value));
80
78
  this._zone.runOutsideAngular(() => {
81
79
  fromEvent(document, 'mousemove')
82
80
  .pipe(takeUntil(componentVisibilityChange$), takeUntil(this._destroy$))
83
81
  .subscribe((e) => {
84
- this.spinner.nativeElement.style.left = e.x + 'px';
85
- this.spinner.nativeElement.style.top = (e.y + 20) + 'px';
82
+ this.spinner.nativeElement.style.left = `${e.x}px`;
83
+ this.spinner.nativeElement.style.top = `${e.y + 20}px`;
86
84
  });
87
85
  });
88
86
  }
@@ -94,7 +92,7 @@ export class FsPopoverWrapperComponent extends BasePortalOutlet {
94
92
  _observeContentChanges() {
95
93
  const config = {
96
94
  childList: true,
97
- subtree: true
95
+ subtree: true,
98
96
  };
99
97
  this._contentChangesObserver = new MutationObserver(() => {
100
98
  this.updatePosition();
@@ -108,19 +106,23 @@ export class FsPopoverWrapperComponent extends BasePortalOutlet {
108
106
  this.popoverRef.updatePosition();
109
107
  });
110
108
  }
111
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: FsPopoverWrapperComponent, deps: [{ token: i1.FsPopoverRef }, { token: i0.ElementRef }, { token: i0.NgZone }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component });
112
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.7", type: FsPopoverWrapperComponent, selector: "fs-popover-wrapper", host: { classAttribute: "fs-popover-wrapper" }, viewQueries: [{ propertyName: "_portalOutlet", first: true, predicate: CdkPortalOutlet, descendants: true, static: true }, { propertyName: "spinner", first: true, predicate: ["spinner"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"wrapper\" [ngClass]=\"{\n 'theme-dark' : popoverRef.theme === 'dark',\n 'size-tiny': popoverRef.size === 'tiny',\n 'size-small': popoverRef.size === 'small',\n 'hidden': !(popoverRef.componentVisible$ | async)\n }\">\n <div class=\"mat-elevation-z4 popover-content\">\n <ng-container *ngIf=\"content\">\n {{content}}\n </ng-container>\n\n <ng-template cdkPortalOutlet></ng-template>\n </div>\n\n <div class=\"fs-popover-arrow light\"></div>\n <div class=\"fs-popover-arrow dark\"></div>\n</div>\n\n<div class=\"loading-spinner\"\n #spinner\n *ngIf=\"popoverRef.loading && !(popoverRef.componentVisible$ | async)\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" [attr.width]=\"popoverRef.loadingDiameter\" [attr.height]=\"popoverRef.loadingDiameter\" viewBox=\"0 0 42 42\" stroke=\"grey\">\n <g fill=\"none\" fill-rule=\"evenodd\">\n <g transform=\"translate(1 1)\" stroke-width=\"3\">\n <circle stroke-opacity=\".5\" cx=\"18\" cy=\"18\" r=\"18\"/>\n <path d=\"M36 18c0-9.94-8.06-18-18-18\">\n <animateTransform attributeName=\"transform\" type=\"rotate\" from=\"0 18 18\" to=\"360 18 18\" dur=\"1s\" repeatCount=\"indefinite\"/>\n </path>\n </g>\n </g>\n </svg>\n</div>\n", styles: [".wrapper{padding:6px;animation:fadeIn ease .2s}.wrapper.hidden{display:none}.wrapper .popover-content{background:#fff;border-radius:4px;padding:8px;color:#1b1b1b;box-sizing:border-box;overflow:hidden}.wrapper.theme-dark .popover-content{background-color:#707070;color:#fff}.wrapper.size-small .popover-content{font-size:80%}.wrapper.size-tiny .popover-content{font-size:70%}.wrapper .fs-popover-arrow{width:0;height:0;font-size:0;line-height:0;position:absolute;z-index:200;z-index:1}.wrapper .fs-popover-arrow.dark{z-index:0}::ng-deep .fs-popover-top .fs-popover-arrow,::ng-deep .fs-popover-bottom .fs-popover-arrow{border-left:10px solid transparent;border-right:10px solid transparent}::ng-deep .fs-popover-left .fs-popover-arrow,::ng-deep .fs-popover-right .fs-popover-arrow{border-top:10px solid transparent;border-bottom:10px solid transparent}::ng-deep .fs-popover-top .fs-popover-arrow{bottom:-3px;left:calc(50% - 10px);border-top:10px solid #fff}::ng-deep .fs-popover-top .fs-popover-arrow.dark{border-top-color:#dfdfdf40;bottom:-4px}::ng-deep .fs-popover-bottom .fs-popover-arrow{top:-3px;left:calc(50% - 10px);border-bottom:10px solid #fff}::ng-deep .fs-popover-bottom .fs-popover-arrow.dark{border-bottom-color:#dfdfdf40;top:-4px}::ng-deep .fs-popover-left .fs-popover-arrow{left:-3px;top:calc(50% - 10px);border-right:10px solid #fff}::ng-deep .fs-popover-left .fs-popover-arrow.dark{border-right-color:#dfdfdf40;left:-4px}::ng-deep .fs-popover-right .fs-popover-arrow{right:-3px;top:calc(50% - 10px);border-left:10px solid #fff}::ng-deep .fs-popover-right .fs-popover-arrow.dark{border-left-color:#dfdfdf40;right:-4px}::ng-deep .fs-popover-bottom .wrapper.theme-dark .fs-popover-arrow{border-bottom-color:#707070}::ng-deep .fs-popover-left .wrapper.theme-dark .fs-popover-arrow{border-right-color:#707070}::ng-deep .fs-popover-right .wrapper.theme-dark .fs-popover-arrow{border-left-color:#707070}::ng-deep .fs-popover-top .wrapper.theme-dark .fs-popover-arrow{border-top-color:#707070}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.CdkPortalOutlet, selector: "[cdkPortalOutlet]", inputs: ["cdkPortalOutlet"], outputs: ["attached"], exportAs: ["cdkPortalOutlet"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
109
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: FsPopoverWrapperComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
110
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.7", type: FsPopoverWrapperComponent, isStandalone: true, selector: "fs-popover-wrapper", host: { classAttribute: "fs-popover-wrapper" }, viewQueries: [{ propertyName: "_portalOutlet", first: true, predicate: CdkPortalOutlet, descendants: true, static: true }, { propertyName: "spinner", first: true, predicate: ["spinner"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"wrapper\" [ngClass]=\"{\n 'theme-dark' : popoverRef.theme === 'dark',\n 'size-tiny': popoverRef.size === 'tiny',\n 'size-small': popoverRef.size === 'small',\n 'hidden': !(popoverRef.componentVisible$ | async)\n }\">\n <div class=\"mat-elevation-z4 popover-content\">\n @if (content) {\n {{content}}\n }\n\n <ng-template cdkPortalOutlet></ng-template>\n </div>\n\n <div class=\"fs-popover-arrow light\"></div>\n <div class=\"fs-popover-arrow dark\"></div>\n</div>\n\n@if (popoverRef.loading && !(popoverRef.componentVisible$ | async)) {\n <div class=\"loading-spinner\"\n #spinner\n >\n <svg xmlns=\"http://www.w3.org/2000/svg\" [attr.width]=\"popoverRef.loadingDiameter\" [attr.height]=\"popoverRef.loadingDiameter\" viewBox=\"0 0 42 42\" stroke=\"grey\">\n <g fill=\"none\" fill-rule=\"evenodd\">\n <g transform=\"translate(1 1)\" stroke-width=\"3\">\n <circle stroke-opacity=\".5\" cx=\"18\" cy=\"18\" r=\"18\"/>\n <path d=\"M36 18c0-9.94-8.06-18-18-18\">\n <animateTransform attributeName=\"transform\" type=\"rotate\" from=\"0 18 18\" to=\"360 18 18\" dur=\"1s\" repeatCount=\"indefinite\"/>\n </path>\n </g>\n </g>\n </svg>\n </div>\n}\n", styles: [".wrapper{padding:6px;animation:fadeIn ease .2s}.wrapper.hidden{display:none}.wrapper .popover-content{background:#fff;border-radius:4px;padding:8px;color:#1b1b1b;box-sizing:border-box;overflow:auto;max-height:var(--fs-popover-max-height, calc(100vh - 100px) )}.wrapper.theme-dark .popover-content{background-color:#707070;color:#fff}.wrapper.size-small .popover-content{font-size:80%}.wrapper.size-tiny .popover-content{font-size:70%}.wrapper .fs-popover-arrow{width:0;height:0;font-size:0;line-height:0;position:absolute;z-index:200;z-index:1}.wrapper .fs-popover-arrow.dark{z-index:0}::ng-deep .fs-popover-top .fs-popover-arrow,::ng-deep .fs-popover-bottom .fs-popover-arrow{border-left:10px solid transparent;border-right:10px solid transparent}::ng-deep .fs-popover-left .fs-popover-arrow,::ng-deep .fs-popover-right .fs-popover-arrow{border-top:10px solid transparent;border-bottom:10px solid transparent}::ng-deep .fs-popover-top .fs-popover-arrow{bottom:-3px;left:calc(50% - 10px);border-top:10px solid #fff}::ng-deep .fs-popover-top .fs-popover-arrow.dark{border-top-color:#dfdfdf40;bottom:-4px}::ng-deep .fs-popover-bottom .fs-popover-arrow{top:-3px;left:calc(50% - 10px);border-bottom:10px solid #fff}::ng-deep .fs-popover-bottom .fs-popover-arrow.dark{border-bottom-color:#dfdfdf40;top:-4px}::ng-deep .fs-popover-left .fs-popover-arrow{left:-3px;top:calc(50% - 10px);border-right:10px solid #fff}::ng-deep .fs-popover-left .fs-popover-arrow.dark{border-right-color:#dfdfdf40;left:-4px}::ng-deep .fs-popover-right .fs-popover-arrow{right:-3px;top:calc(50% - 10px);border-left:10px solid #fff}::ng-deep .fs-popover-right .fs-popover-arrow.dark{border-left-color:#dfdfdf40;right:-4px}::ng-deep .fs-popover-bottom .wrapper.theme-dark .fs-popover-arrow{border-bottom-color:#707070}::ng-deep .fs-popover-left .wrapper.theme-dark .fs-popover-arrow{border-right-color:#707070}::ng-deep .fs-popover-right .wrapper.theme-dark .fs-popover-arrow{border-left-color:#707070}::ng-deep .fs-popover-top .wrapper.theme-dark .fs-popover-arrow{border-top-color:#707070}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}\n"], dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: CdkPortalOutlet, selector: "[cdkPortalOutlet]", inputs: ["cdkPortalOutlet"], outputs: ["attached"], exportAs: ["cdkPortalOutlet"] }, { kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
113
111
  }
114
112
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: FsPopoverWrapperComponent, decorators: [{
115
113
  type: Component,
116
114
  args: [{ selector: 'fs-popover-wrapper', changeDetection: ChangeDetectionStrategy.OnPush, host: {
117
115
  'class': 'fs-popover-wrapper',
118
- }, template: "<div class=\"wrapper\" [ngClass]=\"{\n 'theme-dark' : popoverRef.theme === 'dark',\n 'size-tiny': popoverRef.size === 'tiny',\n 'size-small': popoverRef.size === 'small',\n 'hidden': !(popoverRef.componentVisible$ | async)\n }\">\n <div class=\"mat-elevation-z4 popover-content\">\n <ng-container *ngIf=\"content\">\n {{content}}\n </ng-container>\n\n <ng-template cdkPortalOutlet></ng-template>\n </div>\n\n <div class=\"fs-popover-arrow light\"></div>\n <div class=\"fs-popover-arrow dark\"></div>\n</div>\n\n<div class=\"loading-spinner\"\n #spinner\n *ngIf=\"popoverRef.loading && !(popoverRef.componentVisible$ | async)\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" [attr.width]=\"popoverRef.loadingDiameter\" [attr.height]=\"popoverRef.loadingDiameter\" viewBox=\"0 0 42 42\" stroke=\"grey\">\n <g fill=\"none\" fill-rule=\"evenodd\">\n <g transform=\"translate(1 1)\" stroke-width=\"3\">\n <circle stroke-opacity=\".5\" cx=\"18\" cy=\"18\" r=\"18\"/>\n <path d=\"M36 18c0-9.94-8.06-18-18-18\">\n <animateTransform attributeName=\"transform\" type=\"rotate\" from=\"0 18 18\" to=\"360 18 18\" dur=\"1s\" repeatCount=\"indefinite\"/>\n </path>\n </g>\n </g>\n </svg>\n</div>\n", styles: [".wrapper{padding:6px;animation:fadeIn ease .2s}.wrapper.hidden{display:none}.wrapper .popover-content{background:#fff;border-radius:4px;padding:8px;color:#1b1b1b;box-sizing:border-box;overflow:hidden}.wrapper.theme-dark .popover-content{background-color:#707070;color:#fff}.wrapper.size-small .popover-content{font-size:80%}.wrapper.size-tiny .popover-content{font-size:70%}.wrapper .fs-popover-arrow{width:0;height:0;font-size:0;line-height:0;position:absolute;z-index:200;z-index:1}.wrapper .fs-popover-arrow.dark{z-index:0}::ng-deep .fs-popover-top .fs-popover-arrow,::ng-deep .fs-popover-bottom .fs-popover-arrow{border-left:10px solid transparent;border-right:10px solid transparent}::ng-deep .fs-popover-left .fs-popover-arrow,::ng-deep .fs-popover-right .fs-popover-arrow{border-top:10px solid transparent;border-bottom:10px solid transparent}::ng-deep .fs-popover-top .fs-popover-arrow{bottom:-3px;left:calc(50% - 10px);border-top:10px solid #fff}::ng-deep .fs-popover-top .fs-popover-arrow.dark{border-top-color:#dfdfdf40;bottom:-4px}::ng-deep .fs-popover-bottom .fs-popover-arrow{top:-3px;left:calc(50% - 10px);border-bottom:10px solid #fff}::ng-deep .fs-popover-bottom .fs-popover-arrow.dark{border-bottom-color:#dfdfdf40;top:-4px}::ng-deep .fs-popover-left .fs-popover-arrow{left:-3px;top:calc(50% - 10px);border-right:10px solid #fff}::ng-deep .fs-popover-left .fs-popover-arrow.dark{border-right-color:#dfdfdf40;left:-4px}::ng-deep .fs-popover-right .fs-popover-arrow{right:-3px;top:calc(50% - 10px);border-left:10px solid #fff}::ng-deep .fs-popover-right .fs-popover-arrow.dark{border-left-color:#dfdfdf40;right:-4px}::ng-deep .fs-popover-bottom .wrapper.theme-dark .fs-popover-arrow{border-bottom-color:#707070}::ng-deep .fs-popover-left .wrapper.theme-dark .fs-popover-arrow{border-right-color:#707070}::ng-deep .fs-popover-right .wrapper.theme-dark .fs-popover-arrow{border-left-color:#707070}::ng-deep .fs-popover-top .wrapper.theme-dark .fs-popover-arrow{border-top-color:#707070}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}\n"] }]
119
- }], ctorParameters: () => [{ type: i1.FsPopoverRef }, { type: i0.ElementRef }, { type: i0.NgZone }, { type: i0.Renderer2 }], propDecorators: { _portalOutlet: [{
116
+ }, standalone: true, imports: [
117
+ NgClass,
118
+ CdkPortalOutlet,
119
+ AsyncPipe,
120
+ ], template: "<div class=\"wrapper\" [ngClass]=\"{\n 'theme-dark' : popoverRef.theme === 'dark',\n 'size-tiny': popoverRef.size === 'tiny',\n 'size-small': popoverRef.size === 'small',\n 'hidden': !(popoverRef.componentVisible$ | async)\n }\">\n <div class=\"mat-elevation-z4 popover-content\">\n @if (content) {\n {{content}}\n }\n\n <ng-template cdkPortalOutlet></ng-template>\n </div>\n\n <div class=\"fs-popover-arrow light\"></div>\n <div class=\"fs-popover-arrow dark\"></div>\n</div>\n\n@if (popoverRef.loading && !(popoverRef.componentVisible$ | async)) {\n <div class=\"loading-spinner\"\n #spinner\n >\n <svg xmlns=\"http://www.w3.org/2000/svg\" [attr.width]=\"popoverRef.loadingDiameter\" [attr.height]=\"popoverRef.loadingDiameter\" viewBox=\"0 0 42 42\" stroke=\"grey\">\n <g fill=\"none\" fill-rule=\"evenodd\">\n <g transform=\"translate(1 1)\" stroke-width=\"3\">\n <circle stroke-opacity=\".5\" cx=\"18\" cy=\"18\" r=\"18\"/>\n <path d=\"M36 18c0-9.94-8.06-18-18-18\">\n <animateTransform attributeName=\"transform\" type=\"rotate\" from=\"0 18 18\" to=\"360 18 18\" dur=\"1s\" repeatCount=\"indefinite\"/>\n </path>\n </g>\n </g>\n </svg>\n </div>\n}\n", styles: [".wrapper{padding:6px;animation:fadeIn ease .2s}.wrapper.hidden{display:none}.wrapper .popover-content{background:#fff;border-radius:4px;padding:8px;color:#1b1b1b;box-sizing:border-box;overflow:auto;max-height:var(--fs-popover-max-height, calc(100vh - 100px) )}.wrapper.theme-dark .popover-content{background-color:#707070;color:#fff}.wrapper.size-small .popover-content{font-size:80%}.wrapper.size-tiny .popover-content{font-size:70%}.wrapper .fs-popover-arrow{width:0;height:0;font-size:0;line-height:0;position:absolute;z-index:200;z-index:1}.wrapper .fs-popover-arrow.dark{z-index:0}::ng-deep .fs-popover-top .fs-popover-arrow,::ng-deep .fs-popover-bottom .fs-popover-arrow{border-left:10px solid transparent;border-right:10px solid transparent}::ng-deep .fs-popover-left .fs-popover-arrow,::ng-deep .fs-popover-right .fs-popover-arrow{border-top:10px solid transparent;border-bottom:10px solid transparent}::ng-deep .fs-popover-top .fs-popover-arrow{bottom:-3px;left:calc(50% - 10px);border-top:10px solid #fff}::ng-deep .fs-popover-top .fs-popover-arrow.dark{border-top-color:#dfdfdf40;bottom:-4px}::ng-deep .fs-popover-bottom .fs-popover-arrow{top:-3px;left:calc(50% - 10px);border-bottom:10px solid #fff}::ng-deep .fs-popover-bottom .fs-popover-arrow.dark{border-bottom-color:#dfdfdf40;top:-4px}::ng-deep .fs-popover-left .fs-popover-arrow{left:-3px;top:calc(50% - 10px);border-right:10px solid #fff}::ng-deep .fs-popover-left .fs-popover-arrow.dark{border-right-color:#dfdfdf40;left:-4px}::ng-deep .fs-popover-right .fs-popover-arrow{right:-3px;top:calc(50% - 10px);border-left:10px solid #fff}::ng-deep .fs-popover-right .fs-popover-arrow.dark{border-left-color:#dfdfdf40;right:-4px}::ng-deep .fs-popover-bottom .wrapper.theme-dark .fs-popover-arrow{border-bottom-color:#707070}::ng-deep .fs-popover-left .wrapper.theme-dark .fs-popover-arrow{border-right-color:#707070}::ng-deep .fs-popover-right .wrapper.theme-dark .fs-popover-arrow{border-left-color:#707070}::ng-deep .fs-popover-top .wrapper.theme-dark .fs-popover-arrow{border-top-color:#707070}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}\n"] }]
121
+ }], ctorParameters: () => [], propDecorators: { _portalOutlet: [{
120
122
  type: ViewChild,
121
123
  args: [CdkPortalOutlet, { static: true }]
122
124
  }], spinner: [{
123
125
  type: ViewChild,
124
126
  args: ['spinner']
125
127
  }] } });
126
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9wb3Zlci13cmFwcGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvY29tcG9uZW50cy9wb3BvdmVyLXdyYXBwZXIvcG9wb3Zlci13cmFwcGVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvY29tcG9uZW50cy9wb3BvdmVyLXdyYXBwZXIvcG9wb3Zlci13cmFwcGVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUVULFVBQVUsRUFFVixTQUFTLEVBRVQsTUFBTSxFQUVOLFNBQVMsR0FDVixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQ0wsZ0JBQWdCLEVBQ2hCLGVBQWUsR0FHaEIsTUFBTSxxQkFBcUIsQ0FBQztBQUU3QixPQUFPLEVBQUUsU0FBUyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMxQyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVqRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0seUJBQXlCLENBQUM7Ozs7O0FBWXZELE1BQU0sT0FBTyx5QkFBMEIsU0FBUSxnQkFBZ0I7SUFpQnBEO0lBQ0M7SUFDQTtJQUNBO0lBakJILGFBQWEsQ0FBa0I7SUFHL0IsT0FBTyxDQUFhO0lBRXBCLE9BQU8sQ0FBUztJQUVmLGFBQWEsQ0FBUztJQUN0Qix1QkFBdUIsQ0FBbUI7SUFDMUMsZUFBZSxHQUFHLElBQUksT0FBTyxFQUFRLENBQUM7SUFFdEMsU0FBUyxHQUFHLElBQUksT0FBTyxFQUFRLENBQUM7SUFFeEMsWUFDUyxVQUF3QixFQUN2QixHQUFlLEVBQ2YsS0FBYSxFQUNiLFNBQW9CO1FBRTVCLEtBQUssRUFBRSxDQUFDO1FBTEQsZUFBVSxHQUFWLFVBQVUsQ0FBYztRQUN2QixRQUFHLEdBQUgs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QyxTQUFTOytCQUNFLG9CQUFvQixtQkFHYix1QkFBdUIsQ0FBQyxNQUFNLFFBQ3pDO3dCQUNKLE9BQU8sRUFBRSxvQkFBb0I7cUJBQzlCO3VKQUtNLGFBQWE7c0JBRG5CLFNBQVM7dUJBQUMsZUFBZSxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTtnQkFJckMsT0FBTztzQkFEYixTQUFTO3VCQUFDLFNBQVMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBDb21wb25lbnRSZWYsXG4gIEVsZW1lbnRSZWYsXG4gIEVtYmVkZGVkVmlld1JlZixcbiAgVmlld0NoaWxkLFxuICBPbkRlc3Ryb3ksXG4gIE5nWm9uZSxcbiAgT25Jbml0LFxuICBSZW5kZXJlcjIsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQge1xuICBCYXNlUG9ydGFsT3V0bGV0LFxuICBDZGtQb3J0YWxPdXRsZXQsXG4gIENvbXBvbmVudFBvcnRhbCxcbiAgVGVtcGxhdGVQb3J0YWwsXG59IGZyb20gJ0Bhbmd1bGFyL2Nkay9wb3J0YWwnO1xuXG5pbXBvcnQgeyBmcm9tRXZlbnQsIFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGRlYm91bmNlVGltZSwgZmlsdGVyLCB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IEZzUG9wb3ZlclJlZiB9IGZyb20gJy4uLy4uL2NsYXNzL3BvcG92ZXItcmVmJztcblxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdmcy1wb3BvdmVyLXdyYXBwZXInLFxuICB0ZW1wbGF0ZVVybDogJ3BvcG92ZXItd3JhcHBlci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWyAncG9wb3Zlci13cmFwcGVyLmNvbXBvbmVudC5zY3NzJyBdLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgaG9zdDoge1xuICAgICdjbGFzcyc6ICdmcy1wb3BvdmVyLXdyYXBwZXInLFxuICB9LFxufSlcbmV4cG9ydCBjbGFzcyBGc1BvcG92ZXJXcmFwcGVyQ29tcG9uZW50IGV4dGVuZHMgQmFzZVBvcnRhbE91dGxldCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcblxuICBAVmlld0NoaWxkKENka1BvcnRhbE91dGxldCwgeyBzdGF0aWM6IHRydWUgfSlcbiAgcHVibGljIF9wb3J0YWxPdXRsZXQ6IENka1BvcnRhbE91dGxldDtcblxuICBAVmlld0NoaWxkKCdzcGlubmVyJylcbiAgcHVibGljIHNwaW5uZXI6IEVsZW1lbnRSZWY7XG5cbiAgcHVibGljIGNvbnRlbnQ6IHN0cmluZztcblxuICBwcml2YXRlIF93cmFwcGVyQ2xhc3M6IHN0cmluZztcbiAgcHJpdmF0ZSBfY29udGVudENoYW5nZXNPYnNlcnZlcjogTXV0YXRpb25PYnNlcnZlcjtcbiAgcHJpdmF0ZSBfdXBkYXRlUG9zaXRpb24gPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gIHByaXZhdGUgX2Rlc3Ryb3kkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgcG9wb3ZlclJlZjogRnNQb3BvdmVyUmVmLFxuICAgIHByaXZhdGUgX2VsOiBFbGVtZW50UmVmLFxuICAgIHByaXZhdGUgX3pvbmU6IE5nWm9uZSxcbiAgICBwcml2YXRlIF9yZW5kZXJlcjogUmVuZGVyZXIyLFxuICApIHtcbiAgICBzdXBlcigpO1xuICAgIHRoaXMuX3VwZGF0ZUNsYXNzKCk7XG5cbiAgICB0aGlzLndyYXBwZXJDbGFzcyA9IHRoaXMucG9wb3ZlclJlZi53cmFwcGVyQ2xhc3M7XG4gICAgdGhpcy5tYXhXaWR0aCA9IHRoaXMucG9wb3ZlclJlZi5tYXhXaWR0aDtcbiAgfVxuXG4gIHB1YmxpYyBzZXQgbWF4V2lkdGgodmFsdWU6IG51bWJlcikge1xuICAgIHRoaXMuX2VsLm5hdGl2ZUVsZW1lbnQuc3R5bGUubWF4V2lkdGggPSB2YWx1ZSA/IHZhbHVlICsgJ3B4JyA6IHZvaWQgMDtcbiAgfVxuXG4gIHB1YmxpYyBzZXQgd3JhcHBlckNsYXNzKHZhbHVlOiBzdHJpbmcpIHtcbiAgICB0aGlzLl93cmFwcGVyQ2xhc3MgPSB2YWx1ZTtcbiAgICB0aGlzLl91cGRhdGVDbGFzcygpO1xuICB9XG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5wb3BvdmVyUmVmLmF1dG9TaG93ICYmIHRoaXMucG9wb3ZlclJlZi5jb21wb25lbnRMb2FkaW5nKSB7XG4gICAgICB0aGlzLl93YXRjaE1vdXNlUG9zaXRpb24oKTtcbiAgICB9XG5cbiAgICB0aGlzLl9vYnNlcnZlQ29udGVudENoYW5nZXMoKTtcbiAgICB0aGlzLl9saXN0ZW5VcGRhdGVQb3NpdGlvblJlcXVlc3RzKCk7XG4gIH1cblxuXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLl9jb250ZW50Q2hhbmdlc09ic2VydmVyLmRpc2Nvbm5lY3QoKTtcbiAgICB0aGlzLl9kZXN0cm95JC5uZXh0KG51bGwpO1xuICAgIHRoaXMuX2Rlc3Ryb3kkLmNvbXBsZXRlKCk7XG4gIH1cblxuICAvKipcbiAgICogQXR0YWNoIGEgVGVtcGxhdGVQb3J0YWwgYXMgY29udGVudCB0byB0aGlzIHBvcG92ZXIgY29udGFpbmVyLlxuICAgKiBAcGFyYW0gcG9ydGFsIFBvcnRhbCB0byBiZSBhdHRhY2hlZCBhcyB0aGUgcG9wb3ZlciBjb250ZW50LlxuICAgKi9cbiAgcHVibGljIGF0dGFjaFRlbXBsYXRlUG9ydGFsPEM+KHBvcnRhbDogVGVtcGxhdGVQb3J0YWw8Qz4pOiBFbWJlZGRlZFZpZXdSZWY8Qz4ge1xuXG4gICAgaWYgKHRoaXMuX3BvcnRhbE91dGxldC5oYXNBdHRhY2hlZCgpKSB7XG4gICAgICB0aHJvdyBFcnJvcignUG9wb3ZlciB0ZW1wbGF0ZSBhbHJlYWR5IGF0dGFjaGVkJyk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMuX3BvcnRhbE91dGxldC5hdHRhY2hUZW1wbGF0ZVBvcnRhbChwb3J0YWwpO1xuICB9XG5cblxuICAvKipcbiAgICogQXR0YWNoIGEgQ29tcG9uZW50UG9ydGFsIGFzIGNvbnRlbnQgdG8gdGhpcyBwb3BvdmVyIGNvbnRhaW5lci5cbiAgICogQHBhcmFtIHBvcnRhbCBQb3J0YWwgdG8gYmUgYXR0YWNoZWQgYXMgdGhlIHBvcG92ZXIgY29udGVudC5cbiAgICovXG4gIHB1YmxpYyBhdHRhY2hDb21wb25lbnRQb3J0YWw8VD4ocG9ydGFsOiBDb21wb25lbnRQb3J0YWw8VD4pOiBDb21wb25lbnRSZWY8VD4ge1xuXG4gICAgaWYgKHRoaXMuX3BvcnRhbE91dGxldC5oYXNBdHRhY2hlZCgpKSB7XG4gICAgICB0aHJvdyBFcnJvcignUG9wb3ZlciBjb21wb25lbnQgYWxyZWFkeSBhdHRhY2hlZCcpO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLl9wb3J0YWxPdXRsZXQuYXR0YWNoQ29tcG9uZW50UG9ydGFsKHBvcnRhbCk7XG4gIH1cblxuICBwdWJsaWMgc2V0VGV4dHVhbENvbnRlbnQoY29udGVudDogc3RyaW5nKTogdm9pZCB7XG4gICAgdGhpcy5jb250ZW50ID0gY29udGVudDtcbiAgfVxuXG4gIHB1YmxpYyB1cGRhdGVQb3NpdGlvbigpIHtcbiAgICB0aGlzLl91cGRhdGVQb3NpdGlvbi5uZXh0KG51bGwpO1xuICB9XG5cbiAgcHJpdmF0ZSBfd2F0Y2hNb3VzZVBvc2l0aW9uKCkge1xuICAgIGNvbnN0IGNvbXBvbmVudFZpc2liaWxpdHlDaGFuZ2UkID0gdGhpcy5wb3BvdmVyUmVmLmNvbXBvbmVudFZpc2libGUkXG4gICAgICAucGlwZShcbiAgICAgICAgZmlsdGVyKCh2YWx1ZSkgPT4gdmFsdWUgPT09IHRydWUpXG4gICAgICApO1xuXG4gICAgdGhpcy5fem9uZS5ydW5PdXRzaWRlQW5ndWxhcigoKSA9PiB7XG4gICAgICBmcm9tRXZlbnQoZG9jdW1lbnQsICdtb3VzZW1vdmUnKVxuICAgICAgICAucGlwZShcbiAgICAgICAgICB0YWtlVW50aWwoY29tcG9uZW50VmlzaWJpbGl0eUNoYW5nZSQpLFxuICAgICAgICAgIHRha2VVbnRpbCh0aGlzLl9kZXN0cm95JCksXG4gICAgICAgIClcbiAgICAgICAgLnN1YnNjcmliZSgoZTogTW91c2VFdmVudCkgPT4ge1xuICAgICAgICAgIHRoaXMuc3Bpbm5lci5uYXRpdmVFbGVtZW50LnN0eWxlLmxlZnQgPSBlLnggKyAncHgnO1xuICAgICAgICAgIHRoaXMuc3Bpbm5lci5uYXRpdmVFbGVtZW50LnN0eWxlLnRvcCA9IChlLnkgKyAyMCkgKyAncHgnO1xuICAgICAgICB9KTtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgX3VwZGF0ZUNsYXNzKCkge1xuICAgIGlmICh0aGlzLl93cmFwcGVyQ2xhc3MpIHtcbiAgICAgIHRoaXMuX3JlbmRlcmVyLmFkZENsYXNzKHRoaXMuX2VsLm5hdGl2ZUVsZW1lbnQsIHRoaXMuX3dyYXBwZXJDbGFzcyk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfb2JzZXJ2ZUNvbnRlbnRDaGFuZ2VzKCkge1xuICAgIGNvbnN0IGNvbmZpZyA9IHtcbiAgICAgIGNoaWxkTGlzdDogdHJ1ZSxcbiAgICAgIHN1YnRyZWU6IHRydWVcbiAgICB9O1xuXG4gICAgdGhpcy5fY29udGVudENoYW5nZXNPYnNlcnZlciA9IG5ldyBNdXRhdGlvbk9ic2VydmVyKCgpID0+IHtcbiAgICAgIHRoaXMudXBkYXRlUG9zaXRpb24oKTtcbiAgICB9KTtcblxuICAgIHRoaXMuX2NvbnRlbnRDaGFuZ2VzT2JzZXJ2ZXIub2JzZXJ2ZSh0aGlzLl9lbC5uYXRpdmVFbGVtZW50LCBjb25maWcpO1xuICB9XG5cbiAgcHJpdmF0ZSBfbGlzdGVuVXBkYXRlUG9zaXRpb25SZXF1ZXN0cygpIHtcbiAgICB0aGlzLl91cGRhdGVQb3NpdGlvblxuICAgICAgLnBpcGUoXG4gICAgICAgIGRlYm91bmNlVGltZSg1MCksXG4gICAgICAgIHRha2VVbnRpbCh0aGlzLl9kZXN0cm95JCksXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgdGhpcy5wb3BvdmVyUmVmLnVwZGF0ZVBvc2l0aW9uKCk7XG4gICAgICB9KVxuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwid3JhcHBlclwiIFtuZ0NsYXNzXT1cIntcbiAgJ3RoZW1lLWRhcmsnIDogcG9wb3ZlclJlZi50aGVtZSA9PT0gJ2RhcmsnLFxuICAnc2l6ZS10aW55JzogcG9wb3ZlclJlZi5zaXplID09PSAndGlueScsXG4gICdzaXplLXNtYWxsJzogcG9wb3ZlclJlZi5zaXplID09PSAnc21hbGwnLFxuICAnaGlkZGVuJzogIShwb3BvdmVyUmVmLmNvbXBvbmVudFZpc2libGUkIHwgYXN5bmMpXG4gIH1cIj5cbiAgPGRpdiBjbGFzcz1cIm1hdC1lbGV2YXRpb24tejQgcG9wb3Zlci1jb250ZW50XCI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImNvbnRlbnRcIj5cbiAgICAgIHt7Y29udGVudH19XG4gICAgPC9uZy1jb250YWluZXI+XG5cbiAgICA8bmctdGVtcGxhdGUgY2RrUG9ydGFsT3V0bGV0PjwvbmctdGVtcGxhdGU+XG4gIDwvZGl2PlxuXG4gIDxkaXYgY2xhc3M9XCJmcy1wb3BvdmVyLWFycm93IGxpZ2h0XCI+PC9kaXY+XG4gIDxkaXYgY2xhc3M9XCJmcy1wb3BvdmVyLWFycm93IGRhcmtcIj48L2Rpdj5cbjwvZGl2PlxuXG48ZGl2IGNsYXNzPVwibG9hZGluZy1zcGlubmVyXCJcbiAgICAjc3Bpbm5lclxuICAgICpuZ0lmPVwicG9wb3ZlclJlZi5sb2FkaW5nICYmICEocG9wb3ZlclJlZi5jb21wb25lbnRWaXNpYmxlJCB8IGFzeW5jKVwiPlxuICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiBbYXR0ci53aWR0aF09XCJwb3BvdmVyUmVmLmxvYWRpbmdEaWFtZXRlclwiIFthdHRyLmhlaWdodF09XCJwb3BvdmVyUmVmLmxvYWRpbmdEaWFtZXRlclwiIHZpZXdCb3g9XCIwIDAgNDIgNDJcIiBzdHJva2U9XCJncmV5XCI+XG4gICAgPGcgZmlsbD1cIm5vbmVcIiBmaWxsLXJ1bGU9XCJldmVub2RkXCI+XG4gICAgICA8ZyB0cmFuc2Zvcm09XCJ0cmFuc2xhdGUoMSAxKVwiIHN0cm9rZS13aWR0aD1cIjNcIj5cbiAgICAgICAgPGNpcmNsZSBzdHJva2Utb3BhY2l0eT1cIi41XCIgY3g9XCIxOFwiIGN5PVwiMThcIiByPVwiMThcIi8+XG4gICAgICAgIDxwYXRoIGQ9XCJNMzYgMThjMC05Ljk0LTguMDYtMTgtMTgtMThcIj5cbiAgICAgICAgICA8YW5pbWF0ZVRyYW5zZm9ybSBhdHRyaWJ1dGVOYW1lPVwidHJhbnNmb3JtXCIgdHlwZT1cInJvdGF0ZVwiIGZyb209XCIwIDE4IDE4XCIgdG89XCIzNjAgMTggMThcIiBkdXI9XCIxc1wiIHJlcGVhdENvdW50PVwiaW5kZWZpbml0ZVwiLz5cbiAgICAgICAgPC9wYXRoPlxuICAgICAgPC9nPlxuICAgIDwvZz5cbiAgPC9zdmc+XG48L2Rpdj5cbiJdfQ==
128
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9wb3Zlci13cmFwcGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvY29tcG9uZW50cy9wb3BvdmVyLXdyYXBwZXIvcG9wb3Zlci13cmFwcGVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvY29tcG9uZW50cy9wb3BvdmVyLXdyYXBwZXIvcG9wb3Zlci13cmFwcGVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQWdCLFVBQVUsRUFBbUIsTUFBTSxFQUFxQixTQUFTLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV2SyxPQUFPLEVBQ0wsZ0JBQWdCLEVBQ2hCLGVBQWUsR0FHaEIsTUFBTSxxQkFBcUIsQ0FBQztBQUU3QixPQUFPLEVBQUUsU0FBUyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMxQyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVqRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDdkQsT0FBTyxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7QUFrQnJELE1BQU0sT0FBTyx5QkFBMEIsU0FBUSxnQkFBZ0I7SUFDN0QsVUFBVSxHQUFHLE1BQU0sQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUMxQixHQUFHLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ3pCLEtBQUssR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDdkIsU0FBUyxHQUFHLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUkvQixhQUFhLENBQWtCO0lBRy9CLE9BQU8sQ0FBYTtJQUVwQixPQUFPLENBQVM7SUFFZixhQUFhLENB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QyxJQUFJLENBQUMsZUFBZTthQUNqQixJQUFJLENBQ0gsWUFBWSxDQUFDLEVBQUUsQ0FBQyxFQUNoQixTQUFTLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUMxQjthQUNBLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDZCxJQUFJLENBQUMsVUFBVSxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQ25DLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQzt1R0FoSlUseUJBQXlCOzJGQUF6Qix5QkFBeUIsNktBT3pCLGVBQWUsMEtDdEM1Qix5dUNBa0NBLHFuRURSUSxPQUFPLG9GQUNQLGVBQWUsNElBQ2YsU0FBUzs7MkZBR0oseUJBQXlCO2tCQWZyQyxTQUFTOytCQUNJLG9CQUFvQixtQkFHYix1QkFBdUIsQ0FBQyxNQUFNLFFBQ3pDO3dCQUNGLE9BQU8sRUFBRSxvQkFBb0I7cUJBQ2hDLGNBQ1csSUFBSSxXQUNQO3dCQUNMLE9BQU87d0JBQ1AsZUFBZTt3QkFDZixTQUFTO3FCQUNaO3dEQVVJLGFBQWE7c0JBRG5CLFNBQVM7dUJBQUMsZUFBZSxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTtnQkFJckMsT0FBTztzQkFEYixTQUFTO3VCQUFDLFNBQVMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBDb21wb25lbnRSZWYsIEVsZW1lbnRSZWYsIEVtYmVkZGVkVmlld1JlZiwgTmdab25lLCBPbkRlc3Ryb3ksIE9uSW5pdCwgUmVuZGVyZXIyLCBWaWV3Q2hpbGQsIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQge1xuICBCYXNlUG9ydGFsT3V0bGV0LFxuICBDZGtQb3J0YWxPdXRsZXQsXG4gIENvbXBvbmVudFBvcnRhbCxcbiAgVGVtcGxhdGVQb3J0YWwsXG59IGZyb20gJ0Bhbmd1bGFyL2Nkay9wb3J0YWwnO1xuXG5pbXBvcnQgeyBmcm9tRXZlbnQsIFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGRlYm91bmNlVGltZSwgZmlsdGVyLCB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IEZzUG9wb3ZlclJlZiB9IGZyb20gJy4uLy4uL2NsYXNzL3BvcG92ZXItcmVmJztcbmltcG9ydCB7IE5nQ2xhc3MsIEFzeW5jUGlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5cblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdmcy1wb3BvdmVyLXdyYXBwZXInLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9wb3BvdmVyLXdyYXBwZXIuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL3BvcG92ZXItd3JhcHBlci5jb21wb25lbnQuc2NzcyddLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgJ2NsYXNzJzogJ2ZzLXBvcG92ZXItd3JhcHBlcicsXG4gICAgfSxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtcbiAgICAgICAgTmdDbGFzcyxcbiAgICAgICAgQ2RrUG9ydGFsT3V0bGV0LFxuICAgICAgICBBc3luY1BpcGUsXG4gICAgXSxcbn0pXG5leHBvcnQgY2xhc3MgRnNQb3BvdmVyV3JhcHBlckNvbXBvbmVudCBleHRlbmRzIEJhc2VQb3J0YWxPdXRsZXQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIHBvcG92ZXJSZWYgPSBpbmplY3QoRnNQb3BvdmVyUmVmKTtcbiAgcHJpdmF0ZSBfZWwgPSBpbmplY3QoRWxlbWVudFJlZik7XG4gIHByaXZhdGUgX3pvbmUgPSBpbmplY3QoTmdab25lKTtcbiAgcHJpdmF0ZSBfcmVuZGVyZXIgPSBpbmplY3QoUmVuZGVyZXIyKTtcblxuXG4gIEBWaWV3Q2hpbGQoQ2RrUG9ydGFsT3V0bGV0LCB7IHN0YXRpYzogdHJ1ZSB9KVxuICBwdWJsaWMgX3BvcnRhbE91dGxldDogQ2RrUG9ydGFsT3V0bGV0O1xuXG4gIEBWaWV3Q2hpbGQoJ3NwaW5uZXInKVxuICBwdWJsaWMgc3Bpbm5lcjogRWxlbWVudFJlZjtcblxuICBwdWJsaWMgY29udGVudDogc3RyaW5nO1xuXG4gIHByaXZhdGUgX3dyYXBwZXJDbGFzczogc3RyaW5nO1xuICBwcml2YXRlIF9jb250ZW50Q2hhbmdlc09ic2VydmVyOiBNdXRhdGlvbk9ic2VydmVyO1xuICBwcml2YXRlIF91cGRhdGVQb3NpdGlvbiA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgcHJpdmF0ZSBfZGVzdHJveSQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHN1cGVyKCk7XG4gICAgdGhpcy5fdXBkYXRlQ2xhc3MoKTtcblxuICAgIHRoaXMud3JhcHBlckNsYXNzID0gdGhpcy5wb3BvdmVyUmVmLndyYXBwZXJDbGFzcztcbiAgICB0aGlzLm1heFdpZHRoID0gdGhpcy5wb3BvdmVyUmVmLm1heFdpZHRoO1xuICAgIHRoaXMubWF4SGVpZ2h0ID0gdGhpcy5wb3BvdmVyUmVmLm1heEhlaWdodDtcbiAgfVxuXG4gIHB1YmxpYyBzZXQgbWF4V2lkdGgodmFsdWU6IG51bWJlcikge1xuICAgIHRoaXMuX2VsLm5hdGl2ZUVsZW1lbnQuc3R5bGUubWF4V2lkdGggPSB2YWx1ZSA/IGAke3ZhbHVlICB9cHhgIDogdm9pZCAwO1xuICB9XG5cbiAgcHVibGljIHNldCBtYXhIZWlnaHQodmFsdWU6IG51bWJlcikge1xuICAgIHRoaXMuX2VsLm5hdGl2ZUVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoXG4gICAgICAnLS1mcy1wb3BvdmVyLW1heC1oZWlnaHQnLFxuICAgICAgdmFsdWUgPyBgJHt2YWx1ZX1weGAgOiBudWxsLFxuICAgICk7XG4gIH1cblxuICBwdWJsaWMgc2V0IHdyYXBwZXJDbGFzcyh2YWx1ZTogc3RyaW5nKSB7XG4gICAgdGhpcy5fd3JhcHBlckNsYXNzID0gdmFsdWU7XG4gICAgdGhpcy5fdXBkYXRlQ2xhc3MoKTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMucG9wb3ZlclJlZi5hdXRvU2hvdyAmJiB0aGlzLnBvcG92ZXJSZWYuY29tcG9uZW50TG9hZGluZykge1xuICAgICAgdGhpcy5fd2F0Y2hNb3VzZVBvc2l0aW9uKCk7XG4gICAgfVxuXG4gICAgdGhpcy5fb2JzZXJ2ZUNvbnRlbnRDaGFuZ2VzKCk7XG4gICAgdGhpcy5fbGlzdGVuVXBkYXRlUG9zaXRpb25SZXF1ZXN0cygpO1xuICB9XG5cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5fY29udGVudENoYW5nZXNPYnNlcnZlci5kaXNjb25uZWN0KCk7XG4gICAgdGhpcy5fZGVzdHJveSQubmV4dChudWxsKTtcbiAgICB0aGlzLl9kZXN0cm95JC5jb21wbGV0ZSgpO1xuICB9XG5cbiAgLyoqXG4gICAqIEF0dGFjaCBhIFRlbXBsYXRlUG9ydGFsIGFzIGNvbnRlbnQgdG8gdGhpcyBwb3BvdmVyIGNvbnRhaW5lci5cbiAgICogQHBhcmFtIHBvcnRhbCBQb3J0YWwgdG8gYmUgYXR0YWNoZWQgYXMgdGhlIHBvcG92ZXIgY29udGVudC5cbiAgICovXG4gIHB1YmxpYyBhdHRhY2hUZW1wbGF0ZVBvcnRhbDxDPihwb3J0YWw6IFRlbXBsYXRlUG9ydGFsPEM+KTogRW1iZWRkZWRWaWV3UmVmPEM+IHtcblxuICAgIGlmICh0aGlzLl9wb3J0YWxPdXRsZXQuaGFzQXR0YWNoZWQoKSkge1xuICAgICAgdGhyb3cgRXJyb3IoJ1BvcG92ZXIgdGVtcGxhdGUgYWxyZWFkeSBhdHRhY2hlZCcpO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLl9wb3J0YWxPdXRsZXQuYXR0YWNoVGVtcGxhdGVQb3J0YWwocG9ydGFsKTtcbiAgfVxuXG5cbiAgLyoqXG4gICAqIEF0dGFjaCBhIENvbXBvbmVudFBvcnRhbCBhcyBjb250ZW50IHRvIHRoaXMgcG9wb3ZlciBjb250YWluZXIuXG4gICAqIEBwYXJhbSBwb3J0YWwgUG9ydGFsIHRvIGJlIGF0dGFjaGVkIGFzIHRoZSBwb3BvdmVyIGNvbnRlbnQuXG4gICAqL1xuICBwdWJsaWMgYXR0YWNoQ29tcG9uZW50UG9ydGFsPFQ+KHBvcnRhbDogQ29tcG9uZW50UG9ydGFsPFQ+KTogQ29tcG9uZW50UmVmPFQ+IHtcblxuICAgIGlmICh0aGlzLl9wb3J0YWxPdXRsZXQuaGFzQXR0YWNoZWQoKSkge1xuICAgICAgdGhyb3cgRXJyb3IoJ1BvcG92ZXIgY29tcG9uZW50IGFscmVhZHkgYXR0YWNoZWQnKTtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5fcG9ydGFsT3V0bGV0LmF0dGFjaENvbXBvbmVudFBvcnRhbChwb3J0YWwpO1xuICB9XG5cbiAgcHVibGljIHNldFRleHR1YWxDb250ZW50KGNvbnRlbnQ6IHN0cmluZyk6IHZvaWQge1xuICAgIHRoaXMuY29udGVudCA9IGNvbnRlbnQ7XG4gIH1cblxuICBwdWJsaWMgdXBkYXRlUG9zaXRpb24oKSB7XG4gICAgdGhpcy5fdXBkYXRlUG9zaXRpb24ubmV4dChudWxsKTtcbiAgfVxuXG4gIHByaXZhdGUgX3dhdGNoTW91c2VQb3NpdGlvbigpIHtcbiAgICBjb25zdCBjb21wb25lbnRWaXNpYmlsaXR5Q2hhbmdlJCA9IHRoaXMucG9wb3ZlclJlZi5jb21wb25lbnRWaXNpYmxlJFxuICAgICAgLnBpcGUoXG4gICAgICAgIGZpbHRlcigodmFsdWUpID0+IHZhbHVlKSxcbiAgICAgICk7XG5cbiAgICB0aGlzLl96b25lLnJ1bk91dHNpZGVBbmd1bGFyKCgpID0+IHtcbiAgICAgIGZyb21FdmVudChkb2N1bWVudCwgJ21vdXNlbW92ZScpXG4gICAgICAgIC5waXBlKFxuICAgICAgICAgIHRha2VVbnRpbChjb21wb25lbnRWaXNpYmlsaXR5Q2hhbmdlJCksXG4gICAgICAgICAgdGFrZVVudGlsKHRoaXMuX2Rlc3Ryb3kkKSxcbiAgICAgICAgKVxuICAgICAgICAuc3Vic2NyaWJlKChlOiBNb3VzZUV2ZW50KSA9PiB7XG4gICAgICAgICAgdGhpcy5zcGlubmVyLm5hdGl2ZUVsZW1lbnQuc3R5bGUubGVmdCA9IGAke2UueCAgfXB4YDtcbiAgICAgICAgICB0aGlzLnNwaW5uZXIubmF0aXZlRWxlbWVudC5zdHlsZS50b3AgPSBgJHtlLnkgKyAyMCAgfXB4YDtcbiAgICAgICAgfSk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIF91cGRhdGVDbGFzcygpIHtcbiAgICBpZiAodGhpcy5fd3JhcHBlckNsYXNzKSB7XG4gICAgICB0aGlzLl9yZW5kZXJlci5hZGRDbGFzcyh0aGlzLl9lbC5uYXRpdmVFbGVtZW50LCB0aGlzLl93cmFwcGVyQ2xhc3MpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX29ic2VydmVDb250ZW50Q2hhbmdlcygpIHtcbiAgICBjb25zdCBjb25maWcgPSB7XG4gICAgICBjaGlsZExpc3Q6IHRydWUsXG4gICAgICBzdWJ0cmVlOiB0cnVlLFxuICAgIH07XG5cbiAgICB0aGlzLl9jb250ZW50Q2hhbmdlc09ic2VydmVyID0gbmV3IE11dGF0aW9uT2JzZXJ2ZXIoKCkgPT4ge1xuICAgICAgdGhpcy51cGRhdGVQb3NpdGlvbigpO1xuICAgIH0pO1xuXG4gICAgdGhpcy5fY29udGVudENoYW5nZXNPYnNlcnZlci5vYnNlcnZlKHRoaXMuX2VsLm5hdGl2ZUVsZW1lbnQsIGNvbmZpZyk7XG4gIH1cblxuICBwcml2YXRlIF9saXN0ZW5VcGRhdGVQb3NpdGlvblJlcXVlc3RzKCkge1xuICAgIHRoaXMuX3VwZGF0ZVBvc2l0aW9uXG4gICAgICAucGlwZShcbiAgICAgICAgZGVib3VuY2VUaW1lKDUwKSxcbiAgICAgICAgdGFrZVVudGlsKHRoaXMuX2Rlc3Ryb3kkKSxcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICB0aGlzLnBvcG92ZXJSZWYudXBkYXRlUG9zaXRpb24oKTtcbiAgICAgIH0pO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwid3JhcHBlclwiIFtuZ0NsYXNzXT1cIntcbiAgJ3RoZW1lLWRhcmsnIDogcG9wb3ZlclJlZi50aGVtZSA9PT0gJ2RhcmsnLFxuICAnc2l6ZS10aW55JzogcG9wb3ZlclJlZi5zaXplID09PSAndGlueScsXG4gICdzaXplLXNtYWxsJzogcG9wb3ZlclJlZi5zaXplID09PSAnc21hbGwnLFxuICAnaGlkZGVuJzogIShwb3BvdmVyUmVmLmNvbXBvbmVudFZpc2libGUkIHwgYXN5bmMpXG4gIH1cIj5cbiAgPGRpdiBjbGFzcz1cIm1hdC1lbGV2YXRpb24tejQgcG9wb3Zlci1jb250ZW50XCI+XG4gICAgQGlmIChjb250ZW50KSB7XG4gICAgICB7e2NvbnRlbnR9fVxuICAgIH1cblxuICAgIDxuZy10ZW1wbGF0ZSBjZGtQb3J0YWxPdXRsZXQ+PC9uZy10ZW1wbGF0ZT5cbiAgPC9kaXY+XG5cbiAgPGRpdiBjbGFzcz1cImZzLXBvcG92ZXItYXJyb3cgbGlnaHRcIj48L2Rpdj5cbiAgPGRpdiBjbGFzcz1cImZzLXBvcG92ZXItYXJyb3cgZGFya1wiPjwvZGl2PlxuPC9kaXY+XG5cbkBpZiAocG9wb3ZlclJlZi5sb2FkaW5nICYmICEocG9wb3ZlclJlZi5jb21wb25lbnRWaXNpYmxlJCB8IGFzeW5jKSkge1xuICA8ZGl2IGNsYXNzPVwibG9hZGluZy1zcGlubmVyXCJcbiAgICAjc3Bpbm5lclxuICAgID5cbiAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiBbYXR0ci53aWR0aF09XCJwb3BvdmVyUmVmLmxvYWRpbmdEaWFtZXRlclwiIFthdHRyLmhlaWdodF09XCJwb3BvdmVyUmVmLmxvYWRpbmdEaWFtZXRlclwiIHZpZXdCb3g9XCIwIDAgNDIgNDJcIiBzdHJva2U9XCJncmV5XCI+XG4gICAgICA8ZyBmaWxsPVwibm9uZVwiIGZpbGwtcnVsZT1cImV2ZW5vZGRcIj5cbiAgICAgICAgPGcgdHJhbnNmb3JtPVwidHJhbnNsYXRlKDEgMSlcIiBzdHJva2Utd2lkdGg9XCIzXCI+XG4gICAgICAgICAgPGNpcmNsZSBzdHJva2Utb3BhY2l0eT1cIi41XCIgY3g9XCIxOFwiIGN5PVwiMThcIiByPVwiMThcIi8+XG4gICAgICAgICAgPHBhdGggZD1cIk0zNiAxOGMwLTkuOTQtOC4wNi0xOC0xOC0xOFwiPlxuICAgICAgICAgICAgPGFuaW1hdGVUcmFuc2Zvcm0gYXR0cmlidXRlTmFtZT1cInRyYW5zZm9ybVwiIHR5cGU9XCJyb3RhdGVcIiBmcm9tPVwiMCAxOCAxOFwiIHRvPVwiMzYwIDE4IDE4XCIgZHVyPVwiMXNcIiByZXBlYXRDb3VudD1cImluZGVmaW5pdGVcIi8+XG4gICAgICAgICAgPC9wYXRoPlxuICAgICAgICA8L2c+XG4gICAgICA8L2c+XG4gICAgPC9zdmc+XG4gIDwvZGl2PlxufVxuIl19