@acorex/components 17.0.14 → 17.0.15
Sign up to get free protection for your applications and to get access to all the features.
- package/audio-wave/lib/audio-wave.component.d.ts +7 -2
- package/audio-wave/lib/audio-wave.module.d.ts +2 -1
- package/audio-wave/lib/interfaces/audio-wave.interface.d.ts +2 -1
- package/chat/lib/chat-messages/chat-messages-voice/chat-message-voice.component.d.ts +7 -1
- package/chat/lib/chat.module.d.ts +2 -1
- package/common/lib/components/base-component.class.d.ts +0 -4
- package/esm2022/audio-wave/lib/audio-wave.component.mjs +53 -27
- package/esm2022/audio-wave/lib/audio-wave.module.mjs +5 -4
- package/esm2022/audio-wave/lib/interfaces/audio-wave.interface.mjs +1 -1
- package/esm2022/button/lib/button.component.mjs +3 -3
- package/esm2022/chat/lib/chat-message/chat-message.component.mjs +12 -6
- package/esm2022/chat/lib/chat-messages/chat-messages-voice/chat-message-voice.component.mjs +46 -9
- package/esm2022/chat/lib/chat.module.mjs +7 -3
- package/esm2022/color-palette/lib/color-palette-picker.component.mjs +8 -12
- package/esm2022/common/lib/components/base-component.class.mjs +11 -14
- package/esm2022/dialog/lib/dialog.service.mjs +2 -2
- package/esm2022/list/lib/list.component.mjs +3 -3
- package/esm2022/select-box/lib/select-box.component.mjs +3 -3
- package/esm2022/side-menu/lib/side-menu.component.mjs +2 -2
- package/fesm2022/acorex-components-audio-wave.mjs +57 -30
- package/fesm2022/acorex-components-audio-wave.mjs.map +1 -1
- package/fesm2022/acorex-components-button.mjs +2 -2
- package/fesm2022/acorex-components-button.mjs.map +1 -1
- package/fesm2022/acorex-components-chat.mjs +60 -13
- package/fesm2022/acorex-components-chat.mjs.map +1 -1
- package/fesm2022/acorex-components-color-palette.mjs +4 -8
- package/fesm2022/acorex-components-color-palette.mjs.map +1 -1
- package/fesm2022/acorex-components-common.mjs +10 -13
- package/fesm2022/acorex-components-common.mjs.map +1 -1
- package/fesm2022/acorex-components-dialog.mjs +1 -1
- package/fesm2022/acorex-components-dialog.mjs.map +1 -1
- package/fesm2022/acorex-components-list.mjs +2 -2
- package/fesm2022/acorex-components-list.mjs.map +1 -1
- package/fesm2022/acorex-components-select-box.mjs +2 -2
- package/fesm2022/acorex-components-select-box.mjs.map +1 -1
- package/fesm2022/acorex-components-side-menu.mjs.map +1 -1
- package/package.json +13 -13
@@ -28,21 +28,27 @@ export class AXChatMessageComponent extends MXBaseComponent {
|
|
28
28
|
Object.assign(ref.instance, { message: this.chatMessage() });
|
29
29
|
this.cdr.markForCheck();
|
30
30
|
const prefix = this.getHostElement().querySelector('ax-prefix');
|
31
|
-
const
|
32
|
-
|
31
|
+
const suffix = this.getHostElement().querySelector('ax-suffix');
|
32
|
+
const prefixContainer = this.getHostElement().querySelector('.ax-message-prefix');
|
33
|
+
const suffixContainer = this.getHostElement().querySelector('.ax-message-suffix');
|
34
|
+
if (prefix && prefixContainer) {
|
33
35
|
prefix.style.display = 'flex';
|
34
|
-
|
36
|
+
prefixContainer.append(prefix);
|
37
|
+
}
|
38
|
+
if (suffix && suffixContainer) {
|
39
|
+
suffix.style.display = 'flex';
|
40
|
+
suffixContainer.append(suffix);
|
35
41
|
}
|
36
42
|
}
|
37
43
|
}
|
38
44
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: AXChatMessageComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
39
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.2", type: AXChatMessageComponent, selector: "ax-chat-message", inputs: { chatMessage: { classPropertyName: "chatMessage", publicName: "chatMessage", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class": "this.__hostClass" } }, usesInheritance: true, ngImport: i0, template: "<ng-template [cdkPortalOutlet]=\"_portal\" (attached)=\"_handleAttched($event)\"></ng-template>\n\n<div class=\"ax-chat-message-status\">\n <div class=\"ax-message-prefix\">\n </div>\n <div>\n <span>{{ chatMessage().sendTime | format:'datetime':'HH:mm' | async }}</span>\n <span>\n @if(isOwn)\n {\n @if(chatMessage().deliverTime){\n <i class=\"ax-icon ax-icon-check\"></i>\n }\n @if(chatMessage().readTime){\n <i class=\"ax-icon ax-icon-dobble-check\"></i>\n }\n }\n </span>\n </div>\n</div>", styles: ["ax-chat-message{display:block;padding:.75rem;font-size:.875rem;line-height:1.25rem;border-radius:.75rem;border:1px solid;--ax-other-color: rgba(var(--ax-color-surface));--ax-other-color-fore: rgba(var(--ax-color-surface-fore));--ax-own-color: rgba(var(--ax-color-primary-100));--ax-own-color-fore: rgba(var(--ax-color-primary-fore-tint))}ax-chat-message.ax-state-own{border-end-end-radius:0!important;background-color:var(--ax-own-color);border-color:var(--ax-own-color);color:var(--ax-own-color-fore)}ax-chat-message.ax-state-own .ax-chat-message-status{color:var(--ax-own-color-fore)}ax-chat-message.ax-state-other{border-end-start-radius:0!important;background-color:var(--ax-other-color);border-color:var(--ax-other-color);border-color:rgba(var(--ax-color-border-default))}ax-chat-message.ax-state-other .ax-chat-message-status{color:var(--ax-own-color-fore)}ax-chat-message .ax-chat-message-status{display:flex;justify-content:space-between;align-items:center;font-size:.75rem}ax-chat-message .ax-chat-message-status>div{display:flex;gap:.125rem;align-items:center}ax-chat-message ax-prefix{display:none}.ax-dark ax-chat-message{--ax-reply-bk: rgba(var(--ax-color-primary-800));--ax-reply-color: rgba(var(--ax-color-primary-fore));--ax-reply-border-color: rgba(var(--ax-color-primary-fore));--ax-own-color: rgba(var(--ax-color-primary-700));--ax-own-color-fore: rgba(var(--ax-color-primary-fore))}\n"], dependencies: [{ kind: "directive", type: i1.CdkPortalOutlet, selector: "[cdkPortalOutlet]", inputs: ["cdkPortalOutlet"], outputs: ["attached"], exportAs: ["cdkPortalOutlet"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }, { kind: "pipe", type: i3.AXFormatPipe, name: "format" }], encapsulation: i0.ViewEncapsulation.None }); }
|
45
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.2", type: AXChatMessageComponent, selector: "ax-chat-message", inputs: { chatMessage: { classPropertyName: "chatMessage", publicName: "chatMessage", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class": "this.__hostClass" } }, usesInheritance: true, ngImport: i0, template: "<ng-template [cdkPortalOutlet]=\"_portal\" (attached)=\"_handleAttched($event)\"></ng-template>\n\n<div class=\"ax-chat-message-status\">\n <div class=\"ax-message-prefix\">\n </div>\n <div>\n <div class=\"ax-message-suffix\"></div>\n <span>{{ chatMessage().sendTime | format:'datetime':'HH:mm' | async }}</span>\n <span>\n @if(isOwn)\n {\n @if(chatMessage().deliverTime){\n <i class=\"ax-icon ax-icon-check ax-message-status\"></i>\n }\n @if(chatMessage().readTime){\n <i class=\"ax-icon ax-icon-dobble-check ax-message-status\"></i>\n }\n }\n </span>\n </div>\n</div>", styles: ["ax-chat-message{display:block;padding:.75rem;font-size:.875rem;line-height:1.25rem;border-radius:.75rem;border:1px solid;--ax-other-color: rgba(var(--ax-color-surface));--ax-other-color-fore: rgba(var(--ax-color-surface-fore));--ax-own-color: rgba(var(--ax-color-primary-100));--ax-own-color-fore: rgba(var(--ax-color-primary-fore-tint));--ax-message-status-color: rgba(var(--ax-color-primary-700))}ax-chat-message.ax-state-own{border-end-end-radius:0!important;background-color:var(--ax-own-color);border-color:var(--ax-own-color);color:var(--ax-own-color-fore)}ax-chat-message.ax-state-own .ax-chat-message-status{color:var(--ax-own-color-fore)}ax-chat-message.ax-state-other{border-end-start-radius:0!important;background-color:var(--ax-other-color);border-color:var(--ax-other-color);border-color:rgba(var(--ax-color-border-default))}ax-chat-message.ax-state-other .ax-chat-message-status{color:var(--ax-own-color-fore)}ax-chat-message .ax-chat-message-status{display:flex;justify-content:space-between;align-items:center;font-size:.75rem}ax-chat-message .ax-chat-message-status>div{display:flex;gap:.125rem;align-items:center}ax-chat-message .ax-chat-message-status .ax-message-status{color:var(--ax-message-status-color)}ax-chat-message ax-prefix,ax-chat-message ax-suffix{display:none}.ax-dark ax-chat-message{--ax-reply-bk: rgba(var(--ax-color-primary-800));--ax-reply-color: rgba(var(--ax-color-primary-fore));--ax-reply-border-color: rgba(var(--ax-color-primary-fore));--ax-own-color: rgba(var(--ax-color-primary-700));--ax-own-color-fore: rgba(var(--ax-color-primary-fore));--ax-message-status-color: rgba(var(--ax-color-primary-100))}\n"], dependencies: [{ kind: "directive", type: i1.CdkPortalOutlet, selector: "[cdkPortalOutlet]", inputs: ["cdkPortalOutlet"], outputs: ["attached"], exportAs: ["cdkPortalOutlet"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }, { kind: "pipe", type: i3.AXFormatPipe, name: "format" }], encapsulation: i0.ViewEncapsulation.None }); }
|
40
46
|
}
|
41
47
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: AXChatMessageComponent, decorators: [{
|
42
48
|
type: Component,
|
43
|
-
args: [{ selector: 'ax-chat-message', encapsulation: ViewEncapsulation.None, template: "<ng-template [cdkPortalOutlet]=\"_portal\" (attached)=\"_handleAttched($event)\"></ng-template>\n\n<div class=\"ax-chat-message-status\">\n <div class=\"ax-message-prefix\">\n </div>\n <div>\n <span>{{ chatMessage().sendTime | format:'datetime':'HH:mm' | async }}</span>\n <span>\n @if(isOwn)\n {\n @if(chatMessage().deliverTime){\n <i class=\"ax-icon ax-icon-check\"></i>\n }\n @if(chatMessage().readTime){\n <i class=\"ax-icon ax-icon-dobble-check\"></i>\n }\n }\n </span>\n </div>\n</div>", styles: ["ax-chat-message{display:block;padding:.75rem;font-size:.875rem;line-height:1.25rem;border-radius:.75rem;border:1px solid;--ax-other-color: rgba(var(--ax-color-surface));--ax-other-color-fore: rgba(var(--ax-color-surface-fore));--ax-own-color: rgba(var(--ax-color-primary-100));--ax-own-color-fore: rgba(var(--ax-color-primary-fore-tint))}ax-chat-message.ax-state-own{border-end-end-radius:0!important;background-color:var(--ax-own-color);border-color:var(--ax-own-color);color:var(--ax-own-color-fore)}ax-chat-message.ax-state-own .ax-chat-message-status{color:var(--ax-own-color-fore)}ax-chat-message.ax-state-other{border-end-start-radius:0!important;background-color:var(--ax-other-color);border-color:var(--ax-other-color);border-color:rgba(var(--ax-color-border-default))}ax-chat-message.ax-state-other .ax-chat-message-status{color:var(--ax-own-color-fore)}ax-chat-message .ax-chat-message-status{display:flex;justify-content:space-between;align-items:center;font-size:.75rem}ax-chat-message .ax-chat-message-status>div{display:flex;gap:.125rem;align-items:center}ax-chat-message ax-prefix{display:none}.ax-dark ax-chat-message{--ax-reply-bk: rgba(var(--ax-color-primary-800));--ax-reply-color: rgba(var(--ax-color-primary-fore));--ax-reply-border-color: rgba(var(--ax-color-primary-fore));--ax-own-color: rgba(var(--ax-color-primary-700));--ax-own-color-fore: rgba(var(--ax-color-primary-fore))}\n"] }]
|
49
|
+
args: [{ selector: 'ax-chat-message', encapsulation: ViewEncapsulation.None, template: "<ng-template [cdkPortalOutlet]=\"_portal\" (attached)=\"_handleAttched($event)\"></ng-template>\n\n<div class=\"ax-chat-message-status\">\n <div class=\"ax-message-prefix\">\n </div>\n <div>\n <div class=\"ax-message-suffix\"></div>\n <span>{{ chatMessage().sendTime | format:'datetime':'HH:mm' | async }}</span>\n <span>\n @if(isOwn)\n {\n @if(chatMessage().deliverTime){\n <i class=\"ax-icon ax-icon-check ax-message-status\"></i>\n }\n @if(chatMessage().readTime){\n <i class=\"ax-icon ax-icon-dobble-check ax-message-status\"></i>\n }\n }\n </span>\n </div>\n</div>", styles: ["ax-chat-message{display:block;padding:.75rem;font-size:.875rem;line-height:1.25rem;border-radius:.75rem;border:1px solid;--ax-other-color: rgba(var(--ax-color-surface));--ax-other-color-fore: rgba(var(--ax-color-surface-fore));--ax-own-color: rgba(var(--ax-color-primary-100));--ax-own-color-fore: rgba(var(--ax-color-primary-fore-tint));--ax-message-status-color: rgba(var(--ax-color-primary-700))}ax-chat-message.ax-state-own{border-end-end-radius:0!important;background-color:var(--ax-own-color);border-color:var(--ax-own-color);color:var(--ax-own-color-fore)}ax-chat-message.ax-state-own .ax-chat-message-status{color:var(--ax-own-color-fore)}ax-chat-message.ax-state-other{border-end-start-radius:0!important;background-color:var(--ax-other-color);border-color:var(--ax-other-color);border-color:rgba(var(--ax-color-border-default))}ax-chat-message.ax-state-other .ax-chat-message-status{color:var(--ax-own-color-fore)}ax-chat-message .ax-chat-message-status{display:flex;justify-content:space-between;align-items:center;font-size:.75rem}ax-chat-message .ax-chat-message-status>div{display:flex;gap:.125rem;align-items:center}ax-chat-message .ax-chat-message-status .ax-message-status{color:var(--ax-message-status-color)}ax-chat-message ax-prefix,ax-chat-message ax-suffix{display:none}.ax-dark ax-chat-message{--ax-reply-bk: rgba(var(--ax-color-primary-800));--ax-reply-color: rgba(var(--ax-color-primary-fore));--ax-reply-border-color: rgba(var(--ax-color-primary-fore));--ax-own-color: rgba(var(--ax-color-primary-700));--ax-own-color-fore: rgba(var(--ax-color-primary-fore));--ax-message-status-color: rgba(var(--ax-color-primary-100))}\n"] }]
|
44
50
|
}], propDecorators: { __hostClass: [{
|
45
51
|
type: HostBinding,
|
46
52
|
args: ['class']
|
47
53
|
}] } });
|
48
|
-
//# sourceMappingURL=data:application/json;base64,
|
54
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhdC1tZXNzYWdlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9jaGF0L3NyYy9saWIvY2hhdC1tZXNzYWdlL2NoYXQtbWVzc2FnZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvY2hhdC9zcmMvbGliL2NoYXQtbWVzc2FnZS9jaGF0LW1lc3NhZ2UuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzVELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNsRCxPQUFPLEVBQThCLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ2xGLE9BQU8sRUFBRSxTQUFTLEVBQWdCLFdBQVcsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXZHLE9BQU8sRUFBRSxnQ0FBZ0MsRUFBRSxNQUFNLGdEQUFnRCxDQUFDOzs7OztBQVFsRyxNQUFNLE9BQU8sc0JBQXVCLFNBQVEsZUFBZTtJQU4zRDs7UUFPRSxnQkFBVyxHQUFHLEtBQUssRUFBc0IsQ0FBQztRQVFoQyxvQkFBZSxHQUFHLE1BQU0sQ0FBQyxnQ0FBZ0MsQ0FBQyxDQUFDO0tBOEJ0RTtJQWxDQyxJQUFjLEtBQUs7UUFDakIsT0FBTyxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQyxNQUFNLENBQUM7SUFDcEMsQ0FBQztJQUlELElBQ0ksV0FBVztRQUNiLE9BQU8sR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLGdCQUFnQixDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQztJQUN0RixDQUFDO0lBRWtCLFFBQVE7UUFDekIsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLGVBQWUsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDdEcsQ0FBQztJQUVTLGNBQWMsQ0FBQyxHQUErQjtRQUN0RCxHQUFHLEdBQUcsR0FBNEIsQ0FBQztRQUNuQyxJQUFJLEdBQUcsQ0FBQyxRQUFRLElBQUksU0FBUyxFQUFFLEVBQUUsQ0FBQztZQUNoQyxNQUFNLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxRQUFRLEVBQUUsRUFBRSxPQUFPLEVBQUUsSUFBSSxDQUFDLFdBQVcsRUFBRSxFQUFFLENBQUMsQ0FBQztZQUM3RCxJQUFJLENBQUMsR0FBRyxDQUFDLFlBQVksRUFBRSxDQUFDO1lBQ3hCLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQyxhQUFhLENBQUMsV0FBVyxDQUFtQixDQUFDO1lBQ2xGLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQyxhQUFhLENBQUMsV0FBVyxDQUFtQixDQUFDO1lBQ2xGLE1BQU0sZUFBZSxHQUFHLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQyxhQUFhLENBQUMsb0JBQW9CLENBQUMsQ0FBQztZQUNsRixNQUFNLGVBQWUsR0FBRyxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUMsYUFBYSxDQUFDLG9CQUFvQixDQUFDLENBQUM7WUFDbEYsSUFBSSxNQUFNLElBQUksZUFBZSxFQUFFLENBQUM7Z0JBQzlCLE1BQU0sQ0FBQyxLQUFLLENBQUMsT0FBTyxHQUFHLE1BQU0sQ0FBQztnQkFDOUIsZUFBZSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUNqQyxDQUFDO1lBQ0QsSUFBSSxNQUFNLElBQUksZUFBZSxFQUFFLENBQUM7Z0JBQzlCLE1BQU0sQ0FBQyxLQUFLLENBQUMsT0FBTyxHQUFHLE1BQU0sQ0FBQztnQkFDOUIsZUFBZSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUNqQyxDQUFDO1FBQ0gsQ0FBQztJQUNILENBQUM7OEdBdENVLHNCQUFzQjtrR0FBdEIsc0JBQXNCLDJSQ2JuQyxzc0JBb0JNOzsyRkRQTyxzQkFBc0I7a0JBTmxDLFNBQVM7K0JBQ0UsaUJBQWlCLGlCQUdaLGlCQUFpQixDQUFDLElBQUk7OEJBY2pDLFdBQVc7c0JBRGQsV0FBVzt1QkFBQyxPQUFPIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTVhCYXNlQ29tcG9uZW50IH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2NvbW1vbic7XG5pbXBvcnQgeyBpc0Jyb3dzZXIgfSBmcm9tICdAYWNvcmV4L2NvcmUvcGxhdGZvcm0nO1xuaW1wb3J0IHsgQ2RrUG9ydGFsT3V0bGV0QXR0YWNoZWRSZWYsIENvbXBvbmVudFBvcnRhbCB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9wb3J0YWwnO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBDb21wb25lbnRSZWYsIEhvc3RCaW5kaW5nLCBWaWV3RW5jYXBzdWxhdGlvbiwgaW5qZWN0LCBpbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQVhDaGF0TWVzc2FnZSB9IGZyb20gJy4uL2NoYXQudHlwZXMnO1xuaW1wb3J0IHsgQVhDaGF0TWVzc2FnZVR5cGVSZWdpc3RyeVNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9jaGF0LW1lc3NhZ2UtdHlwZS1yZWdpc3RyeS5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXgtY2hhdC1tZXNzYWdlJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2NoYXQtbWVzc2FnZS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2NoYXQtbWVzc2FnZS5jb21wb25lbnQuc2NzcyddLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxufSlcbmV4cG9ydCBjbGFzcyBBWENoYXRNZXNzYWdlQ29tcG9uZW50IGV4dGVuZHMgTVhCYXNlQ29tcG9uZW50IHtcbiAgY2hhdE1lc3NhZ2UgPSBpbnB1dDxBWENoYXRNZXNzYWdlPGFueT4+KCk7XG5cbiAgcHJvdGVjdGVkIF9wb3J0YWw6IENvbXBvbmVudFBvcnRhbDxhbnk+IHwgbnVsbDtcblxuICBwcm90ZWN0ZWQgZ2V0IGlzT3duKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhdGhpcy5jaGF0TWVzc2FnZSgpLmZyb21JZDtcbiAgfVxuXG4gIHByb3RlY3RlZCByZWdpc3RyeVNlcnZpY2UgPSBpbmplY3QoQVhDaGF0TWVzc2FnZVR5cGVSZWdpc3RyeVNlcnZpY2UpO1xuXG4gIEBIb3N0QmluZGluZygnY2xhc3MnKVxuICBnZXQgX19ob3N0Q2xhc3MoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gYCR7dGhpcy5pc093biA/ICdheC1zdGF0ZS1vd24nIDogJyd9ICR7IXRoaXMuaXNPd24gPyAnYXgtc3RhdGUtb3RoZXInIDogJyd9YDtcbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLl9wb3J0YWwgPSBuZXcgQ29tcG9uZW50UG9ydGFsKHRoaXMucmVnaXN0cnlTZXJ2aWNlLnJlc29sdmUodGhpcy5jaGF0TWVzc2FnZSgpLnR5cGUpLmNvbXBvbmVudCk7XG4gIH1cblxuICBwcm90ZWN0ZWQgX2hhbmRsZUF0dGNoZWQocmVmOiBDZGtQb3J0YWxPdXRsZXRBdHRhY2hlZFJlZikge1xuICAgIHJlZiA9IHJlZiBhcyBDb21wb25lbnRSZWY8dW5rbm93bj47XG4gICAgaWYgKHJlZi5pbnN0YW5jZSAmJiBpc0Jyb3dzZXIoKSkge1xuICAgICAgT2JqZWN0LmFzc2lnbihyZWYuaW5zdGFuY2UsIHsgbWVzc2FnZTogdGhpcy5jaGF0TWVzc2FnZSgpIH0pO1xuICAgICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XG4gICAgICBjb25zdCBwcmVmaXggPSB0aGlzLmdldEhvc3RFbGVtZW50KCkucXVlcnlTZWxlY3RvcignYXgtcHJlZml4JykgYXMgSFRNTERpdkVsZW1lbnQ7XG4gICAgICBjb25zdCBzdWZmaXggPSB0aGlzLmdldEhvc3RFbGVtZW50KCkucXVlcnlTZWxlY3RvcignYXgtc3VmZml4JykgYXMgSFRNTERpdkVsZW1lbnQ7XG4gICAgICBjb25zdCBwcmVmaXhDb250YWluZXIgPSB0aGlzLmdldEhvc3RFbGVtZW50KCkucXVlcnlTZWxlY3RvcignLmF4LW1lc3NhZ2UtcHJlZml4Jyk7XG4gICAgICBjb25zdCBzdWZmaXhDb250YWluZXIgPSB0aGlzLmdldEhvc3RFbGVtZW50KCkucXVlcnlTZWxlY3RvcignLmF4LW1lc3NhZ2Utc3VmZml4Jyk7XG4gICAgICBpZiAocHJlZml4ICYmIHByZWZpeENvbnRhaW5lcikge1xuICAgICAgICBwcmVmaXguc3R5bGUuZGlzcGxheSA9ICdmbGV4JztcbiAgICAgICAgcHJlZml4Q29udGFpbmVyLmFwcGVuZChwcmVmaXgpO1xuICAgICAgfVxuICAgICAgaWYgKHN1ZmZpeCAmJiBzdWZmaXhDb250YWluZXIpIHtcbiAgICAgICAgc3VmZml4LnN0eWxlLmRpc3BsYXkgPSAnZmxleCc7XG4gICAgICAgIHN1ZmZpeENvbnRhaW5lci5hcHBlbmQoc3VmZml4KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIjxuZy10ZW1wbGF0ZSBbY2RrUG9ydGFsT3V0bGV0XT1cIl9wb3J0YWxcIiAoYXR0YWNoZWQpPVwiX2hhbmRsZUF0dGNoZWQoJGV2ZW50KVwiPjwvbmctdGVtcGxhdGU+XG5cbjxkaXYgY2xhc3M9XCJheC1jaGF0LW1lc3NhZ2Utc3RhdHVzXCI+XG4gICAgPGRpdiBjbGFzcz1cImF4LW1lc3NhZ2UtcHJlZml4XCI+XG4gICAgPC9kaXY+XG4gICAgPGRpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImF4LW1lc3NhZ2Utc3VmZml4XCI+PC9kaXY+XG4gICAgICAgIDxzcGFuPnt7IGNoYXRNZXNzYWdlKCkuc2VuZFRpbWUgfCBmb3JtYXQ6J2RhdGV0aW1lJzonSEg6bW0nIHwgYXN5bmMgfX08L3NwYW4+XG4gICAgICAgIDxzcGFuPlxuICAgICAgICAgICAgQGlmKGlzT3duKVxuICAgICAgICAgICAge1xuICAgICAgICAgICAgQGlmKGNoYXRNZXNzYWdlKCkuZGVsaXZlclRpbWUpe1xuICAgICAgICAgICAgPGkgY2xhc3M9XCJheC1pY29uIGF4LWljb24tY2hlY2sgYXgtbWVzc2FnZS1zdGF0dXNcIj48L2k+XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAaWYoY2hhdE1lc3NhZ2UoKS5yZWFkVGltZSl7XG4gICAgICAgICAgICA8aSBjbGFzcz1cImF4LWljb24gYXgtaWNvbi1kb2JibGUtY2hlY2sgYXgtbWVzc2FnZS1zdGF0dXNcIj48L2k+XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIDwvc3Bhbj5cbiAgICA8L2Rpdj5cbjwvZGl2PiJdfQ==
|
@@ -4,33 +4,45 @@ import { AXChatMessageBaseComponent } from '../../chat.types';
|
|
4
4
|
import * as i0 from "@angular/core";
|
5
5
|
import * as i1 from "@acorex/components/decorators";
|
6
6
|
import * as i2 from "@acorex/components/audio-wave";
|
7
|
-
import * as i3 from "@
|
8
|
-
import * as i4 from "@
|
7
|
+
import * as i3 from "@acorex/components/loading";
|
8
|
+
import * as i4 from "@angular/common";
|
9
|
+
import * as i5 from "@acorex/core/format";
|
9
10
|
export class AXChatAudioMessageComponent extends AXChatMessageBaseComponent {
|
10
11
|
constructor() {
|
11
12
|
super();
|
12
13
|
this.config = { url: '' };
|
13
14
|
this.audioState = signal('paused');
|
15
|
+
this.selectedRate = signal(1);
|
16
|
+
this.selectedRateIndex = signal(1);
|
14
17
|
this.audioProgress = signal(0);
|
15
18
|
this.timeLeft = signal(0);
|
16
19
|
this.currentTime = signal(0);
|
17
20
|
this.duration = signal(0);
|
18
21
|
afterNextRender(() => {
|
19
22
|
this.config.url = this.message?.content;
|
20
|
-
this.
|
23
|
+
this.config.audioRate = 0.25;
|
24
|
+
if (this.message.fromId) {
|
25
|
+
const neutral300 = getComputedStyle(document.body).getPropertyValue('--ax-color-neutral-200');
|
26
|
+
const neutral500 = getComputedStyle(document.body).getPropertyValue('--ax-color-neutral-500');
|
27
|
+
this.config.waveColor = `rgba(${neutral300})`;
|
28
|
+
this.config.progressColor = `rgba(${neutral500})`;
|
29
|
+
}
|
30
|
+
this.handleLoadingProgress();
|
21
31
|
});
|
22
32
|
}
|
23
33
|
handlePauseClick() {
|
24
|
-
this.audio
|
34
|
+
this.audio?.pause();
|
25
35
|
this.audioState.set('paused');
|
26
36
|
}
|
27
37
|
handlePlayClick() {
|
28
|
-
this.audio
|
38
|
+
this.audio?.play()?.then(() => {
|
29
39
|
this.audioState.set('playing');
|
30
40
|
});
|
31
41
|
}
|
32
42
|
handleOnStatusChanged(e) {
|
33
|
-
|
43
|
+
if (e.status === 'load' || e.status === 'loading') {
|
44
|
+
this.audioState.set('loading');
|
45
|
+
}
|
34
46
|
if (e.status === 'loading') {
|
35
47
|
this.audioProgress.set(e.data.percent);
|
36
48
|
this.duration.set(Math.ceil(e.data.duration * 1000));
|
@@ -46,15 +58,40 @@ export class AXChatAudioMessageComponent extends AXChatMessageBaseComponent {
|
|
46
58
|
this.timeLeft.set(this.duration() - e.data.currentTime * 1000);
|
47
59
|
this.currentTime.set(e.data.currentTime * 1000);
|
48
60
|
}
|
61
|
+
if (e.status === 'error') {
|
62
|
+
this.audioState.set('error');
|
63
|
+
}
|
64
|
+
}
|
65
|
+
handleLoadingProgress() {
|
66
|
+
// this.audioLoaderProgress?.nativeElement.style.cssText = `--ax-audio-progress: ${this.audioProgress()}`;
|
67
|
+
}
|
68
|
+
handleCancelLoading() {
|
69
|
+
//
|
70
|
+
}
|
71
|
+
handleReloadClick() {
|
72
|
+
//
|
73
|
+
this.audioState.set('loading');
|
74
|
+
this.audio.load();
|
75
|
+
}
|
76
|
+
handleRateClick() {
|
77
|
+
const rates = [0.5, 1, 2, 4];
|
78
|
+
if (this.selectedRateIndex() == rates.length - 1) {
|
79
|
+
this.selectedRateIndex.set(0);
|
80
|
+
}
|
81
|
+
else {
|
82
|
+
this.selectedRateIndex.set(this.selectedRateIndex() + 1);
|
83
|
+
}
|
84
|
+
this.selectedRate.set(rates[this.selectedRateIndex()]);
|
85
|
+
this.audio.setRate(this.selectedRate());
|
49
86
|
}
|
50
87
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: AXChatAudioMessageComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
51
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.2", type: AXChatAudioMessageComponent, selector: "ax-chat-message-audio", inputs: { message: "message" }, viewQueries: [{ propertyName: "audio", first: true, predicate: ["a"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"ax-audio-controller\">\n\n
|
88
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.2", type: AXChatAudioMessageComponent, selector: "ax-chat-message-audio", inputs: { message: "message" }, viewQueries: [{ propertyName: "audio", first: true, predicate: ["a"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<ax-prefix>\n @switch (audioState()) {\n @case ('paused')\n {\n {{currentTime() | format:'time-duration' | async}}\n }\n @case ('playing')\n {\n {{currentTime() | format:'time-duration' | async}}\n }\n @default {\n {{duration() | format:'time-duration' | async}}\n }\n }\n <button class=\"ax-audio-speed\" (click)=\"handleRateClick()\"></button>\n\n</ax-prefix>\n<div class=\"ax-audio-controller\">\n\n @switch (audioState()) {\n @case ('playing') {\n <button (click)=\"handlePauseClick()\">\n <i class=\"ax-icon ax-icon-pause\"></i>\n </button>\n }\n\n @case ('ready') {\n <button (click)=\"handlePlayClick()\">\n <i class=\"ax-icon ax-icon-play\" style=\"margin-inline-start: 0.25rem;\"></i>\n </button>\n }\n\n @case ('paused')\n {\n <button (click)=\"handlePlayClick()\">\n <i class=\"ax-icon ax-icon-play\" style=\"margin-inline-start: 0.25rem;\"></i>\n </button>\n }\n\n @case ('error')\n {\n <button class=\"ax-state-error\" (click)=\"handleReloadClick()\">\n <i class=\"ax-icon ax-icon-reload\"></i>\n </button>\n }\n\n @default {\n <!-- <button (click)=\"handleCancelLoading()\" class=\"ax-audio-loader\" [style.--ax-audio-progress]=\"audioProgress()\"\n [style.--ax-animation-duration]=\"audioProgress()*10+'ms'\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 40 40\">\n <circle fill=\"none\" stroke-linecap=\"round\" cx=\"20\" cy=\"20\" r=\"15.915494309\" />\n </svg>\n </button> -->\n <button (click)=\"handleCancelLoading()\">\n <ax-loading-spinner [size]=\"24\" [stroke]=\"2\" color=\"white\"></ax-loading-spinner>\n </button>\n }\n }\n\n</div>\n<ax-audio-wave #a [config]=\"config\" (onStatusChanged)=\"handleOnStatusChanged($event)\"></ax-audio-wave>\n<ax-suffix>\n <div class=\"ax-audio-rate-button\" [class.ax-state-isOwn]=\"!message?.fromId\" (click)=\"handleRateClick()\">\n {{selectedRate()}}X</div>\n</ax-suffix>", styles: ["ax-chat-message-audio{display:flex;align-items:center;justify-content:space-between;gap:.25rem}ax-chat-message-audio .ax-audio-controller button{width:2.5rem;height:2.5rem;background-color:rgba(var(--ax-color-primary-500));color:rgba(var(--ax-color-primary-fore));border-radius:999rem;display:flex;align-items:center;justify-content:center}ax-chat-message-audio .ax-audio-controller button ax-loading-spinner{display:flex}ax-chat-message-audio .ax-audio-controller button.ax-state-error{background-color:rgba(var(--ax-color-danger-500));color:rgba(var(--ax-color-danger-fore))}ax-chat-message-audio .ax-audio-controller button>i{width:1.5rem;height:1.5rem;display:flex;align-items:center;justify-content:center;font-size:1.25rem;font-weight:700}ax-chat-message-audio .ax-audio-controller button.ax-audio-loader{--ax-audio-progress: 100}ax-chat-message-audio .ax-audio-controller button.ax-audio-loader svg circle{stroke:#fff;stroke-width:.125rem;stroke-dasharray:var(--ax-audio-progress);stroke-dashoffset:0;animation:loader normal;animation-duration:var(--ax-animation-duration);transform-origin:center;transform:rotate(-90deg)}@keyframes loader{0%{stroke-dashoffset:var(--ax-audio-progress);transform:rotate(-90deg)}to{stroke-dashoffset:0;transform:rotate(450deg)}}ax-chat-message-audio .ax-audio-wave{flex:1}.ax-audio-rate-button{background-color:rgba(var(--ax-color-neutral-200));color:rgba(var(--ax-color-neutral-fore-tint));border-radius:.5rem;padding:0 .5rem;font-weight:700;margin-inline-end:.5rem;cursor:pointer;-webkit-user-select:none;user-select:none}.ax-audio-rate-button.ax-state-isOwn{background-color:rgba(var(--ax-color-primary-200));color:rgba(var(--ax-color-primary-fore-tint))}\n"], dependencies: [{ kind: "component", type: i1.AXDecoratorGenericComponent, selector: "ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title , ax-sub-title, ax-placeholder, ax-overlay" }, { kind: "component", type: i2.AXAudioWaveComponent, selector: "ax-audio-wave", inputs: ["config"], outputs: ["onStatusChanged"] }, { kind: "component", type: i3.AXLoadingSpinnerComponent, selector: "ax-loading-spinner", inputs: ["color", "size", "stroke"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }, { kind: "pipe", type: i5.AXFormatPipe, name: "format" }], encapsulation: i0.ViewEncapsulation.None }); }
|
52
89
|
}
|
53
90
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: AXChatAudioMessageComponent, decorators: [{
|
54
91
|
type: Component,
|
55
|
-
args: [{ selector: 'ax-chat-message-audio', encapsulation: ViewEncapsulation.None, inputs: ['message'], template: "<div class=\"ax-audio-controller\">\n\n
|
92
|
+
args: [{ selector: 'ax-chat-message-audio', encapsulation: ViewEncapsulation.None, inputs: ['message'], template: "<ax-prefix>\n @switch (audioState()) {\n @case ('paused')\n {\n {{currentTime() | format:'time-duration' | async}}\n }\n @case ('playing')\n {\n {{currentTime() | format:'time-duration' | async}}\n }\n @default {\n {{duration() | format:'time-duration' | async}}\n }\n }\n <button class=\"ax-audio-speed\" (click)=\"handleRateClick()\"></button>\n\n</ax-prefix>\n<div class=\"ax-audio-controller\">\n\n @switch (audioState()) {\n @case ('playing') {\n <button (click)=\"handlePauseClick()\">\n <i class=\"ax-icon ax-icon-pause\"></i>\n </button>\n }\n\n @case ('ready') {\n <button (click)=\"handlePlayClick()\">\n <i class=\"ax-icon ax-icon-play\" style=\"margin-inline-start: 0.25rem;\"></i>\n </button>\n }\n\n @case ('paused')\n {\n <button (click)=\"handlePlayClick()\">\n <i class=\"ax-icon ax-icon-play\" style=\"margin-inline-start: 0.25rem;\"></i>\n </button>\n }\n\n @case ('error')\n {\n <button class=\"ax-state-error\" (click)=\"handleReloadClick()\">\n <i class=\"ax-icon ax-icon-reload\"></i>\n </button>\n }\n\n @default {\n <!-- <button (click)=\"handleCancelLoading()\" class=\"ax-audio-loader\" [style.--ax-audio-progress]=\"audioProgress()\"\n [style.--ax-animation-duration]=\"audioProgress()*10+'ms'\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 40 40\">\n <circle fill=\"none\" stroke-linecap=\"round\" cx=\"20\" cy=\"20\" r=\"15.915494309\" />\n </svg>\n </button> -->\n <button (click)=\"handleCancelLoading()\">\n <ax-loading-spinner [size]=\"24\" [stroke]=\"2\" color=\"white\"></ax-loading-spinner>\n </button>\n }\n }\n\n</div>\n<ax-audio-wave #a [config]=\"config\" (onStatusChanged)=\"handleOnStatusChanged($event)\"></ax-audio-wave>\n<ax-suffix>\n <div class=\"ax-audio-rate-button\" [class.ax-state-isOwn]=\"!message?.fromId\" (click)=\"handleRateClick()\">\n {{selectedRate()}}X</div>\n</ax-suffix>", styles: ["ax-chat-message-audio{display:flex;align-items:center;justify-content:space-between;gap:.25rem}ax-chat-message-audio .ax-audio-controller button{width:2.5rem;height:2.5rem;background-color:rgba(var(--ax-color-primary-500));color:rgba(var(--ax-color-primary-fore));border-radius:999rem;display:flex;align-items:center;justify-content:center}ax-chat-message-audio .ax-audio-controller button ax-loading-spinner{display:flex}ax-chat-message-audio .ax-audio-controller button.ax-state-error{background-color:rgba(var(--ax-color-danger-500));color:rgba(var(--ax-color-danger-fore))}ax-chat-message-audio .ax-audio-controller button>i{width:1.5rem;height:1.5rem;display:flex;align-items:center;justify-content:center;font-size:1.25rem;font-weight:700}ax-chat-message-audio .ax-audio-controller button.ax-audio-loader{--ax-audio-progress: 100}ax-chat-message-audio .ax-audio-controller button.ax-audio-loader svg circle{stroke:#fff;stroke-width:.125rem;stroke-dasharray:var(--ax-audio-progress);stroke-dashoffset:0;animation:loader normal;animation-duration:var(--ax-animation-duration);transform-origin:center;transform:rotate(-90deg)}@keyframes loader{0%{stroke-dashoffset:var(--ax-audio-progress);transform:rotate(-90deg)}to{stroke-dashoffset:0;transform:rotate(450deg)}}ax-chat-message-audio .ax-audio-wave{flex:1}.ax-audio-rate-button{background-color:rgba(var(--ax-color-neutral-200));color:rgba(var(--ax-color-neutral-fore-tint));border-radius:.5rem;padding:0 .5rem;font-weight:700;margin-inline-end:.5rem;cursor:pointer;-webkit-user-select:none;user-select:none}.ax-audio-rate-button.ax-state-isOwn{background-color:rgba(var(--ax-color-primary-200));color:rgba(var(--ax-color-primary-fore-tint))}\n"] }]
|
56
93
|
}], ctorParameters: () => [], propDecorators: { audio: [{
|
57
94
|
type: ViewChild,
|
58
95
|
args: ['a']
|
59
96
|
}] } });
|
60
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhdC1tZXNzYWdlLXZvaWNlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9jaGF0L3NyYy9saWIvY2hhdC1tZXNzYWdlcy9jaGF0LW1lc3NhZ2VzLXZvaWNlL2NoYXQtbWVzc2FnZS12b2ljZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvY2hhdC9zcmMvbGliL2NoYXQtbWVzc2FnZXMvY2hhdC1tZXNzYWdlcy12b2ljZS9jaGF0LW1lc3NhZ2Utdm9pY2UuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUEwQixvQkFBb0IsRUFBZ0IsTUFBTSwrQkFBK0IsQ0FBQztBQUMzRyxPQUFPLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxpQkFBaUIsRUFBa0IsZUFBZSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNqSCxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQzs7Ozs7O0FBUzlELE1BQU0sT0FBTywyQkFBNEIsU0FBUSwwQkFBa0M7SUFZakY7UUFDRSxLQUFLLEVBQUUsQ0FBQztRQVZWLFdBQU0sR0FBaUIsRUFBRSxHQUFHLEVBQUUsRUFBRSxFQUFFLENBQUM7UUFFbkMsZUFBVSxHQUErRCxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7UUFFaEYsa0JBQWEsR0FBRyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDMUIsYUFBUSxHQUFHLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNyQixnQkFBVyxHQUFHLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUN4QixhQUFRLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBSTdCLGVBQWUsQ0FBQyxHQUFHLEVBQUU7WUFDbkIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLEdBQUcsSUFBSSxDQUFDLE9BQU8sRUFBRSxPQUFPLENBQUM7WUFDeEMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDakMsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsZ0JBQWdCO1FBQ2QsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUNuQixJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUNoQyxDQUFDO0lBRUQsZUFBZTtRQUNiLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRTtZQUMxQixJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUNqQyxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxxQkFBcUIsQ0FBQyxDQUF5QjtRQUM3QyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzlCLElBQUksQ0FBQyxDQUFDLE1BQU0sS0FBSyxTQUFTLEVBQUUsQ0FBQztZQUMzQixJQUFJLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQ3ZDLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLENBQUMsQ0FBQztRQUN2RCxDQUFDO1FBQ0QsSUFBSSxDQUFDLENBQUMsTUFBTSxLQUFLLE9BQU8sRUFBRSxDQUFDO1lBQ3pCLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQzdCLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLENBQUMsQ0FBQztRQUN2RCxDQUFDO1FBQ0QsSUFBSSxDQUFDLENBQUMsTUFBTSxLQUFLLFFBQVEsRUFBRSxDQUFDO1lBQzFCLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ2hDLENBQUM7UUFDRCxJQUFJLENBQUMsQ0FBQyxNQUFNLEtBQUssWUFBWSxFQUFFLENBQUM7WUFDOUIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxDQUFDO1lBQy9ELElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxDQUFDO1FBQ2xELENBQUM7SUFDSCxDQUFDOzhHQWhEVSwyQkFBMkI7a0dBQTNCLDJCQUEyQixnTkNYeEMsMnRDQThDWTs7MkZEbkNDLDJCQUEyQjtrQkFQdkMsU0FBUzsrQkFDRSx1QkFBdUIsaUJBR2xCLGlCQUFpQixDQUFDLElBQUksVUFDN0IsQ0FBQyxTQUFTLENBQUM7d0RBR0gsS0FBSztzQkFBcEIsU0FBUzt1QkFBQyxHQUFHIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVhBdWRpb1dhdmVDaGFuZ2VFdmVudCwgQVhBdWRpb1dhdmVDb21wb25lbnQsIEFYV2F2ZUNvbmZpZyB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9hdWRpby13YXZlJztcbmltcG9ydCB7IENvbXBvbmVudCwgVmlld0NoaWxkLCBWaWV3RW5jYXBzdWxhdGlvbiwgV3JpdGFibGVTaWduYWwsIGFmdGVyTmV4dFJlbmRlciwgc2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBWENoYXRNZXNzYWdlQmFzZUNvbXBvbmVudCB9IGZyb20gJy4uLy4uL2NoYXQudHlwZXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdheC1jaGF0LW1lc3NhZ2UtYXVkaW8nLFxuICB0ZW1wbGF0ZVVybDogJy4vY2hhdC1tZXNzYWdlLXZvaWNlLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmw6IGAuL2NoYXQtbWVzc2FnZS12b2ljZS5jb21wb25lbnQuc2Nzc2AsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIGlucHV0czogWydtZXNzYWdlJ10sXG59KVxuZXhwb3J0IGNsYXNzIEFYQ2hhdEF1ZGlvTWVzc2FnZUNvbXBvbmVudCBleHRlbmRzIEFYQ2hhdE1lc3NhZ2VCYXNlQ29tcG9uZW50PHN0cmluZz4ge1xuICBAVmlld0NoaWxkKCdhJykgYXVkaW86IEFYQXVkaW9XYXZlQ29tcG9uZW50O1xuXG4gIGNvbmZpZzogQVhXYXZlQ29uZmlnID0geyB1cmw6ICcnIH07XG5cbiAgYXVkaW9TdGF0ZTogV3JpdGFibGVTaWduYWw8J3BsYXlpbmcnIHwgJ3BhdXNlZCcgfCAnbG9hZGluZycgfCAncmVhZHknPiA9IHNpZ25hbCgncGF1c2VkJyk7XG5cbiAgcHJvdGVjdGVkIGF1ZGlvUHJvZ3Jlc3MgPSBzaWduYWwoMCk7XG4gIHByb3RlY3RlZCB0aW1lTGVmdCA9IHNpZ25hbCgwKTtcbiAgcHJvdGVjdGVkIGN1cnJlbnRUaW1lID0gc2lnbmFsKDApO1xuICBwcm90ZWN0ZWQgZHVyYXRpb24gPSBzaWduYWwoMCk7XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoKTtcbiAgICBhZnRlck5leHRSZW5kZXIoKCkgPT4ge1xuICAgICAgdGhpcy5jb25maWcudXJsID0gdGhpcy5tZXNzYWdlPy5jb250ZW50O1xuICAgICAgdGhpcy5hdWRpb1N0YXRlLnNldCgnbG9hZGluZycpO1xuICAgIH0pO1xuICB9XG5cbiAgaGFuZGxlUGF1c2VDbGljaygpIHtcbiAgICB0aGlzLmF1ZGlvLnBhdXNlKCk7XG4gICAgdGhpcy5hdWRpb1N0YXRlLnNldCgncGF1c2VkJyk7XG4gIH1cblxuICBoYW5kbGVQbGF5Q2xpY2soKSB7XG4gICAgdGhpcy5hdWRpby5wbGF5KCkudGhlbigoKSA9PiB7XG4gICAgICB0aGlzLmF1ZGlvU3RhdGUuc2V0KCdwbGF5aW5nJyk7XG4gICAgfSk7XG4gIH1cblxuICBoYW5kbGVPblN0YXR1c0NoYW5nZWQoZTogQVhBdWRpb1dhdmVDaGFuZ2VFdmVudCkge1xuICAgIGNvbnNvbGUubG9nKGUuc3RhdHVzLCBlLmRhdGEpO1xuICAgIGlmIChlLnN0YXR1cyA9PT0gJ2xvYWRpbmcnKSB7XG4gICAgICB0aGlzLmF1ZGlvUHJvZ3Jlc3Muc2V0KGUuZGF0YS5wZXJjZW50KTtcbiAgICAgIHRoaXMuZHVyYXRpb24uc2V0KE1hdGguY2VpbChlLmRhdGEuZHVyYXRpb24gKiAxMDAwKSk7XG4gICAgfVxuICAgIGlmIChlLnN0YXR1cyA9PT0gJ3JlYWR5Jykge1xuICAgICAgdGhpcy5hdWRpb1N0YXRlLnNldCgncmVhZHknKTtcbiAgICAgIHRoaXMuZHVyYXRpb24uc2V0KE1hdGguY2VpbChlLmRhdGEuZHVyYXRpb24gKiAxMDAwKSk7XG4gICAgfVxuICAgIGlmIChlLnN0YXR1cyA9PT0gJ2ZpbmlzaCcpIHtcbiAgICAgIHRoaXMuYXVkaW9TdGF0ZS5zZXQoJ3BhdXNlZCcpO1xuICAgIH1cbiAgICBpZiAoZS5zdGF0dXMgPT09ICd0aW1ldXBkYXRlJykge1xuICAgICAgdGhpcy50aW1lTGVmdC5zZXQodGhpcy5kdXJhdGlvbigpIC0gZS5kYXRhLmN1cnJlbnRUaW1lICogMTAwMCk7XG4gICAgICB0aGlzLmN1cnJlbnRUaW1lLnNldChlLmRhdGEuY3VycmVudFRpbWUgKiAxMDAwKTtcbiAgICB9XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJheC1hdWRpby1jb250cm9sbGVyXCI+XG5cblxuICBAc3dpdGNoIChhdWRpb1N0YXRlKCkpIHtcbiAgQGNhc2UgKCdwbGF5aW5nJykge1xuICA8YnV0dG9uIChjbGljayk9XCJoYW5kbGVQYXVzZUNsaWNrKClcIj5cbiAgICA8aSBjbGFzcz1cImZhLXNvbGlkIGZhLXBhdXNlXCI+PC9pPlxuICA8L2J1dHRvbj5cbiAgfVxuICBAY2FzZSAoJ3BhdXNlZCcpXG4gIHtcbiAgPGJ1dHRvbiAoY2xpY2spPVwiaGFuZGxlUGxheUNsaWNrKClcIj5cbiAgICA8aSBjbGFzcz1cImZhLXNvbGlkIGZhLXBsYXlcIiBzdHlsZT1cIm1hcmdpbi1pbmxpbmUtc3RhcnQ6IDAuMjVyZW07XCI+PC9pPlxuICA8L2J1dHRvbj5cbiAgfVxuICBAY2FzZSAoJ2xvYWRpbmcnKSB7XG4gIDwhLS0gPGJ1dHRvbiAoY2xpY2spPVwiaGFuZGxlUGxheUNsaWNrKClcIj5cbiAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDQwIDQwXCIgY2xhc3M9XCJsb2FkZXJcIj5cbiAgICAgIDxjaXJjbGUgY2xhc3M9XCJwcm9ncmVzc1wiIGZpbGw9XCJub25lXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIGN4PVwiMjBcIiBjeT1cIjIwXCIgcj1cIjE1LjkxNTQ5NDMwOVwiIC8+XG4gICAgPC9zdmc+XG4gIDwvYnV0dG9uPiAtLT5cbiAgfVxuICBAZGVmYXVsdCB7XG4gIDxidXR0b24gKGNsaWNrKT1cImhhbmRsZVBsYXlDbGljaygpXCI+XG4gICAgPGkgY2xhc3M9XCJmYS1zb2xpZCBmYS1wbGF5XCIgc3R5bGU9XCJtYXJnaW4taW5saW5lLXN0YXJ0OiAwLjI1cmVtO1wiPjwvaT5cbiAgPC9idXR0b24+XG4gIH1cbiAgfVxuXG48L2Rpdj5cbjxheC1hdWRpby13YXZlICNhIFtjb25maWddPVwiY29uZmlnXCIgKG9uU3RhdHVzQ2hhbmdlZCk9XCJoYW5kbGVPblN0YXR1c0NoYW5nZWQoJGV2ZW50KVwiPjwvYXgtYXVkaW8td2F2ZT5cblxuPGF4LXByZWZpeD5cbiAgQHN3aXRjaCAoYXVkaW9TdGF0ZSgpKSB7XG4gIEBjYXNlICgncGF1c2VkJylcbiAge1xuICB7e2N1cnJlbnRUaW1lKCkgfCBmb3JtYXQ6J3RpbWUtZHVyYXRpb24nIHwgYXN5bmN9fVxuICB9XG4gIEBjYXNlICgncGxheWluZycpXG4gIHtcbiAge3tjdXJyZW50VGltZSgpIHwgZm9ybWF0Oid0aW1lLWR1cmF0aW9uJyB8IGFzeW5jfX1cbiAgfVxuICBAZGVmYXVsdCB7XG4gIHt7ZHVyYXRpb24oKSB8IGZvcm1hdDondGltZS1kdXJhdGlvbicgfCBhc3luY319XG4gIH1cbiAgfVxuPC9heC1wcmVmaXg+Il19
|
97
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhdC1tZXNzYWdlLXZvaWNlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9jaGF0L3NyYy9saWIvY2hhdC1tZXNzYWdlcy9jaGF0LW1lc3NhZ2VzLXZvaWNlL2NoYXQtbWVzc2FnZS12b2ljZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvY2hhdC9zcmMvbGliL2NoYXQtbWVzc2FnZXMvY2hhdC1tZXNzYWdlcy12b2ljZS9jaGF0LW1lc3NhZ2Utdm9pY2UuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUEwQixvQkFBb0IsRUFBZ0IsTUFBTSwrQkFBK0IsQ0FBQztBQUMzRyxPQUFPLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxpQkFBaUIsRUFBa0IsZUFBZSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNqSCxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQzs7Ozs7OztBQVM5RCxNQUFNLE9BQU8sMkJBQTRCLFNBQVEsMEJBQWtDO0lBY2pGO1FBQ0UsS0FBSyxFQUFFLENBQUM7UUFaVixXQUFNLEdBQWlCLEVBQUUsR0FBRyxFQUFFLEVBQUUsRUFBRSxDQUFDO1FBRW5DLGVBQVUsR0FBeUUsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ3BHLGlCQUFZLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3pCLHNCQUFpQixHQUFHLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUVwQixrQkFBYSxHQUFHLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUMxQixhQUFRLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3JCLGdCQUFXLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3hCLGFBQVEs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Q0FBQyxTQUFTLENBQUM7d0RBR0gsS0FBSztzQkFBcEIsU0FBUzt1QkFBQyxHQUFHIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVhBdWRpb1dhdmVDaGFuZ2VFdmVudCwgQVhBdWRpb1dhdmVDb21wb25lbnQsIEFYV2F2ZUNvbmZpZyB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9hdWRpby13YXZlJztcbmltcG9ydCB7IENvbXBvbmVudCwgVmlld0NoaWxkLCBWaWV3RW5jYXBzdWxhdGlvbiwgV3JpdGFibGVTaWduYWwsIGFmdGVyTmV4dFJlbmRlciwgc2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBWENoYXRNZXNzYWdlQmFzZUNvbXBvbmVudCB9IGZyb20gJy4uLy4uL2NoYXQudHlwZXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdheC1jaGF0LW1lc3NhZ2UtYXVkaW8nLFxuICB0ZW1wbGF0ZVVybDogJy4vY2hhdC1tZXNzYWdlLXZvaWNlLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmw6IGAuL2NoYXQtbWVzc2FnZS12b2ljZS5jb21wb25lbnQuc2Nzc2AsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIGlucHV0czogWydtZXNzYWdlJ10sXG59KVxuZXhwb3J0IGNsYXNzIEFYQ2hhdEF1ZGlvTWVzc2FnZUNvbXBvbmVudCBleHRlbmRzIEFYQ2hhdE1lc3NhZ2VCYXNlQ29tcG9uZW50PHN0cmluZz4ge1xuICBAVmlld0NoaWxkKCdhJykgYXVkaW86IEFYQXVkaW9XYXZlQ29tcG9uZW50O1xuXG4gIGNvbmZpZzogQVhXYXZlQ29uZmlnID0geyB1cmw6ICcnIH07XG5cbiAgYXVkaW9TdGF0ZTogV3JpdGFibGVTaWduYWw8J3BsYXlpbmcnIHwgJ3BhdXNlZCcgfCAnbG9hZGluZycgfCAncmVhZHknIHwgJ2Vycm9yJz4gPSBzaWduYWwoJ3BhdXNlZCcpO1xuICBzZWxlY3RlZFJhdGUgPSBzaWduYWwoMSk7XG4gIHNlbGVjdGVkUmF0ZUluZGV4ID0gc2lnbmFsKDEpO1xuXG4gIHByb3RlY3RlZCBhdWRpb1Byb2dyZXNzID0gc2lnbmFsKDApO1xuICBwcm90ZWN0ZWQgdGltZUxlZnQgPSBzaWduYWwoMCk7XG4gIHByb3RlY3RlZCBjdXJyZW50VGltZSA9IHNpZ25hbCgwKTtcbiAgcHJvdGVjdGVkIGR1cmF0aW9uID0gc2lnbmFsKDApO1xuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHN1cGVyKCk7XG4gICAgYWZ0ZXJOZXh0UmVuZGVyKCgpID0+IHtcbiAgICAgIHRoaXMuY29uZmlnLnVybCA9IHRoaXMubWVzc2FnZT8uY29udGVudDtcbiAgICAgIHRoaXMuY29uZmlnLmF1ZGlvUmF0ZSA9IDAuMjU7XG4gICAgICBpZiAodGhpcy5tZXNzYWdlLmZyb21JZCkge1xuICAgICAgICBjb25zdCBuZXV0cmFsMzAwID0gZ2V0Q29tcHV0ZWRTdHlsZShkb2N1bWVudC5ib2R5KS5nZXRQcm9wZXJ0eVZhbHVlKCctLWF4LWNvbG9yLW5ldXRyYWwtMjAwJyk7XG4gICAgICAgIGNvbnN0IG5ldXRyYWw1MDAgPSBnZXRDb21wdXRlZFN0eWxlKGRvY3VtZW50LmJvZHkpLmdldFByb3BlcnR5VmFsdWUoJy0tYXgtY29sb3ItbmV1dHJhbC01MDAnKTtcblxuICAgICAgICB0aGlzLmNvbmZpZy53YXZlQ29sb3IgPSBgcmdiYSgke25ldXRyYWwzMDB9KWA7XG4gICAgICAgIHRoaXMuY29uZmlnLnByb2dyZXNzQ29sb3IgPSBgcmdiYSgke25ldXRyYWw1MDB9KWA7XG4gICAgICB9XG4gICAgICB0aGlzLmhhbmRsZUxvYWRpbmdQcm9ncmVzcygpO1xuICAgIH0pO1xuICB9XG5cbiAgaGFuZGxlUGF1c2VDbGljaygpIHtcbiAgICB0aGlzLmF1ZGlvPy5wYXVzZSgpO1xuICAgIHRoaXMuYXVkaW9TdGF0ZS5zZXQoJ3BhdXNlZCcpO1xuICB9XG5cbiAgaGFuZGxlUGxheUNsaWNrKCkge1xuICAgIHRoaXMuYXVkaW8/LnBsYXkoKT8udGhlbigoKSA9PiB7XG4gICAgICB0aGlzLmF1ZGlvU3RhdGUuc2V0KCdwbGF5aW5nJyk7XG4gICAgfSk7XG4gIH1cblxuICBoYW5kbGVPblN0YXR1c0NoYW5nZWQoZTogQVhBdWRpb1dhdmVDaGFuZ2VFdmVudCkge1xuICAgIGlmIChlLnN0YXR1cyA9PT0gJ2xvYWQnIHx8IGUuc3RhdHVzID09PSAnbG9hZGluZycpIHtcbiAgICAgIHRoaXMuYXVkaW9TdGF0ZS5zZXQoJ2xvYWRpbmcnKTtcbiAgICB9XG4gICAgaWYgKGUuc3RhdHVzID09PSAnbG9hZGluZycpIHtcbiAgICAgIHRoaXMuYXVkaW9Qcm9ncmVzcy5zZXQoZS5kYXRhLnBlcmNlbnQpO1xuICAgICAgdGhpcy5kdXJhdGlvbi5zZXQoTWF0aC5jZWlsKGUuZGF0YS5kdXJhdGlvbiAqIDEwMDApKTtcbiAgICB9XG4gICAgaWYgKGUuc3RhdHVzID09PSAncmVhZHknKSB7XG4gICAgICB0aGlzLmF1ZGlvU3RhdGUuc2V0KCdyZWFkeScpO1xuICAgICAgdGhpcy5kdXJhdGlvbi5zZXQoTWF0aC5jZWlsKGUuZGF0YS5kdXJhdGlvbiAqIDEwMDApKTtcbiAgICB9XG4gICAgaWYgKGUuc3RhdHVzID09PSAnZmluaXNoJykge1xuICAgICAgdGhpcy5hdWRpb1N0YXRlLnNldCgncGF1c2VkJyk7XG4gICAgfVxuICAgIGlmIChlLnN0YXR1cyA9PT0gJ3RpbWV1cGRhdGUnKSB7XG4gICAgICB0aGlzLnRpbWVMZWZ0LnNldCh0aGlzLmR1cmF0aW9uKCkgLSBlLmRhdGEuY3VycmVudFRpbWUgKiAxMDAwKTtcbiAgICAgIHRoaXMuY3VycmVudFRpbWUuc2V0KGUuZGF0YS5jdXJyZW50VGltZSAqIDEwMDApO1xuICAgIH1cbiAgICBpZiAoZS5zdGF0dXMgPT09ICdlcnJvcicpIHtcbiAgICAgIHRoaXMuYXVkaW9TdGF0ZS5zZXQoJ2Vycm9yJyk7XG4gICAgfVxuICB9XG5cbiAgaGFuZGxlTG9hZGluZ1Byb2dyZXNzKCkge1xuICAgIC8vIHRoaXMuYXVkaW9Mb2FkZXJQcm9ncmVzcz8ubmF0aXZlRWxlbWVudC5zdHlsZS5jc3NUZXh0ID0gYC0tYXgtYXVkaW8tcHJvZ3Jlc3M6ICR7dGhpcy5hdWRpb1Byb2dyZXNzKCl9YDtcbiAgfVxuXG4gIGhhbmRsZUNhbmNlbExvYWRpbmcoKSB7XG4gICAgLy9cbiAgfVxuXG4gIGhhbmRsZVJlbG9hZENsaWNrKCkge1xuICAgIC8vXG4gICAgdGhpcy5hdWRpb1N0YXRlLnNldCgnbG9hZGluZycpO1xuICAgIHRoaXMuYXVkaW8ubG9hZCgpO1xuICB9XG5cbiAgaGFuZGxlUmF0ZUNsaWNrKCkge1xuICAgIGNvbnN0IHJhdGVzID0gWzAuNSwgMSwgMiwgNF07XG4gICAgaWYgKHRoaXMuc2VsZWN0ZWRSYXRlSW5kZXgoKSA9PSByYXRlcy5sZW5ndGggLSAxKSB7XG4gICAgICB0aGlzLnNlbGVjdGVkUmF0ZUluZGV4LnNldCgwKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5zZWxlY3RlZFJhdGVJbmRleC5zZXQodGhpcy5zZWxlY3RlZFJhdGVJbmRleCgpICsgMSk7XG4gICAgfVxuICAgIHRoaXMuc2VsZWN0ZWRSYXRlLnNldChyYXRlc1t0aGlzLnNlbGVjdGVkUmF0ZUluZGV4KCldKTtcbiAgICB0aGlzLmF1ZGlvLnNldFJhdGUodGhpcy5zZWxlY3RlZFJhdGUoKSk7XG4gIH1cbn1cbiIsIjxheC1wcmVmaXg+XG4gIEBzd2l0Y2ggKGF1ZGlvU3RhdGUoKSkge1xuICBAY2FzZSAoJ3BhdXNlZCcpXG4gIHtcbiAge3tjdXJyZW50VGltZSgpIHwgZm9ybWF0Oid0aW1lLWR1cmF0aW9uJyB8IGFzeW5jfX1cbiAgfVxuICBAY2FzZSAoJ3BsYXlpbmcnKVxuICB7XG4gIHt7Y3VycmVudFRpbWUoKSB8IGZvcm1hdDondGltZS1kdXJhdGlvbicgfCBhc3luY319XG4gIH1cbiAgQGRlZmF1bHQge1xuICB7e2R1cmF0aW9uKCkgfCBmb3JtYXQ6J3RpbWUtZHVyYXRpb24nIHwgYXN5bmN9fVxuICB9XG4gIH1cbiAgPGJ1dHRvbiBjbGFzcz1cImF4LWF1ZGlvLXNwZWVkXCIgKGNsaWNrKT1cImhhbmRsZVJhdGVDbGljaygpXCI+PC9idXR0b24+XG5cbjwvYXgtcHJlZml4PlxuPGRpdiBjbGFzcz1cImF4LWF1ZGlvLWNvbnRyb2xsZXJcIj5cblxuICBAc3dpdGNoIChhdWRpb1N0YXRlKCkpIHtcbiAgQGNhc2UgKCdwbGF5aW5nJykge1xuICA8YnV0dG9uIChjbGljayk9XCJoYW5kbGVQYXVzZUNsaWNrKClcIj5cbiAgICA8aSBjbGFzcz1cImF4LWljb24gYXgtaWNvbi1wYXVzZVwiPjwvaT5cbiAgPC9idXR0b24+XG4gIH1cblxuICBAY2FzZSAoJ3JlYWR5Jykge1xuICA8YnV0dG9uIChjbGljayk9XCJoYW5kbGVQbGF5Q2xpY2soKVwiPlxuICAgIDxpIGNsYXNzPVwiYXgtaWNvbiBheC1pY29uLXBsYXlcIiBzdHlsZT1cIm1hcmdpbi1pbmxpbmUtc3RhcnQ6IDAuMjVyZW07XCI+PC9pPlxuICA8L2J1dHRvbj5cbiAgfVxuXG4gIEBjYXNlICgncGF1c2VkJylcbiAge1xuICA8YnV0dG9uIChjbGljayk9XCJoYW5kbGVQbGF5Q2xpY2soKVwiPlxuICAgIDxpIGNsYXNzPVwiYXgtaWNvbiBheC1pY29uLXBsYXlcIiBzdHlsZT1cIm1hcmdpbi1pbmxpbmUtc3RhcnQ6IDAuMjVyZW07XCI+PC9pPlxuICA8L2J1dHRvbj5cbiAgfVxuXG4gIEBjYXNlICgnZXJyb3InKVxuICB7XG4gIDxidXR0b24gY2xhc3M9XCJheC1zdGF0ZS1lcnJvclwiIChjbGljayk9XCJoYW5kbGVSZWxvYWRDbGljaygpXCI+XG4gICAgPGkgY2xhc3M9XCJheC1pY29uIGF4LWljb24tcmVsb2FkXCI+PC9pPlxuICA8L2J1dHRvbj5cbiAgfVxuXG4gIEBkZWZhdWx0IHtcbiAgPCEtLSA8YnV0dG9uIChjbGljayk9XCJoYW5kbGVDYW5jZWxMb2FkaW5nKClcIiBjbGFzcz1cImF4LWF1ZGlvLWxvYWRlclwiIFtzdHlsZS4tLWF4LWF1ZGlvLXByb2dyZXNzXT1cImF1ZGlvUHJvZ3Jlc3MoKVwiXG4gICAgW3N0eWxlLi0tYXgtYW5pbWF0aW9uLWR1cmF0aW9uXT1cImF1ZGlvUHJvZ3Jlc3MoKSoxMCsnbXMnXCI+XG4gICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCA0MCA0MFwiPlxuICAgICAgPGNpcmNsZSBmaWxsPVwibm9uZVwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBjeD1cIjIwXCIgY3k9XCIyMFwiIHI9XCIxNS45MTU0OTQzMDlcIiAvPlxuICAgIDwvc3ZnPlxuICA8L2J1dHRvbj4gLS0+XG4gIDxidXR0b24gKGNsaWNrKT1cImhhbmRsZUNhbmNlbExvYWRpbmcoKVwiPlxuICAgIDxheC1sb2FkaW5nLXNwaW5uZXIgW3NpemVdPVwiMjRcIiBbc3Ryb2tlXT1cIjJcIiBjb2xvcj1cIndoaXRlXCI+PC9heC1sb2FkaW5nLXNwaW5uZXI+XG4gIDwvYnV0dG9uPlxuICB9XG4gIH1cblxuPC9kaXY+XG48YXgtYXVkaW8td2F2ZSAjYSBbY29uZmlnXT1cImNvbmZpZ1wiIChvblN0YXR1c0NoYW5nZWQpPVwiaGFuZGxlT25TdGF0dXNDaGFuZ2VkKCRldmVudClcIj48L2F4LWF1ZGlvLXdhdmU+XG48YXgtc3VmZml4PlxuICA8ZGl2IGNsYXNzPVwiYXgtYXVkaW8tcmF0ZS1idXR0b25cIiBbY2xhc3MuYXgtc3RhdGUtaXNPd25dPVwiIW1lc3NhZ2U/LmZyb21JZFwiIChjbGljayk9XCJoYW5kbGVSYXRlQ2xpY2soKVwiPlxuICAgIHt7c2VsZWN0ZWRSYXRlKCl9fVg8L2Rpdj5cbjwvYXgtc3VmZml4PiJdfQ==
|
@@ -4,6 +4,7 @@ import { AXCircularProgressModule } from '@acorex/components/circular-progress';
|
|
4
4
|
import { AXRippleDirective } from '@acorex/components/common';
|
5
5
|
import { AXDecoratorModule } from '@acorex/components/decorators';
|
6
6
|
import { AXDropdownModule } from '@acorex/components/dropdown';
|
7
|
+
import { AXLoadingModule } from '@acorex/components/loading';
|
7
8
|
import { AXDateTimeModule } from '@acorex/core/date-time';
|
8
9
|
import { AXFormatModule } from '@acorex/core/format';
|
9
10
|
import { AXTranslationModule } from '@acorex/core/translation';
|
@@ -40,6 +41,7 @@ const MODULES = [
|
|
40
41
|
AXCircularProgressModule,
|
41
42
|
AXDateTimeModule,
|
42
43
|
CdkPortalOutlet,
|
44
|
+
AXLoadingModule,
|
43
45
|
];
|
44
46
|
export class AXChatModule {
|
45
47
|
static forRoot(config) {
|
@@ -109,7 +111,8 @@ export class AXChatModule {
|
|
109
111
|
AXAudioWaveModule,
|
110
112
|
AXCircularProgressModule,
|
111
113
|
AXDateTimeModule,
|
112
|
-
CdkPortalOutlet
|
114
|
+
CdkPortalOutlet,
|
115
|
+
AXLoadingModule], exports: [AXChatViewComponent,
|
113
116
|
AXChatInputComponent,
|
114
117
|
AXChatMessageComponent,
|
115
118
|
AXChatTextMessageComponent,
|
@@ -123,7 +126,8 @@ export class AXChatModule {
|
|
123
126
|
AXFormatModule,
|
124
127
|
AXAudioWaveModule,
|
125
128
|
AXCircularProgressModule,
|
126
|
-
AXDateTimeModule
|
129
|
+
AXDateTimeModule,
|
130
|
+
AXLoadingModule] }); }
|
127
131
|
}
|
128
132
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: AXChatModule, decorators: [{
|
129
133
|
type: NgModule,
|
@@ -139,4 +143,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.2", ngImpor
|
|
139
143
|
type: Inject,
|
140
144
|
args: ['AXChatModuleFactory']
|
141
145
|
}] }] });
|
142
|
-
//# sourceMappingURL=data:application/json;base64,
|
146
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhdC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvY2hhdC9zcmMvbGliL2NoYXQubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUNoRixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUM5RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDN0QsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDMUQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQy9ELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzFELE9BQU8sRUFBRSxNQUFNLEVBQXVCLFFBQVEsRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDaEYsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ3pFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQy9FLE9BQU8sRUFB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d0I7WUFDeEIsZ0JBQWdCO1lBQ2hCLGVBQWU7WUFDZixlQUFlLGFBcEJmLG1CQUFtQjtZQUNuQixvQkFBb0I7WUFDcEIsc0JBQXNCO1lBQ3RCLDBCQUEwQjtZQUMxQiwyQkFBMkI7K0dBeUJoQixZQUFZLGFBRlosQ0FBQyxrQkFBa0IsQ0FBQyxZQXBCL0IsWUFBWTtZQUNaLFdBQVc7WUFHWCxjQUFjO1lBQ2QsaUJBQWlCO1lBQ2pCLG1CQUFtQjtZQUNuQixnQkFBZ0I7WUFDaEIsY0FBYztZQUNkLGlCQUFpQjtZQUNqQix3QkFBd0I7WUFDeEIsZ0JBQWdCO1lBRWhCLGVBQWU7OzJGQVNKLFlBQVk7a0JBTnhCLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFLENBQUMsR0FBRyxTQUFTLENBQUM7b0JBQzVCLE9BQU8sRUFBRSxDQUFDLEdBQUcsT0FBTyxDQUFDO29CQUNyQixPQUFPLEVBQUUsQ0FBQyxHQUFHLFNBQVMsQ0FBQztvQkFDdkIsU0FBUyxFQUFFLENBQUMsa0JBQWtCLENBQUM7aUJBQ2hDOzswQkFpRGMsUUFBUTs7MEJBQUksTUFBTTsyQkFBQyxxQkFBcUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWEF1ZGlvV2F2ZU1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9hdWRpby13YXZlJztcbmltcG9ydCB7IEFYQnV0dG9uTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2J1dHRvbic7XG5pbXBvcnQgeyBBWENpcmN1bGFyUHJvZ3Jlc3NNb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvY2lyY3VsYXItcHJvZ3Jlc3MnO1xuaW1wb3J0IHsgQVhSaXBwbGVEaXJlY3RpdmUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvY29tbW9uJztcbmltcG9ydCB7IEFYRGVjb3JhdG9yTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2RlY29yYXRvcnMnO1xuaW1wb3J0IHsgQVhEcm9wZG93bk1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9kcm9wZG93bic7XG5pbXBvcnQgeyBBWExvYWRpbmdNb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvbG9hZGluZyc7XG5pbXBvcnQgeyBBWERhdGVUaW1lTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb3JlL2RhdGUtdGltZSc7XG5pbXBvcnQgeyBBWEZvcm1hdE1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29yZS9mb3JtYXQnO1xuaW1wb3J0IHsgQVhUcmFuc2xhdGlvbk1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29yZS90cmFuc2xhdGlvbic7XG5pbXBvcnQgeyBDZGtQb3J0YWxPdXRsZXQgfSBmcm9tICdAYW5ndWxhci9jZGsvcG9ydGFsJztcbmltcG9ydCB7IEFzeW5jUGlwZSwgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEluamVjdCwgTW9kdWxlV2l0aFByb3ZpZGVycywgTmdNb2R1bGUsIE9wdGlvbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IEFYQ2hhdElucHV0Q29tcG9uZW50IH0gZnJvbSAnLi9jaGF0LWlucHV0L2NoYXQtaW5wdXQuY29tcG9uZW50JztcbmltcG9ydCB7IEFYQ2hhdE1lc3NhZ2VDb21wb25lbnQgfSBmcm9tICcuL2NoYXQtbWVzc2FnZS9jaGF0LW1lc3NhZ2UuY29tcG9uZW50JztcbmltcG9ydCB7IEFYQ2hhdFRleHRNZXNzYWdlQ29tcG9uZW50IH0gZnJvbSAnLi9jaGF0LW1lc3NhZ2VzL2NoYXQtbWVzc2FnZS10ZXh0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBBWENoYXRBdWRpb01lc3NhZ2VDb21wb25lbnQgfSBmcm9tICcuL2NoYXQtbWVzc2FnZXMvY2hhdC1tZXNzYWdlcy12b2ljZS9jaGF0LW1lc3NhZ2Utdm9pY2UuY29tcG9uZW50JztcbmltcG9ydCB7IEFYQ2hhdFZpZXdDb21wb25lbnQgfSBmcm9tICcuL2NoYXQtdmlldy9jaGF0LXZpZXcuY29tcG9uZW50JztcbmltcG9ydCB7IEFYQ2hhdE1lc3NhZ2VUeXBlIH0gZnJvbSAnLi9jaGF0LnR5cGVzJztcbmltcG9ydCB7IEFYQ2hhdE1lc3NhZ2VUeXBlUmVnaXN0cnlTZXJ2aWNlIH0gZnJvbSAnLi9zZXJ2aWNlcy9jaGF0LW1lc3NhZ2UtdHlwZS1yZWdpc3RyeS5zZXJ2aWNlJztcbmltcG9ydCB7IEFYUmVjb3JkaW5nU2VydmljZSB9IGZyb20gJy4vc2VydmljZXMvcmVjb3JkaW5nLnNlcnZpY2UnO1xuXG5leHBvcnQgaW50ZXJmYWNlIEFYQ2hhdE1vZHVsZUNvbmZpZyB7XG4gIHR5cGVzOiBBWENoYXRNZXNzYWdlVHlwZVtdO1xufVxuXG5jb25zdCBDT01QT05FTlQgPSBbXG4gIEFYQ2hhdFZpZXdDb21wb25lbnQsXG4gIEFYQ2hhdElucHV0Q29tcG9uZW50LFxuICBBWENoYXRNZXNzYWdlQ29tcG9uZW50LFxuICBBWENoYXRUZXh0TWVzc2FnZUNvbXBvbmVudCxcbiAgQVhDaGF0QXVkaW9NZXNzYWdlQ29tcG9uZW50LFxuXTtcbmNvbnN0IE1PRFVMRVMgPSBbXG4gIENvbW1vbk1vZHVsZSxcbiAgRm9ybXNNb2R1bGUsXG4gIEFzeW5jUGlwZSxcbiAgQVhSaXBwbGVEaXJlY3RpdmUsXG4gIEFYQnV0dG9uTW9kdWxlLFxuICBBWERlY29yYXRvck1vZHVsZSxcbiAgQVhUcmFuc2xhdGlvbk1vZHVsZSxcbiAgQVhEcm9wZG93bk1vZHVsZSxcbiAgQVhGb3JtYXRNb2R1bGUsXG4gIEFYQXVkaW9XYXZlTW9kdWxlLFxuICBBWENpcmN1bGFyUHJvZ3Jlc3NNb2R1bGUsXG4gIEFYRGF0ZVRpbWVNb2R1bGUsXG4gIENka1BvcnRhbE91dGxldCxcbiAgQVhMb2FkaW5nTW9kdWxlLFxuXTtcblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbLi4uQ09NUE9ORU5UXSxcbiAgaW1wb3J0czogWy4uLk1PRFVMRVNdLFxuICBleHBvcnRzOiBbLi4uQ09NUE9ORU5UXSxcbiAgcHJvdmlkZXJzOiBbQVhSZWNvcmRpbmdTZXJ2aWNlXSxcbn0pXG5leHBvcnQgY2xhc3MgQVhDaGF0TW9kdWxlIHtcbiAgc3RhdGljIGZvclJvb3QoY29uZmlnPzogQVhDaGF0TW9kdWxlQ29uZmlnKTogTW9kdWxlV2l0aFByb3ZpZGVyczxBWENoYXRNb2R1bGU+IHtcbiAgICByZXR1cm4ge1xuICAgICAgbmdNb2R1bGU6IEFYQ2hhdE1vZHVsZSxcbiAgICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7XG4gICAgICAgICAgcHJvdmlkZTogJ0FYQ2hhdE1vZHVsZUZhY3RvcnknLFxuICAgICAgICAgIHVzZUZhY3Rvcnk6IChyZWdpc3RyeTogQVhDaGF0TWVzc2FnZVR5cGVSZWdpc3RyeVNlcnZpY2UpID0+ICgpID0+IHtcbiAgICAgICAgICAgIGlmIChjb25maWc/LnR5cGVzPy5sZW5ndGgpIHtcbiAgICAgICAgICAgICAgcmVnaXN0cnkucmVnaXN0ZXIoLi4uY29uZmlnLnR5cGVzKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJlZ2lzdHJ5LnJlZ2lzdGVyKHtcbiAgICAgICAgICAgICAgbmFtZTogJ3RleHQnLFxuICAgICAgICAgICAgICBjb21wb25lbnQ6IEFYQ2hhdFRleHRNZXNzYWdlQ29tcG9uZW50LFxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICByZWdpc3RyeS5yZWdpc3Rlcih7XG4gICAgICAgICAgICAgIG5hbWU6ICdhdWRpbycsXG4gICAgICAgICAgICAgIGNvbXBvbmVudDogQVhDaGF0QXVkaW9NZXNzYWdlQ29tcG9uZW50LFxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgfSxcbiAgICAgICAgICBkZXBzOiBbQVhDaGF0TWVzc2FnZVR5cGVSZWdpc3RyeVNlcnZpY2VdLFxuICAgICAgICAgIG11bHRpOiB0cnVlLFxuICAgICAgICB9LFxuICAgICAgXSxcbiAgICB9O1xuICB9XG5cbiAgc3RhdGljIGZvckNoaWxkKGNvbmZpZz86IEFYQ2hhdE1vZHVsZUNvbmZpZyk6IE1vZHVsZVdpdGhQcm92aWRlcnM8QVhDaGF0TW9kdWxlPiB7XG4gICAgcmV0dXJuIHtcbiAgICAgIG5nTW9kdWxlOiBBWENoYXRNb2R1bGUsXG4gICAgICBwcm92aWRlcnM6IFtcbiAgICAgICAge1xuICAgICAgICAgIHByb3ZpZGU6ICdBWFBXb3JrZmxvd01vZHVsZUZhY3RvcnknLFxuICAgICAgICAgIHVzZUZhY3Rvcnk6IChyZWdpc3RyeTogQVhDaGF0TWVzc2FnZVR5cGVSZWdpc3RyeVNlcnZpY2UpID0+ICgpID0+IHtcbiAgICAgICAgICAgIGlmIChjb25maWc/LnR5cGVzPy5sZW5ndGgpIHtcbiAgICAgICAgICAgICAgcmVnaXN0cnkucmVnaXN0ZXIoLi4uY29uZmlnLnR5cGVzKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9LFxuICAgICAgICAgIGRlcHM6IFtBWENoYXRNZXNzYWdlVHlwZVJlZ2lzdHJ5U2VydmljZV0sXG4gICAgICAgICAgbXVsdGk6IHRydWUsXG4gICAgICAgIH0sXG4gICAgICBdLFxuICAgIH07XG4gIH1cblxuICAvKipcbiAgICogQGlnbm9yZVxuICAgKi9cbiAgY29uc3RydWN0b3IoQE9wdGlvbmFsKCkgQEluamVjdCgnQVhDaGF0TW9kdWxlRmFjdG9yeScpIGluc3RhbmNlczogYW55W10pIHtcbiAgICBpbnN0YW5jZXM/LmZvckVhY2goKGYpID0+IHtcbiAgICAgIGYoKTtcbiAgICB9KTtcbiAgfVxufVxuIl19
|
@@ -1,7 +1,7 @@
|
|
1
|
-
import { MXBaseComponent
|
1
|
+
import { MXBaseComponent } from '@acorex/components/common';
|
2
2
|
import { AXColorUtil, AXUnsubscriber } from '@acorex/core/utils';
|
3
|
-
import { ChangeDetectionStrategy, Component, HostBinding, Inject, ViewEncapsulation
|
4
|
-
import { AXColorPaletteChildComponent, AXColorPaletteParentComponent
|
3
|
+
import { ChangeDetectionStrategy, Component, HostBinding, Inject, ViewEncapsulation } from '@angular/core';
|
4
|
+
import { AXColorPaletteChildComponent, AXColorPaletteParentComponent } from './color-palette.class';
|
5
5
|
import * as i0 from "@angular/core";
|
6
6
|
import * as i1 from "@acorex/core/utils";
|
7
7
|
import * as i2 from "@angular/forms";
|
@@ -33,14 +33,10 @@ export class AXColorPalettePickerComponent extends MXBaseComponent {
|
|
33
33
|
this._gradients = AXColorUtil.gradient(this._gradientColors);
|
34
34
|
this._colors = this._gradients.rgb(100);
|
35
35
|
this.dragPosition = { x: 0, y: 0 };
|
36
|
-
_parent.onValueChanged
|
37
|
-
.pipe(_unsubscriber.takeUntilDestroy)
|
38
|
-
.subscribe((e) => {
|
36
|
+
_parent.onValueChanged.pipe(_unsubscriber.takeUntilDestroy).subscribe((e) => {
|
39
37
|
this._handleParentColorChanged();
|
40
38
|
});
|
41
|
-
_parent.onOptionChanged
|
42
|
-
.pipe(_unsubscriber.takeUntilDestroy)
|
43
|
-
.subscribe((e) => {
|
39
|
+
_parent.onOptionChanged.pipe(_unsubscriber.takeUntilDestroy).subscribe((e) => {
|
44
40
|
this.cdr.markForCheck();
|
45
41
|
});
|
46
42
|
}
|
@@ -133,9 +129,9 @@ export class AXColorPalettePickerComponent extends MXBaseComponent {
|
|
133
129
|
const surface = this.getHostElement().querySelector('.ax-color-box-overlay');
|
134
130
|
if (!surface)
|
135
131
|
return;
|
136
|
-
const sb = surface
|
132
|
+
const sb = surface?.getBoundingClientRect();
|
137
133
|
const pointer = this.getHostElement().querySelector('.ax-color-box-pointer');
|
138
|
-
const pb = pointer
|
134
|
+
const pb = pointer?.getBoundingClientRect();
|
139
135
|
const w = pb.width / 2;
|
140
136
|
const width = sb.width; //+ pb.width
|
141
137
|
const height = sb.height; // + pb.width
|
@@ -172,4 +168,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.2", ngImpor
|
|
172
168
|
type: HostBinding,
|
173
169
|
args: ['class']
|
174
170
|
}] } });
|
175
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sb3ItcGFsZXR0ZS1waWNrZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2NvbG9yLXBhbGV0dGUvc3JjL2xpYi9jb2xvci1wYWxldHRlLXBpY2tlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvY29sb3ItcGFsZXR0ZS9zcmMvbGliL2NvbG9yLXBhbGV0dGUtcGlja2VyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFTCxlQUFlLEdBQ2hCLE1BQU0sMkJBQTJCLENBQUM7QUFDbkMsT0FBTyxFQUFFLFdBQVcsRUFBRSxjQUFjLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNqRSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxXQUFXLEVBQ1gsTUFBTSxFQUNOLGlCQUFpQixHQUNsQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQ0wsNEJBQTRCLEVBQzVCLDZCQUE2QixHQUM5QixNQUFNLHVCQUF1QixDQUFDOzs7Ozs7O0FBZS9CLE1BQU0sT0FBTyw2QkFBOEIsU0FBUSxlQUFlO0lBMkJoRSxZQUVTLE9BQXNDLEVBQ3JDLGFBQTZCO1FBRXJDLEtBQUssRUFBRSxDQUFDO1FBSEQsWUFBTyxHQUFQLE9BQU8sQ0FBK0I7UUFDckMsa0JBQWEsR0FBYixhQUFhLENBQWdCO1FBN0J2QyxVQUFLLEdBQW1EO1lBQ3RELENBQUMsRUFBRSxDQUFDO1lBQ0osQ0FBQyxFQUFFLENBQUM7WUFDSixDQUFDLEVBQUUsQ0FBQztZQUNKLENBQUMsRUFBRSxDQUFDO1NBQ0wsQ0FBQztRQUVRLGNBQVMsR0FBVyxDQUFDLENBQUM7UUFFdEIsYUFBUSxHQUFXLE1BQU0sQ0FBQztRQUVuQixvQkFBZSxHQUFVO1lBQ3hDLEVBQUUsS0FBSyxFQUFFLGdCQUFnQixFQUFFLEdBQUcsRUFBRSxD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eEIsQ0FBQyxFQUFFLE1BQU0sR0FBRyxDQUFDLENBQUMsR0FBRyxNQUFNLENBQUMsR0FBRyxHQUFHLEdBQUcsQ0FBQztTQUNuQyxDQUFDO0lBQ0osQ0FBQztJQUNELElBQ1ksV0FBVztRQUNyQixPQUFPLHlCQUF5QixDQUFDO0lBQ25DLENBQUM7OEdBaExVLDZCQUE2QixrQkE0QjlCLDZCQUE2QjtrR0E1QjVCLDZCQUE2Qix5R0FSN0I7WUFDVDtnQkFDRSxPQUFPLEVBQUUsNEJBQTRCO2dCQUNyQyxXQUFXLEVBQUUsNkJBQTZCO2FBQzNDO1lBQ0QsY0FBYztTQUNmLGlEQzVCSCx3a0NBZWtCOzsyRkRlTCw2QkFBNkI7a0JBYnpDLFNBQVM7K0JBQ0UseUJBQXlCLGlCQUVwQixpQkFBaUIsQ0FBQyxJQUFJLG1CQUNwQix1QkFBdUIsQ0FBQyxNQUFNLGFBQ3BDO3dCQUNUOzRCQUNFLE9BQU8sRUFBRSw0QkFBNEI7NEJBQ3JDLFdBQVcsK0JBQStCO3lCQUMzQzt3QkFDRCxjQUFjO3FCQUNmOzswQkE4QkUsTUFBTTsyQkFBQyw2QkFBNkI7c0VBa0ozQixXQUFXO3NCQUR0QixXQUFXO3VCQUFDLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBBWFZhbHVlQ2hhbmdlZEV2ZW50LFxuICBNWEJhc2VDb21wb25lbnQsXG59IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9jb21tb24nO1xuaW1wb3J0IHsgQVhDb2xvclV0aWwsIEFYVW5zdWJzY3JpYmVyIH0gZnJvbSAnQGFjb3JleC9jb3JlL3V0aWxzJztcbmltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIEhvc3RCaW5kaW5nLFxuICBJbmplY3QsXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIEFYQ29sb3JQYWxldHRlQ2hpbGRDb21wb25lbnQsXG4gIEFYQ29sb3JQYWxldHRlUGFyZW50Q29tcG9uZW50LFxufSBmcm9tICcuL2NvbG9yLXBhbGV0dGUuY2xhc3MnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdheC1jb2xvci1wYWxldHRlLXBpY2tlcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9jb2xvci1wYWxldHRlLXBpY2tlci5jb21wb25lbnQuaHRtbCcsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBwcm92aWRlcnM6IFtcbiAgICB7XG4gICAgICBwcm92aWRlOiBBWENvbG9yUGFsZXR0ZUNoaWxkQ29tcG9uZW50LFxuICAgICAgdXNlRXhpc3Rpbmc6IEFYQ29sb3JQYWxldHRlUGlja2VyQ29tcG9uZW50LFxuICAgIH0sXG4gICAgQVhVbnN1YnNjcmliZXIsXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIEFYQ29sb3JQYWxldHRlUGlja2VyQ29tcG9uZW50IGV4dGVuZHMgTVhCYXNlQ29tcG9uZW50IHtcbiAgX3JnYmE6IHsgcjogbnVtYmVyOyBnOiBudW1iZXI7IGI6IG51bWJlcjsgYTogbnVtYmVyIH0gPSB7XG4gICAgcjogMCxcbiAgICBnOiAwLFxuICAgIGI6IDAsXG4gICAgYTogMCxcbiAgfTtcblxuICBwcm90ZWN0ZWQgX2dyYWRpZW50OiBudW1iZXIgPSAwO1xuXG4gIHByb3RlY3RlZCBfYmdDb2xvcjogc3RyaW5nID0gJyNGMDAnO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgX2dyYWRpZW50Q29sb3JzOiBhbnlbXSA9IFtcbiAgICB7IGNvbG9yOiAncmdiKDI1NSwgMCwgMCknLCBwb3M6IDAgfSxcbiAgICB7IGNvbG9yOiAncmdiKDI1NSwgMjU1LCAwKScsIHBvczogMC4xNyB9LFxuICAgIHsgY29sb3I6ICdyZ2IoMCwgMjU1LCAwKScsIHBvczogMC4zMyB9LFxuICAgIHsgY29sb3I6ICdyZ2IoMCwgMjU1LCAyNTUpJywgcG9zOiAwLjUgfSxcbiAgICB7IGNvbG9yOiAncmdiKDAsIDAsIDI1NSknLCBwb3M6IDAuNjcgfSxcbiAgICB7IGNvbG9yOiAncmdiKDI1NSwgMCwgMjU1KScsIHBvczogMC44MyB9LFxuICAgIHsgY29sb3I6ICdyZ2IoMjU1LCAwLCAwKScsIHBvczogMSB9LFxuICBdO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgX2dyYWRpZW50cyA9IEFYQ29sb3JVdGlsLmdyYWRpZW50KHRoaXMuX2dyYWRpZW50Q29sb3JzKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfY29sb3JzID0gdGhpcy5fZ3JhZGllbnRzLnJnYigxMDApO1xuXG4gIHByb3RlY3RlZCBkcmFnUG9zaXRpb24gPSB7IHg6IDAsIHk6IDAgfTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBASW5qZWN0KEFYQ29sb3JQYWxldHRlUGFyZW50Q29tcG9uZW50KVxuICAgIHB1YmxpYyBfcGFyZW50OiBBWENvbG9yUGFsZXR0ZVBhcmVudENvbXBvbmVudCxcbiAgICBwcml2YXRlIF91bnN1YnNjcmliZXI6IEFYVW5zdWJzY3JpYmVyXG4gICkge1xuICAgIHN1cGVyKCk7XG4gICAgX3BhcmVudC5vblZhbHVlQ2hhbmdlZFxuICAgICAgLnBpcGUoX3Vuc3Vic2NyaWJlci50YWtlVW50aWxEZXN0cm95KVxuICAgICAgLnN1YnNjcmliZSgoZSkgPT4ge1xuICAgICAgICB0aGlzLl9oYW5kbGVQYXJlbnRDb2xvckNoYW5nZWQoKTtcbiAgICAgIH0pO1xuICAgIF9wYXJlbnQub25PcHRpb25DaGFuZ2VkXG4gICAgICAucGlwZShfdW5zdWJzY3JpYmVyLnRha2VVbnRpbERlc3Ryb3kpXG4gICAgICAuc3Vic2NyaWJlKChlKSA9PiB7XG4gICAgICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuICAgICAgfSk7XG4gIH1cblxuICBwcml2YXRlIHNldEhTVigpIHtcbiAgICBjb25zdCBoc3YgPSBBWENvbG9yVXRpbC50byh0aGlzLl9yZ2JhLCAnaHN2YScpIGFzIGFueTtcbiAgICBjb25zdCBzb3J0ZWRIID0gdGhpcy5fY29sb3JzLm1hcCgoYykgPT4gYy50b0hzdigpLmgpO1xuICAgIHRoaXMuX2dyYWRpZW50ID0gc29ydGVkSC5maW5kSW5kZXgoKGMpID0+IHtcbiAgICAgIHJldHVybiBNYXRoLnJvdW5kKGMpID49IE1hdGgucm91bmQoaHN2LmgpO1xuICAgIH0pO1xuICAgIHRoaXMuX2JnQ29sb3IgPSBBWENvbG9yVXRpbC50b1N0cmluZyhcbiAgICAgIHsgaDogaHN2LmgsIHM6IDEsIHY6IDEsIGE6IHRoaXMuX3JnYmEuYSB9LFxuICAgICAgJ3JnYmEnXG4gICAgKTtcbiAgICB0aGlzLnNldFBvaW50ZXJCeVBlcmNlbnQoaHN2LnMgKiAxMDAsIGhzdi52ICogMTAwKTtcbiAgfVxuXG4gIHByaXZhdGUgX2hhbmRsZVBhcmVudENvbG9yQ2hhbmdlZCgpIHtcbiAgICBjb25zdCBjb2xvciA9IHRoaXMuX3BhcmVudC52YWx1ZTtcbiAgICBpZiAoIWNvbG9yKSB7XG4gICAgICB0aGlzLl9yZ2JhID0ge1xuICAgICAgICByOiAwLFxuICAgICAgICBnOiAwLFxuICAgICAgICBiOiAwLFxuICAgICAgICBhOiAwLFxuICAgICAgfTtcbiAgICB9IGVsc2Uge1xuICAgICAgaWYgKCFBWENvbG9yVXRpbC5lcXVhbChjb2xvciwgdGhpcy5fcmdiYSkpIHtcbiAgICAgICAgT2JqZWN0LmFzc2lnbih0aGlzLl9yZ2JhLCBBWENvbG9yVXRpbC50byhjb2xvciwgJ3JnYmEnKSk7XG4gICAgICB9XG4gICAgfVxuICAgIHRoaXMuc2V0SFNWKCk7XG4gICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xuICB9XG5cbiAgcHJvdGVjdGVkIF9oYW5kbGVBbHBoYUNoYW5nZWQoZTogQVhWYWx1ZUNoYW5nZWRFdmVudDxudW1iZXI+KSB7XG4gICAgaWYgKGUuaXNVc2VySW50ZXJhY3Rpb24gJiYgZS52YWx1ZSAhPSB0aGlzLl9yZ2JhLmEpIHtcbiAgICAgIGNvbnN0IHsgciwgZywgYiB9ID0gdGhpcy5fcmdiYTtcbiAgICAgIGNvbnN0IF9jb2xvciA9IGByZ2JhKCR7cn0sJHtnfSwke2J9LCR7ZS52YWx1ZX0pYDtcbiAgICAgIHRoaXMuX3BhcmVudC5jb21taXRWYWx1ZShcbiAgICAgICAgQVhDb2xvclV0aWwudG9TdHJpbmcoX2NvbG9yLCAncmdiYScpLFxuICAgICAgICBlLmlzVXNlckludGVyYWN0aW9uXG4gICAgICApO1xuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBfaGFuZGxlR3JhZGllbnRDaGFuZ2VkKGU6IEFYVmFsdWVDaGFuZ2VkRXZlbnQ8bnVtYmVyPikge1xuICAgIGlmIChlLmlzVXNlckludGVyYWN0aW9uICYmIGUudmFsdWUgIT0gdGhpcy5fZ3JhZGllbnQpIHtcbiAgICAgIGNvbnN0IHsgcywgdiB9ID0gQVhDb2xvclV0aWwudG8odGhpcy5fcmdiYSwgJ2hzdmEnKSBhcyBhbnk7XG4gICAgICBjb25zdCB7IGggfSA9IHRoaXMuX2NvbG9yc1tlLnZhbHVlXS50b0hzdigpO1xuICAgICAgdGhpcy5fcGFyZW50LmNvbW1pdFZhbHVlKFxuICAgICAgICBBWENvbG9yVXRpbC50b1N0cmluZyh7IGgsIHMsIHYsIGE6IHRoaXMuX3JnYmEuYSB9LCAncmdiYScpLFxuICAgICAgICBlLmlzVXNlckludGVyYWN0aW9uXG4gICAgICApO1xuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBfaGFuZGxlU3VyZmFjZUNsaWNrKGU6IE1vdXNlRXZlbnQpIHtcbiAgICBpZiAodGhpcy5fcGFyZW50LmRpc2FibGVkIHx8IHRoaXMuX3BhcmVudC5yZWFkb25seSkge1xuICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgZS5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgY29uc3Qgc3VyZmFjZSA9IHRoaXMuZ2V0SG9zdEVsZW1lbnQoKS5xdWVyeVNlbGVjdG9yPEhUTUxEaXZFbGVtZW50PihcbiAgICAgICcuYXgtY29sb3ItYm94LW92ZXJsYXknXG4gICAgKTtcbiAgICBjb25zdCBwb2ludGVyID0gdGhpcy5nZXRIb3N0RWxlbWVudCgpLnF1ZXJ5U2VsZWN0b3I8SFRNTERpdkVsZW1lbnQ+KFxuICAgICAgJy5heC1jb2xvci1ib3gtcG9pbnRlcidcbiAgICApO1xuICAgIGxldCB4ID0gZS5vZmZzZXRYO1xuICAgIGxldCB5ID0gZS5vZmZzZXRZO1xuICAgIHRoaXMuc2V0Q29sb3JCeVhZKHgsIHkpO1xuICB9XG5cbiAgcHJvdGVjdGVkIF9oYW5kbGVEcmFnKCkge1xuICAgIGlmICh0aGlzLl9wYXJlbnQuZGlzYWJsZWQgfHwgdGhpcy5fcGFyZW50LnJlYWRvbmx5KSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGNvbnN0IHN1cmZhY2UgPSB0aGlzLmdldEhvc3RFbGVtZW50KCkucXVlcnlTZWxlY3RvcjxIVE1MRGl2RWxlbWVudD4oXG4gICAgICAnLmF4LWNvbG9yLWJveC1vdmVybGF5J1xuICAgICk7XG4gICAgY29uc3Qgc2IgPSBzdXJmYWNlLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuICAgIGNvbnN0IHBvaW50ZXIgPSB0aGlzLmdldEhvc3RFbGVtZW50KCkucXVlcnlTZWxlY3RvcjxIVE1MRGl2RWxlbWVudD4oXG4gICAgICAnLmF4LWNvbG9yLWJveC1wb2ludGVyJ1xuICAgICk7XG4gICAgY29uc3QgcGIgPSBwb2ludGVyLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuICAgIGNvbnN0IHcgPSBwYi53aWR0aCAvIDI7XG4gICAgbGV0IHggPSBwYi5sZWZ0IC0gc2IubGVmdCArIHc7XG4gICAgbGV0IHkgPSBwYi50b3AgLSBzYi50b3AgKyB3O1xuICAgIC8vXG4gICAgeCA9IHggPCAwID8gMCA6IHg7XG4gICAgeCA9IHggPiBzYi53aWR0aCA/IHNiLndpZHRoIDogeDtcbiAgICAvL1xuICAgIHkgPSB5IDwgMCA/IDAgOiB5O1xuICAgIHkgPSB5ID4gc2IuaGVpZ2h0ID8gc2IuaGVpZ2h0IDogeTtcbiAgICAvL1xuICAgIHRoaXMuc2V0Q29sb3JCeVhZKHgsIHkpO1xuICB9XG5cbiAgcHJpdmF0ZSBzZXRDb2xvckJ5WFkoeDogbnVtYmVyLCB5OiBudW1iZXIpIHtcbiAgICBjb25zdCBzdXJmYWNlID0gdGhpcy5nZXRIb3N0RWxlbWVudCgpLnF1ZXJ5U2VsZWN0b3I8SFRNTERpdkVsZW1lbnQ+KFxuICAgICAgJy5heC1jb2xvci1ib3gtb3ZlcmxheSdcbiAgICApO1xuICAgIGNvbnN0IHNiID0gc3VyZmFjZS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcbiAgICAvL1xuICAgIGNvbnN0IHsgaCB9ID0gQVhDb2xvclV0aWwudG8odGhpcy5fYmdDb2xvciwgJ2hzdmEnKSBhcyBhbnk7XG4gICAgY29uc3QgaHN2ID0ge1xuICAgICAgaCxcbiAgICAgIHM6IHggLyBzYi53aWR0aCxcbiAgICAgIHY6IChzYi5oZWlnaHQgLSB5KSAvIHNiLmhlaWdodCxcbiAgICB9O1xuICAgIHRoaXMuX3BhcmVudC5jb21taXRWYWx1ZShBWENvbG9yVXRpbC50b1N0cmluZyhoc3YsICdyZ2JhJyksIHRydWUpO1xuICB9XG5cbiAgcHJpdmF0ZSBzZXRQb2ludGVyQnlQZXJjZW50KHg6IG51bWJlciwgeTogbnVtYmVyKSB7XG4gICAgY29uc3Qgc3VyZmFjZSA9IHRoaXMuZ2V0SG9zdEVsZW1lbnQoKS5xdWVyeVNlbGVjdG9yPEhUTUxEaXZFbGVtZW50PihcbiAgICAgICcuYXgtY29sb3ItYm94LW92ZXJsYXknXG4gICAgKTtcbiAgICBpZiAoIXN1cmZhY2UpIHJldHVybjtcbiAgICBjb25zdCBzYiA9IHN1cmZhY2UuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG4gICAgY29uc3QgcG9pbnRlciA9IHRoaXMuZ2V0SG9zdEVsZW1lbnQoKS5xdWVyeVNlbGVjdG9yPEhUTUxEaXZFbGVtZW50PihcbiAgICAgICcuYXgtY29sb3ItYm94LXBvaW50ZXInXG4gICAgKTtcbiAgICBjb25zdCBwYiA9IHBvaW50ZXIuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG4gICAgY29uc3QgdyA9IHBiLndpZHRoIC8gMjtcbiAgICBjb25zdCB3aWR0aCA9IHNiLndpZHRoOyAvLysgcGIud2lkdGhcbiAgICBjb25zdCBoZWlnaHQgPSBzYi5oZWlnaHQ7IC8vICsgcGIud2lkdGhcbiAgICB0aGlzLmRyYWdQb3NpdGlvbiA9IHtcbiAgICAgIHg6ICh4ICogd2lkdGgpIC8gMTAwIC0gdyxcbiAgICAgIHk6IGhlaWdodCAtICh5ICogaGVpZ2h0KSAvIDEwMCAtIHcsXG4gICAgfTtcbiAgfVxuICBASG9zdEJpbmRpbmcoJ2NsYXNzJylcbiAgcHJpdmF0ZSBnZXQgX19ob3N0Q2xhc3MoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gYGF4LWNvbG9yLXBhbGV0dGUtcGlja2VyYDtcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImF4LWNvbG9yLWJveC1vdmVybGF5LXRyYW5zXCI+XG4gICAgPGRpdiBjbGFzcz1cImF4LWNvbG9yLWJveC1vdmVybGF5XCIgW3N0eWxlLmJhY2tncm91bmQtY29sb3JdPVwiX2JnQ29sb3JcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImF4LWNvbG9yLWJveC1vdmVybGF5LWcxXCI+PC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJheC1jb2xvci1ib3gtb3ZlcmxheS1nMlwiIChjbGljayk9XCJfaGFuZGxlU3VyZmFjZUNsaWNrKCRldmVudClcIj48L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImF4LWNvbG9yLWJveC1wb2ludGVyXCIgY2RrRHJhZyBjZGtEcmFnQm91bmRhcnk9XCIuYXgtY29sb3ItYm94LW92ZXJsYXlcIlxuICAgICAgICAgICAgW2Nka0RyYWdGcmVlRHJhZ1Bvc2l0aW9uXT1cImRyYWdQb3NpdGlvblwiIChjZGtEcmFnRW5kZWQpPVwiX2hhbmRsZURyYWcoKVwiXG4gICAgICAgICAgICBbY2RrRHJhZ0Rpc2FibGVkXT1cIl9wYXJlbnQuZGlzYWJsZWQgfHwgX3BhcmVudC5yZWFkb25seVwiPlxuICAgICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbjwvZGl2PlxuPGF4LXJhbmdlLXNsaWRlciBjbGFzcz1cImF4LWNvbG9yLWJveC1ncmFkaWVudFwiIFttaW5WYWx1ZV09XCIwXCIgW21heFZhbHVlXT1cIjEwMFwiIFtzdGVwXT1cIjFcIiBbbmdNb2RlbF09XCJfZ3JhZGllbnRcIlxuICAgIFtkaXNhYmxlZF09XCJfcGFyZW50LmRpc2FibGVkXCIgW3JlYWRvbmx5XT1cIl9wYXJlbnQucmVhZG9ubHlcIiAob25WYWx1ZUNoYW5nZWQpPVwiX2hhbmRsZUdyYWRpZW50Q2hhbmdlZCgkZXZlbnQpXCI+XG48L2F4LXJhbmdlLXNsaWRlcj5cbjxheC1yYW5nZS1zbGlkZXIgY2xhc3M9XCJheC1jb2xvci1ib3gtdHJhbnNwYXJlbnRcIiBbbWluVmFsdWVdPVwiMFwiIFttYXhWYWx1ZV09XCIxXCIgW3N0ZXBdPVwiMC4wMVwiIFtuZ01vZGVsXT1cIl9yZ2JhLmFcIlxuICAgIFtkaXNhYmxlZF09XCJfcGFyZW50LmRpc2FibGVkXCIgW3JlYWRvbmx5XT1cIl9wYXJlbnQucmVhZG9ubHlcIiAob25WYWx1ZUNoYW5nZWQpPVwiX2hhbmRsZUFscGhhQ2hhbmdlZCgkZXZlbnQpXCI+XG48L2F4LXJhbmdlLXNsaWRlcj4iXX0=
|
171
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sb3ItcGFsZXR0ZS1waWNrZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2NvbG9yLXBhbGV0dGUvc3JjL2xpYi9jb2xvci1wYWxldHRlLXBpY2tlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvY29sb3ItcGFsZXR0ZS9zcmMvbGliL2NvbG9yLXBhbGV0dGUtcGlja2VyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBdUIsZUFBZSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDakYsT0FBTyxFQUFFLFdBQVcsRUFBRSxjQUFjLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNqRSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxNQUFNLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0csT0FBTyxFQUFFLDRCQUE0QixFQUFFLDZCQUE2QixFQUFFLE1BQU0sdUJBQXVCLENBQUM7Ozs7Ozs7QUFlcEcsTUFBTSxPQUFPLDZCQUE4QixTQUFRLGVBQWU7SUEyQmhFLFlBRVMsT0FBc0MsRUFDckMsYUFBNkI7UUFFckMsS0FBSyxFQUFFLENBQUM7UUFIRCxZQUFPLEdBQVAsT0FBTyxDQUErQjtRQUNyQyxrQkFBYSxHQUFiLGFBQWEsQ0FBZ0I7UUE3QnZDLFVBQUssR0FBbUQ7WUFDdEQsQ0FBQyxFQUFFLENBQUM7WUFDSixDQUFDLEVBQUUsQ0FBQztZQUNKLENBQUMsRUFBRSxDQUFDO1lBQ0osQ0FBQyxFQUFFLENBQUM7U0FDTCxDQUFDO1FBRVEsY0FBUyxHQUFXLENBQUMsQ0FBQztRQUV0QixhQUFRLEdBQVcsTUFBTSxDQUFDO1FBRW5CLG9CQUFlLEdBQVU7WUFDeEMsRUFBRSxLQUFLLEVBQUUsZ0JBQWdCLEVBQUUsR0FBRyxFQUFFLENBQUMs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RSxNQUFNLEdBQUcsQ0FBQyxDQUFDLEdBQUcsTUFBTSxDQUFDLEdBQUcsR0FBRyxHQUFHLENBQUM7U0FDbkMsQ0FBQztJQUNKLENBQUM7SUFDRCxJQUNZLFdBQVc7UUFDckIsT0FBTyx5QkFBeUIsQ0FBQztJQUNuQyxDQUFDOzhHQXJKVSw2QkFBNkIsa0JBNEI5Qiw2QkFBNkI7a0dBNUI1Qiw2QkFBNkIseUdBUjdCO1lBQ1Q7Z0JBQ0UsT0FBTyxFQUFFLDRCQUE0QjtnQkFDckMsV0FBVyxFQUFFLDZCQUE2QjthQUMzQztZQUNELGNBQWM7U0FDZixpRENoQkgsd2tDQWVrQjs7MkZER0wsNkJBQTZCO2tCQWJ6QyxTQUFTOytCQUNFLHlCQUF5QixpQkFFcEIsaUJBQWlCLENBQUMsSUFBSSxtQkFDcEIsdUJBQXVCLENBQUMsTUFBTSxhQUNwQzt3QkFDVDs0QkFDRSxPQUFPLEVBQUUsNEJBQTRCOzRCQUNyQyxXQUFXLCtCQUErQjt5QkFDM0M7d0JBQ0QsY0FBYztxQkFDZjs7MEJBOEJFLE1BQU07MkJBQUMsNkJBQTZCO3NFQXVIM0IsV0FBVztzQkFEdEIsV0FBVzt1QkFBQyxPQUFPIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVhWYWx1ZUNoYW5nZWRFdmVudCwgTVhCYXNlQ29tcG9uZW50IH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2NvbW1vbic7XG5pbXBvcnQgeyBBWENvbG9yVXRpbCwgQVhVbnN1YnNjcmliZXIgfSBmcm9tICdAYWNvcmV4L2NvcmUvdXRpbHMnO1xuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSG9zdEJpbmRpbmcsIEluamVjdCwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFYQ29sb3JQYWxldHRlQ2hpbGRDb21wb25lbnQsIEFYQ29sb3JQYWxldHRlUGFyZW50Q29tcG9uZW50IH0gZnJvbSAnLi9jb2xvci1wYWxldHRlLmNsYXNzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXgtY29sb3ItcGFsZXR0ZS1waWNrZXInLFxuICB0ZW1wbGF0ZVVybDogJy4vY29sb3ItcGFsZXR0ZS1waWNrZXIuY29tcG9uZW50Lmh0bWwnLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgcHJvdmlkZXJzOiBbXG4gICAge1xuICAgICAgcHJvdmlkZTogQVhDb2xvclBhbGV0dGVDaGlsZENvbXBvbmVudCxcbiAgICAgIHVzZUV4aXN0aW5nOiBBWENvbG9yUGFsZXR0ZVBpY2tlckNvbXBvbmVudCxcbiAgICB9LFxuICAgIEFYVW5zdWJzY3JpYmVyLFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBBWENvbG9yUGFsZXR0ZVBpY2tlckNvbXBvbmVudCBleHRlbmRzIE1YQmFzZUNvbXBvbmVudCB7XG4gIF9yZ2JhOiB7IHI6IG51bWJlcjsgZzogbnVtYmVyOyBiOiBudW1iZXI7IGE6IG51bWJlciB9ID0ge1xuICAgIHI6IDAsXG4gICAgZzogMCxcbiAgICBiOiAwLFxuICAgIGE6IDAsXG4gIH07XG5cbiAgcHJvdGVjdGVkIF9ncmFkaWVudDogbnVtYmVyID0gMDtcblxuICBwcm90ZWN0ZWQgX2JnQ29sb3I6IHN0cmluZyA9ICcjRjAwJztcblxuICBwcml2YXRlIHJlYWRvbmx5IF9ncmFkaWVudENvbG9yczogYW55W10gPSBbXG4gICAgeyBjb2xvcjogJ3JnYigyNTUsIDAsIDApJywgcG9zOiAwIH0sXG4gICAgeyBjb2xvcjogJ3JnYigyNTUsIDI1NSwgMCknLCBwb3M6IDAuMTcgfSxcbiAgICB7IGNvbG9yOiAncmdiKDAsIDI1NSwgMCknLCBwb3M6IDAuMzMgfSxcbiAgICB7IGNvbG9yOiAncmdiKDAsIDI1NSwgMjU1KScsIHBvczogMC41IH0sXG4gICAgeyBjb2xvcjogJ3JnYigwLCAwLCAyNTUpJywgcG9zOiAwLjY3IH0sXG4gICAgeyBjb2xvcjogJ3JnYigyNTUsIDAsIDI1NSknLCBwb3M6IDAuODMgfSxcbiAgICB7IGNvbG9yOiAncmdiKDI1NSwgMCwgMCknLCBwb3M6IDEgfSxcbiAgXTtcblxuICBwcml2YXRlIHJlYWRvbmx5IF9ncmFkaWVudHMgPSBBWENvbG9yVXRpbC5ncmFkaWVudCh0aGlzLl9ncmFkaWVudENvbG9ycyk7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2NvbG9ycyA9IHRoaXMuX2dyYWRpZW50cy5yZ2IoMTAwKTtcblxuICBwcm90ZWN0ZWQgZHJhZ1Bvc2l0aW9uID0geyB4OiAwLCB5OiAwIH07XG5cbiAgY29uc3RydWN0b3IoXG4gICAgQEluamVjdChBWENvbG9yUGFsZXR0ZVBhcmVudENvbXBvbmVudClcbiAgICBwdWJsaWMgX3BhcmVudDogQVhDb2xvclBhbGV0dGVQYXJlbnRDb21wb25lbnQsXG4gICAgcHJpdmF0ZSBfdW5zdWJzY3JpYmVyOiBBWFVuc3Vic2NyaWJlcixcbiAgKSB7XG4gICAgc3VwZXIoKTtcbiAgICBfcGFyZW50Lm9uVmFsdWVDaGFuZ2VkLnBpcGUoX3Vuc3Vic2NyaWJlci50YWtlVW50aWxEZXN0cm95KS5zdWJzY3JpYmUoKGUpID0+IHtcbiAgICAgIHRoaXMuX2hhbmRsZVBhcmVudENvbG9yQ2hhbmdlZCgpO1xuICAgIH0pO1xuICAgIF9wYXJlbnQub25PcHRpb25DaGFuZ2VkLnBpcGUoX3Vuc3Vic2NyaWJlci50YWtlVW50aWxEZXN0cm95KS5zdWJzY3JpYmUoKGUpID0+IHtcbiAgICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBzZXRIU1YoKSB7XG4gICAgY29uc3QgaHN2ID0gQVhDb2xvclV0aWwudG8odGhpcy5fcmdiYSwgJ2hzdmEnKSBhcyBhbnk7XG4gICAgY29uc3Qgc29ydGVkSCA9IHRoaXMuX2NvbG9ycy5tYXAoKGMpID0+IGMudG9Ic3YoKS5oKTtcbiAgICB0aGlzLl9ncmFkaWVudCA9IHNvcnRlZEguZmluZEluZGV4KChjKSA9PiB7XG4gICAgICByZXR1cm4gTWF0aC5yb3VuZChjKSA+PSBNYXRoLnJvdW5kKGhzdi5oKTtcbiAgICB9KTtcbiAgICB0aGlzLl9iZ0NvbG9yID0gQVhDb2xvclV0aWwudG9TdHJpbmcoeyBoOiBoc3YuaCwgczogMSwgdjogMSwgYTogdGhpcy5fcmdiYS5hIH0sICdyZ2JhJyk7XG4gICAgdGhpcy5zZXRQb2ludGVyQnlQZXJjZW50KGhzdi5zICogMTAwLCBoc3YudiAqIDEwMCk7XG4gIH1cblxuICBwcml2YXRlIF9oYW5kbGVQYXJlbnRDb2xvckNoYW5nZWQoKSB7XG4gICAgY29uc3QgY29sb3IgPSB0aGlzLl9wYXJlbnQudmFsdWU7XG4gICAgaWYgKCFjb2xvcikge1xuICAgICAgdGhpcy5fcmdiYSA9IHtcbiAgICAgICAgcjogMCxcbiAgICAgICAgZzogMCxcbiAgICAgICAgYjogMCxcbiAgICAgICAgYTogMCxcbiAgICAgIH07XG4gICAgfSBlbHNlIHtcbiAgICAgIGlmICghQVhDb2xvclV0aWwuZXF1YWwoY29sb3IsIHRoaXMuX3JnYmEpKSB7XG4gICAgICAgIE9iamVjdC5hc3NpZ24odGhpcy5fcmdiYSwgQVhDb2xvclV0aWwudG8oY29sb3IsICdyZ2JhJykpO1xuICAgICAgfVxuICAgIH1cbiAgICB0aGlzLnNldEhTVigpO1xuICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBfaGFuZGxlQWxwaGFDaGFuZ2VkKGU6IEFYVmFsdWVDaGFuZ2VkRXZlbnQ8bnVtYmVyPikge1xuICAgIGlmIChlLmlzVXNlckludGVyYWN0aW9uICYmIGUudmFsdWUgIT0gdGhpcy5fcmdiYS5hKSB7XG4gICAgICBjb25zdCB7IHIsIGcsIGIgfSA9IHRoaXMuX3JnYmE7XG4gICAgICBjb25zdCBfY29sb3IgPSBgcmdiYSgke3J9LCR7Z30sJHtifSwke2UudmFsdWV9KWA7XG4gICAgICB0aGlzLl9wYXJlbnQuY29tbWl0VmFsdWUoQVhDb2xvclV0aWwudG9TdHJpbmcoX2NvbG9yLCAncmdiYScpLCBlLmlzVXNlckludGVyYWN0aW9uKTtcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgX2hhbmRsZUdyYWRpZW50Q2hhbmdlZChlOiBBWFZhbHVlQ2hhbmdlZEV2ZW50PG51bWJlcj4pIHtcbiAgICBpZiAoZS5pc1VzZXJJbnRlcmFjdGlvbiAmJiBlLnZhbHVlICE9IHRoaXMuX2dyYWRpZW50KSB7XG4gICAgICBjb25zdCB7IHMsIHYgfSA9IEFYQ29sb3JVdGlsLnRvKHRoaXMuX3JnYmEsICdoc3ZhJykgYXMgYW55O1xuICAgICAgY29uc3QgeyBoIH0gPSB0aGlzLl9jb2xvcnNbZS52YWx1ZV0udG9Ic3YoKTtcbiAgICAgIHRoaXMuX3BhcmVudC5jb21taXRWYWx1ZShBWENvbG9yVXRpbC50b1N0cmluZyh7IGgsIHMsIHYsIGE6IHRoaXMuX3JnYmEuYSB9LCAncmdiYScpLCBlLmlzVXNlckludGVyYWN0aW9uKTtcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgX2hhbmRsZVN1cmZhY2VDbGljayhlOiBNb3VzZUV2ZW50KSB7XG4gICAgaWYgKHRoaXMuX3BhcmVudC5kaXNhYmxlZCB8fCB0aGlzLl9wYXJlbnQucmVhZG9ubHkpIHtcbiAgICAgIGUucHJldmVudERlZmF1bHQoKTtcbiAgICAgIGUuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGNvbnN0IHN1cmZhY2UgPSB0aGlzLmdldEhvc3RFbGVtZW50KCkucXVlcnlTZWxlY3RvcjxIVE1MRGl2RWxlbWVudD4oJy5heC1jb2xvci1ib3gtb3ZlcmxheScpO1xuICAgIGNvbnN0IHBvaW50ZXIgPSB0aGlzLmdldEhvc3RFbGVtZW50KCkucXVlcnlTZWxlY3RvcjxIVE1MRGl2RWxlbWVudD4oJy5heC1jb2xvci1ib3gtcG9pbnRlcicpO1xuICAgIGxldCB4ID0gZS5vZmZzZXRYO1xuICAgIGxldCB5ID0gZS5vZmZzZXRZO1xuICAgIHRoaXMuc2V0Q29sb3JCeVhZKHgsIHkpO1xuICB9XG5cbiAgcHJvdGVjdGVkIF9oYW5kbGVEcmFnKCkge1xuICAgIGlmICh0aGlzLl9wYXJlbnQuZGlzYWJsZWQgfHwgdGhpcy5fcGFyZW50LnJlYWRvbmx5KSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGNvbnN0IHN1cmZhY2UgPSB0aGlzLmdldEhvc3RFbGVtZW50KCkucXVlcnlTZWxlY3RvcjxIVE1MRGl2RWxlbWVudD4oJy5heC1jb2xvci1ib3gtb3ZlcmxheScpO1xuICAgIGNvbnN0IHNiID0gc3VyZmFjZS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcbiAgICBjb25zdCBwb2ludGVyID0gdGhpcy5nZXRIb3N0RWxlbWVudCgpLnF1ZXJ5U2VsZWN0b3I8SFRNTERpdkVsZW1lbnQ+KCcuYXgtY29sb3ItYm94LXBvaW50ZXInKTtcbiAgICBjb25zdCBwYiA9IHBvaW50ZXIuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG4gICAgY29uc3QgdyA9IHBiLndpZHRoIC8gMjtcbiAgICBsZXQgeCA9IHBiLmxlZnQgLSBzYi5sZWZ0ICsgdztcbiAgICBsZXQgeSA9IHBiLnRvcCAtIHNiLnRvcCArIHc7XG4gICAgLy9cbiAgICB4ID0geCA8IDAgPyAwIDogeDtcbiAgICB4ID0geCA+IHNiLndpZHRoID8gc2Iud2lkdGggOiB4O1xuICAgIC8vXG4gICAgeSA9IHkgPCAwID8gMCA6IHk7XG4gICAgeSA9IHkgPiBzYi5oZWlnaHQgPyBzYi5oZWlnaHQgOiB5O1xuICAgIC8vXG4gICAgdGhpcy5zZXRDb2xvckJ5WFkoeCwgeSk7XG4gIH1cblxuICBwcml2YXRlIHNldENvbG9yQnlYWSh4OiBudW1iZXIsIHk6IG51bWJlcikge1xuICAgIGNvbnN0IHN1cmZhY2UgPSB0aGlzLmdldEhvc3RFbGVtZW50KCkucXVlcnlTZWxlY3RvcjxIVE1MRGl2RWxlbWVudD4oJy5heC1jb2xvci1ib3gtb3ZlcmxheScpO1xuICAgIGNvbnN0IHNiID0gc3VyZmFjZS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcbiAgICAvL1xuICAgIGNvbnN0IHsgaCB9ID0gQVhDb2xvclV0aWwudG8odGhpcy5fYmdDb2xvciwgJ2hzdmEnKSBhcyBhbnk7XG4gICAgY29uc3QgaHN2ID0ge1xuICAgICAgaCxcbiAgICAgIHM6IHggLyBzYi53aWR0aCxcbiAgICAgIHY6IChzYi5oZWlnaHQgLSB5KSAvIHNiLmhlaWdodCxcbiAgICB9O1xuICAgIHRoaXMuX3BhcmVudC5jb21taXRWYWx1ZShBWENvbG9yVXRpbC50b1N0cmluZyhoc3YsICdyZ2JhJyksIHRydWUpO1xuICB9XG5cbiAgcHJpdmF0ZSBzZXRQb2ludGVyQnlQZXJjZW50KHg6IG51bWJlciwgeTogbnVtYmVyKSB7XG4gICAgY29uc3Qgc3VyZmFjZSA9IHRoaXMuZ2V0SG9zdEVsZW1lbnQoKS5xdWVyeVNlbGVjdG9yPEhUTUxEaXZFbGVtZW50PignLmF4LWNvbG9yLWJveC1vdmVybGF5Jyk7XG4gICAgaWYgKCFzdXJmYWNlKSByZXR1cm47XG4gICAgY29uc3Qgc2IgPSBzdXJmYWNlPy5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcbiAgICBjb25zdCBwb2ludGVyID0gdGhpcy5nZXRIb3N0RWxlbWVudCgpLnF1ZXJ5U2VsZWN0b3I8SFRNTERpdkVsZW1lbnQ+KCcuYXgtY29sb3ItYm94LXBvaW50ZXInKTtcbiAgICBjb25zdCBwYiA9IHBvaW50ZXI/LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuICAgIGNvbnN0IHcgPSBwYi53aWR0aCAvIDI7XG4gICAgY29uc3Qgd2lkdGggPSBzYi53aWR0aDsgLy8rIHBiLndpZHRoXG4gICAgY29uc3QgaGVpZ2h0ID0gc2IuaGVpZ2h0OyAvLyArIHBiLndpZHRoXG4gICAgdGhpcy5kcmFnUG9zaXRpb24gPSB7XG4gICAgICB4OiAoeCAqIHdpZHRoKSAvIDEwMCAtIHcsXG4gICAgICB5OiBoZWlnaHQgLSAoeSAqIGhlaWdodCkgLyAxMDAgLSB3LFxuICAgIH07XG4gIH1cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcycpXG4gIHByaXZhdGUgZ2V0IF9faG9zdENsYXNzKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIGBheC1jb2xvci1wYWxldHRlLXBpY2tlcmA7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJheC1jb2xvci1ib3gtb3ZlcmxheS10cmFuc1wiPlxuICAgIDxkaXYgY2xhc3M9XCJheC1jb2xvci1ib3gtb3ZlcmxheVwiIFtzdHlsZS5iYWNrZ3JvdW5kLWNvbG9yXT1cIl9iZ0NvbG9yXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJheC1jb2xvci1ib3gtb3ZlcmxheS1nMVwiPjwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwiYXgtY29sb3ItYm94LW92ZXJsYXktZzJcIiAoY2xpY2spPVwiX2hhbmRsZVN1cmZhY2VDbGljaygkZXZlbnQpXCI+PC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJheC1jb2xvci1ib3gtcG9pbnRlclwiIGNka0RyYWcgY2RrRHJhZ0JvdW5kYXJ5PVwiLmF4LWNvbG9yLWJveC1vdmVybGF5XCJcbiAgICAgICAgICAgIFtjZGtEcmFnRnJlZURyYWdQb3NpdGlvbl09XCJkcmFnUG9zaXRpb25cIiAoY2RrRHJhZ0VuZGVkKT1cIl9oYW5kbGVEcmFnKClcIlxuICAgICAgICAgICAgW2Nka0RyYWdEaXNhYmxlZF09XCJfcGFyZW50LmRpc2FibGVkIHx8IF9wYXJlbnQucmVhZG9ubHlcIj5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG48L2Rpdj5cbjxheC1yYW5nZS1zbGlkZXIgY2xhc3M9XCJheC1jb2xvci1ib3gtZ3JhZGllbnRcIiBbbWluVmFsdWVdPVwiMFwiIFttYXhWYWx1ZV09XCIxMDBcIiBbc3RlcF09XCIxXCIgW25nTW9kZWxdPVwiX2dyYWRpZW50XCJcbiAgICBbZGlzYWJsZWRdPVwiX3BhcmVudC5kaXNhYmxlZFwiIFtyZWFkb25seV09XCJfcGFyZW50LnJlYWRvbmx5XCIgKG9uVmFsdWVDaGFuZ2VkKT1cIl9oYW5kbGVHcmFkaWVudENoYW5nZWQoJGV2ZW50KVwiPlxuPC9heC1yYW5nZS1zbGlkZXI+XG48YXgtcmFuZ2Utc2xpZGVyIGNsYXNzPVwiYXgtY29sb3ItYm94LXRyYW5zcGFyZW50XCIgW21pblZhbHVlXT1cIjBcIiBbbWF4VmFsdWVdPVwiMVwiIFtzdGVwXT1cIjAuMDFcIiBbbmdNb2RlbF09XCJfcmdiYS5hXCJcbiAgICBbZGlzYWJsZWRdPVwiX3BhcmVudC5kaXNhYmxlZFwiIFtyZWFkb25seV09XCJfcGFyZW50LnJlYWRvbmx5XCIgKG9uVmFsdWVDaGFuZ2VkKT1cIl9oYW5kbGVBbHBoYUNoYW5nZWQoJGV2ZW50KVwiPlxuPC9heC1yYW5nZS1zbGlkZXI+Il19
|
@@ -2,6 +2,14 @@ import { ChangeDetectorRef, ElementRef, EventEmitter, Injectable, ViewContainerR
|
|
2
2
|
import { AXDomService } from '../services/dom.service';
|
3
3
|
import * as i0 from "@angular/core";
|
4
4
|
export class MXBaseComponent {
|
5
|
+
constructor() {
|
6
|
+
this._cdr = inject(ChangeDetectorRef);
|
7
|
+
this._elementRef = inject(ElementRef);
|
8
|
+
this._viewRef = inject(ViewContainerRef);
|
9
|
+
this._domService = inject(AXDomService);
|
10
|
+
this._id = this._domService.generateElementId();
|
11
|
+
this.onOptionChanged = new EventEmitter();
|
12
|
+
}
|
5
13
|
get id() {
|
6
14
|
return this._id;
|
7
15
|
}
|
@@ -21,20 +29,9 @@ export class MXBaseComponent {
|
|
21
29
|
return option?.value;
|
22
30
|
}
|
23
31
|
internalOptionChanged(option) { }
|
24
|
-
|
25
|
-
*
|
26
|
-
*/
|
27
|
-
constructor() {
|
28
|
-
this._cdr = inject(ChangeDetectorRef);
|
29
|
-
this._elementRef = inject(ElementRef);
|
30
|
-
this._viewRef = inject(ViewContainerRef);
|
31
|
-
this._domService = inject(AXDomService);
|
32
|
-
this._id = this._domService.generateElementId();
|
33
|
-
this.onOptionChanged = new EventEmitter();
|
32
|
+
ngOnInit() {
|
34
33
|
this.getHostElement().__axContext__ = this;
|
35
34
|
}
|
36
|
-
// TODO: remove this
|
37
|
-
ngOnInit() { }
|
38
35
|
setOption(option) {
|
39
36
|
const oldValue = this[option.name];
|
40
37
|
let newValue = this.internalOptionChanging({
|
@@ -65,5 +62,5 @@ export class MXBaseComponent {
|
|
65
62
|
}
|
66
63
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: MXBaseComponent, decorators: [{
|
67
64
|
type: Injectable
|
68
|
-
}]
|
69
|
-
//# sourceMappingURL=data:application/json;base64,
|
65
|
+
}] });
|
66
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1jb21wb25lbnQuY2xhc3MuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvY29tbW9uL3NyYy9saWIvY29tcG9uZW50cy9iYXNlLWNvbXBvbmVudC5jbGFzcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxVQUFVLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRWxILE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQzs7QUFldkQsTUFBTSxPQUFnQixlQUFlO0lBRHJDO1FBRVUsU0FBSSxHQUFzQixNQUFNLENBQUMsaUJBQWlCLENBQUMsQ0FBQztRQUNwRCxnQkFBVyxHQUFlLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUM3QyxhQUFRLEdBQXFCLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBQ3RELGdCQUFXLEdBQUcsTUFBTSxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBRW5DLFFBQUcsR0FBVyxJQUFJLENBQUMsV0FBVyxDQUFDLGlCQUFpQixFQUFFLENBQUM7UUE4QnBELG9CQUFlLEdBQXVDLElBQUksWUFBWSxFQUF3QixDQUFDO0tBMEJ2RztJQXZEQyxJQUFXLEVBQUU7UUFDWCxPQUFPLElBQUksQ0FBQyxHQUFHLENBQUM7SUFDbEIsQ0FBQztJQUNELElBQVcsRUFBRSxDQUFDLENBQVM7UUFDckIsSUFBSSxDQUFDLEdBQUcsR0FBRyxDQUFDLENBQUM7SUFDZixDQUFDO0lBRUQsSUFBYyxHQUFHO1FBQ2YsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDO0lBQ25CLENBQUM7SUFFTSxjQUFjO1FBQ25CLE9BQU8sSUFBSSxDQUFDLFdBQVcsRUFBRSxhQUFrQixDQUFDO0lBQzlDLENBQUM7SUFFUyxnQkFBZ0I7UUFDeEIsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDO0lBQ3ZCLENBQUM7SUFFUyxzQkFBc0IsQ0FBQyxNQUFpQztRQUNoRSxPQUFPLE1BQU0sRUFBRSxLQUFLLENBQUM7SUFDdkIsQ0FBQztJQUVTLHFCQUFxQixDQUFDLE1BQWdDLElBQVMsQ0FBQztJQUVoRSxRQUFRO1FBQ2YsSUFBSSxDQUFDLGNBQWMsRUFBVSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUM7SUFDdEQsQ0FBQztJQUlNLFNBQVMsQ0FBVSxNQUErQjtRQUN2RCxNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ25DLElBQUksUUFBUSxHQUFHLElBQUksQ0FBQyxzQkFBc0IsQ0FBQztZQUN6QyxJQUFJLEVBQUUsTUFBTSxDQUFDLElBQUk7WUFDakIsS0FBSyxFQUFFLE1BQU0sQ0FBQyxLQUFLO1NBQ3BCLENBQUMsQ0FBQztRQUNILElBQUksTUFBTSxDQUFDLGNBQWMsRUFBRSxDQUFDO1lBQzFCLFFBQVEsR0FBRyxNQUFNLENBQUMsY0FBYyxDQUFDLFFBQVEsRUFBRSxRQUFRLENBQUMsQ0FBQztRQUN2RCxDQUFDO1FBQ0QsOENBQThDO1FBQzlDLElBQUksUUFBUSxJQUFJLFFBQVEsRUFBRSxDQUFDO1lBQ3pCLElBQUksQ0FBQyxJQUFJLE1BQU0sQ0FBQyxJQUFJLEVBQUUsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUM7WUFDdkMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUM7Z0JBQ3hCLFNBQVMsRUFBRSxJQUFJO2dCQUNmLElBQUksRUFBRSxNQUFNLENBQUMsSUFBSTtnQkFDakIsUUFBUTtnQkFDUixRQUFRO2FBQ1QsQ0FBQyxDQUFDO1lBQ0gsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLEdBQUcsTUFBTSxDQUFDLElBQUksUUFBUSxDQUFzQixDQUFDO1lBQ2xFLE9BQU8sRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDeEIsSUFBSSxDQUFDLHFCQUFxQixDQUFDLEVBQUUsSUFBSSxFQUFFLE1BQU0sQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxDQUFDLENBQUM7UUFDckUsQ0FBQztRQUNELElBQUksTUFBTSxDQUFDLGFBQWE7WUFBRSxNQUFNLENBQUMsYUFBYSxDQUFDLFFBQVEsRUFBRSxRQUFRLENBQUMsQ0FBQztJQUNyRSxDQUFDOzhHQTdEbUIsZUFBZTtrSEFBZixlQUFlOzsyRkFBZixlQUFlO2tCQURwQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0b3JSZWYsIEVsZW1lbnRSZWYsIEV2ZW50RW1pdHRlciwgSW5qZWN0YWJsZSwgVmlld0NvbnRhaW5lclJlZiwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBWE9wdGlvbkNoYW5nZWRFdmVudCB9IGZyb20gJy4uL2NsYXNzZXMvZXZlbnRzLmNsYXNzJztcbmltcG9ydCB7IEFYRG9tU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2RvbS5zZXJ2aWNlJztcblxuZXhwb3J0IHR5cGUgTVhDb21wb25lbnRPcHRpb25DaGFuZ2luZzxUID0gYW55PiA9IHsgbmFtZTogc3RyaW5nOyB2YWx1ZT86IFQgfTtcbmV4cG9ydCB0eXBlIE1YQ29tcG9uZW50T3B0aW9uQ2hhbmdlZDxUID0gYW55PiA9IE1YQ29tcG9uZW50T3B0aW9uQ2hhbmdpbmc8VD47XG5cbmV4cG9ydCB0eXBlIE1YQ29tcG9uZW50U2V0T3B0aW9uPFQ+ID0ge1xuICBuYW1lOiBzdHJpbmc7XG4gIHZhbHVlPzogVDtcbiAgYWZ0ZXJDYWxsYmFjaz86IChvbGRWYWx1ZT86IFQsIG5ld1ZhbHVlPzogVCkgPT4gdm9pZDtcbiAgYmVmb3JlQ2FsbGJhY2s/OiAob2xkVmFsdWU/OiBULCBuZXdWYWx1ZT86IFQpID0+IHZvaWQ7XG59O1xuXG5leHBvcnQgdHlwZSBBWENvbXBvbmVudFN0YXRlID0gJ2NsZWFyJyB8ICdzdWNjZXNzJyB8ICdlcnJvcic7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBNWEJhc2VDb21wb25lbnQge1xuICBwcml2YXRlIF9jZHI6IENoYW5nZURldGVjdG9yUmVmID0gaW5qZWN0KENoYW5nZURldGVjdG9yUmVmKTtcbiAgcHJpdmF0ZSBfZWxlbWVudFJlZjogRWxlbWVudFJlZiA9IGluamVjdChFbGVtZW50UmVmKTtcbiAgcHJpdmF0ZSBfdmlld1JlZjogVmlld0NvbnRhaW5lclJlZiA9IGluamVjdChWaWV3Q29udGFpbmVyUmVmKTtcbiAgcHJpdmF0ZSBfZG9tU2VydmljZSA9IGluamVjdChBWERvbVNlcnZpY2UpO1xuXG4gIHByaXZhdGUgX2lkOiBzdHJpbmcgPSB0aGlzLl9kb21TZXJ2aWNlLmdlbmVyYXRlRWxlbWVudElkKCk7XG4gIHB1YmxpYyBnZXQgaWQoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5faWQ7XG4gIH1cbiAgcHVibGljIHNldCBpZCh2OiBzdHJpbmcpIHtcbiAgICB0aGlzLl9pZCA9IHY7XG4gIH1cblxuICBwcm90ZWN0ZWQgZ2V0IGNkcigpOiBDaGFuZ2VEZXRlY3RvclJlZiB7XG4gICAgcmV0dXJuIHRoaXMuX2NkcjtcbiAgfVxuXG4gIHB1YmxpYyBnZXRIb3N0RWxlbWVudDxUID0gSFRNTEVsZW1lbnQ+KCk6IFQge1xuICAgIHJldHVybiB0aGlzLl9lbGVtZW50UmVmPy5uYXRpdmVFbGVtZW50IGFzIFQ7XG4gIH1cblxuICBwcm90ZWN0ZWQgZ2V0Vmlld0NvbnRhaW5lcigpOiBWaWV3Q29udGFpbmVyUmVmIHtcbiAgICByZXR1cm4gdGhpcy5fdmlld1JlZjtcbiAgfVxuXG4gIHByb3RlY3RlZCBpbnRlcm5hbE9wdGlvbkNoYW5naW5nKG9wdGlvbjogTVhDb21wb25lbnRPcHRpb25DaGFuZ2luZyk6IGFueSB7XG4gICAgcmV0dXJuIG9wdGlvbj8udmFsdWU7XG4gIH1cblxuICBwcm90ZWN0ZWQgaW50ZXJuYWxPcHRpb25DaGFuZ2VkKG9wdGlvbjogTVhDb21wb25lbnRPcHRpb25DaGFuZ2VkKTogdm9pZCB7fVxuXG4gIHByb3RlY3RlZCBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAodGhpcy5nZXRIb3N0RWxlbWVudCgpIGFzIGFueSkuX19heENvbnRleHRfXyA9IHRoaXM7XG4gIH1cblxuICBwdWJsaWMgb25PcHRpb25DaGFuZ2VkOiBFdmVudEVtaXR0ZXI8QVhPcHRpb25DaGFuZ2VkRXZlbnQ+ID0gbmV3IEV2ZW50RW1pdHRlcjxBWE9wdGlvbkNoYW5nZWRFdmVudD4oKTtcblxuICBwdWJsaWMgc2V0T3B0aW9uPFQgPSBhbnk+KG9wdGlvbjogTVhDb21wb25lbnRTZXRPcHRpb248VD4pIHtcbiAgICBjb25zdCBvbGRWYWx1ZSA9IHRoaXNbb3B0aW9uLm5hbWVdO1xuICAgIGxldCBuZXdWYWx1ZSA9IHRoaXMuaW50ZXJuYWxPcHRpb25DaGFuZ2luZyh7XG4gICAgICBuYW1lOiBvcHRpb24ubmFtZSxcbiAgICAgIHZhbHVlOiBvcHRpb24udmFsdWUsXG4gICAgfSk7XG4gICAgaWYgKG9wdGlvbi5iZWZvcmVDYWxsYmFjaykge1xuICAgICAgbmV3VmFsdWUgPSBvcHRpb24uYmVmb3JlQ2FsbGJhY2sob2xkVmFsdWUsIG5ld1ZhbHVlKTtcbiAgICB9XG4gICAgLy9UT0RPIDogY2hlY2sgcmVhbCBjaGFuZ2VzIGlmIHZhbHVlIGlzIG9iamVjdFxuICAgIGlmIChvbGRWYWx1ZSAhPSBuZXdWYWx1ZSkge1xuICAgICAgdGhpc1tgXyR7b3B0aW9uLm5hbWV9YF0gPSBvcHRpb24udmFsdWU7XG4gICAgICB0aGlzLm9uT3B0aW9uQ2hhbmdlZC5lbWl0KHtcbiAgICAgICAgY29tcG9uZW50OiB0aGlzLFxuICAgICAgICBuYW1lOiBvcHRpb24ubmFtZSxcbiAgICAgICAgbmV3VmFsdWUsXG4gICAgICAgIG9sZFZhbHVlLFxuICAgICAgfSk7XG4gICAgICBjb25zdCBlbWl0dGVyID0gdGhpc1tgJHtvcHRpb24ubmFtZX1DaGFuZ2VgXSBhcyBFdmVudEVtaXR0ZXI8YW55PjtcbiAgICAgIGVtaXR0ZXI/LmVtaXQobmV3VmFsdWUpO1xuICAgICAgdGhpcy5pbnRlcm5hbE9wdGlvbkNoYW5nZWQoeyBuYW1lOiBvcHRpb24ubmFtZSwgdmFsdWU6IG5ld1ZhbHVlIH0pO1xuICAgIH1cbiAgICBpZiAob3B0aW9uLmFmdGVyQ2FsbGJhY2spIG9wdGlvbi5hZnRlckNhbGxiYWNrKG9sZFZhbHVlLCBuZXdWYWx1ZSk7XG4gIH1cbn1cbiJdfQ==
|