@firestitch/popover 9.4.14 → 12.0.1

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.
Files changed (53) hide show
  1. package/app/class/popover-ref.d.ts +34 -34
  2. package/app/components/popover/popover.component.d.ts +50 -47
  3. package/app/components/popover-wrapper/popover-wrapper.component.d.ts +39 -36
  4. package/app/enums/position.d.ts +6 -6
  5. package/app/fs-popover.module.d.ts +13 -4
  6. package/app/helpers/create-injector.d.ts +4 -4
  7. package/app/helpers/create-overlay-ref.d.ts +4 -4
  8. package/app/helpers/create-position-strategy.d.ts +4 -4
  9. package/app/helpers/create-template-portal.d.ts +4 -4
  10. package/app/helpers/point-in-rect.d.ts +1 -1
  11. package/app/interfaces/popover-config.interface.d.ts +16 -16
  12. package/app/services/popover.service.d.ts +20 -17
  13. package/bundles/firestitch-popover.umd.js +872 -779
  14. package/bundles/firestitch-popover.umd.js.map +1 -1
  15. package/esm2015/app/class/popover-ref.js +86 -96
  16. package/esm2015/app/components/popover/popover.component.js +191 -224
  17. package/esm2015/app/components/popover-wrapper/popover-wrapper.component.js +119 -124
  18. package/esm2015/app/enums/position.js +8 -8
  19. package/esm2015/app/fs-popover.module.js +44 -35
  20. package/esm2015/app/helpers/create-injector.js +9 -9
  21. package/esm2015/app/helpers/create-overlay-ref.js +12 -12
  22. package/esm2015/app/helpers/create-position-strategy.js +56 -56
  23. package/esm2015/app/helpers/create-template-portal.js +5 -5
  24. package/esm2015/app/helpers/point-in-rect.js +4 -4
  25. package/esm2015/app/interfaces/popover-config.interface.js +2 -1
  26. package/esm2015/app/services/popover.service.js +56 -60
  27. package/esm2015/firestitch-popover.js +5 -7
  28. package/esm2015/public_api.js +8 -7
  29. package/fesm2015/firestitch-popover.js +540 -578
  30. package/fesm2015/firestitch-popover.js.map +1 -1
  31. package/firestitch-popover.d.ts +5 -6
  32. package/package.json +7 -8
  33. package/public_api.d.ts +5 -4
  34. package/styles.scss +3 -2
  35. package/bundles/firestitch-popover.umd.min.js +0 -16
  36. package/bundles/firestitch-popover.umd.min.js.map +0 -1
  37. package/esm5/app/class/popover-ref.js +0 -152
  38. package/esm5/app/components/popover/popover.component.js +0 -241
  39. package/esm5/app/components/popover-wrapper/popover-wrapper.component.js +0 -138
  40. package/esm5/app/enums/position.js +0 -8
  41. package/esm5/app/fs-popover.module.js +0 -39
  42. package/esm5/app/helpers/create-injector.js +0 -9
  43. package/esm5/app/helpers/create-overlay-ref.js +0 -12
  44. package/esm5/app/helpers/create-position-strategy.js +0 -56
  45. package/esm5/app/helpers/create-template-portal.js +0 -5
  46. package/esm5/app/helpers/point-in-rect.js +0 -4
  47. package/esm5/app/interfaces/popover-config.interface.js +0 -1
  48. package/esm5/app/services/popover.service.js +0 -70
  49. package/esm5/firestitch-popover.js +0 -7
  50. package/esm5/public_api.js +0 -7
  51. package/fesm5/firestitch-popover.js +0 -708
  52. package/fesm5/firestitch-popover.js.map +0 -1
  53. package/firestitch-popover.metadata.json +0 -1
