@acorex/components 18.12.38 → 18.12.40
Sign up to get free protection for your applications and to get access to all the features.
- package/common/lib/components/button-base-component.class.d.ts +10 -10
- package/common/lib/components/interactive-component.class.d.ts +11 -11
- package/common/lib/types/base/button.type.d.ts +8 -0
- package/common/lib/types/base/color.type.d.ts +7 -0
- package/common/lib/types/base/events.types.d.ts +1 -1
- package/common/lib/types/base/index.d.ts +5 -0
- package/common/lib/types/base/interactive.type.d.ts +13 -0
- package/common/lib/types/base/look.type.d.ts +7 -0
- package/common/lib/types/base/value.type.d.ts +9 -0
- package/esm2022/button-group/lib/button-group.component.mjs +2 -2
- package/esm2022/common/lib/components/base-component.class.mjs +1 -1
- package/esm2022/common/lib/components/button-base-component.class.mjs +11 -11
- package/esm2022/common/lib/components/interactive-component.class.mjs +12 -12
- package/esm2022/common/lib/components/selection-base.component.class.mjs +13 -5
- package/esm2022/common/lib/types/base/button.type.mjs +18 -0
- package/esm2022/common/lib/types/base/color.type.mjs +16 -0
- package/esm2022/common/lib/types/base/events.types.mjs +1 -1
- package/esm2022/common/lib/types/base/index.mjs +6 -1
- package/esm2022/common/lib/types/base/interactive.type.mjs +31 -0
- package/esm2022/common/lib/types/base/look.type.mjs +16 -0
- package/esm2022/common/lib/types/base/value.type.mjs +19 -0
- package/esm2022/form/lib/validation-rule.directive.mjs +1 -1
- package/esm2022/notification/lib/notification.component.mjs +4 -4
- package/esm2022/notification/lib/notification.service.mjs +53 -36
- package/esm2022/otp/lib/otp.component.mjs +2 -2
- package/esm2022/side-menu/lib/side-menu.component.mjs +2 -2
- package/esm2022/tabs/lib/tabs.component.mjs +2 -2
- package/esm2022/toast/lib/toast.component.mjs +2 -2
- package/esm2022/toast/lib/toast.config.mjs +2 -1
- package/esm2022/toast/lib/toast.service.mjs +130 -36
- package/esm2022/wysiwyg/lib/wysiwyg/wysiwyg-view/wysiwyg-view.component.mjs +2 -2
- package/fesm2022/acorex-components-button-group.mjs +2 -2
- package/fesm2022/acorex-components-button-group.mjs.map +1 -1
- package/fesm2022/acorex-components-common.mjs +124 -28
- package/fesm2022/acorex-components-common.mjs.map +1 -1
- package/fesm2022/acorex-components-form.mjs.map +1 -1
- package/fesm2022/acorex-components-notification.mjs +54 -37
- package/fesm2022/acorex-components-notification.mjs.map +1 -1
- package/fesm2022/acorex-components-otp.mjs +2 -2
- package/fesm2022/acorex-components-otp.mjs.map +1 -1
- package/fesm2022/acorex-components-side-menu.mjs +2 -2
- package/fesm2022/acorex-components-side-menu.mjs.map +1 -1
- package/fesm2022/acorex-components-tabs.mjs +2 -2
- package/fesm2022/acorex-components-tabs.mjs.map +1 -1
- package/fesm2022/acorex-components-toast.mjs +130 -35
- package/fesm2022/acorex-components-toast.mjs.map +1 -1
- package/fesm2022/acorex-components-wysiwyg.mjs +2 -2
- package/fesm2022/acorex-components-wysiwyg.mjs.map +1 -1
- package/form/lib/validation-rule.directive.d.ts +1 -1
- package/notification/lib/notification.component.d.ts +3 -3
- package/notification/lib/notification.service.d.ts +2 -0
- package/package.json +1 -1
- package/toast/lib/toast.component.d.ts +1 -1
- package/toast/lib/toast.config.d.ts +1 -0
- package/toast/lib/toast.service.d.ts +9 -1
@@ -1,6 +1,6 @@
|
|
1
1
|
import { Dialog } from '@angular/cdk/dialog';
|
2
2
|
import { GlobalPositionStrategy, ScrollStrategyOptions } from '@angular/cdk/overlay';
|
3
|
-
import { Injectable, inject } from '@angular/core';
|
3
|
+
import { Injectable, effect, inject, signal } from '@angular/core';
|
4
4
|
import { AXToastComponent } from './toast.component';
|
5
5
|
import { AX_TOAST_CONFIG } from './toast.config';
|
6
6
|
import * as i0 from "@angular/core";
|
@@ -10,7 +10,36 @@ export class AXToastService {
|
|
10
10
|
this.scrollStrategyOptions = scrollStrategyOptions;
|
11
11
|
this.dialog = inject(Dialog);
|
12
12
|
this.defaultConfig = inject(AX_TOAST_CONFIG);
|
13
|
+
this.activeToasts = signal([]);
|
14
|
+
this.reservedToasts = signal([]);
|
15
|
+
this.toastCounterElement = signal(null);
|
16
|
+
this.reserveCounter = signal(0);
|
17
|
+
this.moreToastsColor = signal('primary');
|
13
18
|
this.scrollStrategy = this.scrollStrategyOptions.noop();
|
19
|
+
if (this.defaultConfig.limit) {
|
20
|
+
effect(() => {
|
21
|
+
if (this.activeToasts().length <= this.defaultConfig.limit - 1 && this.reservedToasts().length) {
|
22
|
+
this.show(this.reservedToasts()[0]);
|
23
|
+
this.reservedToasts.update((value) => {
|
24
|
+
const arr = [...value];
|
25
|
+
arr.shift();
|
26
|
+
return arr;
|
27
|
+
});
|
28
|
+
}
|
29
|
+
if (this.reservedToasts().length !== this.reserveCounter()) {
|
30
|
+
this.reserveCounter.set(this.reservedToasts().length);
|
31
|
+
if (this.toastCounterElement() !== null) {
|
32
|
+
this.toastCounterElement().close();
|
33
|
+
}
|
34
|
+
this.createReservedCounterToast();
|
35
|
+
}
|
36
|
+
if (this.reserveCounter() === 0) {
|
37
|
+
if (this.toastCounterElement() !== null) {
|
38
|
+
this.toastCounterElement().close();
|
39
|
+
}
|
40
|
+
}
|
41
|
+
}, { allowSignalWrites: true });
|
42
|
+
}
|
14
43
|
}
|
15
44
|
primary(content) {
|
16
45
|
this.show({
|
@@ -52,35 +81,18 @@ export class AXToastService {
|
|
52
81
|
closeButton: true,
|
53
82
|
location: this.defaultConfig.location ?? 'bottom-center',
|
54
83
|
}, config);
|
84
|
+
this.moreToastsColor.set(opt.color);
|
85
|
+
if (this.defaultConfig.limit) {
|
86
|
+
if (this.activeToasts().length >= this.defaultConfig.limit) {
|
87
|
+
this.reservedToasts.update((value) => {
|
88
|
+
return [...value, opt];
|
89
|
+
});
|
90
|
+
return;
|
91
|
+
}
|
92
|
+
}
|
55
93
|
const gap = this.defaultConfig.gap;
|
56
|
-
let positionStrategy = new GlobalPositionStrategy();
|
57
94
|
const pos = this.getPosition(opt.location) + gap + 'px';
|
58
|
-
|
59
|
-
case 'bottom-center':
|
60
|
-
positionStrategy = positionStrategy.bottom(pos).centerHorizontally();
|
61
|
-
break;
|
62
|
-
case 'bottom-end':
|
63
|
-
positionStrategy = positionStrategy.bottom(pos).right(gap + 'px');
|
64
|
-
break;
|
65
|
-
case 'bottom-start':
|
66
|
-
positionStrategy = positionStrategy.bottom(pos).left(gap + 'px');
|
67
|
-
break;
|
68
|
-
case 'top-center':
|
69
|
-
positionStrategy = positionStrategy.top(pos).centerHorizontally();
|
70
|
-
break;
|
71
|
-
case 'top-end':
|
72
|
-
positionStrategy = positionStrategy.top(pos).right(gap + 'px');
|
73
|
-
break;
|
74
|
-
case 'top-start':
|
75
|
-
positionStrategy = positionStrategy.top(pos).left(gap + 'px');
|
76
|
-
break;
|
77
|
-
case 'center-start':
|
78
|
-
positionStrategy = positionStrategy.centerVertically().left(gap + 'px');
|
79
|
-
break;
|
80
|
-
case 'center-end':
|
81
|
-
positionStrategy = positionStrategy.centerVertically().right(gap + 'px');
|
82
|
-
break;
|
83
|
-
}
|
95
|
+
const positionStrategy = this.getPositionStrategy(new GlobalPositionStrategy(), opt.location, pos, gap);
|
84
96
|
const dialogRef = this.dialog.open(AXToastComponent, {
|
85
97
|
data: opt,
|
86
98
|
autoFocus: '__no_element__',
|
@@ -91,12 +103,20 @@ export class AXToastService {
|
|
91
103
|
closeOnDestroy: true,
|
92
104
|
hasBackdrop: false,
|
93
105
|
panelClass: ['ax-animate-animated', 'ax-animate-fadeIn', 'ax-animate-faster'],
|
94
|
-
positionStrategy
|
106
|
+
positionStrategy,
|
95
107
|
scrollStrategy: this.scrollStrategy,
|
96
108
|
});
|
109
|
+
this.activeToasts.update((value) => {
|
110
|
+
return [...value, dialogRef.id];
|
111
|
+
});
|
97
112
|
const toastRef = dialogRef.componentInstance;
|
98
113
|
dialogRef.closed.subscribe(() => {
|
99
|
-
this.
|
114
|
+
this.activeToasts.update((value) => {
|
115
|
+
return [...value].filter((dialogID) => dialogID !== dialogRef.id);
|
116
|
+
});
|
117
|
+
setTimeout(() => {
|
118
|
+
this.reposition(opt.location, gap);
|
119
|
+
}, 0);
|
100
120
|
});
|
101
121
|
return {
|
102
122
|
close: () => {
|
@@ -107,18 +127,92 @@ export class AXToastService {
|
|
107
127
|
hideAll() {
|
108
128
|
this.dialog.closeAll();
|
109
129
|
}
|
110
|
-
|
111
|
-
|
130
|
+
createReservedCounterToast() {
|
131
|
+
const opt = {
|
132
|
+
closeButton: false,
|
133
|
+
color: this.moreToastsColor(),
|
134
|
+
location: 'bottom-center',
|
135
|
+
title: `And ${this.reserveCounter()} more...`,
|
136
|
+
timeOutProgress: false,
|
137
|
+
};
|
138
|
+
const gap = this.defaultConfig.gap;
|
139
|
+
const pos = this.getPosition(opt.location) + gap + 'px';
|
140
|
+
const positionStrategy = this.getPositionStrategy(new GlobalPositionStrategy(), opt.location, pos, gap);
|
141
|
+
const dialogRef = this.dialog.open(AXToastComponent, {
|
142
|
+
data: opt,
|
143
|
+
autoFocus: '__no_element__',
|
144
|
+
restoreFocus: true,
|
145
|
+
role: 'dialog',
|
146
|
+
ariaModal: true,
|
147
|
+
closeOnNavigation: true,
|
148
|
+
closeOnDestroy: true,
|
149
|
+
hasBackdrop: false,
|
150
|
+
panelClass: ['ax-animate-animated', 'ax-animate-fadeIn', 'ax-animate-faster'],
|
151
|
+
positionStrategy,
|
152
|
+
scrollStrategy: this.scrollStrategy,
|
153
|
+
});
|
154
|
+
this.toastCounterElement.set(dialogRef.componentInstance);
|
155
|
+
}
|
156
|
+
reposition(toastLocation, gap) {
|
157
|
+
const list = this.dialog.openDialogs
|
158
|
+
.map((c) => c.componentInstance)
|
159
|
+
.filter((c) => c.config?.location == toastLocation);
|
160
|
+
list.forEach((element, index) => {
|
161
|
+
const pos = this.getRepositionPosition(index, gap, list, toastLocation);
|
162
|
+
console.log(index, element);
|
163
|
+
this.getPositionStrategy(element.dialogRef.config.positionStrategy, toastLocation, pos, gap).apply();
|
164
|
+
});
|
165
|
+
}
|
166
|
+
getRepositionPosition(index, gap, list, toastLocation) {
|
167
|
+
if (index === 0) {
|
168
|
+
return gap + 'px';
|
169
|
+
}
|
170
|
+
const previouseElement = list[index - 1];
|
171
|
+
if (toastLocation.split('-')[0] == 'bottom') {
|
172
|
+
return window.innerHeight - previouseElement.getHostElement().offsetTop + gap + 'px';
|
173
|
+
}
|
174
|
+
return (previouseElement.getHostElement().offsetTop +
|
175
|
+
previouseElement.getHostElement().offsetHeight +
|
176
|
+
gap +
|
177
|
+
'px');
|
112
178
|
}
|
113
179
|
getPosition(location) {
|
114
|
-
const list = this.dialog.openDialogs
|
180
|
+
const list = this.dialog.openDialogs
|
181
|
+
.map((c) => c.componentInstance)
|
182
|
+
.filter((c) => c.config?.location == location);
|
115
183
|
if (list.length == 0)
|
116
184
|
return 0;
|
117
185
|
if (location.split('-')[0] == 'bottom') {
|
118
186
|
return window.innerHeight - list[list.length - 1].getHostElement().offsetTop;
|
119
187
|
}
|
120
|
-
|
121
|
-
|
188
|
+
return (list[list.length - 1].getHostElement().offsetTop + list[list.length - 1].getHostElement().offsetHeight);
|
189
|
+
}
|
190
|
+
getPositionStrategy(positionStrategy, location, pos, gap) {
|
191
|
+
switch (location) {
|
192
|
+
case 'bottom-center':
|
193
|
+
return positionStrategy.bottom(pos).centerHorizontally();
|
194
|
+
break;
|
195
|
+
case 'bottom-end':
|
196
|
+
return positionStrategy.bottom(pos).right(gap + 'px');
|
197
|
+
break;
|
198
|
+
case 'bottom-start':
|
199
|
+
return positionStrategy.bottom(pos).left(gap + 'px');
|
200
|
+
break;
|
201
|
+
case 'top-center':
|
202
|
+
return positionStrategy.top(pos).centerHorizontally();
|
203
|
+
break;
|
204
|
+
case 'top-end':
|
205
|
+
return positionStrategy.top(pos).right(gap + 'px');
|
206
|
+
break;
|
207
|
+
case 'top-start':
|
208
|
+
return positionStrategy.top(pos).left(gap + 'px');
|
209
|
+
break;
|
210
|
+
case 'center-start':
|
211
|
+
return positionStrategy.centerVertically().left(gap + 'px');
|
212
|
+
break;
|
213
|
+
case 'center-end':
|
214
|
+
return positionStrategy.centerVertically().right(gap + 'px');
|
215
|
+
break;
|
122
216
|
}
|
123
217
|
}
|
124
218
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXToastService, deps: [{ token: i1.ScrollStrategyOptions }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
@@ -127,4 +221,4 @@ export class AXToastService {
|
|
127
221
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXToastService, decorators: [{
|
128
222
|
type: Injectable
|
129
223
|
}], ctorParameters: () => [{ type: i1.ScrollStrategyOptions }] });
|
130
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9hc3Quc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy90b2FzdC9zcmMvbGliL3RvYXN0LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxzQkFBc0IsRUFBa0IscUJBQXFCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNyRyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVuRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNyRCxPQUFPLEVBQWlCLGVBQWUsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7QUFHaEUsTUFBTSxPQUFPLGNBQWM7SUFNekIsWUFBNkIscUJBQTRDO1FBQTVDLDBCQUFxQixHQUFyQixxQkFBcUIsQ0FBdUI7UUFMakUsV0FBTSxHQUFXLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNoQyxrQkFBYSxHQUFrQixNQUFNLENBQUMsZUFBZSxDQUFDLENBQUM7UUFLN0QsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUMscUJBQXFCLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDMUQsQ0FBQztJQUNELE9BQU8sQ0FBQyxPQUFlO1FBQ3JCLElBQUksQ0FBQyxJQUFJLENBQUM7WUFDUixPQUFPLEVBQUUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxPQUFPO1lBQ25DLEtBQUssRUFBRSxTQUFTO1lBQ2hCLE9BQU8sRUFBRSxPQUFPO1NBQ2pCLENBQUMsQ0FBQztJQUNMLENBQUM7SUFDRCxTQUFTLENBQUMsT0FBZTtRQUN2QixJQUFJLENBQUMsSUFBSSxDQUFDO1lBQ1IsT0FBTyxFQUFFLElBQUksQ0FBQyxhQUFhLENBQUMsT0FBTztZQUNuQyxLQUFLLEVBQUUsV0FBVztZQUNsQixPQUFP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TUFBTSxJQUFJLENBQUM7WUFBRSxPQUFPLENBQUMsQ0FBQztRQUMvQixJQUFJLFFBQVEsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksUUFBUSxFQUFFLENBQUM7WUFDdkMsT0FBTyxNQUFNLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLGNBQWMsRUFBRSxDQUFDLFNBQVMsQ0FBQztRQUMvRSxDQUFDO2FBQU0sQ0FBQztZQUNOLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUMsY0FBYyxFQUFFLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLGNBQWMsRUFBRSxDQUFDLFlBQVksQ0FBQztRQUNoSCxDQUFDO0lBQ0gsQ0FBQzs4R0E5SFUsY0FBYztrSEFBZCxjQUFjOzsyRkFBZCxjQUFjO2tCQUQxQixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlhbG9nIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2RpYWxvZyc7XG5pbXBvcnQgeyBHbG9iYWxQb3NpdGlvblN0cmF0ZWd5LCBTY3JvbGxTdHJhdGVneSwgU2Nyb2xsU3RyYXRlZ3lPcHRpb25zIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL292ZXJsYXknO1xuaW1wb3J0IHsgSW5qZWN0YWJsZSwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBWFRvYXN0RGlzcGxheUNvbmZpZywgQVhUb2FzdFJlZiB9IGZyb20gJy4vdG9hc3QuY2xhc3MnO1xuaW1wb3J0IHsgQVhUb2FzdENvbXBvbmVudCB9IGZyb20gJy4vdG9hc3QuY29tcG9uZW50JztcbmltcG9ydCB7IEFYVG9hc3RDb25maWcsIEFYX1RPQVNUX0NPTkZJRyB9IGZyb20gJy4vdG9hc3QuY29uZmlnJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEFYVG9hc3RTZXJ2aWNlIHtcbiAgcHJpdmF0ZSBkaWFsb2c6IERpYWxvZyA9IGluamVjdChEaWFsb2cpO1xuICBwcml2YXRlIGRlZmF1bHRDb25maWc6IEFYVG9hc3RDb25maWcgPSBpbmplY3QoQVhfVE9BU1RfQ09ORklHKTtcblxuICBzY3JvbGxTdHJhdGVneTogU2Nyb2xsU3RyYXRlZ3k7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBzY3JvbGxTdHJhdGVneU9wdGlvbnM6IFNjcm9sbFN0cmF0ZWd5T3B0aW9ucykge1xuICAgIHRoaXMuc2Nyb2xsU3RyYXRlZ3kgPSB0aGlzLnNjcm9sbFN0cmF0ZWd5T3B0aW9ucy5ub29wKCk7XG4gIH1cbiAgcHJpbWFyeShjb250ZW50OiBzdHJpbmcpIHtcbiAgICB0aGlzLnNob3coe1xuICAgICAgdGltZU91dDogdGhpcy5kZWZhdWx0Q29uZmlnLnRpbWVPdXQsXG4gICAgICBjb2xvcjogJ3ByaW1hcnknLFxuICAgICAgY29udGVudDogY29udGVudCxcbiAgICB9KTtcbiAgfVxuICBzZWNvbmRhcnkoY29udGVudDogc3RyaW5nKSB7XG4gICAgdGhpcy5zaG93KHtcbiAgICAgIHRpbWVPdXQ6IHRoaXMuZGVmYXVsdENvbmZpZy50aW1lT3V0LFxuICAgICAgY29sb3I6ICdzZWNvbmRhcnknLFxuICAgICAgY29udGVudDogY29udGVudCxcbiAgICB9KTtcbiAgfVxuICBzdWNjZXNzKGNvbnRlbnQ6IHN0cmluZykge1xuICAgIHRoaXMuc2hvdyh7XG4gICAgICB0aW1lT3V0OiB0aGlzLmRlZmF1bHRDb25maWcudGltZU91dCxcbiAgICAgIGNvbG9yOiAnc3VjY2VzcycsXG4gICAgICBjb250ZW50OiBjb250ZW50LFxuICAgIH0pO1xuICB9XG5cbiAgd2FybmluZyhjb250ZW50OiBzdHJpbmcpIHtcbiAgICB0aGlzLnNob3coe1xuICAgICAgdGltZU91dDogdGhpcy5kZWZhdWx0Q29uZmlnLnRpbWVPdXQsXG4gICAgICBjb2xvcjogJ3dhcm5pbmcnLFxuICAgICAgY29udGVudDogY29udGVudCxcbiAgICB9KTtcbiAgfVxuICBkYW5nZXIoY29udGVudDogc3RyaW5nKSB7XG4gICAgdGhpcy5zaG93KHtcbiAgICAgIHRpbWVPdXQ6IHRoaXMuZGVmYXVsdENvbmZpZy50aW1lT3V0LFxuICAgICAgY29sb3I6ICdkYW5nZXInLFxuICAgICAgY29udGVudDogY29udGVudCxcbiAgICB9KTtcbiAgfVxuICBzaG93KGNvbmZpZzogQVhUb2FzdERpc3BsYXlDb25maWcpOiBBWFRvYXN0UmVmIHtcbiAgICBjb25zdCBvcHQgPSBPYmplY3QuYXNzaWduKFxuICAgICAge1xuICAgICAgICBjbG9zZUJ1dHRvbjogdHJ1ZSxcbiAgICAgICAgbG9jYXRpb246IHRoaXMuZGVmYXVsdENvbmZpZy5sb2NhdGlvbiA/PyAnYm90dG9tLWNlbnRlcicsXG4gICAgICB9LFxuICAgICAgY29uZmlnLFxuICAgICk7XG4gICAgY29uc3QgZ2FwID0gdGhpcy5kZWZhdWx0Q29uZmlnLmdhcDtcblxuICAgIGxldCBwb3NpdGlvblN0cmF0ZWd5ID0gbmV3IEdsb2JhbFBvc2l0aW9uU3RyYXRlZ3koKTtcbiAgICBjb25zdCBwb3MgPSB0aGlzLmdldFBvc2l0aW9uKG9wdC5sb2NhdGlvbikgKyBnYXAgKyAncHgnO1xuICAgIHN3aXRjaCAob3B0LmxvY2F0aW9uKSB7XG4gICAgICBjYXNlICdib3R0b20tY2VudGVyJzpcbiAgICAgICAgcG9zaXRpb25TdHJhdGVneSA9IHBvc2l0aW9uU3RyYXRlZ3kuYm90dG9tKHBvcykuY2VudGVySG9yaXpvbnRhbGx5KCk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAnYm90dG9tLWVuZCc6XG4gICAgICAgIHBvc2l0aW9uU3RyYXRlZ3kgPSBwb3NpdGlvblN0cmF0ZWd5LmJvdHRvbShwb3MpLnJpZ2h0KGdhcCArICdweCcpO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJ2JvdHRvbS1zdGFydCc6XG4gICAgICAgIHBvc2l0aW9uU3RyYXRlZ3kgPSBwb3NpdGlvblN0cmF0ZWd5LmJvdHRvbShwb3MpLmxlZnQoZ2FwICsgJ3B4Jyk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAndG9wLWNlbnRlcic6XG4gICAgICAgIHBvc2l0aW9uU3RyYXRlZ3kgPSBwb3NpdGlvblN0cmF0ZWd5LnRvcChwb3MpLmNlbnRlckhvcml6b250YWxseSgpO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJ3RvcC1lbmQnOlxuICAgICAgICBwb3NpdGlvblN0cmF0ZWd5ID0gcG9zaXRpb25TdHJhdGVneS50b3AocG9zKS5yaWdodChnYXAgKyAncHgnKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlICd0b3Atc3RhcnQnOlxuICAgICAgICBwb3NpdGlvblN0cmF0ZWd5ID0gcG9zaXRpb25TdHJhdGVneS50b3AocG9zKS5sZWZ0KGdhcCArICdweCcpO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJ2NlbnRlci1zdGFydCc6XG4gICAgICAgIHBvc2l0aW9uU3RyYXRlZ3kgPSBwb3NpdGlvblN0cmF0ZWd5LmNlbnRlclZlcnRpY2FsbHkoKS5sZWZ0KGdhcCArICdweCcpO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJ2NlbnRlci1lbmQnOlxuICAgICAgICBwb3NpdGlvblN0cmF0ZWd5ID0gcG9zaXRpb25TdHJhdGVneS5jZW50ZXJWZXJ0aWNhbGx5KCkucmlnaHQoZ2FwICsgJ3B4Jyk7XG4gICAgICAgIGJyZWFrO1xuICAgIH1cblxuICAgIGNvbnN0IGRpYWxvZ1JlZiA9IHRoaXMuZGlhbG9nLm9wZW4oQVhUb2FzdENvbXBvbmVudCwge1xuICAgICAgZGF0YTogb3B0LFxuICAgICAgYXV0b0ZvY3VzOiAnX19ub19lbGVtZW50X18nLFxuICAgICAgcmVzdG9yZUZvY3VzOiB0cnVlLFxuICAgICAgcm9sZTogJ2RpYWxvZycsXG4gICAgICBhcmlhTW9kYWw6IHRydWUsXG4gICAgICBjbG9zZU9uTmF2aWdhdGlvbjogdHJ1ZSxcbiAgICAgIGNsb3NlT25EZXN0cm95OiB0cnVlLFxuICAgICAgaGFzQmFja2Ryb3A6IGZhbHNlLFxuICAgICAgcGFuZWxDbGFzczogWydheC1hbmltYXRlLWFuaW1hdGVkJywgJ2F4LWFuaW1hdGUtZmFkZUluJywgJ2F4LWFuaW1hdGUtZmFzdGVyJ10sXG4gICAgICBwb3NpdGlvblN0cmF0ZWd5OiBwb3NpdGlvblN0cmF0ZWd5LFxuICAgICAgc2Nyb2xsU3RyYXRlZ3k6IHRoaXMuc2Nyb2xsU3RyYXRlZ3ksXG4gICAgfSk7XG5cbiAgICBjb25zdCB0b2FzdFJlZiA9IGRpYWxvZ1JlZi5jb21wb25lbnRJbnN0YW5jZSBhcyBBWFRvYXN0Q29tcG9uZW50O1xuICAgIGRpYWxvZ1JlZi5jbG9zZWQuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIHRoaXMucmVwb3NpdGlvbigpO1xuICAgIH0pO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIGNsb3NlOiAoKSA9PiB7XG4gICAgICAgIHRvYXN0UmVmLmNsb3NlKCk7XG4gICAgICB9LFxuICAgIH07XG4gIH1cblxuICBwdWJsaWMgaGlkZUFsbCgpIHtcbiAgICB0aGlzLmRpYWxvZy5jbG9zZUFsbCgpO1xuICB9XG5cbiAgcHJpdmF0ZSByZXBvc2l0aW9uKCk6IHZvaWQge1xuICAgIC8vVE9ETzogcmVwb3NpdGlvbiB2ZXJ0aWNhbGx5IGFmZXIgY2xvc2UgdG9hc3RcbiAgfVxuXG4gIHByaXZhdGUgZ2V0UG9zaXRpb24obG9jYXRpb246IHN0cmluZykge1xuICAgIGNvbnN0IGxpc3QgPSB0aGlzLmRpYWxvZy5vcGVuRGlhbG9ncy5tYXAoKGMpID0+IGMuY29tcG9uZW50SW5zdGFuY2UgYXMgQVhUb2FzdENvbXBvbmVudCkuZmlsdGVyKChjKSA9PiBjLmNvbmZpZz8ubG9jYXRpb24gPT0gbG9jYXRpb24pO1xuICAgIGlmIChsaXN0Lmxlbmd0aCA9PSAwKSByZXR1cm4gMDtcbiAgICBpZiAobG9jYXRpb24uc3BsaXQoJy0nKVswXSA9PSAnYm90dG9tJykge1xuICAgICAgcmV0dXJuIHdpbmRvdy5pbm5lckhlaWdodCAtIGxpc3RbbGlzdC5sZW5ndGggLSAxXS5nZXRIb3N0RWxlbWVudCgpLm9mZnNldFRvcDtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIGxpc3RbbGlzdC5sZW5ndGggLSAxXS5nZXRIb3N0RWxlbWVudCgpLm9mZnNldFRvcCArIGxpc3RbbGlzdC5sZW5ndGggLSAxXS5nZXRIb3N0RWxlbWVudCgpLm9mZnNldEhlaWdodDtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
|
224
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9hc3Quc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy90b2FzdC9zcmMvbGliL3RvYXN0LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxzQkFBc0IsRUFBa0IscUJBQXFCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNyRyxPQUFPLEVBQUUsVUFBVSxFQUFrQixNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVuRixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNyRCxPQUFPLEVBQWlCLGVBQWUsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7QUFHaEUsTUFBTSxPQUFPLGNBQWM7SUFXekIsWUFBNkIscUJBQTRDO1FBQTVDLDBCQUFxQixHQUFyQixxQkFBcUIsQ0FBdUI7UUFWakUsV0FBTSxHQUFXLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNoQyxrQkFBYSxHQUFrQixNQUFNLENBQUMsZUFBZSxDQUFDLENBQUM7UUFDdkQsaUJBQVksR0FBNkIsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ3BELG1CQUFjLEdBQTJDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUNwRSx3QkFBbUIsR0FBNEMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzVFLG1CQUFjLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzNCLG9CQUFlLEdBQXFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUs1RSxJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUN4RCxJQUFJLElBQUksQ0FBQyxhQUFhLENBQUMsS0FBSyxFQUFFLENBQUM7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QUFPLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxLQUFLLENBQUMsR0FBRyxHQUFHLElBQUksQ0FBQyxDQUFDO2dCQUN0RCxNQUFNO1lBQ1IsS0FBSyxjQUFjO2dCQUNqQixPQUFPLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxHQUFHLElBQUksQ0FBQyxDQUFDO2dCQUNyRCxNQUFNO1lBQ1IsS0FBSyxZQUFZO2dCQUNmLE9BQU8sZ0JBQWdCLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLGtCQUFrQixFQUFFLENBQUM7Z0JBQ3RELE1BQU07WUFDUixLQUFLLFNBQVM7Z0JBQ1osT0FBTyxnQkFBZ0IsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsS0FBSyxDQUFDLEdBQUcsR0FBRyxJQUFJLENBQUMsQ0FBQztnQkFDbkQsTUFBTTtZQUNSLEtBQUssV0FBVztnQkFDZCxPQUFPLGdCQUFnQixDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxHQUFHLElBQUksQ0FBQyxDQUFDO2dCQUNsRCxNQUFNO1lBQ1IsS0FBSyxjQUFjO2dCQUNqQixPQUFPLGdCQUFnQixDQUFDLGdCQUFnQixFQUFFLENBQUMsSUFBSSxDQUFDLEdBQUcsR0FBRyxJQUFJLENBQUMsQ0FBQztnQkFDNUQsTUFBTTtZQUNSLEtBQUssWUFBWTtnQkFDZixPQUFPLGdCQUFnQixDQUFDLGdCQUFnQixFQUFFLENBQUMsS0FBSyxDQUFDLEdBQUcsR0FBRyxJQUFJLENBQUMsQ0FBQztnQkFDN0QsTUFBTTtRQUNWLENBQUM7SUFDSCxDQUFDOzhHQXJQVSxjQUFjO2tIQUFkLGNBQWM7OzJGQUFkLGNBQWM7a0JBRDFCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWExvY2F0aW9uLCBBWFN0eWxlQ29sb3JUeXBlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2NvbW1vbic7XG5pbXBvcnQgeyBEaWFsb2cgfSBmcm9tICdAYW5ndWxhci9jZGsvZGlhbG9nJztcbmltcG9ydCB7IEdsb2JhbFBvc2l0aW9uU3RyYXRlZ3ksIFNjcm9sbFN0cmF0ZWd5LCBTY3JvbGxTdHJhdGVneU9wdGlvbnMgfSBmcm9tICdAYW5ndWxhci9jZGsvb3ZlcmxheSc7XG5pbXBvcnQgeyBJbmplY3RhYmxlLCBXcml0YWJsZVNpZ25hbCwgZWZmZWN0LCBpbmplY3QsIHNpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQVhUb2FzdERhdGEsIEFYVG9hc3REaXNwbGF5Q29uZmlnLCBBWFRvYXN0UmVmIH0gZnJvbSAnLi90b2FzdC5jbGFzcyc7XG5pbXBvcnQgeyBBWFRvYXN0Q29tcG9uZW50IH0gZnJvbSAnLi90b2FzdC5jb21wb25lbnQnO1xuaW1wb3J0IHsgQVhUb2FzdENvbmZpZywgQVhfVE9BU1RfQ09ORklHIH0gZnJvbSAnLi90b2FzdC5jb25maWcnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgQVhUb2FzdFNlcnZpY2Uge1xuICBwcml2YXRlIGRpYWxvZzogRGlhbG9nID0gaW5qZWN0KERpYWxvZyk7XG4gIHByaXZhdGUgZGVmYXVsdENvbmZpZzogQVhUb2FzdENvbmZpZyA9IGluamVjdChBWF9UT0FTVF9DT05GSUcpO1xuICBwcml2YXRlIGFjdGl2ZVRvYXN0czogV3JpdGFibGVTaWduYWw8c3RyaW5nW10+ID0gc2lnbmFsKFtdKTtcbiAgcHJpdmF0ZSByZXNlcnZlZFRvYXN0czogV3JpdGFibGVTaWduYWw8QVhUb2FzdERpc3BsYXlDb25maWdbXT4gPSBzaWduYWwoW10pO1xuICBwcml2YXRlIHRvYXN0Q291bnRlckVsZW1lbnQ6IFdyaXRhYmxlU2lnbmFsPEFYVG9hc3RDb21wb25lbnQgfCBudWxsPiA9IHNpZ25hbChudWxsKTtcbiAgcHJpdmF0ZSByZXNlcnZlQ291bnRlciA9IHNpZ25hbCgwKTtcbiAgcHJpdmF0ZSBtb3JlVG9hc3RzQ29sb3I6IFdyaXRhYmxlU2lnbmFsPEFYU3R5bGVDb2xvclR5cGU+ID0gc2lnbmFsKCdwcmltYXJ5Jyk7XG5cbiAgc2Nyb2xsU3RyYXRlZ3k6IFNjcm9sbFN0cmF0ZWd5O1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgc2Nyb2xsU3RyYXRlZ3lPcHRpb25zOiBTY3JvbGxTdHJhdGVneU9wdGlvbnMpIHtcbiAgICB0aGlzLnNjcm9sbFN0cmF0ZWd5ID0gdGhpcy5zY3JvbGxTdHJhdGVneU9wdGlvbnMubm9vcCgpO1xuICAgIGlmICh0aGlzLmRlZmF1bHRDb25maWcubGltaXQpIHtcbiAgICAgIGVmZmVjdChcbiAgICAgICAgKCkgPT4ge1xuICAgICAgICAgIGlmICh0aGlzLmFjdGl2ZVRvYXN0cygpLmxlbmd0aCA8PSB0aGlzLmRlZmF1bHRDb25maWcubGltaXQgLSAxICYmIHRoaXMucmVzZXJ2ZWRUb2FzdHMoKS5sZW5ndGgpIHtcbiAgICAgICAgICAgIHRoaXMuc2hvdyh0aGlzLnJlc2VydmVkVG9hc3RzKClbMF0pO1xuICAgICAgICAgICAgdGhpcy5yZXNlcnZlZFRvYXN0cy51cGRhdGUoKHZhbHVlKSA9PiB7XG4gICAgICAgICAgICAgIGNvbnN0IGFyciA9IFsuLi52YWx1ZV07XG4gICAgICAgICAgICAgIGFyci5zaGlmdCgpO1xuICAgICAgICAgICAgICByZXR1cm4gYXJyO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgfVxuICAgICAgICAgIGlmICh0aGlzLnJlc2VydmVkVG9hc3RzKCkubGVuZ3RoICE9PSB0aGlzLnJlc2VydmVDb3VudGVyKCkpIHtcbiAgICAgICAgICAgIHRoaXMucmVzZXJ2ZUNvdW50ZXIuc2V0KHRoaXMucmVzZXJ2ZWRUb2FzdHMoKS5sZW5ndGgpO1xuICAgICAgICAgICAgaWYgKHRoaXMudG9hc3RDb3VudGVyRWxlbWVudCgpICE9PSBudWxsKSB7XG4gICAgICAgICAgICAgIHRoaXMudG9hc3RDb3VudGVyRWxlbWVudCgpLmNsb3NlKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB0aGlzLmNyZWF0ZVJlc2VydmVkQ291bnRlclRvYXN0KCk7XG4gICAgICAgICAgfVxuICAgICAgICAgIGlmICh0aGlzLnJlc2VydmVDb3VudGVyKCkgPT09IDApIHtcbiAgICAgICAgICAgIGlmICh0aGlzLnRvYXN0Q291bnRlckVsZW1lbnQoKSAhPT0gbnVsbCkge1xuICAgICAgICAgICAgICB0aGlzLnRvYXN0Q291bnRlckVsZW1lbnQoKS5jbG9zZSgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICAgICAgeyBhbGxvd1NpZ25hbFdyaXRlczogdHJ1ZSB9LFxuICAgICAgKTtcbiAgICB9XG4gIH1cblxuICBwcmltYXJ5KGNvbnRlbnQ6IHN0cmluZykge1xuICAgIHRoaXMuc2hvdyh7XG4gICAgICB0aW1lT3V0OiB0aGlzLmRlZmF1bHRDb25maWcudGltZU91dCxcbiAgICAgIGNvbG9yOiAncHJpbWFyeScsXG4gICAgICBjb250ZW50OiBjb250ZW50LFxuICAgIH0pO1xuICB9XG4gIHNlY29uZGFyeShjb250ZW50OiBzdHJpbmcpIHtcbiAgICB0aGlzLnNob3coe1xuICAgICAgdGltZU91dDogdGhpcy5kZWZhdWx0Q29uZmlnLnRpbWVPdXQsXG4gICAgICBjb2xvcjogJ3NlY29uZGFyeScsXG4gICAgICBjb250ZW50OiBjb250ZW50LFxuICAgIH0pO1xuICB9XG4gIHN1Y2Nlc3MoY29udGVudDogc3RyaW5nKSB7XG4gICAgdGhpcy5zaG93KHtcbiAgICAgIHRpbWVPdXQ6IHRoaXMuZGVmYXVsdENvbmZpZy50aW1lT3V0LFxuICAgICAgY29sb3I6ICdzdWNjZXNzJyxcbiAgICAgIGNvbnRlbnQ6IGNvbnRlbnQsXG4gICAgfSk7XG4gIH1cbiAgd2FybmluZyhjb250ZW50OiBzdHJpbmcpIHtcbiAgICB0aGlzLnNob3coe1xuICAgICAgdGltZU91dDogdGhpcy5kZWZhdWx0Q29uZmlnLnRpbWVPdXQsXG4gICAgICBjb2xvcjogJ3dhcm5pbmcnLFxuICAgICAgY29udGVudDogY29udGVudCxcbiAgICB9KTtcbiAgfVxuICBkYW5nZXIoY29udGVudDogc3RyaW5nKSB7XG4gICAgdGhpcy5zaG93KHtcbiAgICAgIHRpbWVPdXQ6IHRoaXMuZGVmYXVsdENvbmZpZy50aW1lT3V0LFxuICAgICAgY29sb3I6ICdkYW5nZXInLFxuICAgICAgY29udGVudDogY29udGVudCxcbiAgICB9KTtcbiAgfVxuXG4gIHNob3coY29uZmlnOiBBWFRvYXN0RGlzcGxheUNvbmZpZyk6IEFYVG9hc3RSZWYgfCB2b2lkIHtcbiAgICBjb25zdCBvcHQgPSBPYmplY3QuYXNzaWduKFxuICAgICAge1xuICAgICAgICBjbG9zZUJ1dHRvbjogdHJ1ZSxcbiAgICAgICAgbG9jYXRpb246IHRoaXMuZGVmYXVsdENvbmZpZy5sb2NhdGlvbiA/PyAnYm90dG9tLWNlbnRlcicsXG4gICAgICB9LFxuICAgICAgY29uZmlnLFxuICAgICk7XG4gICAgdGhpcy5tb3JlVG9hc3RzQ29sb3Iuc2V0KG9wdC5jb2xvcik7XG5cbiAgICBpZiAodGhpcy5kZWZhdWx0Q29uZmlnLmxpbWl0KSB7XG4gICAgICBpZiAodGhpcy5hY3RpdmVUb2FzdHMoKS5sZW5ndGggPj0gdGhpcy5kZWZhdWx0Q29uZmlnLmxpbWl0KSB7XG4gICAgICAgIHRoaXMucmVzZXJ2ZWRUb2FzdHMudXBkYXRlKCh2YWx1ZSkgPT4ge1xuICAgICAgICAgIHJldHVybiBbLi4udmFsdWUsIG9wdF07XG4gICAgICAgIH0pO1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgfVxuXG4gICAgY29uc3QgZ2FwID0gdGhpcy5kZWZhdWx0Q29uZmlnLmdhcDtcbiAgICBjb25zdCBwb3MgPSB0aGlzLmdldFBvc2l0aW9uKG9wdC5sb2NhdGlvbikgKyBnYXAgKyAncHgnO1xuICAgIGNvbnN0IHBvc2l0aW9uU3RyYXRlZ3kgPSB0aGlzLmdldFBvc2l0aW9uU3RyYXRlZ3kobmV3IEdsb2JhbFBvc2l0aW9uU3RyYXRlZ3koKSwgb3B0LmxvY2F0aW9uLCBwb3MsIGdhcCk7XG4gICAgY29uc3QgZGlhbG9nUmVmID0gdGhpcy5kaWFsb2cub3BlbihBWFRvYXN0Q29tcG9uZW50LCB7XG4gICAgICBkYXRhOiBvcHQsXG4gICAgICBhdXRvRm9jdXM6ICdfX25vX2VsZW1lbnRfXycsXG4gICAgICByZXN0b3JlRm9jdXM6IHRydWUsXG4gICAgICByb2xlOiAnZGlhbG9nJyxcbiAgICAgIGFyaWFNb2RhbDogdHJ1ZSxcbiAgICAgIGNsb3NlT25OYXZpZ2F0aW9uOiB0cnVlLFxuICAgICAgY2xvc2VPbkRlc3Ryb3k6IHRydWUsXG4gICAgICBoYXNCYWNrZHJvcDogZmFsc2UsXG4gICAgICBwYW5lbENsYXNzOiBbJ2F4LWFuaW1hdGUtYW5pbWF0ZWQnLCAnYXgtYW5pbWF0ZS1mYWRlSW4nLCAnYXgtYW5pbWF0ZS1mYXN0ZXInXSxcbiAgICAgIHBvc2l0aW9uU3RyYXRlZ3ksXG4gICAgICBzY3JvbGxTdHJhdGVneTogdGhpcy5zY3JvbGxTdHJhdGVneSxcbiAgICB9KTtcblxuICAgIHRoaXMuYWN0aXZlVG9hc3RzLnVwZGF0ZSgodmFsdWUpID0+IHtcbiAgICAgIHJldHVybiBbLi4udmFsdWUsIGRpYWxvZ1JlZi5pZF07XG4gICAgfSk7XG5cbiAgICBjb25zdCB0b2FzdFJlZiA9IGRpYWxvZ1JlZi5jb21wb25lbnRJbnN0YW5jZSBhcyBBWFRvYXN0Q29tcG9uZW50O1xuICAgIGRpYWxvZ1JlZi5jbG9zZWQuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIHRoaXMuYWN0aXZlVG9hc3RzLnVwZGF0ZSgodmFsdWUpID0+IHtcbiAgICAgICAgcmV0dXJuIFsuLi52YWx1ZV0uZmlsdGVyKChkaWFsb2dJRCkgPT4gZGlhbG9nSUQgIT09IGRpYWxvZ1JlZi5pZCk7XG4gICAgICB9KTtcbiAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICB0aGlzLnJlcG9zaXRpb24ob3B0LmxvY2F0aW9uLCBnYXApO1xuICAgICAgfSwgMCk7XG4gICAgfSk7XG5cbiAgICByZXR1cm4ge1xuICAgICAgY2xvc2U6ICgpID0+IHtcbiAgICAgICAgdG9hc3RSZWYuY2xvc2UoKTtcbiAgICAgIH0sXG4gICAgfTtcbiAgfVxuXG4gIHB1YmxpYyBoaWRlQWxsKCkge1xuICAgIHRoaXMuZGlhbG9nLmNsb3NlQWxsKCk7XG4gIH1cblxuICBwcml2YXRlIGNyZWF0ZVJlc2VydmVkQ291bnRlclRvYXN0KCkge1xuICAgIGNvbnN0IG9wdDogQVhUb2FzdERhdGEgPSB7XG4gICAgICBjbG9zZUJ1dHRvbjogZmFsc2UsXG4gICAgICBjb2xvcjogdGhpcy5tb3JlVG9hc3RzQ29sb3IoKSxcbiAgICAgIGxvY2F0aW9uOiAnYm90dG9tLWNlbnRlcicsXG4gICAgICB0aXRsZTogYEFuZCAke3RoaXMucmVzZXJ2ZUNvdW50ZXIoKX0gbW9yZS4uLmAsXG4gICAgICB0aW1lT3V0UHJvZ3Jlc3M6IGZhbHNlLFxuICAgIH07XG4gICAgY29uc3QgZ2FwID0gdGhpcy5kZWZhdWx0Q29uZmlnLmdhcDtcbiAgICBjb25zdCBwb3MgPSB0aGlzLmdldFBvc2l0aW9uKG9wdC5sb2NhdGlvbikgKyBnYXAgKyAncHgnO1xuICAgIGNvbnN0IHBvc2l0aW9uU3RyYXRlZ3kgPSB0aGlzLmdldFBvc2l0aW9uU3RyYXRlZ3kobmV3IEdsb2JhbFBvc2l0aW9uU3RyYXRlZ3koKSwgb3B0LmxvY2F0aW9uLCBwb3MsIGdhcCk7XG4gICAgY29uc3QgZGlhbG9nUmVmID0gdGhpcy5kaWFsb2cub3BlbihBWFRvYXN0Q29tcG9uZW50LCB7XG4gICAgICBkYXRhOiBvcHQsXG4gICAgICBhdXRvRm9jdXM6ICdfX25vX2VsZW1lbnRfXycsXG4gICAgICByZXN0b3JlRm9jdXM6IHRydWUsXG4gICAgICByb2xlOiAnZGlhbG9nJyxcbiAgICAgIGFyaWFNb2RhbDogdHJ1ZSxcbiAgICAgIGNsb3NlT25OYXZpZ2F0aW9uOiB0cnVlLFxuICAgICAgY2xvc2VPbkRlc3Ryb3k6IHRydWUsXG4gICAgICBoYXNCYWNrZHJvcDogZmFsc2UsXG4gICAgICBwYW5lbENsYXNzOiBbJ2F4LWFuaW1hdGUtYW5pbWF0ZWQnLCAnYXgtYW5pbWF0ZS1mYWRlSW4nLCAnYXgtYW5pbWF0ZS1mYXN0ZXInXSxcbiAgICAgIHBvc2l0aW9uU3RyYXRlZ3ksXG4gICAgICBzY3JvbGxTdHJhdGVneTogdGhpcy5zY3JvbGxTdHJhdGVneSxcbiAgICB9KTtcbiAgICB0aGlzLnRvYXN0Q291bnRlckVsZW1lbnQuc2V0KGRpYWxvZ1JlZi5jb21wb25lbnRJbnN0YW5jZSBhcyBBWFRvYXN0Q29tcG9uZW50KTtcbiAgfVxuXG4gIHByaXZhdGUgcmVwb3NpdGlvbih0b2FzdExvY2F0aW9uOiBBWExvY2F0aW9uLCBnYXA6IG51bWJlcik6IHZvaWQge1xuICAgIGNvbnN0IGxpc3QgPSB0aGlzLmRpYWxvZy5vcGVuRGlhbG9nc1xuICAgICAgLm1hcCgoYykgPT4gYy5jb21wb25lbnRJbnN0YW5jZSBhcyBBWFRvYXN0Q29tcG9uZW50KVxuICAgICAgLmZpbHRlcigoYykgPT4gYy5jb25maWc/LmxvY2F0aW9uID09IHRvYXN0TG9jYXRpb24pO1xuXG4gICAgbGlzdC5mb3JFYWNoKChlbGVtZW50LCBpbmRleCkgPT4ge1xuICAgICAgY29uc3QgcG9zID0gdGhpcy5nZXRSZXBvc2l0aW9uUG9zaXRpb24oaW5kZXgsIGdhcCwgbGlzdCwgdG9hc3RMb2NhdGlvbik7XG4gICAgICBjb25zb2xlLmxvZyhpbmRleCwgZWxlbWVudCk7XG5cbiAgICAgIHRoaXMuZ2V0UG9zaXRpb25TdHJhdGVneShcbiAgICAgICAgZWxlbWVudC5kaWFsb2dSZWYuY29uZmlnLnBvc2l0aW9uU3RyYXRlZ3kgYXMgR2xvYmFsUG9zaXRpb25TdHJhdGVneSxcbiAgICAgICAgdG9hc3RMb2NhdGlvbixcbiAgICAgICAgcG9zLFxuICAgICAgICBnYXAsXG4gICAgICApLmFwcGx5KCk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGdldFJlcG9zaXRpb25Qb3NpdGlvbihpbmRleDogbnVtYmVyLCBnYXA6IG51bWJlciwgbGlzdDogQVhUb2FzdENvbXBvbmVudFtdLCB0b2FzdExvY2F0aW9uOiBzdHJpbmcpIHtcbiAgICBpZiAoaW5kZXggPT09IDApIHtcbiAgICAgIHJldHVybiBnYXAgKyAncHgnO1xuICAgIH1cbiAgICBjb25zdCBwcmV2aW91c2VFbGVtZW50ID0gbGlzdFtpbmRleCAtIDFdO1xuICAgIGlmICh0b2FzdExvY2F0aW9uLnNwbGl0KCctJylbMF0gPT0gJ2JvdHRvbScpIHtcbiAgICAgIHJldHVybiB3aW5kb3cuaW5uZXJIZWlnaHQgLSBwcmV2aW91c2VFbGVtZW50LmdldEhvc3RFbGVtZW50KCkub2Zmc2V0VG9wICsgZ2FwICsgJ3B4JztcbiAgICB9XG4gICAgcmV0dXJuIChcbiAgICAgIHByZXZpb3VzZUVsZW1lbnQuZ2V0SG9zdEVsZW1lbnQoKS5vZmZzZXRUb3AgK1xuICAgICAgcHJldmlvdXNlRWxlbWVudC5nZXRIb3N0RWxlbWVudCgpLm9mZnNldEhlaWdodCArXG4gICAgICBnYXAgK1xuICAgICAgJ3B4J1xuICAgICk7XG4gIH1cblxuICBwcml2YXRlIGdldFBvc2l0aW9uKGxvY2F0aW9uOiBzdHJpbmcpIHtcbiAgICBjb25zdCBsaXN0ID0gdGhpcy5kaWFsb2cub3BlbkRpYWxvZ3NcbiAgICAgIC5tYXAoKGMpID0+IGMuY29tcG9uZW50SW5zdGFuY2UgYXMgQVhUb2FzdENvbXBvbmVudClcbiAgICAgIC5maWx0ZXIoKGMpID0+IGMuY29uZmlnPy5sb2NhdGlvbiA9PSBsb2NhdGlvbik7XG4gICAgaWYgKGxpc3QubGVuZ3RoID09IDApIHJldHVybiAwO1xuICAgIGlmIChsb2NhdGlvbi5zcGxpdCgnLScpWzBdID09ICdib3R0b20nKSB7XG4gICAgICByZXR1cm4gd2luZG93LmlubmVySGVpZ2h0IC0gbGlzdFtsaXN0Lmxlbmd0aCAtIDFdLmdldEhvc3RFbGVtZW50KCkub2Zmc2V0VG9wO1xuICAgIH1cbiAgICByZXR1cm4gKFxuICAgICAgbGlzdFtsaXN0Lmxlbmd0aCAtIDFdLmdldEhvc3RFbGVtZW50KCkub2Zmc2V0VG9wICsgbGlzdFtsaXN0Lmxlbmd0aCAtIDFdLmdldEhvc3RFbGVtZW50KCkub2Zmc2V0SGVpZ2h0XG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0UG9zaXRpb25TdHJhdGVneShcbiAgICBwb3NpdGlvblN0cmF0ZWd5OiBHbG9iYWxQb3NpdGlvblN0cmF0ZWd5LFxuICAgIGxvY2F0aW9uOiBBWExvY2F0aW9uLFxuICAgIHBvczogc3RyaW5nLFxuICAgIGdhcDogbnVtYmVyLFxuICApIHtcbiAgICBzd2l0Y2ggKGxvY2F0aW9uKSB7XG4gICAgICBjYXNlICdib3R0b20tY2VudGVyJzpcbiAgICAgICAgcmV0dXJuIHBvc2l0aW9uU3RyYXRlZ3kuYm90dG9tKHBvcykuY2VudGVySG9yaXpvbnRhbGx5KCk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAnYm90dG9tLWVuZCc6XG4gICAgICAgIHJldHVybiBwb3NpdGlvblN0cmF0ZWd5LmJvdHRvbShwb3MpLnJpZ2h0KGdhcCArICdweCcpO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJ2JvdHRvbS1zdGFydCc6XG4gICAgICAgIHJldHVybiBwb3NpdGlvblN0cmF0ZWd5LmJvdHRvbShwb3MpLmxlZnQoZ2FwICsgJ3B4Jyk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAndG9wLWNlbnRlcic6XG4gICAgICAgIHJldHVybiBwb3NpdGlvblN0cmF0ZWd5LnRvcChwb3MpLmNlbnRlckhvcml6b250YWxseSgpO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJ3RvcC1lbmQnOlxuICAgICAgICByZXR1cm4gcG9zaXRpb25TdHJhdGVneS50b3AocG9zKS5yaWdodChnYXAgKyAncHgnKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlICd0b3Atc3RhcnQnOlxuICAgICAgICByZXR1cm4gcG9zaXRpb25TdHJhdGVneS50b3AocG9zKS5sZWZ0KGdhcCArICdweCcpO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJ2NlbnRlci1zdGFydCc6XG4gICAgICAgIHJldHVybiBwb3NpdGlvblN0cmF0ZWd5LmNlbnRlclZlcnRpY2FsbHkoKS5sZWZ0KGdhcCArICdweCcpO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJ2NlbnRlci1lbmQnOlxuICAgICAgICByZXR1cm4gcG9zaXRpb25TdHJhdGVneS5jZW50ZXJWZXJ0aWNhbGx5KCkucmlnaHQoZ2FwICsgJ3B4Jyk7XG4gICAgICAgIGJyZWFrO1xuICAgIH1cbiAgfVxufVxuIl19
|
@@ -31,11 +31,11 @@ export class AXWysiwygViewComponent {
|
|
31
31
|
]);
|
32
32
|
}
|
33
33
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXWysiwygViewComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
34
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.0", type: AXWysiwygViewComponent, selector: "ax-wysiwyg-view", inputs: { classes: { classPropertyName: "classes", publicName: "class", isSignal: true, isRequired: false, transformFunction: null } }, host: { listeners: { "keydown.Backspace": "onKeydownHandler($event)", "click": "editorStateHandler($event)" }, properties: { "class": "this.__hostClass" } }, ngImport: i0, template: "\n", styles: ["ax-wysiwyg-view{display:flex;flex-direction:column;width:100%;border-bottom:1px solid rgb(var(--ax-color-border
|
34
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.0", type: AXWysiwygViewComponent, selector: "ax-wysiwyg-view", inputs: { classes: { classPropertyName: "classes", publicName: "class", isSignal: true, isRequired: false, transformFunction: null } }, host: { listeners: { "keydown.Backspace": "onKeydownHandler($event)", "click": "editorStateHandler($event)" }, properties: { "class": "this.__hostClass" } }, ngImport: i0, template: "\n", styles: ["ax-wysiwyg-view{display:flex;flex-direction:column;width:100%;border-bottom:1px solid rgb(var(--ax-color-input-border))}.ql-container{flex-grow:1;height:0;font-family:inherit}.ql-editor.ql-blank:before{color:rgb(var(--ax-color-neutral-400));font-weight:600;font-style:normal}\n"], encapsulation: i0.ViewEncapsulation.None }); }
|
35
35
|
}
|
36
36
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXWysiwygViewComponent, decorators: [{
|
37
37
|
type: Component,
|
38
|
-
args: [{ selector: 'ax-wysiwyg-view', encapsulation: ViewEncapsulation.None, template: "\n", styles: ["ax-wysiwyg-view{display:flex;flex-direction:column;width:100%;border-bottom:1px solid rgb(var(--ax-color-border
|
38
|
+
args: [{ selector: 'ax-wysiwyg-view', encapsulation: ViewEncapsulation.None, template: "\n", styles: ["ax-wysiwyg-view{display:flex;flex-direction:column;width:100%;border-bottom:1px solid rgb(var(--ax-color-input-border))}.ql-container{flex-grow:1;height:0;font-family:inherit}.ql-editor.ql-blank:before{color:rgb(var(--ax-color-neutral-400));font-weight:600;font-style:normal}\n"] }]
|
39
39
|
}], propDecorators: { __hostClass: [{
|
40
40
|
type: HostBinding,
|
41
41
|
args: ['class']
|