ngwr 0.4.0 → 0.5.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.
- package/README.md +3 -6
- package/button/button.d.ts +1 -1
- package/checkbox/checkbox.d.ts +1 -1
- package/core/abstract/base.d.ts +1 -1
- package/core/overlay/connected-overlay-directive.d.ts +16 -0
- package/core/overlay/get-placement-name.d.ts +2 -0
- package/core/overlay/index.d.ts +5 -0
- package/core/overlay/overlay-module.d.ts +7 -0
- package/core/overlay/overlay.scss +9 -0
- package/core/overlay/position-map.d.ts +17 -0
- package/core/overlay/position-type.d.ts +2 -0
- package/core/types/index.d.ts +2 -0
- package/core/types/ng-style-interface.d.ts +4 -0
- package/core/types/property-mapping.d.ts +3 -0
- package/dialog/dialog-base.d.ts +1 -1
- package/dialog/dialog-container.d.ts +1 -1
- package/dialog/dialog-content-directives.d.ts +4 -4
- package/divider/divider.d.ts +1 -1
- package/esm2020/button/button-module.mjs +5 -5
- package/esm2020/button/button.mjs +4 -4
- package/esm2020/checkbox/checkbox-module.mjs +5 -5
- package/esm2020/checkbox/checkbox.mjs +4 -4
- package/esm2020/core/abstract/base.mjs +4 -4
- package/esm2020/core/overlay/connected-overlay-directive.mjs +98 -0
- package/esm2020/core/overlay/get-placement-name.mjs +13 -0
- package/esm2020/core/overlay/index.mjs +5 -0
- package/esm2020/core/overlay/ngwr-core-overlay.mjs +5 -0
- package/esm2020/core/overlay/overlay-module.mjs +16 -0
- package/esm2020/core/overlay/position-map.mjs +18 -0
- package/esm2020/core/overlay/position-type.mjs +2 -0
- package/esm2020/core/types/index.mjs +3 -1
- package/esm2020/core/types/ng-style-interface.mjs +2 -0
- package/esm2020/core/types/property-mapping.mjs +2 -0
- package/esm2020/dialog/dialog-base.mjs +4 -4
- package/esm2020/dialog/dialog-container.mjs +4 -4
- package/esm2020/dialog/dialog-content-directives.mjs +13 -13
- package/esm2020/dialog/dialog-module.mjs +7 -7
- package/esm2020/dialog/dialog-service.mjs +4 -4
- package/esm2020/divider/divider-module.mjs +5 -5
- package/esm2020/divider/divider.mjs +4 -4
- package/esm2020/form/form-error.mjs +4 -4
- package/esm2020/form/form-item.mjs +4 -4
- package/esm2020/form/form-module.mjs +5 -5
- package/esm2020/icon/icon-module.mjs +5 -5
- package/esm2020/icon/icon-service.mjs +4 -4
- package/esm2020/icon/icon.mjs +4 -4
- package/esm2020/input/input-module.mjs +5 -5
- package/esm2020/input/input.mjs +4 -4
- package/esm2020/skeleton/skeleton-module.mjs +5 -5
- package/esm2020/skeleton/skeleton.mjs +4 -4
- package/esm2020/spinner/spinner-module.mjs +5 -5
- package/esm2020/spinner/spinner.mjs +4 -4
- package/esm2020/tag/tag-module.mjs +5 -5
- package/esm2020/tag/tag.mjs +4 -4
- package/esm2020/tooltip/index.mjs +5 -0
- package/esm2020/tooltip/ngwr-tooltip.mjs +5 -0
- package/esm2020/tooltip/tooltip-component.mjs +93 -0
- package/esm2020/tooltip/tooltip-default-positions.mjs +8 -0
- package/esm2020/tooltip/tooltip-directive.mjs +85 -0
- package/esm2020/tooltip/tooltip-module.mjs +21 -0
- package/esm2020/tooltip/tooltip-trigger.mjs +2 -0
- package/fesm2015/ngwr-button.mjs +8 -7
- package/fesm2015/ngwr-button.mjs.map +1 -1
- package/fesm2015/ngwr-checkbox.mjs +8 -7
- package/fesm2015/ngwr-checkbox.mjs.map +1 -1
- package/fesm2015/ngwr-core-abstract.mjs +4 -3
- package/fesm2015/ngwr-core-abstract.mjs.map +1 -1
- package/fesm2015/ngwr-core-color.mjs +1 -0
- package/fesm2015/ngwr-core-decorators.mjs +1 -0
- package/fesm2015/ngwr-core-overlay.mjs +147 -0
- package/fesm2015/ngwr-core-overlay.mjs.map +1 -0
- package/fesm2015/ngwr-core-types.mjs +1 -0
- package/fesm2015/ngwr-dialog.mjs +28 -27
- package/fesm2015/ngwr-dialog.mjs.map +1 -1
- package/fesm2015/ngwr-divider.mjs +8 -7
- package/fesm2015/ngwr-divider.mjs.map +1 -1
- package/fesm2015/ngwr-form.mjs +11 -10
- package/fesm2015/ngwr-form.mjs.map +1 -1
- package/fesm2015/ngwr-icon.mjs +11 -10
- package/fesm2015/ngwr-icon.mjs.map +1 -1
- package/fesm2015/ngwr-input.mjs +8 -7
- package/fesm2015/ngwr-input.mjs.map +1 -1
- package/fesm2015/ngwr-skeleton.mjs +8 -7
- package/fesm2015/ngwr-skeleton.mjs.map +1 -1
- package/fesm2015/ngwr-spinner.mjs +8 -7
- package/fesm2015/ngwr-spinner.mjs.map +1 -1
- package/fesm2015/ngwr-tag.mjs +8 -7
- package/fesm2015/ngwr-tag.mjs.map +1 -1
- package/fesm2015/ngwr-tooltip.mjs +208 -0
- package/fesm2015/ngwr-tooltip.mjs.map +1 -0
- package/fesm2015/ngwr.mjs +1 -0
- package/fesm2020/ngwr-button.mjs +8 -7
- package/fesm2020/ngwr-button.mjs.map +1 -1
- package/fesm2020/ngwr-checkbox.mjs +8 -7
- package/fesm2020/ngwr-checkbox.mjs.map +1 -1
- package/fesm2020/ngwr-core-abstract.mjs +4 -3
- package/fesm2020/ngwr-core-abstract.mjs.map +1 -1
- package/fesm2020/ngwr-core-color.mjs +1 -0
- package/fesm2020/ngwr-core-decorators.mjs +1 -0
- package/fesm2020/ngwr-core-overlay.mjs +147 -0
- package/fesm2020/ngwr-core-overlay.mjs.map +1 -0
- package/fesm2020/ngwr-core-types.mjs +1 -0
- package/fesm2020/ngwr-dialog.mjs +28 -27
- package/fesm2020/ngwr-dialog.mjs.map +1 -1
- package/fesm2020/ngwr-divider.mjs +8 -7
- package/fesm2020/ngwr-divider.mjs.map +1 -1
- package/fesm2020/ngwr-form.mjs +11 -10
- package/fesm2020/ngwr-form.mjs.map +1 -1
- package/fesm2020/ngwr-icon.mjs +11 -10
- package/fesm2020/ngwr-icon.mjs.map +1 -1
- package/fesm2020/ngwr-input.mjs +8 -7
- package/fesm2020/ngwr-input.mjs.map +1 -1
- package/fesm2020/ngwr-skeleton.mjs +8 -7
- package/fesm2020/ngwr-skeleton.mjs.map +1 -1
- package/fesm2020/ngwr-spinner.mjs +8 -7
- package/fesm2020/ngwr-spinner.mjs.map +1 -1
- package/fesm2020/ngwr-tag.mjs +8 -7
- package/fesm2020/ngwr-tag.mjs.map +1 -1
- package/fesm2020/ngwr-tooltip.mjs +205 -0
- package/fesm2020/ngwr-tooltip.mjs.map +1 -0
- package/fesm2020/ngwr.mjs +1 -0
- package/form/form-error.d.ts +1 -1
- package/form/form-item.d.ts +1 -1
- package/icon/icon.d.ts +1 -1
- package/input/input.d.ts +1 -1
- package/package.json +22 -6
- package/skeleton/skeleton.d.ts +1 -1
- package/spinner/spinner.d.ts +1 -1
- package/styles/grid.scss +35 -144
- package/styles/reset.scss +6 -0
- package/tag/tag.d.ts +1 -1
- package/tooltip/index.d.ts +5 -0
- package/tooltip/tooltip-component.d.ts +31 -0
- package/tooltip/tooltip-default-positions.d.ts +1 -0
- package/tooltip/tooltip-directive.d.ts +22 -0
- package/tooltip/tooltip-module.d.ts +11 -0
- package/tooltip/tooltip-trigger.d.ts +1 -0
- package/tooltip/tooltip.scss +67 -0
- package/logo.svg +0 -6
|
@@ -0,0 +1,147 @@
|
|
|
1
|
+
import { __decorate } from 'tslib';
|
|
2
|
+
import { coerceBooleanProperty } from '@angular/cdk/coercion';
|
|
3
|
+
import * as i1 from '@angular/cdk/overlay';
|
|
4
|
+
import { ConnectionPositionPair, CdkOverlayOrigin } from '@angular/cdk/overlay';
|
|
5
|
+
import * as i0 from '@angular/core';
|
|
6
|
+
import { ElementRef, Directive, Input, NgModule } from '@angular/core';
|
|
7
|
+
import { takeUntil } from 'rxjs';
|
|
8
|
+
import { WrAbstractBase } from 'ngwr/core/abstract';
|
|
9
|
+
import { InputBoolean } from 'ngwr/core/decorators';
|
|
10
|
+
|
|
11
|
+
const WR_POSITION_MAP = {
|
|
12
|
+
top: new ConnectionPositionPair({ originX: 'center', originY: 'top' }, { overlayX: 'center', overlayY: 'bottom' }),
|
|
13
|
+
topCenter: new ConnectionPositionPair({ originX: 'center', originY: 'top' }, { overlayX: 'center', overlayY: 'bottom' }),
|
|
14
|
+
topLeft: new ConnectionPositionPair({ originX: 'start', originY: 'top' }, { overlayX: 'start', overlayY: 'bottom' }),
|
|
15
|
+
topRight: new ConnectionPositionPair({ originX: 'end', originY: 'top' }, { overlayX: 'end', overlayY: 'bottom' }),
|
|
16
|
+
right: new ConnectionPositionPair({ originX: 'end', originY: 'center' }, { overlayX: 'start', overlayY: 'center' }),
|
|
17
|
+
rightTop: new ConnectionPositionPair({ originX: 'end', originY: 'top' }, { overlayX: 'start', overlayY: 'top' }),
|
|
18
|
+
rightBottom: new ConnectionPositionPair({ originX: 'end', originY: 'bottom' }, { overlayX: 'start', overlayY: 'bottom' }),
|
|
19
|
+
bottom: new ConnectionPositionPair({ originX: 'center', originY: 'bottom' }, { overlayX: 'center', overlayY: 'top' }),
|
|
20
|
+
bottomCenter: new ConnectionPositionPair({ originX: 'center', originY: 'bottom' }, { overlayX: 'center', overlayY: 'top' }),
|
|
21
|
+
bottomLeft: new ConnectionPositionPair({ originX: 'start', originY: 'bottom' }, { overlayX: 'start', overlayY: 'top' }),
|
|
22
|
+
bottomRight: new ConnectionPositionPair({ originX: 'end', originY: 'bottom' }, { overlayX: 'end', overlayY: 'top' }),
|
|
23
|
+
left: new ConnectionPositionPair({ originX: 'start', originY: 'center' }, { overlayX: 'end', overlayY: 'center' }),
|
|
24
|
+
leftTop: new ConnectionPositionPair({ originX: 'start', originY: 'top' }, { overlayX: 'end', overlayY: 'top' }),
|
|
25
|
+
leftBottom: new ConnectionPositionPair({ originX: 'start', originY: 'bottom' }, { overlayX: 'end', overlayY: 'bottom' }),
|
|
26
|
+
};
|
|
27
|
+
|
|
28
|
+
function getPlacementName(position) {
|
|
29
|
+
for (const placement in WR_POSITION_MAP) {
|
|
30
|
+
if (position.connectionPair.originX === WR_POSITION_MAP[placement].originX &&
|
|
31
|
+
position.connectionPair.originY === WR_POSITION_MAP[placement].originY &&
|
|
32
|
+
position.connectionPair.overlayX === WR_POSITION_MAP[placement].overlayX &&
|
|
33
|
+
position.connectionPair.overlayY === WR_POSITION_MAP[placement].overlayY) {
|
|
34
|
+
return placement;
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
return undefined;
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
class WrConnectedOverlayDirective extends WrAbstractBase {
|
|
41
|
+
constructor(cdkConnectedOverlay) {
|
|
42
|
+
super();
|
|
43
|
+
this.cdkConnectedOverlay = cdkConnectedOverlay;
|
|
44
|
+
this._arrowPointAtCenter = false;
|
|
45
|
+
this.cdkConnectedOverlay.backdropClass = 'wr-overlay__backdrop--transparent';
|
|
46
|
+
this.cdkConnectedOverlay.positionChange
|
|
47
|
+
.pipe(takeUntil(this.destroyed$))
|
|
48
|
+
.subscribe((position) => {
|
|
49
|
+
if (this.wrArrowPointAtCenter) {
|
|
50
|
+
this.updateArrowPosition(position);
|
|
51
|
+
}
|
|
52
|
+
});
|
|
53
|
+
}
|
|
54
|
+
get wrArrowPointAtCenter() {
|
|
55
|
+
return this._arrowPointAtCenter;
|
|
56
|
+
}
|
|
57
|
+
set wrArrowPointAtCenter(value) {
|
|
58
|
+
this._arrowPointAtCenter = coerceBooleanProperty(value);
|
|
59
|
+
}
|
|
60
|
+
updateArrowPosition(position) {
|
|
61
|
+
const originRect = this.getOriginRect();
|
|
62
|
+
const placement = getPlacementName(position);
|
|
63
|
+
let offsetX = 0;
|
|
64
|
+
let offsetY = 0;
|
|
65
|
+
if (placement === 'topLeft' || placement === 'bottomLeft') {
|
|
66
|
+
offsetX = originRect.width / 2 - 14;
|
|
67
|
+
}
|
|
68
|
+
else if (placement === 'topRight' || placement === 'bottomRight') {
|
|
69
|
+
offsetX = -(originRect.width / 2 - 14);
|
|
70
|
+
}
|
|
71
|
+
else if (placement === 'leftTop' || placement === 'rightTop') {
|
|
72
|
+
offsetY = originRect.height / 2 - 10;
|
|
73
|
+
}
|
|
74
|
+
else if (placement === 'leftBottom' || placement === 'rightBottom') {
|
|
75
|
+
offsetY = -(originRect.height / 2 - 10);
|
|
76
|
+
}
|
|
77
|
+
if (this.cdkConnectedOverlay.offsetX !== offsetX || this.cdkConnectedOverlay.offsetY !== offsetY) {
|
|
78
|
+
this.cdkConnectedOverlay.offsetY = offsetY;
|
|
79
|
+
this.cdkConnectedOverlay.offsetX = offsetX;
|
|
80
|
+
this.cdkConnectedOverlay.overlayRef.updatePosition();
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
getFlexibleConnectedPositionStrategyOrigin() {
|
|
84
|
+
if (this.cdkConnectedOverlay.origin instanceof CdkOverlayOrigin) {
|
|
85
|
+
return this.cdkConnectedOverlay.origin.elementRef;
|
|
86
|
+
}
|
|
87
|
+
else {
|
|
88
|
+
return this.cdkConnectedOverlay.origin;
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
getOriginRect() {
|
|
92
|
+
const origin = this.getFlexibleConnectedPositionStrategyOrigin();
|
|
93
|
+
if (origin instanceof ElementRef) {
|
|
94
|
+
return origin.nativeElement.getBoundingClientRect();
|
|
95
|
+
}
|
|
96
|
+
// Check for Element so SVG elements are also supported.
|
|
97
|
+
if (origin instanceof Element) {
|
|
98
|
+
return origin.getBoundingClientRect();
|
|
99
|
+
}
|
|
100
|
+
const width = origin.width || 0;
|
|
101
|
+
const height = origin.height || 0;
|
|
102
|
+
// If the origin is a point, return a dom rect as if it was a 0x0 element at the point.
|
|
103
|
+
return {
|
|
104
|
+
top: origin.y,
|
|
105
|
+
bottom: origin.y + height,
|
|
106
|
+
left: origin.x,
|
|
107
|
+
right: origin.x + width,
|
|
108
|
+
height,
|
|
109
|
+
width,
|
|
110
|
+
};
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
WrConnectedOverlayDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: WrConnectedOverlayDirective, deps: [{ token: i1.CdkConnectedOverlay }], target: i0.ɵɵFactoryTarget.Directive });
|
|
114
|
+
WrConnectedOverlayDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.4", type: WrConnectedOverlayDirective, selector: "[cdkConnectedOverlay][wrConnectedOverlay]", inputs: { wrArrowPointAtCenter: "wrArrowPointAtCenter" }, exportAs: ["wrConnectedOverlay"], usesInheritance: true, ngImport: i0 });
|
|
115
|
+
__decorate([
|
|
116
|
+
InputBoolean()
|
|
117
|
+
], WrConnectedOverlayDirective.prototype, "wrArrowPointAtCenter", null);
|
|
118
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: WrConnectedOverlayDirective, decorators: [{
|
|
119
|
+
type: Directive,
|
|
120
|
+
args: [{
|
|
121
|
+
selector: '[cdkConnectedOverlay][wrConnectedOverlay]',
|
|
122
|
+
exportAs: 'wrConnectedOverlay',
|
|
123
|
+
}]
|
|
124
|
+
}], ctorParameters: function () { return [{ type: i1.CdkConnectedOverlay }]; }, propDecorators: { wrArrowPointAtCenter: [{
|
|
125
|
+
type: Input
|
|
126
|
+
}] } });
|
|
127
|
+
|
|
128
|
+
class WrOverlayModule {
|
|
129
|
+
}
|
|
130
|
+
WrOverlayModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: WrOverlayModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
131
|
+
WrOverlayModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.0.4", ngImport: i0, type: WrOverlayModule, declarations: [WrConnectedOverlayDirective], exports: [WrConnectedOverlayDirective] });
|
|
132
|
+
WrOverlayModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: WrOverlayModule });
|
|
133
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: WrOverlayModule, decorators: [{
|
|
134
|
+
type: NgModule,
|
|
135
|
+
args: [{
|
|
136
|
+
declarations: [WrConnectedOverlayDirective],
|
|
137
|
+
exports: [WrConnectedOverlayDirective],
|
|
138
|
+
}]
|
|
139
|
+
}] });
|
|
140
|
+
|
|
141
|
+
/**
|
|
142
|
+
* Generated bundle index. Do not edit.
|
|
143
|
+
*/
|
|
144
|
+
|
|
145
|
+
export { WR_POSITION_MAP, WrConnectedOverlayDirective, WrOverlayModule, getPlacementName };
|
|
146
|
+
//# sourceMappingURL=ngwr-core-overlay.mjs.map
|
|
147
|
+
//# sourceMappingURL=ngwr-core-overlay.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ngwr-core-overlay.mjs","sources":["../../../projects/lib/core/overlay/position-map.ts","../../../projects/lib/core/overlay/get-placement-name.ts","../../../projects/lib/core/overlay/connected-overlay-directive.ts","../../../projects/lib/core/overlay/overlay-module.ts","../../../projects/lib/core/overlay/ngwr-core-overlay.ts"],"sourcesContent":["import { ConnectionPositionPair } from '@angular/cdk/overlay';\n\nexport const WR_POSITION_MAP = {\n top: new ConnectionPositionPair({ originX: 'center', originY: 'top' }, { overlayX: 'center', overlayY: 'bottom' }),\n topCenter: new ConnectionPositionPair(\n { originX: 'center', originY: 'top' },\n { overlayX: 'center', overlayY: 'bottom' }\n ),\n topLeft: new ConnectionPositionPair({ originX: 'start', originY: 'top' }, { overlayX: 'start', overlayY: 'bottom' }),\n topRight: new ConnectionPositionPair({ originX: 'end', originY: 'top' }, { overlayX: 'end', overlayY: 'bottom' }),\n right: new ConnectionPositionPair({ originX: 'end', originY: 'center' }, { overlayX: 'start', overlayY: 'center' }),\n rightTop: new ConnectionPositionPair({ originX: 'end', originY: 'top' }, { overlayX: 'start', overlayY: 'top' }),\n rightBottom: new ConnectionPositionPair(\n { originX: 'end', originY: 'bottom' },\n { overlayX: 'start', overlayY: 'bottom' }\n ),\n bottom: new ConnectionPositionPair({ originX: 'center', originY: 'bottom' }, { overlayX: 'center', overlayY: 'top' }),\n bottomCenter: new ConnectionPositionPair(\n { originX: 'center', originY: 'bottom' },\n { overlayX: 'center', overlayY: 'top' }\n ),\n bottomLeft: new ConnectionPositionPair(\n { originX: 'start', originY: 'bottom' },\n { overlayX: 'start', overlayY: 'top' }\n ),\n bottomRight: new ConnectionPositionPair({ originX: 'end', originY: 'bottom' }, { overlayX: 'end', overlayY: 'top' }),\n left: new ConnectionPositionPair({ originX: 'start', originY: 'center' }, { overlayX: 'end', overlayY: 'center' }),\n leftTop: new ConnectionPositionPair({ originX: 'start', originY: 'top' }, { overlayX: 'end', overlayY: 'top' }),\n leftBottom: new ConnectionPositionPair(\n { originX: 'start', originY: 'bottom' },\n { overlayX: 'end', overlayY: 'bottom' }\n ),\n};\n","import { ConnectedOverlayPositionChange } from '@angular/cdk/overlay';\n\nimport { WR_POSITION_MAP } from './position-map';\nimport { WR_POSITION_TYPE } from './position-type';\n\nexport function getPlacementName(position: ConnectedOverlayPositionChange): string | undefined {\n for (const placement in WR_POSITION_MAP) {\n if (\n position.connectionPair.originX === WR_POSITION_MAP[placement as WR_POSITION_TYPE].originX &&\n position.connectionPair.originY === WR_POSITION_MAP[placement as WR_POSITION_TYPE].originY &&\n position.connectionPair.overlayX === WR_POSITION_MAP[placement as WR_POSITION_TYPE].overlayX &&\n position.connectionPair.overlayY === WR_POSITION_MAP[placement as WR_POSITION_TYPE].overlayY\n ) {\n return placement;\n }\n }\n return undefined;\n}\n","import { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\nimport {\n CdkConnectedOverlay,\n CdkOverlayOrigin,\n ConnectedOverlayPositionChange,\n FlexibleConnectedPositionStrategyOrigin,\n} from '@angular/cdk/overlay';\nimport { Directive, ElementRef, Input } from '@angular/core';\nimport { takeUntil } from 'rxjs';\n\nimport { WrAbstractBase } from 'ngwr/core/abstract';\nimport { InputBoolean } from 'ngwr/core/decorators';\n\nimport { getPlacementName } from './get-placement-name';\n\ntype Dimensions = Omit<DOMRect, 'x' | 'y' | 'toJSON'>;\n\n@Directive({\n selector: '[cdkConnectedOverlay][wrConnectedOverlay]',\n exportAs: 'wrConnectedOverlay',\n})\nexport class WrConnectedOverlayDirective extends WrAbstractBase {\n @Input()\n @InputBoolean()\n get wrArrowPointAtCenter(): boolean {\n return this._arrowPointAtCenter;\n }\n set wrArrowPointAtCenter(value: BooleanInput) {\n this._arrowPointAtCenter = coerceBooleanProperty(value);\n }\n private _arrowPointAtCenter: boolean = false;\n\n constructor(private readonly cdkConnectedOverlay: CdkConnectedOverlay) {\n super();\n\n this.cdkConnectedOverlay.backdropClass = 'wr-overlay__backdrop--transparent';\n\n this.cdkConnectedOverlay.positionChange\n .pipe(takeUntil(this.destroyed$))\n .subscribe((position: ConnectedOverlayPositionChange) => {\n if (this.wrArrowPointAtCenter) {\n this.updateArrowPosition(position);\n }\n });\n }\n\n private updateArrowPosition(position: ConnectedOverlayPositionChange): void {\n const originRect = this.getOriginRect();\n const placement = getPlacementName(position);\n\n let offsetX: number | undefined = 0;\n let offsetY: number | undefined = 0;\n\n if (placement === 'topLeft' || placement === 'bottomLeft') {\n offsetX = originRect.width / 2 - 14;\n } else if (placement === 'topRight' || placement === 'bottomRight') {\n offsetX = -(originRect.width / 2 - 14);\n } else if (placement === 'leftTop' || placement === 'rightTop') {\n offsetY = originRect.height / 2 - 10;\n } else if (placement === 'leftBottom' || placement === 'rightBottom') {\n offsetY = -(originRect.height / 2 - 10);\n }\n\n if (this.cdkConnectedOverlay.offsetX !== offsetX || this.cdkConnectedOverlay.offsetY !== offsetY) {\n this.cdkConnectedOverlay.offsetY = offsetY;\n this.cdkConnectedOverlay.offsetX = offsetX;\n this.cdkConnectedOverlay.overlayRef.updatePosition();\n }\n }\n\n private getFlexibleConnectedPositionStrategyOrigin(): FlexibleConnectedPositionStrategyOrigin {\n if (this.cdkConnectedOverlay.origin instanceof CdkOverlayOrigin) {\n return this.cdkConnectedOverlay.origin.elementRef;\n } else {\n return this.cdkConnectedOverlay.origin;\n }\n }\n\n private getOriginRect(): Dimensions {\n const origin = this.getFlexibleConnectedPositionStrategyOrigin();\n\n if (origin instanceof ElementRef) {\n return origin.nativeElement.getBoundingClientRect();\n }\n\n // Check for Element so SVG elements are also supported.\n if (origin instanceof Element) {\n return origin.getBoundingClientRect();\n }\n\n const width = origin.width || 0;\n const height = origin.height || 0;\n\n // If the origin is a point, return a dom rect as if it was a 0x0 element at the point.\n return {\n top: origin.y,\n bottom: origin.y + height,\n left: origin.x,\n right: origin.x + width,\n height,\n width,\n };\n }\n}\n","import { NgModule } from '@angular/core';\n\nimport { WrConnectedOverlayDirective } from './connected-overlay-directive';\n\n@NgModule({\n declarations: [WrConnectedOverlayDirective],\n exports: [WrConnectedOverlayDirective],\n})\nexport class WrOverlayModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
package/fesm2015/ngwr-dialog.mjs
CHANGED
|
@@ -5,7 +5,7 @@ import * as i0 from '@angular/core';
|
|
|
5
5
|
import { EventEmitter, Directive, Component, ViewEncapsulation, ViewChild, HostBinding, HostListener, Optional, Input, InjectionToken, Injector, Injectable, SkipSelf, NgModule } from '@angular/core';
|
|
6
6
|
import { Subject, filter, take, takeUntil } from 'rxjs';
|
|
7
7
|
import * as i2 from '@angular/cdk/overlay';
|
|
8
|
-
import { OverlayConfig, OverlayRef, OverlayModule
|
|
8
|
+
import { OverlayConfig, OverlayRef, OverlayModule } from '@angular/cdk/overlay';
|
|
9
9
|
import { hasModifierKey } from '@angular/cdk/keycodes';
|
|
10
10
|
import { WrAbstractBase } from 'ngwr/core/abstract';
|
|
11
11
|
import { CommonModule } from '@angular/common';
|
|
@@ -114,9 +114,9 @@ class WrDialogBase extends BasePortalOutlet {
|
|
|
114
114
|
this.cdr.markForCheck();
|
|
115
115
|
}
|
|
116
116
|
}
|
|
117
|
-
WrDialogBase.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
118
|
-
WrDialogBase.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "
|
|
119
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
117
|
+
WrDialogBase.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: WrDialogBase, deps: [{ token: i0.ChangeDetectorRef }, { token: WrDialogConfig }, { token: i2.OverlayRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
118
|
+
WrDialogBase.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.4", type: WrDialogBase, usesInheritance: true, ngImport: i0 });
|
|
119
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: WrDialogBase, decorators: [{
|
|
120
120
|
type: Directive
|
|
121
121
|
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: WrDialogConfig }, { type: i2.OverlayRef }]; } });
|
|
122
122
|
|
|
@@ -142,9 +142,9 @@ class WrDialogContainer extends WrDialogBase {
|
|
|
142
142
|
};
|
|
143
143
|
}
|
|
144
144
|
}
|
|
145
|
-
WrDialogContainer.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
146
|
-
WrDialogContainer.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
147
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
145
|
+
WrDialogContainer.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: WrDialogContainer, deps: [{ token: i0.ChangeDetectorRef }, { token: WrDialogConfig }, { token: i2.OverlayRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
146
|
+
WrDialogContainer.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.4", type: WrDialogContainer, selector: "wr-dialog-container", host: { listeners: { "@dialogContainer.start": "onAnimationStart($event)", "@dialogContainer.done": "onAnimationDone($event)", "click": "onContainerClick($event)" }, properties: { "@dialogContainer": "this.state", "class": "this.elClasses" } }, viewQueries: [{ propertyName: "portalOutlet", first: true, predicate: CdkPortalOutlet, descendants: true, static: true }, { propertyName: "dialogElementRef", first: true, predicate: ["dialogElement"], descendants: true, static: true }], exportAs: ["wrDialogContainer"], usesInheritance: true, ngImport: i0, template: "<div class=\"wr-dialog__wrapper\" #dialogElement>\n <ng-template cdkPortalOutlet></ng-template>\n</div>\n", dependencies: [{ kind: "directive", type: i3.CdkPortalOutlet, selector: "[cdkPortalOutlet]", inputs: ["cdkPortalOutlet"], outputs: ["attached"], exportAs: ["cdkPortalOutlet"] }], animations: [wrDialogAnimations.dialogContainer], encapsulation: i0.ViewEncapsulation.None });
|
|
147
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: WrDialogContainer, decorators: [{
|
|
148
148
|
type: Component,
|
|
149
149
|
args: [{ selector: 'wr-dialog-container', exportAs: 'wrDialogContainer', animations: [wrDialogAnimations.dialogContainer], encapsulation: ViewEncapsulation.None, template: "<div class=\"wr-dialog__wrapper\" #dialogElement>\n <ng-template cdkPortalOutlet></ng-template>\n</div>\n" }]
|
|
150
150
|
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: WrDialogConfig }, { type: i2.OverlayRef }]; }, propDecorators: { portalOutlet: [{
|
|
@@ -237,9 +237,9 @@ class WrDialogClose {
|
|
|
237
237
|
this.dialogRef.close(undefined);
|
|
238
238
|
}
|
|
239
239
|
}
|
|
240
|
-
WrDialogClose.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
241
|
-
WrDialogClose.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "
|
|
242
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
240
|
+
WrDialogClose.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: WrDialogClose, deps: [{ token: WrDialogRef, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
|
|
241
|
+
WrDialogClose.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.4", type: WrDialogClose, selector: "[wr-dialog-close], [wrDialogClose]", host: { listeners: { "click": "_onButtonClick($event)" } }, exportAs: ["wrDialogClose"], ngImport: i0 });
|
|
242
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: WrDialogClose, decorators: [{
|
|
243
243
|
type: Directive,
|
|
244
244
|
args: [{
|
|
245
245
|
selector: '[wr-dialog-close], [wrDialogClose]',
|
|
@@ -260,9 +260,9 @@ class WrDialogTitle {
|
|
|
260
260
|
};
|
|
261
261
|
}
|
|
262
262
|
}
|
|
263
|
-
WrDialogTitle.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
264
|
-
WrDialogTitle.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "
|
|
265
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
263
|
+
WrDialogTitle.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: WrDialogTitle, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
264
|
+
WrDialogTitle.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.4", type: WrDialogTitle, selector: "[wr-dialog-title], [wrDialogTitle]", host: { properties: { "class": "this.elClasses" } }, exportAs: ["wrtDialogTitle"], ngImport: i0 });
|
|
265
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: WrDialogTitle, decorators: [{
|
|
266
266
|
type: Directive,
|
|
267
267
|
args: [{
|
|
268
268
|
selector: '[wr-dialog-title], [wrDialogTitle]',
|
|
@@ -279,9 +279,9 @@ class WrDialogContent {
|
|
|
279
279
|
};
|
|
280
280
|
}
|
|
281
281
|
}
|
|
282
|
-
WrDialogContent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
283
|
-
WrDialogContent.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "
|
|
284
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
282
|
+
WrDialogContent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: WrDialogContent, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
283
|
+
WrDialogContent.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.4", type: WrDialogContent, selector: "[wr-dialog-content], wr-dialog-content, [wrDialogContent]", host: { properties: { "class": "this.elClasses" } }, ngImport: i0 });
|
|
284
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: WrDialogContent, decorators: [{
|
|
285
285
|
type: Directive,
|
|
286
286
|
args: [{
|
|
287
287
|
selector: `[wr-dialog-content], wr-dialog-content, [wrDialogContent]`,
|
|
@@ -311,9 +311,9 @@ class WrDialogFooter {
|
|
|
311
311
|
};
|
|
312
312
|
}
|
|
313
313
|
}
|
|
314
|
-
WrDialogFooter.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
315
|
-
WrDialogFooter.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "
|
|
316
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
314
|
+
WrDialogFooter.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: WrDialogFooter, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
315
|
+
WrDialogFooter.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.4", type: WrDialogFooter, selector: "[wr-dialog-footer], wr-dialog-footer, [wrDialogFooter]", inputs: { position: "position" }, host: { properties: { "class": "this.elClasses" } }, ngImport: i0 });
|
|
316
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: WrDialogFooter, decorators: [{
|
|
317
317
|
type: Directive,
|
|
318
318
|
args: [{
|
|
319
319
|
selector: `[wr-dialog-footer], wr-dialog-footer, [wrDialogFooter]`,
|
|
@@ -418,9 +418,9 @@ class WrDialogService {
|
|
|
418
418
|
return dialogRef;
|
|
419
419
|
}
|
|
420
420
|
}
|
|
421
|
-
WrDialogService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
422
|
-
WrDialogService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
423
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
421
|
+
WrDialogService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: WrDialogService, deps: [{ token: i2.Overlay }, { token: i0.Injector }, { token: WrDialogService, optional: true, skipSelf: true }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
422
|
+
WrDialogService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: WrDialogService });
|
|
423
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: WrDialogService, decorators: [{
|
|
424
424
|
type: Injectable
|
|
425
425
|
}], ctorParameters: function () {
|
|
426
426
|
return [{ type: i2.Overlay }, { type: i0.Injector }, { type: WrDialogService, decorators: [{
|
|
@@ -432,16 +432,16 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImpo
|
|
|
432
432
|
|
|
433
433
|
class WrDialogModule {
|
|
434
434
|
}
|
|
435
|
-
WrDialogModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
436
|
-
WrDialogModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
|
437
|
-
WrDialogModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
438
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
435
|
+
WrDialogModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: WrDialogModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
436
|
+
WrDialogModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.0.4", ngImport: i0, type: WrDialogModule, declarations: [WrDialogContainer, WrDialogClose, WrDialogTitle, WrDialogContent, WrDialogFooter], imports: [CommonModule, OverlayModule, PortalModule, WrIconModule], exports: [WrDialogContainer, WrDialogClose, WrDialogTitle, WrDialogContent, WrDialogFooter] });
|
|
437
|
+
WrDialogModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: WrDialogModule, providers: [WrDialogService], imports: [CommonModule, OverlayModule, PortalModule, WrIconModule] });
|
|
438
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: WrDialogModule, decorators: [{
|
|
439
439
|
type: NgModule,
|
|
440
440
|
args: [{
|
|
441
441
|
imports: [CommonModule, OverlayModule, PortalModule, WrIconModule],
|
|
442
442
|
exports: [WrDialogContainer, WrDialogClose, WrDialogTitle, WrDialogContent, WrDialogFooter],
|
|
443
443
|
declarations: [WrDialogContainer, WrDialogClose, WrDialogTitle, WrDialogContent, WrDialogFooter],
|
|
444
|
-
providers: [WrDialogService
|
|
444
|
+
providers: [WrDialogService],
|
|
445
445
|
}]
|
|
446
446
|
}] });
|
|
447
447
|
|
|
@@ -451,3 +451,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImpo
|
|
|
451
451
|
|
|
452
452
|
export { WR_ANIMATION_FADE_CLASS_NAME_MAP, WR_ANIMATION_ZOOM_CLASS_NAME_MAP, WR_DIALOG_DATA, WrDialogBase, WrDialogClose, WrDialogConfig, WrDialogContainer, WrDialogContent, WrDialogFooter, WrDialogModule, WrDialogRef, WrDialogService, WrDialogTitle, wrDialogAnimations };
|
|
453
453
|
//# sourceMappingURL=ngwr-dialog.mjs.map
|
|
454
|
+
//# sourceMappingURL=ngwr-dialog.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ngwr-dialog.mjs","sources":["../../../projects/lib/dialog/dialog-animations.ts","../../../projects/lib/dialog/dialog-config.ts","../../../projects/lib/dialog/dialog-base.ts","../../../projects/lib/dialog/dialog-container.ts","../../../projects/lib/dialog/dialog-container.html","../../../projects/lib/dialog/dialog-ref.ts","../../../projects/lib/dialog/dialog-content-directives.ts","../../../projects/lib/dialog/dialog-tokens.ts","../../../projects/lib/dialog/dialog-service.ts","../../../projects/lib/dialog/dialog-module.ts","../../../projects/lib/dialog/ngwr-dialog.ts"],"sourcesContent":["import { animate, AnimationTriggerMetadata, state, style, transition, trigger } from '@angular/animations';\n\nexport const WR_ANIMATION_ZOOM_CLASS_NAME_MAP = {\n enter: 'wr-animation-zoom-enter',\n enterActive: 'wr-animation-zoom-enter--active',\n leave: 'wr-animation-zoom-leave',\n leaveActive: 'wr-animation-zoom-leave--active',\n};\n\nexport const WR_ANIMATION_FADE_CLASS_NAME_MAP = {\n enter: 'wr-animation-fade-enter',\n enterActive: 'wr-animation-fade-enter--active',\n leave: 'wr-animation-fade-leave',\n leaveActive: 'wr-animation-fade-leave--active',\n};\n\nexport const wrDialogAnimations: {\n readonly dialogContainer: AnimationTriggerMetadata;\n} = {\n dialogContainer: trigger('dialogContainer', [\n state('void, exit', style({})),\n state('enter', style({})),\n transition('* => enter', animate('.24s', style({}))),\n transition('* => void, * => exit', animate('.2s', style({}))),\n ]),\n};\n","import { ComponentType, PositionStrategy } from '@angular/cdk/overlay';\nimport { ViewContainerRef } from '@angular/core';\n\nimport { SafeAny } from 'ngwr/core/types';\n\nexport class WrDialogConfig<T = SafeAny> {\n id?: string;\n component?: ComponentType<T>;\n title?: string;\n data?: SafeAny;\n viewContainerRef?: ViewContainerRef;\n positionStrategy?: PositionStrategy;\n}\n","import { AnimationEvent } from '@angular/animations';\nimport { OverlayRef } from '@angular/cdk/overlay';\nimport { BasePortalOutlet, CdkPortalOutlet, ComponentPortal, TemplatePortal } from '@angular/cdk/portal';\nimport {\n ChangeDetectorRef,\n ComponentRef,\n Directive,\n ElementRef,\n EmbeddedViewRef,\n EventEmitter,\n OnDestroy,\n} from '@angular/core';\nimport { Subject } from 'rxjs';\n\nimport { WR_ANIMATION_FADE_CLASS_NAME_MAP, WR_ANIMATION_ZOOM_CLASS_NAME_MAP } from './dialog-animations';\nimport { WrDialogConfig } from './dialog-config';\nimport { WrDialogRef } from './dialog-ref';\n\n@Directive()\nexport class WrDialogBase extends BasePortalOutlet implements OnDestroy {\n portalOutlet!: CdkPortalOutlet;\n dialogElementRef!: ElementRef<HTMLDivElement>;\n dialogRef!: WrDialogRef;\n\n containerClick = new EventEmitter<void>();\n animationStateChanged = new EventEmitter<AnimationEvent>();\n\n state: 'void' | 'enter' | 'exit' = 'enter';\n\n protected readonly destroyed$: Subject<void> = new Subject<void>();\n\n constructor(public cdr: ChangeDetectorRef, public config: WrDialogConfig, protected overlayRef: OverlayRef) {\n super();\n }\n\n ngOnDestroy(): void {\n this.destroyed$.next();\n this.destroyed$.complete();\n }\n\n onContainerClick(e: MouseEvent): void {\n if (e.target === e.currentTarget || e.target === this.dialogElementRef.nativeElement) {\n this.containerClick.emit();\n }\n }\n\n attachComponentPortal<T>(portal: ComponentPortal<T>): ComponentRef<T> {\n return this.portalOutlet.attachComponentPortal(portal);\n }\n\n attachTemplatePortal<C>(portal: TemplatePortal<C>): EmbeddedViewRef<C> {\n return this.portalOutlet.attachTemplatePortal(portal);\n }\n\n private setEnterAnimationClass(): void {\n const dialogElement = this.dialogElementRef.nativeElement;\n const backdropElement = this.overlayRef.backdropElement;\n dialogElement.classList.add(WR_ANIMATION_ZOOM_CLASS_NAME_MAP.enter);\n dialogElement.classList.add(WR_ANIMATION_ZOOM_CLASS_NAME_MAP.enterActive);\n if (backdropElement) {\n backdropElement.classList.add(WR_ANIMATION_FADE_CLASS_NAME_MAP.enter);\n backdropElement.classList.add(WR_ANIMATION_FADE_CLASS_NAME_MAP.enterActive);\n }\n }\n\n private setExitAnimationClass(): void {\n const dialogElement = this.dialogElementRef.nativeElement;\n dialogElement.classList.add(WR_ANIMATION_ZOOM_CLASS_NAME_MAP.leave);\n dialogElement.classList.add(WR_ANIMATION_ZOOM_CLASS_NAME_MAP.leaveActive);\n this.setMaskExitAnimationClass();\n }\n\n private setMaskExitAnimationClass(): void {\n const backdropElement = this.overlayRef.backdropElement;\n if (backdropElement) {\n backdropElement.classList.add(WR_ANIMATION_FADE_CLASS_NAME_MAP.leave);\n backdropElement.classList.add(WR_ANIMATION_FADE_CLASS_NAME_MAP.leaveActive);\n }\n }\n\n private cleanAnimationClass(): void {\n const backdropElement = this.overlayRef.backdropElement;\n const dialogElement = this.dialogElementRef.nativeElement;\n if (backdropElement) {\n backdropElement.classList.remove(WR_ANIMATION_FADE_CLASS_NAME_MAP.enter);\n backdropElement.classList.remove(WR_ANIMATION_FADE_CLASS_NAME_MAP.enterActive);\n }\n dialogElement.classList.remove(WR_ANIMATION_ZOOM_CLASS_NAME_MAP.enter);\n dialogElement.classList.remove(WR_ANIMATION_ZOOM_CLASS_NAME_MAP.enterActive);\n dialogElement.classList.remove(WR_ANIMATION_ZOOM_CLASS_NAME_MAP.leave);\n dialogElement.classList.remove(WR_ANIMATION_ZOOM_CLASS_NAME_MAP.leaveActive);\n }\n\n onAnimationDone(event: AnimationEvent): void {\n this.cleanAnimationClass();\n this.animationStateChanged.emit(event);\n }\n\n onAnimationStart(event: AnimationEvent): void {\n if (event.toState === 'enter') {\n this.setEnterAnimationClass();\n } else if (event.toState === 'exit') {\n this.setExitAnimationClass();\n }\n this.animationStateChanged.emit(event);\n }\n\n startExitAnimation(): void {\n this.state = 'exit';\n this.cdr.markForCheck();\n }\n}\n","import { AnimationEvent } from '@angular/animations';\nimport { OverlayRef } from '@angular/cdk/overlay';\nimport { CdkPortalOutlet } from '@angular/cdk/portal';\nimport {\n ChangeDetectorRef,\n Component,\n ElementRef,\n HostBinding,\n HostListener,\n ViewChild,\n ViewEncapsulation,\n} from '@angular/core';\n\nimport { SafeAny } from 'ngwr/core/types';\n\nimport { wrDialogAnimations } from './dialog-animations';\nimport { WrDialogBase } from './dialog-base';\nimport { WrDialogConfig } from './dialog-config';\n\n@Component({\n selector: 'wr-dialog-container',\n exportAs: 'wrDialogContainer',\n templateUrl: './dialog-container.html',\n animations: [wrDialogAnimations.dialogContainer],\n encapsulation: ViewEncapsulation.None,\n})\nexport class WrDialogContainer extends WrDialogBase {\n @ViewChild(CdkPortalOutlet, { static: true }) override portalOutlet!: CdkPortalOutlet;\n @ViewChild('dialogElement', { static: true }) override dialogElementRef!: ElementRef<HTMLDivElement>;\n\n @HostBinding('@dialogContainer') override state: 'void' | 'enter' | 'exit' = 'enter';\n @HostListener('@dialogContainer.start', ['$event'])\n override onAnimationStart(event: AnimationEvent): void {\n super.onAnimationStart(event);\n }\n @HostListener('@dialogContainer.done', ['$event'])\n override onAnimationDone(event: AnimationEvent): void {\n super.onAnimationDone(event);\n }\n\n @HostListener('click', ['$event'])\n override onContainerClick(e: MouseEvent): void {\n super.onContainerClick(e);\n }\n\n /** Set element classes */\n @HostBinding('class')\n get elClasses(): SafeAny {\n return {\n 'wr-dialog': true,\n };\n }\n\n constructor(cdr: ChangeDetectorRef, public override config: WrDialogConfig, overlayRef: OverlayRef) {\n super(cdr, config, overlayRef);\n }\n}\n","<div class=\"wr-dialog__wrapper\" #dialogElement>\n <ng-template cdkPortalOutlet></ng-template>\n</div>\n","import { hasModifierKey } from '@angular/cdk/keycodes';\nimport { OverlayRef } from '@angular/cdk/overlay';\nimport { filter, Subject, take, takeUntil } from 'rxjs';\n\nimport { WrAbstractBase } from 'ngwr/core/abstract';\nimport { SafeAny } from 'ngwr/core/types';\n\nimport { WrDialogBase } from './dialog-base';\nimport { WrDialogConfig } from './dialog-config';\n\nexport class WrDialogRef<T = SafeAny, R = SafeAny> extends WrAbstractBase {\n readonly id?: string;\n result?: R;\n componentInstance: T | null = null;\n private closeTimeout?: number;\n readonly afterClosed: Subject<R | undefined> = new Subject<R | undefined>();\n readonly afterOpened: Subject<void> = new Subject();\n\n constructor(\n private readonly config: WrDialogConfig<T>,\n private readonly overlayRef: OverlayRef,\n public containerInstance: WrDialogBase\n ) {\n super();\n this.id = config.id || `wr__modal__${Date.now()}`;\n\n containerInstance.animationStateChanged\n .pipe(\n filter(event => event.phaseName === 'done' && event.toState === 'enter'),\n take(1)\n )\n .subscribe(() => {\n this.afterOpened.next();\n this.afterOpened.complete();\n });\n\n containerInstance.animationStateChanged\n .pipe(\n filter(event => event.phaseName === 'done' && event.toState === 'exit'),\n take(1)\n )\n .subscribe(() => {\n clearTimeout(this.closeTimeout);\n this._finishDialogClose();\n });\n\n containerInstance.containerClick.pipe(take(1), takeUntil(this.destroyed$)).subscribe(() => {\n this.close(undefined);\n });\n\n overlayRef.backdropClick().subscribe(() => this.close(undefined));\n\n overlayRef.keydownEvents().subscribe(event => {\n if (event.code === 'Escape' && !hasModifierKey(event)) {\n event.preventDefault();\n this.close(undefined);\n }\n });\n\n overlayRef.detachments().subscribe(() => {\n this.afterClosed.next(this.result);\n this.afterClosed.complete();\n this.componentInstance = null;\n this.overlayRef.dispose();\n });\n }\n\n close(result?: R): void {\n this.result = result;\n this.containerInstance.animationStateChanged\n .pipe(\n filter(event => event.phaseName === 'start'),\n take(1)\n )\n .subscribe(event => {\n this.overlayRef.detachBackdrop();\n // @ts-ignore\n this.closeTimeout = setTimeout(() => {\n this._finishDialogClose();\n }, event.totalTime + 100);\n });\n\n this.containerInstance.startExitAnimation();\n }\n\n _finishDialogClose(): void {\n this.overlayRef.dispose();\n this.destroyed$.next();\n }\n}\n","import { ChangeDetectorRef, Directive, HostBinding, HostListener, Input, Optional } from '@angular/core';\n\nimport { SafeAny } from 'ngwr/core/types';\nimport { WrDialogRef } from './dialog-ref';\n\n@Directive({\n selector: '[wr-dialog-close], [wrDialogClose]',\n exportAs: 'wrDialogClose',\n})\nexport class WrDialogClose {\n @HostListener('click', ['$event'])\n _onButtonClick(event: MouseEvent): void {\n event.preventDefault();\n this.dialogRef.close(undefined);\n }\n\n constructor(@Optional() public dialogRef: WrDialogRef) {}\n}\n\n@Directive({\n selector: '[wr-dialog-title], [wrDialogTitle]',\n exportAs: 'wrtDialogTitle',\n})\nexport class WrDialogTitle {\n @HostBinding('class')\n get elClasses(): SafeAny {\n return {\n 'wr-dialog__title': true,\n };\n }\n}\n\n@Directive({\n selector: `[wr-dialog-content], wr-dialog-content, [wrDialogContent]`,\n})\nexport class WrDialogContent {\n @HostBinding('class')\n get elClasses(): SafeAny {\n return {\n 'wr-dialog__content': true,\n };\n }\n}\n\n@Directive({\n selector: `[wr-dialog-footer], wr-dialog-footer, [wrDialogFooter]`,\n})\nexport class WrDialogFooter {\n @Input()\n get position(): 'start' | 'center' | 'end' {\n return this._position;\n }\n set position(value: 'start' | 'center' | 'end') {\n this._position = value;\n this.cdr.markForCheck();\n }\n private _position: 'start' | 'center' | 'end' = 'end';\n\n @HostBinding('class')\n get elClasses(): SafeAny {\n return {\n 'wr-dialog__footer': true,\n 'wr-dialog__footer--start': this.position === 'start',\n 'wr-dialog__footer--center': this.position === 'center',\n 'wr-dialog__footer--end': this.position === 'end',\n };\n }\n\n constructor(private readonly cdr: ChangeDetectorRef) {}\n}\n","import { InjectionToken } from '@angular/core';\n\nimport { SafeAny } from 'ngwr/core/types';\n\nexport const WR_DIALOG_DATA = new InjectionToken<SafeAny>('WR_DIALOG_DATA');\n","import {\n ComponentType,\n GlobalPositionStrategy,\n Overlay,\n OverlayConfig,\n OverlayRef,\n PositionStrategy,\n} from '@angular/cdk/overlay';\nimport { ComponentPortal } from '@angular/cdk/portal';\nimport { Injectable, Injector, OnDestroy, Optional, SkipSelf } from '@angular/core';\nimport { Subject } from 'rxjs';\n\nimport { SafeAny } from 'ngwr/core/types';\n\nimport { WrDialogBase } from './dialog-base';\nimport { WrDialogConfig } from './dialog-config';\nimport { WrDialogContainer } from './dialog-container';\nimport { WrDialogRef } from './dialog-ref';\nimport { WR_DIALOG_DATA } from './dialog-tokens';\n\n@Injectable()\nexport class WrDialogService implements OnDestroy {\n private openedDialogsAtThisLevel: WrDialogRef[] = [];\n private readonly afterAllClosedAtThisLevel = new Subject<void>();\n\n get openedDialogs(): WrDialogRef[] {\n return this.parentModal ? this.parentModal.openedDialogs : this.openedDialogsAtThisLevel;\n }\n\n get _afterAllClosed(): Subject<void> {\n const parent = this.parentModal;\n return parent ? parent._afterAllClosed : this.afterAllClosedAtThisLevel;\n }\n\n constructor(\n private readonly overlay: Overlay,\n private readonly injector: Injector,\n @Optional() @SkipSelf() private parentModal: WrDialogService\n ) {}\n\n ngOnDestroy(): void {\n this.closeModals(this.openedDialogsAtThisLevel);\n this.afterAllClosedAtThisLevel.complete();\n }\n\n open<T = SafeAny, R = SafeAny>(config: WrDialogConfig<T>): WrDialogRef<T, R> {\n const _config = config || new WrDialogConfig<SafeAny>();\n const positionStrategy = _config?.positionStrategy || this._defaultPositionStrategy();\n const overlayRef = this._createOverlay(positionStrategy);\n const dialogContainer = this._attachDialogContainer(overlayRef, _config);\n const dialogRef = this._attachDialogContent<T, R>(dialogContainer, overlayRef, _config);\n dialogContainer.dialogRef = dialogRef;\n this.openedDialogs.push(dialogRef);\n dialogRef.afterClosed.subscribe(() => this.removeOpenModal(dialogRef));\n return dialogRef;\n }\n\n private removeOpenModal(dialogRef: WrDialogRef): void {\n const index = this.openedDialogs.indexOf(dialogRef);\n if (index > -1) {\n this.openedDialogs.splice(index, 1);\n\n if (!this.openedDialogs.length) {\n this._afterAllClosed.next();\n }\n }\n }\n\n private closeModals(dialogs: WrDialogRef[]): void {\n let i = dialogs.length;\n while (i--) {\n dialogs[i].close();\n if (!this.openedDialogs.length) {\n this._afterAllClosed.next();\n }\n }\n }\n\n private _defaultPositionStrategy(): GlobalPositionStrategy {\n return this.overlay.position().global().centerHorizontally().centerVertically();\n }\n\n private _createOverlay(positionStrategy: PositionStrategy): OverlayRef {\n const overlayConfig = new OverlayConfig({\n positionStrategy,\n hasBackdrop: true,\n backdropClass: 'wr-backdrop',\n scrollStrategy: this.overlay.scrollStrategies.block(),\n disposeOnNavigation: true,\n });\n return this.overlay.create(overlayConfig);\n }\n\n private _attachDialogContainer(overlayRef: OverlayRef, config: WrDialogConfig): WrDialogBase {\n const userInjector = config && config.viewContainerRef && config.viewContainerRef?.injector;\n const injector = Injector.create({\n parent: userInjector || this.injector,\n providers: [\n { provide: OverlayRef, useValue: overlayRef },\n { provide: WrDialogConfig, useValue: config },\n ],\n });\n\n const containerPortal = new ComponentPortal<WrDialogBase>(WrDialogContainer, config.viewContainerRef, injector);\n const containerRef = overlayRef.attach<WrDialogBase>(containerPortal);\n return containerRef.instance;\n }\n\n private _attachDialogContent<T, R>(\n dialogContainer: WrDialogBase,\n overlayRef: OverlayRef,\n config: WrDialogConfig<T>\n ): WrDialogRef<T, R> {\n const dialogRef = new WrDialogRef<T, R>(config, overlayRef, dialogContainer);\n\n const userInjector = config && config.viewContainerRef && config.viewContainerRef?.injector;\n const injector = Injector.create({\n parent: userInjector || this.injector,\n providers: [\n { provide: WrDialogRef, useValue: dialogRef },\n { provide: WR_DIALOG_DATA, useValue: config.data },\n ],\n });\n\n const contentRef = dialogContainer.attachComponentPortal<T>(\n new ComponentPortal(config.component as ComponentType<T>, config.viewContainerRef, injector)\n );\n dialogRef.componentInstance = contentRef.instance;\n return dialogRef;\n }\n}\n","import { FullscreenOverlayContainer, OverlayContainer, OverlayModule } from '@angular/cdk/overlay';\nimport { PortalModule } from '@angular/cdk/portal';\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { WrIconModule } from 'ngwr/icon';\n\nimport { WrDialogContainer } from './dialog-container';\nimport { WrDialogClose, WrDialogContent, WrDialogFooter, WrDialogTitle } from './dialog-content-directives';\nimport { WrDialogService } from './dialog-service';\n\n@NgModule({\n imports: [CommonModule, OverlayModule, PortalModule, WrIconModule],\n exports: [WrDialogContainer, WrDialogClose, WrDialogTitle, WrDialogContent, WrDialogFooter],\n declarations: [WrDialogContainer, WrDialogClose, WrDialogTitle, WrDialogContent, WrDialogFooter],\n providers: [WrDialogService, { provide: OverlayContainer, useClass: FullscreenOverlayContainer }],\n})\nexport class WrDialogModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.WrDialogConfig","i1.WrDialogRef","i1"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ngwr-dialog.mjs","sources":["../../../projects/lib/dialog/dialog-animations.ts","../../../projects/lib/dialog/dialog-config.ts","../../../projects/lib/dialog/dialog-base.ts","../../../projects/lib/dialog/dialog-container.ts","../../../projects/lib/dialog/dialog-container.html","../../../projects/lib/dialog/dialog-ref.ts","../../../projects/lib/dialog/dialog-content-directives.ts","../../../projects/lib/dialog/dialog-tokens.ts","../../../projects/lib/dialog/dialog-service.ts","../../../projects/lib/dialog/dialog-module.ts","../../../projects/lib/dialog/ngwr-dialog.ts"],"sourcesContent":["import { animate, AnimationTriggerMetadata, state, style, transition, trigger } from '@angular/animations';\n\nexport const WR_ANIMATION_ZOOM_CLASS_NAME_MAP = {\n enter: 'wr-animation-zoom-enter',\n enterActive: 'wr-animation-zoom-enter--active',\n leave: 'wr-animation-zoom-leave',\n leaveActive: 'wr-animation-zoom-leave--active',\n};\n\nexport const WR_ANIMATION_FADE_CLASS_NAME_MAP = {\n enter: 'wr-animation-fade-enter',\n enterActive: 'wr-animation-fade-enter--active',\n leave: 'wr-animation-fade-leave',\n leaveActive: 'wr-animation-fade-leave--active',\n};\n\nexport const wrDialogAnimations: {\n readonly dialogContainer: AnimationTriggerMetadata;\n} = {\n dialogContainer: trigger('dialogContainer', [\n state('void, exit', style({})),\n state('enter', style({})),\n transition('* => enter', animate('.24s', style({}))),\n transition('* => void, * => exit', animate('.2s', style({}))),\n ]),\n};\n","import { ComponentType, PositionStrategy } from '@angular/cdk/overlay';\nimport { ViewContainerRef } from '@angular/core';\n\nimport { SafeAny } from 'ngwr/core/types';\n\nexport class WrDialogConfig<T = SafeAny> {\n id?: string;\n component?: ComponentType<T>;\n title?: string;\n data?: SafeAny;\n viewContainerRef?: ViewContainerRef;\n positionStrategy?: PositionStrategy;\n}\n","import { AnimationEvent } from '@angular/animations';\nimport { OverlayRef } from '@angular/cdk/overlay';\nimport { BasePortalOutlet, CdkPortalOutlet, ComponentPortal, TemplatePortal } from '@angular/cdk/portal';\nimport {\n ChangeDetectorRef,\n ComponentRef,\n Directive,\n ElementRef,\n EmbeddedViewRef,\n EventEmitter,\n OnDestroy,\n} from '@angular/core';\nimport { Subject } from 'rxjs';\n\nimport { WR_ANIMATION_FADE_CLASS_NAME_MAP, WR_ANIMATION_ZOOM_CLASS_NAME_MAP } from './dialog-animations';\nimport { WrDialogConfig } from './dialog-config';\nimport { WrDialogRef } from './dialog-ref';\n\n@Directive()\nexport class WrDialogBase extends BasePortalOutlet implements OnDestroy {\n portalOutlet!: CdkPortalOutlet;\n dialogElementRef!: ElementRef<HTMLDivElement>;\n dialogRef!: WrDialogRef;\n\n containerClick = new EventEmitter<void>();\n animationStateChanged = new EventEmitter<AnimationEvent>();\n\n state: 'void' | 'enter' | 'exit' = 'enter';\n\n protected readonly destroyed$: Subject<void> = new Subject<void>();\n\n constructor(public cdr: ChangeDetectorRef, public config: WrDialogConfig, protected overlayRef: OverlayRef) {\n super();\n }\n\n ngOnDestroy(): void {\n this.destroyed$.next();\n this.destroyed$.complete();\n }\n\n onContainerClick(e: MouseEvent): void {\n if (e.target === e.currentTarget || e.target === this.dialogElementRef.nativeElement) {\n this.containerClick.emit();\n }\n }\n\n attachComponentPortal<T>(portal: ComponentPortal<T>): ComponentRef<T> {\n return this.portalOutlet.attachComponentPortal(portal);\n }\n\n attachTemplatePortal<C>(portal: TemplatePortal<C>): EmbeddedViewRef<C> {\n return this.portalOutlet.attachTemplatePortal(portal);\n }\n\n private setEnterAnimationClass(): void {\n const dialogElement = this.dialogElementRef.nativeElement;\n const backdropElement = this.overlayRef.backdropElement;\n dialogElement.classList.add(WR_ANIMATION_ZOOM_CLASS_NAME_MAP.enter);\n dialogElement.classList.add(WR_ANIMATION_ZOOM_CLASS_NAME_MAP.enterActive);\n if (backdropElement) {\n backdropElement.classList.add(WR_ANIMATION_FADE_CLASS_NAME_MAP.enter);\n backdropElement.classList.add(WR_ANIMATION_FADE_CLASS_NAME_MAP.enterActive);\n }\n }\n\n private setExitAnimationClass(): void {\n const dialogElement = this.dialogElementRef.nativeElement;\n dialogElement.classList.add(WR_ANIMATION_ZOOM_CLASS_NAME_MAP.leave);\n dialogElement.classList.add(WR_ANIMATION_ZOOM_CLASS_NAME_MAP.leaveActive);\n this.setMaskExitAnimationClass();\n }\n\n private setMaskExitAnimationClass(): void {\n const backdropElement = this.overlayRef.backdropElement;\n if (backdropElement) {\n backdropElement.classList.add(WR_ANIMATION_FADE_CLASS_NAME_MAP.leave);\n backdropElement.classList.add(WR_ANIMATION_FADE_CLASS_NAME_MAP.leaveActive);\n }\n }\n\n private cleanAnimationClass(): void {\n const backdropElement = this.overlayRef.backdropElement;\n const dialogElement = this.dialogElementRef.nativeElement;\n if (backdropElement) {\n backdropElement.classList.remove(WR_ANIMATION_FADE_CLASS_NAME_MAP.enter);\n backdropElement.classList.remove(WR_ANIMATION_FADE_CLASS_NAME_MAP.enterActive);\n }\n dialogElement.classList.remove(WR_ANIMATION_ZOOM_CLASS_NAME_MAP.enter);\n dialogElement.classList.remove(WR_ANIMATION_ZOOM_CLASS_NAME_MAP.enterActive);\n dialogElement.classList.remove(WR_ANIMATION_ZOOM_CLASS_NAME_MAP.leave);\n dialogElement.classList.remove(WR_ANIMATION_ZOOM_CLASS_NAME_MAP.leaveActive);\n }\n\n onAnimationDone(event: AnimationEvent): void {\n this.cleanAnimationClass();\n this.animationStateChanged.emit(event);\n }\n\n onAnimationStart(event: AnimationEvent): void {\n if (event.toState === 'enter') {\n this.setEnterAnimationClass();\n } else if (event.toState === 'exit') {\n this.setExitAnimationClass();\n }\n this.animationStateChanged.emit(event);\n }\n\n startExitAnimation(): void {\n this.state = 'exit';\n this.cdr.markForCheck();\n }\n}\n","import { AnimationEvent } from '@angular/animations';\nimport { OverlayRef } from '@angular/cdk/overlay';\nimport { CdkPortalOutlet } from '@angular/cdk/portal';\nimport {\n ChangeDetectorRef,\n Component,\n ElementRef,\n HostBinding,\n HostListener,\n ViewChild,\n ViewEncapsulation,\n} from '@angular/core';\n\nimport { SafeAny } from 'ngwr/core/types';\n\nimport { wrDialogAnimations } from './dialog-animations';\nimport { WrDialogBase } from './dialog-base';\nimport { WrDialogConfig } from './dialog-config';\n\n@Component({\n selector: 'wr-dialog-container',\n exportAs: 'wrDialogContainer',\n templateUrl: './dialog-container.html',\n animations: [wrDialogAnimations.dialogContainer],\n encapsulation: ViewEncapsulation.None,\n})\nexport class WrDialogContainer extends WrDialogBase {\n @ViewChild(CdkPortalOutlet, { static: true }) override portalOutlet!: CdkPortalOutlet;\n @ViewChild('dialogElement', { static: true }) override dialogElementRef!: ElementRef<HTMLDivElement>;\n\n @HostBinding('@dialogContainer') override state: 'void' | 'enter' | 'exit' = 'enter';\n @HostListener('@dialogContainer.start', ['$event'])\n override onAnimationStart(event: AnimationEvent): void {\n super.onAnimationStart(event);\n }\n @HostListener('@dialogContainer.done', ['$event'])\n override onAnimationDone(event: AnimationEvent): void {\n super.onAnimationDone(event);\n }\n\n @HostListener('click', ['$event'])\n override onContainerClick(e: MouseEvent): void {\n super.onContainerClick(e);\n }\n\n /** Set element classes */\n @HostBinding('class')\n get elClasses(): SafeAny {\n return {\n 'wr-dialog': true,\n };\n }\n\n constructor(cdr: ChangeDetectorRef, public override config: WrDialogConfig, overlayRef: OverlayRef) {\n super(cdr, config, overlayRef);\n }\n}\n","<div class=\"wr-dialog__wrapper\" #dialogElement>\n <ng-template cdkPortalOutlet></ng-template>\n</div>\n","import { hasModifierKey } from '@angular/cdk/keycodes';\nimport { OverlayRef } from '@angular/cdk/overlay';\nimport { filter, Subject, take, takeUntil } from 'rxjs';\n\nimport { WrAbstractBase } from 'ngwr/core/abstract';\nimport { SafeAny } from 'ngwr/core/types';\n\nimport { WrDialogBase } from './dialog-base';\nimport { WrDialogConfig } from './dialog-config';\n\nexport class WrDialogRef<T = SafeAny, R = SafeAny> extends WrAbstractBase {\n readonly id?: string;\n result?: R;\n componentInstance: T | null = null;\n private closeTimeout?: number;\n readonly afterClosed: Subject<R | undefined> = new Subject<R | undefined>();\n readonly afterOpened: Subject<void> = new Subject();\n\n constructor(\n private readonly config: WrDialogConfig<T>,\n private readonly overlayRef: OverlayRef,\n public containerInstance: WrDialogBase\n ) {\n super();\n this.id = config.id || `wr__modal__${Date.now()}`;\n\n containerInstance.animationStateChanged\n .pipe(\n filter(event => event.phaseName === 'done' && event.toState === 'enter'),\n take(1)\n )\n .subscribe(() => {\n this.afterOpened.next();\n this.afterOpened.complete();\n });\n\n containerInstance.animationStateChanged\n .pipe(\n filter(event => event.phaseName === 'done' && event.toState === 'exit'),\n take(1)\n )\n .subscribe(() => {\n clearTimeout(this.closeTimeout);\n this._finishDialogClose();\n });\n\n containerInstance.containerClick.pipe(take(1), takeUntil(this.destroyed$)).subscribe(() => {\n this.close(undefined);\n });\n\n overlayRef.backdropClick().subscribe(() => this.close(undefined));\n\n overlayRef.keydownEvents().subscribe(event => {\n if (event.code === 'Escape' && !hasModifierKey(event)) {\n event.preventDefault();\n this.close(undefined);\n }\n });\n\n overlayRef.detachments().subscribe(() => {\n this.afterClosed.next(this.result);\n this.afterClosed.complete();\n this.componentInstance = null;\n this.overlayRef.dispose();\n });\n }\n\n close(result?: R): void {\n this.result = result;\n this.containerInstance.animationStateChanged\n .pipe(\n filter(event => event.phaseName === 'start'),\n take(1)\n )\n .subscribe(event => {\n this.overlayRef.detachBackdrop();\n // @ts-ignore\n this.closeTimeout = setTimeout(() => {\n this._finishDialogClose();\n }, event.totalTime + 100);\n });\n\n this.containerInstance.startExitAnimation();\n }\n\n _finishDialogClose(): void {\n this.overlayRef.dispose();\n this.destroyed$.next();\n }\n}\n","import { ChangeDetectorRef, Directive, HostBinding, HostListener, Input, Optional } from '@angular/core';\n\nimport { SafeAny } from 'ngwr/core/types';\nimport { WrDialogRef } from './dialog-ref';\n\n@Directive({\n selector: '[wr-dialog-close], [wrDialogClose]',\n exportAs: 'wrDialogClose',\n})\nexport class WrDialogClose {\n @HostListener('click', ['$event'])\n _onButtonClick(event: MouseEvent): void {\n event.preventDefault();\n this.dialogRef.close(undefined);\n }\n\n constructor(@Optional() public dialogRef: WrDialogRef) {}\n}\n\n@Directive({\n selector: '[wr-dialog-title], [wrDialogTitle]',\n exportAs: 'wrtDialogTitle',\n})\nexport class WrDialogTitle {\n @HostBinding('class')\n get elClasses(): SafeAny {\n return {\n 'wr-dialog__title': true,\n };\n }\n}\n\n@Directive({\n selector: `[wr-dialog-content], wr-dialog-content, [wrDialogContent]`,\n})\nexport class WrDialogContent {\n @HostBinding('class')\n get elClasses(): SafeAny {\n return {\n 'wr-dialog__content': true,\n };\n }\n}\n\n@Directive({\n selector: `[wr-dialog-footer], wr-dialog-footer, [wrDialogFooter]`,\n})\nexport class WrDialogFooter {\n @Input()\n get position(): 'start' | 'center' | 'end' {\n return this._position;\n }\n set position(value: 'start' | 'center' | 'end') {\n this._position = value;\n this.cdr.markForCheck();\n }\n private _position: 'start' | 'center' | 'end' = 'end';\n\n @HostBinding('class')\n get elClasses(): SafeAny {\n return {\n 'wr-dialog__footer': true,\n 'wr-dialog__footer--start': this.position === 'start',\n 'wr-dialog__footer--center': this.position === 'center',\n 'wr-dialog__footer--end': this.position === 'end',\n };\n }\n\n constructor(private readonly cdr: ChangeDetectorRef) {}\n}\n","import { InjectionToken } from '@angular/core';\n\nimport { SafeAny } from 'ngwr/core/types';\n\nexport const WR_DIALOG_DATA = new InjectionToken<SafeAny>('WR_DIALOG_DATA');\n","import {\n ComponentType,\n GlobalPositionStrategy,\n Overlay,\n OverlayConfig,\n OverlayRef,\n PositionStrategy,\n} from '@angular/cdk/overlay';\nimport { ComponentPortal } from '@angular/cdk/portal';\nimport { Injectable, Injector, OnDestroy, Optional, SkipSelf } from '@angular/core';\nimport { Subject } from 'rxjs';\n\nimport { SafeAny } from 'ngwr/core/types';\n\nimport { WrDialogBase } from './dialog-base';\nimport { WrDialogConfig } from './dialog-config';\nimport { WrDialogContainer } from './dialog-container';\nimport { WrDialogRef } from './dialog-ref';\nimport { WR_DIALOG_DATA } from './dialog-tokens';\n\n@Injectable()\nexport class WrDialogService implements OnDestroy {\n private openedDialogsAtThisLevel: WrDialogRef[] = [];\n private readonly afterAllClosedAtThisLevel = new Subject<void>();\n\n get openedDialogs(): WrDialogRef[] {\n return this.parentModal ? this.parentModal.openedDialogs : this.openedDialogsAtThisLevel;\n }\n\n get _afterAllClosed(): Subject<void> {\n const parent = this.parentModal;\n return parent ? parent._afterAllClosed : this.afterAllClosedAtThisLevel;\n }\n\n constructor(\n private readonly overlay: Overlay,\n private readonly injector: Injector,\n @Optional() @SkipSelf() private parentModal: WrDialogService\n ) {}\n\n ngOnDestroy(): void {\n this.closeModals(this.openedDialogsAtThisLevel);\n this.afterAllClosedAtThisLevel.complete();\n }\n\n open<T = SafeAny, R = SafeAny>(config: WrDialogConfig<T>): WrDialogRef<T, R> {\n const _config = config || new WrDialogConfig<SafeAny>();\n const positionStrategy = _config?.positionStrategy || this._defaultPositionStrategy();\n const overlayRef = this._createOverlay(positionStrategy);\n const dialogContainer = this._attachDialogContainer(overlayRef, _config);\n const dialogRef = this._attachDialogContent<T, R>(dialogContainer, overlayRef, _config);\n dialogContainer.dialogRef = dialogRef;\n this.openedDialogs.push(dialogRef);\n dialogRef.afterClosed.subscribe(() => this.removeOpenModal(dialogRef));\n return dialogRef;\n }\n\n private removeOpenModal(dialogRef: WrDialogRef): void {\n const index = this.openedDialogs.indexOf(dialogRef);\n if (index > -1) {\n this.openedDialogs.splice(index, 1);\n\n if (!this.openedDialogs.length) {\n this._afterAllClosed.next();\n }\n }\n }\n\n private closeModals(dialogs: WrDialogRef[]): void {\n let i = dialogs.length;\n while (i--) {\n dialogs[i].close();\n if (!this.openedDialogs.length) {\n this._afterAllClosed.next();\n }\n }\n }\n\n private _defaultPositionStrategy(): GlobalPositionStrategy {\n return this.overlay.position().global().centerHorizontally().centerVertically();\n }\n\n private _createOverlay(positionStrategy: PositionStrategy): OverlayRef {\n const overlayConfig = new OverlayConfig({\n positionStrategy,\n hasBackdrop: true,\n backdropClass: 'wr-backdrop',\n scrollStrategy: this.overlay.scrollStrategies.block(),\n disposeOnNavigation: true,\n });\n return this.overlay.create(overlayConfig);\n }\n\n private _attachDialogContainer(overlayRef: OverlayRef, config: WrDialogConfig): WrDialogBase {\n const userInjector = config && config.viewContainerRef && config.viewContainerRef?.injector;\n const injector = Injector.create({\n parent: userInjector || this.injector,\n providers: [\n { provide: OverlayRef, useValue: overlayRef },\n { provide: WrDialogConfig, useValue: config },\n ],\n });\n\n const containerPortal = new ComponentPortal<WrDialogBase>(WrDialogContainer, config.viewContainerRef, injector);\n const containerRef = overlayRef.attach<WrDialogBase>(containerPortal);\n return containerRef.instance;\n }\n\n private _attachDialogContent<T, R>(\n dialogContainer: WrDialogBase,\n overlayRef: OverlayRef,\n config: WrDialogConfig<T>\n ): WrDialogRef<T, R> {\n const dialogRef = new WrDialogRef<T, R>(config, overlayRef, dialogContainer);\n\n const userInjector = config && config.viewContainerRef && config.viewContainerRef?.injector;\n const injector = Injector.create({\n parent: userInjector || this.injector,\n providers: [\n { provide: WrDialogRef, useValue: dialogRef },\n { provide: WR_DIALOG_DATA, useValue: config.data },\n ],\n });\n\n const contentRef = dialogContainer.attachComponentPortal<T>(\n new ComponentPortal(config.component as ComponentType<T>, config.viewContainerRef, injector)\n );\n dialogRef.componentInstance = contentRef.instance;\n return dialogRef;\n }\n}\n","import { OverlayModule } from '@angular/cdk/overlay';\nimport { PortalModule } from '@angular/cdk/portal';\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { WrIconModule } from 'ngwr/icon';\n\nimport { WrDialogContainer } from './dialog-container';\nimport { WrDialogClose, WrDialogContent, WrDialogFooter, WrDialogTitle } from './dialog-content-directives';\nimport { WrDialogService } from './dialog-service';\n\n@NgModule({\n imports: [CommonModule, OverlayModule, PortalModule, WrIconModule],\n exports: [WrDialogContainer, WrDialogClose, WrDialogTitle, WrDialogContent, WrDialogFooter],\n declarations: [WrDialogContainer, WrDialogClose, WrDialogTitle, WrDialogContent, WrDialogFooter],\n providers: [WrDialogService],\n})\nexport class WrDialogModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.WrDialogConfig","i1.WrDialogRef","i1"],"mappings":"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"}
|
|
@@ -71,9 +71,9 @@ class WrDivider {
|
|
|
71
71
|
};
|
|
72
72
|
}
|
|
73
73
|
}
|
|
74
|
-
WrDivider.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
75
|
-
WrDivider.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
76
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
74
|
+
WrDivider.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: WrDivider, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
75
|
+
WrDivider.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.4", type: WrDivider, selector: "wr-divider", inputs: { color: "color", type: "type", width: "width" }, host: { properties: { "class": "this.elClasses", "style": "this.elStyles", "role": "this.role" } }, exportAs: ["wrDivider"], ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
76
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: WrDivider, decorators: [{
|
|
77
77
|
type: Component,
|
|
78
78
|
args: [{
|
|
79
79
|
selector: 'wr-divider',
|
|
@@ -101,10 +101,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImpo
|
|
|
101
101
|
|
|
102
102
|
class WrDividerModule {
|
|
103
103
|
}
|
|
104
|
-
WrDividerModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
105
|
-
WrDividerModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
|
106
|
-
WrDividerModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
107
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
104
|
+
WrDividerModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: WrDividerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
105
|
+
WrDividerModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.0.4", ngImport: i0, type: WrDividerModule, declarations: [WrDivider], exports: [WrDivider] });
|
|
106
|
+
WrDividerModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: WrDividerModule });
|
|
107
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: WrDividerModule, decorators: [{
|
|
108
108
|
type: NgModule,
|
|
109
109
|
args: [{
|
|
110
110
|
declarations: [WrDivider],
|
|
@@ -118,3 +118,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImpo
|
|
|
118
118
|
|
|
119
119
|
export { WrDivider, WrDividerModule };
|
|
120
120
|
//# sourceMappingURL=ngwr-divider.mjs.map
|
|
121
|
+
//# sourceMappingURL=ngwr-divider.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ngwr-divider.mjs","sources":["../../../projects/lib/divider/divider.ts","../../../projects/lib/divider/divider-module.ts","../../../projects/lib/divider/ngwr-divider.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n HostBinding,\n Input,\n ViewEncapsulation,\n} from '@angular/core';\n\nimport { isThemeColor, WrThemeColor } from 'ngwr/core/color';\nimport { SafeAny } from 'ngwr/core/types';\n\n@Component({\n selector: 'wr-divider',\n exportAs: 'wrDivider',\n template: '',\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class WrDivider {\n /**\n * Set color of `wr-divider`\n *\n * @default 'light';\n */\n @Input()\n get color(): WrThemeColor {\n return this._color;\n }\n set color(value: WrThemeColor) {\n this._color = isThemeColor(value) ? value : 'primary';\n this.cdr.markForCheck();\n }\n private _color: WrThemeColor = 'light';\n /**\n * Set style of `wr-divider`\n *\n * @default `solid`;\n */\n @Input()\n get type(): 'solid' | 'dashed' | 'dotted' {\n return this._type;\n }\n set type(value: 'solid' | 'dashed' | 'dotted') {\n this._type = value;\n this.cdr.markForCheck();\n }\n private _type: 'solid' | 'dashed' | 'dotted' = 'solid';\n /**\n * Set width of `wr-divider`\n *\n * @default 1px;\n */\n @Input()\n get width(): string {\n return this._width;\n }\n set width(value: string) {\n this._width = value;\n this.cdr.markForCheck();\n }\n private _width: string = '1px';\n\n /** Set element classes */\n @HostBinding('class')\n get elClasses(): SafeAny {\n return {\n 'wr-divider': true,\n 'wr-divider--primary': this.color === 'primary',\n 'wr-divider--secondary': this.color === 'secondary',\n 'wr-divider--success': this.color === 'success',\n 'wr-divider--warning': this.color === 'warning',\n 'wr-divider--danger': this.color === 'danger',\n 'wr-divider--light': this.color === 'light',\n 'wr-divider--medium': this.color === 'medium',\n 'wr-divider--dark': this.color === 'dark',\n 'wr-divider--solid': this.type === 'solid',\n 'wr-divider--dashed': this.type === 'dashed',\n 'wr-divider--dotted': this.type === 'dotted',\n };\n }\n\n /** Set element style **/\n @HostBinding('style')\n get elStyles(): SafeAny {\n return {\n '--wr-divider-width': this.width,\n };\n }\n\n /** Set element role **/\n @HostBinding('role') role = 'separator';\n\n constructor(private readonly cdr: ChangeDetectorRef) {}\n}\n","import { NgModule } from '@angular/core';\n\nimport { WrDivider } from './divider';\n\n@NgModule({\n declarations: [WrDivider],\n exports: [WrDivider],\n})\nexport class WrDividerModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;MAmBa,SAAS,CAAA;AA0EpB,IAAA,WAAA,CAA6B,GAAsB,EAAA;AAAtB,QAAA,IAAG,CAAA,GAAA,GAAH,GAAG,CAAmB;AA5D3C,QAAA,IAAM,CAAA,MAAA,GAAiB,OAAO,CAAC;AAc/B,QAAA,IAAK,CAAA,KAAA,GAAkC,OAAO,CAAC;AAc/C,QAAA,IAAM,CAAA,MAAA,GAAW,KAAK,CAAC;;AA8BV,QAAA,IAAI,CAAA,IAAA,GAAG,WAAW,CAAC;KAEe;AAzEvD;;;;AAIG;AACH,IAAA,IACI,KAAK,GAAA;QACP,OAAO,IAAI,CAAC,MAAM,CAAC;KACpB;IACD,IAAI,KAAK,CAAC,KAAmB,EAAA;AAC3B,QAAA,IAAI,CAAC,MAAM,GAAG,YAAY,CAAC,KAAK,CAAC,GAAG,KAAK,GAAG,SAAS,CAAC;AACtD,QAAA,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC;KACzB;AAED;;;;AAIG;AACH,IAAA,IACI,IAAI,GAAA;QACN,OAAO,IAAI,CAAC,KAAK,CAAC;KACnB;IACD,IAAI,IAAI,CAAC,KAAoC,EAAA;AAC3C,QAAA,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;AACnB,QAAA,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC;KACzB;AAED;;;;AAIG;AACH,IAAA,IACI,KAAK,GAAA;QACP,OAAO,IAAI,CAAC,MAAM,CAAC;KACpB;IACD,IAAI,KAAK,CAAC,KAAa,EAAA;AACrB,QAAA,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;AACpB,QAAA,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC;KACzB;;AAID,IAAA,IACI,SAAS,GAAA;QACX,OAAO;AACL,YAAA,YAAY,EAAE,IAAI;AAClB,YAAA,qBAAqB,EAAE,IAAI,CAAC,KAAK,KAAK,SAAS;AAC/C,YAAA,uBAAuB,EAAE,IAAI,CAAC,KAAK,KAAK,WAAW;AACnD,YAAA,qBAAqB,EAAE,IAAI,CAAC,KAAK,KAAK,SAAS;AAC/C,YAAA,qBAAqB,EAAE,IAAI,CAAC,KAAK,KAAK,SAAS;AAC/C,YAAA,oBAAoB,EAAE,IAAI,CAAC,KAAK,KAAK,QAAQ;AAC7C,YAAA,mBAAmB,EAAE,IAAI,CAAC,KAAK,KAAK,OAAO;AAC3C,YAAA,oBAAoB,EAAE,IAAI,CAAC,KAAK,KAAK,QAAQ;AAC7C,YAAA,kBAAkB,EAAE,IAAI,CAAC,KAAK,KAAK,MAAM;AACzC,YAAA,mBAAmB,EAAE,IAAI,CAAC,IAAI,KAAK,OAAO;AAC1C,YAAA,oBAAoB,EAAE,IAAI,CAAC,IAAI,KAAK,QAAQ;AAC5C,YAAA,oBAAoB,EAAE,IAAI,CAAC,IAAI,KAAK,QAAQ;SAC7C,CAAC;KACH;;AAGD,IAAA,IACI,QAAQ,GAAA;QACV,OAAO;YACL,oBAAoB,EAAE,IAAI,CAAC,KAAK;SACjC,CAAC;KACH;;
|
|
1
|
+
{"version":3,"file":"ngwr-divider.mjs","sources":["../../../projects/lib/divider/divider.ts","../../../projects/lib/divider/divider-module.ts","../../../projects/lib/divider/ngwr-divider.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n HostBinding,\n Input,\n ViewEncapsulation,\n} from '@angular/core';\n\nimport { isThemeColor, WrThemeColor } from 'ngwr/core/color';\nimport { SafeAny } from 'ngwr/core/types';\n\n@Component({\n selector: 'wr-divider',\n exportAs: 'wrDivider',\n template: '',\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class WrDivider {\n /**\n * Set color of `wr-divider`\n *\n * @default 'light';\n */\n @Input()\n get color(): WrThemeColor {\n return this._color;\n }\n set color(value: WrThemeColor) {\n this._color = isThemeColor(value) ? value : 'primary';\n this.cdr.markForCheck();\n }\n private _color: WrThemeColor = 'light';\n /**\n * Set style of `wr-divider`\n *\n * @default `solid`;\n */\n @Input()\n get type(): 'solid' | 'dashed' | 'dotted' {\n return this._type;\n }\n set type(value: 'solid' | 'dashed' | 'dotted') {\n this._type = value;\n this.cdr.markForCheck();\n }\n private _type: 'solid' | 'dashed' | 'dotted' = 'solid';\n /**\n * Set width of `wr-divider`\n *\n * @default 1px;\n */\n @Input()\n get width(): string {\n return this._width;\n }\n set width(value: string) {\n this._width = value;\n this.cdr.markForCheck();\n }\n private _width: string = '1px';\n\n /** Set element classes */\n @HostBinding('class')\n get elClasses(): SafeAny {\n return {\n 'wr-divider': true,\n 'wr-divider--primary': this.color === 'primary',\n 'wr-divider--secondary': this.color === 'secondary',\n 'wr-divider--success': this.color === 'success',\n 'wr-divider--warning': this.color === 'warning',\n 'wr-divider--danger': this.color === 'danger',\n 'wr-divider--light': this.color === 'light',\n 'wr-divider--medium': this.color === 'medium',\n 'wr-divider--dark': this.color === 'dark',\n 'wr-divider--solid': this.type === 'solid',\n 'wr-divider--dashed': this.type === 'dashed',\n 'wr-divider--dotted': this.type === 'dotted',\n };\n }\n\n /** Set element style **/\n @HostBinding('style')\n get elStyles(): SafeAny {\n return {\n '--wr-divider-width': this.width,\n };\n }\n\n /** Set element role **/\n @HostBinding('role') role = 'separator';\n\n constructor(private readonly cdr: ChangeDetectorRef) {}\n}\n","import { NgModule } from '@angular/core';\n\nimport { WrDivider } from './divider';\n\n@NgModule({\n declarations: [WrDivider],\n exports: [WrDivider],\n})\nexport class WrDividerModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|