@firestitch/popover 15.0.0 → 17.0.0
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.
- package/app/directives/popover.directive.d.ts +1 -1
- package/esm2022/app/class/popover-ref.mjs +93 -0
- package/{esm2020 → esm2022}/app/components/popover/popover.component.mjs +4 -4
- package/esm2022/app/components/popover-wrapper/popover-wrapper.component.mjs +126 -0
- package/esm2022/app/directives/popover.directive.mjs +235 -0
- package/{esm2020 → esm2022}/app/fs-popover.module.mjs +10 -10
- package/esm2022/app/helpers/create-position-strategy.mjs +56 -0
- package/esm2022/app/services/popover.service.mjs +68 -0
- package/{fesm2020 → fesm2022}/firestitch-popover.mjs +86 -52
- package/fesm2022/firestitch-popover.mjs.map +1 -0
- package/package.json +5 -11
- package/esm2020/app/class/popover-ref.mjs +0 -86
- package/esm2020/app/components/popover-wrapper/popover-wrapper.component.mjs +0 -117
- package/esm2020/app/directives/popover.directive.mjs +0 -221
- package/esm2020/app/helpers/create-position-strategy.mjs +0 -56
- package/esm2020/app/services/popover.service.mjs +0 -64
- package/fesm2015/firestitch-popover.mjs +0 -611
- package/fesm2015/firestitch-popover.mjs.map +0 -1
- package/fesm2020/firestitch-popover.mjs.map +0 -1
- /package/{esm2020 → esm2022}/app/enums/position.mjs +0 -0
- /package/{esm2020 → esm2022}/app/helpers/create-injector.mjs +0 -0
- /package/{esm2020 → esm2022}/app/helpers/create-overlay-ref.mjs +0 -0
- /package/{esm2020 → esm2022}/app/helpers/create-template-portal.mjs +0 -0
- /package/{esm2020 → esm2022}/app/helpers/point-in-rect.mjs +0 -0
- /package/{esm2020 → esm2022}/app/interfaces/popover-config.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/firestitch-popover.mjs +0 -0
- /package/{esm2020 → esm2022}/public_api.mjs +0 -0
|
@@ -1,64 +0,0 @@
|
|
|
1
|
-
import { Injectable, Injector, TemplateRef } from '@angular/core';
|
|
2
|
-
import { Overlay, } from '@angular/cdk/overlay';
|
|
3
|
-
import { ComponentPortal } from '@angular/cdk/portal';
|
|
4
|
-
import { FsPopoverWrapperComponent } from '../components/popover-wrapper/popover-wrapper.component';
|
|
5
|
-
import { createOverlayRef } from '../helpers/create-overlay-ref';
|
|
6
|
-
import { createInjector } from '../helpers/create-injector';
|
|
7
|
-
import { createTempatePortal } from '../helpers/create-template-portal';
|
|
8
|
-
import * as i0 from "@angular/core";
|
|
9
|
-
import * as i1 from "@angular/cdk/overlay";
|
|
10
|
-
export class FsPopoverService {
|
|
11
|
-
constructor(_injector, _overlay) {
|
|
12
|
-
this._injector = _injector;
|
|
13
|
-
this._overlay = _overlay;
|
|
14
|
-
}
|
|
15
|
-
get hasActivePopover() {
|
|
16
|
-
return !!this._activeElement;
|
|
17
|
-
}
|
|
18
|
-
get activeElementGUID() {
|
|
19
|
-
return this._activeElementGUID;
|
|
20
|
-
}
|
|
21
|
-
setActivePopoverGUID(value) {
|
|
22
|
-
this._activeElementGUID = value;
|
|
23
|
-
}
|
|
24
|
-
openPopover(el, content, data, popoverRef, position) {
|
|
25
|
-
if (this._activeElement) {
|
|
26
|
-
this.close(this._activeElement.popoverRef);
|
|
27
|
-
}
|
|
28
|
-
const overlayRef = createOverlayRef(el, this._overlay, position);
|
|
29
|
-
const containerRef = this._openPortalPreview(FsPopoverWrapperComponent, overlayRef, popoverRef);
|
|
30
|
-
if (content instanceof TemplateRef) {
|
|
31
|
-
const templatePortal = createTempatePortal(content, popoverRef, data);
|
|
32
|
-
containerRef.instance.attachTemplatePortal(templatePortal);
|
|
33
|
-
}
|
|
34
|
-
else {
|
|
35
|
-
containerRef.instance.setTextualContent(content);
|
|
36
|
-
}
|
|
37
|
-
popoverRef.overlayRef = overlayRef;
|
|
38
|
-
this._activeElement = {
|
|
39
|
-
overlayRef,
|
|
40
|
-
popoverRef,
|
|
41
|
-
};
|
|
42
|
-
return containerRef.location.nativeElement;
|
|
43
|
-
}
|
|
44
|
-
close(popoverRef = null) {
|
|
45
|
-
if (this._activeElement.popoverRef === popoverRef) {
|
|
46
|
-
popoverRef.close();
|
|
47
|
-
this._activeElement = void 0;
|
|
48
|
-
this._activeElementGUID = void 0;
|
|
49
|
-
}
|
|
50
|
-
}
|
|
51
|
-
_openPortalPreview(component, overlayRef, popoverRef) {
|
|
52
|
-
const containerPortal = new ComponentPortal(component, void 0, createInjector(popoverRef, this._injector));
|
|
53
|
-
return overlayRef.attach(containerPortal);
|
|
54
|
-
}
|
|
55
|
-
}
|
|
56
|
-
FsPopoverService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FsPopoverService, deps: [{ token: i0.Injector }, { token: i1.Overlay }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
57
|
-
FsPopoverService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FsPopoverService, providedIn: 'root' });
|
|
58
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FsPopoverService, decorators: [{
|
|
59
|
-
type: Injectable,
|
|
60
|
-
args: [{
|
|
61
|
-
providedIn: 'root',
|
|
62
|
-
}]
|
|
63
|
-
}], ctorParameters: function () { return [{ type: i0.Injector }, { type: i1.Overlay }]; } });
|
|
64
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9wb3Zlci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2FwcC9zZXJ2aWNlcy9wb3BvdmVyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFjLFVBQVUsRUFBRSxRQUFRLEVBQUUsV0FBVyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTlFLE9BQU8sRUFFTCxPQUFPLEdBRVIsTUFBTSxzQkFBc0IsQ0FBQztBQUU5QixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFJdEQsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0seURBQXlELENBQUM7QUFDcEcsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDakUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzVELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDOzs7QUFPeEUsTUFBTSxPQUFPLGdCQUFnQjtJQUszQixZQUNVLFNBQW1CLEVBQ25CLFFBQWlCO1FBRGpCLGNBQVMsR0FBVCxTQUFTLENBQVU7UUFDbkIsYUFBUSxHQUFSLFFBQVEsQ0FBUztJQUN4QixDQUFDO0lBRUosSUFBVyxnQkFBZ0I7UUFDekIsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQztJQUMvQixDQUFDO0lBRUQsSUFBVyxpQkFBaUI7UUFDMUIsT0FBTyxJQUFJLENBQUMsa0JBQWtCLENBQUM7SUFDakMsQ0FBQztJQUVNLG9CQUFvQixDQUFDLEtBQWE7UUFDdkMsSUFBSSxDQUFDLGtCQUFrQixHQUFHLEtBQUssQ0FBQztJQUNsQyxDQUFDO0lBa0JNLFdBQVcsQ0FDaEIsRUFBYyxFQUNkLE9BQWtDLEVBQ2xDLElBQVMsRUFDVCxVQUF3QixFQUN4QixRQUFrQjtRQUdsQixJQUFJLElBQUksQ0FBQyxjQUFjLEVBQUU7WUFDdkIsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLFVBQVUsQ0FBQyxDQUFBO1NBQzNDO1FBRUQsTUFBTSxVQUFVLEdBQUcsZ0JBQWdCLENBQUMsRUFBRSxFQUFFLElBQUksQ0FBQyxRQUFRLEVBQUUsUUFBUSxDQUFDLENBQUM7UUFDakUsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixDQUFDLHlCQUF5QixFQUFFLFVBQVUsRUFBRSxVQUFVLENBQUMsQ0FBQztRQUVoRyxJQUFJLE9BQU8sWUFBWSxXQUFXLEVBQUU7WUFDbEMsTUFBTSxjQUFjLEdBQUcsbUJBQW1CLENBQUMsT0FBTyxFQUFFLFVBQVUsRUFBRSxJQUFJLENBQUMsQ0FBQztZQUV0RSxZQUFZLENBQUMsUUFBUSxDQUFDLG9CQUFvQixDQUFDLGNBQWMsQ0FBQyxDQUFDO1NBQzVEO2FBQU07WUFDTCxZQUFZLENBQUMsUUFBUSxDQUFDLGlCQUFpQixDQUFDLE9BQU8sQ0FBQyxDQUFDO1NBQ2xEO1FBRUQsVUFBVSxDQUFDLFVBQVUsR0FBRyxVQUFVLENBQUM7UUFFbkMsSUFBSSxDQUFDLGNBQWMsR0FBRztZQUNwQixVQUFVO1lBQ1YsVUFBVTtTQUNYLENBQUM7UUFFRixPQUFPLFlBQVksQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDO0lBQzdDLENBQUM7SUFFTSxLQUFLLENBQUMsYUFBMkIsSUFBSTtRQUMxQyxJQUFJLElBQUksQ0FBQyxjQUFjLENBQUMsVUFBVSxLQUFLLFVBQVUsRUFBRTtZQUNqRCxVQUFVLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDbkIsSUFBSSxDQUFDLGNBQWMsR0FBRyxLQUFLLENBQUMsQ0FBQztZQUM3QixJQUFJLENBQUMsa0JBQWtCLEdBQUcsS0FBSyxDQUFDLENBQUM7U0FDbEM7SUFDSCxDQUFDO0lBRU8sa0JBQWtCLENBQ3hCLFNBQW1ELEVBQ25ELFVBQXNCLEVBQ3RCLFVBQXdCO1FBRXhCLE1BQU0sZUFBZSxHQUFHLElBQUksZUFBZSxDQUN6QyxTQUFTLEVBQ1QsS0FBSyxDQUFDLEVBQ04sY0FBYyxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLENBQzNDLENBQUM7UUFFRixPQUFPLFVBQVUsQ0FBQyxNQUFNLENBQUMsZUFBZSxDQUFDLENBQUM7SUFDNUMsQ0FBQzs7OEdBM0ZVLGdCQUFnQjtrSEFBaEIsZ0JBQWdCLGNBRmYsTUFBTTs0RkFFUCxnQkFBZ0I7a0JBSDVCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRWxlbWVudFJlZiwgSW5qZWN0YWJsZSwgSW5qZWN0b3IsIFRlbXBsYXRlUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7XG4gIENvbXBvbmVudFR5cGUsXG4gIE92ZXJsYXksXG4gIE92ZXJsYXlSZWYsXG59IGZyb20gJ0Bhbmd1bGFyL2Nkay9vdmVybGF5JztcblxuaW1wb3J0IHsgQ29tcG9uZW50UG9ydGFsIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3BvcnRhbCc7XG5cbmltcG9ydCB7IFBvc2l0aW9uIH0gZnJvbSAnLi8uLi9lbnVtcy9wb3NpdGlvbic7XG5pbXBvcnQgeyBGc1BvcG92ZXJSZWYgfSBmcm9tICcuLi9jbGFzcy9wb3BvdmVyLXJlZic7XG5pbXBvcnQgeyBGc1BvcG92ZXJXcmFwcGVyQ29tcG9uZW50IH0gZnJvbSAnLi4vY29tcG9uZW50cy9wb3BvdmVyLXdyYXBwZXIvcG9wb3Zlci13cmFwcGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBjcmVhdGVPdmVybGF5UmVmIH0gZnJvbSAnLi4vaGVscGVycy9jcmVhdGUtb3ZlcmxheS1yZWYnO1xuaW1wb3J0IHsgY3JlYXRlSW5qZWN0b3IgfSBmcm9tICcuLi9oZWxwZXJzL2NyZWF0ZS1pbmplY3Rvcic7XG5pbXBvcnQgeyBjcmVhdGVUZW1wYXRlUG9ydGFsIH0gZnJvbSAnLi4vaGVscGVycy9jcmVhdGUtdGVtcGxhdGUtcG9ydGFsJztcbmltcG9ydCB7IElQb3BvdmVyQWN0aXZlRWxlbWVudCB9IGZyb20gJy4uL2ludGVyZmFjZXMvcG9wb3Zlci1jb25maWcuaW50ZXJmYWNlJztcblxuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgRnNQb3BvdmVyU2VydmljZSB7XG5cbiAgcHJpdmF0ZSBfYWN0aXZlRWxlbWVudDogSVBvcG92ZXJBY3RpdmVFbGVtZW50O1xuICBwcml2YXRlIF9hY3RpdmVFbGVtZW50R1VJRDogc3RyaW5nO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgX2luamVjdG9yOiBJbmplY3RvcixcbiAgICBwcml2YXRlIF9vdmVybGF5OiBPdmVybGF5LFxuICApIHt9XG5cbiAgcHVibGljIGdldCBoYXNBY3RpdmVQb3BvdmVyKCkge1xuICAgIHJldHVybiAhIXRoaXMuX2FjdGl2ZUVsZW1lbnQ7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGFjdGl2ZUVsZW1lbnRHVUlEKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuX2FjdGl2ZUVsZW1lbnRHVUlEO1xuICB9XG5cbiAgcHVibGljIHNldEFjdGl2ZVBvcG92ZXJHVUlEKHZhbHVlOiBzdHJpbmcpIHtcbiAgICB0aGlzLl9hY3RpdmVFbGVtZW50R1VJRCA9IHZhbHVlO1xuICB9XG5cbiAgcHVibGljIG9wZW5Qb3BvdmVyKFxuICAgIGVsOiBFbGVtZW50UmVmLFxuICAgIHRleHQ6IHN0cmluZyxcbiAgICBkYXRhOiBhbnksXG4gICAgcG9wb3ZlclJlZjogRnNQb3BvdmVyUmVmLFxuICAgIHBvc2l0aW9uOiBQb3NpdGlvblxuICApOiBFbGVtZW50O1xuXG4gIHB1YmxpYyBvcGVuUG9wb3ZlcihcbiAgICBlbDogRWxlbWVudFJlZixcbiAgICB0ZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PixcbiAgICBkYXRhOiBhbnksXG4gICAgcG9wb3ZlclJlZjogRnNQb3BvdmVyUmVmLFxuICAgIHBvc2l0aW9uOiBQb3NpdGlvblxuICApOiBFbGVtZW50O1xuXG4gIHB1YmxpYyBvcGVuUG9wb3ZlcihcbiAgICBlbDogRWxlbWVudFJlZixcbiAgICBjb250ZW50OiBUZW1wbGF0ZVJlZjxhbnk+IHwgc3RyaW5nLFxuICAgIGRhdGE6IGFueSxcbiAgICBwb3BvdmVyUmVmOiBGc1BvcG92ZXJSZWYsXG4gICAgcG9zaXRpb246IFBvc2l0aW9uXG4gICk6IEVsZW1lbnQge1xuXG4gICAgaWYgKHRoaXMuX2FjdGl2ZUVsZW1lbnQpIHtcbiAgICAgIHRoaXMuY2xvc2UodGhpcy5fYWN0aXZlRWxlbWVudC5wb3BvdmVyUmVmKVxuICAgIH1cblxuICAgIGNvbnN0IG92ZXJsYXlSZWYgPSBjcmVhdGVPdmVybGF5UmVmKGVsLCB0aGlzLl9vdmVybGF5LCBwb3NpdGlvbik7XG4gICAgY29uc3QgY29udGFpbmVyUmVmID0gdGhpcy5fb3BlblBvcnRhbFByZXZpZXcoRnNQb3BvdmVyV3JhcHBlckNvbXBvbmVudCwgb3ZlcmxheVJlZiwgcG9wb3ZlclJlZik7XG5cbiAgICBpZiAoY29udGVudCBpbnN0YW5jZW9mIFRlbXBsYXRlUmVmKSB7XG4gICAgICBjb25zdCB0ZW1wbGF0ZVBvcnRhbCA9IGNyZWF0ZVRlbXBhdGVQb3J0YWwoY29udGVudCwgcG9wb3ZlclJlZiwgZGF0YSk7XG5cbiAgICAgIGNvbnRhaW5lclJlZi5pbnN0YW5jZS5hdHRhY2hUZW1wbGF0ZVBvcnRhbCh0ZW1wbGF0ZVBvcnRhbCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnRhaW5lclJlZi5pbnN0YW5jZS5zZXRUZXh0dWFsQ29udGVudChjb250ZW50KTtcbiAgICB9XG5cbiAgICBwb3BvdmVyUmVmLm92ZXJsYXlSZWYgPSBvdmVybGF5UmVmO1xuXG4gICAgdGhpcy5fYWN0aXZlRWxlbWVudCA9IHtcbiAgICAgIG92ZXJsYXlSZWYsXG4gICAgICBwb3BvdmVyUmVmLFxuICAgIH07XG5cbiAgICByZXR1cm4gY29udGFpbmVyUmVmLmxvY2F0aW9uLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cblxuICBwdWJsaWMgY2xvc2UocG9wb3ZlclJlZjogRnNQb3BvdmVyUmVmID0gbnVsbCkge1xuICAgIGlmICh0aGlzLl9hY3RpdmVFbGVtZW50LnBvcG92ZXJSZWYgPT09IHBvcG92ZXJSZWYpIHtcbiAgICAgIHBvcG92ZXJSZWYuY2xvc2UoKTtcbiAgICAgIHRoaXMuX2FjdGl2ZUVsZW1lbnQgPSB2b2lkIDA7XG4gICAgICB0aGlzLl9hY3RpdmVFbGVtZW50R1VJRCA9IHZvaWQgMDtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9vcGVuUG9ydGFsUHJldmlldyhcbiAgICBjb21wb25lbnQ6IENvbXBvbmVudFR5cGU8RnNQb3BvdmVyV3JhcHBlckNvbXBvbmVudD4sXG4gICAgb3ZlcmxheVJlZjogT3ZlcmxheVJlZixcbiAgICBwb3BvdmVyUmVmOiBGc1BvcG92ZXJSZWYsXG4gICkge1xuICAgIGNvbnN0IGNvbnRhaW5lclBvcnRhbCA9IG5ldyBDb21wb25lbnRQb3J0YWw8RnNQb3BvdmVyV3JhcHBlckNvbXBvbmVudD4oXG4gICAgICBjb21wb25lbnQsXG4gICAgICB2b2lkIDAsXG4gICAgICBjcmVhdGVJbmplY3Rvcihwb3BvdmVyUmVmLCB0aGlzLl9pbmplY3RvciksXG4gICAgKTtcblxuICAgIHJldHVybiBvdmVybGF5UmVmLmF0dGFjaChjb250YWluZXJQb3J0YWwpO1xuICB9XG59XG4iXX0=
|