@fundamental-ngx/cdk 0.40.4-rc.6 → 0.41.0-rc.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/esm2020/utils/index.mjs +2 -1
- package/esm2020/utils/toast/base-toast-animations.mjs +22 -0
- package/esm2020/utils/toast/base-toast-positions.mjs +108 -0
- package/esm2020/utils/toast/base-toast.service.mjs +258 -0
- package/esm2020/utils/toast/classes/action-dismissible/base-toast-action-dismissible-ref.mjs +36 -0
- package/esm2020/utils/toast/classes/base-toast-animated-container.component.mjs +83 -0
- package/esm2020/utils/toast/classes/base-toast-config.mjs +23 -0
- package/esm2020/utils/toast/classes/base-toast-container.component.mjs +72 -0
- package/esm2020/utils/toast/classes/base-toast-overlay-container.mjs +25 -0
- package/esm2020/utils/toast/classes/base-toast-ref.mjs +41 -0
- package/esm2020/utils/toast/classes/duration-dismissible/base-toast-duration-dismissible-config.mjs +19 -0
- package/esm2020/utils/toast/classes/duration-dismissible/base-toast-duration-dismissible-container.component.mjs +39 -0
- package/esm2020/utils/toast/classes/duration-dismissible/base-toast-duration-dismissible-ref.mjs +23 -0
- package/esm2020/utils/toast/classes/duration-dismissible/base-toast-duration-dismissible.service.mjs +25 -0
- package/esm2020/utils/toast/index.mjs +16 -0
- package/esm2020/utils/toast/interfaces/toast-container-component.interface.mjs +2 -0
- package/esm2020/utils/toast/interfaces/toast-duration-dismissible-container-component.interface.mjs +2 -0
- package/esm2020/utils/toast/interfaces/toast-text-component.interface.mjs +2 -0
- package/fesm2015/fundamental-ngx-cdk-utils.mjs +738 -5
- package/fesm2015/fundamental-ngx-cdk-utils.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-cdk-utils.mjs +748 -5
- package/fesm2020/fundamental-ngx-cdk-utils.mjs.map +1 -1
- package/fundamental-ngx-cdk-v0.41.0-rc.1.tgz +0 -0
- package/package.json +2 -2
- package/utils/index.d.ts +1 -0
- package/utils/toast/base-toast-animations.d.ts +7 -0
- package/utils/toast/base-toast-positions.d.ts +122 -0
- package/utils/toast/base-toast.service.d.ts +151 -0
- package/utils/toast/classes/action-dismissible/base-toast-action-dismissible-ref.d.ts +23 -0
- package/utils/toast/classes/base-toast-animated-container.component.d.ts +39 -0
- package/utils/toast/classes/base-toast-config.d.ts +53 -0
- package/utils/toast/classes/base-toast-container.component.d.ts +55 -0
- package/utils/toast/classes/base-toast-overlay-container.d.ts +16 -0
- package/utils/toast/classes/base-toast-ref.d.ts +31 -0
- package/utils/toast/classes/duration-dismissible/base-toast-duration-dismissible-config.d.ts +15 -0
- package/utils/toast/classes/duration-dismissible/base-toast-duration-dismissible-container.component.d.ts +20 -0
- package/utils/toast/classes/duration-dismissible/base-toast-duration-dismissible-ref.d.ts +20 -0
- package/utils/toast/classes/duration-dismissible/base-toast-duration-dismissible.service.d.ts +11 -0
- package/utils/toast/index.d.ts +15 -0
- package/utils/toast/interfaces/toast-container-component.interface.d.ts +14 -0
- package/utils/toast/interfaces/toast-duration-dismissible-container-component.interface.d.ts +6 -0
- package/utils/toast/interfaces/toast-text-component.interface.d.ts +5 -0
- package/fundamental-ngx-cdk-v0.40.4-rc.6.tgz +0 -0
package/esm2020/utils/index.mjs
CHANGED
|
@@ -18,4 +18,5 @@ export * from './abstract-fd-ngx-class';
|
|
|
18
18
|
export * from './pipes';
|
|
19
19
|
export * from './tokens/module-deprecations.token';
|
|
20
20
|
export * from './tokens/viewport-size.observable';
|
|
21
|
-
|
|
21
|
+
export * from './toast';
|
|
22
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2Nkay9zcmMvbGliL3V0aWxzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsZ0JBQWdCLENBQUM7QUFFL0IsY0FBYyxhQUFhLENBQUM7QUFDNUIsY0FBYyxrQkFBa0IsQ0FBQztBQUNqQyxjQUFjLG1CQUFtQixDQUFDO0FBQ2xDLGNBQWMsVUFBVSxDQUFDO0FBQ3pCLGNBQWMsYUFBYSxDQUFDO0FBQzVCLGNBQWMsY0FBYyxDQUFDO0FBQzdCLGNBQWMsY0FBYyxDQUFDO0FBQzdCLGNBQWMsY0FBYyxDQUFDO0FBQzdCLGNBQWMsaUJBQWlCLENBQUM7QUFDaEMsY0FBYyxxQkFBcUIsQ0FBQztBQUNwQyxjQUFjLGFBQWEsQ0FBQztBQUM1QixjQUFjLFdBQVcsQ0FBQztBQUMxQixjQUFjLGNBQWMsQ0FBQztBQUM3QixjQUFjLDZCQUE2QixDQUFDO0FBQzVDLGNBQWMsWUFBWSxDQUFDO0FBQzNCLGNBQWMseUJBQXlCLENBQUM7QUFDeEMsY0FBYyxTQUFTLENBQUM7QUFDeEIsY0FBYyxvQ0FBb0MsQ0FBQztBQUNuRCxjQUFjLG1DQUFtQyxDQUFDO0FBQ2xELGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi91dGlscy5tb2R1bGUnO1xuXG5leHBvcnQgKiBmcm9tICcuL3R5cGVjaGVjayc7XG5leHBvcnQgKiBmcm9tICcuL2NvZXJjaW9uL2FycmF5JztcbmV4cG9ydCAqIGZyb20gJy4vbW9kZWxzL251bGxhYmxlJztcbmV4cG9ydCAqIGZyb20gJy4vY29uc3RzJztcbmV4cG9ydCAqIGZyb20gJy4vZGF0YXR5cGVzJztcbmV4cG9ydCAqIGZyb20gJy4vZGVjb3JhdG9ycyc7XG5leHBvcnQgKiBmcm9tICcuL2NvbXBvbmVudHMnO1xuZXhwb3J0ICogZnJvbSAnLi9kaXJlY3RpdmVzJztcbmV4cG9ydCAqIGZyb20gJy4vZHJhZy1hbmQtZHJvcCc7XG5leHBvcnQgKiBmcm9tICcuL2R5bmFtaWMtY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vZnVuY3Rpb25zJztcbmV4cG9ydCAqIGZyb20gJy4vaGVscGVycyc7XG5leHBvcnQgKiBmcm9tICcuL2ludGVyZmFjZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9saXN0LWl0ZW0vbGlzdC1pdGVtLXV0aWxzJztcbmV4cG9ydCAqIGZyb20gJy4vc2VydmljZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9hYnN0cmFjdC1mZC1uZ3gtY2xhc3MnO1xuZXhwb3J0ICogZnJvbSAnLi9waXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL3Rva2Vucy9tb2R1bGUtZGVwcmVjYXRpb25zLnRva2VuJztcbmV4cG9ydCAqIGZyb20gJy4vdG9rZW5zL3ZpZXdwb3J0LXNpemUub2JzZXJ2YWJsZSc7XG5leHBvcnQgKiBmcm9tICcuL3RvYXN0JztcbiJdfQ==
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { animate, state, style, transition, trigger } from '@angular/animations';
|
|
2
|
+
/**
|
|
3
|
+
* Animations used by the Toast components.
|
|
4
|
+
*/
|
|
5
|
+
export const baseToastAnimations = {
|
|
6
|
+
/** Animation that shows and hides Toast. */
|
|
7
|
+
toastState: trigger('state', [
|
|
8
|
+
state('void, hidden', style({
|
|
9
|
+
transform: 'translateY(1rem)',
|
|
10
|
+
opacity: 0
|
|
11
|
+
})),
|
|
12
|
+
state('visible', style({
|
|
13
|
+
transform: 'translateY(0)',
|
|
14
|
+
opacity: 1
|
|
15
|
+
})),
|
|
16
|
+
transition('* => visible', animate('150ms cubic-bezier(0, 0, 0.2, 1)')),
|
|
17
|
+
transition('* => void, * => hidden', animate('75ms cubic-bezier(0.4, 0.0, 1, 1)', style({
|
|
18
|
+
opacity: 0
|
|
19
|
+
})))
|
|
20
|
+
])
|
|
21
|
+
};
|
|
22
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS10b2FzdC1hbmltYXRpb25zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jZGsvc3JjL2xpYi91dGlscy90b2FzdC9iYXNlLXRvYXN0LWFuaW1hdGlvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxPQUFPLEVBQTRCLE1BQU0scUJBQXFCLENBQUM7QUFFM0c7O0dBRUc7QUFDSCxNQUFNLENBQUMsTUFBTSxtQkFBbUIsR0FFNUI7SUFDQSw0Q0FBNEM7SUFDNUMsVUFBVSxFQUFFLE9BQU8sQ0FBQyxPQUFPLEVBQUU7UUFDekIsS0FBSyxDQUNELGNBQWMsRUFDZCxLQUFLLENBQUM7WUFDRixTQUFTLEVBQUUsa0JBQWtCO1lBQzdCLE9BQU8sRUFBRSxDQUFDO1NBQ2IsQ0FBQyxDQUNMO1FBQ0QsS0FBSyxDQUNELFNBQVMsRUFDVCxLQUFLLENBQUM7WUFDRixTQUFTLEVBQUUsZUFBZTtZQUMxQixPQUFPLEVBQUUsQ0FBQztTQUNiLENBQUMsQ0FDTDtRQUNELFVBQVUsQ0FBQyxjQUFjLEVBQUUsT0FBTyxDQUFDLGtDQUFrQyxDQUFDLENBQUM7UUFDdkUsVUFBVSxDQUNOLHdCQUF3QixFQUN4QixPQUFPLENBQ0gsbUNBQW1DLEVBQ25DLEtBQUssQ0FBQztZQUNGLE9BQU8sRUFBRSxDQUFDO1NBQ2IsQ0FBQyxDQUNMLENBQ0o7S0FDSixDQUFDO0NBQ0wsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGFuaW1hdGUsIHN0YXRlLCBzdHlsZSwgdHJhbnNpdGlvbiwgdHJpZ2dlciwgQW5pbWF0aW9uVHJpZ2dlck1ldGFkYXRhIH0gZnJvbSAnQGFuZ3VsYXIvYW5pbWF0aW9ucyc7XG5cbi8qKlxuICogQW5pbWF0aW9ucyB1c2VkIGJ5IHRoZSBUb2FzdCBjb21wb25lbnRzLlxuICovXG5leHBvcnQgY29uc3QgYmFzZVRvYXN0QW5pbWF0aW9uczoge1xuICAgIHJlYWRvbmx5IHRvYXN0U3RhdGU6IEFuaW1hdGlvblRyaWdnZXJNZXRhZGF0YTtcbn0gPSB7XG4gICAgLyoqIEFuaW1hdGlvbiB0aGF0IHNob3dzIGFuZCBoaWRlcyBUb2FzdC4gKi9cbiAgICB0b2FzdFN0YXRlOiB0cmlnZ2VyKCdzdGF0ZScsIFtcbiAgICAgICAgc3RhdGUoXG4gICAgICAgICAgICAndm9pZCwgaGlkZGVuJyxcbiAgICAgICAgICAgIHN0eWxlKHtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06ICd0cmFuc2xhdGVZKDFyZW0pJyxcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwXG4gICAgICAgICAgICB9KVxuICAgICAgICApLFxuICAgICAgICBzdGF0ZShcbiAgICAgICAgICAgICd2aXNpYmxlJyxcbiAgICAgICAgICAgIHN0eWxlKHtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06ICd0cmFuc2xhdGVZKDApJyxcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAxXG4gICAgICAgICAgICB9KVxuICAgICAgICApLFxuICAgICAgICB0cmFuc2l0aW9uKCcqID0+IHZpc2libGUnLCBhbmltYXRlKCcxNTBtcyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yLCAxKScpKSxcbiAgICAgICAgdHJhbnNpdGlvbihcbiAgICAgICAgICAgICcqID0+IHZvaWQsICogPT4gaGlkZGVuJyxcbiAgICAgICAgICAgIGFuaW1hdGUoXG4gICAgICAgICAgICAgICAgJzc1bXMgY3ViaWMtYmV6aWVyKDAuNCwgMC4wLCAxLCAxKScsXG4gICAgICAgICAgICAgICAgc3R5bGUoe1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwXG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIClcbiAgICAgICAgKVxuICAgIF0pXG59O1xuIl19
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
export const toastConnectedTopPosition = {
|
|
2
|
+
originX: 'center',
|
|
3
|
+
originY: 'bottom',
|
|
4
|
+
overlayX: 'center',
|
|
5
|
+
overlayY: 'top',
|
|
6
|
+
offsetY: 16
|
|
7
|
+
};
|
|
8
|
+
export const toastConnectedTopLeftPosition = {
|
|
9
|
+
...toastConnectedTopPosition,
|
|
10
|
+
...{ overlayX: 'start', originX: 'start' }
|
|
11
|
+
};
|
|
12
|
+
export const toastConnectedTopRightPosition = {
|
|
13
|
+
...toastConnectedTopPosition,
|
|
14
|
+
...{ overlayX: 'end', originX: 'end' }
|
|
15
|
+
};
|
|
16
|
+
export const toastConnectedBottomPosition = {
|
|
17
|
+
originX: 'center',
|
|
18
|
+
originY: 'top',
|
|
19
|
+
overlayX: 'center',
|
|
20
|
+
overlayY: 'bottom',
|
|
21
|
+
offsetY: -16
|
|
22
|
+
};
|
|
23
|
+
export const toastConnectedBottomLeftPosition = {
|
|
24
|
+
...toastConnectedBottomPosition,
|
|
25
|
+
...{ overlayX: 'start', originX: 'start' }
|
|
26
|
+
};
|
|
27
|
+
export const toastConnectedBottomRightPosition = {
|
|
28
|
+
...toastConnectedBottomPosition,
|
|
29
|
+
...{ overlayX: 'end', originX: 'end' }
|
|
30
|
+
};
|
|
31
|
+
/**
|
|
32
|
+
* Base Toast Position class.
|
|
33
|
+
*/
|
|
34
|
+
export class BaseToastPosition {
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Toast Position class.
|
|
38
|
+
* The first item will pop from the top-center of the screen.
|
|
39
|
+
* New items will stack after the first item.
|
|
40
|
+
*/
|
|
41
|
+
export class ToastTopCenterPosition extends BaseToastPosition {
|
|
42
|
+
}
|
|
43
|
+
/** @hidden */
|
|
44
|
+
ToastTopCenterPosition.global = {
|
|
45
|
+
top: '1rem',
|
|
46
|
+
center: true
|
|
47
|
+
};
|
|
48
|
+
/** @hidden */
|
|
49
|
+
ToastTopCenterPosition.connected = toastConnectedTopPosition;
|
|
50
|
+
/**
|
|
51
|
+
* Toast Position class.
|
|
52
|
+
* The first item will pop from the bottom-center of the screen.
|
|
53
|
+
* New items will stack before first item.
|
|
54
|
+
*/
|
|
55
|
+
export class ToastBottomCenterPosition extends BaseToastPosition {
|
|
56
|
+
}
|
|
57
|
+
/** @hidden */
|
|
58
|
+
ToastBottomCenterPosition.global = {
|
|
59
|
+
bottom: '1rem',
|
|
60
|
+
center: true
|
|
61
|
+
};
|
|
62
|
+
/** @hidden */
|
|
63
|
+
ToastBottomCenterPosition.connected = toastConnectedBottomPosition;
|
|
64
|
+
/**
|
|
65
|
+
* Toast Position class.
|
|
66
|
+
* The first item will pop from the top-left of the screen.
|
|
67
|
+
* New items will stack after first item.
|
|
68
|
+
*/
|
|
69
|
+
export class ToastTopLeftPosition extends ToastTopCenterPosition {
|
|
70
|
+
}
|
|
71
|
+
/** @hidden */
|
|
72
|
+
ToastTopLeftPosition.global = { ...ToastTopCenterPosition.global, ...{ left: '1rem', center: false } };
|
|
73
|
+
/** @hidden */
|
|
74
|
+
ToastTopLeftPosition.connected = toastConnectedTopLeftPosition;
|
|
75
|
+
/**
|
|
76
|
+
* Toast Position class.
|
|
77
|
+
* The first item will pop from the top-right of the screen.
|
|
78
|
+
* New items will stack after first item.
|
|
79
|
+
*/
|
|
80
|
+
export class ToastTopRightPosition extends ToastTopCenterPosition {
|
|
81
|
+
}
|
|
82
|
+
/** @hidden */
|
|
83
|
+
ToastTopRightPosition.global = { ...ToastTopCenterPosition.global, ...{ right: '1rem', center: false } };
|
|
84
|
+
/** @hidden */
|
|
85
|
+
ToastTopRightPosition.connected = toastConnectedTopRightPosition;
|
|
86
|
+
/**
|
|
87
|
+
* Toast Position class.
|
|
88
|
+
* The first item will pop from the bottom-left of the screen.
|
|
89
|
+
* New items will stack before first item.
|
|
90
|
+
*/
|
|
91
|
+
export class ToastBottomLeftPosition extends ToastBottomCenterPosition {
|
|
92
|
+
}
|
|
93
|
+
/** @hidden */
|
|
94
|
+
ToastBottomLeftPosition.global = { ...ToastBottomCenterPosition.global, ...{ left: '1rem', center: false } };
|
|
95
|
+
/** @hidden */
|
|
96
|
+
ToastBottomLeftPosition.connected = toastConnectedBottomLeftPosition;
|
|
97
|
+
/**
|
|
98
|
+
* Toast Position class.
|
|
99
|
+
* The first item will pop from the bottom-right of the screen.
|
|
100
|
+
* New items will stack before first item.
|
|
101
|
+
*/
|
|
102
|
+
export class ToastBottomRightPosition extends ToastBottomCenterPosition {
|
|
103
|
+
}
|
|
104
|
+
/** @hidden */
|
|
105
|
+
ToastBottomRightPosition.global = { ...ToastBottomCenterPosition.global, ...{ right: '1rem', center: false } };
|
|
106
|
+
/** @hidden */
|
|
107
|
+
ToastBottomRightPosition.connected = toastConnectedBottomRightPosition;
|
|
108
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS10b2FzdC1wb3NpdGlvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2Nkay9zcmMvbGliL3V0aWxzL3RvYXN0L2Jhc2UtdG9hc3QtcG9zaXRpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQVdBLE1BQU0sQ0FBQyxNQUFNLHlCQUF5QixHQUFzQjtJQUN4RCxPQUFPLEVBQUUsUUFBUTtJQUNqQixPQUFPLEVBQUUsUUFBUTtJQUNqQixRQUFRLEVBQUUsUUFBUTtJQUNsQixRQUFRLEVBQUUsS0FBSztJQUNmLE9BQU8sRUFBRSxFQUFFO0NBQ2QsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLDZCQUE2QixHQUFzQjtJQUM1RCxHQUFHLHlCQUF5QjtJQUM1QixHQUFHLEVBQUUsUUFBUSxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFO0NBQzdDLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSw4QkFBOEIsR0FBc0I7SUFDN0QsR0FBRyx5QkFBeUI7SUFDNUIsR0FBRyxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRTtDQUN6QyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sNEJBQTRCLEdBQXNCO0lBQzNELE9BQU8sRUFBRSxRQUFRO0lBQ2pCLE9BQU8sRUFBRSxLQUFLO0lBQ2QsUUFBUSxFQUFFLFFBQVE7SUFDbEIsUUFBUSxFQUFFLFFBQVE7SUFDbEIsT0FBTyxFQUFFLENBQUMsRUFBRTtDQUNmLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxnQ0FBZ0MsR0FBc0I7SUFDL0QsR0FBRyw0QkFBNEI7SUFDL0IsR0FBRyxFQUFFLFFBQVEsRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRTtDQUM3QyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0saUNBQWlDLEdBQXNCO0lBQ2hFLEdBQUcsNEJBQTRCO0lBQy9CLEdBQUcsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUU7Q0FDekMsQ0FBQztBQUVGOztHQUVHO0FBQ0gsTUFBTSxPQUFnQixpQkFBaUI7Q0FTdEM7QUFFRDs7OztHQUlHO0FBQ0gsTUFBTSxPQUFPLHNCQUF1QixTQUFRLGlCQUFpQjs7QUFDekQsY0FBYztBQUNQLDZCQUFNLEdBQXdCO0lBQ2pDLEdBQUcsRUFBRSxNQUFNO0lBQ1gsTUFBTSxFQUFFLElBQUk7Q0FDZixDQUFDO0FBQ0YsY0FBYztBQUNQLGdDQUFTLEdBQXNCLHlCQUF5QixDQUFDO0FBR3BFOzs7O0dBSUc7QUFDSCxNQUFNLE9BQU8seUJBQTBCLFNBQVEsaUJBQWlCOztBQUM1RCxjQUFjO0FBQ1AsZ0NBQU0sR0FBd0I7SUFDakMsTUFBTSxFQUFFLE1BQU07SUFDZCxNQUFNLEVBQUUsSUFBSTtDQUNmLENBQUM7QUFDRixjQUFjO0FBQ1AsbUNBQVMsR0FBc0IsNEJBQTRCLENBQUM7QUFHdkU7Ozs7R0FJRztBQUNILE1BQU0sT0FBTyxvQkFBcUIsU0FBUSxzQkFBc0I7O0FBQzVELGNBQWM7QUFDRSwyQkFBTSxHQUFHLEVBQUUsR0FBRyxzQkFBc0IsQ0FBQyxNQUFNLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxFQUFFLENBQUM7QUFDbEcsY0FBYztBQUNFLDhCQUFTLEdBQXNCLDZCQUE2QixDQUFDO0FBR2pGOzs7O0dBSUc7QUFDSCxNQUFNLE9BQU8scUJBQXNCLFNBQVEsc0JBQXNCOztBQUM3RCxjQUFjO0FBQ0UsNEJBQU0sR0FBRyxFQUFFLEdBQUcsc0JBQXNCLENBQUMsTUFBTSxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsRUFBRSxDQUFDO0FBQ25HLGNBQWM7QUFDRSwrQkFBUyxHQUFzQiw4QkFBOEIsQ0FBQztBQUdsRjs7OztHQUlHO0FBQ0gsTUFBTSxPQUFPLHVCQUF3QixTQUFRLHlCQUF5Qjs7QUFDbEUsY0FBYztBQUNFLDhCQUFNLEdBQUcsRUFBRSxHQUFHLHlCQUF5QixDQUFDLE1BQU0sRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLEVBQUUsQ0FBQztBQUNyRyxjQUFjO0FBQ0UsaUNBQVMsR0FBRyxnQ0FBZ0MsQ0FBQztBQUdqRTs7OztHQUlHO0FBQ0gsTUFBTSxPQUFPLHdCQUF5QixTQUFRLHlCQUF5Qjs7QUFDbkUsY0FBYztBQUNFLCtCQUFNLEdBQUcsRUFBRSxHQUFHLHlCQUF5QixDQUFDLE1BQU0sRUFBRSxHQUFHLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLEVBQUUsQ0FBQztBQUN0RyxjQUFjO0FBQ0Usa0NBQVMsR0FBRyxpQ0FBaUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbm5lY3RlZFBvc2l0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL292ZXJsYXknO1xuXG5leHBvcnQgaW50ZXJmYWNlIFRvYXN0R2xvYmFsUG9zaXRpb24ge1xuICAgIGxlZnQ/OiBzdHJpbmc7XG4gICAgcmlnaHQ/OiBzdHJpbmc7XG4gICAgYm90dG9tPzogc3RyaW5nO1xuICAgIHRvcD86IHN0cmluZztcbiAgICBjZW50ZXI6IGJvb2xlYW47XG4gICAgY2VudGVyVmVydGljYWxseT86IGJvb2xlYW47XG59XG5cbmV4cG9ydCBjb25zdCB0b2FzdENvbm5lY3RlZFRvcFBvc2l0aW9uOiBDb25uZWN0ZWRQb3NpdGlvbiA9IHtcbiAgICBvcmlnaW5YOiAnY2VudGVyJyxcbiAgICBvcmlnaW5ZOiAnYm90dG9tJyxcbiAgICBvdmVybGF5WDogJ2NlbnRlcicsXG4gICAgb3ZlcmxheVk6ICd0b3AnLFxuICAgIG9mZnNldFk6IDE2XG59O1xuXG5leHBvcnQgY29uc3QgdG9hc3RDb25uZWN0ZWRUb3BMZWZ0UG9zaXRpb246IENvbm5lY3RlZFBvc2l0aW9uID0ge1xuICAgIC4uLnRvYXN0Q29ubmVjdGVkVG9wUG9zaXRpb24sXG4gICAgLi4ueyBvdmVybGF5WDogJ3N0YXJ0Jywgb3JpZ2luWDogJ3N0YXJ0JyB9XG59O1xuXG5leHBvcnQgY29uc3QgdG9hc3RDb25uZWN0ZWRUb3BSaWdodFBvc2l0aW9uOiBDb25uZWN0ZWRQb3NpdGlvbiA9IHtcbiAgICAuLi50b2FzdENvbm5lY3RlZFRvcFBvc2l0aW9uLFxuICAgIC4uLnsgb3ZlcmxheVg6ICdlbmQnLCBvcmlnaW5YOiAnZW5kJyB9XG59O1xuXG5leHBvcnQgY29uc3QgdG9hc3RDb25uZWN0ZWRCb3R0b21Qb3NpdGlvbjogQ29ubmVjdGVkUG9zaXRpb24gPSB7XG4gICAgb3JpZ2luWDogJ2NlbnRlcicsXG4gICAgb3JpZ2luWTogJ3RvcCcsXG4gICAgb3ZlcmxheVg6ICdjZW50ZXInLFxuICAgIG92ZXJsYXlZOiAnYm90dG9tJyxcbiAgICBvZmZzZXRZOiAtMTZcbn07XG5cbmV4cG9ydCBjb25zdCB0b2FzdENvbm5lY3RlZEJvdHRvbUxlZnRQb3NpdGlvbjogQ29ubmVjdGVkUG9zaXRpb24gPSB7XG4gICAgLi4udG9hc3RDb25uZWN0ZWRCb3R0b21Qb3NpdGlvbixcbiAgICAuLi57IG92ZXJsYXlYOiAnc3RhcnQnLCBvcmlnaW5YOiAnc3RhcnQnIH1cbn07XG5cbmV4cG9ydCBjb25zdCB0b2FzdENvbm5lY3RlZEJvdHRvbVJpZ2h0UG9zaXRpb246IENvbm5lY3RlZFBvc2l0aW9uID0ge1xuICAgIC4uLnRvYXN0Q29ubmVjdGVkQm90dG9tUG9zaXRpb24sXG4gICAgLi4ueyBvdmVybGF5WDogJ2VuZCcsIG9yaWdpblg6ICdlbmQnIH1cbn07XG5cbi8qKlxuICogQmFzZSBUb2FzdCBQb3NpdGlvbiBjbGFzcy5cbiAqL1xuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEJhc2VUb2FzdFBvc2l0aW9uIHtcbiAgICAvKipcbiAgICAgKiBQb3NpdGlvbiBzdHJhdGVneSBvZiB0aGUgZmlyc3QgaXRlbS5cbiAgICAgKi9cbiAgICBnbG9iYWwhOiBUb2FzdEdsb2JhbFBvc2l0aW9uO1xuICAgIC8qKlxuICAgICAqIFBvc2l0aW9uIHN0cmF0ZWd5IG9mIHRoZSBuZXdseSBhZGRlZCBpdGVtcy5cbiAgICAgKi9cbiAgICBjb25uZWN0ZWQhOiBDb25uZWN0ZWRQb3NpdGlvbjtcbn1cblxuLyoqXG4gKiBUb2FzdCBQb3NpdGlvbiBjbGFzcy5cbiAqIFRoZSBmaXJzdCBpdGVtIHdpbGwgcG9wIGZyb20gdGhlIHRvcC1jZW50ZXIgb2YgdGhlIHNjcmVlbi5cbiAqIE5ldyBpdGVtcyB3aWxsIHN0YWNrIGFmdGVyIHRoZSBmaXJzdCBpdGVtLlxuICovXG5leHBvcnQgY2xhc3MgVG9hc3RUb3BDZW50ZXJQb3NpdGlvbiBleHRlbmRzIEJhc2VUb2FzdFBvc2l0aW9uIHtcbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHN0YXRpYyBnbG9iYWw6IFRvYXN0R2xvYmFsUG9zaXRpb24gPSB7XG4gICAgICAgIHRvcDogJzFyZW0nLFxuICAgICAgICBjZW50ZXI6IHRydWVcbiAgICB9O1xuICAgIC8qKiBAaGlkZGVuICovXG4gICAgc3RhdGljIGNvbm5lY3RlZDogQ29ubmVjdGVkUG9zaXRpb24gPSB0b2FzdENvbm5lY3RlZFRvcFBvc2l0aW9uO1xufVxuXG4vKipcbiAqIFRvYXN0IFBvc2l0aW9uIGNsYXNzLlxuICogVGhlIGZpcnN0IGl0ZW0gd2lsbCBwb3AgZnJvbSB0aGUgYm90dG9tLWNlbnRlciBvZiB0aGUgc2NyZWVuLlxuICogTmV3IGl0ZW1zIHdpbGwgc3RhY2sgYmVmb3JlIGZpcnN0IGl0ZW0uXG4gKi9cbmV4cG9ydCBjbGFzcyBUb2FzdEJvdHRvbUNlbnRlclBvc2l0aW9uIGV4dGVuZHMgQmFzZVRvYXN0UG9zaXRpb24ge1xuICAgIC8qKiBAaGlkZGVuICovXG4gICAgc3RhdGljIGdsb2JhbDogVG9hc3RHbG9iYWxQb3NpdGlvbiA9IHtcbiAgICAgICAgYm90dG9tOiAnMXJlbScsXG4gICAgICAgIGNlbnRlcjogdHJ1ZVxuICAgIH07XG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBzdGF0aWMgY29ubmVjdGVkOiBDb25uZWN0ZWRQb3NpdGlvbiA9IHRvYXN0Q29ubmVjdGVkQm90dG9tUG9zaXRpb247XG59XG5cbi8qKlxuICogVG9hc3QgUG9zaXRpb24gY2xhc3MuXG4gKiBUaGUgZmlyc3QgaXRlbSB3aWxsIHBvcCBmcm9tIHRoZSB0b3AtbGVmdCBvZiB0aGUgc2NyZWVuLlxuICogTmV3IGl0ZW1zIHdpbGwgc3RhY2sgYWZ0ZXIgZmlyc3QgaXRlbS5cbiAqL1xuZXhwb3J0IGNsYXNzIFRvYXN0VG9wTGVmdFBvc2l0aW9uIGV4dGVuZHMgVG9hc3RUb3BDZW50ZXJQb3NpdGlvbiB7XG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBzdGF0aWMgb3ZlcnJpZGUgZ2xvYmFsID0geyAuLi5Ub2FzdFRvcENlbnRlclBvc2l0aW9uLmdsb2JhbCwgLi4ueyBsZWZ0OiAnMXJlbScsIGNlbnRlcjogZmFsc2UgfSB9O1xuICAgIC8qKiBAaGlkZGVuICovXG4gICAgc3RhdGljIG92ZXJyaWRlIGNvbm5lY3RlZDogQ29ubmVjdGVkUG9zaXRpb24gPSB0b2FzdENvbm5lY3RlZFRvcExlZnRQb3NpdGlvbjtcbn1cblxuLyoqXG4gKiBUb2FzdCBQb3NpdGlvbiBjbGFzcy5cbiAqIFRoZSBmaXJzdCBpdGVtIHdpbGwgcG9wIGZyb20gdGhlIHRvcC1yaWdodCBvZiB0aGUgc2NyZWVuLlxuICogTmV3IGl0ZW1zIHdpbGwgc3RhY2sgYWZ0ZXIgZmlyc3QgaXRlbS5cbiAqL1xuZXhwb3J0IGNsYXNzIFRvYXN0VG9wUmlnaHRQb3NpdGlvbiBleHRlbmRzIFRvYXN0VG9wQ2VudGVyUG9zaXRpb24ge1xuICAgIC8qKiBAaGlkZGVuICovXG4gICAgc3RhdGljIG92ZXJyaWRlIGdsb2JhbCA9IHsgLi4uVG9hc3RUb3BDZW50ZXJQb3NpdGlvbi5nbG9iYWwsIC4uLnsgcmlnaHQ6ICcxcmVtJywgY2VudGVyOiBmYWxzZSB9IH07XG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBzdGF0aWMgb3ZlcnJpZGUgY29ubmVjdGVkOiBDb25uZWN0ZWRQb3NpdGlvbiA9IHRvYXN0Q29ubmVjdGVkVG9wUmlnaHRQb3NpdGlvbjtcbn1cblxuLyoqXG4gKiBUb2FzdCBQb3NpdGlvbiBjbGFzcy5cbiAqIFRoZSBmaXJzdCBpdGVtIHdpbGwgcG9wIGZyb20gdGhlIGJvdHRvbS1sZWZ0IG9mIHRoZSBzY3JlZW4uXG4gKiBOZXcgaXRlbXMgd2lsbCBzdGFjayBiZWZvcmUgZmlyc3QgaXRlbS5cbiAqL1xuZXhwb3J0IGNsYXNzIFRvYXN0Qm90dG9tTGVmdFBvc2l0aW9uIGV4dGVuZHMgVG9hc3RCb3R0b21DZW50ZXJQb3NpdGlvbiB7XG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBzdGF0aWMgb3ZlcnJpZGUgZ2xvYmFsID0geyAuLi5Ub2FzdEJvdHRvbUNlbnRlclBvc2l0aW9uLmdsb2JhbCwgLi4ueyBsZWZ0OiAnMXJlbScsIGNlbnRlcjogZmFsc2UgfSB9O1xuICAgIC8qKiBAaGlkZGVuICovXG4gICAgc3RhdGljIG92ZXJyaWRlIGNvbm5lY3RlZCA9IHRvYXN0Q29ubmVjdGVkQm90dG9tTGVmdFBvc2l0aW9uO1xufVxuXG4vKipcbiAqIFRvYXN0IFBvc2l0aW9uIGNsYXNzLlxuICogVGhlIGZpcnN0IGl0ZW0gd2lsbCBwb3AgZnJvbSB0aGUgYm90dG9tLXJpZ2h0IG9mIHRoZSBzY3JlZW4uXG4gKiBOZXcgaXRlbXMgd2lsbCBzdGFjayBiZWZvcmUgZmlyc3QgaXRlbS5cbiAqL1xuZXhwb3J0IGNsYXNzIFRvYXN0Qm90dG9tUmlnaHRQb3NpdGlvbiBleHRlbmRzIFRvYXN0Qm90dG9tQ2VudGVyUG9zaXRpb24ge1xuICAgIC8qKiBAaGlkZGVuICovXG4gICAgc3RhdGljIG92ZXJyaWRlIGdsb2JhbCA9IHsgLi4uVG9hc3RCb3R0b21DZW50ZXJQb3NpdGlvbi5nbG9iYWwsIC4uLnsgcmlnaHQ6ICcxcmVtJywgY2VudGVyOiBmYWxzZSB9IH07XG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBzdGF0aWMgb3ZlcnJpZGUgY29ubmVjdGVkID0gdG9hc3RDb25uZWN0ZWRCb3R0b21SaWdodFBvc2l0aW9uO1xufVxuIl19
|
|
@@ -0,0 +1,258 @@
|
|
|
1
|
+
import { GlobalPositionStrategy, Overlay, OverlayConfig } from '@angular/cdk/overlay';
|
|
2
|
+
import { ComponentPortal, TemplatePortal } from '@angular/cdk/portal';
|
|
3
|
+
import { Injectable, Injector, TemplateRef } from '@angular/core';
|
|
4
|
+
import { Subject } from 'rxjs';
|
|
5
|
+
import { takeUntil } from 'rxjs/operators';
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
import * as i1 from "@angular/cdk/overlay";
|
|
8
|
+
export class BaseToastService {
|
|
9
|
+
/** @hidden */
|
|
10
|
+
constructor(overlay, injector) {
|
|
11
|
+
this.overlay = overlay;
|
|
12
|
+
this.injector = injector;
|
|
13
|
+
/**
|
|
14
|
+
* @hidden
|
|
15
|
+
* Array of all current toasts.
|
|
16
|
+
*/
|
|
17
|
+
this._toasts = [];
|
|
18
|
+
/**
|
|
19
|
+
* @hiden
|
|
20
|
+
*/
|
|
21
|
+
this._toastsMap = new Map();
|
|
22
|
+
/** @hidden */
|
|
23
|
+
this._destroy$ = new Subject();
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* Dismisses all Toasts.
|
|
27
|
+
*/
|
|
28
|
+
hideAll() {
|
|
29
|
+
this._toasts.forEach((t) => t.dismiss());
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* Returns `true` if there are some message toasts currently open. `False` otherwise.
|
|
33
|
+
*/
|
|
34
|
+
hasOpenMessageToasts() {
|
|
35
|
+
return this._toasts.length > 0;
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* @deprecated.
|
|
39
|
+
* Use `hideAll()` method instead.
|
|
40
|
+
*/
|
|
41
|
+
dismissAll() {
|
|
42
|
+
this.hideAll();
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* Sets new position strategy for all Toast items.
|
|
46
|
+
* @param newStrategy New Position Strategy
|
|
47
|
+
*/
|
|
48
|
+
setNewPositionStrategy(newStrategy) {
|
|
49
|
+
if (newStrategy === this.toastPositionStrategy) {
|
|
50
|
+
return;
|
|
51
|
+
}
|
|
52
|
+
this.toastPositionStrategy = newStrategy;
|
|
53
|
+
this._refreshOverlayPositions();
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* @hidden
|
|
57
|
+
* Places a new component or a template as the content of the Toast container.
|
|
58
|
+
*/
|
|
59
|
+
_attach(content, userConfig) {
|
|
60
|
+
const config = { ...this.defaultConfig, ...userConfig };
|
|
61
|
+
const positionStrategy = config.positionStrategy || this.toastPositionStrategy;
|
|
62
|
+
const overlayRef = this._createOverlay(positionStrategy);
|
|
63
|
+
const containerRef = this.attachToastContainerComponent(overlayRef, config);
|
|
64
|
+
const toastRef = this.getToastRef(containerRef, overlayRef, positionStrategy);
|
|
65
|
+
toastRef._defaultPositionStrategy = !config.positionStrategy;
|
|
66
|
+
if (content instanceof TemplateRef) {
|
|
67
|
+
// TemplatePortal requires viewContainer ref
|
|
68
|
+
const viewRef = null;
|
|
69
|
+
const portal = new TemplatePortal(content, viewRef, { $implicit: config, toastRef });
|
|
70
|
+
toastRef.instance = containerRef.attachTemplatePortal(portal);
|
|
71
|
+
}
|
|
72
|
+
else {
|
|
73
|
+
const injector = this.createContentComponentInjector(config, toastRef);
|
|
74
|
+
const portal = new ComponentPortal(content, undefined, injector);
|
|
75
|
+
const contentRef = containerRef.attachComponentPortal(portal);
|
|
76
|
+
// We can't pass this via the injector, because the injector is created earlier.
|
|
77
|
+
toastRef.instance = contentRef.instance;
|
|
78
|
+
contentRef.changeDetectorRef.detectChanges();
|
|
79
|
+
}
|
|
80
|
+
const allToasts = this._toastsMap.get(positionStrategy) || [];
|
|
81
|
+
allToasts.push(toastRef);
|
|
82
|
+
this._toasts.push(toastRef);
|
|
83
|
+
this._toastsMap.set(positionStrategy, allToasts);
|
|
84
|
+
this.animateToast(toastRef);
|
|
85
|
+
return toastRef;
|
|
86
|
+
}
|
|
87
|
+
/**
|
|
88
|
+
* Attaches the Toast container component to the overlay.
|
|
89
|
+
*/
|
|
90
|
+
attachToastContainerComponent(overlayRef, config) {
|
|
91
|
+
const injector = Injector.create({
|
|
92
|
+
parent: this.injector,
|
|
93
|
+
providers: this.getContainerComponentProviders(config)
|
|
94
|
+
});
|
|
95
|
+
const containerPortal = new ComponentPortal(this.toastContainerComponent, null, injector);
|
|
96
|
+
const containerRef = overlayRef.attach(containerPortal);
|
|
97
|
+
containerRef.instance.config = config;
|
|
98
|
+
containerRef.instance.overlayRef = overlayRef;
|
|
99
|
+
return containerRef.instance;
|
|
100
|
+
}
|
|
101
|
+
/**
|
|
102
|
+
* Creates an injector to be used inside a Toast component.
|
|
103
|
+
* @param config Config that was used to create the Toast.
|
|
104
|
+
* @param toastRef Reference to the Toastr.
|
|
105
|
+
*/
|
|
106
|
+
createContentComponentInjector(config, toastRef) {
|
|
107
|
+
return Injector.create({
|
|
108
|
+
parent: this.injector,
|
|
109
|
+
providers: this.getContentComponentProviders(config, toastRef)
|
|
110
|
+
});
|
|
111
|
+
}
|
|
112
|
+
/** @hidden */
|
|
113
|
+
ngOnDestroy() {
|
|
114
|
+
this._destroy$.next();
|
|
115
|
+
this._destroy$.complete();
|
|
116
|
+
}
|
|
117
|
+
/**
|
|
118
|
+
* Animates the old Toast out and the new one in.
|
|
119
|
+
*/
|
|
120
|
+
animateToast(toastRef) {
|
|
121
|
+
const positionStrategy = toastRef.positionStrategy;
|
|
122
|
+
// When the toast is dismissed, clear the reference to it.
|
|
123
|
+
toastRef
|
|
124
|
+
.afterDismissed()
|
|
125
|
+
.pipe(takeUntil(this._destroy$))
|
|
126
|
+
.subscribe(() => {
|
|
127
|
+
const allToasts = this._toastsMap.get(positionStrategy) || [];
|
|
128
|
+
allToasts.splice(allToasts.indexOf(toastRef), 1);
|
|
129
|
+
this._toasts.splice(this._toasts.indexOf(toastRef), 1);
|
|
130
|
+
this._toastsMap.set(positionStrategy, allToasts);
|
|
131
|
+
this._refreshOverlayPositions();
|
|
132
|
+
});
|
|
133
|
+
toastRef.containerInstance.enter();
|
|
134
|
+
}
|
|
135
|
+
/**
|
|
136
|
+
* @hidden
|
|
137
|
+
* Creates a new overlay and places it in the correct location.
|
|
138
|
+
*/
|
|
139
|
+
_createOverlay(positionStrategy) {
|
|
140
|
+
const overlayConfig = new OverlayConfig();
|
|
141
|
+
overlayConfig.positionStrategy = this._getPositionStrategy(positionStrategy);
|
|
142
|
+
overlayConfig.panelClass = 'fd-toast-overlay';
|
|
143
|
+
return this.overlay.create(overlayConfig);
|
|
144
|
+
}
|
|
145
|
+
/**
|
|
146
|
+
* @hidden
|
|
147
|
+
* @returns Initial Position Strategy of the Toast Overlay Reference.
|
|
148
|
+
*/
|
|
149
|
+
_getPositionStrategy(positionStrategy) {
|
|
150
|
+
const lastOverlay = this._getLastToastWithSamePosition(positionStrategy);
|
|
151
|
+
const globalOverlay = this._toastsMap.get(positionStrategy)?.find((toast) => {
|
|
152
|
+
const config = toast.overlayRef.getConfig();
|
|
153
|
+
return config.positionStrategy instanceof GlobalPositionStrategy;
|
|
154
|
+
});
|
|
155
|
+
if (lastOverlay && globalOverlay) {
|
|
156
|
+
return this._composeFlexibleConnectedPosition(lastOverlay.overlayRef.overlayElement, positionStrategy);
|
|
157
|
+
}
|
|
158
|
+
return this._composeGlobalPosition(positionStrategy);
|
|
159
|
+
}
|
|
160
|
+
/**
|
|
161
|
+
* @hidden
|
|
162
|
+
* @param needlePosition
|
|
163
|
+
* @private
|
|
164
|
+
*/
|
|
165
|
+
_getLastToastWithSamePosition(needlePosition) {
|
|
166
|
+
return [...(this._toastsMap.get(needlePosition) || [])]?.reverse()[0];
|
|
167
|
+
}
|
|
168
|
+
/**
|
|
169
|
+
* @hidden
|
|
170
|
+
* @param connectedElm element to connect with.
|
|
171
|
+
* @returns Flexible Connected Position Strategy for Overlay Reference.
|
|
172
|
+
*/
|
|
173
|
+
_composeFlexibleConnectedPosition(connectedElm, positionStrategy) {
|
|
174
|
+
positionStrategy = positionStrategy || this.toastPositionStrategy;
|
|
175
|
+
return this.overlay
|
|
176
|
+
.position()
|
|
177
|
+
.flexibleConnectedTo(connectedElm)
|
|
178
|
+
.withPush(false)
|
|
179
|
+
.withPositions([positionStrategy.connected]);
|
|
180
|
+
}
|
|
181
|
+
/**
|
|
182
|
+
* @hidden
|
|
183
|
+
* @returns Default Global Position for Overlay Reference.
|
|
184
|
+
*/
|
|
185
|
+
_composeGlobalPosition(positionStrategy) {
|
|
186
|
+
const globalPosition = this.overlay.position().global();
|
|
187
|
+
const globalToastPositionStrategy = positionStrategy.global;
|
|
188
|
+
for (const [position, value] of Object.entries(globalToastPositionStrategy)) {
|
|
189
|
+
switch (position) {
|
|
190
|
+
case 'left':
|
|
191
|
+
globalPosition.left(value);
|
|
192
|
+
break;
|
|
193
|
+
case 'right':
|
|
194
|
+
globalPosition.right(value);
|
|
195
|
+
break;
|
|
196
|
+
case 'bottom':
|
|
197
|
+
globalPosition.bottom(value);
|
|
198
|
+
break;
|
|
199
|
+
case 'top':
|
|
200
|
+
globalPosition.top(value);
|
|
201
|
+
break;
|
|
202
|
+
case 'center':
|
|
203
|
+
globalPosition.centerHorizontally();
|
|
204
|
+
break;
|
|
205
|
+
case 'centerVertically':
|
|
206
|
+
globalPosition.centerVertically();
|
|
207
|
+
break;
|
|
208
|
+
}
|
|
209
|
+
}
|
|
210
|
+
return globalPosition;
|
|
211
|
+
}
|
|
212
|
+
/** @hidden */
|
|
213
|
+
_refreshOverlayPositions() {
|
|
214
|
+
this._toastsMap.forEach((toasts) => {
|
|
215
|
+
this._updateOverlayPositionStrategy(toasts);
|
|
216
|
+
});
|
|
217
|
+
}
|
|
218
|
+
/** @hidden */
|
|
219
|
+
_updateOverlayPositionStrategy(toasts) {
|
|
220
|
+
toasts.forEach((toastRef) => {
|
|
221
|
+
const positionStrategy = this._updatePositionStrategy(toastRef);
|
|
222
|
+
const overlayConfig = toastRef.overlayRef.getConfig();
|
|
223
|
+
toastRef.overlayRef.updatePositionStrategy(positionStrategy);
|
|
224
|
+
overlayConfig.positionStrategy = positionStrategy;
|
|
225
|
+
});
|
|
226
|
+
}
|
|
227
|
+
/**
|
|
228
|
+
* @hidden
|
|
229
|
+
* Updates the position of a current Overlay Reference.
|
|
230
|
+
* @param overlay Overlay reference which position needs to be updated.
|
|
231
|
+
* @returns New Position Strategy.
|
|
232
|
+
*/
|
|
233
|
+
_updatePositionStrategy(toast) {
|
|
234
|
+
const positionStrategy = toast._defaultPositionStrategy ? this.toastPositionStrategy : toast.positionStrategy;
|
|
235
|
+
const config = toast.overlayRef.getConfig();
|
|
236
|
+
if (config.positionStrategy instanceof GlobalPositionStrategy) {
|
|
237
|
+
return this._composeGlobalPosition(positionStrategy);
|
|
238
|
+
}
|
|
239
|
+
const toasts = this._toastsMap.get(positionStrategy) || [];
|
|
240
|
+
const globalOverlay = toasts?.find(({ overlayRef }) => {
|
|
241
|
+
const overlayConfig = overlayRef.getConfig();
|
|
242
|
+
return overlayConfig.positionStrategy instanceof GlobalPositionStrategy;
|
|
243
|
+
});
|
|
244
|
+
if (!globalOverlay) {
|
|
245
|
+
return this._composeGlobalPosition(positionStrategy);
|
|
246
|
+
}
|
|
247
|
+
// Get Previous overlay item.
|
|
248
|
+
const overlayItemIndex = toasts.findIndex((t) => t === toast);
|
|
249
|
+
const previousOverlay = toasts[overlayItemIndex - 1];
|
|
250
|
+
return this._composeFlexibleConnectedPosition(previousOverlay.overlayRef.overlayElement, positionStrategy);
|
|
251
|
+
}
|
|
252
|
+
}
|
|
253
|
+
BaseToastService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: BaseToastService, deps: [{ token: i1.Overlay }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
254
|
+
BaseToastService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: BaseToastService });
|
|
255
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: BaseToastService, decorators: [{
|
|
256
|
+
type: Injectable
|
|
257
|
+
}], ctorParameters: function () { return [{ type: i1.Overlay }, { type: i0.Injector }]; } });
|
|
258
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS10b2FzdC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jZGsvc3JjL2xpYi91dGlscy90b2FzdC9iYXNlLXRvYXN0LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUdILHNCQUFzQixFQUN0QixPQUFPLEVBQ1AsYUFBYSxFQUdoQixNQUFNLHNCQUFzQixDQUFDO0FBQzlCLE9BQU8sRUFBRSxlQUFlLEVBQUUsY0FBYyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDdEUsT0FBTyxFQUdILFVBQVUsRUFFVixRQUFRLEVBR1IsV0FBVyxFQUdkLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0IsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7QUFRM0MsTUFBTSxPQUFnQixnQkFBZ0I7SUE4QmxDLGNBQWM7SUFDZCxZQUE2QixPQUFnQixFQUFTLFFBQWtCO1FBQTNDLFlBQU8sR0FBUCxPQUFPLENBQVM7UUFBUyxhQUFRLEdBQVIsUUFBUSxDQUFVO1FBZnhFOzs7V0FHRztRQUNPLFlBQU8sR0FBbUIsRUFBRSxDQUFDO1FBRXZDOztXQUVHO1FBQ08sZUFBVSxHQUFHLElBQUksR0FBRyxFQUFxQyxDQUFDO1FBRXBFLGNBQWM7UUFDTixjQUFTLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQztJQUdtQyxDQUFDO0lBeUM1RTs7T0FFRztJQUNILE9BQU87UUFDSCxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUM7SUFDN0MsQ0FBQztJQUVEOztPQUVHO0lBQ0gsb0JBQW9CO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO0lBQ25DLENBQUM7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TSxNQUFNLEdBQUcsS0FBSyxDQUFDLFVBQVUsQ0FBQyxTQUFTLEVBQUUsQ0FBQztRQUU1QyxJQUFJLE1BQU0sQ0FBQyxnQkFBZ0IsWUFBWSxzQkFBc0IsRUFBRTtZQUMzRCxPQUFPLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1NBQ3hEO1FBRUQsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxFQUFFLENBQUM7UUFFM0QsTUFBTSxhQUFhLEdBQUcsTUFBTSxFQUFFLElBQUksQ0FBQyxDQUFDLEVBQUUsVUFBVSxFQUFFLEVBQUUsRUFBRTtZQUNsRCxNQUFNLGFBQWEsR0FBRyxVQUFVLENBQUMsU0FBUyxFQUFFLENBQUM7WUFFN0MsT0FBTyxhQUFhLENBQUMsZ0JBQWdCLFlBQVksc0JBQXNCLENBQUM7UUFDNUUsQ0FBQyxDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsYUFBYSxFQUFFO1lBQ2hCLE9BQU8sSUFBSSxDQUFDLHNCQUFzQixDQUFDLGdCQUFnQixDQUFDLENBQUM7U0FDeEQ7UUFFRCw2QkFBNkI7UUFDN0IsTUFBTSxnQkFBZ0IsR0FBRyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEtBQUssS0FBSyxDQUFDLENBQUM7UUFDOUQsTUFBTSxlQUFlLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixHQUFHLENBQUMsQ0FBQyxDQUFDO1FBRXJELE9BQU8sSUFBSSxDQUFDLGlDQUFpQyxDQUFDLGVBQWUsQ0FBQyxVQUFVLENBQUMsY0FBYyxFQUFFLGdCQUFnQixDQUFDLENBQUM7SUFDL0csQ0FBQzs7NkdBdFdpQixnQkFBZ0I7aUhBQWhCLGdCQUFnQjsyRkFBaEIsZ0JBQWdCO2tCQURyQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBDb21wb25lbnRUeXBlLFxuICAgIEZsZXhpYmxlQ29ubmVjdGVkUG9zaXRpb25TdHJhdGVneSxcbiAgICBHbG9iYWxQb3NpdGlvblN0cmF0ZWd5LFxuICAgIE92ZXJsYXksXG4gICAgT3ZlcmxheUNvbmZpZyxcbiAgICBPdmVybGF5UmVmLFxuICAgIFBvc2l0aW9uU3RyYXRlZ3lcbn0gZnJvbSAnQGFuZ3VsYXIvY2RrL292ZXJsYXknO1xuaW1wb3J0IHsgQ29tcG9uZW50UG9ydGFsLCBUZW1wbGF0ZVBvcnRhbCB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9wb3J0YWwnO1xuaW1wb3J0IHtcbiAgICBDb21wb25lbnRSZWYsXG4gICAgRW1iZWRkZWRWaWV3UmVmLFxuICAgIEluamVjdGFibGUsXG4gICAgSW5qZWN0aW9uVG9rZW4sXG4gICAgSW5qZWN0b3IsXG4gICAgT25EZXN0cm95LFxuICAgIFN0YXRpY1Byb3ZpZGVyLFxuICAgIFRlbXBsYXRlUmVmLFxuICAgIFR5cGUsXG4gICAgVmlld0NvbnRhaW5lclJlZlxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IEJhc2VUb2FzdFBvc2l0aW9uLCBUb2FzdEdsb2JhbFBvc2l0aW9uIH0gZnJvbSAnLi9iYXNlLXRvYXN0LXBvc2l0aW9ucyc7XG5pbXBvcnQgeyBCYXNlVG9hc3RDb25maWcgfSBmcm9tICcuL2NsYXNzZXMvYmFzZS10b2FzdC1jb25maWcnO1xuaW1wb3J0IHsgQmFzZVRvYXN0UmVmIH0gZnJvbSAnLi9jbGFzc2VzL2Jhc2UtdG9hc3QtcmVmJztcbmltcG9ydCB7IFRvYXN0Q29udGFpbmVyQ29tcG9uZW50IH0gZnJvbSAnLi9pbnRlcmZhY2VzL3RvYXN0LWNvbnRhaW5lci1jb21wb25lbnQuaW50ZXJmYWNlJztcbmltcG9ydCB7IFRvYXN0VGV4dENvbXBvbmVudCB9IGZyb20gJy4vaW50ZXJmYWNlcy90b2FzdC10ZXh0LWNvbXBvbmVudC5pbnRlcmZhY2UnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQmFzZVRvYXN0U2VydmljZTxcbiAgICBQIGV4dGVuZHMgQmFzZVRvYXN0Q29uZmlnLFxuICAgIEMgZXh0ZW5kcyBUb2FzdENvbnRhaW5lckNvbXBvbmVudDxQPiA9IFRvYXN0Q29udGFpbmVyQ29tcG9uZW50PFA+XG4+IGltcGxlbWVudHMgT25EZXN0cm95XG57XG4gICAgLyoqIENvbXBvbmVudCBmb3Igc2ltcGxlIHRleHQgdG9hc3QuICovXG4gICAgcHJvdGVjdGVkIGFic3RyYWN0IHRvYXN0VGV4dENvbXBvbmVudDogVHlwZTxUb2FzdFRleHRDb21wb25lbnQ+O1xuICAgIC8qKiBDb21wb25lbnQgZm9yIFRvYXN0IENvbnRhaW5lci4gKi9cbiAgICBwcm90ZWN0ZWQgYWJzdHJhY3QgdG9hc3RDb250YWluZXJDb21wb25lbnQ6IFR5cGU8Qz47XG4gICAgLyoqIEluamVjdGlvbiB0b2tlbiBmb3IgVG9hc3QgRGF0YS4gKi9cbiAgICBwcm90ZWN0ZWQgYWJzdHJhY3QgdG9hc3REYXRhSW5qZWN0aW9uVG9rZW46IEluamVjdGlvblRva2VuPGFueT47XG4gICAgLyoqIFRvYXN0IFBvc2l0aW9uIFN0cmF0ZWd5LiAqL1xuICAgIHByb3RlY3RlZCBhYnN0cmFjdCB0b2FzdFBvc2l0aW9uU3RyYXRlZ3k6IEJhc2VUb2FzdFBvc2l0aW9uO1xuICAgIC8qKiBUb2FzdCBkZWZhdWx0IGNvbmZpZy4gKi9cbiAgICBwcm90ZWN0ZWQgYWJzdHJhY3QgZGVmYXVsdENvbmZpZzogUDtcblxuICAgIC8qKlxuICAgICAqIEBoaWRkZW5cbiAgICAgKiBBcnJheSBvZiBhbGwgY3VycmVudCB0b2FzdHMuXG4gICAgICovXG4gICAgcHJvdGVjdGVkIF90b2FzdHM6IEJhc2VUb2FzdFJlZltdID0gW107XG5cbiAgICAvKipcbiAgICAgKiBAaGlkZW5cbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgX3RvYXN0c01hcCA9IG5ldyBNYXA8QmFzZVRvYXN0UG9zaXRpb24sIEJhc2VUb2FzdFJlZltdPigpO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9kZXN0cm95JCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByb3RlY3RlZCBjb25zdHJ1Y3RvcihwdWJsaWMgb3ZlcmxheTogT3ZlcmxheSwgcHVibGljIGluamVjdG9yOiBJbmplY3Rvcikge31cblxuICAgIC8qKlxuICAgICAqIEdldHMgVG9hc3QgQ29udGFpbmVyIHByb3ZpZGVycy5cbiAgICAgKiBAcGFyYW0gY29uZmlnIFRvYXN0IENvbmZpZy5cbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgYWJzdHJhY3QgZ2V0Q29udGFpbmVyQ29tcG9uZW50UHJvdmlkZXJzKGNvbmZpZzogUCk6IFN0YXRpY1Byb3ZpZGVyW107XG5cbiAgICAvKipcbiAgICAgKiBHZXRzIFRvYXN0IENvbnRlbnQgcHJvdmlkZXJzLlxuICAgICAqIEBwYXJhbSBjb25maWcgVG9hc3QgQ29uZmlnLlxuICAgICAqIEBwYXJhbSB0b2FzdFJlZiBUb2FzdCBSZWZlcmVuY2UuXG4gICAgICovXG4gICAgcHJvdGVjdGVkIGFic3RyYWN0IGdldENvbnRlbnRDb21wb25lbnRQcm92aWRlcnM8VD4oY29uZmlnOiBQLCB0b2FzdFJlZjogQmFzZVRvYXN0UmVmPFQ+KTogU3RhdGljUHJvdmlkZXJbXTtcblxuICAgIC8qKlxuICAgICAqIE9wZW5zIGEgVG9hc3Qgd2l0aCB0aGUgcHJvdmlkZWQgY29uZmlndXJhdGlvbi5cbiAgICAgKiBAcGFyYW0gdG9hc3QgYWNjZXB0cyBzdHJpbmcsIENvbXBvbmVudCBvciBUZW1wbGF0ZVJlZi5cbiAgICAgKi9cbiAgICBhYnN0cmFjdCBvcGVuPFQ+KFxuICAgICAgICB0b2FzdDogc3RyaW5nIHwgVHlwZTxUPiB8IFRlbXBsYXRlUmVmPFQ+XG4gICAgKTogQmFzZVRvYXN0UmVmPFRvYXN0VGV4dENvbXBvbmVudCB8IFQgfCBFbWJlZGRlZFZpZXdSZWY8VD4sIFA+O1xuXG4gICAgYWJzdHJhY3Qgb3BlbkZyb21TdHJpbmcobWVzc2FnZTogc3RyaW5nLCBjb25maWc6IFApOiBCYXNlVG9hc3RSZWY8VG9hc3RUZXh0Q29tcG9uZW50LCBQPjtcblxuICAgIC8qKlxuICAgICAqIE9wZW5zIGEgVG9hc3Qgd2l0aCBwcm92aWRlZCBjb21wb25lbnQgaW5zaWRlLlxuICAgICAqIEBwYXJhbSBjb21wb25lbnQgQ29tcG9uZW50IHRvIHJlbmRlciBpbnNpZGUgYSBUb2FzdC5cbiAgICAgKiBAcGFyYW0gY29uZmlnIFRvYXN0IGNvbmZpZ3VyYXRpb24uXG4gICAgICogQHJldHVybnMgVG9hc3QgcmVmZXJlbmNlLlxuICAgICAqL1xuICAgIGFic3RyYWN0IG9wZW5Gcm9tQ29tcG9uZW50PFQ+KGNvbXBvbmVudDogVHlwZTxUPiwgY29uZmlnOiBQKTogQmFzZVRvYXN0UmVmPFQsIFA+O1xuXG4gICAgLyoqXG4gICAgICogT3BlbnMgYSBUb2FzdCB3aXRoIHByb3ZpZGVkIFRlbXBsYXRlIFJlZmVyZW5jZS5cbiAgICAgKiBAcGFyYW0gdGVtcGxhdGUgVGVtcGxhdGUgUmVmZXJlbmNlIHRvIHJlbmRlciBpbnNpZGUgYSBUb2FzdC5cbiAgICAgKiBAcGFyYW0gY29uZmlnIFRvYXN0IGNvbmZpZ3VyYXRpb24uXG4gICAgICogQHJldHVybnMgVG9hc3QgcmVmZXJlbmNlLlxuICAgICAqL1xuICAgIGFic3RyYWN0IG9wZW5Gcm9tVGVtcGxhdGUodGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT4sIGNvbmZpZzogUCk6IEJhc2VUb2FzdFJlZjxFbWJlZGRlZFZpZXdSZWY8YW55Pj47XG5cbiAgICAvKipcbiAgICAgKiBEaXNtaXNzZXMgYWxsIFRvYXN0cy5cbiAgICAgKi9cbiAgICBoaWRlQWxsKCk6IHZvaWQge1xuICAgICAgICB0aGlzLl90b2FzdHMuZm9yRWFjaCgodCkgPT4gdC5kaXNtaXNzKCkpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJldHVybnMgYHRydWVgIGlmIHRoZXJlIGFyZSBzb21lIG1lc3NhZ2UgdG9hc3RzIGN1cnJlbnRseSBvcGVuLiBgRmFsc2VgIG90aGVyd2lzZS5cbiAgICAgKi9cbiAgICBoYXNPcGVuTWVzc2FnZVRvYXN0cygpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3RvYXN0cy5sZW5ndGggPiAwO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEBkZXByZWNhdGVkLlxuICAgICAqIFVzZSBgaGlkZUFsbCgpYCBtZXRob2QgaW5zdGVhZC5cbiAgICAgKi9cbiAgICBkaXNtaXNzQWxsKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmhpZGVBbGwoKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBTZXRzIG5ldyBwb3NpdGlvbiBzdHJhdGVneSBmb3IgYWxsIFRvYXN0IGl0ZW1zLlxuICAgICAqIEBwYXJhbSBuZXdTdHJhdGVneSBOZXcgUG9zaXRpb24gU3RyYXRlZ3lcbiAgICAgKi9cbiAgICBzZXROZXdQb3NpdGlvblN0cmF0ZWd5KG5ld1N0cmF0ZWd5OiBCYXNlVG9hc3RQb3NpdGlvbik6IHZvaWQge1xuICAgICAgICBpZiAobmV3U3RyYXRlZ3kgPT09IHRoaXMudG9hc3RQb3NpdGlvblN0cmF0ZWd5KSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLnRvYXN0UG9zaXRpb25TdHJhdGVneSA9IG5ld1N0cmF0ZWd5O1xuXG4gICAgICAgIHRoaXMuX3JlZnJlc2hPdmVybGF5UG9zaXRpb25zKCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ3JlYXRlcyBUb2FzdCBSZWZlcmVuY2UgZm9yIHByb3ZpZGVkIGNvbnRhaW5lciBhbmQgb3ZlcmxheS5cbiAgICAgKiBAcGFyYW0gY29udGFpbmVyUmVmIENvbnRhaW5lciByZWZlcmVuY2UuXG4gICAgICogQHBhcmFtIG92ZXJsYXlSZWYgT3ZlcmxheSBSZWZlcmVuY2UuXG4gICAgICovXG4gICAgcHJvdGVjdGVkIGFic3RyYWN0IGdldFRvYXN0UmVmPFQ+KFxuICAgICAgICBjb250YWluZXJSZWY6IEMsXG4gICAgICAgIG92ZXJsYXlSZWY6IE92ZXJsYXlSZWYsXG4gICAgICAgIHBvc2l0aW9uU3RyYXRlZ3k6IEJhc2VUb2FzdFBvc2l0aW9uXG4gICAgKTogQmFzZVRvYXN0UmVmPFQgfCBFbWJlZGRlZFZpZXdSZWY8YW55PiwgUD47XG5cbiAgICAvKipcbiAgICAgKiBAaGlkZGVuXG4gICAgICogUGxhY2VzIGEgbmV3IGNvbXBvbmVudCBvciBhIHRlbXBsYXRlIGFzIHRoZSBjb250ZW50IG9mIHRoZSBUb2FzdCBjb250YWluZXIuXG4gICAgICovXG4gICAgcHJvdGVjdGVkIF9hdHRhY2g8VD4oXG4gICAgICAgIGNvbnRlbnQ6IENvbXBvbmVudFR5cGU8VD4gfCBUZW1wbGF0ZVJlZjxUPixcbiAgICAgICAgdXNlckNvbmZpZz86IFBcbiAgICApOiBCYXNlVG9hc3RSZWY8VCB8IEVtYmVkZGVkVmlld1JlZjxhbnk+LCBQPiB7XG4gICAgICAgIGNvbnN0IGNvbmZpZyA9IHsgLi4udGhpcy5kZWZhdWx0Q29uZmlnLCAuLi51c2VyQ29uZmlnIH07XG4gICAgICAgIGNvbnN0IHBvc2l0aW9uU3RyYXRlZ3kgPSBjb25maWcucG9zaXRpb25TdHJhdGVneSB8fCB0aGlzLnRvYXN0UG9zaXRpb25TdHJhdGVneTtcbiAgICAgICAgY29uc3Qgb3ZlcmxheVJlZiA9IHRoaXMuX2NyZWF0ZU92ZXJsYXkocG9zaXRpb25TdHJhdGVneSk7XG4gICAgICAgIGNvbnN0IGNvbnRhaW5lclJlZiA9IHRoaXMuYXR0YWNoVG9hc3RDb250YWluZXJDb21wb25lbnQob3ZlcmxheVJlZiwgY29uZmlnKTtcbiAgICAgICAgY29uc3QgdG9hc3RSZWYgPSB0aGlzLmdldFRvYXN0UmVmPFQ+KGNvbnRhaW5lclJlZiwgb3ZlcmxheVJlZiwgcG9zaXRpb25TdHJhdGVneSk7XG4gICAgICAgIHRvYXN0UmVmLl9kZWZhdWx0UG9zaXRpb25TdHJhdGVneSA9ICFjb25maWcucG9zaXRpb25TdHJhdGVneTtcblxuICAgICAgICBpZiAoY29udGVudCBpbnN0YW5jZW9mIFRlbXBsYXRlUmVmKSB7XG4gICAgICAgICAgICAvLyBUZW1wbGF0ZVBvcnRhbCByZXF1aXJlcyB2aWV3Q29udGFpbmVyIHJlZlxuICAgICAgICAgICAgY29uc3Qgdmlld1JlZiA9IG51bGwgYXMgYW55IGFzIFZpZXdDb250YWluZXJSZWY7XG4gICAgICAgICAgICBjb25zdCBwb3J0YWwgPSBuZXcgVGVtcGxhdGVQb3J0YWwoY29udGVudCwgdmlld1JlZiwgeyAkaW1wbGljaXQ6IGNvbmZpZywgdG9hc3RSZWYgfSBhcyBhbnkpO1xuXG4gICAgICAgICAgICB0b2FzdFJlZi5pbnN0YW5jZSA9IGNvbnRhaW5lclJlZi5hdHRhY2hUZW1wbGF0ZVBvcnRhbChwb3J0YWwpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgY29uc3QgaW5qZWN0b3IgPSB0aGlzLmNyZWF0ZUNvbnRlbnRDb21wb25lbnRJbmplY3Rvcihjb25maWcsIHRvYXN0UmVmKTtcbiAgICAgICAgICAgIGNvbnN0IHBvcnRhbCA9IG5ldyBDb21wb25lbnRQb3J0YWwoY29udGVudCwgdW5kZWZpbmVkLCBpbmplY3Rvcik7XG4gICAgICAgICAgICBjb25zdCBjb250ZW50UmVmID0gY29udGFpbmVyUmVmLmF0dGFjaENvbXBvbmVudFBvcnRhbDxUPihwb3J0YWwpO1xuXG4gICAgICAgICAgICAvLyBXZSBjYW4ndCBwYXNzIHRoaXMgdmlhIHRoZSBpbmplY3RvciwgYmVjYXVzZSB0aGUgaW5qZWN0b3IgaXMgY3JlYXRlZCBlYXJsaWVyLlxuICAgICAgICAgICAgdG9hc3RSZWYuaW5zdGFuY2UgPSBjb250ZW50UmVmLmluc3RhbmNlO1xuXG4gICAgICAgICAgICBjb250ZW50UmVmLmNoYW5nZURldGVjdG9yUmVmLmRldGVjdENoYW5nZXMoKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGFsbFRvYXN0cyA9IHRoaXMuX3RvYXN0c01hcC5nZXQocG9zaXRpb25TdHJhdGVneSkgfHwgW107XG4gICAgICAgIGFsbFRvYXN0cy5wdXNoKHRvYXN0UmVmKTtcbiAgICAgICAgdGhpcy5fdG9hc3RzLnB1c2godG9hc3RSZWYpO1xuICAgICAgICB0aGlzLl90b2FzdHNNYXAuc2V0KHBvc2l0aW9uU3RyYXRlZ3ksIGFsbFRvYXN0cyk7XG5cbiAgICAgICAgdGhpcy5hbmltYXRlVG9hc3Q8VD4odG9hc3RSZWYpO1xuXG4gICAgICAgIHJldHVybiB0b2FzdFJlZjtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBdHRhY2hlcyB0aGUgVG9hc3QgY29udGFpbmVyIGNvbXBvbmVudCB0byB0aGUgb3ZlcmxheS5cbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgYXR0YWNoVG9hc3RDb250YWluZXJDb21wb25lbnQob3ZlcmxheVJlZjogT3ZlcmxheVJlZiwgY29uZmlnOiBQKTogQyB7XG4gICAgICAgIGNvbnN0IGluamVjdG9yID0gSW5qZWN0b3IuY3JlYXRlKHtcbiAgICAgICAgICAgIHBhcmVudDogdGhpcy5pbmplY3RvcixcbiAgICAgICAgICAgIHByb3ZpZGVyczogdGhpcy5nZXRDb250YWluZXJDb21wb25lbnRQcm92aWRlcnMoY29uZmlnKVxuICAgICAgICB9KTtcblxuICAgICAgICBjb25zdCBjb250YWluZXJQb3J0YWwgPSBuZXcgQ29tcG9uZW50UG9ydGFsKHRoaXMudG9hc3RDb250YWluZXJDb21wb25lbnQsIG51bGwsIGluamVjdG9yKTtcbiAgICAgICAgY29uc3QgY29udGFpbmVyUmVmOiBDb21wb25lbnRSZWY8Qz4gPSBvdmVybGF5UmVmLmF0dGFjaChjb250YWluZXJQb3J0YWwpO1xuXG4gICAgICAgIGNvbnRhaW5lclJlZi5pbnN0YW5jZS5jb25maWcgPSBjb25maWc7XG4gICAgICAgIGNvbnRhaW5lclJlZi5pbnN0YW5jZS5vdmVybGF5UmVmID0gb3ZlcmxheVJlZjtcblxuICAgICAgICByZXR1cm4gY29udGFpbmVyUmVmLmluc3RhbmNlO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENyZWF0ZXMgYW4gaW5qZWN0b3IgdG8gYmUgdXNlZCBpbnNpZGUgYSBUb2FzdCBjb21wb25lbnQuXG4gICAgICogQHBhcmFtIGNvbmZpZyBDb25maWcgdGhhdCB3YXMgdXNlZCB0byBjcmVhdGUgdGhlIFRvYXN0LlxuICAgICAqIEBwYXJhbSB0b2FzdFJlZiBSZWZlcmVuY2UgdG8gdGhlIFRvYXN0ci5cbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgY3JlYXRlQ29udGVudENvbXBvbmVudEluamVjdG9yPFQ+KGNvbmZpZzogUCwgdG9hc3RSZWY6IEJhc2VUb2FzdFJlZjxUPik6IEluamVjdG9yIHtcbiAgICAgICAgcmV0dXJuIEluamVjdG9yLmNyZWF0ZSh7XG4gICAgICAgICAgICBwYXJlbnQ6IHRoaXMuaW5qZWN0b3IsXG4gICAgICAgICAgICBwcm92aWRlcnM6IHRoaXMuZ2V0Q29udGVudENvbXBvbmVudFByb3ZpZGVycyhjb25maWcsIHRvYXN0UmVmKVxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICB0aGlzLl9kZXN0cm95JC5uZXh0KCk7XG4gICAgICAgIHRoaXMuX2Rlc3Ryb3kkLmNvbXBsZXRlKCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQW5pbWF0ZXMgdGhlIG9sZCBUb2FzdCBvdXQgYW5kIHRoZSBuZXcgb25lIGluLlxuICAgICAqL1xuICAgIHByb3RlY3RlZCBhbmltYXRlVG9hc3Q8VD4odG9hc3RSZWY6IEJhc2VUb2FzdFJlZjxUIHwgRW1iZWRkZWRWaWV3UmVmPGFueT4sIFA+KTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHBvc2l0aW9uU3RyYXRlZ3kgPSB0b2FzdFJlZi5wb3NpdGlvblN0cmF0ZWd5O1xuICAgICAgICAvLyBXaGVuIHRoZSB0b2FzdCBpcyBkaXNtaXNzZWQsIGNsZWFyIHRoZSByZWZlcmVuY2UgdG8gaXQuXG4gICAgICAgIHRvYXN0UmVmXG4gICAgICAgICAgICAuYWZ0ZXJEaXNtaXNzZWQoKVxuICAgICAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuX2Rlc3Ryb3kkKSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IGFsbFRvYXN0cyA9IHRoaXMuX3RvYXN0c01hcC5nZXQocG9zaXRpb25TdHJhdGVneSkgfHwgW107XG4gICAgICAgICAgICAgICAgYWxsVG9hc3RzLnNwbGljZShhbGxUb2FzdHMuaW5kZXhPZih0b2FzdFJlZiksIDEpO1xuICAgICAgICAgICAgICAgIHRoaXMuX3RvYXN0cy5zcGxpY2UodGhpcy5fdG9hc3RzLmluZGV4T2YodG9hc3RSZWYpLCAxKTtcbiAgICAgICAgICAgICAgICB0aGlzLl90b2FzdHNNYXAuc2V0KHBvc2l0aW9uU3RyYXRlZ3ksIGFsbFRvYXN0cyk7XG4gICAgICAgICAgICAgICAgdGhpcy5fcmVmcmVzaE92ZXJsYXlQb3NpdGlvbnMoKTtcbiAgICAgICAgICAgIH0pO1xuXG4gICAgICAgIHRvYXN0UmVmLmNvbnRhaW5lckluc3RhbmNlLmVudGVyKCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQGhpZGRlblxuICAgICAqIENyZWF0ZXMgYSBuZXcgb3ZlcmxheSBhbmQgcGxhY2VzIGl0IGluIHRoZSBjb3JyZWN0IGxvY2F0aW9uLlxuICAgICAqL1xuICAgIHByaXZhdGUgX2NyZWF0ZU92ZXJsYXkocG9zaXRpb25TdHJhdGVneTogQmFzZVRvYXN0UG9zaXRpb24pOiBPdmVybGF5UmVmIHtcbiAgICAgICAgY29uc3Qgb3ZlcmxheUNvbmZpZyA9IG5ldyBPdmVybGF5Q29uZmlnKCk7XG5cbiAgICAgICAgb3ZlcmxheUNvbmZpZy5wb3NpdGlvblN0cmF0ZWd5ID0gdGhpcy5fZ2V0UG9zaXRpb25TdHJhdGVneShwb3NpdGlvblN0cmF0ZWd5KTtcbiAgICAgICAgb3ZlcmxheUNvbmZpZy5wYW5lbENsYXNzID0gJ2ZkLXRvYXN0LW92ZXJsYXknO1xuICAgICAgICByZXR1cm4gdGhpcy5vdmVybGF5LmNyZWF0ZShvdmVybGF5Q29uZmlnKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBAaGlkZGVuXG4gICAgICogQHJldHVybnMgSW5pdGlhbCBQb3NpdGlvbiBTdHJhdGVneSBvZiB0aGUgVG9hc3QgT3ZlcmxheSBSZWZlcmVuY2UuXG4gICAgICovXG4gICAgcHJpdmF0ZSBfZ2V0UG9zaXRpb25TdHJhdGVneShwb3NpdGlvblN0cmF0ZWd5OiBCYXNlVG9hc3RQb3NpdGlvbik6IFBvc2l0aW9uU3RyYXRlZ3kge1xuICAgICAgICBjb25zdCBsYXN0T3ZlcmxheSA9IHRoaXMuX2dldExhc3RUb2FzdFdpdGhTYW1lUG9zaXRpb24ocG9zaXRpb25TdHJhdGVneSk7XG5cbiAgICAgICAgY29uc3QgZ2xvYmFsT3ZlcmxheSA9IHRoaXMuX3RvYXN0c01hcC5nZXQocG9zaXRpb25TdHJhdGVneSk/LmZpbmQoKHRvYXN0KSA9PiB7XG4gICAgICAgICAgICBjb25zdCBjb25maWcgPSB0b2FzdC5vdmVybGF5UmVmLmdldENvbmZpZygpO1xuXG4gICAgICAgICAgICByZXR1cm4gY29uZmlnLnBvc2l0aW9uU3RyYXRlZ3kgaW5zdGFuY2VvZiBHbG9iYWxQb3NpdGlvblN0cmF0ZWd5O1xuICAgICAgICB9KTtcblxuICAgICAgICBpZiAobGFzdE92ZXJsYXkgJiYgZ2xvYmFsT3ZlcmxheSkge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMuX2NvbXBvc2VGbGV4aWJsZUNvbm5lY3RlZFBvc2l0aW9uKGxhc3RPdmVybGF5Lm92ZXJsYXlSZWYub3ZlcmxheUVsZW1lbnQsIHBvc2l0aW9uU3RyYXRlZ3kpO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHRoaXMuX2NvbXBvc2VHbG9iYWxQb3NpdGlvbihwb3NpdGlvblN0cmF0ZWd5KTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBAaGlkZGVuXG4gICAgICogQHBhcmFtIG5lZWRsZVBvc2l0aW9uXG4gICAgICogQHByaXZhdGVcbiAgICAgKi9cbiAgICBwcml2YXRlIF9nZXRMYXN0VG9hc3RXaXRoU2FtZVBvc2l0aW9uKG5lZWRsZVBvc2l0aW9uOiBCYXNlVG9hc3RQb3NpdGlvbik6IEJhc2VUb2FzdFJlZjxQLCBDPiB8IHVuZGVmaW5lZCB7XG4gICAgICAgIHJldHVybiBbLi4uKHRoaXMuX3RvYXN0c01hcC5nZXQobmVlZGxlUG9zaXRpb24pIHx8IFtdKV0/LnJldmVyc2UoKVswXTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBAaGlkZGVuXG4gICAgICogQHBhcmFtIGNvbm5lY3RlZEVsbSBlbGVtZW50IHRvIGNvbm5lY3Qgd2l0aC5cbiAgICAgKiBAcmV0dXJucyBGbGV4aWJsZSBDb25uZWN0ZWQgUG9zaXRpb24gU3RyYXRlZ3kgZm9yIE92ZXJsYXkgUmVmZXJlbmNlLlxuICAgICAqL1xuICAgIHByaXZhdGUgX2NvbXBvc2VGbGV4aWJsZUNvbm5lY3RlZFBvc2l0aW9uKFxuICAgICAgICBjb25uZWN0ZWRFbG06IEhUTUxFbGVtZW50LFxuICAgICAgICBwb3NpdGlvblN0cmF0ZWd5OiBCYXNlVG9hc3RQb3NpdGlvblxuICAgICk6IEZsZXhpYmxlQ29ubmVjdGVkUG9zaXRpb25TdHJhdGVneSB7XG4gICAgICAgIHBvc2l0aW9uU3RyYXRlZ3kgPSBwb3NpdGlvblN0cmF0ZWd5IHx8IHRoaXMudG9hc3RQb3NpdGlvblN0cmF0ZWd5O1xuICAgICAgICByZXR1cm4gdGhpcy5vdmVybGF5XG4gICAgICAgICAgICAucG9zaXRpb24oKVxuICAgICAgICAgICAgLmZsZXhpYmxlQ29ubmVjdGVkVG8oY29ubmVjdGVkRWxtKVxuICAgICAgICAgICAgLndpdGhQdXNoKGZhbHNlKVxuICAgICAgICAgICAgLndpdGhQb3NpdGlvbnMoW3Bvc2l0aW9uU3RyYXRlZ3kuY29ubmVjdGVkXSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQGhpZGRlblxuICAgICAqIEByZXR1cm5zIERlZmF1bHQgR2xvYmFsIFBvc2l0aW9uIGZvciBPdmVybGF5IFJlZmVyZW5jZS5cbiAgICAgKi9cbiAgICBwcml2YXRlIF9jb21wb3NlR2xvYmFsUG9zaXRpb24ocG9zaXRpb25TdHJhdGVneTogQmFzZVRvYXN0UG9zaXRpb24pOiBHbG9iYWxQb3NpdGlvblN0cmF0ZWd5IHtcbiAgICAgICAgY29uc3QgZ2xvYmFsUG9zaXRpb24gPSB0aGlzLm92ZXJsYXkucG9zaXRpb24oKS5nbG9iYWwoKTtcblxuICAgICAgICBjb25zdCBnbG9iYWxUb2FzdFBvc2l0aW9uU3RyYXRlZ3k6IFRvYXN0R2xvYmFsUG9zaXRpb24gPSBwb3NpdGlvblN0cmF0ZWd5Lmdsb2JhbDtcblxuICAgICAgICBmb3IgKGNvbnN0IFtwb3NpdGlvbiwgdmFsdWVdIG9mIE9iamVjdC5lbnRyaWVzKGdsb2JhbFRvYXN0UG9zaXRpb25TdHJhdGVneSkpIHtcbiAgICAgICAgICAgIHN3aXRjaCAocG9zaXRpb24pIHtcbiAgICAgICAgICAgICAgICBjYXNlICdsZWZ0JzpcbiAgICAgICAgICAgICAgICAgICAgZ2xvYmFsUG9zaXRpb24ubGVmdCh2YWx1ZSk7XG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgIGNhc2UgJ3JpZ2h0JzpcbiAgICAgICAgICAgICAgICAgICAgZ2xvYmFsUG9zaXRpb24ucmlnaHQodmFsdWUpO1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICBjYXNlICdib3R0b20nOlxuICAgICAgICAgICAgICAgICAgICBnbG9iYWxQb3NpdGlvbi5ib3R0b20odmFsdWUpO1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICBjYXNlICd0b3AnOlxuICAgICAgICAgICAgICAgICAgICBnbG9iYWxQb3NpdGlvbi50b3AodmFsdWUpO1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICBjYXNlICdjZW50ZXInOlxuICAgICAgICAgICAgICAgICAgICBnbG9iYWxQb3NpdGlvbi5jZW50ZXJIb3Jpem9udGFsbHkoKTtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgY2FzZSAnY2VudGVyVmVydGljYWxseSc6XG4gICAgICAgICAgICAgICAgICAgIGdsb2JhbFBvc2l0aW9uLmNlbnRlclZlcnRpY2FsbHkoKTtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGdsb2JhbFBvc2l0aW9uO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfcmVmcmVzaE92ZXJsYXlQb3NpdGlvbnMoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX3RvYXN0c01hcC5mb3JFYWNoKCh0b2FzdHMpID0+IHtcbiAgICAgICAgICAgIHRoaXMuX3VwZGF0ZU92ZXJsYXlQb3NpdGlvblN0cmF0ZWd5KHRvYXN0cyk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfdXBkYXRlT3ZlcmxheVBvc2l0aW9uU3RyYXRlZ3kodG9hc3RzOiBCYXNlVG9hc3RSZWZbXSk6IHZvaWQge1xuICAgICAgICB0b2FzdHMuZm9yRWFjaCgodG9hc3RSZWYpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHBvc2l0aW9uU3RyYXRlZ3kgPSB0aGlzLl91cGRhdGVQb3NpdGlvblN0cmF0ZWd5KHRvYXN0UmVmKTtcbiAgICAgICAgICAgIGNvbnN0IG92ZXJsYXlDb25maWcgPSB0b2FzdFJlZi5vdmVybGF5UmVmLmdldENvbmZpZygpO1xuXG4gICAgICAgICAgICB0b2FzdFJlZi5vdmVybGF5UmVmLnVwZGF0ZVBvc2l0aW9uU3RyYXRlZ3kocG9zaXRpb25TdHJhdGVneSk7XG4gICAgICAgICAgICBvdmVybGF5Q29uZmlnLnBvc2l0aW9uU3RyYXRlZ3kgPSBwb3NpdGlvblN0cmF0ZWd5O1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBAaGlkZGVuXG4gICAgICogVXBkYXRlcyB0aGUgcG9zaXRpb24gb2YgYSBjdXJyZW50IE92ZXJsYXkgUmVmZXJlbmNlLlxuICAgICAqIEBwYXJhbSBvdmVybGF5IE92ZXJsYXkgcmVmZXJlbmNlIHdoaWNoIHBvc2l0aW9uIG5lZWRzIHRvIGJlIHVwZGF0ZWQuXG4gICAgICogQHJldHVybnMgTmV3IFBvc2l0aW9uIFN0cmF0ZWd5LlxuICAgICAqL1xuICAgIHByaXZhdGUgX3VwZGF0ZVBvc2l0aW9uU3RyYXRlZ3kodG9hc3Q6IEJhc2VUb2FzdFJlZik6IFBvc2l0aW9uU3RyYXRlZ3kge1xuICAgICAgICBjb25zdCBwb3NpdGlvblN0cmF0ZWd5ID0gdG9hc3QuX2RlZmF1bHRQb3NpdGlvblN0cmF0ZWd5ID8gdGhpcy50b2FzdFBvc2l0aW9uU3RyYXRlZ3kgOiB0b2FzdC5wb3NpdGlvblN0cmF0ZWd5O1xuICAgICAgICBjb25zdCBjb25maWcgPSB0b2FzdC5vdmVybGF5UmVmLmdldENvbmZpZygpO1xuXG4gICAgICAgIGlmIChjb25maWcucG9zaXRpb25TdHJhdGVneSBpbnN0YW5jZW9mIEdsb2JhbFBvc2l0aW9uU3RyYXRlZ3kpIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLl9jb21wb3NlR2xvYmFsUG9zaXRpb24ocG9zaXRpb25TdHJhdGVneSk7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCB0b2FzdHMgPSB0aGlzLl90b2FzdHNNYXAuZ2V0KHBvc2l0aW9uU3RyYXRlZ3kpIHx8IFtdO1xuXG4gICAgICAgIGNvbnN0IGdsb2JhbE92ZXJsYXkgPSB0b2FzdHM/LmZpbmQoKHsgb3ZlcmxheVJlZiB9KSA9PiB7XG4gICAgICAgICAgICBjb25zdCBvdmVybGF5Q29uZmlnID0gb3ZlcmxheVJlZi5nZXRDb25maWcoKTtcblxuICAgICAgICAgICAgcmV0dXJuIG92ZXJsYXlDb25maWcucG9zaXRpb25TdHJhdGVneSBpbnN0YW5jZW9mIEdsb2JhbFBvc2l0aW9uU3RyYXRlZ3k7XG4gICAgICAgIH0pO1xuXG4gICAgICAgIGlmICghZ2xvYmFsT3ZlcmxheSkge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMuX2NvbXBvc2VHbG9iYWxQb3NpdGlvbihwb3NpdGlvblN0cmF0ZWd5KTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIEdldCBQcmV2aW91cyBvdmVybGF5IGl0ZW0uXG4gICAgICAgIGNvbnN0IG92ZXJsYXlJdGVtSW5kZXggPSB0b2FzdHMuZmluZEluZGV4KCh0KSA9PiB0ID09PSB0b2FzdCk7XG4gICAgICAgIGNvbnN0IHByZXZpb3VzT3ZlcmxheSA9IHRvYXN0c1tvdmVybGF5SXRlbUluZGV4IC0gMV07XG5cbiAgICAgICAgcmV0dXJuIHRoaXMuX2NvbXBvc2VGbGV4aWJsZUNvbm5lY3RlZFBvc2l0aW9uKHByZXZpb3VzT3ZlcmxheS5vdmVybGF5UmVmLm92ZXJsYXlFbGVtZW50LCBwb3NpdGlvblN0cmF0ZWd5KTtcbiAgICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { Subject } from 'rxjs';
|
|
2
|
+
import { BaseToastDurationDismissibleRef } from '../duration-dismissible/base-toast-duration-dismissible-ref';
|
|
3
|
+
export class BaseToastActionDismissibleRef extends BaseToastDurationDismissibleRef {
|
|
4
|
+
/** @hidden */
|
|
5
|
+
constructor(containerInstance, overlayRef, positionStrategy) {
|
|
6
|
+
super(containerInstance, overlayRef, positionStrategy);
|
|
7
|
+
/** Subject for notifying the user that the Toast action-dismissible was called. */
|
|
8
|
+
this.onAction$ = new Subject();
|
|
9
|
+
/** Whether the Toast was dismissed using the action-dismissible button. */
|
|
10
|
+
this.dismissedByAction = false;
|
|
11
|
+
this.onAction().subscribe(() => this.dismiss());
|
|
12
|
+
}
|
|
13
|
+
/** Marks the Toast action-dismissible clicked. */
|
|
14
|
+
dismissWithAction(reason = null) {
|
|
15
|
+
if (!this.onAction$.closed) {
|
|
16
|
+
this.dismissedByAction = true;
|
|
17
|
+
this.onAction$.next(reason);
|
|
18
|
+
this.onAction$.complete();
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
/** Gets an observable that is notified when the Toast action-dismissible is called. */
|
|
22
|
+
onAction() {
|
|
23
|
+
return this.onAction$;
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* @hidden
|
|
27
|
+
* Cleans up the DOM after closing.
|
|
28
|
+
*/
|
|
29
|
+
_finishDismiss() {
|
|
30
|
+
if (!this.onAction$.closed) {
|
|
31
|
+
this.onAction$.complete();
|
|
32
|
+
}
|
|
33
|
+
super._finishDismiss();
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS10b2FzdC1hY3Rpb24tZGlzbWlzc2libGUtcmVmLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jZGsvc3JjL2xpYi91dGlscy90b2FzdC9jbGFzc2VzL2FjdGlvbi1kaXNtaXNzaWJsZS9iYXNlLXRvYXN0LWFjdGlvbi1kaXNtaXNzaWJsZS1yZWYudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFjLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUUzQyxPQUFPLEVBQUUsK0JBQStCLEVBQUUsTUFBTSw2REFBNkQsQ0FBQztBQUk5RyxNQUFNLE9BQWdCLDZCQUdwQixTQUFRLCtCQUFxQztJQU8zQyxjQUFjO0lBQ2QsWUFDSSxpQkFBb0UsRUFDcEUsVUFBc0IsRUFDdEIsZ0JBQW1DO1FBRW5DLEtBQUssQ0FBQyxpQkFBaUIsRUFBRSxVQUFVLEVBQUUsZ0JBQWdCLENBQUMsQ0FBQztRQVozRCxtRkFBbUY7UUFDaEUsY0FBUyxHQUFHLElBQUksT0FBTyxFQUFpQixDQUFDO1FBRTVELDJFQUEyRTtRQUNqRSxzQkFBaUIsR0FBRyxLQUFLLENBQUM7UUFVaEMsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQztJQUNwRCxDQUFDO0lBRUQsa0RBQWtEO0lBQ2xELGlCQUFpQixDQUFDLFNBQXdCLElBQUk7UUFDMUMsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxFQUFFO1lBQ3hCLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxJQUFJLENBQUM7WUFFOUIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7WUFDNUIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLEVBQUUsQ0FBQztTQUM3QjtJQUNMLENBQUM7SUFFRCx1RkFBdUY7SUFDdkYsUUFBUTtRQUNKLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQztJQUMxQixDQUFDO0lBRUQ7OztPQUdHO0lBQ2dCLGNBQWM7UUFDN0IsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxFQUFFO1lBQ3hCLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxFQUFFLENBQUM7U0FDN0I7UUFFRCxLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7SUFDM0IsQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgT3ZlcmxheVJlZiB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9vdmVybGF5JztcbmltcG9ydCB7IE9ic2VydmFibGUsIFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEJhc2VUb2FzdFBvc2l0aW9uIH0gZnJvbSAnLi4vLi4vYmFzZS10b2FzdC1wb3NpdGlvbnMnO1xuaW1wb3J0IHsgQmFzZVRvYXN0RHVyYXRpb25EaXNtaXNzaWJsZVJlZiB9IGZyb20gJy4uL2R1cmF0aW9uLWRpc21pc3NpYmxlL2Jhc2UtdG9hc3QtZHVyYXRpb24tZGlzbWlzc2libGUtcmVmJztcbmltcG9ydCB7IEJhc2VUb2FzdER1cmF0aW9uRGlzbWlzc2libGVDb250YWluZXJDb21wb25lbnQgfSBmcm9tICcuLi9kdXJhdGlvbi1kaXNtaXNzaWJsZS9iYXNlLXRvYXN0LWR1cmF0aW9uLWRpc21pc3NpYmxlLWNvbnRhaW5lci5jb21wb25lbnQnO1xuaW1wb3J0IHsgQmFzZVRvYXN0Q29uZmlnIH0gZnJvbSAnLi4vYmFzZS10b2FzdC1jb25maWcnO1xuXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQmFzZVRvYXN0QWN0aW9uRGlzbWlzc2libGVSZWY8XG4gICAgVCA9IGFueSxcbiAgICBQIGV4dGVuZHMgQmFzZVRvYXN0Q29uZmlnPFQ+ID0gYW55XG4+IGV4dGVuZHMgQmFzZVRvYXN0RHVyYXRpb25EaXNtaXNzaWJsZVJlZjxULCBQPiB7XG4gICAgLyoqIFN1YmplY3QgZm9yIG5vdGlmeWluZyB0aGUgdXNlciB0aGF0IHRoZSBUb2FzdCBhY3Rpb24tZGlzbWlzc2libGUgd2FzIGNhbGxlZC4gKi9cbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgb25BY3Rpb24kID0gbmV3IFN1YmplY3Q8c3RyaW5nIHwgbnVsbD4oKTtcblxuICAgIC8qKiBXaGV0aGVyIHRoZSBUb2FzdCB3YXMgZGlzbWlzc2VkIHVzaW5nIHRoZSBhY3Rpb24tZGlzbWlzc2libGUgYnV0dG9uLiAqL1xuICAgIHByb3RlY3RlZCBkaXNtaXNzZWRCeUFjdGlvbiA9IGZhbHNlO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcm90ZWN0ZWQgY29uc3RydWN0b3IoXG4gICAgICAgIGNvbnRhaW5lckluc3RhbmNlOiBCYXNlVG9hc3REdXJhdGlvbkRpc21pc3NpYmxlQ29udGFpbmVyQ29tcG9uZW50PFA+LFxuICAgICAgICBvdmVybGF5UmVmOiBPdmVybGF5UmVmLFxuICAgICAgICBwb3NpdGlvblN0cmF0ZWd5OiBCYXNlVG9hc3RQb3NpdGlvblxuICAgICkge1xuICAgICAgICBzdXBlcihjb250YWluZXJJbnN0YW5jZSwgb3ZlcmxheVJlZiwgcG9zaXRpb25TdHJhdGVneSk7XG5cbiAgICAgICAgdGhpcy5vbkFjdGlvbigpLnN1YnNjcmliZSgoKSA9PiB0aGlzLmRpc21pc3MoKSk7XG4gICAgfVxuXG4gICAgLyoqIE1hcmtzIHRoZSBUb2FzdCBhY3Rpb24tZGlzbWlzc2libGUgY2xpY2tlZC4gKi9cbiAgICBkaXNtaXNzV2l0aEFjdGlvbihyZWFzb246IHN0cmluZyB8IG51bGwgPSBudWxsKTogdm9pZCB7XG4gICAgICAgIGlmICghdGhpcy5vbkFjdGlvbiQuY2xvc2VkKSB7XG4gICAgICAgICAgICB0aGlzLmRpc21pc3NlZEJ5QWN0aW9uID0gdHJ1ZTtcblxuICAgICAgICAgICAgdGhpcy5vbkFjdGlvbiQubmV4dChyZWFzb24pO1xuICAgICAgICAgICAgdGhpcy5vbkFjdGlvbiQuY29tcGxldGUoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKiBHZXRzIGFuIG9ic2VydmFibGUgdGhhdCBpcyBub3RpZmllZCB3aGVuIHRoZSBUb2FzdCBhY3Rpb24tZGlzbWlzc2libGUgaXMgY2FsbGVkLiAqL1xuICAgIG9uQWN0aW9uKCk6IE9ic2VydmFibGU8c3RyaW5nIHwgbnVsbD4ge1xuICAgICAgICByZXR1cm4gdGhpcy5vbkFjdGlvbiQ7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQGhpZGRlblxuICAgICAqIENsZWFucyB1cCB0aGUgRE9NIGFmdGVyIGNsb3NpbmcuXG4gICAgICovXG4gICAgcHJvdGVjdGVkIG92ZXJyaWRlIF9maW5pc2hEaXNtaXNzKCk6IHZvaWQge1xuICAgICAgICBpZiAoIXRoaXMub25BY3Rpb24kLmNsb3NlZCkge1xuICAgICAgICAgICAgdGhpcy5vbkFjdGlvbiQuY29tcGxldGUoKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHN1cGVyLl9maW5pc2hEaXNtaXNzKCk7XG4gICAgfVxufVxuIl19
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
import { Directive, HostBinding, HostListener, inject, NgZone } from '@angular/core';
|
|
2
|
+
import { take } from 'rxjs';
|
|
3
|
+
import { BaseToastContainerComponent } from './base-toast-container.component';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
export class BaseToastAnimatedContainerComponent extends BaseToastContainerComponent {
|
|
6
|
+
/** @hidden */
|
|
7
|
+
constructor(config) {
|
|
8
|
+
super(config);
|
|
9
|
+
/**
|
|
10
|
+
* @hidden
|
|
11
|
+
* The state of the Message Toast animations.
|
|
12
|
+
*/
|
|
13
|
+
this._animationState = 'void';
|
|
14
|
+
/**
|
|
15
|
+
* @hidden
|
|
16
|
+
* Whether the animations should be disabled.
|
|
17
|
+
*/
|
|
18
|
+
this._animationsDisabled = false;
|
|
19
|
+
/** @hidden */
|
|
20
|
+
this._ngZone = inject(NgZone);
|
|
21
|
+
this._animationsDisabled = !config.animated;
|
|
22
|
+
}
|
|
23
|
+
/** Begin animation of Message Toast entrance into view. */
|
|
24
|
+
enter() {
|
|
25
|
+
this._animationState = 'visible';
|
|
26
|
+
}
|
|
27
|
+
/** Begin animation of Message Toast removal. */
|
|
28
|
+
exit() {
|
|
29
|
+
this._animationState = 'hidden';
|
|
30
|
+
}
|
|
31
|
+
/** @hidden */
|
|
32
|
+
ngOnDestroy() {
|
|
33
|
+
this._completeExit();
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* @hidden
|
|
37
|
+
* Handle end of animations, updating the state of the Message Toast.
|
|
38
|
+
*/
|
|
39
|
+
_onAnimationEnd(event) {
|
|
40
|
+
const { fromState, toState } = event;
|
|
41
|
+
if ((toState === 'void' && fromState !== 'void') || toState === 'hidden') {
|
|
42
|
+
this._completeExit();
|
|
43
|
+
}
|
|
44
|
+
if (toState === 'visible') {
|
|
45
|
+
// Note: we shouldn't use `this` inside the zone callback,
|
|
46
|
+
// because it can cause a memory leak.
|
|
47
|
+
const onEnter = this.onEnter$;
|
|
48
|
+
this._ngZone.run(() => {
|
|
49
|
+
onEnter.next();
|
|
50
|
+
onEnter.complete();
|
|
51
|
+
});
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* @hidden
|
|
56
|
+
* Waits for the zone to settle before removing the element. Helps prevent
|
|
57
|
+
* errors where we end up removing an element which is in the middle of an animation.
|
|
58
|
+
*/
|
|
59
|
+
_completeExit() {
|
|
60
|
+
// Note: we shouldn't use `this` inside the zone callback,
|
|
61
|
+
// because it can cause a memory leak.
|
|
62
|
+
const onExit = this.onExit$;
|
|
63
|
+
this._ngZone.onMicrotaskEmpty.pipe(take(1)).subscribe(() => {
|
|
64
|
+
onExit.next();
|
|
65
|
+
onExit.complete();
|
|
66
|
+
});
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
BaseToastAnimatedContainerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: BaseToastAnimatedContainerComponent, deps: "invalid", target: i0.ɵɵFactoryTarget.Directive });
|
|
70
|
+
BaseToastAnimatedContainerComponent.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.8", type: BaseToastAnimatedContainerComponent, host: { listeners: { "@state.done": "_onAnimationEnd($event)" }, properties: { "@state": "this._animationState", "@.disabled": "this._animationsDisabled" } }, usesInheritance: true, ngImport: i0 });
|
|
71
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: BaseToastAnimatedContainerComponent, decorators: [{
|
|
72
|
+
type: Directive
|
|
73
|
+
}], ctorParameters: function () { return [{ type: undefined }]; }, propDecorators: { _animationState: [{
|
|
74
|
+
type: HostBinding,
|
|
75
|
+
args: ['@state']
|
|
76
|
+
}], _animationsDisabled: [{
|
|
77
|
+
type: HostBinding,
|
|
78
|
+
args: ['@.disabled']
|
|
79
|
+
}], _onAnimationEnd: [{
|
|
80
|
+
type: HostListener,
|
|
81
|
+
args: ['@state.done', ['$event']]
|
|
82
|
+
}] } });
|
|
83
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS10b2FzdC1hbmltYXRlZC1jb250YWluZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jZGsvc3JjL2xpYi91dGlscy90b2FzdC9jbGFzc2VzL2Jhc2UtdG9hc3QtYW5pbWF0ZWQtY29udGFpbmVyLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBYSxNQUFNLGVBQWUsQ0FBQztBQUNoRyxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRTVCLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLGtDQUFrQyxDQUFDOztBQUcvRSxNQUFNLE9BQWdCLG1DQUNsQixTQUFRLDJCQUE4QjtJQW9CdEMsY0FBYztJQUNkLFlBQVksTUFBUztRQUNqQixLQUFLLENBQUMsTUFBTSxDQUFDLENBQUM7UUFuQmxCOzs7V0FHRztRQUVLLG9CQUFlLEdBQUcsTUFBTSxDQUFDO1FBRWpDOzs7V0FHRztRQUVLLHdCQUFtQixHQUFHLEtBQUssQ0FBQztRQUVwQyxjQUFjO1FBQ0osWUFBTyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUsvQixJQUFJLENBQUMsbUJBQW1CLEdBQUcsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDO0lBQ2hELENBQUM7SUFFRCwyREFBMkQ7SUFDM0QsS0FBSztRQUNELElBQUksQ0FBQyxlQUFlLEdBQUcsU0FBUyxDQUFDO0lBQ3JDLENBQUM7SUFFRCxnREFBZ0Q7SUFDaEQsSUFBSTtRQUNBLElBQUksQ0FBQyxlQUFlLEdBQUcsUUFBUSxDQUFDO0lBQ3BDLENBQUM7SUFFRCxjQUFjO0lBQ2QsV0FBVztRQUNQLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUN6QixDQUFDO0lBRUQ7OztPQUdHO0lBRUssZUFBZSxDQUFDLEtBQXFCO1FBQ3pDLE1BQU0sRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFFLEdBQUcsS0FBSyxDQUFDO1FBRXJDLElBQUksQ0FBQyxPQUFPLEtBQUssTUFBTSxJQUFJLFNBQVMsS0FBSyxNQUFNLENBQUMsSUFBSSxPQUFPLEtBQUssUUFBUSxFQUFFO1lBQ3RFLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztTQUN4QjtRQUVELElBQUksT0FBTyxLQUFLLFNBQVMsRUFBRTtZQUN2QiwwREFBMEQ7WUFDMUQsc0NBQXNDO1lBQ3RDLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUM7WUFFOUIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFO2dCQUNsQixPQUFPLENBQUMsSUFBSSxFQUFFLENBQUM7Z0JBQ2YsT0FBTyxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ3ZCLENBQUMsQ0FBQyxDQUFDO1NBQ047SUFDTCxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNLLGFBQWE7UUFDakIsMERBQTBEO1FBQzFELHNDQUFzQztRQUN0QyxNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDO1FBRTVCLElBQUksQ0FBQyxPQUFPLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDdkQsTUFBTSxDQUFDLElBQUksRUFBRSxDQUFDO1lBQ2QsTUFBTSxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ3RCLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQzs7Z0lBaEZpQixtQ0FBbUM7b0hBQW5DLG1DQUFtQzsyRkFBbkMsbUNBQW1DO2tCQUR4RCxTQUFTOzZGQVVFLGVBQWU7c0JBRHRCLFdBQVc7dUJBQUMsUUFBUTtnQkFRYixtQkFBbUI7c0JBRDFCLFdBQVc7dUJBQUMsWUFBWTtnQkFnQ2pCLGVBQWU7c0JBRHRCLFlBQVk7dUJBQUMsYUFBYSxFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQW5pbWF0aW9uRXZlbnQgfSBmcm9tICdAYW5ndWxhci9hbmltYXRpb25zJztcbmltcG9ydCB7IERpcmVjdGl2ZSwgSG9zdEJpbmRpbmcsIEhvc3RMaXN0ZW5lciwgaW5qZWN0LCBOZ1pvbmUsIE9uRGVzdHJveSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgdGFrZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQmFzZUFuaW1hdGVkVG9hc3RDb25maWcgfSBmcm9tICcuL2Jhc2UtdG9hc3QtY29uZmlnJztcbmltcG9ydCB7IEJhc2VUb2FzdENvbnRhaW5lckNvbXBvbmVudCB9IGZyb20gJy4vYmFzZS10b2FzdC1jb250YWluZXIuY29tcG9uZW50JztcblxuQERpcmVjdGl2ZSgpXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQmFzZVRvYXN0QW5pbWF0ZWRDb250YWluZXJDb21wb25lbnQ8UCBleHRlbmRzIEJhc2VBbmltYXRlZFRvYXN0Q29uZmlnPlxuICAgIGV4dGVuZHMgQmFzZVRvYXN0Q29udGFpbmVyQ29tcG9uZW50PFA+XG4gICAgaW1wbGVtZW50cyBPbkRlc3Ryb3lcbntcbiAgICAvKipcbiAgICAgKiBAaGlkZGVuXG4gICAgICogVGhlIHN0YXRlIG9mIHRoZSBNZXNzYWdlIFRvYXN0IGFuaW1hdGlvbnMuXG4gICAgICovXG4gICAgQEhvc3RCaW5kaW5nKCdAc3RhdGUnKVxuICAgIHByaXZhdGUgX2FuaW1hdGlvblN0YXRlID0gJ3ZvaWQnO1xuXG4gICAgLyoqXG4gICAgICogQGhpZGRlblxuICAgICAqIFdoZXRoZXIgdGhlIGFuaW1hdGlvbnMgc2hvdWxkIGJlIGRpc2FibGVkLlxuICAgICAqL1xuICAgIEBIb3N0QmluZGluZygnQC5kaXNhYmxlZCcpXG4gICAgcHJpdmF0ZSBfYW5pbWF0aW9uc0Rpc2FibGVkID0gZmFsc2U7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByb3RlY3RlZCBfbmdab25lID0gaW5qZWN0KE5nWm9uZSk7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIGNvbnN0cnVjdG9yKGNvbmZpZzogUCkge1xuICAgICAgICBzdXBlcihjb25maWcpO1xuICAgICAgICB0aGlzLl9hbmltYXRpb25zRGlzYWJsZWQgPSAhY29uZmlnLmFuaW1hdGVkO1xuICAgIH1cblxuICAgIC8qKiBCZWdpbiBhbmltYXRpb24gb2YgTWVzc2FnZSBUb2FzdCBlbnRyYW5jZSBpbnRvIHZpZXcuICovXG4gICAgZW50ZXIoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX2FuaW1hdGlvblN0YXRlID0gJ3Zpc2libGUnO1xuICAgIH1cblxuICAgIC8qKiBCZWdpbiBhbmltYXRpb24gb2YgTWVzc2FnZSBUb2FzdCByZW1vdmFsLiAqL1xuICAgIGV4aXQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX2FuaW1hdGlvblN0YXRlID0gJ2hpZGRlbic7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fY29tcGxldGVFeGl0KCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQGhpZGRlblxuICAgICAqIEhhbmRsZSBlbmQgb2YgYW5pbWF0aW9ucywgdXBkYXRpbmcgdGhlIHN0YXRlIG9mIHRoZSBNZXNzYWdlIFRvYXN0LlxuICAgICAqL1xuICAgIEBIb3N0TGlzdGVuZXIoJ0BzdGF0ZS5kb25lJywgWyckZXZlbnQnXSlcbiAgICBwcml2YXRlIF9vbkFuaW1hdGlvbkVuZChldmVudDogQW5pbWF0aW9uRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgeyBmcm9tU3RhdGUsIHRvU3RhdGUgfSA9IGV2ZW50O1xuXG4gICAgICAgIGlmICgodG9TdGF0ZSA9PT0gJ3ZvaWQnICYmIGZyb21TdGF0ZSAhPT0gJ3ZvaWQnKSB8fCB0b1N0YXRlID09PSAnaGlkZGVuJykge1xuICAgICAgICAgICAgdGhpcy5fY29tcGxldGVFeGl0KCk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodG9TdGF0ZSA9PT0gJ3Zpc2libGUnKSB7XG4gICAgICAgICAgICAvLyBOb3RlOiB3ZSBzaG91bGRuJ3QgdXNlIGB0aGlzYCBpbnNpZGUgdGhlIHpvbmUgY2FsbGJhY2ssXG4gICAgICAgICAgICAvLyBiZWNhdXNlIGl0IGNhbiBjYXVzZSBhIG1lbW9yeSBsZWFrLlxuICAgICAgICAgICAgY29uc3Qgb25FbnRlciA9IHRoaXMub25FbnRlciQ7XG5cbiAgICAgICAgICAgIHRoaXMuX25nWm9uZS5ydW4oKCkgPT4ge1xuICAgICAgICAgICAgICAgIG9uRW50ZXIubmV4dCgpO1xuICAgICAgICAgICAgICAgIG9uRW50ZXIuY29tcGxldGUoKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQGhpZGRlblxuICAgICAqIFdhaXRzIGZvciB0aGUgem9uZSB0byBzZXR0bGUgYmVmb3JlIHJlbW92aW5nIHRoZSBlbGVtZW50LiBIZWxwcyBwcmV2ZW50XG4gICAgICogZXJyb3JzIHdoZXJlIHdlIGVuZCB1cCByZW1vdmluZyBhbiBlbGVtZW50IHdoaWNoIGlzIGluIHRoZSBtaWRkbGUgb2YgYW4gYW5pbWF0aW9uLlxuICAgICAqL1xuICAgIHByaXZhdGUgX2NvbXBsZXRlRXhpdCgpOiB2b2lkIHtcbiAgICAgICAgLy8gTm90ZTogd2Ugc2hvdWxkbid0IHVzZSBgdGhpc2AgaW5zaWRlIHRoZSB6b25lIGNhbGxiYWNrLFxuICAgICAgICAvLyBiZWNhdXNlIGl0IGNhbiBjYXVzZSBhIG1lbW9yeSBsZWFrLlxuICAgICAgICBjb25zdCBvbkV4aXQgPSB0aGlzLm9uRXhpdCQ7XG5cbiAgICAgICAgdGhpcy5fbmdab25lLm9uTWljcm90YXNrRW1wdHkucGlwZSh0YWtlKDEpKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgb25FeGl0Lm5leHQoKTtcbiAgICAgICAgICAgIG9uRXhpdC5jb21wbGV0ZSgpO1xuICAgICAgICB9KTtcbiAgICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { ToastBottomCenterPosition } from '../base-toast-positions';
|
|
2
|
+
/**
|
|
3
|
+
* Base Configuration class used when opening a Toast.
|
|
4
|
+
*/
|
|
5
|
+
export class BaseToastConfig {
|
|
6
|
+
constructor() {
|
|
7
|
+
/**
|
|
8
|
+
* Toast position strategy.
|
|
9
|
+
*/
|
|
10
|
+
this.positionStrategy = ToastBottomCenterPosition;
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* Base Configuration class used when opening an animated Toast.
|
|
15
|
+
*/
|
|
16
|
+
export class BaseAnimatedToastConfig extends BaseToastConfig {
|
|
17
|
+
constructor() {
|
|
18
|
+
super(...arguments);
|
|
19
|
+
/** Whether the toast should be animated. */
|
|
20
|
+
this.animated = true;
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS10b2FzdC1jb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2Nkay9zcmMvbGliL3V0aWxzL3RvYXN0L2NsYXNzZXMvYmFzZS10b2FzdC1jb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFxQix5QkFBeUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRXZGOztHQUVHO0FBQ0gsTUFBTSxPQUFPLGVBQWU7SUFBNUI7UUFXSTs7V0FFRztRQUNILHFCQUFnQixHQUF1Qix5QkFBeUIsQ0FBQztJQW9DckUsQ0FBQztDQUFBO0FBRUQ7O0dBRUc7QUFDSCxNQUFNLE9BQU8sdUJBQWlDLFNBQVEsZUFBa0I7SUFBeEU7O1FBQ0ksNENBQTRDO1FBQzVDLGFBQVEsR0FBSSxJQUFJLENBQUM7SUFDckIsQ0FBQztDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQmFzZVRvYXN0UG9zaXRpb24sIFRvYXN0Qm90dG9tQ2VudGVyUG9zaXRpb24gfSBmcm9tICcuLi9iYXNlLXRvYXN0LXBvc2l0aW9ucyc7XG5cbi8qKlxuICogQmFzZSBDb25maWd1cmF0aW9uIGNsYXNzIHVzZWQgd2hlbiBvcGVuaW5nIGEgVG9hc3QuXG4gKi9cbmV4cG9ydCBjbGFzcyBCYXNlVG9hc3RDb25maWc8VCA9IGFueT4ge1xuICAgIC8qKlxuICAgICAqIERhdGEgYmVpbmcgaW5qZWN0ZWQgaW50byB0aGUgY2hpbGQgY29tcG9uZW50LlxuICAgICAqL1xuICAgIGRhdGE/OiBUO1xuXG4gICAgLyoqXG4gICAgICogQXJpYS1sYWJlbCBmb3IgdGhlIG1lc3NhZ2UgdG9hc3QgY29tcG9uZW50IGVsZW1lbnQuXG4gICAgICovXG4gICAgYXJpYUxhYmVsPzogc3RyaW5nO1xuXG4gICAgLyoqXG4gICAgICogVG9hc3QgcG9zaXRpb24gc3RyYXRlZ3kuXG4gICAgICovXG4gICAgcG9zaXRpb25TdHJhdGVneT86IEJhc2VUb2FzdFBvc2l0aW9uID0gVG9hc3RCb3R0b21DZW50ZXJQb3NpdGlvbjtcblxuICAgIC8qKlxuICAgICAqIFRvYXN0IG1pbmltdW0gd2lkdGguXG4gICAgICovXG4gICAgbWluV2lkdGg/OiBudW1iZXIgfCBzdHJpbmc7XG5cbiAgICAvKipcbiAgICAgKiBUb2FzdCBtYXhpbXVtIHdpZHRoLlxuICAgICAqL1xuICAgIG1heFdpZHRoPzogbnVtYmVyIHwgc3RyaW5nO1xuXG4gICAgLyoqXG4gICAgICogVG9hc3QgbWluaW11bSBoZWlnaHQuXG4gICAgICovXG4gICAgbWluSGVpZ2h0PzogbnVtYmVyIHwgc3RyaW5nO1xuXG4gICAgLyoqXG4gICAgICogVG9hc3QgbWF4aW11bSBoZWlnaHQuXG4gICAgICovXG4gICAgbWF4SGVpZ2h0PzogbnVtYmVyIHwgc3RyaW5nO1xuXG4gICAgLyoqXG4gICAgICogVG9hc3Qgd2lkdGguXG4gICAgICovXG4gICAgd2lkdGg/OiBudW1iZXIgfCBzdHJpbmc7XG5cbiAgICAvKipcbiAgICAgKiBUb2FzdCBoZWlnaHQuXG4gICAgICovXG4gICAgaGVpZ2h0PzogbnVtYmVyIHwgc3RyaW5nO1xuXG4gICAgLyoqXG4gICAgICogVG9hc3QgSUQuXG4gICAgICovXG4gICAgaWQ/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogQmFzZSBDb25maWd1cmF0aW9uIGNsYXNzIHVzZWQgd2hlbiBvcGVuaW5nIGFuIGFuaW1hdGVkIFRvYXN0LlxuICovXG5leHBvcnQgY2xhc3MgQmFzZUFuaW1hdGVkVG9hc3RDb25maWc8VCA9IGFueT4gZXh0ZW5kcyBCYXNlVG9hc3RDb25maWc8VD4ge1xuICAgIC8qKiBXaGV0aGVyIHRoZSB0b2FzdCBzaG91bGQgYmUgYW5pbWF0ZWQuICovXG4gICAgYW5pbWF0ZWQ/ID0gdHJ1ZTtcbn1cbiJdfQ==
|