@@ -1,124 +1,119 @@
1
- import { __decorate, __metadata } from "tslib";
2
- import { ChangeDetectionStrategy, Component, ComponentRef, ElementRef, EmbeddedViewRef, ViewChild, HostBinding, OnDestroy, NgZone, OnInit, } from '@angular/core';
3
- import { BasePortalOutlet, CdkPortalOutlet } from '@angular/cdk/portal';
4
- import { fromEvent, Subject } from 'rxjs';
5
- import { debounceTime, filter, takeUntil } from 'rxjs/operators';
6
- import { FsPopoverRef } from '../../class/popover-ref';
7
- let FsPopoverWrapperComponent = class FsPopoverWrapperComponent extends BasePortalOutlet {
8
- constructor(popoverRef, _el, _zone) {
9
- super();
10
- this.popoverRef = popoverRef;
11
- this._el = _el;
12
- this._zone = _zone;
13
- this.hidden = false;
14
- this._updatePosition = new Subject();
15
- this._destroy$ = new Subject();
16
- this._updateClass();
17
- this.wrapperClass = this.popoverRef.wrapperClass;
18
- this.maxWidth = this.popoverRef.maxWidth;
19
- }
20
- set maxWidth(value) {
21
- this._el.nativeElement.style.maxWidth = value ? value + 'px' : void 0;
22
- }
23
- set wrapperClass(value) {
24
- this._wrapperClass = value;
25
- this._updateClass();
26
- }
27
- ngOnInit() {
28
- if (!this.popoverRef.autoShow && this.popoverRef.componentLoading) {
29
- this._watchMousePosition();
30
- }
31
- this._observeContentChanges();
32
- this._listenUpdatePositionRequests();
33
- }
34
- ngOnDestroy() {
35
- this._contentChangesObserver.disconnect();
36
- this._destroy$.next();
37
- this._destroy$.complete();
38
- }
39
- /**
40
- * Attach a TemplatePortal as content to this popover container.
41
- * @param portal Portal to be attached as the popover content.
42
- */
43
- attachTemplatePortal(portal) {
44
- if (this._portalOutlet.hasAttached()) {
45
- throw Error('Popover template already attached');
46
- }
47
- return this._portalOutlet.attachTemplatePortal(portal);
48
- }
49
- /**
50
- * Attach a ComponentPortal as content to this popover container.
51
- * @param portal Portal to be attached as the popover content.
52
- */
53
- attachComponentPortal(portal) {
54
- if (this._portalOutlet.hasAttached()) {
55
- throw Error('Popover component already attached');
56
- }
57
- return this._portalOutlet.attachComponentPortal(portal);
58
- }
59
- updatePosition() {
60
- this._updatePosition.next();
61
- }
62
- _watchMousePosition() {
63
- const componentVisibilityChange$ = this.popoverRef.componentVisible$
64
- .pipe(filter((value) => value === true));
65
- this._zone.runOutsideAngular(() => {
66
- fromEvent(document, 'mousemove')
67
- .pipe(takeUntil(componentVisibilityChange$), takeUntil(this._destroy$))
68
- .subscribe((e) => {
69
- this.spinner.nativeElement.style.left = e.x + 'px';
70
- this.spinner.nativeElement.style.top = (e.y + 20) + 'px';
71
- });
72
- });
73
- }
74
- _updateClass() {
75
- this.class = ['popover-wrapper', this._wrapperClass].filter(Boolean).join(' ');
76
- }
77
- _observeContentChanges() {
78
- const config = {
79
- childList: true,
80
- subtree: true
81
- };
82
- this._contentChangesObserver = new MutationObserver(() => {
83
- this.updatePosition();
84
- });
85
- this._contentChangesObserver.observe(this._el.nativeElement, config);
86
- }
87
- _listenUpdatePositionRequests() {
88
- this._updatePosition
89
- .pipe(debounceTime(50), takeUntil(this._destroy$))
90
- .subscribe(() => {
91
- this.popoverRef.updatePosition();
92
- });
93
- }
94
- };
95
- FsPopoverWrapperComponent.ctorParameters = () => [
96
- { type: FsPopoverRef },
97
- { type: ElementRef },
98
- { type: NgZone }
99
- ];
100
- __decorate([
101
- ViewChild(CdkPortalOutlet, { static: true }),
102
- __metadata("design:type", CdkPortalOutlet)
103
- ], FsPopoverWrapperComponent.prototype, "_portalOutlet", void 0);
104
- __decorate([
105
- ViewChild('spinner'),
106
- __metadata("design:type", Object)
107
- ], FsPopoverWrapperComponent.prototype, "spinner", void 0);
108
- __decorate([
109
- HostBinding('class'),
110
- __metadata("design:type", Object)
111
- ], FsPopoverWrapperComponent.prototype, "class", void 0);
112
- FsPopoverWrapperComponent = __decorate([
113
- Component({
114
- selector: 'fs-popover-wrapper',
115
- 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-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 [style.marginLeft]=\"(popoverRef.loadingDiameter * -.25) +'px'\">\n <mat-spinner [diameter]=\"popoverRef.loadingDiameter\"></mat-spinner>\n</div>\n",
116
- changeDetection: ChangeDetectionStrategy.OnPush,
117
- styles: [".wrapper{padding:6px;-webkit-animation:.2s fadeIn;animation:.2s fadeIn}.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:75%}.wrapper .fs-popover-arrow{width:0;height:0;font-size:0;line-height:0;position:absolute;z-index:1}.wrapper .fs-popover-arrow.dark{z-index:0}::ng-deep .fs-popover-bottom .fs-popover-arrow,::ng-deep .fs-popover-top .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:rgba(223,223,223,.25);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:rgba(223,223,223,.25);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:rgba(223,223,223,.25);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:rgba(223,223,223,.25);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}.loading-spinner{margin-top:10px}@-webkit-keyframes fadeIn{0%{opacity:0}100%{opacity:1}}@keyframes fadeIn{0%{opacity:0}100%{opacity:1}}"]
118
- }),
119
- __metadata("design:paramtypes", [FsPopoverRef,
120
- ElementRef,
121
- NgZone])
122
- ], FsPopoverWrapperComponent);
123
- export { FsPopoverWrapperComponent };
124
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9wb3Zlci13cmFwcGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BmaXJlc3RpdGNoL3BvcG92ZXIvIiwic291cmNlcyI6WyJhcHAvY29tcG9uZW50cy9wb3BvdmVyLXdyYXBwZXIvcG9wb3Zlci13cmFwcGVyLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsWUFBWSxFQUNaLFVBQVUsRUFDVixlQUFlLEVBQ2YsU0FBUyxFQUNULFdBQVcsRUFDWCxTQUFTLEVBQUUsTUFBTSxFQUNqQixNQUFNLEdBQ1AsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUNMLGdCQUFnQixFQUNoQixlQUFlLEVBR2hCLE1BQU0scUJBQXFCLENBQUM7QUFFN0IsT0FBTyxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDMUMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFakUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBU3ZELElBQWEseUJBQXlCLEdBQXRDLE1BQWEseUJBQTBCLFNBQVEsZ0JBQWdCO0lBa0I3RCxZQUNTLFVBQXdCLEVBQ3ZCLEdBQWUsRUFDZixLQUFhO1FBRXJCLEtBQUssRUFBRSxDQUFDO1FBSkQsZUFBVSxHQUFWLFVBQVUsQ0FBYztRQUN2QixRQUFHLEdBQUgsR0FBRyxDQUFZO1FBQ2YsVUFBSyxHQUFMLEtBQUssQ0FBUTtRQVhoQixXQUFNLEdBQUcsS0FBSyxDQUFDO1FBSWQsb0JBQWUsR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFDO1FBRXRDLGNBQVMsR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFDO1FBUXRDLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUVwQixJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsWUFBWSxDQUFDO1FBQ2pELElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUM7SUFDM0MsQ0FBQztJQUVELElBQVcsUUFBUSxDQUFDLEtBQWE7UUFDL0IsSUFBSSxDQUFDLEdBQUcsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLFFBQVEsR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3hFLENBQUM7SUFFRCxJQUFXLFlBQVksQ0FBQyxLQUFhO1FBQ25DLElBQUksQ0FBQyxhQUFhLEdBQUcsS0FBSyxDQUFDO1FBQzNCLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUN0QixDQUFDO0lBRU0sUUFBUTtRQUNiLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLFFBQVEsSUFBSSxJQUFJLENBQUMsVUFBVSxDQUFDLGdCQUFnQixFQUFFO1lBQ2pFLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxDQUFDO1NBQzVCO1FBRUQsSUFBSSxDQUFDLHNCQUFzQixFQUFFLENBQUM7UUFDOUIsSUFBSSxDQUFDLDZCQUE2QixFQUFFLENBQUM7SUFDdkMsQ0FBQztJQUdNLFdBQVc7UUFDaEIsSUFBSSxDQUFDLHVCQUF1QixDQUFDLFVBQVUsRUFBRSxDQUFDO1FBQzFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDdEIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUM1QixDQUFDO0lBRUQ7OztPQUdHO0lBQ0ksb0JBQW9CLENBQUksTUFBeUI7UUFFdEQsSUFBSSxJQUFJLENBQUMsYUFBYSxDQUFDLFdBQVcsRUFBRSxFQUFFO1lBQ3BDLE1BQU0sS0FBSyxDQUFDLG1DQUFtQyxDQUFDLENBQUM7U0FDbEQ7UUFFRCxPQUFPLElBQUksQ0FBQyxhQUFhLENBQUMsb0JBQW9CLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDekQsQ0FBQztJQUdEOzs7T0FHRztJQUNJLHFCQUFxQixDQUFJLE1BQTBCO1FBRXhELElBQUksSUFBSSxDQUFDLGFBQWEsQ0FBQyxXQUFXLEVBQUUsRUFBRTtZQUNwQyxNQUFNLEtBQUssQ0FBQyxvQ0FBb0MsQ0FBQyxDQUFDO1NBQ25EO1FBRUQsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDLHFCQUFxQixDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQzFELENBQUM7SUFFTSxjQUFjO1FBQ25CLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDOUIsQ0FBQztJQUVPLG1CQUFtQjtRQUN6QixNQUFNLDBCQUEwQixHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsaUJBQWlCO2FBQ2pFLElBQUksQ0FDSCxNQUFNLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLEtBQUssS0FBSyxJQUFJLENBQUMsQ0FDbEMsQ0FBQztRQUVKLElBQUksQ0FBQyxLQUFLLENBQUMsaUJBQWlCLENBQUMsR0FBRyxFQUFFO1lBQ2hDLFNBQVMsQ0FBQyxRQUFRLEVBQUUsV0FBVyxDQUFDO2lCQUM3QixJQUFJLENBQ0gsU0FBUyxDQUFDLDBCQUEwQixDQUFDLEVBQ3JDLFNBQVMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQzFCO2lCQUNBLFNBQVMsQ0FBQyxDQUFDLENBQWEsRUFBRSxFQUFFO2dCQUMzQixJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsSUFBSSxHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDO2dCQUNuRCxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsR0FBRyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxFQUFFLENBQUMsR0FBRyxJQUFJLENBQUM7WUFDM0QsQ0FBQyxDQUFDLENBQUM7UUFDUCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTyxZQUFZO1FBQ2xCLElBQUksQ0FBQyxLQUFLLEdBQUcsQ0FBQyxpQkFBaUIsRUFBRSxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNqRixDQUFDO0lBRU8sc0JBQXNCO1FBQzVCLE1BQU0sTUFBTSxHQUFHO1lBQ2IsU0FBUyxFQUFFLElBQUk7WUFDZixPQUFPLEVBQUUsSUFBSTtTQUNkLENBQUM7UUFFRixJQUFJLENBQUMsdUJBQXVCLEdBQUcsSUFBSSxnQkFBZ0IsQ0FBQyxHQUFHLEVBQUU7WUFDdkQsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQ3hCLENBQUMsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLHVCQUF1QixDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLGFBQWEsRUFBRSxNQUFNLENBQUMsQ0FBQztJQUN2RSxDQUFDO0lBRU8sNkJBQTZCO1FBQ25DLElBQUksQ0FBQyxlQUFlO2FBQ2pCLElBQUksQ0FDSCxZQUFZLENBQUMsRUFBRSxDQUFDLEVBQ2hCLFNBQVMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQzFCO2FBQ0EsU0FBUyxDQUFDLEdBQUcsRUFBRTtZQUNkLElBQUksQ0FBQyxVQUFVLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDbkMsQ0FBQyxDQUFDLENBQUE7SUFDTixDQUFDO0NBQ0YsQ0FBQTs7WUFqSHNCLFlBQVk7WUFDbEIsVUFBVTtZQUNSLE1BQU07O0FBbEJ2QjtJQURDLFNBQVMsQ0FBQyxlQUFlLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLENBQUM7OEJBQ3ZCLGVBQWU7Z0VBQUM7QUFHdEM7SUFEQyxTQUFTLENBQUMsU0FBUyxDQUFDOzswREFDTjtBQUVPO0lBQXJCLFdBQVcsQ0FBQyxPQUFPLENBQUM7O3dEQUFPO0FBUmpCLHlCQUF5QjtJQU5yQyxTQUFTLENBQUM7UUFDVCxRQUFRLEVBQUUsb0JBQW9CO1FBQzlCLGl1QkFBNkM7UUFFN0MsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07O0tBQ2hELENBQUM7cUNBb0JxQixZQUFZO1FBQ2xCLFVBQVU7UUFDUixNQUFNO0dBckJaLHlCQUF5QixDQW9JckM7U0FwSVkseUJBQXlCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgQ29tcG9uZW50UmVmLFxuICBFbGVtZW50UmVmLFxuICBFbWJlZGRlZFZpZXdSZWYsXG4gIFZpZXdDaGlsZCxcbiAgSG9zdEJpbmRpbmcsXG4gIE9uRGVzdHJveSwgTmdab25lLFxuICBPbkluaXQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQge1xuICBCYXNlUG9ydGFsT3V0bGV0LFxuICBDZGtQb3J0YWxPdXRsZXQsXG4gIENvbXBvbmVudFBvcnRhbCxcbiAgVGVtcGxhdGVQb3J0YWxcbn0gZnJvbSAnQGFuZ3VsYXIvY2RrL3BvcnRhbCc7XG5cbmltcG9ydCB7IGZyb21FdmVudCwgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgZGVib3VuY2VUaW1lLCBmaWx0ZXIsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgRnNQb3BvdmVyUmVmIH0gZnJvbSAnLi4vLi4vY2xhc3MvcG9wb3Zlci1yZWYnO1xuXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2ZzLXBvcG92ZXItd3JhcHBlcicsXG4gIHRlbXBsYXRlVXJsOiAncG9wb3Zlci13cmFwcGVyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbICdwb3BvdmVyLXdyYXBwZXIuY29tcG9uZW50LnNjc3MnIF0sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBGc1BvcG92ZXJXcmFwcGVyQ29tcG9uZW50IGV4dGVuZHMgQmFzZVBvcnRhbE91dGxldCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcblxuICBAVmlld0NoaWxkKENka1BvcnRhbE91dGxldCwgeyBzdGF0aWM6IHRydWUgfSlcbiAgcHVibGljIF9wb3J0YWxPdXRsZXQ6IENka1BvcnRhbE91dGxldDtcblxuICBAVmlld0NoaWxkKCdzcGlubmVyJylcbiAgcHVibGljIHNwaW5uZXI7XG5cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcycpIGNsYXNzO1xuXG4gIHB1YmxpYyBoaWRkZW4gPSBmYWxzZTtcblxuICBwcml2YXRlIF93cmFwcGVyQ2xhc3M7XG4gIHByaXZhdGUgX2NvbnRlbnRDaGFuZ2VzT2JzZXJ2ZXI6IE11dGF0aW9uT2JzZXJ2ZXI7XG4gIHByaXZhdGUgX3VwZGF0ZVBvc2l0aW9uID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICBwcml2YXRlIF9kZXN0cm95JCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIHBvcG92ZXJSZWY6IEZzUG9wb3ZlclJlZixcbiAgICBwcml2YXRlIF9lbDogRWxlbWVudFJlZixcbiAgICBwcml2YXRlIF96b25lOiBOZ1pvbmUsXG4gICkge1xuICAgIHN1cGVyKCk7XG4gICAgdGhpcy5fdXBkYXRlQ2xhc3MoKTtcblxuICAgIHRoaXMud3JhcHBlckNsYXNzID0gdGhpcy5wb3BvdmVyUmVmLndyYXBwZXJDbGFzcztcbiAgICB0aGlzLm1heFdpZHRoID0gdGhpcy5wb3BvdmVyUmVmLm1heFdpZHRoO1xuICB9XG5cbiAgcHVibGljIHNldCBtYXhXaWR0aCh2YWx1ZTogbnVtYmVyKSB7XG4gICAgdGhpcy5fZWwubmF0aXZlRWxlbWVudC5zdHlsZS5tYXhXaWR0aCA9IHZhbHVlID8gdmFsdWUgKyAncHgnIDogdm9pZCAwO1xuICB9XG5cbiAgcHVibGljIHNldCB3cmFwcGVyQ2xhc3ModmFsdWU6IHN0cmluZykge1xuICAgIHRoaXMuX3dyYXBwZXJDbGFzcyA9IHZhbHVlO1xuICAgIHRoaXMuX3VwZGF0ZUNsYXNzKCk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLnBvcG92ZXJSZWYuYXV0b1Nob3cgJiYgdGhpcy5wb3BvdmVyUmVmLmNvbXBvbmVudExvYWRpbmcpIHtcbiAgICAgIHRoaXMuX3dhdGNoTW91c2VQb3NpdGlvbigpO1xuICAgIH1cblxuICAgIHRoaXMuX29ic2VydmVDb250ZW50Q2hhbmdlcygpO1xuICAgIHRoaXMuX2xpc3RlblVwZGF0ZVBvc2l0aW9uUmVxdWVzdHMoKTtcbiAgfVxuXG5cbiAgcHVibGljIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuX2NvbnRlbnRDaGFuZ2VzT2JzZXJ2ZXIuZGlzY29ubmVjdCgpO1xuICAgIHRoaXMuX2Rlc3Ryb3kkLm5leHQoKTtcbiAgICB0aGlzLl9kZXN0cm95JC5jb21wbGV0ZSgpO1xuICB9XG5cbiAgLyoqXG4gICAqIEF0dGFjaCBhIFRlbXBsYXRlUG9ydGFsIGFzIGNvbnRlbnQgdG8gdGhpcyBwb3BvdmVyIGNvbnRhaW5lci5cbiAgICogQHBhcmFtIHBvcnRhbCBQb3J0YWwgdG8gYmUgYXR0YWNoZWQgYXMgdGhlIHBvcG92ZXIgY29udGVudC5cbiAgICovXG4gIHB1YmxpYyBhdHRhY2hUZW1wbGF0ZVBvcnRhbDxDPihwb3J0YWw6IFRlbXBsYXRlUG9ydGFsPEM+KTogRW1iZWRkZWRWaWV3UmVmPEM+IHtcblxuICAgIGlmICh0aGlzLl9wb3J0YWxPdXRsZXQuaGFzQXR0YWNoZWQoKSkge1xuICAgICAgdGhyb3cgRXJyb3IoJ1BvcG92ZXIgdGVtcGxhdGUgYWxyZWFkeSBhdHRhY2hlZCcpO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLl9wb3J0YWxPdXRsZXQuYXR0YWNoVGVtcGxhdGVQb3J0YWwocG9ydGFsKTtcbiAgfVxuXG5cbiAgLyoqXG4gICAqIEF0dGFjaCBhIENvbXBvbmVudFBvcnRhbCBhcyBjb250ZW50IHRvIHRoaXMgcG9wb3ZlciBjb250YWluZXIuXG4gICAqIEBwYXJhbSBwb3J0YWwgUG9ydGFsIHRvIGJlIGF0dGFjaGVkIGFzIHRoZSBwb3BvdmVyIGNvbnRlbnQuXG4gICAqL1xuICBwdWJsaWMgYXR0YWNoQ29tcG9uZW50UG9ydGFsPFQ+KHBvcnRhbDogQ29tcG9uZW50UG9ydGFsPFQ+KTogQ29tcG9uZW50UmVmPFQ+IHtcblxuICAgIGlmICh0aGlzLl9wb3J0YWxPdXRsZXQuaGFzQXR0YWNoZWQoKSkge1xuICAgICAgdGhyb3cgRXJyb3IoJ1BvcG92ZXIgY29tcG9uZW50IGFscmVhZHkgYXR0YWNoZWQnKTtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5fcG9ydGFsT3V0bGV0LmF0dGFjaENvbXBvbmVudFBvcnRhbChwb3J0YWwpO1xuICB9XG5cbiAgcHVibGljIHVwZGF0ZVBvc2l0aW9uKCkge1xuICAgIHRoaXMuX3VwZGF0ZVBvc2l0aW9uLm5leHQoKTtcbiAgfVxuXG4gIHByaXZhdGUgX3dhdGNoTW91c2VQb3NpdGlvbigpIHtcbiAgICBjb25zdCBjb21wb25lbnRWaXNpYmlsaXR5Q2hhbmdlJCA9IHRoaXMucG9wb3ZlclJlZi5jb21wb25lbnRWaXNpYmxlJFxuICAgICAgLnBpcGUoXG4gICAgICAgIGZpbHRlcigodmFsdWUpID0+IHZhbHVlID09PSB0cnVlKVxuICAgICAgKTtcblxuICAgIHRoaXMuX3pvbmUucnVuT3V0c2lkZUFuZ3VsYXIoKCkgPT4ge1xuICAgICAgZnJvbUV2ZW50KGRvY3VtZW50LCAnbW91c2Vtb3ZlJylcbiAgICAgICAgLnBpcGUoXG4gICAgICAgICAgdGFrZVVudGlsKGNvbXBvbmVudFZpc2liaWxpdHlDaGFuZ2UkKSxcbiAgICAgICAgICB0YWtlVW50aWwodGhpcy5fZGVzdHJveSQpLFxuICAgICAgICApXG4gICAgICAgIC5zdWJzY3JpYmUoKGU6IE1vdXNlRXZlbnQpID0+IHtcbiAgICAgICAgICB0aGlzLnNwaW5uZXIubmF0aXZlRWxlbWVudC5zdHlsZS5sZWZ0ID0gZS54ICsgJ3B4JztcbiAgICAgICAgICB0aGlzLnNwaW5uZXIubmF0aXZlRWxlbWVudC5zdHlsZS50b3AgPSAoZS55ICsgMjApICsgJ3B4JztcbiAgICAgICAgfSk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIF91cGRhdGVDbGFzcygpIHtcbiAgICB0aGlzLmNsYXNzID0gWydwb3BvdmVyLXdyYXBwZXInLCB0aGlzLl93cmFwcGVyQ2xhc3NdLmZpbHRlcihCb29sZWFuKS5qb2luKCcgJyk7XG4gIH1cblxuICBwcml2YXRlIF9vYnNlcnZlQ29udGVudENoYW5nZXMoKSB7XG4gICAgY29uc3QgY29uZmlnID0ge1xuICAgICAgY2hpbGRMaXN0OiB0cnVlLFxuICAgICAgc3VidHJlZTogdHJ1ZVxuICAgIH07XG5cbiAgICB0aGlzLl9jb250ZW50Q2hhbmdlc09ic2VydmVyID0gbmV3IE11dGF0aW9uT2JzZXJ2ZXIoKCkgPT4ge1xuICAgICAgdGhpcy51cGRhdGVQb3NpdGlvbigpO1xuICAgIH0pO1xuXG4gICAgdGhpcy5fY29udGVudENoYW5nZXNPYnNlcnZlci5vYnNlcnZlKHRoaXMuX2VsLm5hdGl2ZUVsZW1lbnQsIGNvbmZpZyk7XG4gIH1cblxuICBwcml2YXRlIF9saXN0ZW5VcGRhdGVQb3NpdGlvblJlcXVlc3RzKCkge1xuICAgIHRoaXMuX3VwZGF0ZVBvc2l0aW9uXG4gICAgICAucGlwZShcbiAgICAgICAgZGVib3VuY2VUaW1lKDUwKSxcbiAgICAgICAgdGFrZVVudGlsKHRoaXMuX2Rlc3Ryb3kkKSxcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICB0aGlzLnBvcG92ZXJSZWYudXBkYXRlUG9zaXRpb24oKTtcbiAgICAgIH0pXG4gIH1cbn1cbiJdfQ==
1
+ import { ChangeDetectionStrategy, Component, ElementRef, ViewChild, HostBinding, NgZone, } from '@angular/core';
2
+ import { BasePortalOutlet, CdkPortalOutlet } from '@angular/cdk/portal';
3
+ import { fromEvent, Subject } from 'rxjs';
4
+ import { debounceTime, filter, takeUntil } from 'rxjs/operators';
5
+ import { FsPopoverRef } from '../../class/popover-ref';
6
+ import * as i0 from "@angular/core";
7
+ import * as i1 from "../../class/popover-ref";
8
+ import * as i2 from "@angular/material/progress-spinner";
9
+ import * as i3 from "@angular/common";
10
+ import * as i4 from "@angular/cdk/portal";
11
+ export class FsPopoverWrapperComponent extends BasePortalOutlet {
12
+ constructor(popoverRef, _el, _zone) {
13
+ super();
14
+ this.popoverRef = popoverRef;
15
+ this._el = _el;
16
+ this._zone = _zone;
17
+ this.hidden = false;
18
+ this._updatePosition = new Subject();
19
+ this._destroy$ = new Subject();
20
+ this._updateClass();
21
+ this.wrapperClass = this.popoverRef.wrapperClass;
22
+ this.maxWidth = this.popoverRef.maxWidth;
23
+ }
24
+ set maxWidth(value) {
25
+ this._el.nativeElement.style.maxWidth = value ? value + 'px' : void 0;
26
+ }
27
+ set wrapperClass(value) {
28
+ this._wrapperClass = value;
29
+ this._updateClass();
30
+ }
31
+ ngOnInit() {
32
+ if (!this.popoverRef.autoShow && this.popoverRef.componentLoading) {
33
+ this._watchMousePosition();
34
+ }
35
+ this._observeContentChanges();
36
+ this._listenUpdatePositionRequests();
37
+ }
38
+ ngOnDestroy() {
39
+ this._contentChangesObserver.disconnect();
40
+ this._destroy$.next();
41
+ this._destroy$.complete();
42
+ }
43
+ /**
44
+ * Attach a TemplatePortal as content to this popover container.
45
+ * @param portal Portal to be attached as the popover content.
46
+ */
47
+ attachTemplatePortal(portal) {
48
+ if (this._portalOutlet.hasAttached()) {
49
+ throw Error('Popover template already attached');
50
+ }
51
+ return this._portalOutlet.attachTemplatePortal(portal);
52
+ }
53
+ /**
54
+ * Attach a ComponentPortal as content to this popover container.
55
+ * @param portal Portal to be attached as the popover content.
56
+ */
57
+ attachComponentPortal(portal) {
58
+ if (this._portalOutlet.hasAttached()) {
59
+ throw Error('Popover component already attached');
60
+ }
61
+ return this._portalOutlet.attachComponentPortal(portal);
62
+ }
63
+ updatePosition() {
64
+ this._updatePosition.next();
65
+ }
66
+ _watchMousePosition() {
67
+ const componentVisibilityChange$ = this.popoverRef.componentVisible$
68
+ .pipe(filter((value) => value === true));
69
+ this._zone.runOutsideAngular(() => {
70
+ fromEvent(document, 'mousemove')
71
+ .pipe(takeUntil(componentVisibilityChange$), takeUntil(this._destroy$))
72
+ .subscribe((e) => {
73
+ this.spinner.nativeElement.style.left = e.x + 'px';
74
+ this.spinner.nativeElement.style.top = (e.y + 20) + 'px';
75
+ });
76
+ });
77
+ }
78
+ _updateClass() {
79
+ this.class = ['popover-wrapper', this._wrapperClass].filter(Boolean).join(' ');
80
+ }
81
+ _observeContentChanges() {
82
+ const config = {
83
+ childList: true,
84
+ subtree: true
85
+ };
86
+ this._contentChangesObserver = new MutationObserver(() => {
87
+ this.updatePosition();
88
+ });
89
+ this._contentChangesObserver.observe(this._el.nativeElement, config);
90
+ }
91
+ _listenUpdatePositionRequests() {
92
+ this._updatePosition
93
+ .pipe(debounceTime(50), takeUntil(this._destroy$))
94
+ .subscribe(() => {
95
+ this.popoverRef.updatePosition();
96
+ });
97
+ }
98
+ }
99
+ FsPopoverWrapperComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: FsPopoverWrapperComponent, deps: [{ token: i1.FsPopoverRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
100
+ FsPopoverWrapperComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: FsPopoverWrapperComponent, selector: "fs-popover-wrapper", host: { properties: { "class": "this.class" } }, 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-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 [style.marginLeft]=\"(popoverRef.loadingDiameter * -.25) +'px'\">\n <mat-spinner [diameter]=\"popoverRef.loadingDiameter\"></mat-spinner>\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:75%}.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}.loading-spinner{margin-top:10px}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}\n"], components: [{ type: i2.MatSpinner, selector: "mat-spinner", inputs: ["color"] }], directives: [{ type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i4.CdkPortalOutlet, selector: "[cdkPortalOutlet]", inputs: ["cdkPortalOutlet"], outputs: ["attached"], exportAs: ["cdkPortalOutlet"] }, { type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "async": i3.AsyncPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
101
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: FsPopoverWrapperComponent, decorators: [{
102
+ type: Component,
103
+ args: [{
104
+ selector: 'fs-popover-wrapper',
105
+ templateUrl: 'popover-wrapper.component.html',
106
+ styleUrls: ['popover-wrapper.component.scss'],
107
+ changeDetection: ChangeDetectionStrategy.OnPush,
108
+ }]
109
+ }], ctorParameters: function () { return [{ type: i1.FsPopoverRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; }, propDecorators: { _portalOutlet: [{
110
+ type: ViewChild,
111
+ args: [CdkPortalOutlet, { static: true }]
112
+ }], spinner: [{
113
+ type: ViewChild,
114
+ args: ['spinner']
115
+ }], class: [{
116
+ type: HostBinding,
117
+ args: ['class']
118
+ }] } });
119
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9wb3Zlci13cmFwcGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvY29tcG9uZW50cy9wb3BvdmVyLXdyYXBwZXIvcG9wb3Zlci13cmFwcGVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvY29tcG9uZW50cy9wb3BvdmVyLXdyYXBwZXIvcG9wb3Zlci13cmFwcGVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUVULFVBQVUsRUFFVixTQUFTLEVBQ1QsV0FBVyxFQUNBLE1BQU0sR0FFbEIsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUNMLGdCQUFnQixFQUNoQixlQUFlLEVBR2hCLE1BQU0scUJBQXFCLENBQUM7QUFFN0IsT0FBTyxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDMUMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFakUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHlCQUF5QixDQUFDOzs7Ozs7QUFTdkQsTUFBTSxPQUFPLHlCQUEwQixTQUFRLGdCQUFnQjtJQWtCN0QsWUFDUyxVQUF3QixFQUN2QixHQUFlLEVBQ2YsS0FBYTtRQUVyQixLQUFLLEVBQUUsQ0FBQztRQUpELGVBQVUsR0FBVixVQUFVLENBQWM7UUFDdkIsUUFBRyxHQUFILEdBQUcsQ0FBWTtRQUNmLFVBQUssR0FBTCxLQUFLLENBQVE7UUFYaEIsV0FBTSxHQUFHLEtBQUssQ0FBQztRQUlkLG9CQUFlLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQztRQUV0QyxjQUFTLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQztRQVF0QyxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7UUFFcEIsSUFBSSxDQUFDLFlBQVks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LFdBQVc7dUJBQUMsT0FBTyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIENvbXBvbmVudFJlZixcbiAgRWxlbWVudFJlZixcbiAgRW1iZWRkZWRWaWV3UmVmLFxuICBWaWV3Q2hpbGQsXG4gIEhvc3RCaW5kaW5nLFxuICBPbkRlc3Ryb3ksIE5nWm9uZSxcbiAgT25Jbml0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHtcbiAgQmFzZVBvcnRhbE91dGxldCxcbiAgQ2RrUG9ydGFsT3V0bGV0LFxuICBDb21wb25lbnRQb3J0YWwsXG4gIFRlbXBsYXRlUG9ydGFsXG59IGZyb20gJ0Bhbmd1bGFyL2Nkay9wb3J0YWwnO1xuXG5pbXBvcnQgeyBmcm9tRXZlbnQsIFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGRlYm91bmNlVGltZSwgZmlsdGVyLCB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IEZzUG9wb3ZlclJlZiB9IGZyb20gJy4uLy4uL2NsYXNzL3BvcG92ZXItcmVmJztcblxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdmcy1wb3BvdmVyLXdyYXBwZXInLFxuICB0ZW1wbGF0ZVVybDogJ3BvcG92ZXItd3JhcHBlci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWyAncG9wb3Zlci13cmFwcGVyLmNvbXBvbmVudC5zY3NzJyBdLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgRnNQb3BvdmVyV3JhcHBlckNvbXBvbmVudCBleHRlbmRzIEJhc2VQb3J0YWxPdXRsZXQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG5cbiAgQFZpZXdDaGlsZChDZGtQb3J0YWxPdXRsZXQsIHsgc3RhdGljOiB0cnVlIH0pXG4gIHB1YmxpYyBfcG9ydGFsT3V0bGV0OiBDZGtQb3J0YWxPdXRsZXQ7XG5cbiAgQFZpZXdDaGlsZCgnc3Bpbm5lcicpXG4gIHB1YmxpYyBzcGlubmVyO1xuXG4gIEBIb3N0QmluZGluZygnY2xhc3MnKSBjbGFzcztcblxuICBwdWJsaWMgaGlkZGVuID0gZmFsc2U7XG5cbiAgcHJpdmF0ZSBfd3JhcHBlckNsYXNzO1xuICBwcml2YXRlIF9jb250ZW50Q2hhbmdlc09ic2VydmVyOiBNdXRhdGlvbk9ic2VydmVyO1xuICBwcml2YXRlIF91cGRhdGVQb3NpdGlvbiA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgcHJpdmF0ZSBfZGVzdHJveSQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyBwb3BvdmVyUmVmOiBGc1BvcG92ZXJSZWYsXG4gICAgcHJpdmF0ZSBfZWw6IEVsZW1lbnRSZWYsXG4gICAgcHJpdmF0ZSBfem9uZTogTmdab25lLFxuICApIHtcbiAgICBzdXBlcigpO1xuICAgIHRoaXMuX3VwZGF0ZUNsYXNzKCk7XG5cbiAgICB0aGlzLndyYXBwZXJDbGFzcyA9IHRoaXMucG9wb3ZlclJlZi53cmFwcGVyQ2xhc3M7XG4gICAgdGhpcy5tYXhXaWR0aCA9IHRoaXMucG9wb3ZlclJlZi5tYXhXaWR0aDtcbiAgfVxuXG4gIHB1YmxpYyBzZXQgbWF4V2lkdGgodmFsdWU6IG51bWJlcikge1xuICAgIHRoaXMuX2VsLm5hdGl2ZUVsZW1lbnQuc3R5bGUubWF4V2lkdGggPSB2YWx1ZSA/IHZhbHVlICsgJ3B4JyA6IHZvaWQgMDtcbiAgfVxuXG4gIHB1YmxpYyBzZXQgd3JhcHBlckNsYXNzKHZhbHVlOiBzdHJpbmcpIHtcbiAgICB0aGlzLl93cmFwcGVyQ2xhc3MgPSB2YWx1ZTtcbiAgICB0aGlzLl91cGRhdGVDbGFzcygpO1xuICB9XG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5wb3BvdmVyUmVmLmF1dG9TaG93ICYmIHRoaXMucG9wb3ZlclJlZi5jb21wb25lbnRMb2FkaW5nKSB7XG4gICAgICB0aGlzLl93YXRjaE1vdXNlUG9zaXRpb24oKTtcbiAgICB9XG5cbiAgICB0aGlzLl9vYnNlcnZlQ29udGVudENoYW5nZXMoKTtcbiAgICB0aGlzLl9saXN0ZW5VcGRhdGVQb3NpdGlvblJlcXVlc3RzKCk7XG4gIH1cblxuXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLl9jb250ZW50Q2hhbmdlc09ic2VydmVyLmRpc2Nvbm5lY3QoKTtcbiAgICB0aGlzLl9kZXN0cm95JC5uZXh0KCk7XG4gICAgdGhpcy5fZGVzdHJveSQuY29tcGxldGUoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBdHRhY2ggYSBUZW1wbGF0ZVBvcnRhbCBhcyBjb250ZW50IHRvIHRoaXMgcG9wb3ZlciBjb250YWluZXIuXG4gICAqIEBwYXJhbSBwb3J0YWwgUG9ydGFsIHRvIGJlIGF0dGFjaGVkIGFzIHRoZSBwb3BvdmVyIGNvbnRlbnQuXG4gICAqL1xuICBwdWJsaWMgYXR0YWNoVGVtcGxhdGVQb3J0YWw8Qz4ocG9ydGFsOiBUZW1wbGF0ZVBvcnRhbDxDPik6IEVtYmVkZGVkVmlld1JlZjxDPiB7XG5cbiAgICBpZiAodGhpcy5fcG9ydGFsT3V0bGV0Lmhhc0F0dGFjaGVkKCkpIHtcbiAgICAgIHRocm93IEVycm9yKCdQb3BvdmVyIHRlbXBsYXRlIGFscmVhZHkgYXR0YWNoZWQnKTtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5fcG9ydGFsT3V0bGV0LmF0dGFjaFRlbXBsYXRlUG9ydGFsKHBvcnRhbCk7XG4gIH1cblxuXG4gIC8qKlxuICAgKiBBdHRhY2ggYSBDb21wb25lbnRQb3J0YWwgYXMgY29udGVudCB0byB0aGlzIHBvcG92ZXIgY29udGFpbmVyLlxuICAgKiBAcGFyYW0gcG9ydGFsIFBvcnRhbCB0byBiZSBhdHRhY2hlZCBhcyB0aGUgcG9wb3ZlciBjb250ZW50LlxuICAgKi9cbiAgcHVibGljIGF0dGFjaENvbXBvbmVudFBvcnRhbDxUPihwb3J0YWw6IENvbXBvbmVudFBvcnRhbDxUPik6IENvbXBvbmVudFJlZjxUPiB7XG5cbiAgICBpZiAodGhpcy5fcG9ydGFsT3V0bGV0Lmhhc0F0dGFjaGVkKCkpIHtcbiAgICAgIHRocm93IEVycm9yKCdQb3BvdmVyIGNvbXBvbmVudCBhbHJlYWR5IGF0dGFjaGVkJyk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMuX3BvcnRhbE91dGxldC5hdHRhY2hDb21wb25lbnRQb3J0YWwocG9ydGFsKTtcbiAgfVxuXG4gIHB1YmxpYyB1cGRhdGVQb3NpdGlvbigpIHtcbiAgICB0aGlzLl91cGRhdGVQb3NpdGlvbi5uZXh0KCk7XG4gIH1cblxuICBwcml2YXRlIF93YXRjaE1vdXNlUG9zaXRpb24oKSB7XG4gICAgY29uc3QgY29tcG9uZW50VmlzaWJpbGl0eUNoYW5nZSQgPSB0aGlzLnBvcG92ZXJSZWYuY29tcG9uZW50VmlzaWJsZSRcbiAgICAgIC5waXBlKFxuICAgICAgICBmaWx0ZXIoKHZhbHVlKSA9PiB2YWx1ZSA9PT0gdHJ1ZSlcbiAgICAgICk7XG5cbiAgICB0aGlzLl96b25lLnJ1bk91dHNpZGVBbmd1bGFyKCgpID0+IHtcbiAgICAgIGZyb21FdmVudChkb2N1bWVudCwgJ21vdXNlbW92ZScpXG4gICAgICAgIC5waXBlKFxuICAgICAgICAgIHRha2VVbnRpbChjb21wb25lbnRWaXNpYmlsaXR5Q2hhbmdlJCksXG4gICAgICAgICAgdGFrZVVudGlsKHRoaXMuX2Rlc3Ryb3kkKSxcbiAgICAgICAgKVxuICAgICAgICAuc3Vic2NyaWJlKChlOiBNb3VzZUV2ZW50KSA9PiB7XG4gICAgICAgICAgdGhpcy5zcGlubmVyLm5hdGl2ZUVsZW1lbnQuc3R5bGUubGVmdCA9IGUueCArICdweCc7XG4gICAgICAgICAgdGhpcy5zcGlubmVyLm5hdGl2ZUVsZW1lbnQuc3R5bGUudG9wID0gKGUueSArIDIwKSArICdweCc7XG4gICAgICAgIH0pO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBfdXBkYXRlQ2xhc3MoKSB7XG4gICAgdGhpcy5jbGFzcyA9IFsncG9wb3Zlci13cmFwcGVyJywgdGhpcy5fd3JhcHBlckNsYXNzXS5maWx0ZXIoQm9vbGVhbikuam9pbignICcpO1xuICB9XG5cbiAgcHJpdmF0ZSBfb2JzZXJ2ZUNvbnRlbnRDaGFuZ2VzKCkge1xuICAgIGNvbnN0IGNvbmZpZyA9IHtcbiAgICAgIGNoaWxkTGlzdDogdHJ1ZSxcbiAgICAgIHN1YnRyZWU6IHRydWVcbiAgICB9O1xuXG4gICAgdGhpcy5fY29udGVudENoYW5nZXNPYnNlcnZlciA9IG5ldyBNdXRhdGlvbk9ic2VydmVyKCgpID0+IHtcbiAgICAgIHRoaXMudXBkYXRlUG9zaXRpb24oKTtcbiAgICB9KTtcblxuICAgIHRoaXMuX2NvbnRlbnRDaGFuZ2VzT2JzZXJ2ZXIub2JzZXJ2ZSh0aGlzLl9lbC5uYXRpdmVFbGVtZW50LCBjb25maWcpO1xuICB9XG5cbiAgcHJpdmF0ZSBfbGlzdGVuVXBkYXRlUG9zaXRpb25SZXF1ZXN0cygpIHtcbiAgICB0aGlzLl91cGRhdGVQb3NpdGlvblxuICAgICAgLnBpcGUoXG4gICAgICAgIGRlYm91bmNlVGltZSg1MCksXG4gICAgICAgIHRha2VVbnRpbCh0aGlzLl9kZXN0cm95JCksXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgdGhpcy5wb3BvdmVyUmVmLnVwZGF0ZVBvc2l0aW9uKCk7XG4gICAgICB9KVxuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwid3JhcHBlclwiIFtuZ0NsYXNzXT1cIntcbiAgJ3RoZW1lLWRhcmsnIDogcG9wb3ZlclJlZi50aGVtZSA9PT0gJ2RhcmsnLFxuICAnc2l6ZS10aW55JzogcG9wb3ZlclJlZi5zaXplID09PSAndGlueScsXG4gICdzaXplLXNtYWxsJzogcG9wb3ZlclJlZi5zaXplID09PSAnc21hbGwnLFxuICAnaGlkZGVuJzogIShwb3BvdmVyUmVmLmNvbXBvbmVudFZpc2libGUkIHwgYXN5bmMpXG4gIH1cIj5cbiAgPGRpdiBjbGFzcz1cIm1hdC1lbGV2YXRpb24tejQgcG9wb3Zlci1jb250ZW50XCI+XG4gICAgPG5nLXRlbXBsYXRlIGNka1BvcnRhbE91dGxldD48L25nLXRlbXBsYXRlPlxuICA8L2Rpdj5cblxuICA8ZGl2IGNsYXNzPVwiZnMtcG9wb3Zlci1hcnJvdyBsaWdodFwiPjwvZGl2PlxuICA8ZGl2IGNsYXNzPVwiZnMtcG9wb3Zlci1hcnJvdyBkYXJrXCI+PC9kaXY+XG48L2Rpdj5cblxuPGRpdiBjbGFzcz1cImxvYWRpbmctc3Bpbm5lclwiXG4gICNzcGlubmVyXG4gICpuZ0lmPVwicG9wb3ZlclJlZi5sb2FkaW5nICYmICEocG9wb3ZlclJlZi5jb21wb25lbnRWaXNpYmxlJCB8IGFzeW5jKVwiXG4gIFtzdHlsZS5tYXJnaW5MZWZ0XT1cIihwb3BvdmVyUmVmLmxvYWRpbmdEaWFtZXRlciAqIC0uMjUpICsncHgnXCI+XG4gICAgPG1hdC1zcGlubmVyIFtkaWFtZXRlcl09XCJwb3BvdmVyUmVmLmxvYWRpbmdEaWFtZXRlclwiPjwvbWF0LXNwaW5uZXI+XG48L2Rpdj5cbiJdfQ==
@@ -1,8 +1,8 @@
1
- export var Position;
2
- (function (Position) {
3
- Position["North"] = "north";
4
- Position["South"] = "south";
5
- Position["East"] = "east";
6
- Position["West"] = "west";
7
- })(Position || (Position = {}));
8
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9zaXRpb24uanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AZmlyZXN0aXRjaC9wb3BvdmVyLyIsInNvdXJjZXMiOlsiYXBwL2VudW1zL3Bvc2l0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBTixJQUFZLFFBS1g7QUFMRCxXQUFZLFFBQVE7SUFDbEIsMkJBQWUsQ0FBQTtJQUNmLDJCQUFlLENBQUE7SUFDZix5QkFBYSxDQUFBO0lBQ2IseUJBQWEsQ0FBQTtBQUNmLENBQUMsRUFMVyxRQUFRLEtBQVIsUUFBUSxRQUtuQiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBlbnVtIFBvc2l0aW9uIHtcbiAgTm9ydGggPSAnbm9ydGgnLFxuICBTb3V0aCA9ICdzb3V0aCcsXG4gIEVhc3QgPSAnZWFzdCcsXG4gIFdlc3QgPSAnd2VzdCdcbn1cbiJdfQ==
1
+ export var Position;
2
+ (function (Position) {
3
+ Position["North"] = "north";
4
+ Position["South"] = "south";
5
+ Position["East"] = "east";
6
+ Position["West"] = "west";
7
+ })(Position || (Position = {}));
8
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9zaXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYXBwL2VudW1zL3Bvc2l0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBTixJQUFZLFFBS1g7QUFMRCxXQUFZLFFBQVE7SUFDbEIsMkJBQWUsQ0FBQTtJQUNmLDJCQUFlLENBQUE7SUFDZix5QkFBYSxDQUFBO0lBQ2IseUJBQWEsQ0FBQTtBQUNmLENBQUMsRUFMVyxRQUFRLEtBQVIsUUFBUSxRQUtuQiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBlbnVtIFBvc2l0aW9uIHtcbiAgTm9ydGggPSAnbm9ydGgnLFxuICBTb3V0aCA9ICdzb3V0aCcsXG4gIEVhc3QgPSAnZWFzdCcsXG4gIFdlc3QgPSAnd2VzdCdcbn1cbiJdfQ==
@@ -1,35 +1,44 @@
1
- var FsPopoverModule_1;
2
- import { __decorate } from "tslib";
3
- import { NgModule } from '@angular/core';
4
- import { CommonModule } from '@angular/common';
5
- import { PortalModule } from '@angular/cdk/portal';
6
- import { MatProgressSpinnerModule } from '@angular/material/progress-spinner';
7
- import { FsPopoverComponent } from './components/popover/popover.component';
8
- import { FsPopoverWrapperComponent } from './components/popover-wrapper/popover-wrapper.component';
9
- import { FsPopoverService } from './services/popover.service';
10
- let FsPopoverModule = FsPopoverModule_1 = class FsPopoverModule {
11
- static forRoot() {
12
- return {
13
- ngModule: FsPopoverModule_1,
14
- providers: [FsPopoverService]
15
- };
16
- }
17
- };
18
- FsPopoverModule = FsPopoverModule_1 = __decorate([
19
- NgModule({
20
- imports: [
21
- CommonModule,
22
- PortalModule,
23
- MatProgressSpinnerModule,
24
- ],
25
- declarations: [
26
- FsPopoverComponent,
27
- FsPopoverWrapperComponent,
28
- ],
29
- exports: [
30
- FsPopoverComponent,
31
- ],
32
- })
33
- ], FsPopoverModule);
34
- export { FsPopoverModule };
35
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnMtcG9wb3Zlci5tb2R1bGUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AZmlyZXN0aXRjaC9wb3BvdmVyLyIsInNvdXJjZXMiOlsiYXBwL2ZzLXBvcG92ZXIubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsT0FBTyxFQUFFLFFBQVEsRUFBdUIsTUFBTSxlQUFlLENBQUM7QUFDOUQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNuRCxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUU5RSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUM1RSxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSx3REFBd0QsQ0FBQztBQUNuRyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQWlCOUQsSUFBYSxlQUFlLHVCQUE1QixNQUFhLGVBQWU7SUFDMUIsTUFBTSxDQUFDLE9BQU87UUFDWixPQUFPO1lBQ0wsUUFBUSxFQUFFLGlCQUFlO1lBQ3pCLFNBQVMsRUFBRSxDQUFDLGdCQUFnQixDQUFDO1NBQzlCLENBQUM7SUFDSixDQUFDO0NBQ0YsQ0FBQTtBQVBZLGVBQWU7SUFkM0IsUUFBUSxDQUFDO1FBQ1IsT0FBTyxFQUFFO1lBQ1AsWUFBWTtZQUNaLFlBQVk7WUFDWix3QkFBd0I7U0FDekI7UUFDRCxZQUFZLEVBQUU7WUFDWixrQkFBa0I7WUFDbEIseUJBQXlCO1NBQzFCO1FBQ0QsT0FBTyxFQUFFO1lBQ1Asa0JBQWtCO1NBQ25CO0tBQ0YsQ0FBQztHQUNXLGVBQWUsQ0FPM0I7U0FQWSxlQUFlIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUsIE1vZHVsZVdpdGhQcm92aWRlcnMgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBQb3J0YWxNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jZGsvcG9ydGFsJztcbmltcG9ydCB7IE1hdFByb2dyZXNzU3Bpbm5lck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3Byb2dyZXNzLXNwaW5uZXInO1xuXG5pbXBvcnQgeyBGc1BvcG92ZXJDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvcG9wb3Zlci9wb3BvdmVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGc1BvcG92ZXJXcmFwcGVyQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3BvcG92ZXItd3JhcHBlci9wb3BvdmVyLXdyYXBwZXIuY29tcG9uZW50JztcbmltcG9ydCB7IEZzUG9wb3ZlclNlcnZpY2UgfSBmcm9tICcuL3NlcnZpY2VzL3BvcG92ZXIuc2VydmljZSc7XG5cblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBQb3J0YWxNb2R1bGUsXG4gICAgTWF0UHJvZ3Jlc3NTcGlubmVyTW9kdWxlLFxuICBdLFxuICBkZWNsYXJhdGlvbnM6IFtcbiAgICBGc1BvcG92ZXJDb21wb25lbnQsXG4gICAgRnNQb3BvdmVyV3JhcHBlckNvbXBvbmVudCxcbiAgXSxcbiAgZXhwb3J0czogW1xuICAgIEZzUG9wb3ZlckNvbXBvbmVudCxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgRnNQb3BvdmVyTW9kdWxlIHtcbiAgc3RhdGljIGZvclJvb3QoKTogTW9kdWxlV2l0aFByb3ZpZGVyczxGc1BvcG92ZXJNb2R1bGU+IHtcbiAgICByZXR1cm4ge1xuICAgICAgbmdNb2R1bGU6IEZzUG9wb3Zlck1vZHVsZSxcbiAgICAgIHByb3ZpZGVyczogW0ZzUG9wb3ZlclNlcnZpY2VdXG4gICAgfTtcbiAgfVxufVxuIl19
1
+ import { NgModule } from '@angular/core';
2
+ import { CommonModule } from '@angular/common';
3
+ import { PortalModule } from '@angular/cdk/portal';
4
+ import { MatProgressSpinnerModule } from '@angular/material/progress-spinner';
5
+ import { FsPopoverComponent } from './components/popover/popover.component';
6
+ import { FsPopoverWrapperComponent } from './components/popover-wrapper/popover-wrapper.component';
7
+ import { FsPopoverService } from './services/popover.service';
8
+ import * as i0 from "@angular/core";
9
+ export class FsPopoverModule {
10
+ static forRoot() {
11
+ return {
12
+ ngModule: FsPopoverModule,
13
+ providers: [FsPopoverService]
14
+ };
15
+ }
16
+ }
17
+ FsPopoverModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: FsPopoverModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
18
+ FsPopoverModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: FsPopoverModule, declarations: [FsPopoverComponent,
19
+ FsPopoverWrapperComponent], imports: [CommonModule,
20
+ PortalModule,
21
+ MatProgressSpinnerModule], exports: [FsPopoverComponent] });
22
+ FsPopoverModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: FsPopoverModule, imports: [[
23
+ CommonModule,
24
+ PortalModule,
25
+ MatProgressSpinnerModule,
26
+ ]] });
27
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: FsPopoverModule, decorators: [{
28
+ type: NgModule,
29
+ args: [{
30
+ imports: [
31
+ CommonModule,
32
+ PortalModule,
33
+ MatProgressSpinnerModule,
34
+ ],
35
+ declarations: [
36
+ FsPopoverComponent,
37
+ FsPopoverWrapperComponent,
38
+ ],
39
+ exports: [
40
+ FsPopoverComponent,
41
+ ],
42
+ }]
43
+ }] });
44
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnMtcG9wb3Zlci5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYXBwL2ZzLXBvcG92ZXIubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQXVCLE1BQU0sZUFBZSxDQUFDO0FBQzlELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDbkQsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFFOUUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDNUUsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sd0RBQXdELENBQUM7QUFDbkcsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7O0FBaUI5RCxNQUFNLE9BQU8sZUFBZTtJQUMxQixNQUFNLENBQUMsT0FBTztRQUNaLE9BQU87WUFDTCxRQUFRLEVBQUUsZUFBZTtZQUN6QixTQUFTLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQztTQUM5QixDQUFDO0lBQ0osQ0FBQzs7NkdBTlUsZUFBZTs4R0FBZixlQUFlLGlCQVB4QixrQkFBa0I7UUFDbEIseUJBQXlCLGFBTnpCLFlBQVk7UUFDWixZQUFZO1FBQ1osd0JBQXdCLGFBT3hCLGtCQUFrQjs4R0FHVCxlQUFlLFlBYmpCO1lBQ1AsWUFBWTtZQUNaLFlBQVk7WUFDWix3QkFBd0I7U0FDekI7NEZBU1UsZUFBZTtrQkFkM0IsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUU7d0JBQ1AsWUFBWTt3QkFDWixZQUFZO3dCQUNaLHdCQUF3QjtxQkFDekI7b0JBQ0QsWUFBWSxFQUFFO3dCQUNaLGtCQUFrQjt3QkFDbEIseUJBQXlCO3FCQUMxQjtvQkFDRCxPQUFPLEVBQUU7d0JBQ1Asa0JBQWtCO3FCQUNuQjtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlLCBNb2R1bGVXaXRoUHJvdmlkZXJzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgUG9ydGFsTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3BvcnRhbCc7XG5pbXBvcnQgeyBNYXRQcm9ncmVzc1NwaW5uZXJNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9wcm9ncmVzcy1zcGlubmVyJztcblxuaW1wb3J0IHsgRnNQb3BvdmVyQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3BvcG92ZXIvcG9wb3Zlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgRnNQb3BvdmVyV3JhcHBlckNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9wb3BvdmVyLXdyYXBwZXIvcG9wb3Zlci13cmFwcGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGc1BvcG92ZXJTZXJ2aWNlIH0gZnJvbSAnLi9zZXJ2aWNlcy9wb3BvdmVyLnNlcnZpY2UnO1xuXG5cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgUG9ydGFsTW9kdWxlLFxuICAgIE1hdFByb2dyZXNzU3Bpbm5lck1vZHVsZSxcbiAgXSxcbiAgZGVjbGFyYXRpb25zOiBbXG4gICAgRnNQb3BvdmVyQ29tcG9uZW50LFxuICAgIEZzUG9wb3ZlcldyYXBwZXJDb21wb25lbnQsXG4gIF0sXG4gIGV4cG9ydHM6IFtcbiAgICBGc1BvcG92ZXJDb21wb25lbnQsXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIEZzUG9wb3Zlck1vZHVsZSB7XG4gIHN0YXRpYyBmb3JSb290KCk6IE1vZHVsZVdpdGhQcm92aWRlcnM8RnNQb3BvdmVyTW9kdWxlPiB7XG4gICAgcmV0dXJuIHtcbiAgICAgIG5nTW9kdWxlOiBGc1BvcG92ZXJNb2R1bGUsXG4gICAgICBwcm92aWRlcnM6IFtGc1BvcG92ZXJTZXJ2aWNlXVxuICAgIH07XG4gIH1cbn1cbiJdfQ==
@@ -1,9 +1,9 @@
1
- import { PortalInjector } from '@angular/cdk/portal';
2
- import { FsPopoverRef } from '../class/popover-ref';
3
- export function createInjector(popoverRef, parentInjector) {
4
- const injectionTokens = new WeakMap([
5
- [FsPopoverRef, popoverRef],
6
- ]);
7
- return new PortalInjector(parentInjector, injectionTokens);
8
- }
9
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLWluamVjdG9yLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGZpcmVzdGl0Y2gvcG9wb3Zlci8iLCJzb3VyY2VzIjpbImFwcC9oZWxwZXJzL2NyZWF0ZS1pbmplY3Rvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDckQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBR3BELE1BQU0sVUFBVSxjQUFjLENBQUMsVUFBd0IsRUFBRSxjQUF3QjtJQUMvRSxNQUFNLGVBQWUsR0FBRyxJQUFJLE9BQU8sQ0FBVztRQUM1QyxDQUFDLFlBQVksRUFBRSxVQUFVLENBQUM7S0FDM0IsQ0FBQyxDQUFDO0lBRUgsT0FBTyxJQUFJLGNBQWMsQ0FBQyxjQUFjLEVBQUUsZUFBZSxDQUFDLENBQUM7QUFDN0QsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdG9yIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBQb3J0YWxJbmplY3RvciB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9wb3J0YWwnO1xuaW1wb3J0IHsgRnNQb3BvdmVyUmVmIH0gZnJvbSAnLi4vY2xhc3MvcG9wb3Zlci1yZWYnO1xuXG5cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVJbmplY3Rvcihwb3BvdmVyUmVmOiBGc1BvcG92ZXJSZWYsIHBhcmVudEluamVjdG9yOiBJbmplY3Rvcikge1xuICBjb25zdCBpbmplY3Rpb25Ub2tlbnMgPSBuZXcgV2Vha01hcDxhbnksIGFueT4oW1xuICAgIFtGc1BvcG92ZXJSZWYsIHBvcG92ZXJSZWZdLFxuICBdKTtcblxuICByZXR1cm4gbmV3IFBvcnRhbEluamVjdG9yKHBhcmVudEluamVjdG9yLCBpbmplY3Rpb25Ub2tlbnMpO1xufVxuIl19
1
+ import { PortalInjector } from '@angular/cdk/portal';
2
+ import { FsPopoverRef } from '../class/popover-ref';
3
+ export function createInjector(popoverRef, parentInjector) {
4
+ const injectionTokens = new WeakMap([
5
+ [FsPopoverRef, popoverRef],
6
+ ]);
7
+ return new PortalInjector(parentInjector, injectionTokens);
8
+ }
9
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLWluamVjdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2FwcC9oZWxwZXJzL2NyZWF0ZS1pbmplY3Rvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDckQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBR3BELE1BQU0sVUFBVSxjQUFjLENBQUMsVUFBd0IsRUFBRSxjQUF3QjtJQUMvRSxNQUFNLGVBQWUsR0FBRyxJQUFJLE9BQU8sQ0FBVztRQUM1QyxDQUFDLFlBQVksRUFBRSxVQUFVLENBQUM7S0FDM0IsQ0FBQyxDQUFDO0lBRUgsT0FBTyxJQUFJLGNBQWMsQ0FBQyxjQUFjLEVBQUUsZUFBZSxDQUFDLENBQUM7QUFDN0QsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdG9yIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBQb3J0YWxJbmplY3RvciB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9wb3J0YWwnO1xuaW1wb3J0IHsgRnNQb3BvdmVyUmVmIH0gZnJvbSAnLi4vY2xhc3MvcG9wb3Zlci1yZWYnO1xuXG5cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVJbmplY3Rvcihwb3BvdmVyUmVmOiBGc1BvcG92ZXJSZWYsIHBhcmVudEluamVjdG9yOiBJbmplY3Rvcikge1xuICBjb25zdCBpbmplY3Rpb25Ub2tlbnMgPSBuZXcgV2Vha01hcDxhbnksIGFueT4oW1xuICAgIFtGc1BvcG92ZXJSZWYsIHBvcG92ZXJSZWZdLFxuICBdKTtcblxuICByZXR1cm4gbmV3IFBvcnRhbEluamVjdG9yKHBhcmVudEluamVjdG9yLCBpbmplY3Rpb25Ub2tlbnMpO1xufVxuIl19
@@ -1,12 +1,12 @@
1
- import { OverlayConfig } from '@angular/cdk/overlay';
2
- import { createPopupPositionStrategy } from './create-position-strategy';
3
- export function createOverlayRef(el, overlay, position) {
4
- const config = {
5
- positionStrategy: createPopupPositionStrategy(el, overlay, position),
6
- scrollStrategy: overlay.scrollStrategies.reposition(),
7
- hasBackdrop: false
8
- };
9
- const overlayConfig = new OverlayConfig(config);
10
- return overlay.create(overlayConfig);
11
- }
12
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLW92ZXJsYXktcmVmLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGZpcmVzdGl0Y2gvcG9wb3Zlci8iLCJzb3VyY2VzIjpbImFwcC9oZWxwZXJzL2NyZWF0ZS1vdmVybGF5LXJlZi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQVcsYUFBYSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDOUQsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFJekUsTUFBTSxVQUFVLGdCQUFnQixDQUFDLEVBQWMsRUFBRSxPQUFnQixFQUFFLFFBQWtCO0lBQ25GLE1BQU0sTUFBTSxHQUFHO1FBQ2IsZ0JBQWdCLEVBQUUsMkJBQTJCLENBQUMsRUFBRSxFQUFFLE9BQU8sRUFBRSxRQUFRLENBQUM7UUFDcEUsY0FBYyxFQUFFLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxVQUFVLEVBQUU7UUFDckQsV0FBVyxFQUFFLEtBQUs7S0FDbkIsQ0FBQztJQUVGLE1BQU0sYUFBYSxHQUFHLElBQUksYUFBYSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBRWhELE9BQU8sT0FBTyxDQUFDLE1BQU0sQ0FBQyxhQUFhLENBQUMsQ0FBQztBQUN2QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRWxlbWVudFJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgT3ZlcmxheSwgT3ZlcmxheUNvbmZpZyB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9vdmVybGF5JztcbmltcG9ydCB7IGNyZWF0ZVBvcHVwUG9zaXRpb25TdHJhdGVneSB9IGZyb20gJy4vY3JlYXRlLXBvc2l0aW9uLXN0cmF0ZWd5JztcbmltcG9ydCB7IFBvc2l0aW9uIH0gZnJvbSAnLi8uLi9lbnVtcy9wb3NpdGlvbic7XG5cblxuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZU92ZXJsYXlSZWYoZWw6IEVsZW1lbnRSZWYsIG92ZXJsYXk6IE92ZXJsYXksIHBvc2l0aW9uOiBQb3NpdGlvbikge1xuICBjb25zdCBjb25maWcgPSB7XG4gICAgcG9zaXRpb25TdHJhdGVneTogY3JlYXRlUG9wdXBQb3NpdGlvblN0cmF0ZWd5KGVsLCBvdmVybGF5LCBwb3NpdGlvbiksXG4gICAgc2Nyb2xsU3RyYXRlZ3k6IG92ZXJsYXkuc2Nyb2xsU3RyYXRlZ2llcy5yZXBvc2l0aW9uKCksXG4gICAgaGFzQmFja2Ryb3A6IGZhbHNlXG4gIH07XG5cbiAgY29uc3Qgb3ZlcmxheUNvbmZpZyA9IG5ldyBPdmVybGF5Q29uZmlnKGNvbmZpZyk7XG5cbiAgcmV0dXJuIG92ZXJsYXkuY3JlYXRlKG92ZXJsYXlDb25maWcpO1xufVxuIl19
1
+ import { OverlayConfig } from '@angular/cdk/overlay';
2
+ import { createPopupPositionStrategy } from './create-position-strategy';
3
+ export function createOverlayRef(el, overlay, position) {
4
+ const config = {
5
+ positionStrategy: createPopupPositionStrategy(el, overlay, position),
6
+ scrollStrategy: overlay.scrollStrategies.reposition(),
7
+ hasBackdrop: false
8
+ };
9
+ const overlayConfig = new OverlayConfig(config);
10
+ return overlay.create(overlayConfig);
11
+ }
12
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLW92ZXJsYXktcmVmLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2FwcC9oZWxwZXJzL2NyZWF0ZS1vdmVybGF5LXJlZi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQVcsYUFBYSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDOUQsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFJekUsTUFBTSxVQUFVLGdCQUFnQixDQUFDLEVBQWMsRUFBRSxPQUFnQixFQUFFLFFBQWtCO0lBQ25GLE1BQU0sTUFBTSxHQUFHO1FBQ2IsZ0JBQWdCLEVBQUUsMkJBQTJCLENBQUMsRUFBRSxFQUFFLE9BQU8sRUFBRSxRQUFRLENBQUM7UUFDcEUsY0FBYyxFQUFFLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxVQUFVLEVBQUU7UUFDckQsV0FBVyxFQUFFLEtBQUs7S0FDbkIsQ0FBQztJQUVGLE1BQU0sYUFBYSxHQUFHLElBQUksYUFBYSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBRWhELE9BQU8sT0FBTyxDQUFDLE1BQU0sQ0FBQyxhQUFhLENBQUMsQ0FBQztBQUN2QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRWxlbWVudFJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgT3ZlcmxheSwgT3ZlcmxheUNvbmZpZyB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9vdmVybGF5JztcbmltcG9ydCB7IGNyZWF0ZVBvcHVwUG9zaXRpb25TdHJhdGVneSB9IGZyb20gJy4vY3JlYXRlLXBvc2l0aW9uLXN0cmF0ZWd5JztcbmltcG9ydCB7IFBvc2l0aW9uIH0gZnJvbSAnLi8uLi9lbnVtcy9wb3NpdGlvbic7XG5cblxuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZU92ZXJsYXlSZWYoZWw6IEVsZW1lbnRSZWYsIG92ZXJsYXk6IE92ZXJsYXksIHBvc2l0aW9uOiBQb3NpdGlvbikge1xuICBjb25zdCBjb25maWcgPSB7XG4gICAgcG9zaXRpb25TdHJhdGVneTogY3JlYXRlUG9wdXBQb3NpdGlvblN0cmF0ZWd5KGVsLCBvdmVybGF5LCBwb3NpdGlvbiksXG4gICAgc2Nyb2xsU3RyYXRlZ3k6IG92ZXJsYXkuc2Nyb2xsU3RyYXRlZ2llcy5yZXBvc2l0aW9uKCksXG4gICAgaGFzQmFja2Ryb3A6IGZhbHNlXG4gIH07XG5cbiAgY29uc3Qgb3ZlcmxheUNvbmZpZyA9IG5ldyBPdmVybGF5Q29uZmlnKGNvbmZpZyk7XG5cbiAgcmV0dXJuIG92ZXJsYXkuY3JlYXRlKG92ZXJsYXlDb25maWcpO1xufVxuIl19
@@ -1,56 +1,56 @@
1
- import { Position } from './../enums/position';
2
- export function createPopupPositionStrategy(el, overlay, position) {
3
- let overlayX = 'center';
4
- let overlayY = 'center';
5
- let originX = 'center';
6
- let originY = 'center';
7
- let offsetX = 0;
8
- let offsetY = 0;
9
- let panelClass = [];
10
- switch (position) {
11
- case Position.North:
12
- originY = 'top';
13
- overlayY = 'bottom';
14
- panelClass = ['fs-popover-top'];
15
- offsetY = -8;
16
- break;
17
- case Position.South:
18
- originY = 'bottom';
19
- overlayY = 'top';
20
- panelClass = ['fs-popover-bottom'];
21
- offsetY = 8;
22
- break;
23
- case Position.East:
24
- overlayX = 'start';
25
- originX = 'end';
26
- panelClass = ['fs-popover-left'];
27
- offsetX = 8;
28
- break;
29
- case Position.West:
30
- overlayX = 'end';
31
- originX = 'start';
32
- panelClass = ['fs-popover-right'];
33
- offsetX = -8;
34
- break;
35
- }
36
- return createBasePopupPositionStrategy(el, overlay)
37
- .withPositions([
38
- {
39
- originX: originX,
40
- originY: originY,
41
- overlayX: overlayX,
42
- overlayY: overlayY,
43
- offsetX: offsetX,
44
- offsetY: offsetY,
45
- panelClass: panelClass,
46
- }
47
- ]);
48
- }
49
- function createBasePopupPositionStrategy(el, overlay) {
50
- return overlay.position()
51
- .flexibleConnectedTo(el)
52
- .withGrowAfterOpen(true)
53
- .withFlexibleDimensions(false)
54
- .withViewportMargin(4);
55
- }
56
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLXBvc2l0aW9uLXN0cmF0ZWd5LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGZpcmVzdGl0Y2gvcG9wb3Zlci8iLCJzb3VyY2VzIjpbImFwcC9oZWxwZXJzL2NyZWF0ZS1wb3NpdGlvbi1zdHJhdGVneS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFHL0MsTUFBTSxVQUFVLDJCQUEyQixDQUFDLEVBQWMsRUFBRSxPQUFnQixFQUFFLFFBQWtCO0lBRTlGLElBQUksUUFBUSxHQUErQixRQUFRLENBQUM7SUFDcEQsSUFBSSxRQUFRLEdBQWdDLFFBQVEsQ0FBQztJQUVyRCxJQUFJLE9BQU8sR0FBK0IsUUFBUSxDQUFDO0lBQ25ELElBQUksT0FBTyxHQUFnQyxRQUFRLENBQUM7SUFFcEQsSUFBSSxPQUFPLEdBQUcsQ0FBQyxDQUFDO0lBQ2hCLElBQUksT0FBTyxHQUFHLENBQUMsQ0FBQztJQUVoQixJQUFJLFVBQVUsR0FBYSxFQUFFLENBQUM7SUFHNUIsUUFBUSxRQUFRLEVBQUU7UUFDbEIsS0FBSyxRQUFRLENBQUMsS0FBSztZQUNqQixPQUFPLEdBQUcsS0FBSyxDQUFDO1lBQ2hCLFFBQVEsR0FBRyxRQUFRLENBQUM7WUFDcEIsVUFBVSxHQUFHLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztZQUNoQyxPQUFPLEdBQUcsQ0FBQyxDQUFDLENBQUM7WUFDYixNQUFNO1FBQ1IsS0FBSyxRQUFRLENBQUMsS0FBSztZQUNqQixPQUFPLEdBQUcsUUFBUSxDQUFDO1lBQ25CLFFBQVEsR0FBRyxLQUFLLENBQUM7WUFDakIsVUFBVSxHQUFHLENBQUMsbUJBQW1CLENBQUMsQ0FBQztZQUNuQyxPQUFPLEdBQUcsQ0FBQyxDQUFDO1lBQ1osTUFBTTtRQUNSLEtBQUssUUFBUSxDQUFDLElBQUk7WUFDaEIsUUFBUSxHQUFHLE9BQU8sQ0FBQztZQUNuQixPQUFPLEdBQUcsS0FBSyxDQUFDO1lBQ2hCLFVBQVUsR0FBRyxDQUFDLGlCQUFpQixDQUFDLENBQUM7WUFDakMsT0FBTyxHQUFHLENBQUMsQ0FBQztZQUNaLE1BQU07UUFDUixLQUFLLFFBQVEsQ0FBQyxJQUFJO1lBQ2hCLFFBQVEsR0FBRyxLQUFLLENBQUM7WUFDakIsT0FBTyxHQUFHLE9BQU8sQ0FBQztZQUNsQixVQUFVLEdBQUcsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1lBQ2xDLE9BQU8sR0FBRyxDQUFDLENBQUMsQ0FBQztZQUNiLE1BQU07S0FDVDtJQUVELE9BQU8sK0JBQStCLENBQUMsRUFBRSxFQUFFLE9BQU8sQ0FBQztTQUNoRCxhQUFhLENBQUM7UUFDYjtZQUNFLE9BQU8sRUFBRSxPQUFPO1lBQ2hCLE9BQU8sRUFBRSxPQUFPO1lBQ2hCLFFBQVEsRUFBRSxRQUFRO1lBQ2xCLFFBQVEsRUFBRSxRQUFRO1lBQ2xCLE9BQU8sRUFBRSxPQUFPO1lBQ2hCLE9BQU8sRUFBRSxPQUFPO1lBQ2hCLFVBQVUsRUFBRSxVQUFVO1NBQ3ZCO0tBQ0YsQ0FBQyxDQUFDO0FBQ1AsQ0FBQztBQUdELFNBQVMsK0JBQStCLENBQUMsRUFBYyxFQUFFLE9BQWdCO0lBQ3ZFLE9BQU8sT0FBTyxDQUFDLFFBQVEsRUFBRTtTQUN0QixtQkFBbUIsQ0FBQyxFQUFFLENBQUM7U0FDdkIsaUJBQWlCLENBQUMsSUFBSSxDQUFDO1NBQ3ZCLHNCQUFzQixDQUFDLEtBQUssQ0FBQztTQUM3QixrQkFBa0IsQ0FBQyxDQUFDLENBQUMsQ0FBQztBQUMzQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRWxlbWVudFJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRmxleGlibGVDb25uZWN0ZWRQb3NpdGlvblN0cmF0ZWd5LCBPdmVybGF5LCBQb3NpdGlvblN0cmF0ZWd5IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL292ZXJsYXknO1xuaW1wb3J0IHsgUG9zaXRpb24gfSBmcm9tICcuLy4uL2VudW1zL3Bvc2l0aW9uJztcblxuXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlUG9wdXBQb3NpdGlvblN0cmF0ZWd5KGVsOiBFbGVtZW50UmVmLCBvdmVybGF5OiBPdmVybGF5LCBwb3NpdGlvbjogUG9zaXRpb24pOiBQb3NpdGlvblN0cmF0ZWd5IHtcblxuICBsZXQgb3ZlcmxheVg6ICdzdGFydCcgfCAnY2VudGVyJyB8ICdlbmQnID0gJ2NlbnRlcic7XG4gIGxldCBvdmVybGF5WTogJ3RvcCcgfCAnY2VudGVyJyB8ICdib3R0b20nID0gJ2NlbnRlcic7XG5cbiAgbGV0IG9yaWdpblg6ICdzdGFydCcgfCAnY2VudGVyJyB8ICdlbmQnID0gJ2NlbnRlcic7XG4gIGxldCBvcmlnaW5ZOiAndG9wJyB8ICdjZW50ZXInIHwgJ2JvdHRvbScgPSAnY2VudGVyJztcblxuICBsZXQgb2Zmc2V0WCA9IDA7XG4gIGxldCBvZmZzZXRZID0gMDtcblxuICBsZXQgcGFuZWxDbGFzczogc3RyaW5nW10gPSBbXTtcblxuXG4gICAgc3dpdGNoIChwb3NpdGlvbikge1xuICAgIGNhc2UgUG9zaXRpb24uTm9ydGg6XG4gICAgICBvcmlnaW5ZID0gJ3RvcCc7XG4gICAgICBvdmVybGF5WSA9ICdib3R0b20nO1xuICAgICAgcGFuZWxDbGFzcyA9IFsnZnMtcG9wb3Zlci10b3AnXTtcbiAgICAgIG9mZnNldFkgPSAtODtcbiAgICAgIGJyZWFrO1xuICAgIGNhc2UgUG9zaXRpb24uU291dGg6XG4gICAgICBvcmlnaW5ZID0gJ2JvdHRvbSc7XG4gICAgICBvdmVybGF5WSA9ICd0b3AnO1xuICAgICAgcGFuZWxDbGFzcyA9IFsnZnMtcG9wb3Zlci1ib3R0b20nXTtcbiAgICAgIG9mZnNldFkgPSA4O1xuICAgICAgYnJlYWs7XG4gICAgY2FzZSBQb3NpdGlvbi5FYXN0OlxuICAgICAgb3ZlcmxheVggPSAnc3RhcnQnO1xuICAgICAgb3JpZ2luWCA9ICdlbmQnO1xuICAgICAgcGFuZWxDbGFzcyA9IFsnZnMtcG9wb3Zlci1sZWZ0J107XG4gICAgICBvZmZzZXRYID0gODtcbiAgICAgIGJyZWFrO1xuICAgIGNhc2UgUG9zaXRpb24uV2VzdDpcbiAgICAgIG92ZXJsYXlYID0gJ2VuZCc7XG4gICAgICBvcmlnaW5YID0gJ3N0YXJ0JztcbiAgICAgIHBhbmVsQ2xhc3MgPSBbJ2ZzLXBvcG92ZXItcmlnaHQnXTtcbiAgICAgIG9mZnNldFggPSAtODtcbiAgICAgIGJyZWFrO1xuICB9XG5cbiAgcmV0dXJuIGNyZWF0ZUJhc2VQb3B1cFBvc2l0aW9uU3RyYXRlZ3koZWwsIG92ZXJsYXkpXG4gICAgLndpdGhQb3NpdGlvbnMoW1xuICAgICAge1xuICAgICAgICBvcmlnaW5YOiBvcmlnaW5YLFxuICAgICAgICBvcmlnaW5ZOiBvcmlnaW5ZLFxuICAgICAgICBvdmVybGF5WDogb3ZlcmxheVgsXG4gICAgICAgIG92ZXJsYXlZOiBvdmVybGF5WSxcbiAgICAgICAgb2Zmc2V0WDogb2Zmc2V0WCxcbiAgICAgICAgb2Zmc2V0WTogb2Zmc2V0WSxcbiAgICAgICAgcGFuZWxDbGFzczogcGFuZWxDbGFzcyxcbiAgICAgIH1cbiAgICBdKTtcbn1cblxuXG5mdW5jdGlvbiBjcmVhdGVCYXNlUG9wdXBQb3NpdGlvblN0cmF0ZWd5KGVsOiBFbGVtZW50UmVmLCBvdmVybGF5OiBPdmVybGF5KTogRmxleGlibGVDb25uZWN0ZWRQb3NpdGlvblN0cmF0ZWd5IHtcbiAgcmV0dXJuIG92ZXJsYXkucG9zaXRpb24oKVxuICAgIC5mbGV4aWJsZUNvbm5lY3RlZFRvKGVsKVxuICAgIC53aXRoR3Jvd0FmdGVyT3Blbih0cnVlKVxuICAgIC53aXRoRmxleGlibGVEaW1lbnNpb25zKGZhbHNlKVxuICAgIC53aXRoVmlld3BvcnRNYXJnaW4oNCk7XG59XG4iXX0=
1
+ import { Position } from './../enums/position';
2
+ export function createPopupPositionStrategy(el, overlay, position) {
3
+ let overlayX = 'center';
4
+ let overlayY = 'center';
5
+ let originX = 'center';
6
+ let originY = 'center';
7
+ let offsetX = 0;
8
+ let offsetY = 0;
9
+ let panelClass = [];
10
+ switch (position) {
11
+ case Position.North:
12
+ originY = 'top';
13
+ overlayY = 'bottom';
14
+ panelClass = ['fs-popover-top'];
15
+ offsetY = -8;
16
+ break;
17
+ case Position.South:
18
+ originY = 'bottom';
19
+ overlayY = 'top';
20
+ panelClass = ['fs-popover-bottom'];
21
+ offsetY = 8;
22
+ break;
23
+ case Position.East:
24
+ overlayX = 'start';
25
+ originX = 'end';
26
+ panelClass = ['fs-popover-left'];
27
+ offsetX = 8;
28
+ break;
29
+ case Position.West:
30
+ overlayX = 'end';
31
+ originX = 'start';
32
+ panelClass = ['fs-popover-right'];
33
+ offsetX = -8;
34
+ break;
35
+ }
36
+ return createBasePopupPositionStrategy(el, overlay)
37
+ .withPositions([
38
+ {
39
+ originX: originX,
40
+ originY: originY,
41
+ overlayX: overlayX,
42
+ overlayY: overlayY,
43
+ offsetX: offsetX,
44
+ offsetY: offsetY,
45
+ panelClass: panelClass,
46
+ }
47
+ ]);
48
+ }
49
+ function createBasePopupPositionStrategy(el, overlay) {
50
+ return overlay.position()
51
+ .flexibleConnectedTo(el)
52
+ .withGrowAfterOpen(true)
53
+ .withFlexibleDimensions(false)
54
+ .withViewportMargin(4);
55
+ }
56
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLXBvc2l0aW9uLXN0cmF0ZWd5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2FwcC9oZWxwZXJzL2NyZWF0ZS1wb3NpdGlvbi1zdHJhdGVneS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFHL0MsTUFBTSxVQUFVLDJCQUEyQixDQUFDLEVBQWMsRUFBRSxPQUFnQixFQUFFLFFBQWtCO0lBRTlGLElBQUksUUFBUSxHQUErQixRQUFRLENBQUM7SUFDcEQsSUFBSSxRQUFRLEdBQWdDLFFBQVEsQ0FBQztJQUVyRCxJQUFJLE9BQU8sR0FBK0IsUUFBUSxDQUFDO0lBQ25ELElBQUksT0FBTyxHQUFnQyxRQUFRLENBQUM7SUFFcEQsSUFBSSxPQUFPLEdBQUcsQ0FBQyxDQUFDO0lBQ2hCLElBQUksT0FBTyxHQUFHLENBQUMsQ0FBQztJQUVoQixJQUFJLFVBQVUsR0FBYSxFQUFFLENBQUM7SUFHNUIsUUFBUSxRQUFRLEVBQUU7UUFDbEIsS0FBSyxRQUFRLENBQUMsS0FBSztZQUNqQixPQUFPLEdBQUcsS0FBSyxDQUFDO1lBQ2hCLFFBQVEsR0FBRyxRQUFRLENBQUM7WUFDcEIsVUFBVSxHQUFHLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztZQUNoQyxPQUFPLEdBQUcsQ0FBQyxDQUFDLENBQUM7WUFDYixNQUFNO1FBQ1IsS0FBSyxRQUFRLENBQUMsS0FBSztZQUNqQixPQUFPLEdBQUcsUUFBUSxDQUFDO1lBQ25CLFFBQVEsR0FBRyxLQUFLLENBQUM7WUFDakIsVUFBVSxHQUFHLENBQUMsbUJBQW1CLENBQUMsQ0FBQztZQUNuQyxPQUFPLEdBQUcsQ0FBQyxDQUFDO1lBQ1osTUFBTTtRQUNSLEtBQUssUUFBUSxDQUFDLElBQUk7WUFDaEIsUUFBUSxHQUFHLE9BQU8sQ0FBQztZQUNuQixPQUFPLEdBQUcsS0FBSyxDQUFDO1lBQ2hCLFVBQVUsR0FBRyxDQUFDLGlCQUFpQixDQUFDLENBQUM7WUFDakMsT0FBTyxHQUFHLENBQUMsQ0FBQztZQUNaLE1BQU07UUFDUixLQUFLLFFBQVEsQ0FBQyxJQUFJO1lBQ2hCLFFBQVEsR0FBRyxLQUFLLENBQUM7WUFDakIsT0FBTyxHQUFHLE9BQU8sQ0FBQztZQUNsQixVQUFVLEdBQUcsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1lBQ2xDLE9BQU8sR0FBRyxDQUFDLENBQUMsQ0FBQztZQUNiLE1BQU07S0FDVDtJQUVELE9BQU8sK0JBQStCLENBQUMsRUFBRSxFQUFFLE9BQU8sQ0FBQztTQUNoRCxhQUFhLENBQUM7UUFDYjtZQUNFLE9BQU8sRUFBRSxPQUFPO1lBQ2hCLE9BQU8sRUFBRSxPQUFPO1lBQ2hCLFFBQVEsRUFBRSxRQUFRO1lBQ2xCLFFBQVEsRUFBRSxRQUFRO1lBQ2xCLE9BQU8sRUFBRSxPQUFPO1lBQ2hCLE9BQU8sRUFBRSxPQUFPO1lBQ2hCLFVBQVUsRUFBRSxVQUFVO1NBQ3ZCO0tBQ0YsQ0FBQyxDQUFDO0FBQ1AsQ0FBQztBQUdELFNBQVMsK0JBQStCLENBQUMsRUFBYyxFQUFFLE9BQWdCO0lBQ3ZFLE9BQU8sT0FBTyxDQUFDLFFBQVEsRUFBRTtTQUN0QixtQkFBbUIsQ0FBQyxFQUFFLENBQUM7U0FDdkIsaUJBQWlCLENBQUMsSUFBSSxDQUFDO1NBQ3ZCLHNCQUFzQixDQUFDLEtBQUssQ0FBQztTQUM3QixrQkFBa0IsQ0FBQyxDQUFDLENBQUMsQ0FBQztBQUMzQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRWxlbWVudFJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRmxleGlibGVDb25uZWN0ZWRQb3NpdGlvblN0cmF0ZWd5LCBPdmVybGF5LCBQb3NpdGlvblN0cmF0ZWd5IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL292ZXJsYXknO1xuaW1wb3J0IHsgUG9zaXRpb24gfSBmcm9tICcuLy4uL2VudW1zL3Bvc2l0aW9uJztcblxuXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlUG9wdXBQb3NpdGlvblN0cmF0ZWd5KGVsOiBFbGVtZW50UmVmLCBvdmVybGF5OiBPdmVybGF5LCBwb3NpdGlvbjogUG9zaXRpb24pOiBQb3NpdGlvblN0cmF0ZWd5IHtcblxuICBsZXQgb3ZlcmxheVg6ICdzdGFydCcgfCAnY2VudGVyJyB8ICdlbmQnID0gJ2NlbnRlcic7XG4gIGxldCBvdmVybGF5WTogJ3RvcCcgfCAnY2VudGVyJyB8ICdib3R0b20nID0gJ2NlbnRlcic7XG5cbiAgbGV0IG9yaWdpblg6ICdzdGFydCcgfCAnY2VudGVyJyB8ICdlbmQnID0gJ2NlbnRlcic7XG4gIGxldCBvcmlnaW5ZOiAndG9wJyB8ICdjZW50ZXInIHwgJ2JvdHRvbScgPSAnY2VudGVyJztcblxuICBsZXQgb2Zmc2V0WCA9IDA7XG4gIGxldCBvZmZzZXRZID0gMDtcblxuICBsZXQgcGFuZWxDbGFzczogc3RyaW5nW10gPSBbXTtcblxuXG4gICAgc3dpdGNoIChwb3NpdGlvbikge1xuICAgIGNhc2UgUG9zaXRpb24uTm9ydGg6XG4gICAgICBvcmlnaW5ZID0gJ3RvcCc7XG4gICAgICBvdmVybGF5WSA9ICdib3R0b20nO1xuICAgICAgcGFuZWxDbGFzcyA9IFsnZnMtcG9wb3Zlci10b3AnXTtcbiAgICAgIG9mZnNldFkgPSAtODtcbiAgICAgIGJyZWFrO1xuICAgIGNhc2UgUG9zaXRpb24uU291dGg6XG4gICAgICBvcmlnaW5ZID0gJ2JvdHRvbSc7XG4gICAgICBvdmVybGF5WSA9ICd0b3AnO1xuICAgICAgcGFuZWxDbGFzcyA9IFsnZnMtcG9wb3Zlci1ib3R0b20nXTtcbiAgICAgIG9mZnNldFkgPSA4O1xuICAgICAgYnJlYWs7XG4gICAgY2FzZSBQb3NpdGlvbi5FYXN0OlxuICAgICAgb3ZlcmxheVggPSAnc3RhcnQnO1xuICAgICAgb3JpZ2luWCA9ICdlbmQnO1xuICAgICAgcGFuZWxDbGFzcyA9IFsnZnMtcG9wb3Zlci1sZWZ0J107XG4gICAgICBvZmZzZXRYID0gODtcbiAgICAgIGJyZWFrO1xuICAgIGNhc2UgUG9zaXRpb24uV2VzdDpcbiAgICAgIG92ZXJsYXlYID0gJ2VuZCc7XG4gICAgICBvcmlnaW5YID0gJ3N0YXJ0JztcbiAgICAgIHBhbmVsQ2xhc3MgPSBbJ2ZzLXBvcG92ZXItcmlnaHQnXTtcbiAgICAgIG9mZnNldFggPSAtODtcbiAgICAgIGJyZWFrO1xuICB9XG5cbiAgcmV0dXJuIGNyZWF0ZUJhc2VQb3B1cFBvc2l0aW9uU3RyYXRlZ3koZWwsIG92ZXJsYXkpXG4gICAgLndpdGhQb3NpdGlvbnMoW1xuICAgICAge1xuICAgICAgICBvcmlnaW5YOiBvcmlnaW5YLFxuICAgICAgICBvcmlnaW5ZOiBvcmlnaW5ZLFxuICAgICAgICBvdmVybGF5WDogb3ZlcmxheVgsXG4gICAgICAgIG92ZXJsYXlZOiBvdmVybGF5WSxcbiAgICAgICAgb2Zmc2V0WDogb2Zmc2V0WCxcbiAgICAgICAgb2Zmc2V0WTogb2Zmc2V0WSxcbiAgICAgICAgcGFuZWxDbGFzczogcGFuZWxDbGFzcyxcbiAgICAgIH1cbiAgICBdKTtcbn1cblxuXG5mdW5jdGlvbiBjcmVhdGVCYXNlUG9wdXBQb3NpdGlvblN0cmF0ZWd5KGVsOiBFbGVtZW50UmVmLCBvdmVybGF5OiBPdmVybGF5KTogRmxleGlibGVDb25uZWN0ZWRQb3NpdGlvblN0cmF0ZWd5IHtcbiAgcmV0dXJuIG92ZXJsYXkucG9zaXRpb24oKVxuICAgIC5mbGV4aWJsZUNvbm5lY3RlZFRvKGVsKVxuICAgIC53aXRoR3Jvd0FmdGVyT3Blbih0cnVlKVxuICAgIC53aXRoRmxleGlibGVEaW1lbnNpb25zKGZhbHNlKVxuICAgIC53aXRoVmlld3BvcnRNYXJnaW4oNCk7XG59XG4iXX0=